18#ifndef itkDemonsRegistrationFilter_h
19#define itkDemonsRegistrationFilter_h
62template <
typename TFixedImage,
typename TMovingImage,
typename TDisplacementField>
82 using typename Superclass::TimeStepType;
85 using typename Superclass::FixedImageType;
86 using typename Superclass::FixedImagePointer;
89 using typename Superclass::MovingImageType;
90 using typename Superclass::MovingImagePointer;
93 using typename Superclass::DisplacementFieldType;
94 using typename Superclass::DisplacementFieldPointer;
97 using typename Superclass::FiniteDifferenceFunctionType;
113 itkSetMacro(UseMovingImageGradient,
bool);
114 itkGetConstMacro(UseMovingImageGradient,
bool);
115 itkBooleanMacro(UseMovingImageGradient);
152 bool m_UseMovingImageGradient{};
156#ifndef ITK_MANUAL_INSTANTIATION
157# include "itkDemonsRegistrationFilter.hxx"
Deformably register two images using the demons algorithm.
DemonsRegistrationFilter()
~DemonsRegistrationFilter() override=default
void InitializeIteration() override
virtual double GetMetric() const
void ApplyUpdate(const TimeStepType &dt) override
void VerifyInputInformation() const override
virtual double GetIntensityDifferenceThreshold() const
virtual void SetIntensityDifferenceThreshold(double)
void PrintSelf(std::ostream &os, Indent indent) const override
typename FiniteDifferenceFunctionType::TimeStepType TimeStepType
Control indentation during Print() invocation.
Light weight base class for most itk classes.
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....