本發(fā)明屬于目標(biāo)跟蹤
技術(shù)領(lǐng)域:
,尤其是一種基于卷積神經(jīng)網(wǎng)絡(luò)的目標(biāo)跟蹤方法。
背景技術(shù):
:視覺目標(biāo)跟蹤技術(shù)被廣泛應(yīng)用于計(jì)算機(jī)視覺中的多種重要任務(wù)中,如視頻監(jiān)控、視覺導(dǎo)航以及增強(qiáng)現(xiàn)實(shí)等。近幾十年來,許多優(yōu)秀的跟蹤算法被提出,目標(biāo)跟蹤領(lǐng)域也有了相當(dāng)大的進(jìn)步,但由于干擾因素甚多,如目標(biāo)姿態(tài)變化、目標(biāo)被遮擋,目標(biāo)移動(dòng)速度太快、背景過于復(fù)雜以及相似目標(biāo)的出現(xiàn)等,很少有跟蹤算法可以處理所有的問題,目標(biāo)跟蹤方法仍有待進(jìn)一步發(fā)展。一個(gè)完整的目標(biāo)跟蹤系統(tǒng)可以分為五部分:運(yùn)動(dòng)模型、特征提取器、觀察模型、模型更新器和綜合后處理器等。其中,特征提取器將原始圖像數(shù)據(jù)轉(zhuǎn)換為另外一種表達(dá)以期獲得更多的信息表示,實(shí)踐表明合適的特征可以顯著提高跟蹤性能,因此,尋找一種更加有效的特征表示依然是眾多學(xué)者研究的課題。近年來,卷積神經(jīng)網(wǎng)絡(luò)在諸如圖像分類,目標(biāo)檢測(cè)以及人臉識(shí)別等許多計(jì)算機(jī)視覺任務(wù)中取得了巨大的成功。與傳統(tǒng)手工設(shè)計(jì)的特征表示不同,卷積神經(jīng)網(wǎng)絡(luò)從大量標(biāo)注的圖片數(shù)據(jù)中進(jìn)行學(xué)習(xí),學(xué)習(xí)到的特征具有豐富的高級(jí)語義信息,在區(qū)分物體類別上具有杰出的表現(xiàn)。然而,受限于目標(biāo)跟蹤的特殊性(跟蹤時(shí)只能獲取關(guān)于目標(biāo)第一幀圖片的標(biāo)注信息),卷積神經(jīng)網(wǎng)絡(luò)的強(qiáng)大功能受到了極大的限制。但是由于卷積神經(jīng)網(wǎng)絡(luò)提取的特征在數(shù)據(jù)集上具有很好的泛化能力,因此一個(gè)有效的解決方案是遷移學(xué)習(xí)大規(guī)模圖像分類數(shù)據(jù)集(如imagenet)預(yù)訓(xùn)練好的卷積神經(jīng)網(wǎng)絡(luò)模型。然而圖像分類和目標(biāo)跟蹤之間存在差距,遷移后的卷積神經(jīng)網(wǎng)絡(luò)仍有待進(jìn)一步訓(xùn)練完善。對(duì)于卷積神經(jīng)網(wǎng)絡(luò)來說,層數(shù)越多,語義表達(dá)能力越強(qiáng),對(duì)于圖片的分類效果也就越好,但是遷移學(xué)習(xí)到目標(biāo)跟蹤任務(wù)當(dāng)中以后,相似物體出現(xiàn)時(shí),準(zhǔn)確率就會(huì)降低。技術(shù)實(shí)現(xiàn)要素:本發(fā)明的目地在于克服現(xiàn)有技術(shù)的不足,提出一種基于卷積神經(jīng)網(wǎng)絡(luò)的目標(biāo)跟蹤方法,解決遷移學(xué)習(xí)后相似物體干擾目標(biāo)的問題。本發(fā)明解決其技術(shù)問題是采取以下技術(shù)方案實(shí)現(xiàn)的:一種基于卷積神經(jīng)網(wǎng)絡(luò)的目標(biāo)跟蹤方法,包括以下步驟:步驟1、搭建適用于跟蹤任務(wù)的卷積神經(jīng)網(wǎng)絡(luò)框架;步驟2、在中心對(duì)比損失函數(shù)約束下對(duì)搭建好的卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行參數(shù)訓(xùn)練;步驟3、將訓(xùn)練好的模型結(jié)構(gòu)進(jìn)行微調(diào),進(jìn)行在線跟蹤。所述步驟1的具體實(shí)現(xiàn)方法包括以下步驟:⑴對(duì)數(shù)據(jù)集imagenet上訓(xùn)練好的卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行遷移學(xué)習(xí),搭建五層神經(jīng)網(wǎng)絡(luò),其中,第1-3層為卷積層,權(quán)重參數(shù)用cnn-m遷移初始化,第4-5層為全連接層,權(quán)重參數(shù)隨機(jī)初始化;⑵采用中心對(duì)比損失函數(shù)作為目標(biāo)函數(shù)來對(duì)網(wǎng)絡(luò)參數(shù)進(jìn)行優(yōu)化。所述五層神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)為:第一層為conv1層,該層參數(shù)為:濾波器為7*7*96,步長(zhǎng)為2;第二層為conv2層,該層參數(shù)為:濾波器為5*5*256,步長(zhǎng)為2;第三層為conv2層,該層參數(shù)為:濾波器為3*3*512,步長(zhǎng)為1;第四層為full4層,該層參數(shù)為:512,隨機(jī)失活;第五層為full5層,該層參數(shù)為:512,隨機(jī)失活;每一層的激活函數(shù)均采用rectifiedlinearunit函數(shù)。所述中心對(duì)比損失函數(shù)為:其中,f代表樣本經(jīng)過五層卷積神經(jīng)網(wǎng)絡(luò)后映射得到的特征向量描述子,下標(biāo)a代表對(duì)應(yīng)樣本為錨點(diǎn)樣本,p-代表對(duì)應(yīng)樣本為正樣本,n代表對(duì)應(yīng)樣本為負(fù)樣本,∈代表負(fù)樣本應(yīng)錨點(diǎn)樣本之間應(yīng)當(dāng)保持的最小距離。所述步驟2的實(shí)現(xiàn)方法包括以下步驟:⑴采集正樣本和負(fù)樣本:根據(jù)訓(xùn)練集圖片以及目標(biāo)在圖片中的位置和大小,以目標(biāo)位置和大小為中心進(jìn)行高斯采樣,選擇iou大于正樣本重疊率閾值的圖片區(qū)域作為正樣本;然后在整個(gè)圖片上均勻采樣,選擇iou小于負(fù)樣本重疊率閾值的圖片區(qū)域作為負(fù)樣本;⑵對(duì)于每f幀,選擇一定數(shù)量的正樣本和負(fù)樣本組成樣本包,將實(shí)際目標(biāo)位置所在樣本設(shè)置為錨點(diǎn),并以此為中心,與每一個(gè)樣本建立連接,與正樣本組成正樣本對(duì),與負(fù)樣本組成負(fù)樣本對(duì);⑶前向計(jì)算網(wǎng)絡(luò)的損失函數(shù)值,反向計(jì)算梯度,采用小批量隨機(jī)梯度下降法不斷迭代優(yōu)化,直到達(dá)到最大迭代次數(shù)。所述步驟3的實(shí)現(xiàn)方法包括以下步驟:⑴對(duì)訓(xùn)練好的網(wǎng)絡(luò)增加第六層作為二分類器,并采用softmax作為損失函數(shù)層,之后隨機(jī)初始化第六層,作為初始的正得分和負(fù)得分;⑵用待跟蹤序列的當(dāng)前幀進(jìn)行網(wǎng)絡(luò)參數(shù)的再訓(xùn)練,再訓(xùn)練時(shí),以微調(diào)為主,達(dá)到迭代次數(shù)上限以后,固定網(wǎng)絡(luò)參數(shù)不動(dòng),從下一幀圖片開始持續(xù)處理接下來的圖片,選擇正得分最高的m個(gè)樣本取平均值作為預(yù)測(cè)目標(biāo)進(jìn)行輸出;⑶每持續(xù)處理t幀圖片以后,再次對(duì)網(wǎng)絡(luò)參數(shù)進(jìn)行再訓(xùn)練微調(diào),然后重復(fù)步驟⑵,直至序列結(jié)束。本發(fā)明的優(yōu)點(diǎn)和積極效果是:1、本發(fā)明利用卷積神經(jīng)網(wǎng)絡(luò)對(duì)圖像信息的強(qiáng)大表示能力,將卷積神經(jīng)網(wǎng)絡(luò)作為特征提取器,為目標(biāo)跟蹤提供有力的特征,同時(shí),為了突出物體間的類內(nèi)差異,借鑒了廣泛應(yīng)用于人臉識(shí)別任務(wù)中的對(duì)比損失函數(shù),并通過巧妙的設(shè)計(jì)將對(duì)比損失函數(shù)應(yīng)用到單支網(wǎng)絡(luò)中;充分考慮到目標(biāo)的多種變化形態(tài),跟蹤過程中定期進(jìn)行模型的重訓(xùn)練,達(dá)到校正目標(biāo)模型的作用,可有效解決目標(biāo)背景混雜或者被相似物體干擾導(dǎo)致不能準(zhǔn)確跟蹤的問題。2、本發(fā)明設(shè)計(jì)合理,以卷積神經(jīng)網(wǎng)絡(luò)為結(jié)構(gòu)基礎(chǔ),重點(diǎn)關(guān)注不同物體間的類內(nèi)差異,能夠較好地應(yīng)對(duì)背景混雜以及相似目標(biāo)干擾的情況,具有良好的魯棒性和較高的精確度。附圖說明圖1是在訓(xùn)練過程中正負(fù)樣本距離的變化;圖2a是采用不同算法在測(cè)試序列上的定量比較結(jié)果圖(精確率曲線);圖2b是采用不同算法在測(cè)試序列上的定量比較結(jié)果圖(成功率曲線)。具體實(shí)施方式以下結(jié)合附圖對(duì)本發(fā)明實(shí)施例做進(jìn)一步詳述。一種基于卷積神經(jīng)網(wǎng)絡(luò)的目標(biāo)跟蹤方法,包括以下步驟:步驟1、搭建適用于跟蹤任務(wù)的卷積神經(jīng)網(wǎng)絡(luò)框架。本發(fā)明不同于圖像分類,目標(biāo)跟蹤跟蹤的是某一特定目標(biāo),為保持對(duì)同類物體差異的敏感性,本發(fā)明采用層數(shù)較少的卷積神經(jīng)網(wǎng)絡(luò),以期提取更多低層判別式信息。具體方法如下:(1)卷積神經(jīng)網(wǎng)絡(luò)在不同數(shù)據(jù)集之間具有良好的泛化能力,因此可以直接對(duì)數(shù)據(jù)集imagenet上訓(xùn)練好的卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行遷移學(xué)習(xí),本發(fā)明選擇cnn-m進(jìn)行低層特征的遷移學(xué)習(xí),搭建五層的神經(jīng)網(wǎng)絡(luò),網(wǎng)絡(luò)結(jié)構(gòu)如下表所示:其中1-3層為卷積層,權(quán)重參數(shù)用cnn-m遷移初始化,4-5層為全連接層,權(quán)重參數(shù)隨機(jī)初始化。激活函數(shù)均采用relu(rectificationlinearunit)。(2)考慮復(fù)雜背景以及相似目標(biāo)干擾的場(chǎng)景,為凸顯不同物體的差異性,擬采用對(duì)比損失函數(shù)作為目標(biāo)函數(shù)來對(duì)網(wǎng)絡(luò)參數(shù)進(jìn)行優(yōu)化。應(yīng)用對(duì)比損失函數(shù)的典型網(wǎng)絡(luò)結(jié)構(gòu)為雙胞胎(siamese)網(wǎng)絡(luò),為了將雙支網(wǎng)絡(luò)變?yōu)榱骶€型單支網(wǎng)絡(luò),本發(fā)明引入錨點(diǎn)樣本,與普通樣本組成樣本對(duì),完成了對(duì)比損失函數(shù)的單支網(wǎng)絡(luò)實(shí)現(xiàn),所設(shè)計(jì)損失函數(shù)如下:其中f代表樣本經(jīng)過五層卷積神經(jīng)網(wǎng)絡(luò)后映射得到的特征向量描述子,下標(biāo)a代表相應(yīng)樣本為錨點(diǎn)樣本,p-代表相應(yīng)樣本為正樣本,n代表相應(yīng)樣本為負(fù)樣本,∈代表負(fù)樣本與錨點(diǎn)樣本之間應(yīng)當(dāng)保持的最小距離。步驟2、搭建好網(wǎng)絡(luò)結(jié)構(gòu)以后,在設(shè)計(jì)的中心對(duì)比損失函數(shù)約束下對(duì)搭建好的卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行參數(shù)訓(xùn)練。如圖1所示,訓(xùn)練過程中,正樣本間距離會(huì)縮近,負(fù)樣本與正樣本間間距會(huì)擴(kuò)大,正負(fù)樣本由混雜在一起逐漸變得開朗起來。用t-sne技術(shù)對(duì)樣本的特征描述子進(jìn)行可視化。其中‘0’代表負(fù)樣本,‘1’代表正樣本,圖中左側(cè)是迭代前的狀態(tài),圖中右側(cè)是100次迭代后的狀態(tài),從圖中可以看出:經(jīng)過數(shù)次迭代以后,正負(fù)樣本由混雜在一起變得明朗可分。本步驟的具體實(shí)現(xiàn)方法為:(1)采集正樣本和負(fù)樣本。根據(jù)訓(xùn)練集圖片以及目標(biāo)在圖片中的位置和大小,以目標(biāo)位置和大小為中心進(jìn)行高斯采樣,選擇iou(intersectionoverunionoverlap)大于正樣本重疊率閾值的圖片區(qū)域作為正樣本;接著在整個(gè)圖片上均勻采樣,選擇iou小于負(fù)樣本重疊率閾值的圖片區(qū)域作為負(fù)樣本。所有圖片樣本大小統(tǒng)一縮放為m*n:(2)對(duì)于每f幀,選擇一定數(shù)量的正樣本和負(fù)樣本組成樣本包(minibatch),將實(shí)際目標(biāo)位置所在樣本設(shè)置為錨點(diǎn),并以此為中心,與每一個(gè)樣本建立連接,與正樣本組成正樣本對(duì),與負(fù)樣本組成負(fù)樣本對(duì)。(3)前向計(jì)算網(wǎng)絡(luò)的損失函數(shù)值,反向計(jì)算梯度,采用小批量隨機(jī)梯度下降法不斷迭代優(yōu)化,直到達(dá)到最大迭代次數(shù)。步驟3、跟蹤時(shí)多采用判別式模型,將訓(xùn)練好的模型進(jìn)行微調(diào),增加softmax層進(jìn)行在線跟蹤。本步驟的具體實(shí)現(xiàn)方法為:(1)對(duì)訓(xùn)練好的網(wǎng)絡(luò)增加第六層作為二分類器,并采用softmax作為損失函數(shù)層,之后隨機(jī)初始化第六層,作為初始的正得分和負(fù)得分。(2)用待跟蹤序列的當(dāng)前幀進(jìn)行網(wǎng)絡(luò)參數(shù)的再訓(xùn)練,再訓(xùn)練時(shí),微調(diào)為主,達(dá)到迭代次數(shù)上限以后,固定網(wǎng)絡(luò)參數(shù)不動(dòng),從下一幀圖片開始持續(xù)處理接下來的圖片,選擇正得分最高的m個(gè)樣本取平均值作為預(yù)測(cè)目標(biāo)進(jìn)行輸出。(3)每持續(xù)處理t幀圖片以后,再次對(duì)網(wǎng)絡(luò)參數(shù)進(jìn)行再訓(xùn)練微調(diào),然后重復(fù)步驟(2),直至序列結(jié)束。下面按照本發(fā)明的方法進(jìn)行實(shí)驗(yàn),說明本發(fā)明的效果。測(cè)試環(huán)境:cuda7.5,matlabr2015b。序列:一共包含80個(gè)訓(xùn)練序列,20個(gè)測(cè)試序列,測(cè)試序列分別為basketball,blurcar,bolt,bolt2,cardark,couple,girl2,human3,human5,human6,matrix,motorrolling,shaking,singer,singer2,skating2-1,skating2-2,soccer,tiger1,tiger2。測(cè)試指標(biāo):實(shí)驗(yàn)使用了兩種評(píng)價(jià)指標(biāo),分別為cle和vor,其中cle是中心位置誤差,表示跟蹤到的目標(biāo)和真實(shí)目標(biāo)的中心位置的像素距離。由于cle忽略了目標(biāo)大小的影響,作為補(bǔ)充,考慮vor準(zhǔn)則,vor定義為跟蹤的目標(biāo)區(qū)域與真實(shí)目標(biāo)區(qū)域的交集與并集的比值。測(cè)試結(jié)果如表1、圖2a、圖2b所示:表1、10個(gè)跟蹤算法在20個(gè)序列上的實(shí)驗(yàn)結(jié)果,cle<20,vor>0.5算法clevor算法clevor本發(fā)明0.85470.7554srdcf-decon0.70970.6612mdnet-vot0.81450.7645srdcf0.61930.5661c-cot0.79940.7207kcf0.44380.37cnn-svm0.69370.5988struck0.36170.2976hdt0.72050.5532tld0.32740.2947表中的數(shù)字代表跟蹤成功的視頻幀的比例,通過上表及圖2a、圖2b可以看出,采用本發(fā)明進(jìn)行目標(biāo)跟蹤相對(duì)于其他方法具有很強(qiáng)的競(jìng)爭(zhēng)力。表中進(jìn)行對(duì)比的算法都是在跟蹤領(lǐng)域中取得優(yōu)異成果或者具有一定代表性的算法。而本發(fā)明算法無論是在cle標(biāo)準(zhǔn)還是vor標(biāo)準(zhǔn)下,都取得了較佳的性能,平均跟蹤成功的幀數(shù)達(dá)到了85.47%(cle<20)和75.54%(vor>0.5)。圖2a、圖2b給出了遍歷cle和vor時(shí)跟蹤結(jié)果的定量比較,比較結(jié)果顯示本發(fā)明提出的算法在精確率曲線和成功率曲線上性能俱佳。且測(cè)試序列中涵蓋各種類型的干擾因素,如遮擋、形變、背景混雜、快速移動(dòng)等,說明本發(fā)明能夠應(yīng)對(duì)各種環(huán)境變化的情況,具有良好的魯棒性和較強(qiáng)的可擴(kuò)展性。需要強(qiáng)調(diào)的是,本發(fā)明所述的實(shí)施例是說明性的,而不是限定性的,因此本發(fā)明包括并不限于具體實(shí)施方式中所述的實(shí)施例,凡是由本領(lǐng)域技術(shù)人員根據(jù)本發(fā)明的技術(shù)方案得出的其他實(shí)施方式,同樣屬于本發(fā)明保護(hù)的范圍。當(dāng)前第1頁12