[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