go home Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages
Public Types | Public Member Functions | Static Public Member Functions | Protected Types | Protected Member Functions | Private Member Functions
itk::ThinPlateR2LogRSplineKernelTransform2< TScalarType, NDimensions > Class Template Reference

#include <itkThinPlateR2LogRSplineKernelTransform2.h>

Inheritance diagram for itk::ThinPlateR2LogRSplineKernelTransform2< TScalarType, NDimensions >:
Inheritance graph
[legend]
Collaboration diagram for itk::ThinPlateR2LogRSplineKernelTransform2< TScalarType, NDimensions >:
Collaboration graph
[legend]

Public Types

typedef SmartPointer< const SelfConstPointer
typedef
Superclass::InputCovariantVectorType 
InputCovariantVectorType
typedef Superclass::InputPointType InputPointType
typedef Superclass::InputVectorType InputVectorType
typedef Superclass::JacobianType JacobianType
typedef
Superclass::OutputCovariantVectorType 
OutputCovariantVectorType
typedef Superclass::OutputPointType OutputPointType
typedef
Superclass::OutputVectorType 
OutputVectorType
typedef Superclass::ParametersType ParametersType
typedef SmartPointer< SelfPointer
typedef Superclass::PointsIterator PointsIterator
typedef Superclass::ScalarType ScalarType
typedef
ThinPlateR2LogRSplineKernelTransform2 
Self
typedef KernelTransform2
< TScalarType, NDimensions > 
Superclass

Public Member Functions

virtual const char * GetClassName () const
 itkStaticConstMacro (SpaceDimension, unsigned int, Superclass::SpaceDimension)

Static Public Member Functions

static Pointer New ()

Protected Types

typedef Superclass::GMatrixType GMatrixType

Protected Member Functions

virtual void ComputeDeformationContribution (const InputPointType &inputPoint, OutputPointType &result) const
void ComputeG (const InputVectorType &x, GMatrixType &GMatrix) const
 ThinPlateR2LogRSplineKernelTransform2 ()
virtual ~ThinPlateR2LogRSplineKernelTransform2 ()

Private Member Functions

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

Detailed Description

template<class TScalarType, unsigned int NDimensions = 3>
class itk::ThinPlateR2LogRSplineKernelTransform2< TScalarType, NDimensions >

This class defines the thin plate spline (TPS) transformation. It is implemented in as straightforward a manner as possible from the IEEE TMI paper by Davis, Khotanzad, Flamig, and Harms, Vol. 16 No. 3 June 1997.

The kernel used in this variant of TPS is $ R^2 log(R) $

Definition at line 36 of file itkThinPlateR2LogRSplineKernelTransform2.h.


Member Typedef Documentation

template<class TScalarType , unsigned int NDimensions = 3>
typedef SmartPointer<const Self> itk::ThinPlateR2LogRSplineKernelTransform2< TScalarType, NDimensions >::ConstPointer
template<class TScalarType , unsigned int NDimensions = 3>
typedef Superclass::GMatrixType itk::ThinPlateR2LogRSplineKernelTransform2< TScalarType, NDimensions >::GMatrixType [protected]

These (rather redundant) typedefs are needed because on SGI, typedefs are not inherited.

Reimplemented from itk::KernelTransform2< TScalarType, NDimensions >.

Definition at line 84 of file itkThinPlateR2LogRSplineKernelTransform2.h.

template<class TScalarType , unsigned int NDimensions = 3>
typedef Superclass::InputCovariantVectorType itk::ThinPlateR2LogRSplineKernelTransform2< TScalarType, NDimensions >::InputCovariantVectorType
template<class TScalarType , unsigned int NDimensions = 3>
typedef Superclass::InputPointType itk::ThinPlateR2LogRSplineKernelTransform2< TScalarType, NDimensions >::InputPointType

These (rather redundant) typedefs are needed because on SGI, typedefs are not inherited

Reimplemented from itk::KernelTransform2< TScalarType, NDimensions >.

Definition at line 66 of file itkThinPlateR2LogRSplineKernelTransform2.h.

template<class TScalarType , unsigned int NDimensions = 3>
typedef Superclass::InputVectorType itk::ThinPlateR2LogRSplineKernelTransform2< TScalarType, NDimensions >::InputVectorType
template<class TScalarType , unsigned int NDimensions = 3>
typedef Superclass::JacobianType itk::ThinPlateR2LogRSplineKernelTransform2< TScalarType, NDimensions >::JacobianType

Jacobian Type

Reimplemented from itk::KernelTransform2< TScalarType, NDimensions >.

Definition at line 59 of file itkThinPlateR2LogRSplineKernelTransform2.h.

template<class TScalarType , unsigned int NDimensions = 3>
typedef Superclass::OutputCovariantVectorType itk::ThinPlateR2LogRSplineKernelTransform2< TScalarType, NDimensions >::OutputCovariantVectorType
template<class TScalarType , unsigned int NDimensions = 3>
typedef Superclass::OutputPointType itk::ThinPlateR2LogRSplineKernelTransform2< TScalarType, NDimensions >::OutputPointType
template<class TScalarType , unsigned int NDimensions = 3>
typedef Superclass::OutputVectorType itk::ThinPlateR2LogRSplineKernelTransform2< TScalarType, NDimensions >::OutputVectorType
template<class TScalarType , unsigned int NDimensions = 3>
typedef Superclass::ParametersType itk::ThinPlateR2LogRSplineKernelTransform2< TScalarType, NDimensions >::ParametersType

Parameters type.

Reimplemented from itk::KernelTransform2< TScalarType, NDimensions >.

Definition at line 56 of file itkThinPlateR2LogRSplineKernelTransform2.h.

template<class TScalarType , unsigned int NDimensions = 3>
typedef SmartPointer<Self> itk::ThinPlateR2LogRSplineKernelTransform2< TScalarType, NDimensions >::Pointer
template<class TScalarType , unsigned int NDimensions = 3>
typedef Superclass::PointsIterator itk::ThinPlateR2LogRSplineKernelTransform2< TScalarType, NDimensions >::PointsIterator
template<class TScalarType , unsigned int NDimensions = 3>
typedef Superclass::ScalarType itk::ThinPlateR2LogRSplineKernelTransform2< TScalarType, NDimensions >::ScalarType

Scalar type.

Reimplemented from itk::KernelTransform2< TScalarType, NDimensions >.

Definition at line 50 of file itkThinPlateR2LogRSplineKernelTransform2.h.

template<class TScalarType , unsigned int NDimensions = 3>
typedef ThinPlateR2LogRSplineKernelTransform2 itk::ThinPlateR2LogRSplineKernelTransform2< TScalarType, NDimensions >::Self

Standard class typedefs.

Reimplemented from itk::KernelTransform2< TScalarType, NDimensions >.

Definition at line 41 of file itkThinPlateR2LogRSplineKernelTransform2.h.

template<class TScalarType , unsigned int NDimensions = 3>
typedef KernelTransform2< TScalarType, NDimensions> itk::ThinPlateR2LogRSplineKernelTransform2< TScalarType, NDimensions >::Superclass

Constructor & Destructor Documentation

template<class TScalarType , unsigned int NDimensions = 3>
itk::ThinPlateR2LogRSplineKernelTransform2< TScalarType, NDimensions >::ThinPlateR2LogRSplineKernelTransform2 ( ) [inline, protected]

Definition at line 76 of file itkThinPlateR2LogRSplineKernelTransform2.h.

template<class TScalarType , unsigned int NDimensions = 3>
virtual itk::ThinPlateR2LogRSplineKernelTransform2< TScalarType, NDimensions >::~ThinPlateR2LogRSplineKernelTransform2 ( ) [inline, protected, virtual]

Definition at line 80 of file itkThinPlateR2LogRSplineKernelTransform2.h.

template<class TScalarType , unsigned int NDimensions = 3>
itk::ThinPlateR2LogRSplineKernelTransform2< TScalarType, NDimensions >::ThinPlateR2LogRSplineKernelTransform2 ( const Self ) [private]

Member Function Documentation

template<class TScalarType , unsigned int NDimensions = 3>
virtual void itk::ThinPlateR2LogRSplineKernelTransform2< TScalarType, NDimensions >::ComputeDeformationContribution ( const InputPointType inputPoint,
OutputPointType result 
) const [protected, virtual]

Compute the contribution of the landmarks weighted by the kernel funcion to the global deformation of the space

Reimplemented from itk::KernelTransform2< TScalarType, NDimensions >.

template<class TScalarType , unsigned int NDimensions = 3>
void itk::ThinPlateR2LogRSplineKernelTransform2< TScalarType, NDimensions >::ComputeG ( const InputVectorType x,
GMatrixType GMatrix 
) const [protected, virtual]

Compute G(x) For the thin plate spline, this is: G(x) = r(x)^2 log(r(x)) * I $ G(x) = r(x)^2 log(r(x)) * I $ where r(x) = Euclidean norm = sqrt[x1^2 + x2^2 + x3^2]

\[ r(x) = \sqrt{ x_1^2 + x_2^2 + x_3^2 } \]

I = identity matrix.

Reimplemented from itk::KernelTransform2< TScalarType, NDimensions >.

template<class TScalarType , unsigned int NDimensions = 3>
virtual const char* itk::ThinPlateR2LogRSplineKernelTransform2< TScalarType, NDimensions >::GetClassName ( ) const [virtual]

Run-time type information (and related methods).

Reimplemented from itk::KernelTransform2< TScalarType, NDimensions >.

template<class TScalarType , unsigned int NDimensions = 3>
itk::ThinPlateR2LogRSplineKernelTransform2< TScalarType, NDimensions >::itkStaticConstMacro ( SpaceDimension  ,
unsigned  int,
Superclass::SpaceDimension   
)

Dimension of the domain space.

template<class TScalarType , unsigned int NDimensions = 3>
static Pointer itk::ThinPlateR2LogRSplineKernelTransform2< TScalarType, NDimensions >::New ( ) [static]

New macro for creation of through a Smart Pointer

Reimplemented from itk::KernelTransform2< TScalarType, NDimensions >.

template<class TScalarType , unsigned int NDimensions = 3>
void itk::ThinPlateR2LogRSplineKernelTransform2< TScalarType, NDimensions >::operator= ( const Self ) [private]


Generated on 24-10-2011 for elastix by doxygen 1.7.4 elastix logo