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

itk::CenteredTransformInitializer< TTransform, TFixedImage, TMovingImage > Class Template Reference
[Transforms]

CenteredTransformInitializer is a helper class intended to initialize the center of rotation and the translation of Transforms having the center of rotation among their parameters. More...

#include <itkCenteredTransformInitializer.h>

Inheritance diagram for itk::CenteredTransformInitializer:

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

Collaboration graph
[legend]
List of all members.

Public Types

typedef CenteredTransformInitializer Self
typedef Object Superclass
typedef SmartPointer< SelfPointer
typedef SmartPointer< const
Self
ConstPointer
typedef TTransform TransformType
typedef TransformType::Pointer TransformPointer
typedef TFixedImage FixedImageType
typedef TMovingImage MovingImageType
typedef FixedImageType::ConstPointer FixedImagePointer
typedef MovingImageType::ConstPointer MovingImagePointer
typedef TransformType::OffsetType OffsetType
typedef TransformType::InputPointType InputPointType
typedef TransformType::OutputVectorType OutputVectorType

Public Methods

virtual const char * GetClassName () const
virtual void SetTransform (TransformType *_arg)
virtual void SetFixedImage (const FixedImageType *_arg)
virtual void SetMovingImage (const MovingImageType *_arg)
void InitializeTransform () const
 itkStaticConstMacro (SpaceDimension, unsigned int, TransformType::SpaceDimension)
 itkStaticConstMacro (InputSpaceDimension, unsigned int, TransformType::InputSpaceDimension)
 itkStaticConstMacro (OutputSpaceDimension, unsigned int, TransformType::OutputSpaceDimension)
void GeometryOn ()
void MomentsOn ()

Static Public Methods

Pointer New ()

Protected Methods

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

Detailed Description

template<class TTransform, class TFixedImage, class TMovingImage>
class itk::CenteredTransformInitializer< TTransform, TFixedImage, TMovingImage >

CenteredTransformInitializer is a helper class intended to initialize the center of rotation and the translation of Transforms having the center of rotation among their parameters.

This class is connected to the fixed image, moving image and transform involved in the registration. Two modes of operation are possible:

In the first mode, the geometrical center of the moving image is passed as initial center of rotation to the transform and the vector from the center of the fixed image to the center of the moving image is passed as the initial translation. This mode basically assumes that the anatomical objects to be registered are centered in their respective images. Hence the best initial guess for the registration is the one that superimpose those two centers.

In the second mode, the moments of gray level values are computed for both images. The center of mass of the moving image is then used as center of rotation. The vector relation both centers of mass is passes as the initial translation to the transform. This second approach assumes that the moments of the anatomical object in the image is similar for both images and hence the best initial guess for registration is to superimpose both mass centers. Note that this assumption will probably not hold in multi-modality registration.

Definition at line 59 of file itkCenteredTransformInitializer.h.


Member Typedef Documentation

template<class TTransform, class TFixedImage, class TMovingImage>
typedef SmartPointer<const Self> itk::CenteredTransformInitializer< TTransform, TFixedImage, TMovingImage >::ConstPointer
 

Reimplemented from itk::Object.

Definition at line 67 of file itkCenteredTransformInitializer.h.

template<class TTransform, class TFixedImage, class TMovingImage>
typedef FixedImageType::ConstPointer itk::CenteredTransformInitializer< TTransform, TFixedImage, TMovingImage >::FixedImagePointer
 

Definition at line 90 of file itkCenteredTransformInitializer.h.

template<class TTransform, class TFixedImage, class TMovingImage>
typedef TFixedImage itk::CenteredTransformInitializer< TTransform, TFixedImage, TMovingImage >::FixedImageType
 

Image Types to use in the initialization of the transform

Definition at line 87 of file itkCenteredTransformInitializer.h.

template<class TTransform, class TFixedImage, class TMovingImage>
typedef TransformType::InputPointType itk::CenteredTransformInitializer< TTransform, TFixedImage, TMovingImage >::InputPointType
 

Point type.

Definition at line 99 of file itkCenteredTransformInitializer.h.

template<class TTransform, class TFixedImage, class TMovingImage>
typedef MovingImageType::ConstPointer itk::CenteredTransformInitializer< TTransform, TFixedImage, TMovingImage >::MovingImagePointer
 

Definition at line 91 of file itkCenteredTransformInitializer.h.

template<class TTransform, class TFixedImage, class TMovingImage>
typedef TMovingImage itk::CenteredTransformInitializer< TTransform, TFixedImage, TMovingImage >::MovingImageType
 

Definition at line 88 of file itkCenteredTransformInitializer.h.

template<class TTransform, class TFixedImage, class TMovingImage>
typedef TransformType::OffsetType itk::CenteredTransformInitializer< TTransform, TFixedImage, TMovingImage >::OffsetType
 

Offset type.

Definition at line 96 of file itkCenteredTransformInitializer.h.

template<class TTransform, class TFixedImage, class TMovingImage>
typedef TransformType::OutputVectorType itk::CenteredTransformInitializer< TTransform, TFixedImage, TMovingImage >::OutputVectorType
 

Vector type.

Definition at line 102 of file itkCenteredTransformInitializer.h.

template<class TTransform, class TFixedImage, class TMovingImage>
typedef SmartPointer<Self> itk::CenteredTransformInitializer< TTransform, TFixedImage, TMovingImage >::Pointer
 

Reimplemented from itk::Object.

Definition at line 66 of file itkCenteredTransformInitializer.h.

template<class TTransform, class TFixedImage, class TMovingImage>
typedef CenteredTransformInitializer itk::CenteredTransformInitializer< TTransform, TFixedImage, TMovingImage >::Self
 

Standard class typedefs.

Reimplemented from itk::Object.

Definition at line 64 of file itkCenteredTransformInitializer.h.

template<class TTransform, class TFixedImage, class TMovingImage>
typedef Object itk::CenteredTransformInitializer< TTransform, TFixedImage, TMovingImage >::Superclass
 

Reimplemented from itk::Object.

Definition at line 65 of file itkCenteredTransformInitializer.h.

template<class TTransform, class TFixedImage, class TMovingImage>
typedef TransformType::Pointer itk::CenteredTransformInitializer< TTransform, TFixedImage, TMovingImage >::TransformPointer
 

Definition at line 77 of file itkCenteredTransformInitializer.h.

template<class TTransform, class TFixedImage, class TMovingImage>
typedef TTransform itk::CenteredTransformInitializer< TTransform, TFixedImage, TMovingImage >::TransformType
 

Type of the transform to initialize

Definition at line 76 of file itkCenteredTransformInitializer.h.


Constructor & Destructor Documentation

template<class TTransform, class TFixedImage, class TMovingImage>
itk::CenteredTransformInitializer< TTransform, TFixedImage, TMovingImage >::CenteredTransformInitializer   [inline, protected]
 

Definition at line 125 of file itkCenteredTransformInitializer.h.

template<class TTransform, class TFixedImage, class TMovingImage>
itk::CenteredTransformInitializer< TTransform, TFixedImage, TMovingImage >::~CenteredTransformInitializer   [inline, protected]
 

Definition at line 126 of file itkCenteredTransformInitializer.h.

References HardConnectedComponentImageFilter::PrintSelf().


Member Function Documentation

template<class TTransform, class TFixedImage, class TMovingImage>
void itk::CenteredTransformInitializer< TTransform, TFixedImage, TMovingImage >::GeometryOn   [inline]
 

Select between using the geometrical center of the images or using the center of mass given by the image intensities.

Definition at line 119 of file itkCenteredTransformInitializer.h.

template<class TTransform, class TFixedImage, class TMovingImage>
virtual const char* itk::CenteredTransformInitializer< TTransform, TFixedImage, TMovingImage >::GetClassName   const [virtual]
 

Run-time type information (and related methods).

Reimplemented from itk::Object.

template<class TTransform, class TFixedImage, class TMovingImage>
void itk::CenteredTransformInitializer< TTransform, TFixedImage, TMovingImage >::InitializeTransform   const
 

Initialize the transform using data from the images

template<class TTransform, class TFixedImage, class TMovingImage>
itk::CenteredTransformInitializer< TTransform, TFixedImage, TMovingImage >::itkStaticConstMacro OutputSpaceDimension   ,
unsigned    int,
TransformType::OutputSpaceDimension   
 

Dimension of parameters.

template<class TTransform, class TFixedImage, class TMovingImage>
itk::CenteredTransformInitializer< TTransform, TFixedImage, TMovingImage >::itkStaticConstMacro InputSpaceDimension   ,
unsigned    int,
TransformType::InputSpaceDimension   
 

Dimension of parameters.

template<class TTransform, class TFixedImage, class TMovingImage>
itk::CenteredTransformInitializer< TTransform, TFixedImage, TMovingImage >::itkStaticConstMacro SpaceDimension   ,
unsigned    int,
TransformType::SpaceDimension   
 

Dimension of parameters.

template<class TTransform, class TFixedImage, class TMovingImage>
void itk::CenteredTransformInitializer< TTransform, TFixedImage, TMovingImage >::MomentsOn   [inline]
 

Select between using the geometrical center of the images or using the center of mass given by the image intensities.

Definition at line 120 of file itkCenteredTransformInitializer.h.

template<class TTransform, class TFixedImage, class TMovingImage>
Pointer itk::CenteredTransformInitializer< TTransform, TFixedImage, TMovingImage >::New   [static]
 

New macro for creation of through a Smart Pointer.

Reimplemented from itk::Object.

template<class TTransform, class TFixedImage, class TMovingImage>
void itk::CenteredTransformInitializer< TTransform, 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::Object.

template<class TTransform, class TFixedImage, class TMovingImage>
virtual void itk::CenteredTransformInitializer< TTransform, TFixedImage, TMovingImage >::SetFixedImage const FixedImageType   _arg [virtual]
 

Set the fixed image used in the registration process

template<class TTransform, class TFixedImage, class TMovingImage>
virtual void itk::CenteredTransformInitializer< TTransform, TFixedImage, TMovingImage >::SetMovingImage const MovingImageType   _arg [virtual]
 

Set the moving image used in the registration process

template<class TTransform, class TFixedImage, class TMovingImage>
virtual void itk::CenteredTransformInitializer< TTransform, TFixedImage, TMovingImage >::SetTransform TransformType   _arg [virtual]
 

Set the transform to be initialized


The documentation for this class was generated from the following file:
Generated at Fri May 21 01:22:38 2004 for ITK by doxygen 1.2.15 written by Dimitri van Heesch, © 1997-2000