改进NLMS算法

2024-09-18|版权声明|我要投稿

改进NLMS算法(精选5篇)

改进NLMS算法 篇1

0 引言

相比于传统的PSTN, Vo IP (Voice over Internet Protocol) 有很大的优势, 它的网络利用率高, 通信成本低, 而且能广泛地采用Internet和全球IP互连的环境, 提供比传统业务更多、更好的服务。

随着Vo IP的迅速发展, 如何提高通信质量是研究的重点难题[1]。而在实际通信中, 回声会严重影响通信质量, 因此如何消除回声是提高通话质量的关键技术之一。为了消除回声, 一般采用的自适应滤波算法如:最小均方误差算法 (Least Mean Square, LMS) 、归一化LMS算法 (Normalized LMS, NLMS) 等, 但是这些算法都存在一些收敛速度、均方误差的问题。基于算法的收敛性能和稳态性能, 本文提出了一种改进的算法, 使其在快速收敛的情况下, 具有较好的稳态性能。

1 回声消除技术介绍

现代进行回声消除的技术主要是基于自适应滤波器, 该滤波器能够根据参考信号, 预测出接收信号中的回声, 并将回声从信号中消除和抑制, 从而消除回声。

1.1 自适应滤波器结构

自适应滤波器的结构如图1所示, 其是由自适应算法来不断调整滤波器系数实现的。自适应滤波器由两部分组成:一个是滤波器结构, 另一个是调整滤波器系数的自适应算法。自适应滤波器的结构[2,3]可以采用FIR结构或者IIR结构, 但是由于IIR滤波器存在一些稳定性的问题, 所以一般选择FIR滤波器作为自适应滤波器的结构。

图1中:x (k) 是输入信号;y (k) 是输出信号;d (k) 是参考信号或者期望信号;e (k) 为d (k) 和y (k) 之间的误差信号。误差信号e (k) 控制自适应滤波器的滤波器系数, 根据自适应滤波算法以及e (k) 的值自动调整自适应滤波器的滤波器系数。

1.2 自适应滤波算法

1.2.1 最小均方自适应算法

最小均方自适应算法 (LMS算法) [4]是线性自适应滤波器算法。其权值的递推公式为:

式中:w (n) 为第n步迭代的权向量;μ是步长因子;e (n) 是误差信号;x (n) 是输入信号。这里, 0<μ<1。在收敛范围内通过步长选择来控制收敛速度和稳态误差。

1.2.2 归一化LMS算法

归一化LMS (NLMS) 算法[5,6,7]是基于LMS算法的一种改进, 两种算法的不同在于LMS算法中的固定步长因子μ是一个常数, 而NLMS算法中采用了可变的步长因子μ, 其目的是为了加快算法的收敛速度。在NLMS算法中, 根据式 (2) 来定义可变步长因子μ:

式中:r (k) =xT (k) x (k) 是代表滤波器缓冲区中输入数据矢量x (k) 的内积;μ是系数修正的迭代步长常量;δ为较小的正数, 是为了避免r (k) 很小的时候导致μ过大而引起稳定性的下降。

2 基于NLMS的改进算法

2.1 算法分析

在NLMS算法中, 步长因子μ对收敛有极大的影响。步长决定算法的稳定性、收敛速度和自适应过程的平稳性。在收敛初始阶段或者未知系统参数发生变化时, 步长因子的值应该较大, 这样使得算法会有较快收敛速度或对于时变系统来说会有较快的跟踪速度。然后随着收敛的加深, 步长因子应该逐渐减小以此来减小稳态误差。

在NLMS算法中步长因子:

对μ (k) 进行改进:

式中:

在语音处理中, 一段语音的输入序列都会很长, 甚至长度未知, 而且其非平稳性。N0可根据LMS算法在实际问题中收敛到稳态解时的迭代次数确定, 而Nd则可根据输入数据的长度确定。

这样开始收敛时, f (k) 为一较小的常数;当k≥N时, 随着收敛级数k的逐渐增大, f (k) 逐渐变大, 步长因子μ逐渐变小。

2.2 仿真分析

图2, 图3为LMS算法的仿真, 采用的是32阶FIR滤波器。在自适应滤波器结构中采取的是LMS算法, 其中LMS的步长因子μ=0.008。

在图2中, 横坐标为迭代次数, 纵坐标为信号幅值。desired是希望输出的信号, output是回声消除后的信号, error是desired信号与output信号之间的误差。

从图2可以看出期望输出的信号与回声消除后的信号还是有比较大的差异, 特别是在迭代刚开始的时候两个信号之间的误差比较明显。由图3可以看出, 在100次迭代以前, 误差比较大, 随着迭代次数增大, 误差逐渐减小, 直到迭代次数在150次以后, 误差在一个较小的幅度内波动, 慢慢趋于平稳。

图4、图5为NLMS算法的仿真, 同样也是利用32阶的FIR滤波器。在自适应滤波器中使用的是NLMS算法, 其中NLMS算法的步长因子μ=1。

由图4可以看出期望信号与回声消除后的信号之间的差异不是特别明显, 随着迭代次数越来越大, 两个信号非常近似。

由图5可以看到迭代次数为80以前, 信号之间的误差比较明显, 之后误差急剧下降, 迭代次数到达250以后, 误差基本上就非常小。

图6、图7为改进的NLMS算法的仿真, 为了便于比较, 和LMS、NILMS算法一致, 定义了32阶的FIR滤波器。在自适应滤波器中使用的是改进的NLMS算法, 其中改进的NLMS算法的步长因子μ=1。

由图6可以明显看出期望信号与回声消除后的信号之间基本上是重合的, 在迭代初期两个信号之间有比较小的差异, 随着迭代次数越来越大, 两个信号基本一致。

由图7可以看到迭代次数为50以前, 信号之间有比较大的误差, 之后迭代次数增大, 误差也逐渐下降, 迭代次数到达100以后, 误差就基本上稳定在一个比较小的范围。

图8为LMS、NLMS、改进的NLMS三种算法期望信号与回声消除后信号均方误差的比较, 其中红色的线代表的是LMS算法, 绿色的线代表的是NLMS算法, 黑色的线代表的是改进的NLMS算法。

由图8可以很明显地看出, 在刚开始收敛时, LMS算法和NLMS算法的均方误差比较大, 而改进的NLMS算法的误差相比而言小一点。当收敛级数到50的时候, 改进的NLMS算法基本上就趋于稳定, 而LMS还有NLMS算法依旧还是有一定的误差。

改进的NLMS算法既有较小的误差, 收敛速度也比较快。综合看来, 改进的NLMS算法有比较好快速收敛性能和稳定性能。

采用改进的NLMS算法对实际语音信号[8]进行回声消除。图9中, 第一幅图是近端信号, 也就是实际希望得出的信号, 第二幅图是近端信号中混入了远端回声信号后得到的麦克风信号, 第三幅图是利用改进的算法进行回声消除后得到的信号。

从图9中可以看出, 消除回声后的信号与近端信号基本一致, 回声消除效果比较理想。

在实际运用的时候, 步长因子μ的选择非常重要, 因为它会对滤波器收敛性能有很大的影响, 它控制了算法的收敛速度。本文试验中采用的步长因子μ是经过多次测试得到的。

3 结语

本文主要是研究自适应信号处理技术在语音通信的回声消除方面的应用。

传统的LMS算法因为它简单的结构、稳定的性能以及容易在硬件上实现等许多优点而被广泛地用在自适应控制、雷达、系统辨识及信号处理等各个领域。但是LMS自适应算法的收敛速度比较慢。而NLMS算法虽然收敛速度有所提高, 但是它具有一个致命的弱点, 就是当输入信号是像语音等相关性很强的信号[9]时, 算法的收敛速度会显著降低, 从而影响回声消除的质量。本文主要是基于NLMS算法进行改进, 通过理论的分析和Matlab[10]仿真研究表明, 本文提出的算法能加快算法的收敛速度并且有较好的稳定性, 为回声消除的实际运用提供了比较好的解决方案, 在回声系统中能够较好地满足IP电话对于语音的要求, 从而提高了通话的质量。

摘要:为了提高VoIP的通信质量, 减少回声干扰, 对LMS算法、NLMS算法进行阐述, 基于NLMS提出了一种运算量小并且提高收敛性能的改进的自适应滤波算法。通过在Matlab下的仿真研究和对误差曲线的分析, 证明了该改进算法的收敛速度快, 均方误差小。用改进的算法对语音回声信号进行消除, 仿真得到消除回声后的信号效果明显, 为IP电话中回声消除的自适应滤波问题提供了一个较好的算法。

关键词:回声消除,自适应滤波算法,量化误差算法,可变步长算法

参考文献

[1]王琦, 马跃, 喻炜.VoIP中为保证语音质量所采用的关键技术[J].中国数据通信, 2002 (2) :25-29.

[2]尹浩琼.通信系统中回声消除的研究[D].北京:北京邮电大学, 2006.

[3]西蒙.自适应滤波器原理[M].北京:电子工业出版社, 2006.

[4]龚耀寰.自适应滤波[M].2版.北京:电子工业出版社, 2003.

[5]郑宝玉.自适应滤波器原理[M].4版.北京:电子工业出版社, 2003.

[6]EWEDA E. Convergence analysis of adaptive filtering algorithm with singular data covariance matrix [J]. IEEE Transactions on Signal Processing, 2001, 49 (2) :334-343.

[7]LIU Jian-feng. A novel adaption scheme in the NLMS algorithm for echo cancellation [J]. IEEE Signal Processing Letters, 2001, 8 (1) :20-22.

[8]魏臻.归一化LMS算法在IP电话回声消除的研究[J].微计算机信息, 2010, 28 (1) :27-28.

[9]皇甫堪, 陈建文, 楼生强.现代数字信号处理[M].北京:电子工业出版社, 2003.

[10]陈怀琛, 吴大正, 高西全.Matlab及在电子信息课程中的应用[M].3版.北京:电子工业出版社, 2006.

改进NLMS算法 篇2

给出不定二次规划的.一个改进算法,通过仿射尺度技术,把二次规划问题转化为球约束的二次规划问题,进而转化为球约束的凸二次规划问题来求解.讨论了该算法的收敛性.

作 者:杨春艳 雍龙泉 YANG Chun-Yan YONG Long-Quan 作者单位:杨春艳,YANG Chun-Yan(银川大学,数学系,银川,750105)

雍龙泉,YONG Long-Quan(陕西理工学院,数学系,陕西,汉中,723001)

浅谈改进的LBP算法 篇3

关键词:人脸识别 局部二值模式 特征提取 最大散度差鉴别分析

3.2改进后的算法

LBP作为图像纹理表示的一种极其有效的方法,不仅能够描述出图像中的一些微小特征,包括亮点、暗点、稳定区域以及各方向边缘等,而且还能够反映出这些特征的分布情况。这些优点使得LBP特征具有极强的分类能力。但是在提取中心像素,对噪声比较敏感,特别是在近统一模式图像区域。既然图像的绝大多数区域是统一模式区域,那么在这些近统一模式区域中提高LBP算子的鲁棒性进而提高整个特征空间的分类性能是非常有意义的。为了减少光照、噪声等因素造成的局部像素灰度值的突变,在应用LBP算子前先对该像素邻域像素灰度值进行排序,使用9个像素灰度值的中间值取代中心像素的灰度值,具体计算过程如图2所示。

5.结论:为了减少光照、噪声等非理想因素对人脸识别性能的影响,提出了一种基于邻域像素灰度值中间值的局部二值模式纹理特征提取算法。在已有局部二值模式(LBP)纹理分析算法的基础上用中心像素邻域像素灰度的中间值代替该像素点的灰度值,从而使得提取到的特征对光照变化和噪声等影响更加弱化。在著名的AR和FERET人脸数据库上的实验结果表明, 该算法的识别率比传统的LBP算法有一定程度的提高。

参考文献:

[1] R.M.Makwana, Illumination Invariant Face Recognition: A Survey of Passive Methods, Procedia Computer Science, 2010, 2:101-110.

[2] X.Y.Tan, S.C.Chen, Face recognition from a single image per person: A survey, Pattern Recognition, 2006,39:1725-1745.

[3] 李晓东,费树岷.一种改进的模块2DPCA人脸识别方法[J].系统仿真学报,2009, 21(15):4672-4675.

[4] T.Ojala, M.Pietikainen, T.Maenpaa.Multiresolution Gray-scale and Rotation Invariant Texture Classification with Local Binary Patterns[J].IEEE Transactions on Pattern Analysis and Machine Intelligence, 2002, 24(7):971-987.

[5] 赵建民,朱信忠,江小辉.基于改进型LBP特征的人脸识别方法研究[J].计算机科学,2009,36(8): 276-280.

[6] J.Yang, D.Zhang, A.Frangi, J.Y.Yang.Two-dimensional PCA: a new approach to appearance- based face representation and recognition[J].IEEE Trans.Pattern Anal.Mach.Intell., 2004, 26(1):131-137.

[7] D.Zhou , X,Yang, N.S.Peng, Y.Z.Wang, Improved-LDA based face recognition using both facial global and local information, Pattern Recognition Letters, 2006,27: 536–543.

[8] X.D.Li, S.M.Fei, T.Zhang, Median MSD based method for face recognition, Neurocomputing, 2009, 72(16-18): 3930-3934.

[9] Martinez A R, Benavente R.The AR face database [R].Computer Vision Center (CVC), Barcelona, Spain, Technical Report 24, 1998.

改进NLMS算法 篇4

直放站属于同频放大设备,是指在无线传输过程中起到信号增强的一种无线电中转设备。它可广泛用于难于覆盖的盲区和弱区,直放站虽然在一定程度上解决覆盖问题,但由于发射天线和接收天线之间的物理位置关系加上地面折射和反射,接收端会收到很强的多径回波干扰,使期望信号淹没在回波中。本文设计了直放站数字回波抵消系统,用数字信号处理技术解决单靠天线隔离所不能解决的问题。

1 系统模型及分析

1.1 直放站系统概述

1.1.1 直放站系统总体介绍

如图1所示,整个直放站系统[1]的运行过程是这样的:从基站发射过来的有用信号同回波信号同时都会被接收天线所接收,此时的干扰信号比较大,先把全部信号送入一个中频滤波器,滤除干扰信号(如高斯白噪声之类的)。接着信号进入到A/D转换的电路,A/D转化的作用是将模拟信号转化成数字信号。然后信号进入数字上下变频电路,该电路目的是将从天线上接收到的已调信号变换成中频,以降低后续数字信号处理的速率。信号进行下变频后,就进入回波抵消模块。回波抵消后,把数字信号进行上变频,变成载波信号,最后通过D/A转换,将数字信号再转换回模拟信号,就可以把比较纯净的有用信号发射给用户了。

1.1.2 回波抵消系统的作用

回波抵消是直放站的系统中核心的部分。因为要解决回波干扰的问题,单靠物理上的隔离是远远不够的。还必须采用数字信号处理的方法。

1.2 改进的NLMS算法

NLMS算法用可变的步长因子代替LMS算法中的常量因子,加快了算法的收敛速度,其可变步长因子

μ(n)=μδ+xΤ(n)x(n)(1)

μ是系数修正迭代步长常量,δ为一较小正数,用于避免xT(n)x(n)很小的情况下,μ(n)过大引起稳定性下降。NLMS算法能有效地减少基本LMS算法在收敛过程中对梯度噪声的放大作用,收敛速度也比基本LMS算法快。

改进的NLMS算法:为了进一步提高性能,已提出许多关于步长的研究[2,3],这里研究应用一种改进步长更新方法。这种改进NLMS算法,计算量增加很少,但能显著提高收敛速度,并能达到更小的最小均方误差,这种算法的步长因子更新公式如下

μ(n)=1ρ/λn+xΤ(n)x(n)=1ρ/|λn|+r(n)(2)

式(2)中ρ>0为修正系数,其作用相当于NLMS中的作用。

λn=i=0Μ-1λ(i)e(n-i)=i=0Μ-1exp (-i)e(n-i) (3)

λn为误差系数,它通过遗忘因子λ(i)对过去M个误差e(n),e(n-1),…,e(n-M+1)作非线性加权,越是过去的信号对当前误差系数λn的影响越小。|λn|代表对前M次误差统计加权后对期望值的偏离程度。|λn|变小时,μ(n)就跟着变小,以便趋近并缓慢跟踪最优值;反之μ(n)就增大,从而快速趋近最优值。

1.3 系统模型设计与分析

图2是设计的系统,整个系统的关键在于估计出实际的回波信道,计算出跟实际回波信号相近的信号,就可以对回波信号进行消除。所以,估计出来的回波信道(也就是相当于滤波器的权系数)与真实信道的相近程度就决定了抵消系统的效果。

根据系统详细的理论推导,该系统进行回波抵消处理的时候,实际只需要完成以下几步:

1.3.1 估计信号的计算

y(n)=wT(n)t(n) (4)

式(4)中wT(n)是估计出的信道的权系数,t(n)则是PN序列,PN序列的选取也是对系统性能起着关键的作用,PN与原信号越不相关,效果越好;

1.3.2 误差的计算

e(n)=d(n)-y(n) (5)

式(5)中,x(n)是直放站接收到的信号的序列,包括了基站发过来的有用信号和噪声(回波),还有直流分量。

1.3.3滤波器的权系数更新方程

w(n+1)=w(n)+2μ(n)e(n)x(n) (6)

可以说,这是最重要的步骤。因为回波系统的实现的关键就是信道估计的准确与否。第n+1次的权系数是由第n次的权系数的基础上修正而来,所估计的信道正是在不断地修正逼近真实信道。这里采用了最陡下降法来求得权系数w(n+1),同时也要注意到μ(n)这个值,采用改进的步长因子算法对其修正。

1.4 关于CAZAC序列

CACAZ序列是PN序列的一种[4,5]。所谓CAZAC序列,即常振幅零自相关序列,它是具备了恒幅,零自相关性的优良特性的非二进制复数序列。目前被广泛关注的Zadoff-Chu序列和GCL(Generalized Chirp Like)序列都属于CAZAC序列的范畴。

2 FPGA的设计与实现

2.1 系统各模块的设计

2.1.1 滤波器部分

这是最核心的部分,也是设计的难点。它涉及到乘法器,移位寄存器,加法器等资源,滤波其实就是一个卷积的过程,而卷积也就是乘法和加法的运算,难点在于要达到一定的处理速度。为了节省硬件资源,采用复用乘法器的方法,虽然增加了计算时间,但节省了资源,对于30阶的运算,只用了6个乘法器,如图3所示。

在这里,复用的功能是通过移位寄存器来实现的,如图4所示。

2.1.2 误差计算模块

该模块的设计比较简单,只需要一个减法器,把接收信号减去滤波信号即可。

2.1.3 RAM存储模块

上面提到权系数的更新是需要上一次的旧的权系数参与,这样就需要建立一个模块来保存旧的权系数。采用边写入边擦除的方式。

2.1.4 PN序列的生成模块

由于CAZAC序列涉及了大量的浮点运算,因此采用的是先利用C语言生成,再固化到FPGA的ROM上面,运算时再提取出来运算。

2.1.5 延时模块

由于各信号从各个模块出来的时间不同,因此需要一个延时模块来将各个模块整合起来。

3 仿真测试

所有模块整合完成后,由于设备条件还不满足,因此先在MATLAB和QUARTUSⅡ两个软件平台上联合进行仿真,测试结果由图5—图8给出。

4 结论

由仿真的结果可以看出,所设计的系统基本上能够估计出回波信道,因为误差信号e(n)已经收敛了。由于该仿真是在MATLAB和硬件平台上的联合仿真,因此表明在硬件平台上已经实现了回波抵消功能。无线直放站的隔离度提高了30 dB以上,该系统的功能已经实现。

参考文献

[1]郝禄国.移动多媒体广播直放站的回声抵消实现技术.中国科技信息,2009;32(4):119—121

[2]高鹰,谢胜利.一种变步长LMS自适应滤波算法及分析.电子学报,2001;29(8):1094—1097

[3]王敏强,胡贵龙,郑宝玉.一种新的可变步长LMS自适应算法.南京邮电学院学报,2003;23(4):12—16

[4]肖海林,聂在平.基于隐训练序列的MIMO信道估计.现代电子技术,2008;22(6):23—26

改进NLMS算法 篇5

随机载荷识别的算法改进与实验验证

文章结合逆虚拟激励法给出了一种条件数加权平均算法,在计算机上模拟了这一算法并与常规方法进行了比较,取得了较好的结果.通过实验验证了这一算法的可行性,证明了条件数加权平均法能在一定程度上克服频响函数在某些频率处的`病态问题;并采用以频响函教条件教大小来选定参与识别的响应测点组合的方法,减少了工作量,取得较好的识别效果.

作 者:廖俊 孔宪仁  作者单位:哈尔滨工业大学,卫星技术研究所,哈尔滨150001 刊 名:航天器环境工程  ISTIC英文刊名:SPACECRAFT ENVIRONMENT ENGINEERING 年,卷(期):2008 25(4) 分类号:V414.3+3 关键词:随机振动   载荷识别   逆虚拟激励法   条件数  

注:本文为网友上传,旨在传播知识,不代表本站观点,与本站立场无关。若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:iwenmi@163.com

上一篇:挑战自我下一篇:职业病家庭

付费复制
期刊天下网10年专业运营,值得您的信赖

限时特价:7.98元/篇

原价:20元
微信支付
已付款请点这里联系客服
欢迎使用微信支付
扫一扫微信支付
微信支付:
支付成功
已获得文章复制权限
确定
常见问题