File Exchange

image thumbnail


version (319 KB) by Peter Kabal
This program designs a prototype filter for use in a Quadrature Mirror Filter filterbank.


Updated 19 Jun 2009

View License

This program designs a prototype filter for use in a Quadrature Mirror Filter filterbank. This two-channel filterbank has four filters, each based on a lowpass prototype H(z).

This filter bank has an alias cancelling property, but does introduce a ripple into the end-to-end frequency response. The design procedure minimizes a weighted combination of the ripple energy and the stopband energy of the lowpass prototype filter. The design procedure is motivated by a paper by Jain and Crochiere.
V. K. Jain and R. E. Crochiere, “Quadrature Mirror Filter Design in the Time Domain”, IEEE Trans. Acoustics, Speech, Signal Processing, vol. 32, no. 2, pp. 253–361, April 1984.

This routine returns the coefficients of the N-coefficient symmetric prototype filter H(z). The coefficients are normalized to have energy 1/2. When the analysis and synthesis filters are configured as shown above, the overall system has an impulse response with a unity coefficient at a delay of N-1 samples.
The procedure described in the paper above was modified to employ a cautious update during the iteration process – without this modification, the procedure did not converge.

A sample use of QMFDesign is shown below.
N = 32;
h = QMFDesign(N, 0.3, 1);

Comments and Ratings (1)


good work. can some one help me with any paper by Kabal?


Update BSD License Info - no file changes

MATLAB Release Compatibility
Created with R2009a
Compatible with any release
Platform Compatibility
Windows macOS Linux

Discover Live Editor

Create scripts with code, output, and formatted text in a single executable document.

Learn About Live Editor