?

一種基于YOLOX 改進的路側目標檢測方法?

2024-01-23 13:37任明武
計算機與數字工程 2023年10期
關鍵詞:池化全局注意力

周 慶 任明武

(南京理工大學計算機科學與工程學院 南京 210094)

1 引言

車路協同是指通過車輛與其他車輛、路側感知設備進行通訊,以實現汽車與道路之間的信息交互。車路協同系統在感知層面主要分為兩類:車端感知和路端感知。路端感知一般采用相機、激光雷達、毫米波雷達和各類環境傳感器來實現信息采集,同時還有信號燈、交通標識線等交通設施輔助。路端感知的主要設備之一是激光雷達,能夠提供目標的距離信息,缺點是成本較高且可靠性較低,在雨雪等惡劣天氣條件下使用受限。另一設備是相機,優點是成本較低且傳感器的分辨率較高,相較于激光雷達能提供更多有效信息,缺點是無法提供目標距離等3D信息。

基于以上原因,本文使用路側相機設備采集的可見光圖像,檢測行人車輛等目標,對行車環境進行智能感知,具有十分廣泛的應用前景和重要的研究意義。近年來由于深度學習技術的發展,主流的圖像目標檢測由基于手工特征的傳統方法轉變為基于卷積特征的深度方法。因此本文主要研究基于深度學習技術的目標檢測方法。

根據是否有預先定義的錨框,深度學習目標檢測可以分為anchor-based 方法和anchor-free 方法。Anchor-based 方法會在圖像上平鋪大量的錨框,預測目標框和這些先驗框的偏差。anchor-free 方法沒有預設的錨框,可分為基于關鍵點[1]和基于中心點[2]兩種方式。Anchor-base 方法存在許多與錨框相關的超參數不易優化,且大量的錨框會導致計算復雜度增加;anchor-free 方法則不需要調優相關超參數,且避免了IOU 計算,使得訓練過程內存占用更低。綜上,本文選擇了最新的anchor-free目標檢測方法YOLOX[3]作為基準模型。

人類的注意力機制是從直覺中得到,是一種利用有限的注意力資源從大量信息中快速篩選出高價值信息的手段。深度學習中的注意力機制借鑒了人類的注意力思維方式,被廣泛地應用在自然語言處理[4]和圖像識別[5]等任務中。YOLOX 模型中并沒有使用attention 模型,因此本文使用了注意力機制對其主干網絡特性進行加強。

YOLOX 模型中對于判斷前背景的物體分支,是直接對所有預測樣本進行計算,可能存在正負樣本不平衡的問題。論文RetinaNet[6]提出了一種新的損失函數focal loss,對容易分類的大量負樣本降低其損失權重,可以克服正負樣本不平衡的問題。因此本文使用了focal loss對YOLOX 模型的物體損失函數進行改進。

2 YOLOX模型

2.1 網絡結構

YOLOX 是由曠視科技于2021 年提出的目標檢測方法,將近年來目標檢測領域的最新進展與YOLO 系列進行了集成組合,性能得到了大幅提升,同時保持了較高的檢測速度。YOLOX 基于YOLOv3 模型[7],提出了解耦頭、數據增強、anchorfree和SimOTA這四項改進。

由于YOLOv4[8]模型對于anchor-based 方法可能有一些過度優化,作者選擇了YOLOv3 作為基準模型,并在backbone 后面添加了一個SPP 模塊[9],即空間金字塔池化,整體網絡結構如圖1所示。SPP模塊使用{1*1,5*5,9*9,13*13}的最大池化,與直接使用最大池化相比,有效地增加了backbone特征的接收范圍,顯著地分離了最重要的上下文特征。

圖1 YOLOX網絡結構圖

模型的損失函數由三部分構成,如下式所示:

其中λ為平衡系數,Lreg為用于邊界框回歸的IOU損失,Lobj為用于判斷物體概率的BCE 損失,Lcls為用于目標分類的BCE損失。

2.2 解耦頭和數據增強

在目標檢測中,分類與回歸任務經常會產生沖突,因此檢測頭的解耦已被廣泛使用。然而,YOLOv3 的檢測頭仍處于耦合狀態,如圖2 上方所示。作者通過實驗發現,將檢測頭解耦會顯著改善模型的收斂速度,因此將檢測頭替換為輕量解耦頭。解耦頭包含一個1×1 卷積,用于通道降維,后接兩個3×3 卷積的并行分支,分別用于分類和回歸以及物體,如圖2所示。

圖2 YOLOv3與YOLOX檢測頭結構圖

作者使用了Mosaic 與Mixup[10]兩種數據增強策略以進一步增強性能。Mosaic 數據增強參考自CutMix[11],選擇四張圖片,通過隨機縮放、隨機裁剪和隨機排布的方式進行拼接,有助于小目標的檢測。Mixup 數據增強是在一張圖片做了Mosaic 之后,隨機選擇另一張圖片,將兩張圖以一定的比例對RGB 值進行混合,模型需要檢測出兩張圖中所有的目標。該方法可以在幾乎不增加計算開銷的情況下,穩定提升檢測精度。

2.3 Anchor-free和SimOTA

作者使用了anchor-free機制,特征圖中的每個點只預測一個目標框且直接輸出四個值,即中心點相較于左上角的偏移和框的長寬。anchor-free 機制減少了模型的參數量,節省了計算資源,使其速度更快性能更好。參考FCOS[12],作者將落入真實框范圍內的點定為正樣本,這樣一個真實框通常只有一個正樣本,忽略了臨近的其他可能的正樣本。因此作者還將落入真實框中心點一定區域范圍(根據下采樣倍數而定)內的點定為正樣本,使得一個真實框可以有多個正樣本。

通過以上步驟獲得初步的正樣本后,作者使用SimOTA 方法進行了精細化篩選,為每個真實框分配全局最優的正樣本。OTA是一種標簽分配策略[13],從全局角度分析標簽分配并將其轉化為最優運輸問題。然而最優運輸問題求解會增加25%的訓練時間,因此作者將其簡化為動態top-k 問題,稱為SimOTA,得到近似解。相比于OTA,SimOTA 可以縮短訓練時間,避免額外的超參數優化,并在大多數情況下不影響精度。

3 基于Attention 和Focal loss 改進的YOLOX模型

3.1 SENet和CBAM

Attention,即注意力機制,已經被廣泛應用于計算機視覺領域中。它用于高效地關注圖像中的重要區域,可以看作是基于輸入特征的動態權重調整過程。本文使用了SENet[14]和CBAM[15]兩種Attention,對YOLOX 特征金字塔中的特征進行關注與加強。

SENet 首先提出了通道注意力機制,核心是一個SE(squeeze and excitation)模塊,用于收集全局信息、捕獲通道關系并提升表征能力,其結構如圖3所示。

圖3 SE模塊結構圖

SE 模塊分為兩部分:壓縮(squeeze)操作和激勵(excitation)操作。首先,壓縮操作通過全局平局池化收集全局空間信息;然后,激勵操作通過使用全連接層和非線性層(ReLU 和sigmoid)捕獲通道關系并輸出一個注意力向量;最后,將輸入特征的每個通道乘以注意力向量中對應的元素來進行縮放。給定一個輸入特征X,通道數為C,使用下式計算其輸出Y:

其中zc表示經過壓縮操作后第c 個通道的值,s表示經過激勵操作后的注意力向量,δ表示ReLU 函數,σ表示sigmoid 函數。為了降低模型復雜度以及提升泛化能力,激勵操作使用了兩個全連接層的bottleneck結構,第一層用于降維,r為降維系數。

為了增強信息通道和重要區域,Woo等提出了卷積注意力CBAM 模塊。該模塊將通道注意力和空間注意力串聯起來,解耦通道注意力圖和空間注意力圖以提高計算效率,使用全局池化來聚合空間全局信息,其結構如圖4所示。

圖4 CBAM模塊結構圖

CBAM 模塊分為兩個子模塊:通道和空間。給定輸入特征圖X??H×W×C,依次計算出一維的通道注意力向量sc?RC和二維的空間注意力圖ss??H×W。通道子模塊類似于SE 模塊,不同之處在于它使用了不止一種池化操作來聚合全局信息。具體來說,它使用了兩個平行分支,分別為平均池化和最大池化,如下式所示:

其中GAPs和GMPs分別表示空間域中的全局平局池化和全局最大池化??臻g子模塊對特征的空間關系進行建模,是對通道注意力的補充。與通道注意力不同,它使用大核的卷積層來生成注意力圖,如下式所示:

其中GAPc和GMPc表示通道域中的全局池化,Conv表示卷積操作,[]表示通道上的串聯。整個注意力過程由下式所示:

3.2 Focal loss

Focal loss 是一種動態縮放的交叉熵(cross entropy)損失,其核心在于降低簡單樣本的損失權重,以目標檢測為例,就是那些落在背景且比較容易分類的大量樣本??s放的調節系數隨著正確分類的置信度增加而減小,可以在訓練期間自動降低簡單樣本的貢獻,使得模型更加專注于困難樣本。為了控制簡單樣本和困難樣本的權重,為交叉熵損失加上一個調節系數,得到focal loss,定義如下:

其中γ≥0 為專注超參數,(1 -pt)γ為調節系數。當γ=0 時,focal loss就等于交叉熵損失。

該損失具有兩個重要性質:1)當樣本被錯誤分類時pt較小,調節系數接近于1,損失不受影響;而當樣本被正確分類時pt較大,調節系數接近于0,這樣簡單樣本的損失權重就被降低了。2)專注參數γ平滑地調節了簡單樣本降低權重的比例,其值越大調節系數的影響就越大,等于0 時就是交叉熵損失。直觀地說,調節系數減少了簡單樣本的損失貢獻,同時拓寬了得到小損失樣本的范圍。

3.3 模型改進

YOLOX 模型中沒有使用attention,因此本文引入SE 模塊和CBAM 模塊對其進行改進。模型中的neck 特征金字塔用于接收來自主干網絡淺層的位置特征和深層的語義特征,只使用了上采樣和級聯操作進行融合,存在改進空間。此外,由于物體損失是對所有預測框進行計算的,使用原始的交叉熵損失可能會造成大量的簡單背景樣本損失疊加,超過少量的困難前景樣本,使得模型偏向于背景樣本,訓練困難。

基于以上信息,本文修改了YOLOX 模型的特征金字塔部分,經過組合實驗,在上采樣前的特征圖后面加入SE 模塊,以加強其通道關系;在送入檢測頭的的特征圖前面加入CBAM 模塊,以同時加強其通道關系和空間關系;修改后的特征金字塔結構如圖5 所示。本文將物體分支的損失函數由交叉熵損失替換為了focal loss,以解決前景和背景樣本比例不平衡,造成訓練困難的問題。

圖5 修改后的YOLOX特征金字塔結構圖

4 實驗結果及分析

為了盡可能貼近真實的車路協同的應用場景,本文在兩處城市結構化道路場景進行路側視頻數據的采集。一處場景為學校大門口一條東西向道路,雙向四車道,路寬約15m,兩側有人行道和非機動車道,校門口左右兩邊分別有一條南北向斑馬線,如圖6(a)所示。另一處場景為一條丁字型路口,左二右三共五車道,路寬約18m,兩側有人行道和非機動車道,有一條南北向和一條東西向斑馬線,如圖6(b)所示。

圖6 路側數據采集場景

采集設備為可見光相機設備,1200 萬像素,f/1.8 光圈。將設備放置在可移動支架上,架設高度符合路側數據需求,鏡頭對準道路區域,模擬路側感知場景。在上述兩處場景各采集兩段視頻,時間均為4min,幀率為30fps,圖像大小為1920*1080,總共四條視頻序列。采集時間為下午14 點到17 點,天氣為多云、正常光線。

使用上述方案采集路側可見光圖像數據后,本文使用CVAT 標注工具進行了路側目標的標注。本文標注了行人、自行車、電動自行車和汽車這四類目標,總計1500張圖像和14218個邊界框。各類別具體的邊界框數目如表1 所示。為了驗證目標檢測模型的泛化性能,選擇視頻序列1、2、4 為訓練集,視頻序列3為測試集。

表1 路側目標檢測數據集統計信息

本文在自建的路側數據集上評估改進后的YOLOX 目標檢測方法,其中訓練集共1200 張,訓練集共300 張。模型的backbone 為DarkNet-53,超參數均使用默認設置。模型使用SGD 訓練300 個epoch,采用Cosine 學習率機制。輸入圖像縮放大小為640*640,使用mosaic 和mixup 數據增強,并在最后15個epoch關掉。模型未改動的部分使用COCO 數據集[16]預訓練過的權重進行初始化,新增的attention 模塊使用默認初始化。訓練時使用兩張TITAN V顯卡,batch大小為16。

為了驗證兩種模塊組合的檢測性能,本文在特征金字塔的不同部分增加不同的attention 模塊,SE_CBAM 表示先在上采樣前增加SE 模塊,然后在融合特征圖后增加CBAM 模塊,CBAM_SE 與之相反。模型在測試集上的檢測結果如表2所示。

表2 attention模塊組合的檢測結果

從表中可以看出,兩種模塊組合的性能提升比較明顯,參數量和計算量略微增加,但幅度不大。具體來說,SE_CBAM 提升了5.4%,CBAM_SE 提升了4.3%;得益于上采樣前的SE 模塊,SE_CBAM 在小目標上的性能損失較小,而特征圖后的CBAM 模塊又進一步提升了大目標的檢測,綜合性能比CBAM_SE要好。

為了獲得最優的focal loss超參數,本文在不增加attention 模塊的情況下,僅改變物體損失為focal loss。實驗選取了幾個不同的專注參數γ,取值范圍為[0 .2,4]。模型在測試集上的檢測結果如表3所示。

表3 不同專注參數下的檢測結果

從表中可以看出,當專注參數小于1 時,檢測指標急劇下降,原因可能是損失過小,模型陷入局部最優;當專注參數大于等于1 時,因為簡單樣本的損失被降權,困難樣本損失占據主導地位,使得模型優化更好,檢測指標有所提升,其中最優參數為γ=2,較baseline提升了2.2%。

通過上述實驗選擇了最優的attention 組合和focal loss 超參數之后,本實驗將兩種改進結合起來,稱為YOLOX-A模型,其檢測結果如表4所示。

表4 改進YOLOX-A模型的檢測結果

從表中可以看出,改進后的YOLOX-A 模型除小目標外的檢測指標都高于原始模型,其中mAP指標提升了5.6%,驗證了本文改進的有效性。

5 結語

本文提出了一種改進的YOLOX模型用于路側目標檢測,使用SE 模塊和CBAM 模塊對模型的主干特征進行加強,并將物體分支的損失替換為focal loss 以消除正負樣本不平衡的影響。本文構建了一個小規模的路側可見光圖像數據集,經過訓練改進YOLOX-A 模型在測試集上的檢測指標優于原始模型。本文只使用了單幀的路側圖像進行檢測,沒有利用多幀的圖像信息,后續工作可以在這一方面進行提升。

猜你喜歡
池化全局注意力
面向神經網絡池化層的靈活高效硬件設計
基于Sobel算子的池化算法設計
Cahn-Hilliard-Brinkman系統的全局吸引子
量子Navier-Stokes方程弱解的全局存在性
讓注意力“飛”回來
卷積神經網絡中的自適應加權池化
基于卷積神經網絡和池化算法的表情識別研究
落子山東,意在全局
“揚眼”APP:讓注意力“變現”
A Beautiful Way Of Looking At Things
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合