ITK  4.0.0
Insight Segmentation and Registration Toolkit
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions
itk::PointSetToImageMetric< TFixedPointSet, TMovingImage > Class Template Reference

Computes similarity between a point set and an image. More...

#include <itkPointSetToImageMetric.h>

Inheritance diagram for itk::PointSetToImageMetric< TFixedPointSet, TMovingImage >:
Collaboration diagram for itk::PointSetToImageMetric< TFixedPointSet, TMovingImage >:

List of all members.

Public Types

typedef SmartPointer< const SelfConstPointer
typedef
Superclass::ParametersValueType 
CoordinateRepresentationType
typedef Superclass::DerivativeType DerivativeType
typedef
FixedPointSetType::ConstPointer 
FixedPointSetConstPointer
typedef TFixedPointSet FixedPointSetType
typedef
GradientImageFilterType::Pointer 
GradientImageFilterPointer
typedef
TransformType::InputPointType 
InputPointType
typedef InterpolatorType::Pointer InterpolatorPointer
typedef
InterpolateImageFunction
< MovingImageType,
CoordinateRepresentationType
InterpolatorType
typedef Superclass::MeasureType MeasureType
typedef
MovingImageType::ConstPointer 
MovingImageConstPointer
typedef TMovingImage::PixelType MovingImagePixelType
typedef TMovingImage MovingImageType
typedef
TransformType::OutputPointType 
OutputPointType
typedef Superclass::ParametersType ParametersType
typedef
FixedPointSetType::PointDataContainer::ConstIterator 
PointDataIterator
typedef SmartPointer< SelfPointer
typedef
FixedPointSetType::PointsContainer::ConstIterator 
PointIterator
typedef PointSetToImageMetric Self
typedef SingleValuedCostFunction Superclass
typedef TransformType::JacobianType TransformJacobianType
typedef
TransformType::ParametersType 
TransformParametersType
typedef TransformType::Pointer TransformPointer
typedef Transform
< CoordinateRepresentationType,
itkGetStaticConstMacro(MovingImageDimension),
itkGetStaticConstMacro(FixedPointSetDimension) > 
TransformType
typedef NumericTraits
< MovingImagePixelType >
::RealType 
RealType
typedef CovariantVector
< RealType,
itkGetStaticConstMacro(MovingImageDimension) > 
GradientPixelType
typedef Image
< GradientPixelType,
itkGetStaticConstMacro(MovingImageDimension) > 
GradientImageType
typedef SmartPointer
< GradientImageType
GradientImagePointer
typedef
GradientRecursiveGaussianImageFilter
< MovingImageType,
GradientImageType
GradientImageFilterType

Public Member Functions

virtual const FixedPointSetTypeGetFixedPointSet ()
virtual const GradientImageTypeGetGradientImage ()
virtual InterpolatorTypeGetInterpolator ()
virtual const MovingImageTypeGetMovingImage ()
virtual const char * GetNameOfClass () const
unsigned int GetNumberOfParameters (void) const
virtual const SizeValueTypeGetNumberOfPixelsCounted ()
virtual TransformTypeGetTransform ()
virtual void Initialize (void) throw ( ExceptionObject )
virtual void SetFixedPointSet (const FixedPointSetType *_arg)
virtual void SetInterpolator (InterpolatorType *_arg)
virtual void SetMovingImage (const MovingImageType *_arg)
virtual void SetTransform (TransformType *_arg)
void SetTransformParameters (const ParametersType &parameters) const
virtual void SetComputeGradient (bool _arg)
virtual const bool & GetComputeGradient ()

Static Public Attributes

static const unsigned int MovingImageDimension = TMovingImage::ImageDimension
static const unsigned int FixedPointSetDimension = TFixedPointSet::PointDimension

Protected Member Functions

 PointSetToImageMetric ()
void PrintSelf (std::ostream &os, Indent indent) const
virtual ~PointSetToImageMetric ()

Protected Attributes

bool m_ComputeGradient
FixedPointSetConstPointer m_FixedPointSet
GradientImagePointer m_GradientImage
InterpolatorPointer m_Interpolator
MovingImageConstPointer m_MovingImage
SizeValueType m_NumberOfPixelsCounted
TransformPointer m_Transform

Private Member Functions

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

Detailed Description

template<class TFixedPointSet, class TMovingImage>
class itk::PointSetToImageMetric< TFixedPointSet, TMovingImage >

Computes similarity between a point set and an image.

This Class is templated over the type of the input point-set and image. It expects a Transform and an Interpolator to be plugged in. This particular class is the base class for a hierarchy of similarity metrics.

This class computes a value that measures the similarity between the values associated with points in the point set and the transformed Moving image. The Interpolator is used to compute intensity values on non-grid positions resulting from mapping points through the Transform.

Definition at line 48 of file itkPointSetToImageMetric.h.


Member Typedef Documentation

template<class TFixedPointSet , class TMovingImage >
typedef SmartPointer< const Self > itk::PointSetToImageMetric< TFixedPointSet, TMovingImage >::ConstPointer
template<class TFixedPointSet , class TMovingImage >
typedef Superclass::ParametersValueType itk::PointSetToImageMetric< TFixedPointSet, TMovingImage >::CoordinateRepresentationType

Type used for representing point components

Definition at line 58 of file itkPointSetToImageMetric.h.

template<class TFixedPointSet , class TMovingImage >
typedef Superclass::DerivativeType itk::PointSetToImageMetric< TFixedPointSet, TMovingImage >::DerivativeType
template<class TFixedPointSet , class TMovingImage >
typedef FixedPointSetType::ConstPointer itk::PointSetToImageMetric< TFixedPointSet, TMovingImage >::FixedPointSetConstPointer
template<class TFixedPointSet , class TMovingImage >
typedef TFixedPointSet itk::PointSetToImageMetric< TFixedPointSet, TMovingImage >::FixedPointSetType
template<class TFixedPointSet , class TMovingImage >
typedef GradientImageFilterType::Pointer itk::PointSetToImageMetric< TFixedPointSet, TMovingImage >::GradientImageFilterPointer

Definition at line 110 of file itkPointSetToImageMetric.h.

template<class TFixedPointSet , class TMovingImage >
typedef GradientRecursiveGaussianImageFilter< MovingImageType, GradientImageType > itk::PointSetToImageMetric< TFixedPointSet, TMovingImage >::GradientImageFilterType

Gaussian filter to compute the gradient of the Moving Image

Definition at line 107 of file itkPointSetToImageMetric.h.

template<class TFixedPointSet , class TMovingImage >
typedef SmartPointer< GradientImageType > itk::PointSetToImageMetric< TFixedPointSet, TMovingImage >::GradientImagePointer

Gaussian filter to compute the gradient of the Moving Image

Definition at line 104 of file itkPointSetToImageMetric.h.

template<class TFixedPointSet , class TMovingImage >
typedef Image< GradientPixelType, itkGetStaticConstMacro(MovingImageDimension) > itk::PointSetToImageMetric< TFixedPointSet, TMovingImage >::GradientImageType

Gaussian filter to compute the gradient of the Moving Image

Definition at line 103 of file itkPointSetToImageMetric.h.

template<class TFixedPointSet , class TMovingImage >
typedef CovariantVector< RealType, itkGetStaticConstMacro(MovingImageDimension) > itk::PointSetToImageMetric< TFixedPointSet, TMovingImage >::GradientPixelType
template<class TFixedPointSet , class TMovingImage >
typedef TransformType::InputPointType itk::PointSetToImageMetric< TFixedPointSet, TMovingImage >::InputPointType
template<class TFixedPointSet , class TMovingImage >
typedef InterpolatorType::Pointer itk::PointSetToImageMetric< TFixedPointSet, TMovingImage >::InterpolatorPointer

Definition at line 112 of file itkPointSetToImageMetric.h.

template<class TFixedPointSet , class TMovingImage >
typedef InterpolateImageFunction< MovingImageType, CoordinateRepresentationType > itk::PointSetToImageMetric< TFixedPointSet, TMovingImage >::InterpolatorType

Type of the Interpolator Base class

Definition at line 96 of file itkPointSetToImageMetric.h.

template<class TFixedPointSet , class TMovingImage >
typedef Superclass::MeasureType itk::PointSetToImageMetric< TFixedPointSet, TMovingImage >::MeasureType
template<class TFixedPointSet , class TMovingImage >
typedef MovingImageType::ConstPointer itk::PointSetToImageMetric< TFixedPointSet, TMovingImage >::MovingImageConstPointer
template<class TFixedPointSet , class TMovingImage >
typedef TMovingImage::PixelType itk::PointSetToImageMetric< TFixedPointSet, TMovingImage >::MovingImagePixelType

Definition at line 65 of file itkPointSetToImageMetric.h.

template<class TFixedPointSet , class TMovingImage >
typedef TMovingImage itk::PointSetToImageMetric< TFixedPointSet, TMovingImage >::MovingImageType
template<class TFixedPointSet , class TMovingImage >
typedef TransformType::OutputPointType itk::PointSetToImageMetric< TFixedPointSet, TMovingImage >::OutputPointType
template<class TFixedPointSet , class TMovingImage >
typedef Superclass::ParametersType itk::PointSetToImageMetric< TFixedPointSet, TMovingImage >::ParametersType

Type of the parameters.

Reimplemented from itk::SingleValuedCostFunction.

Definition at line 121 of file itkPointSetToImageMetric.h.

template<class TFixedPointSet , class TMovingImage >
typedef FixedPointSetType::PointDataContainer::ConstIterator itk::PointSetToImageMetric< TFixedPointSet, TMovingImage >::PointDataIterator
template<class TFixedPointSet , class TMovingImage >
typedef SmartPointer< Self > itk::PointSetToImageMetric< TFixedPointSet, TMovingImage >::Pointer
template<class TFixedPointSet , class TMovingImage >
typedef FixedPointSetType::PointsContainer::ConstIterator itk::PointSetToImageMetric< TFixedPointSet, TMovingImage >::PointIterator
template<class TFixedPointSet , class TMovingImage >
typedef NumericTraits< MovingImagePixelType >::RealType itk::PointSetToImageMetric< TFixedPointSet, TMovingImage >::RealType
template<class TFixedPointSet , class TMovingImage >
typedef PointSetToImageMetric itk::PointSetToImageMetric< TFixedPointSet, TMovingImage >::Self
template<class TFixedPointSet , class TMovingImage >
typedef SingleValuedCostFunction itk::PointSetToImageMetric< TFixedPointSet, TMovingImage >::Superclass
template<class TFixedPointSet , class TMovingImage >
typedef TransformType::JacobianType itk::PointSetToImageMetric< TFixedPointSet, TMovingImage >::TransformJacobianType
template<class TFixedPointSet , class TMovingImage >
typedef TransformType::ParametersType itk::PointSetToImageMetric< TFixedPointSet, TMovingImage >::TransformParametersType
template<class TFixedPointSet , class TMovingImage >
typedef TransformType::Pointer itk::PointSetToImageMetric< TFixedPointSet, TMovingImage >::TransformPointer
template<class TFixedPointSet , class TMovingImage >
typedef Transform< CoordinateRepresentationType, itkGetStaticConstMacro(MovingImageDimension), itkGetStaticConstMacro(FixedPointSetDimension) > itk::PointSetToImageMetric< TFixedPointSet, TMovingImage >::TransformType

Constructor & Destructor Documentation

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

Definition at line 178 of file itkPointSetToImageMetric.h.

template<class TFixedPointSet , class TMovingImage >
itk::PointSetToImageMetric< TFixedPointSet, TMovingImage >::PointSetToImageMetric ( const Self ) [private]

Member Function Documentation

template<class TFixedPointSet , class TMovingImage >
virtual const bool& itk::PointSetToImageMetric< TFixedPointSet, TMovingImage >::GetComputeGradient ( ) [virtual]

Set/Get the flag for computing the image gradient. When ON the metric derivative is computed using the Jacobian of the transformation and the image gradient. When OFF the metric derivative is computed by finite differences. Mode ON results in higher speed at the price of large memory footprint. Mode OFF results in small memory footprint at the price of large computation time

template<class TFixedPointSet , class TMovingImage >
virtual const FixedPointSetType* itk::PointSetToImageMetric< TFixedPointSet, TMovingImage >::GetFixedPointSet ( ) [virtual]

Get the Fixed Image.

template<class TFixedPointSet , class TMovingImage >
virtual const GradientImageType* itk::PointSetToImageMetric< TFixedPointSet, TMovingImage >::GetGradientImage ( ) [virtual]

Get Gradient Image.

template<class TFixedPointSet , class TMovingImage >
virtual InterpolatorType* itk::PointSetToImageMetric< TFixedPointSet, TMovingImage >::GetInterpolator ( ) [virtual]

Get a pointer to the Interpolator.

template<class TFixedPointSet , class TMovingImage >
virtual const MovingImageType* itk::PointSetToImageMetric< TFixedPointSet, TMovingImage >::GetMovingImage ( ) [virtual]

Get the Moving Image.

template<class TFixedPointSet , class TMovingImage >
virtual const char* itk::PointSetToImageMetric< TFixedPointSet, TMovingImage >::GetNameOfClass ( ) const [virtual]
template<class TFixedPointSet , class TMovingImage >
unsigned int itk::PointSetToImageMetric< TFixedPointSet, TMovingImage >::GetNumberOfParameters ( void  ) const [inline, virtual]

Return the number of parameters required by the Transform

Implements itk::CostFunction.

Definition at line 168 of file itkPointSetToImageMetric.h.

template<class TFixedPointSet , class TMovingImage >
virtual const SizeValueType& itk::PointSetToImageMetric< TFixedPointSet, TMovingImage >::GetNumberOfPixelsCounted ( ) [virtual]

Get the number of pixels considered in the computation.

template<class TFixedPointSet , class TMovingImage >
virtual TransformType* itk::PointSetToImageMetric< TFixedPointSet, TMovingImage >::GetTransform ( ) [virtual]

Get a pointer to the Transform.

template<class TFixedPointSet , class TMovingImage >
virtual void itk::PointSetToImageMetric< TFixedPointSet, TMovingImage >::Initialize ( void  ) throw ( ExceptionObject ) [virtual]

Initialize the Metric by making sure that all the components are present and plugged together correctly

template<class TFixedPointSet , class TMovingImage >
void itk::PointSetToImageMetric< TFixedPointSet, TMovingImage >::operator= ( const Self ) [private]
template<class TFixedPointSet , class TMovingImage >
void itk::PointSetToImageMetric< TFixedPointSet, TMovingImage >::PrintSelf ( std::ostream &  os,
Indent  indent 
) const [protected, virtual]

Methods invoked by Print() to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.

Reimplemented from itk::CostFunction.

Reimplemented in itk::MeanReciprocalSquareDifferencePointSetToImageMetric< TFixedPointSet, TMovingImage >, and itk::NormalizedCorrelationPointSetToImageMetric< TFixedPointSet, TMovingImage >.

template<class TFixedPointSet , class TMovingImage >
virtual void itk::PointSetToImageMetric< TFixedPointSet, TMovingImage >::SetComputeGradient ( bool  _arg) [virtual]

Set/Get the flag for computing the image gradient. When ON the metric derivative is computed using the Jacobian of the transformation and the image gradient. When OFF the metric derivative is computed by finite differences. Mode ON results in higher speed at the price of large memory footprint. Mode OFF results in small memory footprint at the price of large computation time

template<class TFixedPointSet , class TMovingImage >
virtual void itk::PointSetToImageMetric< TFixedPointSet, TMovingImage >::SetFixedPointSet ( const FixedPointSetType _arg) [virtual]

Connect the Fixed Image.

template<class TFixedPointSet , class TMovingImage >
virtual void itk::PointSetToImageMetric< TFixedPointSet, TMovingImage >::SetInterpolator ( InterpolatorType _arg) [virtual]

Connect the Interpolator.

template<class TFixedPointSet , class TMovingImage >
virtual void itk::PointSetToImageMetric< TFixedPointSet, TMovingImage >::SetMovingImage ( const MovingImageType _arg) [virtual]

Connect the Moving Image.

template<class TFixedPointSet , class TMovingImage >
virtual void itk::PointSetToImageMetric< TFixedPointSet, TMovingImage >::SetTransform ( TransformType _arg) [virtual]

Connect the Transform.

template<class TFixedPointSet , class TMovingImage >
void itk::PointSetToImageMetric< TFixedPointSet, TMovingImage >::SetTransformParameters ( const ParametersType parameters) const

Set the parameters defining the Transform.


Member Data Documentation

template<class TFixedPointSet , class TMovingImage >
const unsigned int itk::PointSetToImageMetric< TFixedPointSet, TMovingImage >::FixedPointSetDimension = TFixedPointSet::PointDimension [static]

Constants for the image dimensions

Definition at line 76 of file itkPointSetToImageMetric.h.

template<class TFixedPointSet , class TMovingImage >
bool itk::PointSetToImageMetric< TFixedPointSet, TMovingImage >::m_ComputeGradient [protected]

Definition at line 191 of file itkPointSetToImageMetric.h.

template<class TFixedPointSet , class TMovingImage >
FixedPointSetConstPointer itk::PointSetToImageMetric< TFixedPointSet, TMovingImage >::m_FixedPointSet [protected]

Definition at line 183 of file itkPointSetToImageMetric.h.

template<class TFixedPointSet , class TMovingImage >
GradientImagePointer itk::PointSetToImageMetric< TFixedPointSet, TMovingImage >::m_GradientImage [protected]

Definition at line 193 of file itkPointSetToImageMetric.h.

template<class TFixedPointSet , class TMovingImage >
InterpolatorPointer itk::PointSetToImageMetric< TFixedPointSet, TMovingImage >::m_Interpolator [protected]

Definition at line 189 of file itkPointSetToImageMetric.h.

template<class TFixedPointSet , class TMovingImage >
MovingImageConstPointer itk::PointSetToImageMetric< TFixedPointSet, TMovingImage >::m_MovingImage [protected]

Definition at line 185 of file itkPointSetToImageMetric.h.

template<class TFixedPointSet , class TMovingImage >
SizeValueType itk::PointSetToImageMetric< TFixedPointSet, TMovingImage >::m_NumberOfPixelsCounted [mutable, protected]

Definition at line 181 of file itkPointSetToImageMetric.h.

template<class TFixedPointSet , class TMovingImage >
TransformPointer itk::PointSetToImageMetric< TFixedPointSet, TMovingImage >::m_Transform [mutable, protected]

Definition at line 187 of file itkPointSetToImageMetric.h.

template<class TFixedPointSet , class TMovingImage >
const unsigned int itk::PointSetToImageMetric< TFixedPointSet, TMovingImage >::MovingImageDimension = TMovingImage::ImageDimension [static]

Constants for the image dimensions

Definition at line 74 of file itkPointSetToImageMetric.h.


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