[Insight-developers] SpatialOrientation and itkImageBase
Kent Williams
norman-k-williams at uiowa.edu
Fri Sep 9 10:27:55 EDT 2005
In general, SpatialOrientation is a shorthand for anatomical
orientation, and won't have a well-defined meaning for every sort of
image volume. It's very useful where it is relevant, for 3D anatomical
images.
The only problem I see in the code is int ImageBase<>::SetDirection,
which takes a SpatialOrientation::ValidCoordinateOrientationFlags to
specify the direction cosines. For ND, ND > 3 the code will execute and
run, but only the upper left 3x3 of the direction matrix gets
initialized. I suspect that the ND == 2 would also be problematic,
since there's no 3rd Row or 3rd Column in the matrix. In 2D
SpatialOrientation still has useful meaning, there's just no third
direction cosine.
An expedient, way to handle it would be to use template specialization
to make the current implementation specific to 2D and 3D, and have a
general implementation for N>3 that as much as possible does the right
thing.
What the right thing is, I leave up to the smart guys - you know who you
are.
The other problem, now that I think of it, with SpatialOrientation is
the enum name ValidCoordinateOrientationFlags. If anyone else can think
of a more concise name, lets use it.
Bill Lorensen wrote:
> I'm concerned about the recent additions to itkImageBase regarding
> SpatialOrientation. The current implementation seems to only support
> 3D images. ImageBase is n-dimensional.
>
> Perhaps this functionality could be provided through an external
> mechanism.
>
> If the interested parties are on Friday's t-con, maybe we can discuss.
>
> Bill
>
> _______________________________________________
> 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