?

霧天車輛目標檢測域適應模型

2022-09-03 05:05董惠文
遼寧科技大學學報 2022年2期
關鍵詞:跨域類別損失

董惠文,田 瑩

(遼寧科技大學 計算機與軟件工程學院,遼寧 鞍山 114051)

常用的車輛目標檢測數據集大多是在晴天清晰情況下拍攝,用此數據集訓練出來的模型在晴天檢測效果良好,但在霧霾天或者雨雪天準確率就會大幅下降。以往研究主要采用兩種方式來解決:數據集去霧后檢測和一體化的霧霾天目標檢測模型。

數據集去霧后檢測采用分步實驗,先將數據集整體去霧,再將處理好的圖像放入目標檢測模型進行實驗。去霧方法主要分為傳統方法和深度學習方法。傳統上的去霧模型是將圖像退化后的大氣散射模型進行恢復,例如,He等[1]提出的暗通道先驗,還有顏色衰減先驗[2]、色調差異先驗[3]。傳統方法主要缺點是:恢復的圖像中由于手工的嚴格約束,造成不期望的霧偽影;或是目標場景與大氣光類似,如雪地、白色的樓房等,結果較差。近幾年深度學習去霧方法中,Li等[4]提出一種基于卷積神經網絡的一體化去霧網絡(All-in-one dehazing network,AOD-Net),可直接重建無霧圖像,但圖像往往較暗且不夠清晰。Liu等[5]使用對抗性方法CycleGAN,輸入不成對的有霧與無霧的圖像,通過周期不變性以及對抗性學習增強去霧效果。這些深度學習的方法都是將有霧圖片轉換成無霧,還需要進行二次訓練才能得出適合檢測霧天車輛的模型。

一體化的霧霾天目標檢測模型通過深度學習,在訓練中學得霧霾中車輛的特征,直接用于目標檢測。2018年,Chen等[6]提出將域適應算法與雙階段目標檢測模型相結合,設計在圖像上和實例上的域適應組件,將對抗性訓練引入域適應,以減少域漂移導致的性能下降。汪昱東等[7]在Faster R-CNN中添加霧濃度判別模塊以及注意力機制,結合擴充后的數據集完成對行人和車輛的檢測。Sun等[8]在Faster R-CNN基礎上提出一種基于無監督領域分類的多目標檢測方法,首先在所有目標域中提取不同風格特征,再使用k均值(kmeans)算法進行無監督聚類,進一步訓練出在所有天氣情況下都可使用的目標檢測模型。以上方法都是基于Faster R-CNN的雙階段目標檢測模型進行改進。對于自動駕駛或其他交通檢測模型來說,模型的運行速度也是需要考慮的因素。

雙階段目標檢測模型速度較單階段模型慢很多。在霧霾天氣下檢測車輛和在清晰天氣下檢測車輛效果不同,主要是由于兩種不同的域之間存在著分布差異。因此,本文提出一種單階段域自適應目標檢測模型,在YOLO模型損失上添加聯合最大平均差異(Joint maximum mean discrepancy,JMMD)[9]域間損失,稱之為JMMD-YOLO模型,對齊跨域的多個域特征層的聯合分布參數,并學習傳輸網絡,使無霧到有霧的跨域檢測效果得以提升。

1 JMMD-YOLO模型

1.1 聯合最大平均差異

最大平均差異(Maximum mean discrepancy,MMD)[10]最開始用于衡量兩個分布和之間的接近程度。如果兩個分布是相同的,那么兩個數據差值應該為零式中:是包含所有連續函數的集合,廣義再生核希爾伯特空間中的函數類足以區分任意兩個分布。數據集滿足P分布,數據集滿足Q分布。

在實際應用時,采用的是經驗核均值嵌入之間的平方距離MMD,計算式

式中:ns是有標簽的示例;nt是無標簽的示例;k(x,x′)為核函數。

利用張量積特征空間與再生核希爾伯特空間結合[11],推廣到多個變量的聯合分布,得到

式中:P為聯合分布,P中變量X`,…,Xm嵌入到m階張量積特征空間中。

將式(2)與聯合分布式(3)結合,產生的度量即是聯合最大平均差異[9],計算式

式中:P和Q分別為從源域Ds和Dt目標域中提取的標記點,深層網絡分別從L中生成激活,如和

JMMD模塊結構如圖1所示。Block1為YOLO模型的特征提取層,Block2為后續的卷積層,中間部分為本文所用的JMMD模塊。該模塊zs1,…,zs|L|特征部分來自源域,zt1,…,zt|L|部分來自目標域,分別把對應層的特征映射到希爾伯特核空間,再進行內積計算,最后計算源域與目標域之間的JMMD。通過優化JMMD達到域自適應。

圖1 JMMD模塊示意圖Fig.1 Schematic diagram of JMMD module

1.2 YOLO域自適應網絡

YOLO模型[12]最先由Redmon等在2015年提出,將目標檢測轉成一個回歸問題,在一次評估中完成邊界框預測與類別預測,運算速度是當時其他實時檢測器的兩倍,但它的定位誤差相對其他雙階段目標檢測模型較高,無法從背景中預測假陽性。

2016年,YOLOv2[13]在YOLO的基礎上增加多尺度訓練方法,引入候選區域框(Anchor boxes),取消隨機失活方法,在卷積層全部使用批標準化,增加了細粒度特征,使較小的物體檢測準確度提升,召回率也明顯提升。YOLOv3[14]在YOLOv2基礎上,更新了Darknet-19的結構,變為53層,檢測效果進一步提升。在多尺度檢測方面,采用兩次上采樣,在原來的5個候選區域框的基礎上提升到9個,使小物體檢測效果進一步提升。近年來也有基于YOLO模型改進的YOLOv4以及YOLOv5模型,結合SPP(Spatial pyramid pooling)訓練的YOLOv3也是工業界常用的版本。本文采用跨域后效果依舊穩定的YOLOv3-SPP模型進行改進。為使原始檢測效果更佳,還使用了馬賽克數據等增強方法。

YOLO域適應模型所采用的優化目標包括兩大部分:一個是目標檢測損失,另一個是域適應損失。目標檢測損失又包括邊界框置信度損失(Lconf)、類別損失(Lclass)以及坐標損失(LCIoU)。計算式

其中

式中:S2為劃分的網格數量;B為每個網格預測邊界框數量;為判斷第i個網格的第j個邊界框是否有需要預測的目標;λobj和λnobj為網格有無目標的權重系數;Ci,C^i為預測目標和實際目標的置信度值;c為邊界框預測的目標類別;pi(c)為第i個網格檢測到目標時,其所屬c的預測概率;p^i(c)為第i個網格檢測到目標時,其所屬c的實際概率;IoU為預測框與真實框之間交并比的差值;c1為預測框與真實框最小包圍框的對角線長度;b為預測框中心點坐標;bgt為真實框中心點坐標;ρ(b,bgt)為計算兩者間的歐式距離;α為平衡參數,不參與梯度計算;v為懲罰項,判斷預測框的寬高是否接近于真實框的寬高;w和h為預測框的寬高;wgt和hgt為真實框的寬高。

將JMMD與YOLO損失函數結合即為本文的損失函數

其中μ>0為平衡目標檢測和域適應損失的參數,整體目標為最小化目標檢測損失和JMMD聯合調整。

1.3 模型整體結構

模型整體分為五個模塊,分別是輸入端、主干網絡(Backbone)、頸部、檢測頭以及域適應模塊。模型主要結構如圖2所示。

圖2 JMMD-YOLO結構圖Fig.2 Structure diagram of JMMD-YOLO

輸入為源域Cityscape和目標域Foggy Cityscape,在經過馬賽克數據增強以及隨機圖像翻轉等數據增強方法后,處理成640×640大小輸入到主干網絡中。

主干網絡采用DarkNet-53網絡結構,由殘差模塊和卷積層堆疊構成,圖中僅簡要畫出五個步長為2的卷積以及最后一層卷積。為得到更好的泛化效果,其中激活函數采用平滑的非單調函數Swish。

頸部為DarkNet-53和檢測頭之間的部分,使用特征金字塔網絡(Feature pyramid networks,FPN),同時應用高層語義信息與低層位置信息,融合不同層特征,達到較好的預測效果。

檢測頭部分為三種尺寸,分別是80×80、40×40、20×20,在不同的感受野下檢測對應尺度的目標。

域適應部分在三個特征層中分別獲取源域和目標域的特征,求出JMMD,并加入總體損失進行計算。

2 仿真實驗

2.1 配置及設置

服務器配置采用CentOs7,計算統一設備架構(Computer unified device architecture,CUDA)采用10.1.105版本,CUDA深度神經網絡庫(CUDA deep neural network library,cuDNN)采用7.65版本,深度學習框架采用PyTorch1.7.1。硬件使用兩張NVIDIAGTX1080Ti顯卡。

模型的圖像增強采用的是馬賽克數據增強、隨機翻轉、剪切、水平以及垂直平移。此種混合的圖像增強可明顯提升小目標的檢測效果。代碼采用Ultralytics的YOLOv3-SPP。實驗中圖像輸入大小均為640×640,域適應實驗中,每批次為兩張源域和兩張目標域圖像。文中平衡目標檢測和域適應損失參數μ選用0.01。

2.2 數據集

Cityscapes[15]數據集包括來自50個不同城市的街道場景,共有5 000張具有高質量像素級注釋,2萬張圖像具有粗糙注釋。其中公開帶標簽的高質量數據包括訓練集2 975張,驗證集500張。數據集場景較為復雜多變,專為城市環境中的自動駕駛設計,共有8個類別。本文僅比較轎車、自行車、摩托車、公共汽車、卡車以及火車這6個類別。

Foggy Cityscapes[16]數據集是在Cityscapes真實晴天圖像的基礎上合成的高質量霧天數據集,可用于目標檢測與分割。根據衰減系數分為三種,分別是0.005、0.01、0.02的三個版本,分別對應600 m、300 m、150 m的能見度范圍。

兩個數據集的類別按照標簽數目從多到少排列分別為:轎車、自行車、摩托車、公共汽車、卡車、火車。數據集示例如圖3所示。

圖3 Cityscapes和Foggy Cityscape數據集示例圖Fig.3 Example graphs of Cityscapes and Foggy Cityscape datasets

將數據集無關類別刪除后,域適應訓練過程中源域選用帶標注的Cityscapes數據集,目標域采用無標注的Foggy Cityscapes數據集,驗證集采用Cityscapes的驗證部分,測試集采用Foggy Cityscapes的驗證集。

2.3 模型評估

評價指標采用平均精度mAP(mean average precision)、PR(Precision-Recall)曲線以及每秒傳輸幀數(Frames per second,FPS),計算式

式中:TP為目標正確檢測的數量;FP為目標未檢測數量;FN為目標錯誤檢測的數量;P為精確率;R為召回率(Recall);N為測試輸入圖片數;C為分類類別數;k為輸入的第k張圖片;ΔR(k)為召回率k-1到k時的變化情況。

各類的平均精度(AP)以及整體平均精度(mAP)閾值均采用0.5。

2.4 結果與討論

為選用更適合的模型進行域適應,本節采用多種模型進行比較。選用YOLOv3-SPP以及YOLOv5的兩種版本YOLOv5l、YOLOv5x進行對比,測試結果如表1所示。YOLOv3-SPP的檢測效果與YOLOv5x接近,在速度上YOLOv3-SPP介于YOLOv5l與YOLOv5x之間。

表1 各模型在Cityscapes下測試效果Tab.1 Test results of each model under Cityscapes

表2為使用Cityscapes數據集進行訓練后的模型在Foggy Cityscapes進行測試的結果,其中測試數據均采用150 m可見度下的霧霾圖像,為跨域實驗。在跨域后,所有模型的效果均大幅下降,說明霧霾對車輛檢測效果影響較大。其中YOLOv3-SPP在跨域后實驗效果最佳。

表2 各模型在150 m可見度下Foggy Cityscapes的測試效果Tab.2 Test results of each model at 150 m visibility under Foggy Cityscapes

顯然,在同域下的實驗效果佳并不能代表跨域后依舊有很好的適應性,在一個數據集中學習好的特征在跨域后由于域之間的差異并不能適應新的數據集。因此,采用跨域后效果最好的YOLOv3-SPP結合JMMD,進一步縮小兩個數據集之間的域差異。

域適應測試結果詳見表3。能見度列中的“混合”是使用Foggy Cityscape數據集中的3種能見度混合驗證集進行測試,“無霧”是使用Cityscape驗證集進行測試。在源域與目標域霧霾區別程度較大的情況下,JMMD-YOLO可有效提升車輛的檢測效果。在標簽數比較少的類別上提升效果更為突出,在150 m可見度范圍下,公共汽車類別提升6.4%,卡車類別提升2.46%,火車類別提升2.29%,整體平均精度提升2.2%。在三種可見度混合的數據集中,火車類別提升5.4%。從速度上看,改進后的模型速度略有下降,但依舊能達到57.8幀/s,具有實時性。

表3 域適應測試結果Tab.3 Test results of domain adaptation

實驗結果證明,多個特定特征層的聯合激活,可有效糾正跨域聯合分布的偏移。同時,將JMMD嵌入到目標檢測模型中,無需額外訓練網絡就可以達到域適應效果,避免了分步訓練的麻煩。

圖4為150 m可見度下域適應前后對比圖。圖4a中,由于霧霾漏掉了一些車輛,而在圖4b中,域適應后的模型可以檢測出這些車輛。圖4c將卡車誤檢成火車,自行車誤檢成公共汽車,圖4e將摩托車誤檢成自行車,域適應后也能識別出正確的類別,使各類的識別準確率也有所提升。

圖4 150 m可見度下域適應前后對比圖Fig.4 Comparison before and after domain adaptation at 150 m visibility

將JMMD-YOLO模型與其他目標檢測域適應模型從無霧到有霧的檢測效果進行對比,結果詳見表4。其中DA-YOLO為單階段域適應,其他三種均為Faster R-CNN下的域適應。與DA-YOLO單階段域適應模型相比,JMMD-YOLO對6種車輛的檢測效果都更好一些。與其余幾種雙階段域適應模型相比,JMMD-YOLO模型對個別類別車輛檢測準確率稍低,但均值準確率mAP效果最佳。

表4 不同域適應模型對比結果Tab.4 Comparison between results of different domain adaptation models

3 結論

霧霾天氣情況下數據集較少,在晴天拍攝標注的數據集難以滿足霧霾天氣車輛檢測?;诖藛栴},本文采用域適應的方法對模型進行改進。在對多種單階段模型進行實驗后,本文選用其中跨域檢測效果最好的YOLOv3-SPP進行改進,調整原有YOLO輸入結構,將跨域多個特定層的聯合分布對齊,提出域適應目標檢測JMMD-YOLO模型。與傳統的目標檢測網絡相比,JMMD-YOLO在訓練時目標域的輸入無需注釋,可便捷地用于霧霾下的車輛檢測。實驗結果顯示,JMMDYOLO模型可以更好地檢測出霧霾天中的車輛,在150 m可見度下,單類識別準確率最高提升6.4%,整體平均精度提升2.2%,并且速度達到57.8幀/s,具有實時性。

猜你喜歡
跨域類別損失
洪澇造成孟加拉損失25.4萬噸大米
基于多標簽協同學習的跨域行人重識別
為群眾辦實事,嶗山區打出“跨域通辦”組合拳
G-SRv6 Policy在跨域端到端組網中的應用
一起去圖書館吧
兩敗俱傷
簡析基于概率預測的網絡數學模型建構
損失
“新都市電影”中的男性明星——身體、階層與跨域想象
那些損失上百萬的演員
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合