go home Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages
Public Types | Public Member Functions | Static Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | Private Member Functions
elastix::MultiMetricMultiResolutionRegistration< TElastix > Class Template Reference

#include <elxMultiMetricMultiResolutionRegistration.h>

Inheritance diagram for elastix::MultiMetricMultiResolutionRegistration< TElastix >:
Inheritance graph
[legend]
Collaboration diagram for elastix::MultiMetricMultiResolutionRegistration< TElastix >:
Collaboration graph
[legend]

Public Types

typedef
Superclass1::CombinationMetricPointer 
CombinationMetricPointer
 
typedef
Superclass1::CombinationMetricType 
CombinationMetricType
 
typedef
Superclass2::ConfigurationPointer 
ConfigurationPointer
 
typedef
Superclass2::ConfigurationType 
ConfigurationType
 
typedef SmartPointer< const SelfConstPointer
 
typedef Superclass2::ElastixPointer ElastixPointer
 
typedef Superclass2::ElastixType ElastixType
 
typedef
Superclass1::FixedImageConstPointer 
FixedImageConstPointer
 
typedef
Superclass1::FixedImagePyramidPointer 
FixedImagePyramidPointer
 
typedef
Superclass1::FixedImagePyramidType 
FixedImagePyramidType
 
typedef
Superclass1::FixedImageRegionType 
FixedImageRegionType
 
typedef Superclass1::FixedImageType FixedImageType
 
typedef
Superclass1::InterpolatorPointer 
InterpolatorPointer
 
typedef
Superclass1::InterpolatorType 
InterpolatorType
 
typedef Superclass2::ITKBaseType ITKBaseType
 
typedef Superclass1::MetricPointer MetricPointer
 
typedef Superclass1::MetricType MetricType
 
typedef
Superclass1::MovingImageConstPointer 
MovingImageConstPointer
 
typedef
Superclass1::MovingImagePyramidPointer 
MovingImagePyramidPointer
 
typedef
Superclass1::MovingImagePyramidType 
MovingImagePyramidType
 
typedef
Superclass1::MovingImageType 
MovingImageType
 
typedef
Superclass1::OptimizerPointer 
OptimizerPointer
 
typedef Superclass1::OptimizerType OptimizerType
 
typedef Superclass1::ParametersType ParametersType
 
typedef SmartPointer< SelfPointer
 
typedef
Superclass2::RegistrationPointer 
RegistrationPointer
 
typedef
Superclass2::RegistrationType 
RegistrationType
 
typedef
MultiMetricMultiResolutionRegistration 
Self
 
typedef
MultiMetricMultiResolutionImageRegistrationMethod
< typename RegistrationBase
< TElastix >::FixedImageType,
typename RegistrationBase
< TElastix >::MovingImageType
Superclass1
 
typedef RegistrationBase
< TElastix > 
Superclass2
 
typedef
Superclass1::TransformPointer 
TransformPointer
 
typedef Superclass1::TransformType TransformType
 
typedef
Superclass2::UseMaskErosionArrayType 
UseMaskErosionArrayType
 
- Public Types inherited from itk::MultiMetricMultiResolutionImageRegistrationMethod< RegistrationBase< TElastix >::FixedImageType, RegistrationBase< TElastix >::MovingImageType >
typedef
CombinationMetricType::Pointer 
CombinationMetricPointer
 
typedef
CombinationImageToImageMetric
< FixedImageType,
MovingImageType
CombinationMetricType
 
typedef SmartPointer< const SelfConstPointer
 
typedef
Superclass::DataObjectPointer 
DataObjectPointer
 
typedef
Superclass::FixedImageConstPointer 
FixedImageConstPointer
 
typedef
Superclass::FixedImagePyramidPointer 
FixedImagePyramidPointer
 
typedef
Superclass::FixedImagePyramidType 
FixedImagePyramidType
 
typedef
Superclass::FixedImageRegionType 
FixedImageRegionType
 
typedef Superclass::FixedImageType FixedImageType
 
typedef
Superclass::InterpolatorPointer 
InterpolatorPointer
 
typedef
Superclass::InterpolatorType 
InterpolatorType
 
typedef Superclass::MetricPointer MetricPointer
 
typedef Superclass::MetricType MetricType
 
typedef
Superclass::MovingImageConstPointer 
MovingImageConstPointer
 
typedef
Superclass::MovingImagePyramidPointer 
MovingImagePyramidPointer
 
typedef
Superclass::MovingImagePyramidType 
MovingImagePyramidType
 
typedef Superclass::MovingImageType MovingImageType
 
typedef OptimizerType::Pointer OptimizerPointer
 
typedef Superclass::OptimizerType OptimizerType
 
typedef Superclass::ParametersType ParametersType
 
typedef SmartPointer< SelfPointer
 
typedef
MultiMetricMultiResolutionImageRegistrationMethod 
Self
 
typedef
MultiResolutionImageRegistrationMethod2
< RegistrationBase< TElastix >
::FixedImageType,
RegistrationBase< TElastix >
::MovingImageType
Superclass
 
typedef
Superclass::TransformOutputConstPointer 
TransformOutputConstPointer
 
typedef
Superclass::TransformOutputPointer 
TransformOutputPointer
 
typedef
Superclass::TransformOutputType 
TransformOutputType
 
typedef
Superclass::TransformPointer 
TransformPointer
 
typedef Superclass::TransformType TransformType
 
- Public Types inherited from itk::MultiResolutionImageRegistrationMethod2< RegistrationBase< TElastix >::FixedImageType, RegistrationBase< TElastix >::MovingImageType >
typedef SmartPointer< const SelfConstPointer
 
typedef DataObject::Pointer DataObjectPointer
 
typedef
FixedImageType::ConstPointer 
FixedImageConstPointer
 
typedef
FixedImagePyramidType::Pointer 
FixedImagePyramidPointer
 
typedef
MultiResolutionPyramidImageFilter
< FixedImageType,
FixedImageType
FixedImagePyramidType
 
typedef std::vector
< FixedImageRegionType
FixedImageRegionPyramidType
 
typedef FixedImageType::RegionType FixedImageRegionType
 
typedef RegistrationBase
< TElastix >::FixedImageType 
FixedImageType
 
typedef InterpolatorType::Pointer InterpolatorPointer
 
typedef
MetricType::InterpolatorType 
InterpolatorType
 
typedef MetricType::Pointer MetricPointer
 
typedef
AdvancedImageToImageMetric
< FixedImageType,
MovingImageType
MetricType
 
typedef
MovingImageType::ConstPointer 
MovingImageConstPointer
 
typedef
MovingImagePyramidType::Pointer 
MovingImagePyramidPointer
 
typedef
MultiResolutionPyramidImageFilter
< MovingImageType,
MovingImageType
MovingImagePyramidType
 
typedef RegistrationBase
< TElastix >::MovingImageType 
MovingImageType
 
typedef
SingleValuedNonLinearOptimizer 
OptimizerType
 
typedef
MetricType::TransformParametersType 
ParametersType
 
typedef SmartPointer< SelfPointer
 
typedef
MultiResolutionImageRegistrationMethod2 
Self
 
typedef ProcessObject Superclass
 
typedef
TransformOutputType::ConstPointer 
TransformOutputConstPointer
 
typedef
TransformOutputType::Pointer 
TransformOutputPointer
 
typedef DataObjectDecorator
< TransformType
TransformOutputType
 
typedef TransformType::Pointer TransformPointer
 
typedef
MetricType::AdvancedTransformType 
TransformType
 
- Public Types inherited from elastix::RegistrationBase< TElastix >
typedef
Superclass::ConfigurationPointer 
ConfigurationPointer
 
typedef
Superclass::ConfigurationType 
ConfigurationType
 
typedef Superclass::ElastixPointer ElastixPointer
 
typedef Superclass::ElastixType ElastixType
 
typedef ElastixType::FixedImageType FixedImageType
 
typedef
itk::MultiResolutionImageRegistrationMethod2
< FixedImageType,
MovingImageType
ITKBaseType
 
typedef
ElastixType::MovingImageType 
MovingImageType
 
typedef
Superclass::RegistrationPointer 
RegistrationPointer
 
typedef
Superclass::RegistrationType 
RegistrationType
 
typedef RegistrationBase Self
 
typedef BaseComponentSE< TElastix > Superclass
 
typedef std::vector< boolUseMaskErosionArrayType
 
- Public Types inherited from elastix::BaseComponentSE< TElastix >
typedef
ElastixType::ConfigurationPointer 
ConfigurationPointer
 
typedef
ElastixType::ConfigurationType 
ConfigurationType
 
typedef ElastixType::Pointer ElastixPointer
 
typedef TElastix ElastixType
 
typedef RegistrationTypeRegistrationPointer
 
typedef
ElastixType::RegistrationBaseType 
RegistrationType
 
typedef BaseComponentSE Self
 
typedef BaseComponent Superclass
 

Public Member Functions

virtual void AfterEachIteration (void)
 
virtual void BeforeEachResolution (void)
 
virtual void BeforeRegistration (void)
 
 elxClassNameMacro ("MultiMetricMultiResolutionRegistration")
 
virtual const char * GetClassName () const
 
 itkStaticConstMacro (FixedImageDimension, unsigned int, Superclass2::FixedImageDimension)
 
 itkStaticConstMacro (MovingImageDimension, unsigned int, Superclass2::MovingImageDimension)
 
- Public Member Functions inherited from itk::MultiMetricMultiResolutionImageRegistrationMethod< RegistrationBase< TElastix >::FixedImageType, RegistrationBase< TElastix >::MovingImageType >
virtual CombinationMetricTypeGetCombinationMetric (void) const
 
virtual const FixedImageTypeGetFixedImage (unsigned int pos) const
 
virtual const FixedImageTypeGetFixedImage (void) const
 
virtual FixedImagePyramidTypeGetFixedImagePyramid (unsigned int pos) const
 
virtual FixedImagePyramidTypeGetFixedImagePyramid (void)
 
virtual const
FixedImageRegionType
GetFixedImageRegion (unsigned int pos) const
 
virtual const
FixedImageRegionType
GetFixedImageRegion (void) const
 
virtual InterpolatorTypeGetInterpolator (unsigned int pos) const
 
virtual InterpolatorTypeGetInterpolator (void)
 
virtual const ParametersTypeGetLastTransformParameters (void) const
 
virtual const MovingImageTypeGetMovingImage (unsigned int pos) const
 
virtual const MovingImageTypeGetMovingImage (void) const
 
virtual MovingImagePyramidTypeGetMovingImagePyramid (unsigned int pos) const
 
virtual MovingImagePyramidTypeGetMovingImagePyramid (void)
 
unsigned long GetMTime (void) const
 
 itkGetNumberOfMacro (FixedImage)
 
 itkGetNumberOfMacro (MovingImage)
 
 itkGetNumberOfMacro (FixedImageRegion)
 
 itkGetNumberOfMacro (Interpolator)
 
 itkGetNumberOfMacro (FixedImagePyramid)
 
 itkGetNumberOfMacro (MovingImagePyramid)
 
 itkSetNumberOfMacro (FixedImage)
 
 itkSetNumberOfMacro (MovingImage)
 
 itkSetNumberOfMacro (FixedImageRegion)
 
 itkSetNumberOfMacro (Interpolator)
 
 itkSetNumberOfMacro (FixedImagePyramid)
 
 itkSetNumberOfMacro (MovingImagePyramid)
 
 itkSimpleSetMacro (FixedImage, const FixedImageType *)
 
 itkSimpleSetMacro (MovingImage, const MovingImageType *)
 
 itkSimpleSetMacro (FixedImageRegion, const FixedImageRegionType)
 
 itkSimpleSetMacro (Interpolator, InterpolatorType *)
 
 itkSimpleSetMacro (FixedImagePyramid, FixedImagePyramidType *)
 
 itkSimpleSetMacro (MovingImagePyramid, MovingImagePyramidType *)
 
virtual void SetFixedImage (const FixedImageType *_arg, unsigned int pos)
 
virtual void SetFixedImagePyramid (FixedImagePyramidType *_arg, unsigned int pos)
 
virtual void SetFixedImageRegion (FixedImageRegionType _arg, unsigned int pos)
 
virtual void SetInterpolator (InterpolatorType *_arg, unsigned int pos)
 
virtual void SetMetric (MetricType *_arg)
 
virtual void SetMovingImage (const MovingImageType *_arg, unsigned int pos)
 
virtual void SetMovingImagePyramid (MovingImagePyramidType *_arg, unsigned int pos)
 
virtual void StopMultiMetricRegistration (void)
 
- Public Member Functions inherited from itk::MultiResolutionImageRegistrationMethod2< RegistrationBase< TElastix >::FixedImageType, RegistrationBase< TElastix >::MovingImageType >
virtual unsigned long GetCurrentLevel ()
 
virtual const ParametersTypeGetInitialTransformParameters ()
 
virtual const ParametersTypeGetInitialTransformParametersOfNextLevel ()
 
virtual MetricTypeGetMetric ()
 
unsigned long GetMTime (void) const
 
virtual unsigned long GetNumberOfLevels ()
 
virtual OptimizerTypeGetOptimizer ()
 
const TransformOutputTypeGetOutput (void) const
 
virtual TransformTypeGetTransform ()
 
virtual DataObjectPointer MakeOutput (unsigned int idx)
 
virtual void SetFixedImage (const FixedImageType *_arg)
 
virtual void SetFixedImagePyramid (FixedImagePyramidType *_arg)
 
virtual void SetFixedImageRegion (FixedImageRegionType _arg)
 
virtual void SetInitialTransformParameters (ParametersType _arg)
 
virtual void SetInitialTransformParametersOfNextLevel (ParametersType _arg)
 
virtual void SetInterpolator (InterpolatorType *_arg)
 
virtual void SetMovingImage (const MovingImageType *_arg)
 
virtual void SetMovingImagePyramid (MovingImagePyramidType *_arg)
 
virtual void SetNumberOfLevels (unsigned long _arg)
 
virtual void SetOptimizer (OptimizerType *_arg)
 
virtual void SetTransform (TransformType *_arg)
 
virtual void StartRegistration (void)
 
virtual void StopRegistration (void)
 
- Public Member Functions inherited from elastix::RegistrationBase< TElastix >
virtual void AfterEachResolutionBase (void)
 
virtual ITKBaseTypeGetAsITKBaseType (void)
 
virtual const ITKBaseTypeGetAsITKBaseType (void) const
 
 itkStaticConstMacro (FixedImageDimension, unsigned int, FixedImageType::ImageDimension)
 
 itkStaticConstMacro (MovingImageDimension, unsigned int, MovingImageType::ImageDimension)
 
virtual bool ReadMaskParameters (UseMaskErosionArrayType &useMaskErosionArray, const unsigned int nrOfMasks, const std::string &whichMask, const unsigned int level) const
 
- Public Member Functions inherited from elastix::BaseComponentSE< TElastix >
virtual ConfigurationTypeGetConfiguration (void) const
 
virtual ElastixTypeGetElastix (void) const
 
virtual RegistrationPointer GetRegistration (void) const
 
virtual void SetConfiguration (ConfigurationType *_arg)
 
virtual void SetElastix (ElastixType *_arg)
 
- Public Member Functions inherited from elastix::BaseComponent
virtual void AfterEachIterationBase (void)
 
virtual void AfterEachResolution (void)
 
virtual void AfterRegistration (void)
 
virtual void AfterRegistrationBase (void)
 
virtual int BeforeAll (void)
 
virtual int BeforeAllBase (void)
 
virtual void BeforeEachResolutionBase (void)
 
virtual void BeforeRegistrationBase (void)
 
virtual const char * elxGetClassName (void) const
 
virtual const char * GetComponentLabel (void) const
 
virtual void SetComponentLabel (const char *label, unsigned int idx)
 

Static Public Member Functions

static Pointer New ()
 
- Static Public Member Functions inherited from itk::MultiMetricMultiResolutionImageRegistrationMethod< RegistrationBase< TElastix >::FixedImageType, RegistrationBase< TElastix >::MovingImageType >
static Pointer New ()
 
- Static Public Member Functions inherited from itk::MultiResolutionImageRegistrationMethod2< RegistrationBase< TElastix >::FixedImageType, RegistrationBase< TElastix >::MovingImageType >
static Pointer New ()
 

Protected Types

typedef
Superclass2::FixedMaskImagePointer 
FixedMaskImagePointer
 
typedef
Superclass2::FixedMaskImageType 
FixedMaskImageType
 
typedef
Superclass2::FixedMaskSpatialObjectPointer 
FixedMaskSpatialObjectPointer
 
typedef
Superclass2::FixedMaskSpatialObjectType 
FixedMaskSpatialObjectType
 
typedef Superclass2::MaskPixelType MaskPixelType
 
typedef
Superclass2::MovingMaskImagePointer 
MovingMaskImagePointer
 
typedef
Superclass2::MovingMaskImageType 
MovingMaskImageType
 
typedef
Superclass2::MovingMaskSpatialObjectPointer 
MovingMaskSpatialObjectPointer
 
typedef
Superclass2::MovingMaskSpatialObjectType 
MovingMaskSpatialObjectType
 
typedef TimerType::Pointer TimerPointer
 
typedef tmr::Timer TimerType
 
- Protected Types inherited from itk::MultiMetricMultiResolutionImageRegistrationMethod< RegistrationBase< TElastix >::FixedImageType, RegistrationBase< TElastix >::MovingImageType >
typedef std::vector
< FixedImageRegionType
FixedImageRegionPyramidType
 
- Protected Types inherited from elastix::RegistrationBase< TElastix >
typedef
ITKBaseType::FixedImagePyramidType 
FixedImagePyramidType
 
typedef
FixedMaskErodeFilterType::Pointer 
FixedMaskErodeFilterPointer
 
typedef ErodeMaskImageFilter
< FixedMaskImageType
FixedMaskErodeFilterType
 
typedef FixedMaskImageType::Pointer FixedMaskImagePointer
 
typedef ElastixType::FixedMaskType FixedMaskImageType
 
typedef
FixedMaskSpatialObjectType::Pointer 
FixedMaskSpatialObjectPointer
 
typedef
ImageMaskSpatialObject2
< itkGetStaticConstMacro(FixedImageDimension) > 
FixedMaskSpatialObjectType
 
typedef ElastixType::MaskPixelType MaskPixelType
 
typedef
ITKBaseType::MovingImagePyramidType 
MovingImagePyramidType
 
typedef
MovingMaskErodeFilterType::Pointer 
MovingMaskErodeFilterPointer
 
typedef ErodeMaskImageFilter
< MovingMaskImageType
MovingMaskErodeFilterType
 
typedef
MovingMaskImageType::Pointer 
MovingMaskImagePointer
 
typedef ElastixType::MovingMaskType MovingMaskImageType
 
typedef
MovingMaskSpatialObjectType::Pointer 
MovingMaskSpatialObjectPointer
 
typedef
ImageMaskSpatialObject2
< itkGetStaticConstMacro(MovingImageDimension) > 
MovingMaskSpatialObjectType
 

Protected Member Functions

 MultiMetricMultiResolutionRegistration ()
 
virtual void SetComponents (void)
 
void UpdateFixedMasks (unsigned int level)
 
void UpdateMovingMasks (unsigned int level)
 
virtual ~MultiMetricMultiResolutionRegistration ()
 
- Protected Member Functions inherited from itk::MultiMetricMultiResolutionImageRegistrationMethod< RegistrationBase< TElastix >::FixedImageType, RegistrationBase< TElastix >::MovingImageType >
virtual void CheckOnInitialize (void) throw (ExceptionObject)
 
virtual void CheckPyramids (void) throw (ExceptionObject)
 
virtual void GenerateData (void)
 
virtual void Initialize (void) throw (ExceptionObject)
 
 MultiMetricMultiResolutionImageRegistrationMethod ()
 
virtual void PrepareAllPyramids (void)
 
void PrintSelf (std::ostream &os, Indent indent) const
 
virtual ~MultiMetricMultiResolutionImageRegistrationMethod ()
 
- Protected Member Functions inherited from itk::MultiResolutionImageRegistrationMethod2< RegistrationBase< TElastix >::FixedImageType, RegistrationBase< TElastix >::MovingImageType >
 MultiResolutionImageRegistrationMethod2 ()
 
virtual void PreparePyramids (void)
 
virtual void SetCurrentLevel (unsigned long _arg)
 
virtual ~MultiResolutionImageRegistrationMethod2 ()
 
- Protected Member Functions inherited from elastix::RegistrationBase< TElastix >
FixedMaskSpatialObjectPointer GenerateFixedMaskSpatialObject (const FixedMaskImageType *maskImage, bool useMaskErosion, const FixedImagePyramidType *pyramid, unsigned int level) const
 
MovingMaskSpatialObjectPointer GenerateMovingMaskSpatialObject (const MovingMaskImageType *maskImage, bool useMaskErosion, const MovingImagePyramidType *pyramid, unsigned int level) const
 
 RegistrationBase ()
 
virtual ~RegistrationBase ()
 
- Protected Member Functions inherited from elastix::BaseComponentSE< TElastix >
 BaseComponentSE ()
 
virtual ~BaseComponentSE ()
 
- Protected Member Functions inherited from elastix::BaseComponent
 BaseComponent ()
 
virtual ~BaseComponent ()
 

Protected Attributes

bool m_ShowExactMetricValue
 
- Protected Attributes inherited from itk::MultiMetricMultiResolutionImageRegistrationMethod< RegistrationBase< TElastix >::FixedImageType, RegistrationBase< TElastix >::MovingImageType >
CombinationMetricPointer m_CombinationMetric
 
std::vector
< FixedImagePyramidPointer
m_FixedImagePyramids
 
std::vector
< FixedImageRegionPyramidType
m_FixedImageRegionPyramids
 
std::vector< FixedImageRegionTypem_FixedImageRegions
 
std::vector
< FixedImageConstPointer
m_FixedImages
 
std::vector< InterpolatorPointerm_Interpolators
 
ParametersType m_LastTransformParameters
 
std::vector
< MovingImagePyramidPointer
m_MovingImagePyramids
 
std::vector
< MovingImageConstPointer
m_MovingImages
 
FixedImageRegionType m_NullFixedImageRegion
 
bool m_Stop
 
- Protected Attributes inherited from itk::MultiResolutionImageRegistrationMethod2< RegistrationBase< TElastix >::FixedImageType, RegistrationBase< TElastix >::MovingImageType >
ParametersType m_LastTransformParameters
 
bool m_Stop
 
- Protected Attributes inherited from elastix::BaseComponentSE< TElastix >
ConfigurationPointer m_Configuration
 
ElastixPointer m_Elastix
 
RegistrationPointer m_Registration
 

Private Member Functions

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

Detailed Description

template<class TElastix>
class elastix::MultiMetricMultiResolutionRegistration< TElastix >

A registration framework based on the itk::MultiMetricMultiResolutionImageRegistrationMethod.

This MultiMetricMultiResolutionRegistration gives a framework for registration with a multi-resolution approach, using multiple metrics. The metrics can use the same pair of images/image pyramids/interpolators /masks, but also different pairs of fixed/moving images etc. If the metrics use the same moving image and the same moving image pyramid, they can use the same interpolator. If multiple moving images are used, enter multiple interpolators, possibly of the same type: Like this for example:
(Interpolator "BSplineInterpolator" "BSplineInterpolator")
For each metric a different instance of an image sampler can be used:
(ImageSampler "Random" "Random")
or:
(ImageSampler "Random" "Full")
Note, that the number of metrics should always be larger than or equal to the number of fixed/moving images, interpolators, image pyramids etc. Also, when all metrics need an image sampler, for each fixed image pyramid, an image sampler must be provided. In some cases, one sampler can be used for all metrics. This is the case when multiple metrics are desired, but

The parameters used in this class are:

Parameters:

Registration: Select this registration framework as follows:
(Registration "MultiMetricMultiResolutionRegistration")

NumberOfResolutions: the number of resolutions used.
example: (NumberOfResolutions 4)
The default is 3.

Metric<i>Weight: The weight for the i-th metric, in each resolution.
example: (Metric0Weight 0.5 0.5 0.8)
example: (Metric1Weight 0.5 0.5 0.2)
The default is 1 / numberOfMetrics.

Metric<i>RelativeWeight: The relative weight $rw_i$ for the i-th metric, in each resolution.
This is an alternative to the default Metric<i>Weight and can be selected with the parameter UseRelativeWeights. The weight $w_i$ is computed in each iteration based on the magnitude of the metric derivative (gradient) $|g_i|$ related to that of the first metric $|g_0|$. It is done such that the fraction $|g_0|/|g_i|$ is identical to $rw_0/rw_i$, so

\[w_i = rw_i |g_0|/|g_i|.\]

example: (Metric0RelativeWeight 0.5 0.5 0.8)
example: (Metric1RelativeWeight 0.5 0.5 0.2)
The default is 1 / numberOfMetrics.

UseRelativeWeights: Whether relative weights are used or simple static, fixed weights.
example: (UseRelativeWeights "false" "true")
The default is "false", which means using Metric<i>Weight.

Metric<i>Use: Whether the i-th metric is only computed or also used, in each resolution.
example: (Metric0Use "false" "true")
example: (Metric1Use "true" "false")
The default is "true".

Definition at line 95 of file elxMultiMetricMultiResolutionRegistration.h.

Member Typedef Documentation

Definition at line 173 of file elxMultiMetricMultiResolutionRegistration.h.

The CombinationMetric type, which is used internally by the Superclass1.

Definition at line 172 of file elxMultiMetricMultiResolutionRegistration.h.

Definition at line 179 of file elxMultiMetricMultiResolutionRegistration.h.

Definition at line 178 of file elxMultiMetricMultiResolutionRegistration.h.

template<class TElastix >
typedef SmartPointer<const Self> elastix::MultiMetricMultiResolutionRegistration< TElastix >::ConstPointer

Definition at line 116 of file elxMultiMetricMultiResolutionRegistration.h.

Definition at line 177 of file elxMultiMetricMultiResolutionRegistration.h.

Typedef's from Elastix.

Definition at line 176 of file elxMultiMetricMultiResolutionRegistration.h.

Definition at line 135 of file elxMultiMetricMultiResolutionRegistration.h.

Definition at line 160 of file elxMultiMetricMultiResolutionRegistration.h.

Type of the Fixed image multiresolution pyramid.

Definition at line 159 of file elxMultiMetricMultiResolutionRegistration.h.

Definition at line 136 of file elxMultiMetricMultiResolutionRegistration.h.

Typedef's inherited from Superclass1. Type of the Fixed image.

Definition at line 134 of file elxMultiMetricMultiResolutionRegistration.h.

Definition at line 225 of file elxMultiMetricMultiResolutionRegistration.h.

Definition at line 223 of file elxMultiMetricMultiResolutionRegistration.h.

Definition at line 229 of file elxMultiMetricMultiResolutionRegistration.h.

Definition at line 227 of file elxMultiMetricMultiResolutionRegistration.h.

Definition at line 152 of file elxMultiMetricMultiResolutionRegistration.h.

Type of the Interpolator.

Definition at line 151 of file elxMultiMetricMultiResolutionRegistration.h.

Definition at line 182 of file elxMultiMetricMultiResolutionRegistration.h.

template<class TElastix >
typedef Superclass2::MaskPixelType elastix::MultiMetricMultiResolutionRegistration< TElastix >::MaskPixelType
protected

Typedef's for mask support.

Definition at line 222 of file elxMultiMetricMultiResolutionRegistration.h.

Definition at line 144 of file elxMultiMetricMultiResolutionRegistration.h.

Type of the metric.

Definition at line 143 of file elxMultiMetricMultiResolutionRegistration.h.

Definition at line 140 of file elxMultiMetricMultiResolutionRegistration.h.

Definition at line 164 of file elxMultiMetricMultiResolutionRegistration.h.

Type of the moving image multiresolution pyramid.

Definition at line 163 of file elxMultiMetricMultiResolutionRegistration.h.

Type of the Moving image.

Definition at line 139 of file elxMultiMetricMultiResolutionRegistration.h.

Definition at line 226 of file elxMultiMetricMultiResolutionRegistration.h.

Definition at line 224 of file elxMultiMetricMultiResolutionRegistration.h.

Definition at line 230 of file elxMultiMetricMultiResolutionRegistration.h.

Definition at line 228 of file elxMultiMetricMultiResolutionRegistration.h.

Definition at line 156 of file elxMultiMetricMultiResolutionRegistration.h.

Type of the optimizer.

Definition at line 155 of file elxMultiMetricMultiResolutionRegistration.h.

Type of the Transformation parameters. This is the same type used to represent the search space of the optimization algorithm.

Definition at line 169 of file elxMultiMetricMultiResolutionRegistration.h.

template<class TElastix >
typedef SmartPointer<Self> elastix::MultiMetricMultiResolutionRegistration< TElastix >::Pointer

Standard ITK: SmartPointers

Definition at line 115 of file elxMultiMetricMultiResolutionRegistration.h.

Definition at line 181 of file elxMultiMetricMultiResolutionRegistration.h.

Definition at line 180 of file elxMultiMetricMultiResolutionRegistration.h.

Standard ITK: Self

Definition at line 105 of file elxMultiMetricMultiResolutionRegistration.h.

Standard ITK: Superclasses.

Definition at line 111 of file elxMultiMetricMultiResolutionRegistration.h.

template<class TElastix >
typedef RegistrationBase<TElastix> elastix::MultiMetricMultiResolutionRegistration< TElastix >::Superclass2

Definition at line 112 of file elxMultiMetricMultiResolutionRegistration.h.

template<class TElastix >
typedef TimerType::Pointer elastix::MultiMetricMultiResolutionRegistration< TElastix >::TimerPointer
protected

Typedef for timer.

Definition at line 219 of file elxMultiMetricMultiResolutionRegistration.h.

template<class TElastix >
typedef tmr::Timer elastix::MultiMetricMultiResolutionRegistration< TElastix >::TimerType
protected

Typedef for timer.

Definition at line 214 of file elxMultiMetricMultiResolutionRegistration.h.

Definition at line 148 of file elxMultiMetricMultiResolutionRegistration.h.

Type of the Transform .

Definition at line 147 of file elxMultiMetricMultiResolutionRegistration.h.

Definition at line 183 of file elxMultiMetricMultiResolutionRegistration.h.

Constructor & Destructor Documentation

The constructor.

template<class TElastix >
virtual elastix::MultiMetricMultiResolutionRegistration< TElastix >::~MultiMetricMultiResolutionRegistration ( )
inlineprotectedvirtual

The destructor.

Definition at line 214 of file elxMultiMetricMultiResolutionRegistration.h.

template<class TElastix >
elastix::MultiMetricMultiResolutionRegistration< TElastix >::MultiMetricMultiResolutionRegistration ( const Self )
private

The private constructor.

Member Function Documentation

template<class TElastix >
virtual void elastix::MultiMetricMultiResolutionRegistration< TElastix >::AfterEachIteration ( void  )
virtual

Execute stuff after each iteration

  • Print the latest computed submetric values to screen.

Reimplemented from elastix::BaseComponent.

template<class TElastix >
virtual void elastix::MultiMetricMultiResolutionRegistration< TElastix >::BeforeEachResolution ( void  )
virtual

Execute stuff before each resolution:

  • Update masks with an erosion.
  • Set the metric weights.

Reimplemented from elastix::BaseComponent.

template<class TElastix >
virtual void elastix::MultiMetricMultiResolutionRegistration< TElastix >::BeforeRegistration ( void  )
virtual

Execute stuff before the actual registration:

  • Connect all components to the registration framework.
  • Set the number of resolution levels.
  • Set the fixed image regions.
  • Add the sub metric columns to the iteration info object.

Reimplemented from elastix::BaseComponent.

template<class TElastix >
elastix::MultiMetricMultiResolutionRegistration< TElastix >::elxClassNameMacro ( "MultiMetricMultiResolutionRegistration< TElastix >"  )

Name of this class. Use this name in the parameter file to select this specific registration framework.
example: (Registration "MultiMetricMultiResolutionRegistration")

template<class TElastix >
virtual const char* elastix::MultiMetricMultiResolutionRegistration< TElastix >::GetClassName ( ) const
virtual

Run-time type information (and related methods).

Reimplemented from elastix::RegistrationBase< TElastix >.

template<class TElastix >
elastix::MultiMetricMultiResolutionRegistration< TElastix >::itkStaticConstMacro ( FixedImageDimension  ,
unsigned  int,
Superclass2::FixedImageDimension   
)

Get the dimension of the fixed image.

template<class TElastix >
elastix::MultiMetricMultiResolutionRegistration< TElastix >::itkStaticConstMacro ( MovingImageDimension  ,
unsigned  int,
Superclass2::MovingImageDimension   
)

Get the dimension of the moving image.

template<class TElastix >
static Pointer elastix::MultiMetricMultiResolutionRegistration< TElastix >::New ( )
static

Method for creation through the object factory.

template<class TElastix >
void elastix::MultiMetricMultiResolutionRegistration< TElastix >::operator= ( const Self )
private

The private copy constructor.

template<class TElastix >
virtual void elastix::MultiMetricMultiResolutionRegistration< TElastix >::SetComponents ( void  )
protectedvirtual

Read the components from m_Elastix and set them in the Registration class.

template<class TElastix >
void elastix::MultiMetricMultiResolutionRegistration< TElastix >::UpdateFixedMasks ( unsigned int  level)
protected

Function to update masks.

template<class TElastix >
void elastix::MultiMetricMultiResolutionRegistration< TElastix >::UpdateMovingMasks ( unsigned int  level)
protected

Field Documentation

template<class TElastix >
bool elastix::MultiMetricMultiResolutionRegistration< TElastix >::m_ShowExactMetricValue
protected

Definition at line 239 of file elxMultiMetricMultiResolutionRegistration.h.



Generated on 05-12-2013 for elastix by doxygen 1.8.5 elastix logo