自适应滤波理论是20世纪50年代末开始发展起来的。它是现代信号处理技术的重要组成部分,对复杂信号的处理具有独特的功能。自适应滤波器在信号处理中属于随机信号处理的范畴。对于随机数字信号的滤波处理,通常有维纳(Weiner)滤波器、卡尔曼(Kal-man)滤波器和自适应(Adaptive)滤波器。维纳滤波器的权系数是固定的,适用于平稳随机信号;卡尔曼滤波器的权系数是可变的,适用于非平稳随机信号。但是,只有在对信号和噪声的统计特性先验已知的情况下,这两种滤波器才能获得*滤波。但在实际应用中,常无法确定这些统计特性的先验知识,或统计特性是随时间变化的,因此,在许多情况下,维纳滤波器或卡尔曼滤波器实现不了*滤波,而自适应滤波不要求已知信号和噪声的统计特性,因而可以提供理想的滤波性能。当前,自适应滤波技术已广泛应用于自适应噪声对消、语音编码、自适应网络均衡器、雷达动目标显示、机载雷达杂波抑制、自适应天线旁瓣对消等众多领域。
在一些信号和噪声特性无法预知或它们是随时间变化的情况下,自适应滤波器通过自适应滤波算法调整滤波器系数,使得滤波器的特性随信号和噪声的变化而变化,以达到*滤波的效果。这里在对自适应滤波算法研究的基础上,给出了不同信噪比情况下,LMS算法的仿真实现及基于DSP的工程实现,并对两种实现方法的结果进行了验证、分析比较。
1 自适应滤波理论
所谓自适应滤波,就是利用前一时刻已获得的滤波器参数等结果,自动调节现时刻的滤波器参数,以适应信号和噪声未知或随时间变化的统计特性,从而实现*滤波。自适应滤波器由两个部分组成:一是滤波器的结构;二是调节滤波器系数的自适应算法。自适应滤波器的特点是自动调节自身的冲激响应,达到*滤波,此算法适用于平稳和非平稳随机信号,并且不要求知道信号和噪声的统计特性。
1.1 自适应滤波器结构
自适应滤波器主要有无限冲激响应(IIR)和有限冲激响应(FIR)两种类型。滤波器结构的选择对算法的处理起着重要的影响;IIR型结构滤波器的传输函数既有零点又有极点,它可以用不高的阶数实现具有陡峭通带特性,缺点是稳定性不好,且相位特性难于控制。FIR滤波器是全零点滤波器,它是稳定的,且能实现线性的相位特性,因此,自适应滤波器的结构通常采用F1R型滤波器的横向结构,结构如图1所示。
式中:n为时间序列;N为滤波器阶数;x(n)=[x(n),x(n-1),…,x(n-N+1)]T为输入矢量;W(n)=[ω0(n),ω1(n),…,ωN-1(n)]T为权系数矢量。
1.2 LMS自适应滤波算法
LMS自适应滤波算法是根据最小均方误差准则进行设计的,LMS算法的目的是通过调整系数,使输出误差序列的均方值最小化,并且根据这个数据来修改权系数。误差序列的均方值ε表示为:
式中:d(n)为理想信号;e(n)为输出误差序列。将式(1)中的y(n)代人式(2)中有:
式中:R=E[X(n)XT(n)]为N×N自相关矩阵,表示输入信号采样值间的相关性矩阵。P=E[d(n)X(n)]为N×1互相关矩阵,表示理想信号d(n)与输入信号矢量的相关性。
在均方误差最小时,*权系数应满足如下方程:
即:
这是一个线性方程组,如果R矩阵为满秩矩阵,则有R-1存在,可得到权系数的*值满足:
由式(6)可以知道,求出R和P就可以得到W*。由前几式可知,R是X(n)的自相关矩阵,P是d(n)与 X(n)的互相关矢量。
LMS算法是以最陡下降法为原则的迭代算法,即W(n+1)矢量是W(n)矢量按均方误差性能平面的复斜率大小调节响应一个增量,即:
式中:u表示自适应步长;(n)为n次迭代的梯度,表示为:
由式(7)产生了求解*权系数W*方法的两种方法,一种是最陡梯度法,其基本思路为:设定初始权系数W(0),用式(7)迭代公式计算,迭代直到W(n+1)与 W(n)误差小于规定范围。其中(n)的E[]计算可用下面的估计值表达式来计算:
式中K取值应足够大。如果用瞬时-2e(n)X(n)来代替上面对-2E[e(n)X(n)]的估计运算,就产生另一种算法:随机梯度法,即Widrow-Hoff的LMS算法。迭代公式表示为: