




已阅读5页,还剩48页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
噪声估计的算法及MATLAB实现毕业设计目 录1 绪 论11.1 噪声估计算法研究的目的和意义11.2 国内外研究的现状21.3 论文的整体安排32 几种经典的噪声估计的算法42.1 几种噪声估计算法的优点42.2 噪声估计算法43 基于语音活动性检测的噪声估计算法及MATLAB实现63.1 基于语音活动性检测的噪声估计算法63.1.1 短时能量63.1.2 短时平均过零率73.1.3 基于短时能量和短时平均过零率的语音活动性检测73.1.4 实验仿真94 最小统计递归平均的噪声估计算法及MATLAB仿真114.1 最小值统计法114.1.1 最优平滑114.1.2 最小功率谱统计跟踪124.1.3 实验仿真144.2 基于统计信息的非平稳噪声自适应算法154.2.1 概述154.2.2 非平稳噪声自适应算法154.3 最小值控制递归平均算法184.3.1 计算局部能量最小值194.3.2 估计语音存在的概率204.3.3 更新噪声谱的估计204.4 一种改进的最小统计量控制递归平均噪声估计算法214.4.1 改进的噪声估计算法214.4.2 实验仿真235 总结与展望245.1 论文的主要工作245.2 目前存在的问题及今后的发展方向24参考文献25致 谢26附录:外文文献27521 绪 论1.1 噪声估计算法研究的目的和意义语音作为语言的声学表现,是人类特有的也是最重要的思想和情感交流段,也是人机交互最自然的方式。而人们在通信过程中,语音常常受到环境噪声的干扰而使通话质量下降,在实际应用中噪声的存在也会产生很多问题,语音处理设备对人类语音进行获取或处理的过程不可避免地要受到来自周围环境的各种噪声或其它讲话者的干扰,这些干扰噪声最终将使语音处理设备的接收到的语音不再是纯净的原始语音,而是被噪声污染过的带噪语音。由于环境噪声的污染会使许多语音处理系统的性能急剧恶化,严重时使语音处理系统不能正常工作,因此在上述情况下,背景噪声的存在不仅严重破坏了语音信号原有的模型参数和声学特性,导致许多语音处理系统服务质量的降低,而且会影响系统输出语音的可懂程度,使听众产生听觉疲劳。在视频信号中也同样存在噪声,很多视频图像处理都是在没有考虑噪声情况下得出的,如果存在噪声就必将会影响这些算法的有效性。由于噪声对视频图像处理算法的影响如此大,因此在开发图像视频处理算法时必须考虑噪声,必须有一种可靠的方法能准确地估计噪声,以便使很多图像视频处理算法(比如边缘检测、图像分割和滤波等)在噪声存在的情况下依旧保持非常良好的性能。然而,语音增强技术作为一种预处理技术,是消除这些噪声干扰的一个最重要的手段,它通过对带噪语音进行处理来改善语音质量,使人们易于接受或提高语音处理系统的性能。语音增强的主要目标是从带噪语音信号中提取尽可能纯净的原始语音,通过语音增强,抑制背景噪声,提高语音通信质量,而噪声估计又是语音增强的一个非常重要的部分,噪声估计的准确性直接影响到语音增强的效果,因此研究噪声估计算法有很好的实用价值。在这种情况下,必须建立一个语音增强系统,通过对带噪语音进行处理,以消除背景噪声,改善语音质量,提高语音的清晰度、可懂度和自然度,提高语音处理系统的性能;或者将语音增强作为一种预处理手段,以提高语音处理处理系统的抗干扰能力。要实现这些第一个环节就是要利用噪声的特性参数,很好的将噪声估计出来。语音增强算法可从信号输入的通道数上分为单通道的语音增强算法和多通道的语音增强算法。单通道语音系统在实际应用中较为常见,如电话,手机等。这种情况下语音和噪声同时存在一个通道中,语音信息与噪声信息必须从同一个信号中得出。而单通道语音增强是语音增强的基础,单通道语音增强第一个环节就是要利用噪声的特性参数,很好的将噪声估计出来,而在此方法中,噪声源是不可接近的,背景噪声的特性只能从带噪语音中获得。因此,噪声估计的准确性会直接影响最终效果:噪声估计过高,则微弱的语音将被去掉,增强语音会产生的失真;而估计过低,则会有较多的背景残留噪声。因此,对噪声估计方法的研究是非常必要的,在语音算法的前期必需要对噪声进行估计。噪声估计还在语音通讯领域非常重要,同时在统计学、图像处理、军事等方面也起着非常重要的作用. 由于噪声的统计特性比语音的统计特性更平稳,所以噪声估计在统计学中也很有研究意义。可见,噪声估计在很多领域起着非常重要的作用,那么噪声估计算法作为研究课题是非常有意义的。1.2 国内外研究的现状有关抗噪声技术的研究,在国内外作为非常重要的研究课题,已经作了大量的研究工作,取得了丰富的研究成果。而噪声估计是语音增强中非常重要的一个部分,在这方面的研究,国外比较多一些,以下介绍几种经典的噪声估计算法。传统的噪声估计方法是使用语音活动性监测 ( VAD:Voice Active Detection)判别语音是否出现,并分离出无声段,此时无声段主要表现为噪声特性,然后在无声区通过某种统计方法,获得背景噪声特性的近似估计,对噪声谱进行更新。尽管该方法在噪声为平稳的情况下是可行的,但是在实际的噪声环境中噪声谱的特性变化很大,在低信噪比下,VAD的误检率会增大,在不能正确判断无声段的情况下很难保证估计出来的噪声的准确性。因此,为了实现精确的噪声估计,就要对噪声谱进行实时的估计。1994年Martin提出了一种基于最小值统计的方法来估计噪声,它是基于带噪语音信号的功率水平滞后于噪声的功率水平,因此可以通过跟踪带噪语音信号功率谱的最小值来获得噪声功率谱的估计值。在大约1.5s 的滑动窗口内寻找每一频率带内的频谱最小值,经过补偿后和带噪语音的功率谱进行比较。不论带噪语音的功率谱是否小于局部最小值,局部最小值都需要更新。同时,为了能更快的跟踪并更新局部最小值和频谱最小值,把滑动窗口分为子窗口,在每个子窗口内更新噪声的估计谱,提高了精确度4。此算法的基本思路是先用一个最优平滑滤波对带噪语音的功率谱滤波,得到一个噪声的粗略估计。然后找出粗略噪声中的在一定时间窗内的最小值,对这个最小值进行一些偏差修正,即得到所要估计的噪声的方差。1995年Doblinger通过比较前帧带噪语音子带平滑功率谱最小值和后帧带噪语音子带平滑功率谱之间大小,对带噪语音子带平滑功率谱最小值每帧进行跟踪和更新,并将其作为估计的噪声谱,该噪声谱估计方法计算效率高,能快速适应背景噪声的变化,但是它直接把带噪语音子带平滑功率谱最小值作为估计的噪声谱,使得噪声谱过估计。但这种算法容易将语音电平的增长当作噪声电平的增长。与此类似的算法还有基于分位数统计量的噪声估计算法,先对噪声估计窗内的信号进行排序,然后按一定的分数比例取信号作为噪声估计,算法复杂度比较高。2002年Cohen 和Berdugo提出了一种基于最小值控制递归平均法的噪声估计算法,把最小追踪法的鲁棒性与递归平均方法的简单性结合到一起,该算法能够快速地追踪突变的噪声功率谱。与最小统计相比,对最小值的跟踪不是关键性的,在进行递归平均时不需要对语音出现与缺失进行区分,因此即使在弱语音段也同样可以进行连续噪声估计更新。具有能够快速跟踪噪声谱的突变的能力。Cohen提出的噪声估计算法不直接依赖于最小统计量,而依赖于最小值的跟踪算法,具有较好的鲁棒性。虽然比起Martin的最小值统计跟踪算法效果要好的多,但无法完全避免在噪声上升区域的噪声欠估计及持续强语音后面区域出现的噪声过估计的缺陷。为了进一步提高算法性能,Cohen提出了改进的最小统计量控制递归平均算法(IMCRA,Improved Minima Controlled Recursive Averaging)。2004年Rangachari 和Loizou提出了一种快速估计方法,不仅使得带噪语音子带中语音出现概率计算更准确,而且噪声谱的更新在连续时间内不依赖固定时间的窗长,但是在语音或噪声能量过高时噪声的估计就会慢下来,而且如果时间大于0.5s 时,就会削弱一些语音能量。因此,噪声估计算法有待更进一步的改进。2009年余力, 陈颖琪提出了一种基于DCT变换的自适应噪声估计算法,采用DCT系数作为块均匀度的度量,较好地适应了高低噪声的情况,算法复杂度不大,能适用于各种实时图像视频处理系统。理论分析及实验结果表明本算法不仅在低噪声的图片中表现出良好的性能,而且在高噪声的图片中依旧有效。此外,还能适应不同质量的图像。通过对基于最小统计量的噪声估计方法和改进的最小统计量控制递归平均噪声估计算法研究发现这些噪声估计方法可以在语音存在段进行噪声估计,能够有效地跟踪非平稳噪声。但是,这些算法在各个频带进行噪声估计,算法复杂度高,噪声估计方差大。于是在考虑各频带间的相关性上提出了在巴克域进行噪声估计,减小了噪声估计方差,提高了噪声估计的准确性,并极大地减小算法运算量和存储量。而且,在巴克域进行噪声估计更符合人耳听觉特性,增强语音具有更好的质量。其他类似的方法还有低能量包络跟踪和基于分位数的估计方法,后者噪声的估计是基于带噪语音未平滑功率谱的分位数,而不是提取平滑功率谱的最小值,但是此方法计算复杂度很高,且需要很大的内存来存储过去的功率谱值。本文重点就是在前人研究的基础上,跟踪国内外最新资料,研究了一种新的噪声估计算法,使延迟时间能够缩短,最好没有延迟。1.3 论文的整体安排第一章 绪论。噪声估计算法研究的目的和意义及国内外研究的现状。第二章 几种经典的噪声估计的算法。Martin的最小统计量的估计算法, Cohen和Berdugo提出的基于最小统计量控制递归平均算法,通过比较最终提出改进的最小统计量控制递归平均算法,仿真结果表明,这种方法在非平稳噪声条件下,也具有较好的噪声跟踪能力和较小的噪声估计误差,可以有效地提高语音增强系统的性能。 第三章 基于语音活动性检测的噪声估计算法及MATLAB仿真。通过基于语音活动性检测的噪声估计算法,对能量和最小过零率的语音端点进行检测,仿真结果得出,我们需要鲁棒性更强的算法,即使在有语音存在的情况下,也能够实现噪声的连续估计和不断更新。第四章 最小统计递归平均的噪声估计算法及MATLAB仿真。首先研究了最小值统计跟踪法通过仿真得出此算法不能快速跟踪真实噪声的变化,并研究了基于统计信息的非平稳噪声自适应算法,但它的计算很复杂。其次是Cohen和Berdugo提出的最小值控制递归平均算法,为了进一步提高算法性能,本文提出了一种改进的最小值控制递归平均算法,此算法在保证噪声估计准确性的同时减小了算法的复杂度。 第五章 总结全文,并分析论文存在的不足及今后的的发展方向。在以后的噪声估计算法的研究中要进一步完善噪声功率谱的估计算法,进一步将噪声估计方法和其他方法相结合,争取得到更加精确的噪声估计。2 几种经典的噪声估计的算法2.1 几种噪声估计算法的优点(1) Martin提出的基于最小统计量的噪声估计算法,是先用一个最优平滑滤波对带噪语音的功率谱滤波,得到一个噪声的粗略估计。然后找出粗略噪声中的在一定时间窗内的最小值,对这个最小值进行一些偏差修正,即得到所要估计的噪声的方差。而且,为了能更快的跟踪并更新局部最小值和频谱最小值,把滑动窗口分为子窗口,在每个子窗口内更新噪声的估计谱,提高了精确度。(2) Cohen和Berdugo提出的基于最小统计量控制递归平均算法, 该方法用一个与时频相关的平滑因子对带噪语音的过去值进行平均,以得到噪声的估计值,然后在每一帧内连续的更新噪声。采用递归平均进行噪声估计,平滑参数受语音存在概率控制,并由最小统计量控制语音存在概率。(3) 近年来,提出了一种自适应连续噪声谱估计方法,它是一种专门用语单声道语音增强系统的噪声估计的。它不需要语音的有声/无声检测,噪声谱在所有的帧中连续的更新,并不关心本帧是语音帧还是噪声帧,对每一帧都重新计算其噪声功率谱。自适应连续的噪声估计算法,省去了对语音端点的检测,对非平稳噪声也有较好的适应性,即使在有语音存在的情况下,也能够实现噪声的连续估计和不断更新。2.2 噪声估计算法Martin提出的基于最小统计量的噪声估计算法的基本思路是先用一个最优平滑滤波对带噪语音的功率谱滤波,得到一个噪声的粗略估计。然后找出粗略噪声中的在一定时间窗内的最小值,对这个最小值进行一些偏差修正,即得到所要估计的噪声的方差。这种方法是在噪声估计窗内搜索最小值作为噪声估计量,而且此算法对窗长的选择比较敏感,当窗长比较长时,对非平稳噪声的跟踪速度慢,而且容易出现噪声低估;当窗长比较短时,比较容易出现将语音的低能量成分当作噪声。这些问题可以通过优化的平滑参数和偏差补偿得以改进,虽然提高了精确度,但这大大地提高了算法的复杂度。仿真结果表明:最小值统计跟踪法对平稳噪声噪声的估计是比较准确的,但是对非平稳噪声就表现的不好了。而Cohen和Berdugo提出的最小统计量控制递归平均算法(MCRA,Minima Controlled Recursive Averaging),采用递归平均进行噪声估计,平滑参数受语音存在概率控制,并由最小统计量控制语音存在概率。这种算法不直接依赖于最小统计量,具有较好的鲁棒性,它是使用一个平滑参数对功率谱的过去值进行平均,该平滑参数是根据每个子带中语音存在的概率进行调整的。在一给定帧的某个子带中语音是否存在的概率可以由带噪语音的局部能量值与其待定时间窗内的最小值的比值决定,把该比值与某一门限做比较,小的比值意味着该子带中不存在语音,反之,意味着该子带内存在语音。如果给定帧的某个子带中存在语音,那么该子带内的噪声谱等于上一帧的噪声谱,如果不存在,则根据带噪语音的功率谱更新噪声谱。最后,为了防止估计的噪声起伏较大,对其进行了递归平滑。为了进一步提高算法性能,本文研究了一种改进的最小统计量控制递归平均算法。该算法采用递归平均进行噪声估计,其递归平均的平滑因子受语音存在概率控制,而语音存在概率的计算采用了两次平滑和最小统计量跟踪。与Cohen提出的IMCRA算法相比,本文采用的是一种快速有效的最小统计量跟踪算法,在IMCRA算法的基础上,利用其对语音最小统计量估计的鲁棒性,采用了一种简单有效的最小统计量估计算法,在保证噪声估计准确性的同时,减小了算法的复杂度。仿真结果表明:在非平稳噪声条件下,算法具有较好的噪声跟踪能力和较小的噪声估计误差,可以有效地提高语音增强系统的性能。3 基于语音活动性检测的噪声估计算法及MATLAB实现传统的噪声估计方法使用语音活动监测(VAD)技术分离出无声段,这时无声段主要表现为噪声特性,然后再通过某种统计方法,即可获得背景噪声特性的近似估计。尽管该方法在噪声为平稳的情况下是可行的,但是在实际的噪声环境中噪声谱的特性变化很大,就很难达到好的降噪效果。从实用性、易实现性等方面考虑,很多算法都是建立在相对理想的实验室条件下的,要求背景噪声保持平稳,信噪比较高,而且需要一定的训练算法以预先得到背景噪声及语音的统计信息。在实际工作中,这些条件很难得到满足,而且经常会遇到信噪比较低,背景噪声缓慢变化的情况,也不可能预先得到背景噪声或语音的统计信息。而且在低信噪比下,VAD 的误检率会增大,在不能正确判断出有声/无声段的情况下,估计出来的噪声很难保证准确性。因此,为了实现精确的噪声估计,就要对噪声谱进行实时的估计。近年来,人们提出了一种自适应连续噪声谱估计方法,它是一种专门用语单声道语音增强系统的噪声估计。噪声谱在所有的帧中连续的更新,并不关心本帧是语音帧还是噪声帧,对每一帧都重新计算其噪声功率谱,它不需要语音的有声/无声检测,对非平稳噪声也有较好的适应性,即使在有语音存在的情况下,也能够实现噪声的连续估计和不断更新。本章从语音活动检测和连续更新噪声两方面入手,将几种算法的基本原理及过程进行了详细的描述,并分析了实验结果。3.1 基于语音活动性检测的噪声估计算法3.1.1 短时能量语音信号和噪声信号的区别可以体现在他们的能量上,对于一列叠加有噪声干扰的语音信号而言,其语音段的能量是噪声段能量叠加语音声波能量之和。因此,语音段的能量一般要大于噪声段的能量。如果环境噪声和系统输入噪声比较小,以至于能够保证系统的信噪比相当高,那么只要计算输入信号的短时能量或短时平均幅度就能够把语音段和噪声背景分开。这就是仅仅基于短时能量的端点检测方法。信号x(t)短时能量定义为:E= (3-1) 语音信号的短时平均幅度定义为:M= (3-2)短时能量有两种定义:短时时域能量和短时谱幅能量,一般用的是短时频域能量表示,因此,短时能量用傅立叶变换后的平方表示,平均幅度为傅立叶变换后谱绝对值的和。短时能量主要有下面几个应用:首先利用短时能量可以区分清音和浊音,因为浊音的能量要比清音的能量大得多;其次可以用短时能量对有声和无声段进行判断。3.1.2 短时平均过零率信号x(t)的短时平均过零率定义为: Z= (3-3)一般取: h(t)= 其中N为窗长信号的过零率是其频率量的一种简单度量,窄带信号尤其如此。其中,当信号为单一正弦波时,过零率为信号频率的两倍。对于采样率为s F 、频率为的正弦波数字信号,平均每个样本的过零率为s 2F / F 0 。过零率有两个重要应用:第一,用于粗略地描述信号的频谱特性。第二,用于判别清音和浊音、有声和无声。由上面定义出发,计算过零率容易受低频干扰,所以需要对上述定义做一点修改,设置一个门限T,将过零率的含义修改为跨过正负门限。如下式:Z= + (3-4)这样过零率就有一定的抗干扰能力了。即使存在较小的随机噪声,只要它不使信号越过正负门限所构成的带,就不会产生虚假的过零率。3.1.3 基于短时能量和短时平均过零率的语音活动性检测 虽然短时能量有时能将噪声和语音分开,但是在实际应用中,往往很难保证有这么高的信噪比,因而仅依靠短时能量或短时平均幅度来检测语音段的起止点常会遇到问题。而且在一些特殊情况下,在以某些音为开始或结尾时,如当弱摩擦音(如f,h等音素)、弱爆破音(如p,t,k等音素)为开始或结尾;以鼻音(如ng,n,m等音素)为语音的结尾时,只用其中一个参数量来判别语音的起点和终点是有困难的,往往会漏掉某些音素,必须同时使用这两个参数。所以,有了经典的端点检测方法Lawrennce Rabiner24提出的以过零率Z 和能量E 为特征进行端点检测。这种方法也常称为双门限比较法。此方法是在短时能量检测方法的基础上加上短时平均过零率,利用能量和过零率作为特征来进行检测。通常是利用过零率来检测清音,用短时能量来检测浊音,两者配合实现可靠的语音端点检测。该方法的基本原理25如下所述:由于采集声音信号的最初的短时段为无语音段,仅有均匀分布的背景噪声信号。这样就可以用该语音信号的最初几帧(一般取10 帧)信号作为背景噪声的统计样本来计算其过零率阈值ZT 及能量阈值EL(低能量阈)和EU(高能量阈)。ZT 的定义为: (3-5)其中IF 为经验值,一般取25;zc、fzc 分别为根据所取最初10 帧样值算得的过零率的“均值”和“标准差”。计算EL 和EU 时,先算出最初10 帧信号每帧的短时平均能量或平均幅度E,最大值记为EMAX,最小值记为EMIN。然后令: (3-6) (3-7)在本次设计中用前10 帧的平均值来代替最小值EMIN 最后按下式计算出EL 和EU: (3-8) (3-9)接下来就可以用过零率阈值Z 及能量阈值EL 和EU 来进行起止点的判别。先根据EL,EU 计算出初始起点S1。方法如下所述:从第11 帧开始,将每一帧的能量E 值与门限EL 相比较,如果能量E 超过门限EL,则将该帧计为S1。但若后续n帧的平均能量或幅度尚未超过EU 而能量又降到EL 之下,则该帧不能作为初始起点S1,然后继续寻找下一个平均能量或幅度超过EU 的帧,若后续n 帧的平均能量或幅度超过EU,则将此帧计为S1,该帧就可以作为根据能量信号找到的语音的起点。但是,S1 只是根据能量信息找到的起点,还未必是语音的精确起点。这是由于语音的起始段往往存在着能量很弱的清辅音(如f,s等),仅依靠能量很难把它们和无声区分开。但人们发现这些清辅音的过零率明显高于无声段,因此可以利用过零率这个参数来精确判断清辅音与无声区二者的分界点。当S1 确定后,从S1 帧之前的30 帧搜索,依次比较各帧的过零率,若有3 帧以上的过零率超过ZT,则将起始点S1 定为满足ZZT 的最前帧的帧号,如果这些帧的过零率都小于门限ZT 则将S1 作为起点。语音结束点S2 的检测方法与检测起点相同,从后向前搜索,找出第一个平均能量幅度高于EL、且其前向帧的平均能量或幅度在超出EU 前没有下降到EL 以下的帧号,记为N2,随后根据过零率向N2+25 帧搜索,若有3 帧以上的ZZT,则将结束点N2 定为满足ZZT的最后的帧号即Ne,否则即以N2 作为结束点。3.1.4 实验仿真下面是以一段语音为例,进行语音端点检测的Matlab 仿真。实验采用的纯净语音材料是HINT 数据库中的一条语音(语音内容:Read verse out loud for pleasure),大概2.1s 左右;噪声材料取自NOISEX-92 的高斯白噪声和f16 战斗机噪声。语音和噪声都是以8KHz 采样,16bit 量化,wav 格式存储,并通过Matlab 按一定线形比例混合成不同信噪比的带噪语音。图3-1 语音的原始波形图图3-2 语音的能量曲线图图3-3 语音的短时过零率曲线图由上图可以看出基于能量和短时过零率的端点检测算法在无噪声的环境下比较准确的检测到了语音的开始和结束点。为了验证其鲁棒性,利用了Matlab 给以上信号添加信噪比-5db 的高斯白噪声,采用同样的算法,其仿真结果如下图所示:图3-4 加入高斯白噪声的语音波形图图3-5 加入高斯白噪声的能量曲线图图3-6 加入高斯白噪声的短时过零率曲线图由以上图中可看出,在较强背景噪声的环境下,上述算法的准确性急剧下降,已经不能准确的检测出信号的端点了。因此,我们需要鲁棒性更强的算法,即使在有语音存在的情况下,也能够实现噪声的连续估计和不断更新。4 最小统计递归平均的噪声估计算法及MATLAB仿真本章先研究了经典的噪声估计算法即最小值跟踪法,然后研究了基于统计信息的非平稳噪声自适应算法,最后对这两种噪声估计算法做了实验仿真。仿真结果表明:最小值跟踪法对平稳噪声的估计是比较准确的,但是非平稳噪声就表现的不好了,而基于统计信息的非平稳噪声自适应算法在非平稳噪声环境中也表现的很好,能够比较准确的跟踪上噪声的突变。4.1 最小值统计法4.1.1 最优平滑设带噪语音信号为y(t),它由纯净语音和噪声组成,即y(t) = s(t) + n(t),这里t代表采样的时间标号。进一步假设s(t)和n(t)是统计独立的,并各自都是零均值的。为了将信号转化到频域,将信号分成长度为L 个采样点的帧信号,帧间重叠为R 点。对帧信号进行FFT 计算,得到了频域的信号: (4-3) 其中为帧号即时间的标号,k为频率点的标号, Z, k0,1,L-1,h(u)是一个窗序列,并假设先用一个平滑过程来粗估计噪声功率谱密度P(, k): (4-4)其中 是平滑参数,噪声功率的进一步估计 通过取P(, k)在一个滑动窗内的最小值来决定。上述估计还很粗糙,为了进一步提高估计的准确性还要考虑以下问题:第一,固定的 值将不适应有声/无声的变化与噪声的变化。第二,这样的噪声估计将比真正的噪声要滞后。第三,最小值的跟踪过程比真实的噪声要滞后。因此,对原有的噪声估计还需要一个随时间变化的平滑系数 、一个偏差补偿系数与加速跟踪方法。为了简化计算,假设信号处于无声状态。将平滑过程写成由时变平滑系数作用的过程: (4-3) 为了使P(, k)尽可能的接近真正的噪声功率谱密度,以下式的期望值为零作为目标: (4-4) 由上式得: (4-5)在实际运用中,最优估计式中的 用上次的估计值代替,并且最优系数将被限制在一个最大值max 之间来避免 (, k) = 1的死锁情况发生。为了提高在非稳定的噪声环境中的平滑效果,平滑系数设置一个下限为0.3。式子(3-14)可重新写成: (4-6) 4.1.2 最小功率谱统计跟踪最小功率谱统计跟踪的方法将跟踪短时谱的最小功率谱密度,这个最小功率谱是由一个连续时间段内的最小功率谱密度求出。因为随机变量的最小值总会小于平均值,所以用最小功率谱密度值的估计存在着偏差,要得到平均值就要对最小功率谱密度进行偏差修正。在推导最小功率谱统计跟踪方法时,为了简化计算,假设信号处于无语音状态,在有语音状态时只要将噪声的方差用带噪语音信号的方差代替即可。设在D个连续的短时功率谱密度估计P(, k)中的最小值为,那么: (4-7)假设独立同分布,所以P(, k)的概率密度函数为: (4-8)由于与成正比,并且的方差正比于。所以只要计算在=1时的均值和方差就足够了。我们定义符号: (4-9) (4-10)M(D)和H(D)都是关于D的系数函数,其中D取96,M(96)=0.875,D(96)=3.55。由于在非语音状态时取值比较大,所以可简写为:于是,噪声方差可以估计为: (4-11) 其中,估计为: (4-12)而是P(, k)方差的估计,其估计式为:= (4-13)和分别是EP(, k)和EP2 (, k)的一阶平滑估计 (4-14) (4-15) (, k)为平滑系数,且 为了在非平稳噪声环境中得到更好的估计,将乘以系数,而 (4-16)其中 由于该算法在对有声/无声时使用同一标准来估计噪声,所以不需要有声/无声检测。另外,噪声估计是通过最小值来搜索,然后再对其进行修正,所以算法比较简单。4.1.3 实验仿真实验中采用了两种带噪语音文件,一种是信噪比为-5dB的平稳带噪语音,噪声为高斯白噪声;另一种是前3.2s为10dB的高斯白噪声,后3.4s为-5dB的F16战斗机噪声的非平稳语音,且实验中采用汉明窗,帧长20ms,帧间重叠50%,同时取频率分量取5。图中横坐标是时间,纵坐标表示功率谱,实线表示真实的噪声谱,虚线表示估计的噪声谱。其仿真结果分别如图3-7,图3-8所示。图4-1 真实噪声谱和MS算法估计的噪声谱 (-5dB高斯白噪声)图4-2 真实噪声谱和MS算法估计的噪声谱 (信噪比从10dB突变为-5dB)由上图可知,当噪声和信噪比同时突变的情况下,此算法仍然不能快速跟踪真实噪声的变化。而且该算法可能会偶尔削弱低能量音素,且在1.5ms的窗内跟踪新的噪声谱,时间太长,但如果减小窗口的长度,跟踪到的频谱最小值不够准确,这样会导致语音信号的失真,特别是语音的持续时间超过窗口长度时。虽然此局限能够得以克服,但是代价却是很高的计算复杂度。4.2 基于统计信息的非平稳噪声自适应算法4.2.1 概述在大多数语音增强算法中,都假定噪声功率谱的估计是已知的,这些噪声功率谱的估计或者噪声参数的估计对所增强的语音信号有着极其重要的影响。如果噪声功率谱估计太低,那么所残留的噪声干扰将会被听得到。同样,如果噪声功率谱估计太高,那么语音信号质量将会在很大程度上受到损害。最简单的方法就是在纯净语音的间隙去估计和更新噪声功率谱,例如,语音活性(VAD)算法,尽管这种方法在平稳噪声中(如白噪声),可能表现的较好,但是在大多数的实际环境中表现的就没那么好了,因为在这样的环境中噪声是时变的。因此,在大多数噪声估计算法中,如果噪声突然变大,那么噪声估计都不能及时跟踪它的变化。在带噪语音的每一帧处,基于带噪语音的功率谱和其局部最小值的比率来判断纯净语音是否存在,结果表明在噪声水平突然增加的情况下,Rangachari的非平稳噪声估计算法仅仅需要0.5s就更新了噪声参数,而其它的算法大概需要1-1.5s。在本文中,我们介绍一种改进的算法:基于统计信息的非平稳噪声自适应算法 (1)不需要明确的语音活性检测(VAD)来更新噪声参数的估计。(2)利用帧间相关性估计纯净语音存在概率。这种算法基于语音存在概率来计算时频平滑参数,从而更新噪声参数。4.2.2 非平稳噪声自适应算法设观察到的带噪语音为: (4-17)其中,s(t)是纯净语音,n(t)是加性噪声。先用一个递归的平滑过程来计算带噪语音的语音的功率谱: (4-18)其中,是平滑功率谱,是帧的标号,k是频点的标号,是带噪语音的功率谱, 。(1) 跟踪带噪语音最小值在以前的算法中(如martin的最小值跟踪法),通过一个固定的窗长去跟踪带噪语音功率谱的最小值。这些方法对于外部环境很敏感,并且依据窗长去更新最小值。下面用递归法则去跟踪最小值:if thenelse end其中,是带噪语音的局部最小功率谱, 。图(4-3)是带噪语音的功率谱和其局部最小值。噪声是由白噪声和F16战斗机噪声组合而成,信噪比SNR=5dB 。图4-3 带噪语音的功率谱和其局部最小值图中,虚线表示带噪语音功率谱,实线表示带噪语音局部最小值,频率分量k=8(2) 语音存在概率这里介绍的判断语音存在概率的方法类似于2002年Cohen在噪声估计算法中使用的方法,用带噪语音功率谱和其局部最小值得比率来计算语音存在概率,用下式表示: (4-19)计算出来的概率和经验频率值比较,如果大于判断为语音存在频率点,否则判断为语音盲点。原因是:在语音盲点时刻,带噪语音功率谱接近于其局部最小值,因此,在(3-12)式中比率越小,处于语音间隙的可能性就越大。语音是否存在用下式判断: if then 语音存在 (4-20) else 语音间隙 end其中,用下式来确定: (4-21)其中,LF和MF分别对应于1k和3k的频率点,Fs是采样频率。从上式的判断规则,用下式来更新语音存在概率: (4-22)其中, 。(注: (4-21)式利用了相邻语音帧间相关性。)(2) 计算时频平滑参数利用上面的语音存在概率估计,用下式计算时频平滑参数: (4-23),的取值范围是:(3) 更新噪声功率谱最后,在计算了时频平滑参数后,利用下式来更新噪声功率谱: (4-24)其中,是噪声功率谱的估计值,整个算法的描述过程:根据式(4-21)判断何时是语音存在频点,何时是语音间隙频点;然后根据式(4-22)来更新语音存在概率;再根据式(4-23)来更新时频平滑参数;最后,根据式(4-24)来更新噪声功率谱的估计。图4-4描绘了真实的噪声功率谱和用我们的算法所估计出来的噪声功率谱,噪声是由白噪声和F16战斗机噪声组合而成,Fs=8k,信噪比SNR=5dB。 图4-4 真实的噪声谱和估计的噪声谱图4-4中,虚线表示真实噪声功率,实线表示估计噪声功率,频率分量k=8。可以看出在大约100帧处,噪声功率突升,估计噪声功率也即刻突升,表明算法能够即刻跟踪噪声的变化。4.3 最小值控制递归平均算法Cohen和Berdugo在文献5中提出了一种基于最小值约束的递归平均(MCRA:Minima Controlled Recursive Averaging)方法。该方法使用一个平滑参数对功率谱的过去值进行平均,该平滑参数是根据每个子带中语音存在的概率进行调整的。在一给定帧的某个子带中语音是否存在的概率可以由带噪语音的局部能量值与其待定时间窗内的最小值的比值决定,把该比值与某一门限做比较,小的比值意味着该子带中不存在语音,反之,意味着该子带内存在语音。如果给定帧的某个子带中存在语音,那么该子带内的噪声谱等于上一帧的噪声谱,如果不存在,则根据带噪语音的功率谱更新噪声谱。最后,为了防止估计的噪声起伏较大,对其进行了递归平滑。Mcaulay提出语音存在和语音缺失的两态假设模型28 (4-25)其中,(1)式代表语音缺失,(2)式代表语音存在,Y(, k),S(, k)和N(, k)分别代表带噪语音、纯净语音和噪声的短时傅立叶变换后的幅度, 和分别代表语音缺失和语音存在概率假设。那么就可以在这两种假设模型下更新噪声谱,更新的方法是:如果该子带中存在语音,噪声谱保持不变;反之则根据带噪语音的功率谱进行更新,如下式: (4-26)其中,(1)式代表语音存在,(2)式代表语音缺失, 为平滑参数,取值为0.85。 为了达到上式的噪声估计,首先对输入的每一帧信号用下式进行频域平滑: (4-27)其中,b(i)为加权系数,Y(, k)是第 帧的第k 个频率点的幅度,2w +1是进行频域平滑的相邻频点数。其次,用一阶递归进行时域平滑: (4-28) 其中,为平滑参数,本节中取0.8,S( 1, k)为前一帧带噪信号的功率谱。4.3.1 计算局部能量最小值局部能量最小值等于前一帧局部能量最小值与当前帧带噪信号功率谱中较小的一个,即:9 (4-29)同时定义一个临时变量,表示如下: (4-30)每当处理第nL帧时,更新局部能量最小值和临时变量,分别为: (4-31)其中,L为一个包含多帧的窗口大小,决定了局部最小值搜索的范围,考虑到语音的连续性和噪声的改变,窗口大小需要限制在0.5-1.5s内。4.3.2 估计语音存在的概率用带噪语音功率谱和其局部最小值的比率来计算语音存在概率,如下式表示: (4-32)计算出的概率和经验频率值 比较,如果大于 判断为语音存在频带,否则判断为语音盲点。之所以这样判断是因为:在语音盲点时刻,带噪语音功率谱接近于其局部最小值,因此,在上式中比率越小,处于语音间隙的可能性就越大。语音是否存在用下式来判断: If then 语音存在 else 语音不存在 (4-33) end 从上式的判断规则,用下式来更新语音存在概率: (4-34)其中,是平滑常量,本节中取0.2。 取值5,I ( , k)是上式中的指标函数。4.3.3 更新噪声谱的估计获得语音存在的概率后,就可以更新噪声谱了。如下式: (4-35)其中,4.4 一种改进的最小统计量控制递归平均噪声估计算法4.4.1 改进的噪声估计算法 设x(n)和d(,1)分别表示干净语音信号和加性噪声信号,则带噪语音信号y(n)=x(n)+d(n)。其中,x(n)和d(n)相互独立。对带噪语音信号分帧并变换到频域可以得到Y(k,1)=x(k,Z)+D(k,Z),k为频带序号,l为帧序号。通过对带噪语音信号功率谱进行一阶递归平滑得到噪声功谱8: (4-36)其中,既(七,f)为受语音存在概率p(k,z)控制的自适应平滑因子。设为语音无声段的固定平滑因子,则可以表示为: (4-37)假定X(k,l)和D(k,l)均满足复高斯分布,则在噪声功率谱给定条件下语音存在概率p(k,l)由下式给出: (4-38)设为后验信噪比, 为先验信噪比,可以采用判决反馈的方法获得,为语音存在时干净语音信号功率谱,为先验语音不存在概率,受语音最小统计量控制,通过两次平滑和最小统计量跟踪实现。首先,在时频域对带噪语音进行平滑。设为时域平滑参数,6(f)为长度为2w+1的归一化窗,取为W=1的汉宁窗,则平滑过程为: (4-39) (4-40)对平滑输出信号s(k,l)进行最小值搜索。设和为固定的平滑参数,最小值跟踪过程为:if else (4-41)定义和为: (4-42)其中 166为噪声补偿因子。设 ,和为判决门限,根据和进行语音存在概率硬判决: (4-43)根据语音存在概率硬判决去除强语音成分后,进行第二次平滑和最小值跟踪。平滑过程为: (4-44) (4-45)采用同样的最小值跟踪过程,对搜索最小值。定义和: (4-46)设,则先验语音不存在概率为: (4-47)4.4.2 实验仿真本实验的两种带噪语音文件,一种是信噪比为-5dB的平稳带噪语音,噪声为高斯白噪声;另一种是前3.2s为10dB的高斯白噪声,后3.4s为-5dB的F16战斗机噪声的非平稳语音。(图中横坐标表示时间,纵坐标表示功率谱,实线表示真实的噪声谱,虚线表示估计的噪声谱)其仿真结果如下图所示:图4-5 真实噪声谱和IMCRA算法估计的噪声谱(-5dB高斯白噪声)图4-6 真实噪声谱和IMCRA算法估计的噪声谱 (信噪比从10dB突变为-5dB)从图中可以看出本文研究的噪声估计算法具有较好的噪声跟踪能力,在语音存在的条件下能保持对噪声的更新。其噪声跟踪能力与IMCRA算法相当。该算法利用了改进的最小统计量控制递归平均算法对最小统计量的鲁棒性,采用了一种简单有效的最小量跟踪算法,提高了对非平稳噪声的跟踪能力,降低了算法复杂度。该算法可以广泛地应用于语音增强系统,能够有效地提高信噪比,抑制音乐噪声。5 总结与展望5.1 论文的主要工作语音增强是语音信号处理领域中一个重要的基本问题。它广泛地应用于语音通信的背景噪声抑制、语音压缩编码和语音识别的前端预处理中。语音增强的研究也越来越受到人们的重视,也取得了一定的成果,而语音增强特别是谱减法语音增强中,一个难点就是噪声估计,准确地从背景噪声中估计出噪声功率谱,删除不含语音成分的背景噪声,从而可以大大提高增强效果。因此,噪声估计是语音增强系统中非常重要的一个部分,估计的好坏会直接影响最终的增强效果。本文从语音活动检测和不需要进行语音检测的连续自适应噪声估计算法入手,VAD方法虽然有易于实现,但是对非平稳噪声的跟踪力度不够而直接导致增强算法无法及时更新噪声特性,同时在经典算法的基础上,研究了一种快速有效的噪声估计方法。本文主要研究了: Martin 提出的基于最小值跟踪和最小统计的噪声估计算法,Cohen 等提出的最小值递归平均算法,并对这些算法进行了仿真实验和分析。最后在这些算法的基础上,研究了一种改进的最小统计量控制递归平均算法,该算法利用了改进的最小统计量控制递归平均算法对最小统计量的鲁棒性,采用了一种简单有效的最小量跟踪算法,提高了对非平稳噪声的跟踪能力,并在IMCRA算法的基础上,利用其对语音最小统计量估计算法,在保证噪声估计准确性的同时,减小了算法的复杂度。该算法可以广泛地应用于语音增强系统,能够有效地提高信噪比,并且能够有效地抑制音乐噪声。通过实验仿真,结果表明此方法能够获得更加准确的噪声估计,在噪声突变时,与其他方法相比大大缩短了时间延迟。5.2 目前存在的问题及今后的发展方向由于本人所学有限,本论文提出的改进和想法是一些很基础的,还不全面,需要进一步的探索和完善。下一步的研究工作,可以从以下几个方面来展开:(1)更深入的研究噪声的性质,噪声估计算法不可能对所有的噪声类型都能适合,下一步可以研究并分析噪声的各个特性,针对不同的噪声类型,提出一种适合此类噪声的噪声估计算法。(2)进一步完善噪声功率谱的估计算法,对于许多新型的算法加以研究,进一步将噪声估计方法和其他方法相结合,争取得到更加精确的噪声估计。(3)噪声估计算法的研究是为了应用于语音增强,因此,对语音增强的研究也需要进一步关注,同时,几乎所有的语音增强技术都是采用的带噪语音的相位信息,而低信噪比情况下,相位信息对
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 《管理心理学》大学考试题及答案
- 加油站污染事件应急演练计划
- 医疗设备项目日常运营维护备品备件保障计划
- 电商品牌客户关系管理创新创业项目商业计划书
- 智能线束布线系统创新创业项目商业计划书
- 历年会考试题及答案
- 智能睡眠监测枕头创新创业项目商业计划书
- 智能医疗影像处理软件创新创业项目商业计划书
- 营销数据资产交易创新创业项目商业计划书
- 读吴正宪心得体会与职业教育融合
- GB/T 45972-2025装配式建筑用混凝土板材生产成套装备技术要求
- 变频及伺服应用技术(郭艳萍 钟立)全套教案课件
- 2024新译林版英语八年级上单词汉译英默写表(开学版)
- 美的集团工作流程体系
- 文化创意产品设计及案例PPT完整全套教学课件
- 10000中国普通人名大全
- 哈利波特和死亡圣器PPT培训课件
- 以“五位一体”模式提升理论学习中心组学习质量和成效的实践与探究
- 牛津译林版英语七年级上册Unit1Comic strip and Welcome to the unit随堂练习(含答案)
- 国防战备公路工程可行性研究报告
- 《假期有收获》PPT课件
评论
0/150
提交评论