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 Member Functions | Private Member Functions
elastix::ViolaWellsMutualInformationMetric< TElastix > Class Template Reference

#include <elxViolaWellsMutualInformationMetric.h>

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

Public Types

typedef
Superclass2::ConfigurationPointer 
ConfigurationPointer
typedef
Superclass2::ConfigurationType 
ConfigurationType
typedef SmartPointer< const SelfConstPointer
typedef Superclass1::DerivativeType DerivativeType
typedef Superclass2::ElastixPointer ElastixPointer
typedef Superclass2::ElastixType ElastixType
typedef
Superclass1::FixedImageConstPointer 
FixedImageConstPointer
typedef
Superclass1::FixedImageIndexType 
FixedImageIndexType
typedef
Superclass1::FixedImageIndexValueType 
FixedImageIndexValueType
typedef
Superclass1::FixedImagePointType 
FixedImagePointType
typedef Superclass1::FixedImageType FixedImageType
typedef
Superclass1::InterpolatorType 
InterpolatorType
typedef Superclass2::ITKBaseType ITKBaseType
typedef Superclass1::MeasureType MeasureType
typedef
Superclass1::MovingImageConstPointer 
MovingImageCosntPointer
typedef
Superclass1::MovingImageIndexType 
MovingImageIndexType
typedef
Superclass1::MovingImagePointType 
MovingImagePointType
typedef
Superclass1::MovingImageType 
MovingImageType
typedef Superclass1::ParametersType ParametersType
typedef SmartPointer< SelfPointer
typedef
Superclass2::RegistrationPointer 
RegistrationPointer
typedef
Superclass2::RegistrationType 
RegistrationType
typedef
ViolaWellsMutualInformationMetric 
Self
typedef
MutualInformationImageToImageMetric
< typename MetricBase
< TElastix >::FixedImageType,
typename MetricBase< TElastix >
::MovingImageType
Superclass1
typedef MetricBase< TElastix > Superclass2
typedef TimerType::Pointer TimerPointer
typedef tmr::Timer TimerType
typedef
Superclass1::TransformJacobianType 
TransformJacobianType
typedef
Superclass1::TransformPointer 
TransformPointer
typedef Superclass1::TransformType TransformType

Public Member Functions

virtual void BeforeEachResolution (void)
 elxClassNameMacro ("ViolaWellsMutualInformation")
virtual const char * GetClassName () const
virtual void Initialize (void) throw (ExceptionObject)
 itkStaticConstMacro (MovingImageDimension, unsigned int, MovingImageType::ImageDimension)

Static Public Member Functions

static Pointer New ()

Protected Member Functions

 ViolaWellsMutualInformationMetric ()
virtual ~ViolaWellsMutualInformationMetric ()

Private Member Functions

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

Detailed Description

template<class TElastix>
class elastix::ViolaWellsMutualInformationMetric< TElastix >

A metric based on the itk::MutualInformationImageToImageMetric.

Warning:
: this metric is not very well tested in elastix.
: this metric is not based on the AdvancedImageToImageMetric so does not support the ImageSampler framework and might be very slow in combination with B-spline transform.
: this metric uses stochastic sampling of the images. Do not use a quasi-Newton optimizer or a conjugate gradient. The StandardGradientDescent is a better choice.

The parameters used in this class are:

Parameters:
Metric: Select this metric as follows:
(Metric "ViolaWellsMutualInformation")
Parameters:
NumberOfSpatialSamples: for each resolution the number of samples used to calculate this metrics value and its derivative.
example: (NumberOfSpatialSamples 5000 5000 10000)
The default is 10000 for each resolution.
Parameters:
FixedImageStandardDeviation: for each resolution the standard deviation of the fixed image.
example: (FixedImageStandardDeviation 1.3 1.9 1.0)
The default is 0.4 for each resolution.
Parameters:
MovingImageStandardDeviation: for each resolution the standard deviation of the moving image.
example: (MovingImageStandardDeviation 1.3 1.9 1.0)
The default is 0.4 for each resolution.
See also:
MutualInformationImageToImageMetric

Definition at line 60 of file elxViolaWellsMutualInformationMetric.h.


Member Typedef Documentation

Reimplemented from elastix::MetricBase< TElastix >.

Definition at line 117 of file elxViolaWellsMutualInformationMetric.h.

Reimplemented from elastix::MetricBase< TElastix >.

Definition at line 116 of file elxViolaWellsMutualInformationMetric.h.

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

Definition at line 76 of file elxViolaWellsMutualInformationMetric.h.

template<class TElastix >
typedef Superclass1::DerivativeType elastix::ViolaWellsMutualInformationMetric< TElastix >::DerivativeType

Definition at line 97 of file elxViolaWellsMutualInformationMetric.h.

Reimplemented from elastix::MetricBase< TElastix >.

Definition at line 115 of file elxViolaWellsMutualInformationMetric.h.

Typedef's inherited from Elastix.

Reimplemented from elastix::MetricBase< TElastix >.

Definition at line 114 of file elxViolaWellsMutualInformationMetric.h.

template<class TElastix >
typedef Superclass1::FixedImageConstPointer elastix::ViolaWellsMutualInformationMetric< TElastix >::FixedImageConstPointer

Definition at line 101 of file elxViolaWellsMutualInformationMetric.h.

template<class TElastix >
typedef Superclass1::FixedImageIndexType elastix::ViolaWellsMutualInformationMetric< TElastix >::FixedImageIndexType

Definition at line 103 of file elxViolaWellsMutualInformationMetric.h.

template<class TElastix >
typedef Superclass1::FixedImageIndexValueType elastix::ViolaWellsMutualInformationMetric< TElastix >::FixedImageIndexValueType

Definition at line 104 of file elxViolaWellsMutualInformationMetric.h.

template<class TElastix >
typedef Superclass1::FixedImagePointType elastix::ViolaWellsMutualInformationMetric< TElastix >::FixedImagePointType

Definition at line 106 of file elxViolaWellsMutualInformationMetric.h.

template<class TElastix >
typedef Superclass1::FixedImageType elastix::ViolaWellsMutualInformationMetric< TElastix >::FixedImageType

Reimplemented from elastix::MetricBase< TElastix >.

Definition at line 99 of file elxViolaWellsMutualInformationMetric.h.

template<class TElastix >
typedef Superclass1::InterpolatorType elastix::ViolaWellsMutualInformationMetric< TElastix >::InterpolatorType

Definition at line 95 of file elxViolaWellsMutualInformationMetric.h.

Reimplemented from elastix::MetricBase< TElastix >.

Definition at line 120 of file elxViolaWellsMutualInformationMetric.h.

template<class TElastix >
typedef Superclass1::MeasureType elastix::ViolaWellsMutualInformationMetric< TElastix >::MeasureType

Reimplemented from elastix::MetricBase< TElastix >.

Definition at line 96 of file elxViolaWellsMutualInformationMetric.h.

template<class TElastix >
typedef Superclass1::MovingImageConstPointer elastix::ViolaWellsMutualInformationMetric< TElastix >::MovingImageCosntPointer

Definition at line 102 of file elxViolaWellsMutualInformationMetric.h.

template<class TElastix >
typedef Superclass1::MovingImageIndexType elastix::ViolaWellsMutualInformationMetric< TElastix >::MovingImageIndexType

Definition at line 105 of file elxViolaWellsMutualInformationMetric.h.

template<class TElastix >
typedef Superclass1::MovingImagePointType elastix::ViolaWellsMutualInformationMetric< TElastix >::MovingImagePointType

Definition at line 107 of file elxViolaWellsMutualInformationMetric.h.

template<class TElastix >
typedef Superclass1::MovingImageType elastix::ViolaWellsMutualInformationMetric< TElastix >::MovingImageType

Reimplemented from elastix::MetricBase< TElastix >.

Definition at line 100 of file elxViolaWellsMutualInformationMetric.h.

template<class TElastix >
typedef Superclass1::ParametersType elastix::ViolaWellsMutualInformationMetric< TElastix >::ParametersType

Reimplemented from elastix::MetricBase< TElastix >.

Definition at line 98 of file elxViolaWellsMutualInformationMetric.h.

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

Definition at line 75 of file elxViolaWellsMutualInformationMetric.h.

Reimplemented from elastix::MetricBase< TElastix >.

Definition at line 119 of file elxViolaWellsMutualInformationMetric.h.

Reimplemented from elastix::MetricBase< TElastix >.

Definition at line 118 of file elxViolaWellsMutualInformationMetric.h.

Standard ITK-stuff.

Reimplemented from elastix::MetricBase< TElastix >.

Definition at line 70 of file elxViolaWellsMutualInformationMetric.h.

template<class TElastix >
typedef MutualInformationImageToImageMetric< typename MetricBase<TElastix>::FixedImageType, typename MetricBase<TElastix>::MovingImageType > elastix::ViolaWellsMutualInformationMetric< TElastix >::Superclass1

Definition at line 73 of file elxViolaWellsMutualInformationMetric.h.

template<class TElastix >
typedef MetricBase<TElastix> elastix::ViolaWellsMutualInformationMetric< TElastix >::Superclass2

Definition at line 74 of file elxViolaWellsMutualInformationMetric.h.

template<class TElastix >
typedef TimerType::Pointer elastix::ViolaWellsMutualInformationMetric< TElastix >::TimerPointer

Definition at line 124 of file elxViolaWellsMutualInformationMetric.h.

template<class TElastix >
typedef tmr::Timer elastix::ViolaWellsMutualInformationMetric< TElastix >::TimerType

Typedef's for timer.

Definition at line 123 of file elxViolaWellsMutualInformationMetric.h.

template<class TElastix >
typedef Superclass1::TransformJacobianType elastix::ViolaWellsMutualInformationMetric< TElastix >::TransformJacobianType

Definition at line 94 of file elxViolaWellsMutualInformationMetric.h.

template<class TElastix >
typedef Superclass1::TransformPointer elastix::ViolaWellsMutualInformationMetric< TElastix >::TransformPointer

Definition at line 93 of file elxViolaWellsMutualInformationMetric.h.

template<class TElastix >
typedef Superclass1::TransformType elastix::ViolaWellsMutualInformationMetric< TElastix >::TransformType

Typedefs inherited from the superclass.

Definition at line 92 of file elxViolaWellsMutualInformationMetric.h.


Constructor & Destructor Documentation

template<class TElastix >
elastix::ViolaWellsMutualInformationMetric< TElastix >::ViolaWellsMutualInformationMetric ( ) [protected]

The constructor.

template<class TElastix >
virtual elastix::ViolaWellsMutualInformationMetric< TElastix >::~ViolaWellsMutualInformationMetric ( ) [inline, protected, virtual]

The destructor.

Definition at line 143 of file elxViolaWellsMutualInformationMetric.h.

template<class TElastix >
elastix::ViolaWellsMutualInformationMetric< TElastix >::ViolaWellsMutualInformationMetric ( const Self ) [private]

The private constructor.


Member Function Documentation

template<class TElastix >
virtual void elastix::ViolaWellsMutualInformationMetric< TElastix >::BeforeEachResolution ( void  ) [virtual]

Execute stuff before each new pyramid resolution:

  • Set the number of spatial samples.
  • Set the standard deviation of the fixed image.
  • Set the standard deviation of the moving image.

Reimplemented from elastix::BaseComponent.

template<class TElastix >
elastix::ViolaWellsMutualInformationMetric< TElastix >::elxClassNameMacro ( "ViolaWellsMutualInformation"  )

Name of this class. Use this name in the parameter file to select this specific metric.
example: (Metric "ViolaWellsMutualInformation")

template<class TElastix >
virtual const char* elastix::ViolaWellsMutualInformationMetric< TElastix >::GetClassName ( ) const [virtual]

Run-time type information (and related methods).

Reimplemented from elastix::MetricBase< TElastix >.

template<class TElastix >
virtual void elastix::ViolaWellsMutualInformationMetric< TElastix >::Initialize ( void  ) throw (ExceptionObject) [virtual]

Sets up a timer to measure the intialisation time and calls the Superclass' implementation.

template<class TElastix >
elastix::ViolaWellsMutualInformationMetric< TElastix >::itkStaticConstMacro ( MovingImageDimension  ,
unsigned  int,
MovingImageType::ImageDimension   
)

The moving image dimension.

Reimplemented from elastix::MetricBase< TElastix >.

template<class TElastix >
static Pointer elastix::ViolaWellsMutualInformationMetric< TElastix >::New ( ) [static]

Method for creation through the object factory.

template<class TElastix >
void elastix::ViolaWellsMutualInformationMetric< TElastix >::operator= ( const Self ) [private]

The private copy constructor.



Generated on 11-05-2012 for elastix by doxygen 1.7.6.1 elastix logo