目标跟踪:交互式卡尔曼滤波

交互式卡尔曼滤波:

前面几节内容,我们已经介绍了常见的卡尔曼滤波,也就是用在线性环节的线性卡尔曼滤波(KF),用在非线性环节的拓展卡尔曼滤波(EKF)和无迹卡尔曼滤波(UKF),这一节,我将进一步丰富我们的限制条件,进一步探讨新的卡尔曼滤波的变形。


问题描述

我们之前介绍的卡尔曼滤波都是处理目标的运动模型为一个,很明显这是在现实中不合理的。现实中的目标运动大多数是无法只用一个运动模型进行描述,而是处于一个在多个目标模型中切换,而这一节我们所介绍的交互式多模型卡尔曼滤波就是用来处理这一情况的。

交互式多模型卡尔曼滤波(IMM)原理

IMM算法采用多个Kalman滤波器进行并行处理。每个滤波器对应不同的状态空间模型,不同的状态空间模型描述不同的目标机动模型。所以每个滤波器对目标状态的估计结果不同。IMM算法的基本思想是在每一时刻,假设某个模型在现在时刻有效条件下,通过混合前一时刻所有滤波器的状态估计值来获得与这个特定模型匹配的滤波器的初始条件,然后对每个模型并行进行实现滤波;最后,以模型匹配似然函数为基础更新模型概率,并组合所有滤波器修正后的状态估计值(加权和)以得到状态估计。因此IMM算法的估计结果是对不同模型所得估计的结合,而不是仅仅在每一时刻选择完全正确的模型估计。


下面介绍IMM算法的一般步骤。
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
所以,根据步骤4,总的状态估计表达式,我们可以看出滤波器的总输出是多个滤波器估计结果的加权平均。权重即为该时刻模型正确模型目标运动的概率,简称模型概率。

Matlab仿真分析

仿真参数:
1-20步:目标以CV模型机动;21-30目标以转弯模型机动,w=-pi/180;
31-60:采用CA模型机动。其他参数与之前的仿真一致
仿真结果:
在这里插入图片描述

在这里插入图片描述
仿真分析:
从跟踪轨迹图和跟踪误差曲线上来看,IMM算法对目标在多个运动模型之前切换的运动轨迹具有较好的跟踪效果。

Matlab仿真程序:

由于某些原因,程序不便上传
需要的话加Q:1806831629,备注:交互式多模型卡尔曼滤波

写在最后:

写到这里,其实我们跟踪的算法已经介绍了一大半了,前面介绍的算法,我们跟踪的目标只有一个,但是,在实际中,我们偶尔需要同时跟踪多个目标的情况。下一节内容,我们将会以多目标跟踪为主题,进行进一步的介绍。

猜你喜欢

转载自blog.csdn.net/qq_44169352/article/details/124461380
今日推荐