18 #ifndef itkCurvatureRegistrationFilter_h
19 #define itkCurvatureRegistrationFilter_h
24 #if defined( ITK_USE_FFTWF ) || defined( ITK_USE_FFTWD )
97 template<
typename TFixedImage,
typename TMovingImage,
typename TDisplacementField,
98 typename TImageForceFunction =
99 MeanSquareRegistrationFunction< TFixedImage, TMovingImage, TDisplacementField > >
124 itkStaticConstMacro(
ImageDimension,
unsigned int, FixedImageType::ImageDimension);
140 #if defined( ITK_USE_FFTWD )
144 #if defined( ITK_USE_FFTWF )
146 #warning "Using single precision for FFT computations!"
187 void operator=(const
Self &) ITK_DELETE_FUNCTION;
205 #ifndef ITK_MANUAL_INSTANTIATION
206 #include "itkCurvatureRegistrationFilter.hxx"
209 #endif //defined(ITK_USE_FFTWF) || defined(ITK_USE_FFTWD)
Image< RealTypeDFT, TDisplacementField::ImageDimension > DisplacementFieldComponentImageType
CurvatureRegistrationFilter()
Superclass::FixedImageType FixedImageType
Superclass::FixedImagePointer FixedImagePointer
Light weight base class for most itk classes.
Superclass::TimeStepType TimeStepType
CurvatureRegistrationFilter Self
PDEDeformableRegistrationFilter< TFixedImage, TMovingImage, TDisplacementField > Superclass
SmartPointer< const Self > ConstPointer
TImageForceFunction RegistrationFunctionType
TDisplacementField::PixelType DisplacementFieldPixelType
DisplacementFieldComponentImageType::Pointer DisplacementFieldComponentImagePointer
unsigned int m_FixedImageDimensions[ImageDimension]
Superclass::FiniteDifferenceFunctionType FiniteDifferenceFunctionType
Superclass::MovingImageType MovingImageType
static const unsigned int ImageDimension
Deformably register two images using the fast curvature algorithm.
RealTypeDFT * m_DisplacementFieldComponentImage
~CurvatureRegistrationFilter()
virtual void Initialize()
Superclass::TimeStepType TimeStepType
Superclass::MovingImagePointer MovingImagePointer
fftw_plan m_PlanBackwardDCT
DisplacementFieldPixelType::ValueType DisplacementFieldComponentType
virtual void ApplyUpdate(const TimeStepType &dt)
fftw_plan m_PlanForwardDCT
void SetTimeStep(const TimeStepType ts)
void SetConstraintWeight(const float w)
Superclass::DisplacementFieldType DisplacementFieldType
Control indentation during Print() invocation.
RealTypeDFT * m_DisplacementFieldComponentImageDCT
SmartPointer< Self > Pointer
RealTypeDFT * m_DiagonalElements[ImageDimension]
void PrintSelf(std::ostream &os, Indent indent) const override
virtual double GetMetric() const
static const unsigned int DeformationVectorDimension
Templated n-dimensional image class.
Superclass::DisplacementFieldPointer DisplacementFieldPointer