Main Page
Groups
Namespace List
Class Hierarchy
Alphabetical List
Compound List
File
List
Namespace Members
Compound Members
File Members
Concepts
itk::MultiResolutionPDEDeformableRegistration< TFixedImage, TMovingImage, TDeformationField > Class Template Reference
[Deformable Registration Methods]
Framework for perfoming multi-resolution PDE deformable registration.
More...
#include <itkMultiResolutionPDEDeformableRegistration.h>
Inheritance diagram for itk::MultiResolutionPDEDeformableRegistration:
[legend]Collaboration diagram for itk::MultiResolutionPDEDeformableRegistration< TFixedImage, TMovingImage, TDeformationField >:
[legend]List of all members.
Public Types |
typedef MultiResolutionPDEDeformableRegistration | Self |
typedef ImageToImageFilter<
TDeformationField, TDeformationField > | Superclass |
typedef SmartPointer< Self > | Pointer |
typedef SmartPointer< const
Self > | ConstPointer |
typedef TFixedImage | FixedImageType |
typedef FixedImageType::Pointer | FixedImagePointer |
typedef FixedImageType::ConstPointer | FixedImageConstPointer |
typedef TMovingImage | MovingImageType |
typedef MovingImageType::Pointer | MovingImagePointer |
typedef MovingImageType::ConstPointer | MovingImageConstPointer |
typedef TDeformationField | DeformationFieldType |
typedef DeformationFieldType::Pointer | DeformationFieldPointer |
typedef Image< float, itkGetStaticConstMacro(ImageDimension) | FloatImageType ) |
typedef PDEDeformableRegistrationFilter<
FloatImageType, FloatImageType,
DeformationFieldType > | RegistrationType |
typedef RegistrationType::Pointer | RegistrationPointer |
typedef DemonsRegistrationFilter<
FloatImageType, FloatImageType,
DeformationFieldType > | DefaultRegistrationType |
typedef MultiResolutionPyramidImageFilter<
FixedImageType, FloatImageType > | FixedImagePyramidType |
typedef FixedImagePyramidType::Pointer | FixedImagePyramidPointer |
typedef MultiResolutionPyramidImageFilter<
MovingImageType, FloatImageType > | MovingImagePyramidType |
typedef MovingImagePyramidType::Pointer | MovingImagePyramidPointer |
typedef VectorExpandImageFilter<
DeformationFieldType, DeformationFieldType > | FieldExpanderType |
typedef FieldExpanderType::Pointer | FieldExpanderPointer |
Public Methods |
virtual const char * | GetClassName () const |
| itkStaticConstMacro (ImageDimension, unsigned int, FixedImageType::ImageDimension) |
virtual void | SetFixedImage (const FixedImageType *ptr) |
const FixedImageType * | GetFixedImage (void) |
virtual void | SetMovingImage (const MovingImageType *ptr) |
const MovingImageType * | GetMovingImage (void) |
const DeformationFieldType * | GetDeformationField (void) |
virtual void | SetRegistrationFilter (RegistrationType *_arg) |
virtual RegistrationType * | GetRegistrationFilter () |
virtual void | SetFixedImagePyramid (FixedImagePyramidType *_arg) |
virtual FixedImagePyramidType * | GetFixedImagePyramid () |
virtual void | SetMovingImagePyramid (MovingImagePyramidType *_arg) |
virtual MovingImagePyramidType * | GetMovingImagePyramid () |
virtual void | SetNumberOfLevels (unsigned int num) |
virtual unsigned int | GetNumberOfLevels () |
virtual unsigned int | GetCurrentLevel () |
virtual void | SetNumberOfIterations (unsigned int data[]) |
virtual const unsigned int * | GetNumberOfIterations () const |
|
virtual void | SetInitialDeformationField (DeformationFieldType *) |
Static Public Methods |
Pointer | New () |
Protected Methods |
| MultiResolutionPDEDeformableRegistration () |
| ~MultiResolutionPDEDeformableRegistration () |
void | PrintSelf (std::ostream &os, Indent indent) const |
virtual void | GenerateData () |
virtual void | GenerateInputRequestedRegion () |
virtual void | GenerateOutputInformation () |
virtual void | EnlargeOutputRequestedRegion (DataObject *ptr) |
Detailed Description
template<class TFixedImage, class TMovingImage, class TDeformationField>
class itk::MultiResolutionPDEDeformableRegistration< TFixedImage, TMovingImage, TDeformationField >
Framework for perfoming multi-resolution PDE deformable registration.
MultiResolutionPDEDeformableRegistration provides a generic framework to peform multi-resolution deformable registration.
At each resolution level a PDEDeformableRegistrationFilter is used to register two images by computing the deformation field which will map a moving image onto a fixed image.
A deformation field is represented as a image whose pixel type is some vector type with at least N elements, where N is the dimension of the fixed image. The vector type must support element access via operator []. It is assumed that the vector elements behave like floating point scalars.
The internal PDEDeformationRegistrationFilter can be set using SetRegistrationFilter. By default a DemonsRegistrationFilter is used.
The input fixed and moving images are set via methods SetFixedImage and SetMovingImage respectively. An initial deformation field maybe set via SetInitialDeformationField or SetInput. If no initial field is set a zero field is used as the initial condition.
MultiResolutionPyramidImageFilters are used to downsample the fixed and moving images. A VectorExpandImageFilter is used to upsample the deformation as we move from a coarse to fine solution.
This class is templated over the fixed image type, moving image type, the Deformation Field type.
-
Warning:
-
This class assumes that the fixed, moving and deformation field image types all have the same number of dimensions.
-
See also:
-
PDEDeformableRegistrationFilter , DemonsRegistrationFilter , MultiResolutionPyramidImageFilter , VectorExpandImageFilter
The current implementation of this class does not support streaming.
Definition at line 76 of file itkMultiResolutionPDEDeformableRegistration.h.
Member Typedef Documentation
template<class TFixedImage, class TMovingImage, class TDeformationField> |
typedef SmartPointer<const Self> itk::MultiResolutionPDEDeformableRegistration< TFixedImage, TMovingImage, TDeformationField >::ConstPointer
|
|
template<class TFixedImage, class TMovingImage, class TDeformationField> |
typedef DeformationFieldType::Pointer itk::MultiResolutionPDEDeformableRegistration< TFixedImage, TMovingImage, TDeformationField >::DeformationFieldPointer
|
|
template<class TFixedImage, class TMovingImage, class TDeformationField> |
typedef TDeformationField itk::MultiResolutionPDEDeformableRegistration< TFixedImage, TMovingImage, TDeformationField >::DeformationFieldType
|
|
template<class TFixedImage, class TMovingImage, class TDeformationField> |
typedef FieldExpanderType::Pointer itk::MultiResolutionPDEDeformableRegistration< TFixedImage, TMovingImage, TDeformationField >::FieldExpanderPointer
|
|
template<class TFixedImage, class TMovingImage, class TDeformationField> |
typedef FixedImageType::ConstPointer itk::MultiResolutionPDEDeformableRegistration< TFixedImage, TMovingImage, TDeformationField >::FixedImageConstPointer
|
|
template<class TFixedImage, class TMovingImage, class TDeformationField> |
typedef FixedImageType::Pointer itk::MultiResolutionPDEDeformableRegistration< TFixedImage, TMovingImage, TDeformationField >::FixedImagePointer
|
|
template<class TFixedImage, class TMovingImage, class TDeformationField> |
typedef FixedImagePyramidType::Pointer itk::MultiResolutionPDEDeformableRegistration< TFixedImage, TMovingImage, TDeformationField >::FixedImagePyramidPointer
|
|
template<class TFixedImage, class TMovingImage, class TDeformationField> |
typedef TFixedImage itk::MultiResolutionPDEDeformableRegistration< TFixedImage, TMovingImage, TDeformationField >::FixedImageType
|
|
template<class TFixedImage, class TMovingImage, class TDeformationField> |
typedef Image<float,itkGetStaticConstMacro(ImageDimension) itk::MultiResolutionPDEDeformableRegistration< TFixedImage, TMovingImage, TDeformationField >::FloatImageType)
|
|
template<class TFixedImage, class TMovingImage, class TDeformationField> |
typedef MovingImageType::ConstPointer itk::MultiResolutionPDEDeformableRegistration< TFixedImage, TMovingImage, TDeformationField >::MovingImageConstPointer
|
|
template<class TFixedImage, class TMovingImage, class TDeformationField> |
typedef MovingImageType::Pointer itk::MultiResolutionPDEDeformableRegistration< TFixedImage, TMovingImage, TDeformationField >::MovingImagePointer
|
|
template<class TFixedImage, class TMovingImage, class TDeformationField> |
typedef MovingImagePyramidType::Pointer itk::MultiResolutionPDEDeformableRegistration< TFixedImage, TMovingImage, TDeformationField >::MovingImagePyramidPointer
|
|
template<class TFixedImage, class TMovingImage, class TDeformationField> |
typedef TMovingImage itk::MultiResolutionPDEDeformableRegistration< TFixedImage, TMovingImage, TDeformationField >::MovingImageType
|
|
template<class TFixedImage, class TMovingImage, class TDeformationField> |
typedef SmartPointer<Self> itk::MultiResolutionPDEDeformableRegistration< TFixedImage, TMovingImage, TDeformationField >::Pointer
|
|
template<class TFixedImage, class TMovingImage, class TDeformationField> |
typedef RegistrationType::Pointer itk::MultiResolutionPDEDeformableRegistration< TFixedImage, TMovingImage, TDeformationField >::RegistrationPointer
|
|
template<class TFixedImage, class TMovingImage, class TDeformationField> |
typedef MultiResolutionPDEDeformableRegistration itk::MultiResolutionPDEDeformableRegistration< TFixedImage, TMovingImage, TDeformationField >::Self
|
|
template<class TFixedImage, class TMovingImage, class TDeformationField> |
typedef ImageToImageFilter<TDeformationField, TDeformationField> itk::MultiResolutionPDEDeformableRegistration< TFixedImage, TMovingImage, TDeformationField >::Superclass
|
|
Constructor & Destructor Documentation
template<class TFixedImage, class TMovingImage, class TDeformationField> |
itk::MultiResolutionPDEDeformableRegistration< TFixedImage, TMovingImage, TDeformationField >::MultiResolutionPDEDeformableRegistration |
( |
|
) |
[protected] |
|
template<class TFixedImage, class TMovingImage, class TDeformationField> |
itk::MultiResolutionPDEDeformableRegistration< TFixedImage, TMovingImage, TDeformationField >::~MultiResolutionPDEDeformableRegistration |
( |
|
) |
[inline, protected] |
|
|
Definition at line 200 of file itkMultiResolutionPDEDeformableRegistration.h.
References itk::MultiResolutionPDEDeformableRegistration< TFixedImage, TMovingImage, TDeformationField >::FieldExpanderPointer, itk::MultiResolutionPDEDeformableRegistration< TFixedImage, TMovingImage, TDeformationField >::FixedImagePyramidPointer, itk::MultiResolutionPDEDeformableRegistration< TFixedImage, TMovingImage, TDeformationField >::MovingImagePyramidPointer, and itk::MultiResolutionPDEDeformableRegistration< TFixedImage, TMovingImage, TDeformationField >::RegistrationPointer. |
Member Function Documentation
template<class TFixedImage, class TMovingImage, class TDeformationField> |
virtual void itk::MultiResolutionPDEDeformableRegistration< TFixedImage, TMovingImage, TDeformationField >::EnlargeOutputRequestedRegion |
( |
DataObject * |
ptr |
) |
[protected, virtual] |
|
|
The current implementation of this class does not supprot streaming. As such it produces the output for the largest possible region.
Reimplemented from itk::ProcessObject. |
template<class TFixedImage, class TMovingImage, class TDeformationField> |
virtual void itk::MultiResolutionPDEDeformableRegistration< TFixedImage, TMovingImage, TDeformationField >::GenerateData |
( |
|
) |
[protected, virtual] |
|
template<class TFixedImage, class TMovingImage, class TDeformationField> |
virtual void itk::MultiResolutionPDEDeformableRegistration< TFixedImage, TMovingImage, TDeformationField >::GenerateInputRequestedRegion |
( |
|
) |
[protected, virtual] |
|
template<class TFixedImage, class TMovingImage, class TDeformationField> |
virtual void itk::MultiResolutionPDEDeformableRegistration< TFixedImage, TMovingImage, TDeformationField >::GenerateOutputInformation |
( |
|
) |
[protected, virtual] |
|
|
By default, the output deformation field has the same spacing, origin and LargestPossibleRegion as the input/initial deformation field.
If the initial deformation field is not set, the output information is copied from the fixed image.
Reimplemented from itk::ProcessObject. |
template<class TFixedImage, class TMovingImage, class TDeformationField> |
virtual const char* itk::MultiResolutionPDEDeformableRegistration< TFixedImage, TMovingImage, TDeformationField >::GetClassName |
( |
|
) |
const [virtual] |
|
template<class TFixedImage, class TMovingImage, class TDeformationField> |
virtual unsigned int itk::MultiResolutionPDEDeformableRegistration< TFixedImage, TMovingImage, TDeformationField >::GetCurrentLevel |
( |
|
) |
[virtual] |
|
|
Get the current resolution level being processed. |
template<class TFixedImage, class TMovingImage, class TDeformationField> |
const DeformationFieldType* itk::MultiResolutionPDEDeformableRegistration< TFixedImage, TMovingImage, TDeformationField >::GetDeformationField |
( |
void |
|
) |
[inline] |
|
template<class TFixedImage, class TMovingImage, class TDeformationField> |
const FixedImageType* itk::MultiResolutionPDEDeformableRegistration< TFixedImage, TMovingImage, TDeformationField >::GetFixedImage |
( |
void |
|
) |
|
|
template<class TFixedImage, class TMovingImage, class TDeformationField> |
virtual FixedImagePyramidType* itk::MultiResolutionPDEDeformableRegistration< TFixedImage, TMovingImage, TDeformationField >::GetFixedImagePyramid |
( |
|
) |
[virtual] |
|
|
Get the fixed image pyramid. |
template<class TFixedImage, class TMovingImage, class TDeformationField> |
const MovingImageType* itk::MultiResolutionPDEDeformableRegistration< TFixedImage, TMovingImage, TDeformationField >::GetMovingImage |
( |
void |
|
) |
|
|
template<class TFixedImage, class TMovingImage, class TDeformationField> |
virtual MovingImagePyramidType* itk::MultiResolutionPDEDeformableRegistration< TFixedImage, TMovingImage, TDeformationField >::GetMovingImagePyramid |
( |
|
) |
[virtual] |
|
|
Get the moving image pyramid. |
template<class TFixedImage, class TMovingImage, class TDeformationField> |
virtual const unsigned int* itk::MultiResolutionPDEDeformableRegistration< TFixedImage, TMovingImage, TDeformationField >::GetNumberOfIterations |
( |
|
) |
const [inline, virtual] |
|
template<class TFixedImage, class TMovingImage, class TDeformationField> |
virtual unsigned int itk::MultiResolutionPDEDeformableRegistration< TFixedImage, TMovingImage, TDeformationField >::GetNumberOfLevels |
( |
|
) |
[virtual] |
|
|
Get number of multi-resolution levels. |
template<class TFixedImage, class TMovingImage, class TDeformationField> |
virtual RegistrationType* itk::MultiResolutionPDEDeformableRegistration< TFixedImage, TMovingImage, TDeformationField >::GetRegistrationFilter |
( |
|
) |
[virtual] |
|
|
Get the internal registrator. |
template<class TFixedImage, class TMovingImage, class TDeformationField> |
itk::MultiResolutionPDEDeformableRegistration< TFixedImage, TMovingImage, TDeformationField >::itkStaticConstMacro |
( |
ImageDimension |
, |
|
|
unsigned |
int, |
|
|
FixedImageType::ImageDimension |
|
|
) |
|
|
template<class TFixedImage, class TMovingImage, class TDeformationField> |
Pointer itk::MultiResolutionPDEDeformableRegistration< TFixedImage, TMovingImage, TDeformationField >::New |
( |
|
) |
[static] |
|
|
Method for creation through the object factory.
Reimplemented from itk::Object. |
template<class TFixedImage, class TMovingImage, class TDeformationField> |
void itk::MultiResolutionPDEDeformableRegistration< TFixedImage, TMovingImage, TDeformationField >::PrintSelf |
( |
std::ostream & |
os, |
|
|
Indent |
indent |
|
) |
const [protected, virtual] |
|
template<class TFixedImage, class TMovingImage, class TDeformationField> |
virtual void itk::MultiResolutionPDEDeformableRegistration< TFixedImage, TMovingImage, TDeformationField >::SetFixedImage |
( |
const FixedImageType * |
ptr |
) |
[virtual] |
|
template<class TFixedImage, class TMovingImage, class TDeformationField> |
virtual void itk::MultiResolutionPDEDeformableRegistration< TFixedImage, TMovingImage, TDeformationField >::SetFixedImagePyramid |
( |
FixedImagePyramidType * |
_arg |
) |
[virtual] |
|
|
Set the fixed image pyramid. |
template<class TFixedImage, class TMovingImage, class TDeformationField> |
virtual void itk::MultiResolutionPDEDeformableRegistration< TFixedImage, TMovingImage, TDeformationField >::SetInitialDeformationField |
( |
DeformationFieldType * |
|
) |
[inline, virtual] |
|
template<class TFixedImage, class TMovingImage, class TDeformationField> |
virtual void itk::MultiResolutionPDEDeformableRegistration< TFixedImage, TMovingImage, TDeformationField >::SetMovingImage |
( |
const MovingImageType * |
ptr |
) |
[virtual] |
|
template<class TFixedImage, class TMovingImage, class TDeformationField> |
virtual void itk::MultiResolutionPDEDeformableRegistration< TFixedImage, TMovingImage, TDeformationField >::SetMovingImagePyramid |
( |
MovingImagePyramidType * |
_arg |
) |
[virtual] |
|
|
Set the moving image pyramid. |
template<class TFixedImage, class TMovingImage, class TDeformationField> |
virtual void itk::MultiResolutionPDEDeformableRegistration< TFixedImage, TMovingImage, TDeformationField >::SetNumberOfIterations |
( |
unsigned int |
data[] |
) |
[virtual] |
|
|
Set number of iterations per multi-resolution levels. |
template<class TFixedImage, class TMovingImage, class TDeformationField> |
virtual void itk::MultiResolutionPDEDeformableRegistration< TFixedImage, TMovingImage, TDeformationField >::SetNumberOfLevels |
( |
unsigned int |
num |
) |
[virtual] |
|
|
Set number of multi-resolution levels. |
template<class TFixedImage, class TMovingImage, class TDeformationField> |
virtual void itk::MultiResolutionPDEDeformableRegistration< TFixedImage, TMovingImage, TDeformationField >::SetRegistrationFilter |
( |
RegistrationType * |
_arg |
) |
[virtual] |
|
|
Set the internal registrator. |
The documentation for this class was generated from the following file:
Generated at Fri May 21 01:47:28 2004 for ITK by
1.2.15 written by Dimitri van Heesch,
© 1997-2000