Main Page   Class Hierarchy   Alphabetical List   Compound List   Compound Members

# prapi::dsp::Wavelet Class Reference

`#include <Wavelet.h>`

## Detailed Description

Methods for creating wavelets and performing the wavelet decomposition of 1-D or 2-D signals.

## Static Public Methods

template<class T> util::List< T > qmf (const util::List< T > &filter, int odd=1)
Compute a quadrature mirror filter for a filter.

template<class T> util::List< util::List< T > > orthfilt (const util::List< T > &filter)
Create an orthogonal wavelet filter set from the given scaling filter.

template<class T> util::List< util::Matrix<
T > > &
dwt (const util::Matrix< T > &mat, const util::List< T > &lo, const util::List< T > &hi, util::List< util::Matrix< T > > &result, util::MatrixUtils::ExtendType type=util::MatrixUtils::EXTEND_ZEROPAD)
Performs a two-dimensional one-level discrete wavelet transform on the input matrix.

template<class T> util::List< util::Matrix<
T > > &
dwt (const util::Matrix< T > &mat, std::string wavelet, util::List< util::Matrix< T > > &result, util::MatrixUtils::ExtendType type=util::MatrixUtils::EXTEND_ZEROPAD) throw (util::InvalidArgumentException&)
Performs a two-dimensional one-level discrete wavelet transform on the input matrix.

template<class T> util::List< T > getFilter (std::string name) throw (util::InvalidArgumentException&)
Get the named wavelet scaling filter.

template<class T> util::Matrix< T > dyaddown (const util::Matrix< T > &mat, bool rows, bool columns, int odd=0)
Perform a dyadic downsampling on the input matrix.

template<class T> util::Matrix< T > keep (const util::Matrix< T > &mat, int rows, int cols)
Take the central part of a matrix.

## Member Function Documentation

 template util::List< util::Matrix< T > > & prapi::dsp::Wavelet::dwt ( const util::Matrix< T > & mat, std::string wavelet, util::List< util::Matrix< T > > & result, util::MatrixUtils::ExtendType type = util::MatrixUtils::EXTEND_ZEROPAD ) throw (util::InvalidArgumentException&)` [static]`

Performs a two-dimensional one-level discrete wavelet transform on the input matrix.

Parameters:
 mat the input matrix wavelet the name of the wavelet to be used. result a vector for storing the decomposition result type the type of matrix extension (for handling border effects)
Returns:
four matrices, the first one containing approximation coefficients and the last three containing horizontal, vertical and diagonal details in this order.
Exceptions:
 InvalidArgumentException & if the name is not valid
getFilter(string)

 template util::List< util::Matrix< T > > & prapi::dsp::Wavelet::dwt ( const util::Matrix< T > & mat, const util::List< T > & lo, const util::List< T > & hi, util::List< util::Matrix< T > > & result, util::MatrixUtils::ExtendType type = util::MatrixUtils::EXTEND_ZEROPAD ) ` [static]`

Performs a two-dimensional one-level discrete wavelet transform on the input matrix.

Parameters:
 mat the input matrix lo low-pass decomposition filter hi high-pass decomposition filter result a vector for storing the decomposition result type the type of matrix extension (for handling border effects)
Returns:
four matrices, the first one containing approximation coefficients and the last three containing horizontal, vertical and diagonal details in this order.

 template util::Matrix< T > prapi::dsp::Wavelet::dyaddown ( const util::Matrix< T > & mat, bool rows, bool columns, int odd = 0 ) ` [static]`

Perform a dyadic downsampling on the input matrix.

Parameters:
 param mat the input matrix rows if true, rows are removed cols if true, colums are removed odd if one, odd rows and/or columns are removed. If zero, even rows and/or columns are removed
Returns:
the input matrix with odd or even rows and/or columns removed

 template util::List< T > prapi::dsp::Wavelet::getFilter ( std::string name ) throw (util::InvalidArgumentException&)` [static]`

Get the named wavelet scaling filter.

Filters currently supported are:

• Haar: "haar" (="db1")
• Daubechies: "db1" ... "db10"
Exceptions:
 InvalidArgumentException & if the name is not valid

 template util::Matrix prapi::dsp::Wavelet::keep ( const util::Matrix< T > & mat, int rows, int cols ) ` [inline, static]`

Take the central part of a matrix.

Parameters:
 mat the matrix whose center is to be taken. rows the number of rows in the returned matrix cols the number of columns in the returned matrix

 template util::List< util::List< T > > prapi::dsp::Wavelet::orthfilt ( const util::List< T > & filter ) ` [static]`

Create an orthogonal wavelet filter set from the given scaling filter.

Parameters:
 filter a scaling filter for a wavelet
Returns:
a list of four filters: decomposition low-pass, decomposition high-pass, reconstruction low-pass and reconstruction high-pass in this order.

 template util::List< T > prapi::dsp::Wavelet::qmf ( const util::List< T > & filter, int odd = 1 ) ` [static]`

Compute a quadrature mirror filter for a filter.

The qmf is a reversed version of the input filter with every second item negated.

Parameters:
 filter the input filter odd if one, odd elements are negated. Otherwise, even elements are negated.
Returns:
the qmf filter

The documentation for this class was generated from the following file:
• Wavelet.h

Documentation generated on 11.09.2003 with Doxygen.