Purpose

The DicomModifyMultiFileVolumeExport exports a MultiFileVolume composed of DICOM frames as files into a destination directory. Before exporting them all DICOM tag modifiers which are appended to the inputDicomModifier are applied to the DICOM tags. The DICOM tags StudyInstanceUID, SeriesInstanceUID, and ImageType can be changed or updated as well as connected DicomModifyTagsPlugin or DicomModifyImageTagsPlugin modules can be used to apply further tag modifications. If a complete series of DICOM trees is exported (for example from a connected MultiFileVolume or a decomposed multi frame DICOM image) then a Matrix4 field named “worldToVoxelMatrix” containing the world to voxel matrix of the corresponding ML image is passed to attached tag manipulators. Also the z/t/u position of the frame is passed as Vector6 field “framePosition” to attached tag manipulators. This allows advanced operations such as subimage manipulations on the exported frames. See DicomModifyImageTagsPlugin for details.

Limitations:

-The export of multiframe DICOMs is partially supported. It also will store entire volume temporarily in memory which could lead to memory problem in worse cases.

-The export of non-DICOM files, DCM/TIF, and MLImage files is not supported.

Windows

Default Panel

../../../Projects/DICOM/MLDicomModify/Modules/mhelp/Images/Screenshots/DicomModifyMultiFileVolumeExport._default.png

Input Fields

inputBase

name: inputBase, type: MLBase

This is a connector for DCMTree sources; currently MultiFileVolumeListRefCounted objects are supported which are typically provided by DirectDicomImport modules.

inputDicomModifier

name: inputDicomModifier, type: MLBase

This is a Base connector for DicomModifyTagsPlugin modules which are used to apply modifications on the DICOM trees/files to be exported.

Parameter Fields

Visible Fields

File Name

name: unresolvedFileName, type: String, deprecated name: unresolvedDcmInputFileName

If a loading operation from disk is selected as input in the ‘InputSelector’ field then the file name from which the DICOM tree shall be loaded is specified here. Otherwise this field is insensitive.

True File Name

name: absoluteFileName, type: String, persistent: no, deprecated name: dcmInputFileName

If ‘File’ is selected as input in the Input Selector field then the file name from which the DICOM tree shall be loaded is specified here. Otherwise this field is insensitive.

Input Selector

name: inputSelector, type: Enum, default: BaseConnector

Selects from which connector a MultFileVolumeList or DICOM tree shall be loaded or whether it shall be loaded from a file.

Values:

Title Name Description
Base Connector BaseConnector The DICOM tree is retrieved from inputBase.
File File The DICOM tree or MultiFileVolume(List) cache is retrieved via a file load from True File Name.
Multi File Volume Cache MultiFileVolumeCache The DICOM tree or MultiFileVolume(List) cache is retrieved via a file load from True File Name.

InIdx

name: inputVolumeIndex, type: Integer, default: 0

Selects an entry from the connected list of volumes; this corresponds to the index into a volume list in a connected DirectDicomImport module.

#Volumes

name: numVolumes, type: Integer, persistent: no

This read-only field shows the number of available DICOM volumes in a connected list of volumes; this corresponds to number of volumes in a volume list of a connected DirectDicomImport module.

Destination Directory

name: destinationDirectory, type: String

The direction in which the (modified) DICOM frames shall be stored when Export is pressed.

Destination File Name Suffix

name: destinationFileNameSuffix, type: String, default: _modified_

A non empty suffix which is added to each written file.

Ztu Frame Suppressions

name: ztuFrameSuppressions, type: String

In this field a newline separated list of z t u positions can be entered which describes positions of frames which shall not be exported. Note that can make volumes incomplete or hide significant contents. The indexes must be in valid range of volume.

Handle All Issues As Error

name: handleAllIssuesAsError, type: Bool, default: FALSE

If enabled then handle all (even non fatal) messages as error, otherwise export always with non fatal messages.

Post Errors To ML Error Handler

name: postErrorsToMLErrorHandler, type: Bool, default: FALSE

If enabled then errors are posted to the ML error handler, otherwise they are only shown in the module status field.

Export

name: export, type: Trigger

Store the (modified) DICOM frames in the destination directory.

Study Instance UID

name: studyInstanceUID, type: String

The string to be set as DICOM tag StudyInstanceUID in the exported DICOM files if Modify Study Instance UID is enabled.

Create New (createNewStudyInstanceUID)

name: createNewStudyInstanceUID, type: Trigger

A new unique StudyInstanceUID will be generated and written in Study Instance UID if the field is notified.

Modify Study Instance UID

name: modifyStudyInstanceUID, type: Bool, default: FALSE

If enabled then the content of Study Instance UID will be written in the exported DICOM files, otherwise the original and unmodified StudyInstanceUID will be used.

Series Instance UID

name: seriesInstanceUID, type: String

The string to be set as DICOM tag SeriesInstanceUID in the exported DICOM files if Modify Series Instance UID is enabled.

Create New (createNewSeriesInstanceUID)

name: createNewSeriesInstanceUID, type: Trigger

A new unique SeriesInstanceUID will be generated and written in Series Instance UID if the field is notified.

Modify Series Instance UID

name: modifySeriesInstanceUID, type: Bool, default: TRUE

If enabled then the content of Series Instance UID will be written in the exported DICOM files, otherwise the original and unmodified SeriesInstanceUID will be used.

Modify SOP Instance UID

name: modifySOPInstanceUID, type: Bool, default: TRUE

If enabled then each exported DICOM file will get a new an unique SOP Instance UID. This is enabled by default and should only be disabled with extreme care, because is could lead to DICOM files get same SOP instance UIDs otherwise.

Image Type Value1And2

name: imageTypeValue1And2, type: Enum, default: DERIVED\SECONDARY

The strings to be set as first and second values of the DICOM tag ImageType in the exported DICOM files if Modify Image Type is enabled. Their meanings are described in the DICOM standard, for example chapter C.7.6.1.1.2 Image Type”, ftp://medical.nema.org/medical/dicom/2011/11_03pu.pdf.

Values:

Title Name
Originalprimary ORIGINALPRIMARY
Originalsecondary ORIGINALSECONDARY
Derivedprimary DERIVEDPRIMARY
Derivedsecondary DERIVEDSECONDARY
Mixedprimary MIXEDPRIMARY
Mixedsecondary MIXEDSECONDARY

Image Type Value3

name: imageTypeValue3, type: String, default: OTHER

The string to be set as third value of the DICOM tag ImageType in the exported DICOM files if Modify Image Type is enabled.

Modify (modifyImageTypeValue3)

name: modifyImageTypeValue3, type: Bool, default: TRUE

If enabled and Modify Image Type is also true then the value 3 of the ImageType tag is overwritten; otherwise the value 3 is taken from the input DICOM tree. An empty string is used if the input ImageType tag does not have a third value.

Image Type Value4

name: imageTypeValue4, type: String, default: MEVISLAB

The string to be set as fourth value of the DICOM tag ImageType in the exported DICOM files if Modify Image Type is enabled.

Modify (modifyImageTypeValue4)

name: modifyImageTypeValue4, type: Bool, default: TRUE

If enabled and Modify Image Type is also true then the value 4 of the ImageType tag is overwritten; otherwise the value 4 is taken from the input DICOM tree. An empty string is used if the input ImageType tag does not have a fourth value.

Modify Image Type

name: modifyImageType, type: Bool, default: FALSE

If enabled then the content of the ImageType DICOM tag (0008,0008) will be written in the exported DICOM files, otherwise the original and unmodified ImageType tag will be used.

Assignment Of SOPInstance UIDs

name: assignmentOfSOPInstanceUIDs, type: String, persistent: no

Newline separated list of SOPInstanceUIDs before and after modifications of DICOM trees where in each line the old and the new id is separated by a space.

Status

name: status, type: String, persistent: no

Shows status information about the current module and/or export state.

Hidden Fields

warnNonExistingFileOnBrowsing

name: warnNonExistingFileOnBrowsing, type: Bool, default: TRUE

warnDirectoriesOnBrowsing

name: warnDirectoriesOnBrowsing, type: Bool, default: TRUE