基于MATLAB的自适应滤波算法的研究
由式(2.2),可知数字滤波器的传递函数为:
M?1 H?z???azii?0Mi?1?1 (2.3)
1??biz?i其单位冲击响应函数为:
h?n???z1?H???z
y?n??h??n??x?n???? (2.4)
?h?ix??nii???滤波器是电子设备的一个常用的基本部件,人们对其已进行了广泛的研究。滤波器研究的一个基本问题就是:如何设计和建立最佳或最优的滤波器。所谓最佳滤波器是指能够根据某一最佳准则进行设计的滤波器。20世纪40年代,维纳奠定了关于最佳滤波器研究的基础。假定线性滤波器的输入为有用信号和噪声信号之和,两者均为广义平稳过程且已知它们的二阶统计特性,根据最小均方误差准则,维纳求得了最佳线性滤波器的参数。这种滤波器被称为维纳滤波器。维纳滤波器获得了极其广泛的应用。在维纳研究的基础上,人们还研究了根据最大输出信噪比准则、统计检测准则以及其他最佳准则求得的最佳线性滤波器。但人们发现,在一定条件下,这些最佳滤波器与维纳滤波器是等价的。因而,讨论最优线性滤波器时,一般均以维纳滤波器作为参考。
要实现维纳滤波,就要求:输入信号是广义平稳的;输入信号的统计特征是已知的。根据其他最佳准则的滤波器亦有同样要求然而,由于输入过程取决于外界的信号、干扰环境,这种统计特性常常是未知的、变化的,因而不能满足上述两个要求。由于无法预先知道信号和噪声的特性或者它们是随时间变化的,仅仅用FIR和IIR两种具有固定滤波系数的滤波器无法实现最优滤波。在这种情况下,必须设计自适应滤波器,以跟踪信号和噪声的变化。
滤波器研究的一个基本问题是:如何建立最佳或最优的滤波器。根据最小均方误差准则,20世纪40年代维纳求得了最佳线性滤波器的参数,这种滤波器称为维纳滤波器。然而,只有对信号和噪声的统计特性先验已知的情况下,维纳滤波器才能获得最优滤波。遗憾的是在实际应用中,常常无法得到这些统计特性的先验知识,或者统计特性是随时间变化的。因此用维纳滤波器实现不了最优滤波。在这种情况下,自适
第 6 页(共 40 页)
自适应滤波器
应滤波能够提供卓越的滤波性能。所谓自适应滤波器,就是利用前一时刻己获得的滤波器参数的结果,自动地调节现时刻的滤波器参数,以适应信号和噪声未知的或随时间变化的统计特性,从而实现最优滤波。
所谓的自适应滤波[11],就是利用前一时刻以获得的滤波器参数的结果,自动的调节现时刻的滤波器参数,以适应信号和噪声未知的或随时间变化的统计特性,从而实现最优滤波。自适应滤波器实质上就是一种能调节其自身传输特性以达到最优的维纳滤波器。自适应滤波器不需要关于输入信号的先验知识,计算量小,特别适用于实时处理。
自适应滤波器具有“自我调节”和“跟踪”能力。自适应滤波器可以分为线性自适应滤波器和非线性自适应滤波器。非线性自适应滤波器包括Vofterra滤波器和基于神经网络的自适应滤波器。非线性自适应滤波器具有更强的信号处理能力。但是,由于非线性自适应滤波器的计算较复杂,实际用得最多的仍然是线性自适应滤波器。
3.2自适应滤波器的结构
图2 自适应滤波器的一般结构
自适应滤波器的特性变化是由自适应算法通过调整滤波器系数来实现的。一般而言,自适应滤波器由两部分组成,一是滤波器结构,二是调整滤波器系数的自适应算法。自适应滤波器的结构采用FIR或IIR结构均可,由于IIR滤波器存在稳定性问题,因此一般采用FIR滤波器作为自适应滤波器的结构[15]。如图2示出了自适应滤波器
第 7 页( 共 40 页)
基于MATLAB的自适应滤波算法的研究
的一般结构。
W(n)是自适应滤波器在时刻n的权矢量,用X?n????x?n?x?n?1??x?n?N?1???TT表示n时刻输入信号矢量,W?n????w0?n?w1?n??wN?1?n???表示n时刻N阶自适应滤波器的权系数,d(n)是期望信号,e(n)是误差信号,v(n)是主端输入干扰信号。根据自适应滤波算法优化准则J?n????n?ie?i?的不同,自适应滤波算法可以分为两类
i?1n2最基本的算法:最小均方误差(LMS)算法和递推最小二乘(RLS)算法。基于最小均方误差准则,LMS算法使滤波器的输出信号与期望输出信号之间的均方误差
2基于最小二乘准则,RLS算法决定自适应滤波器的权系数向量W (n)E?e??n???最小。
使估计误差的加权平方和最小。其中?为遗忘因子,且0???1。由此两准则衍生出许多不同的自适应滤波算法。自适应滤波算法广泛应用于系统辨识、回波消除、自适应谱线增强、自适应信道均衡、语音线性预测、自适应天线阵等诸多领域中。
自适应滤波器的特点是:滤波器的参数可以自动的按照某种准则调整到最佳滤波;实现时,不需要任何关于信号和噪声的先验统计知识,尤其当输入统计特性变化时,自适应滤波器都能调整自身的参数来满足最佳滤波的需要。常常将这种输入统计特性未知,调整自身的参数到最佳的过程称为“学习过程”将输入信号统计特性变化时,调整自身的参数到最佳的过程称为“跟踪过程”,因此自适应滤波器具有学习和跟踪的性能。
实际上自适应滤波器可以用许多不同结构来实现。结构的选取会影响到处理的计算复杂度(即每次迭代的算术操作数目),还会对达到期望性能标准所需的迭代次数产生影响。从根本上讲,主要有两类自适应数字滤波器结构,即有限长冲激响应(FIR,finite- duration impulse response)滤波器和无限长冲激响应(IIR,infinite-duration impulse response)滤波器。FIR滤波器通常利用非递归结构来实现,而IIR滤波器则利用递归结构来实现。
下面将分别介绍两种滤波器,即FTR与IIR滤波器的结构:
1、自适应FIR滤波器结构:应用最广泛的自适应FIR滤波器结构是横向滤波器,也称为抽头延烬线,它利用正规直接形式实现全零点传输函数,而不采用反馈环节。
第 8 页(共 40 页)
方案论述
对于这种结构,输出信号是滤波器系数的线性组合,它产生具有唯一最优解的二次均方误差函数。
2、自适应IIR滤波器结构:自适应IIR滤波器采用的最多的结构是标准直接形式结构,因为它的实现和分析都很简单。然而,采用递归自适应滤波器会存在一些内在的问题,而且收敛速度很慢。为了克服这些问题,一些研究已提出了不同的结构形式。
4 方案论证
4.1 LMS算法
4.1.1算法简介
由Widrow和Hoff提出的最小均方误差(LMS)算法,因为其具有计算量小、易于实现等优点而在实践中被广泛采用。典型的应用领域有系统识别、信号处理和自适应控制。LMS算法的基本原理是基于最速下降法,即沿着权值的梯度估值的负方向进行搜索,达到权值最优,实现均方误差最小意义下的自适应滤波。初始收敛速度、时变系统跟踪能力及稳态失调是衡量自适应滤波算法优劣的三个重要的技术指标。由于主输入端不可避免地存在干扰噪声,自适应滤波算法将产生参数失调噪声。干扰噪声越大,则引起的失调噪声就越大。减小步长因子召可降低自适应滤波算法的稳态失调,提高算法的收敛精度[17]。 4.1.2原理介绍
最小均方(LMS)自适应算法就是一种以期望响应和滤波输出信号之间误差的均方值最小为准的,依据输入信号在迭代过程中估计梯度矢量,并更新权系数以达到最优的自适应迭代算法。LMS算法是一种梯度最速下降方法,其显著的特点是它的简单性。这算法不需要计算相应的相关函数,也不需要进行矩阵运算。由图3给出LMS算法滤波器的基本结构。
第 9 页( 共 40 页)
基于MATLAB的自适应滤波算法的研究
x(k) Z-1 Z-1 . . . W1 W2 … - d(k) - + ∑ . . - . Z-1 WN向量 控制器 图3 LMS算法滤波器
e(k)
自适应滤波器最普通的应用就是横向结构。滤波器的输出信号y(n)是
y?n??wTN?1i?0?n??x?n????n?xn?? i (4.1) ?iwT表示转置矩阵,n是时间指针,N是滤波器次数。这个例子就是有限脉冲响应滤波器的形式,为x(n)和w(n)两个矩阵卷积。
这种自适应算法使用误差信号 e?n??d??n?y? (4.2) ?n为了方便起见,将上述式子表示为向量形式,则式(4.1)表示为:
y?n??wT?n??x?n? (4.3) 误差序列可写为
e?n??d??n?y??n??d?Tn?w??n?x? (4.4) ? n其中d(n)是期望信号,y(n)是滤波器的输出。使用输入向量x(n)和e(n)来更新自适应滤波器的最小化标准的相关系数。
显然,自适应滤波器控制机理是用误差序列e(n)按照某种准则和算法对其系数{wi(n)},i=1,2,?,N进行调节的,最终使自适应滤波的目标(代价)函数最小化,
第 10 页(共 40 页)