低亮度圖片增強算法:基于去霧算法的低亮度圖像增強算法

本文介紹一篇基于去霧算法的低亮度圖片增強算法(FAST EFFICIENT ALGORITHM FOR ENHANCEMENT OF LOW LIGHTING VIDEO)。

該論文的作者觀察到反轉(zhuǎn)的低亮度圖片(inverted image)具有與有霧圖片類似的性質(zhì),比如:

  • 在反轉(zhuǎn)的低亮度圖中,天空和遠景部分的RGB通道的像素值非常大
  • 在反轉(zhuǎn)的低亮度圖中,非天空區(qū)域中,在RGB通道中,至少有一個通道的像素值非常低。

以上兩條性質(zhì)是有霧圖片特有的性質(zhì)。
因此,我們可以運用成熟的去霧算法來進行低亮度圖片的增強。

具體地做法如下:

  • hazy image的模型
    R(x)=J(x) t(x)+A(1-t(x))

其中,A是大氣的亮度,R(x)是相機獲取到的圖像亮度,J(x)是原始圖像或場景的亮度。

基于[1] , 我們可以得到:

t(x)=e^{-\beta d(x)}
其中 \beta 是大氣的散射系數(shù),d(x)是像素x的景深。

t(x)=1-\omega \min _{c \in\{r, g, b\}}\left(\min _{y \in \Omega(x)}\left(\frac{R^{c}(y)}{A^{c}}\right)\right)

其中\omega在算法中設(shè)置為0.8,\Omega(x)是中心位于x的一個小區(qū)域,在算法中設(shè)置為9。

為了獲取大氣的亮度,作者選取了圖像中RGB通道中最小值里最大的100個像素,然后選取這些像素中RGB值相加最大的像素值最為A的估計值。

  • 計算J(x)

J(x)=\frac{R(x)-A}{t(x)}+A

這里需要注意,我們需要增強的區(qū)域是位于前景的物體,例如房子、車子等物體,同時需要避免過度增強背景區(qū)域,像天空等。

所以,這里我們需要根據(jù)圖片內(nèi)容的不同,自適應地調(diào)節(jié)t(x),從而重點增強前景的內(nèi)容。因此,這里引入了一個中間變量:

P(x)=\left\{\begin{array}{ll}{2 t(x),} & {0<t(x)<0.5} \\ {1,} & {0.5<t(x)<1}\end{array}\right.

然后,需要恢復的圖片J(x)可由下式計算得到:

J(x)=\frac{R(x)-A}{P(x) t(x)}+A

[]論文還介紹了如何加速視頻的方法,由于不是該博客的研究重點,故而忽略,有興趣的朋友可以查看原文。

低亮度條件下拍攝的圖片
該算法增強后的效果_dong
  • 參考文獻
    [1] Single Image Haze Removal Using Dark Channel Prior
    [2] Fast efficient algorithm for enhancement of low lighting video
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

友情鏈接更多精彩內(nèi)容