how to reconstract a signal which through filter bank(16 bands)

2 views (last 30 days)
Hi,now i design filter bank with 16 bands.I use a music(15s) through it, but when i hear the filter result ,it sounds so rough.Later,i find i can use analysis filter with integrated filter,but i do not know how to design.thank you!
there are my code
function [b]=fdbp1(x,fp1,fp2,fsotp1,fstop2,fs)
% ues fdesign.bandpass to design bandpass filter bank
% y filter result;
% x signal;
% fp1 left passband fre;fp2 right passband fre; fstop1 left stopband fre;fstop2 right fre;rp,rs
rp=1;rs=40;
for i=1:length(fp1)
H=fdesign.bandpass(fstop1(i),fp1(i),fp2(i),fstop2(i),rs,rp,rs,fs);
Hd=design(H,'butter');
y=filter(Hd,x);
t=(0:length(x)-1)/fs;
B{i}=y;
end
end

Answers (1)

Vishal Bhutani
Vishal Bhutani on 7 Jan 2019
Based on my understanding you want to reconstruct the original signal by using analysis filter. The link attached below might be helpful for you, as it contains an example for " how to design perfect reconstruction using two-channel filter banks":
Hope it helps.

Categories

Find more on Filter Banks in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!