[Insight-developers] VectorImage class in the pipeline

Jim Miller millerjv at gmail.com
Thu Feb 8 09:52:40 EST 2007


It looks to me like the VectorImage class has not been integrated in the ITK
pipeline.  For example, one cannot put a VectorImage through a
CastImageFilter to change the component type (say from unsigned short to
float).

The CastImageFilter is a simple subclass of the UnaryFunctorImageFilter, so
I am guessing that none of the subclasses of UnaryFunctorImageFilter,
BinaryFunctorImageFilter, etc. can handle a VectorImage.  This is very
disappointing since we have many such subclasses and they provide the very
basics of pixel manipulation. (No neighborhoods are evaluated, etc.)

Karthik, I though you went through a large number of the filters to make to
make them work for VectorImage.  Are these filters on the roadmap?

The basis of the issue is that the vector length is not part of the
information configured by a filter when GenerateOutputInformation is called.
So the output image is never configured with an appropriate VectorLength and
the Allocate() method ends making vectors which are too small (or even zero
length).

I think this is something that could be handled in the default pipeline
negotiation, so that all the UnaryFunctor, BinaryFunctor, ...  would work
out of the box.  I could see having a JoinImageFilter-type filter that
subclassed BinaryFunctorImageFilter that would need to override the default
GenerateOutputInformation().  However, many of the subclasses of
UnaryuFunctor, BinaryFunctor, ... should "just work" with VectorImages.

Is this being worked on?

Jim
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.itk.org/mailman/private/insight-developers/attachments/20070208/8bb02311/attachment.htm


More information about the Insight-developers mailing list