ITK  5.0.0
Insight Segmentation and Registration Toolkit
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDisplacementField > Class Template Reference

#include <itkPDEDeformableRegistrationFunction.h>

+ Inheritance diagram for itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDisplacementField >:
+ Collaboration diagram for itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDisplacementField >:

Detailed Description

template<typename TFixedImage, typename TMovingImage, typename TDisplacementField>
class itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDisplacementField >

This is an abstract base class for all PDE functions which drives a deformable registration algorithm. It is used by PDEDeformationRegistrationFilter subclasses to compute the output deformation field which will map a moving image onto a fixed image.

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

See Also
PDEDeformableRegistrationFilter

Definition at line 41 of file itkPDEDeformableRegistrationFunction.h.

Public Types

using ConstPointer = SmartPointer< const Self >
 
using DisplacementFieldType = TDisplacementField
 
using DisplacementFieldTypePointer = typename DisplacementFieldType::Pointer
 
using FixedImagePointer = typename FixedImageType::ConstPointer
 
using FixedImageType = TFixedImage
 
using MovingImagePointer = typename MovingImageType::ConstPointer
 
using MovingImageType = TMovingImage
 
using Pointer = SmartPointer< Self >
 
using Self = PDEDeformableRegistrationFunction
 
using Superclass = FiniteDifferenceFunction< TDisplacementField >
 
- Public Types inherited from itk::FiniteDifferenceFunction< TDisplacementField >
using ConstPointer = SmartPointer< const Self >
 
using DefaultBoundaryConditionType = ZeroFluxNeumannBoundaryCondition< ImageType >
 
using FloatOffsetType = Vector< float, Self::ImageDimension >
 
using ImageType = TDisplacementField
 
using NeighborhoodScalesType = Vector< PixelRealType, Self::ImageDimension >
 
using NeighborhoodType = ConstNeighborhoodIterator< TDisplacementField, DefaultBoundaryConditionType >
 
using PixelRealType = double
 
using PixelType = typename ImageType::PixelType
 
using Pointer = SmartPointer< Self >
 
using RadiusType = typename ConstNeighborhoodIterator< TDisplacementField >::RadiusType
 
using Self = FiniteDifferenceFunction
 
using Superclass = LightObject
 
using TimeStepType = double
 
- Public Types inherited from itk::LightObject
using ConstPointer = SmartPointer< const Self >
 
using Pointer = SmartPointer< Self >
 
using Self = LightObject
 

Public Member Functions

DisplacementFieldTypeGetDisplacementField ()
 
double GetEnergy () const
 
const FixedImageTypeGetFixedImage () const
 
double GetGradientStep () const
 
const MovingImageTypeGetMovingImage () const
 
virtual const char * GetNameOfClass () const
 
bool GetNormalizeGradient () const
 
void SetDisplacementField (DisplacementFieldTypePointer ptr)
 
void SetEnergy (double e)
 
void SetFixedImage (const FixedImageType *ptr)
 
void SetGradientStep (double e)
 
void SetMovingImage (const MovingImageType *ptr)
 
void SetNormalizeGradient (bool e)
 
- Public Member Functions inherited from itk::FiniteDifferenceFunction< TDisplacementField >
virtual TimeStepType ComputeGlobalTimeStep (void *GlobalData) const =0
 
const NeighborhoodScalesType ComputeNeighborhoodScales () const
 
virtual PixelType ComputeUpdate (const NeighborhoodType &neighborhood, void *globalData, const FloatOffsetType &offset=FloatOffsetType(0.0))=0
 
virtual void * GetGlobalDataPointer () const =0
 
const RadiusTypeGetRadius () const
 
void GetScaleCoefficients (PixelRealType vals[ImageDimension]) const
 
virtual void InitializeIteration ()
 
virtual void ReleaseGlobalDataPointer (void *GlobalData) const =0
 
void SetRadius (const RadiusType &r)
 
void SetScaleCoefficients (PixelRealType vals[ImageDimension])
 
- Public Member Functions inherited from itk::LightObject
virtual Pointer CreateAnother () const
 
virtual void Delete ()
 
virtual int GetReferenceCount () const
 
 itkCloneMacro (Self)
 
void Print (std::ostream &os, Indent indent=0) const
 
virtual void Register () const
 
virtual void SetReferenceCount (int)
 
virtual void UnRegister () const noexcept
 

Protected Member Functions

 PDEDeformableRegistrationFunction ()
 
void PrintSelf (std::ostream &os, Indent indent) const override
 
 ~PDEDeformableRegistrationFunction () override=default
 
- Protected Member Functions inherited from itk::FiniteDifferenceFunction< TDisplacementField >
 FiniteDifferenceFunction ()
 
void PrintSelf (std::ostream &os, Indent indent) const override
 
 ~FiniteDifferenceFunction () override=default
 
- Protected Member Functions inherited from itk::LightObject
virtual LightObject::Pointer InternalClone () const
 
 LightObject ()
 
virtual void PrintHeader (std::ostream &os, Indent indent) const
 
virtual void PrintTrailer (std::ostream &os, Indent indent) const
 
virtual ~LightObject ()
 

Protected Attributes

DisplacementFieldTypePointer m_DisplacementField
 
double m_Energy
 
FixedImagePointer m_FixedImage
 
double m_GradientStep
 
MovingImagePointer m_MovingImage
 
bool m_NormalizeGradient
 
- Protected Attributes inherited from itk::FiniteDifferenceFunction< TDisplacementField >
RadiusType m_Radius
 
PixelRealType m_ScaleCoefficients [ImageDimension]
 
- Protected Attributes inherited from itk::LightObject
std::atomic< int > m_ReferenceCount
 

Additional Inherited Members

- Static Public Member Functions inherited from itk::LightObject
static void BreakOnError ()
 
static Pointer New ()
 
- Static Public Attributes inherited from itk::FiniteDifferenceFunction< TDisplacementField >
static constexpr unsigned int ImageDimension
 

Member Typedef Documentation

template<typename TFixedImage , typename TMovingImage , typename TDisplacementField >
using itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDisplacementField >::ConstPointer = SmartPointer< const Self >

Definition at line 51 of file itkPDEDeformableRegistrationFunction.h.

template<typename TFixedImage , typename TMovingImage , typename TDisplacementField >
using itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDisplacementField >::DisplacementFieldType = TDisplacementField

Deformation field type.

Definition at line 66 of file itkPDEDeformableRegistrationFunction.h.

template<typename TFixedImage , typename TMovingImage , typename TDisplacementField >
using itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDisplacementField >::DisplacementFieldTypePointer = typename DisplacementFieldType::Pointer

Definition at line 67 of file itkPDEDeformableRegistrationFunction.h.

template<typename TFixedImage , typename TMovingImage , typename TDisplacementField >
using itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDisplacementField >::FixedImagePointer = typename FixedImageType::ConstPointer

Definition at line 63 of file itkPDEDeformableRegistrationFunction.h.

template<typename TFixedImage , typename TMovingImage , typename TDisplacementField >
using itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDisplacementField >::FixedImageType = TFixedImage

FixedImage image type.

Definition at line 62 of file itkPDEDeformableRegistrationFunction.h.

template<typename TFixedImage , typename TMovingImage , typename TDisplacementField >
using itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDisplacementField >::MovingImagePointer = typename MovingImageType::ConstPointer

Definition at line 59 of file itkPDEDeformableRegistrationFunction.h.

template<typename TFixedImage , typename TMovingImage , typename TDisplacementField >
using itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDisplacementField >::MovingImageType = TMovingImage

MovingImage image type.

Definition at line 58 of file itkPDEDeformableRegistrationFunction.h.

template<typename TFixedImage , typename TMovingImage , typename TDisplacementField >
using itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDisplacementField >::Pointer = SmartPointer< Self >

Definition at line 50 of file itkPDEDeformableRegistrationFunction.h.

template<typename TFixedImage , typename TMovingImage , typename TDisplacementField >
using itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDisplacementField >::Self = PDEDeformableRegistrationFunction

Standard class type aliases.

Definition at line 48 of file itkPDEDeformableRegistrationFunction.h.

template<typename TFixedImage , typename TMovingImage , typename TDisplacementField >
using itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDisplacementField >::Superclass = FiniteDifferenceFunction< TDisplacementField >

Definition at line 49 of file itkPDEDeformableRegistrationFunction.h.

Constructor & Destructor Documentation

template<typename TFixedImage , typename TMovingImage , typename TDisplacementField >
itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDisplacementField >::PDEDeformableRegistrationFunction ( )
inlineprotected
template<typename TFixedImage , typename TMovingImage , typename TDisplacementField >
itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDisplacementField >::~PDEDeformableRegistrationFunction ( )
overrideprotecteddefault

Member Function Documentation

template<typename TFixedImage , typename TMovingImage , typename TDisplacementField >
DisplacementFieldType* itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDisplacementField >::GetDisplacementField ( )
inline

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

Definition at line 91 of file itkPDEDeformableRegistrationFunction.h.

References itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDisplacementField >::m_DisplacementField.

template<typename TFixedImage , typename TMovingImage , typename TDisplacementField >
double itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDisplacementField >::GetEnergy ( ) const
inline
template<typename TFixedImage , typename TMovingImage , typename TDisplacementField >
const FixedImageType* itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDisplacementField >::GetFixedImage ( ) const
inline
template<typename TFixedImage , typename TMovingImage , typename TDisplacementField >
double itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDisplacementField >::GetGradientStep ( ) const
inline
template<typename TFixedImage , typename TMovingImage , typename TDisplacementField >
const MovingImageType* itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDisplacementField >::GetMovingImage ( ) const
inline
template<typename TFixedImage , typename TMovingImage , typename TDisplacementField >
virtual const char* itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDisplacementField >::GetNameOfClass ( ) const
virtual
template<typename TFixedImage , typename TMovingImage , typename TDisplacementField >
bool itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDisplacementField >::GetNormalizeGradient ( ) const
inline
template<typename TFixedImage , typename TMovingImage , typename TDisplacementField >
void itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDisplacementField >::PrintSelf ( std::ostream &  os,
Indent  indent 
) const
inlineoverrideprotectedvirtual
template<typename TFixedImage , typename TMovingImage , typename TDisplacementField >
void itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDisplacementField >::SetDisplacementField ( DisplacementFieldTypePointer  ptr)
inline
template<typename TFixedImage , typename TMovingImage , typename TDisplacementField >
void itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDisplacementField >::SetEnergy ( double  e)
inline
template<typename TFixedImage , typename TMovingImage , typename TDisplacementField >
void itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDisplacementField >::SetFixedImage ( const FixedImageType ptr)
inline
template<typename TFixedImage , typename TMovingImage , typename TDisplacementField >
void itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDisplacementField >::SetGradientStep ( double  e)
inline
template<typename TFixedImage , typename TMovingImage , typename TDisplacementField >
void itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDisplacementField >::SetMovingImage ( const MovingImageType ptr)
inline
template<typename TFixedImage , typename TMovingImage , typename TDisplacementField >
void itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDisplacementField >::SetNormalizeGradient ( bool  e)
inline

Member Data Documentation

template<typename TFixedImage , typename TMovingImage , typename TDisplacementField >
DisplacementFieldTypePointer itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDisplacementField >::m_DisplacementField
protected
template<typename TFixedImage , typename TMovingImage , typename TDisplacementField >
double itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDisplacementField >::m_Energy
mutableprotected
template<typename TFixedImage , typename TMovingImage , typename TDisplacementField >
FixedImagePointer itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDisplacementField >::m_FixedImage
protected
template<typename TFixedImage , typename TMovingImage , typename TDisplacementField >
double itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDisplacementField >::m_GradientStep
mutableprotected
template<typename TFixedImage , typename TMovingImage , typename TDisplacementField >
MovingImagePointer itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDisplacementField >::m_MovingImage
protected
template<typename TFixedImage , typename TMovingImage , typename TDisplacementField >
bool itk::PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDisplacementField >::m_NormalizeGradient
protected

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