Main Page   Groups   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Concepts

itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage > Class Template Reference
[Filters that cannot be streamed]

Uses the "l2" spline pyramid implementation of B-Spline Filters to up/down sample an image by a factor of 2. More...

#include <itkBSplineResampleImageFilterBase.h>

Inheritance diagram for itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >:

Inheritance graph
[legend]
Collaboration diagram for itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >:

Collaboration graph
[legend]
List of all members.

Public Types

typedef BSplineResampleImageFilterBase Self
typedef ImageToImageFilter<
TInputImage, TOutputImage > 
Superclass
typedef SmartPointer< SelfPointer
typedef SmartPointer< const
Self
ConstPointer
typedef Superclass::InputImageType InputImageType
typedef TInputImage::IndexType IndexType
typedef TInputImage::SizeType SizeType
typedef TInputImage::RegionType RegionType
typedef Superclass::OutputImagePixelType OutputImagePixelType
typedef itk::ImageLinearConstIteratorWithIndex<
TInputImage > 
ConstInputImageIterator
typedef itk::ImageLinearConstIteratorWithIndex<
TOutputImage > 
ConstOutputImageIterator
typedef itk::ImageLinearIteratorWithIndex<
TOutputImage > 
OutputImageIterator

Public Member Functions

virtual const char * GetClassName () const
 itkStaticConstMacro (ImageDimension, unsigned int, TInputImage::ImageDimension)
void SetSplineOrder (int SplineOrder)
virtual int GetSplineOrder ()

Protected Member Functions

void ReduceNDImage (OutputImageIterator &OutItr)
void ExpandNDImage (OutputImageIterator &OutItr)
virtual void InitializePyramidSplineFilter (int SplineOrder)
virtual void Reduce1DImage (const std::vector< double > &In, OutputImageIterator &Iter, unsigned int traverseSize, ProgressReporter &progress)
virtual void Expand1DImage (const std::vector< double > &In, OutputImageIterator &Iter, unsigned int traverseSize, ProgressReporter &progress)
 BSplineResampleImageFilterBase ()
virtual ~BSplineResampleImageFilterBase ()
void PrintSelf (std::ostream &os, Indent indent) const

Protected Attributes

int m_SplineOrder
int m_gSize
int m_hSize
std::vector< double > m_g
std::vector< double > m_h

Detailed Description

template<class TInputImage, class TOutputImage>
class itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >

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.

See also:
itkBSplineDownsampleImageFilter

itkBSplineUpsampleImageFilter

itkBSplineCenteredL2ResampleImageFilterBase

itkBSplineCenteredResampleImageFilterBase

itkBSplineL2ResampleImageFilterBase

Definition at line 74 of file itkBSplineResampleImageFilterBase.h.


Member Typedef Documentation

template<class TInputImage, class TOutputImage>
typedef itk::ImageLinearConstIteratorWithIndex<TInputImage> itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >::ConstInputImageIterator
 

Iterator typedef support Definition at line 112 of file itkBSplineResampleImageFilterBase.h.

template<class TInputImage, class TOutputImage>
typedef itk::ImageLinearConstIteratorWithIndex<TOutputImage> itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >::ConstOutputImageIterator
 

Iterator typedef support Definition at line 115 of file itkBSplineResampleImageFilterBase.h.

template<class TInputImage, class TOutputImage>
typedef SmartPointer<const Self> itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >::ConstPointer
 

Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.

Reimplemented in itk::BSplineCenteredL2ResampleImageFilterBase< TInputImage, TOutputImage >, itk::BSplineCenteredResampleImageFilterBase< TInputImage, TOutputImage >, and itk::BSplineL2ResampleImageFilterBase< TInputImage, TOutputImage >.

Definition at line 83 of file itkBSplineResampleImageFilterBase.h.

template<class TInputImage, class TOutputImage>
typedef TInputImage::IndexType itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >::IndexType
 

Index typedef support. Definition at line 100 of file itkBSplineResampleImageFilterBase.h.

template<class TInputImage, class TOutputImage>
typedef Superclass::InputImageType itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >::InputImageType
 

InputInputImage typedef support.

Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.

Definition at line 93 of file itkBSplineResampleImageFilterBase.h.

template<class TInputImage, class TOutputImage>
typedef itk::ImageLinearIteratorWithIndex<TOutputImage> itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >::OutputImageIterator
 

Output Iterator typedef support

Reimplemented in itk::BSplineCenteredResampleImageFilterBase< TInputImage, TOutputImage >.

Definition at line 118 of file itkBSplineResampleImageFilterBase.h.

template<class TInputImage, class TOutputImage>
typedef Superclass::OutputImagePixelType itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >::OutputImagePixelType
 

OutputImagePixelType typedef support.

Reimplemented from itk::ImageSource< TOutputImage >.

Reimplemented in itk::BSplineCenteredResampleImageFilterBase< TInputImage, TOutputImage >.

Definition at line 109 of file itkBSplineResampleImageFilterBase.h.

template<class TInputImage, class TOutputImage>
typedef SmartPointer<Self> itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >::Pointer
 

Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.

Reimplemented in itk::BSplineCenteredL2ResampleImageFilterBase< TInputImage, TOutputImage >, itk::BSplineCenteredResampleImageFilterBase< TInputImage, TOutputImage >, and itk::BSplineL2ResampleImageFilterBase< TInputImage, TOutputImage >.

Definition at line 82 of file itkBSplineResampleImageFilterBase.h.

template<class TInputImage, class TOutputImage>
typedef TInputImage::RegionType itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >::RegionType
 

Size typedef support. Definition at line 106 of file itkBSplineResampleImageFilterBase.h.

template<class TInputImage, class TOutputImage>
typedef BSplineResampleImageFilterBase itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >::Self
 

Standard class typedefs.

Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.

Reimplemented in itk::BSplineCenteredL2ResampleImageFilterBase< TInputImage, TOutputImage >, itk::BSplineCenteredResampleImageFilterBase< TInputImage, TOutputImage >, and itk::BSplineL2ResampleImageFilterBase< TInputImage, TOutputImage >.

Definition at line 80 of file itkBSplineResampleImageFilterBase.h.

template<class TInputImage, class TOutputImage>
typedef TInputImage::SizeType itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >::SizeType
 

Size typedef support. Definition at line 103 of file itkBSplineResampleImageFilterBase.h.

template<class TInputImage, class TOutputImage>
typedef ImageToImageFilter<TInputImage,TOutputImage> itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >::Superclass
 

Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.

Reimplemented in itk::BSplineCenteredL2ResampleImageFilterBase< TInputImage, TOutputImage >, itk::BSplineCenteredResampleImageFilterBase< TInputImage, TOutputImage >, and itk::BSplineL2ResampleImageFilterBase< TInputImage, TOutputImage >.

Definition at line 81 of file itkBSplineResampleImageFilterBase.h.


Constructor & Destructor Documentation

template<class TInputImage, class TOutputImage>
itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >::BSplineResampleImageFilterBase  )  [protected]
 

template<class TInputImage, class TOutputImage>
virtual itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >::~BSplineResampleImageFilterBase  )  [inline, protected, virtual]
 

Definition at line 156 of file itkBSplineResampleImageFilterBase.h.


Member Function Documentation

template<class TInputImage, class TOutputImage>
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

Reimplemented in itk::BSplineCenteredResampleImageFilterBase< TInputImage, TOutputImage >.

template<class TInputImage, class TOutputImage>
void itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >::ExpandNDImage OutputImageIterator OutItr  )  [protected]
 

Expands an N-dimension image by a factor of 2 in each dimension.

template<class TInputImage, class TOutputImage>
virtual const char* itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >::GetClassName  )  const [virtual]
 

Run-time type information (and related methods).

Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.

Reimplemented in itk::BSplineCenteredL2ResampleImageFilterBase< TInputImage, TOutputImage >, itk::BSplineCenteredResampleImageFilterBase< TInputImage, TOutputImage >, and itk::BSplineL2ResampleImageFilterBase< TInputImage, TOutputImage >.

template<class TInputImage, class TOutputImage>
virtual int itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >::GetSplineOrder  )  [virtual]
 

Get the spline order

template<class TInputImage, class TOutputImage>
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::BSplineCenteredResampleImageFilterBase< TInputImage, TOutputImage >, and itk::BSplineL2ResampleImageFilterBase< TInputImage, TOutputImage >.

template<class TInputImage, class TOutputImage>
itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >::itkStaticConstMacro ImageDimension  ,
unsigned  int,
TInputImage::ImageDimension 
 

Dimension underlying input image.

template<class TInputImage, class 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::BSplineCenteredL2ResampleImageFilterBase< TInputImage, TOutputImage >, itk::BSplineCenteredResampleImageFilterBase< TInputImage, TOutputImage >, and itk::BSplineL2ResampleImageFilterBase< TInputImage, TOutputImage >.

template<class TInputImage, class 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

Reimplemented in itk::BSplineCenteredResampleImageFilterBase< TInputImage, TOutputImage >.

template<class TInputImage, class TOutputImage>
void itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >::ReduceNDImage OutputImageIterator OutItr  )  [protected]
 

Reduces an N-dimension image by a factor of 2 in each dimension.

template<class TInputImage, class TOutputImage>
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.


Member Data Documentation

template<class TInputImage, class TOutputImage>
std::vector<double> itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >::m_g [protected]
 

Definition at line 162 of file itkBSplineResampleImageFilterBase.h.

template<class TInputImage, class TOutputImage>
int itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >::m_gSize [protected]
 

Definition at line 160 of file itkBSplineResampleImageFilterBase.h.

template<class TInputImage, class TOutputImage>
std::vector<double> itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >::m_h [protected]
 

Definition at line 163 of file itkBSplineResampleImageFilterBase.h.

template<class TInputImage, class TOutputImage>
int itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >::m_hSize [protected]
 

Definition at line 161 of file itkBSplineResampleImageFilterBase.h.

template<class TInputImage, class TOutputImage>
int itk::BSplineResampleImageFilterBase< TInputImage, TOutputImage >::m_SplineOrder [protected]
 

Definition at line 159 of file itkBSplineResampleImageFilterBase.h.


The documentation for this class was generated from the following file:
Generated at Sun Apr 1 02:52:42 2007 for ITK by doxygen 1.3.8 written by Dimitri van Heesch, © 1997-2000