传统IIR和FIR滤波器在处理输入信号的过程中滤波器参数固定,当环境发生变化时,滤波器无法实现原先设定的目标。自适应滤波器根据当前自身的状态和环境调整滤波器权系数。
1 自适应滤波器理论
其中,x(n)是输入信号,y(n)是输出信号,d (n)为期望信号或参考信号,e(n) = d (n) - y(n)
为误差信号。根据自适应算法和误差信号e(n)调整滤波系数。
自适应滤波器类型。可以分为两大类:非线性自适应滤波器、线性自适应滤波器。非线性自适应滤波器包括基于神经网络的自适应滤波器及Volterra滤波器。非线性自适应滤波器信号处理能力更强,但计算复杂度较高。所以实践中,线性自适应滤波器使用较多。
1.1自适应滤波器结构。
主要分为两类FIR滤波器、IIR滤波器。
(1) FIR滤波器时非递归系统,即当前输出样本仅是过去和现在输入样本的函数,其系统冲激响应h(n)是一个有限长序列。具有很好的线性相位,无相位失真,稳定性较好。
(2) IIR滤波器时递归系统,即当前输出样本是过去输出和过去输入样本的函数,其系统冲激h(n)是一个无限长序列。IIR系统的相频特性是非线性的,稳定性不能保证。好处是实现阶数较低,计算量较少。
1.2 自适应滤波器算法。
自适应滤波器算法按照不同的优化准则,分为两种基本算法:最小均值误差(LMS)算法、递推最小二乘(RLS)算法。
1.2.1 LMS算法
LMS算法使误差的均方值E[e2(n)]最小。
自适应滤波器最常用的结构为横向结构(FIR结构),滤波器的输出信号y(n)为
其中,N为滤波器阶数,n为时间指针。
误差序列:
e(n) = d (n) - y(n) = d (n) – wT(n) * x(n)
权重系数更新的递推关系:
w(n+1) = w(n) + 2μe(n)x(n) x(n)
其中μ为自适应步长,用来控制稳定性与收敛率。为了确保系数收敛,最陡下降法的收敛因子满足 0 < μ < 1/,为矩阵R的最大特征值。
自适应LMS算法不需要计算输入信号的自相关函数,也不需要求矩阵的逆,计算简单,应用广泛。但LMS算法使用的是梯度矢量的瞬时估计,会存在较大方差,导致自适应滤波性能不能达到最佳。
1.2.2 NLMS算法
NLMS算法为归一化LMS算法,采用可变的步长因子,与LMS算法相比,其收敛速度更快,计算量相当。
1.2.3 RLS算法
RLS算法使误差的加权平方和最小,其中为遗忘因子,且0<≤1。
1.2.4 LMS算法与RLS算法比较(待验证)
与LMS算法相比,RLS算法的最大缺点为每次迭代时的计算量较大,但收敛速度非常快。当环境噪声为平稳随机信号时,LMS算法效果明显,但当环境噪声为非平稳随机噪声时,LMS算法难以自适应跟踪统计特性不断变化的外界噪声,收敛效果一般。RLS算法能够该缺点,在非平稳的环境下获得满意的效果。
生物医学信号是一种强噪声背景下的微弱低频信号,由复杂的生物体发出,是一种不稳定自然信号,属于非平稳随机信号。同时在生物医学应用中,计算量不大,所以适用RLS算法。
2 自适应噪声抵消器。
自适应滤波器有多种应用类型,如:系统辨识、逆系统辨识、预测、噪声消除。不同类型的目的、手段不同,所以相应选择的输入和期望信号也不一样。本文主要介绍噪声消除应用的自适应噪声抵消器。
自适应噪声抵消器有两个输入:噪声输入和含有噪声的实际信号。与自适应滤波原理相对应则输入的期望信号d (n) = s (n)+ v 0(n),为理想信号s (n)和需要消除噪声信号v 0(n)的混合信号。输入信号x(n)为实际采集的噪声信号v (n)。v 0(n)与v (n)强相关,与s (n)不相关。该系统的最终输出信号不是y(n)而是误差信号e(n)。误差信号e(n) = d (n) - y(n) = s (n)+ v 0(n) - y(n)。
E[e2(n)] = E[(s (n)+ v 0(n) - y(n))2] = E[s2(n)] - E[(v 0(n) - y(n))2]
要是输出信号只含有有用信号,则要求E[e2(n)] 逼近E[s2(n)],E[(v 0(n) - y(n))2]取得最小值。
自适应滤波器实质为一个去相关系统,去除或得到输入信号端和期望信号端的相关部分。自适应噪声抵消器的求解过程即为自适应滤波器理论部分,只是输入信号和期望信号和最终输出信号的物理意义不同。自适应噪声抵消器的目前是去掉噪声源和信号源的相关部分。
参考文献:程呈. 自适应RLS算法在心电信号去噪中的研究(D),湖南大学,2015
参考资料: https://blog.csdn.net/fenglide/article/details/45970289