胡 鵬 楊偉清 范 勇
(西南科技大學(xué)計算機科學(xué)與技術(shù)學(xué)院 四川省綿陽市 621010)
?
基于區(qū)域卷積神經(jīng)網(wǎng)絡(luò)的多目標跟蹤算法
胡鵬楊偉清范勇
(西南科技大學(xué)計算機科學(xué)與技術(shù)學(xué)院四川省綿陽市621010)
摘要:深度學(xué)習在目標識別、場景分割及圖像內(nèi)容理解上取得了不錯的研究成果,但在目標跟蹤的應(yīng)用還較少。提出區(qū)域選擇算法,先產(chǎn)生原始候選區(qū)域,再計算其中鄰近區(qū)域?qū)Φ念伾?、紋理相似性,對原始候選區(qū)域進行過濾,在此基礎(chǔ)上,將最終的候選區(qū)域作為基于區(qū)域的卷積神經(jīng)網(wǎng)絡(luò)的輸入,通過深度學(xué)習的方法提取目標區(qū)域的特征,并將提取的特征通過線性支持向量機進行相似度判斷,最終計算出跟蹤目標的位置信息,同時,利用采樣算法進行跟蹤目標正負樣本的采樣,更新卷積神經(jīng)網(wǎng)絡(luò)和支持向量機。實驗結(jié)果表明,基于區(qū)域的卷積神經(jīng)網(wǎng)絡(luò)算法在目標跟蹤的準確率及算法的魯棒性兩方面均有不錯的表現(xiàn)。
關(guān)鍵詞:候選區(qū)域卷積神經(jīng)網(wǎng)絡(luò)多目標跟蹤深度學(xué)習
深度學(xué)習的概念由HINTON[1]等人在2006年提出。深度學(xué)習是機器學(xué)習的分支領(lǐng)域,是一種學(xué)習特征的結(jié)構(gòu)化方法,該方法試圖將原始數(shù)據(jù)通過多個處理層進行計算,學(xué)習原始數(shù)據(jù)更加抽象、更加復(fù)雜的高層次表達形式。其中,處理層通常由某些簡單的非線性模型構(gòu)成。通過足夠多的模型組合,即使是非常復(fù)雜的特征函數(shù)也能夠被學(xué)習。深度學(xué)習的核心在于,各層的特征都不是利用人工工程來設(shè)計,而是使用一種通用的學(xué)習過程從原始數(shù)據(jù)中學(xué)習而來。同機器學(xué)習一樣,深度學(xué)習也分為有監(jiān)督學(xué)習和無監(jiān)督學(xué)習。其中,深度置信網(wǎng)絡(luò)(Deep Belief Nets, DBNs)屬于無監(jiān)督深度學(xué)習模型,而卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Networks, CNNs)則屬于有監(jiān)督深度學(xué)習模型。
由于深度學(xué)習通過原始數(shù)據(jù)自動學(xué)習特征,避免人工設(shè)計特征帶來干擾等優(yōu)點,被廣泛應(yīng)用于計算機視覺、語音識別、自然語言處理等問題中。在計算機視覺領(lǐng)域內(nèi),KRIZHEVSKY[2]等人設(shè)計的深度卷積神經(jīng)網(wǎng)絡(luò)由5個卷積層、6 000萬個參數(shù)及500 000個“神經(jīng)元”組成,通過預(yù)先對小規(guī)模有標記圖片的深度學(xué)習,對屬于一千個不同類別的共1 300 000張圖片進行了分類,取得了明顯高于當時最佳分類算法的成績;FARABET[3]等人則通過多尺度的卷積神經(jīng)網(wǎng)絡(luò),提取圖像的稠密特征向量,其提取的特征向量包含了紋理、形狀及上下文等信息,具有極大的分辨能力,利用該特征在圖像的場景分割實驗中取得了較好的結(jié)果;KAVUKCUOGLU[4]等人則采用無監(jiān)督的深度學(xué)習方式,結(jié)合稀疏編碼,提出了稀疏卷積特征的概念,并利用該方法進行了視覺識別及檢測的相關(guān)實驗,證明了該特征的有效性;趙志宏[5]等人將經(jīng)典的用于識別手寫字符的LeNet-5引入到車牌字符識別中,并結(jié)合國內(nèi)車牌的特點,對其做出了改進,提升了卷積神經(jīng)網(wǎng)絡(luò)的識別正確率和識別速度;鄭胤[6]等人則對目前深度學(xué)習在計算機視覺領(lǐng)域內(nèi)的應(yīng)用作了總結(jié),指出了當前研究熱點還主要集中于目標識別和行為識別上,應(yīng)該在更深層次上將深度學(xué)習應(yīng)用于計算機視覺領(lǐng)域內(nèi)。
可以看到,深度學(xué)習在計算機視覺領(lǐng)域內(nèi)的應(yīng)用范圍越來越廣,研究程度也越來越深。然而目標跟蹤作為計算機視覺領(lǐng)域內(nèi)一直以來的研究熱點,利用深度學(xué)習來解決該問題的研究目前還較少。在2013年,WANG[7]等人通過使用額外的自然輔助圖像,線下訓(xùn)練去噪的自編碼器,并利用線下訓(xùn)練結(jié)果構(gòu)造在線的卷積神經(jīng)網(wǎng)絡(luò),增強神經(jīng)網(wǎng)絡(luò)的魯棒性以應(yīng)對跟蹤目標的外觀變化,利用深度學(xué)習完成了對目標運動軌跡的跟蹤;GOTARREDONA[8]等人則利用大規(guī)模并行計算的方式來解決深度學(xué)習時間較長的問題,通過定制的芯片以及異步處理技術(shù),成功解決了深度學(xué)習計算時間長導(dǎo)致跟蹤不能實時進行的問題。
針對計算機視覺領(lǐng)域中的目標跟蹤問題,本文將深度學(xué)習中的卷積神經(jīng)網(wǎng)絡(luò)引入其中,通過選定圖像序列中的候選區(qū)域,經(jīng)由卷積神經(jīng)網(wǎng)絡(luò)計算候選區(qū)域的特征,再利用線性支持向量機對候選區(qū)域的特征進行相似度判斷,在判斷的基礎(chǔ)上完成對目標的跟蹤,同時利用采樣算法,選取正負樣本,更新線性SVM,增加SVM的魯棒性,降低對目標外觀模型變化對跟蹤算法準確率的影響。
1算法概述
本文將深度學(xué)習中的卷積神經(jīng)網(wǎng)絡(luò)引入到跟蹤算法中,選擇圖像序列中的候選區(qū)域作為卷積神經(jīng)網(wǎng)絡(luò)的輸入,通過卷積神經(jīng)網(wǎng)絡(luò)計算的特征作為目標的外表模型,而卷積神經(jīng)網(wǎng)絡(luò)的輸出(目標特征)則作為線性支持向量機的輸入,通過線性支持向量機來判斷當前候選區(qū)域是否是跟蹤目標,同時,利用判斷結(jié)果,再結(jié)合采樣程序,對當前幀的跟蹤目標采集正負樣本,用以更新支持向量機。采用卷積神經(jīng)網(wǎng)絡(luò)提取的目標區(qū)域特征,具有較好的分辨能力,結(jié)合線性支持向量機能夠準確區(qū)分相似目標,在一定程度上解決了因跟蹤目標相似導(dǎo)致的誤跟蹤問題,增加了跟蹤算法的魯棒性。算法步驟如圖1所示。
圖1 算法流程圖
算法初始化時,需要事先提供少量關(guān)于跟蹤目標的圖像對卷積神經(jīng)網(wǎng)絡(luò)和支持向量機同時進行線下訓(xùn)練,用以獲得目標的外表模型和支持向量機的分割超平面,在后續(xù)跟蹤中算法將自動選擇候選區(qū)域(見式(1)),并對選定的候選區(qū)域利用卷積神經(jīng)網(wǎng)絡(luò)提取相應(yīng)的目標特征(見式(2)),得到目標的外表模型,再將提取的目標特征經(jīng)由事先訓(xùn)練的線性支持向量機來判斷是否為當前跟蹤目標(見式(3)),并結(jié)合判斷結(jié)果,利用采樣程序采集關(guān)于跟蹤目標的正負樣本,對卷積神經(jīng)網(wǎng)絡(luò)和支持向量機進行在線更新。同時將得到的當前跟蹤目標的位置作為算法的輸出。其中,采樣算法使用粒子濾波,支持向量機則使用線性支持向量機,由于這兩個算法較為成熟,本文不再詳細描述其內(nèi)容。
2基于區(qū)域卷積神經(jīng)網(wǎng)絡(luò)的多目標跟蹤算法
2.1CNN算法簡介
卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Networks,
簡稱CNN)是由一個或多個卷積層和頂端的全連通層(對應(yīng)經(jīng)典神經(jīng)網(wǎng)絡(luò))組成,同時也包括關(guān)聯(lián)權(quán)重和池化層(pooling layer)。這一結(jié)構(gòu)使得卷積神經(jīng)網(wǎng)絡(luò)能夠更好利用數(shù)據(jù)的二維結(jié)構(gòu),因此在語音識別和圖像方面有較好的結(jié)果,本文的卷積神經(jīng)網(wǎng)絡(luò)采用反向傳播算法進行訓(xùn)練。相較于其他深度學(xué)習算法,卷積神經(jīng)網(wǎng)絡(luò)所需參數(shù)較少,導(dǎo)致其計算時間相對較短。其中經(jīng)典的LeNet-5[9]卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)如圖2所示。
圖2 LeNet-5結(jié)構(gòu)圖
LeNet-5共有7層(不包含輸入),每層都包含連接權(quán)值,每層都有多個特征圖,每個特征圖通過一種卷積濾波器針對輸入提取一種特征,而每個特征圖又有多個神經(jīng)元。其中,C1,C3,C5是卷積層,S2,S4,S6是降采樣層。利用圖像局部相關(guān)性原理,對圖像進行局部降采樣,在減少數(shù)據(jù)處理量的同時保留有效信息。其中,LeNet-5采取的損失函數(shù)(Loss Function)如下:
(1)
卷積神經(jīng)網(wǎng)絡(luò)的訓(xùn)練過程如下:
(1)前向傳播階段
1)從樣本集中選取某個樣本(X,YP),將X輸入網(wǎng)絡(luò);2)通過卷積神經(jīng)網(wǎng)絡(luò)計算出實際輸出OP。
該過程也是卷積神經(jīng)網(wǎng)絡(luò)正常運行時執(zhí)行的過程,在此過程中網(wǎng)絡(luò)實際計算的是:
OP=FN(…(F2(F1(XPW(1))W(2))…)W(n))
(2)
(2)后向傳播階段
1)計算實際輸出OP與相應(yīng)理想輸出YP的“差值”;2)按照極小化誤差的方法,反向傳播調(diào)整網(wǎng)絡(luò)各層的權(quán)重。
該過程也是卷積神經(jīng)網(wǎng)絡(luò)更新的過程,通過后向傳播對于各卷積層調(diào)整自身權(quán)重,達到最優(yōu)。
2.2區(qū)域選擇
區(qū)域選擇算法對圖像進行計算后,選擇可能為跟蹤目標的候選區(qū)域,為后續(xù)卷積神經(jīng)網(wǎng)絡(luò)提供輸入,算法流程如表1所示。
表1 區(qū)域選擇算法流程
區(qū)域選擇算法中計算兩個區(qū)域的相似度函數(shù)如下:
s(ri,rj)=a1scolour(ri,rj)+a2stexture(ri,rj)
(3)
scolour(ri,rj)是計算兩個區(qū)域顏色相似度的函數(shù):
(4)
對候選區(qū)域的每個顏色通道都提取顏色直方圖,采用L1范式進行歸一化,箱的數(shù)目選擇為25個,因此總共有n=75(25×3)個箱。計算兩個區(qū)域顏色直方圖的交集作為其顏色相似度的度量。stexture(ri,rj)是計算兩個區(qū)域紋理相似度的函數(shù):
(5)
對候選區(qū)域的每個顏色通道在8個梯度方向上計算高斯微分(α=1),并對每個梯度方向計算直方圖,用L1范式對其歸一化,直方圖箱的數(shù)目選擇為10個,因此總共有n=240(10×8×3)個箱。計算兩個區(qū)域紋理直方圖的交集作為其紋理相似度的度量。區(qū)域選擇算法結(jié)果如圖3所示。
圖3 區(qū)域選擇算法結(jié)果
2.3基于區(qū)域的CNN
在上述區(qū)域選擇算法的基礎(chǔ)上,將候選區(qū)域輸入到卷積神經(jīng)網(wǎng)絡(luò)中提取候選區(qū)域的特征。圖4所示為提取特征的可視化?;趨^(qū)域的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)如圖5所示。該網(wǎng)絡(luò)總共有6層。前5層均是卷積層,最后一層為全連接層。卷積層中前兩層由卷積、Rectified Linear Units(ReLUs)[11]、池化及歸一化組成,中間兩層則由卷積、ReLUs組成,最后一層由卷積、ReLUs及池化組成。其中ReLUs層計算使用的公式如下:
(6)
該式子的目的在于用線性計算來代替指數(shù)計算,降低卷積層的計算量,加快網(wǎng)絡(luò)的計算。也可以直接選用類似f(x)=(1+ex)-1的函數(shù)進行計算,但算法復(fù)雜度會急劇上升。
池化則是對網(wǎng)絡(luò)中相鄰神經(jīng)節(jié)點進行累加的過程,用以得到更高層次的抽象。更準確地說,池化層可被認為以s為間隔的由每個尺寸為z×z的單元組
成的網(wǎng)格,如果s=z則是傳統(tǒng)的池化層,而本文則使用s=2,z=3的有重疊的池化層。
歸一化則用如下公式計算:
(7)
全連接的意思是上一層的任何一個神經(jīng)元與下一層的所有神經(jīng)元都有連接,通過這種方式全連接相當于訓(xùn)練了一個多分類的分類器,學(xué)習了目標的全局特征,為區(qū)分候選區(qū)域與跟蹤目標進行了初次的篩選。
同時為了避免特征學(xué)習的過擬合問題,借鑒了文獻[12]的方法,在每個全連接層的ReLUs后增加了丟棄層,用以防止特征學(xué)習的過擬合。具體做法為隨機的以50%的概率將上層神經(jīng)節(jié)點的結(jié)果置為零,因此這些神經(jīng)節(jié)點在前向傳播和后向傳播中都不會產(chǎn)生影響。
圖4 提取特征的可視化
圖5 基于區(qū)域的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)
3實驗結(jié)果及分析
本文選取了Basketball,F(xiàn)lower,Shaking,Skating以及Skydiving等視頻作為實驗對象,對基于區(qū)域的卷積神經(jīng)網(wǎng)絡(luò)和經(jīng)典的LetNet-5作了對比實驗,跟蹤算法其余部分保持不變。通過對比實驗驗證了基于區(qū)域的卷積神經(jīng)網(wǎng)絡(luò)的正確性與有效性。
圖6給出了對比實驗的效果圖。圖中第一行為使用LeNet-5的實驗結(jié)果,第二行為本文算法結(jié)果。選取的圖像依次為視頻中的1,113,225,337幀。在沒有使用全連接層的LetNet-5中,由于缺少對目標特征全局性學(xué)習,導(dǎo)致其中藍色目標的跟蹤位置與實際位置有較大偏差,并且直接影響了黃色目標的正常跟蹤,出現(xiàn)了目標誤跟蹤、漏跟蹤等問題。
圖6 不同卷積神經(jīng)網(wǎng)絡(luò)跟蹤效果對比圖
圖7為使用LeNet-5的算法與本文算法在對比實驗視頻中跟蹤準確率的對比圖。其中X軸表示測試的實驗視頻,Y軸為該視頻的平均跟蹤準確率。
圖7 算法準確率對比
通過圖6、圖7可看出,增加了全連接層的卷積神經(jīng)網(wǎng)絡(luò),能夠較好地學(xué)習目標的局部與全局特征,在結(jié)合區(qū)域選擇算法的基礎(chǔ)上,較好地完成對多個跟蹤目標特征的提取工作,再通過支持向量機的判斷,能夠準確獲取目標位置信息。進一步分析發(fā)現(xiàn),本文引入的區(qū)域選擇算法能夠較準確地選取候選區(qū)域,而基于區(qū)域的卷積神經(jīng)網(wǎng)絡(luò),對于目標特征的學(xué)習又較為精確,因此能夠在目標外觀出現(xiàn)變化時,及時學(xué)習到外觀的變化,減少了目標變化帶來的干擾,增強了算法的魯棒性,從而提高了跟蹤準確率。
4結(jié)束語
本文將卷積神經(jīng)網(wǎng)絡(luò)引入到目標跟蹤算法中,提出了基于區(qū)域的CNN跟蹤算法。該算法自動選擇候選區(qū)域,再利用卷積神經(jīng)網(wǎng)絡(luò)提取候選區(qū)域目標,最后通過線性支持向量判斷候選區(qū)域是否為跟蹤目標,計算跟蹤目標軌跡信息。同時,通過采樣算法收集跟蹤目標的正負樣本,進行卷積神經(jīng)網(wǎng)絡(luò)和線性支持向量機的在線更新。由于卷積神經(jīng)網(wǎng)絡(luò)提取的特征具有較高的分辨能力,能夠較準確地區(qū)分目標,提高了跟蹤算法準確率,同時增強了魯棒性。實驗結(jié)果充分說明了基于區(qū)域的CNN跟蹤算法的有效性。進一步的研究方向為快速的基于區(qū)域的CNN跟蹤方法以及更好的候選區(qū)域選擇策略。
參考文獻
[1]HINTON G E, OSINDERO S, TEH Y W. A fast learning algorithm for deep belief nets[J]. Neural computation, 2006, 18(7): 1527-1554.
[2]KRIZHEVSKY A, SUTSKEVER I, HINTON G E. Image Net Classification With Deep Convolutional Neural Networks[C].Advances in neural information processing systems. 2012. 1097-1105.
[3]FARABET C, COUPRIE C, NAJMAN L, et al. Learning hierarchical features for scene labeling[J]. Pattern Analysis and Machine Intelligence, IEEE Transactions on, 2013, 35(8): 1915-1929.
[4]KAVUKCUOGLU K, SERMANET P, BOUREAU Y L, et al. Learning Convolutional Feature Hierarchies For Visual Recognition[C].Advances in Neural Information Processing Systems. 2010. 1090-1098.
[5]趙志宏, 楊紹普, 馬增強. 基于卷積神經(jīng)網(wǎng)絡(luò) LeNet-5 的車牌字符識別研究[J]. 系統(tǒng)仿真學(xué)報, 2010 (3): 638-641.
[6]鄭胤, 陳權(quán)崎, 章毓晉. 深度學(xué)習及其在目標和行為識別中的新進展[J]. 中國圖象圖形學(xué)報, 2014, 19(2): 175-184.
[7]WANG N, YEUNG D Y. Learning a Deep Compact Image Representation for Visual Tracking[C].Advances in Neural Information Processing Systems. 2013. 809-817.
[8]SERRANO-GOTARREDONA R, OSTER M, LICHTSTEINER P, et al. CAVIAR: A 45k neuron, 5M synapse, 12G connects/s AER hardware sensory-processing-learning-actuating system for high-speed visual object recognition and tracking[J]. Neural Networks, IEEE Transactions on, 2009, 20(9): 1417-1438.
[9]LECUN Y, BOTTOU L, BENGIO Y, et al. Gradient-based learning applied to document recognition[J]. Proceedings of the IEEE, 1998, 86(11): 2278-2324.
[10] FELZENSZWALB, PEDRO F, HUTTENLOCHER D P. Efficient graph-based image segmentation[J]. International Journal of Computer Vision, 2004, 59(20): 167-181.
[11] NAIR V, HINTON G E. Rectified Linear Units Improve Restricted Boltzmann Machines[C].Proceedings of the 27th International Conference on Machine Learning (ICML-10). 2010. 807-814.
[12] HINTON G E, SRIVASTAVA N, KRIZHEVSKY A, et al. Improving neural networks by preventing co-adaptation of feature detectors[J]. arXiv preprint arXiv, 2012,0580:1207.
[13] CARREIRA J, SMINCHISESCU C. Cpmc: Automatic object segmentation using constrained parametric min-cuts[J]. Pattern Analysis and Machine Intelligence, IEEE Transactions on, 2012, 34(7): 1312-1328.
Object Tracking Based on Region Convolutional Neural Network
HU Peng, YANG Wei-qing, FAN Yong
(SchoolofComputerScienceandTechnology,SouthwestUniversityofScienceandTechnology,Mianyang621010,Sichuan,China)
Abstract:Deep learning has already achieved good research results in object recognition, scene segmentation and image content understanding, but still few applications in object tracking. A region selection algorithm was proposed, first producing raw region candidates, next using color and texture similarities to filter candidates to get final results. Based on this, using the results as the input of convolutional neural network(CNN) based on region to extract the object feature, the output of CNN is used by the linear SVM to compute the final position. At the same time, the positive and negative samples of tracking objects are used to update CNN and SVM. The experiments show, the CNN based on region has good performance on object tracking both in accuracy and robustness.
Key words:Region candidates; Convolutional neural network; Multi-object tracking; Deep learning
中圖分類號:TP391.41
文獻標志碼:A
文章編號:1671-8755(2016)01-0067-05
作者簡介:胡鵬,男,碩士研究生。通信作者:胡鵬(1991—),男,碩士,研究方向為多目標跟蹤。E-mial:lanxis2372615@gmail.com
基金項目:四川省教育廳項目(14CZ0012);綿陽市三網(wǎng)融合基金項目(13ZD3109,13ZD3110)。
收稿日期:2015-12-03