【论文笔记】—低光图像增强—Zero-reference—ZeroDCE—2020-CVPR
原文鏈接:Zero-Reference Deep Curve Estimation for Low-Light Image Enhancement_與光i的博客-CSDN博客
【論文介紹】
zero reference (無監督,需要訓練,但不需要 paired/unpaired data)
【題目】:Zero-Reference Deep Curve Estimation for Low-Light Image Enhancement【DOI】:10.1109/CVPR42600.2020.00185【時間】:2020-01-19上傳于arXiv 【會議】:2020-CVPR 【作者】:Chunle Guo(天津大學), Chongyi Li(天津大學), Jichang Guo, Chen Change Loy, Junhui Hou, Sam Kwong, Runmin Cong【paper】:https://arxiv.org/abs/2001.06826 【project】:https://li-chongyi.github.io/Proj_Zero-DCE.html 【code_Pytorch】:https://github.com/Li-Chongyi/Zero-DCE 【code_TensorFlow】:https://github.com/tuvovan/Zero_DCE_TF【提出問題】
低光增強數據驅動的方法主要有:CNN-based 和 GAN-based。
【解決方案】
該文章提出了一種 light-weight deep network 的方法用于解決 Low-Light 圖像增強問題。它將這個任務轉換為了一個 image-specific 曲線估計問題(圖像作為輸入,曲線作為輸出),這類曲線對在輸入的動態范圍內進行像素級調整,從而獲得增強圖像。作者通過設置一系列 non-reference 的損失函數(可以間接反映增強質量),使得網絡在沒有任何參考圖像的情況下能夠進行 end-to-end 訓練。
【創新點】
這歸功于:zero reference learning framework + lightweight network structure + effective non-reference loss functions。
【網絡結構】
學習一組 best-fitting 的增強曲線,框架迭代應用Curve,對輸入圖像的RGB通道中所有像素進行映射,從而獲得最后的增強圖像。
Light-Enhancement Curve 光增強曲線:
作者嘗試設計一類能夠將low-light圖像自動映射到增強圖像的曲線,曲線參數是self-adaptive的,并僅取決于輸入圖像。設計這樣的曲線有三個要求:
為了達到上述的三個要求,作者設計了一個二次曲線,最初簡單版本如等式1:
其中,x為像素坐標,LE(I(x); α)為輸入圖像I(x)的增強結果,α∈[-1,1]為可訓練的曲線參數(修改曲線的大小并控制曝光度)。每個像素都歸一化為[0,1],并且所有操作都是pixel-wise。使用時,在輸入的RGB通道分別應用LE-Curve,這可以更好地保持固有顏色以及避免過擬合。
在不同的α參數設置下,圖像如上圖2(b)所示,可以看到設計的曲線可以很好地滿足上述的三個要求。此外,LE-Curve還能增加/減少輸入圖像的動態范圍,這樣不僅可以增強low-light區域,還可以避免過度曝光。
Higher-Order Curve 高階曲線:
將“迭代優化”的思路引入到上式(1)定義的 LE-Curve,這就是Higher-Order LE-Curve:
n代表著迭代的次數,作者發現n=8時表現就已經足夠好了。當n為1時,式(2)就退化為了(1)。上圖2(c) 中提供了high-order Curve的示例,可以看到,相比于圖2(b)中的圖像,其具有更強大的調節能力(更大的曲率)。
Pixel-Wise Curve:
等式1和2提到的高階曲線可以在更寬的動態范圍內調整圖像,但由于α應用于所有的像素,所以仍為全局調整,( αn 對于不同位置、不同亮度的像素點來說都是一樣的)。這種全局匹配會導致over-/under- enhance局部區域,因此要將global adjustment細化為local adjustment,作者重新定義α為一個pixel-wise參數(即.輸入圖像的每個像素都有其對應的曲線):
其中,Αn為 parameter map(與輸入圖像維度一致),作者假設局部區域內的像素都具有相同的強度(也具有相同的調整曲線,α一致),因此輸出結果中相鄰像素仍保持單調關系,所以pixel-wise的高階曲線(式3)也滿足設計的3個要求。
圖3為三個通道的估計曲線參數圖的示例,可以看到不同通道的best-fitting parameter maps具有相似的調整趨勢,但值不同,說其可以代表low-light圖像三通道之間的相關性和差異性。曲線的 parameter map 能夠準確地表示不同區域的亮度情況(例如墻上的兩個亮點),因此可以直接通過pixel-wise curve mapping進行圖像增強,如圖3(e)所示,明亮區域保留,黑暗區域增強。
DCE-Net:
為了學習到輸入圖像與上述best-fitting curve parameter map之間的映射關系,作者使用了Deep Curve Estimation Network (DCE-Net),輸入為low-light圖像,輸出為一組用于高階曲線的pixel-wise curve parameter maps。論文構建的CNN由7個具有對稱結構的卷積層組成(類似于U-Net),前6層的卷積核為(3x3x32,stride=1)然后接一個ReLU層,拋棄了down-sampling和bn層(作者認為這會破壞領域像素間的關系),最后一層卷積通道為24(用于8個迭代輪次的parameter maps),接一個Tanh激活函數。
整個網絡的參數量為79,416,Flops為5.21G(input 為256x256x3)。
【損失函數】
為了使得模型的訓練過程是Zero-reference的,作者提出了一系列non-reference loss用于評估增強圖像的質量。
Spatial Consistency Loss:
Lspa 能夠維持輸入圖像與其增強版本之間的鄰域差異(對比度),從而促進增強后圖像仍能保持空間一致性。
其中,K為局部區域的數量,Ω(i)是以區域i為中心的四個相鄰區域(top, down, left, right),Y和I分別為增強圖像和輸入圖像的局部區域平均強度值。這個局部區域的Size經驗性地設置為4x4,如果為其他Size,loss將會變得穩定下來。
Exposure Control Loss:
為了控制under-/over-曝光的區域,設計了Lexp 來控制曝光程度,其可以衡量局部區域的平均強度與well-exposedness Level E之間的差距。作者遵循現有作法,將E設為RGB顏色空間中的gray leavel,本文實驗中設為0.6(并且作者提到E在[0.4,0.7]之間基本無性能差異)。
其中,M為不重疊的局部區域數量,區域Size為16x16,Y為增強圖像中局部區域的平均像素強度值。
Color Constancy Loss:
根據Gray-World顏色恒等假設,設計了Lcol 用于糾正增強圖像中的潛在色偏,同時也建立了三個調整通道之間的關系。
其中,Jp 代表增強圖像通道p的平均強度,(p, q)代表一對通道。
Illumination Smoothness Loss:
為了保持相鄰像素間的單調關系,在每個curve parameter map A上增加了平滑度損失。
其中,N為迭代次數,▽x,▽y 分別代表水平和垂直方向的梯度操作。
Total Loss:
其中Wcol,WtvA 為Loss的權重(源碼中Exposure control loss前也有權重)。
【數據集】
SICE、NPE、 LIME、 MEF、 DICM、 VV
【實驗結果】
為了充分發揮 Zero-DCE 的寬動態范圍調整能力,訓練集合并了 low-light 和 over-exposed 圖像(Part 1 of SICE數據集,3022張不同曝光程度的圖像,其中2422張圖片用于訓練),圖像尺寸為512x512。
從圖4可以看出,移除Lspa 會導致對比度降低(例如云的區域);移除Lexp 會導致低亮度區域曝光不足;移除Lcol 會出現嚴重的色偏現象;移除LtvA 會降低鄰域間的相關性,從而導致明顯的artifacts。
在多個數據集(NPE LIME MEF DICM VV以及SICE的Part2)上與目前SOAT的方法進行了對比。(其中 f 是無監督的方法)
總結
以上是生活随笔為你收集整理的【论文笔记】—低光图像增强—Zero-reference—ZeroDCE—2020-CVPR的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 小白如何连续两年美赛斩获M奖
- 下一篇: matlab编写LDA,lda算法mat