logo资料库

论文研究-LMS算法的改进NLMS算法来实现语音增强 .pdf

第1页 / 共8页
第2页 / 共8页
第3页 / 共8页
第4页 / 共8页
第5页 / 共8页
第6页 / 共8页
第7页 / 共8页
第8页 / 共8页
资料共8页,全文预览结束
中国科技论文在线 http://www.paper.edu.cn LMS 算法的改进 NLMS 算法来实现语音增强 吴青,吴京京* (中国矿业大学信息与电气工程学院,江苏 徐州 221008) 摘要:为寻求收敛速度快,计算复杂度低,数值稳定性好的自适应滤波算法是我们追求的目 标。并利用较好的自适应滤波算法在噪声对消系统上的应用来实现语音增强。文中主要对自 适应算法和语音增强进行了研究,其内容主要有 1.文中对 LMS 算法和归一化 LMS 算法进行 了比较深入的理论分析和研究,给出性能比较并通过仿真对两者有综合评价。2.文中提出了 一种针对自适应滤波器噪声对消原理,通过仿真发现其达到语音增强的目的。 关键词:噪声对消;自适应滤波;语音增强;LMS 算法;NLMS 算法 中图分类号:TN911.6 NLMS algorithm which is improved by LMS algorithm do achieve speech enhancement (Information and Electrical Engineering Institute ,China University of Mining and Technology,JiangSu XuZhou 221008) Wu Qing, Wu Jingjing Abstract: The search for fast convergence,low computational complexity,good numerical stability of the adaptive filtering algorithm are our goals. And using better adaptive filtering algorithm can used in noise cancellation systems to achieve speech enhancement. This paper studied adaptive algorithms algorithm and voice enhancement ,The main contents are:1.This paper researchs and analysises LMS algorithm and NLMS algorithm in-depth, then gives the performance comparison and comprehensive evaluation of the two through simulation.2.This paper presents a filter for adaptive noise cancellation principle, and found that it achieve the purpose of speech enhancement through the simulation. Keywords:noise cancellation;adaptive filtering;speech enhancement;LMS algorithm;NLMS algorithm 0 引言 自适应滤波算法的研究是现在自适应信号处理中非常重要的研究课题之一。寻求收敛速 度快,计算复杂度低,数值稳定性好的自适应滤波算法是研究人员不断努力追求的目标[1]。 语音增强技术是语音信号处理的重要分支,也是语音编码、语音识别、语音合成等技术 的重要预处理环节。在众多语音增强算法中,自适应噪声对消技术是一个重要的分支,它利 用自适应滤波器对信号传输通道的学习和跟踪能力,用一个相关噪声估计带噪语音信号中的 噪声分量,再从带噪语音信号中将估计的噪声分量减去达到增强原始纯净语音信号的目的。 1 LMS 与 NLMS 算法比较 1.1 LMS 自适应滤波算法的基本原理 最小均方(LMS)自适应算法是一种以期望响应和滤波输出信号之间误差的均方值最小为 基准的,依据输入信号在迭代过程中的估计梯度矢量,并更新权系数的迭代算法。LMS 算法 中滤波器的输出信号 y(n)是: 作者简介:吴青(1988-),男,无线传感器与嵌入式. E-mail: scofield_wq@yahoo.cn - 1 -
中国科技论文在线 http://www.paper.edu.cn y n ( ) = w n x n ( ) ( ) T = N 1 − ∑ i = 0 w n x n i − i ( ) ( ) (1.1) n表示时间指针,T是转置矩阵, N代表滤波器次数。式(1.1)就是有限脉冲响应滤波 器的形式,是 ( ) Tw n x(n)两个矩阵卷积。 − = d n ( ) (1.2) 若这种自适应算法引用误差信号: y n e n ( ) ( ) 误差序列可写为: e n y n ( ) ( ) 其中 d(n)是期望信号,y(n)是滤波器的输出。使用输入向量 x(n)和 e(n)来更新自适应 d n w n x n ( ) ( ) ( ) (1.3) d n ( ) = − = − T 滤波器的最小化标准的相关系数。 显然,自适应滤波器原理是用误差序列 e(n)按照某种算法对其系数{ iw n }进行调节的, ( ) 最终使自适应滤波的目标函数最小化,以达到最佳滤波状态的目的。 2[ ( )] (1.4) 根据 LMS 算法,这里把最小均方误差(MSE)作为标准。 e E e n = 其中 E[]表示期望。公式(1.4)就可以表示为: e E e n ( )] 2[ = R E x n x n = 是输入信号的自相关矩阵。 + [ ( ) w n Rw n T w n P ( ) T ( ) 2 ( ) T 其中, ( )] − = (1.5) P E d n x n [ ( ) ( )] 指出了期望信号 d(n)和输入信号向量 x(n)的互相关矢量。 而最佳滤波系数为 0w R P−= 1 这个解称为维纳解,即最佳滤波系数值。 自适应过程是为了获得最佳滤波或准最优工作状态。这个方法可以避免复杂的计算。在 LMS 算法中,向量 w(n+1)可以通过改变对最小均方误差性能的负梯度比例来增强。 w(n)为自适应滤波器在 n时刻的滤波系数或称为权矢量。按照最陡下降法来调节滤波系 数,则在 n+1时刻的滤波系数或权矢量 w(n+l)可以用下列简单递归关系计算: w n 1) + = w n ( u 是自适应步长,用来控制稳定性和收敛率的。这种瞬时估计是无偏的,因为它的期望 (1.6) e n x n ( ) ( ) ( ) 2 μ + 值 E[]等于最陡下降法的梯度矢量。 以初始向量 w(0)来开始,向量 w(n)集中在最佳解决方法 w(0)假如选择 u: 0 μ < < 1 λ max (1.7) maxλ 为矩阵 R的最大特征值,受限制于: λ max < Tr R [ ] = N 1 − =∑ (0) r i o = Nr (0) (1.8) Tr[.]为指示矩阵的轨迹,r(0)=E[ 2( ) 以梯度预测为基础的自适应导致噪声矩阵的权向量,因此会有性能损失。这个自适应处 x n ]是平均输入功率。 理的噪声导致稳态权向量随意的改变为最适宜的权向量。稳态权向量的精度通过超额的最小 均方误差来测量。这个 LMS 算法超过 EMS的是: Excess EMS=uTr[R] minε (1.9) - 2 -
中国科技论文在线 http://www.paper.edu.cn 其中, minε 是 EMS在稳态的最小值 公式(1.9)产生 LMS 算法基本协定:为了在稳态获得高精度(低超额 MSE),需要 u的最小 值,但是也会降低收敛率。 由此可见,自适应 LMS 算法简单,是一种梯度最快速下降方法,显著的特点是它的简单 性和易于实现性,这种算法不需要计算相应的相关函数,也不要求矩阵逆变换。因而得到了 广泛的应用。但是,由于 LMS 算法采用梯度矢量的瞬时估计,它有大的方差,以致不能获得 最优滤波性能。所以在本文第三章提出了改进的 LMS 算法的归一化 LMS 算法(NLMS 算法) [2]。 1.2 归一化 LMS 算法原理与性能分析 NLMS 算法是改善收敛速度最重要的技术,可根据步长的变化使收敛速度有所改变,而 若想提升 LMS 算法的收敛速度,那么可用变步长方法来缩短其自适应收敛过程,由于 NLMS 算法相对简单,容易实现,因此应用广泛[3]。变步长 nμ 的更新公式可写成: w n 1) ( + = w n 式中, ( ) Δ w n ( ) = n e n x n ( ) ( ) ( ) + μ n e n x n ( ) ( ) ( ) μ = ( ) w n + Δ w n ( ) (1.10) 表示滤波权矢量迭代更新的调整量。为了达到快速收敛的 目的,必须合适的选择变步长 μ 的值,瞬时平方误差可以写成: T T T T Δ − Δ (1.11) 2 = + Δ ( ) ( ) ( ) + Δ e n 2 ( ) 2 ( ) ( ) 2 ( ) d n w n x n ( ) ( ) w n x n x n w n ( ) ( ) x n x n w n w n ( ) e n ( ) 2 在此情况下,瞬时平方误差的变化量 2e ( )nΔ e n ( ) 2 Δ = w n 把 ( ) Δ e n ( ) 2 Δ 为了增加收敛速度,合适地选取μ使平方误差最小化,故将式(1.13)对变系数μ(n)求 n e n x n e n 2 ( ) ( ) ( ) ( ) 2 − μ n x n e n ( )* ( )* ( ) μ 的关系式代入式(2.12)中,得到: n e n x n x n 2 ( ) ( ) ( ) ( ) T μ (1.12) 定义为: x n x n ( ) ( ) (1.13) n x n x n ( )[ ( ) ( )] 2 e = = − e n ( ) 2 = − 2 μ + + T T 偏导数,并令其等于零,求得: μ = n ( ) 1 x n x n ( ) ( ) T (1.14) e n 这个步长值 nμ( )导致 2( ) Δ 的最小点,相当平方误差 e n 等于零。为了控制失调量,考虑到基于瞬时平方误差的导数不等于均方误差 MSE 求导 2( ) 数值,所以对 LMS 算法的更新公式作如下修正: e n 出现负的值,这对应于 2( ) Δ w( n 1) + = w n ( ) + n e n x n ( ) ( ) ( ) μ x n x n [ ( ) ( )] + γ T (1.15) 式中, μ为控制失调的固定因子, γ参数是避免 ( ) x n x n 过小导致步长值太大而设置 ( ) T 的。通常称式(1.15)为归一化算法的迭代公式。 为了保证自适应滤波器的工作稳定,固定收敛因子μ的选取应满足一定的数值范围内。 首先考虑到下列关系: tr R [ = TE x n x n ( ) ( )] [ e n x n ( ) ( ) x n x n T ( ) ( ) E [ ] ≅ E [ ] (1.16) e n x n [ ( ) ( )] E x n x n T [ ( ) ( )] ] 将归一化 LMS 算法的更新公式与经典 LMS 算法的更新公式相比较,可以得到收敛因子 - 3 -
中国科技论文在线 μ的上下界不等式条件,如下: 0 μ< n ( ) = μ tr R 2 [ ] < 1 tr R [ ] (1.17) 当γ=0 时,由式(1.15)可以写: http://www.paper.edu.cn w n ( 1) + = w n ( ) + μ d n w n x n x n ( ( ) ( ) ( )) ( ) T − Px n P ( ) 2 (1.18) 这种算法是 NLMS 算法的泛化形式,其中随即梯度估计是除以输入信号矢量元素平方之 和。所以步长变化的范围比较大,可由较好的收敛性能。在此情况下,算法的归一化均方误 差(NMSM)可由式(1.18)得到: ζ n ( ) = E [( d n w n x n ( ) ( ) ( ) 2 − Px n P ( ) ) ] 2 (1.19) 最佳滤波器权矢量可由 (nζ )对 w(n)求偏导数,并令其等于零,即由式 E {[ d n ( ) x n w T ( ) − 0 Px n P ( ) ] x n ( ) Px n P ( ) } 0 = 得到最佳滤波权系数: 0w 式中, (1.20) R P−= 1 R E = [ P E [ = x n x n ( ) ( ) T Px n P ( ) 2 d n x n ( ) ( ) Px n P ( ) 2 ] ] (1.21) (1.22) 所以,在相关矩阵和互相关量都含有归一化因子,在稳定状态时,假定自相关矩阵存在 时,归一化 LMS 算法 可逆性。同时,我们由式(1.22)可以看出,当且仅当 的均方误差可等于零。这需要对 d(n)用输入信号矢量线性组合进行精确的建模。 x n w T 0 d n ( ) ( ) = 此时,最佳滤波权矢量 0w 变成适宜的线性系数矢量。 当 1γ= 时,NLMS 算法更新公式可以写成: w n ( 1) + = w n ( ) + μ + e n x n ( ) ( ) x n x n T ( ) ( ) 1 (1.23) 由此可得到 NLMS 算法的特殊形式: w n ( 1) + = w n ( ) + μ d n w n x n x n [ ( ) ( ) ( )] ( ) − ( ) [1 + μ T Px n P ] 2 (1.24) 这也表明等效步长时输入信号的非线性变量。它使变步长由大逐步变小,加速了收敛过 程。当然,NLMS 算法的计算量也叫 LMS 算法有些增加。 2 自适应噪声对消器原理 由图 1 可以看出,自适应噪声对消器包含两个输入端和一个输出端。主通道输入端加入 的是期望信号,其中包含有用语音信号 s(n)和一个不相关的加性噪声信号 g(n);参考通道输 入端加入的是输入信号,即一个与噪声信号 g(n)相关的噪声 x(n)。事实上,x(n)与 g(n)往往是 - 4 -
中国科技论文在线 http://www.paper.edu.cn 由同一组噪声源产生并经过不同传送路径分别到达噪声对消器两个输入通道的噪声信号。x(n) 输入自适应滤波器产生一个近似为 g (n)的噪声估值 y(n),之后,将 y(n)从主通道的原始输入 信号 s(n)+g(n)中减去,则得到整个对消器 n 时刻的系统输出 ˆ( ) s n 也作为自适 应滤波器的误差信号反馈回自适应滤波器调整其自身参数或结构来产生下一次输出。根据自 适应滤波器的特性,经过重复的调整修正权值过程,自适应滤波器的输出 y(n)逐渐逼近噪声 信号 g(n),最终达到消除原始输入信号中噪声分量的效果。显然,若 y(n)逼近 g(n)的程度越 大,最后得到的 ˆ( ) s n 逼近原始语音信号 s (n)的程度也越大,语音增强的效果也越好。通过前 两节可以看出,NLMS 比 LMS 算法要好,所以自适应滤波器采用 NLMS 算法[4]。 s n 。同时, ˆ( ) 信号源 s(n) g(n) 噪声源 x(n) s(n)+g(n) 自适应 滤波 - y(n) + + s(n) 图 1 自适应噪声对消器模型 从以上分析可以知道,自适应滤波器在这里实际上是在模拟主通道和参考通道接受噪声 信号差异的通道特性,而这种通道特性假如如果没有先验信息的话,是没办法从用固定滤波 器来实现的,即使可以实现,一旦通道特性有所改变,固定滤波器也无法做出正确的调整。 因此,与固定滤波器相比较来看,自适应滤波器在信号和噪声特性均未知的情况下使语音增 强有着不可替代的优势。然而,自适应对消技术也有其弊端。当参考通道除接受到噪声 x(n) 外,还混入有用信号分量 s(n)后,则自适应滤波器的输出 y(n)也将含有用信号成分,从而使 噪声对消效果变坏。因此可以在安装布置语音设备的时候事先较为合理的选择好对消器两个 输入通道的绝对位置和相对位置,以尽量避免参考通道位其混入有用信号成分。但是,经过 实际试验证明,即使一些有用信号被混入参考通道输入,经噪声对消器处理之后语音仍然可 以达到较好的降噪效果。所以,总的来说,自适应噪声对消器是一种非常有效且具备实用价 值的语音增强方法,随着自适应信号处理算法的不断完善,必将有着非常广阔的应用前景[4] [6]。 3 LMS 算法与 NLMS 算法、对消噪声系统的仿真 3.1 LMS 算法与 NLMS 算法的仿真 采用 MATLAB 语言进行仿真,加入一段随机信号:inp=randn(N,1),中途会有噪声干扰, 并通过信道和所用 LMS 算法的自适应滤波器。 对输入随机信号和噪声进行滤波,仿真结果如下。 LMS 算法的仿真 3.1.1 - 5 -
中国科技论文在线 http://www.paper.edu.cn 2 1.5 1 0.5 0 -0.5 -1 -1.5 入 输 际 实 1.5 1 0.5 0 -0.5 -1 -1.5 出 输 际 实 -2 0 200 400 600 800 1000 1200 1400 样本 1600 1800 2000 -2 0 200 400 600 800 1000 1200 样本 1400 1600 1800 2000 图 2 LMS 系统输入 图 3 LMS 系统输出 误差曲线 比较实际和估计权矢量 实际权矢量 估计权矢量 0.3 0.25 0.2 0.15 0.1 0.05 0 1 2 3 4 5 6 200 400 600 800 1000 样本 1200 1400 1600 1800 2000 图 4 LMS 误差曲线图 图 5 LMS 实际和估计权矢量 NLMS 算法的仿真 1.5 1 0.5 0 -0.5 -1 -1.5 出 输 际 实 200 400 600 800 1000 样本 1200 1400 1600 1800 2000 -2 0 200 400 600 800 1000 1200 1400 样本 1600 1800 2000 图 6 NLMS 系统输入 图 7 NLMS 系统输出 量 矢 差 误 100 10-1 10-2 10-3 10-4 10-5 0 3.1.2 入 输 际 实 1.5 1 0.5 0 -0.5 -1 -1.5 -2 0 - 6 -
中国科技论文在线 http://www.paper.edu.cn 线 曲 差 误 100 10-1 10-2 10-3 10-4 10-5 0 误差曲线 比较实际和估计权矢量 实际矢量 估计权矢量 0.3 0.25 0.2 0.15 0.1 0.05 0 1 2 3 4 5 6 200 400 600 800 1000 样本 1200 1400 1600 1800 2000 图 8 NLMS 误差曲线图 图 9 NLMS 比较实际和估计权矢量 3.2 LMS 算法与 NLMS 算法性能比较 从图 2 和图 6 中可以看出实际信号的输出在坐标 0 点的上下波动,而系统的输出大部分 在(-0.5,0.5)之间。少部分在其之外波动。 从图 4 和图 8 中可以看出误差曲线随迭代次数 n 的变化而逐渐收敛于 110− ,且随 N 的增 加而越趋明显。也可以看出 NLMS 算法较 LMS 算法有具有更小的变化,所以有更优的性能。 从图 7 和图 9 中可以看出实际权矢量与误差权矢量的关系为估计误差权矢量与实际权矢 量有较大的误差,而估计误差权矢量总是围绕在实际权矢量上下波动。并且随 N 的增加而使 得其相互之间的误差越小。也可以看出 NLMS 算法较 LMS 算法的误差具有更小的变化。 3.3 语音噪声处理与语音增强的分析 采用 MATLAB 语言进行仿真。加入一段名为 test.wav 有用语音信号 s 如图 10 第一幅图所 示,而噪声源产生两路噪声,一路噪声 g(n)与信号 s 一起形成含有噪声的信号 d 如图 10 第三 幅所示;另一路噪声是噪声 g(n)的相关噪声,其通过自适应滤波器后变成噪声估计值 x(n), 在图 10 中也显示出来了。之后,将噪声估计值 x(n)从主通道的含有噪声信号 d 中减去,则得 到整个对消器 n 时刻的系统输出 ˆ( ) s n 也作为自适应滤波器的误差信号反馈回 自适应滤波器调整其自身参数或结构来产生下一次输出。根据自适应滤波器的特性,经过重 复的调整修正权值过程,自适应滤波器的输出 y (n)逐渐逼近第一路噪声 g (n),最终达到消除 含有噪声信号 d 中噪声分量的效果。理论支持可参考图 1,仿真结果如图 10,仿真如下: s n 。同时, ˆ( ) - 7 -
中国科技论文在线 http://www.paper.edu.cn s 1 n d 1 r o r r e 10 0 -10 10 0 -10 20 0 -20 有用信号s 0 200 400 600 800 1000 n 1200 1400 1600 1800 2000 噪声参考输入 0 200 400 600 800 1000 n 1200 1400 1600 1800 2000 含有噪声的信号d 0 200 400 600 800 1000 n 1200 1400 1600 1800 2000 20 0 -20 0 除噪后的信号 200 400 600 800 1000 n 1200 1400 1600 1800 2000 图 10 噪声对消系统的仿真图 4 结论 在误差曲线可以看出 NLMS 算法较 LMS 算法有具有更小的变化,所以有更优的性能。 估计误差权矢量与实际权矢量中途中可以看出 NLMS 算法较 LMS 算法两者误差更小。 由图 5.9 得到,除噪后的信号与有用信号基本一致。所以通过含有用改进的 LMS 算法的 自适应滤波器的噪声对消器已能基本还原出原始信号,从而达到了语音增强的目的。 [参考文献] (References) [1] Simon Haykin. Adaptive Filter Theory[M]. Prentice Hall,1998 [2] 沈福民.自适应信号处理[M].西安电子科技大学出版社,2001 [3] 王秀红. 自适应滤波算法研究与改进[D].中国期刊网优秀硕士学位论文全文数据库,2006 [4] 李伟.几种自适应滤波算法的研究与应用[D].中国期刊网优秀硕士学位论文全文数据库,2006 [5] 樊殊昱. LMS 算法的改进研究及其在语音增强方面的应用和性能评估[D]. 中国期刊网优秀硕士 学位论文全文数据库,2007 [6] 郭华.自适应滤波算法及应用研究[D].中国期刊网优秀硕士学位论文全文数据库,2007 - 8 -
分享到:
收藏