楊名宇, 王 浩, 王含宇
(中國科學院 長春光學精密機械與物理研究所 中國科學院航空光學成像與測量重點實驗室,吉林 長春 130033)
近年來,隨著無人機產業(yè)的迅猛發(fā)展和廣泛應用,對全球低空安全管理造成了前所未有的嚴峻壓力,非法放飛無人機所帶來的安全隱患給機場、邊境、監(jiān)獄、重要敏感區(qū)域的低空防范敲響了警鐘,引發(fā)公眾高度關注。無人機的無序飛行時有發(fā)生,不僅嚴重擾亂空域交通秩序,還會引發(fā)很多安全問題。如在2018年底,英國西斯羅機場由于無人機的“黑飛”,使得機場關閉數(shù)天,滯留旅客上萬人,造成巨大經濟損失。目前,絕大部分無人機為受控狀態(tài),即無人機的購買需要實名制,且每次飛行的航跡、時間、地點等信息通過GPS信號都可在監(jiān)管部門的后臺查詢到。在這種情況下,可以較為容易地鎖定每臺飛機以及飛機擁有者。上述受控監(jiān)管模式目前已能覆蓋大約90%以上的消費級無人機,剩余10%的無人機包括自行研發(fā)的、私自拆掉GPS模塊的等,則處于非受控狀態(tài),是低空防范的重點和難點。如何對非受控的無人機目標進行檢測、識別與跟蹤,是當前全世界各國普遍存在的難題[1-2]。
當前,無人機防范常用手段主要包括:光電探測、無線電探測、聲學探測、雷達探測等[3]。光電探測主要利用光學設備通過成像的方式判斷目標是否存在,具有直觀、易讀等優(yōu)點,但通常作用距離較小,且探測效率較低,距離實際工程應用尚有差距[4-9]。無線電干擾主要通過特定頻段的無線電波阻斷無人機和飛行控制器之間的無線鏈路,使飛行控制器無法向無人機發(fā)送信號。但此方法并不是對于所有型號的無人機都適用(如大疆的云哨系統(tǒng),該系統(tǒng)只對大疆旗下的無人機有效),同時,可視化程度差。聲學探測通常用于大型無人機等的探測,在城市環(huán)境下使用時易受到背景噪聲干擾。雷達探測可同時獲得目標的位置、速度等信息,但是對于民用無人機而言,其雷達散射面積較小,同時無人機飛行高度較低、飛行速度較慢、體積較小,即“低慢小”,對于此類目標,雷達探測存在效能不足等問題。
針對現(xiàn)有光電探測手段存在的不足,本文搭建了一套由轉臺、高清可見光相機、圖像采集與處理設備組成的地面式無人機探測與跟蹤系統(tǒng),在YOLOv3模型基礎上增加了更小尺度特征,并提出一種基于更小尺度的YOLOv3與KCF相結合的模型。實驗結果表明,所提方法可以對無人機目標實現(xiàn)全自動式檢測與跟蹤,且遠距離小目標識別率比原始YOLOv3模型高5%。對于1 280×720分辨率的動態(tài)視頻,每幀檢測時間為0.025~0.030 s,且根據(jù)選定的閾值,當無人機目標丟失后可重新進行檢測,每幀跟蹤時間為0.010~0.012 s,驗證了所提方法的有效性,并可滿足工程應用中對實時處理的需求。
深度學習的概念是Hinton等人于2006年首次提出的[10],其從一問世就備受學術界關注,原因在于相比于其他方法與結構,多隱層的人工神經網絡能夠更好地模擬人腦的思考過程,具有更加優(yōu)異的學習及泛化能力,能夠更有效、更本質地對目標的特征進行提取與描述,從而提升對各類目標的分類與識別能力。
卷積神經網絡是深度學習中第一個真正多層結構學習算法,其在圖像識別領域優(yōu)勢明顯。它利用感受野局部連接等概念極大地減少了參數(shù)量,降低了網絡模型的復雜度,提高了訓練效率,且網絡對于平移、縮放的各種變形都具備較高的不變性[11-12]。一個卷積神經網絡通常包括卷積、降采樣、激活、池化以及全連接等操作,卷積層和降采樣層實現(xiàn)對目標低層特征的提取,通過多個卷積層來模擬人腦感知視覺信號的逐層處理機制;激活主要實現(xiàn)非線性變換,常用Sigmoid、ReLU等非線性函數(shù)實現(xiàn);池化操作主要實現(xiàn)高層特征的提取,全連接實現(xiàn)對目標最終的分類[13]。
目前,各類開源的深度學習數(shù)據(jù)集中客機、直升機等類圖像較多,無人機類圖像較少。此外,在進行地面式無人機防范時,地面探測系統(tǒng)對于空中無人機的觀測視角應為仰視,現(xiàn)有數(shù)據(jù)集中包含的無人機類圖像多為平視,直接使用開源數(shù)據(jù)集中的圖像可能會導致漏檢情況發(fā)生。因此,無人機類目標圖像需要通過自行拍攝獲得。
本文利用轉臺、高清可見光相機及無人機進行圖像數(shù)據(jù)獲取,如圖1所示。
圖1 轉臺及高清可見光相機實物圖Fig.1 Picture of turntable and HD camera
其中,轉臺可以水平360°旋轉,俯仰方向為0°~+90°。高清可見光相機分辨率為1 280×720(720 P),變焦鏡頭焦距為20~700 mm,視場角為1.02°~34.68°。采用的無人機包括大疆御Pro、大疆精靈3、諾巴曼X18W等在內的4個品牌共計6種機型,分別在不同尺度、光照、背景、仰角、姿態(tài)下進行拍攝,通過預處理之后共獲得無人機目標圖像40 000張。
圖2為大疆御Pro無人機實物,由機身和4個旋翼組成,其中,機身尺寸為190 mm(長) ×85 mm(寬) ×55 mm(高),相鄰旋翼長度為240 mm,對角旋翼長度約為350 mm,參考方磚尺寸為600 mm×600 mm。
圖2 大疆御Pro無人機實物圖Fig.2 Picture of DJI Mavic Pro
將大疆御Pro無人機看作邊長為240 mm的正方形,且無人機識別時按30個像素計算,通過幾何光學可得最遠探測距離為1.6 km。但在鏡頭最長焦距時,視場角僅為0.51°,在此視場下進行目標跟蹤是不現(xiàn)實的。為了兼顧探測視場和目標大小,實際最遠可用的作用距離在1 km左右。
將采集到的總樣本數(shù)40 000幀中包含無人機目標圖像的80%(32 000幀)作為訓練集,剩余20%(8 000幀)作為測試集。
3.2.1 目標識別
綜合考慮識別精度與識別效率,本文選用YOLOv3模型進行無人機目標實時檢測與識別。基于YOLO模型的深度學習目標識別技術,可同時預測多個邊界框的位置和類別,實現(xiàn)端到端(end to end)的目標檢測和識別,即在輸入圖像運行一次后即可獲得圖像中所有目標的位置、其所屬類別以及相應的置信概率,速度明顯優(yōu)于其他同類型算法模型[14]。
YOLOv3在原有的YOLO模型架構中進行了一些改進,通過調整模型結構的大小來權衡速度與精度間的關系,如使用錨點框來預測邊界框、進行多尺度預測、使用含有更多卷積層的Darknet-53基礎網絡、利用二元交叉熵損失函數(shù)(Binary Cross-entropy Loss)來進行類別預測等[15-16]。YOLOv3對輸入圖像進行了5次降采樣,并分別在最后3次降采樣中對目標進行預測。最后3次降采樣包含了3個尺度目標檢測的特征圖,其中13×13的特征圖負責預測較大目標,26×26的特征圖負責預測中等大小的目標,52×52的特征圖負責預測較小目標[17-18]。
為了更遠、更早地發(fā)現(xiàn)目標,增強模型對小目標的識別能力,本文在YOLOv3模型基礎上,增加了更小的尺度特征104×104。具體做法為將YOLOv3網絡中的第109層與第11層進行張量拼接,將拼接后的處理結果作為新的特征圖。
3.2.2 目標跟蹤
跟蹤模型選用核相關濾波(Kernelized Correlation Filter, KCF)。相關濾波(Correlation Filter)是根據(jù)MOSSE、CSK等算法改進而來的,最初起源于信號處理領域,后被運用于圖像分類等領域。相關濾波在目標跟蹤方面最樸素的想法是:相關是用來衡量兩個信號的相似程度,如果兩個信號越相似,那么其相關值就越高。具體來說,即利用一個目標檢測器,使得當它作用在跟蹤目標上時,得到的響應最大,最大響應值的位置就是目標的位置。在KCF中,利用脊回歸函數(shù)來訓練目標檢測器。引入核函數(shù)的目的主要是將高維特征映射到低維空間,提高算法計算效率。
由于KCF中脊回歸函數(shù)的返回值表明的是當前位置與初始位置的相關程度,因此可以通過實時計算該返回值來判斷目標是否丟失。本文提出的無人機目標識別與跟蹤算法總體流程如圖3所示。
圖3 算法總體流程圖Fig.3 Scheme of the proposed algorithm
這里,60%概率為經驗值,主要考慮到在實際應用中,本著“寧虛勿漏”的原則以及小目標與變形的情況,略大于50%概率即可認為是“目標”。在實際跟蹤過程中,不同背景、光照等條件下,脊回歸函數(shù)的返回值范圍一般不同,因此只能通過大量的試驗來確定該值的范圍。本文通過大量室外試驗得出,針對選擇的無人機目標樣本,脊回歸函數(shù)的取值范圍在(0,0.85]之間。當目標丟失時,其最大值小于0.2,所以將閾值T1設定為0.2。即當某一時刻的脊回歸函數(shù)最大值小于0.2時,重新進行目標檢測,如此循環(huán),直至結束。
為了驗證所提方法的有效性,利用測試集數(shù)據(jù)與視頻進行了實驗。開發(fā)環(huán)境為Ubuntu16.04,開發(fā)工具為QT5.9.2,程序用C++語言編寫,計算機CPU為Intel i7-7700K,內存32 G,GPU為1塊Titan XP。計算機與轉臺、高清可見光相機之間的通訊通過RS232串口進行。YOLOv3網絡的輸入大小共有320,416,608三種,考慮到無人機目標本身較小以及訓練圖像的大小,本文選用的網絡輸入大小為608。
在測試集8 000幀圖像中,目標像素小于等于40×40的圖像共有1 200幀,YOLOv3模型正確識別無人機圖像數(shù)量為7 254,正確率為90.67%;增加更小特征尺度后正確識別無人機圖像數(shù)量為7 616,識別正確率為95.2%,相較于YOLOv3提高約5%。
在對兩段視頻的測試中,視頻1包含2 350幀,視頻2包含1 780幀,對于本文提出的基于更小特征尺度的YOLOv3+KCF模型,正確識別與跟蹤的總幀數(shù)分別為2 200和1 675,正確率分別為93.6%和 94.1%。對于分辨率為1 280×720圖像,單幀檢測時間為0.025~0.030 s,單幀跟蹤時間為0.010~0.012 s。
圖4為對較小目標的檢測結果,其中圖4(a)目標大小為40×35,圖4(b)目標為30×28,單位為像素??梢钥闯觯谀繕怂枷袼剌^少的情況下,增加了更小特征尺度的YOLOv3模型依然可以成功將無人機目標檢測出來;而限于目標尺寸的影響,YOLOv3模型未能成功檢測到目標。
圖4 較小目標檢測結果Fig.4 Results for small UAV targets
圖5為視頻1的測試結果。圖5(a)為視頻第1幀,檢測到無人機并標注為UAV。圖5(b)為第185幀圖像,當前為跟蹤狀態(tài),標注為“Tracking”。圖5(c)為第328幀,依舊處于跟蹤狀態(tài),目標沒有丟失。圖5(d)為第800幀,由于背景變化較大,且目標與背景顏色較為接近,本幀跟蹤時目標丟失。實時計算此時的脊回歸函數(shù)f(z)為0.17,小于設定的閾值0.20,即認為跟蹤目標丟失,需重新進行目標檢測。圖5(e)為第801幀,重新進行目標檢測后,成功檢測到無人機,并轉向跟蹤。圖5(f)為第926幀,當前處于跟蹤狀態(tài),表明從第802幀開始一直處于跟蹤狀態(tài),并正確跟蹤到無人機目標。
圖5 視頻1測試結果Fig.5 Experiments for video1
圖6為視頻2的測試結果。圖6 (a)為視頻第1幀,檢測到無人機并標注為UAV。圖6(b)為第168幀圖像,當前為跟蹤狀態(tài),標注為“Tracking”,可以看到背景始終為天空。圖6(c)為第470幀,依舊處于跟蹤狀態(tài),但背景逐漸從純天空向建筑物過渡。圖6(d)為第984幀,此時背景變?yōu)闃淙~,相較天空背景變化較大,且此時目標與背景顏色較為接近,導致本幀跟蹤時目標丟失。實時計算此時的脊回歸函數(shù)f(z)為0.13,小于設定的閾值0.20,即認為跟蹤目標丟失,需重新進行目標檢測。圖6(e)為第985幀,重新檢測到無人機,并轉向跟蹤;圖6(f)為第1 119幀,處于跟蹤狀態(tài),表明自最近一次重新檢測后,一直處于跟蹤狀態(tài),驗證了所提方法的有效性。
圖6 視頻2測試結果Fig.6 Experiments for video2
表1為YOLOv3、小尺度YOLOv3、小尺度YOLOv3+KCF分別在上述靜態(tài)樣本、視頻1和視頻2中的性能對比。從表中可以看出,對于樣本集圖像來說,加入小尺度特征后,識別率提升近5%。對于視頻1和視頻2,單純用YOLOv3或者小尺度YOLOv3去進行目標檢測與跟蹤(檢測式跟蹤),二者的識別正確率都要比本文方法高。其中,YOLOv3的正確率比本文方法略高一點。但是這種每幀都進行檢測的方法對資源需求太高,每幀檢測時間平均為0.03 s左右,即30 fps,再加上一些其他處理,經常會低于25 fps,不能滿足工程上的實時處理。而本文方法在目標跟蹤時,只有當目標丟失時才會重新檢測,在目標沒有丟失的情況下均進行跟蹤,而跟蹤的處理時間僅為0.012 s左右。因此,通過加權計算本文方法每幀檢測及跟蹤時間平均為0.022 s左右,即使算上其他資源消耗,也可滿足30 fps實時處理需求。
表1 YOLOv3、小尺度YOLOv3、小尺度YOLOv3+KCF性能對比Tab.1 Performance comprison of YOLOv3, small-scale YOLOv3 and small-scale YOLOv3+KCF
為了對“黑飛”的無人機進行光電探測與跟蹤,本文搭建了基于轉臺與高清可見光相機的無人機目標實時探測系統(tǒng),在YOLOv3模型基礎上增加更小的特征尺度并結合KCF模型,實現(xiàn)對無人機目標的實時檢測與跟蹤。試驗結果表明,通過在包含大疆御Pro、精靈3等無人機在內的8 000幀無人機圖像組成的靜態(tài)測試集上進行實驗,增加更小特征尺度后的模型對小目標的識別率較之原始YOLOv3模型提高約5%。對于1 280×720分辨率的動態(tài)視頻,每幀檢測時間為0.025~0.030 s(33 fps),且根據(jù)選定的閾值,當無人機目標丟失后可重新進行檢測,每幀跟蹤時間為0.010~0.012 s(85 fps),這對于未來全自動式無人機探測系統(tǒng)的研制具有重要意義。然而,無人機種類繁多,不可能窮盡所有無人機目標,本文只是對常見的幾種旋翼式無人機進行了取樣和訓練,對于固定翼式的無人機目標并沒有考慮,進一步工作將主要集中在更多種類更多數(shù)量的無人機目標樣本獲取及神經網絡模型優(yōu)化等相關研究方面。