[Insight-developers] [GDCM] ITK Origin and coordinate system

Gordon Kindlmann gk at bwh.harvard.edu
Tue Jan 17 21:40:51 EST 2006


hello,

Okay, so I agree with/understand all that you've written here:

On Jan 17, 2006, at 12:50 PM, Luis Ibanez wrote:

>
> Hi Gordon,
>
> Thanks for pointing out about the cell/node centered issue.
>
> That's not the problem we are concerned about at this point,
> although it is something important to keep in mind.
>
>
> The issue we are discussing is that the transformation between
> index and physical coordinates is in principle:
>
>
>        Point = M * S * Index + Origin
>
>
> Where:
>
> - Point and Origin are in the same physical coordinate system.
>
> - M is the NxN matrix of direction cosines that represent
>   the orientation of the sampling grid axis.
>
> - S is a diagonal matrix with the inter-slice spacing
>   along every direction.
>
> - Index is the set of integer coordinates used for locating
>   a pixel in the image sampling grid.

So, can someone tell me why the following is not the case with DICOM  
in ITK:

* The (0x0020,0x0037) "Image Orientation (Patient)" tag gives you two  
unit-length vectors which you put in the first two columns of your  
"M" matrix.

* The (0x0028,0x0030) "Pixel Spacing" tag gives you two scalars that  
you put in the first two diagonal entries of "S".

* You take the difference between the (0x0020,0x0032) "Image Position  
(Patient)" tags of any two successive slices, call this vector D.   
Put D/|D| (normalized) in the third column of "M", and put |D| in the  
third and final diagonal entry of "S".

* The (0x0020,0x0032) "Image Position (Patient)" tag of the very  
first image (of the series) gives you "Origin".

ITK adopted DICOM's left-posterior-superior LPS as the coordinate  
system for orientation.  The above four points are to me the most  
obvious mapping of DICOM orientation information to the mathematical  
formalism you describe.  How can ITK be doing anything else?

Gordon



More information about the Insight-developers mailing list