霧霾太重?深度神經網路教你如何圖像去霧
本文作者蔡博侖,華南理工大學在讀博士研究生。主要研究方向,機器學習,計算機視覺,圖像處理等。目前已在TIP、ICCV、ICIP等期刊會議上發表論文10餘篇,曾獲第17屆PCM最佳學生論文。現為TIP、TCSVT、Neurocomputing等期刊審稿人。(https://caibolun.github.io/)
圖像去霧的核心
現有的圖像去霧(Image Dehazing)技術離不開一個簡單的自然模型——大氣散射模型(Atmospheric Scattering Model)。大氣散射模型描述了,在霧霾和光照的共同作用下的成像機制:
陽光在物體表面形成反射光J(x),反射光在穿過霧霾的過程發生散射,只有部分能量J(x)t(x) 能到達攝像頭。與此同時,陽光也在懸浮顆粒表面散射形成大氣光α被攝像頭接收。因此,攝像頭中的成像I(x) 可由兩部分組成,透射的物體亮度J(x)t(x) 和散射的大氣光照α(1-t(x)):
其中,t(x) 是媒介透射率(medium transmission),顧名思義表示能順利透過霧霾到達攝像頭的比率。因此,透射率跟物體與攝像頭距離d(x) 成反比,離攝像頭越遠的物體受霧霾影響更大。當距離d(x) 趨於無窮大時,透射率t(x) 趨於零,I(x) 趨近於α,α=maxy∈{x|t(x)≤t0}I(y)。綜上所述,去霧的核心是如何更精確地估計媒介透射率t(x)。
基於人工特徵
手工特徵是傳統機器視覺的基礎,講究的是熟能生巧,依賴的是實踐出真知。通過「觀察經驗設計」構建各式各樣的特徵來滿足各式各樣的任務需求。圖像去霧技術也是沿著手工特徵逐步地發展起來。
(1)暗通道先驗[2](Dark Channel Prior,DCP)
說起去霧特徵,不得不提起的暗通道先驗(DCP)。大道之行在於簡,DCP作為CVPR 2009的最佳論文,以簡潔有效的先驗假設解決了霧霾濃度估計問題。
觀察發現,清晰圖像塊的RGB顏色空間中有一個通道很暗(數值很低甚至接近於零)。因此基於暗通道先驗,霧的濃度可由最暗通道的數值近似表示:
(2)最大對比度[3](Maximum Contrast,MC)
根據大氣散射模型,霧霾會降低物體成像的對比度:Σx‖ΔI(x)‖=tΣx‖ΔJ(x)‖≤Σx‖ΔJ(x)‖。因此,基於這個推論可利用局部對比度來近似估計霧霾的濃度。同時,也可以通過最大化局部對比度來還原圖像的顏色和能見度。
(3)顏色衰減先驗[4](Color Attenuation Prior,CAP)
顏色衰減先驗(CAP)是一種與暗通道先驗(DCP)相似的先驗特徵。觀察發現霧霾會同時導致圖像飽和度的降低和亮度的增加,整體上表現為顏色的衰減。根據顏色衰減先驗,亮度和飽和度的差值被應用於估計霧霾的濃度:
基於深度智能
人的視覺系統並不需依賴這些顯式的特徵變換,便可以很好地估計霧的濃度和場景的深度。DehazeNet是一個特殊設計的深度卷積網路,利用深度學習去智能地學習霧霾特徵,解決手工特徵設計的難點和痛點。
(1)特徵提取(Feature Extraction)
特徵提取有別於傳統卷積神經網路,DehazeNet採用「卷積+Maxout[5]」的結構作為網路第一層:
並且可以證明,「卷積+Maxout」等價於傳統的手工去霧特徵:
當W1是反向(Opposite)濾波器,通道的最大等價於通道的最小值,等價於暗通道先驗(DCP);當W1是環形(Round)濾波器, 等價於對比度提取,等價於最大對比度(MC);當W1同時包含反向(Opposite)濾波器和全通(All-pass)濾波器,等價於RGB到HSV顏色空間轉換,等價於顏色衰減先驗(CAP)。
此外,從機器學習角度看,Maxout是一種樣條函數,具有更強的非線性擬合能力,如下圖(d)。
(2)多尺度映射(Multi-scale Mapping)與局部極值(Local Extremum)
多尺度特徵會提高不同解析度下特徵提取的魯棒性。傳統去霧方法中也會採用不同尺度的濾波器(均值、中值、最小值)來增強特徵在不同尺度下的魯棒性。借鑒於GoogLeNet中的inception結構,採用3組不同尺度(3×3,5×5,7×7)的濾波器實現DehazeNet的尺度魯棒性:
局部極值(MAX Pooling)是深度卷積神經網路的經典操作。局部極值約束了透射率的局部一致性,可以有效抑制透射率的估計雜訊。此外,局部極值也對應於暗通道先驗(DCP)的局部最小值和最大對比度(MC)的局部最大值。
(3)非線性回歸(Non-linear Regression)
大氣透射率是一個概率(0到1),不可能無窮大,也不可能無窮小。受到Sigmoid和ReLU激勵函數的啟發,提出雙邊糾正線性單元(Bilateral Rectified Linear Unit,BReLU),在雙邊約束的同時,保證局部的線性。
BReLU的非線性回歸對應於傳統去霧方法中的邊緣抑制操作(如DCP和CAP)。雙邊約束引入先驗信息縮小參數搜索空間,使得網路更加容易訓練;局部線性避免Sigmoid函數梯度不一致帶來的收斂困難。
DehazeNet基於手工特徵,又超出傳統方法,從人工到智能。因此,DehazeNet取得了更好的去霧結果,更多的對比實驗和代碼資源:
項目主頁
http://caibolun.github.io/DehazeNet/
GitHub代碼
https://github.com/caibolun/DehazeNet
BReLU+Caffe
https://github.com/zlinker/mycaffe
其他復現
(1)https://github.com/zlinker/DehazeNet
(2)https://github.com/allenyangyl/dehaze
參考文獻
[1] Cai B, Xu X, Jia K, et al. DehazeNet: An End-to-End System for Single Image Haze Removal [J]. IEEE Transactions on Image Processing, 2016, 25(11): 5187-5198.
[2] He K, Sun J, Tang X. Single image haze removal using dark channel prior[J]. IEEE transactions on pattern analysis and machine intelligence, 2011, 33(12): 2341-2353.
[3] Tan R T. Visibility in bad weather from a single image[C]//Computer Vision and Pattern Recognition, 2008. CVPR 2008. IEEE Conference on. IEEE, 2008: 1-8.
[4] Zhu Q, Mai J, Shao L. A fast single image haze removal algorithm using color attenuation prior[J]. IEEE Transactions on Image Processing, 2015, 24(11): 3522-3533.
[5] Goodfellow I J, Warde-Farley D, Mirza M, et al. Maxout networks[J]. ICML (3), 2013, 28: 1319-1327.
文章還不夠?來看直播吧!
掃碼進入直播間
關注 AI 研習社(okweiwu),回復1領取
【超過 1000G 神經網路/AI/大數據、教程、論文!】
論黑科技的極致,大概就是谷歌DeepMind吧
點擊展開全文
※直播!思聰教你如何Kaggle奪金
※深度學習中的「深度」究竟怎麼理解?
※CVPR 2017 精彩論文解讀:綜合使用多形態核磁共振數據的 3D 生物醫學圖像分割方法
※看矽谷數據工程師如何使用TensorFlow構建、訓練和改進RNN
TAG:唯物 |
※深度神經網路是如何成為圖像大師的?
※如何讓你的深度神經網路跑得更快
※誰來治好AI幻覺?面對眾多對抗樣本攻擊,深度神經網路該何去何從
※為什麼讀不下去《紅樓夢》 正視媒介變革重建深度閱讀
※誰來治好AI的「幻覺」?面對眾多對抗樣本攻擊,深度神經網路該何去何從
※深度學習還是之前的神經網路嗎?
※面嚮應用的深度神經網路圖說
※深度丨日本這些奇葩神社也太「不正經」了!
※如何贏得長情地產?好好消化這篇全球地產泡沫史記深度
※影響堪比登月!谷歌等探索深度學習新理論藍圖,讓神經網路更深更窄
※深度解讀:如果太陽再也不下山了會怎樣?
※深度學習角度 | 圖像識別將何去何從?
※腦洞不保!日本深度神經網路演算法重建人腦中圖像
※如何利用深度神經網路預防惡意軟體
※橘右京深度教學,教你如何風箏對手!
※深度開髖,沒你想像那麼難!
※鐵路光纜埋設深度應如何進行要求?
※重磅!鋰電龍頭深度解讀!
※(深度秘密)教你如何讓自己的衣服比香水還好聞?
※抱怨會帶來災難!深度好文