您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 畜牧/养殖 > 数字信号处理--语音信号分析与处理及其MATLAB实现..
山东建筑大学信电学院课程设计说明书1目录摘要………………………………………………………………………………………21设计目的与要求……………………………………………………………………32设计步骤……………………………………………………………………………43设计原理及内容……………………………………………………………………53.1理论依据………………………………………………………………………53.2信号采集………………………………………………………………………63.3构造受干扰信号并对其FFT频谱分析………………………………………83.4数字滤波器设计………………………………………………………………93.5信号处理………………………………………………………………………10总结…………………………………………………………………………………12致谢…………………………………………………………………………………13参考文献………………………………………………………………………………14山东建筑大学信电学院课程设计说明书2摘要用MATLAB对语音信号进行分析与处理,采集语音信号后,在MATLAB软件平台进行频谱分析;并对所采集的语音信号加入干扰噪声,对加入噪声的信号进行频谱分析,设计合适的滤波器滤除噪声,恢复原信号。数字滤波器是数字信号处理的基础,用来对信号进行过滤、检测和参数估计等处理。IIR数字滤波器最大的优点是给定一组指标时,它的阶数要比相同组的FIR滤波器的低的多。信号处理中和频谱分析最为密切的理论基础是傅立叶变换(FT)。离散傅立叶变换(DFT)和数字滤波是数字信号处理的最基本内容。关键词:MATLAB;语音信号;加入噪声;滤波器;滤波山东建筑大学信电学院课程设计说明书31.设计目的与要求(1)待处理的语音信号是一个在20Hz~20kHz频段的低频信号(2)要求MATLAB对语音信号进行分析和处理,采集语音信号后,在MATLAB平台进行频谱分析;并对所采集的语音信号加入干扰噪声,对加入噪声的信号进行频谱分析,设计合适的滤波器进行滤除噪声,恢复原信号。山东建筑大学信电学院课程设计说明书42.设计步骤(1)选择一个语音信号或者自己录制一段语音文件作为分析对象;(2)对语音信号进行采样,并对语音信号进行FFT频谱分析,画出信号的时域波形图和频谱图;(3)利用MATLAB自带的随机函数产生噪声加入到语音信号中,对语音信号进行回放,对其进行FFT频谱分析;(4)设计合适滤波器,对带有噪声的语音信号进行滤波,画出滤波前后的时域波形图和频谱图,比较加噪前后的语音信号,分析发生的变化;(5)对语音信号进行回放,感觉声音变化。山东建筑大学信电学院课程设计说明书53.设计原理及内容3.1理论依据(1)采样频率:采样频率(也称采样速度或者采样率)定义了每秒从连续信号中提取并组成离散信号的采样个数,它用赫兹(Hz)来表示。采样频率只能用于周期性采样的采样器,对于非周期采样的采样器没有规则限制。通俗的讲,采样频率是指计算机每秒钟采集多少个声音样本,是描述声音文件的音质、音调,衡量声卡、声音文件的质量标准。采样频率越高,即采样的间隔时间越短,则在单位之间内计算机得到的声音样本数据就越多,对声音波形的表示也越精确。(2)采样位数:即采样值或取样值,用来衡量声音波动变化的参数。(3)采样定理:在进行模拟/数字信号的的转换过程中,当采样频率fs.max大于信号中,最高频率fmax的2倍时,即:fs.max=2fmax,则采样之后的数字信号完整的保留了原始信号中的信息,一般实际应用中保证采样频率为信号最高频率的5~10倍;采样频率又称乃奎斯特定理。(4)时域信号的FFT分析:信号的频谱分析就是计算信号的傅立叶变换。连续信号与系统的傅立叶分析显然不便于直接用计算机进行计算,使其应用受到限制。而FFT是一种时域和频域均离散化的变换,适合数值计算,成为用计算机分析离散信号和系统的的有力工具。对连续信号和系统,可以通过时域采样,应用DFT进行近似谱分析。(5)数字信号滤波器原理和方法:IIR数字滤波器系统函数:其中H(z)成为N阶IIR数字滤波器系统函数。IIR滤波器设计方法有间接和直接法,间接法是借助于模拟滤波器的设计方法进行的。其步骤是:先设计过度模拟滤波器得到系统函数Ha(s),然后将Ha(s)按某种方法转换成数字滤波器的系统函数H(z)。利用有限脉冲响应(FIR)滤波器设计滤波器。有限脉冲响应滤波器在保证山东建筑大学信电学院课程设计说明书6幅度特性满足技术要求的同时,很容易做到有严格的线性相位特性。用N表示FIR滤波器单位脉冲响应h(n)的长度,其系统函数H(z)为H(z)是z-1的N-1次多项式,它在z平面上有N-1个零点,在原点z=0处有一个N-1重极点。因此,H(z)永远稳点。稳定和线性相位是FIR滤波器最突出的优点。(6)各种不同类型滤波器的性能比较:巴特沃斯滤波器具有单调下降的幅频特性;切比罗夫滤波器的幅频特性在通带或阻带有等波纹特性,可以提高选择性;贝塞尔滤波器通带内有有较好的线性相位特性;椭圆滤波器的选择性相对前三种是最好的,但通带和阻带内均呈现等波纹幅频特性,相对特性的非线性稍重。IIR数字滤波器最大的优点是给定一组指标时,它的阶数要比相同组的FIR滤波器的低的多。IIR数字滤波器的设计方法是利用模拟滤波器成熟的理论及设计图进行设计的,因而保留了一些典型模拟滤波器的优良的幅度特性。(7)离散傅立叶变换其中WN=,N为DFT变换空间长度。3.2信号采集从网上下载一段wav格式的文件,把文件“marble”保存在MATLAB文件夹下的work文件夹中,以.wav格式保存,这是windows操作系统规定的声音文件保存的标准。[x1,fs,bits]=wavread('marble.wav');%把语音信号进行加载入MATLAB仿真软件平台中,采样值放在向量x1中,fs表示采样频率(Hz),bits表示采样位数。x=x1(1:5000,1);%对双声道信号取单声道并取其5000点X=fft(x,4096);%对信号做4096点FFT变换调用参数x为被变换的时域序列向量,变换区间长度为4096,当x小于4096山东建筑大学信电学院课程设计说明书7时,fft函数自动在x后面补零。函数返回x的4096点DFT变换结果X。当x大于4096时,fft函数计算x前面4096个元素构成的长序列的4096点DFT,忽略x后面的元素。进行图形分区,首先画出语音信号的时域波形,然后对其进行频谱分析。在MATLAB中利用fft对信号进行快速傅立叶变换,得到信号的频谱特性。magX=abs(X);%把傅里叶变换后的复数值取模subplot(2,1,1);%图形分区plot(x);title('原始信号波形');%绘制波形f=(0:2047)*fs/2/2048;%单位转换subplot(2,1,2);plot(f,magX(1:2048));title('原始信号频谱');其程序如下:[x1,fs,bits]=wavread('marble.wav');%读取语音信号x=x1(1:5000,1);%对双声道信号取单声道并取其5000点X=fft(x,4096);%对信号做4096点FFT变换magX=abs(X);%把傅里叶变换后的复数值取模subplot(2,1,1);%图形分区plot(x);title('原始信号波形');%绘制波形f=(0:2047)*fs/2/2048;%单位转换subplot(2,1,2);plot(f,magX(1:2048));title('原始信号频谱');程序结果如下图:山东建筑大学信电学院课程设计说明书8图3.1原始信号3.3构造受干扰信号并对其FFT频谱分析其程序如下:t=[0:0.0001:10];f1=3800;%噪声信号频率y1=0.5*sin(2*pi*f1*t);%噪声信号y2=y1(1,1:5000);%取噪声信号的5000点长度(1,1:5000)因为y1为列向量y=x+y2';%先对噪声信号转置再把噪声信号加入原始信号Y=fft(y2,4096);%求噪声信号频谱magY=abs(Y);%把傅里叶变换后的复数值取模subplot(2,2,1);plot(y2);title('噪声信号波形');%绘制波形subplot(2,2,2);plot(f,magY(1:2048));title('噪声信号频谱');%绘制波形subplot(2,2,3);plot(y);title('加噪后信号波形');%绘制波形Y1=fft(y,4096);%对加噪后的信号做4096点FFT变换山东建筑大学信电学院课程设计说明书9magY1=abs(Y1);%把傅里叶变换后的复数值取模subplot(2,2,4);plot(f,magY1(1:2048));title('加噪后信号频谱');%绘制波形程序结果如下图:图3.2噪声及加噪后图形由图3.1和图3.2可以看出,在5000~10000之间噪声明显,加入噪声后得到的信号和原始的语音信号有明显的不同。3.4数字滤波器设计设计数字滤波器的任务就是寻找一个因果稳定的线性时不变系统,并使系统函数H(z)具有指定的频率特性。本实验采用MATLAB工具箱函数buttord设计数字低通IIR滤波器。低通滤波器的性能指标为:f_p=5000;f_s=6500;Rp=3;Rs=25;用伯特沃斯型设计滤波器程序如下:f_p=5000;f_s=6500;Rp=3;Rs=25;%设置滤波器参数Ws=f_s/(fs/2);Wp=f_p/(fs/2);山东建筑大学信电学院课程设计说明书10[N,wc]=buttord(Wp,Ws,Rp,Rs);%计算滤波器阶数N和3dB截止频率wc[b,a]=butter(N,wc);%计算滤波器系统函数分子分母多项式系数freqz(b,a,1000,fs);%绘制滤波器特性曲线W就是j后面的s或z,其实着看频谱图就行,H和W没什么用n是至你的数据点数后面还应该有个Fs,即采样率这样可以讲频谱图横轴变成Hz,不然就是个0~1的*pi/FS比例系数axis([08000-303]);程序结果如下图:图3.3数字低通滤波器图3.5信号处理巴特沃斯滤波器利用函数filter进行滤波。用设计的滤波器对含噪声的语音信号进行滤波,对滤波后的信号进行FFT进行频谱分析。函数fft的调用格式是y=fft(b,x),低通滤波器:Z=fft(z,4096);其程序如下:z=filter(b,a,y);%把加噪后的信号滤波subplot(2,1,1);plot(z);title('滤波后的波形');%绘制波形山东建筑大学信电学院课程设计说明书11Z=fft(z,4096);%对信号做4096点FFT变换magZ1=abs(Z);%把傅里叶变换后的复数值取模magZ=magZ1(1:2048);%取点subplot(2,1,2);plot(magZ);title('滤波后的信号频谱');%绘制波形程序结果如下图:图3.4滤波后的图形将原始信号波形和滤波后的图形相比较,大致相同,说明滤波器有效果,滤波成功。山东建筑大学信电学院课程设计说明书12总结本设计采用MATLAB实现了语音信号的采集,对语音信号的加噪及设计滤波器滤除噪声等一系列工作,从频率图可以看出,巴特沃斯滤波器具有单调下降的幅频特性,通带内是光滑的。我已基本完成设计任务,里面也有很多不足。通过本次教学实践,使我加深了对课堂知识的巩固和理解,并能掌握语音信号处理中的基本方法、理论应用和基于软硬件平台的算法实现技术。通过MATLAB中几个命令函数的调用,使得在实际应用和理论知识之间建立了联系,为以后的学习带来了非常的帮助。山东建筑大学信电学院课程设计说明书13致谢感谢指导老师的细心知道,在这几天里提供给我的支持和帮助。这是我能顺利完成这次报告的主要原因,老师认真负责的监督我们课程设计的进度,耐心的指导我们能够按时完成指定的任务。还要感谢学
本文标题:数字信号处理--语音信号分析与处理及其MATLAB实现..
链接地址:https://www.777doc.com/doc-6252628 .html