结合BRISK与区域预估的改进长时跟踪算法 下载: 770次
1 引言
近年来,随着对大数据领域研究的深入,机器视觉在智能交通、刑侦、**等领域得到了广泛应用。目标跟踪作为机器视觉的一部分,对其研究的程度直接影响到机器视觉的发展。目标跟踪主要分为短时跟踪和长时跟踪[1-2]两大类,其区别在于被跟踪的目标从视野中消失后,当再次出现在视野中时,短时跟踪无法实现继续跟踪,而长时跟踪能够做到。这也是长时跟踪受到广大学者推崇的原因之一,但是长时跟踪在跟踪过程中容易受到外界和内部的干扰[3],因此,长时跟踪是一个极具难度与深度的研究热点。
长时跟踪算法中最具代表性的是由Kalal等学者提出的跟踪学习检测(TLD)算法,由跟踪、学习和检测三个部分组成[4-5]。由于在线学习模块的存在,使得TLD算法能够在目标从视野中消失、重新进入视野时不会因为发生漂移而丢失目标。另外,三个模块的相互配合使得算法表现出很好的稳健性,能够适应复杂的外界环境的变化,但是,其在算法的稳健性、准确性和运行效率方面仍然有很大的提升空间,因此,许多学者对该算法进行了广泛研究,以期能够使算法性能得到更好的提升。焦蓬斐等[6]在传统TLD算法的基础上,综合上一帧的跟踪结果与多新息卡尔曼滤波器的预估值,生成目标的当前位置,使得算法的跟踪误差减小;肖庆国等[7]使用Mean-Shift算法替换传统TLD算法中跟踪器部分的光流跟踪算法,使运算效率平均提升约13.9%;孙保基等[8]考虑到传统TLD算法中使用的普通像素点不能很好地描述目标特征,采用角点增强的方法来进行改进,在跟踪器中引入了Shi-Tomas角点作为跟踪特征点,解决了目标在抖动或形变情况下跟踪失败的问题;然而,这些改进大部分都是针对TLD算法三个模块中的其中一个进行的,如果能够针对三个模块或者其中两个进行同时改进,那么算法的跟踪精度和运行效率会得到进一步的改善。
本文将从跟踪器和检测器两方面来改进TLD算法。首先,在跟踪器部分引入二进制稳健不变可扩展关键点(BRISK)特征点,根据检测得到的BRISK特征点的数量来动态调整均匀像素点的数量,两种点组合为跟踪点集,用于跟踪器对目标的跟踪,这种改进方法能够解决传统算法计算量大的问题,同时提高了跟踪的稳健性;其次,在检测器部分引入卡尔曼滤波器与马尔可夫模型方向预测器,使得最终送入检测器的子图像块的数量减少,既解决了传统TLD算法中检测整幅图像带来的运行时间长的问题,也增强了对相似目标的辨识能力。
2 改进TLD算法框架
改进后的TLD算法架构如
3 TLD跟踪器部分
3.1 传统TLD跟踪模块
传统TLD跟踪算法的跟踪器部分使用的是改进后的中值流跟踪方法,在其中引入了失效检测算法[9],其原理为:在前一刻的目标框中均匀选取10×10个普通像素点作为跟踪的特征点,在当前时刻的图像中寻找这些像素点的相对位置,并对其相对位置变化大小进行排序,从而获取位置变化的中值,将位置变化小于这个中值的点保留,用于对下一时刻目标的跟踪,如此反复,将跟踪一直进行下去。
3.2 BRISK特征点检测
目标跟踪的关键是用于跟踪的点能否被正确高效地提取。BRISK特征点检测算法通过图像金字塔解决了尺度不变性的问题,其检测过程可以概括为三部分:首先,在尺度空间中,采用加速分割测试特征(FAST)算子获取稳定的极值点;其次,对其进行特征点描述;最后,通过汉明距离计算公式,实现特征点的匹配;之所以采用BRISK特征点,而没有采用尺度不变特征变换(SIFT)或者加速健壮特征(SURF),这是因为BRISK特征点的检测和匹配速度相对后两种而言快很多倍[10]。
3.3 对TLD跟踪器部分的改进
如
式中
图 2. 用于跟踪的点的布局策略。(a)传统TLD算法的跟踪点;(b)~(d)均匀点与BRISK特征点的结合
Fig. 2. Layout strategy of tracking points. (a) Tracking points used by traditional TLD algorithms; (b)-(d) combination of uniform points and BRISK feature points
4 TLD检测器部分
4.1 传统TLD检测模块
传统的TLD检测器部分是通过设置一个扫描窗口来不断地扫描输入图像,判断每个图像块中是否有目标出现,假设扫描窗口的参数设置为:缩放百分比的步进长度系数为1.2,水平方向和垂直方向步进长度分别是图片长和宽的10%,最小检测窗口大小为20 pixel,如果输入图像尺寸为320 pixel×240 pixel,检测器会产生约5万个图像块用于检测是否有目标存在,这必然会导致其运行效率低下;因此,在其中引入了分类器,分别为:方差分类器、集合分类器和最邻近分类器[11-14],这样就在一定程度上使得运行速度得到提升,但是,其检测速度总体表现仍然较慢。
4.2 卡尔曼滤波预估目标检测区域
卡尔曼滤波利用线性系统状态方程,通过系统的输入来获取观测数据,能够对系统状态进行最优估计,表现出无偏、稳定、最优的特点[6,13]。研究采用卡尔曼滤波来预估当前帧中被跟踪目标的中心位置,进而计算出算法需要检测的目标区域。卡尔曼滤波的数学模型为:
式中
采用视频序列中被跟踪目标的中心位置来生成系统的状态量以及观测值,公式如下:
式中
4.3 马尔可夫方向预测目标移动方向
视频序列中目标的移动可以分解为水平和垂直两个方向,分别在两个方向上使用马尔可夫模型来估计目标的移动方向。以水平方向为例,假设模型当前帧的预测状态仅与上一帧的状态有关,其状态空间定义为{0为左,1为右},那么,
式中
假设
概率大的方向即为目标在
因为状态矩阵
式中
算法根据上一刻被跟踪目标的位置,并结合马尔可夫模型估计获得的目标现在的移动方向,即可确定目标现在可能出现的位置以及需要加入到检测器的图像块,
5 实验结果与分析
为了更好地论证研究对TLD算法的改进所带来的性能提升,下面将从3个方面来全面评估其跟踪表现,分别为:
1) 跟踪成功率,是指成功跟踪的图像数目占总数的百分比,成功跟踪的判别依据是人工标记的目标位置和跟踪得到的位置之间的重合部分大于一半[15-16]。
2) 中心位置误差,是指目标真实的和算法计算得到的位置中心的平均欧式距离[17-18]。
3) 运行速度,是指算法平均每秒对不同视频序列处理的图像数目[17]。
5.1 运行环境
算法运行环境为:中央处理器(CPU)为Intel core i5, 2.30 GHz、内存为8 GB、操作系统为64位Win7的计算机,Matlab版本为Matlab 7.10.0.499 (R2010a)。
5.2 跟踪表现评估
研究将传统TLD方法、文献[ 10]方法、Struck算法[19]以及所提方法分别应用于5组测试视频序列,其中,文献[ 10]方法采用的是引入固定数量的BRISK特征点对TLD方法进行改进,Struck方法是结构化输出跟踪的缩写。通过对比这3种方法的上述3种评价指标来验证所提改进方法的优势。
表 1. 不同算法的跟踪成功率对比
Table 1. Comparison of tracking success rate of different algorithms%
|
表 2. 不同算法的跟踪中心位置精度对比
Table 2. Comparison of tracking center position precision of different algorithms
|
表 3. 不同算法的跟踪运行速度对比
Table 3. Comparison of tracking speed of different algorithmsframe/s
|
图 5. 不同视频序列的部分测试结果。(a)货车;(b)行人;(c)跳跃;(d)客车;(e)摩托车
Fig. 5. Results of part test of different video sequences. (a) Truck; (b) pedestrian; (c) jumper; (d) bus; (e) motorcycle
6 结论
本文同时对TLD算法的跟踪和检测两部分进行改进。首先,在跟踪器中使用BRISK特征点替代原来用于跟踪的部分普通像素点,不但使得用于跟踪的总点数下降,而且在降低了跟踪器运算时间的同时使算法稳健性得到提升;其次,在检测器中同时加入卡尔曼滤波和马尔可夫方向预测器,使得用于检测目标的图像块数目缩减,相比于传统TLD算法,所提改进算法的跟踪精度和运行效率分别提高约64.4%和39.6%,同时解决了目标被遮挡以及在出现相似目标情况下跟踪失败的情况。下一步的研究可以考虑同时对TLD算法的三个部分进行改进。
[1] 董永坤, 王春香, 薛林继, 等. 基于TLD框架的行人检测和跟踪[J]. 华中科技大学学报(自然科学版), 2013, 41(s1): 226-228.
Dong Y K, Wang C X, Xue L J, et al. Pedestrian detection and tracking based on TLD framework[J]. Journal of Huazhong University of Science and Technology (Natural Science Edition), 2013, 41(s1): 226-228.
[2] Kalal Z, Mikolajczyk K, Matas J. Tracking-learning-detection[J]. IEEE Transactions on Pattern Analysis & Machine Intelligence, 2012, 34(7): 1409-1422.
[3] 秦飞, 汪荣贵, 梁启香, 等. 基于关键特征点的改进TLD目标跟踪算法研究[J]. 计算机工程与应用, 2016, 52(4): 181-187.
Qin F, Wang R G, Liang Q X, et al. A Improved TLD target tracking algorithm based on key feature points[J]. Computer Engineering and Applications, 2016, 52(4): 181-187.
[4] 易诗, 林凡强, 周姝颖. 基于改进TLD的自动目标跟踪方法[J]. 重庆邮电大学学报(自然科学版), 2016, 28(6): 892-896.
Yi S, Lin F Q, Zhou S Y. Automatic tracking method based on improved TLD[J]. Journal of Chongqing University of Posts and Telecommunications (Natural Science Edition), 2016, 28(6): 892-896.
[5] 金哲, 刘传才. 加速的TLD算法及其在多目标跟踪中的应用[J]. 计算机系统应用, 2016, 25(6): 196-201.
Jin Z, Liu C C. Accelerated TLD algorithm and its application in multiple target tracking[J]. Computer System and Applications, 2016, 25(6): 196-201.
[6] 焦蓬斐, 秦品乐, 苗启广, 等. 基于多新息Kalman滤波的TLD改进算法[J]. 数据采集与处理, 2016, 31(3): 592-598.
Jiao P F, Qin P L, Miao Q G, et al. Improved TLD algorithm based on multi-innovation Kalman filter[J]. Journal of Data Acquisition and Processing, 2016, 31(3): 592-598.
[7] 肖庆国, 叶庆卫, 周宇, 等. 基于Mean-Shift优化的TLD视频长时间跟踪算法[J]. 计算机应用研究, 2015, 32(3): 925-928.
Xiao Q G, Ye Q W, Zhou Y, et al. Long-time video tracking algorithm of optimized TLD based on Mean-Shife[J]. Computer Application Research, 2015, 32(3): 925-928.
[8] 孙保基, 张葆, 宋策, 等. 基于角点增强改进的TLD目标跟踪算法[J]. 液晶与显示, 2016, 31(9): 921-928.
[9] Shi H, Lin Z, Tang W, et al. A robust hand tracking approach based on modified tracking-learning-detection algorithm[J]. Lecture Notes in Electrical Engineering, 2014, 308: 9-15.
[10] 祝贤坦, 石繁槐. 基于BRISK特征点改进的跟踪学习检测方法[J]. 计算机工程, 2017, 43(2): 268-272.
Zhu X T, Shi F H. Improved tracking learning detection method based on BRISK keypoints[J]. Computer Engineering, 2017, 43(2): 268-272.
[11] 孟煜, 张斌. 检测区域自适应调整的TLD多目标跟踪算法[J]. 东北大学学报(自然科学版), 2017, 38(2): 214-218.
Meng Y, Zhang B. A multiple-object tracking algorithm using TLD-based adaptive adjustment of detection areas[J]. Journal of Northeastern University (Natural Science Edition), 2017, 38(2): 214-218.
[12] 陆兵, 顾苏杭. 基于隐马尔可夫模型和分块特征匹配的目标跟踪算法[J]. 激光与光电子学进展, 2017, 54(9): 091006.
[13] 周鑫, 钱秋朦, 叶永强, 等. 改进后的TLD视频目标跟踪方法[J]. 中国图象图形学报, 2013, 18(9): 1115-1123.
Zhou X, Qian Q M, Ye Y Q, et al. Improved TLD visual target tracking algorithm[J]. Journal of Image and Graphics, 2013, 18(9): 1115-1123.
[14] 蔡荣太, 朱鹏. 基于马尔科夫随机场的多特征人脸跟踪算法[J]. 激光与光电子学进展, 2017, 54(2): 021002.
[16] 周治平, 周明珠, 李文慧. 基于混合粒子滤波和稀疏表示的目标跟踪算法[J]. 模式识别与人工智能, 2016, 29(1): 22-30.
Kang Z, Landry S J. Using scanpaths as a learning method for a conflict detection task of multiple target tracking[J]. Pattern Recognition and Artificial Intelligence, 2014, 56(6): 1150-1162.
[17] 张博, 龙慧. 基于图像签名算法的视觉目标跟踪算法[J]. 激光与光电子学进展, 2017, 54(9): 091504.
[19] HareS, SaffariA, Torr P H S. Struck:structured output tracking with kernels[C]. IEEE International Conference on Computer Vision, 2012: 263- 270.
Article Outline
康海林, 赵婷, 周骅, 刘桥, 张正平. 结合BRISK与区域预估的改进长时跟踪算法[J]. 激光与光电子学进展, 2018, 55(6): 061503. Hailin Kang, Ting Zhao, Hua Zhou, Qiao Liu, Zhengping Zhang. Improved Long Time Tracking Algorithm by Combining BRISK and Region Estimation[J]. Laser & Optoelectronics Progress, 2018, 55(6): 061503.