|
ITK
5.2.0
Insight Toolkit
|
Go to the documentation of this file.
18 #ifndef itkDemonsRegistrationFunction_h
19 #define itkDemonsRegistrationFunction_h
53 template <
typename TFixedImage,
typename TMovingImage,
typename TDisplacementField>
88 static constexpr
unsigned int ImageDimension = Superclass::ImageDimension;
119 m_MovingImageInterpolator = ptr;
126 return m_MovingImageInterpolator;
143 global->m_SumOfSquaredDifference = 0.0;
144 global->m_NumberOfPixelsProcessed = 0L;
145 global->m_SumOfSquaredChange = 0;
151 ReleaseGlobalDataPointer(
void * gd)
const override;
155 InitializeIteration()
override;
160 ComputeUpdate(
const NeighborhoodType & it,
void * gd,
const FloatOffsetType & offset = FloatOffsetType(0.0))
override;
184 m_UseMovingImageGradient = flag;
189 return m_UseMovingImageGradient;
198 SetIntensityDifferenceThreshold(
double);
201 GetIntensityDifferenceThreshold()
const;
207 PrintSelf(std::ostream & os,
Indent indent)
const override;
261 #ifndef ITK_MANUAL_INSTANTIATION
262 # include "itkDemonsRegistrationFunction.hxx"
double m_IntensityDifferenceThreshold
typename ConstNeighborhoodIterator< TDisplacementField >::RadiusType RadiusType
MovingImageGradientCalculatorPointer m_MovingImageGradientCalculator
typename FixedImageType::SpacingType SpacingType
SizeValueType m_NumberOfPixelsProcessed
std::mutex m_MetricCalculationLock
double m_DenominatorThreshold
double m_SumOfSquaredChange
ImageBaseType::PointType PointType
Calculate the derivative by central differencing.
A templated class holding a n-Dimensional vector.
PixelType m_ZeroUpdateReturn
ImageBaseType::SizeType SizeType
InterpolatorPointer m_MovingImageInterpolator
Control indentation during Print() invocation.
typename Superclass::NeighborhoodType NeighborhoodType
GradientCalculatorPointer m_FixedImageGradientCalculator
bool m_UseMovingImageGradient
virtual bool GetUseMovingImageGradient() const
typename InterpolatorType::PointType PointType
typename FixedImageType::SizeType SizeType
ImageBaseType::IndexType IndexType
void * GetGlobalDataPointer() const override
Linearly interpolate an image at specified positions.
Light weight base class for most itk classes.
typename FixedImageType::IndexType IndexType
typename InterpolatorType::Pointer InterpolatorPointer
double m_SumOfSquaredChange
virtual double GetMetric() const
typename ImageType::PixelType PixelType
virtual double GetRMSChange() const
TimeStepType ComputeGlobalTimeStep(void *) const override
typename Superclass::FloatOffsetType FloatOffsetType
typename Superclass::TimeStepType TimeStepType
A templated class holding a n-Dimensional covariant vector.
void SetMovingImageInterpolator(InterpolatorType *ptr)
virtual void SetUseMovingImageGradient(bool flag)
double m_SumOfSquaredDifference
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....
Const version of NeighborhoodIterator, defining iteration of a local N-dimensional neighborhood of pi...
typename MovingImageGradientCalculatorType::Pointer MovingImageGradientCalculatorPointer
double m_SumOfSquaredDifference
InterpolatorType * GetMovingImageInterpolator()
typename Superclass::RadiusType RadiusType
typename Superclass::PixelType PixelType
SizeValueType m_NumberOfPixelsProcessed
typename GradientCalculatorType::Pointer GradientCalculatorPointer
Base class for all image interpolators.
unsigned long SizeValueType