吳金明 黃 偉 董明超 徐懷宇
1(中國(guó)科學(xué)院上海高等研究院 上海 201204) 2(上??萍即髮W(xué)信息科學(xué)與技術(shù)學(xué)院 上海 200120)
VOT是計(jì)算機(jī)視覺領(lǐng)域中的一個(gè)關(guān)鍵任務(wù),已應(yīng)用到很多場(chǎng)景中,例如自動(dòng)駕駛、人機(jī)交互、視頻監(jiān)控等。對(duì)于給定視頻序列,目標(biāo)跟蹤是在已知目標(biāo)初始信息條件下定位目標(biāo)后續(xù)位置。該問題面臨的主要挑戰(zhàn)是目標(biāo)形變,拍攝相機(jī)運(yùn)動(dòng),環(huán)境光線變化,目標(biāo)遮擋等復(fù)雜情況下目標(biāo)難以識(shí)別與跟蹤,這些挑戰(zhàn)使得目標(biāo)跟蹤算法無法適應(yīng)不同場(chǎng)景。
近年來,目標(biāo)跟蹤的主要研究成果是基于卷積神經(jīng)網(wǎng)絡(luò)[1](Convolutional Neural Networks,CNN)或相關(guān)濾波(Correlation Filter,CF)技術(shù)的跟蹤方法。相關(guān)濾波技術(shù)的思想是使用濾波器在圖像中搜索目標(biāo)位置。Bolme等[2]首次將相關(guān)濾波技術(shù)應(yīng)用于目標(biāo)跟蹤中,提出了最小輸出平方誤差(Minimum Output Sum of Squared Error, MOSSE)算法。KCF[3]算法采用方向梯度直方圖特征,提高了目標(biāo)跟蹤的精度。這些算法利用循環(huán)矩陣擴(kuò)充樣本數(shù)量,增強(qiáng)濾波器的判別能力,并通過傅里葉變換將矩陣乘法運(yùn)算轉(zhuǎn)換為對(duì)角陣點(diǎn)乘運(yùn)算,大幅地提高計(jì)算效率。
隨著計(jì)算機(jī)運(yùn)算能力的提高和有標(biāo)注數(shù)據(jù)集的增多,許多學(xué)者提出基于CNN的跟蹤方法。Bertinetto等[4]提出了基于全卷積孿生網(wǎng)絡(luò)的目標(biāo)跟蹤算法(Fully Convolutional Siamese Networks, SiamFC),SiamFC算法以其超實(shí)時(shí)的跟蹤速率及高準(zhǔn)確性讓孿生網(wǎng)絡(luò)在目標(biāo)跟蹤領(lǐng)域得到廣泛運(yùn)用。SiamRPN[5]算法將區(qū)域生成網(wǎng)絡(luò) (Region Proposal Network, RPN)引入孿生網(wǎng)絡(luò)中,目標(biāo)跟蹤被轉(zhuǎn)化為分類與回歸問題,進(jìn)一步提升了跟蹤精度。Zhu等[6]提出DaSiamRPN算法,設(shè)計(jì)高效的采樣策略緩解訓(xùn)練樣本不平衡問題。Fan等[7]提出了C-RPN算法,通過級(jí)聯(lián)多個(gè)RPN結(jié)構(gòu)分級(jí)過濾同類別的干擾項(xiàng)。基于CNN的跟蹤算法的缺點(diǎn)是需要大量的有標(biāo)注數(shù)據(jù)用于訓(xùn)練神經(jīng)網(wǎng)絡(luò),這些數(shù)據(jù)集都需要人工來標(biāo)注,所以工作量巨大。而強(qiáng)化學(xué)習(xí)可以使用部分標(biāo)注的數(shù)據(jù)集,因此強(qiáng)化學(xué)習(xí)逐漸應(yīng)用于目標(biāo)跟蹤領(lǐng)域。
強(qiáng)化學(xué)習(xí)是基于試錯(cuò)法的機(jī)器學(xué)習(xí)方法。目前強(qiáng)化學(xué)習(xí)已成功應(yīng)用于智能游戲[8]、自動(dòng)駕駛等場(chǎng)景,而在目標(biāo)跟蹤領(lǐng)域,許多學(xué)者也提出了不少基于強(qiáng)化學(xué)習(xí)的目標(biāo)跟蹤方法。文獻(xiàn)[9]中將目標(biāo)跟蹤轉(zhuǎn)化為馬爾可夫決策(Markov Decision Process, MDP)過程。文獻(xiàn)[10]中提出離散動(dòng)作決策網(wǎng)絡(luò),學(xué)習(xí)跟蹤策略移動(dòng)目標(biāo)框?qū)崿F(xiàn)目標(biāo)定位。Huang等[11]利用強(qiáng)化學(xué)習(xí),減少神經(jīng)網(wǎng)絡(luò)前向計(jì)算,加快跟蹤速度。文獻(xiàn)[12]中使用演員評(píng)論家算法訓(xùn)練目標(biāo)框偏移預(yù)測(cè)網(wǎng)絡(luò),單步驟預(yù)測(cè)目標(biāo)框偏移量,減少動(dòng)作決策次數(shù),提高跟蹤速率。
基于CNN的目標(biāo)跟蹤算法在數(shù)據(jù)集VOT[13]、OTB[14]上取得優(yōu)異的性能表現(xiàn),這說明卷積神經(jīng)網(wǎng)絡(luò)能有效地幫助解決目標(biāo)跟蹤問題。然而,這些方法使用的骨干網(wǎng)絡(luò)相對(duì)較淺,僅包含少量卷積層,直接使用深層卷積網(wǎng)絡(luò)如VGG[15]、ResNet[16]也并未取得更好的跟蹤效果,這說明應(yīng)用于目標(biāo)識(shí)別的神經(jīng)網(wǎng)絡(luò)無法簡(jiǎn)單地用于目標(biāo)跟蹤問題?,F(xiàn)有跟蹤算法使用水平矩形框標(biāo)記目標(biāo)位置,實(shí)際中,斜矩形框有時(shí)能更好地表示目標(biāo)位置信息,如VOT數(shù)據(jù)集便是采用斜矩形框標(biāo)記目標(biāo),這樣能減少矩形框內(nèi)的背景信息,進(jìn)而提取更優(yōu)的目標(biāo)特征,能更好地區(qū)分目標(biāo)與背景。
基于以上研究,提出一種基于強(qiáng)化學(xué)習(xí)的目標(biāo)跟蹤算法,使用內(nèi)部裁剪殘差單元[17](Cropping-inside Residual Unit, CIR)構(gòu)造目標(biāo)框偏移決策網(wǎng)絡(luò)。該決策網(wǎng)絡(luò)以當(dāng)前位置處的圖像塊作為輸入輸出離散動(dòng)作概率分布,這些動(dòng)作包含目標(biāo)框上下左右移動(dòng)、放大縮小、旋轉(zhuǎn)等變換操作。跟蹤階段選擇概率最大的動(dòng)作移動(dòng)目標(biāo)框,這種動(dòng)作決策的跟蹤方式相比密集采樣方式需要更少的搜索步驟。訓(xùn)練階段,提出一種基于強(qiáng)化學(xué)習(xí)(Reinforcement Learning, RL)的多階段訓(xùn)練方式訓(xùn)練目標(biāo)跟蹤網(wǎng)絡(luò)。多階段分為監(jiān)督訓(xùn)練階段和多閾值強(qiáng)化學(xué)習(xí)訓(xùn)練階段,每個(gè)階段使用前一階段網(wǎng)絡(luò)權(quán)重作為網(wǎng)絡(luò)預(yù)訓(xùn)練權(quán)重。
視覺跟蹤任務(wù)是利用初始幀給出的目標(biāo)信息在視頻序列中定位目標(biāo)后續(xù)位置。本節(jié)將詳細(xì)介紹基于強(qiáng)化學(xué)習(xí)的目標(biāo)跟蹤算法。該跟蹤方法主要思想是,將前一時(shí)刻目標(biāo)位置處的圖像塊輸入網(wǎng)絡(luò),通過特征提取網(wǎng)絡(luò)提取目標(biāo)位置信息,識(shí)別目標(biāo)的偏移信息,依此進(jìn)行目標(biāo)框的移動(dòng)決策。具體流程如圖1所示,跟蹤過程分三個(gè)步驟:① 是數(shù)據(jù)預(yù)處理階段,完成圖片裁剪、調(diào)整圖片大小等操作;② 經(jīng)過主干網(wǎng)絡(luò)進(jìn)行特征提??;③ 經(jīng)過動(dòng)作預(yù)測(cè)分支A,輸出9個(gè)離散動(dòng)作的概率分布,選擇要執(zhí)行的動(dòng)作,圖1對(duì)應(yīng)示例為目標(biāo)框旋轉(zhuǎn)操作,移動(dòng)目標(biāo)框搜索目標(biāo)。為了防止目標(biāo)丟失,跟蹤階段維護(hù)目標(biāo)判別器,對(duì)應(yīng)圖1中B分支,用于目標(biāo)重檢測(cè)。目標(biāo)跟蹤神經(jīng)網(wǎng)絡(luò)的完整訓(xùn)練階段分為監(jiān)督訓(xùn)練和多閾值強(qiáng)化學(xué)習(xí)訓(xùn)練階段。
圖1 基于強(qiáng)化學(xué)習(xí)的跟蹤算法流程
數(shù)據(jù)預(yù)處理指對(duì)數(shù)據(jù)操作前的預(yù)先處理,作用是為了提高數(shù)據(jù)的質(zhì)量,有助于提高后續(xù)網(wǎng)絡(luò)訓(xùn)練的收斂速度。常見數(shù)據(jù)預(yù)處理方式包括數(shù)據(jù)清理、數(shù)據(jù)集成、數(shù)據(jù)轉(zhuǎn)換、數(shù)據(jù)規(guī)約等。本實(shí)驗(yàn)涉及的數(shù)據(jù)集是來自開源的Alov300++[18]數(shù)據(jù)集,該數(shù)據(jù)集并未對(duì)所有視頻幀完成標(biāo)注,并且圖像大小不一致,因此必須對(duì)這些數(shù)據(jù)進(jìn)行預(yù)處理操作。實(shí)驗(yàn)中使用的數(shù)據(jù)預(yù)處理技術(shù)是數(shù)據(jù)清理、數(shù)據(jù)格式轉(zhuǎn)換、圖像旋轉(zhuǎn)、翻轉(zhuǎn)、裁剪、縮放以及歸一化等數(shù)值操作。
1) 數(shù)據(jù)清理。Alov300++視頻數(shù)據(jù)來源自YouTube視頻,將采集的視頻按目標(biāo)遮擋、光線變化、拍攝相機(jī)動(dòng)作等場(chǎng)景分類,并且與VOT數(shù)據(jù)集有部分重疊。為了驗(yàn)證算法有效性,必須將重疊部分視頻數(shù)據(jù)從訓(xùn)練集中刪除。Alov300++數(shù)據(jù)集并未對(duì)所有視頻幀完成目標(biāo)標(biāo)注,只對(duì)部分視頻幀標(biāo)注目標(biāo)位置,數(shù)據(jù)集標(biāo)簽中增加視頻幀索引說明標(biāo)高不一致,為了方便深度合數(shù)據(jù)增強(qiáng)和多尺度簽對(duì)應(yīng)圖像幀。為了以強(qiáng)化學(xué)習(xí)的方式使用這些視頻數(shù)據(jù),需要取固定數(shù)量的視頻幀組成短視頻跟蹤序列,短視頻序列中包含未標(biāo)注的視頻幀,序列組成方式在1.4節(jié)詳細(xì)描述。
2) 尺寸變換。Alov300+數(shù)據(jù)集圖像寬網(wǎng)絡(luò)訓(xùn)練,實(shí)驗(yàn)前需要對(duì)原始圖像先進(jìn)行裁剪操作,分辨率分別調(diào)整到360×480、480×720,圖像裁剪塊輸入網(wǎng)絡(luò)前統(tǒng)一分辨率為112×112。訓(xùn)練不同分辨率的數(shù)據(jù),結(jié)訓(xùn)練提高網(wǎng)絡(luò)識(shí)別精度和泛化能力。
3) 數(shù)值處理。由于Alov300+數(shù)據(jù)集采集時(shí)間、光線不同等因素導(dǎo)致圖像數(shù)據(jù)分布可能具有較大差異,所以需對(duì)圖像數(shù)值進(jìn)行歸一化和去均值操作。這些操作可以使圖像數(shù)值具有相似分布,使用相同分布的數(shù)據(jù)進(jìn)行訓(xùn)練可以加快網(wǎng)絡(luò)模型收斂速度。
目標(biāo)框偏移決策視作馬爾可夫決策過程,該過程基于馬爾可夫性。馬爾可夫性如式(1)所示。
P[St+1|St]=P[St+1|S1,…,St]
(1)
即馬爾可夫決策過程的狀態(tài)轉(zhuǎn)換僅取決于目標(biāo)當(dāng)前狀態(tài),而與目標(biāo)之前狀態(tài)無關(guān)。其中為目標(biāo)時(shí)刻的狀態(tài),P為狀態(tài)轉(zhuǎn)換函數(shù)。馬爾可夫決策過程由四元組組成(S,A,f,r)。s∈S表示目標(biāo)當(dāng)前狀態(tài),S為目標(biāo)可能處于的狀態(tài)空間,a∈A表示對(duì)目標(biāo)執(zhí)行的動(dòng)作,A為可以對(duì)目標(biāo)執(zhí)行的所有動(dòng)作。狀態(tài)變換過程s′=f(s,a)指目標(biāo)在狀態(tài)s下采取動(dòng)作a后轉(zhuǎn)換為新的狀態(tài)s′的概率分布。r(s,a)指目標(biāo)在狀態(tài)s下對(duì)目標(biāo)執(zhí)行動(dòng)作a后的即時(shí)回報(bào)。四元組(s,a,s′,r)構(gòu)成強(qiáng)化學(xué)習(xí)的一個(gè)樣本,用于訓(xùn)練策略網(wǎng)絡(luò)。目標(biāo)跟蹤問題中,跟蹤器將目標(biāo)框的移動(dòng)變換視為馬爾可夫決策過程中的動(dòng)作,因?yàn)槟繕?biāo)框位移變化量取值范圍連續(xù)且無限,所以為了簡(jiǎn)化問題,可以將目標(biāo)框偏移量離散化。在跟蹤階段,將當(dāng)前目標(biāo)位置處的圖像塊作為目標(biāo)框偏移決策網(wǎng)絡(luò)的輸入,該決策網(wǎng)絡(luò)預(yù)測(cè)目標(biāo)位置變化量,新的目標(biāo)位置與圖像塊組成目標(biāo)新狀態(tài)。為了增加算法可靠性,跟蹤器中還增加目標(biāo)判別器,用于確定圖像塊中存在目標(biāo)的置信度,只有判別器判定決策網(wǎng)絡(luò)預(yù)測(cè)結(jié)果可信才更新目標(biāo)狀態(tài),重復(fù)決策過程實(shí)現(xiàn)目標(biāo)跟蹤。
目標(biāo)狀態(tài):目標(biāo)在圖像中的位置信息可以使用四元組bt=[x,y,w,h]標(biāo)注,分別表示目標(biāo)框中心在圖像中的坐標(biāo)和目標(biāo)框?qū)捀?。水平矩形框?qū)τ诖蟛糠智闆r足以描述目標(biāo)位置信息,但是當(dāng)目標(biāo)物傾斜或形變時(shí),水平矩形框會(huì)包含過多冗余信息,如圖2所示,圖2(a)相比圖2(b)包含更多冗余背景信息,圖2(b)定位目標(biāo)更精確,影響決策網(wǎng)絡(luò)預(yù)測(cè)結(jié)果,因此增加矩形旋轉(zhuǎn)變量θ描述目標(biāo)框傾斜角度,即bt=[x,y,w,h,θ]。目標(biāo)狀態(tài)為當(dāng)前幀在bt處的圖像塊st=p(bt,I),I為當(dāng)前視頻幀,p為預(yù)處理函數(shù)。
(a) (b)圖2 水平矩形框標(biāo)簽與斜矩形框標(biāo)簽對(duì)比
動(dòng)作設(shè)計(jì):為了盡可能描述目標(biāo)位置所有可能的變化并簡(jiǎn)化問題,從四個(gè)維度Δx、Δy、Δs、Δθ描述目標(biāo)框前后時(shí)刻偏移量,變換方式如式(2)所示。
(2)
分別表示目標(biāo)框中心水平和垂直位移,寬高縮放程度和中心旋轉(zhuǎn)角度。每次目標(biāo)框只變換單維度固定量,因此設(shè)計(jì)9個(gè)離散動(dòng)作{左移,右移,上移,下移,放大,縮小,順時(shí)針旋轉(zhuǎn),逆時(shí)針旋轉(zhuǎn),停止}。為了防止動(dòng)作預(yù)測(cè)出現(xiàn)循環(huán),停止操作和最大動(dòng)作決策次數(shù)是必要的。
狀態(tài)變換函數(shù):動(dòng)作決策網(wǎng)絡(luò)對(duì)目標(biāo)當(dāng)前狀態(tài)St執(zhí)行動(dòng)作at=[Δx,Δy,Δs,Δθ]后,轉(zhuǎn)入至目標(biāo)新位置bt+1與狀態(tài)st+1=p(bt+1,I),即當(dāng)前視頻幀在目標(biāo)新位置處的圖像塊。
回報(bào)函數(shù):r(s,a)說明目標(biāo)在狀態(tài)s下采取動(dòng)作a時(shí)獲得的即時(shí)收益。即時(shí)收益計(jì)算分兩種情況,當(dāng)a不為停止動(dòng)作時(shí),則繼續(xù)進(jìn)行馬爾可夫決策過程,分別計(jì)算新狀態(tài)目標(biāo)位置bt+1、當(dāng)前目標(biāo)位置bt與真實(shí)目標(biāo)位置G面積交并比(Intersection over Union, IoU),若交并比增大,則為正收益,反之為負(fù)收益,計(jì)算方法如式(3)所示。如果動(dòng)作為停止,收益計(jì)算如式(4)所示,即面積交并比大于閾值視作目標(biāo)跟蹤成功。式(4)中T為面積交并比閾值。同時(shí)面積交并比計(jì)算采用GIoU[19](Generalized Intersection over Union)計(jì)算,提高面積交并比計(jì)算精度。
(3)
(4)
GIoU是一種新的面積交并比計(jì)算方式。衡量目標(biāo)定位準(zhǔn)確性的主要指標(biāo)是交并比,傳統(tǒng)交并比計(jì)算方式如式(5)所示,表示A、B交叉區(qū)域與合并區(qū)域的商,其中A、B為兩個(gè)矩形。
(5)
雖然IoU具有尺度不變性,但它存在兩個(gè)問題:1) 如果A和B沒有相交區(qū)域,則IoU=0,這時(shí)無論兩矩形相距多遠(yuǎn)均無法反映兩個(gè)框的距離;2) 即使A和B具有相同的IoU,也不能代表目標(biāo)框的定位效果相同。
通過采用GIoU來計(jì)算兩個(gè)邊界框的重合程度,可以克服IoU的缺點(diǎn),計(jì)算方式如下:
(6)
式中:C表示最小的覆蓋兩個(gè)矩形框A和B的矩形框。相比IoU計(jì)算方式,GIOU具有以下優(yōu)點(diǎn)特性:1) GIoU可認(rèn)為是IoU的下界,小于等于IoU;2) GIoU的取值范圍是(-1, 1],當(dāng)A=B時(shí),GIoU=IoU=1,當(dāng)A與B不相交而且離得很遠(yuǎn)時(shí),GIoU(A,B)趨向于-1;3) GIoU能夠更好地反映兩個(gè)矩形的相交情況。
目前基于CNN的目標(biāo)跟蹤方法中使用的骨干網(wǎng)絡(luò)相對(duì)較淺,它沒有充分利用深度神經(jīng)網(wǎng)絡(luò)的特征表達(dá)能力。文獻(xiàn)[16]通過系統(tǒng)實(shí)驗(yàn)分析深度神經(jīng)網(wǎng)絡(luò)難以應(yīng)用于目標(biāo)跟蹤任務(wù)的主要障礙,文章指出其主要原因是神經(jīng)元感受野的大幅增加導(dǎo)致特征可辨性和定位精度降低,卷積網(wǎng)絡(luò)的填充操作引起位置偏差?;谶@些研究成果,提出的跟蹤方法所使用的卷積網(wǎng)絡(luò)基于CIR結(jié)構(gòu)。CIR單元結(jié)構(gòu)如圖3(a)所示,圖3(b)是ResNet中的殘差單元,它由3個(gè)堆疊的卷積層和繞過它們的快捷連接組成,這三層是卷積核大小為1×1、3×3和1×1的卷積層,其中1×1層負(fù)責(zé)融合多通道特征,使用3×3卷積核提取局部特征。殘差單元包括零填充操作,以確保單元輸出與輸入尺寸一致。CIR單元在殘差單元基礎(chǔ)上增加裁剪操作,可以在內(nèi)部裁剪出不受填充操作影響的特征,緩解位置偏差的問題。特征對(duì)比如圖4所示,圖4(a)為輸入網(wǎng)絡(luò)的圖像裁剪塊,圖像來自訓(xùn)練集,圖4(b)、(c)和(d)為不同網(wǎng)絡(luò)結(jié)構(gòu)特征提取結(jié)果對(duì)應(yīng)的熱圖,CIR網(wǎng)絡(luò)對(duì)目標(biāo)定位更加精確,普通殘差單元構(gòu)造的網(wǎng)絡(luò)包含更多位置偏差,結(jié)果說明,CIR結(jié)構(gòu)更適用于目標(biāo)跟蹤問題。將CIR單元作為殘差塊組成包含22個(gè)卷積層的CIResNet[16]殘差網(wǎng)絡(luò),即圖1主干網(wǎng)絡(luò)部分,以此網(wǎng)絡(luò)作為跟蹤算法主干網(wǎng)絡(luò)。在卷積網(wǎng)絡(luò)之后接兩個(gè)全連接輸出層{A,B},對(duì)應(yīng)圖1A、B分支,A分支輸出離散動(dòng)作的概率分布p(a|st;N),N為目標(biāo)框偏移決策網(wǎng)絡(luò),概率最大的動(dòng)作作為對(duì)目標(biāo)框?qū)⒁獔?zhí)行的動(dòng)作,B分支輸出矩形框內(nèi)存在目標(biāo)的概率分布,評(píng)估決策網(wǎng)絡(luò)跟蹤結(jié)果的可靠程度,跟蹤階段基于此結(jié)果判斷是否采用決策網(wǎng)絡(luò)的跟蹤結(jié)果。
(a) (b)圖3 CIR單元和原殘差單元
(a) 輸入圖像(b) Resnet50 (c) VGG (d) CIResnet圖4 不同卷積網(wǎng)絡(luò)的特征熱點(diǎn)圖
模型訓(xùn)練包含兩個(gè)階段,分別是監(jiān)督訓(xùn)練階段和多閾值強(qiáng)化學(xué)習(xí)訓(xùn)練階段,訓(xùn)練特征提取網(wǎng)絡(luò)和判別分支。特征提取網(wǎng)絡(luò)用于在圖像塊中獲取目標(biāo)偏移信息,判別分支根據(jù)目標(biāo)偏移信息作出決策,移動(dòng)目標(biāo)框使得目標(biāo)中心盡可能處于矩形框中心位置。
在監(jiān)督訓(xùn)練階段,圖像塊pj、動(dòng)作aj和是否為目標(biāo)oj作為一個(gè)樣本進(jìn)行多任務(wù)訓(xùn)練。圖像塊pj的生成方式是在真實(shí)邊框G中添加高斯噪聲生成樣本邊框bt和對(duì)應(yīng)圖像塊pj=p(bt,I),計(jì)算能夠最大化面積交并比的動(dòng)作,以此作為pj對(duì)應(yīng)的動(dòng)作標(biāo)簽aj,動(dòng)作標(biāo)簽獲取方式如式(7)所示。
(7)
(8)
(9)
監(jiān)督訓(xùn)練完成后,保留網(wǎng)絡(luò)權(quán)重作為強(qiáng)化學(xué)習(xí)訓(xùn)練階段預(yù)訓(xùn)練權(quán)重。通過監(jiān)督訓(xùn)練過程,將目標(biāo)跟蹤問題轉(zhuǎn)化為目標(biāo)位置偏移的判別問題,使得主干網(wǎng)絡(luò)學(xué)習(xí)目標(biāo)偏移信息,但在跟蹤階段,連續(xù)幀的目標(biāo)偏移決策過程相互獨(dú)立,而實(shí)際中每次決策都會(huì)影響后續(xù)跟蹤決策,這樣并未考慮連續(xù)幀之間的序貫信息,通過引入強(qiáng)化學(xué)習(xí),構(gòu)造四元組訓(xùn)練樣本(s,a,s′,r),利用決策過程關(guān)聯(lián)連續(xù)決策間的序貫信息,提高跟蹤精度和魯棒性。強(qiáng)化學(xué)習(xí)訓(xùn)練過程與一般的監(jiān)督訓(xùn)練不同,訓(xùn)練時(shí)基于當(dāng)前策略生成一系列訓(xùn)練樣本,在模型上擬合這些樣本,利用訓(xùn)練完成的模型改進(jìn)決策策略,上述過程循環(huán)直至訓(xùn)練完成。
提出的方法為跟蹤策略設(shè)計(jì)離散動(dòng)作,因此采用強(qiáng)化學(xué)習(xí)策略梯度法訓(xùn)練目標(biāo)框偏移決策網(wǎng)絡(luò)。策略梯度法由文獻(xiàn)[20]首次提出,具體過程是:首先對(duì)數(shù)據(jù)進(jìn)行預(yù)處理操作,將視頻序列分段成多段短視頻序列,序列如圖5所示,其中初始幀與結(jié)束幀有標(biāo)注,中間幀無標(biāo)注。
圖5 強(qiáng)化學(xué)習(xí)訓(xùn)練的序列
然后對(duì)每個(gè)視頻序列模擬跟蹤過程,從首幀開始,每次根據(jù)決策網(wǎng)絡(luò)移動(dòng)目標(biāo)框,并根據(jù)實(shí)際跟蹤效果使用式(3)-式(4)計(jì)算相應(yīng)的收益,通過模擬跟蹤過程完成樣本生成,最后使用這些樣本計(jì)算權(quán)重梯度,反向傳播更新網(wǎng)絡(luò)權(quán)重。梯度計(jì)算方式(根據(jù)文獻(xiàn)[20])如式(10),其中W為決策網(wǎng)絡(luò)權(quán)重,相比傳統(tǒng)梯度下降法,式(10)多了一個(gè)因子rt,反映樣本對(duì)權(quán)重梯度的影響程度。
(10)
訓(xùn)練階段動(dòng)作的選擇按e貪婪方式選擇,即以概率e隨機(jī)選擇動(dòng)作保持網(wǎng)絡(luò)的探索能力。為了提高跟蹤精度,強(qiáng)化學(xué)習(xí)訓(xùn)練階段設(shè)計(jì)多閾值訓(xùn)練過程,將視頻序列按時(shí)間分為三個(gè)部分,為每個(gè)部分賦不同閾值,式(4)閾值T分別為0.8、0.7、0.5。通過多級(jí)訓(xùn)練,逐漸過濾干擾樣本。
為了解決目標(biāo)跟蹤過程出現(xiàn)漂移和決策網(wǎng)絡(luò)跟蹤結(jié)果不可信的問題,引入目標(biāo)判別器,對(duì)應(yīng)圖1的B分支,判別結(jié)果作為目標(biāo)置信度表示決策網(wǎng)絡(luò)跟蹤結(jié)果的可信程度,若其結(jié)果不可信則使用密集采樣方式搜索目標(biāo)并重新使用動(dòng)作決策網(wǎng)絡(luò)跟蹤目標(biāo),同時(shí)跟蹤階段定時(shí)更新目標(biāo)判別器。
提出的方法使用alov300+數(shù)據(jù)集訓(xùn)練目標(biāo)跟蹤網(wǎng)絡(luò),為了驗(yàn)證方法有效性和對(duì)比其他跟蹤方法,實(shí)際訓(xùn)練數(shù)據(jù)只使用300個(gè)與VOT數(shù)據(jù)集不重復(fù)的視頻序列。監(jiān)督訓(xùn)練階段對(duì)數(shù)據(jù)集運(yùn)行50個(gè)epoch,強(qiáng)化學(xué)習(xí)訓(xùn)練階段在數(shù)據(jù)集上運(yùn)行100個(gè)epoch。兩個(gè)階段學(xué)習(xí)率設(shè)置為0.000 1,權(quán)重衰減因子設(shè)為0.000 5。
本實(shí)驗(yàn)硬件環(huán)境為Inter Core i7-6500k CPU 3.4 GHz,并搭配兩個(gè)GeForce GTX 1080Ti 11 GB顯存的GPU。軟件環(huán)境為Python3.6和Pytorch1.1.0。本次實(shí)驗(yàn)在數(shù)據(jù)VOT2016上進(jìn)行評(píng)估,首先將提出的算法與其他算法進(jìn)行對(duì)比分析,分析該算法整體跟蹤準(zhǔn)確性和成功率;然后進(jìn)行消融實(shí)驗(yàn),分析跟蹤算法強(qiáng)化學(xué)習(xí)訓(xùn)練對(duì)跟蹤效果的影響。
VOT數(shù)據(jù)集最重要的兩個(gè)評(píng)價(jià)指標(biāo)是精度(Accuracy)和魯棒性(Robustness)。精度越大,跟蹤算法準(zhǔn)確度越高,魯棒性越大,跟蹤算法魯棒性越低。跟蹤器在第t幀上的精度計(jì)算如式(11)所示,其中Nrep為序列重復(fù)跟蹤次數(shù),Φt(k)為第k次測(cè)試的跟蹤精度。平均跟蹤精度計(jì)算如式(12)所示,其中Nvalid為視頻序列中有效幀數(shù)量。
(11)
(12)
魯棒性計(jì)算類似精度計(jì)算,計(jì)算方式如式(13)所示。F(k)為第k次測(cè)試跟蹤失敗的次數(shù)。
(13)
實(shí)驗(yàn)比較了多個(gè)目前在VOT2016上性能表現(xiàn)優(yōu)異的算法,它們分別是ADNet[10]、Struck[21]、CCOT[22]、SRDCF[23]、KCF[23]、MDNet[24]、SAMF[25]、SiamRPN[5]、Staple[26]、TCNN[27],所有算法的精度與魯棒性結(jié)果對(duì)比如表1所示,表中數(shù)字標(biāo)注加黑的是第一名,數(shù)字加下劃線的是第二名,數(shù)字加波浪線是第三名。提出的算法精度達(dá)到0.526 3,相比相關(guān)濾波算法KCF,算法精度提高3%。在算法只使用300個(gè)視頻數(shù)據(jù)訓(xùn)練條件下,算法精度只比SiamRPN算法低2%,這說明利用強(qiáng)化學(xué)習(xí)能很好地利用視頻數(shù)據(jù)訓(xùn)練神經(jīng)網(wǎng)絡(luò)。算法運(yùn)算能力為每秒處理8幀圖片,相比MDNet算法,處理速度更快。通過減少目標(biāo)判別器更新頻率和動(dòng)作決策次數(shù),能加快算法跟蹤速率。算法魯棒性相對(duì)SiamRPN、MDNet更低,VOT測(cè)試中失敗次數(shù)更多,使用更多的數(shù)據(jù)集用于訓(xùn)練能提高目標(biāo)跟蹤算法魯棒性。對(duì)比同為強(qiáng)化學(xué)習(xí)的跟蹤算法ADNet,得益于強(qiáng)化學(xué)習(xí)決策過程和主干網(wǎng)絡(luò)的改進(jìn),提出的方法綜合表現(xiàn)更優(yōu)。基于強(qiáng)化學(xué)習(xí)的跟蹤方法主要通過減少目標(biāo)搜索空間加快跟蹤速度,但每次目標(biāo)偏移決策都會(huì)影響后續(xù)跟蹤結(jié)果,即會(huì)逐漸放大錯(cuò)誤偏移決策的影響,容易出現(xiàn)目標(biāo)逐漸丟失的情況,目標(biāo)丟失時(shí)只能依賴目標(biāo)判別器重新搜索目標(biāo),影響目標(biāo)跟蹤的精度和魯棒性。
表1 各跟蹤算法在VOT測(cè)試結(jié)果對(duì)比
為了驗(yàn)證強(qiáng)化學(xué)習(xí)訓(xùn)練對(duì)跟蹤算法的影響,設(shè)計(jì)兩個(gè)跟蹤算法。跟蹤器1為表1中Our_tracker1,僅包含監(jiān)督訓(xùn)練過程,跟蹤器2為表1中Our_tracker2。使用跟蹤器1訓(xùn)練結(jié)果作為跟蹤器2的預(yù)訓(xùn)練網(wǎng)絡(luò)繼續(xù)強(qiáng)化學(xué)習(xí)訓(xùn)練階段,結(jié)果如表1最后兩行所示,增加強(qiáng)化學(xué)習(xí)訓(xùn)練階段能有效提高跟蹤器的精度和魯棒性。
表2給出了各跟蹤算法在不同場(chǎng)景視頻序列下精度對(duì)比,測(cè)試場(chǎng)景包括:CM相機(jī)運(yùn)動(dòng)、IC光線變化、MC運(yùn)動(dòng)變化、OCC遮擋、SC形變。表中數(shù)字標(biāo)注加黑的是第一名,數(shù)字加下劃線的是第二名,數(shù)字加波浪線是第三名。跟蹤器2在目標(biāo)形變場(chǎng)景下精度為0.5157,表現(xiàn)最優(yōu),遮擋場(chǎng)景下精度前三,精度為0.459 5。由于算法輸入是目標(biāo)出現(xiàn)偏移的圖像塊,目標(biāo)可能出現(xiàn)在圖像邊界,僅包含部分外觀信息,通過離線訓(xùn)練和特定目標(biāo)微調(diào)使跟蹤方法學(xué)習(xí)目標(biāo)偏移信息,對(duì)于遮擋和形變場(chǎng)景,跟蹤算法依據(jù)部分外觀信息搜索目標(biāo)位置,所以提出的算法在這些場(chǎng)景下更具優(yōu)勢(shì)。對(duì)于相機(jī)運(yùn)動(dòng)和運(yùn)動(dòng)變化場(chǎng)景,目標(biāo)相對(duì)運(yùn)動(dòng)速度較快,位置變化較大,導(dǎo)致目標(biāo)可能出現(xiàn)在搜索區(qū)域外,而提出的跟蹤算法搜索空間較小,容易發(fā)生目標(biāo)丟失的問題,降低算法的跟蹤精度。
表2 各跟蹤算法不同場(chǎng)景下精度對(duì)比
續(xù)表2
基于強(qiáng)化學(xué)習(xí)提出目標(biāo)框偏移決策跟蹤方法,為目標(biāo)框移動(dòng)設(shè)計(jì)中心移動(dòng)、縮放和旋轉(zhuǎn)動(dòng)作,以強(qiáng)化學(xué)習(xí)的方式使用較少視頻序列數(shù)據(jù)訓(xùn)練動(dòng)作決策網(wǎng)絡(luò),同時(shí)引入新的殘差網(wǎng)絡(luò)增強(qiáng)骨干網(wǎng)絡(luò)特征表達(dá)能力。實(shí)驗(yàn)表明提出的算法能有效應(yīng)對(duì)多種復(fù)雜場(chǎng)景,特別是目標(biāo)形變場(chǎng)景,具備較高的跟蹤精度和魯棒性。由于強(qiáng)化學(xué)習(xí)訓(xùn)練過程緩慢,訓(xùn)練集數(shù)量和視頻場(chǎng)景類別不夠充足,因此算法還有待提高。針對(duì)此問題,接下來將重點(diǎn)改進(jìn)模型訓(xùn)練過程,增加數(shù)據(jù)集,提高網(wǎng)絡(luò)收斂速度和算法跟蹤精度。