基于卡尔曼滤波的运动目标跟踪
2015-10-21李亭亭
李亭亭
【摘要】運动目标跟踪是计算机视觉领域的一个核心问题,得到了国内外广泛而深入的研究。视觉跟踪技术具有广阔的应用前景。经过近些年的发展,取得了长足的进步,但是一般意义上的视觉跟踪技术尚不成熟,要开发出真正鲁棒算法并需要解决大量的算法实现问题。本文的主要研究内容是在为kalman理论和Meanshift理论基础上,针对Meanshift目标跟踪算法在严重遮挡情况下常常跟踪失败的缺陷提出改进策略。
【关键词】Kalman滤波,MeanShift算法,目标遮挡,目标跟踪
0 前言
近年来,伴随着计算机技术的飞速发展,运动目标跟踪技术在许多领域中成为研究的热点问题,其融合了图像处理、人工智能以及模式识别、自动控制等许多领域的知识,如今运动目标跟踪技术已经受到各领域学者的高度重视,诸如安全管理部门、国防科研院所、高校等有关学者、工程技术人员等,其在地形匹配、图像导航制导、战场侦察测绘、城市安全等方面得到广泛应用。
1 Kalman滤波原理
1.1 Kalman滤波原理
卡尔曼滤波公式:
(1)状态预测方程: (1.1)
(2)协方差预测方程: (1.2)
(3)卡尔曼增益方程: (1.3)
(4)状态修改方程: (1.4)
(5)协方差修改方程: (1.5)
通过以上分析可知,卡尔曼滤波利用对状态观测系统的反馈控制实现运动估计,包括两个关键的环节:预测和修正步骤指通过当前状态和误差的观测來预测得到下一时刻的先验估计;而修正步骤则通过对先验估计和观测值的分析,得到后验估计。重复以上的递归调用,就实现了Kalman滤波工作过程。
1.2 基于Meanshift的目标跟踪方法
给定初始点x,核函数g(x)及误差 ,Meanshift算法循环地执行以下三个步骤,直到条件满足跳出循环。
Step1 计算Meanshift向量mh,G(x);
Step2 把mh,G(x)赋给x;
Step3 如果 ,结束循环,否则,继续执行Step1。
2 Kalman滤波与meanshift的融合跟踪算法
给出融合卡尔曼滤波器的Meanshift算法的过程:
1) 根据视频中对运动目标的初始位置,即手动标定的目标区域,确定卡尔曼滤波器的初始状态向量并初始化其他必要的参数。
2) 利用初始化后的卡尔曼滤波器预测当前时刻当前帧的目标后选位置。
3) 以卡尔曼滤波器预测的目标后选位置为Meanshift算法的迭代起始点,开始Meanshift迭代过程,直至收敛,得到真实的目标位置。
4) 将Meanshift算法得到的目标真实位置作为卡尔曼滤波器的观测向量,对卡尔曼滤波器进行更新。
利用更新后的卡尔曼滤波器依据同样的原理,重复第2步到第4步的过程,计算出下一帧中的目标位置。依次重复,就完成了对运动目标的跟踪过程。图1所示为融合卡尔曼滤波器的Meanshift算法流程图。
图1 融合卡尔曼滤波器的Meanshift算法流程图
3 结语
为了解决大比例遮挡情况下的跟踪,一个首要的问题就是判断何时出现了目标被严重遮挡。前面我们已经阐述,Meanshift算法的定位过程采用的相似度函数是Bhattacharyya系数,函数值越大表示相似程度越大。于是在出现目标被严重遮挡的帧,会出现这样的情况,即以卡尔曼滤波器预测初始位置,然后进行Meanshift迭代,在收敛点处的Bhattachatyya系数相对于以前时刻的值会出现急剧的下降,这样就可以通过判断相似度函数的值来判断是否出现了严重遮挡的情况。
参考文献
[1]F.M. Porikli, O. Tuzel. Human Body Tracking by Adaptive Background Models and Mean-shift Analysis[A]. IEEE International Workshop on Performance Evaluation of Tracking and Surveillance, 2003:15~21.
[2]B. Scholkopf. Statistical Learning and Kernel Methods[R]. Technology Report MSR-TR. 2002:101~107.
[3]Cheng YZ, MeanShift, Mode seeking, and Clustering[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 1995. 17(8): 790-799.