1. 摘要
本文提出的方法基于两个基本观察结果:首先,视觉效果好的图像(或晴天图像)比受恶劣天气影响的图像具有更高的对比度;其次,主要取决于物体到摄像机距离的大气光,在全局而言是平滑的。依靠这两个观察,本文在马尔可夫随机场的框架中开发了一个成本函数,可以通过各种技术(例如图割或置信传播)有效地优化该函数。该方法不需要输入图像的几何信息,并且适用于彩色和灰度图像。
本文不打算完全恢复场景的原始颜色或反照率,目标是仅增强输入图像的对比度,从而改善图像可见性。
2. 光学模型
通常用于处理恶劣天气(尤其是计算机视觉)的光学模型描述为:
I
(
x
)
=
L
∞
ρ
(
x
)
e
−
β
d
(
x
)
+
L
∞
(
1
−
e
−
β
d
(
x
)
)
(1)
\mathbf{I}(x) = \mathbf{L}_{\infty} \boldsymbol{\rho}(x) e^{- \beta d(x)} + \mathbf{L}_{\infty} (1- e^{- \beta d(x)}) \tag{1}
I(x)=L∞ρ(x)e−βd(x)+L∞(1−e−βd(x))(1)
其中, L ∞ \mathbf{L}_{\infty} L∞为大气光,为全局常数,和 x x x无关。
2.1 色度定义
本文的方法中,打算使用色度来描述等式
(
1
)
(1)
(1),因此定义图像色度如下:
σ
c
=
I
c
I
r
+
I
g
+
I
b
(2)
\sigma_c = \frac{I_c}{I_r + I_g + I_b} \tag{2}
σc=Ir+Ig+IbIc(2)
当物体在无限远的距离时(
d
=
∞
,
e
−
β
d
=
0
d = \infty, e^{-\beta d} = 0
d=∞,e−βd=0),图像色度仅与大气光有关,此时称为大气光色度。大气光色度定义如下:
α
c
=
L
∞
c
L
∞
r
+
L
∞
g
+
L
∞
b
(3)
\alpha_c = \frac{L_{\infty c}}{L_{\infty r} + L_{\infty g} + L_{\infty b}} \tag{3}
αc=L∞r+L∞g+L∞bL∞c(3)
当没有散射粒子时(
e
−
β
d
=
1
e^{-\beta d} = 1
e−βd=1),图像色度仅与直接衰减有关,此时称为物体色度。由
(
1
)
(
2
)
(1)(2)
(1)(2)物体色度定义如下:
γ
c
=
L
∞
c
ρ
c
L
∞
r
ρ
r
+
L
∞
g
ρ
g
+
L
∞
b
ρ
b
(4)
\gamma_c = \frac{L_{\infty c} \rho_c}{L_{\infty r} \rho_r + L_{\infty g} \rho_g + L_{\infty b} \rho_b} \tag{4}
γc=L∞rρr+L∞gρg+L∞bρbL∞cρc(4)
由
(
3
)
(
4
)
(3)(4)
(3)(4),根据色度重新定义
(
1
)
(1)
(1):
I
(
x
)
=
D
(
x
)
e
−
β
d
(
x
)
γ
(
x
)
+
A
(
x
)
α
(5)
\mathbf{I}(x) = D(x) e^{- \beta d(x)} \boldsymbol{\gamma}(x) + A(x) \boldsymbol{\alpha} \tag{5}
I(x)=D(x)e−βd(x)γ(x)+A(x)α(5)
其中:
D
(
x
)
=
L
∞
r
ρ
r
(
x
)
+
L
∞
g
ρ
g
(
x
)
+
L
∞
b
ρ
b
(
x
)
(6)
D(x) = L_{\infty r} \rho_r(x) + L_{\infty g} \rho_g(x) + L_{\infty b} \rho_b(x) \tag{6}
D(x)=L∞rρr(x)+L∞gρg(x)+L∞bρb(x)(6)
A ( x ) = ( L ∞ r + L ∞ g + L ∞ b ) ( 1 − e − β d ( x ) ) (7) A(x) = (L_{\infty r} + L_{\infty g} + L_{\infty b})(1 - e^{- \beta d(x)}) \tag{7} A(x)=(L∞r+L∞g+L∞b)(1−e−βd(x))(7)
D D D和 A A A为标量, γ \boldsymbol{\gamma} γ和 α \boldsymbol{\alpha} α为归一化的颜色向量。根据色度定义,可知 [ ∑ σ c = σ r + σ g + σ b = 1 ] [\sum \sigma_c = \sigma_r + \sigma_g+ \sigma_b = 1] [∑σc=σr+σg+σb=1], [ ∑ γ c = γ r + γ g + γ b = 1 ] [\sum \gamma_c = \gamma_r + \gamma_g+ \gamma_b = 1] [∑γc=γr+γg+γb=1]和 [ ∑ α c = α r + α g + α b = 1 ] [\sum \alpha_c = \alpha_r + \alpha_g+ \alpha_b = 1] [∑αc=αr+αg+αb=1]。
2.2 大气光
在许多恶劣天气中,尤其是在通常阴云密布的日光下,我们可以忽略太阳光的存在,并假定大气光( L ∞ \mathbf{L}_{\infty} L∞)是全局恒定的。根据 ( 1 ) (1) (1),可以从输入图像中具有最高强度的像素获得 L ∞ \mathbf{L}_{\infty} L∞的全局值。 因为这些像素代表无限远的物体( d = ∞ d = \infty d=∞),假设可以在图像中看到天空并且图像没有饱和像素。 因此,通过将 L ∞ \mathbf{L}_{\infty} L∞的值代入公式 ( 3 ) (3) (3),具有 L ∞ \mathbf{L}_{\infty} L∞的值使我们能够获得光色度( α \boldsymbol{\alpha} α)的值。
找到图像中像素值最大的点,该像素三个通道的值即为三个通道的大气光值。
2.3 大气光白化
通过利用大气光光色度(
α
\boldsymbol{\alpha}
α),将
(
5
)
(5)
(5)中的每个颜色通道的强度处于相应的
α
c
{\alpha}_c
αc,将输入图像的大气光的颜色转换为白色。即:
I
c
′
(
x
)
=
I
c
(
x
)
/
α
c
(8)
I_c^\prime (x) = I_c(x) / \alpha_c \tag{8}
Ic′(x)=Ic(x)/αc(8)
I c ′ ( x ) = D ( x ) e − β d ( x ) γ c ( x ) α c ( x ) + A ( x ) = D ( x ) e − β d ( x ) γ c ′ ( x ) + A ( x ) (9) \begin{aligned} I_c^\prime (x) =& \ D(x) e^{- \beta d(x)} \frac{{\gamma}_c(x)}{\alpha_c(x)} + A(x) \\ =& \ D(x) e^{- \beta d(x)} {{\gamma}_c^\prime(x)} + A(x) \end{aligned} \tag{9} Ic′(x)== D(x)e−βd(x)αc(x)γc(x)+A(x) D(x)e−βd(x)γc′(x)+A(x)(9)
γ
c
′
{\gamma}_c^\prime
γc′为归一化的物体色度,
I
c
′
I_c^\prime
Ic′为归一化的输入图像,即大气光为白色。
(
9
)
(9)
(9)写成向量形式:
I
′
(
x
)
=
D
(
x
)
γ
′
(
x
)
e
−
β
d
(
x
)
+
A
(
x
)
[
1
1
1
]
(10)
\mathbf{I}^\prime(x) = D(x) \boldsymbol{\gamma^\prime}(x) e^{- \beta d(x)} + A(x)\begin{bmatrix} 1 \\ 1 \\ 1\end{bmatrix} \tag{10}
I′(x)=D(x)γ′(x)e−βd(x)+A(x)⎣⎡111⎦⎤(10)
I ′ \mathbf{I}^\prime I′和 γ ′ \boldsymbol{\gamma^\prime} γ′为向量,其余为标量。
3. 问题定义
假设已经得到 I ′ ( x ) \mathbf{I}^\prime(x) I′(x)和 L ∞ \mathbf{L}_{\infty} L∞的值,根据 ( 10 ) (10) (10)可知,本文的目标即计算整幅图像 D ( x ) γ ′ ( x ) D(x) \boldsymbol{\gamma^\prime}(x) D(x)γ′(x)的值。
转换成求 A A A
计算 D γ ′ D\boldsymbol{\gamma^\prime} Dγ′等价与计算 A A A。从 A A A计算 D γ ′ D\boldsymbol{\gamma^\prime} Dγ′的步骤如下:
Step (1): 由 ( 7 ) (7) (7):
e − β d ( x ) = ∑ c L ∞ c − A ( x ) ∑ c L ∞ c (11) e^{- \beta d(x)} = \frac{\sum_c L_{\infty c} - A(x)}{\sum_c L_{\infty c}} \tag{11} e−βd(x)=∑cL∞c∑cL∞c−A(x)(11)其中, ∑ c L ∞ c = L ∞ r + L ∞ g + L ∞ b \sum_c L_{\infty c} = L_{\infty r} + L_{\infty g} + L_{\infty b} ∑cL∞c=L∞r+L∞g+L∞b。
Step (2): 由 ( 10 ) (10) (10):
D ( x ) γ ′ ( x ) = ( I ′ ( x ) − A ( x ) [ 1 1 1 ] ) e β d ( x ) (12) D(x) \boldsymbol{\gamma^\prime}(x) = (\mathbf{I}^\prime(x) - A(x)\begin{bmatrix} 1 \\ 1 \\ 1\end{bmatrix})e^{\beta d(x)} \tag{12} D(x)γ′(x)=(I′(x)−A(x)⎣⎡111⎦⎤)eβd(x)(12)
首先计算 A A A,因为它独立于物体反射率( ρ \boldsymbol{\rho} ρ),并且仅取决于深度 d d d(假设 β \beta β和 γ ′ \boldsymbol{\gamma^\prime} γ′全局恒定),所以很容易计算出 A A A。
4.
考虑下列三个观察:
- 输出图像 D γ ′ D\boldsymbol{\gamma^\prime} Dγ′比输入图像 I \mathbf{I} I有更好的对比度。
- A A A值的变化仅取决于物体的深度 d d d,这意味着具有相同深度的物体将具有相同的 A A A值,而与其反射率( ρ \boldsymbol{\rho} ρ)无关。 因此,相邻像素的 A A A值趋于相同。另外,在许多情况下,在很小的局部图像块中, A A A的变化非常平缓。除了深度不连续的像素,而这种情况相对较少。
- 受恶劣天气困扰的输入图像通常是在室外自然场景中拍摄的。 因此, D γ ′ D\boldsymbol{\gamma^\prime} Dγ′的值必须遵循晴天自然图像的特征。
4.1 最大化对比度
对于观察1,结合图像边缘数量,定义图像对比度:
C
e
d
g
e
(
I
)
=
∑
x
,
c
∣
∇
I
c
(
x
)
∣
(13)
C_{edge}(\mathbf{I}) = \sum\limits_{x,c}| \nabla I_c(x) | \tag{13}
Cedge(I)=x,c∑∣∇Ic(x)∣(13)
其中,
∇
\nabla
∇是
x
x
x轴和
y
y
y轴上的微分算子。该方程式意味着对比度高的图像会产生更多的边缘。换句话说,清晰图像比受恶劣天气影响的图像具有更多的边缘:
C
e
d
g
e
(
D
γ
′
)
>
C
e
d
g
e
(
I
′
)
C_{edge}(D\boldsymbol{\gamma^\prime}) > C_{edge}(\mathbf{I^\prime})
Cedge(Dγ′)>Cedge(I′)。
通过前面分析,知道了
D
γ
′
D\boldsymbol{\gamma^\prime}
Dγ′可以通过
A
A
A求得。根据
(
7
)
(7)
(7),可知:
0
≤
A
(
x
)
≤
∑
c
L
∞
c
(
x
)
0 \le A(x) \le \sum_c L_{\infty c}(x)
0≤A(x)≤∑cL∞c(x)。因此,如果有一个包含具有相同深度且受恶劣天气影响的物体的小图像块
p
\boldsymbol{\mathbf{p}}
p,则存在一个标量值
A
A
A,通过该
A
A
A可以计算出
D
γ
′
D\boldsymbol{\gamma^\prime}
Dγ′。
D
γ
′
D\boldsymbol{\gamma^\prime}
Dγ′必须满足如下约束:
C
e
d
g
e
(
D
γ
′
)
>
C
e
d
g
e
(
p
)
(14)
C_{edge}(D\boldsymbol{\gamma^\prime}) > C_{edge}(\boldsymbol{\mathbf{p}}) \tag{14}
Cedge(Dγ′)>Cedge(p)(14)
整幅图的边缘数量一定大于局部块的边缘数量
0 ≤ D γ c ′ ≤ L ∞ c (15) 0 \le D {\gamma_c^\prime} \le L_{\infty c} \tag{15} 0≤Dγc′≤L∞c(15)
懵,因为按如下计算,得不出该结果。
结合 ( 3 ) ( 4 ) (3)(4) (3)(4),可得:
γ c ′ = γ c α c = ρ c ∑ c ( L ∞ c ) ∑ c ( L ∞ c ρ c ) \gamma_c^\prime = \frac{\gamma_c}{\alpha_c} = \frac{\rho_c \sum_c (L_{\infty c})}{\sum_c (L_{\infty c}\rho_c)} γc′=αcγc=∑c(L∞cρc)ρc∑c(L∞c)且 D = ∑ c ( L ∞ c ρ c ) D = \sum_c (L_{\infty c}\rho_c) D=∑c(L∞cρc),所以可得:
D γ c ′ = ρ c ∑ c ( L ∞ c ) D \gamma_c^\prime = \rho_c \sum_c (L_{\infty c}) Dγc′=ρcc∑(L∞c)因为 0 ≤ ρ c ≤ 1 0 \le \rho_c \le 1 0≤ρc≤1,所以有 D γ c ′ ≤ ∑ c ( L ∞ c ) D \gamma_c^\prime \le \sum_c (L_{\infty c}) Dγc′≤∑c(L∞c),而不是 D γ c ′ ≤ L ∞ c D {\gamma_c^\prime} \le L_{\infty c} Dγc′≤L∞c。直接将 ( 3 ) × ( 4 ) (3) \times (4) (3)×(4),可以得到 D γ c ≤ L ∞ c D {\gamma_c} \le L_{\infty c} Dγc≤L∞c,也不是 D γ c ′ ≤ L ∞ c D {\gamma_c^\prime} \le L_{\infty c} Dγc′≤L∞c。这里没看懂。
图1左侧显示了晴天的自然图像,右侧为人工渲染雾的图像,该图像大气光设定为常数。选择人造雾图中的一个小方块(红色框部分), A A A取所有可能值,并计算出相应的 C e d g e ( D γ ′ ) C_{edge}(D\boldsymbol{\gamma^\prime}) Cedge(Dγ′),图2中绘制二者的关系图。 如图所示, C e d g e ( D γ ′ ) C_{edge}(D\boldsymbol{\gamma^\prime}) Cedge(Dγ′)随着 A A A的增加而增加,并在达到一定峰值后下降。 这种快速下降主要是由于施加了第二个约束 ( 15 ) (15) (15)。
从天气条件恶劣的场景中拍摄的每个图像块,只要该图像块中具有纹理,则
C
e
d
g
e
(
D
γ
′
)
>
0
C_{edge}(D\boldsymbol{\gamma^\prime}) > 0
Cedge(Dγ′)>0。证明如下。由
(
13
)
(
12
)
(
11
)
(13)(12)(11)
(13)(12)(11),得:
C
e
d
g
e
(
D
γ
′
)
=
∑
x
,
c
∣
(
I
x
,
c
′
−
A
)
e
β
d
−
(
I
x
−
1
,
c
′
−
A
)
e
β
d
∣
=
e
β
d
∑
x
,
c
∣
(
I
x
,
c
′
−
I
x
−
1
,
c
′
)
∣
=
∑
c
L
∞
c
∑
c
L
∞
c
−
A
∑
x
,
c
∣
(
I
x
,
c
′
−
I
x
−
1
,
c
′
)
∣
\begin{aligned} C_{edge}(D\boldsymbol{\gamma^\prime}) =& \ \sum\limits_{x,c} | (I_{x,c}^\prime - A)e^{\beta d} - (I_{x-1,c}^\prime - A)e^{\beta d}| \\ =& \ e^{\beta d} \sum\limits_{x,c} |(I_{x,c}^\prime - I_{x-1,c}^\prime)| \\ =& \ \frac{\sum_c L_{\infty c}}{\sum_c L_{\infty c} - A} \sum\limits_{x,c} |(I_{x,c}^\prime - I_{x-1,c}^\prime)| \end{aligned}
Cedge(Dγ′)=== x,c∑∣(Ix,c′−A)eβd−(Ix−1,c′−A)eβd∣ eβdx,c∑∣(Ix,c′−Ix−1,c′)∣ ∑cL∞c−A∑cL∞cx,c∑∣(Ix,c′−Ix−1,c′)∣
L ∞ \mathbf{L}_{\infty} L∞是常数且 ∑ x , c ∣ ( I x , c ′ − I x − 1 , c ′ ) ∣ \sum\limits_{x,c} |(I_{x,c}^\prime - I_{x-1,c}^\prime)| x,c∑∣(Ix,c′−Ix−1,c′)∣在同一图像块中有相同值,所以 C e d g e ( D γ ′ ) C_{edge}(D\boldsymbol{\gamma^\prime}) Cedge(Dγ′)与 A A A成比例。这解释了图2中上升的原因。由于第二个限制 ( 15 ) (15) (15),当 D γ c ′ > L ∞ c D {\gamma_c^\prime} > L_{\infty c} Dγc′>L∞c,定义 D γ c ′ = 0 D {\gamma_c^\prime} = 0 Dγc′=0。所以 C e d g e ( D γ ′ ) C_{edge}(D\boldsymbol{\gamma^\prime}) Cedge(Dγ′)将会减少尽管 A A A仍在增加。
这里也没看懂。
在提高可见性的框架中,使用 C e d g e ( D γ ′ ) C_{edge}(D\boldsymbol{\gamma^\prime}) Cedge(Dγ′)作为成本函数。 虽然最大数量的 C e d g e ( D γ ′ ) C_{edge}(D\boldsymbol{\gamma^\prime}) Cedge(Dγ′)并不总是代表 A A A的实际值,但它代表了输入图像的增强的可见性。 如引言中所述,本文不打算在晴天恢复图像的原始颜色或反射率。 我们的主要目的是在恶劣天气下增强场景的可见性,并在某种程度上对场景的颜色进行准确度测试。
4.2 大气光平滑约束
根据观察2,整幅图像上
A
A
A的变化对于大多数像素而言都趋于平滑。可使用马尔可夫随机场(MRFs)对大气光
A
A
A进行建模。MRFs的势函数定义如下:
E
(
{
A
x
}
∣
p
x
)
=
∑
x
ϕ
(
p
x
∣
A
x
)
+
η
∑
x
,
y
∈
N
x
ψ
(
A
x
,
A
y
)
(16)
E(\{ A_x \}| \boldsymbol{\mathbf{p}}_x) = \sum\limits_{x} \phi(\boldsymbol{\mathbf{p}}_x | A_x) + \eta \sum\limits_{x,y \in N_x} \psi(A_x, A_y) \tag{16}
E({Ax}∣px)=x∑ϕ(px∣Ax)+ηx,y∈Nx∑ψ(Ax,Ay)(16)
其中
p
x
\boldsymbol{\mathbf{p}}_x
px是一个以位置
x
x
x为中心的图像块,假定它具有
A
x
A_x
Ax的恒定值(即
A
x
≡
A
(
x
)
A_x \equiv A(x)
Ax≡A(x))。
η
\eta
η是平滑项的强度,
N
x
N_x
Nx代表
x
x
x的近邻像素。
(
16
)
(16)
(16)中前一项为数据项,后一项为平滑项。数据项定义如下:
ϕ
(
p
x
∣
A
x
)
=
C
e
d
g
e
(
[
D
γ
′
]
x
∗
)
m
(17)
\phi(\boldsymbol{\mathbf{p}}_x | A_x) = \frac{C_{edge}([D\boldsymbol{\gamma^\prime}]_{x}^{*})}{m} \tag{17}
ϕ(px∣Ax)=mCedge([Dγ′]x∗)(17)
其中,将
A
X
A_X
AX的每一个带入到
(
11
)
(
12
)
(11)(12)
(11)(12),得到
[
D
γ
′
]
x
∗
[D\boldsymbol{\gamma^\prime}]_{x}^{*}
[Dγ′]x∗。而
m
m
m得取值依赖于
p
x
\mathbf{p}_x
px得大小。平滑项定义如下:
ψ
(
A
x
,
A
y
)
=
1
−
∣
A
x
−
A
y
∣
∑
c
L
∞
c
(18)
\psi(A_x, A_y) = 1 - \frac{|A_x - A_y|}{\sum_c L_{\infty c}} \tag{18}
ψ(Ax,Ay)=1−∑cL∞c∣Ax−Ay∣(18)
该项得目的在于平滑
A
x
A_x
Ax的邻近。
为了找到
A
x
{A_x}
Ax的所有值,我们必须通过使用现有的推理技术(例如图割或信念传播)来最大化Gibbs分布中描述的
p
(
A
x
)
p({A_x})
p(Ax)的概率分布。
还是折在这里了,看不下去了。可恶的马尔可夫随机场。