28 #ifndef itkBSplineDecompositionImageFilter_h
29 #define itkBSplineDecompositionImageFilter_h
34 #include "vnl/vnl_matrix.h"
72 template<
typename TInputImage,
typename TOutputImage >
98 itkStaticConstMacro(ImageDimension,
unsigned int, TInputImage::ImageDimension);
99 itkStaticConstMacro(OutputImageDimension,
unsigned int,
100 TOutputImage::ImageDimension);
110 void SetSplineOrder(
unsigned int SplineOrder);
112 itkGetConstMacro(SplineOrder,
int);
118 itkGetConstMacro( NumberOfPoles,
int );
121 #ifdef ITK_USE_CONCEPT_CHECKING
127 typename TOutputImage::PixelType > ) );
136 void PrintSelf(std::ostream & os,
Indent indent)
const ITK_OVERRIDE;
138 void GenerateData() ITK_OVERRIDE;
141 void GenerateInputRequestedRegion() ITK_OVERRIDE;
144 void EnlargeOutputRequestedRegion(
DataObject *output) ITK_OVERRIDE;
152 virtual
void SetPoles();
155 virtual
bool DataToCoefficients1D();
159 void DataToCoefficientsND();
162 virtual
void SetInitialCausalCoefficient(
double z);
166 virtual
void SetInitialAntiCausalCoefficient(
double z);
170 void CopyImageToImage();
178 void CopyScratchToCoefficients(OutputLinearIterator &);
183 CoefficientsVectorType m_Scratch;
189 unsigned int m_SplineOrder;
199 unsigned int m_IteratorDirection;
203 #ifndef ITK_MANUAL_INSTANTIATION
204 #include "itkBSplineDecompositionImageFilter.hxx"
A multi-dimensional image iterator that visits image pixels within a region in a "scan-line" order...
virtual ~BSplineDecompositionImageFilter() override
ImageLinearIteratorWithIndex< TOutputImage > OutputLinearIterator
ImageToImageFilter< TInputImage, TOutputImage > Superclass
Base class for all process objects that output image data.
BSplineDecompositionImageFilter Self
SmartPointer< Self > Pointer
itk::NumericTraits< typename TOutputImage::PixelType >::RealType CoeffType
std::vector< CoeffType > CoefficientsVectorType
Superclass::InputImagePointer InputImagePointer
SmartPointer< const Self > ConstPointer
Calculates the B-Spline coefficients of an image. Spline order may be from 0 to 5.
Superclass::InputImageType InputImageType
Base class for filters that take an image as input and produce an image as output.
std::vector< double > SplinePolesVectorType
Control indentation during Print() invocation.
ImageBaseType::SizeType SizeType
Superclass::OutputImagePointer OutputImagePointer
#define itkConceptMacro(name, concept)
Superclass::InputImageConstPointer InputImageConstPointer
Base class for all data objects in ITK.