This is where navigation should be.

FILTERBANK - Apply filterbank

Usage

c=filterbank(f,g,a);

Description

filterbank(f,g,a) applies the filters given in g to the signal f. Each subband will be subsampled by a factor of a (the hop-size). In contrast to ufilterbank, a can be a vector so the hop-size can be channel-dependant. If f is a matrix, the transformation is applied to each column.

The filters g must be a cell-array, where each entry in the cell array corresponds to an FIR filter.

The output coefficients are stored a cell array. More precisely, the n'th cell of c, c{m}, is a 2D matrix of size \(M(n) \times W\) and containing the output from the m'th channel subsampled at a rate of \(a(m)\). c{m}(n,l) is thus the value of the coefficient for time index n, frequency index m and signal channel l.

The coefficients c computed from the signal f and the filterbank with windows g_m are defined by

\begin{equation*} c_m\left(n+1\right)=\sum_{l=0}^{L-1}f\left(l+1\right)g\left(a_mn-l+1\right) \end{equation*}

where \(an-l\) is computed modulo \(L\).

References:

H. Bölcskei, F. Hlawatsch, and H. G. Feichtinger. Frame-theoretic analysis of oversampled filter banks. Signal Processing, IEEE Transactions on, 46(12):3256--3268, 2002.