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

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

Fast implementation of the symmetric demons registration force. More...

#include <itkESMDemonsRegistrationFunction.h>

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

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

Collaboration graph
[legend]

List of all members.

Classes

struct  GlobalDataStruct

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
FixedImageType::DirectionType 
DirectionType

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)
virtual double GetMaximumUpdateStepLength () const
virtual void SetMaximumUpdateStepLength (double sm)
virtual GradientType GetUseGradientType () const
virtual void SetUseGradientType (GradientType gtype)
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

 ESMDemonsRegistrationFunction ()
void PrintSelf (std::ostream &os, Indent indent) const
 ~ESMDemonsRegistrationFunction ()
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]


Detailed Description

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

Fast implementation of the symmetric demons registration force.

This class provides a substantially faster implementation of the symmetric demons registration force. Speed is improved by keeping a deformed copy of the moving image for gradient evaluation.

Symmetric forces simply means using the mean of the gradient of the fixed image and the gradient of the warped moving image.

Note that this class also enables the use of fixed, mapped moving and warped moving images forces by using a call to SetUseGradientType

The moving image should not be saturated. We indeed use NumericTraits<MovingPixelType>::Max() as a special value.

Author:
Tom Vercauteren, INRIA & Mauna Kea Technologies
This implementation was taken from the Insight Journal paper: http://hdl.handle.net/1926/510

See also:
SymmetricForcesDemonsRegistrationFunction

SymmetricForcesDemonsRegistrationFilter

DemonsRegistrationFilter

DemonsRegistrationFunction

Definition at line 62 of file itkESMDemonsRegistrationFunction.h.


Member Typedef Documentation

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

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

Interpolator type.

Definition at line 111 of file itkESMDemonsRegistrationFunction.h.

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

Covariant vector type.

Definition at line 126 of file itkESMDemonsRegistrationFunction.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::ESMDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::DefaultInterpolatorType

Definition at line 117 of file itkESMDemonsRegistrationFunction.h.

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

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

template<class TFixedImage , class TMovingImage , class TDeformationField >
typedef FixedImageType::DirectionType itk::ESMDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::DirectionType

Definition at line 93 of file itkESMDemonsRegistrationFunction.h.

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

FixedImage image neighborhood iterator type.

Definition at line 226 of file itkESMDemonsRegistrationFunction.h.

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

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

template<class TFixedImage , class TMovingImage , class TDeformationField >
typedef Superclass::FloatOffsetType itk::ESMDemonsRegistrationFunction< 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 107 of file itkESMDemonsRegistrationFunction.h.

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

Definition at line 130 of file itkESMDemonsRegistrationFunction.h.

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

Fixed image gradient calculator type.

Definition at line 129 of file itkESMDemonsRegistrationFunction.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::ESMDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::IndexType

Definition at line 90 of file itkESMDemonsRegistrationFunction.h.

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::ESMDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::InterpolatorPointer

Definition at line 114 of file itkESMDemonsRegistrationFunction.h.

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

Definition at line 113 of file itkESMDemonsRegistrationFunction.h.

template<class TFixedImage , class TMovingImage , class TDeformationField >
typedef MovingImageGradientCalculatorType::Pointer itk::ESMDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::MovingImageGradientCalculatorPointer

Definition at line 136 of file itkESMDemonsRegistrationFunction.h.

template<class TFixedImage , class TMovingImage , class TDeformationField >
typedef CentralDifferenceImageFunction<MovingImageType,CoordRepType> itk::ESMDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::MovingImageGradientCalculatorType

Moving image gradient (unwarped) calculator type.

Definition at line 134 of file itkESMDemonsRegistrationFunction.h.

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

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

template<class TFixedImage , class TMovingImage , class TDeformationField >
typedef MovingImageType::PixelType itk::ESMDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::MovingPixelType

Definition at line 85 of file itkESMDemonsRegistrationFunction.h.

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::ESMDemonsRegistrationFunction< 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 106 of file itkESMDemonsRegistrationFunction.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::ESMDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::PixelType

Inherit some enums from the superclass.

Reimplemented from itk::FiniteDifferenceFunction< TDeformationField >.

Definition at line 104 of file itkESMDemonsRegistrationFunction.h.

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

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

Definition at line 115 of file itkESMDemonsRegistrationFunction.h.

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

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

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

Definition at line 91 of file itkESMDemonsRegistrationFunction.h.

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

Definition at line 92 of file itkESMDemonsRegistrationFunction.h.

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

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

Define the TimeStepType to always be double.

Reimplemented from itk::FiniteDifferenceFunction< TDeformationField >.

Definition at line 108 of file itkESMDemonsRegistrationFunction.h.

template<class TFixedImage , class TMovingImage , class TDeformationField >
typedef WarperType::Pointer itk::ESMDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::WarperPointer

Definition at line 123 of file itkESMDemonsRegistrationFunction.h.

template<class TFixedImage , class TMovingImage , class TDeformationField >
typedef WarpImageFilter< MovingImageType, MovingImageType,DeformationFieldType> itk::ESMDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::WarperType

Warper type

Definition at line 122 of file itkESMDemonsRegistrationFunction.h.


Member Enumeration Documentation

template<class TFixedImage , class TMovingImage , class TDeformationField >
enum itk::ESMDemonsRegistrationFunction::GradientType

Type of available image forces

Enumerator:
Symmetric 
Fixed 
WarpedMoving 
MappedMoving 

Definition at line 206 of file itkESMDemonsRegistrationFunction.h.


Constructor & Destructor Documentation

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

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

Definition at line 222 of file itkESMDemonsRegistrationFunction.h.


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::ESMDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::ComputeGlobalTimeStep ( void *   )  const [inline, virtual]

This class uses a constant timestep of 1.

Implements itk::FiniteDifferenceFunction< TDeformationField >.

Definition at line 147 of file itkESMDemonsRegistrationFunction.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::ESMDemonsRegistrationFunction< 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.

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.

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

Definition at line 92 of file itkPDEDeformableRegistrationFunction.h.

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::ESMDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::GetGlobalDataPointer (  )  const [inline, virtual]

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::ESMDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::GetIntensityDifferenceThreshold (  )  const [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 >
virtual double itk::ESMDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::GetMaximumUpdateStepLength (  )  const [inline, virtual]

Set/Get the maximum update step length. In Thirion this is 0.5. Setting it to 0 implies no restriction (beware of numerical instability in this case.

Definition at line 199 of file itkESMDemonsRegistrationFunction.h.

template<class TFixedImage , class TMovingImage , class TDeformationField >
virtual double itk::ESMDemonsRegistrationFunction< 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 177 of file itkESMDemonsRegistrationFunction.h.

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::ESMDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::GetMovingImageInterpolator ( void   )  [inline]

Get the moving image interpolator.

Definition at line 143 of file itkESMDemonsRegistrationFunction.h.

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

Run-time type information (and related methods).

Reimplemented from itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, 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::ESMDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::GetRMSChange (  )  const [inline, virtual]

Get the rms change in deformation field.

Definition at line 181 of file itkESMDemonsRegistrationFunction.h.

template<class TFixedImage , class TMovingImage , class TDeformationField >
virtual GradientType itk::ESMDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::GetUseGradientType (  )  const [inline, virtual]

Set/Get the type of used image forces

Definition at line 216 of file itkESMDemonsRegistrationFunction.h.

template<class TFixedImage , class TMovingImage , class TDeformationField >
virtual void itk::ESMDemonsRegistrationFunction< 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::ESMDemonsRegistrationFunction< 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::ESMDemonsRegistrationFunction< 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]

Cause the object to print itself out.

Referenced by itk::WeakPointer< ProcessObject >::Print().

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

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.

template<class TFixedImage , class TMovingImage , class TDeformationField >
void itk::ESMDemonsRegistrationFunction< 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]

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.

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::ESMDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::ReleaseGlobalDataPointer ( void *  GlobalData  )  const [virtual]

Release memory for global data structure.

Implements itk::FiniteDifferenceFunction< 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.

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

Definition at line 91 of file itkPDEDeformableRegistrationFunction.h.

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

Set the fixed image.

Definition at line 75 of file itkPDEDeformableRegistrationFunction.h.

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::ESMDemonsRegistrationFunction< 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 >
virtual void itk::ESMDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::SetMaximumUpdateStepLength ( double  sm  )  [inline, virtual]

Set/Get the maximum update step length. In Thirion this is 0.5. Setting it to 0 implies no restriction (beware of numerical instability in this case.

Definition at line 195 of file itkESMDemonsRegistrationFunction.h.

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::ESMDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::SetMovingImageInterpolator ( InterpolatorType ptr  )  [inline]

Set the moving image interpolator.

Definition at line 139 of file itkESMDemonsRegistrationFunction.h.

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.

template<class TFixedImage , class TMovingImage , class TDeformationField >
virtual void itk::ESMDemonsRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::SetUseGradientType ( GradientType  gtype  )  [inline, virtual]

Set/Get the type of used image forces

Definition at line 214 of file itkESMDemonsRegistrationFunction.h.

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

Decrease the reference count (release by another object).

Reimplemented in itk::Object.


Member Data Documentation

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

The deformation field.

Definition at line 128 of file itkPDEDeformableRegistrationFunction.h.

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

Definition at line 130 of file itkPDEDeformableRegistrationFunction.h.

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

The fixed image.

Definition at line 125 of file itkPDEDeformableRegistrationFunction.h.

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

Definition at line 132 of file itkPDEDeformableRegistrationFunction.h.

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

The moving image.

Definition at line 122 of file itkPDEDeformableRegistrationFunction.h.

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 Tue Sep 15 08:06:55 2009 for ITK by doxygen 1.5.8 written by Dimitri van Heesch, © 1997-2000