ITK
4.1.0
Insight Segmentation and Registration Toolkit
|
#include <itkBSplineDecompositionImageFilter.h>
Calculates the B-Spline coefficients of an image. Spline order may be from 0 to 5.
This class defines N-Dimension B-Spline transformation. It is based on: [1] M. Unser, "Splines: A Perfect Fit for Signal and Image Processing," IEEE Signal Processing Magazine, vol. 16, no. 6, pp. 22-38, November 1999. [2] M. Unser, A. Aldroubi and M. Eden, "B-Spline Signal Processing: Part I--Theory," IEEE Transactions on Signal Processing, vol. 41, no. 2, pp. 821-832, February 1993. [3] M. Unser, A. Aldroubi and M. Eden, "B-Spline Signal Processing: Part II--Efficient Design and Applications," IEEE Transactions on Signal Processing, vol. 41, no. 2, pp. 834-848, February 1993. And code obtained from bigwww.epfl.ch by Philippe Thevenaz
Limitations: Spline order must be between 0 and 5. Spline order must be set before setting the image. Uses mirror boundary conditions. Requires the same order of Spline for each dimension. Can only process LargestPossibleRegion
Definition at line 73 of file itkBSplineDecompositionImageFilter.h.
typedef itk::NumericTraits< typename TOutputImage::PixelType >::RealType itk::BSplineDecompositionImageFilter< TInputImage, TOutputImage >::CoeffType |
Definition at line 95 of file itkBSplineDecompositionImageFilter.h.
typedef SmartPointer< const Self > itk::BSplineDecompositionImageFilter< TInputImage, TOutputImage >::ConstPointer |
Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.
Definition at line 81 of file itkBSplineDecompositionImageFilter.h.
typedef Superclass::InputImageConstPointer itk::BSplineDecompositionImageFilter< TInputImage, TOutputImage >::InputImageConstPointer |
Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.
Definition at line 92 of file itkBSplineDecompositionImageFilter.h.
typedef Superclass::InputImagePointer itk::BSplineDecompositionImageFilter< TInputImage, TOutputImage >::InputImagePointer |
Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.
Definition at line 91 of file itkBSplineDecompositionImageFilter.h.
typedef Superclass::InputImageType itk::BSplineDecompositionImageFilter< TInputImage, TOutputImage >::InputImageType |
Inherit input and output image types from Superclass.
Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.
Definition at line 87 of file itkBSplineDecompositionImageFilter.h.
typedef Superclass::OutputImagePointer itk::BSplineDecompositionImageFilter< TInputImage, TOutputImage >::OutputImagePointer |
Reimplemented from itk::ImageSource< TOutputImage >.
Definition at line 93 of file itkBSplineDecompositionImageFilter.h.
typedef ImageLinearIteratorWithIndex< TOutputImage > itk::BSplineDecompositionImageFilter< TInputImage, TOutputImage >::OutputLinearIterator |
Iterator typedef support
Definition at line 104 of file itkBSplineDecompositionImageFilter.h.
typedef SmartPointer< Self > itk::BSplineDecompositionImageFilter< TInputImage, TOutputImage >::Pointer |
Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.
Definition at line 80 of file itkBSplineDecompositionImageFilter.h.
typedef BSplineDecompositionImageFilter itk::BSplineDecompositionImageFilter< TInputImage, TOutputImage >::Self |
Standard class typedefs.
Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.
Definition at line 78 of file itkBSplineDecompositionImageFilter.h.
typedef ImageToImageFilter< TInputImage, TOutputImage > itk::BSplineDecompositionImageFilter< TInputImage, TOutputImage >::Superclass |
Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.
Definition at line 79 of file itkBSplineDecompositionImageFilter.h.
itk::BSplineDecompositionImageFilter< TInputImage, TOutputImage >::BSplineDecompositionImageFilter | ( | ) | [protected] |
End concept checking
virtual itk::BSplineDecompositionImageFilter< TInputImage, TOutputImage >::~BSplineDecompositionImageFilter | ( | ) | [inline, protected, virtual] |
End concept checking
Definition at line 126 of file itkBSplineDecompositionImageFilter.h.
itk::BSplineDecompositionImageFilter< TInputImage, TOutputImage >::BSplineDecompositionImageFilter | ( | const Self & | ) | [private] |
void itk::BSplineDecompositionImageFilter< TInputImage, TOutputImage >::CopyCoefficientsToScratch | ( | OutputLinearIterator & | ) | [private] |
Copies a vector of data from the Coefficients image to the m_Scratch vector.
void itk::BSplineDecompositionImageFilter< TInputImage, TOutputImage >::CopyImageToImage | ( | ) | [private] |
Used to initialize the Coefficients image before calculation.
void itk::BSplineDecompositionImageFilter< TInputImage, TOutputImage >::CopyScratchToCoefficients | ( | OutputLinearIterator & | ) | [private] |
Copies a vector of data from m_Scratch to the Coefficients image.
virtual::itk::LightObject::Pointer itk::BSplineDecompositionImageFilter< TInputImage, TOutputImage >::CreateAnother | ( | void | ) | const [virtual] |
Create an object from an instance, potentially deferring to a factory. This method allows you to create an instance of an object that is exactly the same type as the referring object. This is useful in cases where an object has been cast back to a base class.
Reimplemented from itk::Object.
virtual bool itk::BSplineDecompositionImageFilter< TInputImage, TOutputImage >::DataToCoefficients1D | ( | ) | [private, virtual] |
Converts a vector of data to a vector of Spline coefficients.
void itk::BSplineDecompositionImageFilter< TInputImage, TOutputImage >::DataToCoefficientsND | ( | ) | [private] |
Converts an N-dimension image of data to an equivalent sized image of spline coefficients.
void itk::BSplineDecompositionImageFilter< TInputImage, TOutputImage >::EnlargeOutputRequestedRegion | ( | DataObject * | output | ) | [protected, virtual] |
This filter must produce all of its output at once.
Reimplemented from itk::ProcessObject.
void itk::BSplineDecompositionImageFilter< TInputImage, TOutputImage >::GenerateData | ( | ) | [protected, virtual] |
A version of GenerateData() specific for image processing filters. This implementation will split the processing across multiple threads. The buffer is allocated by this method. Then the BeforeThreadedGenerateData() method is called (if provided). Then, a series of threads are spawned each calling ThreadedGenerateData(). After all the threads have completed processing, the AfterThreadedGenerateData() method is called (if provided). If an image processing filter cannot be threaded, the filter should provide an implementation of GenerateData(). That implementation is responsible for allocating the output buffer. If a filter an be threaded, it should NOT provide a GenerateData() method but should provide a ThreadedGenerateData() instead.
Reimplemented from itk::ImageSource< TOutputImage >.
void itk::BSplineDecompositionImageFilter< TInputImage, TOutputImage >::GenerateInputRequestedRegion | ( | ) | [protected, virtual] |
This filter requires all of the input image.
Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.
virtual const char* itk::BSplineDecompositionImageFilter< TInputImage, TOutputImage >::GetNameOfClass | ( | ) | const [virtual] |
Run-time type information (and related methods).
Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.
virtual int itk::BSplineDecompositionImageFilter< TInputImage, TOutputImage >::GetSplineOrder | ( | ) | const [virtual] |
static Pointer itk::BSplineDecompositionImageFilter< TInputImage, TOutputImage >::New | ( | ) | [static] |
New macro for creation of through a Smart Pointer
Reimplemented from itk::Object.
void itk::BSplineDecompositionImageFilter< TInputImage, TOutputImage >::operator= | ( | const Self & | ) | [private] |
PushBackInput(), PushFronInput() in the public section force the input to be the type expected by an ImageToImageFilter. However, these methods end of "hiding" the versions from the superclass (ProcessObject) whose arguments are DataObjects. Here, we re-expose the versions from ProcessObject to avoid warnings about hiding methods from the superclass.
Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.
void itk::BSplineDecompositionImageFilter< TInputImage, TOutputImage >::PrintSelf | ( | std::ostream & | os, |
Indent | indent | ||
) | const [protected, virtual] |
End concept checking
Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.
virtual void itk::BSplineDecompositionImageFilter< TInputImage, TOutputImage >::SetInitialAntiCausalCoefficient | ( | double | z | ) | [private, virtual] |
Determines the first coefficient for the anti-causal filtering of the data.
virtual void itk::BSplineDecompositionImageFilter< TInputImage, TOutputImage >::SetInitialCausalCoefficient | ( | double | z | ) | [private, virtual] |
Determines the first coefficient for the causal filtering of the data.
virtual void itk::BSplineDecompositionImageFilter< TInputImage, TOutputImage >::SetPoles | ( | ) | [private, virtual] |
Determines the poles given the Spline Order.
void itk::BSplineDecompositionImageFilter< TInputImage, TOutputImage >::SetSplineOrder | ( | unsigned int | SplineOrder | ) |
Get/Sets the Spline Order, supports 0th - 5th order splines. The default is a 3rd order spline.
itk::BSplineDecompositionImageFilter< TInputImage, TOutputImage >::typedef | ( | Concept::SameDimension< ImageDimension, OutputImageDimension > | ) |
Begin concept checking This class requires DimensionCheck in the form of ( Concept::SameDimension< ImageDimension, OutputImageDimension > )
itk::BSplineDecompositionImageFilter< TInputImage, TOutputImage >::typedef | ( | Concept::Convertible< typename TInputImage::PixelType, typename TOutputImage::PixelType > | ) |
This class requires InputConvertibleToOutputCheck in the form of ( Concept::Convertible< typename TInputImage::PixelType, typename TOutputImage::PixelType > )
itk::BSplineDecompositionImageFilter< TInputImage, TOutputImage >::typedef | ( | Concept::Convertible< double, typename TOutputImage::PixelType > | ) |
This class requires DoubleConvertibleToOutputCheck in the form of ( Concept::Convertible< double, typename TOutputImage::PixelType > )
const unsigned int itk::BSplineDecompositionImageFilter< TInputImage, TOutputImage >::ImageDimension = TInputImage::ImageDimension [static] |
Dimension underlying input image.
Definition at line 98 of file itkBSplineDecompositionImageFilter.h.
TInputImage::SizeType itk::BSplineDecompositionImageFilter< TInputImage, TOutputImage >::m_DataLength [protected] |
Definition at line 141 of file itkBSplineDecompositionImageFilter.h.
unsigned int itk::BSplineDecompositionImageFilter< TInputImage, TOutputImage >::m_IteratorDirection [protected] |
Definition at line 151 of file itkBSplineDecompositionImageFilter.h.
int itk::BSplineDecompositionImageFilter< TInputImage, TOutputImage >::m_NumberOfPoles [protected] |
Definition at line 147 of file itkBSplineDecompositionImageFilter.h.
std::vector< CoeffType > itk::BSplineDecompositionImageFilter< TInputImage, TOutputImage >::m_Scratch [protected] |
These are needed by the smoothing spline routine.
Definition at line 139 of file itkBSplineDecompositionImageFilter.h.
unsigned int itk::BSplineDecompositionImageFilter< TInputImage, TOutputImage >::m_SplineOrder [protected] |
Definition at line 143 of file itkBSplineDecompositionImageFilter.h.
double itk::BSplineDecompositionImageFilter< TInputImage, TOutputImage >::m_SplinePoles[3] [protected] |
Definition at line 145 of file itkBSplineDecompositionImageFilter.h.
double itk::BSplineDecompositionImageFilter< TInputImage, TOutputImage >::m_Tolerance [protected] |
Definition at line 149 of file itkBSplineDecompositionImageFilter.h.
const unsigned int itk::BSplineDecompositionImageFilter< TInputImage, TOutputImage >::OutputImageDimension = TOutputImage::ImageDimension [static] |
Dimension underlying input image.
Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.
Definition at line 100 of file itkBSplineDecompositionImageFilter.h.