当前位置:首页 > 基于MATLAB的语音信号的采集与处理详解
数字信号处理
图5-5:巴特沃斯滤波器
5-4比较滤波前后语音信号波形及频谱
wp=0.25*pi; %通带截止频率 ws=0.3*pi; %阻带截止频率 Rp=1; %通带最大衰减(db) Rs=15; %阻带最大衰减(db) Fs=22050; Ts=1/Fs;
wp1=2/Ts*tan(wp/2); %将模拟指标转换成数字指标 ws1=2/Ts*tan(ws/2); %将模拟指标转换成数字指标
[N,Wn]=buttord(wp1,ws1,Rp,Rs,'s'); %选择滤波器的最小阶数(估算得到Butterworth低通滤波器的最小阶数N和3dB截止频率Wc)
第 10 页
数字信号处理
[Z,P,K]=buttap(N); %创建Butterworth低通滤波器原型 [Bap,Aap]=zp2tf(Z,P,K); %将零极点增益转换为普遍分子,分母 [b,a]=lp2lp(Bap,Aap,Wn); %将普遍的分子和分母转换为以Wn为截止频率
[bz,az]=bilinear(b,a,Fs); %用双线性变换法实现模拟滤波器到数字滤波器的转换(模拟转换为数字)
[H,W]=freqz(bz,az); %求频率响应 figure(6)
plot(W*Fs/(2*pi),abs(H)) %绘制Butterworth低通滤波器频率响应曲线
grid %添加图格 xlabel('频率/Hz') ylabel('频率响应幅度') title('Butterworth')
f1=filter(bz,az,x2); %利用上面已做好的滤波器(已bz和az为特征的滤波器)对x2信号进行滤波,赋值给f1 figure(7)
subplot(2,1,1) %创建两行一列绘图区间的第1绘图区间 plot(t,x2); %做加噪后的信号时域图形 title('滤波前的时域波形');
subplot(2,1,2) %创建两行一列绘图区间的第2绘图区间 plot(t,f1); title('滤波后的时域波形');
第 11 页
数字信号处理
图5-6:滤波前后图形比较
通过对比分析可知,滤波后的输出波形和原始语音加噪声信号的图形发生了一些变化,在3000-6000Hz之间的信号消失,出现0-1000和7000-8000之间的信号。滤波后的输出波形明显在对应时间幅度比原语音加噪声信号的要小,而且滤波的效果也与滤波器的选择有关,可以看出滤波器的性能差异以及参数的调节会对滤波器产生一定的影响,并且通过回放可以发现滤波前后的声音有变化.低通滤波后,已很接近原来的声音,人耳几乎辨别不出 。从频谱图中我们还可以看出声音的能量信号主要集中在低频部分,说明高频语音信号被滤出,滤波器达到既定要求。信噪比为0.62。
第6章 收获与体会
通过用巴特沃斯滤波器对原始信号进行滤波,对滤波前后的波形分析对比可知,总体可以恢复原始信号波形,效果很明显,稍有点误差,在以后的设计中需要改进。滤波后的输出波形明显在对应时间幅度比原语音加噪声信号的要小,而且滤波的效果也与滤波器的选择有
第 12 页
数字信号处理
关,可以看出滤波器的性能差异以及参数的调节会对滤波器产生一定的影响,并且通过回放可以发现滤波前后的声音有变化.低通滤波后,已很接近原来的声音,人耳几乎辨别不出。 通过为期两周的MATLAB课程设计,我对MATLAB这个仿真软件有了更进一步的认识和了解。在这两周时间里,我通过自己摸索,查阅资料,并且在指导老师朱老师的指导下完成了:语音信号的采集及分析;给原始信号加上一个高频噪声;设计一个滤波器,滤除高频噪声;并最终将课程设计报告总结完毕。
在整个设计过程中我懂得了许多东西,也培养了独立思考和设计的能力,树立了对知识应用的信心,相信会对今后的学习工作和生活有非常大的帮助,并且提高了自己的动手实践操作能力, 使自己充分体会到了在设计过程中的成功喜悦。虽然这个设计做的不怎么好,但是在设计过程中所学到的东西是这次课程设计的最大收获和财富,使我终身受益。 在没有做课程设计以前,觉得课程设计只是对知识的单纯总结,但是通过这次课程设计发现自己的看法有点太片面,课程设计不仅是对前面所学知识的一种检验,也是对自己能力的一种提高,通过这次课程设计使自己明白了原来的那点知识是非常欠缺的,要学习的东西还很多,通过这次课程设计,明白学习是一个长期积累的过程,在以后的工作和生活中都应该不断的学习,努力提高自己的知识和综合素质。
参考文献
[1]:高西全 丁玉美 数字信号处理 第三版 西安:西安电子科技大学出版社, 2008
第 13 页
共分享92篇相关文档