Single Image Haze Removal Using Dark Channel Prior翻譯

Introduction

去霧是個很有挑戰性的問題,因為霧依賴于未知的深度信息。這個問題對于輸入只有一幅圖像來說,是不適定的。很多的去霧算法都需要使用多幅圖像或是附加信息。近來,單幅圖像的去霧取得了重大的進展。這些方法都依賴于使用較強的先驗信息或是假設。 Tan 注意到,沒有霧霾的圖像比有霧霾的輸入圖像,具有更高的對比度。他通過最大化輸出圖像的局部對比度來達到去霧的目的。這個結果雖然在視覺上能令人信服,但可能不是有效的。Fattal 通過假設傳輸介質和表面著色是局部不相關的來估計場景的反射率和傳輸介質。這個方法自然合理,能夠產生很好的結果。然而,它對霧霾比較嚴重的圖像不能很好的處理,而且可能會在假設條件不成立的時候失敗。

本文,我們提出一個新穎的先驗知識 dark channel prior 用來處理單幅圖像去霧。dark channel prior 是通過對大量戶外無霧霾圖像的統計得到的。我們發現,在這些圖像中,除去天空區域,大部分局部區域的一些像素(called dark pixels),通常至少有一個顏色通道的亮度很低。而在有霧霾的圖像中,dark pixels 在那個通道的亮度主要是空氣光的貢獻。因此,這些 dark pixels 可以直接提供 the haze transmission 的準確估計。通過融合霧霾圖像模型和軟摳圖插值方法,我們可以復原出一幅高質量的無霧霾圖像,并產生一幅深度圖。

我們的方法是有效的,它可以處理霧霾圖像中遠處的物體。我們并不依賴于傳輸和表面著色的重大差異。處理的結果會包含很少的光暈失真(halo artifacts)。

和其他使用強假設的方法類似,我們的方法也有它的局限性。當場景對象在一個大的局部區域與空氣光有內在相似性,并且沒有影子投在上面的時候,dark channel prior可能會變得無效(例如:雪地或白色的墻)。雖然我們的方法在大部分的戶外霧霾圖像上都工作的很好,但對一些極端的情況并不適用。幸運的是,在這些情況下霧霾很少見了,所以去霧并不重要。

Background

在計算機視覺和計算機圖形學中,廣泛使用的描述霧霾圖像形成的模型如下:\begin{equation}\label{eq:model}{\bf I(x)=J(x)}t{\bf(x)+A}(1-t({\bf x})))\end{equation}其中$${\bf I}$$是觀察到的亮度,$${\bf J}$$是場景的輻射,$${\bf A}$$是全球大氣光(The global atmospheric light)。$$t$$ 是介質傳輸系數,用來描述部分沒有發散,到達相機的光線。去霧的目標是從$${\bf I}$$中復原$${\bf J,A},t$$。對一幅$$N$$像素的彩色圖像$${\bf I}$$ 來說,有$$3N$$個約束和$$4N+3$$個未知數。This makes the problem of haze removal inherently ambiguous.

在$$\eqref{eq:model}$$上式中,等式右邊的第一項$${\bf J(x)}t({\bf x})$$稱為直接衰減,第二項$${\bf A}(1-t({\bf x}))$$ 稱為空氣光。直接衰減描述了場景的輻射和它在介質中的衰減,而空氣光來自于先前的發散光,它導致了場景顏色的偏移。直接衰減是場景輻射的乘性失真,空氣光是加性失真。

如果大氣是同質的,則介質傳輸系數$$t$$可以表示為:\begin{equation}t({\bf x})=e^{-\beta d({\bf x})}\end{equation}其中$$\beta$$是大氣散射系數,$$d$$是場景深度。等式表明,場景的輻射隨著深度呈指數衰減。如果我們能夠復原傳輸系數,那么我們也可以復原未知尺度上的深度。

幾何上來講,霧霾成像方程$$\eqref{eq:model}$$意味著在 RGB 彩色空間,向量$${\bf A,I(x),J(x)}$$共面,而它們的結束點共線。傳輸系數$$t$$是兩個線段的比:
\begin{equation}t({\bf x})=\frac{\Vert {\bf A-I(x)}\Vert}{\Vert {\bf A-J(x)}\Vert}=\frac{A^c-I^c({\bf x})}{A^c-J^c({\bf x})}\end{equation}其中$$c\in \{r,g,b\}$$是顏色通道索引。基于這個模型,Tan 的方法注重于增強圖像的能見度(visibility)。對于傳輸系數$$t$$均勻的一個塊(patch),輸入圖像的能見度(visibility)(梯度的和)因為霧霾的存在而減少了,因為$$t<1$$:\begin{equation}\sum_{{\bf x}}\Vert\bigtriangledown {\bf I(x)}\Vert=t\sum_{{\bf x}}\Vert\bigtriangledown {\bf J(x)}\Vert<\sum_{{\bf x}}\Vert\bigtriangledown {\bf J(x)}\Vert\end{equation}局部塊的傳輸系數$$t$$,通過滿足約束條件$${\bf J(x)}$$的亮度小于$${\bf A}$$的亮度,最大化塊的能見度來估計。用 MRF 模型來進一步規范化結果。該方法能從霧霾圖像中得到細節和結構,但是輸出圖像往往有較大的飽和度值,因為該方法只專注于增強能見度,而不趨向于物理地復原場景的輻射。此外,結果圖像在深度不連續的地方可能包含光暈效應。

Fattal提出的方法是基于獨立成分分析 ICA(Independent Component Analysis)。 首先,假設局部塊的反射率為一個常向量$${\bf R}$$。這樣,在這個塊中的所有向量$${\bf J(x)}$$ 有相同的方向$${\bf R}$$。 其次,通過假設 the surface shading $$\Vert {\bf J(x)}\Vert$$ 和 the transmission $$t({\bf x})$$ 在塊中是獨立的,用 ICA 來估計$${\bf R}$$的方向。最后,由輸入彩色圖像引導的 MRF 模型將這個解決方案推論到整個圖像。該方法基于物理原理,可以產生自然的無霧霾圖像和一幅深度圖。但是,由于統計獨立性假設,該方法要求獨立分量顯著地變化。任何缺乏變化或者低信噪比(濃霧區域)將會使統計數字不可靠。此外,由于統計是基于顏色信息的,所以對于灰度圖像和缺乏顏色信息的濃霧圖像,該方法就變得無效了。

在下一節,我們將提出一個新的先驗信息dark channel prior,直接從戶外霧霾圖像來估計傳輸系數。

Dark Channel Prior

The dark channel prior 是基于以下對戶外無霧霾圖像的觀察:在絕大部分非天空區域,至少有一個顏色通道的像素值很小,接近于$$0$$。相當于該塊的最小亮度強度(intensity) 接近于$$0$$。

形式化的描述這個觀察,我們首先定義暗通道的概念(dark channel)。對于任意圖像$${\bf J}$$,暗通道$$J^{dark}$$ 如下式給出:\begin{equation}J^{dark}({\bf x})=\min_{{\bf y}\in \Omega({\bf x})}\big(\min_{c\in \{r,g,b\}}J^c({\bf y})\big)\end{equation}其中$$J^c$$是$${\bf J}$$的一個顏色通道,$$\Omega({\bf x})$$是對應于$${\bf x}$$的塊。dark channel 是兩個最小值操作的結果:$$\min_{c\in{r,g,b}}$$在每個像素上執行,$$\min_{y\in\Omega({\bf x})}$$是一個最小值濾波器。求最小值的操作是可交換的。

使用 dark channel 的概念,我們的觀察可以描述為,如果$${\bf J}$$是一幅戶外無霧霾圖像,除了天空區域,$${\bf J}$$的暗通道的值很小,接$$0$$:\begin{equation}J^{dark}\to 0\end{equation}我們稱這個觀察為 dark channel prior。暗通道的低亮度主要由于以下三個因素:

  • shadows: the shadows of cars,buildings,and the inside of windows in cityscape images,or the shadows of leaves,trees,and rocks in landscape images;
  • colorful objects or surfaces: any object with low reflectance in any color channel(for example ,green grass/tree/plant,red or yellow flower/leaf,and blue water surface)will result in low values in the dark channel;
  • dark objects or surfaces: dark tree trunks and stones.

戶外圖像通常是色彩鮮艷的,而且有很多陰影,所以 dark channel 真的很dark哦!

由于空氣光的影響,當傳輸系數$$t$$比較低時,霧霾圖像比無霧霾圖像更亮。因此,霧霾圖像的暗通道在濃霧區具有更高的亮度值。視覺上,暗通道的亮度可以看做霧霾厚度的粗略近似。在下一節,我們將會用這個特性來估計傳輸系數和大氣光。

注意到我們忽略了天空區域,因為無霧霾圖像的暗通道在這里也有較高的亮度值。幸運的是,我們可以結合霧霾成像模型和我們的先驗知識來優雅的處理天空區域。這樣就不需要明確地切出天空區域了。

Haze Removal Using Dark Channel Prior

Estimating the Transmission

我們假設大氣光$${\bf A}$$是已知的。關于自動估計$${\bf A}$$的方法會在后面小節給出。我們首先用$${\bf A}$$來正規化霧霾成像方程$$\eqref{eq:model}$$:\begin{equation}\label{eq:normmodel}\frac{I^c({\bf x})}{A^c}=t({\bf x})\frac{J^c({\bf x})}{A^c}+1-t({\bf x})\end{equation}注意,我們對各個通道分別處理。

我們進一步假設傳輸系數在局部塊$$\Omega({\bf x})$$中是個常量,記為$$\widetilde{t}({\bf x})$$。然后,分別在$$\eqref{eq:normmodel}$$兩端計算暗通道。等價于我們在兩端加上最小化操作:\begin{equation}\label{eq:minmodel}\min_{{\bf y}\in\Omega({\bf x})}\big(\min_{c}\frac{I^c({\bf y})}{A^c}\big)=\widetilde{t}({\bf x})\min_{{\bf y}\in\Omega({\bf x})}\big(\min_{c}\frac{J^c({\bf y})}{A^c}\big)+1-\widetilde{t}({\bf x})\end{equation}
因為$$\widetilde{t}({\bf x})$$在塊內是常量,所以可以提到最小值操作的外面。

因為場景輻射$${\bf J}$$是無霧霾圖像,所以根據我們的暗通道先驗知識,$${\bf J}$$的暗通道趨于$$0$$:\begin{equation}J^{dark}({\bf x})=\min_{{\bf y}\in\Omega({\bf x})}\big(\min_{c}J^c({\bf y})\big)=0\end{equation}由于$$A^c$$通常是正數,所以:
\begin{equation}\label{eq:leadto} \min_{{\bf y}\in\Omega({\bf x})}\big(\min_{c}\frac{I^c({\bf y})}{A^c}\big)=0\end{equation}將$$\eqref{eq:leadto}$$帶入$$\eqref{eq:minmodel}$$,我們可以簡單的估計出乘性項和傳輸系數$$\widetilde{t}({\bf x})$$:\begin{equation}\label{eq:estt}\widetilde{t}({\bf x})=1-\min_{{\bf y}\in\Omega({\bf x})}\big(\min_{c}\frac{I^c({\bf y})}{A^c}\big)\end{equation}實際上,$$\min_{{\bf y}\in\Omega({\bf x})}\big(\min_{c}\frac{I^c({\bf y})}{A^c}\big)$$是正規化的霧霾圖像的暗通道。它直接提供了對傳輸系數的估計。我們前面講過,暗通道先驗知識對天空區域并不適用。幸運的是,霧霾圖像$${\bf I}$$ 中天空區域的顏色通常與大氣光$${\bf A}$$非常相似。因此,對于天空區域,我們有:\begin{equation}\min_{{\bf y}\in\Omega({\bf x})}\big(\min_{c}\frac{I^c({\bf y})}{A^c}\big)\rightarrow1\end{equation}由$$\eqref{eq:estt}$$可得$$\widetilde{t}({\bf x})\rightarrow0$$。因為天空是無限遠的,它的傳輸系數接近于$$0$$,所以$$\eqref{eq:estt}$$可以很好的處理天空和非天空區域。這樣我們就不必在處理前把天空區域單獨分開了。

現實中,即使是晴朗的天氣,大氣中也不可能不包含任何粒子。所以在我們看遠處的物體時,霾依然存在。并且它為人類感知深度提供了基本線索。這種現象被稱為空氣透視aerial perspective。如果我們徹底的去除霧霾,那么圖像就會看起來不自然,而且我們也會失去對深度信息的感覺。因此,我們可以在$$\eqref{eq:estt}$$引進一個常量參數$$\omega(0<\omega\le1)$$來為遠處物體保持少量的霾:\begin{equation}\label{eq:esttw}\widetilde{t}({\bf x})=1-\omega\min_{{\bf y}\in\Omega({\bf x})}\big(\min_{c}\frac{I^c({\bf y})}{A^c}\big)\end{equation}

這一修改的好處是,我們自適應的為遠處物體保留了霾。$$\omega$$的取值是基于應用的。本文中固定取值為$$0.95$$。

在$$\eqref{eq:estt}$$的推導中,暗通道的先驗知識用來消除霧霾圖像模型$$\eqref{eq:model}$$中的乘性項。加性項得到了保留。這種策略完全不同于以前的單幅圖像去霧方法,它們嚴重依賴于乘性項。這些方法是基于乘性項影響了圖像的對比度和顏色變化這一事實來推導的。相反,我們注意到是加性項改變了局部暗像素的強度。在暗通道先驗知識的幫助下,乘性項被丟棄,只用加性項來估計傳輸系數就足夠了。我們可以進一步推廣$$\eqref{eq:model}$$:\begin{equation}\label{eq:modelg}{\bf I(x)=J(x)}t_1{\bf(x)+A}(1-t_2({\bf x})))\end{equation}其中$$t_1,t_2$$并不必相同。

通過$$\eqref{eq:modelg}$$估計的傳輸系數圖會出現一些光暈和塊效應。這是因為傳輸系數在一個塊里并不總是常量。在下一小節,我們使用軟摳圖來改善傳輸系數圖。

Soft Matting

我們注意到$$\eqref{eq:model}$$與軟摳圖方程具有相同的形式:\begin{equation}{\bf I=F}\alpha+{\bf B}(1-\alpha)\end{equation}其中$${\bf I=F}$$和$${\bf B}$$分別為前景和背景顏色,$$\alpha$$為前景不透明度。霧霾成像方程中的傳輸系數圖恰好是一幅$$\alpha$$圖。因此,我們可以用 a closed-form framework of matting 來改善傳輸系數。

改善后的傳輸系數圖表示為$$t({\bf x})$$。我們把$$t({\bf x})$$和$$\widetilde{t}({\bf x})$$重寫為它們的向量形式$${\bf t,\widetilde{t}}$$,最小化下面的損失函數:
\begin{equation}E({\bf t})={\bf t}^T{\bf Lt}+\lambda({\bf t-\widetilde{t}})^T{\bf(t-\widetilde{t})}\end{equation}這里的第一項為平滑項,第二項是帶權重$$\lambda$$的數據項。矩陣$${\bf L}$$稱作 matting Laplacian matrix 。 它的$$(i,j)$$元素定義為:
\begin{equation}\sum_{k\mid(i,j)\in\omega_k}\bigg(\delta_{ij}-\frac{1}{\mid\omega_k\mid}\Big(1+({\bf I}_i-\mu_k)^T\Big(\sum_{k}+\frac{\varepsilon}{\mid\omega_k\mid}U_3\Big)^{-1}({\bf I}_j-\mu_k)\Big)\bigg)\end{equation}
$${\bf I}_i,{\bf I}_j$$是輸入圖像$${\bf I}$$在像素$$i,j$$處的顏色,$$\delta_ij$$是克羅內克函數(K ronecker delta),$$\mu_k$$和$$\sum_k$$是$$\omega_k$$窗口中顏色的均值和協方差矩陣,$$\varepsilon$$是規范化參數,$$\mid\omega_k\mid$$是$$\omega_k$$窗口內的像素數。

理想的$${\bf t}$$可以通過解下面的稀疏線性系統得到:\begin{equation}\label{eq:lines}({\bf L}+\lambda U){\bf t}=\lambda\widetilde{{\bf t}}\end{equation}其中$$U$$是一個與$${\bf L}$$具有相同尺寸的單位矩陣。我們設置一個很小的$$\lambda$$值(實驗為$$10^{-4}$$),以至于$$\widetilde{{\bf t}}$$是$${\bf t}$$的軟約束。

matting Laplacian matrix 的推導是基于顏色線假設的:The foreground/background
colors in a small local patch lie on a single line in the RGB color space. 顏色線假設在去霧問題中,同樣是合法的。首先,場景輻射$${\bf J}$$是自然圖像,自然圖像滿足顏色線模型。其次,大氣光$${\bf A}$$是一個常量,當然也滿足假設。因此,在去霧問題中使用matting Laplacian matrix作為平滑項是正確的。

解決線性系統$$\eqref{eq:lines}$$后,我們在$$t$$上執行雙邊濾波來平滑較小的紋理。這樣,光暈和塊失真就被抑制了。改善的傳輸系數圖設法捕捉不連續的銳利邊緣,畫出了對象的輪廓線。

Estimating the Atmospheric Light

前面我們假定大氣光$${\bf A}$$是已知的。在這一小節,我們提出一種估計$${\bf A}$$的方法。以前的工作都是用最不透明霧霾區域 most haze-opaque 的顏色作為$${\bf A}$$或者作為$${\bf A}$$的初始猜測。然而,很少關注最不透明區域的檢測。

在 Tan 的研究中,霧霾圖像中的最亮像素作為 most haze-opaque 。這只有在眼光可以忽略的陰天才是正確的。既然這樣,大氣光是場景的唯一光源。因此,每個顏色通道的場景輻射為:\begin{equation}\label{eq:sr}J({\bf x})=R({\bf x})A\end{equation}
其中$$R\le1$$是場景點的反射率。這樣$$\eqref{eq:model}$$可以寫為:
\begin{equation}\label{eq:ie}I({\bf x})=R({\bf x})At({\bf x})+A(1-t({\bf x}))\le A\end{equation}
當圖像中存在無窮遠距離的像素時,最亮的$$I$$就是 most haze-opaque 了,大約等于$$A$$。不幸的是,現實中很少能忽略陽光。考慮到陽光$$S$$,我們修改$$\eqref{eq:sr}$$和$$\eqref{eq:ie}$$得到:\begin{equation}J({\bf x})=R({\bf x})(A+S)\end{equation}
\begin{equation}I({\bf x})=R({\bf x})St({\bf x})+R({\bf x})At({\bf x})+A(1-t({\bf x}))\end{equation}在這種情況下,整個圖像的最亮像素要比大氣光更亮。最亮像素也許在一個白色汽車或白色大樓上。

正如在第3節中討論過的,霧霾圖像的暗通道可以看作霧霾的密度的近似。因此,我們可以用暗通道來檢測 most haze-opaque 區域,提高對大氣光的估計。我們首先在暗通道里挑選出$$0.1\%$$的最亮像素。這些像素通常就是 most haze-opaque 的。這些像素對應的輸入圖像$${\bf I}$$的最亮的像素值作為大氣光。注意,這些像素可能不是整個輸入圖像中的最亮的像素。這種方法即使在圖像中不存在無限距離像素的情況下,也能工作的很好。

Recovering the Scene Radiance

有了大氣光和傳輸系數,我們就可以根據$$\eqref{eq:model}$$復原場景輻射。但是,當傳輸系數$$t({\bf})$$接近$$0$$的時候,直接衰減項$${\bf J(x)}t({\bf x})$$也接近于$$0$$。這樣直接復原的場景輻射容易產生噪音。因此,我們給$$t({\bf x})$$一個下限$$t_0$$,我們在霧很濃的地方保留少量的霧霾。最終的場景輻射根據下式得到:
\begin{equation}{\bf J(x)}=\frac{\bf{I(x)-A}}{\max(t({\bf x}),t_0)}+{\bf A}\end{equation}
$$t_0$$的典型值為$$0.1$$。由于場景輻射通常沒有大氣光亮,去霧后的圖像顯得微暗。因此可以增強$${\bf J(x)}$$的曝光來更好的顯示。

Experimental Results

請參照英文原文閱讀,英語水平有限,不合適之處請吐槽。

李斯文

評論已關閉!

目前評論:3   其中:訪客  3   博主  0

  1. avatar seo agency dallas 0

    SEO is said to be the game of building quality links. But in super competitive fields, where the target group includes millions of
    people, SEO is a must-have tool. If you want to succeed in
    your own online business, you certainly want to rank at the top of these results.

    • avatar godlike 3

      @seo agency dallas yes,you are quite right,but i think the first of the words you said is a bit extreme

  2. avatar godlike 3

    awseom