李暢, 王一丁, 孫芮, 何忠賀
(1.北方工業(yè)大學(xué)電氣與控制工程學(xué)院, 北京 100144; 2.北方工業(yè)大學(xué)信息學(xué)院, 北京 100144)
車輛跟蹤是城市智能交通、視頻監(jiān)控、車輛輔助駕駛、軍事偵察、人機(jī)交互[1-4]等領(lǐng)域的重要組成部分。而智能交通系統(tǒng)中的車輛跟蹤主要是通過對(duì)監(jiān)控視頻中的目標(biāo)車輛進(jìn)行檢測(cè)、提取、識(shí)別和跟蹤,得到車輛在視頻中的位置變化、速度和運(yùn)動(dòng)軌跡等信息,進(jìn)而利用這些信息實(shí)現(xiàn)對(duì)視頻中車輛的行為分析。因此,近年來得到越來越多的學(xué)者的關(guān)注。視頻中目標(biāo)車輛光照變化、相似車輛干擾、低分辨率和跟蹤實(shí)時(shí)性等問題,依舊是車輛跟蹤領(lǐng)域的難點(diǎn)。
近年來,主流的車輛跟蹤算法可以分為兩類:基于相關(guān)濾波和基于深度學(xué)習(xí)。如Bolme等[5]提出的 MOSSE(minimum output sum of squared error filter)算法是利用相關(guān)濾波運(yùn)算進(jìn)行目標(biāo)跟蹤的開山之作,該跟蹤模型利用自適應(yīng)相關(guān)濾波器對(duì)被跟蹤目標(biāo)的外觀進(jìn)行編碼,跟蹤速度可達(dá)百幀每秒,但精度欠佳;后來,Henrique等[6-7]提出濾波算法中最具代表性的核相關(guān)濾波算法(kernelized correlation filter, KCF),使用多通道HOG(histogram of oriented gradient)特征代替單通道特征,同時(shí)利用核函數(shù)對(duì)其進(jìn)行融合,降低了計(jì)算量;Danelljan等[8]提出空間正則化判別相關(guān)濾波器算法(learning spatially regularized correlation filters for visual tracking, SRDCF),并且取得了不錯(cuò)的效果。但是這類方法手工提取圖像特征只能提取到車輛淺層特征,學(xué)習(xí)到的目標(biāo)模型豐富度低,導(dǎo)致跟蹤模型魯棒性差,并且由于在跟蹤過程中需要不斷更新濾波器模板的權(quán)重,因此耗費(fèi)時(shí)間長(zhǎng),遠(yuǎn)達(dá)不到實(shí)時(shí)跟蹤的要求。
隨著深度學(xué)習(xí)技術(shù)的快速發(fā)展,使用卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural network, CNN)提取車輛外觀特征的能力優(yōu)秀,于是,Wang等[9]提出首個(gè)使用深度學(xué)習(xí)方法目標(biāo)跟蹤的模型DLT(deep learning tracke),該算法模型采用離線預(yù)訓(xùn)練的方式讓神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)車輛的特征,然后在線跟蹤的過程中利用第一幀圖像進(jìn)行微調(diào),但跟蹤速度只有15 F/s;孿生全卷積神經(jīng)網(wǎng)絡(luò)跟蹤算法(fully-convolutional siamese networks, SiamFC)[10],把跟蹤任務(wù)看作一個(gè)相似度計(jì)算問題,在跟蹤過程中通過兩個(gè)分支網(wǎng)絡(luò)分別提取模板和待搜索圖像的目標(biāo)特征,最后進(jìn)行互相關(guān)操作計(jì)算相似性,較好地平衡了跟蹤的速度和精度;之后,Nam等[11]將跟蹤問題轉(zhuǎn)化為一種特殊的目標(biāo)檢測(cè)問題,通過元學(xué)習(xí)策略對(duì)網(wǎng)絡(luò)進(jìn)行初始化,從單幀圖像中學(xué)習(xí)新的實(shí)例,進(jìn)而預(yù)測(cè)被跟蹤目標(biāo)的位置;區(qū)域建議框?qū)\生神經(jīng)網(wǎng)絡(luò)跟蹤算法(siamese region proposal network, SiamRPN)[12],借鑒了目標(biāo)檢測(cè)算法中的候選框理念,將孿生神經(jīng)網(wǎng)絡(luò)后半部分改為二分類網(wǎng)絡(luò)和候選框回歸網(wǎng)絡(luò),改善了孿生全卷積神經(jīng)網(wǎng)絡(luò)應(yīng)對(duì)車輛尺度變化效果不好的問題,精度高,但所需參數(shù)量大,訓(xùn)練難度較大;動(dòng)態(tài)孿生神經(jīng)網(wǎng)絡(luò)(dynamic siamese network, DSiam)跟蹤算法[13]是通過在線調(diào)整跟蹤模型,提高目標(biāo)車輛跟蹤的精度。由于能夠較好地平衡跟蹤的精度和速度。基于孿生神經(jīng)網(wǎng)絡(luò)的跟蹤模型成為目前跟蹤領(lǐng)域的主流算法,但仍然存在很多問題,首先,絕大部分孿生神經(jīng)網(wǎng)絡(luò)跟蹤模型主干特征提取網(wǎng)絡(luò)依然使用AlexNet[14],選用的網(wǎng)絡(luò)層數(shù)少,因此無法提取到車輛的高級(jí)語義信息,導(dǎo)致在車輛背景復(fù)雜或者有相似車輛干擾時(shí)跟蹤魯棒性差。并且,模型只使用了第五層卷積的輸出特征圖,忽視了淺層卷積特征圖中所包含的顏色、線條、位置信息等對(duì)于車輛和跟蹤定位準(zhǔn)確性的影響,最后,由于卷積神經(jīng)網(wǎng)絡(luò)只使用局部卷積方式進(jìn)行特征提取,沒有利用到圖像全局特征的相關(guān)性,在光照強(qiáng)烈變化時(shí)容易發(fā)生跟蹤漂移。
本文提出的算法模型以SiamFC為基礎(chǔ)框架,主要針對(duì)以AlexNet為主干特征網(wǎng)絡(luò)難以提取目標(biāo)車輛深層特征,和沒有充分利用視頻圖像全局特征相關(guān)性這兩方面問題進(jìn)行優(yōu)化。使用改進(jìn)后的深度殘差網(wǎng)絡(luò)ResNet50作為主干特征提取網(wǎng)絡(luò),在減少模型參數(shù)的同時(shí)能夠高效提取目標(biāo)車輛的深層特征,并嵌入高效通道注意力模塊[15](efficient channel attention neural networks,ECANet),增強(qiáng)對(duì)車輛外觀識(shí)別和定位有關(guān)的特征,削弱無關(guān)特征的影響。最后,在孿生神經(jīng)網(wǎng)絡(luò)的分支網(wǎng)絡(luò)引入全局上下文模塊[16](non-local network, NLNet),將目標(biāo)車輛的全局特征信息進(jìn)行聚合增強(qiáng),增強(qiáng)跟蹤模型對(duì)全局特征信息的整體感知。
深度學(xué)習(xí)(deep learning, DL)是機(jī)器學(xué)習(xí)(machine learning, ML)領(lǐng)域的一個(gè)新的研究方向,主要是指多層神經(jīng)網(wǎng)絡(luò)疊加的算法模型,這種卷積神經(jīng)網(wǎng)絡(luò)通過多層神經(jīng)元之間權(quán)重和非線性激活函數(shù)的作用,使卷積神經(jīng)網(wǎng)絡(luò)具有優(yōu)秀的特征學(xué)習(xí)能力。隨著深度學(xué)習(xí)研究的盛行,經(jīng)過大量學(xué)者的試驗(yàn)和研究,誕生了諸多優(yōu)秀卷積神經(jīng)網(wǎng)絡(luò),例如LeNet[17]、GoogLeNet[18]、AlexNet和ResNet[19]等。通過不同尺度感受野不斷對(duì)圖像信息進(jìn)行感知和提取,實(shí)現(xiàn)對(duì)圖像中目標(biāo)的特征提取和識(shí)別。
從跟蹤模型的特點(diǎn)和提取特征的能力兩方面考慮,本文算法使用ResNet50作為模型的主干特征提取網(wǎng)絡(luò)。ResNet (residual neural network)是一種深度殘差網(wǎng)絡(luò),它的特點(diǎn)是由多層殘差塊堆疊而成。深度殘差網(wǎng)絡(luò)的主要思想是在卷積神經(jīng)網(wǎng)絡(luò)中增加直連通道,建立前面卷積層與后面層之間的“短路連接”(shortcut),使原始輸入信息可以直接傳遞到后面網(wǎng)絡(luò)中,減少信息傳遞過程中的丟失和損耗,并且能夠避免在訓(xùn)練深層神經(jīng)網(wǎng)絡(luò)過程中容易發(fā)生的梯度消失或梯度爆炸,有利于神經(jīng)網(wǎng)絡(luò)的反向傳播,網(wǎng)絡(luò)提取特征的效果顯著提升。
圖1所示的殘差塊結(jié)構(gòu)中包括兩層卷積計(jì)算,輸入信息可以通過殘差塊與殘差塊之間的shortcut結(jié)構(gòu)實(shí)現(xiàn)恒等映射,即
圖1 深度殘差網(wǎng)絡(luò)ResNet兩種殘差塊結(jié)構(gòu)Fig.1 Two residual blocks structures of ResNet
y=F(x)+x
(1)
式(1)中:x為殘差塊的輸入特征層;F(x)為對(duì)輸入特征層進(jìn)行的一系列卷積和激活函數(shù)計(jì)算;y為殘差塊最后的輸出。
每個(gè)殘差塊的輸入經(jīng)過ReLU激活函數(shù)后形成殘差函數(shù)傳遞到下一層。在實(shí)際計(jì)算或工程領(lǐng)域中,一般使用圖1(b)殘差塊結(jié)構(gòu)來減少計(jì)算和參數(shù)量。它先通過一個(gè)1×1的卷積對(duì)輸入特征圖進(jìn)行特征通道降維,降低參數(shù)量,然后利用3×3的普通卷積計(jì)算提取特征,最后,通過一個(gè)1×1的卷積計(jì)算升維,恢復(fù)輸出特征圖的通道數(shù),使殘差塊的輸入和輸出特征圖通道數(shù)保持不變。例如,當(dāng)殘差塊的輸入特征圖通道數(shù)為256時(shí),殘差塊的參數(shù)量為1×1×256×64+3×3×64×64+1×1×64×256=69 632,而圖1(a)卷積計(jì)算的參數(shù)量為3×3×256×256×2=1 179 648,是殘差塊所需參數(shù)量的16.94倍。因此,深度殘差網(wǎng)絡(luò)結(jié)構(gòu)既保持了精度又大幅度減少了參數(shù)量,可以提高目標(biāo)車輛跟蹤過程中的速度。由表1數(shù)據(jù)可以看出ResNet網(wǎng)絡(luò)所需參數(shù)量較AlexNet小很多,使用ResNet作為主干特征提取網(wǎng)絡(luò)可以大幅度提高跟蹤速度。
表1 幾種神經(jīng)網(wǎng)絡(luò)參數(shù)量對(duì)比Table 1 Comparison of several neural parameters
本文提出的算法模型中,為了使主干網(wǎng)絡(luò)既能夠提取到更深層的車輛高級(jí)語義信息,又不增加訓(xùn)練難度和過多的參數(shù),因此采用ResNet50作為主干特征提取網(wǎng)絡(luò)。由于ResNet系列網(wǎng)絡(luò)最初是為圖像分類和目標(biāo)檢測(cè)而設(shè)計(jì),而車輛跟蹤算法模型對(duì)于車輛定位的精度要求較高,因此,如果網(wǎng)絡(luò)最后一層特征圖尺寸過小時(shí),會(huì)導(dǎo)致感受野太大,造成模型對(duì)于交通視頻序列中車輛位置的變化不敏感,嚴(yán)重影響車輛定位的精度。
因此,在綜合考慮網(wǎng)絡(luò)提取車輛特征能力所需的網(wǎng)絡(luò)深度,與跟蹤模型對(duì)定位精度的要求后,本文主干網(wǎng)絡(luò)采用ResNet50的前三部分conv1_x、conv2_x、conv3_x作為主干特征提取網(wǎng)絡(luò),conv3_x的輸出作為主干網(wǎng)絡(luò)的輸出特征圖,調(diào)整網(wǎng)絡(luò)總步長(zhǎng)為8,控制感受野的大小,利用ResNet50堆疊的多層網(wǎng)絡(luò)結(jié)構(gòu),提取目標(biāo)車輛更深層的高級(jí)語義特征,增強(qiáng)跟蹤模型對(duì)被跟蹤車輛的認(rèn)知,且能有效避免在訓(xùn)練模型的過程中出現(xiàn)梯度爆炸和過擬合等問題。ResNet50的網(wǎng)絡(luò)結(jié)構(gòu)如表2所示。
表2 ResNet50網(wǎng)絡(luò)結(jié)構(gòu)Table 2 ResNet50 structure
本文提出的SiamECA-Net50算法是基于SiamFC框架進(jìn)行的改進(jìn),SiamFC算法將視頻目標(biāo)車輛跟蹤問題轉(zhuǎn)化為兩幀圖像的相似度計(jì)算問題,計(jì)算公式為
fθ(z,x)=φθ(z)*φθ(·)+b*1
(2)
式(2)中:z為模板圖像;x為待搜索圖像;fθ(z,x)為將模板圖像與待搜索圖像進(jìn)行相似度計(jì)算;φθ(·)和φθ(z)為模板圖像和待搜索圖像經(jīng)過主干特征提取網(wǎng)絡(luò)后得到的特征圖;*為以模板圖像經(jīng)過主干網(wǎng)絡(luò)之后得到的特征圖為卷積核,與待搜索圖像的特征圖進(jìn)行卷積計(jì)算,即互相關(guān)操作;b*1為互相關(guān)操作后得到的特征圖的每個(gè)位置的取值,實(shí)現(xiàn)過程如圖2所示。
圖2 孿生全卷積神經(jīng)網(wǎng)絡(luò)Fig.2 Fully-convolutional siamese neural network
模板圖像的特征圖與待搜索圖像的特征圖經(jīng)過互相關(guān)操作后得到得分響應(yīng)圖,得分最高的位置即是模型跟蹤到的目標(biāo)車輛出現(xiàn)的位置。響應(yīng)圖中最大得分位置與中心點(diǎn)有關(guān),乘上主干特征提取網(wǎng)絡(luò)的總步長(zhǎng),就可以得到從上一幀到下一幀的車輛的位置變化。由上述模型的跟蹤過程可知,主干特征提取網(wǎng)絡(luò)φθ(·)性能的好壞對(duì)于跟蹤模型的精度和速度來說至關(guān)重要。
根據(jù)車輛跟蹤模型對(duì)定位精度要求高的特性,本文采用ResNet50作為主干特征提取網(wǎng)絡(luò),隨著網(wǎng)絡(luò)的加深,殘差結(jié)構(gòu)塊的堆疊不可避免帶來大量填充操作。SiamDW[20]中實(shí)驗(yàn)證明,大量填充操作的堆疊會(huì)引起跟蹤模型對(duì)車輛定位的偏差,從而造成車輛跟蹤模型精度降低。尤其是當(dāng)目標(biāo)車輛行駛至圖像邊界時(shí),由于圖像邊界的填充操作,跟蹤模型將難以得到精準(zhǔn)的位置判斷。
為驗(yàn)證填充操作對(duì)車輛定位精度的影響,以O(shè)TB2015數(shù)據(jù)集中的Car4序列為例,如圖3所示,圖3(b)中紅色框E是模板圖像,黃色框E′是含有填充操作的模板圖像,圖3(a)中紅色框是視頻序列中第349幀待搜索圖像A,A′是經(jīng)過填充操作(黑色部分)的第349幀圖像,圖3(c)紅色框是第647幀待搜索圖像B,B′是經(jīng)過填充操作的第647幀圖像,此時(shí)車輛已行駛至圖像右側(cè)邊界,φθ(·)表示主干特征提取網(wǎng)絡(luò),R1和R2分別表示圖像無填充操作和有填充操作時(shí)的響應(yīng)特征圖。下面通過4個(gè)公式進(jìn)一步證明填充操作對(duì)車輛定位精度的影響:
圖3 填充操作的影響Fig.3 Padding influence
R1(E,A)=φθ(E)*φθ(A)+b*1
(3)
R1(E,B)=φθ(E)*φθ(B)+b*1
(4)
R2(E′,A′)=φθ(E′)*φθ(A′)+b*1
(5)
R2(E′,B′)=φθ(E′)*φθ(B′)+b*1
(6)
如式(3)和式(4)所示,當(dāng)沒有填充操作時(shí),目標(biāo)車輛由349幀行駛至647幀圖像內(nèi)容一致,因此R1(E,A)=R1(E,B),然而在有填充的情況下,車輛運(yùn)行到圖像邊界時(shí),圖像A′與B′不一致,因?yàn)锳′和B′的邊緣包含了不同的填充信息,所以此時(shí)R2(E′,A′)=R2(E′,B′)。
由上述分析可知,無填充操作時(shí),目標(biāo)車輛在不同幀的得分響應(yīng)圖是相同的,而有填充操作時(shí),同一被跟蹤車輛在不同幀的得分響應(yīng)圖值不同,因此回溯到原圖中的位置必然不同,跟蹤框會(huì)因填充操作產(chǎn)生偏移,降低跟蹤精度。因此,如圖4所示,本文中在ResNet50的殘差塊后增加剪裁(Crop)操作,可以消除填充操作對(duì)跟蹤定位精度的影響。
圖4 剪裁特征圖Fig.4 Crop feature map
其次,雖然較大的感受野能增加目標(biāo)的上下文信息,但神經(jīng)網(wǎng)絡(luò)的特征圖感受野過大會(huì)導(dǎo)致最后一層的特征圖很小使模型的空間分辨率降低,特征圖對(duì)被跟蹤目標(biāo)車輛的位置變化不敏感,不利于模型定位車輛。因此本算法選取ResNet50網(wǎng)絡(luò)結(jié)構(gòu)的前3部分并將殘差結(jié)構(gòu)改為如圖4所示,將第三階段conv3_x的輸出作為主干網(wǎng)絡(luò)最后的輸出,調(diào)整網(wǎng)絡(luò)總步長(zhǎng)為8,使ResNet50網(wǎng)絡(luò)更適用于跟蹤模型精準(zhǔn)定位的要求。
為了使主干特征提取網(wǎng)絡(luò)增強(qiáng)車輛差異化的淺層語義信息的提取,例如顏色、線條、位置信息等,在ResNet50網(wǎng)絡(luò)的淺層殘差塊中嵌入高效通道注意力模塊ECANet(efficient channel attention networks, ECANet)[21],使用全局平均池化(global average pooling, GAP)來聚合特征,在不降維的情況下,利用快速一維卷積來計(jì)算每個(gè)通道與其k個(gè)相鄰?fù)ǖ赖南嚓P(guān)性,實(shí)現(xiàn)本地跨通道交互。其中k值是ECANet模塊通過輸入特征圖的通道數(shù)自適應(yīng)確定的,交互覆蓋率和特征圖通道數(shù)有關(guān),一般選用3或7。 通過以下3個(gè)公式對(duì)特征圖的通道注意力進(jìn)行自適應(yīng)增強(qiáng)。
(7)
(8)
C=φ(k)=2γ*k-b
(9)
圖5為ECANet模塊的計(jì)算過程,在經(jīng)過GAP聚合卷積特征后,沒有進(jìn)行特征通道數(shù)降維,自適應(yīng)的判斷卷積核k的大小,然后進(jìn)行一維卷積計(jì)算,最后使用Sigmoid函數(shù)來學(xué)習(xí)通道注意力。
圖5 高效通道注意力模塊Fig.5 Efficient channel attention module
嵌入ECANet模塊后,在不改變其他網(wǎng)絡(luò)參數(shù)的情況下,在數(shù)據(jù)集OTB2015[22]的低分辨率視頻序列CarDark和背景有相似車輛并且分辨率較低的BlurCar中測(cè)試,與SiamFC模型相比,跟蹤的精確度和成功率分別提高了0.7%和0.5%。說明ECANet通過對(duì)車輛外觀信息進(jìn)行差異化提取后,可以顯著提高模型在低分辨率和背景復(fù)雜視頻序列中的跟蹤成功率。并且為驗(yàn)證ECANet模塊的優(yōu)越性,將其替換為SENet模塊再次進(jìn)行測(cè)試,跟蹤性能對(duì)比如表3所示,嵌入SENet后幾乎沒有提高模型的跟蹤精確度,并且導(dǎo)致跟蹤速度下降,是由于SENet需要通過全連接層建立一個(gè)特征圖通道與其他所有通道相關(guān)性模型而導(dǎo)致的復(fù)雜度和計(jì)算量,因此證明本文選用的ECANet在差異性提取車輛淺層特征方面確實(shí)具有良好性能。
表3 在數(shù)據(jù)集OTB2015中的跟蹤性能Table 3 Tracking performan in data set OTB2015
傳統(tǒng)車輛跟蹤模型使用卷積運(yùn)算提取圖像特征,由于卷積核只作用在局部感受野,疊加多層卷積運(yùn)算才能將整個(gè)圖像的所有區(qū)域關(guān)聯(lián)起來,然而多層卷積堆疊使訓(xùn)練難度大,網(wǎng)絡(luò)學(xué)習(xí)效率低,并且目標(biāo)跟蹤模型對(duì)定位準(zhǔn)確性要求高,疊加過多卷積層會(huì)使模型對(duì)目標(biāo)車輛的定位精度降低。為了解決這一矛盾,本文中在主干特征提取網(wǎng)絡(luò)后引入全局上下文特征模塊,利用模塊中的自注意力機(jī)制建模圖像上遠(yuǎn)距離像素間的依賴關(guān)系,對(duì)于圖像中的每個(gè)像素,NLNet模塊通過計(jì)算其與其他像素之間的函數(shù)值以獲得全局相關(guān)性,然后通過加權(quán)的方式聚合所有像素的特征,從而得到該像素點(diǎn)在當(dāng)前圖像的全局特征,全局像素的相關(guān)性計(jì)算公式為
(10)
式(10)中:i代表要計(jì)算其響應(yīng)的像素位置的索引;j代表窮舉圖像中所有位置像素的索引;x代表輸入NLNet模塊的特征圖,f(xi,xj)的值越小,代表像素i與j的相關(guān)性越小,式(10)為本文中使用的f(xi,xj)函數(shù)。函數(shù)g(xj)是用來計(jì)算輸入特征圖x在j位置的特征值,c(x)為響應(yīng)歸一化因子。
f(xi,xj)=eθ(xi)Tφ(xj)
(11)
在該模塊中,輸入特征圖x的維度是T×H×W×1 024,分別使用通道數(shù)為512的3個(gè)1×1×1卷積對(duì)其進(jìn)行降維,得到如圖6所示的3條支路,且尺寸大小同為T×H×W×512,然后經(jīng)過flat和trans操作得到T×H×W×512,512×THW,THW×512的3個(gè)輸出,對(duì)前兩個(gè)輸出作矩陣乘法得到THW×THW的輸出,經(jīng)softmax函數(shù)處理后,再與第3條支路THW×512作矩陣乘法即可得到維度為T×H×W×512的特征圖,最后,經(jīng)過點(diǎn)乘和殘差邊相接等操作,輸出與輸入特征圖尺寸保持一致,在不影響網(wǎng)絡(luò)結(jié)構(gòu)的情況下,對(duì)圖像的全局信息進(jìn)行聚合。
圖6 全局上下文特征模塊Fig.6 Non-local network module
為了驗(yàn)證該模塊的有效性,將NLNet模塊嵌入主干特征提取網(wǎng)絡(luò)之后,此時(shí)主干網(wǎng)絡(luò)中不嵌入注意力模塊,經(jīng)實(shí)驗(yàn)發(fā)現(xiàn),在OTB2013和OTB2015兩個(gè)數(shù)據(jù)集中NLNet均能有效提高跟蹤模型的成功率,如表4所示。尤其針對(duì)受光照強(qiáng)烈變化的車輛,跟蹤模型增加NLNet模塊后能顯著提高跟蹤穩(wěn)定性,減少因光照變化引起的跟蹤丟失。
表4 Non-local模塊對(duì)跟蹤成功率的影響Table 4 Influence of non-local module on tracking success rate
本文引入全局上下文特征信息模塊的SiamECA-Net50車輛跟蹤算法模型流程如圖7所示,其主要思想是以經(jīng)過特征圖剪裁、調(diào)整總步長(zhǎng)和嵌入ECANet模塊三方面改進(jìn)后的深度殘差網(wǎng)絡(luò)ResNet50為主干特征提取網(wǎng)絡(luò),在其之后引入NLNet全局上下文模塊,搭建SiamECA-Net50網(wǎng)絡(luò)架構(gòu),網(wǎng)絡(luò)架構(gòu)詳細(xì)參數(shù)見表5。
圖7 SiamECA-Net50 模型流程圖Fig.7 Flow chart of SiamECA-Net50 model
表5 SiamECA-Net50網(wǎng)絡(luò)結(jié)構(gòu)Table 5 SiamECA-Net50 structure
本文算法SiamECA-Net50的實(shí)驗(yàn)與調(diào)試是在Windows64位操作系統(tǒng)下,基于pytorch1.7.0深度學(xué)習(xí)框架實(shí)現(xiàn)。硬件環(huán)境為Intel I7 10870H 中央處理器,NVIDIA RTX 2080 顯卡。
SiamECA-Net50算法是在GOT-10K[23]數(shù)據(jù)集的9 335個(gè)視頻序列上進(jìn)行訓(xùn)練和調(diào)試,GOT-10K數(shù)據(jù)集中涵蓋563種運(yùn)動(dòng)物體的87種運(yùn)動(dòng)模式,1 500 000個(gè)人工標(biāo)注的Bounding box,種類豐富。使用隨機(jī)梯度下降法(stochastic gradient descent, SGD)以0.9的動(dòng)量參數(shù)來訓(xùn)練神經(jīng)網(wǎng)絡(luò),學(xué)習(xí)率從
10-2到10-5逐漸衰減,采用高斯函數(shù)初始化網(wǎng)絡(luò)參數(shù),Batch Size設(shè)置為8。經(jīng)過圖像預(yù)處理后輸入模板分支和待搜索分支的特征圖尺寸分別為127×127×3和255×255×3。
在跟蹤車輛過程中,光照變化和復(fù)雜背景問題一直以來是影響跟蹤效果的重要因素,為了增強(qiáng)跟蹤模型對(duì)被部分遮擋車輛的跟蹤性能,提高算法魯棒性,利用數(shù)據(jù)增強(qiáng)方法,在訓(xùn)練階段的圖像預(yù)處理部分,隨機(jī)剪裁圖中隨機(jī)位置的8×8的圖像塊,并且對(duì)原始數(shù)據(jù)進(jìn)行翻轉(zhuǎn),平移,旋轉(zhuǎn),色彩空間變換等操作,使相同的原始數(shù)據(jù)給神經(jīng)網(wǎng)絡(luò)提供更多信息,提高算法的魯棒性。
為了驗(yàn)證SiamECA-Net50算法的有效性,本文使用OTB2015和VOT2018兩個(gè)數(shù)據(jù)集測(cè)試算法性能,兩個(gè)數(shù)據(jù)集分別包括100個(gè)和60個(gè)人工標(biāo)注的視頻幀。
OTB2015數(shù)據(jù)集對(duì)于算法模型跟蹤效果的評(píng)價(jià)包括跟蹤精確度曲線(precision plot)和跟蹤成功率曲線(success plot)。跟蹤精確度是通過計(jì)算算法預(yù)測(cè)到的視頻幀圖像序列中,所有跟蹤框的中心點(diǎn)與對(duì)應(yīng)人工標(biāo)注的框的中心點(diǎn)的誤差小于給定誤差閾值的百分比得到的;而跟蹤成功率曲線圖是計(jì)算算法預(yù)測(cè)到的跟蹤框,與人工標(biāo)注框的重疊面積(overlap score, OS)。當(dāng)重疊像素面積大于設(shè)定的閾值時(shí),即認(rèn)為該幀圖像中的車輛被成功跟蹤,跟蹤成功的總幀數(shù)占視頻序列總幀數(shù)的百分比即為跟蹤成功率。OS的計(jì)算公式為
(12)
式(12)中:A為跟蹤模型預(yù)測(cè)到的跟蹤框;B為人工標(biāo)注的真實(shí)框;|·|代表A與B重疊面積的像素?cái)?shù)量。當(dāng)OS的值超過設(shè)定的閾值時(shí),即視該幀目標(biāo)車輛被成功跟蹤,總的成功幀的數(shù)量比上視頻序列中總幀數(shù),即可得到成功率的值。成功率取值范圍為0~1。
VOT2018數(shù)據(jù)集的評(píng)價(jià)指標(biāo)包含精度A,表示跟蹤模型在單個(gè)序列下的平均重疊率,魯棒性R代表單個(gè)測(cè)試序列下的跟蹤失敗次數(shù),當(dāng)重疊率為0時(shí)視為跟蹤失敗。平均重疊期望(EAO)是精度和魯棒性的綜合性能,EAO是代表一個(gè)跟蹤模型在短時(shí)圖像視頻序列上的非重置重疊的期望值。
為了定量分析本文所提算法模型SiamECA-Net50的跟蹤效果,本文選擇幾個(gè)目前主流的跟蹤算法SiamFC、SiamTri[24]、CFNet[13]、SRDCF[6]、Staple[25]和CSK[5],使用OTB2015數(shù)據(jù)集測(cè)試,從跟蹤精度和跟蹤成功率兩方面進(jìn)行性能對(duì)比。其中SiamFC、SiamTri和CFNet屬于深度學(xué)習(xí)類的跟蹤算法,SRDCF、 Staple和CSK為相關(guān)濾波跟蹤算法。
在OTB2015數(shù)據(jù)集中,本文算法SiamECA-Net50精確度達(dá)到82.6%,成功率為60.9%,如圖8所示,相對(duì)于基準(zhǔn)框架SiamFC,分別提升了5.5%和2.7%,在GPU上的運(yùn)行速度高達(dá)98 F/s。7種不同跟蹤算法的精確度和成功率對(duì)比如表6所示。
圖8 SiamECA-Net50 在OTB100數(shù)據(jù)集中的測(cè)試結(jié)果Fig.8 The results of SiamECA-Net50 in the data set of OTB100
表6 7種算法在OTB2015數(shù)據(jù)集中的對(duì)比Table 6 Comparison of seven algorithm in OTB2015 data set
為了進(jìn)一步驗(yàn)證SiamECA-Net50算法的優(yōu)缺點(diǎn),本文中在OTB2015數(shù)據(jù)集中4種不同跟蹤屬性視頻序列上進(jìn)行測(cè)試對(duì)比,包括視頻模糊、光照變化、車輛旋轉(zhuǎn)、背景復(fù)雜。
(1)視頻模糊:以測(cè)試序列BlurCar為例,視頻跟蹤前方車輛過程中由于抖動(dòng)而產(chǎn)生視頻模糊,對(duì)于跟蹤模型中的匹配性算法會(huì)產(chǎn)生較大影響。
SiamFC 跟蹤速度較慢,本文所提跟蹤算法能夠在保持跟蹤高效跟蹤實(shí)時(shí)性的前提下,依舊具有良好的跟蹤精確性,如圖9所示。
圖9 BlurCar序列SiamECA-Net50跟蹤效果Fig.9 Tracking results of SiamECA-Net50 in the BlurCar
(2)光照變化:以測(cè)試序列中Car2為例,在該視頻序列第383幀車輛完全行駛至橋下時(shí)車輛所受光照劇烈變化,SiamFC算法在該幀跟蹤失敗,跟蹤框錯(cuò)誤定位在橋下的陰影處,如圖10(a)所示,而本文算法不受影響持續(xù)準(zhǔn)確跟蹤如圖10(b)所示。
圖10 Car2序列跟蹤效果對(duì)比Fig.10 Comparison of tracking results in the Car2 sequence
(3)車輛旋轉(zhuǎn):以測(cè)試序列CarScale為例,車輛行駛過程中發(fā)生大幅度轉(zhuǎn)彎的同時(shí)產(chǎn)生大樹遮擋的情況,SiamFC算法在第153幀大樹遮擋發(fā)生時(shí),跟蹤框抖動(dòng)嚴(yán)重,如圖11(a)所示。而本文所提算法面對(duì)遮擋和車輛的劇烈形變,魯棒性好,能夠持續(xù)精確定位被跟蹤車輛位置,如圖11(b)所示。
圖11 CarScale序列跟蹤效果對(duì)比Fig.11 Comparison of tracking results in the CarScale sequence
(4)背景復(fù)雜、雜光:以測(cè)試序列CarDark為例,視頻中光線復(fù)雜昏暗,時(shí)而被遮擋,且背景存在相似干擾,如圖12(a)所示,SiamFC算法在第295幀發(fā)生跟蹤漂移,錯(cuò)誤定位在背景中其他車輛燈光處,而SiamECA-Net50面對(duì)CarDark這種復(fù)雜背景和低分辨率圖時(shí)依舊能很好地分辨出目標(biāo)車輛,并持續(xù)精準(zhǔn)定位,如圖12(b)所示。
圖12 CarDark跟蹤效果對(duì)比Fig.12 Comparison of tracking results in the CarDark sequence
由于VOT數(shù)據(jù)集每年都會(huì)更新,并且所含視頻序列全為彩色圖像。VOT2018數(shù)據(jù)集比OTB2015數(shù)據(jù)集更具挑戰(zhàn)性。
表7 5種跟蹤器在VOT2018上的性能對(duì)比Table 7 Comparison of four algorithm in VOT2018 data set
為了驗(yàn)證SiamECA-Net50算法的通用性,本文在VOT2018數(shù)據(jù)集的3種不同車輛跟蹤屬性視頻序列上進(jìn)行測(cè)試對(duì)比。
(1)相似背景、低分辨率:以VOT2018中的Car1為例,目標(biāo)車輛周圍不僅有相似車輛的干擾并且鏡頭抖動(dòng)嚴(yán)重。在第19幀,SiamFC跟蹤算法在該幀的跟蹤框抖動(dòng)嚴(yán)重,如圖13(a),而圖13(b)中SiamECA-Net50算法的跟蹤框能夠穩(wěn)定跟蹤目標(biāo)車輛,魯棒性較好。
圖13 Car1序列跟蹤效果對(duì)比Fig.13 Comparison of tracking results in the Car1 sequence
(2)低分辨率:以視頻序列wiper為例,wiper視頻序列是在光線昏暗時(shí)對(duì)前方車輛進(jìn)行跟蹤,視頻序列清晰度受光線和相機(jī)抖動(dòng)干擾,圖像模糊。如圖14(a)所示,在第102幀時(shí)由于圖像模糊嚴(yán)重,SiamFC跟蹤模型發(fā)生跟蹤漂移,而本文所提算法依然能夠較好定位目標(biāo)車輛,具有良好魯棒性,如圖14(b)所示。
圖14 Wiper序列跟蹤效果對(duì)比Fig.14 Comparison of tracking results in the Wiper sequence
(3)旋轉(zhuǎn)、形變:racing視頻序列不僅受路邊樹木影子干擾,并且車輛尺度和外觀發(fā)生劇烈變化。傳統(tǒng)跟蹤算法SiamFC無法應(yīng)對(duì)車輛外觀的大尺度變化,在第69幀的車輛轉(zhuǎn)彎處跟蹤失敗,如圖15(a)所示,而本文所提算法SiamECA-Net50依然能夠準(zhǔn)確定位跟蹤車輛位置。如圖15(b)所示。
圖15 Racing序列跟蹤效果對(duì)比Fig.15 Comparison of tracking results in the Racing sequence
綜上所述,本文所提算法使用ResNet50作為主干特征提取網(wǎng)絡(luò),能夠提取出車輛深層的高級(jí)語義信息,經(jīng)過優(yōu)化后更適用用跟蹤任務(wù)。超強(qiáng)通道注意力機(jī)制的引入使網(wǎng)絡(luò)增強(qiáng)了對(duì)車輛外觀有用特征的提取,減弱無用特征,在視頻模糊、背景復(fù)雜、車輛旋轉(zhuǎn)的情況下,模型跟蹤性能顯著提高。在分支網(wǎng)絡(luò)嵌入全局上下文模塊,主要提升了模型在光照變化劇烈時(shí)的跟蹤成功率,使跟蹤框能夠穩(wěn)定定位在目標(biāo)車輛上。但對(duì)于嚴(yán)重遮擋、旋轉(zhuǎn)、劇烈形變等問題依然具有進(jìn)步和探索的空間。
本文提出的引入全局上下文特征模塊的ResNet50孿生神經(jīng)網(wǎng)絡(luò)車輛跟蹤算法,使用ResNet50與ECANet高效通道注意模塊提取到的差異性深層車輛外觀特征和語義背景,增強(qiáng)了跟蹤模型的泛化能力;后將全局上下文模塊NLNet嵌入孿生神經(jīng)網(wǎng)絡(luò)的分支子網(wǎng)絡(luò)進(jìn)行全局空間特征聚合增強(qiáng),在兩個(gè)主流數(shù)據(jù)集OTB2015和VOT2018上分別評(píng)估,實(shí)驗(yàn)結(jié)果驗(yàn)證了本文所提算法具備良好的跟蹤精度和魯棒性,并且進(jìn)一步提高了跟蹤的速度。