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;
251 #ifndef ITK_MANUAL_INSTANTIATION
252 #include "itkDemonsRegistrationFunction.hxx"
virtual TimeStepType ComputeGlobalTimeStep(void *) const
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
double m_SumOfSquaredDifference
Calculate the derivative by central differencing.
Const version of NeighborhoodIterator, defining iteration of a local N-dimensional neighborhood of pi...
unsigned long SizeValueType
DemonsRegistrationFunction Self
SizeValueType m_NumberOfPixelsProcessed
SimpleFastMutexLock m_MetricCalculationLock
double m_SumOfSquaredChange
double m_SumOfSquaredDifference
double m_DenominatorThreshold
void PrintSelf(std::ostream &os, Indent indent) const
A templated class holding a n-Dimensional vector.
FixedImageType::SpacingType SpacingType
CovariantVector< double, itkGetStaticConstMacro(ImageDimension) > CovariantVectorType
virtual void InitializeIteration()
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.
void operator=(const Self &)
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()
virtual void * GetGlobalDataPointer() const
A templated class holding a geometric point in n-Dimensional space.
A templated class holding a n-Dimensional covariant vector.
Superclass::TimeStepType TimeStepType
ConstNeighborhoodIterator< FixedImageType > FixedImageNeighborhoodIteratorType
PixelType m_ZeroUpdateReturn
Superclass::RadiusType RadiusType
virtual PixelType ComputeUpdate(const NeighborhoodType &neighborhood, void *globalData, const FloatOffsetType &offset=FloatOffsetType(0.0))
double m_SumOfSquaredChange
SmartPointer< const Self > ConstPointer
virtual void ReleaseGlobalDataPointer(void *GlobalData) const