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;
158 virtual PixelType
ComputeUpdate(
const NeighborhoodType & neighborhood,
160 const FloatOffsetType & offset =
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
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
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes...
ConstNeighborhoodIterator< TDisplacementField >::RadiusType RadiusType
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
virtual void InitializeIteration() override
SimpleFastMutexLock m_MetricCalculationLock
double m_DenominatorThreshold
A templated class holding a n-Dimensional vector.
FixedImageType::SpacingType SpacingType
CovariantVector< double, itkGetStaticConstMacro(ImageDimension) > CovariantVectorType
virtual TimeStepType ComputeGlobalTimeStep(void *) const override
Superclass::PointType PointType
Superclass::PixelType PixelType
ImageType::PixelType PixelType
FixedImageType::IndexType IndexType
Superclass::DisplacementFieldType DisplacementFieldType
virtual double GetMetric() const
InterpolatorType * GetMovingImageInterpolator(void)
void PrintSelf(std::ostream &os, Indent indent) const override
virtual void ReleaseGlobalDataPointer(void *GlobalData) const override
GradientCalculatorPointer m_FixedImageGradientCalculator
Linearly interpolate an image at specified positions.
virtual void SetUseMovingImageGradient(bool flag)
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
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
virtual void * GetGlobalDataPointer() const override