ITK  4.0.0
Insight Segmentation and Registration Toolkit
Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Types | Protected Member Functions | Private Member Functions
itk::VolumeSplineKernelTransform< TScalarType, NDimensions > Class Template Reference

#include <itkVolumeSplineKernelTransform.h>

Inheritance diagram for itk::VolumeSplineKernelTransform< TScalarType, NDimensions >:
Collaboration diagram for itk::VolumeSplineKernelTransform< TScalarType, NDimensions >:

List of all members.

Public Types

typedef SmartPointer< const SelfConstPointer
typedef Superclass::JacobianType JacobianType
typedef Superclass::ParametersType ParametersType
typedef SmartPointer< SelfPointer
typedef Superclass::ScalarType ScalarType
typedef VolumeSplineKernelTransform Self
typedef KernelTransform
< TScalarType, NDimensions > 
Superclass

Public Member Functions

virtual ::itk::LightObject::Pointer CreateAnother (void) const
virtual const char * GetNameOfClass () const

Static Public Member Functions

static Pointer New ()

Static Public Attributes

static const unsigned int SpaceDimension = Superclass::SpaceDimension

Protected Types

typedef Superclass::GMatrixType GMatrixType

Protected Member Functions

virtual void ComputeDeformationContribution (const InputPointType &inputPoint, OutputPointType &result) const
virtual void ComputeG (const InputVectorType &landmarkVector, GMatrixType &gmatrix) const

Private Member Functions

void operator= (const Self &)
 VolumeSplineKernelTransform (const Self &)
typedef Superclass::InputPointType InputPointType
typedef Superclass::OutputPointType OutputPointType
typedef Superclass::InputVectorType InputVectorType
typedef
Superclass::OutputVectorType 
OutputVectorType
typedef
Superclass::InputCovariantVectorType 
InputCovariantVectorType
typedef
Superclass::OutputCovariantVectorType 
OutputCovariantVectorType
typedef Superclass::PointsIterator PointsIterator
 VolumeSplineKernelTransform ()
virtual ~VolumeSplineKernelTransform ()

Detailed Description

template<class TScalarType, unsigned int NDimensions = 3>
class itk::VolumeSplineKernelTransform< 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

Definition at line 37 of file itkVolumeSplineKernelTransform.h.


Member Typedef Documentation

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

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

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

Definition at line 80 of file itkVolumeSplineKernelTransform.h.

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

These (rather redundant) typedefs are needed because typedefs are not inherited

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

Definition at line 71 of file itkVolumeSplineKernelTransform.h.

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

These (rather redundant) typedefs are needed because typedefs are not inherited

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

Definition at line 67 of file itkVolumeSplineKernelTransform.h.

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

These (rather redundant) typedefs are needed because typedefs are not inherited

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

Definition at line 69 of file itkVolumeSplineKernelTransform.h.

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

Jacobian Type

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

Definition at line 60 of file itkVolumeSplineKernelTransform.h.

template<class TScalarType , unsigned int NDimensions = 3>
typedef Superclass::OutputCovariantVectorType itk::VolumeSplineKernelTransform< TScalarType, NDimensions >::OutputCovariantVectorType

These (rather redundant) typedefs are needed because typedefs are not inherited

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

Definition at line 72 of file itkVolumeSplineKernelTransform.h.

template<class TScalarType , unsigned int NDimensions = 3>
typedef Superclass::OutputPointType itk::VolumeSplineKernelTransform< TScalarType, NDimensions >::OutputPointType

These (rather redundant) typedefs are needed because typedefs are not inherited

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

Definition at line 68 of file itkVolumeSplineKernelTransform.h.

template<class TScalarType , unsigned int NDimensions = 3>
typedef Superclass::OutputVectorType itk::VolumeSplineKernelTransform< TScalarType, NDimensions >::OutputVectorType

These (rather redundant) typedefs are needed because typedefs are not inherited

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

Definition at line 70 of file itkVolumeSplineKernelTransform.h.

template<class TScalarType , unsigned int NDimensions = 3>
typedef Superclass::ParametersType itk::VolumeSplineKernelTransform< TScalarType, NDimensions >::ParametersType

Parameters type.

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

Definition at line 57 of file itkVolumeSplineKernelTransform.h.

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

These (rather redundant) typedefs are needed because typedefs are not inherited

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

Definition at line 73 of file itkVolumeSplineKernelTransform.h.

template<class TScalarType , unsigned int NDimensions = 3>
typedef Superclass::ScalarType itk::VolumeSplineKernelTransform< TScalarType, NDimensions >::ScalarType

Scalar type.

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

Definition at line 51 of file itkVolumeSplineKernelTransform.h.

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

Standard class typedefs.

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

Definition at line 42 of file itkVolumeSplineKernelTransform.h.

template<class TScalarType , unsigned int NDimensions = 3>
typedef KernelTransform< TScalarType, NDimensions > itk::VolumeSplineKernelTransform< TScalarType, NDimensions >::Superclass

Constructor & Destructor Documentation

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

These (rather redundant) typedefs are needed because typedefs are not inherited

Definition at line 75 of file itkVolumeSplineKernelTransform.h.

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

These (rather redundant) typedefs are needed because typedefs are not inherited

Definition at line 76 of file itkVolumeSplineKernelTransform.h.

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

Member Function Documentation

template<class TScalarType , unsigned int NDimensions = 3>
virtual void itk::VolumeSplineKernelTransform< 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::KernelTransform< TScalarType, NDimensions >.

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

Compute G(x) For the volume plate spline, this is: G(x) = r(x)^3*I $ G(x) = r(x)^3*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::KernelTransform< TScalarType, NDimensions >.

template<class TScalarType , unsigned int NDimensions = 3>
virtual::itk::LightObject::Pointer itk::VolumeSplineKernelTransform< TScalarType, NDimensions >::CreateAnother ( void  ) const [virtual]

Create an object from an instance, potentially deferring to a factory. This method allows you to create an instance of an object that is exactly the same type as the referring object. This is useful in cases where an object has been cast back to a base class.

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

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

Run-time type information (and related methods).

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

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

New macro for creation of through a Smart Pointer

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

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

Mutex lock to protect modification to the reference count

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


Member Data Documentation

template<class TScalarType , unsigned int NDimensions = 3>
const unsigned int itk::VolumeSplineKernelTransform< TScalarType, NDimensions >::SpaceDimension = Superclass::SpaceDimension [static]

Dimension of the domain space.

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

Definition at line 64 of file itkVolumeSplineKernelTransform.h.


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