[Insight-users] Origin and direction in itk::GDCMImageIO
Mathieu Malaterre
mathieu.malaterre at kitware.com
Wed Mar 1 14:00:42 EST 2006
Frank Miller wrote:
> 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.
Actually that's the easy part, when private vendor actually respect the
specs :-P
> 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
Go to PS 3.3. And look at C.7.6.2.1
http://medical.nema.org/dicom/2004/04_03PU3.PDF
As a side note the current mechanism might change. Because the Image
Orientation (Patient) seems to be applied on the Origin whereas it
should not.
HTH
Mathieu
More information about the Insight-users
mailing list