基于两次Kalman滤波的观测噪声自适应调整算法

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第32卷第2期2010年2月

系统工程与电子技术

SystemsEngineeringandElectronics

V01.32No.2

February2010

文章编号:1001—506X(9010)02—0232—03

基于两次Kalman滤波的观测噪声自适应调整算法

王向华1,覃征1,杨新宇2,杨慧杰2

(1.清华大学计算机科学与技术系,北京100084;

2.西安交通大学计算机科学与技术系,陕西西安710049)

摘要:在实际的目标跟踪过程中。由于目标远近等各种客观因素的影响,观测噪声是随时变化的。但是在标准卡尔曼滤波中,如果将观测噪声协方差设为恒定值,必然造成跟踪结果不理想。针对这种情况,通过在任意时刻施行两次卡尔曼滤波的结果来自适应地调整观测噪声协方差。使卡尔曼滤波算法中的观测噪声协方差与实际值更加接近,从而提高对目标的跟踪精度。最后MonteCarlo仿真实验证明了本算法的有效性。

关键词:目标跟踪;卡尔曼滤波;观测噪声;自适应跟踪算法

中图分类号:TP273文献标志码:A

Adaptivealgorithmforadjustingobservationnoises

basedondouble-Kalmanfilter

WANGXiang—hual,QINZhen91,YANGXin—yu2,YANGHui—jie2

(】.Dept.ofComputerScienceandTechnology,TsinghuaUniv.,Beijing】00084,China:

2.Dept.ofComputerScienceandTechnology,Xi'anJiaotongUniv.,Xi'an710049,China)

Abstract:Intheactualcourseoftargettracking,theobservationnoiseischangingatanytimebecauseoftheimpactofthedistancebetweenthetargetandtheradarandotherreasons.However,theobservationnoisecovarianceischangelessinthenormalKalmanfilter,SOthetrackingresultisnotperfectinevitably.Inordertosolvethisproblem,anovelalgorithmispresentedtoadjusttheobservationnoisecovarianceadaptivelybasedonthetworesultsofKalmanfilterwithdifferentsampletimes.Thesimulationexperimentsshowthatthepro—posedalgorithmimprovestheresultoftracking.

Keywords:targettracking;Kalmanfilter;observationnoise;adaptivetrackingalgorithm

0引言

无论在军用还是民用领域,如空中防御、空中交通管制等,精确而可靠地对目标施行跟踪都是目标跟踪系统设计的主要目的。一个好的跟踪算法应该既满足实时处理的要求,同时又有较高的跟踪精度。

卡尔曼滤波算法是目前被广泛应用的机动目标跟踪算法。在系统特性已知、系统噪声以及观测噪声的统计特性都先验已知的情况下,卡尔曼滤波算法能够实现最优估计。但是一般说来,系统的状态并不都是先验已知的,对这样的系统采用卡尔曼滤波算法进行跟踪必然无法实现最优性,会出现跟踪精度下降,滤波发散甚至目标跟踪丢失的问题。目前,基于卡尔曼滤波算法提出了一系列自适应跟踪算法来解决上述问题u1。。文献[1]和文献[2]引入模糊推理和模糊控制理论,分别提出了基于相关因子和协方差的自适应卡尔曼滤波方法,但是对于隶属函数的选择通常会造成状态估计值的突变,带来较大的跟踪误差。文献[4]提出了一种基于神经网络自学习的自适应算法,该算法虽然在跟踪精度上取得了一定的进展,但是算法复杂,实用性受到限制。

卡尔曼滤波算法中状态噪声模型以及观测噪声对跟踪效果有着直接的影响,也有很多文献提出通过自适应地估计和调整滤波系统的状态噪声协方差口-或者观测噪声协方差¨’来改进滤波精度。然而,究竟应该在什么情况下对估计噪声进行调整以及如何调整确实是一个相对棘手的问题。从当前的计算机技术发展水平来看,卡尔曼滤波的计算量已经不再是一个限制其应用的主要因素。因此,本文在充分研究标准卡尔曼滤波性质和规律的基础上,提出了一种基于两次卡尔曼滤波的机动目标观测噪声自适应调整算法。通过对观测噪声协方差的自适应调整来进一步改善对目标的跟踪精度。

1标准卡尔曼滤波算法分析

卡尔曼滤波‘7“3在当前的机动目标跟踪系统中已经得

收稿日期:2008—10—14;修回El期:2009—04—21。

作者简介:王向华(1971一),男,高级工程师,博士,主要研究方向为复杂信号处理。E—mail:yxyphd@mail.xjtu.edu.cn万方数据

第2期乇向华等:基于两次Kalman滤波的观测噪声自适应调骼算法

到了广泛的应用。以目标的位置、速度和加速度为目标状态矢量,通过目标的动力学方程来描述目标状态的变化,利用递推的计算方法,可以方便地估算目标的状态。

离散卡尔曼滤波的状态方程和测量方程如下

X(正+1)=口(七+l,七)X(是)+G(志)W(志)(1)

y(惫)=H(志)X(k)+V(是)(2)式中,x(是)是待估计的目标状态向量;Y(k)是目标量测向量;①(七十1,惫)是状态转移矩阵;w(忌)为状态噪声,其协方差矩阵设为Q;y(正)为量测噪声,其协方差矩阵设为R;H(志)为观测矩阵。

状态预测方程

j(七lk一1)=痧(启,k—1)j(是一lk一1)(3)预测估计值的协方差矩阵

P(kk一1)一垂(是,k—1)P(足一1服一1)矿(忌,k一1)+

G(k一1)Q(k一1)GT(愚一1)(4)滤波增益矩阵

K(惫)=P(kk一1)J=r。(忌)·

[H(是)P(矗lk——1)J=fT(愚)+R(志)]一1(5)滤波估计状态向量

量(志I矗)=k(kk一1)+k(k)EY(1e)一

H(k)j(k/k一1)](6)滤波估计状态向量的协方差矩阵

P(k1五)=[J—l|c[(惫)H(女)]P(惫lk一1)(7)只要预先给定状态估计初始值量(o)和滤波估计状态向量的协方差矩阵P(o),整个卡尔曼滤波过程就叮以启动并持续递推下去。

在卡尔曼滤波系统中。状态噪声协方差Q和观测噪声协方差R直接影响滤波的精度。状态噪声协方差Q对角线上的数值是状态噪声的特征值,显然,在事先确定的一种噪声模型下,这些值是不变的。本文以简化的情况来分析,假定状态噪声之间是互不相关的,即Q矩阵中除对角线位置外,其他位置上的数值均为0。因此,在一种固定的状态噪声模型下,整个协方差矩阵Q是恒定不变的。关于Q值的估计在文献[9—10]中有比较详细的分析和推导。

观测噪声实际上是不能直接测鼋的并且是随时变化着的,滤波中用到的协方差R是对实际观测噪声协方差的估计,因此R是否准确就成为一个关键的问题。如果R估计过大,最终将减小观测值在滤波结果中的比重,过分相信预测值;如果R估计较小,那么将提高观测值在滤波结果中的比重。总之,无论对实际观测噪声协方差的过大或者过小估计,都会造成跟踪结果不理想甚至导致滤波发散而丢失目标。

通过以上分析可以看出,根据目标的实时运动情况来自适应地调整对实际观测噪声协方差的估计值足,从而提高其准确度,这是提高滤波效果的一条有效途径。

2基于两次卡尔曼滤波的目标自适应跟踪算法

本算法中,每一个时刻都通过两次步长不同的卡尔曼滤波得到当前时刻的两个滤波估计状态值,通过比较这两个值之间的关系来自适应地调整观测噪声协方差,从而得到更好的滤波效果。

在实际的目标跟踪算法应用中,由于目标远近的不同,以及受到天气等客观因素的影响,一般来说雷达的测量精度不可能特别稳定。也就是说,实际的观测噪声是不断变化的,表现在卡尔曼滤波过程中就是观测噪声协方差并不是一个常值。因此,如果在滤波过程中采用恒定不变的R作为观测噪声协方差估计值是不合理的,必然会造成跟踪结果的较大误差。本文提出算法就是要通过两次卡尔曼滤波的结果来判断目前对于观测噪声协方差R的估计是否准确,并对R进行自适应的调整,从而提高对目标的跟踪精度。

假设我们认为系统噪声模型是先验已知的,状态噪声协方差是—个定值,也就是说,跟踪结果出现的误差主要原因是对观测误差的不准确估计。在本文的算法中,定义每一个采样间隔记为—个步长,那么在每个采样时刻,都可以通过步长分别为1和”的两次卡尔曼滤波得到当前状态的滤波结果,时刻愚(是>以)的诱个滤波估计量分别记作岛(忌『是)与毫(志I志)。为了判断目标的运动状态是否发生了大的变化,假设两个滤波估计状态岛(忌I忌)与竞(忌I五)中的位置分量分别为钟(志l是)和霹(惫I惫)。另外我们再设定一个距离窗口,该窗口的上下限记为k和k,如果l斟(走l惫)一薪(是I志)l>k,即两个滤波估计位置差的绝对值大于窗口上限时,认为目标的运动状态发生了较大的变化,观测值的可靠性降低,取R—A时R,其中A恸>1,增大观测噪声协方差值,降低其在滤波结果中的比重;如果I钟(志l志)一霹(矗l忌)1<A岫,则认为目标运动状态稳定,暂时没有发生较大的机动行为,需要降低观测噪声的估计协方差,取R—AbwR,其中o<Ah<1,提高观测值的可靠性。最后,当k≤Ijf(女I忌)一霹(川矗)l‰时,R的值维持不变。这里之

所应采用目标状态中的位置分量来判断目标的运动睛况,是由于距离是目前大部分雷达都可以直接测量获得的,便于实现。图1是以步长为1和3为例的算法流程图,为了跟踪的准确性,两个步长不能相差太大,因此虽然大步长滤波的滞后会稍大,但是并不会对最终的跟踪效果造成太大影响。

12卜

h巡

结果输出

“O)…巅2)k-3l||P(kk-3

图1本文算法流程

本算法的实质是通过任一时刻两次步长不同的卡尔曼滤波结果来判断当前对目标观测噪声协方差R的估计精度,并实时自适应地调整R,进而获得适当的滤波增益矩阵j;(,减少因观测噪声协方差R估计不当造成的精度损失。本文之后给出的计算机仿真实验表明,该算法是有效的,达到了预期的目的。

万方数据

相关文档
最新文档