The following table lists the Information Object Definitions (IODs) that support multi-frames and the Multi-frame Functional Groups module:
DICOM Specification Part 3 Annex A Table | IOD Class Constant | Description |
A.8.3 | SCMultiFrameGrayscaleByteImageStorage | Secondary Capture Multi-Frame Grayscale Byte Image Storage |
A.8.4 | SCMultiFrameGrayscaleWordImageStorage | Secondary Capture Multi-Frame Grayscale Word Image Storage |
A.8.5 | SCMultiFrameTrueColorImageStorage | Secondary Capture Multi-Frame True Color Image Storage |
A.36.2 | EnhancedMRImageStorage | Enhanced MR Image Storage |
A.36.3 | MRSpectroscopyStorage | MR Spectroscopy Storage |
A.36.1 | EnhancedCTImageStorage | Enhanced CT Image Storage |
A.47 | EnhancedXAImageStorage | Enhanced X-Ray Angiographic Image Storage |
A.48 | EnhancedXRFImageStorage | Enhanced X-Ray RF Image Storage |
A.51 | SegmentationStorage | (0x00000081) Segmentation Storage |
A.52 | OphthalmicTomographyImageStorage | Ophthalmic Tomography Image Storage |
A.53 | XRay3dAngiographicImageStorage | X-Ray 3D Angiographic Image Storage |
A.54 | XRay3dCraniofacialImageStorage | X-Ray 3D Craniofacial Image Storage |
Supplement 117 | EnhancedPetImageStorage | Enhanced PET Image Storage |
These IODs can store multiple frames or images. The Multi-frame Functional Groups module may have a Shared Functional Groups Sequence item, and/or a Per-frame Functional Groups Sequence item.
The Shared Functional Groups Sequence (5200,929) item has a single child item that stores global settings that apply to all the frames in the dataset.
The Per-frame Functional Groups Sequence (5200,9230) item has a child item for each frame that stores individual settings for that frame. For example, if there are five frames in the dataset, the Per-frame Functional Groups Sequence will have five items, each with possibly different settings.
Either of these items (Shared Functional Groups Sequence or Per-frame Functional Groups Sequence) may have a Pixel Value Transformation Sequence (0028,9145) item, or a Frame VOI LUT Sequence (0028,9132) item. The five Set Image Mfg flags can be used to add or modify existing information in the Pixel Value Transformation Sequence or the Frame VOI LUT Sequence.
Some or all of the five Set Image Mfg flags can be used in the following methods:
The following table describes the behavior of the DicomSetImageFlags for InsertImage, InsertImages, SetWindow, DeleteWindow, SetModalityLut and DeleteModalityLut:
MfgOverwriteShared | Existing elements under the Shared Functional Groups Sequence will be overwritten. If this flag is not included, Shared Functional Groups Sequence elements are unchanged |
MfgVoiLutPerFrame | If the Frame VOI LUT Sequence does not already exist, it is added under the Per-frame Functional Groups Sequence. If the Frame VOI LUT Sequence already exists under the Shared Functional Groups Sequence, this flag is ignored. |
MfgVoiLutShared | If the Frame VOI LUT Sequence does not already exist, it is added under the Shared Functional Groups Sequence. If the Frame VOI LUT Sequence already exists under the Per-frame Functional Groups Sequence, this flag is ignored. |
MfgModalityLutPerFrame | If the Pixel Value Transformation Sequence does not already exist, it is added under the Per-frame Functional Groups Sequence. If the Pixel Value Transformation Sequence already exists under the Shared Functional Groups Sequence, this flag is ignored. |
MfgModalityLutShared | If the Pixel Value Transformation Sequence does not already exist, it is added under the Shared Functional Groups Sequence. If the Pixel Value Transformation Sequence already exists under the Per-frame Functional Groups Sequence, this flag is ignored. |
The following table describes the behavior of the DicomSetImageFlags for SetImage and SetImages:
MfgOverwriteShared | This flag is ignored. |
MfgVoiLutPerFrame | The Frame VOI LUT Sequence is added under the Per-frame Functional Groups Sequence. |
DicomSetImageFlags | The Frame VOI LUT Sequence is added under the Shared Functional Groups Sequence. |
DicomSetImageFlags | The Pixel Value Transformation Sequence is added under the Per-frame Functional Groups Sequence. |
DicomSetImageFlags | The Pixel Value Transformation Sequence is added under the Shared Functional Groups Sequence. |
The specific elements that are read or updated when using these flags are shown below: (0028,9132) Frame VOI LUT Sequence Child Elements
Tag | Name |
(0028,1050) | Window Center |
(0028,1051) | Window Width |
(0028,1055) | Window Center and Width Explanation |
(0028,9145) Pixel Value Transformation Sequence child elements
Tag | Name |
(0028,1052) | Rescale Intercept |
(0028,1053) | Rescale Slope |
(0028,1053) | Rescale Type |
Note: MfgVoiLutPerFrame cannot be combined with MfgVoiLutShared. MfgModalityLutPerFrame cannot be combined with MfgModalityLutShared. When using any of the Leadtools.Dicom.DicomDataSet methods that support the Set Image MFG flags, Multi-frame Functional Groups are added (or updated) to the DICOM dataset if: