DICOM PS3.3 2025b - Information Object Definitions |
---|
Table C.8-7 specifies the Attributes of the NM Multi-frame Image. This Module is always included in a NM SOP Instance, even if there is only one Frame in the image.
A NM Image object is always a multi-dimensional Multi-frame Image. The order and organization of the Frames within each image is defined by the Frame Increment Pointer (0028,0009). The Frame Increment Pointer (0028,0009) references one or more indexing vectors. An indexing vector is a 1 dimensional array with exactly one element for each Frame in the image. The value of the nth element in the indexing vector represents the index for the nth Frame, in that dimension. Indices are always numbered starting from 1.
The scheme for encoding a multi-dimensional array of Frames into a single image object is as follows. First, the definition of the Data Element called the Frame Increment Pointer is changed so that it can be multi-valued (i.e., its VM is now 1-n). Each Value of Frame Increment Pointer represents one of the dimensions of the array, with the last Value representing the most rapidly changing index. Each Value of Frame Increment Pointer is the Tag of a Data Element that is an indexing vector. An indexing vector is a 1 dimensional array with exactly one element for each Frame in the image. The value of the nth element in the indexing vector represents the index for the nth Frame, in that dimension. For example, suppose you are encoding a Dynamic image consisting of 2 phases (containing 5 and 2 Frames, respectively), from each of two detectors, using one isotope, which gives a total of 14 Frames in the image. For a Dynamic image, the Frame Increment Pointer is defined as:Frame Increment Pointer = Energy Window Vector (0054,0010) \ Detector Vector (0054,0020) \ Phase Vector (0054,0030) \ Time Slice Vector (0054,0100). Pixel Data (7FE0,0010) would contain the Frames in the following order:
and the four vectors would be defined as:
Energy Window Vector = 1,1,1,1,1,1,1,1,1,1,1,1,1,1
Detector Vector = 1,1,1,1,1,1,1,2,2,2,2,2,2,2
Phase Vector = 1,1,1,1,1,2,2,1,1,1,1,1,2,2
Time Slice Vector = 1,2,3,4,5,1,2,1,2,3,4,5,1,2
The receiver can tell the relationship of all the Frames from these four vectors. For instance, looking at the 11th value in these four vectors tells you that the 11th Frame in this multi-frame object is time slice 4 of phase 1 from detector 2 and isotope 1.
The Energy Window, Detector, Phase, Rotation, R-R Interval, and Time Slot Vectors have corresponding Sequence Attributes that contain exactly one Sequence Item for each of the index values in the vector. The Sequence Item contains a set of Attributes that are specific to that group of Frames, but change from one group to the next. In the above example there would be a detector Sequence Attribute, an isotope Sequence Attribute and a phase Sequence Attribute (for dynamics, no Frame Sequence Attribute is needed). The detector and phase Sequence Attributes would contain two Sequence Items (because there were 2 detectors and 2 phases).
Table C.8-7. NM Multi-frame Module Attributes
Contains the Data Element Tags of one or more Frame index vectors. See Section C.8.4.8.1.1 for further specialization. |
|||
An array that contains the energy window number for each Frame. Required if the Value of Frame Increment Pointer (0028,0009) includes the Tag for Energy Window Vector (0054,0010). See Section C.8.4.8.1.2 for specialization. |
|||
Number of energy window groupings. See Section C.8.4.8.1.2 for specialization. |
|||
An array that contains the detector number for each Frame. Required if the Value of Frame Increment Pointer (0028,0009) includes the Tag for Detector Vector (0054,0020). See Section C.8.4.8.1.3 for specialization. |
|||
Number of detectors. See Section C.8.4.8.1.3 for specialization. |
|||
An array that contains the phase number for each Frame. Required if the Value of Frame Increment Pointer (0028,0009) includes the Tag for Phase Vector (0054,0030). See Section C.8.4.8.1.4 for specialization. |
|||
Number of phases. Required if the Value of Frame Increment Pointer (0028,0009) includes the Tag for Phase Vector (0054,0030). See Section C.8.4.8.1.4 for specialization. |
|||
An array that contains the rotation number for each Frame. Required if the Value of Frame Increment Pointer (0028,0009) includes the Tag for Rotation Vector (0054,0050). See Section C.8.4.8.1.5 for specialization. |
|||
Number of rotations. Required if Image Type (0008,0008), Value 3 is TOMO, GATED TOMO, RECON TOMO or RECON GATED TOMO. See Section C.8.4.8.1.5 for specialization. |
|||
An array that contains the R-R interval number for each Frame. Required if the Value of Frame Increment Pointer (0028,0009) includes the Tag for R-R Interval Vector (0054,0060). See Section C.8.4.8.1.6 for specialization. |
|||
Number of R-R intervals. Required if the Value of Frame Increment Pointer (0028,0009) includes the Tag for R-R Interval Vector (0054,0060). See Section C.8.4.8.1.6 for specialization. |
|||
An array that contains the time slot number for each Frame. Required if the Value of Frame Increment Pointer (0028,0009) includes the Tag for Time Slot Vector (0054,0070). See Section C.8.4.8.1.7 for specialization. |
|||
Number of time slots. Required if the Value of Frame Increment Pointer (0028,0009) includes the Tag for Time Slot Vector (0054,0070). See Section C.8.4.8.1.7 for specialization. |
|||
An array that contains the spatial slice number for each Frame. Required if the Value of Frame Increment Pointer (0028,0009) includes the Tag for Slice Vector (0054,0080). See Section C.8.4.8.1.8 for specialization. |
|||
Number of slices. Required if the Value of Frame Increment Pointer (0028,0009) includes the Tag for Slice Vector (0054,0080). See Section C.8.4.8.1.8 for specialization. |
|||
An array that contains the angular view number for each Frame. Required if the Value of Frame Increment Pointer (0028,0009) includes the Tag for Angular View Vector (0054,0090). See Section C.8.4.8.1.9 for specialization. |
|||
An array that contains the time slice number for each Frame. Required if the Value of Frame Increment Pointer (0028,0009) includes the Tag for Time Slice Vector (0054,0100). See Section C.8.4.8.1.10 for specialization. |
Per the rules in PS3.5, if an Attribute of Type 1C or 2C is not required, it shall not be included.
By definition, NM Images are multi-dimensional Multi-frame Images. The Value of Frame Increment Pointer (0028,0009) contains the Tag for one or more Frame indexing vectors. This determines the number of dimensions of Frame indices in the image, and the order in which these indices vary from one Frame to the next, with the last Tag indicating the most rapidly changing index. The Enumerated Values for Frame Increment Pointer (0028,0009) are determined by Image Type (0008,0008) Value 3, as shown in Table C.8-8.
Table C.8-8. Enumerated Values for Frame Increment Pointer
Number of Energy Windows (0054,0011) is the number of distinct energy window groupings acquired in this image. See Section C.8.4.10.1. When Image Type (0008,0008), Value 3, is RECON TOMO or RECON GATED TOMO, then the Number of Energy Windows (0054,0011) shall be 1.
Energy Window Vector (0054,0010) is an indexing vector. The value of the nth element of this vector is the energy window number for the nth Frame in this image, and shall have a Value from 1 to Number of Energy Windows (0054,0011).
Number of Detectors (0054,0021) is the number of separate detectors that differentiate the Frames in this image. When Image Type (0008,0008), Value 3, is RECON TOMO or RECON GATED TOMO, then the Number of Detectors (0054,0021) shall be 1.
Number of Detectors (0054,0021) does not necessarily represent the actual number of detectors used during data acquisition.
Example 1: In a TOMO acquisition in which Frames from 2 or more detectors are interleaved to form one continuous set of Frames, then no distinction is made between Frames on the basis of which detector created them. In this case, the Number of Detectors (0054,0021) would be 1.
Example 2: In a WHOLE BODY acquisition in which a single detector acquires anterior and posterior views in two separate passes, the Number of Detectors (0054,0021) would be 2.
Detector Vector (0054,0020) is an indexing vector. The value of the nth element of this vector is the detector number of the nth Frame in this image, and shall have a Value from 1 to Number of Detectors (0054,0021).
Number of Phases (0054,0031) is the number of dynamic phases, independent of the number of Detectors and Isotopes. See Section C.8.4.14 for definition of a phase.
Phase Vector (0054,0030) is an indexing vector. The value of the nth element of this vector is the phase number of the nth Frame in this image, and shall have a Value from 1 to Number of Phases (0054,0031).
Number of Rotations (0054,0051) is the number of separate rotations. See Section C.8.4.12 for definition of a rotation. When Image Type (0008,0008), Value 3, is RECON TOMO, GATED TOMO or RECON GATED TOMO, then the Number of Rotations (0054,0051) shall be 1.
Rotation Vector (0054,0050) is an indexing vector. The value of the nth element of this vector is the rotation number of the nth Frame in this image, and shall have a Value from 1 to Number of Rotations (0054,0051).
Number of R-R Intervals (0054,0061) is the number of ranges of heartbeat durations collected. A gated acquisition may employ one R-R Interval to collect data from normal beats, a second R-R Interval to collect data from ectopic beats, and possibly others. Each R-R Interval accepts beats whose duration is greater than its Low R-R Value (0018,1081) and shorter than its High R-R Value (0018,1082). Beats that do not fall within these ranges may be accepted by another R-R Interval, or may be rejected.
The Number of R-R Intervals (0054,0061) is the total number of such ranges.
R-R Interval Vector (0054,0060) is an indexing vector. The value of the nth element of this vector is the interval number of the nth Frame in this image, and shall have a Value from 1 to Number of R-R Intervals (0054,0061).
Number of Time Slots (0054,0071) is the number of Frames into which each gating event is divided in a gated acquisition. For example, in a cardiac gated acquisition, data from a number of heartbeats are then combined by summing together the first Frames from all beats into a summed first Frame, all the second Frames into a summed second Frame, and so on. The result has the same number of Frames as the Number of Time Slots in each beat.
Time Slot Vector (0054,0070) is an indexing vector. The value of the nth element of this vector is the time slot number of the nth Frame in this image, and shall have a Value from 1 to Number of Time Slots (0054,0071).
Number of Slices (0054,0081) is the number of slices in each separate volume.
For images with Image Type (0008,0008), Value 3, equal to RECON GATED TOMO this implies that Number of Slices (0054,0081) is the same for all R-R Intervals and Time Slots.
Slice Vector (0054,0080) is an indexing vector. The value of the nth element of this vector is the slice number of the nth Frame in this image, and shall have a Value from 1 to Number of Slices (0054,0081).
DICOM PS3.3 2025b - Information Object Definitions |
---|