[Dcmlib] GetPatSliceOrient(gdcm::File &h) (BIS)

Jean-Pierre ROUX jean-pierre.roux at creatis.insa-lyon.fr
Sat Oct 1 09:37:23 CEST 2005


>Hello everybody.
>I see you are playing with orientation....
>I have some new datasets to test...
>Some are total-body and I can see something strange (to me at least):
>in the same dicomdir images are oriented differently.
>thus, the reader return only few slices when I have many and many of them....
>does it suggest to you something?

Hi, Luca.
How do you use vtkgdcmreader?
-->The 'usual' way (passing info to build the file names) considers 
the orientation of the *first* image and discards any image with a 
different orientation, considering it's a bugged image (?!?)
(This feature was written a ling time ago ...)

-->You may now pass a CoherentFileList (result of gdcm::SerieHelper 
-that may build more than one SerieHelper-)
Normaly (?), within a CoherentFileList (same "Serie Instance UID"), 
you should have the same orientation.

(note : this is not 100% true, since for MR studies, a single serie 
may hold all the 'scout views', with 2 or 3 diferrent orientations 
-but never anybody will try use scout view as 'slices' to make a 
volume-)

If this new feature doesn't help you, could you upload your images 
somewhere, so we can have a look at them.
(use
AnonymizeNoLoad dirin=yourSinglePatientImageDirectory
to anomymize the whole directory)

Thx

JP




>
>luca
>
>
>
>Mathieu Malaterre wrote:
>
>>Mathieu Malaterre wrote:
>>
>>>Jean-Pierre Roux wrote:
>>>
>>>>Jean-Pierre Roux wrote:
>>>>
>>>>>Mathieu Malaterre wrote:
>>>>>
>>>>>
>>>>>I had a look a Xmedcon's code a few years ago.
>>>>>I gave it up, since they use :
>>>>>Patient Orientation (0020,0020),  (Optional Tag for MR, CT,, etc)
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>--> Sorry : actually they use PatientPosition (0x0010,0x5100)
>>>>assumed to be equal to "HF" or "FF".
>>>>
>>>>In *all* the images I have, it "HFS " or "FFS "  (S for supine 
>>>>-the guy is lying on his back- , You can also have P, for Prone).
>>>>
>>>>
>>>>Moreover, on MR, you can have *any* value -1< <+1 for the cosines  :
>>>>
>>>>ImageOrientationPatient (0x0020,0x0037)= [ 
>>>>-0.002378\0.999985\0.004852\0.030516\0.004923\-0.999522]
>>>>
>>>>an other image shows me :
>>>>
>>>>ImageOrientationPatient (0x0020,0x0037)= 
>>>>[0.569486\0.822001\0.000000\-0.000000\0.000000\-1.000000 ]
>>>>
>>>>JP
>>>>
>>>>
>>>>>and the suppose the only values for cosines inside "Image 
>>>>>Orientation (Patient)" (0020,0037) are -1, 0, +1 !
>>>>>
>>>>>Have a look  at :
>>>>>http://www.dclunie.com/medical-image-faq/html/part2.html#DICOMOrientation
>>>>>
>>>>>It *computes* the "Patient Orientation" from "Image Orientation 
>>>>>(Patient)" ...
>>>>>
>>>>>gdcm uses David Clunie's code in the method :
>>>>>std::string Orientation::GetOrientation ( File *f )
>>>>
>>>
>>>
>>>I have to say I am clueless. How exactly does this thing works. 
>>>For instance, SIEMENS_Sonata-16-MONO2-Value_Multiplicity.dcm
>>>
>>>I get:
>>>V 0018|5100 [CS]                       [Patient Position] [HFS ]
>>>
>>>
>>>but gdcm returns:
>>>Orientation [LHP\PF]
>>>
>>>What does LHP stand for ? How about PF ?
>>
>>
>>Ok forget that mail, I have a strong headache and I don't 
>>understand what I am saying anymore (Position != Orientation). I'll 
>>play with Orientation a little more after resting.
>>
>>sorry for the noise
>>Mathieu
>>_______________________________________________
>>Dcmlib mailing list
>>Dcmlib at creatis.insa-lyon.fr
>>http://www.creatis.insa-lyon.fr/mailman/listinfo/dcmlib
>>.
>>
>
>_______________________________________________
>Dcmlib mailing list
>Dcmlib at creatis.insa-lyon.fr
>http://www.creatis.insa-lyon.fr/mailman/listinfo/dcmlib

   Jean-Pierre ROUX
   CREATIS - CNRS UMR 5515, INSERM U 630
   Laboratoire de Radiologie Experimentale
   Hopital Cardiologique
   28 Avenue du Doyen LEPINE
   B.P. Lyon-Montchat
   69394 Lyon Cedex 03
 
   Tel      : (+33) 04 72 35 74 12
   Fax      : (+33) 04 72 68 49 16
   URL      : http://www.creatis.univ-lyon1.fr
   e-mail   : jpr at creatis.univ-lyon1.fr
								   



More information about the Dcmlib mailing list