CudaPyrBuilder< T > Class Template Reference

An interface class for creating dyadic pyramids from input images. More...

#include <CUDA/CudaPyrBuilder.H>

Inheritance diagram for CudaPyrBuilder< T >:
Inheritance graph
[legend]

List of all members.

Public Member Functions

 CudaPyrBuilder ()
 Create an empty CudaPyrBuilder.
virtual ~CudaPyrBuilder ()
 Virtual destructor for safe inheritance.
virtual CudaPyrBuilder< T > * clone () const =0
 Cloning constructor useful to make clones from pointers:
virtual CudaImageSet< T > build (const CudaImage< T > &image, const int firstlevel, const int depth, CudaPyramidCache< T > *cache=0)=0
 Create a pyramid from an input image, with given depth (=nb levels).
virtual void reset ()
 reset the pyramid - whatever that means for a specific pyramid

Detailed Description

template<class T>
class CudaPyrBuilder< T >

An interface class for creating dyadic pyramids from input images.

A dyadic image pyramid is an array of images such that the next image is obtained from the previous one by applying some filter and decimating the image by a factor 2 horizontally and vertically.

The PyrBuilder classes essentially wrap one of the buildPyr*() functions, binding preset values to all of the trailing arguments. This allows all of the buildPyr*() functions to be presented behind a uniform interface.

PyrBuilder defers the actual handling of input images through the abstract function build(). Different subclasses may implement this to apply different filters (e.g., gaussian, laplacian, gabor) before decimation. GenericPyrBuilder offers a generic implementation, while GaussianPyrBuilder, LaplacianPyrBuilder, and OrientedPyrBuilder are specialized for single filter types.

Definition at line 34 of file CudaPyrBuilder.H.


Constructor & Destructor Documentation

template<class T >
CudaPyrBuilder< T >::CudaPyrBuilder (  )  [inline]

Create an empty CudaPyrBuilder.

Definition at line 55 of file CudaPyrBuilder.C.

template<class T >
CudaPyrBuilder< T >::~CudaPyrBuilder (  )  [inline, virtual]

Virtual destructor for safe inheritance.

Definition at line 62 of file CudaPyrBuilder.C.


Member Function Documentation

template<class T>
virtual CudaImageSet<T> CudaPyrBuilder< T >::build ( const CudaImage< T > &  image,
const int  firstlevel,
const int  depth,
CudaPyramidCache< T > *  cache = 0 
) [pure virtual]

Create a pyramid from an input image, with given depth (=nb levels).

Parameters:
firstlevel if non-zero, then pyramid levels prior to firstlevel may be skipped and left empty, as long as the remaining pyramid levels contain the same values that they would normally contain -- this parameter is only an optimization hint, and subclasses are free to ignore it if they so choose
depth number of levels the pyramid should contain (note that if firstlevel is non-zero, then some of those levels may be empty)

Implemented in CudaReichardtPyrBuilder< T >, and CudaReichardtPyrBuilder< float >.

template<class T>
virtual CudaPyrBuilder<T>* CudaPyrBuilder< T >::clone (  )  const [pure virtual]

Cloning constructor useful to make clones from pointers:

Implemented in CudaReichardtPyrBuilder< T >, and CudaReichardtPyrBuilder< float >.

template<class T >
void CudaPyrBuilder< T >::reset (  )  [inline, virtual]

reset the pyramid - whatever that means for a specific pyramid

a no op implementation is given in this base class - so if pyramids don't need this, they don't have to worry about it

Reimplemented in CudaReichardtPyrBuilder< T >, and CudaReichardtPyrBuilder< float >.

Definition at line 69 of file CudaPyrBuilder.C.


The documentation for this class was generated from the following files:
Generated on Sun May 8 08:21:10 2011 for iLab Neuromorphic Vision Toolkit by  doxygen 1.6.3