基于Meanshift与Kalman的视频目标跟踪算法
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实位置。笔者将 Kalman 滤波器融合进 Meanshift 跟踪的方法是: 当 Kalman 滤波器作为辅助跟踪
时,Meanshift 的 跟 踪 结 果 作 为 它 的 测 量 值,对
Meanshift 跟踪器产生的跟踪结果具有平滑作用;
当 Kalman 滤波器作为预测器时,当前帧的预测状 ^
∑ I( x,y) / A( R2 )
x,y∈R2
其中,I( x,y) 为目标点( x,y) 的像素值; R1 、R2
为前后两帧跟踪目标对应区域; A( R1 ) 、A( R2 ) 分
别为 R1 和 R2 的面积。设一个门限值 T,若Score >
T,表 示 当 前 目 标 和 背 景 分 布 情 况 改 变 不 大,
收稿日期: 2011 - 09 - 08. 作者简介: 杨红霞( 1985 - ) ,女,湖北仙桃人,武汉理工大学自动化学院硕士研究生. 基金项目: 国家自然科学基金资助项目( 60974021) .
148
武汉理工大学学报( 信息与管理工程版)
2012 年 4 月
图 1 改进的算法框图
色特征的概率密度函数来描述:
图 2 Meanshift 算法的跟踪结果
图 3 改进后算法的跟踪结果
参考文献:
[1] HU W M,TAN T N,WANG L,et al. A survey on visual surveillance of object motion and behaviors[J]. IEEE Transactions on Systems,Man and Cybernetics,Part C:
( 2)
Zi = HXi + Vi
其 中,A 为 状 态 转 移 矩 阵; H 为 测 量 矩 阵;
Wi,Vi 分别为状态和测量的噪声向量,它们是互 不相关的正态白噪声,其方差分别为 Q、R。
状态向量预测方程为:
^
^
Xi i-1 = AXi-1
( 3)
状态向量协方差矩阵预测为:
Pi i-1 = APi-1 AT + Q
m
ρ^ ( y) = ρ[p^ ( y) ,q^] = ∑ 槡p^ uq^ u ( 1) u =1
其中: u 为目标的特征值,取值为[1,m]; y 为 最优候选区域中心。ρ^ ( y) 越大,表示两模型越相 似。为定位下一帧目标,应使 ρ^ ( y) 最大化。
将当前帧的候选目标的中心初始为前一帧目 标中心 y0 ,然后在其领域内搜索匹配目标,不断 地从目标的当前位置 y0 移动到新目标位置 y1 ,若 Meanshift 向量 y1 - y0 ,‖ y1 - y0 ‖ < ε 则停止迭 代,使得 ρ^ ( y) 最大,直到候选区域与目标区域足 够相似,此时目标区域中心位置会由 y0 移动到新 的位置 y1。
( 4)
状态向量更新方程为:
^^
^
Xi = Xi i-1 + Ki( Zi - HXi i-1 )
( 5)
状态向量协方差更新方程为:
Pi = ( I - KiH) Pi i-1
( 6)
Kalman 加权矩阵或增益矩阵为:
Ki = Pi i-1 HT( HPi i-1 H + R) -1
( 7)
^
^
其 中,Xi i - 1 为 预 测 状 态; Xi 为 状 态 估 计;
2 Kalman 滤波器
Meanshift 在目标中心邻域内搜索匹配目标,
若目标运动速度过快,或是目标间存在遮挡,会导
致跟踪效果不好。笔者引入 Kalman 滤波器根据
以往帧的观测向量预测当前帧的状态向量,由此
知道目标可能的位置。Kalman 滤波器是一种对
动态系统的状态序列进行最小均方误差估计的最 优滤波器[9],它 能 够 预 测 下 一 帧 区 域 的 中 心,并
滤波器融合的视频运动目标跟踪算法。该算法可对跟踪加入运动目标预测,根据 Meanshift 跟踪结果判断是
否开启 Kalman 滤波器的预测及滤波,能提高跟踪的鲁棒性。实验结果表明,该算法可以有效改善在复杂条件
下的跟踪效果,具有较好的鲁棒性。
关键词: 视频目标跟踪; Meanshift 跟踪; Kalman 滤波器
4 实验结果及分析
实验硬件平台为 Intel P 3. 0 G,512 M 内存计 算机,软件采用 Matlab 编程环境。选用交通路口 场景,大小为 160 × 120,共 300 帧,帧率为 15 帧 / s。 图 2 是 Meanshift 算法的跟踪结果[10]。在第 62 帧 以前,Meanshift 可以较好地跟踪车和人等运动目 标,在 62 帧以后由于新进来的人车连在一起相互 遮挡,存在较多的颜色特征相似的目标,Meanshift 无法准确跟踪。图 3 是利用笔者所提出的算法处 理同一段视频序列,加入 Kalman 作为辅助跟踪 器,在第 62 帧以后,当人车连在一起时,依据对各
个 Meanshift 跟踪器的跟踪输出得分来开启 Kalman 预测,完成了对各个目标的跟踪。所示的方 框为每一帧目标的跟踪结果。实验结果表明,融 合 Meanshift 与 Kalman 滤波器预测的方法能对目 标进行准确跟踪。
5 结论
针对复杂背景下,可能出现的跟踪效果差的问 题,提出了一种融合 Meanshift 跟踪与 Kalman 滤波 器预测的方法用于运动目标跟踪,判断 Meanshift 的跟踪效果,当跟踪效果良好时,Kalman 滤波起到 平滑作用; 当跟踪效果差时,启动 Kalman 的预测功 能。实验结果表明,所提出的算法能对目标进行准 确跟踪,具有良好的抗干扰能力。
文献标志码: A
Biblioteka Baidu
基于 Meanshift 与 Kalman 的视频目标跟踪算法
杨红霞1 ,杭亦文2 ,刘 旭1
( 1. 武汉理工大学 自动化学院,湖北 武汉 430070; 2. 武汉大学 电气工程学院,湖北 武汉 430072)
摘 要: 针对传统的 Meanshift 方法在复杂条件下目标跟踪丢失问题,提出了一种将 Meanshift 与 Kalman
中图分类号: TP37
DOI: 10. 3963 / j. issn. 1007 - 144X. 2012. 02. 005
对运动目标进行跟踪不仅可以提供目标的运 动状态和轨迹,也为运动分析、场景理解等提供可 靠的数据来源,在智能监控、突发事件检测等方面 有着重要的应用。而图像噪声、天气突变、光照变 化、目标运动随机性等复杂的场景,都会给运动目 标的跟踪带来困难。近年来,所提出的跟踪方法 通常有基于模型的跟踪、基于区域的跟踪、基于活 动轮廓的跟 踪 和 基 于 特 征 的 跟 踪 等[1]。 基 于 模 型的跟踪方法通过对运动目标进行建模,利用视 频图像序列确定模型的参数,从而精确分析出目 标的运动轨迹[2]。该方法在遮挡或干扰下,性能 较好,但几何模型的建立非常困难,计算量大、运 行时间长,难以实现实时跟踪; 基于区域的跟踪是 基于对连续帧中分割出的目标区域建立联系而提 出的[3],对多 目 标 跟 踪 效 果 较 好,但 由 于 只 能 获 得区域级的跟踪,当目标发生形变或存在遮挡时, 就会导致目标跟踪丢失,且费时,无法做到实时跟 踪; 基于活动轮廓的跟踪则利用目标边界信息来 实现跟踪[4],该方法能有效克服干扰或部分遮挡 问题,但其对跟踪的初始化特别敏感; 基于特征的 跟踪是利用目标的某个或局部特征进行匹配[5], 在目标部分遮挡时,利用部分特征仍能跟踪,常用 的特征有目标质心、颜色特征、角点等局部特征。 最典型的基于特征的方法是利用颜色特征的 Meanshift 算法,该方法是一种基于迭代收敛到概
1 Meanshift 跟踪
Meanshift 算法利用目标的颜色特征 概 率 密 度描述运动目标区域中心位于 x 的目标模型,在 目标中心邻域搜索窗口内以相似性度量最大为原 则,寻找最优的位于 y 的目标模型,使得两次移动 距离小于某一阈值,以达到目标的真实位置。笔 者采用 Bhattacharyya 系数度量目标模型 q^ u 和候 选模型 q^ u( y) 的相似程度。模型根据目标区域颜
率密度的局部极大的非参数估计算法,具有实时 性好,易于与其他算法集成,对目标的旋转、变形, 以及边缘遮挡不敏感等优点。DORIN[6 - 7]将其应 用于图像滤波、分割和目标跟踪领域,通过对目标 模型和后续帧候选区的颜色直方图进行相似性度 量而 进 行 跟 踪。 通 过 BRADSKI 改 进 的 CAMSHIFT( continuously apative meanShift) [8]能较好地 处理颜色概率分布不断变化的视频序列,但是当 场景中运动速度过快或目标间出现遮挡时,物体 的特征会因为遮挡无法识别而产生错误的跟踪。 这就要求跟踪器必须具有预测功能。针对以上问 题,笔者提出 了 基 于 Kalman 滤 波 器 和 Meanshift 的视频目标跟踪算法。利用 Kalman 滤波器的预 测估计能力对 Meanshift 的跟踪结果进行处理,解 决了目标跟踪丢失的问题。其改进的算法框图如 图 1 所示。
态 Xi i -1 中的 xc,yc作为测量值,其结果就是保持运
动目标的当前运动状态。在当前帧中,通过分析
Meanshift 跟踪器的跟踪输出得分 Score,用以判断
是否启动 Kalman 预测。Score 的计算公式如下:
∑ I( x,y) / A( R1 )
Score = x,y∈R1
( 8)
Meanshift 跟踪效果较好,其结果可输出到 Kalman
滤波器中,Kalman 滤波器在状态更新和测量更新 后,输 出 结 果 重 新 回 到 Meanshift 跟 踪 器 中。若
Score≤T,Meanshift 算法失效,则启动 Kalman 滤波
器的预测功能,不再利用 Meanshift 跟踪器结果。
间没有重叠,运动目标可能会收敛于背景中与目 标颜色相近的物体,而不是运动目标; 或是目标间
存在遮挡,利用颜色直方图对运动目标特征进行 描述也会导致跟踪效果欠佳。导致跟踪效果不好
的原因还可能在于在某些帧中目标的起始位置不
理想,若能通过目标以前的运动信息预测到当前
帧目标可能位置,然后将这一目标点作为目标的 起始位置,就可以在这一邻域内寻找到目标的真
若 T 取值过大,Meanshift 产生的结果不可信,Kal-
man 滤波器的预测功能容易失效,达不到预测跟踪
的目的; 若 T 取值过小,发挥不了 Meanshift 跟踪器
第 34 卷 第 2 期
杨红霞,等: 基于 Meanshift 与 Kalman 的视频目标跟踪算法
149
图像匹配跟踪功能,因此,笔者采取了一种折衷方 法,取 T = 0. 5,跟踪效果基本满足要求。
Applications and Reviews,2004,34( 3) : 334 - 352. [2] HAAG M,NAGEL H H. Combination of edge element
and optical flow estimates for 3D - model - based vehicle tracking in traffic image sequences[J]. Inter J Comp Vision,1999,35( 3) : 295 - 319. [3] JORGE B,JOSE M S,FILIBERTO P. Motion based seg-
第 34 卷 第 2 期 2012 年 4 月
武 汉理工大学学报( 信息与管理工程版) JOURNAL OF WUT( INFORMATION & MANAGEMENT ENGINEERING)
文章编号: 1007 - 144X( 2012) 02 - 0147 - 04
Vol. 34 No. 2 Apr. 2012
且更正当前帧的目标区域。令状态向量 X = ( xc, yc) T 为目标在 x 轴和 y 轴的位置,测量矢量 Z = [xc,yc]T 为观测目标的位置。首先初始化状态 Xi,再以该目标位置作为 Kalman 滤波器的观测值 来进行下一帧的运算。
Kalman 滤波器的状态方程和测量方程为:
Xi+1 = AXi + Wi
Pi i -1为预测误差协方差; Pi 为估计误差协方差。
3 改进的 Meanshift 与 Kalman 滤波器跟踪
由于 Meanshift 跟踪关注的是目标模型和候 选模型颜色分布的相似性,当目标重叠过多或背
景与目标颜色相近时,Meanshift 将不能保证跟踪
准确无误。若目标运动速度过快,目标在相邻帧