]> Creatis software - gdcmData.git/blob - TestAllEntryVerifyReference.txt
- README some comments on images moved to TestAllEntryVerifyReference.txt.
[gdcmData.git] / TestAllEntryVerifyReference.txt
1 # TestAllEntryVerifyReference.txt
2 #
3 # This file describes for (hopefully) all the images of this repository
4 # the Dicom field entries that we use for the test suite.
5 # Semantics:
6 #   For a given image file, we store the most sensible (to the state of
7 #   gdcm kernel) Dicom entries as a pair (key, value):
8 #   - key is the Dicom tag (i.e. the pair [group,element] represented
9 #     as a string (in hexadecimal with the pipe character acting as a
10 #     separator between the group and the element).
11 #   - value is the Dicom field that corresponds to the tag (and represented
12 #     as a string. For binary entries [like the Pixels (the tag is 7fe0|0010
13 #     usually)], which don't have a string representation, we use the
14 #     string constructed by gdcm e.g.
15 #         "gdcm::NotLoaded (BinEntry) Address:776 Length:387200 x(5e880)".
16 # Format:
17 #   - Each image shall be contained in a block delimited by [ and ]
18 #     (square brackets). Nested blocks are an error.
19 #   - each (key, value) pair shall stand on a single line:
20 #     * key is of the form xxxx|yyyy (in hexadecimal) e.g. 0008|0060
21 #     * value is a string delimited by " (double quotes) e.g. "CR"
22 #   - the spaces are the one of C++ [i.e. space, TAB, endline (including
23 #     the empty line)...] 
24 #   - comments shall be preceded by # (sharp character) and be at the
25 #     end of meaningfull information
26 #   - All the information between blocks is discarded, but please use
27 #     the comment syntax (line for the lines you are just reading)
28 # Example:
29 #    [ filename.dcm
30 #      # some nice comments and problems of filename.dcm
31 #      0008|0060 "CR"   # Modality
32 #      0008|1090 "9000" # Manufacturer's model name
33 #      7fe0|0010 "gdcm::NotLoaded (BinEntry) Address:776 Length:387200 x(5e880)"
34 #    ]
35 #    This info shall be discarded (and has no comment which is lack of taste)
36 #
37 #    [
38 #      otherFilename.dcm
39 #      # some really nice comments and documentation
40 #      0028|0010 "440"
41 #      0028|0011 "440" ] # Columns
42 #
43 #
44 # File naming conventions:
45 #  the general form shall be (unpresent or meaningfull field are optional)
46 #  [Manufacturer]-[BytesPerPixel]-[PhotoInterpretation]-[SQ]-[Description].EXT
47 #  where :
48 #   - [Manufacturer] represents at best the aquisition device. It can
49 #     can be a mix of the "Manufacturer" and "Manufacturer's Model Name"
50 #     Dicom entries.
51 #   - [BytesPerPixel] is the "Bits Stored" Dicom entry (or "Bits Allocated"
52 #     when "Bits Stored" is absent).
53 #   -[PhotoInterpretation] corresponds to the type of encoding of the image.
54 #     It is a short for the "Photometric Interpretation" Dicom entry e.g.
55 #     PAL (for "PALETTE COLOR"), RGB, YBR (for YBR_FULL),
56 #     YBR422 (for YBR_FULL_4220, MONO2 (for MONOCHROME2)...
57 #   - [SQ] when present indicates that the image contains a sequence.
58 #   - [Description] shall be a consice description of the features
59 #     specificities of the image (e.g. ACR_NEMA_1 to indicate it is an
60 #     old ACR Nema version 1 file format).
61 #   - .EXT is the extension and (allthough meaningless in terms of the
62 #     dicom standard) shall either be .acr (for ACR Nema version 1 and 2)
63 #     or .dcm for Dicom V3 images.
64 # Examples:
65 #   - SIEMENS_GBS_III-16-ACR_NEMA_1.acr does it's best to express
66 #     that this image was produced by a SIEMENS (manufacturer) "GBS III"
67 #     (model name) imaging device. It is encoded on 16 bits per pixel,
68 #     has no "Photometric Interpretation", no sequence, and uses the
69 #     old ACR Nema version 1 file format.
70 #
71
72 [ CR-MONO1-10-chest.dcm
73    #"Transfer Syntax UID" is absent.
74    0008|0060 "CR"   # Modality
75    0008|0070 "FUJI PHOTO FILM CO. LTD." # Manufacturer
76    0008|1090 "9000" # Manufacturer's Model Name
77    0028|0010 "440"  # Rows
78    0028|0011 "440"  # Columns
79    0028|0100 "16"   # Bits Allocated
80    0028|0101 "10"   # Bits Stored
81    0028|0102 "9"    # High Bit
82    0028|0103 "0"    # Pixel Representation
83    7fe0|0010 "gdcm::NotLoaded (BinEntry) Address:776 Length:387200 x(5e880)"
84 ]
85
86 [ SIEMENS_GBS_III-16-ACR_NEMA_1.acr
87   # - Particularities:
88   #   * old (circa 1991) ACR NEMA version 1.0 format.
89   #   * Pixel Representation (0028|0103) is absent
90   #   * apparently broken pixel data (see below)
91   #
92   # - This image pixel data looks corrupted, in the sense that the
93   #   following sizes do NOT match (as expected):
94   #   * it's pixel data is 132096 bytes long
95   #   * it has a size of 256x256 with 16 bytes per pixel, i.e. a size
96   #     of 256*256*2 = 131072 bytes.
97   # - Because of this missmatch, TestReadWriteReadCompare segfaults
98   #   on this image.
99   #   In details, when segfault occurs we have the following call stack:
100   #       gdcmFile::GetImageData()
101   #          PixelData = new uint8_t[ImageDataSize];
102   #          \--->::GetImageDataIntoVector(destination, ImageDataSize)
103   #           \---> ::ReadPixelData(destination)
104   #            \---> fread(destination, Header->GetPixelAreaLength(), 1, fp);
105   #   which causes the segfault because :
106   #       - destination is ImageDataSize i.e. 131072 bytes long
107   #       - Header->GetPixelAreaLength() = 132096 bytes long
108    0028|0010 "256"  # Rows
109    0028|0011 "256"  # Columns
110    0008|0060 "MR"   # Modality
111    0028|0100 "16"   # Bits Allocated
112    0028|0101 "12"   # Bits Stored
113    0028|0102 "11"   # High Bit
114    0008|0070 "SIEMENS "     # Manufacturer
115    0008|1090 "GBS III     " # Manufacturer's Model Name
116    7fe0|0010 "gdcm::NotLoaded (BinEntry) Address:8192 Length:132096 x(20400)"
117 ]
118
119 #############################################################################
120 # multiframe1.dcm
121 # multiframe2.dcm
122 #               Cardiovasculaire multiframe
123 #               True Dicom
124 #               Explicit VR
125 #               les champs prives ne *sont pas* Explicit VR
126 #               tous les Groupes comportent un element 0000
127 #               Pixels codes sur 10 bits
128 #               
129 # acusson.dcm
130 #               Echographie single Frame
131 #               True Dicom
132 #               Explicit VR
133 #               3 LUT (R, G, B)
134 #               
135 # irmPhlipsNew1.dcm
136 #               Irm Philips LyonSud
137 #               True Dicom
138 #               Explicit VR             
139 #               SQ curieuse en (0008,1140)
140 #               
141 # pixelNonRect.dcm
142 #               Irm Philips Marseille
143 #               True Dicom
144 #               Explicit VR     
145 #               les champs prives *sont* Explicit VR            
146 #               les champs prives contiennent des caract non imprimables 
147 #               Pixels non Rectangulaires       
148 #               
149 # esrf1.dcm
150 #               Vg Studio Max
151 #               True Dicom
152 #               Explicit VR     
153 #               Manque 'Samples Per Pixel' pour etre lue par e-film     
154 #               
155 # jpeg16Bits.dcm        
156 #               CT Siemens HEH
157 #               True Dicom
158 #               jpeg 16 Bits Lossy
159 #               (fait casser DcmRead 8/11/2002 :-(
160 #               repare 27/11
161 #       
162 # jpeglossles1.dcm
163 #               Jpeg LossLess
164 #               True Dicom
165 #               Explicit VR     
166 #               SQ en (0008,2112)       
167 #               contient peut etre (?!) des curiosités apres les Pixels 
168 #               
169 # jpeglossless2.dcm
170 #               CR Thoravision Philips Cardio
171 #               Jpeg LossLess
172 #               True Dicom
173 #               Explicit VR     
174 #               Jpeg mal decodé par les fonctions utilisees
175 #               
176 # jpeglossy1.dcm
177 # jpeglossy2.dcm
178 # jpeglossy3.dcm
179 #               Jpeg Lossy
180 #               Decodage non traite par mes fonctions
181 #               
182 # oldACR00001.ima
183 #               ACRNEMA V1 'ancien'
184 #               Groupe 20  NE contient  PAS Study et Serie Instance UID
185 #                               ET          Study ID et Series Number sont VIDES
186
187 # newACR1000.nema
188 #               ACRNEMA V2 'moderne'
189 #               Groupe 20 contient      Study    et Serie Instance UID
190 #                               ET      Study ID et Series Number
191 #                               
192 # imageEcat.ecat
193 #               Image au format ECAT (Medecine Nucleaire)
194 #               On n'y echapera pas encore tres longtemps, a celles la :-( 
195 #               
196 # ---------------- Ajouts 20 Nov 2002
197
198 # mr176621
199 #               MR Toshiba
200 #               ACRNEMA-V2
201 #               abscence de l'element 0000 (group length) pour tous les groupes
202 #               
203 # cr_45031
204 #               CR Fuji
205 #               ACRNEMA V2
206 #               1670x2010
207 #               
208 # MR.6799.1
209 #               MR Pickert
210 #               DICOM V3 like
211 #               manque le 'file preamble' de 200 octets
212 #               
213 # cr172241
214 #               CR Kodak
215 #               ACRNEMA V2
216 #               (0028 3000): SQ
217 #               (fffe, e00d), (fffe,e0dd), apres (0028, 3006) !!!
218 #               
219 # US.1.2.dcm
220 # US.1.3.dcm
221 #               US ACUSON
222 #               DICOM 3 Multiframe
223 #               JPEG 8 bits Lossy
224 #               (0028,0002) Samples Per Pixel = 3
225 #               (0018, 6011) : SQ
226 #               les champs à l'interieur de cette 'Sequence'
227 #                       contiennent des caract non imprimables qui déconfigurent l'ecran :-(
228 #               
229 #               Ces deux examens, correspondant a 2 patients differents ont le meme Study ID
230 #               
231 # ---------------- Ajouts 27/11/2002
232
233 # sonata.dcm
234 #               IRM Siemens Sonata (images taggees)
235 #               SQ en (0008,1140),contenant (0008,1150), (0008,1155) 3 fois 
236 #               
237 #               
238 # ---------------- Ajouts 16/12/2002    
239 # icone.dcm
240 #       CT Picker
241 #       image 512x512
242 #       (28 200 )contient une icone de 64x64
243 #               --> DEUX groupes 7FE0 dans la même image
244
245 # ----------------- Ajouts 13/02/2003
246
247 # sonata.nema
248 #       MR Siemens sonata
249 #       True DICOM
250 #       (18,1310) est un champ de Value Multiplicity > 1
251 #       vr : US mais longueur = 8
252
253 # --------------Ajouts 21/03/2003
254
255 # philipsMR-lossy.ima
256 #       MR Philips (Neuro)
257 #       True Dicom
258 #       indiquée comme ACR-NEMA V1 dans l'entete
259 #       JPEG Lossy (Transfer Syntax UID : [1.2.840.10008.1.2.4.51])