‍毕业论文 2012届 "/>
收藏 分销(赏)

基于MATLAB的语音信号分析和处理.doc

上传人:人****来 文档编号:4324394 上传时间:2024-09-06 格式:DOC 页数:25 大小:888.01KB
下载 相关 举报
基于MATLAB的语音信号分析和处理.doc_第1页
第1页 / 共25页
基于MATLAB的语音信号分析和处理.doc_第2页
第2页 / 共25页
基于MATLAB的语音信号分析和处理.doc_第3页
第3页 / 共25页
基于MATLAB的语音信号分析和处理.doc_第4页
第4页 / 共25页
基于MATLAB的语音信号分析和处理.doc_第5页
第5页 / 共25页
点击查看更多>>
资源描述

1、毕业论文2012届基于MATLAB的语音信号分析和处理            学生姓名       许少杰       学    号     08104226       院    系    数理信息学院    专    业    电子信息工程    指导教师    

2、 刘兆霆        完成日期   2012年5月20日  21基于MATLAB的语音信号分析和处理摘    要语音信号的处理是一门非常重要的学科,如今普遍应用在电话通信、助听器等方面。本次设计主要是为了在Matlab软件的帮助下,处理一段被“污染”的声音信号。该过程会涉及到采样定理,快速傅里叶变换等理论和算法在设计过程中的实际应用。在本次设计中,我们关注的是在驱除噪声污染时所需要的滤波器的选择,充分比较各种滤波器的优缺点后,再利用滤波器来滤除杂音。通过滤波前后的声音信号的频谱图的对比,来了解滤波器的特

3、性和作用,并得到本次设计的结果。关键词 语音信号;Matlab;傅里叶变换;滤波器 。ANALYSIS AND PROSESSING OF THE SPEECH SIGNAL BASED MATLABABSTRACT    The voice signal processing is a very important discipline with a wide use range, for example telephone communications, hearing aids and so on. The purpose of my paper is to proc

4、ess a polluted sound signal by using the Matlab software. This process may involve the sampling theorem, the fast Fourier transform theory and practical application of the used algorithm. In this paper, we focus on selecting the appropriate filter, and fully comparing the advantages and disadvantage

5、s of the various filters, and then using the appropriate filter to filter out the noise polluting the voice signal. By comparing the frequency spectrum of the sound signals, we can understand the work nature of the filter, and obtain our results.Keyword Voice signal;Matlab;Fourier transform;Filter目

6、 录                                              摘    要IABSTRACTII目  录III1绪论11.1 国内外研究状况11.2 课题的背景及意义12语音信号处理的基本理论知识22.1语音信号采样频率和采样位数的选择22.2语音信号的合成22.3时域信号的FFT分析32.4数

7、字滤波器32.4.1 IIR数字滤波器32.4.2 FIR数字滤波器42.4.3 FIR数字滤波器和IIR数字滤波器的比较52.5倒谱63语音处理信号的理论方案论证63.1语音信号的采集63.2语音信号的处理63.3系统框图74语音信号处理的实例分析84.1语音信号的录入84.2语音信号的提取84.3语音信号的时域和频谱图84.4语音信号的“污染”104.5 IIR滤波器的设计及滤波114.6 设计FIR滤器波并滤波134.7 回放语言信号15总结15参考文献16附录17致  谢211绪论本次设计是为了综合运用数字信号处理的理论知识对语音信号进行时频分析和滤波器设计,根据理论知识,设

8、计实验步骤,再利用计算机上的Matlab软件进行编程实现,得到需要的结果。通过本次毕业设计:第一,要学会如何使用Matlab软件,能够独自完成MATLAB的程序设计方法;第二,掌握在Window环境下语音信号采集的方法;第三,掌握在MATLAB环境下设计FIR和IIR数字滤波器的方法。 1.1 国内外研究状况           60年代,语音信号处理的技术就取得了新的进展,其主要有数字滤波器、快速傅里叶等理论和算法的广泛应用,这些理论和算法为语音信号处理奠定了坚实的基础,为以后快速的发展埋下了伏笔。另外一个方面,就是因为数字计算机得到了推广,

9、计算机普遍应用在科研的各个方面,计算的速率比以前老式的计算方式快了许多。而且由于计算机软件的出现,可以使得用软件模拟代替硬件模拟,有效的降低了科研的成本,更可以从多方面来观察研究进展,使得人们可以更加全面、详细的了解试验过程,更容易找出实验中的问题,不断加快各种研究和发明的出现。70年代,日本学者板仓(Itakura)等人最先在语音分析和合成中用到了线性预测技术。线性预测技术是将一个信号看做是一个模型的输出,这样信号的描述就可以用模型来代替。在语音信号处理中,线性预测技术最主要的是提供了一个声道模型,这个模型对于语音信号处理的研究具有非常积极的作用,通过这个模型,我们可以做各种理论方面的研究。

10、线性预测技术对于语音编码也非常适合,不仅如此,线性预测系数对于语音识别也是很重要的信息来源。80年代,矢量量化技术(VQ,即Vector Quantization)的出现,使得在语音信号压缩方面取得突破性进展。它在语音信号处理中有十分重要的地位,广泛应用于语音编码、语音识别与语音合成等领域。另外,用隐马尔可夫模型描述语音信号产生过程代表了语音信号处理技术的重大突破。近年来,许多人在研究如何把人工神经网络应用到语音信号方面,并且取得了一定的成就,尤其语音识别。人们把生物的神经网络的特征应用到人工神经网络上,特别是生物的听觉系统的模拟,让人们建立了一个有类似能力的模型,因而语音的识别效率得到了显著

11、的提高。目前,人机交流是一种热点的研究项目,而其中要用到语音识别和语音合成两种重要技术。在语音信号处理中有很多新兴与前沿技术,主要包括混沌理论在该技术中的应用,分形理论的应用和语音信号的非线性预测编码等。          1.2 课题的背景及意义                语音信号处理是一门非常实用的学科。语言在人类历史的发展上起到了十分重要的作用,它是人们交流沟通的重要手段。小到平时生活中买卖的讨价还价,大到国际上的外交谈判,都是同过语言进行的,通过语言人们

12、进行信息上的交流与沟通,在交流与沟通的过程中,人们得到了长足的发展。语音处理技术的被用到了生活中的方方面面,如公交车上的自动报站设备,汽车上的喇叭,给耳朵不好的人使用的助听器,工业中的自动报警设备等。目前,语音处理技术的研究与实际应用方面结合的很好,充分做到了产研一体化,我们有理由相信在今后语音技术会发展更好,给大家的生活带来更多的帮助。语音信号处理早已经给人类的社会带来了巨大的经济和社会效益,以后它在理论上有更为广泛的发展,在应用方面也会成为社会各个方面的非常有用的工具,它是我们发展不可缺少的一部分,不论是民用还是军用,不论是社会生产还是科学研究,它都将发挥出巨大的作用。目前,科学家们正在研

13、究如何进行人机对话。这个课题具有非常实际的意义,如口呼打字机(即语音输入,文字输出的机器),如语音翻译机(戴在耳朵上,可实现实时中英文翻译),还有用语音指挥机器自动化生产等,这些都是目前的研究焦点,它们并不是科幻中的产物,而是马上就要实现的科学产品。语音信号处理技术的日益发展,体现在我们生活中的方方面面,90年的电话到2000年的手机,都充分说明了语音信号处理技术的重要性及其意义。2语音信号处理的基本理论知识2.1语音信号采样频率和采样位数的选择采样频率指的是1秒内计算机所采集到的声音样本,如20.1KHZ表示的是1秒的时间计算机采集20100次声音样本。一般来说采样频率越大,就与原信号越接近

14、,采样频率越小,就会偏离原信号,造成信号失真。采样位数所表示的是一段声音进行分析的精确度,10位则代表2的10次即1024个精度单位进行分析。如此,采样位数越大则表示这段声音越精准。想要把未处理的模拟信号转换成数字信号,就必须要对语音信号进行采样,从而得到离散的信号。可以把原始的语音信号看作是一条曲线,曲线是有无数的点组成的,采样过程就是在这无数的点中选取一定数量的点,以这些点来构成一条新曲线,这就是采样的具体过程。但是采样不当会造成严重的问题,若是采样频率太小会造成信号的失真,让信号变的不完整;若是采样频率太大会浪费机器上的存储资源。根据奈奎斯特采样定理,采样频率最好选择信号带宽的两倍,这样

15、即不会造成信号失真,又不会造成资源浪费。取样之后要对信号进行采样位数的选择,采样位数是指将取样后得到的样本序列的幅度再离散化,即将时间上离散而幅度仍连续的波形再离散化。同样拿一段曲线来表示信号,采样位数就是对这段曲线的幅度值进行分割,若采样位数是1500,那么表示将这段曲线的幅度值平均分成1500份,每一份算做一个新的幅度值。2.2语音信号的合成    本次设计要求对一段语音进行加载一段噪声,使其受到“污染”。在Matlab软件中要实现这一个要求,一般是给这段语音信号叠加加一个随即函数w*randn(a,b),这样就可以模拟一段被噪声“污染”的语音信号,并可通过参数w来设置

16、噪声的功率,也就是说,我们可以通过改变w的大小来调节信噪比。2.3时域信号的FFT分析FFT是快速傅里叶的英文缩写,它与傅里叶变换相比,没有什么理论上的重大突破,只是对傅里叶变换进行了总结和整理,使它能够在计算机上使用时减小计算量,以适应在计算机上使用。它可以使DFT的运算速度提高一到两个数量级,使得语音信号处理技术应用与各个方面的实时处理创造了条件。在Matlab中,可以直接调用FFT函数与IFFT函数进行快速傅里叶的运算与逆运算,具体的调用格式为y=fft(x),其中x是序列,而y则是序列的傅里叶变换。当然,这里的x不止可以是序列,还可以是向量或矩阵,那么y则是对应的快速傅里叶变换。快速傅

17、里叶变换算法是信号处理领域的重要研究领域。快速傅里叶变换有许多算法,其中最简单和最容易的是基2FFT算法,在Matlab中,y=fft(x)这个函数中的x的长度若是2的幂次方,则进行FFT函数运算时,进行的运算是基2FFT运算,否则进行的是混合基的离散傅里叶变换算法,而且运算速度会相对减慢。2.4数字滤波器所谓的数字滤波器,就是指通过数值运算的方式,改变输入信号的频率,使之达到预定的信号的数字器件或程序。因为数字滤波器是通过数字器件,进行数字运算来实现滤波,所以数字滤波器有着精度高、小巧、稳定等的作用,可以实现模拟滤波器所无法实现的工作,所以在信号处理方面有着巨大的作用。只有先对模拟信号进行模

18、数转换,才可以进行在数字滤波器上进行滤波。数字滤波器从滤波特性上来讲,一般可以分成4类,分别是低通滤波器、高通滤波器、带通滤波器和带阻滤波器。数字滤波器若从实现的网络结构抑或从单位脉冲相应长度这方面来分类,可以分为无限长的单位脉冲相应(IIR)滤波器和有限长的单位脉冲响应(FIR)滤波器。但是IIR滤波器和FIR滤波器之间的设计方法是不相同的。2.4.1 IIR数字滤波器设计IIR数字滤波器的最常用的方法是间接设计法。间接设计法是借助于模拟滤波器的设计方法进行的。并且模拟滤波器的发展已经非常成熟,有现成的方法、数据、公式,可以拿来就用,不用进行多余的实验。不仅如此,模拟滤波器还有很多已经非常成

19、熟的经典设计,可以供我们选择使用。用间接设计法来设计数字滤波器,非常具有实用性。用间接法设计IIR数字滤波器的具体过程如下:首先,在设计之前要先考虑自己想要的是怎么样的滤波器,设计目标的滤波器频率特性,包括相位特性和幅频特性。若是滤波器对相位不作要求,可以只考虑滤波器的幅频特性。再把这些性能数值转换成模拟器的性能数值,具体的是性能包含通带和阻带的截止频率Wp、Ws;通带和阻带的纹波系数Rp和Rs;然后,根据转换而来的技术指标来选择低通滤波器的阶数,并选择相应的函数,确定最小的阶数和固定频率。通过确定模拟滤波器的类型。通过把模拟低通滤波器转换成其他类型的滤波器;最后,运用脉冲相应不变法,把模拟滤

20、波器转化为数字滤波器1。因为用直接法设计滤波器是在时域和频域内直接设计,要用到联立方程组,涉及到的计算比较复杂,要用到计算机来进行计算,所以一般不用直接法。IIR数字滤波器的系统函数为2公式(2-1):                                                  (2-1)以上设计步骤中,最重要的就是将模拟低通

21、滤波器转化成系统函数,这其中有两点难关。第一个难关是根据转化而来的性能数值来计算所选取的模拟滤波器的系统函数,因为模拟滤波器已经有了完备的参数图表,这一步可以通过查表来获得各个阶数相对应的分母多项式;第二个难关是把模拟滤波器的系统函数转化成数字滤波器的系统函数,这两个系统函数之间虽然已经有了相互转化的函数,但是由于函数比较复杂,计算起来非常有难度,所以这一步通常是通过matlab软件的函数调用来解决的。 Matlab软件有自己的数据库,里面有很多经常要用到的函数,用户可以很方便的调用出来,运用这些函数,能够使编程变得简单。该软件里有一个buttord函数,通过这个就可以设计滤波器,十分的简单。

22、通过对这个函数中的参数细节上的调整,可以设计出不同的滤波器。通过比较的发现,在满足相同的滤波器的指标的条件下,这四种滤波器的阶数是不同的,巴特沃斯滤波器阶数最高,椭圆滤波器阶数的阶数最低。如果阶数越高,就会造成信号延迟越大。同时在IIR数字滤波器中,阶数高的话,系数要求的精度也会越高,否则很可能使极点移到单位园外。因此在阶数的选择上是要进行综合考虑的。2.4.2 FIR数字滤波器有限脉冲响应(FIR)滤波器在保证幅度特性满足技术要求的同时,很容易做到有严格的线性相位特性5。它的系统函数为公式(2-2):             &nb

23、sp;                                          (2-2)是的次多项式,它在平面上有个零点,在原点处有一个重极点。所以,是非常稳定的。FIR数字滤波器最突出的优点是它的稳定性与线性相位特性6。FIR数字滤波器一般用窗函数法来设计实现的,窗函数的形状与带内波动以及阻带衰减有很大的关系,过渡带的宽度与窗函数的长度N有关系,所以就产生几种经典的窗函数,

24、分别是矩形窗(Rectangle Window)、三角形窗(Bartlett Window)、汉宁(Hanning)窗升余弦窗、哈明(Hamming)窗改进的升余弦窗、布莱克曼(Blackman)窗、凯塞贝塞尔窗(KaiserBasel Window)。这些经典的窗函数都有基本的参数如过渡带宽度、阻带最小衰减、旁瓣峰值等,在做具体设计的时候非常方便我们查询,来选择具体的窗函数。 用窗函数法设计FIR滤波器的具体步骤:首先,根据设计任务对过渡带以及阻带衰减的指标要求,查询窗函数的基本参数,选择符合条件的窗函数,并且估计出窗函数的长度N。选择窗函数的方法是在满足阻带衰减这个条件下,尽可能的选择旁瓣

25、峰值的绝对值小的窗函数。然后根据这个函数的过渡带宽度来估计该函数的可、窗口长度N。,这里的A取决于窗口类型,可以从窗函数的基本参数表里得到,数值上为该窗函数的近似值;然后,得到频率响应函数,即                                             (2-3)在低通滤波器中,满足条件:         &n

26、bsp;                                                 (2-4)计算出。具体公式为:                                

27、            (2-5)最后,得到设计的结果:                            。                           (2-6)2.4.3 FIR数字滤波器和IIR数字滤波器的比较从性能比较上来说,IIR数字滤波器的系统

28、函数的极点是可以在单位圆里的任意一个地方,这样,若是极点与零点相结合,就可以得到较低阶数的滤波器,这样的性价比比较高,但是它是非线性相位的。而FIR数字滤波器是可以得到非常严格的线性相位,但是它的极点只能固定在原点,不能与零点相结合,所以只能选择较高阶数的滤波器来达到目的。在相同的滤波器的性能指标的条件下,FIR数字滤波器要达到目标比IIR数字滤波器的阶数要高,这样会使成本变高,同时,使得信号延迟变大。从结构上来比较,由于IIR滤波器采用的是递归结构,会有不稳定的可能。FIR滤波器采用非递归结构,使用时会非常稳定,并且在信号输出时产生的噪声比较小。从设计上来比较,IIR滤波器使用间接法借助于模

29、拟滤波器,有成熟的设计成果,虽然脱离不了几款经典模拟滤波器的频率响应特性的约束,但在设计时的计算工作量比较小,可以很轻松的完成滤波器的设计。FIR滤波器在设计的时候只能根据计算公式来计算,具有非常大的工作量,对计算的要求比较高,但是在计算机的帮助下可以很容易完成。在实际应用时,如本次设计时,比较适合用IIR滤波器,因为语音信号处理时对线性相位的要求不高,而且成本更低。在其他对线性相位要求更高的场合,如对数字图像进行处理时,适合FIR滤波器。2.5倒谱倒谱的表达式为:                   &

30、nbsp;                                (2-7)上式表明:信号进行傅里叶变换后得到频谱,对频谱取绝对值、取对数后再对频谱的对数进行傅里叶逆变换,就能得到倒谱,因为音义的混乱,还被经常翻译为倒频谱等。倒谱对语音信号处理有很大的帮助1012。倒谱能够很大程度上识别语音的特征参数,因此被广泛应用在雷达和地震的预测方面9。由于倒谱能够解决由语速变换引起的信号识别问题,所以倒谱被应用在语音识别。3语音处理信号的

31、理论方案论证   3.1语音信号的采集语音信号的采集方法是:将计算机连接一个麦克风,通过该麦克风输入一段语音信号。该论文输入的语音信号是一段鸟鸣的声音,通过录音软件录制该语音,并存放在当前文件夹内(保存格式为:BirdSing.wav)。3.2语音信号的处理语音信号的处理包括:信号的采集和提取,信号的调整,信号的变换,信号的滤波。语音信号是一个会随时变化的随机信号,它的变化的不具备规律性的。语音信号的时域分析:语音信号的变化有一个过程,在一个较短的时间内语音信号的特征基本保持不变,即语音的“短时平稳性”。因而出现了短时分析技术,就是把语音信号分成一段一段的来处理,这个一段所包含的时间

32、比较短,一般是20ms,在这么短的时间内,信号的特征一般不会变化。所以可以把语音信号当作一个平稳过程来分析和处理语音信号。通过短时的能量分析手段,可以知道信号的能量分布,区分信号中的浊音段和清音段。提取:通过Matlab软件中的wavread函数提取下载来的声音信号,完成该音频信号的频率,幅度等信息的提取,并得到该语音信号的波形图调整:对原始的语音信号添加一个随机函数,以此作为噪声,达到语音信号被“污染”的目的。语音信号的频域分析:研究语音信号的频率,可以明白频率与声音的关系,一般来说,声音的高低与频率的大小有直接关系,当然,这只是从最粗浅的方面来看的。频域分析不只是单单的研究声音信号的频率,

33、还研究频率与信号功率之间的关系,这就是功率谱估计。通过语音信号的功率谱,可以看出功率与声音信号的关系,具体应用到雷达方面的话,可以预判出火控飞机的航行轨迹。频域分析的一般方法有三种,其中利用傅里叶函数来研究是最常用与简单的方法。对一个语音信号进行快速傅里叶变换,就能得到这个信号的频谱图,对信号的频谱取对数后再进行傅里叶逆变化,就能得到倒谱图。通过对倒谱图的研究,可以解决语音识别技术中语速变化识别的问题。通过对语音信号频域的研究,可以充分了解信号频率的各种特征,知道频率与声音的联系。变换:在Matlab软件中,对语音信号进行傅里叶变换,得到信号的频谱图。滤波:我们可以采用低通滤波、高通滤波、带通

34、滤波和带阻滤波的方式,来滤除语音信号中的噪声部分,并比较各种滤波之后的效果。最后,通过用户图形界面,把滤波后的信号进行播放,进行观察,并对比前后的图形,得出结论。3.3系统框图语音信号处理的流程可以用图3-1表示图3-1 语音信号处理的流程图我们先进行信号采集,采集来的信号进行四步处理,即进行信号提取、信号调整、信号变换、信号滤波,最后将效果现实出来。4语音信号处理的实例分析4.1语音信号的录入本次设计中,我们利用录制到得一段鸟鸣语音信号,并且转化为波形声音的格式,即BirdSing.Wav,这样方便提取到Matlab软件所在的当前文件夹中。4.2语音信号的提取打开Matlab软件后,提取该段

35、鸟鸣语音信号,这一过程一般要用到wavread函数。具体的使用方式为:x,fs,bits=wavread('F: BirdSing.wav',a b);x就是音频信号;fs是采样频率,比如说16000就是每秒16000次;bits是采样精度,比如说16就是指16位精度的采样a b表示读取第a点到b点的取样。Matlab中使用sound,可以听到这一段声音,并且可以比较与后面经过处理的语音信号之间的不同。sound(x);4.3语音信号的时域和频谱图为了了解该语音信号的基本特点,我们可以通过观察该语音信号的波形图、频谱图、相位图和幅值图。使用matlab软件编程(程序在下面的附录

36、A里)并运行后,我们可以得到图4-1:图4-1 语音信号的波形图、频谱图、相位图和幅值图观察上面的波形图,它的高低起伏与实际中的声音基本一致,从图中可以看出声音高时,信号波形的幅度就比较大,当声音低下来时,信号波形的幅度就降到比较小的地步了。对原始信号进行采样,采样的频率fs为44200,这是因为一般耳朵听到的声音的频率最高上限都在20000左右,采样频率应该是它的2倍,才能保证信号不失真。然后画出这个信号的时域波形图、频率响应图,再对信号进行FFT变换,得到它的频谱图,具体的程序代码在附录B里,下面是程序运行得到图画。图4-2 原始语音信号时域图图4-3 语音信号频率响应图图4-4 语音信号

37、频谱图    观察采样后信号的波形图,发现与原信号的大致相同,说明采样后的信号没有失真。4.4语音信号的“污染”要使语音信号被“污染”,是通过在Matlab软件中给原声音信号上叠加一个函数,这里采用叠加一个高斯噪声,来达到目的。然后对加了噪声的信号绘制出时域图和频谱图。并与原信号的时域图和频谱图进行对比,找出各自的不同。具体的程序代码在附录C里,下面是程序运行得到图画。图4-5 语音信号加高斯噪声前后时域图图4-6 加噪语音信号前后频谱图    从上面的频谱图形可以看出,语音信号叠加了高斯噪声后,该信号的幅度大多数都集中在0和1之间。4.5 IIR滤波器

38、的设计及滤波用间接法设计一个IIR带通数字滤波器,过程当中借助巴特沃斯模拟滤波器,然后对加了高斯随机噪声和正弦噪声的语音信号进行滤波,并绘制了两滤波器滤波后的语音信号时域图和频谱图。具体的程序在附录D里,程序运行的结果如下:图4-7 带通滤波器的特性图形图4-8 加高斯噪声信号带通滤波前后的时域波形图图4-9 加高斯噪声信号带通滤波前后的频谱图图4-10 加正弦噪声信号带通滤波前后的时域波形图图4-11 加正弦噪声信号带通滤波前后的频谱图上图是对加了正弦噪声的信号滤波前后的对比图。把滤波后的信号与最原始的语音信号相比,发现有很大的差别,显然,带通滤波器并不能很好的完成对噪声的滤波。4.6 设计

39、FIR滤器波并滤波根据窗函数法,设计一个FIR低通数字滤波器,设计过程使用海明窗。使用该滤波器对加了高斯随机噪声和正弦噪声的语音信号进行滤波,并绘制了两滤波器滤波后的语音信号时域图和频谱图。具体的程序放在附录E里。程序运行可以听到声音,得到的结果分别如下图所示:图4-12 低通滤波器的特性图形图4-13 加高斯噪声信号低通滤波前后的时域波形图图4-14 加高斯噪声信号低通滤波前后的频谱图上图是叠加了高斯噪声的信号进行滤波前后的对比。图4-15 加正弦噪声信号低通滤波前后的时域波形图图4-16 加正弦噪声信号低通滤波前后的频谱图上图是叠加了正弦噪声的信号进行滤波前后的对比总结滤波前后的频谱图,很

40、容易发在经过低通滤波器滤波后,信号高频的部分已经被滤除。这时候用sound函数回放这个声音信号,会发现声音比较低沉。这是因为频率高的部分被滤除掉了。4.7 回放语言信号    将经过处理的语音信号放到Matlab软件中进行回放,对比滤波后的声音与原始的声音的不同。总结经过一个学期紧张努力的学习与交流,终于完成了本次设计。在这一个学期里,我学到了很多有关于语音信号的内容,因为这一次的设计内容在大学期间并没有学过,很多资料都要自己去寻找和学习。在寻找资料和学习的过程中,我学会了如何在浩瀚如山的资料中寻找对自己有帮助的资料,这对我以后的自学生涯很有帮助,能让我在今后的工作生涯继续

41、学习和进步,进一步的成长,这对我的人生有着积极的影响。这其中有很多的问题是请教我的辅导老师和同学的,是他们采取了引导的方式让我能够在一个陌生的领域磕磕碰碰的走下去,并最终完成了这篇论文。在本次设计中,我遇到了很多的问题,有些解决了,但是有一些还是做的不够好。本次设计完成了语音信号的时域和频谱图的绘制,成功的对声音信号进行了“污染”,把函数叠加到语音信号中。明白了IIR数字滤波器和FIR数字滤波器各自的特点和区别,了解了两种滤波器的设计方法,根据设计要求,设计了一个IIR数字滤波器和FIR数字滤波器。完成了对一个被“污染”了的语音信号的滤波,完成了任务要求。遗憾的是设计的滤波器比较单一,无法使用

42、各种滤波器来滤波器信号,不能通过比较得出各种滤波器的不同。参考文献1劳永浩.软件同步采样DFT谐波检测方法的应用研究 J. 广西大学, 2011,282董应平.IIR数字滤波器优化设计及FPGA仿真验证J. 西南交通大学, 2009,353冯琴荣.整系数滤波器稳定性判定的一个快速算法J. 武汉科技大学学报:自然科学版,2006年2期,56584晏进喜.连续小波变换的开关电流集成电路实现的研究J. 湖南大学, 2005,22235李伟.FIR数字滤波器的FPGA实现J. 计算机与数字工程 ,2007年1期,15176刘春等.MATLAB在数字滤波器设计中的

43、应用J. 仪表技术, 2006年5期,28307聂惠娟.语音信号端点检测的技术研究J.河南师范大学,2007,12138宫洵.基于现代语音处理理论的皮肤听声技术研究J. 陕西科技大学, 2011,2522559曾昆.TMS320C5402平台上G.723.1标准的实现J. 湖南大学, 2003,788210袁伟军等.基于短时对数谱估计MMSE的语音增强算法研究J. 电声技术, 2007年10期,828511Rizvi A. Residual vector quantization using a multiplayer competiting neural net

44、workJ.IEEE Trans.on SAC,1994,12(9):14521459.12Thyssen J, Nielsen H, Hansen S D. Nonlinear short-term prediction in speech coding C. Proc.of ICASSP,1994,I:185188.附录编程文件Ax,fs,bits=wavread('F:BirdSing.wav');sound(x);X=fft(x,4096);magX=abs(X);angX=angle(X);subplot(221);plot(x);title('原始信号波形&

45、#39;);subplot(222);plot(X); title('原始信号频谱');subplot(223);plot(magX);title('原始信号幅值');subplot(224);plot(angX);title('原始信号相位');编程文件Bfs=44200;                  %语音信号采样频率为44200x,fs,bits=wavread('F:BirdSing.wav',5050 18500); &nbs

46、p;sound(x,fs,bits);           %播放语音信号y1=fft(x,1024);           %对信号做1024点FFT变换f=fs*(0:511)/1024;figure(1)plot(x)                   %做原始语音信号的时域波形图title('原始语音信号时域图');xlabel('time n');ylabel(&

47、#39;fuzhi n');figure(2)freqz(x)                  %绘制原始语音信号的频率响应图title('频率响应图')figure(3)plot(f,abs(y1(1:512);title('原始语音信号频谱')xlabel('Hz');ylabel('fudu');编程文件Cfs=44200;               &n

48、bsp;  %语音信号采样频率为44200x,fs,bits=wavread('F:BirdSing.wav ',5050 18500); %读取语音信号的数据,赋给变量xy1=fft(x,1024);           %对信号做1024点FFT变换f=fs*(0:511)/1024;x1=rand(1,length(x);   %产生一与x长度一致的随机信号  x2=x1+x;sound(x2);figure(1)subplot(2,1,1)plot(x)     &nbs

49、p;             %做原始语音信号的时域图形title('原语音信号时域图')subplot(2,1,2)plot(x2)                   %做原始语音信号的时域图形title('加高斯噪声后语音信号时域图')xlabel('time n');ylabel('fudu');y2=fft(x2,1024);figure(2)subplot(2,1,1)p

50、lot(abs(y1)title('原始语音信号频谱');xlabel('Hz');ylabel('fudu');subplot(2,1,2)plot(abs(y2)title('加噪语音信号频谱');xlabel('Hz');ylabel('fudu');编程文件DWp=0.3*pi,0.7*pi;Ws=0.2*pi,0.8*pi;Ap=1;As=30;N,wn=buttord(Wp/pi,Ws/pi,Ap,As);          %计算巴特沃

51、斯滤波器阶次和截止频率b,a=butter(N,wn,'bandpass');              %频率变换法设计巴特沃斯带通滤波器db,mag,pha,grd,w=freqz_m(b,a);                  %数字滤波器响应Plot(w/pi,mag);Title('数字滤波器幅频响应|H(ejOmega)|')x,fs,nbits=wavread ('F:BirdSi

52、ng.wav');n = length (x) ;         %求出语音信号的长度t=0:(size(x)-1);x2=rand(1,length(x)'   %产生一与x长度一致的随机信号   y=x+x2;加入正弦噪声n = length (x) ;         %求出语音信号的长度t=0:(n-1);Au=0.03;d=Au*sin(2*pi*500*t)'y=x+d;f=filter(bz,az,y);figure(1)freqz(b,1,512)f2=

53、filter(bz,az,y)figure(2)subplot(2,1,1)plot(t,y)title('滤波前的时域波形');subplot(2,1,2)plot(t,f2);title('滤波后的时域波形');sound(f2);                    %播放滤波后的语音信号F0=fft(f1,1024);f=fs*(0:511)/1024;figure(3)y2=fft(y,1024);subplot(2,1,1);plot(f,abs(y

54、2(1:512);             %画出滤波前的频谱图title('滤波前的频谱')xlabel('Hz');ylabel('fuzhi');subplot(2,1,2)F1=plot(f,abs(F0(1:512);          %画出滤波后的频谱图title('滤波后的频谱')xlabel('Hz');ylabel('fuzhi');   编程文件Efs=22050;x,fs,bits=wavread('F: BirdSing.wav');sound(x)t=0:(size(x)-1);x2=rand(1,length(x)'   %产生一与x长度一致的随机信号   y=x+x2;加入正弦噪声t=0:(n-1);

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
搜索标签

当前位置:首页 > 学术论文 > 毕业论文/毕业设计

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服