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

itk::SymmetricForcesDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField > Class Template Reference
[Finite Difference Functions]

#include <itkSymmetricForcesDemonsRegistrationFunction.h>

Inheritance diagram for itk::SymmetricForcesDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >:

Inheritance graph
[legend]
Collaboration diagram for itk::SymmetricForcesDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >:

Collaboration graph
[legend]

List of all members.


Detailed Description

template<class TFixedImage, class TMovingImage, class TDeformationField>
class itk::SymmetricForcesDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >

This class encapsulate the PDE which drives the demons registration algorithm (formula (5) in J.-P. Thirions's paper "Fast Non-Rigid Matching of 3D MEdical Images", May 1995). It is used by SymmetricForcesDemonsRegistrationFilter to compute the output deformation field which will map a moving image onto a a fixed image.

This class was contributed by Corinne Mattmann, ETH Zurich, Switzerland. based on a variation of the DemonsRegistrationFunction. The basic modification is to use equation (5) from Thirion's paper along with the modification for avoiding large deformations when gradients have small values.

Non-integer moving image values are obtained by using interpolation. The default interpolator is of type LinearInterpolateImageFunction. The user may set other interpolators via method SetMovingImageInterpolator. Note that the input interpolator must derive from baseclass InterpolateImageFunction.

This class is templated over the fixed image type, moving image type, and the deformation field type.

Warning:
This filter assumes that the fixed image type, moving image type and deformation field type all have the same number of dimensions.
See also:
SymmetricForcesDemonsRegistrationFilter

DemonsRegistrationFilter

DemonsRegistrationFunction

Definition at line 61 of file itkSymmetricForcesDemonsRegistrationFunction.h.


Public Types

typedef SmartPointer< const SelfConstPointer
typedef double CoordRepType
typedef CovariantVector
< double,
itkGetStaticConstMacro(ImageDimension)> 
CovariantVectorType
typedef
ZeroFluxNeumannBoundaryCondition
< ImageType
DefaultBoundaryConditionType
typedef
LinearInterpolateImageFunction
< MovingImageType,
CoordRepType
DefaultInterpolatorType
typedef
Superclass::DeformationFieldType 
DeformationFieldType
typedef
Superclass::DeformationFieldTypePointer 
DeformationFieldTypePointer
typedef
Superclass::FixedImagePointer 
FixedImagePointer
typedef Superclass::FixedImageType FixedImageType
typedef Superclass::FloatOffsetType FloatOffsetType
typedef
GradientCalculatorType::Pointer 
GradientCalculatorPointer
typedef
CentralDifferenceImageFunction
< FixedImageType
GradientCalculatorType
typedef TDeformationField ImageType
typedef FixedImageType::IndexType IndexType
typedef InterpolatorType::Pointer InterpolatorPointer
typedef
InterpolateImageFunction
< MovingImageType,
CoordRepType
InterpolatorType
typedef
Superclass::MovingImagePointer 
MovingImagePointer
typedef Superclass::MovingImageType MovingImageType
typedef Vector< PixelRealType,
itkGetStaticConstMacro(ImageDimension)> 
NeighborhoodScalesType
typedef
Superclass::NeighborhoodType 
NeighborhoodType
typedef double PixelRealType
typedef Superclass::PixelType PixelType
typedef SmartPointer< SelfPointer
typedef InterpolatorType::PointType PointType
typedef Superclass::RadiusType RadiusType
typedef
SymmetricForcesDemonsRegistrationFunction 
Self
typedef FixedImageType::SizeType SizeType
typedef FixedImageType::SpacingType SpacingType
typedef
PDEDeformableRegistrationFunction
< TFixedImage, TMovingImage,
TDeformationField > 
Superclass
typedef Superclass::TimeStepType TimeStepType

Public Member Functions

virtual TimeStepType ComputeGlobalTimeStep (void *) const
const NeighborhoodScalesType ComputeNeighborhoodScales () const
virtual PixelType ComputeUpdate (const NeighborhoodType &neighborhood, void *globalData, const FloatOffsetType &offset=FloatOffsetType(0.0))
virtual Pointer CreateAnother () const
virtual void Delete ()
DeformationFieldTypeGetDeformationField (void)
double GetEnergy () const
const FixedImageTypeGetFixedImage (void) const
double GetGradientStep () const
virtual double GetMetric () const
const MovingImageTypeGetMovingImage (void) const
InterpolatorTypeGetMovingImageInterpolator (void)
virtual const char * GetNameOfClass () const
bool GetNormalizeGradient () const
const RadiusTypeGetRadius () const
virtual int GetReferenceCount () const
virtual const double & GetRMSChange () const
virtual void InitializeIteration ()
 itkStaticConstMacro (ImageDimension, unsigned int, ImageType::ImageDimension)
 itkStaticConstMacro (ImageDimension, unsigned int, Superclass::ImageDimension)
void Print (std::ostream &os, Indent indent=0) const
virtual void Register () const
virtual void ReleaseGlobalDataPointer (void *GlobalData) const
void SetDeformationField (DeformationFieldTypePointer ptr)
void SetEnergy (double e)
void SetFixedImage (const FixedImageType *ptr)
void SetGradientStep (double e)
void SetMovingImage (const MovingImageType *ptr)
void SetMovingImageInterpolator (InterpolatorType *ptr)
void SetNormalizeGradient (bool e)
void SetRadius (const RadiusType &r)
virtual void SetReferenceCount (int)
virtual void UnRegister () const
virtual void * GetGlobalDataPointer () const
virtual double GetIntensityDifferenceThreshold () const
virtual void SetIntensityDifferenceThreshold (double)
void SetScaleCoefficients (PixelRealType vals[ImageDimension])

Static Public Member Functions

static void BreakOnError ()
static Pointer New ()

Protected Types

typedef
ConstNeighborhoodIterator
< FixedImageType
FixedImageNeighborhoodIteratorType
typedef int InternalReferenceCountType

Protected Member Functions

void PrintSelf (std::ostream &os, Indent indent) const
 SymmetricForcesDemonsRegistrationFunction ()
 ~SymmetricForcesDemonsRegistrationFunction ()
virtual void PrintHeader (std::ostream &os, Indent indent) const
virtual void PrintTrailer (std::ostream &os, Indent indent) const

Protected Attributes

DeformationFieldTypePointer m_DeformationField
double m_Energy
FixedImagePointer m_FixedImage
double m_GradientStep
MovingImagePointer m_MovingImage
bool m_NormalizeGradient
RadiusType m_Radius
InternalReferenceCountType m_ReferenceCount
SimpleFastMutexLock m_ReferenceCountLock
PixelRealType m_ScaleCoefficients [ImageDimension]

Classes

struct  GlobalDataStruct

Member Typedef Documentation

template<class TFixedImage, class TMovingImage, class TDeformationField>
typedef SmartPointer<const Self> itk::SymmetricForcesDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::ConstPointer

template<class TFixedImage, class TMovingImage, class TDeformationField>
typedef double itk::SymmetricForcesDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::CoordRepType

Interpolator type.

Definition at line 109 of file itkSymmetricForcesDemonsRegistrationFunction.h.

template<class TFixedImage, class TMovingImage, class TDeformationField>
typedef CovariantVector<double,itkGetStaticConstMacro(ImageDimension)> itk::SymmetricForcesDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::CovariantVectorType

Covariant vector type.

Definition at line 118 of file itkSymmetricForcesDemonsRegistrationFunction.h.

The default boundary condition for finite difference functions that is used unless overridden in the Evaluate() method.

Definition at line 92 of file itkFiniteDifferenceFunction.h.

template<class TFixedImage, class TMovingImage, class TDeformationField>
typedef LinearInterpolateImageFunction<MovingImageType,CoordRepType> itk::SymmetricForcesDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::DefaultInterpolatorType

template<class TFixedImage, class TMovingImage, class TDeformationField>
typedef Superclass::DeformationFieldType itk::SymmetricForcesDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::DeformationFieldType

template<class TFixedImage, class TMovingImage, class TDeformationField>
typedef Superclass::DeformationFieldTypePointer itk::SymmetricForcesDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::DeformationFieldTypePointer

template<class TFixedImage, class TMovingImage, class TDeformationField>
typedef ConstNeighborhoodIterator<FixedImageType> itk::SymmetricForcesDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::FixedImageNeighborhoodIteratorType [protected]

FixedImage image neighborhood iterator type.

Definition at line 184 of file itkSymmetricForcesDemonsRegistrationFunction.h.

template<class TFixedImage, class TMovingImage, class TDeformationField>
typedef Superclass::FixedImagePointer itk::SymmetricForcesDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::FixedImagePointer

template<class TFixedImage, class TMovingImage, class TDeformationField>
typedef Superclass::FixedImageType itk::SymmetricForcesDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::FixedImageType

template<class TFixedImage, class TMovingImage, class TDeformationField>
typedef Superclass::FloatOffsetType itk::SymmetricForcesDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::FloatOffsetType

A floating point offset from an image grid location. Used for interpolation among grid values in a neighborhood.

Reimplemented from itk::FiniteDifferenceFunction< TDeformationField >.

Definition at line 105 of file itkSymmetricForcesDemonsRegistrationFunction.h.

template<class TFixedImage, class TMovingImage, class TDeformationField>
typedef GradientCalculatorType::Pointer itk::SymmetricForcesDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::GradientCalculatorPointer

template<class TFixedImage, class TMovingImage, class TDeformationField>
typedef CentralDifferenceImageFunction<FixedImageType> itk::SymmetricForcesDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::GradientCalculatorType

Gradient calculator type.

Definition at line 121 of file itkSymmetricForcesDemonsRegistrationFunction.h.

typedef TDeformationField itk::FiniteDifferenceFunction< TDeformationField >::ImageType [inherited]

Extract some parameters from the image type

Definition at line 76 of file itkFiniteDifferenceFunction.h.

template<class TFixedImage, class TMovingImage, class TDeformationField>
typedef FixedImageType::IndexType itk::SymmetricForcesDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::IndexType

typedef int itk::LightObject::InternalReferenceCountType [protected, inherited]

Define the type of the reference count according to the target. This allows the use of atomic operations

Definition at line 139 of file itkLightObject.h.

template<class TFixedImage, class TMovingImage, class TDeformationField>
typedef InterpolatorType::Pointer itk::SymmetricForcesDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::InterpolatorPointer

template<class TFixedImage, class TMovingImage, class TDeformationField>
typedef InterpolateImageFunction<MovingImageType,CoordRepType> itk::SymmetricForcesDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::InterpolatorType

template<class TFixedImage, class TMovingImage, class TDeformationField>
typedef Superclass::MovingImagePointer itk::SymmetricForcesDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::MovingImagePointer

template<class TFixedImage, class TMovingImage, class TDeformationField>
typedef Superclass::MovingImageType itk::SymmetricForcesDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::MovingImageType

typedef Vector<PixelRealType,itkGetStaticConstMacro(ImageDimension)> itk::FiniteDifferenceFunction< TDeformationField >::NeighborhoodScalesType [inherited]

The type of data structure that holds the scales with which the neighborhood is weighted to properly account for spacing and neighborhood radius.

Definition at line 103 of file itkFiniteDifferenceFunction.h.

template<class TFixedImage, class TMovingImage, class TDeformationField>
typedef Superclass::NeighborhoodType itk::SymmetricForcesDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::NeighborhoodType

The type of data structure that is passed to this function object to evaluate at a pixel that does not lie on a data set boundary.

Reimplemented from itk::FiniteDifferenceFunction< TDeformationField >.

Definition at line 104 of file itkSymmetricForcesDemonsRegistrationFunction.h.

typedef double itk::FiniteDifferenceFunction< TDeformationField >::PixelRealType [inherited]

Definition at line 81 of file itkFiniteDifferenceFunction.h.

template<class TFixedImage, class TMovingImage, class TDeformationField>
typedef Superclass::PixelType itk::SymmetricForcesDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::PixelType

Inherit some enums from the superclass.

Reimplemented from itk::FiniteDifferenceFunction< TDeformationField >.

Definition at line 102 of file itkSymmetricForcesDemonsRegistrationFunction.h.

template<class TFixedImage, class TMovingImage, class TDeformationField>
typedef SmartPointer<Self> itk::SymmetricForcesDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::Pointer

template<class TFixedImage, class TMovingImage, class TDeformationField>
typedef InterpolatorType::PointType itk::SymmetricForcesDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::PointType

template<class TFixedImage, class TMovingImage, class TDeformationField>
typedef Superclass::RadiusType itk::SymmetricForcesDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::RadiusType

template<class TFixedImage, class TMovingImage, class TDeformationField>
typedef SymmetricForcesDemonsRegistrationFunction itk::SymmetricForcesDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::Self

template<class TFixedImage, class TMovingImage, class TDeformationField>
typedef FixedImageType::SizeType itk::SymmetricForcesDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::SizeType

template<class TFixedImage, class TMovingImage, class TDeformationField>
typedef FixedImageType::SpacingType itk::SymmetricForcesDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::SpacingType

template<class TFixedImage, class TMovingImage, class TDeformationField>
typedef PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDeformationField > itk::SymmetricForcesDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::Superclass

template<class TFixedImage, class TMovingImage, class TDeformationField>
typedef Superclass::TimeStepType itk::SymmetricForcesDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::TimeStepType

Define the TimeStepType to always be double.

Reimplemented from itk::FiniteDifferenceFunction< TDeformationField >.

Definition at line 106 of file itkSymmetricForcesDemonsRegistrationFunction.h.


Constructor & Destructor Documentation

template<class TFixedImage, class TMovingImage, class TDeformationField>
itk::SymmetricForcesDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::SymmetricForcesDemonsRegistrationFunction (  )  [protected]

template<class TFixedImage, class TMovingImage, class TDeformationField>
itk::SymmetricForcesDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::~SymmetricForcesDemonsRegistrationFunction (  )  [inline, protected]


Member Function Documentation

static void itk::LightObject::BreakOnError (  )  [static, inherited]

This method is called when itkExceptionMacro executes. It allows the debugger to break on error.

template<class TFixedImage, class TMovingImage, class TDeformationField>
virtual TimeStepType itk::SymmetricForcesDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::ComputeGlobalTimeStep ( void *   )  const [inline, virtual]

This class uses a constant timestep of 1.

Implements itk::FiniteDifferenceFunction< TDeformationField >.

Definition at line 133 of file itkSymmetricForcesDemonsRegistrationFunction.h.

const NeighborhoodScalesType itk::FiniteDifferenceFunction< TDeformationField >::ComputeNeighborhoodScales (  )  const [inherited]

Compute the scales that weight the neighborhood during difference operations to properly account for spacing and neighborhood radius

template<class TFixedImage, class TMovingImage, class TDeformationField>
virtual PixelType itk::SymmetricForcesDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::ComputeUpdate ( const NeighborhoodType neighborhood,
void *  globalData,
const FloatOffsetType offset = FloatOffsetType(0.0) 
) [virtual]

This method is called by a finite difference solver image filter at each pixel that does not lie on a data set boundary

Implements itk::FiniteDifferenceFunction< TDeformationField >.

virtual Pointer itk::LightObject::CreateAnother (  )  const [virtual, inherited]

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 in itk::Object.

virtual void itk::LightObject::Delete (  )  [virtual, inherited]

Delete an itk object. This method should always be used to delete an object when the new operator was used to create it. Using the C delete method will not work with reference counting.

template<class TFixedImage, class TMovingImage, class TDeformationField>
DeformationFieldType* itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::GetDeformationField ( void   )  [inline, inherited]

Get the deformation field. This function should have been declared const. It is not for backward compatibility reasons.

Definition at line 88 of file itkPDEDeformableRegistrationFunction.h.

template<class TFixedImage, class TMovingImage, class TDeformationField>
double itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::GetEnergy (  )  const [inline, inherited]

Definition at line 92 of file itkPDEDeformableRegistrationFunction.h.

template<class TFixedImage, class TMovingImage, class TDeformationField>
const FixedImageType* itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::GetFixedImage ( void   )  const [inline, inherited]

Get the fixed image.

Definition at line 79 of file itkPDEDeformableRegistrationFunction.h.

template<class TFixedImage, class TMovingImage, class TDeformationField>
virtual void* itk::SymmetricForcesDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::GetGlobalDataPointer (  )  const [inline, virtual]

template<class TFixedImage, class TMovingImage, class TDeformationField>
double itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::GetGradientStep (  )  const [inline, inherited]

Definition at line 94 of file itkPDEDeformableRegistrationFunction.h.

template<class TFixedImage, class TMovingImage, class TDeformationField>
virtual double itk::SymmetricForcesDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::GetIntensityDifferenceThreshold (  )  const [virtual]

template<class TFixedImage, class TMovingImage, class TDeformationField>
virtual double itk::SymmetricForcesDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::GetMetric (  )  const [inline, virtual]

Get the metric value. The metric value is the mean square difference in intensity between the fixed image and transforming moving image computed over the the overlapping region between the two images.

Definition at line 163 of file itkSymmetricForcesDemonsRegistrationFunction.h.

template<class TFixedImage, class TMovingImage, class TDeformationField>
const MovingImageType* itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::GetMovingImage ( void   )  const [inline, inherited]

Get the moving image.

Definition at line 71 of file itkPDEDeformableRegistrationFunction.h.

template<class TFixedImage, class TMovingImage, class TDeformationField>
InterpolatorType* itk::SymmetricForcesDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::GetMovingImageInterpolator ( void   )  [inline]

Get the moving image interpolator.

Definition at line 129 of file itkSymmetricForcesDemonsRegistrationFunction.h.

template<class TFixedImage, class TMovingImage, class TDeformationField>
virtual const char* itk::SymmetricForcesDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::GetNameOfClass (  )  const [virtual]

Run-time type information (and related methods).

Reimplemented from itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >.

template<class TFixedImage, class TMovingImage, class TDeformationField>
bool itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::GetNormalizeGradient (  )  const [inline, inherited]

Definition at line 96 of file itkPDEDeformableRegistrationFunction.h.

const RadiusType& itk::FiniteDifferenceFunction< TDeformationField >::GetRadius ( void   )  const [inline, inherited]

Returns the radius of the neighborhood this FiniteDifferenceFunction needs to perform its calculations.

Definition at line 146 of file itkFiniteDifferenceFunction.h.

virtual int itk::LightObject::GetReferenceCount (  )  const [inline, virtual, inherited]

Gets the reference count on this object.

Definition at line 106 of file itkLightObject.h.

template<class TFixedImage, class TMovingImage, class TDeformationField>
virtual const double& itk::SymmetricForcesDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::GetRMSChange (  )  const [inline, virtual]

Get the rms change in deformation field.

Definition at line 167 of file itkSymmetricForcesDemonsRegistrationFunction.h.

template<class TFixedImage, class TMovingImage, class TDeformationField>
virtual void itk::SymmetricForcesDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::InitializeIteration (  )  [virtual]

Set the object's state before each iteration.

Reimplemented from itk::FiniteDifferenceFunction< TDeformationField >.

itk::FiniteDifferenceFunction< TDeformationField >::itkStaticConstMacro ( ImageDimension  ,
unsigned  int,
ImageType::ImageDimension   
) [inherited]

Save image dimension.

template<class TFixedImage, class TMovingImage, class TDeformationField>
itk::SymmetricForcesDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::itkStaticConstMacro ( ImageDimension  ,
unsigned  int,
Superclass::ImageDimension   
)

Inherit some enums from the superclass.

template<class TFixedImage, class TMovingImage, class TDeformationField>
static Pointer itk::SymmetricForcesDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::New (  )  [static]

Method for creation through the object factory.

Reimplemented from itk::LightObject.

void itk::LightObject::Print ( std::ostream &  os,
Indent  indent = 0 
) const [inherited]

virtual void itk::LightObject::PrintHeader ( std::ostream &  os,
Indent  indent 
) const [protected, virtual, inherited]

template<class TFixedImage, class TMovingImage, class TDeformationField>
void itk::SymmetricForcesDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::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::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >.

virtual void itk::LightObject::PrintTrailer ( std::ostream &  os,
Indent  indent 
) const [protected, virtual, inherited]

virtual void itk::LightObject::Register (  )  const [virtual, inherited]

Increase the reference count (mark as used by another object).

Reimplemented in itk::Object.

template<class TFixedImage, class TMovingImage, class TDeformationField>
virtual void itk::SymmetricForcesDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::ReleaseGlobalDataPointer ( void *  GlobalData  )  const [virtual]

Release memory for global data structure.

Implements itk::FiniteDifferenceFunction< TDeformationField >.

template<class TFixedImage, class TMovingImage, class TDeformationField>
void itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::SetDeformationField ( DeformationFieldTypePointer  ptr  )  [inline, inherited]

Set the deformation field image.

Definition at line 83 of file itkPDEDeformableRegistrationFunction.h.

template<class TFixedImage, class TMovingImage, class TDeformationField>
void itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::SetEnergy ( double  e  )  [inline, inherited]

Definition at line 91 of file itkPDEDeformableRegistrationFunction.h.

template<class TFixedImage, class TMovingImage, class TDeformationField>
void itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::SetFixedImage ( const FixedImageType ptr  )  [inline, inherited]

Set the fixed image.

Definition at line 75 of file itkPDEDeformableRegistrationFunction.h.

template<class TFixedImage, class TMovingImage, class TDeformationField>
void itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::SetGradientStep ( double  e  )  [inline, inherited]

Definition at line 93 of file itkPDEDeformableRegistrationFunction.h.

template<class TFixedImage, class TMovingImage, class TDeformationField>
virtual void itk::SymmetricForcesDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::SetIntensityDifferenceThreshold ( double   )  [virtual]

Set/Get the threshold below which the absolute difference of intensity yields a match. When the intensities match between a moving and fixed image pixel, the update vector (for that iteration) will be the zero vector. Default is 0.001.

template<class TFixedImage, class TMovingImage, class TDeformationField>
void itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::SetMovingImage ( const MovingImageType ptr  )  [inline, inherited]

Set the moving image.

Definition at line 67 of file itkPDEDeformableRegistrationFunction.h.

template<class TFixedImage, class TMovingImage, class TDeformationField>
void itk::SymmetricForcesDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::SetMovingImageInterpolator ( InterpolatorType ptr  )  [inline]

Set the moving image interpolator.

Definition at line 125 of file itkSymmetricForcesDemonsRegistrationFunction.h.

template<class TFixedImage, class TMovingImage, class TDeformationField>
void itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::SetNormalizeGradient ( bool  e  )  [inline, inherited]

Definition at line 95 of file itkPDEDeformableRegistrationFunction.h.

void itk::FiniteDifferenceFunction< TDeformationField >::SetRadius ( const RadiusType &  r  )  [inline, inherited]

Sets the radius of the neighborhood this FiniteDifferenceFunction needs to perform its calculations.

Definition at line 141 of file itkFiniteDifferenceFunction.h.

virtual void itk::LightObject::SetReferenceCount ( int   )  [virtual, inherited]

Sets the reference count on this object. This is a dangerous method, use it with care.

Reimplemented in itk::Object.

void itk::FiniteDifferenceFunction< TDeformationField >::SetScaleCoefficients ( PixelRealType  vals[ImageDimension]  )  [inline, inherited]

Set the ScaleCoefficients for the difference operators. The defaults a 1.0. These can be set to take the image spacing into account.

Definition at line 152 of file itkFiniteDifferenceFunction.h.

virtual void itk::LightObject::UnRegister (  )  const [virtual, inherited]

Decrease the reference count (release by another object).

Reimplemented in itk::Object.


Member Data Documentation

template<class TFixedImage, class TMovingImage, class TDeformationField>
DeformationFieldTypePointer itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::m_DeformationField [protected, inherited]

The deformation field.

Definition at line 128 of file itkPDEDeformableRegistrationFunction.h.

template<class TFixedImage, class TMovingImage, class TDeformationField>
double itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::m_Energy [mutable, protected, inherited]

Definition at line 130 of file itkPDEDeformableRegistrationFunction.h.

template<class TFixedImage, class TMovingImage, class TDeformationField>
FixedImagePointer itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::m_FixedImage [protected, inherited]

The fixed image.

Definition at line 125 of file itkPDEDeformableRegistrationFunction.h.

template<class TFixedImage, class TMovingImage, class TDeformationField>
double itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::m_GradientStep [mutable, protected, inherited]

Definition at line 132 of file itkPDEDeformableRegistrationFunction.h.

template<class TFixedImage, class TMovingImage, class TDeformationField>
MovingImagePointer itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::m_MovingImage [protected, inherited]

The moving image.

Definition at line 122 of file itkPDEDeformableRegistrationFunction.h.

template<class TFixedImage, class TMovingImage, class TDeformationField>
bool itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::m_NormalizeGradient [protected, inherited]

Definition at line 131 of file itkPDEDeformableRegistrationFunction.h.

RadiusType itk::FiniteDifferenceFunction< TDeformationField >::m_Radius [protected, inherited]

Definition at line 203 of file itkFiniteDifferenceFunction.h.

Number of uses of this object by other objects.

Definition at line 144 of file itkLightObject.h.

Mutex lock to protect modification to the reference count

Definition at line 147 of file itkLightObject.h.

PixelRealType itk::FiniteDifferenceFunction< TDeformationField >::m_ScaleCoefficients[ImageDimension] [protected, inherited]

Definition at line 204 of file itkFiniteDifferenceFunction.h.


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

Generated at Thu May 28 17:53:44 2009 for ITK by doxygen 1.5.5 written by Dimitri van Heesch, © 1997-2000