天天看點

低光圖像增強學習

引自:https://zhuanlan.zhihu.com/p/81495191

背景

圖像在較低的光照下拍攝往往存在亮度低、對比度差等問題,進而影響一些high-level任務,是以低光照圖像增強的研究具有很強的現實意義。現有的方法主要分為兩類,基于直方圖均衡的方法和基于Retinex理論的方法。基于HE的方法主要是擴大圖像的動态範圍進而增強整幅圖像的對比度,是一個全局的過程,沒有考慮亮度的變換,可能會導緻過度增強。基于Retinex的方法的關鍵是估計illumination map,是手工調整的,依賴于參數選擇,此外這種方法不考慮去除噪聲,甚至會放大噪聲。現有的基于深度學習的方法沒有顯式地包含去噪過程甚至依賴于傳統的去噪方法,取得的效果不是很好。 論文介紹

MSR-net Low-light Image Enhancement Using Deep Convolutional Network (arxiv17

這是第一篇将CNN與Retinex理論結合起來的論文,提出了一個多尺度Retinex卷積網絡,端到端的實作低光照圖像增強,屬于有監督學習,即輸入為一張暗的圖像,輸出為亮圖。 本文的最大創新點在于其認為多尺度的Retinex理論等價于一個不同高斯卷積核組成的回報卷積神經網絡,可以寫成如下形式:

低光圖像增強學習

網絡結構由三部分組成,分别為多尺度的對數變換,差分卷積和色彩複原函數,如下:

低光圖像增強學習

目标函數為:

低光圖像增強學習

所用的資料集為真是世界的低光照圖像,MEF dataset, NPE dataset和VV dataset。評價名額包括SSIM/NIQE/ Discrete Entropy/ Angular error。對比的方法有Fast efficient algorithm for enhancement of low lighting video/A weighted variational model for simultaneous reflectance and illumination estimation/ Low-light image enhancement via illumination map estimation/A multi-scale retinex for bridging the gap between color images and the human observation of scenes. 部分結果如下:

低光圖像增強學習

總的來說,這篇論文将Retinex理論運用到CNN中,想法上比較創新,但網絡結構中高斯差分卷積跟普通的卷積有什麼差別沒有說明,以及兩個特征做差,感覺挺奇怪的,對比的方法中有兩篇也比較老,文中還提到因為感受野的問題,對大的平滑區域會存在halo效應。

Mbllen Low-light image video Enhancement Using CNNs(BWVC18) 現有的方法往往依賴于對像素統計或視覺機制的某些假設,使其不能應用于真實場景,此外,黑暗區域往往存在很多僞影和噪聲,為了解決上述問題,本文提出了一個多分支的低光照圖像增強網絡,包含特征提取子產品(FEM):用于提取不同尺度的特征、增強子產品(EM):分别增強多尺度的特征、融合子產品(FM):将多分支的輸出融合,網絡結構如下:

低光圖像增強學習

如圖中第一行所示,FEM包含10個卷積層,每個卷積層使用3x3的卷積核和ReLU, 輸入為一張低光照的彩色圖像,每層的輸出既為下一層輸入,又是EM子網絡的輸入。EM為一個多級子網絡,其輸入為FEM每層的輸出,其輸出為和原低光照相同尺寸的彩色圖像,其網絡結構如圖右側所示,是對稱的卷積和反卷積結構,每個子網絡同時訓練但參數獨立。FM子產品concat所有EM中的輸出結果,然後使用一個1x1的卷積來融合得到一張增強後的彩色圖像。 網絡的loss包括結構資訊、上下文資訊和圖像區域差異。結構損失用于提高圖像的視覺效果,使用SSIM和MS-SSIM,其中對于單個像素p,其SSIM為:

低光圖像增強學習

上下文損失使用VGG19來比較高層語義資訊的相似性,定義如下:

低光圖像增強學習

區域損失用于平衡圖像中低光照和其他區域的增強程度,首先用一種簡單的政策來分離圖像中的低光照區域,這裡選擇40%最黑的像素作為低光照區域的近似,其定義如下:

低光圖像增強學習

本文所用的低光照圖像是基于PASCAL VOC合成的,低光照圖像一般具有兩個特征:亮度低、存在噪聲。是以為了産生低光照圖像,使用随機的gamma變換,其過程表示為:

低光圖像增強學習

再加上峰值為200的泊松噪聲,從VOC資料集中選擇16925張圖像來合成訓練集,56張圖像用于驗證,144張測試圖。 評價名額為PSNR, SSIM, Average Brightness(AB), Visual Information Fidelity(VIF) , Lightness order error(LOE), TMQI。 部分實驗結果如下:

低光圖像增強學習
低光圖像增強學習

本文提出的方法還可以遷移到低光照視訊的增強,這篇論文中提出的多分支增強網絡比較新穎,但資料集使用的自己合成的低光照圖像,會導緻模型的泛化性能比較差。 Attention-guided Low-light Image Enhancement(arxiv19.8) 這是arxiv上比較新的一篇論文,是對上一篇論文的改進。針對傳統的低光照圖像增強在複原亮度和對比度的時候忽略了噪聲的影響,這篇論文提出了一個attention指導的多分支網絡,使用ue-attention map和noise map進行指導,可以同時進行增強和去噪。此外,本文的另一個貢獻是提出了一個低光照圖像仿真技術,建構了一個大規模且成對的低光照圖像資料集用于研究。 資料集介紹:現有的公開的低光照圖像資料集隻有LOL和SID,考慮到這兩個資料集的數量都比較小,本文提出了低光照圖像仿真技術用于構造資料集,先挑選圖像,在進行合成。挑選圖像包含三步:暗度估計、模糊估計和色彩估計。為了保證資料多樣性,選出97030張圖來建構資料集,随機選擇965張作為測試。本文中使用22656張圖作為訓練集。合成圖像主要考慮低光照圖像的兩個特征:低亮度和噪聲,其數學表達分别為 :

低光圖像增強學習
低光圖像增強學習

此外,作者發現直接使用原資料集中高品質的圖像作為GT來訓練得到的結果往往對比度比較低,是以文中又對圖像進行對比度放大來得到第二步增強時的GT,具體細節看原文。 本文提出的網絡結構包含四個子網絡: Attention-Net, Noise-Net, Enhancement-Net和Reinforce-Net,如圖所示:

低光圖像增強學習

Attention-Net:采用U-Net結構,指導Enhancement-Net正确增強低曝光區域,避免對正常曝光區域過度增強,輸出為ue-attention map表明區域的低曝光水準,原圖的照度越高則map的值越小,範圍為[0,1],定義如下:

低光圖像增強學習

Noise-Net:噪聲分布與曝光度分布息息相關,是以使用ue-attention map來獲得noise map,網絡使用膨脹卷積擴大感受野,指導噪聲估計。 Enhancement-Net:出發點是将增強問題分解為多個子問題(如去除噪聲、保留紋理、色彩矯正等)通過多分支融合來産生最終輸出,其核心包括特征提取子產品(FEM)、增強子產品(EM)和融合子產品(FM)。其中EM子產品包含五種不同的結構,EM-1是具有較大卷積核的卷積和反卷積,EM-2和EM-3是U-Net結構,差别是skip connection的方式和feature map的大小,EM-4是Res-Net去除了BN減少了block的數量來減少參數,EM-5由膨脹卷積組成,其輸出與輸入大小相同。 Reinforce-Net:為了克服低對比度的缺點,提高圖像細節。 Loss函數由這四個子網絡的權重和得到,考慮結構資訊、感覺資訊和圖像的區域差異。Attention-Net的loss為正确的attention map與預測的L2誤差;

低光圖像增強學習

noise-Net的loss為期望的noise map與預測的L1誤差,這裡有個疑問就是期望的noise map是怎麼得到的沒有提及;

低光圖像增強學習

Enhancement-Net的loss包含四部分,亮度損失(使得增強後的圖像擁有充足的亮度)、結構損失(保留圖像結構,避免模糊)、感覺損失(利用高層語義資訊提高視覺品質)和區域損失(用于平衡不同區域的增強程度)的權重和。

低光圖像增強學習
低光圖像增強學習
低光圖像增強學習
低光圖像增強學習

Reinforce-Net的loss與Enhancement-Net相似,包括亮度、結構和感覺損失這三部分的權重和。 評價名額:PSNR, SSIM ,AB , VIF , LOE , TMQI 和LPIPS,還有問卷調查。部分實驗結果如下:

低光圖像增強學習
低光圖像增強學習

本文提出的方法在合成資料和真實低光照圖像上都得到了比較好的視覺效果,用該方法作為語義分割和目辨別别的預處理能明顯提升效果。但也存在一些問題,對于一些原本就沒有紋理輪廓的難以恢複其細節;由于圖像壓縮也會導緻結果存在棋盤效應;有嚴重噪聲的圖像或不可見圖像,比如紅外圖像等很難産生滿意的結果。文章最大的創新是兩個attention map的指導,但沒有給出真實noise map的計算方式。 Kindling the Darkness:A Practical Low-light Image Enhancer(arxiv19.5) 本文的主要貢獻主要有三點:1.基于Retinex将圖像分解為亮度和反射部分,将原空間解耦到兩個更小的子空間,友善訓練;2.亮度部分用于靈活地調整光照/亮度;反射部分用于處理噪聲、顔色畸變等退化現象;3. 網絡沒有使用GT,隻是使用一對不同光照程度的圖像,在不同曝光條件下的資料集LOL達到了state-of-art的結果。其網絡結構如下:

低光圖像增強學習

Loss的設計感覺跟Retinex有部分相似,但總體不太一樣,具體看原文,貼出部分實驗結果:

低光圖像增強學習
低光圖像增強學習

EnlightenGAN Deep Light Enhancement without Paired Supervision(arxiv19)Underexposed Photo Enhancement Using Deep Illumination Estimation(CVPR2019) 看了有段時間忘記了,待續 Low-Light Image Enhancement via a Deep Hybrid Network(TIP2019) 這是TOG2019年的一篇論文,感覺創新點還是比較多的,第一,提出了一種深度混合網絡來增強低光照圖像,該網絡包含兩個部分,一部分為内容stream,用于預測輸入圖像的場景資訊,另一部分為邊緣stream,用于學習邊緣細節。第二,提出了一種空間變體RNN結構,引入兩個權重map作為輸入特征和RNN的隐含層狀态,這個RNN用于擷取圖像内部結構,如邊緣等。第三,由于在增強圖像細節時可能會使噪聲放大,因為在訓練集中加入高斯噪聲,可以有效抑制測試圖像上的噪聲。此外,這個混合網絡采用感覺損失和判别損失,可以生成視覺效果較好的增強圖像。 網絡結構如下:

低光圖像增強學習

該模型包含兩個分支,上面是一個殘差的encoder-decoder結構用于估計場景資訊,前兩個卷積層為膨脹卷積用于擴大感受野,edge stream中反卷積子產品的特征在上采樣過程中concat起來。Encoder和decoder各有三個卷積子產品,每個包含一些卷積層,ReLU和skip links,是一個先下采樣再上采樣的過程。 Edge stream通過一個空間變體(spatially variant)的RNNs來預測圖像的靜态邊緣(spatially variant),該網絡的輸入為低光照圖像及其梯度,具體結構如下:

低光圖像增強學習

從圖中,可以看出深度CNN結構用于擷取兩個權重map g和p,上半部分對輸入圖像采用下采樣卷積獲得多尺度的特征x,大小分别為{1,1/2,1/4,1/8},再将他們resize到與x一樣大,然後concatenate起來作為RNN的輸入,隐含層的計算公式為:

低光圖像增強學習

從4個方向分别掃描圖像,可以生成四個隐含的activation maps來學習不同的邊緣相關特征。然後根據各個方向的最大響應選出最優方向,采用node-wise max pooling對每個位置選擇每個四個方向中的最大值作為靜态邊緣資訊。 得到邊緣特征和内容特征後,concatenate起來,經過兩個額外的卷積層就可以得到增強後的圖像,除了計算基本的MSE loss之外,還引入了感覺損失VGG16和判别損失,計算公式如下:

低光圖像增強學習
低光圖像增強學習
低光圖像增強學習
低光圖像增強學習

總的損失如下:

低光圖像增強學習

判别網絡如下:

低光圖像增強學習

本文中用到的訓練集是從MIT-Adobe Five5K,從中挑選了336對低光照圖像。測試時對十張圖像用伽馬變換做了暗處理,并加了1%的高斯噪聲,結果如下:

低光圖像增強學習

可視化結果如下:

低光圖像增強學習

總的來說,這篇論文提出了一個混合模型,内容層用于增強低亮度輸入圖像的可見性并學習對場景内容的整體估計;邊緣網絡用改進的空間變體RNN從其輸入和梯度中學習邊緣資訊,将兩者結合起來能獲得高品質的增強圖像。但感覺這個網絡比較難訓練,而且用CNN擷取的權重文中也沒有詳細說明,實作起來可能會比較困難。 一些不是特别出名但可參考的網絡結構 Dual Autoencoder Network for Retinex-Based Low-Light Image Enhancement(IEEE Access17) 提出了基于Retinex的對偶自編碼網絡用于低光照圖像增強并結合卷積自編碼網絡進行去噪,首先估計空間平滑的照度部分,然後計算反射部分,并用卷積自編碼去除噪聲。

低光圖像增強學習

Deep Refinement Network for Natural Low-Light Image Enhancement in Symmetric Pathways(Symmetry) 本文針對自然低光圖像的特點,提出了一個深度的精細網絡LL-RefineNet的圖像增強算法,在合成的黑暗圖像上訓練,同時在自然圖像和合成圖像上進行測試,都取得了較好的結果。該網絡利用了下采樣路徑的所有有用資訊,産生了高分辨率的增強結果,利用前幾層卷積生成的局部特征,逐漸細化從更深層次獲得的全局特征。

低光圖像增強學習

LLCNN: A convolutional neural network for low-light image enhancement(VCIP17) 這篇文章比較簡單,一個淺層的CNN網絡端到端地學習低光照圖像和GT之間的映射關系,訓練資料使用的模拟不同的gamma變換得到的,對比的多是一些傳統的方法和LLNet。網絡結構和VDSR比較相似,如下:

低光圖像增強學習
低光圖像增強學習