《126710100电子信息工程专业课程设计、实验报告、毕业设计、.doc》由会员分享,可在线阅读,更多相关《126710100电子信息工程专业课程设计、实验报告、毕业设计、.doc(12页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、福建农林大学金山学院电子信息工程类课程设计报告课程名称: 数字信号处理课程设计课程设计题目:基于MATLAB的语音信号滤波处理姓 名:陈振韦系:信息与机电工程系专 业:电子信息工程年 级:2012级学 号:126710100指导教师:范群贞职 称:助教2015年 1 月 9 日福建农林大学金山学院电子信息工程类课程设计结果评定序号内容分值评分1选题合理、目的明确,对设计任务理解透彻102方案科学,设计合理,具有可行性、创新性203得出正确的设计结果,完成了软件的编程与调试304设计报告的规范化、参考文献充分(不少于5篇)105能够按照要求完成课程设计演示,答辩思路清晰,语言表达准确,概念清楚、
2、正确206态度认真、学习刻苦、遵守纪律,能够按时提交课程设计报告10成绩合计100指导教师签字:范群贞任务下达日期:2014年 12 月 29 日评定日期:2015 年 1 月 9 日目 录1. 课程设计的目的42. 课程设计的要求43. 课程设计报告内容43.1 采集信号 43.2 频谱分析 43.3干扰信号构建53.4合成信号63.5用数字滤波器对加噪的语音信号进行滤波74.总结95.设计体会10基于MATLAB的语音信号滤波处理1.课程设计的目的随着信息技术的发展,信号处理正朝着数字化、软件化方向发展。数字信号处理的主要研究对象是语音信号和图像信号,语音信号的研究可以从时域和频域两个方面
3、来进行。在语音信号处理方面,人们经常是从频域上进行的,并且普遍采用数字滤波器对语音信号进行滤波处理。数字滤波器主要有无限长脉冲响应(IIR)滤波器和有限长脉冲响应(FIR)滤波器两大类,其设计方法有多种,如双线性变换法、窗函数设计法、插值逼近法和切比雪夫逼近法等等2,但如何在语音的滤波处理上找到一种最佳的滤波方案确是一个重要的问题。随着MATLAB软件尤其是MATLAB的信号处理工作箱的不断完善,不仅方便于数字滤波器的设计,而且还可以使设计达到最优化。本文介绍了IIR及FIR数字滤波器的原理,在MATLAB中实现了用双线性变换法设计的IIR及窗函数设计的FIR滤波器的设计,通过对语音信号进行仿
4、真分析,在语音的滤波处理上找到一种最佳的滤波方案。2.课程设计的要求1、掌握在MATLAB环境下语音信号的采集方法。2、构建的干扰信号为f(t)=10sin(4000𝜋t)。3、掌握数字信号处理的基本概念、基本理论、基本方法。4、利用MATLAB设计滤波器对干扰的语音信号进行滤波。5、掌握MATLAB的程序设计方法。3.课程设计报告内容3.1 采集信号利用Windows下的录音机,录制一句自己的话,保存为“a.wav”文件。3.2 频谱分析y,fs,bits=wavread(C:UsersAdministratorDesktopa.wav); n=length(y) y_p=f
5、ft(y,n); %对n点进行傅里叶变换到频域 f=fs*(0:n/2-1)/n; % 对应点的频率 figure(1) subplot(2,1,1); plot(y); %语音信号的时域波形图 title(原始语音信号时域波形); xlabel(时间) ylabel(幅度) subplot(2,1,2); plot(f,abs(y_p(1:n/2); %语音信号的频谱图 axis(0 20000 0 600); title(原始语音信号频谱图); xlabel(频率Hz); ylabel(幅度); 3.3干扰信号构建y,fs,bits=wavread(C:UsersAdministrator
6、Desktopa.wav); n=1000 t=(0:n-1)/100000; f=fs*(0:n/2-1)/n; y1=10*sin(2*pi*2000*t ); y2=fft(y1,10*n); subplot(2,1,1); plot(y1) %干扰信号的时域图 title(干扰信号时域图); xlabel(时间) ylabel(幅度) subplot(2,1,2); plot(f,abs(y2(1:n/2); % 干扰信号的频谱图 title(干扰信号频谱图); xlabel(频率); ylabel(幅度); 3.4合成信号程序: L=length(y) t=(0:L-1)/30000
7、; A=10; f=4000; noise=A*sin(f*pi*t); y_z=y+noise noise sound(y_z,fs); y_zp=fft(y_z,n); f=fs*(0:n/2-1)/n; figure(2) subplot(2,1,1); plot(y_z); axis(0 50 -12 12); title(加噪信号时域波形); xlabel(时间) ylabel(幅度) subplot(2,1,2); plot(f,abs(y_zp(1:n/2); %加噪语音信号的频谱图 axis(0 5000 0 1000); title(加噪信号频谱图); xlabel(频率);
8、 ylabel(幅度);3.5用数字滤波器对加噪的语音信号进行滤波这里采用FIR数字滤波器,设计FIR数字滤波器的基本方法有窗函数法、频率抽样法、波纹切比雪夫逼近法等,在此使用基于窗函数法设计FIR数字滤波器及其MATLAB。 在FIR滤波器的设计中,加窗是非常重要的一环,选用不同形状的窗函数都是为了得到平坦的幅度响应和较小的阻带波纹,一般希望窗函数满足两项要求:窗谱主瓣尽可能地窄,以获得较陡的过渡带;尽量减少窗谱的最大旁瓣的相对幅度,即能量尽量集中于主瓣,使肩峰和波纹减小,从而增大阻带的衰减。在几种常用的窗函数中,Kasier窗可以通过调整参数值来折中选择主瓣宽度和旁瓣衰减,因此,Kasie
9、r窗具有较大的灵活性。程序: %低通滤波器程序 fp=1500;fc=1700;As=100;Ap=1; wc=2*pi*fc/fs; wp=2*pi*fp/fs; wdel=wc-wp; beta=0.112*(As-8.7); N=ceil(As-8)/2.285/wdel); wn= kaiser(N+1,beta); ws=(wp+wc)/2/pi; b=fir1(N,ws,wn); figure(3); freqz(b,1); %除噪声信号的程序 x=fftfilt(b,y_z); X=fft(x,n); figure(4); subplot(2,2,1); plot(f,abs(y
10、_zp(1:n/2); axis(0 5000 0 600); title(滤波前信号频谱); subplot(2,2,2); plot(f,abs(X(1:n/2); axis(0 2000 0 600); title(滤波后信号频谱); subplot(2,2,3); plot(y_z); title(滤波前信号波形) axis(0 200 -12 12); subplot(2,2,4); plot(x); axis(0 85000 -0.2 0.2); title(滤波后信号波形) 4.总结语音信号分析是语音信号处理的前提和基础,只有分析出可表示语音信号本质特征的参数,才有可能利用这些参
11、数进行高效的语音通信、语音合成和语音识别等处理。而且,语音合成的音质好坏,语音识别率的高低,也都取决于对语音信号分桥的准确性和精确性。因此语音信号分析在语音信号处理应用中具有举足轻重的地位。 根据所分析出的参数的性质的不同,可将语音信号分析分为时域分析、频域分析、倒领域分析等;时域分析方法具有简单、计算量小、物理意义明确等优点,但由于语音信号最重要的感知特性反映在功率谱中,而相位变化只起着很小的作用,所以相对于时域分析来说频域分析更为重要。 通过对大量语音信号的观察和分析发现,语音信号主要有下面两个特点: 在频域内,语音信号的频谱分量主要集中在3003400Hz的范围内。利用这个特点,可以用一
12、个防混迭的带通滤波器将此范围内的语音信号频率分量取出,然后按8kHz的采样率对语音信号进行采样,就可以得到离散的语音信号。 在时域内,语音信号具有“短时性”的特点,即在总体上,语音信号的特征是随着时间而变化的,但在一段较短的时间间隔内,语音信号保持平稳。在浊音段表现出周期信号的特征,在清音段表现出随机噪声的特征。5.设计体会这次的课程设计虽然时间比较短,但我还是受益匪浅的。通过与小伙伴们的共同努力,我们终于完成了这次的课程设计。 通过此次课程设计,我对MATLAB的使用更加熟练,掌握了许多以前没有学好的知识,对FIR滤波器和窗函数等知识有了更加深刻的理解。加深了我对数字信号处理的基本概念、基本
13、理论和基本方法的理解 ,更加全面的掌握了MATLAB设计FIR数字滤波器的方法,从而进行语音信号采集以及时域、频域分析,也加深了我对于用MATLAB设计系统界面的理解。知道了数字滤波是数字信号分析中最重要的组成部分之一,与模拟滤波相比,它具有精度和稳定性高、系统函数容易改变、灵活性强、便于大规模集成和可实现多维滤波等优点。参考文献1. 程佩青. 数字信号处理教程(第三版). 清华大学出版社. 2007.2 2. 陈后金. 信号与系统(第1版). 高等教育出版社. 2007.12 3. 徐靖涛. 基于MATLAB的语音信号分析与处理. 重庆科技学院学报. 2008.1 4. 张文. 基于MATLAB的语音信号的滤波域实现. 山西电子技术. 2008.2 5. 姜献忠. MATLA在数字滤波器设计中的应用. 南京工业职业技术学院学报. 2005.8 6. 武晓春. FIR数字滤波器的MATLAB设计. 甘肃科技纵横. 2005.3 7. 张文,蒋猛,陈智. 基于MATLAB 的语音信号滤波设计与实现. 江师范学院版社. 2010.1