18 #ifndef itkBSplineControlPointImageFunction_h
19 #define itkBSplineControlPointImageFunction_h
57 template <
typename TInputImage,
typename TCoordRep =
double>
59 :
public ImageFunction<TInputImage, typename TInputImage::PixelType, TCoordRep>
72 itkStaticConstMacro(
ImageDimension,
unsigned int, TInputImage::ImageDimension );
78 typedef typename InputImageType::PixelType
PixelType;
80 typedef typename InputImageType::IndexType
IndexType;
86 typedef typename InputImageType::SizeType
SizeType;
128 itkGetConstReferenceMacro( SplineOrder, ArrayType );
146 itkSetMacro( CloseDimension, ArrayType );
151 itkGetConstReferenceMacro( CloseDimension, ArrayType );
157 itkGetConstMacro( Spacing, SpacingType );
164 itkGetConstMacro( Origin, OriginType );
171 itkGetConstMacro( Size, SizeType );
182 itkSetMacro( BSplineEpsilon,
RealType );
183 itkGetConstMacro( BSplineEpsilon, RealType );
244 const
PointType &, const
unsigned int ) const;
252 const
IndexType &, const
unsigned int ) const;
268 const PointType &, const
unsigned int ) const;
272 virtual ~BSplineControlPointImageFunction();
276 BSplineControlPointImageFunction( const
Self& ) ITK_DELETE_FUNCTION;
277 void operator=( const
Self& ) ITK_DELETE_FUNCTION;
301 #ifndef ITK_MANUAL_INSTANTIATION
302 #include "itkBSplineControlPointImageFunction.hxx"
void SetSplineOrder(const unsigned int)
HessianComponentType EvaluateHessianAtContinuousIndex(const ContinuousIndexType &, const unsigned int) const
Light weight base class for most itk classes.
Point< TCoordRep, itkGetStaticConstMacro(ImageDimension) > PointType
virtual OutputType EvaluateAtContinuousIndex(const ContinuousIndexType &) const override
InputImageType::PixelType PixelType
Superclass::PointType PointType
virtual void SetInputImage(const InputImageType *) override
GradientType EvaluateGradientAtParametricPoint(const PointType &) const
Represent the size (bounds) of a n-dimensional image.
KernelOrder3Type::Pointer m_KernelOrder3
BSplineKernelFunction< 3 > KernelOrder3Type
TInputImage InputImageType
void PrintSelf(std::ostream &os, Indent indent) const override
A templated class holding a M x N size Matrix.
Superclass::ContinuousIndexType ContinuousIndexType
InputImageType::RegionType RegionType
GradientType EvaluateGradient(const PointType &) const
ArrayType m_CloseDimension
KernelOrder1Type::Pointer m_KernelOrder1
SmartPointer< Self > Pointer
KernelOrder2Type::Pointer m_KernelOrder2
BSplineKernelFunction< 0 > KernelOrder0Type
HessianComponentType EvaluateHessianAtParametricPoint(const PointType &, const unsigned int) const
RealImageType::Pointer RealImagePointer
BSpline kernel used for density estimation and nonparameteric regression.
InputImageType::RegionType InputImageRegionType
ArrayType m_NumberOfControlPoints
HessianComponentType EvaluateHessianAtIndex(const IndexType &, const unsigned int) const
InputImageType::SpacingType SpacingType
KernelType::Pointer m_Kernel[ImageDimension]
HessianComponentType EvaluateHessian(const PointType &, const unsigned int) const
Image< CoordRepType, ImageDimension > RealImageType
BSplineControlPointImageFunction Self
InputImageType::IndexType IndexType
static const unsigned int ImageDimension
BSpline kernel used for density estimation and nonparameteric regression.
Evaluate a B-spline object given a grid of control points.
SmartPointer< const Self > ConstPointer
ContinuousIndex< TCoordRep, itkGetStaticConstMacro(ImageDimension) > ContinuousIndexType
InputImageType::PointType OriginType
VariableSizeMatrix< CoordRepType > GradientType
ImageFunction< TInputImage, typename TInputImage::PixelType, TCoordRep > Superclass
TInputImage ControlPointLatticeType
FixedArray< unsigned, ImageDimension > ArrayType
virtual OutputType Evaluate(const PointType &) const override
Control indentation during Print() invocation.
InputImageType::SizeType SizeType
BSplineKernelFunction< 1 > KernelOrder1Type
OutputType EvaluateAtParametricPoint(const PointType &) const
RealImagePointer m_NeighborhoodWeightImage
GradientType EvaluateGradientAtContinuousIndex(const ContinuousIndexType &) const
virtual OutputType EvaluateAtIndex(const IndexType &) const override
Evaluates a function of an image at specified position.
KernelOrder0Type::Pointer m_KernelOrder0
Templated n-dimensional image class.
GradientType EvaluateGradientAtIndex(const IndexType &) const
VariableSizeMatrix< CoordRepType > HessianComponentType
BSplineKernelFunction< 2 > KernelOrder2Type
CoordRepType m_BSplineEpsilon
CoxDeBoorBSplineKernelFunction< 3 > KernelType