[Insight-users] Image mapper base: Calculators

Luis Ibanez luis.ibanez@kitware.com
Fri, 28 Mar 2003 07:25:44 -0500


Hi Gavin,

You and Mathieu are right on this.

These type ITK filters are called "Calculators".

Their difference with normal filter is that
their outputs are not passed in the pipeline
and do not propagate Update() calls.

A similar situation happens with the registration
classes, whose output is a Transform and do not
participate in the pipeline.

Note that the MinimumMaximumImageFilter is something
of a hack, since it is passing it input directly to
the output and as a subproduct is computing the
minimum and maximum of the intensity. I would suggest
you to rather follow the example of the
MinimumMaximumImageCalculator which makes clearer
that the result is not in the pipeline.
http://www.itk.org/Insight/Doxygen/html/classitk_1_1MinimumMaximumImageCalculator.html

Among the other calculators you will find:
http://www.itk.org/Insight/Doxygen/html/classitk_1_1ImageMomentsCalculator.html
http://www.itk.org/Insight/Doxygen/html/classitk_1_1OtsuThresholdImageCalculator.html
http://www.itk.org/Insight/Doxygen/html/classitk_1_1Statistics_1_1CovarianceCalculator.html
http://www.itk.org/Insight/Doxygen/html/classitk_1_1Statistics_1_1MeanCalculator.html


There is an ongoing effort for making possible
the use of non-image and non-mesh objects as
data objects in the pipeline, this will probably
take some time.



Regards,


     Luis


------------------------------
Gavin Baker wrote:
 > Mathieu,
 >
 > Merci...
 >
 > On Wed, Mar 26, 2003 at 04:38:29PM +0100, Mathieu Malaterre wrote:
 >
 >
 >>	You are right there is a missing class: itkImageToValueFilter
 >>	During that time you can take advantage of:
 >>
 >>http://www.itk.org/Doxygen/html/classitk_1_1MinimumMaximumImageFilter.html
 >>
 >>It will show you how to write such an image to value filter.
 >
 >
 > That is a useful example.  I recoded my filter to follow this, and it
 > works fine.
 >
 > It is a little different from a 'mapper' in the sense that it doesn't
 > terminate the pipeline, but passes it along unmodified.  It's a bit
 > like a 'tap' or a 'window' into the pipeline.  So maybe there are 2
 > other types of filters...
 >
 > thanks,
 >
 >   :: Gavin
 >