Main Page   Groups   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Concepts

itk::EuclideanDistancePointMetric< TFixedPointSet, TMovingPointSet, TDistanceMap > Class Template Reference
[Similarity Metrics of Registration Methods]

Computes the minimum distance between a moving point-set and a fixed point-set. A vector of minimum closest point distance is created for each point in the moving point-set. No correspondance is needed. For speed consideration, the point-set with the minimum number of points should be used as the moving point-set. If the number of points is high, the possibility of setting a distance map should improve the speed of the closest point computation. More...

#include <itkEuclideanDistancePointMetric.h>

Inheritance diagram for itk::EuclideanDistancePointMetric< TFixedPointSet, TMovingPointSet, TDistanceMap >:

Inheritance graph
[legend]
Collaboration diagram for itk::EuclideanDistancePointMetric< TFixedPointSet, TMovingPointSet, TDistanceMap >:

Collaboration graph
[legend]
List of all members.

Public Types

typedef EuclideanDistancePointMetric Self
typedef PointSetToPointSetMetric<
TFixedPointSet, TMovingPointSet > 
Superclass
typedef SmartPointer< SelfPointer
typedef SmartPointer< const
Self
ConstPointer
typedef Superclass::TransformType TransformType
typedef Superclass::TransformPointer TransformPointer
typedef Superclass::TransformParametersType TransformParametersType
typedef Superclass::TransformJacobianType TransformJacobianType
typedef Superclass::MeasureType MeasureType
typedef Superclass::DerivativeType DerivativeType
typedef Superclass::FixedPointSetType FixedPointSetType
typedef Superclass::MovingPointSetType MovingPointSetType
typedef Superclass::FixedPointSetConstPointer FixedPointSetConstPointer
typedef Superclass::MovingPointSetConstPointer MovingPointSetConstPointer
typedef Superclass::PointIterator PointIterator
typedef Superclass::PointDataIterator PointDataIterator
typedef TDistanceMap DistanceMapType
typedef DistanceMapType::Pointer DistanceMapPointer

Public Member Functions

virtual const char * GetNameOfClass () const
unsigned int GetNumberOfValues () const
void GetDerivative (const TransformParametersType &parameters, DerivativeType &Derivative) const
MeasureType GetValue (const TransformParametersType &parameters) const
void GetValueAndDerivative (const TransformParametersType &parameters, MeasureType &Value, DerivativeType &Derivative) const
virtual void SetDistanceMap (DistanceMapType *_arg)
virtual const DistanceMapTypeGetDistanceMap ()
virtual void SetComputeSquaredDistance (bool _arg)
virtual bool GetComputeSquaredDistance ()
virtual void ComputeSquaredDistanceOn ()
virtual void ComputeSquaredDistanceOff ()

Static Public Member Functions

Pointer New ()

Protected Member Functions

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

Detailed Description

template<class TFixedPointSet, class TMovingPointSet, class TDistanceMap = ::itk::Image<unsigned short,::itk::GetPointSetDimension<TMovingPointSet>::PointDimension>>
class itk::EuclideanDistancePointMetric< TFixedPointSet, TMovingPointSet, TDistanceMap >

Computes the minimum distance between a moving point-set and a fixed point-set. A vector of minimum closest point distance is created for each point in the moving point-set. No correspondance is needed. For speed consideration, the point-set with the minimum number of points should be used as the moving point-set. If the number of points is high, the possibility of setting a distance map should improve the speed of the closest point computation.

Reference: "A Method for Registration of 3-D Shapes", IEEE PAMI, Vol 14, No. 2, February 1992

Definition at line 45 of file itkEuclideanDistancePointMetric.h.


Member Typedef Documentation

template<class TFixedPointSet, class TMovingPointSet, class TDistanceMap = ::itk::Image<unsigned short,::itk::GetPointSetDimension<TMovingPointSet>::PointDimension>>
typedef SmartPointer<const Self> itk::EuclideanDistancePointMetric< TFixedPointSet, TMovingPointSet, TDistanceMap >::ConstPointer
 

Reimplemented from itk::PointSetToPointSetMetric< TFixedPointSet, TMovingPointSet >.

Definition at line 55 of file itkEuclideanDistancePointMetric.h.

template<class TFixedPointSet, class TMovingPointSet, class TDistanceMap = ::itk::Image<unsigned short,::itk::GetPointSetDimension<TMovingPointSet>::PointDimension>>
typedef Superclass::DerivativeType itk::EuclideanDistancePointMetric< TFixedPointSet, TMovingPointSet, TDistanceMap >::DerivativeType
 

Type of the derivative.

Reimplemented from itk::PointSetToPointSetMetric< TFixedPointSet, TMovingPointSet >.

Definition at line 70 of file itkEuclideanDistancePointMetric.h.

template<class TFixedPointSet, class TMovingPointSet, class TDistanceMap = ::itk::Image<unsigned short,::itk::GetPointSetDimension<TMovingPointSet>::PointDimension>>
typedef DistanceMapType::Pointer itk::EuclideanDistancePointMetric< TFixedPointSet, TMovingPointSet, TDistanceMap >::DistanceMapPointer
 

Definition at line 80 of file itkEuclideanDistancePointMetric.h.

template<class TFixedPointSet, class TMovingPointSet, class TDistanceMap = ::itk::Image<unsigned short,::itk::GetPointSetDimension<TMovingPointSet>::PointDimension>>
typedef TDistanceMap itk::EuclideanDistancePointMetric< TFixedPointSet, TMovingPointSet, TDistanceMap >::DistanceMapType
 

Definition at line 79 of file itkEuclideanDistancePointMetric.h.

template<class TFixedPointSet, class TMovingPointSet, class TDistanceMap = ::itk::Image<unsigned short,::itk::GetPointSetDimension<TMovingPointSet>::PointDimension>>
typedef Superclass::FixedPointSetConstPointer itk::EuclideanDistancePointMetric< TFixedPointSet, TMovingPointSet, TDistanceMap >::FixedPointSetConstPointer
 

Reimplemented from itk::PointSetToPointSetMetric< TFixedPointSet, TMovingPointSet >.

Definition at line 73 of file itkEuclideanDistancePointMetric.h.

template<class TFixedPointSet, class TMovingPointSet, class TDistanceMap = ::itk::Image<unsigned short,::itk::GetPointSetDimension<TMovingPointSet>::PointDimension>>
typedef Superclass::FixedPointSetType itk::EuclideanDistancePointMetric< TFixedPointSet, TMovingPointSet, TDistanceMap >::FixedPointSetType
 

Type of the fixed Pointset.

Reimplemented from itk::PointSetToPointSetMetric< TFixedPointSet, TMovingPointSet >.

Definition at line 71 of file itkEuclideanDistancePointMetric.h.

template<class TFixedPointSet, class TMovingPointSet, class TDistanceMap = ::itk::Image<unsigned short,::itk::GetPointSetDimension<TMovingPointSet>::PointDimension>>
typedef Superclass::MeasureType itk::EuclideanDistancePointMetric< TFixedPointSet, TMovingPointSet, TDistanceMap >::MeasureType
 

Type of the measure.

Reimplemented from itk::PointSetToPointSetMetric< TFixedPointSet, TMovingPointSet >.

Definition at line 69 of file itkEuclideanDistancePointMetric.h.

template<class TFixedPointSet, class TMovingPointSet, class TDistanceMap = ::itk::Image<unsigned short,::itk::GetPointSetDimension<TMovingPointSet>::PointDimension>>
typedef Superclass::MovingPointSetConstPointer itk::EuclideanDistancePointMetric< TFixedPointSet, TMovingPointSet, TDistanceMap >::MovingPointSetConstPointer
 

Reimplemented from itk::PointSetToPointSetMetric< TFixedPointSet, TMovingPointSet >.

Definition at line 74 of file itkEuclideanDistancePointMetric.h.

template<class TFixedPointSet, class TMovingPointSet, class TDistanceMap = ::itk::Image<unsigned short,::itk::GetPointSetDimension<TMovingPointSet>::PointDimension>>
typedef Superclass::MovingPointSetType itk::EuclideanDistancePointMetric< TFixedPointSet, TMovingPointSet, TDistanceMap >::MovingPointSetType
 

Type of the moving Pointset.

Reimplemented from itk::PointSetToPointSetMetric< TFixedPointSet, TMovingPointSet >.

Definition at line 72 of file itkEuclideanDistancePointMetric.h.

template<class TFixedPointSet, class TMovingPointSet, class TDistanceMap = ::itk::Image<unsigned short,::itk::GetPointSetDimension<TMovingPointSet>::PointDimension>>
typedef Superclass::PointDataIterator itk::EuclideanDistancePointMetric< TFixedPointSet, TMovingPointSet, TDistanceMap >::PointDataIterator
 

Reimplemented from itk::PointSetToPointSetMetric< TFixedPointSet, TMovingPointSet >.

Definition at line 77 of file itkEuclideanDistancePointMetric.h.

template<class TFixedPointSet, class TMovingPointSet, class TDistanceMap = ::itk::Image<unsigned short,::itk::GetPointSetDimension<TMovingPointSet>::PointDimension>>
typedef SmartPointer<Self> itk::EuclideanDistancePointMetric< TFixedPointSet, TMovingPointSet, TDistanceMap >::Pointer
 

Reimplemented from itk::PointSetToPointSetMetric< TFixedPointSet, TMovingPointSet >.

Definition at line 54 of file itkEuclideanDistancePointMetric.h.

template<class TFixedPointSet, class TMovingPointSet, class TDistanceMap = ::itk::Image<unsigned short,::itk::GetPointSetDimension<TMovingPointSet>::PointDimension>>
typedef Superclass::PointIterator itk::EuclideanDistancePointMetric< TFixedPointSet, TMovingPointSet, TDistanceMap >::PointIterator
 

Reimplemented from itk::PointSetToPointSetMetric< TFixedPointSet, TMovingPointSet >.

Definition at line 76 of file itkEuclideanDistancePointMetric.h.

template<class TFixedPointSet, class TMovingPointSet, class TDistanceMap = ::itk::Image<unsigned short,::itk::GetPointSetDimension<TMovingPointSet>::PointDimension>>
typedef EuclideanDistancePointMetric itk::EuclideanDistancePointMetric< TFixedPointSet, TMovingPointSet, TDistanceMap >::Self
 

Standard class typedefs.

Reimplemented from itk::PointSetToPointSetMetric< TFixedPointSet, TMovingPointSet >.

Definition at line 51 of file itkEuclideanDistancePointMetric.h.

template<class TFixedPointSet, class TMovingPointSet, class TDistanceMap = ::itk::Image<unsigned short,::itk::GetPointSetDimension<TMovingPointSet>::PointDimension>>
typedef PointSetToPointSetMetric<TFixedPointSet, TMovingPointSet > itk::EuclideanDistancePointMetric< TFixedPointSet, TMovingPointSet, TDistanceMap >::Superclass
 

Reimplemented from itk::PointSetToPointSetMetric< TFixedPointSet, TMovingPointSet >.

Definition at line 52 of file itkEuclideanDistancePointMetric.h.

template<class TFixedPointSet, class TMovingPointSet, class TDistanceMap = ::itk::Image<unsigned short,::itk::GetPointSetDimension<TMovingPointSet>::PointDimension>>
typedef Superclass::TransformJacobianType itk::EuclideanDistancePointMetric< TFixedPointSet, TMovingPointSet, TDistanceMap >::TransformJacobianType
 

Reimplemented from itk::PointSetToPointSetMetric< TFixedPointSet, TMovingPointSet >.

Definition at line 67 of file itkEuclideanDistancePointMetric.h.

template<class TFixedPointSet, class TMovingPointSet, class TDistanceMap = ::itk::Image<unsigned short,::itk::GetPointSetDimension<TMovingPointSet>::PointDimension>>
typedef Superclass::TransformParametersType itk::EuclideanDistancePointMetric< TFixedPointSet, TMovingPointSet, TDistanceMap >::TransformParametersType
 

Reimplemented from itk::PointSetToPointSetMetric< TFixedPointSet, TMovingPointSet >.

Definition at line 66 of file itkEuclideanDistancePointMetric.h.

template<class TFixedPointSet, class TMovingPointSet, class TDistanceMap = ::itk::Image<unsigned short,::itk::GetPointSetDimension<TMovingPointSet>::PointDimension>>
typedef Superclass::TransformPointer itk::EuclideanDistancePointMetric< TFixedPointSet, TMovingPointSet, TDistanceMap >::TransformPointer
 

Reimplemented from itk::PointSetToPointSetMetric< TFixedPointSet, TMovingPointSet >.

Definition at line 65 of file itkEuclideanDistancePointMetric.h.

template<class TFixedPointSet, class TMovingPointSet, class TDistanceMap = ::itk::Image<unsigned short,::itk::GetPointSetDimension<TMovingPointSet>::PointDimension>>
typedef Superclass::TransformType itk::EuclideanDistancePointMetric< TFixedPointSet, TMovingPointSet, TDistanceMap >::TransformType
 

Types transferred from the base class

Reimplemented from itk::PointSetToPointSetMetric< TFixedPointSet, TMovingPointSet >.

Definition at line 64 of file itkEuclideanDistancePointMetric.h.


Constructor & Destructor Documentation

template<class TFixedPointSet, class TMovingPointSet, class TDistanceMap = ::itk::Image<unsigned short,::itk::GetPointSetDimension<TMovingPointSet>::PointDimension>>
itk::EuclideanDistancePointMetric< TFixedPointSet, TMovingPointSet, TDistanceMap >::EuclideanDistancePointMetric  )  [protected]
 

template<class TFixedPointSet, class TMovingPointSet, class TDistanceMap = ::itk::Image<unsigned short,::itk::GetPointSetDimension<TMovingPointSet>::PointDimension>>
virtual itk::EuclideanDistancePointMetric< TFixedPointSet, TMovingPointSet, TDistanceMap >::~EuclideanDistancePointMetric  )  [inline, protected, virtual]
 

Definition at line 110 of file itkEuclideanDistancePointMetric.h.


Member Function Documentation

template<class TFixedPointSet, class TMovingPointSet, class TDistanceMap = ::itk::Image<unsigned short,::itk::GetPointSetDimension<TMovingPointSet>::PointDimension>>
virtual void itk::EuclideanDistancePointMetric< TFixedPointSet, TMovingPointSet, TDistanceMap >::ComputeSquaredDistanceOff  )  [virtual]
 

Set/Get if the distance should be squared. Default is true for computation speed

template<class TFixedPointSet, class TMovingPointSet, class TDistanceMap = ::itk::Image<unsigned short,::itk::GetPointSetDimension<TMovingPointSet>::PointDimension>>
virtual void itk::EuclideanDistancePointMetric< TFixedPointSet, TMovingPointSet, TDistanceMap >::ComputeSquaredDistanceOn  )  [virtual]
 

Set/Get if the distance should be squared. Default is true for computation speed

template<class TFixedPointSet, class TMovingPointSet, class TDistanceMap = ::itk::Image<unsigned short,::itk::GetPointSetDimension<TMovingPointSet>::PointDimension>>
virtual bool itk::EuclideanDistancePointMetric< TFixedPointSet, TMovingPointSet, TDistanceMap >::GetComputeSquaredDistance  )  [virtual]
 

Set/Get if the distance should be squared. Default is true for computation speed

template<class TFixedPointSet, class TMovingPointSet, class TDistanceMap = ::itk::Image<unsigned short,::itk::GetPointSetDimension<TMovingPointSet>::PointDimension>>
void itk::EuclideanDistancePointMetric< TFixedPointSet, TMovingPointSet, TDistanceMap >::GetDerivative const TransformParametersType parameters,
DerivativeType Derivative
const
 

Get the derivatives of the match measure.

template<class TFixedPointSet, class TMovingPointSet, class TDistanceMap = ::itk::Image<unsigned short,::itk::GetPointSetDimension<TMovingPointSet>::PointDimension>>
virtual const DistanceMapType* itk::EuclideanDistancePointMetric< TFixedPointSet, TMovingPointSet, TDistanceMap >::GetDistanceMap  )  [virtual]
 

Set/Get the distance map

template<class TFixedPointSet, class TMovingPointSet, class TDistanceMap = ::itk::Image<unsigned short,::itk::GetPointSetDimension<TMovingPointSet>::PointDimension>>
virtual const char* itk::EuclideanDistancePointMetric< TFixedPointSet, TMovingPointSet, TDistanceMap >::GetNameOfClass  )  const [virtual]
 

Run-time type information (and related methods).

Reimplemented from itk::PointSetToPointSetMetric< TFixedPointSet, TMovingPointSet >.

template<class TFixedPointSet, class TMovingPointSet, class TDistanceMap = ::itk::Image<unsigned short,::itk::GetPointSetDimension<TMovingPointSet>::PointDimension>>
unsigned int itk::EuclideanDistancePointMetric< TFixedPointSet, TMovingPointSet, TDistanceMap >::GetNumberOfValues  )  const [virtual]
 

Get the number of values

Implements itk::MultipleValuedCostFunction.

template<class TFixedPointSet, class TMovingPointSet, class TDistanceMap = ::itk::Image<unsigned short,::itk::GetPointSetDimension<TMovingPointSet>::PointDimension>>
MeasureType itk::EuclideanDistancePointMetric< TFixedPointSet, TMovingPointSet, TDistanceMap >::GetValue const TransformParametersType parameters  )  const
 

Get the value for single valued optimizers.

template<class TFixedPointSet, class TMovingPointSet, class TDistanceMap = ::itk::Image<unsigned short,::itk::GetPointSetDimension<TMovingPointSet>::PointDimension>>
void itk::EuclideanDistancePointMetric< TFixedPointSet, TMovingPointSet, TDistanceMap >::GetValueAndDerivative const TransformParametersType parameters,
MeasureType Value,
DerivativeType Derivative
const
 

Get value and derivatives for multiple valued optimizers.

template<class TFixedPointSet, class TMovingPointSet, class TDistanceMap = ::itk::Image<unsigned short,::itk::GetPointSetDimension<TMovingPointSet>::PointDimension>>
Pointer itk::EuclideanDistancePointMetric< TFixedPointSet, TMovingPointSet, TDistanceMap >::New  )  [static]
 

Method for creation through the object factory.

Reimplemented from itk::Object.

template<class TFixedPointSet, class TMovingPointSet, class TDistanceMap = ::itk::Image<unsigned short,::itk::GetPointSetDimension<TMovingPointSet>::PointDimension>>
void itk::EuclideanDistancePointMetric< TFixedPointSet, TMovingPointSet, TDistanceMap >::PrintSelf std::ostream &  os,
Indent  indent
const [protected, virtual]
 

PrintSelf funtion

Reimplemented from itk::PointSetToPointSetMetric< TFixedPointSet, TMovingPointSet >.

template<class TFixedPointSet, class TMovingPointSet, class TDistanceMap = ::itk::Image<unsigned short,::itk::GetPointSetDimension<TMovingPointSet>::PointDimension>>
virtual void itk::EuclideanDistancePointMetric< TFixedPointSet, TMovingPointSet, TDistanceMap >::SetComputeSquaredDistance bool  _arg  )  [virtual]
 

Set/Get if the distance should be squared. Default is true for computation speed

template<class TFixedPointSet, class TMovingPointSet, class TDistanceMap = ::itk::Image<unsigned short,::itk::GetPointSetDimension<TMovingPointSet>::PointDimension>>
virtual void itk::EuclideanDistancePointMetric< TFixedPointSet, TMovingPointSet, TDistanceMap >::SetDistanceMap DistanceMapType _arg  )  [virtual]
 

Set/Get the distance map


The documentation for this class was generated from the following file:
Generated at Thu May 25 00:50:54 2006 for ITK by doxygen 1.3.5 written by Dimitri van Heesch, © 1997-2000