目标跟踪是计算机视觉领域的研究热点之一,并得到了广泛的应用。目前许多学者将机器学习方法引入目标跟踪,例如,基于多示例学习的目标跟踪算法(即MIL)已经被提出。然而,传统的MIL跟踪算法在正负样本的选择上存在一定的不稳定性,容易在时间的推移下出现目标漂移的现象。为了克服上述问题,提出了一种简单、有效且高效的基于相关相似度的在线多示例学习目标跟踪算法。该算法通过定义相关相似度来对正包中的样本进行进一步的选择与加权,从而提高目标跟踪的性能。与新近算法的实验对比表明,本文提出的算法在目标跟踪的准确性、精度、鲁棒性等方面均有一定的提高。 Object tracking is one of the hot topics in computer vision and has wide applications. At present, many scholars have introduced machine learning methods into target tracking. For example, multiple instance learning (MIL) based object tracking has been proposed. However, the traditional MIL tracking algorithms have some instability under the selection of positive and negative samples, and they are easy to appear the phenomenon of target drifting over time. In order to overcome the above problems, this paper proposes a simple, effective and efficient object tracking algorithm using online multiple instance learning based on relative similarity. The algorithm further selects and weights the samples in the positive bag by defining the relative similarity so as to improve the performance of object tracking. By contrast to the recent algorithms, the experiments show that the algorithm in this paper has a certain increase in accuracy, precision, and the robustness of object tracking.
陈敏,张清华,陈晓森,陈江湖,谢思齐,陈思
厦门理工学院计算机与信息工程学院,福建 厦门
收稿日期:2019年2月3日;录用日期:2019年2月15日;发布日期:2019年2月22日
目标跟踪是计算机视觉领域的研究热点之一,并得到了广泛的应用。目前许多学者将机器学习方法引入目标跟踪,例如,基于多示例学习的目标跟踪算法(即MIL)已经被提出。然而,传统的MIL跟踪算法在正负样本的选择上存在一定的不稳定性,容易在时间的推移下出现目标漂移的现象。为了克服上述问题,提出了一种简单、有效且高效的基于相关相似度的在线多示例学习目标跟踪算法。该算法通过定义相关相似度来对正包中的样本进行进一步的选择与加权,从而提高目标跟踪的性能。与新近算法的实验对比表明,本文提出的算法在目标跟踪的准确性、精度、鲁棒性等方面均有一定的提高。
关键词 :目标跟踪,多示例学习,相关相似度,在线学习
Copyright © 2019 by author(s) and Hans Publishers Inc.
This work is licensed under the Creative Commons Attribution International License (CC BY).
http://creativecommons.org/licenses/by/4.0/
目前机器学习已经被广泛应用于目标跟踪领域,包括多示例学习(Multiple Instance Learning, MIL)。区别于传统的机器学习方法,MIL方法是利用正负包进行学习,在训练阶段,样本保存在集合中(这里使用“包”的概念),然后为包贴上标签,而不是为每个样本贴标签(标签是用于表示正负样本)。MIL要求正包中至少含有一个正样本,而负包中必须全部是负样本。虽然MIL算法已被成功用于目标跟踪领域 [
为了克服上述问题,我们发展了一种用于自适应外观模型更新的基于相关相似度的在线多示例学习算法(Relative Similarity Based Online Multiple Instance Learning,即SMILE),使得目标跟踪系统能处理部分或全局遮挡、漂移、快速移动等问题。在SMILE算法中,我们引入了相关相似度(Relative Similarity)的概念,其是一种度量目标模型的相似度度量方式。相关相似度的取值范围是0~1,其取值越大代表图像越有可能蕴含前景目标。在传统的MIL算法基础上,我们通过有效地引入相似度度量机制,进而在一定程度上能够提高目标跟踪的鲁棒性和准确性。
目前学者已经提出了大量的目标跟踪算法。根据目标跟踪过程是否更新目标外观模型,目标跟踪方法可以分为离线目标跟踪方法 [
在线目标跟踪算法按照建模方式的不同,可以分为基于产生式学习的在线目标跟踪算法 [
基于产生式学习的目标跟踪算法通常是通过建立一个目标模型将现实世界中的目标通过计算机视觉中的目标表示方法进行描述,在新的图像帧中,搜索与目标外观模型最相似的区域,而常用的产生式方法有:高斯学习、稀疏表示等方法。特征跟踪(Eigen-Tracking)方法 [
尽管已经提出了许多在线产生式目标跟踪算法,但仍有数个问题有待解决。第一,必须从连续帧中选取大量的训练样本以便在线学习一个外观模型。因为刚开始只有几个样本,大多数跟踪算法通常假设在这期间目标的外观并没有太大变化。但是,如果目标的外观在开始时有明显的改变,很可能发生漂移问题。第二,当多个样本被获得在当前目标位置,由于外观模型需要适应这些可能错误标记的样本,所以就可能造成漂移。第三,这些生成算法没有使用有助于提高跟踪稳定性和精确性的背景信息。
基于判别式学习的目标跟踪算法采用机器学习中分类的方法来找出与目标最为相似的区域,该方法通常学习一个分类器用于区分目标样本和背景样本。Avidan [
近期,Bhat等人 [
Babenko等 [
基于离线学习的多示例学习算法是在训练时需要初始化所有的训练数据。而采用在线的学习方式时,训练数据是逐帧输入的,根据动态训练数据建立分类模型,并能依靠最新的数据整改分类模型,同时更新弱分类器,并能够在一定时间限制内去掉已经没有价值的分类信息。而我们通过加入相关相似度的度量,能够提高弱分类器的准确率,具体表现在对正样本重新进行筛选和加权,提高正包内样本的准确率。算法流程如图1所示。
在线多示例学习的主要思想是 [
用于训练二元分类器的传统判别式学习算法是利用 { ( x 1 , y 1 ) , ⋯ , ( x n , y n ) } 作为训练数据集,其中的 x i 是示例(即图像块计算的特征向量), y i ∈ { 0 , 1 } 是样本的二进制标签。不同的是,在多示例学习中,训练数据形如 { ( X 1 , y 1 ) , ⋯ , ( X n , y n ) } ,其中包 X i = { x i 1 , ⋯ , x i j , ⋯ , x i N i } , y i 是包标签, x i j 是第 i 个包中第 j 个示例, Ni是第 i 个包的示例个数,n是包的个数。本文中,示例的特征向量采用haar特征。包标签被定义为: y i = max ( y i j ) ,其中 y i j 是第 i 个包中第 j 个示例的标记,它是在训练期间未知的示例标签。换句话说,一个正包至少含一个正示例,但也可能还有负示例。
目前已经提出了许多算法用于解决多示例学习问题 [
最大化包的对数似然函数 L = ∑ i ( log p ( y i | X i ) ) 。
图1. SMILE算法流程
图2. 样本范围选择
注意是在包上定义可能性而不是示例上,因为在训练过程中示例标签是未知的。但我们的目标是训练估计 p ( y | x ) 的示例分类器。因此,我们需要根据其示例概率 p ( y i | x i j ) 来计算包是正包的概率 p ( y i | X i ) 。
传统的在线多示例学习算法 [
首先,假设包 X i 中一个示例用图像块
S ( x i j , x i k ) = 0.5 ( N C C ( x i j , x i k ) + 1 ) (1)
其中 N C C 为归一化互相关系数,用于归一化待匹配目标之间的相关程度,就是描述所选目标间的相似性。
假设两个图像块 x i j ∈ R m × n , x i k ∈ R m × n ,那么 N C C = ∑ x i j · x i k ( ∑ x i j · x i j ) × ( ∑ x i k • x i k ) ,其中 · 表示点乘运算。
对于任意给定一个包中示例 x i j ,我们构建一个目标模型,它是一些包中示例的集合 E = { x 11 , ⋯ , x 1 N + , x 01 , ⋯ , x 0 N − } ,当前帧为第j帧, x 11 到 x 1 N + 是从第1帧到上一帧跟踪到的目标样本, x 01 到 x on- 是上一帧的负包中的示例。我们定义以下几个量化指标:
① 正样本最近邻相似度,也叫正最近邻相似度,
S + ( x i j , E ) = max x ∈ 1 j E S ( x i j , x 1 j ) (2)
② 负样本最近邻相似度,也叫负最近邻相似度,
S − ( x 11 , E ) = max x 0 j ∈ E S ( x 11 , x 0 j ) (3)
③ 相关相似度定义如下:
S r ( x 11 , E ) = S + S + + S − (4)
相关相似度变化范围从0到1,相关相似度 S r 的取值越大表示图像块越有可能是目标区域。
相关相似度 S r 被用于指出一个任意的图像块和目标模型中的部分有多大的相似。给定相关系数 θ ,如果 S r ( x 1 j , E ) ≥ θ ,那么图像块 x 1 j 被筛选进正包,否则将其从正包中删除。
除此之外,SMILE算法还通过计算正包中的示例和目标的相关相似度对示例概率进行加权来更准确地估计包的概率 p ( y i | X i ) 。本文算法设 i = 1 表示正包, i = 0 表示负包。具体公式如下:
p ( y = 1 | X 1 ) = ∑ j = 1 N 1 w 1 j p ( y 1 = 1 | x 1 j ) (5)
不同WMIL算法 [
而对于负包为负的概率,我们类似文献 [
p ( y = 0 | X 0 ) = ∑ j = 1 N 0 w ( 1 − p ( y 0 = 1 | x 0 j ) ) (6)
由于所有负示例都距离目标样本较远,因此这里w是一个任意给定的权重值。
类似文献 [
SMILE算法的具体算法流程如下:
输入:视频帧号 k,正负包 { X i , y i } i = 0 1 ,其中 X i = { x i 1 , x i 2 , ⋯ , x i N i } , y i ∈ { 0 , 1 } , i = 1 表示正包, i = 0 表示负包。
初始化:强分类器 H ( · ) = 0 。
1:选取一组图像块 X s = { x : ‖ d ( x ) − d t * ‖ < s } 并计算特征向量。
2:使用SMILE分类器来对 x ∈ X s 估计 p ( y | x ) 。
3:更新当前帧的目标位置 d t * = d ( arg max p ( y | x ) ) 。
4:选取两组正包 X 1 = { x : ‖ d ( x ) − d t * ‖ < γ } 和负包 X 0 = { x : γ < ‖ d ( x ) − d t * ‖ < β } 。
5:将包 X i 中每一个示例进行归一化,任意两个图像块 x i j 、 x i k 的相似度被计算为: S ( x i j , x i k ) = 0.5 ( N C C ( x i j , x i k ) + 1 ) 。
6:计算正包中每个示例的正样本最近邻相似度, S + ( x 1 j , E ) = max x 1 k ∈ E S ( x 1 j , x 1 k ) ,以及负样本最近邻相似度, S − ( x 1 j , E ) = max x 0 k ∈ E S ( x 1 j , x 0 k ) 。
7:计算正包中每个示例的相关相似度 S r ( x 1 j , E ) = S + S + + S − 。
8:如果 S r ( x 1 j , E ) ≥ θ ,则图像块 x 1 j 被筛选进新的正包,并计算它的特征向量。
9:利用筛选后的正包、负包中的示例更新弱分类器。
10:计算正包中每个样本的权重 w 1 j = S r ( x 1 j , E ) 。
11:计算示例概率 P ( y i | x i j ) = σ ( H ( x i j ) ) = 1 1 + e − H ( x i j ) 。
12:根据公式(5)和公式(6)计算加权的包概率。
13:得到 L = ∑ i ( log p ( y i | X i ) ) (包的对数似然函数),通过对它求最大值得到最优的弱分类器, h k * = arg max L ( H k − 1 + h ) 。
14:重复步骤11~13,直到选出的K个最优的弱分类器依次加入当前强分类器,即 H k ( x i j ) = H k − 1 ( x i j ) + h k * 。
输出:强分类器 H ( x i j ) = ∑ k = 1 K h k ( x i j ) 。
为了评估本文算法的识别能力,我们选用了七个公共视频数据集 [
实验中,我们对比本文的算法和五种新近提出的目标跟踪算法,包括:CT跟踪算法 [
数据集 | 帧数 | 图片大小 | 目标大小 | 主要挑战因素 |
---|---|---|---|---|
CarScale | 250 | 640 × 272 | 42 × 26 | 快速运动,比例变化,遮挡,平面内旋转 |
Crossing | 100 | 360 × 240 | 17 × 50 | 比例变化,变形,平面外旋转,快速运动 |
David3 | 250 | 640 × 480 | 35 × 131 | 遮挡,变形,平面外旋转 |
Deer | 60 | 704 × 400 | 95 × 65 | 快速运动,运动模糊,平面内旋转 |
Dog1 | 950 | 320 × 240 | 51 × 36 | 比例变化,平面外旋转,平面内旋转 |
Doll | 1500 | 400 × 300 | 32 × 73 | 光照变化,遮挡,平面内旋转,平面外旋转 |
FaceOcc1 | 500 | 352 × 288 | 144 × 162 | 遮挡 |
表1. 七个数据集的相关信息
在本文的算法中,我们将学习率参数设置为0.85。更新时正样本的搜索半径为4.0,负样本的搜索半径为4.0和6.0组成的圆环区域,采样个数为50个。样本框的大小为25 × 25像素的矩形。弱分类器池由150个弱分类器组成。弱分类器的个数设置为15。以上参数的设置是参照改进的MIL跟踪算法 [
我们按照常用的中心位置误差(CLE)的评估指标来测量每一帧的误差,该公式用于计算每帧跟踪结果和实际目标位置的中心点的误差(即欧式距离)。计算第i帧误差的公式如下:
CLE ( i ) = 1 T ∑ t = 1 T dist ( center i ( i ) , gt ( i ) ) (7)
其中,每帧跟踪结果和实际目标位置的中心位置。由此可以得出, CLE ( i ) 的值越小,算法的误差就越低。图3列出了六种算法(包括我们的算法)对应的每一帧中心位置的误差。本文的算法在绝大部分的数据集中都取得了较低较平滑的曲线,说明了我们跟踪器具有较好的精确性和稳定性。在数据集‘CarScale’中的150帧到250帧直接由于遮挡和比例变化等问题使得其他跟踪器出现了严重的漂移现象,曲线出现了急剧上升(参见图3中的CarScale)。
但是我们的跟踪器反应较良好,所以在曲线上变化不大。在数据集‘David3’中100帧到200帧直接由于树木的遮挡和目标外观的变形和平面外旋转,使得大部分跟踪器出现了程度不一的漂移现象。而我们的跟踪器则表现良好,因此在曲线上表现得低稳平滑。数据集‘Deer’目标快速运动,部分跟踪器发生了严重漂移现象,而我们的跟踪器紧跟目标,在曲线上表现良好。表2给出了各个算法对应各个测试集的平均中心位置误差。对于数据集‘CarScale’、‘Crossing’、‘David3’、‘Deer’,本文的跟踪器都取得了最小的CLE误差,在其他的三个数据集上的误差也接近最少。本文提出的算法得到了最小的平均误差,并且明显优于第二名。这说明本文的算法引入相关相似度来筛选和加权是有效、可行的,是可以明显提高跟踪性能。
图3. 各算法对应的每一帧中心位置的误差图。(a) CarScale数据集;(b) Crossing数据集;(c) David3数据集;(d) Deer数据集;(e) Dog1数据集;(f) Doll数据集;(g) FaceOcc1数据集
数据集 | CSK | Online Boosting | CT | Semi Boosting | MIL | SMILE |
---|---|---|---|---|---|---|
CarScale | 80.70 | 40.97 | 25.63 | 183.24 | 37.74 | 18.87 |
Crossing | 8.41 | 6.04 | 4.08 | 4.14 | 11.44 | 3.72 |
David3 | 54.01 | 91.08 | 89.25 | 232.59 | 67.40 | 22.30 |
Deer | 15.31 | 16.50 | 240.20 | 117.82 | 16.92 | 10.04 |
Dog1 | 3.74 | 27.34 | 7.27 | 61.73 | 4.90 | 5.87 |
Doll | 9.61 | 13.47 | 14.55 | 179.36 | 8.22 | 11.14 |
FaceOcc1 | 11.08 | 46.45 | 18.13 | 35.64 | 24.94 | 19.95 |
表2. 各算法对应测试集的平均中心位置误差,粗体表示最佳性能,斜体表示次佳
我们还采用精度 [
precision ( τ ) = 1 T ∑ t = 1 T [ 1 R ∑ r = 1 R δ ( dist ( center r ( i ) , gt ( i ) ) ≤ τ ) ] (8)
其中 τ 表示阈值。 dist ( . , . ) ≤ τ , δ ( . ) = 1 ,否则 δ ( . ) = 0 。图4可以很直观地看出各个算法在阈值 τ ∈ [ 0 , 100 ] 所对应的精度,可以看出我们的跟踪器在绝大部分的数据集中都显现的较为笔直。并且随着阈值的变化在大部分数据集中都率先达到1或者与第一名相差不小,说明我们的跟踪器在精度上也表现良好,在数据集‘CarScale’、‘David3’、‘Deer’上表现尤为明显。‘CarScale’中随着阈值的变化只有我们的跟踪器能达到精度1,而其他跟踪器都无法达到精度1。‘Crossing’和‘Deer’中随着阈值的变化我们的跟踪器对应曲线都是处于第一名或者与第一名相差甚微。‘David3’中也是只有我们的跟踪器达到精度1并且在阈值1~50之内。
图4. 各算法随阈值变化的精度图。(a) CarScale数据集;(b) Crossing数据集;(c) David3数据集;(d) Deer数据集;(e) Dog1数据集;(f) Doll数据集;(g) FaceOcc1数据集
在CarScale数据集中包括快速运动、比例变化和遮挡三种挑战因素(测试结果参见图5(a))。在那些不出现遮挡以及小尺度变化的情况下,各算法的跟踪效果都表现良好(参见图5(a)中的#55帧)。然而在目标尺度发生较小变化之后,Semi Boosting算法丢失目标(参见图5(a)中的#133帧)。紧接着,在遇到目标遮挡时,MIL和Semi Boosting算法的表现不佳,而本文提出的SMILE算法在目标遮挡后依旧有较好的表现(参见图5(a)中#163的帧跟踪结果)。CSK、MIL和SemiBoosting算法在经过尺度发生较大变化之后都出现严重漂移问题,而Boosting算法跟踪到的目标偏离目标的中心较远;相反,本文的SMILE算法在快速运动的数据集中表现得更加稳定和健壮(参见图5(a)中的#249帧)。Crossing数据集不仅包括快速运动还有比例变化(测试结果参见图5(b))。MIL算法从#86帧起逐渐远离目标。CT算法在该数据集的最后也出现较为严重的漂移(参见图5(b)#120帧)。Online Boosting、Semi Boosting和CSK算法可以跟踪到目标,但不是最准确的。本文的SMILE算法对比其他算法在比例变化上有较为出色的表现。在David3中,当目标被一颗大树遮挡时,Online-Boosting和改进的MIL算法开始漂移(参见图5(c)中的#86帧),Semi Boosting算法甚至出现跟踪失败的结果(参见图5(c)中的#175帧和#252帧)。CSK和CT算法虽然能应对遮挡的情况,但是当数据集加入平面外旋转的挑战因素后,两个算法都受到严重影响(参见图5(c)中的#252帧)。综上所述,本文的SMILE算法在该数据集中的表现比较稳定。由于快速移动以及运动模糊使得Deer数据集十分具有挑战性,CT算法均出现了严重漂移。CSK、Semi Boosting、改进的MIL算法受快速运动的影响甚小,而当目标出现运动模糊时,CSK、Semi Boost-ing和改进的MIL算法均受到不同程度的影响,其中改进的MIL算法出现较为严重的漂移。相反本文的SMILE算法跟踪效果非常稳定(参见图5(d)中的#41帧)。
在FaceOcc1中,由于杂志书的部分或者完全遮挡导致目标跟踪容易发生漂移。CSK、Semi Boosting和Online Boosting算法都非常容易受到杂志书的影响而出现漂移现象。CT、改进MIL算法和本文的SMILE算法适用于存在遮挡物的场景下的跟踪。
图5. CSK、Online Boosting、CT、Semi Boosting、MIL和我们提出的SMILE算法在七个具有挑战性的数据集上的目标跟踪结果。(a) CarScale数据集;(b) Crossing数据集;(c) David3数据集;(d) Deer数据集;(e) Dog1数据集;(f) Doll数据集;(g) FaceOcc1数据集
本文提出了一种新的基于相关相似度的在线多示例学习目标跟踪算法SMILE。该算法采用了相关相似度的度量指标对传统的在线MIL目标跟踪算法进行改进,通过相关相似度对正包中的示例进行筛选,使得用于更新分类器的正包中的示例更加准确;同时,SMILE算法使用相关相似度来计算样本的权重,从而对示例概率进行加权,使得分类器的性能得以提升,从而目标跟踪的鲁棒性也得到了提高。通过实验可以发现,改进后的SMILE算法具有更好的目标跟踪性能,在一定程度上提高了目标跟踪的准确性和精度。
本文由国家自然科学基金(61503315),福建省自然科学基金(2018J01576),国家级大学生创新创业训练计划(40018025)资助。
陈 敏,张清华,陈晓森,陈江湖,谢思齐,陈 思. 基于相关相似度的在线多示例学习目标跟踪算法Relative Similarity Based Online Multiple In-stance Learning Algorithm in Object Track-ing[J]. 计算机科学与应用, 2019, 09(02): 393-405. https://doi.org/10.12677/CSA.2019.92044