袁宝红,徐 瑶,杜晓婷,李美莲
(安徽三联学院 电子电气工程学院,安徽 合肥 230601)
基于Kalman滤波和Meanshift算法的目标跟踪
袁宝红,徐瑶,杜晓婷,李美莲
(安徽三联学院 电子电气工程学院,安徽合肥230601)
摘要:如何实现移动目标被其他物体遮挡后,预测其所处位置,并能够实现遮挡结束后恢复目标的跟踪是视频目标检测与跟踪研究方面的一个热点问题。文章将Kalman滤波器对目标位置估计能力与Meanshift跟踪算法相互结合实现视频序列中移动目标检测与跟踪。利用遮挡因子对目标进行遮挡判断,如果没有发生遮挡则使用Meanshift算法进行直接目标跟踪,一旦检测出遮挡则利用Kalman的预测值进行目标新位置的确定,最终实现对运动目标进行跟踪,并通过MATLAB编写程序实现对运动目标的检测与跟踪。
关键词:目标跟踪;目标遮挡;meanshift算法;kalman滤波
视频监控系统已成为渗透到当前的各类社会生活中,传统的视频监控只具备捕获、保存、传输和显示等能力,而视频内容的识别是需要人工实现的,工作量巨大。随着图形图像处理技术和视频流解码等技术的发展,视频监控市场的智能化需求不断加强,视频智能分析已经成为当前市场视频监控产品一个热门研究内容。运动目标检测与跟踪作为视频智能分析一个重要基础组成,研究人员开展了大量研究工作,特别是在不同目标分类、特征提取等方面研究尤其突出。本文作者研究感兴趣点在于如何实现移动目标被其他物体遮挡后,预测其所处位置,并能够实现遮挡结束后恢复目标的跟踪。
Meanshift算法在视频目标检测与跟踪研究方面的贡献有目共睹,已经被无所个典型方案和实验证明,本文研究者前期也进行了相关的研究工作,具体算法研究工作详见参考文献8和参考文献9。但是当发生遮挡现象时,Meanshift算法跟踪可能会出现跟踪失败问题,为了更好实现遮挡条件下移动目标的预测跟踪,本文将Kalman滤波器设计思想引入到算法的实现过程中。论文的第二节展开Kalman滤波设计相关知识论述,第三节介绍本文采用的算法实现流程,第四节为检测算法的实验案例与分析。
Kalman滤波器是以输入输出观测数据为手段实现线性系统最优估计的算法。因为观测数据中干扰和噪声等影响因素的存在,这种最优估计的过程也被称为滤波。将Kalman滤波应用到目标跟踪领域,其通过消除目标动态信息中噪声等的影响,实现一个移动目标位置的良好估计。从估计位置方面来说,这个估计可以是当前位置,也可以是预测的下一位置,当然也可以是某种一系列位置的插值或平滑估计。
下面详细说明本文采用的基本思路:
对应的先验状态估计的协方差和后验状态估计的协方差为:
整理上述公式得到期望值后,对k求导,并令一阶导数为零:
Kalman滤波器状态预测方程:
Kalman滤波器误差协方差预测方程:
Kalman增益系数方程:
状态修正方程:
误差协方差修正方程:
上述状态修正方程和误差协方差修正方程为k-1时刻到k时刻过程中状态和误差协方差转移。首先计算kalman增益系数,然后进行状态后验估计和状态轨迹后验协方差,并前一时刻计算的后验状态估计作为本次计算的先验状态估计,循环往复,最终达到状态预测目标。本论文假定任何一个时刻的观测矩阵不变,观测矩阵如下所示:
视频目标在出现完全遮挡的情况时,Meanshift算法准确性方面大大折扣,因此本文在视频目标发生遮挡现象时,采用Kalman滤波器进行目标位置的预测跟踪,最终完成遮挡情况下目标的跟踪。在算法设计过程中,准确判断遮挡是何时发生和何时结束成为目标检测跟踪算法优越性的一个重要指标参数。在视频跟踪的过程中,研究表明可以通过BH相似系数来判断是否有遮挡的发生,即没有发生遮挡,BH系数大于一定的阈值,而当遮挡发生时则小于该值,本文实验中设定此临界值为0.8。当判定没有发生遮挡时,依然利用Meanshift算法进行目标的跟踪,得到目标的新位置,该位置将作为下一帧视频目标的位置依据;当判定遮挡发生时,Meanshift算法的跟踪得不到目标的准确位置,此时我们则可以利用kalman滤波器先前的状态学习,进行预测目标的新位置,此位置将代替Meanshift算法的结果作为目标的新位置。具体视频跟踪的程序流程如图1所示。
在新的视频帧中获得目标的新位置之后,利用BH系数进行遮挡判断,在无遮挡和有遮挡两种情况下分别通过Meanshift算法进行跟踪和利用Kalman滤波器进行预测,最终得到运动目标的新位置。
图1 程序流程
通过Kalman滤波器和Meanshift算法的结合,验证分别在有遮挡和无遮挡情况下的目标跟踪效果,采用量化等级为16*16*16的RGB颜色特征,实验中初始目标通过人为认定方式选定。
3.1实验一:验证快速运动目标跟踪
针对球员球场足球运动视频进行足球的跟踪的实验验证。视频中除了运动目标足球外还有多个干扰目标,分别是身穿红色球服和白色球服的运动员们,并且视频背景复杂,视频清晰度不够高。图2是对足球跟踪的30,40,50,60帧的实验结果,对应图2的(a),(b),(c),(d)。通过实验结果验证,本算法在多个运动物体中,也能够准确地跟踪所需要跟踪的运动目标。
图2 多运动物体情况下的足球跟踪
3.2实验二:验证遮挡条件下运动目标跟踪
遮挡验证实验结果如图3所示。视频序列中有2个物体,静止的黄色物体(水杯)和运动的黑色物体(小车),在黑色物体的运动过程中有一部分是被黄色物体进行了遮挡。为了处理遮挡行为,采用了在Meanshift算法的基础上利用Kalman滤波器进行预测的算法来进行跟踪处理。第1帧是小车初始状态,图3(a),黑色物体从右边向左边运动,此时还没发生遮挡。在第100帧时,图3(b),黑色物体进入遮挡状态,特别在第200帧时,图3(c),黑色物体此时已完全看不见了,但是预测窗口依然在预测着目标的位置。最后在第300,图3(d)黑色物体再次出现在视频中,且被跟踪窗口准确找到,和第400帧,图3(e)在遮挡完全结束后,黑色物体继续被准确跟踪。
图3 基于Kalman和Meanshift算法目标遮挡处理
本文采用的基于Kalman滤波和Meanshift算法实现的移动目标检测跟踪方案简单易用,能够很好地解决目标遮挡问题发生时移动目标跟踪问题。并且通过2组实验对本文采用算法加以验证,首先验证多移动目标及视频图像质量差等情况下算法实现快速移动目标的准确跟踪,其次实现在移动目标发生遮挡情况下,对移动目标位置预测和结束遮挡后位置的连续跟踪。随着视频智能分析需求的增加,本文算法在该领域具有广泛的应用前景。
[参考文献]
[1]Comaniciu D, Ramesh V, Meer P.Real-time tracking of non-rigid objects using mean shift[C]//Computer Vision and Pattern Recognition, 2000. Proceedings.IEEE Conference on. IEEE,2000.
[2]杨辉,刘军,阮松.基于 Mean Shift 算法视频跟踪研究[J].计算机工程与设计,2013(6):2062-2066.
[3]Salhi A,Jammoussi A Y.Object tracking system using camshift, meanshift and Kalman filter[J].World Academy of Science, Engineering and Technology,2012(64):674-679.
[4]He Z, Fan B, Cheng T C E, et al.A mean-shift algorithm for large-scale planar maximal covering location problems[J].European Journal of Operational Research, 2016(1):65-76.
[5]常发亮,刘雪,王华杰.基于均值漂移与卡尔曼滤波的目标跟踪算法[J].计算机工程与应用,2007(12):50-52.
[6]虞旦,韦巍,张远辉.一种基于卡尔曼预测的动态目标跟踪算法研究[J].光电工程,2009(1):52-56.
[7]李小和,屈展,王魁生.鲁棒的基于均值漂移的自适应卡尔曼滤波目标跟踪[J].西安石油大学学报:自然科学版,2015(5):106-110.
[8]袁宝红.基于视频的运动目标检测与跟踪研究[D].合肥:安徽大学,2014.
[9]袁宝红,张德祥,张玲君.基于OpenCV的视频运动目标检测与跟踪[J].计算机系统应用,2013(5):90-93.
Object Tracking Based on Meanshift Algorithm and Kalman Filter
Yuan Baohong, Xu Yao, Du Xiaoting, Li Meilian
(School of Electronic and Electrical Engineering, Anhui Sanlian University, Hefei230601, China)
Abstract:When happened object occlusion, how to realize the moving target prediction, and can achieve screening after the restoration of target tracking is a hot issue of video target detection and tracking research. In this paper, Combined the Kalman flter location prediction ability with Meanshift tracking algorithm to achieve moving target detection and tracking in video sequences. Using barrier factor to judge object occlusion. If no occlusion, Meanshift algorithm is used for direct target tracking. But once detect the occlusion, Kalman prediction for determining target new position. Eventually the moving target detection and tracking is demonstrated by through the MATLAB program.
Key words:object tracking; object occlusion; meanshift algorithm; kalman flter
基金项目:安徽三联学院科研项目;项目编号:2015Z004。
作者简介:袁宝红(1988-),女,安徽合肥。