Gdcm DICOM v3.0 conformance summary


Introduction

This section is an abbreviated DICOM conformance statement for gdcm.
It specifies the compliance of gdcm to file reading/writing support to the dicom base standard part 5.
Gdcm does not contain or support any of the DICOM services such as Storage, Query/Retrieve, Print, Verification...

Supported transfer syntaxes (Reading)

The Transfer Syntax UID is in the file DICOM Tag field (0002,0010).
Uncompressed Transfer Syntax Description
1.2.840.10008.1.2 Implicit VR - Little Endian
1.2.840.10008.1.2.1 Explicit VR - Little Endian
1.2.840.10008.1.2.1.99 Deflated Explicit VR - Little Endian
1.2.840.10008.1.2.2 Explicit VR - Big Endian
1.2.840.113619.5.2 Implicit VR - Big Endian (G.E Private)
RLE Transfer Syntax
1.2.840.10008.1.2.5 Run Length Encoding, Lossless
JPEG Transfer Syntax
1.2.840.10008.1.2.4.50 JPEG Baseline (Process 1)
1.2.840.10008.1.2.4.51 JPEG Extended (Process 2 & 4)
1.2.840.10008.1.2.4.57 JPEG Lossless, Non-Hierarchical (Process 14)
1.2.840.10008.1.2.4.70 JPEG Lossless, Hierarchical, First-Order Prediction (Process 14, [Selection Value 1])
1.2.840.10008.1.2.4.90 JPEG 2000 Image Compression (Lossless Only)
1.2.840.10008.1.2.4.91 JPEG 2000 Image Compression

Supported transfer syntaxes (Writing)

The Transfer Syntax UID is in the file DICOM Tag field (0002,0010).
Uncompressed Transfer Syntax Description
1.2.840.10008.1.2 Implicit VR - Little Endian
1.2.840.10008.1.2.1 Explicit VR - Little Endian
JPEG Transfer Syntax
1.2.840.10008.1.2.4.50 JPEG Baseline (Process 1)
1.2.840.10008.1.2.4.51 JPEG Extended (Process 2 & 4)
1.2.840.10008.1.2.4.57 JPEG Lossless, Non-Hierarchical (Process 14)
1.2.840.10008.1.2.4.70 JPEG Lossless, Hierarchical, First-Order Prediction (Process 14, [Selection Value 1])
1.2.840.10008.1.2.4.90 JPEG 2000 Image Compression (Lossless Only)
1.2.840.10008.1.2.4.91 JPEG 2000 Image Compression

Supported "Photometric Interpretation" pixel format (Reading)

The Photometric Interpretation UID is in the file DICOM Tag field (0028,0004).
Photometric Interpretation" pixel format Description
MONOCHROME1 grey level image description (high values=dark, low values=bright)
MONOCHROME2 grey level image description (high values=bright, low values=dark)
PALETTE COLOR pseudo color image description
RGB true color image description
YBR_FULL true color image description
YBR_FULL_422 true color image description

Supported "Photometric Interpretation" pixel format (Writing)

The Photometric Interpretation UID is in the file DICOM Tag field (0028,0004).
Photometric Interpretation" pixel format Description
MONOCHROME2 grey level image description (high values=bright, low values=dark)
PALETTE COLOR pseudo color image description
RGB true color image description

Supported 'Bits Allocated' values (Reading)

The Bits Allocated value is in the file DICOM Tag field (0020,0100).
Classical values Description
8, 12, 16 12 means that 4 pixels are stored in 3 'short int'
Unusual values Description
24 Some ACR-NEMA RGB files came with 'Bits Allocated' = 24 and 'Samples Per Pixel' = 1, or with no 'Samples Per Pixel' at all
32 Some ACR-NEMA files, from CT, came with 'Bits Allocated' = 32 (probabely 65535 grey levels was not enough for them ...)

Note on odd length data elements

The Dicom Standard PS 3.5 (Data Structures and Encoding) specifies that the data element values which make up a DICOM data stream must be padded to an even length.
Gdcm will tolerate an incorrectly formed odd length data field while reading (thus not enforcing the standard).
But gdcm will always enforce the standard while writing.

Note on undefined Value Representations

If gdcm encounters an undefined VR (either because in a private group, or because it corresponds to an undocumented public dictionary entry when in implicit VR) while reading a file, it will set that data element's VR to be UN (unknown).

Note on missing 'Mandatory' Tags

Each time it's possible to assume a 'reasonable' default value for missing 'mandatory' tag, gdcm does it.
For instance if the Tag 'Samples Per Pixels' is missing, we assume its value is '1' (Grey pixels, as opposite to RGB);
if the tag 'High Bit' is missing, we assume its value is 'Bits stored -1' (i.e. : no bad trick inside the pixels)
As gdcm wants to read *as well* old ACR-NEMA files, it has to be widely tolerant.

Note 'Value Multiplicity'

gdcm believes what's written on disc, better than the 'Dicom Dictionary'.
For instance if the field 'Pixels Spacing' contains a single value -instead of the mandatory two, gdcm will suppose both values are equal.

Note on retired data elements

Certain data elements are no longer supported under the v3.0 of the DICOM standard but persist as retired element. Gdcm maintain them in its Dicom Dictionary, postfix their names with the "(RET)" string, and goes on dealing with them as standard data elements.

UNSupported transfer syntaxes

The Transfer Syntax UID is in the file DICOM Tag field (0002,0010).
Jpeg UNSUPPORTED Transfer Syntax Description
1.2.840.10008.1.2.4.52 JPEG Extended (Process 3 & 5)
1.2.840.10008.1.2.4.53 JPEG Spectral Selection, Non-Hierarchical (Process 6 & 8)
1.2.840.10008.1.2.4.54 JPEG Spectral Selection, Non-Hierarchical (Process 7 & 9)
1.2.840.10008.1.2.4.55 JPEG Full Progression, Non-Hierarchical (Process 10 & 12)
1.2.840.10008.1.2.4.56 JPEG Full Progression, Non-Hierarchical (Process 11 & 13)
1.2.840.10008.1.2.4.59 JPEG Extended, Hierarchical (Process 16 & 18)
1.2.840.10008.1.2.4.60 JPEG Extended, Hierarchical (Process 17 & 19)
1.2.840.10008.1.2.4.61 JPEG Spectral Selection, Hierarchical (Process 20 & 22)
1.2.840.10008.1.2.4.62 JPEG Spectral Selection, Hierarchical (Process 21 & 23)
1.2.840.10008.1.2.4.63 JPEG Full Progression, Hierarchical (Process 24 & 26)
1.2.840.10008.1.2.4.64 JPEG Full Progression, Hierarchical (Process 25 & 27)
1.2.840.10008.1.2.4.80 (partial) JPEG-LS Lossless Image Compression
1.2.840.10008.1.2.4.81 (partial) JPEG-LS Lossy (Near-Lossless) Image Compression
1.2.840.10008.1.2.4.100 (partial) MPEG2 Main Profile @ Main Level