一种基于CNN—AE特征提取的目标跟踪方法
2018-09-04殷鹤楠佟国香
殷鹤楠 佟国香
摘 要:针对视觉跟踪中运动目标的鲁棒性问题,提出一种基于卷积神经网络结合稀疏自动编码器的特征提取方法进行图像目标跟踪。该方法首先将大量有标注数据集输入到卷积神经网络进行预训练,然后使用这些卷积特征无监督的训练稀疏自编码器得到稀疏特征,并利用该特征对目标进行描述。最后结合两种经典的跟踪方法,采用Meanshift与卡尔曼滤波对目标进行实时跟踪。结果表明,利用深度学习模型代替以往人工提取特征的方式能够更好地描述目标模型,对光照变化、尺度变化、遮挡等都具有良好的适应性,以及较好的实时性。
关键词:目标跟踪;卷积神经网络;稀疏自编码器;特征提取
DOI:10.11907/rjdk.173023
中图分类号:TP301
文献标识码:A 文章编号:1672-7800(2018)006-0022-05
Abstract:In this paper, we propose a new method for tracking the moving object in vision tracking based on CNN-AE feature extraction. Firstly, a large number of labeled data sets are inputted to the convolution neural network for pre-training. Then these convolution features are obtained from unsupervised training on sparse self-encoders. Thereafter, the obtained feature the target. Finally, the two classical tracking methods including Meanshift and Kalman filter are used to track the targets in real time. The results show that this method can better describe the target model, and it has good adaptability to illumination change, scale change, occlusion and so on, and also has better real-time performance.
Key Words:target tracking; convolutional neural network; sparse automatic encoder; feature extraction
0 引言
隨着计算机视觉技术的发展,视觉跟踪在各个领域应用广泛,尤其在人机交互中,其具有以人为中心、简单、高效、人性化等特点,是人机交互中的重要组成部分。特征是计算机视觉研究过程中的重点,寻找好的特征表示目标是一项非常重要的任务。优秀的特征应该能够有效抵挡目标形变、尺度、旋转等对其造成的影响,以往许多表现性良好的特征提取方法都是由人工设计,如SIFT[1-2]方法。针对不同问题,也可以设计不同的特征提取方法,但是人工提取特征也有许多缺点,如设计周期长,需要了解其它行业知识等,有时运气和经验也能影响提取的特征性能。
近年来,深度神经网络成为人们关注的热点,并且在特征提取中取得了非常好的效果。深度神经网络能够打破传统人工提取特征的复杂过程,利用计算机自动学习并提取所需特征。深度神经网络模型有多种层次结构,其中应用最广泛的是卷积神经网络(CNN),其是为识别二维形状而设计的一个多层感知器,该网络结构对平移、比例缩放、倾斜或共他形式的变形具有高度不变性,因此在人脸检测[3]、文本分析[4]、语音识别[5]等各方面都表现优异。并且近年来,一些深度模型也开始应用于其它领域。冯鑫等[6]将深度学习方法运用在红外与可见光融合方面,提出一种基于深度模型分割的可见光融合算法,有效克服了红外与可见光图像融合时受噪声等因素干扰导致的轮廓不鲜明、对比度低的缺点。
基于目标特征的跟踪方法是视觉跟踪中的一类重要方法,通过目标描述、特征提取、运动估计等步骤预测下一个视频帧中的目标位置。目标跟踪最直接的方法是模板匹配—归一化互相关系数[7]。每个候选样本窗口均匀分布在前一帧目标周围,使用归一化互相关系数进行对比,分数最高的被选为新的位置。Meanshift[8-10]是著名的跟踪算法,其利用直方图匹配代替像素空间信息。该方法对目标自由基变化有较好的适应性,一般使用颜色直方图对目标进行描述。近几年也不断有新的跟踪算法出现,如TLD[11]算法,该算法也引入了一种在线学习方法,对目标模型和特征不断进行更新,从而使算法更加稳定,在目标跟踪过程中可不受遮挡、形变等问题影响;高文等[12]提出一种反馈式学习方法,提高了算法在目标跟踪问题中的判别能力和容错能力,对于目标的各种形变都有较好的适应性。但这些跟踪方法在描述目标模型时都需要人工提取特征,费时费力。文献[13]中介绍了一种基于CNN的目标跟踪方法,提出一种新的CNN结构,从而将CNN应用于图像跟踪领域,并且提高了跟踪精度与速度。通过与其它跟踪算法的对比,该方法精确度突出,但是实时性较差。将特征使用稀疏表示可以降低计算复杂度,田猛等[14]提出基于稀疏表示与先验概率的方法对目标进行跟踪,有效解决了噪声、旋转、遮挡等复杂背景下的目标问题。
为了解决在视觉跟踪领域特征提取不便的问题,本文提出一种卷积神经网络与稀疏自动编码器模型(CNN-AE),并在Meanshift的卡尔曼滤波框架下实现目标跟踪。本文与其它算法的不同点在于:在图像预处理后,利用卷积神经网络模型提取目标特征,将得到的特征输入稀疏自动编码器进行无监督学习,减少特征冗余。跟踪阶段采用传统跟踪方法Meanshift和卡尔曼滤波对运动目标进行跟踪和预测,而不继续采用网络模型,以提高实时性。经过分析,本文算法的跟踪精度和速度都优于3种主流目标跟踪模型。
1 CNN-AE深度特征提取
1.1 卷积神经网络
卷积神经网络由一个或多个卷积层和顶端的全连通层组成,同时包括关联权重和池化层。该结构使卷积神经网络能够更好地利用数据二维结构,因此在语音和图像识别方面有较好的结果。图1为卷积神经网络的基本结构,其由输入层、卷积层、池化层、全连接层以及输出层组成。
本文提出的卷积神经网络在提取目标图像抽象特征时,主要采用3类处理层:C层卷积滤波层、S层池化/下采样层、N层非线性层,各层具体实现如下:
1.2 稀疏自编码器
在特征提取阶段,使用卷积神经网络模型学习图像中隐藏的特征,之后本文使用一种被称为稀疏自编码器的神经网络模型降低特征维度。此模型具有对称特质,如图3所示,其主要使用无监督方法进一步学习数据集特征。
该模型一般由编码和解码两部分组成。在编码模块中,输入由非线性激活函数映射到隐藏层,激活函数如下:
其中W为权重,b为偏执。激活函数为sigmod函数。在解码模块中,隐藏层同样可采用非线性激活函数将其映射到输出层,表达式和输入层类似,输出的是卷积神经网络训练得出的特征向量。
为了求出网络参数的最优解,可以最小化损失函数,公式如下:
式(4)中的第一项表示所有n个训练样本的重建误差,通过计算p和p-j两个分布之间的KL距离强制系数约束。这里p是指隐藏单元的目标激活函数,p= 1n∑n-i=1[h-j]-i 是所有示例中j个隐藏节点的平均激活函数,[h-j]-i是第i个示例中第j个隐藏节点的激活函数。为了提高泛化能力、减少过度拟合,可以采取一些解决方案。例如,可以将权重衰减惩罚项加入到损失函数中,也可采用类似去噪自编码器在输入中加入噪声,或者使用舍弃法[15]。
本文使用舍弃方法优化网络模型,该方法的主要思想是,在训练中删除一部分隐藏节点,即将某节点直接从网络中移除。节点选择一般是随机的,剩下节点将被组成一个规模更小的网络。例如,对于上述稀疏自编码器,舍弃方法如下:
其中*代表矩陣点积,r是伯努利独立分布向量。Bernoulli为伯努利分布,p一般设置为0.5。在测试时,权重被设置为pW,并且网络中不包含被舍弃的节点。
为了优化式(6)中的损失函数,首先初始化常数向量θ为非常接近于0的实数。然后可以使用一种被称为L-BFGS的二阶优化方法,它是基于BFGS更新过程的准牛顿法。为了减少参数数量,可以共享编码层与解码层的权值,即W(d)=W(e)T。
值得注意的是,可以建立更多隐藏层组成一个深度学习框架,这里几个AE组成的深度学习框架被称作栈式稀疏自编码器。与其它深度网络相同,学习到的特征可作为输入送到类似支持向量机的线性分类器中,或者在隐藏层的顶部添加logistic回归层进行多分类任务。由于本文工作为图像跟踪,所以不加入分类模型,而是与后续跟踪算法结合,达到目标跟踪的目的。
2 目标跟踪方法
2.1 MeanShift目标跟踪
2.2 目标运动估计
卡尔曼滤波是一种利用线性系统方程,通过系统输入输出观测,对目标状态序列作最小方差估计的方法。由于其并不会消耗太大的计算量,所以能达到实时计算的效果。本文使用卡尔曼滤波改进目标跟踪,达到对目标运动的估计。卡尔曼滤波线性系统方程分别如式(13)和式(14)所示:
在Meanshift目标跟踪方法中,巴氏系数会评估目标和模型相似性。当跟踪目标被其它物体或背景堵塞时,巴氏系数会动态降低。因此,通过定义T-h判定是否有堵塞发生。
根据巴氏系数,卡尔曼滤波系统能够自动估计目标中心位置。具体算法流程如下:
T是一个很大的常数,所以卡尔曼滤波的后验估计约等于其预测值,并且λ∈[0,1]为遗忘因子。λ越小,则σ2-1(t-1)和σ2-2(t)更新越快。
结合深度神经网络特征提取,本文算法步骤如图4所示,首先离线训练卷积神经网络,对数据集进行预训练,然后利用稀疏自编码器对得到的特征进行无监督学习,最后利用提取的特征对目标进行描述。利用该特征向量,使用卡尔曼滤波改进的Meanshift算法对目标进行跟踪定位。
3 实验结果及分析
为验证本文算法有效性,使用VOC2010数据集作为离线训练样本集,为了与MIL[16]、VTD[17]、IVT[18]3种算法进行比较,将所有训练图像预先转换成灰度图,模板大小为32×32。实验环境:CPU为Intel Core-i7 2630QM 2GHz的PC机,内存16GB;显存为2G;软件环境为VC2015+OpenCV3.0。
实验首先对数据集进行特征提取,首先使用卷积神经网络对视频流进行有标注训练,得到特征如图5第一部分所示。由于特征量仍然较大,所以本文提出采用稀疏自编码器对其进行稀疏化,以减小后续目标运动估计算法的计算量。
目标运动估计方面分别从遮挡时跟踪效果、跟踪误差平均值以及算法效率3方面与其它跟踪算法进行比较。由于传统的Meanshift算法采用颜色直方图方式描述目标模型,而本文算法采用深度神经网络提取目标特征,所以本文算法对目标跟踪有一定精确度。在遮挡方面,由于本文使用的是线下特征训练方法,对于遮挡问题有一定缺陷,所以结合了卡尔曼滤波方法,对目标位置进行预估,使遮挡时的跟踪效果有显著提高。当物体与运动速度过快时,也能有效地预测出位置。
实验效果如图6所示(见封二彩图),本文选用几个常用的跟踪算法与本文算法作比较,可明显看出本文算法精确度较高。在跟踪过程中,由于特征丰富,所以无论形变还是旋转都不会影响算法跟踪效果。遮挡方面,虽然加入了卡尔曼滤波,由于本模型没有加入在线更新,所以对于遮挡的目标运动估计仍有所欠缺,但是加入在线更新的算法后由于计算量增加会使帧率有所下降,所以本文算法是一种折中。
表1中对几种跟踪算法进行比较,本文算法跟踪其中某些视频序列的成功率较高,平均值相比于其它算法也具有一定优势。本文算法的视频跟踪速度稳定在大约12fps,符合一般实时视频跟踪要求。
本文选取5个视频序列进行跟踪分析,分别为:公路路况、直升机、士兵、赛车、老虎。由于每个视频序列的帧数不同,所以本文平均截取每个视频序列中的7幅图进行展示。首先在路况跟踪方面,路况是生活中最为常见的一种场景,在行车记录、高速公路监控等领域有着广泛应用。本文对前方行车的跟踪过程中,视频序列最开始由于变化较小,所以各个算法都非常稳定;随着路况变得复杂,视频序列中出现模糊,导致特征单一类的算法出现跟踪失败,而特征丰富与在线学习类算法跟踪效果良好;在跟踪最后阶段,路况回稳,特征单一算法跟踪丢失,本文算法跟踪效果回稳。
其次,直升机视频序列的特点是背景稳定,但是目标特征变化较大,所以对特征模板在线更新度要求较高。在视频序列开始所有算法表现良好,跟踪稳定;随着直升机目标远离,基于颜色模型的算法跟踪失败,本文算法表现良好;在视频序列最后,直升機目标几乎消失在视频序列中,所有算法误差率都较大。
士兵序列在本文中跟踪难度最高,因为士兵特征几乎与背景相同,所以需要建立复杂的目标模型才能对其进行跟踪。在视频序列前半部分,由于本文算法使用深度神经网络提取了大量特征,对目标模型的描述非常丰富,所以表现良好,其它算法的误差都慢慢升高。随着目标逐渐凸显,部分算法出现回稳。
赛车视频序列中,目标颜色模型与背景相似,并且有尺度变化,所以单一颜色模型无法很好地进行运动估计。在视频前半部分,各算法表现良好,随着赛车的角度变化,使用颜色模型的算法误差增加,随后跟踪失败。由于本文算法相当于提取了颜色、尺度等多种类型特征,所以跟踪效果良好。
最后老虎视频序列由于存在遮挡情况,预测效果较差的算法无法持续进行跟踪,在遮挡部分会失败。本文算法提取了丰富的目标特征,并且加入了卡尔曼滤波进行预测补偿,在遮挡刚刚开始时跟踪稳定,但在目标几乎完全被遮挡时中心点误差急剧增大,导致跟踪失败。
通过上述分析可以得出,本文算法由于使用了深度特征提取方式,所以对目标模型的描述极其丰富,对目标的旋转、缩放、平移、光照变化、仿射变换等状况跟踪都很稳定,并且在特征提取后使用稀疏自动编码器对特征向量进行压缩,相对于其它深度特征提取模型其帧率更高。由于本文为线下训练方式,没有良好的在线更新,所以在跟踪算法中加入了卡尔曼滤波,可以对目标运动进行预测,保证不会跟踪丢失。在同一平台上本文算法对与另外3种跟踪算法进行比较,如表1所示,其中前面数字代表成功率,后面数字代表中心点误差。
4 结语
本文提出CNN-AE方法对图像进行特征提取,并采用卡尔曼滤波的Meanshift视频运动目标跟踪算法对目标运动进行估计。与传统算法相比,该算法具有明显优势。首先,由于深度神经网络运算量较大,目标跟踪又对实时性要求较高,所以选择较小的数据库进行特征提取;然后使用卷积神经网络自动提取目标模型特征,取代了传统手工提取特征的方法,大大降低了开发周期;最后使用将两种传统目标跟踪算法相结合的方式对模型进行跟踪定位,两种算法具有各自的优势,并且速度都很快,但由于以往模型不够准确,所以精度不高。在结合深度提取特征之后,该跟踪方法的跟踪精度得到显著提升。实验结果表明,该算法可以进行目标跟踪定位,且具有较好的鲁棒性。但深度神经网络的引入增加了算法复杂性,若减少数据量又会降低精度,所以今后需对算法作进一步优化,使算法更加简洁,并增强实时性。
参考文献:
[1] LOWE D G, LOWE D G. Distinctive image features from scale-invariant keypoints[J]. International Journal of Computer Vision, 2004,60(2):91-110.
[2] ZHOU H, YUAN Y, SHI C. Object tracking using SIFT features and mean shift[J]. Computer Vision & Image Understanding, 2009,113(3):345-352.
[3] CHEN Y N, HAN C C, WANG C T, et al. A CNN-based face detector with a simple feature map and a coarse-to-fine classifier- withdrawn[J]. IEEE Transactions on Pattern Analysis & Machine Intelligence, 2009,99:1.
[4] 杜昌顺,黄磊.分段卷积神经网络在文本情感分析中的应用[J].计算机工程与科学,2017,39(1):173-179.
[5] 张晴晴,刘勇,潘接林,等.基于卷积神经网络的连续语音识别[J].北京科技大学学报,2015,37(9):1212-1217.
[6] 冯鑫,李川,胡开群.基于深度玻尔兹曼模型的红外与可见光图像融合[J].物理学报,2014,63(18):211-219.
[7] HANEBECK U D. Template matching using fast normalized cross correlation[C].Aerospace/Defense Sensing, Simulation, and Controls. International Society for Optics and Photonics, 2001:95-102.
[8] CHANG F L, LIU X. Target tracking algorithm based on meanshift and Kalmanfilter[J]. Computer Engineering & Applications, 2007,43(12):50-52.
[9] SALHI A. Object tracking system usingcamshift, meanshift and Kalmanfilter[J]. World Academy of Science Engineering & Technology, 2012,6:674.
[10] JIAN S. A fast meanshift algorithm-based target tracking system[J]. Sensors, 2012,12(6):8218.
[11] KALAL Z, MIKOLAJCZYK K, MATAS J. Tracking-learning-detection[J]. IEEE Transactions on Pattern Analysis & Machine Intelligence, 2012,34(7):1409.
[12] 高文,湯洋,朱明.目标跟踪中目标模型更新问题的半监督学习算法研究[J].物理学报,2015,64(1):105-113.
[13] LI H, LI Y, PORIKLI F. Deeptrack: learning discriminative feature representations online for robust visual tracking[J]. IEEE Transactions on Image Processing, 2016,25(4):1834-1848.
[14] 田猛,路成,周健,等.联合模板先验概率和稀疏表示的目标跟踪[J].中国图象图形学报,2016,21(11):1455-1463.
[15] VINCENT P, LAROCHELLE H, LAJOIE I, et al. Stacked denoisingautoencoders: learning useful representations in a deep network with a local denoisingcriterion[J]. Journal of Machine Learning Research, 2010,11(12):3371-3408.
[16] BABENKO B, YANG M H, BELONGIE S. Robust object tracking with online multiple instance learning[J]. IEEE Transactions on Pattern Analysis & Machine Intelligence, 2011,33(8):1619-32.
[17] KWON J, LEE K M. Visual tracking decomposition[J]. Computer Vision and Pattern Recognition. IEEE, 2010:1269-1276.
[18] ROSS D A, LIM J, LIN R S, et al. Incremental learning for robust visual tracking[J]. International Journal of Computer Vision, 2008,77(1-3):125-141.
(责任编辑:黄 健)