李曉艷,王鵬,郭嘉,李雪,孫夢宇
(西安工業大學 電子信息工程學院,陜西 西安 710021)
近年來,隨著人工智能和智能算法處理技術的不斷發展和廣泛應用,目標跟蹤一直備受關注.目標跟蹤主要是在目標受到光照變化、遮擋、尺度變換、形變等復雜情況下,僅通過首幀中的目標位置和尺度信息,便可以實時、準確地對后續幀中的目標進行定位和尺度估計.
基于孿生網絡的目標跟蹤一直是國內外該領域的重點研究方向.Bertinetto等[1]提出基于離線端到端訓練的SiamFC算法.Valmadre等[2]提出CF-Net,是在SiamFC的結構上加入可以端到端訓練的相關濾波器層.He等[3]提出SA-Siam,構建2個孿生網絡框架,一個是語義網絡,另一個是外觀網絡,2種網絡互補,提升了目標跟蹤的性能.Li等[4]為了應對基于孿生網絡的目標跟蹤無法有效利用深度網絡特征的問題,成功訓練了基于ResNet[5]架構的SiamRPN++算法.Wang等[6]提出的SiamMask結合目標跟蹤和目標分割2種網絡,可以同時完成視頻跟蹤和分割的任務.為了使跟蹤領域的理論結構更加完善,Xu等[7]提出Siam-FC++,在SiamFC的基礎上引入分類分支和目標狀態估計分支.本文通過加入雙注意力機制,新增上一幀模板分支及局部擴大搜索方式,提升了目標跟蹤的性能.
由于SiamRPN++在跟蹤過程中不能有效地應對嚴重遮擋或目標嚴重形變的問題,使得在跟蹤過程中應對遮擋情況的效果不佳,對復雜背景下的目標判別能力不強.針對以上問題,在原有的主干網絡上加入雙注意力機制,提升跟蹤過程的抗干擾能力.增加上一幀模板分支,采用三元組損失用以應對目標嚴重形變時的情況.在判斷目標受到遮擋后,依據目標移動速度進行局部擴大搜索,做到跟蹤過程中目標在受到短時完全遮擋后可以重新跟蹤到目標.改進后的算法跟蹤模型的總體結構如圖1所示.
圖1中,ECA_GEC_RPN表示添加雙注意力機制改進后的RPN模塊,經過共同加權融合定位目標后,確定目標位置及尺度.在此過程中會監測跟蹤目標的置信度,當置信度低于閾值τ1時,上一幀模板分支對樣本及時進行更新,共同加權融合,確保在目標產生較大變化時,對目標的預測保持穩定.當置信度低于閾值τ0時,依據目標的運行速度,對跟蹤區域進行局部擴大搜索,直至發現目標.
注意力機制能夠根據不同特征在分類和回歸操作中的貢獻程度,為特征的重要通道或空間分配較高的權重,使得整體網絡表現出更強的跟蹤效果[8].將雙注意力機制與RPN區域提議網絡相結合,如圖2所示.

圖2 結合雙注意力的RPN結構圖Fig.2 RPN structure diagram combined with dual attention
ECA[9]結構即是通道注意力模塊,用以學習生成不同模板特征的通道相關的權重.為了減少無關圖像區域的干擾,提高圖像的空間感知性能,搜索圖像不直接通過通道注意力機制模塊.搜索分支的優化是從網絡特性的角度考慮,孿生網絡中采用卷積神經網絡對目標進行特征提取,但在該方式下提取到的目標特征只是目標的局部特征,沒有獲取全局上下文特征.為了更好地使用本文特征提取網絡中所提取的淺層、中層和深層特征,也為了增強搜索分支的特征提取能力,引入全局上下文注意力機制,提升目標跟蹤過程中的泛化能力.
通道注意力ECA模塊由平均池化層、全連接層、一維卷積核和激活函數層組成,結構如圖3所示.該模塊的輸入為各個通道的深度特征圖Fw×h×d=,其中w、h、d分別為寬、長和通道數,即模板分支不同層次的特征.經過平均池化層降采樣縮小輸入特征圖的規模,減少與空間無關的計算,生成尺度較小的通道特征圖Fw′×h′×d′作為第1個全連接層的輸入.SE-Net[10]注意力機制模塊采用激活函數跨通道降維的方式實現非線性跨通道交互,會造成有效信息的丟失.為了更準確地賦予通道權重,如圖3所示,采用無降維的局部跨通道交互策略,利用大小為k的快速一維卷積生成新的全連接層,其中k通過通道數d自適應確定.通過Sigmoid激活,得到各個通道的權重.將生成的權重與輸入特征相乘,以此來得到最終的通道注意力特征圖通道i的注意力特征圖如下:

圖3 通道注意力模塊結構圖Fig.3 Structure diagram of channel attention model
式中:×為矩陣向量的數乘.
k決定交互的覆蓋范圍,不同的通道數和卷積塊可能會有不同的表現.一般認為通道尺寸越大,長交互作用效果越強;通道尺寸越小,短交互作用效果越強.根據這種映射關系,求取k的關系式如下:
由于通道數常為2的整數次冪,用2(γk-b)取代指數次冪,其中γ和q表示常數經驗值.對于給定的d,可以自適應確定內核k:
對搜索分支進行優化后,再將改進后的GCNet[11]添加至搜索分支,用于獲取非局部信息.主要的工作過程如下:采用1×1卷積Wk和Softmax函數在上下文建模的全局注意力機制中得到自注意力權重;通過特征轉換,獲取通道依賴性;使用加權,將全局上下文特征聚合到每一個位置的特征上.全局上下文模塊工作過程的表達式如下:
式中:X為該網絡結構的輸入,Z為該網絡結構的輸出,Np為圖像上的所有位置數,為上下文模型, δ(·)為捕獲信道依賴關系的特征變換,M(·,·)為融合函數.
改進前、后的全局上下文模型的詳細結構如圖4所示.如圖4(a)所示為未改進的全局上下文模塊,如圖4(b)所示為改進后的全局上下文模塊,模塊內的各階段與3個過程對應.從圖4(a)可以看出,全局上下文注意力模塊結合了全局注意力模塊Wk與SE-NET模塊Wv1,由于ECA具有更優的通道注意力性能,將Wv1模塊中的LayerNorm操作替換為ECA的快速一維卷積.

圖4 全局上下文注意力模塊的結構圖Fig.4 Structure diagram of global context attention module
搜索分支的特征輸入至改進后的全局上下文網絡,依次通過主要操作的3個過程.通過3個過程對特征進行轉化后,獲取到通道依賴性的部分.使用ECA通道注意力機制,既提升了通道注意力機制的性能,又使得網絡結構輕量化.全局上下文模型表示如下:
該網絡結構屬于輕量級模型,全局注意力的應用使得網絡能夠捕獲遠程非局部特征.經過全局注意力特征提取后,再轉化為通道注意力進行權重賦值,可以有效地提升孿生網絡的目標跟蹤性能.
為了提升孿生網絡目標跟蹤在應對目標形變較大或短時嚴重遮擋情況下的跟蹤性能,如圖1所示,添加上一幀模板分支.圖中,上層表示模板分支,固定以第1幀z0為模板,輸入圖像的大小為127×127像素;中間部分是搜索分支,也是后續幀x的輸入,輸入圖像的大小為255×255像素;下層表示上一幀模板分支,當判別目標受到部分遮擋時發生的較大形變后,將遮擋前的定位結果進行裁剪,得到新的模板幀zp,輸入圖像的大小與第1幀模板分支相同,與搜索分支進行相似性判別后,開展深度特征融合與聯合判別.
與雙分支不同的是,三分支孿生網絡在訓練過程中將圖像分成3組.第1幀模板分支是隨機從一個視頻序列中選擇一幀,搜索分支中正樣本是從當前視頻序列中隨機選取圖像,負樣本是從其他視頻序列或添加好的目標跟蹤數據集中獲取.為了防止目標外觀變化過大所帶來的不利影響,設定兩分支中選取的2幀圖像之間間隔不超過100幀,上一幀模板的選取與搜索幀的序號有關.為了使得搜索分支的圖像與上一幀模板分支圖像中的目標外觀相差較小,上一幀模板選取的設計條件如下:
式中:#為幀序號;g為幀間隔,取值為較小的正整數;|L|為視頻序列的長度,通過該操作可以達到搜索幀與上一模板幀相近的采樣效果.
跟蹤初始化時,獲取第1幀圖像同時作為第1幀模板和下一幀模板.在跟蹤過程中,第1幀模板不發生改變,當跟蹤輸出的評分一直為較高值時,不進行更新.當目標發生部分遮擋或形態變化時,跟蹤輸出的評分會低于閾值τ1,此時上一幀模板進行更新,在該過程中,會對上一次的跟蹤結果進行裁剪.為了避免較嚴重遮擋和短時完全遮擋,上一幀模板分支會在高于閾值τ0的情況下進行更新,裁剪過程如下:
式中:wrap(·)為圖像的裁剪函數,f(z0,x,zp)∈[τ0,τ1]為三分支孿生網絡目標跟蹤所得到的響應得分,b-1為選取上一幀的目標跟蹤框.
若判斷出目標響應得分處于[τ0,τ1],則對跟蹤結果進行裁剪,得到上一幀模板幀.將裁剪得到的樣本作為上一幀模板幀,更新模板分支中的第1幀圖像,更新模板進行加權判決,提高了跟蹤的抗遮擋和嚴重形變的能力.模板更新的過程如圖5所示.圖中,H表示不斷更新的搜索分支;zp表示在固定閾值內對上一幀模板分支進行更新,上一幀模板分支與第1幀模板分支一起加權融合定位目標,可以有效地提升目標跟蹤過程中算法在復雜場景下性能的魯棒性.

圖5 模板更新的示意圖Fig.5 Schematic diagram of template update
由于在目標形態發生嚴重變化時,引入了上一幀模板分支,用于對模板分支的圖像進行更新,這對網絡的訓練過程帶來了一定的挑戰.考慮到樣本特征的聚合,在增強目標判別能力的同時,正負樣本的特征數量會增加,此時使用傳統的交叉熵損失可能提取不到表達深層特征的目標信息.為了準確地區分復雜環境下的前景與背景,不同于雙分支孿生網絡的訓練過程,上一幀模板分支采用判別能力更強的三元組損失進行分類判別.
目標在運動過程中可能會受到車輛、樹木和建筑物的干擾,在行徑間被遮擋的情況下目標會在一段時間間隔后再次出現.此時若判別目標丟失后直接啟動全局搜索,則會大大增加計算成本.為了防止搜索過多的無效區域,在目標丟失后,采用局部擴大搜索的機制.
將目標的中點(x+w/2,y+h/2)視作目標在圖像中表示的位置,其中x、y、w、h分別為預測目標框左上角的橫、縱坐標以及框的寬和長.確定中點的優點是可以將目標視為質點,方便確定目標的運動軌跡和運動速度.計算視頻中質點的運動速度v通過幀之間質點的移動像素數n及所用時間t計算,即v=n/t可以表示目標的運行速度.為了更好地將速度作為參考量,開展歸一化操作,如下所示:
式中:vmax、vmin分別為速度列表中目標運動速度的最大值和最小值,通過歸一化操作,將速度的表示量限定在[0,1.0].通過實驗可知,擴大搜索的區域是樣本分支中目標區域的3~6倍,以此達到有效重檢測的效果.構建擴大搜索函數如下:
式中:255為原搜索模板的大小,500為擴大后的最大搜索模板大小.為了不引入過多的干擾量,擴大搜索期間不進行模板更新.
當跟蹤的得分小于一定閾值時,可以認為已經丟失目標.此時,根據目標的運行速度進行局部擴大搜索,三分支共同定位增大了目標框的穩定性,減少了漂移情況的發生,目標框的逐步擴大有利于短時完全遮擋后更加高效地跟蹤到目標.
本文的實驗環境是Intel Xeon(R) Gold 5118 CPU @2.30 GHz*48處理器、NVIDIA Quadro P6000 24 GB專業圖形顯卡,使用的深度學習框架為Py-Torch1.2.0開發環境,編程語言及版本為python3.6.5.在上述實驗環境下,批處理大小batch size設置為64,訓練的初始學習率為3×10-2,終止學習率為5×10-4,采用隨機梯度下降(SGD)的方式,動量大小設置為0.9,權重衰減率為10-4.
在以下4個訓練集上對改進算法進行訓練.
1)COCO數據集:共20 GB,主要從復雜的日常場景中截取,圖像包括328 000個視頻和2 500 000個標簽數據.每幅圖像平均包含的目標數較多,因此該數據集常用作目標跟蹤算法訓練的數據集,可以有效地增強跟蹤過程中的判別能力.
2)ImageNet-DET數據集,使用49 GB,該數據集已標記圖像中所有類別的邊界框.類別是根據不同的因素選擇的,例如對象比例、圖像混亂程度、對象實例的平均數量等.
3)ImageNet-VID數據集:約86 GB,數據集包含3 862個片段用于訓練,每個片段包括56~458幀圖像.在跟蹤算法訓練時,可以有效地提供目標在運動時的變化情況.
4)YOUTUBEBB數據集:共400 GB,含23個類別,共500萬個手動注釋的目標、緊密貼合對象邊界的邊界框,精度高于95%.由于孿生網絡的目標跟蹤算法訓練過程主要是訓練得到目標運動過程中的變化情況,因此需要大量且豐富的數據集對其進行訓練.
為了證明所提算法的有效性,在OTB100[12]數據集上分別選取若干具有挑戰的圖像序列進行測試,對算法進行定性與定量分析.定性分析是指對不同算法在相同視頻序列下的實際跟蹤效果進行對比評判,定量分析是指選取中心位置誤差、重疊率、成功率和精確度4個指標評價跟蹤結果.
為了對比所提算法,將所提算法稱為DSiam-RPNMEG++,將僅加入雙注意力機制后的算法稱為SiamRPNMEG++,將原算法稱為SiamRPNM++算法,選取跟蹤效果較優的DaSiamRPN算法與上述3種算法進行實驗對比.
如表1所示為選取的跟蹤視頻序列,在該視頻序列下分別對4種算法進行定性及定量分析.這些視頻序列以完全遮擋屬性為主,每個視頻序列還包含了其他屬性.在測試中不只考慮算法在遮擋時的表現,也能夠體現算法在其他屬性下的性能表現.

表1 跟蹤視頻序列及屬性Tab.1 Tracking video sequence and attributes
如圖6所示為4種算法在4個序列上的定性分析結果.

圖6 定性分析結果圖Fig.6 Results of qualitative analysis
如圖6(a)所示,在Suv序列中,運動目標高速移動,且受到嚴重遮擋.第476幀時,采用4種算法都可以準確地跟蹤目標.第551幀時,DaSiam-RPN發生目標框漂移.第618幀時,目標被遮擋部分所占的比重極大,只有DSiamRPNMEG++算法可以跟蹤目標.第688幀時,只有DSiamRPNMEG++算法與SiamRPNMEG++算法可以準確地跟蹤運動目標,其他算法均沒有及時地跟蹤重新出現后的目標.
在圖6 (b)的Skating1序列中,光照變化、平面外翻轉及遮擋情況較嚴重.第27幀時,目標狀態不具有挑戰性.第162幀時,目標發生遮擋,利用提出的DSiamRPNMEG++算法可以準確地跟蹤到目標, SiamRPNMEG++算法、DaSiamRPN算法及SiamRPNM++算法中的目標跟蹤框均開始有漂移的趨勢.第191幀與第241幀時,SiamRPNM++算法與DaSiamRPN算法均無法跟蹤到目標.
在圖6 (c)的Girl2序列中,目標受到相似物體的完全遮擋.第10幀時,利用4種算法都可以跟蹤到目標.第112幀時,遮擋物出現,目標不處于視野中,SiamRPNM++發生輕微漂移,10幀之后行人不再對目標形成遮擋,只有DSiamRPNMEG++算法逐步擴大搜索,跟蹤到了目標,其他算法都形成了漂移.第172幀時,利用SiamRPNMEG++、SiamRPNM++及DaSiamRPN算法無法跟蹤到目標.
在圖6(d)的Ironman中,目標受到低光照、快速移動、旋轉、遮擋等惡劣環境的影響.第21幀時,利用4種算法均可以跟蹤目標.第29幀時,DaSiamRPN發生目標框漂移,利用其他算法均可以跟蹤目標,但SiamRPNMEG++的尺度判別略微大于目標.第114幀與第142幀時,SiamRPNM++的目標跟蹤框隨著DaSiamRPN發生了漂移,脫離了目標,而利用DSiamRPNMEG++算法可以準確地跟蹤目標.
3.4.1 中心位置誤差測評 中心位置誤差的計算公式如下:
式中:C為由算法計算得到的目標中心位置,C′為數據集中由人工標定的實際目標中心位置.中心位置誤差越小,算法越好.
從圖7的4個中心位置誤差結果可知,與SiamRPNM++算法模型相比,DSiamRPNMEG++算法的中心位置誤差都降低.相較于SiamRPNMEG++算法,Suv序列誤差降低了2.6個像素點,Skating1的中心誤差減少了0.39個像素點,Girl2序列中由于SiamRPNMEG++算法不具備應對短時完全遮擋的原因表現最明顯,減少了30.15個像素點,Ironman序列減少了2.34個像素點.4個序列中心位置誤差相較于原算法平均降低了28.97個像素點.

圖7 中心位置誤差結果的曲線圖Fig.7 Curve chart of center position error results
3.4.2 重疊率測評 重疊率的計算公式如下:
式中:Sˉ 為由算法計算得到的目標覆蓋范圍,S為數據集中由人工標定的實際目標覆蓋范圍.重疊率越高,算法越好.
從圖8可知,利用DSiamRPNMEG++算法所得的重疊率表現最優,4個視頻序列均有提升,相較于SiamRPNM++算法,本文算法的重疊率平均提升了14.5%,說明三分支模板更新的孿生網絡目標跟蹤,可以有效地提高目標在復雜環境下的跟蹤性能.為了說明本文算法在遮擋屬性下的有效性,在OTB100數據集上選取10個復雜環境下的嚴重遮擋與短時完全遮擋序列,測試結果如表2所示.表中,lavg為平均中心位置誤差,Oavg為平均重疊率.

表2 10個跟蹤視頻序列下的平均中心位置誤差與重疊率Tab.2 Average center position error and overlap rate for 10 tracking video sequences

圖8 重疊率結果曲線圖Fig.8 Overlap rate result curve
從表2可知,在具有嚴重遮擋與短時完全遮擋屬性的視頻序列上進行測試,改進后的DSiamRPNMEG++的平均中心位置誤差較改進前的Siam-RPNM++降低了37.1個像素點,平均重疊率提升了12%,證明本文算法在跟蹤結果上有一定的提升.
3.4.3 成功率 成功率指的是所有視頻序列中重疊率大于特定閾值的幀數占總幀數的比例.所得的結果越高,跟蹤效果越好.成功率的計算公式如下:
式中:Ts為跟蹤重疊率大于特定閾值的幀數,T為跟蹤視頻的總幀數.
3.4.4 精確度 精確度指的是所有視頻序列中,中心位置誤差小于固定閾值的幀數占總幀數的比例.精確度的計算公式如下:
式中:Tp為跟蹤誤差小于跟蹤閾值的幀數,T為跟蹤視頻的總幀數.
為了更好地表現本文算法的跟蹤性能,在OTB100整體數據集上開展實驗,分別得到成功率和精確度結果曲線圖,如圖9所示為實驗結果.

圖9 OTB100數據集下的成功率和精確度結果曲線圖Fig.9 Curve of success rate and precision results under OTB100 data set
從圖9(a)、(b)可知,在OTB100數據集上,DSiamRPNMEG++算法在所測試的4種算法上取得了最優成績.相較于SiamRPNM++算法,DSiam-RPNMEG++算法在成功率上提升了2.4%,在精確度上提升了1.6%,提升效果顯著;相較于Siam-RPNMEG++算法,成功率提升比較明顯,提升了1.4%,精確度提升了0.4%.
當受到遮擋和目標發生形變時,在OTB100數據集下的總體成功率如圖10所示.

圖10 OTB100數據集下包含遮擋和形變屬性序列下的總體成功率結果曲線圖Fig.10 Overall success rate result curve under OTB100 dataset including occlusion and deformation attributes
當受到遮擋和目標發生形變時,在OTB100數據集下的總體精確度如圖11所示.

圖11 OTB100數據集下包含遮擋和形變屬性序列下的總體精確度結果曲線圖Fig.11 Overall precision result curve under OTB100 dataset including occlusion and deformation attributes
本文針對目標跟蹤受到遮擋的問題,通過提出加入雙注意力機制,新增上一幀模板分支及局部擴大搜索策略來提升目標跟蹤性能.在目標跟蹤領域,解決長時場景下目標受到遮擋時跟蹤性能下降的問題是未來需要突破的方向.