基于卡尔曼滤波聚类的RGB-D 视频目标跟踪

2020-07-29 03:18朱福珍张美虎江兆银
湖南邮电职业技术学院学报 2020年2期
关键词:卡尔曼滤波直方图聚类

朱福珍,薛 景,张美虎,江兆银

(扬州市职业大学,江苏扬州225009)

目前在多数跟踪算法中,遮挡在跟踪中是一个很难解决的问题[1],由于遮挡的存在,很多跟踪算法出现漂移。随着实时RGB-D 传感器的普及率日益激增[2],利用深度数据的成像特性,提升视频目标跟踪的性能是本论文的研究重点。

1 快速分割算法

根据目标初始位置,对相应的深度图像区域进行快速分割,并分析相应区域的直方图分布,如图1、图2 所示。图1 为正常跟踪状态,跟踪目标像素值集中在160-180 之间,呈高斯分布;图2 为部分遮挡状态,遮挡对象离镜头更近,遮挡对象像素值在195-210 之间,在部分遮挡时出现双峰高斯分布,遮挡对象和跟踪目标区分明显。为此,根据目标初始位置和包围框,在深度图对应感兴趣区域进行1 维K-means 聚类。

图1 目标包围框内的深度直方图分布(正常跟踪状态)

图2 目标包围框内的深度直方图分布(遮挡状态)

K-means 聚类属于无监督学习,我们将K-means应用于跟踪区域的1 维深度直方图,从而减少特征数量和聚类的点数。K-means 聚类主要缺点是簇K 的数量必须是先验已知,其收敛性对初始簇质心非常敏感。用深度直方图的bin 数量初始化K,用深度直方图的最大深度值初始化,这样,对K-means 算法而言是很好的初始化种子,可以减少算法收敛时间。深度直方图h(dj)由深度值为dj的j 个bins 组成。聚类中心的更新方法如公式(1)所示:

接着,K-means 输出聚类[3]形成连通量,通过对连通分量分析,识别出位于相同深度内的目标。

直方图h(dj)中bin 的宽度影响分割的结果,本论文根据跟踪目标的标准方差σobj和Kinect 的噪声模型[4]对bin 的宽度进行自适应选择,所提出的方法既满足了分割的精度,又达到低计算量的需求。

2 检测和处理遮挡

为了处理遮挡,一些传统的RGB 跟踪器如TLD使用前向、后向错误来指示跟踪失败,有些跟踪器使用基于片段的模型来减少对部分遮挡的敏感性。但是,随着深度信息的出现,主动检测遮挡和恢复遮挡都变得更加方便。

卡尔曼滤波器[5]是一种可以随时间迭代计算的线性最优滤波器,假设目标的运动方程和观测方程都是线性高斯过程,每一步所需的计算复杂度不大,实时计算,适合深度图中的目标跟踪。

卡尔曼滤波计算出预估区域,对目标候选区域给出一个理想的预估值,这在遮挡期间非常有用。将卡尔曼滤波应用到目标的质心,定义卡尔曼滤波器的系统状态为x,其中u 和v 是质心位置,d 是跟踪对象的深度平均值。系统状态方程为:

系统观测方程为:

其中xk为系统状态6×1 维状态向量;ok为观测到的系统状态的3×1 维向量,这里观测值由SiamRPN++跟踪算法给出;Fk|k-1是6×6 维状态转移矩阵。从tk-1时刻到tk时刻,Hk是tk时刻的3×6 维观测矩阵。ηk-1为系统噪声,vk为观测噪声,为互不相关的零均值正态白噪声,令Qk和Rk分别为ηk-1和vk的协方差矩阵。

这里,由于Fk|k-1和Hk已知,ηk-1和vk满足一定的假设,设Pk是的协方差阵,是xk和的误差协方差阵,由此得到卡尔曼预测算法的计算公式:

1)在t0时刻,用x 均值向量初始化,求出P0。

2)在tk时刻,系统预测方程为:

3 实验分析

系统开发选用的编程语言为Python 与C++混合编程,使用PyTorch 框架,测试序列来自基准集PTB[6],实验中将本文算法与其他五种跟踪方法做了比较,这五种跟踪算法分别为:SiamRPN++[7]、SAMF[8]、Staple[9]、KCFDP[10]、DS-KCF。其中,SiamRPN++为基于深度学习的跟踪方法;SAMF 在KCF 基础上进行了HOG 和Color names 多特征融合以及多尺度改进;Staple 将HOG 特征和颜色直方图融合;KCFDP 将Edge Boxes方法引入基于相关滤波的跟踪;DS-KCF 是基于KCF框架的RGB-D 跟踪方法。

遮挡是跟踪的难点,当目标进入遮挡状态以后,我们不知道目标的位置,也不知道遮挡要持续多久,所以遮挡场景对算法的挑战性很大。图3 中两行序列分别为bear_front、new_ex_occ4,这两个图像序列都出现了间歇性完全遮挡。在bear_front 序列中,一个白色长方体盒子遮挡住了小熊;在new_ex_occ4 序列中,咖啡馆前面的高个男生遮挡住了相向而行的女生。图3 分别显示了这两个序列遮挡前、遮挡中和遮挡后的跟踪状态。

图3 遮挡情况下本文算法跟踪结果图

通过实验为该六种跟踪算法作了定性比较,分别为SiamRPN++、SAMF、Staple、KCFDP、DS-KCF 和 本论文方法。以bear_front 序列为例,小熊玩具的颜色与后面背景柜子颜色类似,第35 帧Staple 和KCFDP 跟踪丢失(第一次遮挡结束);第191 帧目标运动模糊,SiamRPN++和本文算法跟踪较为鲁棒,其他算法跟踪丢失。以new_ex_occ4 序列为例,第22 帧六种算法跟踪都很稳定,遮挡发生后,在第34 帧Staple 和SiamRPN++跟踪丢失,在第38 帧,相比KCFDP 和SAMF 算法,DS-KCF 和本论文方法以更好的尺度和宽高比对目标进行了跟踪。

4 结束语

本论文利用RGB-D 视频中的深度图像主动检测遮挡物,在遮挡期间对遮挡物进行跟踪,目标跟踪恢复后,继续原目标的跟踪,期间使用卡尔曼滤波进行目标运动模型预测。实验结果表明,本文提出的目标跟踪算法可以在目标之间发生严重遮挡、快速运动等变化时,亦可进行鲁棒跟踪。

猜你喜欢
卡尔曼滤波直方图聚类
基于深度强化学习与扩展卡尔曼滤波相结合的交通信号灯配时方法
符合差分隐私的流数据统计直方图发布
脉冲星方位误差估计的两步卡尔曼滤波算法
基于FPGA的直方图均衡图像增强算法设计及实现
基于K-means聚类的车-地无线通信场强研究
卡尔曼滤波在信号跟踪系统伺服控制中的应用设计
用直方图控制画面影调
基于递推更新卡尔曼滤波的磁偶极子目标跟踪
基于高斯混合聚类的阵列干涉SAR三维成像
中考频数分布直方图题型展示