基于时空上下文模型的RGB-D序列目标跟踪方法

2021-03-12 11:21孔德慧荣子豪贾思宇王少帆尹宝才
北京工业大学学报 2021年3期
关键词:尺度模板物体

孔德慧, 荣子豪, 贾思宇, 王少帆, 尹宝才

(1.北京工业大学信息学部, 北京 100124; 2.北京工业大学多媒体与智能软件技术北京市重点实验室, 北京 100124)

面向RGB图像序列的目标跟踪方法在计算机视觉领域的诸多问题上应用广泛. 然而,考虑到现实应用环境中的很多影响因素,例如目标对象被遮挡、外观形变、光照条件多变等,面向RGB图像序列的目标跟踪仍然存在精度低、鲁棒性差的问题. 近年来,伴随深度传感器技术的进步,许多高效捕获场景深度信息的设备(如微软Kinect相机)可使人们用较低的成本高效、准确地获得场景的深度信息. 相应地,面向RGB-D图像序列的目标跟踪技术也随之发展.

目标跟踪技术大体可分为生成式目标跟踪和判别式目标跟踪. 生成式目标跟踪算法通过学习一种表观模型来表达跟踪目标,并在图像范围内搜索最好的匹配结果. 此类的经典算法包括基于均值漂移(mean-shift)的跟踪算法[1]和分块跟踪算法[2]等[3-6]. 而判别式方法将目标跟踪问题归为二分类问题,通过局部搜索,并判断图像块是目标还是背景,实现目标定位. 这其中囊括了基于online-boosting的跟踪算法[7]和基于在线多实例的跟踪算法等[7-11]. 目前,生成式和判别式算法逐渐混合,自适应学习模板匹配算法也逐渐兴起.

2014年,文献[12]在时空上下文(spatio-temporal context,STC)学习算法基础上提出了加权的时空上下文(weighted spatio-temporal context, WSTC)学习算法. 该算法借助前后帧的光流估计,通过在时空上下文间进行搜索实现上下文信息的分级,达到了上下文信息中其他物体和目标的分离,提升了算法辨别目标和背景的能力.

最近几年,深度信息在计算机视觉领域的物体检测、物体分割等方面广泛应用,但是在基于深度信息的视频跟踪领域中,目前成熟的算法还很少[13],且基于深度图的跟踪算法[14-15]刚开始兴起. 如何更好地利用深度信息这一新的数据,并和RGB信息融合,成为摆在人们面前的问题.

2015年Chen等[16]提出了在RGB图中加入深度信息,形成三维空间上下文信息,从而实现在三维空间的快速上下文学习跟踪算法. 本文也采取基于上下文信息搜索的做法,在原有基于RGB信息的跟踪算法的基础上,通过获取深度图上下文和目标的信息并加入深度权重,实现了目标和背景的分离,并因此在背景变换、杂波发生、物体交叉、连续遮挡的情况下,仍可保证目标的准确跟踪.

本文的主要贡献如下:

1) 实现了一个基于自适应深度信息模板的上下文先验模型(context prior model)的跟踪算法.

2) 实现了一个基于深度时域变化估算的遮挡检测及处理算法.

3) 实现了一个基于深度信息的尺度更新算法.

1 STC模型

在STC算法中,通过计算彩色图的时空上下文,采用自适应学习的方法将上下文信息转换为概率置信图,再搜索概率置信图得到目标位置,并进行尺度更新.

一般来说,跟踪方法需要计算出一个用以估计目标物体可能位置的置信图

m(x)=P(x|o)

(1)

式中:m(·)为目标位置置信图,可表达为条件概率分布P(x|o);x∈R2代表目标方位;o代表目标在场景中是否存在. 在最近的已处理帧中,目标的位置x*已定. 据此,局部上下文特征Xc定义为

Xc={c(z)=(I(z),z)|z∈Ωc(x*)}

式中:I(z)为位置z处的图像灰度;Ωc(x*)是位置x*的近邻域,为目标物体大小的2倍. 通过边缘化联合概率P(x,c(z)|o),物体位置的可能性函数(1)可转化为

(2)

式中:P(x|c(z),o)描述目标物体位置和它上下文的空间关系;P(c(z)|o)为上下文的先验概率. 按此计算求得概率置信图,进而得到目标物体的位置. 然而,仅仅依靠低层次的彩色上下文特征,不足以将目标和背景完全区分,因而在处理复杂的遮挡和背景杂乱等情况时效果并不理想.

本文通过在上下文模型构建中引入深度信息,实现了基于自适应深度信息模板的上下文先验模型;在原有STC跟踪算法流程的基础上,添加了基于深度信息的尺度更新算法及遮挡检测、处理机制. 通过将目标跟踪状态分为未被严重遮挡和被严重遮挡2种情况,采用不同的方法分别处理,以实现更好的适应能力. 本目标跟踪方法的总体流程如图1所示.

图1 时空上下文模型的算法流程Fig.1 Flowchart of spatio-temporal context model

1.1 基于自适应深度信息模板的上下文先验模型

本跟踪算法的核心是自适应的深度信息模板和上下文模型,其中深度信息模板又是计算上下文模型的关键. 对于深度信息模板,依照第1帧给定的目标检测框的方位和尺寸,求出目标检测框范围内的深度区间[d1,d2],从而推算出跟踪目标所处深度范围. 在D1=[d1,d2]范围内,建立深度信息直方图,直方数为n. 分别计算每个直方元组中元素个数,并寻找出元素最多者(其元素个数计为tk),并求出其相对元素总数t的占比,记为

(3)

如果rate≥c3(c3是超参数,实验中取0.5),则保存范围为[d′1,d′2]=[d1,d2],作为目标的初始深度模板. 如果rate

D1=[d″1,d″2]=[d′1-ck′,d′2-ck′]

(4)

式中c是常数,k′从1开始渐增并重复以上直方图统计,直到rate≥c3,算法停止.

而在之后的跟踪过程中,本方法在每帧跟踪计算结束后,根据当前跟踪目标检测框内的深度情况,对深度信息模板进行更新. 在获取当前帧后,计算目标检测框内深度均值avgt,再计算前后2帧均值深度差

dvgt-1=avgt-avgt-1

(5)

则更新后的深度信息模板有

(6)

在式(2)中,上下文先验概率与上下文的表观模型有关. 在原STC当中,上下文先验概率被简单表示为

P(c(z)|o)=I(z)wσ(z-x*)

(7)

式中:I(·)是上下文的图像灰度值;wσ(·)是高斯权重函数. 而在本文当中,为了利用深度信息实现对目标和背景的区分,将式(7)改写为

P(c(z)|o)=c1I(z)wσ(z-x*)+c2Wdz[1]z[2]

(8)

式中深度权重矩阵Wd各分量定义为

(9)

式中:Aij为当前上下文中位置(i,j)的深度值;λ为系数;α为归一化参数. 通过融合深度和彩色权重,本方法进一步完善了上下文表观模型,使得目标和背景的区分更加明显,进而在背景复杂、剧烈变化或者背景和目标物体出现相似纹理特征时依然可以实现区分.

在定义了上述置信图涉及的诸组成概率分布后,之后跟踪流程同STC算法一样.

(10)

(11)

式中:F为傅里叶变换;F-1为傅里叶逆变换;⊙为Hadamard积.

1.2 基于深度信息的尺度更新

本节讨论并分析目标物体在当前帧位置确定以后目标检测框尺度的变化. 这里假设目标物体未被严重遮挡;而当物体可能被严重遮挡导致计算不可信时,则采取1.3节中介绍的遮挡检测和处理的方法.

在处理第1帧时,可以得到目标物体实际的尺度S1,以及根据式(4)得到D′1=(h′,w′). 定义比值变量

(12)

在之后的跟踪计算中,第t帧的计算有

(13)

式中:St为第t帧计算所得目标尺度;D′t为第t帧模糊尺度(模糊尺度是在上下文计算中,依据深度信息模板划分出的目标大概的尺度).

1.3 基于深度时域变化估算的遮挡检测及处理

为处理目标被遮挡的问题,本方法在STC算法中获取RGB上下文信息,使得整个算法对于局部遮挡有了一定的容错性. 但是若出现明显的大幅遮挡、交叉遮挡甚至长时间连续遮挡,包括STC算法在内,绝大多数基于RGB信息的跟踪算法都会预测错误.

在深度图信息引入之前,大多数的跟踪算法并不会直接判断遮挡,而是采取自适应的方法来处理遮挡的情况. 在引入深度信息之后,在深度图上对于遮挡的检测甚至处理成为了可能. 快速上下文跟踪算法通过保存连续多帧深度信息并依据深度变化的连续性来断定遮挡是否发生[16]. 若目标在某帧出现遮挡,则将最近的深度连续的位置用作新的目标中心. 若出现长时间连续遮挡,且目标存在移动动量,则这种找寻方法有不稳定性.

考虑到STC原始算法对于遮挡有一定的容错性,所以在目标没有被大幅遮挡时,由算法自适应解决即可. 本方法通过计算遮挡率(∂)来评估遮挡. 遮挡率定义为

(14)

式中:n′t是复合深度信息模板中目标检测框内像素的个数;nt是目标检测框像素总个数. 当∂小于常数σ时,不使用遮挡处理算法,因为计算得到的当前目标物体的位置和尺度可信. 而当∂≥σ时,目标位置跟踪计算所得值的不可信度大增,需要进行遮挡处理. 由于物体的移动轨迹和运动状态具有连续性,因而可以根据连续多帧间目标物体移动的动量来预测第t帧内被遮挡目标的位置.

定义第t帧的动量Mtt为

(15)

则可大概推测当前第t帧被遮挡目标的位置为

(16)

同时由于被遮挡目标的尺寸变化无法准确预测,当前帧的目标尺寸继承上一帧的尺寸,且保持之前的尺度变化参数和深度模板更新变化量,即

(17)

经过式(16)的处理后,跟踪目标的长时连续遮挡、短时交叉遮挡问题均可得到解决;而当∂<σ后,则可以继续执行跟踪算法流程. 图2展示了本算法遮挡检测和处理的实验结果,图(a)反映了目标被遮挡的遮挡率在视频序列上的变化过程,相应主观跟踪效果如图(b)所示.

图2 遮挡检测及处理效果Fig.2 Illustration of occlusion detection and handling

2 实验结果与分析

本文基于Princeton RGB-D数据集的22组RGB-D数据进行跟踪算法的性能评估,这些数据涵盖遮挡(heavy occlusion)、交叉遮挡(cross shade)、背景杂波(background clutter)、尺度变化(scale variation)、剧烈形变(drastic deformation)等情况,总计4 335帧. 此外,对该数据集中不含标注的数据进行了人工标注. 对于目标被遮挡的情况,本文以目标实际所在位置和尺度为准. 本文以STC算法为基准进行了对比,且与最近发表的基于RGB信息的跟踪算法[9,7]进行了对比. 实验所用硬件配置为Intel core i7-4790 CPU及8G RAM.

实验结果的量化评价采用当前跟踪算法测试常用的2个标准:中心位置误差(center location error, CLE)和跟踪成功率(success rate, SR);评价结果依赖于每帧标注信息. CLE度量跟踪结果的目标中心点与实际目标中心点距离. SR首先定义每帧的得分score,且

(18)

式中:ROITi是第i帧目标跟踪框;ROIGi是第i帧实际目标框. 当ROITi与ROIGi完全重合时,score为1;完全不重合时,score为0;部分重合时,score为0~1. 在所有实验中,重叠比例(overlap ratio)阈值为Rt=0.5. 若score>Rt,则该帧跟踪成功,否则跟踪失败. SR最终定义为整个视频序列上跟踪的成功率.

实验的量化结果见表1. 本方法在绝大多数的情况下效果比其他方法好,特别在长时遮挡的数据上有显著提升. 在22组数据的SR对比中,本方法有2组比其他方法差,并且在本方法实验结果好的组中,有13组超过了0.50,有6组超过了0.85,有1组达到了1.00;平均SR比其他对比方法高出1倍. 而在CLE的对比中,本方法有19组比其他方法好;其中误差20.0以内的有10组,10.0以内的有3组,且其中有1组误差接近1.0. 平均CLE比其他对比方法低. 对于跟踪速度,本算法比其他算法稍慢些,但在可接受范围内. 部分主观的跟踪效果见图3;此3组都是从Princeton 数据集中选出;从上往下分别是“new_ex_occ3”“two_people_1.1”“walking_occ1”;其中红色目标检测框是本文方法所得,蓝色是STC,绿色是CT,黄色是CSK.

表1 不同序列目标跟踪量化评估结果Table 1 Quantitative results of target tracking for different sequences

续表1

3 结论

1) 通过对快速上下文STC算法进行改进,引入深度信息,利用实时更新的深度信息模板,从而更好地区分目标和背景.

2) 引入尺度更新算法和遮挡处理算法,使跟踪器在出现大幅遮挡、交叉遮挡、长时间遮挡的情况下表现出明显的性能提升.

但是,本文方法在保证较高的精确性和鲁棒性的情况下,处理速度略微降低. 未来工作中,可以在兼顾时间性能的情况下,利用上下文中RGB轮廓和深度轮廓融合进一步提升跟踪精确度和鲁棒性.

猜你喜欢
尺度模板物体
高层建筑中铝模板系统组成与应用
铝模板在高层建筑施工中的应用
特高大模板支撑方案的优选研究
论社会进步的评价尺度
Inventors and Inventions
宇宙的尺度
揭开物体沉浮的秘密
为什么同一物体在世界各地重量不一样?
9
“力”常考易错点扫描