File Exchange

image thumbnail

Filter Bank Design

version 1.2 (7.95 KB) by

This function can be used to design uniform and non-uniform filter banks.



View License

The goal is to design M analysis and synthesis FIR filters so that the analysis filters satisfy some frequency specifications and the filter bank(almost) meets the perfect reconstruction (PR) conditions. Both goals are achieved by minimizing the following performance index:
J=w1*(PR error)+w2*(Frequency Specification error)
where w1 and w2 are optional weights

The algorithm can be used to design both uniform (critically/over sampled) and non-uniform (with compatible as well as incompatible sampling set) filter banks. The method is based on the following report:
Moazzen, I. , Agathoklis, P., "A General Approach for Filter Bank Design Using Optimization", Technical Report, 2014.
This report can be downloaded from:

In order to learn how you can use this toolbox, please copy all the m-files included in the "Filter Bank Design" folder into your current Matlab directory and type "help Filter_Bank_Design".

To find other Matlab functions about filter design, please visit:

Comments and Ratings (6)


Iman (view profile)

Thanks a lot Abdullah for reporting this issue. Based on your suggestion, I just updated the function to solve this compatibility problem. Thanks again. You are awesome!

Great work Iman
However it needs an update to work on 2016a and further. You can't declare global after assignment anymore. In "Filter_Bank_Design"
add the following after line 102
N = N_temp;
cost_function_weight = cost_function_weight_temp;
and dont forget to change the function line inputs N and cost_function_weight to N_temp and cost_function_weight_temp.

Fang Du


tian (view profile)

The code is helpful for me to learn the design of filter bank.And the paper,mentioned in the code, comprehensively discusses the designing of filter bank!Thanks!



solving compatibility issue with MATLAB 2016a. Special Thanks to Abdullah Alshammary.




Update Comments


Description Update

MATLAB Release
MATLAB 7.11 (R2010b)

Inspired: Filter Bank Design GUI

Download apps, toolboxes, and other File Exchange content using Add-On Explorer in MATLAB.

» Watch video