張 睿,宋荊洲,李思昊
北京郵電大學 自動化學院,北京 100876
目標跟蹤一直是計算機視覺的一大熱門研究領域,在智慧醫療、智慧城市、機器人技術等前沿科技領域都扮演著重要的角色。近年來,目標跟蹤技術也有著極大發展。
目前主流的目標跟蹤算法主要分為兩大方向,一個主要方向是基于相關濾波的,另一個主要方向是基于深度學習的。相關濾波跟蹤算法的核心是訓練一個濾波模板,即分類器,用于將目標從背景信息中分離出來。Bolme等人[1]提出了最小均方誤差濾波(Minimum Output Sum of Squared Error,MOSSE)。Henriques等人[2]提出了一種循環結構跟蹤器(Circulant Structure Tracker,CSK)。Danelljan等人[3]提出了一種基于準確尺度評估的魯棒跟蹤算法(Discriminative Scale Space Track,DSST)。成悅等人[4]提出在相關濾波的基礎上,使用加權方法融合多種特征,增強算法的魯棒性。基于相關濾波的算法存在很多不足,如在遇到目標發生較大形變與尺度變換或背景與目標高度相似等情況時不能很好地跟蹤目標,此外,該類算法需要頻繁更新濾波模板,導致跟蹤算法的速度變慢。
近幾年,孿生神經網絡的發展使得深度學習在目標跟蹤上的應用產生了質的飛躍,基于孿生神經網絡的系列算法也一度成為近年來最主流的目標跟蹤算法,其在跟蹤準確性和時效性上相比于過去的算法都有了很大的提升。Bertinetto等人[5]提出了一種基于全卷積孿生神經網絡的目標跟蹤算法(SiamFC),該算法接收一個尺寸較小的模板圖像與一個尺寸較大的待檢測圖像,將兩張圖像同時通過上下兩個完全相同的AlexNet[6]網絡,生成兩張特征圖,然后將模板圖像所得到的特征圖作為卷積核,做互相關操作,在生成的響應結果圖中找到得分最高的位置,再經過上采樣還原成原圖尺寸后,其對應的區域即為目標區域。SiamFC算法在精度和魯棒性上較傳統跟蹤算法都有較大的提升,但無法應對目標尺度,形狀的劇烈變化。Li等人[7]將區域建議網絡(Region Proposal Network,RPN)與孿生神經網絡相融合,提出了SiamRPN網絡,該算法在孿生網絡的基礎上添加了RPN網絡,直接對同一位置k個不同尺度和寬高比的錨點進行分類和位置的回歸,一定程度上提高了算法在應對目標形狀和尺度變化時的魯棒性。Li等人[8]在SiamRPN的基礎上提出了SiamRPN++網絡,將更深層次的ResNet-50用于特征提取。Wang等人[9]提出了SiamMask網絡同時實現了目標分割與目標跟蹤。
SiamRPN算法難以跟蹤尺度變化大,形變劇烈以及劇烈旋轉的目標,主要是由于其采用了錨點機制。第一,對于錨點機制中同一位置的k個錨點,其不同的尺度和寬高比是預先設定好的,具有人為的先驗知識,無法應對目標尺度和形狀的變化劇烈,錨點機制中涉及到的這些超參數會很大程度影響算法的泛化性能。第二,為了提高算法的召回率,同一位置的錨點的數量要設計得足夠多,這無疑增加了網絡的參數量,影響了算法的時效性,同時會產生大量的負樣本,造成正負樣本的不均勻。第三,訓練時大量的IOU計算和超參數的調整也會增加算法的訓練難度。最后,SiamRPN算法是離線訓練的,模型參數不會在線更新,所以當跟蹤未在訓練集中出現的目標時,算法的魯棒性較差。
針對以上問題,本文提出了一種基于無錨點機制與在線更新的目標跟蹤算法,提高了算法對目標旋轉以及尺度與形狀劇烈變化的魯棒性,并添加了在線更新模塊,使算法能更好地應對未在訓練集中出現的目標,從而整體上提高算法的準確性。
SiamRPN算法網絡結構如圖1所示,網絡分為前后兩個部分,前半部分是孿生網絡即兩個完全相同的AlexNet網絡,負責對模板圖像和待搜索圖像進行特征提取,生成兩個特征圖,后半部分是RPN網絡,負責實現對目標位置的預測。RPN網絡采用了錨點機制,對原圖中同一個位置k個不同尺度和寬高比的錨點進行分類和位置回歸,如圖2所示。RPN網絡分為上下兩個分支,上面的是分類分支,負責對同一位置k個錨點進行分類,由于一共分為背景和目標兩類,故在最終的分類得分圖中,任意位置都對應一個2k維度的向量;下面的是回歸分支,負責預測k個錨點相對于目標區域的四個位置偏移量,故在最終的回歸響應圖中,任意位置對應一個4k維度的向量即(dx,dy,dw,dh),其中(dx,dy)代表錨點中心點相對于目標真實區域中心點的位移,(dw,dh)代表錨點寬和高相對于目標真實區域應該縮放的比例。

圖1 SiamRPN網絡結構Fig.1 SiamRPN network structure

圖2 RPN網絡錨點機制Fig.2 RPN anchor point mechanism
網絡的損失函數分為分類損失和回歸損失:

其中,Lcls為分類損失,采用交叉熵損失,Lreg為回歸損失,采用SmoothL1損失,λ為權重系數。
SiamRPN網絡中錨點的個數以及不同錨點的尺度和寬高比都是人為預先設定好的,有大量的人為先驗知識,其中涉及到的大量超參數很大程度上會影響算法的性能,即使選取了合適的超參數,算法也很難去適應目標尺度和形狀的大幅度變化,同時錨點個數k很大時,會使網絡參數量過大,會帶來正負樣本不均衡,難以訓練等問題。另外,SiamRPN網絡參數均為離線訓練,對未在訓練集中出現的目標魯棒性也不強。
本文算法的網絡結構如圖3所示,網絡的前半部分是特征提取網絡,可以有效地提取融合了不同層次信息的特征圖,網絡的后半段是無錨點網絡,負責實現對目標位置的預測,最后本文為主干網絡配備了一個在線更新模塊,使網絡對未在訓練集中出現的目標有更好的魯棒性,并能適應目標在跟蹤過程中的變化。

圖3 本文算法框架Fig.3 Framework of algorithm in this paper
孿生神經網絡不同深度的卷積特征所表征的目標信息有所差異,一般淺層次的特征能更好地表征圖像的結構信息,深層次的特征能更好地表征圖像的語義信息,良好的視覺跟蹤算法一方面要根據圖像的語義信息來區分不同的對象,另一方面需要圖像的結構信息來精確地定位目標在圖像中的位置,所以需要將不同層的卷積特征進行融合來進一步提高算法的性能。傳統的SiamRPN算法僅采用了層數很淺的AlexNet網絡,只能利用淺層特征所表征的結構信息,無法做到結構信息與語義信息相結合,故本文提出了一種多層特征融合方法,能更有效地將圖像的結構信息與語義信息相結合。
特征融合的方式有多種,常用的方法如對不同層的特征,逐通道地在相同位置進行加權平均,從而得到融合后的特征圖,該種方法未能考慮到不同通道的表現對算法的影響,使得融合后的特征表現力不足,本文為了能充分利用到不同通道的信息,在融合時采用了通道注意力機制,如圖3中所示。
如圖3中的特征提取網絡所示,本文所采用的特征提取網絡與文獻[8]相同,都是改進后的ResNet-50網絡,與文獻[8]不同的是,本文是分別將ResNet-50中block3、block4、block5的最后一層特征先進行文獻[8]中的深度互相關操作(Depthwise cross correlation),如圖4,再將生成的三張特征圖拼接到一起,并進行一次1×1的卷積操作,將通道數壓縮為256,并將通道壓縮后的特征圖通過一個通道注意力模塊得到最終融合后的特征圖。深度互相關采用逐通道互相關的方式相比于普通互相關操作保留了不同通道的信息,相比于SiamRPN中的升通道互相關降低了參數量。

圖4 深度互相關操作Fig.4 Depthwise cross correlation
本文采用了SENet[10]中的通道注意力模型,該模型可以針對不同目標自適應地學習到不同通道的重要程度,根據重要程度增強或抑制對應通道的表現,通道注意力模型如圖5所示,首先對特征圖進行全局的平均值池化,之后通過一個全連接層,并經過Relu函數激活,再通過一個全連接層,最后經過sigmoid函數進行歸一化處理,從而得到不同通道的權重,將生成的權重與原特征圖的對應通道相乘來抑制或增強不同通道的表現。

圖5 通道注意力模塊Fig.5 Channel attention module
2.2.1 回歸分支
無錨點機制最早應用于目標檢測領域,如CenterNet[11]、Denet[12]、ConerNet[13],其核心思想是直接預測目標區域中心點到目標邊界的距離或直接預測出目標左上和右下角的位置。本文基于無錨點機制,設計了無錨點網絡,無錨點網絡分為上下兩個分支,上面的為回歸分支。回歸分支最終輸出一個25×25×4的響應圖,響應圖中的每個位置(i,j)都對應于其在原圖感受野的中心點(x,y),如圖6所示。

圖6 響應圖各位置與原圖中采樣點對應關系Fig.6 Correspondence between response map and original graph
在訓練過程中,如果點(x,y)落入目標區域,該點被標記為正樣本,則該點負責預測其到目標區域邊界(ground truth)的四個距離(l,t,r,b),如圖7所示。

圖7 回歸分支預測結果Fig.7 Results of regression branch
定義目標真實區域左上角和右下角頂點坐標分別為(x0,y0),(x1,y1),定義k*(i,j)=(l*,t*,r*,b*)為點(x,y)到目標真實區域邊界的4個距離,其中:

同理,定義k(i,j)=(l,t,r,b)為點(x,y)到預測區域邊界的4個距離。
對響應圖中某一位置(i,j),若其在原圖中對應的感受野中心點(x,y)落在目標區域內,則計算其對應的IOU損失,則回歸分支的損失函數可以定義為:

其中:

T(k*(i,j))代表點(x,y)是否落在目標區域內,若落在目標區域內則取1,反之則取0,即回歸損失只計算落在目標區域內的點。LIOU(k(i,j),k*(i,j))代表預測區域與真實區域的IOU損失。
采用這種基于像素點的位置回歸預測方法,可以有效地減少人為設定的超參數的數量;而且由于錨點機制預測的是某一尺度和寬高比的bounding box相對于ground truth的偏移量(dx,dy,dw,dh),本文采用的方法是直接預測出采樣點到目標區域的4個邊界值(l,t,r,b),所以能更有效地應對目標尺度和形狀的劇烈變化;另外,采用這種無錨點方法也增加了正樣本的數量,減少了網絡的參數量,降低了算法訓練的難度。
2.2.2 分類分支
無錨點網絡的下半部分為分類分支,分類分支的上半部分得到一個25×25×2的分類得分圖。分類得分圖得到的是目標區域的大致位置。
經實驗發現落在目標區域的所有采樣點中,越遠離目標中心的點其回歸分支預測的結果越差,而越接近目標中心的點其回歸分支預測的結果越好,如圖8所示。如果在分類得分圖中不對邊緣點的得分進行抑制,會使算法的準確度大大降低。為了抑制邊緣點的表現,并突出中心點的表現,本文在分類分支下引入了一個中心度分支。中心度分支會得到一張25×25×1的中心度得分圖。在中心度得分圖中任意位置(i,j)的響應值都對應于原圖中某一采樣點(x,y)的中心度。在訓練過程中,中心度得分圖中任意位置(i,j)的中心度C(i,j)的計算公式為:

圖8 目標區域內邊緣點預測結果與中心點預測結果Fig.8 Prediction results of edge points and center point

其中,min(?)代表取最小值,max(?)代表取最大值,(l*,t*,r*,b*)為(i,j)所對應采樣點(x,y)到目標真實區域的四個距離,從式(6)可以看出,對于目標區域以外的采樣點,中心度取0,對于落入目標區域內的采樣點,越遠離目標中心,其所對應的中心度得分越低,越靠近目標中心,其所對應的中心度得分越高,圖9為目標區域內采樣點中心度可視化圖,顏色從藍到紅代表中心度從0到1,越靠近中心的采樣點,其中心度越高,反之,中心度越低;測試時,將中心度得分圖和分類得分圖在相同位置處相乘,從而抑制邊緣采樣點的得分,提高算法的準確性。

圖9 目標區域內采樣點中心度可視化結果Fig.9 Centrality visualization results of sampling points in target area
計算最終的分類得分時,將分類結果與中心度結果在相同位置上相乘,從而有效地對邊緣點進行抑制,即最終分類分支會得到目標區域中心的大致位置。
令A(i,j)為中心度得分圖上位置(i,j)的得分,中心度損失采用交叉熵損失:

分類損失Lcls也采用交叉熵損失,則總的損失函數為:

其中,λ1、λ2為權重系數,本文算法中λ1=1,λ2=3。
2.3.1 在線更新模塊原理
由于孿生網絡都是離線訓練的,在跟蹤過程中模型參數不會隨目標的變化而更新,所以針對未在訓練集中出現的目標,不能達到最佳的跟蹤效果。為了能更好地跟蹤未在訓練集中出現的目標,本文引入了一種在線更新模塊,其網絡結構如圖10所示。在線更新模塊利用深度回歸的思想,在跟蹤過程中,利用最新的視頻序列作為樣本,利用其對應的跟蹤結果作為標簽,去在線訓練一個淺層的卷積神經網絡,即圖10中兩個卷積核G1、G2,在線更新模塊會直接回歸出較為準確的目標中心的位置。將在線更新模塊生成的結果與分類分支得到的最終結果在相同位置上加權求和,從而對分類分支得到的目標中心位置進行調整,使分類分支的結果更精確,進而可以進一步提高跟蹤算法的準確性和魯棒性。

圖10 在線更新模塊網絡結構Fig.10 Online updating module network structure
如圖3中在線更新模塊所示,在線更新模塊共享了主干網絡中的特征提取網絡,將檢測分支的三個不同尺度的特征逐通道地在相同位置進行加權求和,即:

其中,H3(X)、H4(X)、H5(X)分別代表檢測分支block3、block4、block5的最后一層特征H(X)為最終得到的融合特征圖。將融合后的特征圖先進行兩次卷積操作得到一張25×25×1的分類結果圖,并與分類分支得到的最終結果進行加權求和:

其中,ponl為在線更新模塊得到的結果,pcls為主干網絡的分類結果,pcen為主干網絡的中心度結果,ω為權重系數,本文實驗中ω取為0.5,ω不同取值對實驗結果的影響可參見3.4小節。在線更新網絡可以抽象定義為:

其中,x為輸入的特征圖即H(X),ω1、ω2分別為1×1卷積和7×7卷積的權重,?1、?2為激活函數,?代表標準的卷積運算,f(x;ω)為最終的回歸結果。在線更新模塊的模型參數是在跟蹤過程中在線訓練并更新的,其損失函數定義為:

其中,i代表樣本的編號,ωk分別代表1×1卷積(k=1)和7×7卷積(k=2)的權重,yi為第i個樣本所對應的標簽值為防止過擬合采用的正則項。
樣本標簽采用高斯標簽。在跟蹤初始時將初始幀進行數據增強,對其進行相應的旋轉、偏移、模糊等操作,生成30張訓練樣本,同時得到30張樣本標簽,如圖11所示。利用訓練樣本同時對G1、G2進行訓練。之后每隔15幀訓練一次,將這15幀的圖像序列作為訓練樣本只針對G2進行訓練,以應對目標在跟蹤過程中的變化。

圖11 部分初始幀數據增強后樣本及其高斯標簽Fig.11 Part of initial frame data enhanced sample and their Gaussian labels
2.3.2 牛頓-高斯混合共軛梯度法
為保證算法的實時性,在線訓練過程要盡可能地快,由于傳統的隨機梯度下降算法收斂慢,無法滿足跟蹤算法的實時性要求,受文獻[14]的啟發,本文采用一種牛頓-高斯混合共軛梯度的方法進行模型的在線訓練,采用這種方法,訓練時可以在經過較少次數的迭代后就實現收斂。
針對第i個樣本其損失函數為:

其中,i代表樣本編號,y i為第i個樣本所對應的標簽值,f(x i;ω)為第i個樣本的回歸結果。


其中,Jω為參數ω的雅克比矩陣。為了求得Δω使得L*(Δω)極小,應該對上式求導,進而得迭代公式ω=ω+Δω。為了避免求逆,且式(16)滿足共軛梯度法求解形式,本文采用共軛梯度法求Δω,共軛梯度法的思想是,選擇一個優化方向后,選擇一個步長對參數進行更新,且選擇的步長應能將這個方向的誤差更新完;共軛梯度法相較于傳統梯度下降法可以更快地到達L*(Δω)的極小值點,進而整體上使算法的收斂速度更快。
共軛梯度法的核心是求出每次迭代時的優化方向和步長。每次迭代選擇的優化方向p k的更新公式為:

其中,k代表第k次迭代,gk代表第k次迭代L*(Δω)對Δω的梯度。
每次迭代的優化步長αk為:

每次迭代的梯度g k的更新公式為:

詳細的共軛梯度法的推導和證明過程以及其較梯度下降法的優勢不在本文的討論范圍內,感興趣的讀者可參見文獻[14]。
算法偽代碼為:


其中外層循環是牛頓-高斯法,迭代更新ω,共迭代NGN次,內層循環是共軛梯度法,共迭代NCG次。每次進如外層循環時,先進行初始化操作。進入內層循環后,對于內層循環的第k+1次迭代,計算優化方向pk+1,之后計算步長α,并更新梯度g和Δω。經實驗,本文取NGN=6,NCG=10,此時在線訓練可以大致達到速度與精度的平衡。
在線跟蹤時,第一幀先選定目標區域,之后將得到的目標區域作為模板圖像,后續的視頻幀作為待搜索圖像,送入到本文算法的網絡中,在最終的分類得分結果圖中選取得分最高的點,再在與其相鄰的n個點中選取得分前k大的三個點,分別計算回歸結果中這k+1個點(包含最大值點)所對應的四個邊界值(l,t,r,b)的平均值即為跟蹤結果。本文實驗中n取8,k取3。跟蹤初始時對初始幀進行數據增強,生成對應的樣本和標簽送入到在線更新模塊進行訓練,之后每15幀對模型進行一次更新。
本文是在Windows平臺,利用Pytorch進行算法的測試和訓練,利用Nvidia RTX2080Ti顯卡進行計算加速。模板分支輸入圖像尺寸為127×127,測試分支輸入圖像尺寸為255×255。對于離線模型,訓練時采用隨機梯度下降法,每個batch的大小為96,一共訓練20個epoch,對于前10個epoch,凍結前半部分孿生網絡的參數,單獨訓練后半部分的分類分支和回歸分支,對于后10個epoch,解凍Resnet-50的后三個block的參數,訓練時采用的訓練集為Youtube-BB[15]、ImageNet VID、ImageNet DET[16]以及COCO[17]。
OTB100[18]測試集包含了100個極具挑戰和代表性的視頻,這些視頻分別體現了目標在跟蹤過程中一定程度上的形變、旋轉、尺度變化以及跟蹤過程中背景模糊,光照變化等因素。OTB100的評價指標為成功率與準確率,其中成功率指預測區域與目標真實區域重疊率大于一定閾值的幀數與總幀數的比值,準確率指的是預測區域中心與目標真實區域中心位置誤差值小于某一閾值的幀數占總幀數的比值。本文利用OTB100測試集對本文算法與目前主流的幾種跟蹤算法進行對比,包括SiamRPN、SiamFC、ECO-HC[19]、SRDCF[20]、STAPLE[21]、DSST[3]、KCF[22]。圖12為OTB100下不同算法成功率與準確率曲線圖,從圖12中可以看出,本文算法在成功率和準確率上相較于目前主流的跟蹤算法,都有較大的提升,本文算法相較于基線SiamRPN算法,成功率提升了0.062,準確率提升了0.065,相較于基于相關濾波的算法ECO-HC成功率提升了0.065,準確率提升了0.074。圖13為OTB100中尺度變化、形變以及旋轉三種不同屬性視頻下準確率和成功率曲線圖,從圖13中可以看出本文算法在應對目標尺度變化、形變以及旋轉時,都有最好的表現,其準確率和成功率較基線SiamRPN算法都有較大的提升,這主要得益于無錨點機制對目標變化的適應能力以及在線更新模塊對新目標的魯棒性。

圖12 OTB100數據集中各算法準確率與成功率Fig.12 Accuracy and success rate of each algorithm in OTB100

圖13 OTB100中各算法在目標尺度變化、形變與旋轉情況下準確率與成功率Fig.13 Accuracy and success rate of each algorithm in OTB100 when target scale changing,deforming and rotating
VOT Benchmark[23]是一個評測視覺目標跟蹤算法性能的測試平臺,其主要評測指標包括精度(A),魯棒性值(R)和期望平均重疊值(EAO)。精度表示算法預測區域與目標真實區域的重疊率,魯棒性表示算法在視頻序列中的失敗情況,期望平均重疊值是算法的綜合性能指標。精度和期望平均重疊值越大,說明算法的精確度越優秀,魯棒性越小,說明算法失敗的次數越少,更能應對復雜的場景。為了進一步驗證本文算法的有效性,本文利用了VOT2018測試集對本文算法與另外幾種主流跟蹤算法進行對比,包括SiamRPN、DaSiam-RPN[24]、SA_Siam_R[25]、UPDT[26]、CRPN[27]、ECO[19],其對比結果見表1。從表1中可以看出本文算法相較于基線SiamRPN算法精度提高了0.011,期望平均重疊值提高0.084,魯棒性提高了0.108,在所對比的算法中精度、期望平均重疊值最高,魯棒性最低,說明本文算法在跟蹤的準確性上具有最好的效果,且對目標變化的魯棒性最好。在跟蹤的時效性上,本文算法可以達到43 frame/s,較SiamRPN算法低,一是因為本文特征提取網絡層數深,二是因為本文包含的在線更新模塊需要在線訓練,所以總體上速度會降低,但仍能基本滿足實時性需求。

表1 VOT2018上幾種主流算法性能對比Table 1 Comparison of different algorithms on VOT2018
為說明本文算法的有效性,分別測試了算法在具備不同組件時其在OTB100數據集上的表現,實驗結果如表2所示。從表2中可以看出,算法1不具備任何組件,其跟蹤效果最差;算法2缺少了中心度分支和在線更新模塊,成功率為0.613準確率為0.819,均不如SiamRPN(成功率0.635,準確率0.853),主要原因是在分類結果中沒有對目標區域內邊緣點的得分值進行抑制,使得算法總體的準確度和成功率大大降低。

表2 算法具備不同組件時在OTB100上的成功率與精確率Table 2 Performance of algorithm with different components on OTB100
算法3在算法2的基礎上增加了中心度分支后,在分類結果中對邊緣的得分進行了抑制,突出了中心點,從而使算法的成功率和準確率都得到了提高。
算法4在算法3的基礎上添加了在線更新模塊,使算法的成功率和精確度得到了進一步的提高,主要原因是在線更新模塊可以利用最新的跟蹤結果直接回歸出目標的中心位置,提高了目標中心區域的定位精度,進而總體上提高了算法的準確度,并且由于利用了最新的跟蹤結果對網絡不斷更新,也使算法能更好地適應目標的變化。
為驗證在線更新模塊中權重系數ω對算法性能的影響,本文測試了ω取不同值的情況下算法在OTB100數據集上的表現,實驗結果如圖14所示。從實驗結果可以看出,當ω>0時,算法的成功率和準確率都要比ω=0時大,說明在線更新模塊確實會一定程度上對分類分支得到的目標中心位置進行調整,從而使算法性能有不同程度上的提高。從圖14中可以看出當ω=0.5時算法的成功率和準確率最高,說明此時,在線更新模塊對分類分支所得結果的調整程度最恰當,最終得到的目標中心位置最準確,故算法整體上性能最好,所以本文算法中ω取0.5。

圖14 OTB100數據集下ω不同取值對算法的影響Fig.14 Impact of differentωon performance of algorithm in OTB100
為驗證本文算法多層特征融合時采用通道注意力機制的優越性,本文在進行多層特征融合時,分別采用了通道注意力機制與加權平均兩種方式,并對這兩種融合方式在OTB100數據集上進行了對比實驗,實驗結果如表3所示,實驗表明采用通道注意力機制的方法較另一種方法準確率提高了0.016,成功率提高了0.008,這是由于采用逐通道相同位置元素加權平均的方法沒能充分考慮到對于不同目標,不同通道有不同表現力這一特性;而通道注意力機制可以自適應地學習到不同通道的權重,針對不同目標增強或抑制不同通道的表現,從而整體上使算法性能得到進一步的提升。

表3 不同多層特征融合方式下算法性能對比Table 3 Performance of algorithm with different multi-layer feature fusion method
為了更直觀地表現本文算法對目標旋轉、形變與尺度變化的魯棒性,本文選取了OTB100數據集中幾個典型視頻序列的跟蹤結果,如圖15所示。

圖15 典型視頻序列上各算法跟蹤結果對比Fig.15 Comparison of different algorithms on typical video sequences
圖15(a)、(b)兩個視頻序列體現了目標在跟蹤過程中的尺度變化。在(b)視頻序列的第1 048幀,目標的尺度發生了巨大的變化,從圖15中可以看出,本文算法較其他算法跟蹤的效果最好,主要是因為本文算法采用了無錨點機制,能夠直接回歸出目標中心點到目標區域邊界的4個距離,所以能更好地應對目標的尺度變化。而SiamRPN算法只是將設定好的錨點進行一定程度的偏移和縮放,SiamFC等算法更是缺少尺度自適應機制,故這些算法只能跟蹤到目標的局部,跟蹤效果較差。
圖15(c)、(d)兩個視頻序列體現了目標在跟蹤過程中的形狀變化。在(c)視頻序列的第648幀,目標的形狀發生了劇烈變化,從圖15中可以看出,本文算法的跟蹤效果最好,其他算法都發生了一定程度上的漂移,一方面是因為本文采用了無錨點機制,能更好地應對目標形變,另一方面由于本文配備的在線更新模塊能一定程度適應目標的變化,從而進一步提升了算法對目標形變的魯棒性。
圖15(e)、(f)兩個視頻序列體現了目標在跟蹤過程中的旋轉。在(f)視頻序列的第180幀,目標發生了較大的旋轉,從圖中可以看出,本文算法的跟蹤效果最佳,其他算法跟蹤到了目標的局部或發生了一定的漂移,這說明本文的無錨點機制和在線更新模塊對目標旋轉有一定程度的自適應能力。
本文提出了一種基于無錨點機制與在線更新的目標跟蹤算法,對現有的SiamRPN算法做出了改進。本文首先提出了一種多層融合的特征提取網絡,使網絡能充分利用圖像的結構與語義信息;其次基于無錨點機制設計了無錨點網絡,直接預測目標區域內采樣點到目標區域邊界的四個值,有效避免了錨點機制的相關缺點,對跟蹤過程中目標的形變、旋轉與尺度變化有更強的魯棒性;最后,在孿生網絡的基礎上添加了在線更新模塊,利用最新的跟蹤結果去在線訓練一個淺層的網絡,一方面能更好地預測未在訓練集中出現的目標,另一方面可以使算法適應目標的變化。本文利用OTB100與VOT2018兩個測試集對本文算法與幾種主流的跟蹤算法進行對比,相較于SiamRPN算法,在OTB100數據集上本文算法在成功率與準確率上提高了0.062與0.065,對目標的形變、旋轉以及尺度變化表現出了更良好的魯棒性。