18 #ifndef __itkVariationalRegistrationDemonsFunction_h
19 #define __itkVariationalRegistrationDemonsFunction_h
54 template<
class TFixedImage,
class TMovingImage,
class TDisplacementField >
75 itkStaticConstMacro(ImageDimension,
unsigned int,Superclass::ImageDimension);
90 typedef typename FixedImageType::IndexType
IndexType;
91 typedef typename FixedImageType::SizeType
SizeType;
110 virtual void InitializeIteration();
121 { m_GradientType = GRADIENT_TYPE_FIXED; }
125 { m_GradientType = GRADIENT_TYPE_WARPED; }
130 { m_GradientType = GRADIENT_TYPE_SYMMETRIC; }
137 { m_IntensityDifferenceThreshold = threshold; }
144 {
return m_IntensityDifferenceThreshold; }
153 virtual void PrintSelf(std::ostream& os,
Indent indent)
const;
157 GRADIENT_TYPE_WARPED = 0,
158 GRADIENT_TYPE_FIXED = 1,
159 GRADIENT_TYPE_SYMMETRIC = 2
164 void operator=(
const Self&);
190 #ifndef ITK_MANUAL_INSTANTIATION
191 #include "itkVariationalRegistrationDemonsFunction.hxx"
DisplacementFieldType::ConstPointer DisplacementFieldTypePointer
Base class for force calculation in the variational registration framework.
Superclass::MovingImageType MovingImageType
Light weight base class for most itk classes.
Superclass::FixedImagePointer FixedImagePointer
virtual void SetGradientTypeToWarpedMovingImage()
double m_DenominatorThreshold
GradientCalculatorPointer m_FixedImageGradientCalculator
Superclass::NeighborhoodType NeighborhoodType
virtual void SetIntensityDifferenceThreshold(const double threshold)
Superclass::GlobalDataStruct GlobalDataStruct
FixedImageType::SizeType SizeType
GradientCalculatorPointer m_WarpedImageGradientCalculator
Calculate the derivative by central differencing.
Const version of NeighborhoodIterator, defining iteration of a local N-dimensional neighborhood of pi...
Superclass::DisplacementFieldType DisplacementFieldType
virtual void SetGradientTypeToSymmetric()
~VariationalRegistrationDemonsFunction()
virtual double GetIntensityDifferenceThreshold() const
GradientCalculatorType::Pointer GradientCalculatorPointer
Superclass::PixelType PixelType
A templated class holding a n-Dimensional vector.
FixedImageType::SpacingType SpacingType
MovingImageType::ConstPointer MovingImagePointer
Superclass::FloatOffsetType FloatOffsetType
CentralDifferenceImageFunction< FixedImageType > GradientCalculatorType
ImageType::PixelType PixelType
GradientType m_GradientType
VariationalRegistrationDemonsFunction Self
Superclass::MovingImagePointer MovingImagePointer
FixedImageType::IndexType IndexType
TMovingImage MovingImageType
Superclass::MaskImagePointer MaskImagePointer
Superclass::MaskImageType MaskImageType
Superclass::DisplacementFieldTypePointer DisplacementFieldTypePointer
FixedImageType::ConstPointer FixedImagePointer
TFixedImage FixedImageType
virtual void SetGradientTypeToFixedImage()
SmartPointer< Self > Pointer
Control indentation during Print() invocation.
TDisplacementField DisplacementFieldType
double m_IntensityDifferenceThreshold
PixelType m_ZeroUpdateReturn
VariationalRegistrationFunction< TFixedImage, TMovingImage, TDisplacementField > Superclass
This class computes different Demon forces in the variational registration framework.
Templated n-dimensional image class.
Superclass::FixedImageType FixedImageType
SmartPointer< const Self > ConstPointer