数字信号处理课程设计报告淮阴工学院数字信号处理课程设计报告课题名称基于MATLAB的语音信号分析和处理-低通部分姓名xx 学号1234567890 班级电子0000 专业电子信息工程归口系部电子与电气工程学院起迄日期2014年12月22日2014年12月26日设计地点13306 指导教师数字信号处理课程设计指导小组提交报告日期2014年12月29日一、设计目的与任务通过数字信号处理的课程设计,使学生对信号的采集,处理,传输,显示,存储和分析等有一个系统的掌握和理解。
巩固和运用数字信号处理课程中的理论知识和实验技能,掌握最基本的数字信号处理的理论和方法,培养学生发现问题,分析问题和解决问题的能力。
二、基本要求1.基本要求设计一个语音信号分析和处理系统,要求学生对所采集的语音信号在MATLAB软件平台下进行频谱分析和处理;2.提高要求对所采集的语音信号叠加干扰噪声进行频谱分析,设计合适的滤波器滤除噪声,恢复原信号。
3.基本教学要求每组一台电脑(附话筒和耳机),电脑安装MATLAB软件。
三、设计要求本次课程设计最终要求提交设计说明书,由以下各部分组成1.理论依据根据设计要求分析系统功能,掌握设计中所需的理论(采样频率,采样位数的概念,采样定理;时域信号的DFT,FFT及频谱分析;数字滤波器的设计原理和方法,各种不同性能的滤波器的性能比较),阐述设计原理。
2.信号采集采集语音信号,画出信号的时域波形图和频谱图。
3.数字滤波器设计根据语音信号的特点,设计IIR低通数字滤波器;FIR低通数字滤波器;画出各种数字滤波器的频率响应图。
4.信号处理1)利用设计的IIR数字滤波器分别对采集的信号进行滤波处理;2)利用设计的FIR数字滤波器分别对采集的信号进行滤波处理;3)在原始的语音信号3000HZ 以上频段叠加白噪声,选择所设计的一种对叠加白噪声后的语音信号处理,滤除白噪声;4)画出处理过程中所得的各种波形及频谱图。
5.信号分析对语音信号进行回放,感觉滤波前后声音的变化。
比较滤波前后语音信号的波形及频谱,对所得结果和滤波器性能进行频谱分析,阐明原因得出结论。
4、理论依据 4.1语音信号的采集和频谱分析利用WINDOWS下的录音机,用单声道录制一段自己的声音,时间在1S内。
然后在MATLAB软件平台下,利用函数WA VREAD对语音信号进行采样,记住采样频率和采样点数。
对语音信号进行快速傅立叶变换,在一个窗口同时画出信号的时域波形图和频谱图,分析语音信号的频谱特点。
4.2 设计数字滤波器低通滤波器性能指标fp2670HZ,fs3300HZ,Ap1dB,As30dB,采样频率为10000hz。
4.3 用滤波器对信号进行滤波1)利用自己设计的IIR 数字滤波器对采集的信号进行滤波处理,在一个窗口同时画出滤波前后语音信号的波形及频谱。
2)利用自己设计的FIR数字滤波器对采集的信号进行滤波处理,在一个窗口同时画出滤波前后语音信号的波形及频谱。
在MATLAB中,FIR滤波器利用fftfilt对信号进行滤波,IIR滤波器利用filter对信号进行滤波。
比较滤波前后语音信号的波形及频谱,对所得结果和滤波器性能进行频谱分析。
4.4回放语音信号对语音信号进行回放,感觉滤波前后语音信号的变化。
4.5对语音信号加入噪声后的频谱分析和滤波在MATLAB软件平台下,在3000HZ以上频段产生一个白噪声,叠加到采集的原始语音信号中,在一个窗口同时画出白噪声的时域波形及频谱,在另一个窗口同时画出叠加噪声前后语音信号的波形及频谱;设计一种滤波器叠加噪声后的语音信号进行处理,滤除叠加的白噪声,在一个窗口同时画出滤波前后语音信号的波形及频谱;比较滤波前后语音信号的波形及频谱,对所得结果进行频谱分析;对语音信号进行回放,感觉滤波前后声音的变化。
5、基于MATLAB的语音信号分析和处理5.1信号采集我们利用函数wavread对语音信号进行采集,原始语音信号及其频谱如下图,信号采集程序见附录。
图1 原始语音信号及其频谱5.2根据性能指标进行数字滤波器设计低通滤波器性能指标fp2670HZ,fs3300HZ,Ap1dB,As30dB,采样频率为10000hz。
1)FIR低通滤波器的设计FIR低通滤波器的幅频特性如下图,设计程序见附录。
图2 FIR低通滤波器的幅频特性2)IIR低通滤波器的设计IIR低通滤波器的幅频特性如下图,设计程序见附录。
图3 IIR低通滤波器的幅频特性5.3用滤波器对信号进行滤波1)FIR低通滤波图4 FIR低通滤波前后的频谱2)IIR低通滤波图5 IIR低通滤波前后的频谱5.4回放语音信号经过加噪声处理后,可在Matlab中用函数sound对声音进行回放。
其调用格式soundy,Fs,soundy和soundy,Fs,bits。
可以察觉滤波前后的声音有明显的变化。
5.5对语音信号加入噪声后的频谱分析和滤波加入噪声后的波形和频谱如下图图6 加噪声后波形和频谱6、课程设计总结数字滤波器是一种对数字信号进行滤波处理以得到期望的响应特性的离散时间系统。
它能够有效的对数字信号进行过滤,过滤数字信号中的干扰和多余成分,保证通信过程的正常实现。
在这次的数字信号处理课程设计里,比较重要的函数有wavread函数、sound函数等,通过上网和翻阅相关书籍,我了解了它们的基本用法。
关于滤波也是很重要的一部分,有FIR滤波器和IIR滤波器的设计。
通过自主学习,我很快地掌握了编程方法。
在设计过程中,我也遇到了理论知识的忘记、编程过少导致的不熟练、软件运用不自如等问题,但是经过思考、请教同学和老师、查阅相关资料,最终这些问题都得到了解决,最终设计出了符合要求的滤波器并通过相关信号进行了验证。
总的来说,通过这次的课程设计,我对MATLAB这个软件有了更深的认识,也进一步熟悉了MATLAB的使用,感觉到MATLAB软件功能的强大,大大增加了我对MATLAB的兴趣。
经过这次的课程设计,使我发现了自己的一些不足,为了在今后的学习和生活中注意改进自己的不足,我要更加努力,学习好专业知识并注重运用到实际,同时,这次课程设计还提高了自己的动手能力、思维能力和学习的积极性,为我今后的学习和工作都提供了不小的帮助,让我受益匪浅。
7、主要参考文献[1]数字信号处理季秀霞国防工业出版社2013 [2]数字信号处理与应用李正周清华大学出版社2008 [3]数字信号处理教程MATLAB释义与实现陈怀琛电子工业出版社2004. [4]数字信号处理原理及MATLAB实现丛玉良电子工业出版社2009 [5]百度文库附录MATLAB程序 1. 语音采集部分[y,fs,nbits]wavread D\UserData\lenovo\Desktop\cc\cc.wav ; soundy,fs,nbits; N length y ; Yffty,N; subplot2,1,1; ploty;title 原始信号波形; subplot2,1,2; plotabsY; title 原始信号频谱 2. FIR滤波器设计部分Ft10000; Fp2670; Fs3300; wp2*Fp/Ft; ws2*Fs/Ft; rp1; rs40; p1-10.-rp/5; s10.-rs/15; fpts[wp ws]; mag[1 0]; dev[p s]; [n,wn,beta,ftype]kaiserordfpts,mag,dev;bfir1n,wn,Kaisern1,beta; [h,w]freqzb,1; plotw/pi,absh; title FIR 低通滤波器; grid; 3. FIR滤波部分ws2*Fs/Ft; rp1; rs30; p1-10.-rp/5; s10.-rs/15; fpts[wp ws]; mag[1 0]; dev[p s]; [n,wn,beta,ftype]kaiserordfpts,mag,dev;bfir1n,wn,Kaisern1,beta; [h,w]freqzb,1; [y,fs,nbits]wavread D\UserData\lenovo\Desktop\cc\cc.wav ; n length y ; noise0.01*randnn,2; synoise; Sffts,n; zfftfiltb,s; soundz; mfftz; subplot2,2,1; plotabsS, g ; title 滤波前信号的频谱; grid; subplot2,2,2; plotabsm, r ; title 滤波后信号的频谱; grid; subplot2,2,3; plots; title 滤波前信号的波形; grid; subplot2,2,4; plotz; title 滤波后的信号波形; grid; 4.IIR滤波器设计部分Fp2670;Fs3300;As30;Ap1;Ft10000; wp2*pi*Fp/Ft; ws2*pi*Fs/Ft; fp2*Ft*tanwp/2; fs2*Fs*tanwp/2; [n11,wn11]buttordwp,ws,1,50, s ; [b11,a11]buttern11,wn11, s ; [num11,den11]bilinearb11,a11,0.5; [h,w]freqznum11,den11; plotw*8000*0.5/pi,absh; legend 用butter设计; 5.IIR滤波部分Fp2670;Fs3300;As30;Ap1;Ft10000; wp2*pi*Fp/Ft; ws2*pi*Fs/Ft; fp2*Ft*tanwp/2; fs2*Fs*tanwp/2; [n,wn]buttordwp,ws,1,40, s ; [b,a]buttern,wn, s ; [num,den]bilinearb,a,0.5; [h,w]freqznum,den; [y,fs,nbits]wavread D\UserData\lenovo\Desktop\cc\cc.wav ; n length y ; noise0.01*randnn,2; synoise; Sffts,n; zfilternum,den,s; soundz mfftz; subplot2,2,1; plotabsS, g ; title 滤波前信号的频谱; grid; subplot2,2,2; plotabsm, r ; title 滤波后信号的频谱; grid; subplot2,2,3; plots; title 滤波前信号的波形; grid; subplot2,2,4; plotz; title 滤波后的信号波形; grid; 6. 加噪声部分[y, fs, nbits] wavread D\UserData\lenovo\Desktop\cc\cc.wav ; nlengthy; noise0.01*randnn,2; zynoise; soundz; Yffty; Noisefftnoise; subplot2,1,1;ploty;hold on; plotnoise, g ;title 加噪声后波形图; hold off; subplot2,1,2;plotabsY;hold on; plotabsNoise, g ;title 加噪声后频谱;。