[Insight-users] Origin and direction in itk::GDCMImageIO

Frank Miller frankmiller at jhmi.edu
Wed Mar 1 13:09:09 EST 2006


Greetings,

I recently started to play with Dicom images with oblique orientation 
and I just noticed that the origin that is stored in itk::Image is 
different then the "Image Position (Patient)" tag in the Dicom header. I 
thought this was a bug at first but when I dug around in the 
itkGDCMImageIO class I discovered that this was done intentionally. 
Quoting itkGDCMImageIO.cxx

   // DICOM specifies its origin in LPS coordinate, regardless of how
   // the data is acquired. itk's origin must be in the same
   // coordinate system as the data. This code transforms the DICOM
   // origin into the itk origin. The itk origin is computed by
   // multiplying the inverse(transpose) of the direction cosine times
   // the dicom origin.

Can someone explain to me why the origin is mapped in this way?  What is 
the difference between the "LPS coordinate system" and the "coordinate 
system of the data?"

Also, Im a newcomer to Dicom and especially to the spatial orientation 
of medical images.  Can someone can suggest a good reference?  I have 
taken a look at http://medical.nema.org/dicom/2004.html but those 
documents read like tax code. I cant find where it describes what "Image 
Position (Patient)" and "Image Position (Patient)" actually mean. Most 
of my understanding comes from the notes in 
http://www.itk.org/Wiki/Proposals:Orientation.

Frank


More information about the Insight-users mailing list