数字信号处理课程设计--基于 MATLAB 的语音去噪处理 联系客服

发布时间 : 星期二 文章数字信号处理课程设计--基于 MATLAB 的语音去噪处理更新完毕开始阅读9a473157ec630b1c59eef8c75fbfc77da3699777

数字信号处理课程设计报告

3.4 利用双线性变换法设计低通滤波器 用双线性变换法设计低通滤波器程序如下所示: figure(4);

% 用双线性变换法设计的低通滤波器 fp=1000;fc=1200;As=100;Ap=1;fs1=22050; wc=2*fc/fs1;wp=2*fp/fs1; [n,wn]=ellipord(wp,wc,Ap,As); [b,a]=ellip(n,Ap,As,wn); freqz(b,a,512,fs1);

x=filter(b,a,y2);%对要进行低通滤波 X=fft(x,40000); 运行结果如图:

9

数字信号处理课程设计报告

3.5 用滤波器对加噪语音信号进行滤波

利用设计的低通滤波器对信号进行滤波,程序如下: figure(5);

subplot(211);plot(x);title('低通滤波后信号波形');

subplot(212);plot(abs(X));title('低通滤波后信号频谱'); sound(x,40000) 运行结果如下图:

10

数字信号处理课程设计报告

3.6 分析滤波前后语音信号波形及频谱的变化

通过比较加噪前后,语音的频谱和语音回放,能明显的感觉到加入噪声后回放的声音与原始的语音信号有很大的不同,前者随较尖锐的干扰啸叫声。从含噪语音信号的频谱图中可以看出含噪声的语音信号频谱,在整个频域范围内分是布均匀。其实,这正是干扰所造成的。通过滤波前后的对比,低通滤波后效果最好,高通滤波后的效果最差。由此可见,语音信号主要分布在低频段,而噪声主要分布在高频段。

11

数字信号处理课程设计报告

3.7 回放语音信号

经过以上的加噪声处理后,可在Matlab中用函数sound对声音进行回放。其调用格式:sound(y,Fs),sound(y)和sound(y,Fs,bits)。可以察觉滤波前后的声音有明显的变化。

3.8小结

本设计圆满的完成了对加噪声语音信号的读取与打开,与课题的要求十分相符;也较好的完成了对原始语音信号和加噪声后的语音信号的频谱分析,通过fft变换,得出了语音信号的频谱图;在滤波这一部分,课题主要是从双线性变换法入手来设计滤波器等入手,实现了预期的滤波效果;完成了界面的设计,但也存在许多的不足,只是很勉强的达到了打开语音文件、显示已定滤波前后的波形图,界面没有用到其它的一些控件,如列表框、下拉菜单等等。

结 论

语音信号处理是语音学与数字信号处理技术相结合的交叉学科,课题在这里不讨论语音学,而是将语音当做一种特殊的信号,即一种“复杂向量”来看待。也就是说,课题更多的还是体现了数字信号处理技术。

从课题的中心来看,课题“基于MATLAB的有噪声语音信号处理”是希望将数字信号处理技术应用于某一实际领域,这里就是指对语音及加噪处理。作为存储于计算机中的语音信号,其本身就是离散化了的向量,我们只需将这些离散的量提取出来,就可以对其进行处理了。这一过程的实现,用到了处理数字信号的强有力工具MATLAB。通过MATLAB里几个命令函数的调用,很轻易的在实际语音与数字信号的理论之间搭了一座桥。

课题的特色在于它将语音信号看作一个向量,于是就把语音数字化了。那么,就可以完全利用数字信号处理的知识来解决语音及加噪处理问题。我们可以像给一般信号做频谱分析一样,来对语音信号做频谱分析,也可以较容易的用数字滤波器来对语音进行滤波处理。通过比较加噪前后,语音的频谱和语音回放,能明显的感觉到加入噪声后回放的声音与原始的语音信号有很大的不同,前者随较尖锐的干扰啸叫声。从含噪语音信号的频谱图中可以看出含噪声的语音信号频谱,在整个频域范围内分是布均匀。其实,这正是干扰所造成的。通过滤波前后的对比,低通滤波后效果最好,高通滤波后的效果最差。由此可见,语音信号主要分布在低频段,而噪

12