ITK  4.0.0
Insight Segmentation and Registration Toolkit
Public Types | Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes
itk::MeanReciprocalSquareDifferenceImageToImageMetric< TFixedImage, TMovingImage > Class Template Reference

Computes similarity between two objects to be registered. More...

#include <itkMeanReciprocalSquareDifferenceImageToImageMetric.h>

Inheritance diagram for itk::MeanReciprocalSquareDifferenceImageToImageMetric< TFixedImage, TMovingImage >:
Collaboration diagram for itk::MeanReciprocalSquareDifferenceImageToImageMetric< TFixedImage, TMovingImage >:

List of all members.

Public Types

typedef SmartPointer< const SelfConstPointer
typedef Superclass::DerivativeType DerivativeType
typedef
Superclass::FixedImageConstPointer 
FixedImageConstPointer
typedef Superclass::FixedImageType FixedImageType
typedef Superclass::InputPointType InputPointType
typedef Superclass::MeasureType MeasureType
typedef
Superclass::MovingImageConstPointer 
MovingImageConstPointer
typedef Superclass::MovingImageType MovingImageType
typedef Superclass::OutputPointType OutputPointType
typedef SmartPointer< SelfPointer
typedef
MeanReciprocalSquareDifferenceImageToImageMetric 
Self
typedef ImageToImageMetric
< TFixedImage, TMovingImage > 
Superclass
typedef
Superclass::TransformJacobianType 
TransformJacobianType
typedef
Superclass::TransformParametersType 
TransformParametersType
typedef
Superclass::TransformPointer 
TransformPointer
typedef Superclass::TransformType TransformType

Public Member Functions

virtual ::itk::LightObject::Pointer CreateAnother (void) const
void GetDerivative (const TransformParametersType &parameters, DerivativeType &derivative) const
virtual const char * GetNameOfClass () const
MeasureType GetValue (const TransformParametersType &parameters) const
void GetValueAndDerivative (const TransformParametersType &parameters, MeasureType &Value, DerivativeType &derivative) const
virtual double GetLambda () const
virtual void SetLambda (double _arg)

Static Public Member Functions

static Pointer New ()

Private Member Functions

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

Private Attributes

double m_Delta
double m_Lambda
virtual double GetDelta () const
virtual void SetDelta (double _arg)
 MeanReciprocalSquareDifferenceImageToImageMetric ()
virtual ~MeanReciprocalSquareDifferenceImageToImageMetric ()
void PrintSelf (std::ostream &os, Indent indent) const

Detailed Description

template<class TFixedImage, class TMovingImage>
class itk::MeanReciprocalSquareDifferenceImageToImageMetric< TFixedImage, TMovingImage >

Computes similarity between two objects to be registered.

This Class is templated over the type of the Images to be compared and over the type of transformation and Iterpolator to be used.

This metric computes the sum of squared differences between pixels in the moving image and pixels in the fixed image after passing the squared difference through a function of type $ \frac{1}{1+x} $.

Spatial correspondance between both images is established through a Transform. Pixel values are taken from the Moving image. Their positions are mapped to the Fixed image and result in general in non-grid position on it. Values at these non-grid position of the Fixed image are interpolated using a user-selected Interpolator.

Definition at line 46 of file itkMeanReciprocalSquareDifferenceImageToImageMetric.h.


Member Typedef Documentation

template<class TFixedImage , class TMovingImage >
typedef SmartPointer< const Self > itk::MeanReciprocalSquareDifferenceImageToImageMetric< TFixedImage, TMovingImage >::ConstPointer
template<class TFixedImage , class TMovingImage >
typedef Superclass::DerivativeType itk::MeanReciprocalSquareDifferenceImageToImageMetric< TFixedImage, TMovingImage >::DerivativeType

Type of the derivative.

Reimplemented from itk::ImageToImageMetric< TFixedImage, TMovingImage >.

Definition at line 72 of file itkMeanReciprocalSquareDifferenceImageToImageMetric.h.

template<class TFixedImage , class TMovingImage >
typedef Superclass::FixedImageConstPointer itk::MeanReciprocalSquareDifferenceImageToImageMetric< TFixedImage, TMovingImage >::FixedImageConstPointer
template<class TFixedImage , class TMovingImage >
typedef Superclass::FixedImageType itk::MeanReciprocalSquareDifferenceImageToImageMetric< TFixedImage, TMovingImage >::FixedImageType
template<class TFixedImage , class TMovingImage >
typedef Superclass::InputPointType itk::MeanReciprocalSquareDifferenceImageToImageMetric< TFixedImage, TMovingImage >::InputPointType
template<class TFixedImage , class TMovingImage >
typedef Superclass::MeasureType itk::MeanReciprocalSquareDifferenceImageToImageMetric< TFixedImage, TMovingImage >::MeasureType

Type of the measure.

Reimplemented from itk::ImageToImageMetric< TFixedImage, TMovingImage >.

Definition at line 71 of file itkMeanReciprocalSquareDifferenceImageToImageMetric.h.

template<class TFixedImage , class TMovingImage >
typedef Superclass::MovingImageConstPointer itk::MeanReciprocalSquareDifferenceImageToImageMetric< TFixedImage, TMovingImage >::MovingImageConstPointer
template<class TFixedImage , class TMovingImage >
typedef Superclass::MovingImageType itk::MeanReciprocalSquareDifferenceImageToImageMetric< TFixedImage, TMovingImage >::MovingImageType
template<class TFixedImage , class TMovingImage >
typedef Superclass::OutputPointType itk::MeanReciprocalSquareDifferenceImageToImageMetric< TFixedImage, TMovingImage >::OutputPointType
template<class TFixedImage , class TMovingImage >
typedef SmartPointer< Self > itk::MeanReciprocalSquareDifferenceImageToImageMetric< TFixedImage, TMovingImage >::Pointer
template<class TFixedImage , class TMovingImage >
typedef MeanReciprocalSquareDifferenceImageToImageMetric itk::MeanReciprocalSquareDifferenceImageToImageMetric< TFixedImage, TMovingImage >::Self

Standard class typedefs.

Reimplemented from itk::ImageToImageMetric< TFixedImage, TMovingImage >.

Definition at line 52 of file itkMeanReciprocalSquareDifferenceImageToImageMetric.h.

template<class TFixedImage , class TMovingImage >
typedef ImageToImageMetric< TFixedImage, TMovingImage > itk::MeanReciprocalSquareDifferenceImageToImageMetric< TFixedImage, TMovingImage >::Superclass
template<class TFixedImage , class TMovingImage >
typedef Superclass::TransformJacobianType itk::MeanReciprocalSquareDifferenceImageToImageMetric< TFixedImage, TMovingImage >::TransformJacobianType
template<class TFixedImage , class TMovingImage >
typedef Superclass::TransformParametersType itk::MeanReciprocalSquareDifferenceImageToImageMetric< TFixedImage, TMovingImage >::TransformParametersType
template<class TFixedImage , class TMovingImage >
typedef Superclass::TransformPointer itk::MeanReciprocalSquareDifferenceImageToImageMetric< TFixedImage, TMovingImage >::TransformPointer
template<class TFixedImage , class TMovingImage >
typedef Superclass::TransformType itk::MeanReciprocalSquareDifferenceImageToImageMetric< TFixedImage, TMovingImage >::TransformType

Types transferred from the base class

Reimplemented from itk::ImageToImageMetric< TFixedImage, TMovingImage >.

Definition at line 61 of file itkMeanReciprocalSquareDifferenceImageToImageMetric.h.


Constructor & Destructor Documentation

template<class TFixedImage , class TMovingImage >
itk::MeanReciprocalSquareDifferenceImageToImageMetric< TFixedImage, TMovingImage >::MeanReciprocalSquareDifferenceImageToImageMetric ( ) [protected]

Set/Get Delta value. This value is used as the differential in the computation of the metric derivative using the finite differences method.

template<class TFixedImage , class TMovingImage >
virtual itk::MeanReciprocalSquareDifferenceImageToImageMetric< TFixedImage, TMovingImage >::~MeanReciprocalSquareDifferenceImageToImageMetric ( ) [inline, protected, virtual]

Set/Get Delta value. This value is used as the differential in the computation of the metric derivative using the finite differences method.

Definition at line 101 of file itkMeanReciprocalSquareDifferenceImageToImageMetric.h.

template<class TFixedImage , class TMovingImage >
itk::MeanReciprocalSquareDifferenceImageToImageMetric< TFixedImage, TMovingImage >::MeanReciprocalSquareDifferenceImageToImageMetric ( const Self ) [private]

Member Function Documentation

template<class TFixedImage , class TMovingImage >
virtual::itk::LightObject::Pointer itk::MeanReciprocalSquareDifferenceImageToImageMetric< TFixedImage, TMovingImage >::CreateAnother ( void  ) const [virtual]

Create an object from an instance, potentially deferring to a factory. This method allows you to create an instance of an object that is exactly the same type as the referring object. This is useful in cases where an object has been cast back to a base class.

Reimplemented from itk::Object.

template<class TFixedImage , class TMovingImage >
virtual double itk::MeanReciprocalSquareDifferenceImageToImageMetric< TFixedImage, TMovingImage >::GetDelta ( ) const [virtual]

Set/Get Delta value. This value is used as the differential in the computation of the metric derivative using the finite differences method.

template<class TFixedImage , class TMovingImage >
void itk::MeanReciprocalSquareDifferenceImageToImageMetric< TFixedImage, TMovingImage >::GetDerivative ( const TransformParametersType parameters,
DerivativeType derivative 
) const

Get the derivatives of the match measure.

template<class TFixedImage , class TMovingImage >
virtual double itk::MeanReciprocalSquareDifferenceImageToImageMetric< TFixedImage, TMovingImage >::GetLambda ( ) const [virtual]

Set/Get Lambda value. This factor regulates the capture radius of this metric

template<class TFixedImage , class TMovingImage >
virtual const char* itk::MeanReciprocalSquareDifferenceImageToImageMetric< TFixedImage, TMovingImage >::GetNameOfClass ( ) const [virtual]

Run-time type information (and related methods).

Reimplemented from itk::ImageToImageMetric< TFixedImage, TMovingImage >.

template<class TFixedImage , class TMovingImage >
MeasureType itk::MeanReciprocalSquareDifferenceImageToImageMetric< TFixedImage, TMovingImage >::GetValue ( const TransformParametersType parameters) const

Get the value for single valued optimizers.

template<class TFixedImage , class TMovingImage >
void itk::MeanReciprocalSquareDifferenceImageToImageMetric< TFixedImage, TMovingImage >::GetValueAndDerivative ( const TransformParametersType parameters,
MeasureType Value,
DerivativeType derivative 
) const

Get value and derivatives for multiple valued optimizers.

template<class TFixedImage , class TMovingImage >
static Pointer itk::MeanReciprocalSquareDifferenceImageToImageMetric< TFixedImage, TMovingImage >::New ( ) [static]

Method for creation through the object factory.

Reimplemented from itk::Object.

template<class TFixedImage , class TMovingImage >
void itk::MeanReciprocalSquareDifferenceImageToImageMetric< TFixedImage, TMovingImage >::operator= ( const Self ) [private]

Mutex lock to protect modification to the reference count

Reimplemented from itk::ImageToImageMetric< TFixedImage, TMovingImage >.

template<class TFixedImage , class TMovingImage >
void itk::MeanReciprocalSquareDifferenceImageToImageMetric< TFixedImage, TMovingImage >::PrintSelf ( std::ostream &  os,
Indent  indent 
) const [protected, virtual]

Set/Get Delta value. This value is used as the differential in the computation of the metric derivative using the finite differences method.

Reimplemented from itk::ImageToImageMetric< TFixedImage, TMovingImage >.

template<class TFixedImage , class TMovingImage >
virtual void itk::MeanReciprocalSquareDifferenceImageToImageMetric< TFixedImage, TMovingImage >::SetDelta ( double  _arg) [virtual]

Set/Get Delta value. This value is used as the differential in the computation of the metric derivative using the finite differences method.

template<class TFixedImage , class TMovingImage >
virtual void itk::MeanReciprocalSquareDifferenceImageToImageMetric< TFixedImage, TMovingImage >::SetLambda ( double  _arg) [virtual]

Set/Get Lambda value. This factor regulates the capture radius of this metric


Member Data Documentation

template<class TFixedImage , class TMovingImage >
double itk::MeanReciprocalSquareDifferenceImageToImageMetric< TFixedImage, TMovingImage >::m_Delta [private]
template<class TFixedImage , class TMovingImage >
double itk::MeanReciprocalSquareDifferenceImageToImageMetric< TFixedImage, TMovingImage >::m_Lambda [private]

The documentation for this class was generated from the following file: