Main Page   Groups   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Concepts

itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage > Class Template Reference
[Registration Filters]

Base class for multi-resolution image registration methods. More...

#include <itkMultiResolutionImageRegistrationMethod.h>

Inheritance diagram for itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >:

Inheritance graph
[legend]
Collaboration diagram for itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >:

Collaboration graph
[legend]
List of all members.

Public Types

typedef MultiResolutionImageRegistrationMethod Self
typedef ProcessObject Superclass
typedef SmartPointer< SelfPointer
typedef SmartPointer< const
Self
ConstPointer
typedef TFixedImage FixedImageType
typedef FixedImageType::ConstPointer FixedImageConstPointer
typedef FixedImageType::RegionType FixedImageRegionType
typedef TMovingImage MovingImageType
typedef MovingImageType::ConstPointer MovingImageConstPointer
typedef ImageToImageMetric<
FixedImageType, MovingImageType
MetricType
typedef MetricType::Pointer MetricPointer
typedef MetricType::TransformType TransformType
typedef TransformType::Pointer TransformPointer
typedef MetricType::InterpolatorType InterpolatorType
typedef InterpolatorType::Pointer InterpolatorPointer
typedef SingleValuedNonLinearOptimizer OptimizerType
typedef MultiResolutionPyramidImageFilter<
FixedImageType, FixedImageType
FixedImagePyramidType
typedef FixedImagePyramidType::Pointer FixedImagePyramidPointer
typedef MultiResolutionPyramidImageFilter<
MovingImageType, MovingImageType
MovingImagePyramidType
typedef MovingImagePyramidType::Pointer MovingImagePyramidPointer
typedef MetricType::TransformParametersType ParametersType

Public Member Functions

virtual const char * GetClassName () const
void StartRegistration ()
void StopRegistration ()
virtual unsigned long GetCurrentLevel ()
virtual const ParametersTypeGetLastTransformParameters ()
virtual void SetFixedImage (const FixedImageType *_arg)
virtual const FixedImageTypeGetFixedImage ()
virtual void SetMovingImage (const MovingImageType *_arg)
virtual const MovingImageTypeGetMovingImage ()
virtual void SetOptimizer (OptimizerType *_arg)
virtual OptimizerTypeGetOptimizer ()
virtual void SetMetric (MetricType *_arg)
virtual MetricTypeGetMetric ()
virtual void SetFixedImageRegion (FixedImageRegionType _arg)
virtual const FixedImageRegionTypeGetFixedImageRegion ()
virtual void SetTransform (TransformType *_arg)
virtual TransformTypeGetTransform ()
virtual void SetInterpolator (InterpolatorType *_arg)
virtual InterpolatorTypeGetInterpolator ()
virtual void SetFixedImagePyramid (FixedImagePyramidType *_arg)
virtual FixedImagePyramidTypeGetFixedImagePyramid ()
virtual void SetMovingImagePyramid (MovingImagePyramidType *_arg)
virtual MovingImagePyramidTypeGetMovingImagePyramid ()
virtual void SetNumberOfLevels (unsigned long _arg)
virtual unsigned long GetNumberOfLevels ()
virtual void SetInitialTransformParameters (ParametersType _arg)
virtual const ParametersTypeGetInitialTransformParameters ()
virtual void SetInitialTransformParametersOfNextLevel (ParametersType _arg)
virtual const ParametersTypeGetInitialTransformParametersOfNextLevel ()

Static Public Member Functions

Pointer New ()

Protected Member Functions

 MultiResolutionImageRegistrationMethod ()
virtual ~MultiResolutionImageRegistrationMethod ()
void PrintSelf (std::ostream &os, Indent indent) const
void Initialize () throw (ExceptionObject)
void PreparePyramids (void)
virtual void SetCurrentLevel (unsigned long _arg)

Detailed Description

template<typename TFixedImage, typename TMovingImage>
class itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >

Base class for multi-resolution image registration methods.

This class provides a generic interface for multi-resolution registration using components of the registration framework. See documentation for ImageRegistrationMethod for a description of the registration framework components.

The registration process is initiated by method StartRegistration(). The user must set the parameters of each component before calling this method.

The number of resolution level to process can be set via SetNumberOfLevels(). At each resolution level, the user specified registration components are used to register downsampled version of the images by computing the transform parameters that will map one image onto the other image.

The downsampled images are provided by user specified MultiResolutionPyramidImageFilters. User must specify the schedule for each pyramid externally prior to calling StartRegistration().

Warning:
If there is discrepancy between the number of level requested and a pyramid schedule. The pyramid schedule will be overriden with a default one.
Before each resolution level an IterationEvent is invoked providing an opportunity for a user interface to change any of the components, change component parameters, or stop the registration.

This class is templated over the fixed image type and the moving image type.

See also:
ImageRegistrationMethod

Definition at line 66 of file itkMultiResolutionImageRegistrationMethod.h.


Member Typedef Documentation

template<typename TFixedImage, typename TMovingImage>
typedef SmartPointer<const Self> itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::ConstPointer
 

Reimplemented from itk::ProcessObject.

Definition at line 73 of file itkMultiResolutionImageRegistrationMethod.h.

template<typename TFixedImage, typename TMovingImage>
typedef FixedImageType::ConstPointer itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::FixedImageConstPointer
 

Definition at line 83 of file itkMultiResolutionImageRegistrationMethod.h.

template<typename TFixedImage, typename TMovingImage>
typedef FixedImagePyramidType::Pointer itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::FixedImagePyramidPointer
 

Definition at line 110 of file itkMultiResolutionImageRegistrationMethod.h.

template<typename TFixedImage, typename TMovingImage>
typedef MultiResolutionPyramidImageFilter< FixedImageType, FixedImageType > itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::FixedImagePyramidType
 

Type of the Fixed image multiresolution pyramid. Definition at line 109 of file itkMultiResolutionImageRegistrationMethod.h.

template<typename TFixedImage, typename TMovingImage>
typedef FixedImageType::RegionType itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::FixedImageRegionType
 

Definition at line 84 of file itkMultiResolutionImageRegistrationMethod.h.

template<typename TFixedImage, typename TMovingImage>
typedef TFixedImage itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::FixedImageType
 

Type of the Fixed image. Definition at line 82 of file itkMultiResolutionImageRegistrationMethod.h.

template<typename TFixedImage, typename TMovingImage>
typedef InterpolatorType::Pointer itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::InterpolatorPointer
 

Definition at line 101 of file itkMultiResolutionImageRegistrationMethod.h.

template<typename TFixedImage, typename TMovingImage>
typedef MetricType::InterpolatorType itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::InterpolatorType
 

Type of the Interpolator. Definition at line 100 of file itkMultiResolutionImageRegistrationMethod.h.

template<typename TFixedImage, typename TMovingImage>
typedef MetricType::Pointer itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::MetricPointer
 

Definition at line 93 of file itkMultiResolutionImageRegistrationMethod.h.

template<typename TFixedImage, typename TMovingImage>
typedef ImageToImageMetric< FixedImageType, MovingImageType > itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::MetricType
 

Type of the metric. Definition at line 92 of file itkMultiResolutionImageRegistrationMethod.h.

template<typename TFixedImage, typename TMovingImage>
typedef MovingImageType::ConstPointer itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::MovingImageConstPointer
 

Definition at line 88 of file itkMultiResolutionImageRegistrationMethod.h.

template<typename TFixedImage, typename TMovingImage>
typedef MovingImagePyramidType::Pointer itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::MovingImagePyramidPointer
 

Definition at line 116 of file itkMultiResolutionImageRegistrationMethod.h.

template<typename TFixedImage, typename TMovingImage>
typedef MultiResolutionPyramidImageFilter< MovingImageType, MovingImageType > itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::MovingImagePyramidType
 

Type of the moving image multiresolution pyramid. Definition at line 115 of file itkMultiResolutionImageRegistrationMethod.h.

template<typename TFixedImage, typename TMovingImage>
typedef TMovingImage itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::MovingImageType
 

Type of the Moving image. Definition at line 87 of file itkMultiResolutionImageRegistrationMethod.h.

template<typename TFixedImage, typename TMovingImage>
typedef SingleValuedNonLinearOptimizer itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::OptimizerType
 

Type of the optimizer. Definition at line 104 of file itkMultiResolutionImageRegistrationMethod.h.

template<typename TFixedImage, typename TMovingImage>
typedef MetricType::TransformParametersType itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::ParametersType
 

Type of the Transformation parameters This is the same type used to represent the search space of the optimization algorithm Definition at line 120 of file itkMultiResolutionImageRegistrationMethod.h.

template<typename TFixedImage, typename TMovingImage>
typedef SmartPointer<Self> itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::Pointer
 

Reimplemented from itk::ProcessObject.

Definition at line 72 of file itkMultiResolutionImageRegistrationMethod.h.

template<typename TFixedImage, typename TMovingImage>
typedef MultiResolutionImageRegistrationMethod itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::Self
 

Standard class typedefs.

Reimplemented from itk::ProcessObject.

Definition at line 70 of file itkMultiResolutionImageRegistrationMethod.h.

template<typename TFixedImage, typename TMovingImage>
typedef ProcessObject itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::Superclass
 

Reimplemented from itk::ProcessObject.

Definition at line 71 of file itkMultiResolutionImageRegistrationMethod.h.

template<typename TFixedImage, typename TMovingImage>
typedef TransformType::Pointer itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::TransformPointer
 

Definition at line 97 of file itkMultiResolutionImageRegistrationMethod.h.

template<typename TFixedImage, typename TMovingImage>
typedef MetricType::TransformType itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::TransformType
 

Type of the Transform . Definition at line 96 of file itkMultiResolutionImageRegistrationMethod.h.


Constructor & Destructor Documentation

template<typename TFixedImage, typename TMovingImage>
itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::MultiResolutionImageRegistrationMethod  )  [protected]
 

template<typename TFixedImage, typename TMovingImage>
virtual itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::~MultiResolutionImageRegistrationMethod  )  [inline, protected, virtual]
 

Definition at line 200 of file itkMultiResolutionImageRegistrationMethod.h.


Member Function Documentation

template<typename TFixedImage, typename TMovingImage>
virtual const char* itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::GetClassName  )  const [virtual]
 

Run-time type information (and related methods).

Reimplemented from itk::ProcessObject.

template<typename TFixedImage, typename TMovingImage>
virtual unsigned long itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::GetCurrentLevel  )  [virtual]
 

Get the current resolution level being processed.

template<typename TFixedImage, typename TMovingImage>
virtual const FixedImageType* itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::GetFixedImage  )  [virtual]
 

Set/Get the Fixed image.

template<typename TFixedImage, typename TMovingImage>
virtual FixedImagePyramidType* itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::GetFixedImagePyramid  )  [virtual]
 

Set/Get the Fixed image pyramid.

template<typename TFixedImage, typename TMovingImage>
virtual const FixedImageRegionType& itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::GetFixedImageRegion  )  [virtual]
 

Set/Get the Metric.

template<typename TFixedImage, typename TMovingImage>
virtual const ParametersType& itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::GetInitialTransformParameters  )  [virtual]
 

Set/Get the initial transformation parameters.

template<typename TFixedImage, typename TMovingImage>
virtual const ParametersType& itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::GetInitialTransformParametersOfNextLevel  )  [virtual]
 

Set/Get the initial transformation parameters of the next resolution level to be processed. The default is the last set of parameters of the last resolution level.

template<typename TFixedImage, typename TMovingImage>
virtual InterpolatorType* itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::GetInterpolator  )  [virtual]
 

Set/Get the Interpolator.

template<typename TFixedImage, typename TMovingImage>
virtual const ParametersType& itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::GetLastTransformParameters  )  [virtual]
 

Get the last transformation parameters visited by the optimizer.

template<typename TFixedImage, typename TMovingImage>
virtual MetricType* itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::GetMetric  )  [virtual]
 

Set/Get the Metric.

template<typename TFixedImage, typename TMovingImage>
virtual const MovingImageType* itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::GetMovingImage  )  [virtual]
 

Set/Get the Moving image.

template<typename TFixedImage, typename TMovingImage>
virtual MovingImagePyramidType* itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::GetMovingImagePyramid  )  [virtual]
 

Set/Get the Moving image pyramid.

template<typename TFixedImage, typename TMovingImage>
virtual unsigned long itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::GetNumberOfLevels  )  [virtual]
 

Set/Get the number of multi-resolution levels.

template<typename TFixedImage, typename TMovingImage>
virtual OptimizerType* itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::GetOptimizer  )  [virtual]
 

Set/Get the Optimizer.

template<typename TFixedImage, typename TMovingImage>
virtual TransformType* itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::GetTransform  )  [virtual]
 

Set/Get the Transfrom.

template<typename TFixedImage, typename TMovingImage>
void itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::Initialize  )  throw (ExceptionObject) [protected]
 

Initialize by setting the interconnects between the components. This method is executed at every level of the pyramid with the values corresponding to this resolution

template<typename TFixedImage, typename TMovingImage>
Pointer itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::New  )  [static]
 

Method for creation through the object factory.

Reimplemented from itk::Object.

template<typename TFixedImage, typename TMovingImage>
void itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::PreparePyramids void   )  [protected]
 

Compute the size of the fixed region for each level of the pyramid.

template<typename TFixedImage, typename TMovingImage>
void itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::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::ProcessObject.

template<typename TFixedImage, typename TMovingImage>
virtual void itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::SetCurrentLevel unsigned long  _arg  )  [protected, virtual]
 

Set the current level to be processed

template<typename TFixedImage, typename TMovingImage>
virtual void itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::SetFixedImage const FixedImageType _arg  )  [virtual]
 

Set/Get the Fixed image.

template<typename TFixedImage, typename TMovingImage>
virtual void itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::SetFixedImagePyramid FixedImagePyramidType _arg  )  [virtual]
 

Set/Get the Fixed image pyramid.

template<typename TFixedImage, typename TMovingImage>
virtual void itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::SetFixedImageRegion FixedImageRegionType  _arg  )  [virtual]
 

Set/Get the Metric.

template<typename TFixedImage, typename TMovingImage>
virtual void itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::SetInitialTransformParameters ParametersType  _arg  )  [virtual]
 

Set/Get the initial transformation parameters.

template<typename TFixedImage, typename TMovingImage>
virtual void itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::SetInitialTransformParametersOfNextLevel ParametersType  _arg  )  [virtual]
 

Set/Get the initial transformation parameters of the next resolution level to be processed. The default is the last set of parameters of the last resolution level.

template<typename TFixedImage, typename TMovingImage>
virtual void itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::SetInterpolator InterpolatorType _arg  )  [virtual]
 

Set/Get the Interpolator.

template<typename TFixedImage, typename TMovingImage>
virtual void itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::SetMetric MetricType _arg  )  [virtual]
 

Set/Get the Metric.

template<typename TFixedImage, typename TMovingImage>
virtual void itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::SetMovingImage const MovingImageType _arg  )  [virtual]
 

Set/Get the Moving image.

template<typename TFixedImage, typename TMovingImage>
virtual void itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::SetMovingImagePyramid MovingImagePyramidType _arg  )  [virtual]
 

Set/Get the Moving image pyramid.

template<typename TFixedImage, typename TMovingImage>
virtual void itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::SetNumberOfLevels unsigned long  _arg  )  [virtual]
 

Set/Get the number of multi-resolution levels.

template<typename TFixedImage, typename TMovingImage>
virtual void itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::SetOptimizer OptimizerType _arg  )  [virtual]
 

Set/Get the Optimizer.

template<typename TFixedImage, typename TMovingImage>
virtual void itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::SetTransform TransformType _arg  )  [virtual]
 

Set/Get the Transfrom.

template<typename TFixedImage, typename TMovingImage>
void itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::StartRegistration  ) 
 

Method that initiates the registration.

template<typename TFixedImage, typename TMovingImage>
void itk::MultiResolutionImageRegistrationMethod< TFixedImage, TMovingImage >::StopRegistration  ) 
 

Method to stop the registration.


The documentation for this class was generated from the following file:
Generated at Sat Mar 31 02:39:19 2007 for ITK by doxygen 1.3.8 written by Dimitri van Heesch, © 1997-2000