NifTK  16.4.1 - 0798f20
CMIC's Translational Medical Imaging Platform
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | List of all members
itk::MSDImageToImageMetric< TFixedImage, TMovingImage > Class Template Reference

Implements Mean of Squared Difference similarity measure. More...

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

Public Types

typedef MSDImageToImageMetric Self
 
typedef SimilarityMeasure
< TFixedImage, TMovingImage > 
Superclass
 
typedef SmartPointer< SelfPointer
 
typedef SmartPointer< const SelfConstPointer
 
typedef Superclass::MeasureType MeasureType
 
typedef Superclass::RealType RealType
 
typedef Superclass::DerivativeType DerivativeType
 
typedef
Superclass::GradientPixelType 
GradientPixelType
 
typedef
Superclass::TransformJacobianType 
TransformJacobianType
 
typedef
Superclass::FixedImagePixelType 
FixedImagePixelType
 
typedef
Superclass::MovingImagePixelType 
MovingImagePixelType
 
- Public Types inherited from itk::JacobianGradientSimilarityMeasure< TFixedImage, TMovingImage >
typedef
JacobianGradientSimilarityMeasure 
Self
 
typedef SimilarityMeasure
< TFixedImage, TMovingImage > 
Superclass
 
typedef SmartPointer< SelfPointer
 
typedef SmartPointer< const SelfConstPointer
 
typedef Superclass::MovingImageType MovingImageType
 
typedef Superclass::FixedImageType FixedImageType
 
typedef
Superclass::FixedImageConstPointer 
FixedImageConstPointer
 
typedef
Superclass::GradientImageType 
GradientImageType
 
typedef
Superclass::GradientPixelType 
GradientPixelType
 
typedef Superclass::DerivativeType DerivativeType
 
typedef Superclass::InputPointType InputPointType
 
typedef Superclass::OutputPointType OutputPointType
 
typedef Superclass::RealType RealType
 
typedef Superclass::MeasureType MeasureType
 
typedef
Superclass::TransformParametersType 
TransformParametersType
 
typedef
Superclass::TransformJacobianType 
TransformJacobianType
 
- Public Types inherited from itk::SimilarityMeasure< TFixedImage, TMovingImage >
typedef SimilarityMeasure Self
 
typedef
ImageToImageMetricWithConstraint
< TFixedImage, TMovingImage > 
Superclass
 
typedef SmartPointer< SelfPointer
 
typedef SmartPointer< const SelfConstPointer
 
typedef Superclass::TransformType TransformType
 
typedef itk::UCLBaseTransform
< double,
TFixedImage::ImageDimension,
TMovingImage::ImageDimension > 
UCLBaseTransformType
 
typedef
Superclass::TransformPointer 
TransformPointer
 
typedef
Superclass::TransformParametersType 
TransformParametersType
 
typedef
Superclass::TransformJacobianType 
TransformJacobianType
 
typedef Superclass::InputPointType InputPointType
 
typedef Superclass::OutputPointType OutputPointType
 
typedef Superclass::MeasureType MeasureType
 
typedef Superclass::DerivativeType DerivativeType
 
typedef Superclass::FixedImageType FixedImageType
 
typedef FixedImageType::SizeType FixedImageSizeType
 
typedef
Superclass::FixedImageType::PixelType 
FixedImagePixelType
 
typedef Superclass::MovingImageType MovingImageType
 
typedef MovingImageType::SizeType MovingImageSizeType
 
typedef
Superclass::MovingImageType::PixelType 
MovingImagePixelType
 
typedef
Superclass::FixedImageConstPointer 
FixedImageConstPointer
 
typedef
Superclass::MovingImageConstPointer 
MovingImageConstPointer
 
typedef ImageFileWriter
< TFixedImage > 
ImageFileWriterType
 
typedef
Superclass::InterpolatorType 
InterpolatorType
 
typedef Image< char,
TFixedImage::ImageDimension > 
MidwayImageType
 
typedef Image< float,
TFixedImage::ImageDimension > 
FloatImageType
 
typedef Image< unsigned char,
TFixedImage::ImageDimension > 
UnsignedCharImageType
 
typedef
SignedMaurerDistanceMapImageFilter
< UnsignedCharImageType,
FloatImageType
FixedDistanceMapImageFilterType
 
typedef
SignedMaurerDistanceMapImageFilter
< UnsignedCharImageType,
FloatImageType
MovingDistanceMapImageFilterType
 
typedef
LinearInterpolateImageFunction
< FloatImageType, double > 
DistanceMapLinearInterpolatorType
 
typedef
itk::EulerAffineTransform
< double,
TFixedImage::ImageDimension,
TMovingImage::ImageDimension > 
AffineTransformType
 
typedef const
ImageMaskSpatialObject
< TFixedImage::ImageDimension > 
FixedMaskType
 
typedef const
ImageMaskSpatialObject
< TMovingImage::ImageDimension > 
MovingMaskType
 
- Public Types inherited from itk::ImageToImageMetricWithConstraint< TFixedImage, TMovingImage >
typedef
ImageToImageMetricWithConstraint 
Self
 
typedef ImageToImageMetric
< TFixedImage, TMovingImage > 
Superclass
 
typedef SmartPointer< SelfPointer
 
typedef SmartPointer< const SelfConstPointer
 
typedef itk::Constraint ConstraintType
 
typedef ConstraintType::Pointer ConstraintPointer
 
typedef MetricDerivativeBridge
< TFixedImage, TMovingImage > 
MetricDerivativeBridgeType
 
typedef
MetricDerivativeBridgeType::Pointer 
MetricDerivativePointer
 
typedef Superclass::MeasureType MeasureType
 
typedef Superclass::DerivativeType DerivativeType
 
typedef Superclass::ParametersType TransformParametersType
 

Public Member Functions

virtual const char * GetClassName () const
 
- Public Member Functions inherited from itk::JacobianGradientSimilarityMeasure< TFixedImage, TMovingImage >
void GetCostFunctionDerivative (const TransformParametersType &parameters, DerivativeType &derivative) const
 
- Public Member Functions inherited from itk::SimilarityMeasure< TFixedImage, TMovingImage >
void Initialize () throw (ExceptionObject)
 
void InitializeIntensityBounds () throw (ExceptionObject)
 
void SetIntensityBounds (const FixedImagePixelType fixedLower, const FixedImagePixelType fixedUpper, const MovingImagePixelType movingLower, const MovingImagePixelType movingUpper)
 
virtual FixedImagePixelType GetFixedLowerBound () const
 
virtual FixedImagePixelType GetFixedUpperBound () const
 
virtual MovingImagePixelType GetMovingLowerBound () const
 
virtual MovingImagePixelType GetMovingUpperBound () const
 
virtual long int GetNumberOfFixedSamples ()
 
virtual long int GetNumberOfMovingSamples ()
 
virtual void SetTwoSidedMetric (bool _arg)
 
virtual bool GetTwoSidedMetric ()
 
virtual void SetWriteFixedImage (bool _arg)
 
virtual bool GetWriteFixedImage ()
 
virtual void SetFixedImageFileName (std::string _arg)
 
virtual std::string GetFixedImageFileName ()
 
virtual void SetFixedImageFileExt (std::string _arg)
 
virtual std::string GetFixedImageFileExt ()
 
virtual void SetWriteTransformedMovingImage (bool _arg)
 
virtual bool GetWriteTransformedMovingImage ()
 
virtual void SetTransformedMovingImageFileName (std::string _arg)
 
virtual std::string GetTransformedMovingImageFileName ()
 
virtual void SetTransformedMovingImageFileExt (std::string _arg)
 
virtual std::string GetTransformedMovingImageFileExt ()
 
virtual void SetDirectVoxelComparison (bool _arg)
 
virtual bool GetDirectVoxelComparison ()
 
virtual void SetSymmetricMetric (int _arg)
 
virtual int GetSymmetricMetric ()
 
virtual void SetIsUpdateMatrix (bool _arg)
 
virtual bool GetIsUpdateMatrix ()
 
virtual void SetTransformedMovingImagePadValue (MovingImagePixelType _arg)
 
virtual MovingImagePixelType GetTransformedMovingImagePadValue ()
 
virtual void SetUseWeighting (bool _arg)
 
virtual bool GetUseWeighting ()
 
virtual void SetWeightingDistanceThreshold (double _arg)
 
virtual double GetWeightingDistanceThreshold ()
 
virtual void SetFixedImageInterpolator (InterpolatorType *_arg)
 
virtual void SetMovingImageInterpolator (InterpolatorType *_arg)
 
virtual InterpolatorTypeGetFixedImageInterpolator ()
 
virtual InterpolatorTypeGetMovingImageInterpolator ()
 
virtual void SetFixedImageTransform (TransformType *_arg)
 
virtual TransformTypeGetFixedImageTransform ()
 
virtual void SetInitialiseIntensityBoundsUsingMask (bool _arg)
 
virtual bool GetInitialiseIntensityBoundsUsingMask ()
 
virtual void SetIsResampleWholeImage (bool _arg)
 
virtual bool GetIsResampleWholeImage ()
 
virtual bool ShouldBeMaximized ()
 
virtual const TFixedImage * GetTransformedMovingImage () const
 
virtual const TFixedImage * GetTransformedFixedImage () const
 
double GetMeasureOfParameterChange (TransformParametersType lastP, TransformParametersType p)
 
- Public Member Functions inherited from itk::ImageToImageMetricWithConstraint< TFixedImage, TMovingImage >
virtual void SetDerivativeBridge (MetricDerivativeBridgeType *_arg)
 
virtual
MetricDerivativeBridgeType
GetDerivativeBridge ()
 
virtual void SetConstraint (ConstraintType *_arg)
 
virtual ConstraintTypeGetConstraint ()
 
virtual void SetWeightingFactor (double _arg)
 
virtual double GetWeightingFactor ()
 
virtual void SetUseConstraintGradient (bool _arg)
 
virtual bool GetUseConstraintGradient () const
 
virtual void SetPrintOutMetricEvaluation (bool _arg)
 
virtual bool GetPrintOutMetricEvaluation ()
 
virtual MeasureType GetValue (const TransformParametersType &parameters) const
 
virtual void GetConstraintDerivative (const TransformParametersType &parameters, DerivativeType &derivative) const
 
virtual void GetDerivative (const TransformParametersType &parameters, DerivativeType &derivative) const
 
virtual void GetValueAndDerivative (const TransformParametersType &parameters, MeasureType &Value, DerivativeType &derivative) const
 

Static Public Member Functions

static Pointer New ()
 

Protected Member Functions

 MSDImageToImageMetric ()
 
virtual ~MSDImageToImageMetric ()
 
void ResetCostFunction ()
 
void AggregateCostFunctionPair (FixedImagePixelType fixedValue, MovingImagePixelType movingValue)
 
MeasureType FinalizeCostFunction ()
 
void ResetDerivativeComputations ()
 
void ComputeDerivativeValue (DerivativeType &derivative, const GradientPixelType &gradientPixel, const TransformJacobianType &jacobian, unsigned int dimensions, unsigned int parameterNumber, RealType fixedValue, RealType movingValue)
 
void FinalizeDerivative (DerivativeType &derivative)
 
- Protected Member Functions inherited from itk::JacobianGradientSimilarityMeasure< TFixedImage, TMovingImage >
 JacobianGradientSimilarityMeasure ()
 
virtual ~JacobianGradientSimilarityMeasure ()
 
void PrintSelf (std::ostream &os, Indent indent) const
 
- Protected Member Functions inherited from itk::SimilarityMeasure< TFixedImage, TMovingImage >
 SimilarityMeasure ()
 
virtual ~SimilarityMeasure ()
 
void PrintSelf (std::ostream &os, Indent indent) const
 
virtual MeasureType GetSimilarity (const TransformParametersType &parameters) const
 
virtual void AggregateCostFunctionPair (FixedImagePixelType fixedValue, MovingImagePixelType movingValue)=0
 
virtual void AggregateCostFunctionPairWithWeighting (FixedImagePixelType fixedValue, MovingImagePixelType movingValue, double weight)
 
void WriteImage (const TFixedImage *image, std::string filename) const
 
virtual MeasureType GetSymmetricSimilarity (const TransformParametersType &parameters)
 
virtual MeasureType GetSymmetricSimilarityAtHalfway (const TransformParametersType &parameters)
 
virtual MeasureType GetSimilarityUsingFixedAndMovingImageTransforms (const TransformParametersType &parameters)
 
virtual void InitializeSymmetricMetric ()
 
virtual void InitializeDistanceWeightings ()
 
- Protected Member Functions inherited from itk::ImageToImageMetricWithConstraint< TFixedImage, TMovingImage >
 ImageToImageMetricWithConstraint ()
 
virtual ~ImageToImageMetricWithConstraint ()
 
void PrintSelf (std::ostream &os, Indent indent) const
 

Additional Inherited Members

- Static Public Attributes inherited from itk::SimilarityMeasure< TFixedImage, TMovingImage >
static const int SYMMETRIC_METRIC_AVERAGE
 
static const int SYMMETRIC_METRIC_MID_WAY
 
static const int SYMMETRIC_METRIC_BOTH_FIXED_AND_MOVING_TRANSFORM
 
- Protected Attributes inherited from itk::SimilarityMeasure< TFixedImage, TMovingImage >
TFixedImage::Pointer m_TransformedMovingImage
 
TFixedImage::Pointer m_TransformedFixedImage
 
InterpolatorType::Pointer m_FixedImageInterpolator
 
InterpolatorType::Pointer m_MovingImageInterpolator
 
FixedImagePixelType m_FixedLowerBound
 
FixedImagePixelType m_FixedUpperBound
 
MovingImagePixelType m_MovingLowerBound
 
MovingImagePixelType m_MovingUpperBound
 
bool m_UseWeighting
 
double m_WeightingDistanceThreshold
 
MidwayImageType::Pointer m_MidwayImage
 
FixedDistanceMapImageFilterType::Pointer m_FixedDistanceMap
 
MovingDistanceMapImageFilterType::Pointer m_MovingDistanceMap
 
DistanceMapLinearInterpolatorType::Pointer m_FixedDistanceMapInterpolator
 
DistanceMapLinearInterpolatorType::Pointer m_MovingDistanceMapInterpolator
 
TransformType::Pointer m_FixedImageTransform
 
bool m_InitialiseIntensityBoundsUsingMask
 
bool m_IsResampleWholeImage
 
- Protected Attributes inherited from itk::ImageToImageMetricWithConstraint< TFixedImage, TMovingImage >
MetricDerivativePointer m_DerivativeBridge
 
ConstraintPointer m_Constraint
 
double m_WeightingFactor
 
bool m_UseConstraintGradient
 
bool m_PrintOutMetricEvaluation
 

Detailed Description

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

Implements Mean of Squared Difference similarity measure.

Member Typedef Documentation

template<class TFixedImage , class TMovingImage >
typedef SmartPointer<const Self> itk::MSDImageToImageMetric< TFixedImage, TMovingImage >::ConstPointer
template<class TFixedImage , class TMovingImage >
typedef Superclass::DerivativeType itk::MSDImageToImageMetric< TFixedImage, TMovingImage >::DerivativeType
template<class TFixedImage , class TMovingImage >
typedef Superclass::FixedImagePixelType itk::MSDImageToImageMetric< TFixedImage, TMovingImage >::FixedImagePixelType
template<class TFixedImage , class TMovingImage >
typedef Superclass::GradientPixelType itk::MSDImageToImageMetric< TFixedImage, TMovingImage >::GradientPixelType
template<class TFixedImage , class TMovingImage >
typedef Superclass::MeasureType itk::MSDImageToImageMetric< TFixedImage, TMovingImage >::MeasureType
template<class TFixedImage , class TMovingImage >
typedef Superclass::MovingImagePixelType itk::MSDImageToImageMetric< TFixedImage, TMovingImage >::MovingImagePixelType
template<class TFixedImage , class TMovingImage >
typedef SmartPointer<Self> itk::MSDImageToImageMetric< TFixedImage, TMovingImage >::Pointer
template<class TFixedImage , class TMovingImage >
typedef Superclass::RealType itk::MSDImageToImageMetric< TFixedImage, TMovingImage >::RealType
template<class TFixedImage , class TMovingImage >
typedef MSDImageToImageMetric itk::MSDImageToImageMetric< TFixedImage, TMovingImage >::Self

Standard class typedefs.

template<class TFixedImage , class TMovingImage >
typedef SimilarityMeasure<TFixedImage, TMovingImage > itk::MSDImageToImageMetric< TFixedImage, TMovingImage >::Superclass
template<class TFixedImage , class TMovingImage >
typedef Superclass::TransformJacobianType itk::MSDImageToImageMetric< TFixedImage, TMovingImage >::TransformJacobianType

Constructor & Destructor Documentation

template<class TFixedImage , class TMovingImage >
itk::MSDImageToImageMetric< TFixedImage, TMovingImage >::MSDImageToImageMetric ( )
inlineprotected
template<class TFixedImage , class TMovingImage >
virtual itk::MSDImageToImageMetric< TFixedImage, TMovingImage >::~MSDImageToImageMetric ( )
inlineprotectedvirtual

Member Function Documentation

template<class TFixedImage , class TMovingImage >
void itk::MSDImageToImageMetric< TFixedImage, TMovingImage >::AggregateCostFunctionPair ( FixedImagePixelType  fixedValue,
MovingImagePixelType  movingValue 
)
inlineprotected

In this method, we calculate sum of squared difference.

template<class TFixedImage , class TMovingImage >
void itk::MSDImageToImageMetric< TFixedImage, TMovingImage >::ComputeDerivativeValue ( DerivativeType derivative,
const GradientPixelType gradientPixel,
const TransformJacobianType jacobian,
unsigned int  dimensions,
unsigned int  parameterNumber,
RealType  fixedValue,
RealType  movingValue 
)
inlineprotectedvirtual

Called repeatedly by base class to calculate derivative.

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

template<class TFixedImage , class TMovingImage >
MeasureType itk::MSDImageToImageMetric< TFixedImage, TMovingImage >::FinalizeCostFunction ( )
inlineprotectedvirtual

In this method, we do any final aggregating, in this case none.

Implements itk::SimilarityMeasure< TFixedImage, TMovingImage >.

template<class TFixedImage , class TMovingImage >
void itk::MSDImageToImageMetric< TFixedImage, TMovingImage >::FinalizeDerivative ( DerivativeType derivative)
inlineprotectedvirtual

Called at the end of the derivative calcs. In this case, as its MeanSquaredDifference, we divide by number of samples.

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

template<class TFixedImage , class TMovingImage >
virtual const char* itk::MSDImageToImageMetric< TFixedImage, TMovingImage >::GetClassName ( ) const
virtual

Run-time type information (and related methods).

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

template<class TFixedImage , class TMovingImage >
static Pointer itk::MSDImageToImageMetric< TFixedImage, TMovingImage >::New ( )
static

Method for creation through the object factory.

template<class TFixedImage , class TMovingImage >
void itk::MSDImageToImageMetric< TFixedImage, TMovingImage >::ResetCostFunction ( )
inlineprotectedvirtual

Called at the start of each evaluation.

Implements itk::SimilarityMeasure< TFixedImage, TMovingImage >.

template<class TFixedImage , class TMovingImage >
void itk::MSDImageToImageMetric< TFixedImage, TMovingImage >::ResetDerivativeComputations ( )
inlineprotectedvirtual

Called at the start of the derivative calculation.

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


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