[Insight-developers] DICOM Header Tags

Mathieu Malaterre mathieu.malaterre at kitware.com
Mon Aug 15 16:14:38 EDT 2005


Ok I found a reference:

cd dicom3tools_1.00.snapshot.20050804.helgray/libsrc/standard/elmdict

$ grep 29 siemens.tpl | grep 20
(0029,0020) VERS="SSPI" VR="US"   VM="1"        Owner="SIEMENS MED HG" 
         Keyword="ListOfElementNumbers"                  Name="List of 
Element Numbers"

(0029,0020) VERS="SSPI" VR="US"   VM="1"        Owner="SIEMENS MED MG" 
         Keyword="ListOfElementNumbers"                  Name="List of 
Element Numbers"

(0029,0020) VERS="SSPI" VR="CS"   VM="3"        Owner="SIEMENS CM VA0 
CMS"     Keyword="PixelQualityCode"                      Name="Pixel 
Quality Code"

(0029,0020) VERS="SSPI" VR="US"   VM="1"        Owner="SIEMENS MED
DISPLAY"     Keyword="?"                                     Name="?"

(0029,0020) VERS="SSPI" VR="OB"   VM="1"        Owner="SIEMENS CSA 
HEADER"      Keyword="CSASeriesHeaderInfo"                   Name="CSA 
Series Header Info"

(0029,0020) VERS="SSPI" VR="OB"   VM="1"        Owner="SIEMENS MEDCOM 
HEADER"   Keyword="MedComHistoryInformation"              Name="MedCom 
History Information"

So you need to reformat the correct Siemens one from dicom3tools 
dictionary format into the gdcm file format. Let me know if you need 
help doing that.

Just for curiosity could you send me an example of such image (already 
anonymized if possible).

Thanks a bunch,
Mathieu


Mathieu Malaterre wrote:
> Vincent,
> 
>     You understand that this DICOM tag is from the private/shadow 
> dictionary. This is hardly ever documented, and there has been case 
> where the definition of the value changed over the year. The algorithm 
> to find the defintion of a DICOM tag from private dictionary is *really* 
> tricky (especially Siemens/SPI).
> 
> #1 But anyway if you know what you care doing you can change the 
> following line:
> 
>  else if ( gdcm::ValEntry* v = dynamic_cast<gdcm::ValEntry*>(d) )
>       {
>       // Only copying field from the public DICOM dictionary
>       if( v->GetName() != "unkn")   <--- this one
> 
> 
> #2 The other (and better approach) is if you have the dictionary for 
> this type of image. You could edit the file dicomV3.dic. So that it 
> containing a line, something like:
> 
> 0029 1020 ?? 1 Diffusion Tensor Series
> 
> Therefore at load time the dictionary will return a name for this tag.
> 
> HTH,
> Mathieu
> As a side note, private dictionaries are handler much smoother in gdcm CVS.
> 
> And if you have the time could you send me the pdf or some links that 
> describe this tag, I cannot seems to find it in Philips, SIEMENS, GE, 
> ACUSON...
> 
> And for the historical reason, DICOM name use to be the key in the 
> MetaDataDictionary, one understand why private (unknown) tags where 
> therefore skip at load time :)
> 
> Vincent A. Magnotta wrote:
> 
>> Is there a reason that the DICOM header tag (0029, 1020) is being
>> excluded from the MetaDataDictionary? I am trying to sort out a
>> diffusion tensor series collected on a Siemens scanner. Siemens puts a
>> significant amount of information in this portion of the header in ASCII
>> format. I would like to use some of this information to generate a 4D
>> image from the 3D images loaded by the GDCM I/O factory.
>>
>> Vince
>>
>>
> 
> _______________________________________________
> Insight-developers mailing list
> Insight-developers at itk.org
> http://www.itk.org/mailman/listinfo/insight-developers
> 



More information about the Insight-developers mailing list