羅 茜 趙 睿 莊慧珊 羅宏剛
(華僑大學(xué)信息科學(xué)與工程學(xué)院,福建廈門 362021)
隨著人工智能的發(fā)展與進(jìn)步,無人機(jī)(Un?manned Aerial Vehicles,UAV)發(fā)展迅猛,由于無人機(jī)具有運(yùn)動(dòng)靈活、能耗低、適應(yīng)性強(qiáng)、無人員傷亡風(fēng)險(xiǎn)等優(yōu)勢在軍事和民用領(lǐng)域應(yīng)用廣泛[1-3],例如用于軍事上的敵情偵察、農(nóng)業(yè)中的灌溉作業(yè)、企業(yè)數(shù)據(jù)檢測等。此外,自21 世紀(jì)以來,計(jì)算機(jī)視覺發(fā)展迅速,尤其是其中的視覺目標(biāo)跟蹤技術(shù),發(fā)展越來越成熟,在很大程度上解決了人們生活中的智能化需求,例如:自動(dòng)駕駛、智能安保等,提高了人們的生活質(zhì)量,因此將目標(biāo)跟蹤技術(shù)與無人機(jī)進(jìn)行融合展現(xiàn)了巨大的應(yīng)用前景。
由于無人機(jī)可靈活移動(dòng),對地面觀測的視角廣闊,目標(biāo)搜索范圍較大,有助于采集更加全面的目標(biāo)信息,與此同時(shí),出現(xiàn)的干擾物體也會(huì)較多,這將導(dǎo)致目標(biāo)與背景之間可區(qū)分性差、目標(biāo)之間相互遮擋等問題的出現(xiàn);此外,無人機(jī)受到地面高度的制約將導(dǎo)致圖像中的目標(biāo)多為小目標(biāo),且無人機(jī)由于自身的高速運(yùn)動(dòng)會(huì)頻繁出現(xiàn)相機(jī)抖動(dòng)、視角變換等現(xiàn)象,從而使得跟蹤目標(biāo)尺度變化較大;這些問題將影響無人機(jī)視角下的跟蹤準(zhǔn)確度與精度,且與其他場景下的跟蹤相比,無人機(jī)平臺(tái)下的跟蹤目標(biāo)身份切換次數(shù)也較多。在無人機(jī)視覺領(lǐng)域下,Bae S H等人[4]首次提出利用軌跡置信度來解決目標(biāo)遮擋問題的在線多目標(biāo)跟蹤算法,該算法雖然能夠減小目標(biāo)切換頻次但降低了跟蹤準(zhǔn)確度以及精度。ALSHAKARJI 等人[5]設(shè)計(jì)了一種三步級(jí)聯(lián)數(shù)據(jù)關(guān)聯(lián)方法,既保證了實(shí)時(shí)跟蹤又保證了較高的跟蹤精度,但與此同時(shí)增加了目標(biāo)切換頻次。Jin J等人[6]提出一種新型的在線多目標(biāo)跟蹤網(wǎng)絡(luò),利用由Siamese網(wǎng)絡(luò)提取到的外觀信息與由光流和卡爾曼濾波器獲取到的運(yùn)動(dòng)信息,將目標(biāo)與現(xiàn)有軌跡關(guān)聯(lián)起來得到跟蹤結(jié)果,雖然能在一定程度上提高跟蹤準(zhǔn)確度,但降低了跟蹤精度且加劇了目標(biāo)漂移。由此可見,現(xiàn)有的無人機(jī)多目標(biāo)跟蹤算法難以平衡目標(biāo)跟蹤精度與目標(biāo)漂移問題,實(shí)現(xiàn)穩(wěn)定可靠的無人機(jī)多目標(biāo)跟蹤依舊面臨著巨大的挑戰(zhàn)。
傳統(tǒng)跟蹤算法大多采用概率密度和圖像邊緣特征作為跟蹤標(biāo)準(zhǔn),將概率梯度上升的方向作為目標(biāo)搜索方向,這些算法雖然易部署,但其特征表示性能較差,無法處理復(fù)雜場景下的目標(biāo)跟蹤,而深度學(xué)習(xí)與圖像處理的結(jié)合能夠提高特征提取性能且處理速率遠(yuǎn)超于傳統(tǒng)算法,因此基于深度學(xué)習(xí)的跟蹤算法在性能上具有較大的優(yōu)越性。其中,基于檢測的跟蹤[7](Tracking-By-Detection)是目前使用最為廣泛的跟蹤算法之一。基于檢測的跟蹤主要分為兩大類:一類是將檢測模塊和跟蹤模塊分別訓(xùn)練,再將二者關(guān)聯(lián)起來進(jìn)行目標(biāo)跟蹤;如KIM等人[8]提出一種新穎的多假設(shè)跟蹤算法,通過卷積神經(jīng)網(wǎng)絡(luò)對每個(gè)目標(biāo)進(jìn)行外觀建模,接著與假設(shè)軌跡進(jìn)行最優(yōu)匹配,該算法雖然在性能上相較原始算法有所提升,但速度仍不高。BEWLEY 等人提出SORT[9](Simple Online and Realtime Tracking),一經(jīng)問世就引起了廣泛關(guān)注,該算法因框架簡單使得運(yùn)行速度較快,但與此同時(shí),算法抗遮擋能力較差,無法進(jìn)行較長時(shí)間的穩(wěn)定跟蹤。另一類是將檢測模塊與跟蹤模塊集成到單一網(wǎng)絡(luò)中進(jìn)行多任務(wù)學(xué)習(xí),同時(shí)完成目標(biāo)檢測與跟蹤,例如WANG 等人[10]提出了JDE(Joint Detection and Embedding)算法。前者主要分為兩個(gè)步驟:首先在目標(biāo)檢測模塊中檢測出單幀中的目標(biāo),提取其分類與定位信息,其次將這些信息輸入到跟蹤模塊中,并提取目標(biāo)的表觀特征,最后將目標(biāo)檢測結(jié)果與跟蹤結(jié)果通過選定的數(shù)據(jù)關(guān)聯(lián)方法進(jìn)行匹配從而創(chuàng)建相應(yīng)的軌跡;由此可知,這種方法需要對目標(biāo)進(jìn)行兩次特征提取,實(shí)時(shí)性較差,但該方法可以針對每個(gè)任務(wù)分別訓(xùn)練最合適的模型,此外,跟蹤模塊首先根據(jù)檢測到的目標(biāo)邊界框進(jìn)行裁剪,然后進(jìn)行特征提取有助于處理對象的比例變化。后者雖然只用單個(gè)網(wǎng)絡(luò)就能同時(shí)進(jìn)行分類、定位、與跟蹤,但錨框較為粗糙,極易產(chǎn)生誤檢,尤其是在小目標(biāo)及目標(biāo)特征不夠顯著的情況下更易產(chǎn)生跟蹤失敗,雖然速度相對提升了,但跟蹤精度與準(zhǔn)確度要更低,即跟蹤穩(wěn)定性較差。而無人機(jī)視角下的圖像具有視野范圍大且背景雜亂、目標(biāo)占據(jù)整個(gè)圖像尺寸較小且特征不明顯等特征,造成目標(biāo)特征提取與模型建立困難,因此,與前者策略相比,后者策略難以在無人機(jī)平臺(tái)下進(jìn)行穩(wěn)定的多目標(biāo)跟蹤。近年來,Transformer 因其具有強(qiáng)大的自注意力層,在圖像識(shí)別以及視頻分析中具有廣泛的應(yīng)用。Zeng F 等人[11]通過引入“track query”對整個(gè)視頻中的跟蹤實(shí)例進(jìn)行建模,“track query”能夠在幀間傳輸并更新從而完成目標(biāo)跟蹤任務(wù)。Cai J 等人[12]基于Transformer 設(shè)計(jì)了一種端到端的多目標(biāo)跟蹤框架,通過一個(gè)大的時(shí)空內(nèi)存存儲(chǔ)被跟蹤對象ID,并根據(jù)跟蹤需求自適應(yīng)地提取和聚合內(nèi)存中的有用信息來實(shí)現(xiàn)目標(biāo)與軌跡之間的關(guān)聯(lián)。Zhou X等人[13]首次提出了一種基于Transformer 的全局多目標(biāo)跟蹤網(wǎng)絡(luò)結(jié)構(gòu),利用Transformer 對輸入視頻序列中的所有目標(biāo)特征進(jìn)行編碼,并利用軌跡查詢將這些目標(biāo)分配給不同的軌跡。
基于以上分析,本文采用“Tracking-By-Detection”中兩階段跟蹤策略,提出在無人機(jī)平臺(tái)下,聯(lián)合優(yōu)化目標(biāo)檢測器與跟蹤器的多目標(biāo)跟蹤算法。主要貢獻(xiàn)如下:(1)針對無人機(jī)視角下小目標(biāo)檢測性能差、目標(biāo)尺度變化較大問題,本文在YOLOv5的基礎(chǔ)上進(jìn)行改進(jìn),通過增加小目標(biāo)檢測層來提高對小目標(biāo)檢測精度,利用特征融合將不同尺度的特征進(jìn)行多尺度加權(quán)融合以解決目標(biāo)尺度變化大問題;在骨干網(wǎng)絡(luò)引入Transformer結(jié)構(gòu),提高目標(biāo)的定位精度。(2)針對復(fù)雜背景干擾、遮擋導(dǎo)致跟蹤目標(biāo)丟失問題,本文采用ResNet50 作為外觀特征提取的骨干網(wǎng)絡(luò),提高網(wǎng)絡(luò)感知微小外觀能力,并添加時(shí)空注意力模塊從而有效地提取目標(biāo)關(guān)鍵特征,引入Triple loss損失函數(shù),加強(qiáng)區(qū)分類內(nèi)差異能力。(3)通過在Vis?Drone2021[14]數(shù)據(jù)集上的大量實(shí)驗(yàn)證明,在無人機(jī)平臺(tái)下,改進(jìn)后的目標(biāo)檢測器的平均檢測精確度比原始YOLOv5 提高了11%;在UAVDT[15]數(shù)據(jù)集上跟蹤準(zhǔn)確度與精度分別提高了13.288%、3.968%,且在一定程度上減小了目標(biāo)身份切換頻次,能基本滿足無人機(jī)平臺(tái)下多目標(biāo)跟蹤穩(wěn)定性需求。
根據(jù)“Tracking-By-Detection”兩階段跟蹤策略,本文通過聯(lián)合優(yōu)化檢測模塊與跟蹤模塊來解決無人機(jī)平臺(tái)下易出現(xiàn)的目標(biāo)漂移(ID Switch),跟蹤丟失等跟蹤失敗問題,主要由四個(gè)部分組成:目標(biāo)檢測、外觀模型、目標(biāo)運(yùn)動(dòng)預(yù)測模型以及數(shù)據(jù)關(guān)聯(lián),整個(gè)算法結(jié)構(gòu)框架圖如圖1所示。首先將待檢測視頻傳入到目標(biāo)檢測模塊中進(jìn)行目標(biāo)檢測,此時(shí)采用改進(jìn)后的YOLOv5 作為檢測器,輸出目標(biāo)的檢測框信息;其次通過跟蹤模塊中由殘差塊構(gòu)造的特征提取網(wǎng)絡(luò)提取目標(biāo)的外觀特征,同時(shí)利用跟蹤模塊中的預(yù)測模型輸出目標(biāo)的預(yù)測位置信息;最后將目標(biāo)檢測器的檢測結(jié)果與跟蹤模塊的預(yù)測結(jié)果通過關(guān)聯(lián)度量函數(shù)以及關(guān)聯(lián)方法進(jìn)行數(shù)據(jù)關(guān)聯(lián),根據(jù)關(guān)聯(lián)結(jié)果得到最終的跟蹤結(jié)果。
圖1 算法結(jié)構(gòu)框架圖Fig.1 Algorithm structure framework diagram
多目標(biāo)跟蹤策略“Tracking-By-Detection”首先將輸入圖像送入檢測器中的進(jìn)行目標(biāo)檢測后再根據(jù)檢測目標(biāo)進(jìn)行跟蹤,跟蹤性能在一定程度上依賴檢測器效果,因此在跟蹤的整個(gè)過程中,目標(biāo)檢測尤為重要。傳統(tǒng)的目標(biāo)檢測算法主要流程為:首先在輸入圖像中采用滑動(dòng)窗口對圖像進(jìn)行遍歷滑動(dòng)得到目標(biāo)可能所在區(qū)域,得到候選框,其次提取候選框中的圖像特征并轉(zhuǎn)換為特征向量,常用的傳統(tǒng)特征提取算法有梯度直方圖、局部二值算法等,最后根據(jù)特征向量判別是否為目標(biāo)對象以及對應(yīng)的類別。傳統(tǒng)的目標(biāo)檢測算法在候選框選擇時(shí)會(huì)產(chǎn)生大量的冗余窗口進(jìn)而產(chǎn)生冗余計(jì)算,影響整個(gè)算法的速度與性能,此外,傳統(tǒng)算法只能提取低級(jí)特征,最終無法得到全局最優(yōu)解。
近年來,計(jì)算機(jī)技術(shù)的高速發(fā)展解決了深度學(xué)習(xí)的計(jì)算復(fù)雜問題,促進(jìn)了基于深度學(xué)習(xí)的目標(biāo)檢測算法的發(fā)展,相比于傳統(tǒng)算法,其不僅提高了整個(gè)檢測速度且能夠以較高的精度識(shí)別目標(biāo),成為當(dāng)前目標(biāo)檢測算法的主流研究方向?;谏疃葘W(xué)習(xí)的目標(biāo)檢測算法根據(jù)檢測過程中是否含有候選區(qū)域(region proposal)分支劃分為:two-stage 與onestage 檢測算法兩大類。two-stage 檢測算法在檢測過程中含有region proposal,通過卷積神經(jīng)網(wǎng)絡(luò)對region proposal 生成的候選框中的圖像進(jìn)行分類和定位,常見的算法有Faster R-CNN[16]、Libra R-CNN[17];基于one-stage 的檢測算法使用回歸的方法從空間上分割邊界框和相關(guān)的類別概率,通過用一個(gè)單獨(dú)的端對端網(wǎng)絡(luò)完成目標(biāo)的位置與類別的輸出,顯而易見整個(gè)算法的檢測速度得到了很大的提升,與此同時(shí),由于沒有更精準(zhǔn)的候選區(qū)域,該算法的檢測精度會(huì)相應(yīng)的降低,但隨著計(jì)算機(jī)性能的提升與深度學(xué)習(xí)的不斷發(fā)展,基于one-stage 的檢測算法網(wǎng)絡(luò)結(jié)構(gòu)得到不斷的優(yōu)化,性能得到不斷的提高。onestage 檢測算法中由YOLO[18]演變而來的YOLOv5 不僅檢測速度快且精度與two-stage 中的Faster R-CNN相當(dāng),因此本文選用YOLOv5 網(wǎng)絡(luò)模型,并對YO?LOv5網(wǎng)絡(luò)結(jié)構(gòu)進(jìn)行改進(jìn)優(yōu)化后,將其作為多目標(biāo)跟蹤算法中的檢測模塊以達(dá)到更好的檢測效果。
雖然YOLOv5相對其他目標(biāo)檢測算法已取得較好的檢測效果與實(shí)時(shí)性,但其對于小目標(biāo)檢測性能較差,而無人機(jī)視角下的目標(biāo)多為小目標(biāo)且目標(biāo)尺度變化較大,對此,本文提出改進(jìn)優(yōu)化后的YO?LOv5,對應(yīng)的網(wǎng)絡(luò)結(jié)構(gòu)如圖2 所示。在骨干網(wǎng)絡(luò)(Backbone)中第二層引出下采樣的第四個(gè)尺度,利用FPN[19](Feature Pyramid Networks,特征金字塔網(wǎng)絡(luò))結(jié)合PANet[20](Path Aggregation Network,路徑聚合網(wǎng)絡(luò))將四個(gè)不同分辨率的特征圖進(jìn)行特征融合,在預(yù)測部分增加小目標(biāo)檢測層進(jìn)行微小物體檢測,結(jié)合其余三個(gè)預(yù)測層,用四個(gè)不同感受野的預(yù)測層來提高對小目標(biāo)檢測精度,此外,采用自頂向下與自底向上的雙向融合網(wǎng)絡(luò)能較好地適應(yīng)目標(biāo)尺度變化。無人機(jī)平臺(tái)下的背景復(fù)雜、目標(biāo)與背景以及目標(biāo)之間相互遮擋等問題影響目標(biāo)定位的準(zhǔn)確性,對此,本文在骨干網(wǎng)絡(luò)最后一層將原始的BSP(Bottleneck and CSP)替換為Transformer[21]結(jié)構(gòu),利用Transformer 捕獲全局信息和上下文信息并通過其自注意力機(jī)制挖掘潛在的圖像特征。Transformer結(jié)構(gòu)如圖2 中的C3TR 模塊所示,其包含兩個(gè)子層:multi-head attention layer(多頭注意力層)和MLP(Multilayer Perception,多層感知機(jī))全連接層;子層之間用殘差結(jié)構(gòu)連接,外加LayerNorm 和Dropout 層防止網(wǎng)絡(luò)過擬合。
圖2 優(yōu)化目標(biāo)檢測網(wǎng)絡(luò)結(jié)構(gòu)圖Fig.2 Optimization target detection network structure diagram
Deep-SORT[22]在SORT 基礎(chǔ)上使用更加可靠的關(guān)聯(lián)度量和關(guān)聯(lián)方法,能夠有效地進(jìn)行長時(shí)間跟蹤并在很大程度上減少了跟蹤過程中的身份轉(zhuǎn)換(identity switches,IDs)。關(guān)聯(lián)度量的選取以及關(guān)聯(lián)方法是跟蹤模塊的主要任務(wù),目前的關(guān)聯(lián)度量方法主要是利用外觀相似度、運(yùn)動(dòng)狀態(tài)信息、位置關(guān)系等建立;關(guān)聯(lián)方法主要分為兩大類:離線和在線關(guān)聯(lián),離線關(guān)聯(lián)根據(jù)全部時(shí)間序列中的目標(biāo)信息,全局優(yōu)化進(jìn)行目標(biāo)和軌跡的關(guān)聯(lián),而在線關(guān)聯(lián)僅使用當(dāng)前幀與歷史幀信息進(jìn)行關(guān)聯(lián)。在無人機(jī)平臺(tái)下,多目標(biāo)跟蹤算法只能逐幀采集圖像,因此在線關(guān)聯(lián)方法更加適用于無人機(jī)視角下的多目標(biāo)跟蹤。Deep-SORT 聯(lián)合目標(biāo)運(yùn)動(dòng)狀態(tài)信息與外觀特征進(jìn)行關(guān)聯(lián)度量,以此達(dá)到相對穩(wěn)定的多目標(biāo)跟蹤狀態(tài)。
Deep-SORT 利用卡爾曼濾波器預(yù)測速度快且精度較高的特點(diǎn)來估計(jì)目標(biāo)下一幀的狀態(tài):
其中,(x,y)為目標(biāo)邊界框中心坐標(biāo);g為目標(biāo)邊界框的長寬比值;h為邊界框高度;(x′,y′,g′,h′)表示為對應(yīng)參數(shù)的速度。得到預(yù)測信息后,采用馬氏距離對目標(biāo)檢測位置與預(yù)測的目標(biāo)狀態(tài)進(jìn)行相似性運(yùn)動(dòng)匹配:
其中,yi代表第i條軌跡的目標(biāo)預(yù)測位置,dj為第j個(gè)目標(biāo)檢測邊界框,Si為卡爾曼濾波器預(yù)測得到的當(dāng)前幀協(xié)方差矩陣,得到二者之間的馬氏距離后,利用χ2分布,通過設(shè)置閾值來判斷第j個(gè)目標(biāo)檢測邊界框是否與第i條軌跡相似:
式中,t(1)為χ2對應(yīng)95%置信度閾值,本文中取為9.4877;若d(1)(i,j)小于閾值取1,表示關(guān)聯(lián)成功,否則取0,表示關(guān)聯(lián)失敗。為了防止丟失目標(biāo)重新進(jìn)入視野而出現(xiàn)身份轉(zhuǎn)換現(xiàn)象的發(fā)生,對一段幀數(shù)內(nèi)目標(biāo)特征向量進(jìn)行保留,由集合Rk表示:
式中,Lk為保留的目標(biāo)特征數(shù)量,本文設(shè)定為100。對于檢測結(jié)果與軌跡的外觀特征的度量,Deep-SORT[22]采用最小余弦距離測量二者之間的特征距離:
得到運(yùn)動(dòng)與外觀信息的匹配關(guān)聯(lián)度量后,將二者機(jī)制融合構(gòu)造關(guān)聯(lián)度量函數(shù):
其中λ為不同關(guān)聯(lián)度量比例系數(shù),ci,j越小表示第i個(gè)跟蹤軌跡與第j個(gè)檢測目標(biāo)越相似。聯(lián)合考慮運(yùn)動(dòng)特征與外觀特征來判斷第i個(gè)軌跡與第j個(gè)被檢測目標(biāo)是否關(guān)聯(lián)成功:
最后根據(jù)關(guān)聯(lián)度量結(jié)果利用匈牙利匹配算法得到最優(yōu)跟蹤軌跡。
無人機(jī)存在大量的運(yùn)動(dòng)不確定性,如風(fēng)力影響無人機(jī)穩(wěn)定飛行而產(chǎn)生的相機(jī)抖動(dòng)以及無人機(jī)自身的飛行速度等,從而導(dǎo)致在無人機(jī)視角下相同目標(biāo)相鄰兩幀的馬氏距離仍然很大,即使在匹配正確的情況下,也可能會(huì)誤判為非同一目標(biāo),最終造成匹配失敗。因此,關(guān)聯(lián)度量需側(cè)重于外觀特征信息,此時(shí),跟蹤模塊中的外觀建模性很大程度上決定了最終跟蹤結(jié)果。隨著計(jì)算機(jī)視覺的高速發(fā)展,基于深度學(xué)習(xí)的特征提取網(wǎng)絡(luò)展現(xiàn)出其性能的優(yōu)越性與特殊性,與傳統(tǒng)方法相比,它能夠更加完整、可靠地學(xué)習(xí)與提取物體的特征。Deep-SORT 采用11 層神經(jīng)網(wǎng)絡(luò)輸出128 維目標(biāo)特征向量,該網(wǎng)絡(luò)僅能提取較為明顯的特征,對于一些細(xì)微特征提取能力很差,而無人機(jī)視角下的目標(biāo)多為小目標(biāo),目標(biāo)之間的差異在圖像中可能并不明顯。因此,為了提高原始網(wǎng)絡(luò)的特征提取能力,選擇用ResNet50 網(wǎng)絡(luò)輸出2048維目標(biāo)特征向量,加強(qiáng)網(wǎng)絡(luò)對細(xì)微特征提取能力,此外,在該網(wǎng)絡(luò)中增加時(shí)空注意力機(jī)制以提高網(wǎng)絡(luò)重識(shí)別能力,改善無人機(jī)視角下目標(biāo)長期被遮擋而造成跟蹤丟失問題,最后引入Triple loss損失函數(shù)增強(qiáng)網(wǎng)絡(luò)區(qū)分類內(nèi)差異的能力,最終提高算法跟蹤準(zhǔn)確度與精度,并減小身份切換頻次。
實(shí)驗(yàn)過程中采用VisDrone2021 數(shù)據(jù)集訓(xùn)練目標(biāo)檢測網(wǎng)絡(luò),最終在UAVDT 數(shù)據(jù)集上驗(yàn)證所提出算法的跟蹤性能。VisDrone2021[14]數(shù)據(jù)集由天津大學(xué)機(jī)器學(xué)習(xí)和數(shù)據(jù)挖掘?qū)嶒?yàn)室AISKYEYE 團(tuán)隊(duì)創(chuàng)建,包含了無人機(jī)拍攝的65228 幀和10209 張靜態(tài)圖像組成的400 個(gè)視頻序列,覆蓋了14 個(gè)不同城市的對象(行人、車輛、自行車等10 種類別對象)。UAVDT[15]數(shù)據(jù)集由100個(gè)視頻序列組成,共8000幀圖片,涵蓋了不同場景下無人機(jī)拍攝的車輛圖像,包括廣場、高速公路、主干道、路口等場景,除此之外,該數(shù)據(jù)集收集了從低到高三個(gè)不同高度下的拍攝圖像并包含了視角變換、相機(jī)運(yùn)動(dòng)、光照變化、背景干擾等航拍難點(diǎn)。
為了更好地評(píng)估優(yōu)化后算法的性能,本文使用目標(biāo)檢測典型評(píng)價(jià)指標(biāo)AP(Average Precision)和mAP(mean Average Precision)來評(píng)估優(yōu)化前后目標(biāo)檢測器的性能,采用CLEAR MOT[23]評(píng)價(jià)指標(biāo)衡量多目標(biāo)跟蹤算法的性能。
AP指目標(biāo)檢測精確率與召回率繪制的Precision-Recall(PR)曲線與x軸圍成的面積,其中精確度與召回率表達(dá)式分別為式(9)、(10)所示:
其中,TP 為正確檢測出的目標(biāo),F(xiàn)N 為未檢測目標(biāo),F(xiàn)P為錯(cuò)檢目標(biāo)。mAP是指所有檢測目標(biāo)類AP的平均值,即:
多目標(biāo)跟蹤C(jī)LEAR MOT[23]評(píng)價(jià)指標(biāo)主要包含以下參數(shù):
ML(Mostly Lossed):與GT(Ground Truth)小于20%時(shí)間內(nèi)都匹配成功的跟蹤數(shù);
MT(Mostly Tracked):與GT(Ground Truth)在80%時(shí)間內(nèi)都匹配成功的跟蹤數(shù);
MOTP(Multiple Object Tracking Precision)[23]:
其中表示第t幀下檢測目標(biāo)Oi與其匹配的跟蹤器預(yù)測的目標(biāo)位置之間的距離,ct表示第t幀的成功匹配數(shù),MOTP(多目標(biāo)跟蹤精度)與目標(biāo)檢測精度有關(guān),反映跟蹤的定位精確度,數(shù)值越接近1表示精度越高。
其中mt為t幀時(shí)刻漏檢數(shù),fpt(false positive)為t幀時(shí)刻誤報(bào)數(shù)量,mmet(mismatches)為t幀時(shí)刻錯(cuò)誤匹配數(shù)量,MOTA(多目標(biāo)跟蹤準(zhǔn)確度)與目標(biāo)檢測精度無關(guān),衡量跟蹤算法在檢測目標(biāo)與保持軌跡的性能,數(shù)值越接近1表示性能越好。
本文的網(wǎng)絡(luò)訓(xùn)練與驗(yàn)證平臺(tái)為Intel(R)Core(TM)i7-6700K CPU 和1060Ti GPU。首先驗(yàn)證改進(jìn)后的YOLOv5 性能的優(yōu)越性,選取VisDrone2021 中的目標(biāo)檢測數(shù)據(jù)集訓(xùn)練檢測器,實(shí)驗(yàn)結(jié)果如表1 所示。由于最終在UAVDT 數(shù)據(jù)集上跟蹤的目標(biāo)只有Car、Bus、Truck三大類,所以在目標(biāo)檢測網(wǎng)絡(luò)中關(guān)注該三類檢測的平均精度,以及所有類的mAP,表格中的mAP@.5:.95 表示在不同的交并比閾值(從0.5至0.95,步長為0.05)下的平均mAP。由表1可知,原始YOLOv5 網(wǎng)絡(luò)模型對于無人機(jī)平臺(tái)下的小目標(biāo)檢測性能較差且不同類別目標(biāo)檢測精度差異較 大,Car 的AP 達(dá) 到64.5% 而Truck 的AP 僅 有14.3%,所有類的mAP只有21.0%。
表1 YOLOv5改進(jìn)前后性能對比結(jié)果Tab.1 Performance comparison results before and after YOLOv5 improvement
本文優(yōu)化后的檢測器網(wǎng)絡(luò)模型訓(xùn)練結(jié)果如表中YOLOv5_1 所示,其訓(xùn)練結(jié)果mAP 為32.0%,相比原始網(wǎng)絡(luò)提高了11.0%,且所有類別的AP 值都得到大幅度的提高,說明本文改進(jìn)的目標(biāo)檢測網(wǎng)絡(luò)模型在檢測無人機(jī)視角下的圖像具有明顯的優(yōu)勢,給無人機(jī)視角下的多目標(biāo)跟蹤提供了一個(gè)良好的檢測器,避免因漏檢、錯(cuò)檢等檢測器性能導(dǎo)致后續(xù)的跟蹤失敗問題。
為了進(jìn)一步驗(yàn)證所提出的無人機(jī)平臺(tái)下多目標(biāo)跟蹤算法的性能,本文在UAVDT 中選取白天、黑夜、霧天以及不同角度和不同高度等復(fù)雜場景下的數(shù)據(jù)集進(jìn)行驗(yàn)證,實(shí)驗(yàn)結(jié)果如表2 所示,此外,將本文算法與其他兩種多目標(biāo)跟蹤算法的結(jié)果進(jìn)行對比,對比結(jié)果如表3 所示。表2 中Deep-SORT1 表示優(yōu)化后的跟蹤器,且由表2可知,優(yōu)化后的目標(biāo)檢測器(YOLOv5_1)與原始跟蹤器(Deep-SORT)相結(jié)合能夠明顯降低目標(biāo)身份切換頻率,與原始跟蹤算法相比降低了162次,且漏檢數(shù)(False Negative,F(xiàn)N)減小了15593 幀,這表明檢測器的性能能夠直接影響跟蹤算法的整體性能;當(dāng)將改進(jìn)后的目標(biāo)檢測器與原始跟蹤器結(jié)合時(shí),由于目標(biāo)檢測器精度提高而原始跟蹤器特征提取能力不足,在很大程度上影響了跟蹤準(zhǔn)確度與精度,造成最終跟蹤準(zhǔn)確度與精度的下降。因此需對Deep-SORT 進(jìn)行改進(jìn),本文通過優(yōu)化Deep-SORT 特征提取網(wǎng)絡(luò)提高M(jìn)OTA 與MOTP值,且大幅度減小IDs。聯(lián)合優(yōu)化后的跟蹤算法性能如表中ours所示,相比于原始跟蹤算法,MOTA 與MOTP 分別提高了13.288%,3.968%,IDs 減小了277次;除此之外,原始檢測器與優(yōu)化后的跟蹤器結(jié)合后的跟蹤性能也能夠得到相應(yīng)的提升,雖然性能沒有聯(lián)合優(yōu)化算法優(yōu)越,但相比于原始跟蹤算法,提高了跟蹤準(zhǔn)確度和精度且改善了IDs,進(jìn)一步表明改進(jìn)后的跟蹤器的魯棒性和優(yōu)越性。表3中選取了具有代表性多目標(biāo)跟蹤算法與本文算法進(jìn)行對比,由表可知CMOT[4]、SORT[9]算法難以平衡目標(biāo)跟蹤精度與目標(biāo)漂移問題,而本文算法在目標(biāo)跟蹤精度、準(zhǔn)確度以及目標(biāo)切換頻次上達(dá)到較好的效果。
表2 本文算法在UAVDT數(shù)據(jù)集中的跟蹤結(jié)果Tab.2 Tracking results of the algorithm in UAVDT dataset
表3 目標(biāo)跟蹤算法性能對比結(jié)果Tab.3 Target tracking algorithm performance comparison results
綜上所述,本文所提出的多目標(biāo)跟蹤算法相較于原始跟蹤算法不僅能夠提高跟蹤準(zhǔn)確度和精確度,還能夠降低目標(biāo)身份切換頻次,能夠在無人機(jī)平臺(tái)下進(jìn)行穩(wěn)定可靠的多目標(biāo)跟蹤。
為了更加直觀地展示跟蹤效果并驗(yàn)證所提出算法的魯棒性,本文選取了UAV123[24]數(shù)據(jù)集上的視頻進(jìn)行展示,實(shí)驗(yàn)效果如圖3 所示。原始跟蹤算法跟蹤效果如圖3(a)所示,在視頻中的第431幀,未能識(shí)別出剛進(jìn)入視野中的左邊白色車輛,直至后兩幀才檢測到該目標(biāo)并標(biāo)記ID 為“9.0 car”,在后續(xù)跟蹤過程中由于背景遮擋,導(dǎo)致跟蹤失敗,使得目標(biāo)ID在第973幀時(shí)切換為“10.0 car”;而左邊白色車輛發(fā)生了兩次身份切換。將原始檢測器替換為YO?LOv5_1 后的跟蹤算法跟蹤效果如圖3(b)所示,整體上的檢測精度較前者算法檢測精度要更高,且抗遮擋能力較強(qiáng),如圖中第943 幀與第1150 幀所示,即使在目標(biāo)被遮擋的情況下依舊能夠識(shí)別出被檢測對象,改善了原始跟蹤算法因背景復(fù)雜導(dǎo)致跟蹤丟失問題;此外,由于Transformer 具有捕獲全局信息和上下文信息的特點(diǎn),進(jìn)一步增強(qiáng)了目標(biāo)重新識(shí)別的能力,圖3(b)中雖然三輛車在跟蹤過程中都發(fā)生一次IDs,但后續(xù)又能成功重新識(shí)別為原來的 ID,如第431幀與第1237幀所示,三輛車的ID相同。將跟蹤器替換為Deep-SORT1 后的跟蹤算法跟蹤效果如圖3(c)所示,由于優(yōu)化后的跟蹤器增強(qiáng)了網(wǎng)絡(luò)提取細(xì)微特征的能力以及區(qū)分類內(nèi)差異的能力,與原始跟蹤算法相比,能夠改善跟蹤過程中的失幀問題,如圖中第1156 幀所示,相比于圖3(a),圖3(c)中并沒有出現(xiàn)跟蹤丟失問題,且整個(gè)跟蹤過程中上目標(biāo)切換過程幀數(shù)較少。聯(lián)合優(yōu)化后的跟蹤算法可視化實(shí)驗(yàn)結(jié)果如圖3(d)所示,整個(gè)車輛跟蹤過程中除右邊白色車輛發(fā)生一次IDs 外,其余車輛并沒有發(fā)生身份切換,并且能在目標(biāo)大部分被遮擋的情況下成功地重識(shí)別,整體目標(biāo)檢測精度較原始跟蹤算法要高。此外,本文算法針對霧天公路真實(shí)場景下的車輛進(jìn)行跟蹤實(shí)驗(yàn),實(shí)驗(yàn)仿真結(jié)果如圖4所示,該場景下的目標(biāo)多為小目標(biāo)且伴有非目標(biāo)遮擋以及視線干擾,由實(shí)驗(yàn)結(jié)果可知,本文算法能夠解決無人機(jī)平臺(tái)下小目標(biāo)檢測性能差、目標(biāo)尺度變化較大、復(fù)雜背景干擾的跟蹤問題,如圖4中‘32.0 car’,在整個(gè)跟蹤過程中僅發(fā)生一次IDs,且在第351幀時(shí)仍能夠識(shí)別被濃霧嚴(yán)重遮擋的小目標(biāo)‘32.0 car’;目標(biāo)‘11.0 car’在跟蹤全程中僅發(fā)生短暫的目標(biāo)丟失后又能夠重識(shí)別為原來的ID。
圖4 復(fù)雜場景跟蹤結(jié)果圖Fig.4 Complex scene tracking results
綜上所示,本文所提出的聯(lián)合優(yōu)化的多目標(biāo)跟蹤算法能夠在無人機(jī)平臺(tái)下進(jìn)行穩(wěn)定可靠的多目標(biāo)跟蹤。
針對無人機(jī)視角下的多目標(biāo)跟蹤,本文提出了一種聯(lián)合優(yōu)化目標(biāo)檢測器與跟蹤器的多目標(biāo)跟蹤算法,實(shí)現(xiàn)了無人機(jī)平臺(tái)下多目標(biāo)可靠穩(wěn)定跟蹤。本文通過在YOLOv5原始網(wǎng)絡(luò)中增加小目標(biāo)檢測層進(jìn)行特征融合解決小目標(biāo)檢測效果差問題,利用Transformer 捕獲全局信息和上下文信息能力挖掘圖像潛在信息,改善航拍圖像中因背景復(fù)雜干擾、遮擋等導(dǎo)致漏檢和錯(cuò)檢問題;在跟蹤模塊,采用ResNet50作為特征提取網(wǎng)絡(luò)并添加時(shí)空注意力模塊來更好地提取外觀顯著性特征,加強(qiáng)網(wǎng)絡(luò)感知微小外觀特征及抗干擾的能力,引入三元組損失函數(shù)加強(qiáng)神經(jīng)網(wǎng)絡(luò)區(qū)分類內(nèi)差異的能力,整體上增強(qiáng)了跟蹤器的魯棒性。實(shí)驗(yàn)結(jié)果表明,與原始算法相比,本文算法在無人機(jī)平臺(tái)下不僅能夠以較高精度檢測目標(biāo),而且跟蹤精度與準(zhǔn)確度都有所提升,抗遮擋能力較強(qiáng),能夠適應(yīng)復(fù)雜環(huán)境中的目標(biāo)跟蹤,解決了無人機(jī)平臺(tái)下因小目標(biāo)難檢測、背景復(fù)雜、目標(biāo)相互遮擋等導(dǎo)致的跟蹤失敗問題,基本滿足無人機(jī)平臺(tái)下穩(wěn)定可靠跟蹤條件,具有實(shí)際應(yīng)用價(jià)值。