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 Version History

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);

Cite As

Peter Kabal (2021). QMFDesign (, MATLAB Central File Exchange. Retrieved .

Comments and Ratings (1)


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

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

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!