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

itk::ImageToSpatialObjectRegistrationMethod< TFixedImage, TMovingSpatialObject > Class Template Reference
[Registration Filters]

Base class for Image Registration Methods. More...

#include <itkImageToSpatialObjectRegistrationMethod.h>

Inheritance diagram for itk::ImageToSpatialObjectRegistrationMethod< TFixedImage, TMovingSpatialObject >:

Inheritance graph
[legend]
Collaboration diagram for itk::ImageToSpatialObjectRegistrationMethod< TFixedImage, TMovingSpatialObject >:

Collaboration graph
[legend]
List of all members.

Public Types

typedef ImageToSpatialObjectRegistrationMethod Self
typedef ProcessObject Superclass
typedef SmartPointer< SelfPointer
typedef SmartPointer< const
Self
ConstPointer
typedef TFixedImage FixedImageType
typedef FixedImageType::ConstPointer FixedImageConstPointer
typedef TMovingSpatialObject MovingSpatialObjectType
typedef MovingSpatialObjectType::ConstPointer MovingSpatialObjectConstPointer
typedef ImageToSpatialObjectMetric<
FixedImageType, MovingSpatialObjectType
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 MetricType::TransformParametersType ParametersType

Public Member Functions

virtual const char * GetClassName () const
void StartRegistration (void)
virtual const ParametersTypeGetLastTransformParameters ()
virtual void SetFixedImage (const FixedImageType *_arg)
virtual const FixedImageTypeGetFixedImage ()
virtual void SetMovingSpatialObject (const MovingSpatialObjectType *_arg)
virtual const MovingSpatialObjectTypeGetMovingSpatialObject ()
virtual void SetOptimizer (OptimizerType *_arg)
virtual OptimizerTypeGetOptimizer ()
virtual void SetMetric (MetricType *_arg)
virtual MetricTypeGetMetric ()
virtual void SetTransform (TransformType *_arg)
virtual TransformTypeGetTransform ()
virtual void SetInterpolator (InterpolatorType *_arg)
virtual InterpolatorTypeGetInterpolator ()
virtual void SetInitialTransformParameters (ParametersType _arg)
virtual const ParametersTypeGetInitialTransformParameters ()

Static Public Member Functions

Pointer New ()

Protected Member Functions

 ImageToSpatialObjectRegistrationMethod ()
virtual ~ImageToSpatialObjectRegistrationMethod ()
void PrintSelf (std::ostream &os, Indent indent) const
void Initialize () throw (ExceptionObject)

Protected Attributes

ParametersType m_InitialTransformParameters
ParametersType m_LastTransformParameters

Detailed Description

template<typename TFixedImage, typename TMovingSpatialObject>
class itk::ImageToSpatialObjectRegistrationMethod< TFixedImage, TMovingSpatialObject >

Base class for Image Registration Methods.

This class is templated over the type of the image and the type of the SpatialObject to be registered. A generic Transform is used by this class. That allows to select at run time the particular type of transformation that is to be applied for registering the images.

This method use a generic Metric in order to compare the two images. the final goal of the registration method is to find the set of parameters of the Transformation that optimizes the metric.

The registration method also support a generic optimizer that can be selected at run-time. The only restriction for the optimizer is that it should be able to operate in single-valued cost functions given that the metrics used to compare images provide a single value as output.

The terms : Fixed image and Moving SpatialObject are used in this class to indicate that the SpatialObject is being mapped by the transform.

This class uses the coordinate system of the Fixed image and searchs for a transform that will map the Moving SpatialObject on top of the Fixed image. For doing so, a Metric will be continously applied to compare the Fixed image with the Transformed Moving SpatialObject.

Definition at line 59 of file itkImageToSpatialObjectRegistrationMethod.h.


Member Typedef Documentation

template<typename TFixedImage, typename TMovingSpatialObject>
typedef SmartPointer<const Self> itk::ImageToSpatialObjectRegistrationMethod< TFixedImage, TMovingSpatialObject >::ConstPointer
 

Reimplemented from itk::ProcessObject.

Definition at line 66 of file itkImageToSpatialObjectRegistrationMethod.h.

template<typename TFixedImage, typename TMovingSpatialObject>
typedef FixedImageType::ConstPointer itk::ImageToSpatialObjectRegistrationMethod< TFixedImage, TMovingSpatialObject >::FixedImageConstPointer
 

Definition at line 76 of file itkImageToSpatialObjectRegistrationMethod.h.

template<typename TFixedImage, typename TMovingSpatialObject>
typedef TFixedImage itk::ImageToSpatialObjectRegistrationMethod< TFixedImage, TMovingSpatialObject >::FixedImageType
 

Type of the Fixed image. Definition at line 75 of file itkImageToSpatialObjectRegistrationMethod.h.

template<typename TFixedImage, typename TMovingSpatialObject>
typedef InterpolatorType::Pointer itk::ImageToSpatialObjectRegistrationMethod< TFixedImage, TMovingSpatialObject >::InterpolatorPointer
 

Definition at line 94 of file itkImageToSpatialObjectRegistrationMethod.h.

template<typename TFixedImage, typename TMovingSpatialObject>
typedef MetricType::InterpolatorType itk::ImageToSpatialObjectRegistrationMethod< TFixedImage, TMovingSpatialObject >::InterpolatorType
 

Type of the Interpolator. Definition at line 93 of file itkImageToSpatialObjectRegistrationMethod.h.

template<typename TFixedImage, typename TMovingSpatialObject>
typedef MetricType::Pointer itk::ImageToSpatialObjectRegistrationMethod< TFixedImage, TMovingSpatialObject >::MetricPointer
 

Definition at line 86 of file itkImageToSpatialObjectRegistrationMethod.h.

template<typename TFixedImage, typename TMovingSpatialObject>
typedef ImageToSpatialObjectMetric< FixedImageType, MovingSpatialObjectType > itk::ImageToSpatialObjectRegistrationMethod< TFixedImage, TMovingSpatialObject >::MetricType
 

Type of the metric. Definition at line 85 of file itkImageToSpatialObjectRegistrationMethod.h.

template<typename TFixedImage, typename TMovingSpatialObject>
typedef MovingSpatialObjectType::ConstPointer itk::ImageToSpatialObjectRegistrationMethod< TFixedImage, TMovingSpatialObject >::MovingSpatialObjectConstPointer
 

Definition at line 81 of file itkImageToSpatialObjectRegistrationMethod.h.

template<typename TFixedImage, typename TMovingSpatialObject>
typedef TMovingSpatialObject itk::ImageToSpatialObjectRegistrationMethod< TFixedImage, TMovingSpatialObject >::MovingSpatialObjectType
 

Type of the Moving image. Definition at line 79 of file itkImageToSpatialObjectRegistrationMethod.h.

template<typename TFixedImage, typename TMovingSpatialObject>
typedef SingleValuedNonLinearOptimizer itk::ImageToSpatialObjectRegistrationMethod< TFixedImage, TMovingSpatialObject >::OptimizerType
 

Type of the optimizer. Definition at line 97 of file itkImageToSpatialObjectRegistrationMethod.h.

template<typename TFixedImage, typename TMovingSpatialObject>
typedef MetricType::TransformParametersType itk::ImageToSpatialObjectRegistrationMethod< TFixedImage, TMovingSpatialObject >::ParametersType
 

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

Referenced by itk::ImageToSpatialObjectRegistrationMethod< TFixedImage, TMovingSpatialObject >::~ImageToSpatialObjectRegistrationMethod().

template<typename TFixedImage, typename TMovingSpatialObject>
typedef SmartPointer<Self> itk::ImageToSpatialObjectRegistrationMethod< TFixedImage, TMovingSpatialObject >::Pointer
 

Reimplemented from itk::ProcessObject.

Definition at line 65 of file itkImageToSpatialObjectRegistrationMethod.h.

template<typename TFixedImage, typename TMovingSpatialObject>
typedef ImageToSpatialObjectRegistrationMethod itk::ImageToSpatialObjectRegistrationMethod< TFixedImage, TMovingSpatialObject >::Self
 

Standard class typedefs.

Reimplemented from itk::ProcessObject.

Definition at line 63 of file itkImageToSpatialObjectRegistrationMethod.h.

Referenced by itk::ImageToSpatialObjectRegistrationMethod< TFixedImage, TMovingSpatialObject >::~ImageToSpatialObjectRegistrationMethod().

template<typename TFixedImage, typename TMovingSpatialObject>
typedef ProcessObject itk::ImageToSpatialObjectRegistrationMethod< TFixedImage, TMovingSpatialObject >::Superclass
 

Reimplemented from itk::ProcessObject.

Definition at line 64 of file itkImageToSpatialObjectRegistrationMethod.h.

template<typename TFixedImage, typename TMovingSpatialObject>
typedef TransformType::Pointer itk::ImageToSpatialObjectRegistrationMethod< TFixedImage, TMovingSpatialObject >::TransformPointer
 

Definition at line 90 of file itkImageToSpatialObjectRegistrationMethod.h.

template<typename TFixedImage, typename TMovingSpatialObject>
typedef MetricType::TransformType itk::ImageToSpatialObjectRegistrationMethod< TFixedImage, TMovingSpatialObject >::TransformType
 

Type of the Transform . Definition at line 89 of file itkImageToSpatialObjectRegistrationMethod.h.


Constructor & Destructor Documentation

template<typename TFixedImage, typename TMovingSpatialObject>
itk::ImageToSpatialObjectRegistrationMethod< TFixedImage, TMovingSpatialObject >::ImageToSpatialObjectRegistrationMethod  )  [protected]
 

template<typename TFixedImage, typename TMovingSpatialObject>
virtual itk::ImageToSpatialObjectRegistrationMethod< TFixedImage, TMovingSpatialObject >::~ImageToSpatialObjectRegistrationMethod  )  [inline, protected, virtual]
 

Definition at line 147 of file itkImageToSpatialObjectRegistrationMethod.h.

References itk::ImageToSpatialObjectRegistrationMethod< TFixedImage, TMovingSpatialObject >::ParametersType, and itk::ImageToSpatialObjectRegistrationMethod< TFixedImage, TMovingSpatialObject >::Self.


Member Function Documentation

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

Run-time type information (and related methods).

Reimplemented from itk::ProcessObject.

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

Set/Get the Fixed image.

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

Set/Get the initial transformation parameters.

template<typename TFixedImage, typename TMovingSpatialObject>
virtual InterpolatorType* itk::ImageToSpatialObjectRegistrationMethod< TFixedImage, TMovingSpatialObject >::GetInterpolator  )  [virtual]
 

Set/Get the Interpolator.

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

Get the last transformation parameters visited by the optimizer.

template<typename TFixedImage, typename TMovingSpatialObject>
virtual MetricType* itk::ImageToSpatialObjectRegistrationMethod< TFixedImage, TMovingSpatialObject >::GetMetric  )  [virtual]
 

Set/Get the Metric.

template<typename TFixedImage, typename TMovingSpatialObject>
virtual const MovingSpatialObjectType* itk::ImageToSpatialObjectRegistrationMethod< TFixedImage, TMovingSpatialObject >::GetMovingSpatialObject  )  [virtual]
 

Set/Get the Moving Spatial Object.

template<typename TFixedImage, typename TMovingSpatialObject>
virtual OptimizerType* itk::ImageToSpatialObjectRegistrationMethod< TFixedImage, TMovingSpatialObject >::GetOptimizer  )  [virtual]
 

Set/Get the Optimizer.

template<typename TFixedImage, typename TMovingSpatialObject>
virtual TransformType* itk::ImageToSpatialObjectRegistrationMethod< TFixedImage, TMovingSpatialObject >::GetTransform  )  [virtual]
 

Set/Get the Transfrom.

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

Initialize by setting the interconnects between the components.

template<typename TFixedImage, typename TMovingSpatialObject>
Pointer itk::ImageToSpatialObjectRegistrationMethod< TFixedImage, TMovingSpatialObject >::New  )  [static]
 

Method for creation through the object factory.

Reimplemented from itk::Object.

template<typename TFixedImage, typename TMovingSpatialObject>
void itk::ImageToSpatialObjectRegistrationMethod< TFixedImage, TMovingSpatialObject >::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 TMovingSpatialObject>
virtual void itk::ImageToSpatialObjectRegistrationMethod< TFixedImage, TMovingSpatialObject >::SetFixedImage const FixedImageType _arg  )  [virtual]
 

Set/Get the Fixed image.

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

Set/Get the initial transformation parameters.

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

Set/Get the Interpolator.

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

Set/Get the Metric.

template<typename TFixedImage, typename TMovingSpatialObject>
virtual void itk::ImageToSpatialObjectRegistrationMethod< TFixedImage, TMovingSpatialObject >::SetMovingSpatialObject const MovingSpatialObjectType _arg  )  [virtual]
 

Set/Get the Moving Spatial Object.

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

Set/Get the Optimizer.

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

Set/Get the Transfrom.

template<typename TFixedImage, typename TMovingSpatialObject>
void itk::ImageToSpatialObjectRegistrationMethod< TFixedImage, TMovingSpatialObject >::StartRegistration void   ) 
 

Method that initiates the registration.


Member Data Documentation

template<typename TFixedImage, typename TMovingSpatialObject>
ParametersType itk::ImageToSpatialObjectRegistrationMethod< TFixedImage, TMovingSpatialObject >::m_InitialTransformParameters [protected]
 

Definition at line 153 of file itkImageToSpatialObjectRegistrationMethod.h.

template<typename TFixedImage, typename TMovingSpatialObject>
ParametersType itk::ImageToSpatialObjectRegistrationMethod< TFixedImage, TMovingSpatialObject >::m_LastTransformParameters [protected]
 

Definition at line 154 of file itkImageToSpatialObjectRegistrationMethod.h.


The documentation for this class was generated from the following file:
Generated at Sun Apr 1 02:50:31 2007 for ITK by doxygen 1.3.8 written by Dimitri van Heesch, © 1997-2000