Send comments on this topic. | Back to Introduction - All Topics | Help Version 16.5.9.25
Multi-frame Functional Groups

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
A.8.4 SCMultiFrameGrayscaleWordImageStorage
A.8.5 SCMultiFrameTrueColorImageStorage
A.36.2 EnhancedMRImageStorage
A.36.3 MRSpectroscopyStorage
A.36.1 EnhancedCTImageStorage
A.47 EnhancedXAImageStorage
A.48 EnhancedXRFImageStorage
A.51 SegmentationStorage
A.52 OphthalmicTomographyImageStorage
A.53 XRay3dAngiographicImageStorage
A.54 XRay3dCraniofacialImageStorage
Supplement 117 EnhancedPetImageStorage

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: