语音信号的数字滤波处理 下载本文

语音信号的数字滤波处理——巴特沃思、bartlett窗滤波器设计

图3.2噪声信号时域和频谱图

(2)设计巴特沃思低通滤波器,MATLAB程序如下。滤波器图如图3.3所示。 %低通滤波

fp=3000;fs=3500;Fs=22050; rp=1;rs=10; wp=2*pi*fp/Fs; ws=2*pi*fs/Fs; Fs1=1;

wap=2*tan(wp/2); was=2*tan(ws/2);

[N,wc]=buttord(wap,was,rp,rs,'s'); [B,A]=butter(N,wc,'s'); [Bz,Az]=bilinear(B,A,Fs1); figure(4);

[h,w]=freqz(Bz,Az,512,Fs1*22050); plot(w,abs(h));

title('巴特沃斯低通滤波器');

xlabel('频率(HZ)');ylabel('耗损(dB)'); gridon;

第 9 页 共 56 页

语音信号的数字滤波处理——巴特沃思、bartlett窗滤波器设计

图3.3巴特沃思低通滤波器图

3.2.2.2巴特沃思高通滤波器

(1)添加低频噪声信号zs0=0.05*cos(2*pi*100*t/22050),MATLAB程序如下。噪声信号的时域及幅频图如图3.4所示。

t=0:length(x)-1;

zs0=0.05*cos(2*pi*100*t/22050); figure(2); subplot(2,1,1) plot(zs0)

title('噪声信号波形'); zs1=fft(zs0,1200);

%sound(zs,FS,bits); %回放噪音 subplot(2,1,2)

plot(f(1:600),abs(zs1(1:600))); title('噪声信号频谱');

第 10 页 共 56 页

语音信号的数字滤波处理——巴特沃思、bartlett窗滤波器设计

图3.4 噪声信号时域和频谱图

(2)设计巴特沃思高通滤波器,MATLAB程序如下。滤波器图如图3.5所示。 %高通滤波

fp=600;fs=400;Fs=22050; rp=1;rs=10; wp=2*pi*fp/Fs; ws=2*pi*fs/Fs; T=1;Fs1=1; wap=2*tan(wp/2); was=2*tan(ws/2);

[N,wc]=buttord(wap,was,rp,rs,'s'); [B,A]=butter(N,wc,'high','s'); [Bz,Az]=bilinear(B,A,Fs1); figure(4);

[h,w]=freqz(Bz,Az,512,Fs1*22050); plot(w,abs(h));

第 11 页 共 56 页

语音信号的数字滤波处理——巴特沃思、bartlett窗滤波器设计

title('巴特沃斯高通滤波器');

xlabel('频率(HZ)');ylabel('耗损(dB)'); grid on;

3.5 巴特沃思高通滤波器图

3.2.2.3巴特沃思带通滤波器

(1)添加低频噪声信号0.05*cos(2*pi*100*t/22050),MATLAB程序如下。噪声信号的时域及幅频图如图3.6所示。

t=0:length(x)-1;

zs0=0.05*cos(2*pi*100*t/22050); figure(2); subplot(2,1,1) plot(zs0)

title('噪声信号波形'); zs1=fft(zs0,1200);

%sound(zs,FS,bits); %回放噪音

第 12 页 共 56 页