LTI-Lib latest version v1.9 - last update 10 Apr 2010

lti::scalarValuedInterpolation< T > Class Template Reference

This abstract class parents all interpolation functors, which are used to interpolate the values between the pixels or elements of vectors and matrices, espacially images. More...

#include <ltiScalarValuedInterpolation.h>

Inheritance diagram for lti::scalarValuedInterpolation< T >:
Inheritance graph
[legend]
Collaboration diagram for lti::scalarValuedInterpolation< T >:
Collaboration graph
[legend]

List of all members.

Classes

class  parameters
 the parameters for the class scalarValuedInterpolation More...

Public Types

typedef T value_type

Public Member Functions

 scalarValuedInterpolation ()
 scalarValuedInterpolation (const scalarValuedInterpolation &other)
virtual ~scalarValuedInterpolation ()
virtual const char * getTypeName () const
virtual bool use (const vector< T > &vct)
virtual bool use (const matrix< T > &vct)
virtual T apply (const vector< T > &src, const float &x) const =0
virtual T apply (const float &x) const =0
virtual T apply (const matrix< T > &src, const float &row, const float &col) const =0
virtual T apply (const matrix< T > &src, const tpoint< float > &p) const =0
virtual T apply (const float &row, const float &col) const =0
virtual T apply (const tpoint< float > &p) const =0
interpolate (const matrix< T > &src, const float &row, const float &col) const
scalarValuedInterpolationcopy (const scalarValuedInterpolation &other)
virtual functorclone () const =0
const parametersgetParameters () const

Protected Member Functions

Boundary access operators



zeroAt (const vector< T > &img, const int x) const
cstAt (const vector< T > &img, const int x) const
mirrAt (const vector< T > &img, const int x) const
periAt (const vector< T > &img, const int x) const
zeroAt (const matrix< T > &img, const int y, const int x) const
cstAt (const matrix< T > &img, const int y, const int x) const
mirrAt (const matrix< T > &img, const int y, const int x) const
periAt (const matrix< T > &img, const int y, const int x) const

Protected Attributes

const vector< T > * theVector
const matrix< T > * theMatrix

Detailed Description

template<class T>
class lti::scalarValuedInterpolation< T >

This abstract class parents all interpolation functors, which are used to interpolate the values between the pixels or elements of vectors and matrices, espacially images.

The type T of the template is the type of the elements of the vector or matrix used.


Member Typedef Documentation

template<class T>
typedef T lti::scalarValuedInterpolation< T >::value_type

Definition of the type of the elements in the applys (given type T).


Constructor & Destructor Documentation

default constructor

template<class T>
lti::scalarValuedInterpolation< T >::scalarValuedInterpolation ( const scalarValuedInterpolation< T > &  other  ) 

copy constructor

Parameters:
other the object to be copied
template<class T>
virtual lti::scalarValuedInterpolation< T >::~scalarValuedInterpolation (  )  [virtual]

destructor


Member Function Documentation

template<class T>
virtual T lti::scalarValuedInterpolation< T >::apply ( const tpoint< float > &  p  )  const [pure virtual]
template<class T>
virtual T lti::scalarValuedInterpolation< T >::apply ( const float &  row,
const float &  col 
) const [pure virtual]
template<class T>
virtual T lti::scalarValuedInterpolation< T >::apply ( const matrix< T > &  src,
const tpoint< float > &  p 
) const [pure virtual]
template<class T>
virtual T lti::scalarValuedInterpolation< T >::apply ( const matrix< T > &  src,
const float &  row,
const float &  col 
) const [pure virtual]
template<class T>
virtual T lti::scalarValuedInterpolation< T >::apply ( const float &  x  )  const [pure virtual]
template<class T>
virtual T lti::scalarValuedInterpolation< T >::apply ( const vector< T > &  src,
const float &  x 
) const [pure virtual]
template<class T>
virtual functor* lti::scalarValuedInterpolation< T >::clone (  )  const [pure virtual]
template<class T>
scalarValuedInterpolation& lti::scalarValuedInterpolation< T >::copy ( const scalarValuedInterpolation< T > &  other  ) 
template<class T>
T lti::scalarValuedInterpolation< T >::cstAt ( const matrix< T > &  img,
const int  y,
const int  x 
) const [inline, protected]

Access with constant boundary.

template<class T>
T lti::scalarValuedInterpolation< T >::cstAt ( const vector< T > &  img,
const int  x 
) const [inline, protected]

Access with constant boundary.

template<class T>
const parameters& lti::scalarValuedInterpolation< T >::getParameters (  )  const
template<class T>
virtual const char* lti::scalarValuedInterpolation< T >::getTypeName (  )  const [virtual]
template<class T>
T lti::scalarValuedInterpolation< T >::interpolate ( const matrix< T > &  src,
const float &  row,
const float &  col 
) const [inline]

Returns the interpolated value of the matrix at the real valued position (row,col).

This method is NOT virtual and can be used if this interpolation type is used as template parameter in time critical situations.

If not reimplemented in the inherited class, the virtual apply method with the same signature will be called.

Parameters:
src matrix<T> with the source data.
row which row
col which column
Returns:
the interpolated value of the matrix.
template<class T>
T lti::scalarValuedInterpolation< T >::mirrAt ( const matrix< T > &  img,
const int  y,
const int  x 
) const [inline, protected]

Access with mirrored boundary.

template<class T>
T lti::scalarValuedInterpolation< T >::mirrAt ( const vector< T > &  img,
const int  x 
) const [inline, protected]

Access with mirrored boundary.

template<class T>
T lti::scalarValuedInterpolation< T >::periAt ( const matrix< T > &  img,
const int  y,
const int  x 
) const [inline, protected]

Access with periodic boundary.

template<class T>
T lti::scalarValuedInterpolation< T >::periAt ( const vector< T > &  img,
const int  x 
) const [inline, protected]

Access with periodic boundary.

template<class T>
virtual bool lti::scalarValuedInterpolation< T >::use ( const matrix< T > &  vct  )  [virtual]

all the next apply methods will return the interpolated values of the given matrix.

template<class T>
virtual bool lti::scalarValuedInterpolation< T >::use ( const vector< T > &  vct  )  [virtual]

all the next apply methods will return the interpolated values of the given vector.

template<class T>
T lti::scalarValuedInterpolation< T >::zeroAt ( const matrix< T > &  img,
const int  y,
const int  x 
) const [inline, protected]

Access with zero boundary.

template<class T>
T lti::scalarValuedInterpolation< T >::zeroAt ( const vector< T > &  img,
const int  x 
) const [inline, protected]

Access with zero boundary.


Member Data Documentation

template<class T>
const matrix<T>* lti::scalarValuedInterpolation< T >::theMatrix [protected]
template<class T>
const vector<T>* lti::scalarValuedInterpolation< T >::theVector [protected]

the vector in use


The documentation for this class was generated from the following file:

Generated on Sat Apr 10 15:28:40 2010 for LTI-Lib by Doxygen 1.6.1