[Insight-developers] Coordinate system semantics of ImageIOBase?
Luis Ibanez
luis.ibanez at kitware.com
Thu Jan 15 17:54:18 EST 2009
Steve,
The world coordinates of the pixel with index (0,0,0) must be
the same as the origin coordinates returned by the methods:
GetOrigin( int dimension, double coordinate )
Or said backwards:
The "Origin" *is* the set of world coordinates of the
pixel with index (0,0,0).
Regards,
Luis
------------------------
Steve M. Robbins wrote:
> On Tue, Jan 13, 2009 at 07:33:32AM -0500, Rupert Brooks wrote:
>
>
>>>>Just a couple questions:
>>>>
>>>
>>>>MINC and ITK use different ways of specifying the origin / offset of
>>>>the coordinate system. I believe
>>>>that MINC uses the xstart, ystart, zstart as the distance _along the
>>>>x,y,z direction cosines_, while
>>>>ITK places the origin _such that pixel 0,0,0 is at the origin_.
>>>
>>>If that's true, then it is my misunderstanding.
>>>
>>>Since ImageIOBase::GetOrigin() is not documented, I asked this list
>>>about it:
>>>
>>>ME:
>>>
>>>>The method GetOrigin(int i) returns a double; I assume that
>>>>GetOrigin(0), GetOrigin(1), GetOrigin(2) return the column,
>>>>row, and slice, respectively, of the world-space origin.
>>>>Is that correct?
>>>>
>>>
>>>Louis responded "Yes"; c.f.
>>>http://www.itk.org/mailman/private/insight-developers/2008-December/011435.html
>>>
>>>To me, that means that ITK's GetOrigin() is the same notion as MINC's
>>>"starts". If these are not identical, then I need a better description
>>>of what GetOrigin() returns.
>>
>>I think this conversation is about the ITK origin - which is the location of the
>>pixel zero. However - i think that the wording is funny -
>
>
>
> Agreed: my wording is clumsy. Let me try to phrase it more precisely.
>
> Suppose we have read a 3D image using some subclass of itk::ImageIOBase.
>
> Let T be the voxel-to-world transformation given by the metadata of
> the image; i.e. the direction cosines & etc.
>
> Let x be the 3-vector
>
> x = (GetOrigin(0), GetOrigin(1), GetOrigin(2))
>
> My interpretation is that T(x) = (0,0,0).
>
> I believe that your interpretation is that T(0,0,0) = x.
>
>
> ITK-gurus: which is correct?
>
> Thanks,
> -Steve
>
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> 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