劉芳,王洪娟,黃光偉,路麗霞,王鑫
北京工業大學 信息學部,北京 100124
目標跟蹤技術是無人機視覺領域的重要研究方向之一[1]。在無人機視頻中,由于畫面較大,目標在場景中所占面積較小,且目標易發生遮擋、形變、光照變化、相似背景干擾等情況,魯棒的無人機視覺跟蹤系統的設計與應用仍然面臨著嚴峻的挑戰。
在視覺跟蹤問題中,基于目標特征跟蹤是視覺跟蹤中最為重要的一類方法,通常包括目標特征表達、目標狀態搜索、目標定位等幾個過程。其中目標特征表達是影響跟蹤性能的重要因素之一,用來表達目標的特征應該能夠適應目標外觀變化,同時對背景具有很好的區分性[2]。傳統特征(如哈爾特征(HARR)[3],方向梯度直方圖(HOG))等被應用于視覺跟蹤,但是這些特征大都是通過手工設計的底層特征,針對性較強,對目標狀態變化不魯棒。而無人機在很多實際應用中往往要面對更為復雜的環境,且目標易受到遮擋、形變、復雜背景等影響,基于傳統特征提取算法進行目標跟蹤效果不理想。
近年來,深度學習中的卷積神經網絡(Convolutional Neural Network, CNN)[4]得到廣泛的應用,對目標外觀變化具有較強的魯棒性,被引入到視頻目標跟蹤問題的求解中來。Wang和Yeung[5]基于消噪自編碼器原理,將離線訓練與在線微調相結合,提出了直接線性變換(DLT)跟蹤算法,提高了跟蹤效果,適應性更強。文獻[6]提出一種在CNN的隱含層的頂端添加一個在線的支持向量機(SVM)層,用來學習目標對象的外觀,提出了一種CNN-SVM的跟蹤算法,取得了不錯的跟蹤效果。Nam和Han[7]提出了一種多域網絡跟蹤算法,通過對卷積神經網絡增加目標分類層,在跟蹤性能上取得了顯著提升。文獻[8]提出的全卷積網絡跟蹤(FCNT)模型通過分析深度網絡模型不同特征層的特點,將不同特征層組合得到一個新的跟蹤模型實現視頻跟蹤。趙洲等[9]針對簡單背景下的高速高機動目標,提出一種改進時空上下文跟蹤算法,有效解決不同光照強度下對高速、高機動目標引起的問題。因此,針對無人機視頻中的目標易發生遮擋、形變、光照變化、相似背景等問題,通過深度網絡可以獲得目標更深層次的特征表達,為無人機視頻目標跟蹤算法奠定基礎。
近年來,相關濾波器在目標跟蹤性能和計算速度上的出色表現,使之成為當前的研究熱點。基于相關濾波的跟蹤算法最大的特點是可以利用快速傅里葉變換使得計算速度加快,且準確率比較高,相關跟蹤的算法也層出不窮。Bolme等[10]首次將相關濾波的算法應用到目標跟蹤中,并提出了最小化輸出均方誤差和(MOSSE)跟蹤算法。在MOSSE基礎上,Henriques等提出的循環結構的檢測(CSK)跟蹤[11]、核相關濾波(KCF)[12]跟蹤算法,其跟蹤速度也都達到了100幀/s以上。這些算法僅利用灰度特征進行跟蹤,隨后Henriques等[12]將CSK算法從單通道擴展至多通道,融合特征取得了不錯的跟蹤效果。KCF算法利用梯度方向直方圖特征代替原始灰度特征,使跟蹤精度得到提升。崔乃剛等[13]提出了一種自適應高階容積卡爾曼濾波(AHCKF)算法,該算法在系統狀態發生突變的情況下表現出良好的濾波性能,具有更強的魯棒性和系統自適應能力,但其計算量較大,算法運行時間較長。因此,為了更好地滿足無人機平臺下目標跟蹤對算法速度的要求,采用核相關濾波器作為無人機目標跟蹤的算法進行研究。
綜上所述,本文提出一種基于自適應深度網絡的無人機目標跟蹤算法。主成分分析(Principal Component Analysis,PCA)與受限隱層節點自編碼神經網絡的結果具有相似性[14],同時根據無人機圖像的特點,設計了一個3階自適應的多通道PCA卷積神經網絡(Multi-channel PCA Convolutional Neural Network,MPCA-CNN),首先為了降低輸入的冗余性和加快網絡的學習速度,將MPCA作為深度網絡的第1層;其次在網絡結構中加入空間金字塔池化層,使網絡可以輸入任意尺寸的圖像,提取目標更多的空間細節特征;再次對目標幀進行MPCA處理,將得到的特征向量初始化各層卷積核,優化了網絡結構,提高了網絡收斂速度和精度;最后通過核相關濾波算法構建濾波模板,獲得該特征下的預測位置,完成穩定的跟蹤目標。在模板更新模塊,采用相鄰2幀目標圖像的協方差矩陣之間距離的度量算法計算相似度,調整分類器學習率,改善由于目標發生遮擋導致跟蹤失敗的問題。仿真實驗結果表明,該算法能更好地適應目標發生遮擋、形變、光照變化、相似背景干擾等問題,有效提高跟蹤算法的精度。
針對無人機視覺跟蹤中運動目標易受到遮擋、形變、光照變化、相似背景干擾等因素影響,提出一種基于自適應深度網絡的無人機目標跟蹤算法。該算法首先設計一個3階的自適應CNN,利用MPCA降低圖像信息的冗余,實現數據預處理,將預處理后的數據作為深度網絡的輸入,并將得到的特征向量組初始化各層卷積核以進行端到端的網絡訓練,提取目標更深層次的特征,然后通過核相關濾波進行目標跟蹤,提高無人機視頻目標的跟蹤性能。
近年來,隨著計算機性能的大幅度提升,出現了諸多高性能的卷積神經網絡深層架構,其直接將多維圖像輸入網絡,網絡自動學習得到圖像特征,避免手動提取圖像特征這一復雜的過程,并已在圖像處理領域取得較好的效果。
卷積是CNN的核心。輸入圖像和卷積核進行卷積,通過一個激勵函數后就在卷積層得到了特征圖。計算過程為
(1)

ReLU層是通過ReLU激活函數給網絡加入非線性因素,極大地加快收斂速度,其公式為
ReLU(x)=max(0,x)
(2)
池化層是對卷積后特征進行池化的操作。n×n大小的鄰域內進行求平均運算或最大值、最小值等運算,再經過一個激勵函數f(x),得到了池化層中的m個特征圖。計算公式為
(3)
式中:down( )表示下采樣函數。
由于傳統CNN中的全連接層需要固定的輸入維度,當原始輸入的圖像大小不一致時,網絡就會對輸入圖像進行縮放,導致圖像信息的損失。因此,為了使卷積神經網絡自適應處理任意大小的輸入圖像,采用空間金字塔池化(Spatial Pyramid Pooling,SPP)[15]層替換最后的池化層,將其輸出的特征圖作為全連接層的輸入。SPP層結構如圖1所示,SPP層增加了網絡的尺度適應性,使得網絡提取到更多不同尺度的特征信息,圖像特征更豐富,從而提高了網絡的識別性能。

圖1 空間金字塔池化網絡結構Fig.1 Structure of spatial pyramid pooling network
根據主成分分析與隱層神經元數量受限時的自編碼神經網絡特征提取結果之間具有高度的相似性,本文采用PCA求得的特征向量組來近似代替網絡的卷積核以獲得目標的深度特征。但是PCA學習只利用了圖像的灰度信息,丟失了圖像的顏色信息。HSI(Hue Saturation Intensity)模型是適合基于人的視覺系統對彩色感知特性進行處理分析的模型,可充分發揮色度的作用,因此使用HSI顏色空間模型作為目標顏色特征的描述,圖像在H、S、I通道分別進行PCA處理,其主成分能夠最大程度地表示局部特征的主要信息以及特征之間的差異,有效實現目標和背景噪聲的分類。以CIFAR-10中Cat1數據為例,得到的3層MPCA卷積濾波如圖2所示。
MPCA初始化卷積核的具體過程為
1) 將原始圖像轉化成H、S、I通道的圖像,并對3個通道的灰度圖像進行取片操作。

Xi=S(Ii)=[x1,x2,…,xs]∈
Rk1k2×(m-k1+1)(n-k2+1)
(4)
3) 對X進行PCA運算,可以求得特征向量組Vkk,取Vkk中前L個特征向量作為主成分特征向量,用于初始化卷積核組V,V可表示為
(5)


圖2 3層MPCA卷積濾波Fig.2 Three-layer MPCA convolution filtering
CNN模型層數較多、結構復雜,將高維數據直接輸入網絡中進行訓練,會使網絡的訓練時間較長。主成分分析利用高維數據之間存在的特征,將數據映射到正交的低維子空間上,減少輸入數據的冗余,縮短網絡訓練時間,同時降低數據中的噪聲[16],因此將MPCA作為深度網絡的第1層,并將圖像經MPCA處理得到的特征向量組對各層卷積核進行初始化,提取目標更深層次的特征,減少計算量。同時網絡中還采用SPP層代替最后一個池化層,使網絡對輸入不同尺寸的圖像自適應處理。研究表明,在卷積神經網絡中第3個卷積層的卷積特征保留目標更多的空間細節,如目標的位置信息等。因此,針對無人機目標易發生遮擋、形變、光照變化和相似背景干擾等問題,本文設計了一個3階的自適應MPCA-CNN用于提取目標特征輸入到核相關濾波系統實現準確跟蹤。網絡的總體結構如圖3所示。
具體地,在第1階段將經MPCA降維的圖像數據輸入到由32個大小為5×5的MPCA卷積核組成的卷積層,再將得到的特征圖輸入到ReLU層,相比sigmoid和tanh函數,ReLU函數可以有效地解決梯度彌散問題。然后將得到的32個特征圖輸入到一個最大值池化層,使得卷積神經網絡對于圖像微小的平移具有一定的魯棒性,更適用于目標跟蹤。第2階段的實現與第1階段類似,首先將第1階段的輸出與64個大小為5×5的MPCA卷積核進行卷積,然后將得到的64個特征圖輸入至ReLU函數,之后進行最大值池化。
第3階段的實現與第2階段類似,用128個大小為5×5的MPCA卷積核對上階段產生的輸出進行卷積并進行ReLU運算。不同的是,將其特征圖輸入到SPP層,SPP層可以分配合適的尺度對不同大小的特征圖作池化處理,再合并聚集其結果為一維向量,獲得圖像更豐富的特征。然后通過全連接層與該層所有節點相連把局部的卷積特征圖轉換為一個全局的特征向量。
自適應MPCA-CNN提供了一種直接從圖像原始像素學習特征的模型。網絡的總體結構如圖3,首先對輸入圖像進行MPCA預處理,再輸入到3階的深度網絡,其中第1、2階包含卷積層,ReLU層和池化層,第3階包含卷積層,ReLU層和SPP層,采用SPP層代替全連接層前的池化層,使得網絡可以輸入任意尺寸圖像。其次利用MPCA得到的特征向量組初始化各層卷積核,加快網絡的學習速度,從而構建一個3階的自適應MPCA-CNN網絡提取目標的深層次特征。

圖3 自適應MPCA-CNN網絡結構Fig.3 Structure of adaptive MPCA-CNN network
近年來,基于相關濾波的跟蹤算法將信號從時域轉換到頻域,利用快速傅里葉變換進行濾波模板訓練和響應圖計算,提高了目標跟蹤的精度和速度。因此本文通過自適應MPCA-CNN提取目標的特征訓練核相關濾波器系數,然后根據連續幀提取的特征在核相關濾波器上的最大響應位置計算目標位置,較好地提高無人機目標跟蹤算法的性能。
自適應MPCA-CNN中,卷積層輸出的是多通道的特征圖x=[x1,x2,…,xd]∈RM×N×D,M、N和D分別為特征圖的寬、高和通道數。對于卷積特征圖,利用核相關濾波(Kernel Correlation Filter,KCF)算法構建濾波模板。KCF跟蹤算法采用核嶺回歸分類器,其目標是使給定一組圖像樣本經過濾波模板后與回歸目標的結構化風險最小,其目標函數為
(6)
式中:h為濾波模塊;y為期望輸出;λ為正則因子。
設從樣本空間到希爾伯特特征空間的非線性變換為xi→φ(xi),則目標函數的核化形式為
(7)
式中:w為權重參數;φ(x)為希爾伯特空間;·,·表示點積操作。可以把w表示為線性組合的形式,即此時需要優化的變量變為系數向量α。利用樣本找到一個對回歸目標最小平方誤差的函數可以表示為

(8)
在非線性希爾伯特特征空間的點乘運算可以用核函數運算,即φT(x)φ(x′)=κ(x,x′),其運算結果是一個n×n的矩陣,稱核矩陣K,其元素為
(9)
可以得到核化的嶺回歸問題的解為

(10)
在新的一幀圖像中通過獲取感興趣區域圖像塊來完成目標位置檢測,分類器的響應為
(11)
式中:z為預測包含目標的搜索窗口圖像塊;f(z)為檢測樣本z的響應矩陣,響應最大的位置即為目標所在的位置。相比于傳統算法計算回歸解,利用離散傅里葉變換能夠將算法復雜度從o(n3)有效降低到接近線性的o(nlgn),大大提高了算法效率。
跟蹤過程中,目標易受遮擋、形變、復雜背景等影響,使用固定目標模板不能穩定地跟蹤目標,需及時對其進行更新。核相關濾波器采用的模板更新方案為
αt+1=(1-γ)αt+γα
(12)
Xt+1=(1-γ)Xt+γX
(13)
式中:γ為學習率,采用固定值的γ來更新濾波器,難以處理復雜的目標運動問題。采用協方差矩陣之間距離的度量算法來分段調整學習率,該距離描述了兩個協方差矩陣之間的相似性,值越小表示兩個協方差矩陣越相似,反之,則表示其相似度越小。步驟為
步驟1 計算相鄰2幀圖像的協方差矩陣Ck-1和Ck。那么Ck-1和Ck之間的距離可以表示為
(14)
式中:{λi(Ck-1,Ck)}i=1,2,…,d表示Ck-1和Ck組成的特征方程的特征值。
步驟2 更新學習率γ。當ρ≤3時,表示相鄰2幀目標圖像變化較小,可以設置較小的γ;當3<ρ≤7時,表示相鄰2幀目標圖像變化適中,可以設置常規的γ;當ρ>7時,表示相鄰2幀目標圖像相似度較小,可能遇到遮擋等情況,設置較大的γ。其更新學習率γ的方法為

(15)
所提算法流程如圖4所示,主要步驟為
1) 構建自適應深度網絡結構。根據無人機圖像的特點,利用MPCA降低圖像信息的冗余,實現數據預處理,并將預處理后的數據輸入到3階自適應深度網絡中。
2) 網絡參數設計。利用對輸入圖像在H、S、I這3通道上進行PCA處理后得到的特征向量組進行分層卷積。
3) 網絡參數訓練。利用跟蹤目標的正、負樣本通過誤差反向傳播算法進行網絡參數訓練,訓練好的網絡作為深度特征提取網絡。

圖4 所提算法流程圖Fig.4 Flow chart of proposed algorithm
4) 核相關濾波。將得到的深度特征輸入到相關濾波系統,通過核相關濾波算法構建濾波器,將響應圖的峰值位置作為目標的中心位置。
5) 模板更新。采用自適應調整分類器學習率進行模板更新,適應目標表面特征的變化。
為驗證自適應MPCA-CNN的有效性,實驗采用VOC2012數據集訓練深度網絡,VOC2012數據集是國際權威的圖像識別和物體分類的數據集,包括20個類別共17 125張彩色圖像。隨機選取該數據集中13 700張為訓練集,3 425張為測試集。實驗結果如表1所示。
仿真實驗結果證明,通過MPCA-CNN進行目標特征提取時,不但分類效果好而且訓練速度快。從表1中可以看出,該網絡的所有層卷積核均進行MPCA初始化可以減少計算量,降低了網絡的訓練時間,并且準確率比隨機初始化提高了11.6%,經過MPCA處理可以保留原圖像中的有用特征信息,說明恰當的網絡初始化可以促進卷積神經網絡更快地找到全局最優解,在訓練過程起到很重要的作用。

表1 MPCA-CNN訓練模型效果比較Table 1 Comparison of MPCA-CNN training model effects
為驗證本文算法的有效性,選取UAV123[17]數據集和UAV視頻數據集中的視頻序列作為測試數據集,對所提算法進行測試,并與文獻中7種主流跟蹤算法進行實驗效果對比,包括Struck[3]、CNN-SVM[6]、FCNT[8]、CSK[11]、KCF[12]、互補跟蹤算法(Staple)[18]、空間正則化判別相關濾波(SRDCF)[19],其中Staple、SRDCF、KCF、CSK為基于相關濾波的跟蹤算法,CNN-SVM、FCNT為基于深度學習的跟蹤算法。這里使用了Car3、SUV、Bike1、Person15共4組無人機視頻序列進行實驗結果展示。
仿真實驗中8種算法的部分跟蹤結果如圖5所示,其中不同的跟蹤算法用不同的顏色表示,紅色為本文算法,左上角數字為當前圖像幀數。從以下4個方面對本文跟蹤算法進行分析:

圖5 部分視頻仿真結果Fig.5 Partial results of video simulation
1) 目標姿態變化。Car3、SUV和Bike1視頻序列中目標發生了明顯的姿態變化。Car3的第462幀中,FCNT、Struck算法出現了明顯的偏移,而本文算法利用構建的MPCA-CNN提取目標深層次特征,提高了目標外觀模型的魯棒性和精確性,使得跟蹤算法在無人機視頻中始終正確跟蹤目標。
2) 目標遮擋。Car3和SUV視頻中目標在運動過程中被不同物體不同程度遮擋。SUV的第517幀遇到遮擋時,SRDCF和FCNT算法發生了跟蹤漂移,而本文算法采用自適應調整學習速率進行模板更新,在跟蹤目標發生遮擋時仍準確跟蹤目標。
3) 相似目標。Bike1視頻序列中出現相似目標。由于無人機目標特征不明顯,且當跟蹤目標周圍出現了相似目標時,CNN-SVM算法出現了明顯偏差,由于自適應MPCA-CNN網絡能夠提取到比傳統CNN更深層次的目標特征,使得本文跟蹤算法始終能準確地跟蹤目標。
4) 光照變化。Person15無人機視頻中目標運動過程中光線的亮度變化使目標的顏色、亮度等特征隨之改變,Staple、SRDCF和KCF算法均出現不同程度的跳動,由于本文算法使用多通道卷積特征減弱光照變化的影響,實現更準確的目標表征,實現穩定跟蹤目標。
針對上述4組視頻序列,采用中心位置誤差和覆蓋率2個評價指標對算法進行對比分析。中心位置誤差是指跟蹤結果中心點與真值中心點之間的歐氏距離。跟蹤結果的邊界窗口為rt,目標窗口為ra,重疊率定義為S=|rt∩ra|/|rt∪ra|,當t大于所給的閾值則表示當前幀跟蹤成功。圖6為8種跟蹤算法在4組測試視頻中的中心位置誤差曲線。圖7為8種跟蹤算法在4組測試視頻中的覆蓋率曲線。
相比其他算法,本文算法的中心位置誤差始終保持在較低水平,在跟蹤過程中具有較好的跟蹤效果,如圖6所示。由圖7可以看出,本文算法在不同無人機視頻中始終保持了較高的覆蓋率,由此表明本文算法在不同的無人機測試視頻中都能保持較高的跟蹤精度,具有較好的跟蹤性能。
為了進一步分析本文跟蹤算法的性能,與當前主流的跟蹤算法在UAV123數據集上進行仿真實驗對比分析。采用跟蹤精確度和跟蹤成功率2個通用的評價指標來進行定量分析。跟蹤精確度(Precision)反映跟蹤得到的目標中心位置和給定的實際目標中心位置的距離小于給定的某個閾值的視頻幀數占總視頻幀數的比例,因此,隨著閾值的增大,精確度曲線不斷上升。跟蹤成功率(Success)反映跟蹤得到的目標框和給定的實際目標框的重疊程度大于給定閾值的視頻幀數占總視頻幀數的比例,因此,隨著對重疊程度的要求越高,即閾值越大,反而成功率曲線不斷下降。

圖6 中心位置誤差曲線Fig.6 Curves of enter position errors


圖7 覆蓋率曲線圖Fig.7 Coverage curves
圖8表示8種跟蹤算法對于UAV123數據集中所有視頻序列的整體跟蹤成功率曲線和精確度曲線,其中圖例中括號中的數字分別表示中心位置誤差取值為20時對應的跟蹤精確度和覆蓋率取值為0.5時對應的跟蹤成功率。由圖8可以看出,本文算法的跟蹤精確度和成功率高于其他算法。在圖8(a)中,跟蹤精確度在中心位置誤差閾值為20像素時,本文算法的跟蹤精確度高于同樣基于卷積特征跟蹤的CNN-SVM算法的4.36%。當中心位置誤差小于20像素時,本文算法的精確度值要高于其他算法,這說明了在高精度約束條件下,本文算法的魯棒性更好。在圖8(b)中,本文算法比SRDCF跟蹤算法提高了9.79%。當覆蓋率閾值處于中間范圍時,本文算法的成功率高于其他對比算法,尤其是當閾值處于0.3~0.6范圍內時,本文算法的成功率明顯高于SRDCF算法,在閾值大于0.8時,本文算法的成功率略低,但也達到了次優。由于本文算法能夠提取到目標更深層次的特征,提高了跟蹤成功率。綜上所述,本文算法具有較好的跟蹤性能,滿足無人機平臺對目標跟蹤算法的要求。


圖8 在UAV123數據集的精確度圖和成功率圖Fig.8 Accuracy maps and success rates in UAV123 data set
本文提出了一種基于自適應深度網絡的無人機目標跟蹤算法,主要貢獻為
1) 設計了一個3階MPCA-CNN自適應卷積神經網絡,為了降低輸入的冗余性和加快網絡的學習速度,將MPCA作為深度網絡的第1層;并對圖像的H、S、I通道分別進行主成分分析學習,將得到的特征向量初始化各層卷積核,提取到的特征比傳統的卷積神經網絡更有效地反映出目標的特征信息,優化了網絡結構,提高了網絡的收斂速度和精度。
2) 提出了一種根據視頻圖像的變化情況調整學習速率的算法,該算法通過分析相鄰2幀圖像的變化,采用分段自適應調整學習率的算法,進行目標模板更新,相較于固定學習速率的跟蹤算法具有更強的魯棒性,可以有效地解決目標遮擋等問題。
3) 仿真實驗結果表明,與7種主流跟蹤算法相比,該跟蹤算法具有較高的跟蹤精確度和跟蹤成功率,并且取得較低的中心位置誤差和較高的覆蓋率。但是該算法對于跟蹤目標出現長時間遮擋的情況時,容易發生跟蹤漂移,若進一步與目標檢測算法結合,將會更好地解決目標長時間遮擋等問題。