18 #ifndef itkDemonsRegistrationFunction_h
19 #define itkDemonsRegistrationFunction_h
52 template<
typename TFixedImage,
typename TMovingImage,
typename TDisplacementField >
63 TMovingImage, TDisplacementField
82 typedef typename FixedImageType::IndexType
IndexType;
83 typedef typename FixedImageType::SizeType
SizeType;
90 #ifdef ITKV3_COMPATIBILITY
91 typedef typename Superclass::DeformationFieldType DeformationFieldType;
92 typedef typename Superclass::DeformationFieldTypePointer DeformationFieldTypePointer;
209 void operator=(const
Self &) ITK_DELETE_FUNCTION;
250 #ifndef ITK_MANUAL_INSTANTIATION
251 #include "itkDemonsRegistrationFunction.hxx"
void SetMovingImageInterpolator(InterpolatorType *ptr)
MovingImageGradientCalculatorType::Pointer MovingImageGradientCalculatorPointer
Critical section locking class that can be allocated on the stack.
DemonsRegistrationFunction()
Superclass::FixedImageType FixedImageType
Light weight base class for most itk classes.
virtual double GetRMSChange() const
CentralDifferenceImageFunction< MovingImageType, CoordRepType > MovingImageGradientCalculatorType
virtual void SetIntensityDifferenceThreshold(double)
virtual double GetIntensityDifferenceThreshold() const
Superclass::MovingImageType MovingImageType
static const unsigned int ImageDimension
SizeValueType m_NumberOfPixelsProcessed
Superclass::FixedImagePointer FixedImagePointer
MovingImageGradientCalculatorPointer m_MovingImageGradientCalculator
static const unsigned int ImageDimension
SmartPointer< Self > Pointer
Superclass::FloatOffsetType FloatOffsetType
FixedImageType::SizeType SizeType
Superclass::MovingImagePointer MovingImagePointer
ConstNeighborhoodIterator< TDisplacementField >::RadiusType RadiusType
void PrintSelf(std::ostream &os, Indent indent) const override
double m_SumOfSquaredDifference
Calculate the derivative by central differencing.
virtual PixelType ComputeUpdate(const NeighborhoodType &neighborhood, void *globalData, const FloatOffsetType &offset=FloatOffsetType(0.0)) override
Const version of NeighborhoodIterator, defining iteration of a local N-dimensional neighborhood of pi...
unsigned long SizeValueType
DemonsRegistrationFunction Self
SizeValueType m_NumberOfPixelsProcessed
virtual void InitializeIteration() override
SimpleFastMutexLock m_MetricCalculationLock
double m_SumOfSquaredChange
double m_SumOfSquaredDifference
double m_DenominatorThreshold
A templated class holding a n-Dimensional vector.
FixedImageType::SpacingType SpacingType
CovariantVector< double, itkGetStaticConstMacro(ImageDimension) > CovariantVectorType
Superclass::PointType PointType
Superclass::PixelType PixelType
ImageType::PixelType PixelType
FixedImageType::IndexType IndexType
Superclass::DisplacementFieldType DisplacementFieldType
virtual double GetMetric() const
InterpolatorType * GetMovingImageInterpolator(void)
GradientCalculatorPointer m_FixedImageGradientCalculator
Linearly interpolate an image at specified positions.
virtual void ReleaseGlobalDataPointer(void *GlobalData) const override
virtual void SetUseMovingImageGradient(bool flag)
virtual void * GetGlobalDataPointer() const override
virtual bool GetUseMovingImageGradient() const
bool m_UseMovingImageGradient
PDEDeformableRegistrationFunction< TFixedImage, TMovingImage, TDisplacementField > Superclass
Base class for all image interpolaters.
InterpolatorType::Pointer InterpolatorPointer
InterpolatorType::PointType PointType
GradientCalculatorType::Pointer GradientCalculatorPointer
LinearInterpolateImageFunction< MovingImageType, CoordRepType > DefaultInterpolatorType
InterpolateImageFunction< MovingImageType, CoordRepType > InterpolatorType
virtual TimeStepType ComputeGlobalTimeStep(void *) const override
double m_IntensityDifferenceThreshold
Superclass::DisplacementFieldTypePointer DisplacementFieldTypePointer
Superclass::NeighborhoodType NeighborhoodType
InterpolatorPointer m_MovingImageInterpolator
Control indentation during Print() invocation.
CentralDifferenceImageFunction< FixedImageType > GradientCalculatorType
~DemonsRegistrationFunction()
A templated class holding a n-Dimensional covariant vector.
Superclass::TimeStepType TimeStepType
ConstNeighborhoodIterator< FixedImageType > FixedImageNeighborhoodIteratorType
PixelType m_ZeroUpdateReturn
Superclass::RadiusType RadiusType
double m_SumOfSquaredChange
SmartPointer< const Self > ConstPointer