ITK
4.1.0
Insight Segmentation and Registration Toolkit
|
#include <itkBSplineResampleImageFilterBase.h>
Public Types | |
typedef itk::ImageLinearConstIteratorWithIndex < TInputImage > | ConstInputImageIterator |
typedef itk::ImageLinearConstIteratorWithIndex < TOutputImage > | ConstOutputImageIterator |
typedef SmartPointer< const Self > | ConstPointer |
typedef TInputImage::IndexType | IndexType |
typedef Superclass::InputImageType | InputImageType |
typedef itk::ImageLinearIteratorWithIndex < TOutputImage > | OutputImageIterator |
typedef Superclass::OutputImagePixelType | OutputImagePixelType |
typedef SmartPointer< Self > | Pointer |
typedef TInputImage::RegionType | RegionType |
typedef BSplineResampleImageFilterBase | Self |
typedef TInputImage::SizeType | SizeType |
typedef ImageToImageFilter < TInputImage, TOutputImage > | Superclass |
Public Member Functions | |
virtual const char * | GetNameOfClass () const |
virtual int | GetSplineOrder () const |
void | SetSplineOrder (int SplineOrder) |
Static Public Attributes | |
static const unsigned int | ImageDimension = TInputImage::ImageDimension |
Protected Member Functions | |
BSplineResampleImageFilterBase () | |
virtual void | Expand1DImage (const std::vector< double > &In, OutputImageIterator &Iter, unsigned int traverseSize, ProgressReporter &progress) |
void | ExpandNDImage (OutputImageIterator &OutItr) |
virtual void | InitializePyramidSplineFilter (int SplineOrder) |
void | PrintSelf (std::ostream &os, Indent indent) const |
virtual void | Reduce1DImage (const std::vector< double > &In, OutputImageIterator &Iter, unsigned int traverseSize, ProgressReporter &progress) |
void | ReduceNDImage (OutputImageIterator &OutItr) |
virtual | ~BSplineResampleImageFilterBase () |
Protected Attributes | |
std::vector< double > | m_G |
int | m_GSize |
std::vector< double > | m_H |
int | m_HSize |
int | m_SplineOrder |
Private Member Functions | |
BSplineResampleImageFilterBase (const Self &) | |
void | CopyInputLineToScratch (ConstInputImageIterator &Iter) |
void | CopyLineToScratch (ConstInputImageIterator &Iter) |
void | CopyOutputLineToScratch (ConstOutputImageIterator &Iter) |
void | InitializeScratch (SizeType DataLength) |
void | operator= (const Self &) |
Private Attributes | |
std::vector< double > | m_Scratch |
Uses the "l2" spline pyramid implementation of B-Spline Filters to up/down sample an image by a factor of 2.
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 for the l2 pyramid must be between 0 and 3. This code cannot be multi-threaded since the entire image must be traversed in the proper order. This code cannot be streamed and requires the all of the input image. Only up/down samples by a factor of 2. This is a base class and is not meant to be instantiated on its own. It requires one of the itkBSplineDownsampleImageFilter or itkBSplineUpsampleImageFilter classes.
Definition at line 82 of file itkBSplineResampleImageFilterBase.h.
typedef itk::ImageLinearConstIteratorWithIndex< TInputImage > itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >::ConstInputImageIterator |
Iterator typedef support
Definition at line 118 of file itkBSplineResampleImageFilterBase.h.
typedef itk::ImageLinearConstIteratorWithIndex< TOutputImage > itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >::ConstOutputImageIterator |
Iterator typedef support
Definition at line 121 of file itkBSplineResampleImageFilterBase.h.
typedef SmartPointer< const Self > itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >::ConstPointer |
Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.
Reimplemented in itk::BSplineCenteredL2ResampleImageFilterBase< TInputImage, TOutputImage >, itk::BSplineL2ResampleImageFilterBase< TInputImage, TOutputImage >, and itk::BSplineCenteredResampleImageFilterBase< TInputImage, TOutputImage >.
Definition at line 90 of file itkBSplineResampleImageFilterBase.h.
typedef TInputImage::IndexType itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >::IndexType |
Index typedef support.
Definition at line 106 of file itkBSplineResampleImageFilterBase.h.
typedef Superclass::InputImageType itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >::InputImageType |
New macro for creation of through a Smart Pointer InputInputImage typedef support.
Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.
Definition at line 93 of file itkBSplineResampleImageFilterBase.h.
typedef itk::ImageLinearIteratorWithIndex< TOutputImage > itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >::OutputImageIterator |
Output Iterator typedef support
Reimplemented in itk::BSplineCenteredResampleImageFilterBase< TInputImage, TOutputImage >.
Definition at line 124 of file itkBSplineResampleImageFilterBase.h.
typedef Superclass::OutputImagePixelType itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >::OutputImagePixelType |
OutputImagePixelType typedef support.
Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.
Reimplemented in itk::BSplineCenteredResampleImageFilterBase< TInputImage, TOutputImage >.
Definition at line 115 of file itkBSplineResampleImageFilterBase.h.
typedef SmartPointer< Self > itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >::Pointer |
Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.
Reimplemented in itk::BSplineCenteredL2ResampleImageFilterBase< TInputImage, TOutputImage >, itk::BSplineL2ResampleImageFilterBase< TInputImage, TOutputImage >, and itk::BSplineCenteredResampleImageFilterBase< TInputImage, TOutputImage >.
Definition at line 89 of file itkBSplineResampleImageFilterBase.h.
typedef TInputImage::RegionType itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >::RegionType |
Size typedef support.
Definition at line 112 of file itkBSplineResampleImageFilterBase.h.
typedef BSplineResampleImageFilterBase itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >::Self |
Standard class typedefs.
Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.
Reimplemented in itk::BSplineCenteredL2ResampleImageFilterBase< TInputImage, TOutputImage >, itk::BSplineL2ResampleImageFilterBase< TInputImage, TOutputImage >, and itk::BSplineCenteredResampleImageFilterBase< TInputImage, TOutputImage >.
Definition at line 87 of file itkBSplineResampleImageFilterBase.h.
typedef TInputImage::SizeType itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >::SizeType |
Size typedef support.
Definition at line 109 of file itkBSplineResampleImageFilterBase.h.
typedef ImageToImageFilter< TInputImage, TOutputImage > itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >::Superclass |
Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.
Reimplemented in itk::BSplineCenteredL2ResampleImageFilterBase< TInputImage, TOutputImage >, itk::BSplineL2ResampleImageFilterBase< TInputImage, TOutputImage >, and itk::BSplineCenteredResampleImageFilterBase< TInputImage, TOutputImage >.
Definition at line 88 of file itkBSplineResampleImageFilterBase.h.
itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >::BSplineResampleImageFilterBase | ( | ) | [protected] |
virtual itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >::~BSplineResampleImageFilterBase | ( | ) | [inline, protected, virtual] |
Definition at line 161 of file itkBSplineResampleImageFilterBase.h.
itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >::BSplineResampleImageFilterBase | ( | const Self & | ) | [private] |
void itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >::CopyInputLineToScratch | ( | ConstInputImageIterator & | Iter | ) | [private] |
void itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >::CopyLineToScratch | ( | ConstInputImageIterator & | Iter | ) | [private] |
void itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >::CopyOutputLineToScratch | ( | ConstOutputImageIterator & | Iter | ) | [private] |
virtual void itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >::Expand1DImage | ( | const std::vector< double > & | In, |
OutputImageIterator & | Iter, | ||
unsigned int | traverseSize, | ||
ProgressReporter & | progress | ||
) | [protected, virtual] |
The basic operator for expanding a line of data by a factor of 2
void itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >::ExpandNDImage | ( | OutputImageIterator & | OutItr | ) | [protected] |
Expands an N-dimension image by a factor of 2 in each dimension.
virtual const char* itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >::GetNameOfClass | ( | ) | const [virtual] |
Run-time type information (and related methods).
Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.
Reimplemented in itk::BSplineCenteredL2ResampleImageFilterBase< TInputImage, TOutputImage >, itk::BSplineL2ResampleImageFilterBase< TInputImage, TOutputImage >, and itk::BSplineCenteredResampleImageFilterBase< TInputImage, TOutputImage >.
virtual int itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >::GetSplineOrder | ( | ) | const [virtual] |
Get the spline order
virtual void itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >::InitializePyramidSplineFilter | ( | int | SplineOrder | ) | [protected, virtual] |
Initializes the pyramid spline coefficients. Called when Spline order has been set.
Reimplemented in itk::BSplineCenteredL2ResampleImageFilterBase< TInputImage, TOutputImage >, itk::BSplineL2ResampleImageFilterBase< TInputImage, TOutputImage >, and itk::BSplineCenteredResampleImageFilterBase< TInputImage, TOutputImage >.
void itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >::InitializeScratch | ( | SizeType | DataLength | ) | [private] |
void itk::BSplineResampleImageFilterBase< 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 >.
Reimplemented in itk::BSplineCenteredResampleImageFilterBase< TInputImage, TOutputImage >, itk::BSplineCenteredL2ResampleImageFilterBase< TInputImage, TOutputImage >, and itk::BSplineL2ResampleImageFilterBase< TInputImage, TOutputImage >.
void itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >::PrintSelf | ( | std::ostream & | os, |
Indent | indent | ||
) | const [protected, virtual] |
Methods invoked by Print() to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.
Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.
Reimplemented in itk::BSplineCenteredResampleImageFilterBase< TInputImage, TOutputImage >, itk::BSplineCenteredL2ResampleImageFilterBase< TInputImage, TOutputImage >, and itk::BSplineL2ResampleImageFilterBase< TInputImage, TOutputImage >.
virtual void itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >::Reduce1DImage | ( | const std::vector< double > & | In, |
OutputImageIterator & | Iter, | ||
unsigned int | traverseSize, | ||
ProgressReporter & | progress | ||
) | [protected, virtual] |
The basic operator for reducing a line of data by a factor of 2
void itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >::ReduceNDImage | ( | OutputImageIterator & | OutItr | ) | [protected] |
Reduces an N-dimension image by a factor of 2 in each dimension.
void itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >::SetSplineOrder | ( | int | SplineOrder | ) |
Set the spline order for interpolation. Value must be between 0 and 3 with a default of 0.
const unsigned int itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >::ImageDimension = TInputImage::ImageDimension [static] |
Dimension underlying input image.
Definition at line 103 of file itkBSplineResampleImageFilterBase.h.
std::vector< double > itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >::m_G [protected] |
Definition at line 168 of file itkBSplineResampleImageFilterBase.h.
int itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >::m_GSize [protected] |
Definition at line 165 of file itkBSplineResampleImageFilterBase.h.
std::vector< double > itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >::m_H [protected] |
Definition at line 169 of file itkBSplineResampleImageFilterBase.h.
int itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >::m_HSize [protected] |
Definition at line 166 of file itkBSplineResampleImageFilterBase.h.
std::vector< double > itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >::m_Scratch [private] |
Definition at line 183 of file itkBSplineResampleImageFilterBase.h.
int itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >::m_SplineOrder [protected] |
Definition at line 164 of file itkBSplineResampleImageFilterBase.h.