18#ifndef itkMeanSquareRegistrationFunction_h
19#define itkMeanSquareRegistrationFunction_h
52template <
typename TFixedImage,
typename TMovingImage,
typename TDisplacementField>
78 using IndexType =
typename FixedImageType::IndexType;
79 using SizeType =
typename FixedImageType::SizeType;
99#ifndef ITK_FUTURE_LEGACY_REMOVE
100 using CoordRepType ITK_FUTURE_DEPRECATED(
101 "ITK 6 discourages using `CoordRepType`. Please use `CoordinateType` instead!") =
CoordinateType;
203#ifndef ITK_MANUAL_INSTANTIATION
204# include "itkMeanSquareRegistrationFunction.hxx"
Calculate the derivative by central differencing.
SmartPointer< Self > Pointer
Const version of NeighborhoodIterator, defining iteration of a local N-dimensional neighborhood of pi...
A templated class holding a n-Dimensional covariant vector.
ConstNeighborhoodIterator< TDisplacementField, DefaultBoundaryConditionType > NeighborhoodType
static constexpr unsigned int ImageDimension
Vector< float, Self::ImageDimension > FloatOffsetType
typename ImageType::PixelType PixelType
typename ConstNeighborhoodIterator< TDisplacementField >::RadiusType RadiusType
Control indentation during Print() invocation.
Base class for all image interpolators.
Point< CoordinateType, Self::ImageDimension > PointType
SmartPointer< Self > Pointer
Linearly interpolate an image at specified positions.
typename InterpolatorType::Pointer InterpolatorPointer
TimeStepType ComputeGlobalTimeStep(void *GlobalData) const override
double m_DenominatorThreshold
double m_IntensityDifferenceThreshold
void ReleaseGlobalDataPointer(void *GlobalData) const override
typename FixedImageType::SizeType SizeType
void InitializeIteration() override
InterpolatorType * GetMovingImageInterpolator()
MeanSquareRegistrationFunction Self
CovariantVector< double, Self::ImageDimension > CovariantVectorType
LinearInterpolateImageFunction< MovingImageType, CoordinateType > DefaultInterpolatorType
void * GetGlobalDataPointer() const override
typename FixedImageType::IndexType IndexType
InterpolateImageFunction< MovingImageType, CoordinateType > InterpolatorType
~MeanSquareRegistrationFunction() override=default
PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDisplacementField > Superclass
void PrintSelf(std::ostream &os, Indent indent) const override
typename FixedImageType::SpacingType SpacingType
GradientCalculatorPointer m_FixedImageGradientCalculator
InterpolatorPointer m_MovingImageInterpolator
SmartPointer< Self > Pointer
typename DisplacementFieldType::PixelType DisplacementFieldPixelType
SpacingType m_FixedImageSpacing
static constexpr unsigned int ImageDimension
ConstNeighborhoodIterator< FixedImageType > FixedImageNeighborhoodIteratorType
typename GradientCalculatorType::Pointer GradientCalculatorPointer
CentralDifferenceImageFunction< FixedImageType > GradientCalculatorType
MeanSquareRegistrationFunction()
PixelType ComputeUpdate(const NeighborhoodType &neighborhood, void *globalData, const FloatOffsetType &offset=FloatOffsetType(0.0)) override
SmartPointer< const Self > ConstPointer
typename InterpolatorType::PointType PointType
void SetMovingImageInterpolator(InterpolatorType *ptr)
Implements transparent reference counting.
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....
FixedImageNeighborhoodIteratorType m_FixedImageIterator