数字信号处理在语音信号分析中的应用_第1页
数字信号处理在语音信号分析中的应用_第2页
数字信号处理在语音信号分析中的应用_第3页
数字信号处理在语音信号分析中的应用_第4页
数字信号处理在语音信号分析中的应用_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、数字信号处理课程设计报告数字信号处理在语音信号分析中的应用专业班级: 姓 名: 学 号: 目 录摘 要31、绪论32、课程设计的具体内容42.1.1、读取语音信号的任务42.1.2、任务分析和解决方案52.1.4、运行结果和相应的分析52.2、IIR滤波器设计和滤波处理62.2.1、设计任务62.2.2、任务分析和解决方案72.2.3、编程得到的MATLAB代码72.2.4、运行结果和相应的分析72.3、FIR滤波器设计和滤波处理92.3.1、设计任务92.3.2、任务分析和解决方案92.3.3、编程得到的MATLAB代码92.3.4、运行结果和相应的分析113、总结134、存在的不足及建议1

2、35、参考文献13数字信号处理设计任务书摘 要语音信号滤波处理是研究用数字信号处理技术和语音学知识对语音信号进行处理的新兴的学科,是目前发展最为迅速的信息科学研究领域的核心技术之一。通过语音传递信息是人类最重要、最有效、最常用和最方便的交换信息形式。 Matlab语言是一种数据分析和处理功能十分强大的计算机应用软件,它可以将声音文件变换为离散的数据文件,然后利用其强大的矩阵运算能力处理数据,如数字滤波、傅里叶变换、时域和频域分析、声音回放以及各种图的呈现等,它的信号处理与分析工具箱为语音信号分析提供了十分丰富的功能函数,利用这些功能函数可以快捷而又方便地完成语音信号的处理和分析以及信号的可视化

3、,使人机交互更加便捷。信号处理是Matlab重要应用的领域之一。 本设计通过录制一段语音,对其进行了时域分析,频谱分析,分析语音信号的特性。并应用matlab平台对语音信号进行加噪然后再除去噪声,进一步设计两种种滤波器即高通滤波器、带通滤波器,基于这两种滤波器设计原理,对含加噪的语音信号进行滤波处理。最后对比滤波前后的语音信号的时域和频域特性,回放含噪语音信号和去噪语音信号。论文从理论和实践上比较了不同数字滤波器的滤波效果。1 绪论通过语音传递倍息是人类最重要、最有效、最常用和最方便的交换信息的形式。语言是人类持有的功能,声音是人类常用的工具,是相互传递信息的最主要的手段。因此,语音信号是人们

4、构成思想疏通和感情交流的最主要的途径。并且,由于语言和语音与人的智力活动密切相关,与社会文化和进步紧密相连,所以它具有最大的信息容量和最高的智能水平。现在,人类已开始进入了信息化时代,用现代手段研究语音信号,使人们能更加有效地产生、传输、存储、获取和应用语音信息,这对于促进社会的发展具有十分重要的意义。让计算机能听懂人类的语言,是人类自计算机诞生以来梦寐以求的想法。 随着计算机越来越向便携化方向发展,随着计算环境的日趋复杂化,人们越来越迫切要求摆脱键盘的束缚而代之以语音输人这样便于使用的、自然的、人性化的输人方式。作为高科鼓应用领域的研究热点,语音信号采集与分析从理论的研究到产品的开

5、发已经走过了几十个春秋并且取得了长足的进步。它正在直接与办公、交通、金融、公安、商业、旅游等行业的语音咨询与管理工业生产部门的语声控制,电话、电信系统的自动拨号、辅助控制与查询以及医疗卫生和福利事业的生活支援系统等各种实际应用领域相接轨,并且有望成为下一代操作系统和应用程序的用户界面。可见,语音信号采集与分析的研究将是一项极具市场价值和挑战性的工作。我们今天进行这一领域的研究与开拓就是要让语音信号处理技术走人人们的日常生活当中,并不断朝更高目标而努力。数字滤波器是数字信号处理的基础,用来对信号进行过滤、检测和参数估计等处理。IIR数字滤波器最大的优点是给定一组指标时,它的阶数要比相同组的FIR

6、滤波器的低的多。信号处理中和频谱分析最为密切的理论基础是傅立叶变换(FT)。离散傅立叶变换(DFT)和数字滤波是数字信号处理的最基本内容通过数字信号处理的课程设计,使学生对信号的采集,处理,传输,显示,存储和分析等有一个系统的掌握和理解。巩固和运用数字信号处理课程中的理论知识和实验技能,掌握最基本的数字信号处理的理论和方法,培养学生发现问题,分析问题和解决问题的能力。2、课程设计的具体内容用MATLAB对语音信号进行分析与处理,采集语音信号后,在MATLAB软件平台进行频谱分析;并对所采集的语音信号加入干扰噪声,对加入噪声的信号进行频谱分析,设计合适的滤波器滤除噪声,恢复原信号。 对

7、一段语音信号进行采样;画出采样后语音信号的时域波形和频谱图;用自己设计的滤波器对采集的信号进行滤波,画出滤波后信号的时域波形和频谱,并对滤波前后的信号进行对比,分析信号的变化;回放语音信号;最后,设计一个信号处理系统界面。设计内容:采样一段语音信号;画出语音信号的时域波形和频谱图;给定滤波器的性能指标,设计数字滤波器,并画出滤波器的频率响应;然后用设计的滤波器对采集的信号进行滤波,画出滤波后信号的时域波形和频谱。关键技术:频谱图的理解;设计数字滤波器;数字滤波的方法;解决思路:对语音号进行快速傅里叶变换,得到信号的频谱特性;在MATLAB环境中可以利用函数fir设计FIR滤波器,可以利用函数b

8、utter设计IIR滤波器;利用MATLAB中的函数freqz画出各滤波器的频率响应。2.1.1、读取语音信号的任务自制一段语音信号(要求:我叫*,学号*,是东莞理工学院电子信息工程学院2012级电子卓越班的学生)。2.1.2、任务分析和解决方案在MATLAB软件平台下,利用函数wavread对语音信号进行采样,记住采样频率和采样点数。通过wavread函数的使用,要求理解掌握采样频率、采样位数等概念。2.1.3、编程得到的MATLAB代码z1,Fs=audioread('F:cjlchenjunlin.wma');sound(z1,Fs);%播放语音信号 figur

9、e(1) plot(z1);figure(1);plot(z1);title('时域图');xlabel('时间(n)');ylabel('幅值(n)');频域程序:z2,Fs=audioread('F:cjlchenjunlin.wma');y1=fft(z2);y1=fftshift(y1); sound(z2,Fs); %播放语音信号figure(2);derta_Fs = Fs/length(z2);plot(-Fs/2:derta_Fs: Fs/2-derta_Fs,abs(y1);title('频谱图

10、'); xlabel('时间(n)');ylabel('幅值(n)');2.1.4、运行结果和相应的分析 由图可知人的声音分布在低频。而声音比较底和深沉。2.2、IIR滤波器设计和滤波处理2.2.1、设计任务要求用自己设计的各种滤波器(高通、低通)分别对采集的信号进行滤波。 2.2.2、任务分析和解决方案在MATLAB中,利用函数filter对信号进行滤波。利用MATLAB中的函数freqz画出各滤波器的频率响应。2.2.3、编程得到的MATLAB代码IIR数字低通滤波器fs=22050;z3,Fs=audioread('F:cjlchenjun

11、lin.wma');Ts=1/fs;R1=10;wp=2*pi*1000/fs;%通带截止频率?ws=2*pi*1200/fs;%阻带截止频率Rp=1;%通带衰减?Rl=100;%阻带衰减?wp1=2/Ts*tan(wp/2);%将模拟指标转换成数字指标?ws1=2/Ts*tan(ws/2);N,Wn=buttord(wp1,ws1,Rp,R1,'s');%选择滤波器的最小阶数Z,P,K=buttap(N);%创建butterworth模拟低通滤波器?Bap,Aap=zp2tf(Z,P,K);b,a=lp2lp(Bap,Aap,Wn);%将模拟原型低通滤波器转换为低通滤

12、波器bz,az=bilinear(b,a,fs);%用双线性变换法实现模拟滤波器到数字滤波器的转换?H,W=freqz(bz,az);%绘制频率响应曲线?figure(1)plot(W*fs/(2*pi),abs(H)gridxlabel('频率Hz')ylabel('频率响应幅度')title('IIR低通滤波器')f1=filter(bz,az,z3);figure(2)subplot(2,1,1)plot(z3)%画出滤波前的时域图?title('IIR低通滤波器滤波前的时域波形');subplot(2,1,2)plot(f

13、1);%画出滤波后的时域图?title('IIR低通滤波器滤波后的时域波形');sound(f1,44100);%播放滤波后的信号?F0=fft(f1);f=fs*(0:511)/1024;figure(3)y2=fft(z3);subplot(2,1,1);derta_Fs = Fs/length(z3);plot(-Fs/2:derta_Fs: Fs/2-derta_Fs,abs(y2);%画出滤波前的频谱图?title('IIR低通滤波器滤波前的频谱')xlabel('频率/Hz');ylabel('幅值');subplot

14、(2,1,2)derta_Fs = Fs/length(z2);plot(-Fs/2:derta_Fs: Fs/2-derta_Fs,abs(F0);%画出滤波后的频谱图?title('IIR低通滤波器滤波后的频谱')xlabel('频率/Hz');ylabel('幅值');IIR数字高通滤波器fc1=4000;z2,Fs=audioread('F:cjlchenjunlin.wma');N2=2*pi*3.1/(0.1*pi)wc2=2*pi*fc1/fs;N2=N2+mod(N2,2);Window=hanning(N2+1)

15、;b2=fir1(N2,wc2/pi,'high',Window);x1_high = filter(b2,1,x1);%对信号进行高通滤波figure(1);plot(x1_high);title('信号经过高通滤波器(时域)');figure(2);derta_fs = fs/length(z2);plot(-fs/2:derta_fs:fs/2-derta_fs,abs(fftshift(fft(x1_high);title('信号经过高通滤波器(频域)')2.2.4、运行结果和相应的分析语音高频成分音质非常尖锐,齿音中,声音有些暗淡。语音

16、低频成分音质沉稳,空间感觉强,语音浑厚。IIR的设计理念是这样的:根据所要设计滤波器的参数去确定一个模拟滤波器的传输函数,然后再根据这个传输函数,通过双线性变换、或脉冲响应不变法来进行数字滤波器的设计。它的设计比较复杂,复杂在于它的模拟滤波器传输函数H(s)的确定。这一点我们可以让软件来实现。然后,我们说一下它的具体实现步骤:首先你要先确定你需要一个什么样的滤波器,巴特沃斯型,切比雪夫型,还是其它什么型的滤波器。当你选定一个型号后,你就可以根据设计参数和这个滤波器的计算公式来确定其阶数、传输函数的表达式。通常这个过程中还存在预扭曲的问题。IIR数字低通滤波器波形IIR数字高通滤波器波形2.3、

17、FIR滤波器设计和滤波处理2.3.1、设计任务要求用自己设计的各种滤波器(高通、低通)分别对采集的信号进行滤波2.3.2、任务分析和解决方案在MATLAB中,FIR滤波器利用函数fftfilt对信号进行滤波,IIR滤波器利用函数filter对信号进行滤波。利用MATLAB中的函数freqz画出各滤波器的频率响应。2.3.3、编程得到的MATLAB代码FIR低通滤波器fs=10000;x1,Fs=audioread('F:cjlchenjunlin.wma');wp=2*pi*1000/fs;ws=2*pi*1200/fs;sound(x1,Fs); Rp=1;Rs=100;wd

18、elta=ws-wp;N=ceil(8*pi/wdelta);%取整 wn=(wp+ws)/2;b,a=fir1(N,wn/pi,hamming(N+1);%选择窗函数,并归一化截止频率 figure(1)freqz(b,a,512);title('FIR低通滤波器');f2=filter(b,a,x1);figure(2)subplot(2,1,1)plot(x1)title('FIR低通滤波器滤波前的时域波形');subplot(2,1,2)plot(f2);title('FIR低通滤波器滤波后的时域波形');sound(

19、f2,44100);%播放滤波后的语音信号 F0=fft(f2);f=fs*(0:511)/1024;figure(3)y2=fft(x1);subplot(2,1,1);derta_Fs = Fs/length(x1);plot(-Fs/2:derta_Fs: Fs/2-derta_Fs,abs(y2);title('FIR低通滤波器滤波前的频谱')xlabel('频率/Hz');ylabel('幅值');subplot(2,1,2)derta_Fs = Fs/length(x1);plot(-Fs/2:derta_Fs: Fs/2-

20、derta_Fs,abs(F0);title('FIR低通滤波器滤波后的频谱')xlabel('频率/Hz');ylabel('幅值');FIR高通滤波器y,Fs=audioread('F:cjlchenjunlin.wma');sound(y,Fs); %播放语音信号y_after_fir=filter(b,1,y);figure;plot(y_after_fir);sound(y_after_fir,44100);%播放滤波后的语音信号?title('滤波后信号时域');xlabel('t/s'

21、);ylabel('幅度');fft_y1=fftshift(fft(y_after_fir);figure;derta_Fs = Fs/length(y);plot(-Fs/2:derta_Fs: Fs/2-derta_Fs,abs(fftshift(fft(y_after_fir);title('滤波后信号频谱');xlabel('f/Hz');ylabel('幅度');FIR低通滤波器波形FIR高通滤波器波形2.3.4、运行结果和相应的分析 FIR滤波的效果不如IIR因为其滤波后还能听到很多噪声。FIR:有限脉冲响应滤波器。有限说明其脉冲响应是有限的。与IIR相比,它具有线性相位、容易设计的优点。这也就说明,IIR滤波器具有相位不线性,不容易设计的缺点。而另一方面,IIR却拥有FIR所不具有的缺点,那就是设计同样参数的滤波器,FIR比IIR需要更多的参数。这也就说明,要增加DSP的计算量。DSP需要更多

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论