go home Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages
itkCorrespondingPointsEuclideanDistancePointMetric.h
Go to the documentation of this file.
1 /*======================================================================
2 
3  This file is part of the elastix software.
4 
5  Copyright (c) University Medical Center Utrecht. All rights reserved.
6  See src/CopyrightElastix.txt or http://elastix.isi.uu.nl/legal.php for
7  details.
8 
9  This software is distributed WITHOUT ANY WARRANTY; without even
10  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
11  PURPOSE. See the above copyright notices for more information.
12 
13 ======================================================================*/
14 #ifndef __itkCorrespondingPointsEuclideanDistancePointMetric_h
15 #define __itkCorrespondingPointsEuclideanDistancePointMetric_h
16 
18 #include "itkPoint.h"
19 #include "itkPointSet.h"
20 #include "itkImage.h"
21 
22 namespace itk
23 {
24 
34 template< class TFixedPointSet, class TMovingPointSet >
36  public SingleValuedPointSetToPointSetMetric< TFixedPointSet, TMovingPointSet >
37 {
38 public:
39 
43  TFixedPointSet, TMovingPointSet > Superclass;
44  typedef SmartPointer< Self > Pointer;
45  typedef SmartPointer< const Self > ConstPointer;
46 
48  itkNewMacro( Self );
49 
53 
59 
67 
70 
73  typedef typename OutputPointType::CoordRepType CoordRepType;
75 
77 
79  MeasureType GetValue( const TransformParametersType & parameters ) const;
80 
82  void GetDerivative( const TransformParametersType & parameters,
83  DerivativeType & Derivative ) const;
84 
86  void GetValueAndDerivative( const TransformParametersType & parameters,
87  MeasureType & Value, DerivativeType & Derivative ) const;
88 
89 protected:
90 
93 
94 private:
95 
96  CorrespondingPointsEuclideanDistancePointMetric( const Self & ); // purposely not implemented
97  void operator=( const Self & ); // purposely not implemented
98 
99 };
100 
101 } // end namespace itk
102 
103 #ifndef ITK_MANUAL_INSTANTIATION
104 #include "itkCorrespondingPointsEuclideanDistancePointMetric.hxx"
105 #endif
106 
107 #endif
SingleValuedPointSetToPointSetMetric< TFixedPointSet, TMovingPointSet > Superclass
void GetDerivative(const TransformParametersType &parameters, DerivativeType &Derivative) const
FixedPointSetType::PointsContainer::ConstIterator PointIterator
MeasureType GetValue(const TransformParametersType &parameters) const
TransformType::NonZeroJacobianIndicesType NonZeroJacobianIndicesType
FixedPointSetType::PointDataContainer::ConstIterator PointDataIterator
Computes the Euclidean distance between a moving point-set and a fixed point-set. Correspondence is n...
void GetValueAndDerivative(const TransformParametersType &parameters, MeasureType &Value, DerivativeType &Derivative) const
AdvancedTransform< CoordinateRepresentationType, itkGetStaticConstMacro(FixedPointSetDimension), itkGetStaticConstMacro(MovingPointSetDimension) > TransformType


Generated on 27-04-2014 for elastix by doxygen 1.8.6 elastix logo