ITK  4.0.0
Insight Segmentation and Registration Toolkit
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions
itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage > Class Template Reference

Computes the inverse of a displacement field. More...

#include <itkIterativeInverseDisplacementFieldImageFilter.h>

Inheritance diagram for itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >:
Collaboration diagram for itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >:

List of all members.

Public Types

typedef SmartPointer< const SelfConstPointer
typedef
FieldInterpolatorType::OutputType 
FieldInterpolatorOutputType
typedef
FieldInterpolatorType::Pointer 
FieldInterpolatorPointer
typedef
VectorLinearInterpolateImageFunction
< TInputImage, double > 
FieldInterpolatorType
typedef
ImageRegionConstIterator
< InputImageType
InputConstIterator
typedef
InputImageType::ConstPointer 
InputImageConstPointer
typedef InputImageType::Pointer InputImagePointer
typedef InputImageType::PointType InputImagePointType
typedef InputImageType::RegionType InputImageRegionType
typedef InputImageType::SpacingType InputImageSpacingType
typedef TInputImage InputImageType
typedef ImageRegionIterator
< InputImageType
InputIterator
typedef OutputImageType::IndexType OutputImageIndexType
typedef OutputImageType::PixelType OutputImagePixelType
typedef OutputImageType::Pointer OutputImagePointer
typedef OutputImageType::PointType OutputImagePointType
typedef TOutputImage OutputImageType
typedef
OutputImagePixelType::ValueType 
OutputImageValueType
typedef ImageRegionIterator
< OutputImageType
OutputIterator
typedef SmartPointer< SelfPointer
typedef
IterativeInverseDisplacementFieldImageFilter 
Self
typedef ImageToImageFilter
< TInputImage, TOutputImage > 
Superclass
typedef TimeProbe TimeType
typedef WarpVectorImageFilter
< TOutputImage, TInputImage,
TOutputImage > 
VectorWarperType

Public Member Functions

virtual ::itk::LightObject::Pointer CreateAnother (void) const
virtual const char * GetNameOfClass () const
virtual unsigned int GetNumberOfIterations () const
virtual double GetStopValue () const
virtual void SetNumberOfIterations (unsigned int _arg)
virtual void SetStopValue (double _arg)
 typedef (Concept::HasNumericTraits< OutputImageValueType >) OutputHasNumericTraitsCheck

Static Public Member Functions

static Pointer New ()

Protected Member Functions

void GenerateData ()
 IterativeInverseDisplacementFieldImageFilter ()
void PrintSelf (std::ostream &os, Indent indent) const
 ~IterativeInverseDisplacementFieldImageFilter ()

Protected Attributes

unsigned int m_NumberOfIterations
double m_StopValue
double m_Time

Private Member Functions

 IterativeInverseDisplacementFieldImageFilter (const Self &)
void operator= (const Self &)

Detailed Description

template<class TInputImage, class TOutputImage>
class itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >

Computes the inverse of a displacement field.

IterativeInverseDisplacementFieldImageFilter takes a displacement field as input and computes the displacement field that is its inverse. If the input displacement field was mapping coordinates from a space A into a space B, the output of this filter will map coordinates from the space B into the space A.

The algorithm implemented in this filter uses an iterative method for progresively refining the values of the inverse field. Starting from the direct field, at every pixel the direct mapping of this point is found, and a the nevative of the current displacement is stored in the inverse field at the nearest pixel. Then, subsequent iterations verify if any of the neigbor pixels provide a better return to the current pixel, in which case its value is taken for updating the vector in the inverse field.

This method was discussed in the users-list during February 2004.

Author:
Corinne Mattmann

Definition at line 52 of file itkIterativeInverseDisplacementFieldImageFilter.h.


Member Typedef Documentation

template<class TInputImage , class TOutputImage >
typedef SmartPointer< const Self > itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::ConstPointer
template<class TInputImage , class TOutputImage >
typedef FieldInterpolatorType::OutputType itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::FieldInterpolatorOutputType
template<class TInputImage , class TOutputImage >
typedef FieldInterpolatorType::Pointer itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::FieldInterpolatorPointer
template<class TInputImage , class TOutputImage >
typedef VectorLinearInterpolateImageFunction< TInputImage, double > itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::FieldInterpolatorType
template<class TInputImage , class TOutputImage >
typedef ImageRegionConstIterator< InputImageType > itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::InputConstIterator
template<class TInputImage , class TOutputImage >
typedef InputImageType::ConstPointer itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::InputImageConstPointer
template<class TInputImage , class TOutputImage >
typedef InputImageType::Pointer itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::InputImagePointer
template<class TInputImage , class TOutputImage >
typedef InputImageType::PointType itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::InputImagePointType
template<class TInputImage , class TOutputImage >
typedef InputImageType::RegionType itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::InputImageRegionType
template<class TInputImage , class TOutputImage >
typedef InputImageType::SpacingType itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::InputImageSpacingType
template<class TInputImage , class TOutputImage >
typedef TInputImage itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::InputImageType
template<class TInputImage , class TOutputImage >
typedef ImageRegionIterator< InputImageType > itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::InputIterator
template<class TInputImage , class TOutputImage >
typedef OutputImageType::IndexType itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::OutputImageIndexType
template<class TInputImage , class TOutputImage >
typedef OutputImageType::PixelType itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::OutputImagePixelType
template<class TInputImage , class TOutputImage >
typedef OutputImageType::Pointer itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::OutputImagePointer
template<class TInputImage , class TOutputImage >
typedef OutputImageType::PointType itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::OutputImagePointType
template<class TInputImage , class TOutputImage >
typedef TOutputImage itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::OutputImageType

Some convenient typedefs.

Reimplemented from itk::ImageSource< TOutputImage >.

Definition at line 75 of file itkIterativeInverseDisplacementFieldImageFilter.h.

template<class TInputImage , class TOutputImage >
typedef OutputImagePixelType::ValueType itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::OutputImageValueType
template<class TInputImage , class TOutputImage >
typedef ImageRegionIterator< OutputImageType > itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::OutputIterator
template<class TInputImage , class TOutputImage >
typedef SmartPointer< Self > itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::Pointer
template<class TInputImage , class TOutputImage >
typedef IterativeInverseDisplacementFieldImageFilter itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::Self

Standard class typedefs.

Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.

Definition at line 57 of file itkIterativeInverseDisplacementFieldImageFilter.h.

template<class TInputImage , class TOutputImage >
typedef ImageToImageFilter< TInputImage, TOutputImage > itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::Superclass
template<class TInputImage , class TOutputImage >
typedef TimeProbe itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::TimeType
template<class TInputImage , class TOutputImage >
typedef WarpVectorImageFilter< TOutputImage, TInputImage, TOutputImage > itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::VectorWarperType

Constructor & Destructor Documentation

template<class TInputImage , class TOutputImage >
itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::IterativeInverseDisplacementFieldImageFilter ( ) [protected]

End concept checking

template<class TInputImage , class TOutputImage >
itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::~IterativeInverseDisplacementFieldImageFilter ( ) [inline, protected]
template<class TInputImage , class TOutputImage >
itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::IterativeInverseDisplacementFieldImageFilter ( const Self ) [private]

Member Function Documentation

template<class TInputImage , class TOutputImage >
virtual::itk::LightObject::Pointer itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::CreateAnother ( void  ) const [virtual]

Create an object from an instance, potentially deferring to a factory. This method allows you to create an instance of an object that is exactly the same type as the referring object. This is useful in cases where an object has been cast back to a base class.

Reimplemented from itk::Object.

template<class TInputImage , class TOutputImage >
void itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::GenerateData ( ) [protected, virtual]

A version of GenerateData() specific for image processing filters. This implementation will split the processing across multiple threads. The buffer is allocated by this method. Then the BeforeThreadedGenerateData() method is called (if provided). Then, a series of threads are spawned each calling ThreadedGenerateData(). After all the threads have completed processing, the AfterThreadedGenerateData() method is called (if provided). If an image processing filter cannot be threaded, the filter should provide an implementation of GenerateData(). That implementation is responsible for allocating the output buffer. If a filter an be threaded, it should NOT provide a GenerateData() method but should provide a ThreadedGenerateData() instead.

See also:
ThreadedGenerateData()

Reimplemented from itk::ImageSource< TOutputImage >.

template<class TInputImage , class TOutputImage >
virtual const char* itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::GetNameOfClass ( ) const [virtual]

Run-time type information (and related methods).

Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.

template<class TInputImage , class TOutputImage >
virtual unsigned int itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::GetNumberOfIterations ( ) const [virtual]
template<class TInputImage , class TOutputImage >
virtual double itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::GetStopValue ( ) const [virtual]
template<class TInputImage , class TOutputImage >
static Pointer itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::New ( ) [static]

Method for creation through the object factory.

Reimplemented from itk::Object.

template<class TInputImage , class TOutputImage >
void itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::operator= ( const Self ) [private]

PushBackInput(), PushFronInput() in the public section force the input to be the type expected by an ImageToImageFilter. However, these methods end of "hiding" the versions from the superclass (ProcessObject) whose arguments are DataObjects. Here, we re-expose the versions from ProcessObject to avoid warnings about hiding methods from the superclass.

Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.

template<class TInputImage , class TOutputImage >
void itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::PrintSelf ( std::ostream &  os,
Indent  indent 
) const [protected, virtual]

Methods invoked by Print() to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.

Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.

template<class TInputImage , class TOutputImage >
virtual void itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::SetNumberOfIterations ( unsigned int  _arg) [virtual]
template<class TInputImage , class TOutputImage >
virtual void itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::SetStopValue ( double  _arg) [virtual]
template<class TInputImage , class TOutputImage >
itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::typedef ( Concept::HasNumericTraits< OutputImageValueType )

Begin concept checking This class requires OutputHasNumericTraitsCheck in the form of ( Concept::HasNumericTraits< OutputImageValueType > )


Member Data Documentation

template<class TInputImage , class TOutputImage >
unsigned int itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::m_NumberOfIterations [protected]
template<class TInputImage , class TOutputImage >
double itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::m_StopValue [protected]
template<class TInputImage , class TOutputImage >
double itk::IterativeInverseDisplacementFieldImageFilter< TInputImage, TOutputImage >::m_Time [protected]

The documentation for this class was generated from the following file: