[Insight-developers] Image::DirectionType should be Nx3 rather than NxN?

Steve M. Robbins steve at sumost.ca
Wed Jul 4 10:28:56 EDT 2007


Bill,

Perhaps my original message was too oblique.  Upon reflection, I 
would phrase my objection this way: the dimension of the physical
space is independent of the image dimension.  The two examples I
cited should prove this: you can take a 2D image in 3D space, and
you can take a 4D (volumetric time series) in a 3D space.

As it stands now, the GDCM ImageIO class effectively throws away
information when you read a 2D image: you get only the first two
components of the 3-vectors.

I understand that ITK is intended to be generic, and yes I can
conceive of taking an nD image inside an nD space.  But is there any
way that the DirectionType could specify the row and column dimensions
independently?  Well, the number of columns should be the image
dimension, but the number of rows should be specifiable independently
somehow and arguably default to 3.

-Steve


On Wed, Jul 04, 2007 at 08:02:18AM -0400, Bill Lorensen wrote:
> Steve,
> 
> nD direction cosines should be fine for nD images I think.  DICOM is a bit
> special since the 2D image has 2 3D direction cosines. The third is derived
> if more than one DICOM image exists in the series.
> 
> The named directions for medical images (axial, coronal, sagittal) don't
> have meaning in higher dimensions. As you pointed out, the direction cosines
> for a time series are hard to interpret. One could argue that the meaning of
> the directions is up to the application. itk just supports the concept.
> 
> Bill
> 
> 
> On 7/4/07, Steve M. Robbins <steve at sumost.ca> wrote:
> >
> >Howdy,
> >
> >In the DICOM view of things, the world coordinate system is always 3
> >dimensional.  Therefore a 2D DICOM image has two 3D direction vectors
> >(a.k.a. the direction cosines).
> >
> >The itk::ImageBase::DirectionType, however, is defined as
> >
> >/** Direction typedef support.  The Direction is a matix of
> >  * direction cosines that specify the direction between samples. */
> >typedef Matrix<double, VImageDimension, VImageDimension> DirectionType;
> >
> >So a 2D image is provided with two 2D direction vectors.  That's a bit
> >odd, I think.  Is it a bug or is there some subtlety I don't understand.
> >How does one interpret a 4D direction cosine for volumetric time series
> >data?
> >
> >I have read
> >
> >    http://www.itk.org/Wiki/Proposals:Orientation
> >and  http://www.insight-journal.org/dspace/handle/1926/145
> >
> >without gaining any enlightenment.
> >
> >Thanks,
> >-Steve
> >
> >-----BEGIN PGP SIGNATURE-----
> >Version: GnuPG v1.4.6 (GNU/Linux)
> >
> >iD8DBQFGiyz90i2bPSHbMcURAiaJAKCMHsf/GFrZKj53/f/nTtCNxoZrmACgsDB/
> >qy6TRYZsxv9MZrbSjsUtDJg=
> >=oCPa
> >-----END PGP SIGNATURE-----
> >
> >_______________________________________________
> >Insight-developers mailing list
> >Insight-developers at itk.org
> >http://www.itk.org/mailman/listinfo/insight-developers
> >
> >
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
Url : http://www.itk.org/mailman/private/insight-developers/attachments/20070704/783d285e/attachment.pgp


More information about the Insight-developers mailing list