1. 程式人生 > >基於深度神經網路的霧天退化場景影象可見性增強——Farhan Hussain and Jechang Jeong

基於深度神經網路的霧天退化場景影象可見性增強——Farhan Hussain and Jechang Jeong

Visibility Enhancement of Scene Images Degraded by Foggy Weather Conditions with Deep Neural Networks

摘要

如今,許多基於攝像頭的高階駕駛員輔助系統( ADAS )已經被引入來幫助駕駛員,並確保他們在各種駕駛條件下的安全。駕駛員面臨的一個問題是霧天駕駛時場景能見度下降,對比度降低。在本文,我們提出了一種新的方法,通過使用深度神經網路來解決這個問題。假設影象中的霧可以通過未知的複雜函式進行數學建模,並且利用深度神經網路來近似這個數學模型。我們技術的優點如下:(1)它是實時操作的;(2)基於最小輸入,即單個影象,並且對各種看不見的影象資料表現出魯棒性/泛化。在各種合成影象上進行的實驗表明,我們提出的技術能夠合理地逼近相應的霧函式,並去除它,以獲得更好的可視性和安全性。

簡介

霧天能見度下降,亮度不足,對司機的安全造成嚴重威脅。這些情況增加了車輛碰撞的危險,是大霧籠罩的道路上傷亡的主要原因。霧滴懸浮在霧中會導致光線的阻擋和散射。這導致到達駕駛員眼睛的光線減少,對比度降低,因此能見度降低(圖1)。增強惡劣天氣中的能見度是研究人員非常感興趣的領域。已經進行了各種研究來觀察和模擬各種天氣條件對視覺系統的影響。[ 1 - 4 ]的作者展示了這樣的天氣模型。他們分析各種天氣條件如何影響場景。這些研究試圖在這些天氣模型的幫助下恢復因惡劣天氣條件而退化的影象中場景的各種屬性。一些研究,例如[ 5 - 6 ],建議使用偏振濾光器從影象中去除薄霧的影響。為了實現[ 5 - 6 ]中描述的技術,需要兩個或更多獨立的影象來符合空氣光在其中產生一些可測量的部分偏振的條件。[ 7 ]提出了天氣消除演算法利用了單一影象和使用者提供的一些補充資訊。[ 8 ]提出了基於照片的地理註冊的深度照片系統。這種地理註冊允許訪問大量地理資訊系統( GIS )資料,例如城市、建築物、地形和結構的3D模型;紋理模型;和深度圖。這項研究的作者建議用簡單照片來增加這些資訊,以實現各種操作,如去霧、重新照明、檢視合成和擴大視野。[ 9–12 ]中提出了完全依賴單一影象的去霧/去霧解決方案。[ 9 ]中的單個影象可見性增強方法基於對有或沒有天氣影響的影象的某些觀察來開發優化的代價函式。該代價函式試圖估計應用於場景以增強可視性的空氣光的直接衰減。在[ 10 ]中,提出用於單個影象去霧的暗通道先驗法( DCP )。這個方法根據對戶外無霧影象的一些統計觀察,與有霧影象模型相結合以恢復無霾影象。[ 11 ]的作者提出了另一種基於[ 10 ]的單一影象去霧方法。他們通過引入單箇中值濾波操作來改進DCP方法,從而改善去霧效能。他們還研究去霧對影象和視訊編碼的影響。在[ 12 ]通過考慮表面陰影的場景傳輸模型來定義影象,提出了從單一影象中恢復有霧的場景。在[ 13 ]中介紹了基於視覺的車輛檢測方法的智慧駕駛員輔助系統概述。最後,在[ 14,15 ]中,作者提出了考慮霧效應的增強可見性演算法,特別適用於道路影象。

(a)無霧情況下場景能見度  (b)霧天場景能見度

在本文中,我們提出了一種新的方法來提高霧天場景的可見性。我們的目標是通過使用深層神經網路[ 16 ]生成場景中霧成分的近似模型來增強能見度。然後,這個廣義模型被用於恢復影象中的場景質量。我們提出的方法實時執行影象場景的恢復,並且不需要任何附加資訊。該方法對大量霧天看不見的影象具有良好的魯棒性。

深度神經網路去霧

人工神經網路

人工神經網路[ 17–19 ]是計算機模擬生物神經系統工作的複雜的數學系統。這些網路由大量簡單的被稱為人工神經元的計算單元組成。網路中人工神經元的數量可以從幾百個到幾千個不等。一個神經網路是通過在不同的拓撲中連線成百上千個人工神經元而形成的。圖2中示出了一個這樣的互連網路。正是通過簡單計算元素的這種互連,實現了神經網路的高計算複雜度。目前正在研究人工神經網路來解決各種問題,例如函式逼近、迴歸分析、時間序列預測、分類、模式識別、優化、決策、資料處理、過濾以及聚類和分類等。極高的CPU處理能力的優勢使得為神經網路實現更深層的結構[ 16,20 ]成為可能,因此可以實現更復雜的數學模型。深層神經網路在輸入層和輸出層之間有許多隱藏的神經元層。

去霧處理的深度神經網路模型

用於能見度增強的深度神經網路

我們提出了一種深度神經網路,它接受有霧影象作為輸入,模擬場景中相應的霧狀成分,併產生去霧影象作為輸出。圖2顯示了用於影象去霧的深層神經網路的結構。網路由一個輸入層、一個輸出層和夾在兩者之間的若干個隱藏層組成。深層神經網路的多個隱藏層有利於實現相應霧函式的更有效表示。學習問題包括尋找權重的最佳組合,以便網路函式 ?儘可能接近給定函式?。網路通過一些隱含的例子來學習這個給定的函式?。在本文中,深度神經網路通過在幾幅霧天影象及其對應的原始影象(輸入-輸出對)上訓練來解決能見度增強問題。為了學習廣義霧函式併產生相應的去霧影象,霧影象被分成大小為 ? × ?畫素的不重疊塊。每個塊被歸一化到優化DNN的學習和結果的範圍。為一維向量輸入定製DNN;因此,通過光柵化將二維塊轉換成一維向量? 。這些向量? 作為網路的輸入模式呈現。隨機初始化DNN的thight,輸入模式通過DNN的多個隱藏層向前傳播,以生成傳播輸出啟用。我們的DNN中使用的啟用函式是雙曲正切傳遞函式,由下式給出: 在這裡插入圖片描述 正切雙曲函式產生-1到+ 1閉合範圍內的縮放輸出。這個函式具有sigmoid函式的許多特性,但是因為這個正切函式的輸出空間更寬,所以更抽象地建模複雜的非線性關係可能會更有效。該輸入模型?產生不同於目標輸出(原始影象)的輸出。網路的誤差函式是網路所有隱藏節點造成的誤差的組合,給出如下: 在這裡插入圖片描述 最小化誤差函式的權重組合被認為是學習的解決方案。在本文中,這一最佳權重集是通過反向傳播演算法實現的。反向傳播是一種迭代梯度下降演算法,在該演算法中,輸出誤差訊號從輸出層立即向後傳輸到隱藏層中對輸出層有貢獻的每個節點。這種反向傳播逐層繼續,直到網路中的每個節點都接收到一個誤差訊號,該訊號描述了它對整體誤差的相對貢獻。一旦確定了每個節點的誤差訊號,這些誤差就被節點用來更新網路權重的值。誤差的這種反向傳播和權重的更新一直持續到誤差函式值變得足夠小。網路訓練停止,新的輸入模式呈現給網路。訓練有素的網路可以近似和消除這些輸入模式中的霧,以獲得更好的可視性。可見性增強DNN的流程圖如圖3所示。

在這裡插入圖片描述

實驗結果

對從FRIDA資料庫[ 14 ]獲得的影象進行了實驗。FRIDA資料庫包括有霧和無霧的合成影象集。此次實驗對灰度影象進行了評價。每個影象的大小為640×480。影象資料集分為訓練集影象和測試集影象。用於去霧的深度神經網路的學習由訓練集進行。訓練了基於不同數量的隱藏節點( 16到128 )的多個隱藏層( 5到8 )架構。基於均方誤差( MSE )檢驗網路的收斂性。一旦網路學習了廣義霧函式,結果就應用於測試影象。出於評估目的,我們在圖4 - 10中顯示了結果。在這些圖中,感興趣的區域用矩形封閉。可以通過分析這些區域來評估提議的解決方案。圖4 ( a )顯示了無霧影象中的原始場景,而圖4 ( b )顯示了受霧影響的場景。可以清楚地看到,圖4 ( b )中的背景已經褪色,並且大部分是不可見的。圖4 ( a )中矩形包圍的樹在圖4 ( b )中幾乎看不見。在圖4 ( a )中可見的建築(正面)的大部分在圖4 ( b )中完全不可見。另外,在圖4 ( b )中,封閉在圖4 ( a )的矩形中的建築的其他部分是不可見的。圖4 ( c )顯示了用我們的深度神經網路恢復的場景。霧天版本中不可見的建築在去霧版本中被修復。樹是可見的,圖中矩形包圍的其他區域有一部分被網路恢復。

(a)原始影象 (b)有霧影象 (c)復原影象

圖5 ( a )和5 ( b )分別顯示了原始場景和有霧場景。在圖5 ( a )的原始場景中建築的前部是清晰可見的,但在有霧的場景中褪色,而它後面的建築在圖5 ( b )的場景中不可見。有霧影象中,較小的棕櫚樹也是看不見的。有霧影象中左側的房子和樹木幾乎看不見,交通標誌和一些小型建築也消失了。在圖5 ( c )中,深度神經網路去除了霧。在復原影象中,褪色的正面建築可以看見了。在我們復原的場景中,可以清晰地看到以前看不到前面建築後面的建築,較小的棕櫚樹是可見的,影象左側的房子和樹也成功復原。由於大霧而看不見的交通標誌和小型建築在某種程度上也在去霧影象中得以恢復。

(a)原始影象 (b)有霧影象 (c)復原影象

圖6 ( a )顯示了原始場景,而圖6 ( b )顯示了由於霧導致能見度下降的影象。圖6 ( b )中幾乎看不到圖6 ( a )左側矩形中的樹木。原始影象中矩形包圍的汽車在降級影象中是不可見的。此外,圖6 ( a )中矩形封閉的結構/建築物在降級版本中是不可見的。圖6 ( c )中展示了具有增強可視性的相同場景。可以看到,霧天影象中幾乎看不見的樹木已經被恢復。以前看不見的汽車可以在復原的影象中被發現。我們的DNN還成功地恢復了霧天影象中缺失的結構/建築物。

(a)原始影象 (b)有霧影象 (c)復原影象

圖7 ( a )顯示了沒有霧的原始場景影象,圖7 ( b )顯示出由於霧導致能見度降低的場景影象。從影象的左側開始,原始影象中可見的樹在退化影象中幾乎不可見。在退化的影象中,房子及其附近的樹是不可見的。退化影象中也缺少棕櫚樹。在有霧影象中中,柱子、樹和右邊建築的後方景象嚴重退化到不可見。圖7 ( c )顯示由DNN恢復的場景影象。從左手邊開始,在增強版中恢復了幾乎看不見的樹。在恢復影象中,房子和鄰近的樹也被恢復,雖然細節缺失,但是結構是可見的。先前不可見的棕櫚樹出現在復原的場景中。柱子、樹和建築物的後部景象也被修復,並且在再現的影象中清晰可見。

(a)原始影象 (b)有霧影象 (c)復原影象

圖8 ( a )、8 ( b )和8 ( c )顯示了原始影象、受霧天影響的影象以及我們的DNN恢復的影象。與圖8 ( a )相比,在圖8 ( b )中,包圍在矩形框中的背景,即建築物、房屋、樹木、植被和汽車幾乎看不見或看不 見,而在圖8 ( c )中,我們的DNN成功地恢復了上述區域。

(a)原始影象 (b)有霧影象 (c)復原影象

圖9 ( a )和9 ( b )分別表示原始影象及其有霧版本。圖9 ( a )左側車道盡頭的房子在圖9 ( b )中幾乎看不見。電線杆和交通訊號也是看不見的。由於大霧,右邊的建築物已經褪色,後面的樹木也看不見了。現場的汽車幾乎看不見。在我們恢復的影象中,即圖9 ( c ),場景的可見性增強了。車道盡頭的房子現在相當明顯。電線杆和交通訊號從有霧版本中恢復過來。右側建築的可見性有所提高,其背後的樹木現在可見。復原影象中的汽車比有霧版本更容易被發現。

(a)原始影象 (b)有霧影象 (c)復原影象

圖10 ( a )表示沒有霧的原始場景。圖10 ( b )表示因霧而退化的影象場景。右邊的建築由於大霧而褪色,幾乎看不見。右邊大樓後面的樹是看不見的。有霧影象中看不到交通標誌,有霧影象左側也缺少一大片建築物和棕櫚樹。在圖10 ( c )中,即由DNN再現的場景中,影象右側幾乎不可見的建築基本上是可見的。後面的樹也恢復了。交通標誌在再現的影象中也是可見的。我們的DNN也成功地修復了建築物的後部和左側的樹。

(a)原始影象 (b)有霧影象 (c)復原影象

結論

本文提出了一種藉助深度神經網路恢復霧天影象可見性的新方法。這個想法是用深度神經網路對場景恢復的霧函式建模的初步嘗試。該方法簡單地通過單個影象輸入恢復場景結構,實時操作,並且具有良好的泛化能力。恢復的影象顯示了良好的恢復性。在一些影象中,所提出的技術在再現場景中某些物體的精確細節方面顯示出侷限性,但是,它們是相當可識別的。這種方法可以定製成用於為駕駛輔助系統、智慧車輛系統、室外監控系統等設計的應用中。在未來的工作中,我們將使用這個想法來開發基於深度神經網路的更先進的天氣消除視覺系統框架。

利益衝突

作者宣稱,發表這篇論文沒有利益衝突。

致謝

這項研究得到了大韓民國科學、信通技術和未來規劃部的支援,在資訊通訊和廣播技術發展專案下,由資訊和通訊技術促進研究所監督( IITP 2015 - B0101 - 15 - 1377 )。