圖像自適應(yīng)YOLO:惡劣天氣下的目標檢測(附源代碼)
源代碼:https://github.com/wenyyu/ImageAdaptive-YOLO
最近開車發(fā)現(xiàn)霧天和晚上視線不是很清楚,讓我聯(lián)想到計算機視覺領(lǐng)域,是不是也是因為這種環(huán)境情況,導(dǎo)致最終的模型檢測效果不好。最近正好看了一篇文章,說惡劣天氣下的目標檢測,接下來我們一起深入了解下。
一、前言
盡管基于深度學(xué)習(xí)的目標檢測方法在傳統(tǒng)數(shù)據(jù)集上取得了可喜的結(jié)果,但從惡劣天氣條件下捕獲的低質(zhì)量圖像中定位目標仍然具有挑戰(zhàn)性。現(xiàn)有方法要么難以平衡圖像增強和目標檢測的任務(wù),要么經(jīng)常忽略對檢測有益的潛在信息。
為了緩解這個問題,有研究者提出了一種新穎的圖像自適應(yīng)YOLO (IA-YOLO) 框架,其中每個圖像都可以自適應(yīng)增強以獲得更好的檢測性能。
二、背景及相關(guān)目標檢測回顧
基于CNN的方法已在目標檢測中盛行。它們不僅在基準數(shù)據(jù)集上取得了可喜的性能,而且還被部署在自動駕駛等實際應(yīng)用中。由于輸入圖像的域偏移,由高質(zhì)量圖像訓(xùn)練的一般目標檢測模型在惡劣的天氣條件下(例如,有霧和暗光)往往無法獲得令人滿意的結(jié)果。Narasimhan和Nayar以及You等人提出在惡劣天氣下拍攝的圖像可以分解為干凈的圖像及其對應(yīng)的天氣信息,而惡劣天氣下的圖像質(zhì)量下降主要是由于天氣信息和物體之間的相互作用造成的,這導(dǎo)致檢測性能差。
上圖顯示了霧天條件下目標檢測的示例??梢钥闯?,如果圖像可以根據(jù)天氣狀況進行適當(dāng)?shù)脑鰪?,則可以恢復(fù)更多有關(guān)原始模糊目標和錯誤識別目標的潛在信息。
為了解決這個具有挑戰(zhàn)性的問題,Huang、Le和Jaw(DSNet: Joint semantic learning for object detection in inclement weather conditions)采用了兩個子網(wǎng)絡(luò)來聯(lián)合學(xué)習(xí)可見性增強和目標檢測,其中通過共享特征提取層來減少圖像退化的影響。然而,在訓(xùn)練期間很難調(diào)整參數(shù)以平衡檢測和恢復(fù)之間的權(quán)重。另一種方法是通過使用圖像去霧(Multi-Scale Boosted Dehazing Network with Dense Feature Fusion;GridDehazeNet: Attention-Based Multi-Scale Network for Image Dehazing)和圖像增強(Zero-reference deep curve estimation for low-light image enhancement)等現(xiàn)有方法對圖像進行預(yù)處理來淡化天氣特定信息的影響。然而,這些方法必須包含復(fù)雜的圖像恢復(fù)網(wǎng)絡(luò),需要在像素級監(jiān)督下單獨訓(xùn)練。這需要手動標記要恢復(fù)的圖像。這個問題也可以被視為無監(jiān)督的domain adaptation任務(wù)。與具有清晰圖像(源圖像)的訓(xùn)練檢測器相比,假設(shè)在惡劣天氣下捕獲的圖像(目標圖像)具有分布偏移。這些方法大多采用domain adaptation原則,側(cè)重于對齊兩個分布的特征,而通常忽略了基于天氣的圖像恢復(fù)過程中可以獲得的潛在信息。
·
亮點
具體來說,研究者提出了一個可微分圖像處理 (DIP) 模塊來考慮YOLO檢測器的不利天氣條件,其參數(shù)由小型卷積神經(jīng)網(wǎng)絡(luò)(CNN-PP)預(yù)測。以端到端的方式聯(lián)合學(xué)習(xí)CNN-PP和YOLOv3,這確保了CNN-PP可以學(xué)習(xí)適當(dāng)?shù)腄IP,以弱監(jiān)督的方式增強圖像以進行檢測。提出的IA-YOLO方法可以在正常和不利的天氣條件下自適應(yīng)地處理圖像。實驗結(jié)果非常令人振奮,證明了提出的IA-YOLO方法在有霧和弱光場景中的有效性。三、新框架分析
接下來我們直接開始分析新框架。
在惡劣天氣條件下拍攝的圖像,由于天氣特定信息的干擾,導(dǎo)致目標檢測困難。為了應(yīng)對這一挑戰(zhàn),研究者建議通過刪除特定天氣信息并揭示更多潛在信息來構(gòu)建圖像自適應(yīng)檢測框架。如上圖所示,整個pipeline由基于CNN的參數(shù)預(yù)測器(CNNPP)、可微分圖像處理模塊(DIP)和檢測網(wǎng)絡(luò)組成。首先將輸入圖像resize為256×256的大小,并將其輸入CNN-PP以預(yù)測DIP的參數(shù)。然后,將DIP模塊過濾后的圖像作為YOLOv3檢測器的輸入。提出了一種具有檢測損失的端到端混合數(shù)據(jù)訓(xùn)練方案,以便CNN-PP可以學(xué)習(xí)適當(dāng)?shù)腄IP以弱監(jiān)督的方式增強圖像以進行目標檢測。
DIP Module
對于CNN-PP基于梯度的優(yōu)化,過濾器應(yīng)該是可微的,以允許通過反向傳播來訓(xùn)練網(wǎng)絡(luò)。由于CNN在處理高分辨率圖像(例如4000×3000)時會消耗大量的計算資源,研究者從下采樣的256×256大小的低分辨率圖像中學(xué)習(xí)濾波器參數(shù),然后將相同的濾波器應(yīng)用于原始分辨率的圖像。因此,這些過濾器需要獨立于圖像分辨率。
新提出的DIP模塊由六個具有可調(diào)超參數(shù)的可微濾波器組成,包括去霧、白平衡 (WB)、Gamma、對比度、色調(diào)和銳化。例如WB、Gamma、對比度和色調(diào),可以表示為逐像素過濾器。因此,研究者設(shè)計的過濾器可以分為去霧、像素過濾和銳化。在這些濾鏡中,Defog濾鏡是專門為有霧場景設(shè)計的。
CNN-PP Module
在圖像信號處理 (ISP) pipeline中,通常采用一些可調(diào)濾波器來增強圖像,其超參數(shù)由經(jīng)驗豐富的工程師通過visual inspection手動調(diào)整。通常,這樣的調(diào)整過程對于為廣泛的場景找到合適的參數(shù)是非常笨拙和昂貴的。為了解決這個限制,研究者建議使用一個小的CNN作為參數(shù)預(yù)測器來估計超參數(shù),這是非常有效的。
Detection Network Module
最終選擇one-stage檢測器YOLOv3作為檢測網(wǎng)絡(luò),它廣泛用于實際應(yīng)用,包括圖像編輯、安全監(jiān)控、人群檢測和自動駕駛。它通過對多尺度特征圖進行預(yù)測來實現(xiàn)多尺度訓(xùn)練,從而進一步提高檢測精度,尤其是對于小物體。 采用與原始YOLOv3相同的網(wǎng)絡(luò)架構(gòu)和損失函數(shù)。
四、實驗及可視化
整個算法流程可以總結(jié)為如下偽代碼:
實驗1
Performance comparison on foggy images
YOLOv3和IA-YOLO比較
實驗2
Performance comparison on low-light images
實驗3
Detection results by different methods on real-world RTTS foggy images
實驗4
Detection results of different methods on synthetic VOC_Dark_test images
Efficiency analysis on the compared methods
*博客內(nèi)容為網(wǎng)友個人發(fā)布,僅代表博主個人觀點,如有侵權(quán)請聯(lián)系工作人員刪除。
隔離器相關(guān)文章:隔離器原理