孫子文,錢立志,袁廣林,凌 沖
(1 陸軍炮兵防空兵學(xué)院高過載彈藥制導(dǎo)控制與信息感知實(shí)驗(yàn)室,安徽 合肥 230031;2 陸軍炮兵防空兵學(xué)院信息工程系,安徽 合肥 230031)
經(jīng)典的基于彈載圖像目標(biāo)跟蹤方法,旨在第一幀給定目標(biāo)初始位置后,使用特定的特征提取方法提取目標(biāo)的特征,然后在目標(biāo)周圍區(qū)域進(jìn)行樣本采樣,通過目標(biāo)特征與樣本特征比對之后,將最相似位置作為下一幀圖像中的目標(biāo)位置。圖1為經(jīng)典的基于彈載圖像目標(biāo)跟蹤算法在跟蹤目標(biāo)時所遇到的挑戰(zhàn)場景,彈載圖像自尋的炮彈打擊目標(biāo)時,一方面受彈目距離影響,彈載圖像目標(biāo)會出現(xiàn)尺度非線性變化;另一方面,炮彈在空中彈載環(huán)境成像會受復(fù)雜戰(zhàn)場中云雨雪霧、草地樹木等背景信息以及相似目標(biāo)的干擾,導(dǎo)致圖像自尋的炮彈目標(biāo)定位準(zhǔn)確性降低。
圖1 經(jīng)典的基于彈載圖像目標(biāo)跟蹤算法目標(biāo)挑戰(zhàn)Fig.1 Classical object tracking algorithm based on ballistic image object challenge
經(jīng)典的基于彈載圖像目標(biāo)跟蹤算法無法有效解決這類問題。2017年Transformer首次被Vaswani等[1]應(yīng)用于機(jī)器文本翻譯任務(wù),隨后Transformer憑借高效提取上下文信息以及全局建模的能力被廣泛應(yīng)用在視覺領(lǐng)域?;赥ransformer的目標(biāo)跟蹤方法對大數(shù)據(jù)的適配能力更強(qiáng),隨著數(shù)據(jù)量的增加,模型的表現(xiàn)越來越好。不僅Transformer中的每個參數(shù)都是動態(tài)的,具有更強(qiáng)的可學(xué)習(xí)性,而且Transformer擁有自注意力機(jī)制,更關(guān)注特征之間的相互關(guān)系,能有效獲得全局信息,并且通過多頭注意力機(jī)制可以將其映射到多個空間,使模型表達(dá)能力變強(qiáng)。因此,設(shè)計一種能夠結(jié)合Transformer模型的優(yōu)勢有效解決彈載圖像中目標(biāo)尺度不斷發(fā)生變化、相似目標(biāo)以及復(fù)雜背景等干擾因素的基于彈載圖像目標(biāo)跟蹤算法是非常必要的。
基于Transformer的目標(biāo)跟蹤方法一般包括深度特征提取主干網(wǎng)絡(luò)、Transformer特征融合模塊以及預(yù)測頭3個部分。2021年Yu等[2]提出了一種基于Transformer的跟蹤器DTT,能夠利用豐富的場景信息,在端到端學(xué)習(xí)中生成判別特征。為了提升模型的跟蹤精度,改進(jìn)經(jīng)典的Transformer,使其在目標(biāo)跟蹤領(lǐng)域發(fā)揮更大的性能。TransT方法[3]用基于自注意力的自我上下文增強(qiáng)模塊和基于交叉注意力的交叉特征增強(qiáng)模塊交叉融合的方式代替經(jīng)典Transformer,大幅提升跟蹤性能。TrSiam和TrDiMP方法[4]也對經(jīng)典Transformer進(jìn)行完善,省略全連接的前饋層和保持輕量級的單頭自注意力,在跟蹤速度和性能上取得非常好的平衡。Track[5]將經(jīng)典Transformer改成單個實(shí)例級關(guān)注層實(shí)現(xiàn)實(shí)時可視化轉(zhuǎn)換器模塊示例Transformer,實(shí)驗(yàn)跟蹤精度提升明顯。為了提升模型整體的性能,CSWinTT方法[6]改進(jìn)現(xiàn)有逐像素求取注意力時破壞目標(biāo)完整性,影響跟蹤性能的問題。采用逐窗口計算特征注意力的方式代替逐像素,將注意力機(jī)制從像素級別提升至窗口級別。該方法通過聚合不同尺度的注意力,可以更好處理目標(biāo)跟蹤中的尺度變化問題,并提高跟蹤的準(zhǔn)確性和穩(wěn)定性。ToMP方法[7]應(yīng)用兩種新的編碼方式,將訓(xùn)練幀中目標(biāo)的位置和邊界框的信息與深度特征信息編碼混合,將測試幀中的前景信息與深度特征編碼混合,充分利用前景和背景信息,跟蹤效果顯著。AiATrack方法[8]應(yīng)用于自注意力塊和交叉注意力塊,促進(jìn)特征聚集和信息傳播。通過引入有效的特征重用和目標(biāo)背景嵌入,以充分利用時間參考信息,取得更好的跟蹤性能,但是所采用的深度特征提取網(wǎng)絡(luò)結(jié)構(gòu)簡單,提取特征能力較弱。隨著Swin-Transformer方法[9]的提出,SwinTrack方法將其作為主干網(wǎng)絡(luò)提取深度特征,通過Transformer網(wǎng)絡(luò)進(jìn)行特征融合,實(shí)驗(yàn)效果得到大幅提升。為了進(jìn)一步提升性能,SFTransT方法[10]同樣采用Swin-Transformer進(jìn)行特征提取,然后用學(xué)習(xí)空間頻率的Transformer進(jìn)行特征融合處理,充分利用目標(biāo)對象的空間先驗(yàn)信息,實(shí)驗(yàn)效果進(jìn)一步提高。
為了解決彈載圖像目標(biāo)尺度變化大、相似目標(biāo)以及復(fù)雜背景等因素干擾的問題,文中利用Transformer全局建模以及聯(lián)系上下文的能力,提出一種基于彈載圖像的Transformer目標(biāo)跟蹤算法。首先,在特征提取部分分別使用Swin-Transformer網(wǎng)絡(luò)的前3層對輸入的初始模板和搜索區(qū)域提取特征。其次,利用交叉注意力模塊對提取的特征進(jìn)行特征增強(qiáng)處理。再次,將特征拼接送入編、解碼器模塊進(jìn)行特征的融合。最后,輸出的特征經(jīng)過回歸和分類頭進(jìn)行目標(biāo)定位。
文中創(chuàng)新點(diǎn)有以下兩點(diǎn):
1)針對自尋的彈藥目標(biāo)跟蹤過程中彈載圖像存在目標(biāo)尺度變化大、相似目標(biāo)以及復(fù)雜背景干擾等導(dǎo)致跟蹤算法失效問題,提出基于彈載圖像的Transformer目標(biāo)跟蹤方法。文中算法由交叉注意力模塊增強(qiáng)初始模板的特征,通過簡化基于Transformer的特征融合模塊減少參數(shù)量提升跟蹤速度。
2)算法利用Transformer架構(gòu)聯(lián)系上下文以及全局建模的能力時刻確定目標(biāo)在彈載圖像中準(zhǔn)確的位置,在彈載圖像數(shù)據(jù)集上取得領(lǐng)先效果。
如圖2所示,Transformer模型分別由左側(cè)的編碼器和右側(cè)的解碼器構(gòu)成。其中,編碼器是由N=6的相同層組成,每一層有多頭自注意力MSA(multi-headed self-attention),全連接前饋神經(jīng)網(wǎng)絡(luò)層FFN(feed-forward network)兩個子層[11-12]。解碼器包括N=6的相同層。每個解碼器層有三個子層,第三子層全連接前饋神經(jīng)網(wǎng)絡(luò)層與編碼器模塊中的相同。第二子層是一個多頭交叉注意力層MCA(multi-headed cross-attention),功能是聚合編碼器的輸出和解碼器的輸入。編碼器模塊中的輸出構(gòu)成了MCA的輸入鍵K、值V,掩碼MSA的輸出構(gòu)成了MCA的輸入查詢Q。第一子層相比于編碼器模塊中的MSA多了掩碼處理這一步,因此這一層變成了掩碼MSA。通過掩碼函數(shù)將未來預(yù)測的數(shù)據(jù)進(jìn)行掩碼處理,從而可以不參與訓(xùn)練。此外,編碼器和解碼器中的所有子層都采用了殘差連接[13]和層歸一化[14],這樣能夠規(guī)范數(shù)據(jù)、加快收斂速度、提高模型的學(xué)習(xí)能力、增強(qiáng)數(shù)據(jù)傳輸?shù)目蓴U(kuò)展性。為了記錄順序信息,每個輸入序列都在編碼器和解碼器堆的開頭附加了一個位置編碼[15]。結(jié)尾是一個線性層和一個Softmax層[16-17],可將向量轉(zhuǎn)換為輸出所要求的類型,完成預(yù)測的任務(wù)。
圖2 Architecture transformerFig.2 Transformer模型
Transformer模型包含m=8的單頭自注意力模塊。每塊都有自己的可學(xué)習(xí)的權(quán)重矩陣集{WQi,WKi,WVi},其中i=0,1,…,7。將輸入序列X投影在這3個權(quán)重矩陣上可以得到Qi=XWQi,Ki=XWKi,Vi=XWVi,連接MSA中的8個自注意力模塊將輸出一個矩陣[Y0,Y1,…,Y7]∈Rn×8dv,MSA的過程可以表述為:
(1)
MultiHead(Q,K,V)=Concat(Y0,Y1,…,Ym)WQ
(2)
式中:i為自注意力頭,i=0,1,2,…,m,m=8;dK等于矩陣K的維度大小;Yi表示每個自注意力頭的輸出結(jié)果;WQ為將多頭注意力機(jī)制合并后的結(jié)果重新投影回原問題空間的權(quán)重矩陣;Attention為注意力算法。
在圖像自尋的彈藥打擊目標(biāo)的過程中,為了有效應(yīng)對彈載圖像目標(biāo)尺度變化大、相似目標(biāo)以及復(fù)雜背景干擾等問題,文中結(jié)合Transformer能夠進(jìn)行全局建模并獲取長期上下文依賴關(guān)系的優(yōu)勢,提出基于彈載圖像的Transformer目標(biāo)跟蹤算法。如圖3所示,文中方法主要包括特征提取部分、特征增強(qiáng)部分、特征融合部分以及預(yù)測頭3個部分。
圖3 整體架構(gòu)Fig.3 Overall architecture
由基于Swin Transformer的特征提取骨干網(wǎng)絡(luò)提取的初始模板特征fz和搜索區(qū)域特征fx進(jìn)行交叉注意力增強(qiáng)操作,目的是突出跟蹤目標(biāo)的特征。
如圖4所示,交叉注意增強(qiáng)模塊包括多頭點(diǎn)積注意力、前饋網(wǎng)絡(luò)、殘差連接、層歸一化和位置編碼。與文獻(xiàn)[1]中的自注意不同,因?yàn)镵,V和Q分別來自兩個不同的特征矩陣,所以通過殘差連接部分將鍵、值與多頭注意力部分的輸出連接起來。
圖4 交叉注意力模塊Fig.4 Cross attention module
圖5 基于Transformer的特征融合模塊Fig.5 Transformer-based feature fusion module
文中邊界框預(yù)測頭由分類預(yù)測頭和回歸定位頭組成,將目標(biāo)中心附近的像素定義為前景正樣本:
(3)
(4)
回歸預(yù)測頭的三層感知機(jī)的輸出維數(shù)為4,分別代表左上角和右下角的坐標(biāo)(x0,y0,x1,y1)?;貧w定位頭生成一個特征圖Bx,y,損失函數(shù)為:
(5)
式中:LCIoU表示回歸定位結(jié)果Bx,y所對應(yīng)的CIoU損失。
綜上所述,文中最終優(yōu)化的目標(biāo)損失函數(shù)為:
L=λ1Lcls+λ2Lreg
(6)
式中:λ1和λ2為平衡兩個損失函數(shù)的超參數(shù),文中分別設(shè)為1和2。
3.1.1 模型結(jié)構(gòu)
特征提取主干網(wǎng)絡(luò)為Swin Transformer-base[9],初始模板的像素大小為112×112,搜索區(qū)域像素大小為224×224。Swin Transformer第一階段隱藏層的信道數(shù)Cs和特征融合中的編碼器塊數(shù)Ns分別為512,8。文中使用Swin Transformer第3階段之后的輸出進(jìn)行特征提取。因此,主干網(wǎng)絡(luò)步幅s被設(shè)置為16。編、解碼器由多頭注意層和前饋網(wǎng)絡(luò)組成。多頭注意層為8,前饋網(wǎng)絡(luò)隱藏單元數(shù)為2 048。丟失率為0.1。預(yù)測頭由一個隱藏單元數(shù)2 048的3層感知器組成。分類預(yù)測頭的維數(shù)均為1,定位預(yù)測頭的輸出維數(shù)均為4。
3.1.2 訓(xùn)練策略
文中所使用的環(huán)境是Ubuntu 20.04,編程語言為Python 3.8,主框架是Pytorch 1.7和Pytracking。在NVIDIA A100 GPU上訓(xùn)練網(wǎng)絡(luò),文中分別使用LaSOT[18]、TrackingNet[19]和GOT-10k[20]得到模型的預(yù)訓(xùn)練權(quán)重并在此基礎(chǔ)上進(jìn)行微調(diào),然后在自建的彈載圖像目標(biāo)跟蹤數(shù)據(jù)集上訓(xùn)練學(xué)習(xí)彈載圖像目標(biāo)的特征,分別令段數(shù)為900視頻序列用于訓(xùn)練,將段數(shù)100視頻序列用于測試,模型進(jìn)行輪次為300的訓(xùn)練。采用AdamW[21]對模型進(jìn)行了優(yōu)化,Swin Transformer主干網(wǎng)絡(luò)和Transformer模塊的初始學(xué)習(xí)率分別設(shè)為10-5和10-4,學(xué)習(xí)率衰減和權(quán)重衰減分別設(shè)為10-1和10-4,并采用梯度裁剪,以防止非常大的梯度誤導(dǎo)優(yōu)化過程。每個GPU每迭代批次輸入組數(shù)為32訓(xùn)練圖像組,每個圖像組包含裁剪得到的搜索區(qū)域和初始模板,GPU組數(shù)為4,訓(xùn)練圖像組數(shù)為128。
3.1.3 評價指標(biāo)
為客觀評價彈載圖像目標(biāo)跟蹤結(jié)果的各項(xiàng)指標(biāo),采樣目標(biāo)跟蹤常用的跟蹤精度率P和成功率S評價指標(biāo),P指標(biāo)是指中心定位誤差小于20像素的幀數(shù)占視頻總幀數(shù)的百分比。P中的中心定位誤差計算公式為:
(7)
式中:(xa,ya)表示預(yù)測目標(biāo)中心位置;(xb,yb)表示真實(shí)的目標(biāo)中心位置。
S指標(biāo)是計算預(yù)測框與真值框之間的重疊度高于給定閾值(通常為0.5)的幀數(shù)占視頻總幀數(shù)的百分比。重疊率計算公式如下所示:
(8)
式中:Ba是預(yù)測框;Bb是真值框。
文中通過Swin-Transformer提取到具有前景背景判別性的彈載圖像深度特征,利用交叉注意力在搜索區(qū)域增強(qiáng)目標(biāo)特征,由Transformer編、解碼器融合特征獲取彈載圖像目標(biāo)在圖像幀中的任意位置以及目標(biāo)尺度變化情況。文中算法在彈載圖像數(shù)據(jù)集上與KCF[22],ECO[23],SiamRPN++[24],TrTr,TransT[3],TrDiMP[4],ToMP-101[7],AiATrack[8],SwinTrack在性能、速度和參數(shù)量上進(jìn)行對比實(shí)驗(yàn),如表1所示。
表1 十大算法在彈載圖像數(shù)據(jù)集上的性能及效率比較Table 1 Comparison of performance and efficiency of the top ten algorithms on the missile-borne image datasets
文中算法在跟蹤精度和成功率方面都取得最優(yōu)的效果。性能方面,從表1可以看到,相比于其他跟蹤算法,文中算法在彈載圖像數(shù)據(jù)集上測試的跟蹤成功率和精度分別達(dá)到了73.87%和91.46%,達(dá)到了最優(yōu)性能。相比SwinTrack分別提高了1.23和0.81個百分點(diǎn)。效率方面,表1展示了文中算法與其他算法在參數(shù)量和跟蹤速度上面的比較。由于文中算法優(yōu)化Transformer中的編、解碼器的結(jié)構(gòu),減少了其中多余的部分,使其參數(shù)量為73.45 Mbit,分別比SwinTrack和AiATrack要低27.42 Mbit和14.06 Mbit,并且速度分別比SwinTrack和SiamRPN++高出9.14和19.31 幀/s,能夠以56.79 幀/s的速度完成實(shí)時目標(biāo)跟蹤任務(wù)。
為了直觀反映算法面對彈載圖像中目標(biāo)尺度變化、相似目標(biāo)以及復(fù)雜背景干擾等復(fù)雜情況時的跟蹤狀態(tài),文中在多段仿真彈載圖像序列進(jìn)行測試,并顯示跟蹤結(jié)果。由于受多因素的限制,在實(shí)彈試驗(yàn)中布設(shè)的打靶目標(biāo)通常以布質(zhì)靶標(biāo)等低成本替代物代替敵方實(shí)際裝備目標(biāo)進(jìn)行試驗(yàn)驗(yàn)證和考核,與真實(shí)戰(zhàn)場目標(biāo)仍有一定差距,這種差距會給圖像自尋的炮彈實(shí)際作戰(zhàn)的效果帶來不確定性。因此,為了滿足圖像自尋的炮彈中的目標(biāo)跟蹤算法的模型訓(xùn)練、算法測試及性能驗(yàn)證對數(shù)據(jù)的要求,提高自尋的彈藥應(yīng)對戰(zhàn)場環(huán)境多類目標(biāo)多場景下的打擊任務(wù)的能力。文中的航母編隊(duì)目標(biāo)和坦克編隊(duì)目標(biāo)的彈載圖像場景皆是利用三維仿真技術(shù)開發(fā)生成的。圖6~圖8為跟蹤數(shù)據(jù)集中針對不同目標(biāo)生成的單個彈載圖像目標(biāo)序列的跟蹤可視化結(jié)果。圖6為圖像自尋的炮彈下滑角為45°時海面雨天背景干擾下的3 km航母編隊(duì)目標(biāo)圖像序列。為了測試雨天環(huán)境以及其他相似艦船干擾條件下文中算法的跟蹤能力,選擇艦船目標(biāo)進(jìn)行測試。圖7為圖像自尋的炮彈下滑角為45°時雨天林地背景下生成的3 km范圍的坦克車集群目標(biāo)圖像序列,圖8為圖像自尋的炮彈下滑角為25°時雪天平原背景下生成的3 km范圍的坦克車集群目標(biāo)圖像序列,為了測試雨天和雪天環(huán)境以及其他相似坦克干擾條件下文中算法的跟蹤能力,選擇圖像中心位置的坦克進(jìn)行測試。
圖6 雨天海面環(huán)境下艦船目標(biāo)圖像序列跟蹤結(jié)果Fig.6 Sequence tracking of ship target images in rainy sea environment
圖7 雨天林地環(huán)境下坦克目標(biāo)圖像序列跟蹤結(jié)果Fig.7 Sequence tracking of tank target images in rainy forested environments
圖8 雪天平原環(huán)境下坦克目標(biāo)圖像序列跟蹤結(jié)果Fig.8 Sequential tracking of tank target images in snowy plains environment
由圖6~圖8可見,圖像自尋的炮彈飛向目標(biāo)的過程中,目標(biāo)表觀特征變化較大,同時目標(biāo)尺度也在增大,在受圖像自尋的炮彈自身運(yùn)動和外部環(huán)境背景以及相似目標(biāo)干擾的條件下,文中算法能夠克服這些挑戰(zhàn)干擾成功實(shí)現(xiàn)彈載圖像中目標(biāo)的跟蹤。當(dāng)初始圖像的輸入到文中算法中時,算法通過SwinTransformer特征提取網(wǎng)絡(luò)提取深度特征,然后利用Transformer架構(gòu)中的注意力機(jī)制進(jìn)行上下文的全局建模,將模板區(qū)域與搜索區(qū)域的深度特征信息進(jìn)行融合。這使得目標(biāo)跟蹤算法能夠適應(yīng)多尺度變化的彈載圖像目標(biāo),并且能夠克服相似目標(biāo)以及復(fù)雜背景信息的干擾,算法在彈載圖像數(shù)據(jù)集上能成功跟蹤目標(biāo)。
文中借助Transformer強(qiáng)大的全局建模以及聯(lián)系上下文的能力,通過特征增強(qiáng),結(jié)構(gòu)優(yōu)化等策略提出一種全新的基于彈載圖像的Transformer目標(biāo)跟蹤方法。在彈載數(shù)據(jù)集上的跟蹤成功率和精度分別達(dá)到了73.87%和91.46%,取得領(lǐng)先水平。相較于經(jīng)典的彈載目標(biāo)跟蹤方法KCF,有效解決在彈載圖像跟蹤過程中目標(biāo)尺度變化大、相似目標(biāo)以及復(fù)雜背景干擾等導(dǎo)致跟蹤算法失效的情況,使得跟蹤更具有魯棒性。但由于文中算法所使用的數(shù)據(jù)集是通過三維仿真軟件開發(fā)生成的,數(shù)據(jù)與實(shí)際應(yīng)用中的目標(biāo)存在一定區(qū)別,并且文中方法在面臨目標(biāo)遮擋、光照變化等導(dǎo)致目標(biāo)表觀信息發(fā)生變化時沒有辦法提供穩(wěn)定的模板信息用于跟蹤目標(biāo)從而可能會導(dǎo)致跟蹤失敗,因此在后續(xù)研究中還需要根據(jù)更多工程人員的研究與反饋,獲得更多的反饋和建議,不斷地迭代優(yōu)化才能更加滿足彈載實(shí)際的需求。