Multi-Channel Filter Banks

M-Channel Filter Bank

General Setup

Below shows the M-channel filter bank. The first half of the filter bank is known as an analysis filter bank. The second half of the filter bank is known as a synthesis filter bank.

Conditions for Perfect Reconstruction

Orthogonal Filter Bank Condition

General Assumptions

In the orthogonal filter bank condition, we define $$ \begin{eqnarray*} H_k(z) &=& G_k(z^{-1}) \end{eqnarray*} $$ for all $k$ and we assume that $X(z)$ can be defined by $$ X(z) = \sum_{k} \alpha_k G_k(z) $$ where $\alpha_k$ is a scalar constant.

The z-domain

The orthogonal filter bank condition is defined by: $$ \begin{eqnarray*} \sum_{m=0}^{M-1} G_k\left( z e^{-j \frac{2 \pi}{M} m } \right) G_k( z^{-1} e^{j \frac{2 \pi}{M} m } ) &=& M \qquad \textrm{for all } k \\ \sum_{m=0}^{M-1} G_k\left( z e^{-j \frac{2 \pi}{M} m } \right) G_v( z^{-1} e^{j \frac{2 \pi}{M} m } ) &=& 0 \qquad \textrm{for all } k \neq v \\ \end{eqnarray*} $$ Note that we can time-reverse both sides (change $z$ into $z^{-1}$) of these conditions to get the equivalent condition: $$ \begin{eqnarray*} \sum_{m=0}^{M-1} G_k\left( z^{-1} e^{-j \frac{2 \pi}{M} m } \right) G_k( z e^{j \frac{2 \pi}{M} m } ) &=& M \qquad \textrm{for all } k \\ \sum_{m=0}^{M-1} G_k\left( z^{-1} e^{-j \frac{2 \pi}{M} m } \right) G_v( z e^{j \frac{2 \pi}{M} m } ) &=& 0 \qquad \textrm{for all } k \neq v \\ \end{eqnarray*} $$

The Frequency Domain

The orthogonal filter bank condition is defined by: $$ \begin{eqnarray*} \sum_{m=0}^{M-1} G_k\left( \omega - \frac{2 \pi}{M} m \right) G_k\left( -\omega + \frac{2 \pi}{M} m \right) &=& M \qquad \textrm{for all } k \\ \sum_{m=0}^{M-1} G_k\left( \omega - \frac{2 \pi}{M} m \right) G_v\left( -\omega + \frac{2 \pi}{M} m \right) &=& 0 \qquad \textrm{for all } k \neq v \\ \end{eqnarray*} $$ We can show that the first condition is equal to: $$ \begin{eqnarray*} \sum_{m=0}^{M-1} \left| G_k\left( \omega - \frac{2 \pi}{M} m \right) \right|^2 &=& M \qquad \textrm{for all } k \end{eqnarray*} $$

The Time Domain

The orthogonal filter bank condition in time is defined by: $$ \begin{eqnarray*} \sum_{n=-\infty}^{\infty} g_k[n] g_k^*[n-M m] &=& \delta[m] \qquad \textrm{for all } k \\ \sum_{n=-\infty}^{\infty} g_k[n] g_v^*[n-M m] &=& 0 \qquad \textrm{for all } k \neq v \end{eqnarray*} $$