本篇論文:Underexposed Photo Enhancement using Deep Illumination Estimation來自CVPR2019,騰訊優圖實驗室投遞,算是在近來low-light images enhancement中較為知名的論文了。
搞笑的是,團隊已經解散了 - -…,深圳的優圖
摘要
不像之前的工作那樣直接學習圖像到圖像的映射,本論文網絡中引入中間照明來将輸入與預期的增強結果相關聯,這增強了網絡從專家修飾的輸入/輸出圖像對中學習複雜照片調整的能力。在此模型的基礎上,構造了一個對光照采用限制和先驗的損失函數,準備了一個包含3000個曝光不足圖像對的新資料集,并對網絡進行訓練,使其能夠有效地學習針對不同光照條件的豐富的各種調整。
Introduction
論文方法結果與iPhone和lightroom上的自動增強結果的對比。

論文的三個主要貢獻:
- 提出了一種通過估計圖像到光照的映射 (有點類似retinex理論中的illumination map) 來增強曝光不足照片的網絡,并基于各種光照限制和先驗知識設計了新的損失函數,能有效地保持對比度、飽和度
- 使用了包含3000張暗光圖像的資料集,每張都有一個經過專家潤色過的參考版本。·
- 利用現有資料集和新的資料集進行了評估,并從定性和定量兩個方面論證了我們的方法的優越性。
Methodology
Image Enhancement Model
I ~ \widetilde{I} I
是期望的正常曝光圖檔,I是原始輸入暗光圖像,F為希望尋找到的映射函數。在retinex相關論文中,F函數的逆常S認為可以作為illumination map,可以得出這樣的公式:
即把S作為retinex中的illumination map,把 I ~ \widetilde{I} I
作為retinex中的reflectance map
retinex理論即一張圖像可以分解為光照分量illumination map和反射分量reflectance map,部落客自己以後應該也會出一篇文章介紹retinex相關方法。
是以,作者假設,假如我們已知S,那麼可以得到下面的公式,來得出經過增強的圖檔:
不像其他文章,本論文的S是包含了RGB三個通道的資訊而不是單個通道的資訊,可以在顔色增強方面得到更好的品質。作者稱,使用中間光照的優點是其具有較為簡單的形式,而且具有已知的先驗,能夠使網絡具有更強的泛化能力,以适應不同的光照條件。
結構介紹
原始圖像經過down-sampling下采樣得到低分辨率的圖像,再經過編碼器網絡(預訓練的VGG16),通過local feature extractor和global feature extractor得到低分辨率下的illumination prediction,再經過上采樣,得到原始分辨率的illumination map,即S。
因為網絡多在低分辨率的圖像下進行工作,是以速度很快。但是網絡作者并沒有介紹多少,就告知了使用VGG16的編碼器,其中local extractor包含兩個卷積層,global extractor包含兩個卷積層和三個全連接配接。
得到S之後,根據公式:
就可以得到期望的正常曝光圖檔。整個網絡就建立在這個公式上。
資料集
作者建立了一組3000張圖檔的資料集,包含了各種各樣的場景和曝光條件,2750張作為訓練集,250張作為測試集。并且提出沒有使用MIT-Adobe FiveK資料集作為訓練集的原因,一是此資料集是針對通用圖像進行增強并不是暗光圖像,暗光圖檔占比較少(about 4%);二是資料集的光照場景不豐富。是以作者用索尼和佳能相機拍攝圖像,并且在flicker網站收集了keywords為 “under-exposed”, “low-light”, and “backlit”大約15%的圖像組成了資料集。
Loss Function
總loss:
其中Lr、Ls和Lc分别為reconstruction loss、smooth loss和color loss,權重分别為1、2和1。
1.reconstruction loss
使用L2 loss,換句話說就是計算增強後的圖像與原圖像的差異,其中要注意的是S的取值範圍 !!!!:
這裡取S下界為 I,是為了保證在公式 F(I)=S-1*I 中,增強結果F(I)大于1,大于1意思是一定比原圖I更亮;而S上界為1的原因是不會讓增強圖像黑的地方更黑,也就是反向提亮,因為F(I)=S-1*I,這裡用的是S的倒數,如果S大于1,則乘以小于1的數是以會反向提亮(變暗)。
2.smooth loss
smooth loss的提出是因為根據先驗知識,在自然圖像中照明通常是局部平滑的,作者稱,使用smooth loss可以增強網絡泛化能力,提高圖像的對比度。具體假設q和p為圖像中相鄰的像素,又有相似的照明值,而且S-1是大于1的,有:
來使得對比度加強。下面是smooth loss:
∂ \partial ∂ 代表偏導數,這裡有垂直和水準的偏導數, ω \omega ω 是空間不同(每通道)的smoothness 權重:
其中,L為原始圖像的對數; θ \theta θ 是控制圖像對梯度敏感程度的參數(鑒定圖像照明是否連續),這裡為1.2; ϵ \epsilon ϵ 設定為0.0001,防止除數為零。
作者稱,smooth loss使照明在具有小梯度的像素上是平滑的,而在具有大梯度的像素上是不連續的,對于曝光不足的照片,圖像内容和細節往往較弱,照明不一緻會導緻大的梯度。
3.Color Loss
針對于顔色恢複設計的loss,将RGB三通道看做三維向量,計算增強圖像與ground truth之間的餘弦距離:
作者稱,因為在reconstruction loss中已經有了L2 loss,但是L2 loss隻是數值上測量色差,不能保證顔色向量的方向是相同的,可能導緻顔色mismatch,是以使用了夾角的loss。
4.關于loss的消融實驗
實驗證明了使用reconstruction loss可以恢複更多的細節;添加smooth loss增強了對比度,使用color loss讓增強圖像和專家修飾過的圖像更加一緻,顔色相比更加豔麗自然。
Experimental Results
關于資料集,作者在自己的資料集上進行了訓練和測試;同時在MIT-ADOBE FiveK資料集上選取了5000張raw原始圖像,這些都有被五個不同的專家潤色過的,但是這裡選擇的是C專家,同時用4500張作為訓練集,500張作為測試集。
下圖是論文方法和SOTA方法的結果對比:
通過使用者調查,作者針對這幾個名額,對比各個方法的視覺效果:細節是否容易被感覺、顔色是否生動、結果是否真實、結果是否過曝、比原圖更好看嗎和總體評價。
作者還使用了PSNR和SSIM作為名額,進行了定量定性的比較,對比了其他方法,還對loss的消融實驗做了對比:
同時作者還提出了論文方法的兩個limitation,那就是不能增強極暗區域和去噪能力堪憂。
部落客總結
- 本論文通過估計中間光照圖(類retinex理論)來進行暗光增強,網絡結構上比較簡單清晰易懂,最重要的就是估算光照圖S的流程和設計了不同用處的loss
- reconstruction loss通過計算距離來恢複細節;smooth loss增強對比度,此loss即作者稱的局部光滑限制;color loss增強顔色,達到和專家潤色的圖像相同的色彩生動程度
- 訓練測試為paired的資料(專家潤色作為ground truth),且作者好像一直沒有公布其資料集- -…,雖然作者稱使用中間光照可以加先驗來增加泛化性,但是論文也沒有展示針對自然圖像進行測試,部落客對論文方法的現實泛化能力表示質疑。關于泛化性,使用無監督的GAN技術會得到更好的泛化性能,在我已釋出的博文中也有一篇使用了這種方法:EnlightenGAN:Deep Light Enhancement without Paired Supervision。
- 關于去噪,作者是在limitation中提出,同時指出網絡下一步優化就是去噪能力,但是鑒于深圳優圖都解散了,應該是沒法優化了。也有其他的網絡,考慮了去噪能力,并且通過注意力圖針對性地去噪,就在我已釋出的博文Attention-guided Low-light Image Enhancement。