基于MATLAB的FIR滤波器语音信号去噪.doc
《基于MATLAB的FIR滤波器语音信号去噪.doc》由会员分享,可在线阅读,更多相关《基于MATLAB的FIR滤波器语音信号去噪.doc(25页珍藏版)》请在三一办公上搜索。
1、*实践教学*兰州理工大学计算机与通信学院2013年春季学期 信号处理课程设计题 目:基于MATLAB的FIR滤波器语音信号去噪 专业班级: 姓 名: 学 号: 指导教师: 成 绩: 摘要本次课程设计是基于MATLAB的FIR滤波器语音信号去噪,在设计过程中,首先录制一段不少于10秒的语音信号,并对录制的信号进行采样;其次使用MATLAB会出采样后的语音信号的时域波形和频谱图;然后在给原始的语音信号叠加上噪声,并绘出叠加噪前后的时域图及频谱图;再次设计FIR滤波器,针对语音信号的性质选取一种适合的窗函数设计滤波器进行滤波;最后对仿真结果进行分析。设计出的滤波器可以满足要求。关键词: FIR滤波器
2、;语音信号;MATLAB仿真目录一 FIR滤波器设计的基本原理11.1滤波器的相关介绍11.1.1数字滤波器的概念11.1.2 IIR和FIR滤波器11.2利用窗函数法设计FIR滤波器11.2.1窗函数法设计FIR滤波器的基本思想11.2.2窗函数法设计FIR滤波器的步骤21.2.2窗函数法设计FIR滤波器的要求21.2.3常用窗函数的性质和特点31.2.4 语音处理中的采样原理3二 语音信号去噪实现框图5三 详细设计73.1 信号的采集73.2 语音信号的读入与打开73.3 语音信号的FFT变换83.4含噪信号的合成93.5 FIR滤波器的设计103.6 利用FIR滤波器滤波113.7 结果
3、分析14总结15参考文献15附录17致谢21一 FIR滤波器设计的基本原理1.1滤波器的相关介绍1.1.1数字滤波器的概念 数字滤波器(DigitalFilter,简称为DF)是指用来对输入信号进行滤波的硬件和软件。所谓数字滤波器,是指输入、输出均为数字信号,通过一定运算关系改变输入信号所含频率成分的相对比例或者滤除某些频率成分的器件。数字滤波器和模拟滤波器相比,因为信号的形式和实现滤波的方式不同,数字滤波器具有比模拟滤波器精度高、稳定、体积小、重量轻、灵活、不要求阻抗匹配等优点。一般用两种方法来实现数字滤波器:一是采用通用计算机,把滤波器所要完成的运算编成程序通过计算机来执行,也就是采用计算
4、机软件来实现;二是采用实际专用的数字处理硬件。1 1.1.2 IIR和FIR滤波器数字滤波器在数字信号处理的各种应用中发挥着十分重要的作用。它是通过对采样数据信号进行数学运算处理来达到滤波的目的。数字滤波器从实现的网络结构或者从单位脉冲响应可分为无限脉冲响应(IIR)滤波器和有限脉冲响应(FIR)滤波器。FIR滤波器的设计方法和IIR滤波器的设计方法有很大的不同,FIR滤波器设计任务是选择有限长度的h(n),使传输函数H(ejw)满足技术要求,FIR数字滤波器设计的方法有三种,第一种是窗函数法,第二种是频率采样法,第三种是切比雪夫等波逼近法。从性能上说,IIR滤波器以非线性相位为代价以较低的阶
5、数获得较高的选择性。而FIR滤波器想要获得相同的选择性阶数是IIR滤波器的5-10倍,结果成本较高、信号时延也较大:从结构上说,IIR采用递归结构,FIR采用非递归结构;从设计工具上说;IIR可以借助于模拟滤波器的成果,FIR滤波器一般采用没有封闭形式的设计公式;从使用场合上来看,在对相位要求不敏感的场合,如语音通讯等,选用IIR较为合适,可以充分发挥经济高效的特点。对图像处理、数据传输等以波形携带信息的系统,使用FIR较好。1.2利用窗函数法设计FIR滤波器1.2.1窗函数法设计FIR滤波器的基本思想窗函数法的基本思想是要选取某一种合适的理想频率选择性滤波器,这种滤波器总是有一个非因果,无限
6、长的脉冲响应,然后将它的脉冲响应截断(或加窗)以得到一个线性相位和因果的FIR滤波器,因为必须设计一个因果可实现的FIR滤波器。1需要注意的是,数字滤波器的传输函数H(ejw)都是以2为周期的,滤波器的低通频带处于2的整数倍处,而高频频带处于的奇数被附近,这一点和模拟滤波器是有区别的。因为录制的语音信号是模拟信号,要想使用数字滤波器对叠加了噪声的信号进行滤波,则在设计数字滤波器之前首先要进行模数转换,将模拟信号转换为数字信号。1.2.2窗函数法设计FIR滤波器的步骤主要设计步骤为:(1)根据技术要求确定待求FIR滤波器的单位取样响应hd(n)。如果给出待求FIR滤波器的频率响应为Hd(ejw)
7、,那么单位取样响应使用(1-1)1的公式求出:Hd(n)=1/2Hd(ejw)ejwdw ( 1-1 )(2)据过渡带宽及阻带衰减要求,选择窗函数的类型并估计窗口长度N(或阶数M=N-1),窗函数类型可根据最小阻带衰减As独立选择,因为窗口长度N对最小阻带衰减As没有影响,在确定窗函数类型以后,可根据过渡带宽小于给定指标确定所拟用的窗函数的窗口长度N,设待求滤波器的过渡带宽为w,它与窗口长度N近似成反比,窗函数类型确定后,其计算公式也确定了,不过这些公式是近似的,得出的窗口长度还要在计算中逐步修正,原则是在保证阻带衰减满足要求的情况下,尽量选择较小的N,在N和窗函数类型确定后,即可调用MATL
8、AB中的窗函数求出窗函数w(n)。(3) 计算滤波器的单位取样响应h(n),使用(1-2)的公式求出: h(n)= hd(n)w(n) ( 1-2 )(4) 验算技术指标是否满足要求。11.2.2窗函数法设计FIR滤波器的要求在使用窗函数法设计FIR滤波器时要满足以下两个条件:(1)窗谱主瓣尽可能地窄,以获得较陡的过渡带;(2)尽量减少窗谱的最大旁瓣的相对幅度,也就是使能量尽量集中于主瓣,减小峰肩和纹波,进而增加阻带的衰减。在实际工程中常用的窗函数有五种,即矩形窗(Rectangular)、三角窗(Triangular)、汉宁窗(Hanning)、汉明窗(Hamming)及凯塞窗(Kaiser
9、)。1.2.3常用窗函数的性质和特点(1)矩形窗矩形窗属于时间变量的零次幂窗。矩形窗使用最多,习惯上不加窗就是使信号通过了矩形窗。这种窗的优点是主瓣比较集中,缺点是旁瓣较高,并有负旁瓣,导致变换中带进了高频干扰和泄露漏,甚至出现负谱现象。(2)三角形窗三角形窗又称费杰窗,是幂窗的一次文形式。与矩形窗比较,主瓣宽约等于矩形窗的两倍,但旁瓣小,而且无负旁瓣。(3)汉宁窗汉宁窗又称升余弦窗,汉宁窗可以看作是3个矩形时间窗的频谱之和。汉宁窗优于矩形窗,但汉宁窗主瓣加宽,相当于分析带宽加宽,频率分辨力下降。(4)哈明窗哈明窗与汉宁窗都是余弦窗,只是加权系数不同,哈明窗加权的系数能使旁瓣达到更小,所以哈明
10、窗又称为改进的升余弦窗。它的能量更加集中在主瓣中主瓣的能量约占99.96%第一主瓣的峰值比主瓣小40dB,但主瓣宽度和汉宁窗相同仍为8*/N,哈明窗与汉宁窗都是很有用的窗函数。(5)凯塞窗以上几种窗函数是各以一定主瓣加宽为代价,来换取某种程度的旁瓣抑制,窗函数的主瓣宽度和旁瓣峰值衰耗是矛盾的,一项指标的提高总是以另一项指标的下降为代价,窗口选择实际上是对两项指标作权衡。而两项指标是跳变的,于是有人提出可调整窗,适当修改参数,可在这两项指标间作连续的选择。常用的可调整窗是凯塞(Kaiser)窗。而凯窗则是全面地反映主瓣与旁瓣衰减之间的交换关系,可以在它们两者之间自由地选择它们的比重。1.2.4
11、语音处理中的采样原理因为录制的语音信号是模拟信号,要想使用数字滤波器对叠加了噪声的信号进行滤波,则在设计数字滤波器之前首先要进行模数转换,将模拟信号转换为数字信号。在进行模数转换的过程中,当最高采样频率fs大于信号中最高频率f的2倍时,即:fsmax2fmax,采样之后的数字信号可以完整地保留原始信号中的信息,一般实际应用中保证采样频率为信号最高频率的510倍;采样定理又称奈奎斯特定理。频带为F的连续信号 f(t)可用一系列离散的采样值f(t1),f(t1t),f(t12t),.来表示,只要这些采样点的时间间隔t1/2F,便可根据各采样值完全恢复原来的信号f(t)。这是时域采样定理的一种表述方
12、式。时域采样定理的另一种表述方式是:当时间信号函数f(t)的最高频率分量为fm时,f(t)的值可由一系列采样间隔小于或等于1/2fm的采样值来确定,即采样点的重复频率f2fm。 采样频率,也称为采样速度或者采样率,定义了每秒从连续信号中提取并组成离散信号的采样个数,它用赫兹(Hz)来表示。采样频率的倒数是采样周期或者叫采样时间,它是采样之间的时间间隔。通俗的讲采样频率是指计算机每秒钟采集多少个声音样本,是描述声音文件的音质、音调,衡量声卡、声音文件的质量标准。采样位数和采样率对于音频接口来说是最为重要的两个指标,也是选择音频接口的两个重要标准。无论采样频率如何,理论上来说采样的位数决定了音频数
13、据最大的力度范围。每增加一个采样位数相当于力度范围增加了6dB。采样位数越多则捕捉到的信号越精确。2二 语音信号去噪实现框图本次课程设计先完成语音信号的采集,并对所采集的语音信号加入不同的干扰噪声,对加入噪声的信号进行频谱分析,针对受干扰语音信号的特点设计不同的滤波器,然后利用窗函数法设计低通,高通,带通等滤波器对采集到的语音信号进行滤波处理,分析语音信号各频率段的特性。对加噪信号进行滤波,恢复原信号。把原始语音信号、加噪语音信号和滤波后的信号进行时域变换和频域变换,画出它们的时域波形和频域波形图,从视觉角度比较分析滤波的效果。实现框图如图2-1所示:信号的采集 语音信号分析 结果显示及分析
14、含噪信号合成滤 波 数字滤波器的设计 图2-1 整体设计流程图要求录制一段语音信号,要求长度不小于10秒,并对录制的信号进行采样,在MATLAB中可以使用wavrecord()函数完成。语音信号是一种非平稳的时变信号,它携带着各种信息。语音信号分析的目的就在与方便有效的提取并表示语音信号所携带的信息。语音信号分析主要是在时域和频域进行的。FFT为快速傅里叶变换,是离散傅里叶变换的快速算法,对语音信号进行FFT变换就是为了得到它的频域的图形,便于从图中观察出信号的幅度等特性。在MATLAB软件平台下,给原始的语音信号叠加上噪声,绘制出叠加噪声之后的语音信号时域图形及频域图形,可以在视觉上与原始信
15、号图形对比。这时的这语音信号已经是包含了噪声的合成信号,这些噪声的频率一般较高。所以可以利用MATLAB软件中设计的FIR滤波器进行滤波处理。根据信号的特性,计算出技术指标,利用凯瑟窗设计FIR滤波器。利用设计好的凯瑟窗的低通FIR滤波器和高通FIR滤波器对合成的含噪信号进行滤波,绘制出FIR滤波器的频率响应,绘出滤波后的时域波形和频谱图,并对滤波前后的信号进行对比,分析信号的变化。三 详细设计本次课程设计中语音信号的录制以及进一步处理分析都选用了MATLAB平台。MATLAB是一种科学计算软件,专门以矩阵的形式处理数据。MATLAB 将高性能的数值计算和可视化集成在一起,并提供了大量的内置函
16、数,不断完善 MATLAB 产品以提高产品自身的竞争能力。MATLAB的数据分析和处理功能十分强大,运用它来进行语音信号的分析、处理和可视化相当便捷。而且编程易学、直观,代码非常符合人们的思维习惯。MATLAB几乎可以在各种机型和操作系统上运行,所以在可移植性和可扩充性上MATLAB远优越于其他的高级编程语言。MATLAB语言具有强大的数值计算能力和视图能力,其偏微分方程工具箱提供了有限元求解的一个强大而灵活的环境,并且有限元网格可做精细划分以满足要求。33.1 信号的采集要求录制一段语音信号,要求长度不小于10秒,并对录制的信号进行采样。在MATLAB中可以使用wavrecord()函数完成
17、,例如:y=wavrecord(13*fs,fs,);可以用来录制13秒的语音,wavplay(y,fs); 用来播放录制的语音,wavwrite(y,fs,aa.wav);wavwrite(y,aa.wav);两句则是将录制的语音保存下来。53.2 语音信号的读入与打开 在MATLAB中,y,fs,bits=wavread(aa.wav);用于读取语音,采样值放在向量y中,fs表示采样频率(Hz),bits表示采样位数。 wavplay(y,fs);用于语音的播放,也可以使用sound(y); 用于对声音的回放。向量y则就代表了一个信号,也即一个复杂的“函数表达式”,也可以说像处理一个信号的
18、表达式一样处理这个声音信号。在MATLAB中,实现语音的读入,并绘出了语音信号的原始信号图可采用fs=11025; 语音信号的采样频率为11025,x1=wavread(aa.wav); 读取语音信号的数据赋给变量,sound(x1,11025); 用于播放语音信号。语音信号是一种非平稳的时变信号,它携带着各种信息。在语音编码、语音合成、语音识别和语音增强等语音处理中无一例外需要提取语音中包含的各种信息。语音信号分析的目的就在与方便有效的提取并表示语音信号所携带的信息。语音信号分析可以分为时域和变换域等处理方法,其中时域分析是最简单的方法,直接对语音信号的时域波形进行分析,提取的特征参数主要有
19、语音的短时能量,短时平均过零率,短时自相关函数等。原始语音信号图如图3-2-1所示:图3-2-1 原始语音信号图如图中提取的语音的波形图所示,整段音频数据中得声音高低起伏与录入的声音信号基本一致。3.3 语音信号的FFT变换FFT即为快速傅氏变换,是离散傅氏变换的快速算法,它是根据离散傅氏变换的奇、偶、虚、实等特性,对离散傅立叶变换的算法进行改进获得的。在MATLAB的信号处理工具箱中函数FFT和IFFT用于快速傅立叶变换和逆变换。函数FFT用于序列快速傅立叶变换,其调用格式为y=fft(x),其中,x是序列,y是序列的FFT,x可以为一向量或矩阵,若x为一向量,y是x的FFT且和x相同长度;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 MATLAB FIR 滤波器 语音 信号
![提示](https://www.31ppt.com/images/bang_tan.gif)
链接地址:https://www.31ppt.com/p-4141467.html