?

基于深度學習的無人機航拍目標檢測與跟蹤方法綜述

2024-03-20 08:43歐陽權薛雅麗王志勝
電光與控制 2024年3期
關鍵詞:深度目標算法

歐陽權, 張 怡, 馬 延, 薛雅麗, 王志勝

(1.南京航空航天大學自動化學院,南京 211000; 2.西北工業大學軟件學院,西安 710000)

1 研究背景

近年來,無人機(UAV)因體型小巧、成本低廉、動作靈活性高、易于操控等優勢,在各種多元化航拍場景中都得到了應用,例如檢測、追蹤野生動物的數量和生活軌跡,特定場合對人群、車輛進行安全監控、跟蹤和定位,實時監測空氣、水質并追蹤查找污染源等。在無人機的諸多應用中,目標檢測與跟蹤技術發揮著不可替代的作用。

一直以來,目標檢測與跟蹤技術總體上是由檢測和跟蹤兩個部分組成。其中:目標檢測是通過檢測算法對輸入圖像中可能存在目標的區域(即感興趣區域)[1]進行特征提取,利用預訓練的分類器輸出檢測結果;目標跟蹤是利用跟蹤算法對視頻初始幀目標進行特征提取,通過模型訓練來預測目標的未來位置和大小。目標檢測與跟蹤技術都經歷了從傳統方法階段到基于深度學習方法階段的演變,傳統方法需要手動提取特征,存在過程繁瑣、計算量冗余且準確率低等缺點。隨著科學技術的飛速發展,基于深度學習的深度神經網絡已經成為無人機目標檢測與跟蹤技術的首選框架[2]。如圖1[3]所示,通過無人機群對人體進行檢測和追蹤。目前,計算機領域中應用最廣泛的深度目標檢測算法以兩階段(Two-stage)和單階段(One-stage)為主。其中,Two-stage目標檢測算法以R-CNN[4-5]系列最為常見;One-stage目標檢測算法以YOLO算法系列[6-11]和SSD[12-15]算法為代表。目標跟蹤算法大致劃分成生成式和判別式兩種,判別式目標跟蹤算法又可分為以相關濾波[16-21]為基礎和以深度學習[22-27]為基礎的跟蹤算法。目前將目標檢測與追蹤技術應用于無人機領域的綜述有文獻[28-30]。文獻[28]系統地介紹了基于深度學習的無人機航拍目標檢測的研究現狀;文獻[29]總結了在YOLO系列算法的基礎上,無人機在場景復雜的情況下進行目標檢測的研究現狀,并指出YOLO算法更適用于無人機的應用;文獻[30]綜述了基于無人機的常用跟蹤框架和代表性跟蹤算法,并討論了良好跟蹤系統的要求和現有技術的不足。

圖1 無人機人體檢測與追蹤

本文首先對無人機目標檢測與跟蹤任務及難點進行論述梳理,接著對基于深度學習的目標檢測與跟蹤算法分別進行闡述,最后對全文進行總結,并對無人機目標檢測和跟蹤技術的未來進行展望。

2 無人機航拍目標檢測與跟蹤任務及難點

當前無人機目標檢測與跟蹤任務大多是以基于視覺的方式來實現,其主要流程為:通過目標檢測算法,無人機對視覺初始幀中的目標進行定位和分類,接著對視覺中運動的目標進行特征提取、外觀建模,再根據觀測模型對運動目標的位置和大小進行預測,最終實現目標跟蹤任務。近年來,基于視覺的無人機目標檢測與跟蹤任務的主要難點在于背景復雜造成的目標遮擋、目標尺度變化及運動復雜、光照變化和實時性差等,目標檢測與跟蹤任務難點如圖2所示。具體描述如下。

圖2 目標檢測與跟蹤任務難點

1) 背景復雜,目標遮擋。無人機高空飛行視野廣闊,目標檢測干擾物較多。如圖2(a)所示,在人臉識別中,戴口罩的人群很有可能被漏檢。因此,辨識度和低排他性都會降低目標模型的精度。

2) 目標尺度及運動復雜。如圖2(b)、2(c)所示,例如人的奔跑或跳躍等動作會導致無人機拍攝圖像模糊;同時,隨著無人機高度增高,視野變廣,目標變小導致檢測難度增加。

3) 光照變化。無人機大多應用于室外場景,與其他任務相比更容易存在受到光源影響的情況。如圖2(d)所示,光照強弱程度改變,同一視角目標顯示的顏色和亮度會變化,這會提高檢測難度從而降低模型性能。

4) 實時性差。實時性是衡量無人機能否進行實時準確跟蹤的重要因素,因此,減少網絡參數量和降低計算復雜程度是十分必要的。

3 無人機航拍目標檢測算法

在2012年,HINTON和他的學生KRIZHEVSKY帶著AlexNet[31]模型在ILSVRC2012比賽中奪得冠軍,迎來了以卷積神經網絡為核心的時代,目標檢測技術也開始從傳統的機器學習技術逐漸向深度學習轉變。以深度學習為基礎的目標檢測算法分為單階段和兩階段兩類。Two-stage目標檢測算法經區域建議產生感興趣區域,然后進行候選區域的特征提取、分類回歸等操作。One-stage目標檢測算法是一種基于回歸的檢測算法,因此不需要歷經候選區域的生成這一步驟。目標檢測算法發展歷程如圖3所示。

圖3 目標檢測算法發展歷程

在目標檢測任務中,通常利用平均精確率(Average Precision,AP)來對算法性能進行評價,其算式為

(1)

當交并比閾值設定為t時,P(t)可以反映出模型的準確性。在處理復雜的目標檢測任務時,通常用平均精確率均值(mean Average Precision,mAP)作為衡量準確性的指標,其算式為

(2)

3.1 兩階段目標檢測算法

R-CNN算法最早由GIRSHICK等[4]提出,該算法在區域選擇階段利用選擇性搜索[32](Selective Search),解決了滑動窗口生成大量冗余候選框,最終導致計算量過大的問題;同時,在特征提取階段利用CNN網絡,解決了手工提取因環境復雜而導致的魯棒性差的問題;在最后階段,將邊界回歸和利用分類器SVM分類同時進行,這極大地提升了檢測效果。但R-CNN算法也存在一些局限性:每一個候選區域的生成都需要通過CNN提取特征,會產生大量重復計算,導致檢測速度較慢;此外,R-CNN目標檢測各階段以及各自獨立,依舊無法找到全局最優解。

針對前者的不足,GIRSHICK[5]提出了Fast R-CNN算法。該算法通過合并分類和邊框回歸問題,初步實現了端到端的檢測,同時將SVM替換成Softmax,將全部特征存在顯卡中,進一步減少了存儲空間的消耗,也極大地加快了檢測速度。在VOC2007數據集測試中,Fast R-CNN算法在準確率方面達到了70.0%,訓練速度是R-CNN算法的10倍。Fast R-CNN算法的缺點在于候選區域生成上仍是選擇基于選擇性搜索的方法,因此該算法實時性效果較差。

接著,在經典的檢測算法打下堅實的基礎后,一些具有創新性的算法也陸續被提出,ZHANG等[33]提出了Dynamic R-CNN 算法,該算法利用基于統計量的方法自動對標簽分配標準和回歸損失函數進行調整,從而減小訓練計算的復雜程度和測試的額外開銷;SHI等[34]提出了PV-RCNN算法,該算法將三維體素卷積神經網絡和基于Pointnet的集合抽象深度融合,根據學習點云的判別性特征從而在點云中精確檢測到目標的三維坐標,使得該算法具有較好的精度;不久,YIN等[35]提出CenterPoint CVP21算法,該算法利用點來表示、檢測和跟蹤3D物體,其框架CenterPoint 利用關鍵點檢測器檢測目標中心,然后回歸到3D大小、方向和速度等屬性,這樣的檢測算法更簡單、高效,但在邊緣計算設備上的實時性效果較差。

兩階段目標檢測算法主要是向著簡化網絡結構、提高檢測精度、實時參數共享的方向演變,尤其是高質量的檢測精度,但也依舊存在著一些不可忽視的缺陷:如目標檢測速度較慢,難以滿足實際應用中實時性的要求,模型不夠輕量化,限制其在一些硬件平臺的實際應用等。

3.2 單階段目標檢測算法

YOLO算法最早由 REDMON等[6]提出,也是最早出現的單階段目標檢測算法。YOLO算法利用數學模型,把一張圖像分割成S×S個小區域,每個區域僅檢測物體中心落入其中的目標,再利用數學模型來估算出每個區域內物體的類別和屬于該類別的概率以及邊框的位置、尺寸和置信度。VOC2007數據集檢測結果顯示,YOLO算法檢測效率提升至45 幀/s,具有極強的實時性。但YOLO算法對于小目標或者是密集程度較高的目標檢測具有較大的局限性。

不久后,YOLOv2[7]借鑒了DarkNet19的基礎架構,并采用了大規模正則化、聚類邊界框預測和聯合訓練方法等先進技術,以提高模型性能。YOLOv3[8]引入了多尺度特征融合、新的殘差網絡模型DarkNet53等策略,既提高了對小目標信息獲取的能力,又能實現對高覆蓋率圖像的檢測效果。不久后,由于YOLOv4在檢測速度和精度上的良好表現,WANG等[9]對YOLOv4進行改進,該方法可以對網格的深度、寬度和分辨率進行縮放,因此不同性能的硬件平臺可以選擇適合的網絡模型。接著,YOLOv6[10]將空間金字塔優化為SimSPPF,并搭建了Rep-PAN結構,這使得模型在高速推理的同時進行多尺度融合,此外,YOLOv6引入了新的損失函數SIoU,提高了模型的訓練速度以及回歸精度。YOLOv7[11]在網絡整體框架上加入了重參數卷積、高效聚合網絡和模型縮放等新技術,YOLOv7的檢測精度和速度都大大超越了之前的檢測器。YOLO系列算法一直在向網絡輕量化、提高檢測速度和檢測精度的方向發展,但依舊有一些共性的缺陷:如對于小目標檢測或者復雜背景下的多目標檢測的效果依舊較差,大多數模型的計算量較大。

因此,LIU等[12]提出了SSD算法,該算法使用全卷積網絡,以多尺度特征檢測,既保證精度又兼顧了速度,但該算法對小目標檢測效果仍然比不上兩階段檢測算法。YE等[13]提出了HVNet網絡,可以通過融合不同尺度的體素特征編碼器再投影到多個偽圖像特征映射中從而解決體素大小參數難以平衡的問題,這對于大小目標的檢測都能有更強的檢測效果。YANG等[14]提出了一種輕量級的基于點的三維目標檢測器3DSSD,該模型對較少的具有代表性的點進行融合采樣,同時,該模型還增加了一種包含候選生成層和三維中心度分配策略的精細盒狀預測網路,從而滿足高速度高精度的要求。ZHENG等[15]針對室外點云中的3D目標檢測提出了SE-SSD,該模型能夠根據制定的一致性約束優化,從而能將預測和目標保持一致,同時設計了新的數據增強方案來產生形狀感知的增強樣本,這使算法能夠準確、高效地進行戶外檢測。

單階段目標檢測算法總體上呈現出在檢測速度快的情況下往高精度方向發展的態勢,但同時存在著一些缺點,如隨著神經網絡的加深,在特征提取階段容易出現細節丟失;對于小目標檢測有著不同程度的限制,模型大多較為復雜,不利于在移動設備上部署,限制實際應用等。

表1是對各類目標檢測算法的性能比較。

表1 以深度學習為基礎的目標檢測算法性能對比

4 無人機航拍目標跟蹤算法

從跟蹤算法的發展歷程來看,可以將其主要分為兩大類:1) 生成式目標跟蹤算法,主要存在于傳統目標檢測算法中;2) 判別式目標跟蹤算法,這類算法相比于前者加入了檢測的過程,跟蹤效果取得了極大提升。本文主要講述的是判別式目標跟蹤算法,主要分為兩類:一類采用相關濾波技術;另一類采用深度學習技術。

圖4為目標跟蹤算法的分類圖。判別式目標跟蹤算法能夠同時分析目標信息和背景信息,再經過訓練器訓練來對目標和背景進行分辨,最后選擇候選樣本中置信度最高的作為預測結果。目前,判別式目標跟蹤算法大多數都是通過使用相關濾波或者深度神經網絡來實現的。兩者都是以一般目標函數為基礎。

圖4 目標跟蹤算法分類圖

判別式目標跟蹤算法旨在通過優化均方誤差來提高檢測準確性,其目標函數的基本定義為

(3)

式中:xk為輸入的圖片數據;k為采樣xk的通道數;K為總通道數;ωk*xk為濾波器與采樣的相關操作;y為高斯矩陣;λ是正則參數減少模型的過擬合。目標函數在頻域內求解模型ω的增量為

(4)

式中:ωpre為當前模型;ωmodel為濾波器模型;α為更新速率。

4.1 基于相關濾波的跟蹤算法

以相關濾波為基礎的跟蹤算法大多是以在線學習的方式跟蹤目標,該過程對初始幀圖片訓練,通過訓練出的濾波器對后面圖像中的目標和背景進行區分,同時對模型進行更新以便適應目標的變化。本文將介紹幾種經典濾波算法并加以分析。

最早BOLME等[16]提出MOSSE算法,其平均檢測速度達到600 幀/s,而且在光照變化以及目標尺寸變化時依舊具有很強的穩定性。但MOSSE算法也有一些局限性:利用線性濾波器進行采樣,總體分類性能一般;采用單通道的灰度特征,因此對跟蹤目標的表征能力有限。接著,HENRIQUES等[17]提出CSK算法,該算法利用循環矩陣的特點,用基于核映射的采樣方法來代替粒子采樣,但這也給CSK算法帶來了兩方面的缺陷:1) 對目標尺度變化適應性較差,當目標的大小發生變化時,跟蹤框無法及時進行調整;2) 由于搜索框范圍的局限性,當目標快速移動時,容易目標丟失。隨后,HENRIQUES等[18]基于CSK算法,提出了KCF和DCF算法,該算法通過核函數將低維線性空間向高維空間進行映射,從而提升濾波算法的穩定性,但當目標被遮擋或者快速移動時,跟蹤效果較差。

通常無人機跟蹤的場景都很復雜,跟蹤過程很容易受到一些噪聲的影響,因此,HUANG等[19]提出了ARCF算法,該算法對檢測階段的響應圖變化率進行限制,從而可以減少目標因為光照、遮擋等導致的檢測畸變,提高對目標跟蹤的魯棒性和準確性。接著,FU等[20]提出DRCF算法,該算法提出了一種雙正則化策略,在直接正則化的同時對相關的濾波器進行正則化,從而抑制邊界效應,因此,該算法用于無人機目標跟蹤時整體性能優越。不久后,LI等[21]提出AutoTrack算法,該算法引入了空間局部響應圖變化作為空間正則化,使DCF專注于學習對象的可信部分,全局響應圖變化決定濾波器的更新速度,這種在線自適應學習算法極大地加快了目標跟蹤的速度,同時,該算法在無人機上已經得到了廣泛的實驗和應用。

以相關濾波為基礎的算法最為顯著的優點是能夠在線學習,根據跟蹤目標變化對模型進行更新,從而提高了目標跟蹤的實時性,但這類跟蹤算法也有一些尚未解決的局限性,如對跟蹤目標的尺度變化適應性不強,對被遮擋目標跟蹤能力不強,對跟蹤視頻幀率要求較高等。

表2為各種基于相關濾波的目標跟蹤算法的分析對比。

表2 以相關濾波為基礎的目標跟蹤算法優缺點對比

4.2 基于深度學習的跟蹤算法

如今,目標跟蹤領域也開始利用深度學習技術,從而實現對目標端到端的跟蹤,主要以CNN-SVM[22]算法及其衍生算法和孿生網絡系列算法為主。

CNN-SVM是實際應用最廣泛的深度學習算法之一,該算法先使用卷積神經網絡學習目標的特征,然后利用SVM學習判別目標的外觀模型,同時CNN構建目標顯著性圖生成跟蹤結果。NAM等[23]提出了新型的多域卷積網絡MDNet,其結構由三層卷積以及兩層全連接組成,可以有效捕獲多個目標的信息特征,但對目標和相似的背景重疊的場景,難以進行有效的分割。在此問題上,QI等[24]提出了一種全新的SSAT算法,該算法利用特殊的CNN來有效劃分目標是否被遮擋,未被遮擋的目標直接用于跟蹤器更新,但當目標受到背景信息的影響導致整體圖像不完全時,該圖像將直接輸出。SSAT算法結構如圖5[36]所示。

圖5 SSAT算法結構圖

TAO等[25]提出的SINT算法主要分為離線跟蹤和在線跟蹤兩個過程:離線使用ALOV算法,利用最小化損失函數計算;在線跟蹤利用兩個分支網絡分別輸入當前幀圖像和初始幀圖像,最終返回的最大響應區域為目標位置。BERTINETTO等[26]在此基礎上提出SiamFC目標跟蹤算法,跟SINT算法一樣將跟蹤過程分為離線跟蹤和在線跟蹤兩個過程,并且訓練效果佳、速度快。SiamFC的出現徹底改變了傳統的目標跟蹤算法的格局,它的結構簡單、實時性強,但是由于目標尺度的影響,其跟蹤過程中魯棒性仍然不夠理想。

于是,LI等[27]在SiamFC網絡中融入了 RPN,從而生成一種新的算法SiamRPN,該算法由孿生子網絡以及候選區域子網絡構成,前者利用全卷積網絡對樣本進行特征提取,后者同時負責目標背景分類和邊界框回歸,最終將兩者進行融合,則可以更好地得到目標的位置和大小。SiamRPN的性能顯著優于其他算法,它能夠快速、準確地進行目標跟蹤,但在數據集種類分類中還相對較少,因此還有很大的提升空間,該算法結構如圖6[37]所示。

圖6 SiamRPN算法結構圖

當前大多數孿生網絡都是采用AlexNet網絡作為主要的網絡,較為簡單,因此,ZHANG等[38]在對孿生網絡的不斷探索中提出了SiamDW算法,利用CIR有效控制目標接收域的大小,從而顯著降低目標跟蹤偏差。接著,LI等[39]提出了SiamRPN+ +算法,該算法在SiamRPN的網絡框架中融入了深層孿生網絡塊,這有利于特征的逐層聚合,提高了算法的跟蹤性能。

綜上所述,以深度學習為基礎的跟蹤算法在骨干網絡升級、簡化網絡架構、轉變目標搜索策略等方面不斷深入研究,對于目標跟蹤的準確度有很大的提升。但這類算法依舊有一定的局限性:采用離線訓練的方式無法適應實際應用中的突發狀況;算法的實際通用性較低,很少能同時在速度、精度和穩定性上有較好的效果。

5 總結與展望

本文梳理了無人機目標檢測與跟蹤任務和難點,對近年來目標檢測算法和目標跟蹤算法進行總結和對比分析,展望了無人機目標檢測與跟蹤任務未來的發展方向。

目前面向無人機的目標檢測與跟蹤技術雖然有了很大的進步,但由于實際場景中存在對小目標檢測、目標有遮擋、分辨率低等各種情況,這一領域依舊有很大的發展空間,針對以上問題,本文對未來的研究方向做以下幾點歸納:

1) 在目標檢測追蹤過程中,深度神經網絡對于小目標、被遮擋的目標特征提取能力較弱,可以引入一些如遷移學習之類的方法來提高特征提取能力;

2) 目前的目標檢測、跟蹤算法對于無人機實際應用來說,大多只會對尺度變化、小目標檢測或者快速移動一類問題的解決效果較好,很少有算法能同時解決全部問題,因此,開發出對多種因素干擾都能保持良好魯棒性的算法也是很值得研究的方向之一;

3) 當前無論是目標檢測算法還是目標跟蹤算法,大都需要極強的算力要求,但無人機實際應用算力是有限的,因此,如何減少模型參數使其更好地應用于無人機平臺也是值得深入研究的方向之一。

猜你喜歡
深度目標算法
深度理解一元一次方程
基于MapReduce的改進Eclat算法
Travellng thg World Full—time for Rree
深度觀察
深度觀察
進位加法的兩種算法
深度觀察
一種改進的整周模糊度去相關算法
我們的目標
中學英語之友·上(2008年2期)2008-04-01
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合