18 #ifndef itkBSplineImageToImageRegistrationMethod_h 19 #define itkBSplineImageToImageRegistrationMethod_h 22 #include "itkBSplineDeformableTransform.h" 29 template <
class TImage>
51 TImage::ImageDimension );
54 typedef BSplineDeformableTransform<double,
55 itkGetStaticConstMacro( ImageDimension ),
56 itkGetStaticConstMacro( ImageDimension )>
85 itkSetMacro( ExpectedDeformationMagnitude,
double );
97 typename TransformType::RegionType::SizeType & regionSize,
98 typename TransformType::SpacingType & regionSpacing,
99 typename TransformType::OriginType & regionOrigin,
100 typename TransformType::DirectionType & regionDirection);
114 virtual void Optimize( MetricType * metric, InterpolatorType * interpolator ) ITK_OVERRIDE;
116 virtual void GradientOptimize( MetricType * metric, InterpolatorType * interpolator );
120 virtual void PrintSelf( std::ostream & os, Indent indent )
const ITK_OVERRIDE;
125 void operator =(
const Self & );
127 double m_ExpectedDeformationMagnitude;
129 unsigned int m_NumberOfControlPoints;
131 unsigned int m_NumberOfLevels;
133 bool m_GradientOptimizeOnly;
139 #ifndef ITK_MANUAL_INSTANTIATION 140 #include "itkBSplineImageToImageRegistrationMethod.txx" 143 #endif // __ImageToImageRegistrationMethod_h itkStaticConstMacro(ImageDimension, unsigned int, TImage::ImageDimension)
virtual ~BSplineImageToImageRegistrationMethod(void)
void ComputeGridRegion(int numberOfControlPoints, typename TransformType::RegionType::SizeType ®ionSize, typename TransformType::SpacingType ®ionSpacing, typename TransformType::OriginType ®ionOrigin, typename TransformType::DirectionType ®ionDirection)
virtual void GenerateData(void) ITK_OVERRIDE
InterpolateImageFunction< TImage, double > InterpolatorType
BSplineTransformType::Pointer BSplineTransformPointer
itkSetClampMacro(NumberOfControlPoints, unsigned int, 3, 2000)
SmartPointer< const Self > ConstPointer
BSplineTransformPointer GetBSplineTransform(void) const
Simplified inverse ITK transforms.
BSplineImageToImageRegistrationMethod(void)
virtual void GradientOptimize(MetricType *metric, InterpolatorType *interpolator)
OptimizedImageToImageRegistrationMethod< TImage > Superclass
SmartPointer< Self > Pointer
itkTypeMacro(BSplineImageToImageRegistrationMethod, OptimizedImageToImageRegistrationMethod)
ImageToImageMetric< TImage, TImage > MetricType
BSplineImageToImageRegistrationMethod Self
itkGetConstMacro(ExpectedDeformationMagnitude, double)
virtual void Optimize(MetricType *metric, InterpolatorType *interpolator) ITK_OVERRIDE
BSplineDeformableTransform< double, itkGetStaticConstMacro(ImageDimension), itkGetStaticConstMacro(ImageDimension)> BSplineTransformType
BSplineTransformType TransformType
virtual TransformType * GetTypedTransform(void)
BSplineTransformType::ParametersType ParametersType
itkGetMacro(GradientOptimizeOnly, bool)
void ResampleControlGrid(int newNumberOfControlPoints, ParametersType &newParameters)
virtual void MultiResolutionOptimize(MetricType *metric, InterpolatorType *interpolator)
itkSetMacro(ExpectedDeformationMagnitude, double)
virtual void PrintSelf(std::ostream &os, Indent indent) const ITK_OVERRIDE