卡尔曼滤波在目标跟踪应用仿真研究.docx

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
卡尔曼滤波在目标跟踪应用仿真研究

卡尔曼滤波在目标跟踪应用仿真研究(李金磊,卫杨勇,郑成波 Nationnal University of Defense Technology,Changsha, China)【摘要】卡尔曼滤波器是一个“optimal recursive data processing algorithm”,它广泛也应用于军事方面的雷达系统以及导弹追踪领域。雷达在搜索到目标并记录目标的位置数据,对测量到的目标位置数据(称为点迹)进行处理,自动形成航迹,并对目标在下一时刻的位置进行预测。本文简要讨论了用Kalman滤波方法对单个目标航迹进行预测,并借助于Matlab仿真工具,对实验的效果分析。【关键词】:Kalman滤波、目标跟踪、Matlab仿真一、实验目的目标跟踪是卡尔曼滤波的主要应用领域。通过本实验,进一步加深对卡尔曼滤波算法的理解,了解卡尔曼滤波算法的基本特点,掌握卡尔曼滤波算法应用研究的基本步骤和方法。二、情景设定假设有一二坐标雷达对一平面上运动的目标进行观测,目标在t=0-600秒沿x轴作恒速直线运动,运动速度为15米/秒,目标的起始点为(-10000米,2000米)。雷达扫描周期T=2秒,x和y独立地进行观测,观测噪声标准差均为100米。要求滤波误差标准差的方差压缩系数为0.5。三、算法分析跟踪滤波的目的是根据已经获得的目标观测数据对目标的状态进行精确的估计。在二维平面内当目标做匀速运动时,我们可以建立在笛卡尔坐标系下的目标离散运动模型和观测模型为:X(k+1)=QX(k)+TW(k) (3-1)Z(k)=C(k)X(k)+V(k) (3-2)本文只考虑匀速直线运动,所以我们只建立匀速直线运动模型。建立模型当目标做匀速直线运动,取状态变量为: (3-3)状态方程为: (3-4)观测方程为: (3-5)其中: 对目标位置和速度的最佳滤波和最佳预测如下:预测: (3-6)预测误差协方差: (3-7)卡尔曼增益: (3-8)滤波: (3-9)滤波协方差为: (3-10)其中: 2.初始化实际上我们常常无法得知目标的初始状态,这时我们可以利用前几个测量值建立状态的起始估计。现在我们用两点起始法:滤波误差均值: 滤波误差标准差: 四、仿真分析-我们已经把卡尔曼滤波的算法叙述的很清楚,由3-6到3-10的5个公式就很容易实现卡尔曼滤波算法。在计算机仿真中,我们采用Matlab编写程序,利用蒙特卡洛的方法对跟踪滤波器进行仿真分析,次数为1000次。以下给出仿真图和结果分析。图4-1图4-1是目标的真实轨迹和测量轨迹,测量轨迹是真实轨迹数据添加方差和均值固定的随机测量噪声得到的,目标沿y=2000米做匀速直线运动。给出的测量轨迹用于滤波后与滤波轨迹作比较分析。从图中可以看出,测量轨迹围绕真实轨迹作上下浮动。图4-2图4-2是滤波轨迹和滤波均值轨迹。从图中可以看出,滤波开始时误差较大,但是随着时间的推移,滤波误差降低,估计值逐步逼近真实轨迹。采用蒙特卡洛方法,多次观测取均值,滤波更为接近真实曲线。图4-3图4-3是y方向滤波估计误差均值及误差标准差。滤波开始时误差较大,随着采样点的增加,误差逐渐减小,误差的标准差也具有同样的特性。达到了滤波误差标准差的方差压缩系数为0.5的要求。图4-4图4-4是x方向滤波估计误差均值及误差标准差。与y方向的估计误差均值相比,x方向的估计误差均值波动较大,这是由于在x方向上有速度分量的缘故,同时其方向上滤波估计误差也有一定波动。也达到了其压缩系数为0.5的要求。图4-5X方向速度估计曲线见图4-5。单次滤波速度与实际值有差距,但是1000次滤波取均值后速度滤波已经于实际值,但是滤波开始时仍有很大偏差,这随着采样点的增加,误差逐渐减小。五、参考文献[1] 刘福声 罗鹏飞,统计信号处理,国防科技大学出版社,1999[2] 万建伟,信号处理实验,国防科技大学出版社六、附录实验源程序: clear all;clc;%===============================仿真场景===================================sigma=10000;T=2;t=300;Vx=15;H=[1 0 0;0 1 0];Q=[1 0 0;0 1 T;0 0 1];eXk(:,t)=[0 0 0];eXz(:,t)=[0 0 0];eeXz(:,t)=[0 0];N=10;%蒙特卡洛次数for i=1:N for j=1:t Zk(:,j)=[2000+wgn(1,1,40);-10000+Vx*T*(j-1)+wgn(1,1,40)]; end for j=1:300 if j==1 Xk(:,1)=[Zk(1,1),Zk(2,1),0];Xk1(:,1)=Xk(:,1);

文档评论(0)

pangzilva + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档