江志鵬,王自全,張永生,于 英,程彬彬,趙龍海,張夢唯
(1.戰略支援部隊信息工程大學地理空間信息學院,河南 鄭州 450001;2.32016部隊,甘肅 蘭州 730000)
近年來,隨著算法的不斷優化以及算力和數據量的快速增長,基于深度學習的計算機視覺技術研究進入了新的發展時期。其中,目標檢測作為計算機視覺技術研究的重要分支,是根據神經網絡模型的輸出將圖像中的目標以邊界框的形式提取出來,并且賦予目標類別與置信度信息,可認為是圖像分類技術向“對象級”應用的延伸。當前,目標檢測已經廣泛應用于自動駕駛[1]、遙感圖像解譯[2]、智能交通[3]、人臉識別[4]和場景行為對象追蹤[5]等領域,對于推進智慧城市的智能化和信息化有著重要作用。
早期的目標檢測算法主要依托人工設計的特征,采用支持向量機[6]、HOG(Histogram of Oriented Gradient)[7]等策略對預先設定好的目標候選區域進行分類。在卷積神經網絡CNN(Convolutional Neural Network)技術興起后[8],循環卷積神經網絡RCNN(Region-CNN)系列算法[9-11]開啟了雙階段目標檢測算法的研究,其基本思想是:首先使用一個網絡模型RPN(Region Proposal Network)生成若干候選框,然后在檢測頭部對RPN產生的候選框進行邊框回歸和分類,最后經過非極大值抑制NMS(Non-Maximum Suppression)計算得到預測結果。在經典的Faster R-CNN算法[11]中,引入了錨框機制,即預設一定數量和大小的候選框位置、尺寸,后續預測真實物體和錨框之間的偏移,有效提升了目標檢測的可靠性與收斂性。
由于神經網絡模型只能接受固定格式的張量輸入,而RPN提取出的感興趣區域形狀大小不一,Fast R-CNN[10]為了解決這一問題提出了感興趣區域池化(Region of Interest Pooling)技術,將所有的感興趣區域池化到同樣的大小后再輸入后續的檢測頭中。然而,這樣勢必會導致物體變形。Purkait等人[12,13]先后提出了SPP-Net(Spatial Pyramid Pooling Net)和新的感興趣區域空間對齊方式ROI-Align。SPP-Net根據輸入圖像大小不同,采用空間金字塔池化結構(Spatial Pyramid Pooling Layer),將不同尺度的信息池化為固定長度的特征向量后再組合。采用這種方式獲取圖像對應的特征時,不僅允許在訓練時輸入不同尺寸的圖像,也允許測試時輸入不同大小的圖像,整體邏輯更為清晰簡明。ROI-Align[13]采用雙線性插值法,對感興趣區域映射到的空間進行更加精細的采樣,有效提升了中小目標的分割與檢測精度。
為了提高目標檢測的效率,有研究人員開始嘗試不在中途提取候選區域,而是直接預測目標所在的位置和類別,這種做法被稱為單階段目標檢測技術,如YOLO(You Only Look Once)系列[14-17]。其中,YOLOv1[14]將圖像劃分為固定大小的網格組合并對網格進行回歸操作,檢測出的結果較為粗糙且容易漏檢;YOLOv2[15]引入了錨框機制,并進行了維度聚類,提升了模型的準確率;YOLOv3[16]采用了多尺度特征融合的做法,提升了小目標檢測的有效性,并且保持了原有的計算速度;YOLOv4[17]則采用了大量模型構建技巧,并將目標檢測網絡劃分為特征提取網絡(Backbone)、特征聚合網絡(Neck)及目標檢測頭(Head)。在后續非官方的YOLO系列(v5~v7)[18,19]中,大量新的特征融合方式被引入進來。同時期的單階段目標檢測網絡還有SSD(Single Shot multibox Detector)[20]等。
單階段目標檢測算法是“密集預測”思想的典型代表。由于沒有RPN網絡生成有限數量的候選區域,單階段目標檢測網絡將錨框設置到了原始圖像的每一個像素上,并且為了考慮多尺度的特征融合模塊,特征圖也被設置了錨框[21]。在訓練過程中,網絡同時對數十萬個錨框進行偏移量的預測與回歸,而其中真正含有目標的錨框只占很少一部分(稱為“正樣本”,對應不含目標的錨框稱為“負樣本”)。正負樣本數量的極大不平衡是單階段目標檢測網絡始終面臨的問題。對此,RetinaNet[22]提出了FocalLoss,側重以損失函數的形式調節模型訓練的關注度,從而增加對正樣本的學習有效性。有些研究人員還開發了無需錨框(Anchor-free)的算法,典型的有CornerNet[23]和CenterNet[24]等。
可以看出,目標檢測技術存在大量人工設計的步驟,例如人工設計的錨框、非極大值抑制的后處理等,其中超參數的設置對提高模型性能起到了關鍵作用。單階段目標檢測算法中,密集預測的方式并不符合智慧生物對場景中目標的認知方式,這導致基于CNN的目標檢測結構難以做到“簡潔”的端到端訓練與測試。將Transformer[25]技術應用到計算機視覺后,這一問題有了新的解決思路。Carion等人[26]開發了基于Transformer的端到端目標檢測模型DETR(DEtection TRansformer)。DETR將經過ResNet[27]骨干網絡的圖像特征進行序列化,然后經過編碼器(Transformer Encoder)得到圖像上各部分的關聯特征,而后設計指定數量的物體查詢向量object_query,連同編碼器Transformer Encoder輸出的特征進入解碼器(Transformer Decoder),最后經過前饋網絡FFN(Feed Forward Network)進行維度變換,得到不多于指定object_query數量的目標分類和定位結果。檢測出的目標根據其位置和真值標簽進行匈牙利匹配,最后利用損失值構建矩陣,選其中最小的損失作為模型的損失驅動訓練。因此,DETR無需錨框、無需NMS后處理,并且將密集預測方式轉換為依托固定數量object_query的預測,無需考慮正負樣本失衡問題,是目標檢測領域里程碑式的創新。
然而,DETR的缺點也很明顯:首先,基于Transformer的目標模型收斂速度過慢,DETR在COCO目標檢測數據集[28]上訓練了500個epoch才達到較好的精度,這是因為注意力圖過大,加之Transformer模型和CNN模型相比,沒有良好的歸納偏置[29],導致在訓練過程中注意力圖從稠密轉至稀疏需要很長的時間,而一般的目標檢測算法只需要約36個epoch;其次,DETR受限于自注意機制(Self-Attention)所需要的龐大計算量,只能使用骨干提取網絡的最后一層輸出作為序列化輸入,也沒有多尺度的操作策略,這些原因導致其對于小目標的檢測效果較差。針對這2個問題,Zhu等人[30]提出了基于多尺度可形變注意力MDA(Multi-scale Deformable Attention)的Deformable DETR。該方法在特征提取部分引入了多尺度的特征融合模塊,并且接受多尺度特征的輸入。在計算注意力的核心模塊中,不再使用逐點對齊的密集注意力,而只根據當前點的特征,仿照可形變卷積[31],選擇性地在多個尺度的特征圖上計算偏移量,找到K個關聯點,然后只使用這K個點計算注意力圖,極大地減小了注意力圖的尺寸,從而加速了模型的收斂,并且由于使用了跨尺度的表示方法,Deformable DETR的小目標檢測性能也得到了改善。
視頻流目標檢測算法的基本思想是利用視頻連續幀之間的相似度,對特征進行聚合補充,從而提升目標檢測性能。Zhu等人[32]提出了面向視頻識別的深度特征流(Deep Feature Flow)。若將一個典型的目標檢測網絡劃分為特征提取網絡Nfeat和特征解碼網絡Ndet,則Ndet的運行開銷遠小于Nfeat的。因此,該方法以固定的間隔獲取關鍵幀,只在關鍵幀上運行特征提取網絡Nfeat,然后利用光流網絡FlowNet[33]計算各參考幀與關鍵幀之間的光流,將關鍵幀上提取好的特征傳播到參考幀上,最后運行Ndet,從而加速了視頻目標檢測的速度。在后續的工作中,Zhu等人[34]提出了由光流引導的特征聚合方法FGFA(Flow-Guided Feature Aggregation)。該方法利用時間信息聚合相鄰幀的特征,從而提升了每幀的特征質量。
2019年,Wu等人[35]提出了序列層級語義聚合的視頻目標檢測方法SELSA(SEquence Level Semantics Aggregation),該方法認為特征的融合應當由語義的相近程度引導,而不是時間的接近程度。因此,SELSA中完全隨機采樣參考幀進行融合,沒有過多地考慮時序信息和局部語義信息,只利用全局信息,對雙階段目標檢測器提取的候選區域進行融合,實現了魯棒性更強的相似度引導。在此基礎上,Chen等人[36]提出了基于記憶信息增強的全局-局部特征聚合方法MEGA(Memory Enhanced Global-local Aggregation)。他們認為只聚合相鄰的特征并不足以持續地對視頻整體進行理解和建模,因此提出了新型的長距離記憶LRM(Long Range Memory)機制,當檢測器抽取當前幀時,MEGA會從LRM中抽取之前的幾幀進行信息交互,從而有效提升了MEGA對視頻的全局建模能力,取得了視頻流目標檢測領域的最好表現。
然而,基于光流和基于語義引導的目標檢測方法均不適用于無人機視頻檢測任務。首先,在標準光流訓練數據集(如Flying Chair)[33]上預訓練好的FlowNet網絡,在無人機目標檢測下沒有對應的損失函數計算方法,即利用無人機視頻數據集進行模型訓練時,對基于光流網絡構建的特征融合模塊起作用的是依托于目標框損失的“間接監督”;而近景數據集和無人機視頻數據集在視角、目標變換上的差異十分顯著,導致光流網絡計算出的結果十分模糊,難以體現目標層級的空間變換,在聚合特征時反而容易引起錯誤和缺漏導致精度下降。采用視頻流目標檢測算法得到的檢測熱力圖和特征傳播光流圖如圖1所示。

Figure 1 采用視頻流目標檢測算法得到的檢測熱力圖 和特征傳播光流圖(數據集為UAVDT)圖1 Detection heat map and optical flow map of feature propagation obtained by video stream target detection algorithm (Dataset is UAVDT)
其次,使用特征融合和語義引導的方法,時間和運算資源消耗較大。FGFA聚合前后15幀特征時,運算速度FPS下降為2。SELSA、MEGA等方法的運算處理速度FPS也不超過5,遠不如單幀目標檢測算法的。且特征融合模塊占用了大量計算資源,Batchsize=1時,顯存消耗約為8 GB,不利于后續的輕量化處理。最后,經過實驗表明,視頻流目標檢測算法所能達到的最終性能,是在其基準模型上有一定的提升。因此,使用性能更好的基準模型能使視頻流目標檢測算法獲得更好的性能。
綜上,本文以當前較為優秀的單幀目標檢測算法Deformable DETR為基線算法進行改進,用于無人機視頻流車輛目標檢測任務中。在編碼器部分,融入跨尺度特征融合模塊,拓展編碼時每個像素級處理單元(token)的感受野,并提升每個token的上下文信息交互能力;在解碼器部分,融入面向object_query的擠壓-激勵模塊,提升關鍵目標的響應值;在數據處理方面,使用在線難樣本挖掘方法OHEM(Online Hard Example Mining)[37],改善數據集中大多為car而bus和truck類別較少的不平衡情況。實驗結果表明,本文算法能夠較好地完成無人機視頻流車輛目標檢測任務,相較基線算法提升了性能并保持了較高檢測速率,可滿足實時檢測需求。

Figure 2 DETR流程圖2 Workflow of DETR
DETR使用Transformer結構完成了端到端的簡潔目標檢測框架,也是將Transformer較早應用到計算機視覺細分任務中的工作。其算法流程如圖2所示。
首先,輸入的圖像在經過以ResNet為骨干網絡的特征提取器后,得到輸出特征,經過序列化與位置編碼后,投入Transformer模塊。Transformer模塊由編碼器Encoder和解碼器Decoder構成。組成二者的部件為標準Transformer Layer,每個Layer由自注意力計算層和前饋網絡FFN(Feed Forward Network)組成。從骨干網絡輸出的特征先進入Encoder,編碼每個像素級處理單元token之間的自注意力關系,重復上述操作N次(N為Encoder中Transformer Layer的數量)。然后,編碼的特征被緩存進系統,和預先設置的object_query一起投入到Decoder中。在這一步,object_query將反復和自身作Self-Attention計算,這是為了盡量學習到物體之間的關聯,使其均勻地分布在圖像之中。在所有計算過程中,涉及自注意力機制的計算參數有查詢向量q、關鍵字向量k和值向量v。q和k是帶有位置編碼的,而隨著模型結構的固定,v也隨之固定,也具備位置信息,且因結果生成需要從v上取值,故無需添加位置編碼。Transformer Encoder與Decoder部分的數據流如圖3所示。其中object_query表示目標查詢向量,MHSA(Multi-Head Self-Attention)表示多頭注意力機制層,FFN表示以多層感知機為主體的前饋網絡層。

Figure 3 Transformer 編碼器和解碼器數據流圖3 Data flow of transformer encoder and decoder
Decoder的輸出向量包含所有object_query的編碼信息,經過分類分支和回歸框分支,得到對應每一個目標框的分類信息和坐標框信息。然后,在得到的object_query與真值框之間進行二分圖匹配,構建損失矩陣,驅動模型訓練。
如前文所述,DETR使用的是標準的多頭自注意力模塊MHSA,其核心的自注意力圖計算方式如式(1)所示:
(1)
其中,dk為注意力頭的個數;Q代表用于計算注意力權重的向量,它通過與K進行點積來得到注意力分數;K是用來衡量Q與其他向量的相關性的向量;V則是包含了輸入序列信息的向量。可以看出,MHSA的計算復雜度與Q和K的大小密切相關,而Q和K的維度由token的數量確定。例如,一個14×14的特征圖,經過塊嵌入(Patch Embedding)后的序列化特征維度為196,即token數量為196,即會產生一個由196個查詢向量q組成的Q矩陣,關鍵詞向量k和對應的K矩陣亦然。從而注意力圖的大小為196×196。隨著圖像尺寸的增長,MHSA的計算量會以O(n2)的復雜度增加。這對于模型在下游任務上的應用十分不利,也限制了DETR只能使用骨干網絡提取出的最小尺寸的特征圖,從而難以對較小的目標進行識別和檢測,且難以運用多尺度特征。
注意力圖過大造成的另一個問題是模型收斂速度慢。式(1)中,Q和K矩陣乘法本質上是每個token彼此之間利用查詢向量q和關鍵字向量k進行的相似度計算。在模型開始訓練時,注意力圖被隨機初始化,是“稠密”的矩陣;在模型最終收斂時,token之間的相似度關系也被學習到,那么注意力圖應該只有少部分接近1,大部分接近于0,表示網絡已經學習到了特定token之間的相似度關系,即注意力圖應當是“稀疏”的。注意力圖很大時,從稠密到稀疏的收斂過程非常緩慢,也導致了DETR模型訓練時間過長的問題。
Deformable DETR對DETR的改進主要集中在使用多尺度可形變注意力MDA替換了原有的自注意力機制,前向傳播的流程與DETR的基本相同,仍是Transformer Encoder和Transformer Decoder的組合。
如圖4所示,多尺度可形變注意力MDA的做法為:對多尺度特征圖上的每一個token,采用線性全連接層計算n個偏移量,表征其“應該注意到”的點,在計算注意力時,聚焦在這有限個token上,從而極大地減少了注意力計算的成本。在Encoder部分,MDA模塊將輸入的多尺度特征圖上每一個token都進行了編碼,并存儲進緩存中備用。在Decoder部分,MDA則將object_query表示為可學習的錨框,只對固定數量的目標查詢向量編碼query_embedding進行操作,經過位置編碼后,和Transformer Encoder上下文信息進行注意力交互計算,從而查詢出所需要的目標信息。

Figure 4 Data flow of multi-scale deformable attention圖4 多尺度可形變注意力機制計算流
本文使用Deformable DETR作為基線網絡,在Encoder的基礎層中嵌入跨尺度特征融合模塊,在Decoder的基礎層中嵌入object_query擠壓-激勵模塊。在進行編碼時,數據先經過其自有的MDA模塊,而后投入跨尺度特征融合模塊中進行整合,旨在進一步增強其空間感知能力。在進行解碼時,query_embedding向量和Encoder編碼向量進行多尺度交叉注意力機制計算,然后投入object_query擠壓-激勵模塊,旨在賦予每個目標不同的權重,以突出關鍵目標的重要性。在訓練時,采用在線難樣本挖掘策略,以緩解數據集類別樣本不平衡的問題。算法整體框架如圖5所示。

Figure 5 Algorithm framework圖5 算法框架
在卷積神經網絡中,卷積核大小決定了當前卷積后特征圖感受野的尺寸。對于不同尺寸的目標而言,使用不同尺寸感受野的特征圖能夠更好地接近真實物體的輪廓。對于在視頻流中不斷變化的車輛而言,目標變化過程具有多尺度、多角度的特性,故設計能夠融合多個感受野的跨尺度特征融合模塊CRF(CRoss scale feature Fusion)對提升目標分類和定位精度有著重要作用。受語義分割算法Deeplab[38]啟發,考慮到Deformable DETR在單個MDA模塊中融入了4個尺度的信息,所以設計了4條并行的跨尺度特征融合模塊。
如圖6所示,設定輸入圖像高度為H,寬度為W,則第i個尺度的高度和寬度如式(2)所示:
(Hi,Wi)=(H/2i,W/2i),i=0,1,2,3
(2)
所有待編碼的token數量如式(3)所示:
(3)
每個尺度的起算點如式(4)所示:
(4)

Figure 6 Cross scale feature fusion module圖6 跨尺度特征融合模塊
設模型的通用編碼維度為D,批處理大小為B,則圖6中輸入的維度為[B,N,D]。然后,經過一個線性層將其映射為具備較低描述維度d的向量,再按照每個尺度的起算點對映射后的輸入進行切分并重新排列成4個二維特征圖t,其尺寸如式(5)所示:
Size(ti)=[B,d,Hi,Wi],i=1,2,3,4
(5)
設置卷積核大小為klist,分別作用在輸出的特征圖上,如式(6)所示:
Xi=Convklist[i](ti)
i=0,1,2,3,klist=[7,3,5,1]
(6)
多尺度卷積步驟完成后,重新排列成序列輸入格式,按照通道維度進行拼接,再使用一個線性層,將拼接后的現有維度特征d映射回原有的維度D。這樣,不同尺度的信息就通過拼接和線性層映射操作得到了強處理。借鑒殘差網絡思想,該部分的輸出經過Sigmoid激活函數之后,和原有輸入相加得到最終結果。
object_query是模型查詢圖像上某一位置是否存在目標的向量,而模型根據Encoder提供的特征圖來提供答案。在訓練結束時,object_query的關注點和物體的位置將十分貼合。設object_query的維度為n_query,通常設置為100或300。在本文數據集中,單個圖像上的目標數量一般在50個左右,因此設置的object_query數量存在冗余。原有的object_query經過編碼后的query_embedding向量在重要程度上是均勻的,基于此,本文借鑒SENet[39]思路,設計了面向object_query的擠壓-激勵模塊OqSE(Object_query Squeeze-and-Excitation),如圖7所示。

Figure 7 Decoder layer with object_query squeeze and excitation module圖7 帶有object_query擠壓-激勵模塊的解碼器層
對于具備D維描述特征的query_embedding向量,對其包含的信息進行逐層降維(Reduction)操作。本部分即Transformer Decoder采用一個漸進式降維多層感知機MLP(MultiLayer Perceptron)逐漸將query_embedding的維度降為1,對每個特征賦予權重。該部分的數據流可描述為式(7):
s=z(1+σ(z·MLP(z)))
(7)
其中,OqSE模塊的輸入為z,MLP(·)為采用的多層感知機結構,s為模塊的輸出,σ(·)為Sigmoid激活函數。
在線難樣本挖掘OHEM[37]是一種緩解數據集中樣本類別不均衡以及識別難度大等問題的方法。其基本假設為:數據集中某一類的數量很少時,網絡模型學習到該類樣本特征的次數少于其他類樣本的,導致難以對該類樣本進行正確分類和定位,稱這類樣本為“難樣本”。
本文所使用的UAVDT(UAV Detection and Tracking benchmark)數據集中,類別car的樣本數遠多于bus和truck的(如表1所示)。且存在不同角度、不同時間和不同天氣狀況下拍攝的大量小目標。基于此,本文采用OHEM算法來加強對難樣本的訓練,對訓練過程中各個樣本的損失進行排序,選擇損失較大的樣本投入負樣本池,增加其被學習到的次數;而對于損失較小的樣本則認為已經學習到其正確的檢測知識,賦予較小的權重。此方法能有效提高對bus、truck這類小樣本以及小目標的檢測性能。

Table 1 Statistical table of dataset annotation information表1 數據集標注信息統計表
數據集采用無人機視頻流目標檢測數據集UAVDT[40]中的多目標檢測以及追蹤子集UAV-benchmark-M。該子集包含50個視頻序列,共40 409幅圖像,依據視頻序列的個數按照3∶2的比例劃分出訓練集和測試集。其中訓練集包括30個視頻序列(含23 829幅圖像),測試集包括20個視頻序列(含16 580幅圖像)。部分標注圖像如圖8所示。

Figure 8 Examples of UAV-benchmark-M圖8 數據集標注實例
數據集的類別不均衡,car的數量遠高于另外2類的。如表1所示。除了類別不均勻,數據集中也包含了大量的小目標,如圖9所示。絕大多數目標的面積均小于50 × 50像素,其中有2/3的目標面積小于32×32像素,符合MS COCO(MirocSoft COmmon objects in COntext)數據集對“小目標”的定義。寬高比分布相對較為均勻,但仍存在一部分較為狹長的目標,這些因素的存在均對檢測性能提出了一定挑戰。

Figure 9 Area and statistical data of annotations圖9 標簽標注的面積和寬高比情況
算法依托深度學習框架PyTorch[41],版本為1.6.0,使用NVIDIA的Tesla v100進行訓練。使用OpenMMLab(Open MultiMedia Lab)中的MMDetection(open MMLab Detection toolbox and benchmark)[42]和MMTracking(open MMLab multiple object Tracking toolbox and benchmark)框架完成相關對比實驗,具體見表2。

Table 2 Experimental environment表2 實驗環境
在目標檢測研究中,常用MS COCO[28]中的評價指標來衡量性能。主要指標是平均精度AP(Average Precision),表征了對某一類目標的檢測性能。AP由交并比IoU(Intersection-over Union)確定,即預測目標框與真值目標框的重疊程度。其他評價指標還包括參數量Param以及每秒可檢測的幀數FPS(Frames Per Second)。本文所使用的評價指標如表3所示。
將本文算法在UAV-benchmark-M上進行訓練,得到改進的網絡模型和權重文件。驗證算法性能時,選擇了11個經典的目標檢測算法進行性能對比。

Table 3 Evaluation indexes表3 評價指標
實驗采取原始Deformable DETR的結構,用原有的Channel-Mapper進行特征融合,將不采用在線難樣本挖掘的算法作為基線算法。實驗結果如表4所示。從表4可以看出,本文算法與基線算法相比,在沒有顯著增加模型大小的情況下,檢測精度得到了提升,其中在mAP、AP50和AP75等指標值分別提升了1.5%,1.6%和0.8%,表明本文的改進工作能夠提升Deformable DETR的性能;本文算法在APs、APm、APl上也均有提高,小目標檢測平均精度相較于基線算法的提升了1.8%,中等目標的平均精度提升了1.2%,大目標的平均精度提升了2.2%。相比于其他算法,本文算法在精度上也達到了最好的性能,說明本文的創新點可以有效提升模型的檢測能力。此外,本文算法相較于基線算法僅增長了0.4×106的參數量,FPS僅減少了0.2,計算消耗并不大。在視頻流目標檢測算法中,采用了DFF、FGFA和SELSA共3種不同的視頻流目標檢測算法。可以看到,無論是僅有特征傳播的DFF,依托光流特征融合的FGFA,還是基于語義融合的SELSA,在采用相同檢測器Grid-RCNN+FPN的情況下,這些算法的性能均較單幀檢測器的有所損失,這是特征傳播不準確導致的。除DFF在算法運行速度上大幅提升之外,FGFA和SELSA的檢測速度也因光流融合而被拖慢,難以滿足無人機視頻流實時與近實時的目標檢測需求。

Table 4 Results comparison of different algorithms表4 不同算法結果對比
本文算法和基線算法的檢測結果對比如圖10所示。圖10a中本文算法能準確檢測出公交車,然而基線算法將卡車視作數段普通車輛,說明本文算法相較于基線算法更注重整體性且突出了關鍵目標。圖10b中基線算法出現了誤檢測,將收費站的柱子判斷成了車輛,本文算法誤檢測較少。圖10c中基線算法將公交車識別錯誤,但本文算法能夠識別正確。圖10d中基線算法在小目標和查全率上均不如本文算法。同時發現,雖然圖10a和圖10b中改進算法相對于基線算法存在漏檢現象,但由于數據集中該類目標(目標區域只有部分在圖內)未進行標注,從側面證明了該檢測算法對于目標全局檢測能力的提升。

Figure 10 Experimental results comparison圖10 對比實驗結果示例
為了驗證本文工作對于目標檢測算法的影響,設計了消融實驗。消融實驗依然以原始Deformable DETR且無OHEM輔助的算法作為基線算法進行對比。6組消融實驗是單一或者兩兩模塊的組合,最后一組是本文的完整算法,即Deformable DETR+CRF+OqSE+OHEM,具體實驗結果如表5所示。

Table 5 Results of ablation experiments表5 消融實驗結果
實驗結果表明,單一以及組合模塊的改進在檢測準確度和處理速度上大多可以產生較好的優化效果,表明對原始基線算法的改進是有效的。其中,加入CRF模塊可將模型的檢測性能提升0.4%,加入OqSE模塊可將模型性能提升0.8%,說明OqSE模塊可有效提升重要目標的檢測效果。在基線算法上單獨應用OHEM對檢測精度也有一定程度的提升。
本文提出了一種基于改進Deformable DETR的無人機視頻流車輛目標檢測算法。該算法在整體檢測精度、小目標檢測精度上均優于基線算法的,結合消融實驗,論證了算法核心模塊的有效性。本文的工作主要包括以下3個方面:
(1)針對原有Deformable DETR在多尺度上感受能力相同的特點,提出了適用于Transformer目標檢測框架的跨尺度特征融合模塊,并將其使用在Transformer編碼器層中,提升了特征融合的效能和表現能力;
(2)針對原有Deformable DETR在object_query重要程度上均衡導致重點不突出的問題,提出了基于object_query的擠壓-激勵模塊,并將其使用在Transformer解碼器層中,使目標之間的關系得到了更深刻的表達;
(3)針對數據集中類別樣本不均衡導致的訓練效果不佳的問題,使用OHEM方法對損失函數進行改進,提升了基于UAVDT數據集的訓練效果。
下一階段的研究重點是進一步研究目標檢測模型的特征提取能力,并嘗試在更多的數據集上進行實驗,以及采用知識蒸餾等策略將算法遷移至移動端平臺,測試其實際檢測效果。