资源简介

本人课程设计所编写的程序——用窗函数法、双线性变换法分别设计低通、高通、带通滤波器(包含主界面设计程序),程序检测运行后完全正确,你只要记得修改一下所读入的音频文件路径即可。

资源截图

代码片段和文件信息

%FIR带通滤波器
fb1=1200fb2=3000fc1=1000fc2=3200As=100;Ap=1;fs=22050;
x1=wavread(‘D:\yuyin.wav‘);
wb1=2*pi*fb1/fs;wb2=2*pi*fb2/fs;
wc1=2*pi*fc1/fs;wc2=2*pi*fc2/fs;
wc=pi*(fb1+fc1)/fs;wb=pi*(fb2+fc2)/fs;
wn=wb-wc;
N=ceil((As-7.95)/(2.286*wn))+1;
beta=0.1102*(As-8.7);               
Win=Kaiser(Nbeta);                  
b=fir1(N[wcwb]);
figure(1);
freqz(b1512);
title(‘FIR带通滤波器‘);
f2=filter(b1x1);
figure(2)
subplot(211)
plot(x1)
title(‘FIR带通滤波器滤波前的时域波形‘);
subplot(212)
plot(f2);
title(‘FIR带通滤波器滤波后的时域波形‘);
sound(f244100);                    %播放滤波后的语音信号
F0=fft(f21024);                    %对信号做1024点FFT变换
f=fs*(1:512)/1024;                  %f的范围
figure(3)
y2=fft(x11024);
subplot(211);
plot(fabs(y2(1:512)));             %作原始语音信号的FFT频谱图  画出滤波前的频谱图
title(‘FIR带通滤波器滤波前的频谱‘)
xlabel(‘频率/Hz‘);
ylabel(‘幅值‘);
subplot(212)
plot(fabs(F0(1:512)));             %画出滤波后的频谱图
title(‘FIR带通滤波器滤波后的频谱‘)
xlabel(‘频率/Hz‘);
ylabel(‘幅值‘);

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件        888  2009-12-31 17:53  matlab设计滤波器程序\FIR_gaotong.m

     文件       1413  2009-12-31 18:15  matlab设计滤波器程序\IIR_daitong.m

     文件       1314  2009-12-31 18:15  matlab设计滤波器程序\IIR_ditong.m

     文件       1320  2009-12-31 17:25  matlab设计滤波器程序\IIR_gaotong.m

     文件        973  2009-12-31 17:05  matlab设计滤波器程序\jiemian.m

     文件        372  2010-01-02 22:54  matlab设计滤波器程序\yuyin.m

     文件        440  2010-01-02 22:54  matlab设计滤波器程序\yuyinchuli.m

     文件       1087  2010-01-02 23:10  matlab设计滤波器程序\FIR_daitong.m

     文件        964  2009-12-31 17:17  matlab设计滤波器程序\FIR_ditong.m

     目录          0  2010-03-30 09:46  matlab设计滤波器程序

----------- ---------  ---------- -----  ----

                 8771                    10


评论

共有 条评论