摘要
我们提出了一种简单有效的基于融合的弱光照图像增强方法,该方法使用了几种成熟的图像处理技术。首先,我们采用基于形态学逼近的光照估计算法将观测图像分解为反射图像和光照图像。然后,我们使用sigmoid函数和自适应直方图均衡化导出两个输入,它们表示第一次分解照明的亮度改进和对比度增强版本。基于这些输入设计两个权重,我们通过以多尺度方式将导出的输入与相应的权重融合来产生调整的照明。通过适当的加权和融合策略,我们融合了不同技术的优点,以产生调整的照明。最终的增强图像是通过将调整后的照明补偿回反射率来获得的。通过这种合成,增强图像代表了细节增强、局部对比度改善和保持图像自然感觉之间的权衡。在该融合框架中,可以增强背景光、非均匀光照和夜间等不同弱光照条件下的图像。
1 引言
在弱光照环境中,光学成像设备捕获的图像和视频质量通常会降低。这会降低特定系统的性能,例如用于智能交通分析、视觉监控和消费电子产品的系统。例如,夜间环境中的低照明条件会产生低对比度的图像和视频,从而降低可见性。另一个例子是背光,由于许多成像系统曝光设置的限制,无法在明亮区域(背景)和黑暗区域(前景)同时捕获对象和细节[1]。
在本文中,我们提出了一种基于融合的弱光照图像增强方法,可以在同一框架内处理不同的弱光照设置。我们的方法有三个主要贡献。首先,我们的方法适用于单幅图像,这与其他几种需要同一场景的多幅图像进行融合的融合技术不同[2–4]。其次,提出了一种基于形态学闭合的光照估计算法。该估计照度表示自然度和亮度。第三,我们提出了一种有效的基于融合的光照调整算法。在融合阶段,可以直接采用不同的成熟技术生成不同的结果,然后融合这些结果的不同优点,得到增强图像。实际上,以建议的方式使用简单和成熟的算法可以确保对现有系统进行简单的更新。由于大多数计算是在像素级进行的,因此所提出的方法在计算上非常有效。在概述第1.2节中提出的方法之前,我们回顾了图像增强问题的主要方法和主要技术。
1.1 相关工作
人们提出了许多图像增强技术来改善在不同环境下捕获的退化图像的质量。三种主要方法包括基于直方图的方法[1,5-14],基于Retinex的方法[15-21]和基于滤波的方法[22-28]。我们在下面简要回顾这些,以及我们希望在我们提出的算法中解决的潜在缺陷。
基于直方图的方法旨在生成具有所需形状的直方图的输出图像。一些传统的基于直方图的方法,如直方图均衡化(HE)[5]和对比度受限自适应直方图均衡化(CLAHE)[6]因其在增强低对比度图像方面的简单性和有效性而被广泛使用,但可能导致对比度过增强和噪声放大[11]。这是因为基于直方图的方法假设目标直方图是均匀分布的,机械地拉伸动态范围,而不注意输入直方图的形状。当输入直方图中存在高峰时,HE的增强结果可能会出现不自然或伪影。最近,提出了一种全局对比度增强算法,该算法使用空间信息来保持输入直方图的形状并抑制过度增强[13]。变分方法[9,10]在直方图上使用不同的正则化项。例如,在[10]中,上下文和变化对比度增强(CVC)是通过强调较大灰度差异的直方图映射来执行的。[10]的方法通过使用二维直方图的分层差分表示(LDR)进行改进[1]。然而,由于直方图的拉伸范围在模型中受到限制,变分方法往往无法用于具有非常暗区域的图像。
在Retinex理论[29]中,图像被视为反射和照明的产物。一些基于Retinex的算法通过估计和去除光照,将反射率作为增强结果。具有代表性的算法,如单尺度Retinex(SSR)[15]和多尺度Retinex(MSR)[16]使用局部高斯滤波器分离反射分量和光照分量。细节和亮度可以通过消除照明的影响来改善,但通过这种中心/环绕方法获得的结果往往过于增强;由于人类视觉系统减少了场景的动态范围,而不是完全消除照明,因此照明对于自然再现来说至关重要[17,20]。“自然度保持增强算法”(NPEA)解决了非均匀照明图像[20]中的这一问题,首先设计了一个亮通滤波器来估计照明,然后提出了双对数
变换以调整照明。
最后一组方法基于图像滤波。在[22]中,全局优化线性加窗(GOLW)色调映射算法使用局部线性滤波压缩高动态范围。此方法不适用于极弱的照明设置,如夜间和背光,并且计算量大。在[23]中,作者提出了一种广义反锐化掩蔽(GUM)算法,在该算法中,他们将图像分解为高频和低频部分,进行单独处理。其他方法包括[24],其中在图像区域上执行自动曝光校正,以及[25],其中来自自然发光图像的照明和来自闪光图像的细节被组合用于图像增强。
1.2. 本文方法概述
我们重点讨论在非常弱的光照条件下的图像增强问题。我们的目标是开发一种快速有效的融合方法,融合不同成熟图像处理技术的优点。在第3节中给出更多细节之前,我们在下面概述了所提议的方法的主要思想,并在图1中描述了所提议的方法的概述。
首先,我们提出了一种基于形态学闭合运算的光照估计算法。此步骤的灵感来源于先前基于Retinex的方法[20],该方法使用亮通滤波器估计照明。然而,滤波操作需要很高的计算时间,这不适合于实际应用。相比之下,该算法可以用较少的参数有效地计算光照。估计的照度有效地代表了自然度和亮度,以便在我们的方法中进行进一步处理。
其次,我们提出了一种基于融合的增强算法来调整光照。由于许多成熟的方法具有特定的增强效果且易于实现,例如CLAHE[6]增强了局部对比度,并且可以使用插值技术进行加速,因此应结合它们各自的优势。我们推导了两个新的输入,它们表示改进的全局亮度和增强的估计照明的局部对比度,然后尝试将每个输入的优点混合到单个输出中。为此,我们设计了两个用于融合的权重,其中根据质量度量将更高的值分配给对所需图像质量起更重要作用的像素。我们还引入了一个多尺度框架来避免伪影。最终的增强图像是通过将调整后的照明与反射率相结合来生成的。
本文的其余部分组织如下。第2节简要描述了所提出算法的动机。算法
详细内容见第3节。第4节对所提出方法的性能进行了定量和定性评估。我们在第5节中得出结论
2.动机
对于弱照明图像,解决此问题的自然直观方法是简单地调整照明,因为它与图像的自然度有关[20],并且人类视觉系统对亮度变化非常敏感[30]。换句话说,图像的客观(细节增强)和主观(自然)质量都与其照明度有关。然而,对于一些基于Retinex理论的光照估计算法,参数设计不容易[17,18],而其他方法由于求解大量线性方程组[19]或采用基于面片的滤波[20],需要很高的计算时间。因此,第一个重要的任务是有效地估计光照。
第二项任务是适当调整弱照明图像的估计照度。众所周知,图像质量评估与人类视觉系统有关,人类视觉系统对亮度和对比度非常敏感[31]。然而,当压缩全局亮度以增强图像中的暗区域时,局部对比度可能会降低。因此,找到亮度和对比度之间的平衡点是增强图像的一个重要标准。如图2(b)和(c)所示,通过伽马校正和sigmoid函数进行动态范围压缩可以生成全局亮度提高但局部对比度降低的图像。在图2(d)和(e)所示的另一个方向上,以增强暗区域为代价,通过直方图均衡化(HE)[5]和对比度受限自适应直方图均衡化(CLAHE)[6]增强全局和局部对比度。我们的目标是将这些方法结合起来,以便在利用它们的优点的同时,抑制它们的缺点。图2(f)中的增强结果说明了所提出的融合策略的有效性。相应的直方图显示直方图在保持其原始形状的同时得到了很好的拉伸。
3.提出了一种基于融合的算法
提出的基于融合的方法的基本思想是混合来自单个估计照明的多个输入和权重。如上所述,增强弱照明图像的三个标准是全局亮度改善、局部对比度增强和自然度保持。因此,输入和权重是根据这些标准设计和处理的。四个主要步骤构成了与接下来四个小节相对应的增强算法:(1)光照估计,(2)输入推导,(3)权重定义,(4)用于输入和权重融合的多尺度。我们将在下面分别描述这些。
3.1. 步骤1:光照估计
对于弱照明图像,我们使用光反射的简化物理模型。根据Retinex理论[29],捕获的图像是反射率和照明度的乘积,表示为
其中S是测量图像,R是反射率,I是照明,c是RGB(红、绿、蓝)空间的颜色通道,(x,y)是像素位置。为简单起见,假设三个颜色通道具有相同的照明,以便颜色信息保留在反射中。我们的目标是考虑照明包含亮度变化和自然度的信息[20],以及照明局部平滑的常见假设[17–19]
存在许多用于估计照明和反射分量的技术。例如,Li和Brown[32]提出了一种快速分离方法,通过从梯度直方图构建两个似然度。该方法将图像分解为平滑层和细节层,消除了反射干扰;Li等人[33]将图像分解为结构层和纹理层,以同时增强对比度和抑制jpeg伪影。
受暗通道先验算法[34]计算三个颜色通道中局部最小值来提升亮度的启发,我们提出了以下光照估计算法。首先,我们从图像的三个颜色通道的最大值获得图像亮度,以表示亮度变化,写作
此操作与获得暗通道的第一步相反,该步骤找到三个颜色通道中的最小值。
其次,由于照明是局部平滑的[19,20],应采用一些滤波操作来细化L。暗通道的作者进一步在重叠模式中使用最小滤波器来获得最终的暗通道图像。但是,此操作需要很高的计算时间。由于我们的目标是开发一种计算成本较低的增强方法,我们希望避免使用[34,19,20]中的计算密集型方法。为了实现局部平滑度和计算效率,我们提出了一种简单但有效的光照估计算法,使用形态学闭合运算:
其中P表示结构元素,•表示闭操作。除以255用于将后续操作的范围映射到[0,1]。形态学闭操作通过融合窄断点和填充轮廓上的间隙来平滑图像,而不会过度平滑以产生光晕效果。通过实验观察,选择圆盘作为结构元素可以得到最好的结果。该操作成熟且易于在实际应用中实现[35]。
可通过等式(3)有效地估计光照。我们使用引导滤波器[36]优化估计照明,以保持大轮廓的形状。滤波输出表示为i处的加权平均值
其中i和j是像素索引,滤波器内核W是引导图像g的函数。我们使用内核为:
其中ωk是以像素k为中心的窗口,|ω|是窗口中的像素数,
μ
k
μ_k
μk和
σ
k
2
σ_k^2
σk2是g的均值和方差,ε是正则化参数。在本文中,引导图像g是输入图像S的HSV颜色空间中的V层。
3.2. 步骤2:输入推导
在我们提出的基于融合的方法中,三个输入来自估计的照明。第一个输入
I
1
I_1
I1是原始估计照明I。它包含有关图像原始结构的信息,允许我们避免失真。例如,图3中顶部图像中的天空区域提供了良好的对比度信息
第二个输入
I
2
I_2
I2设计用于处理全局亮度,以帮助澄清图像的暗区域。可以采用许多增强运算符和函数来提高全局亮度,如gamma校正和sigmoid函数。在这项工作中,我们使用I的反正切变换计算第二个输入:
其中λ是控制亮度程度的参数。乘以2/π将范围映射到[)0,1。由于不同的图像具有不同的亮度,λ应自适应地改变。因此,根据我们的实验,引入了自动λ设置:
其中,
I
m
e
a
n
I_{mean}
Imean是估计照明I的平均值。很明显,较小的
I
m
e
a
n
I_{mean}
Imean表示较暗的亮度,因此获得更高的λ以实现更高水平的增强。
由于在提高全局亮度后压缩了动态范围,因此降低了局部对比度(参见图3中的左中图像)。因此,第三个输入I3旨在通过使用“对比度局部自适应直方图均衡化”(CLAHE)[6]增强局部对比度,我们将其直接应用于估计的照明I。CLAHE有助于扩展相邻结构之间的局部对比度。此外,该方法是成熟的,可以使用插值技术进行加速。因此,我们选择CLAHE而不是其他更复杂的方法,这些方法也可用于生成第三个输入。如图3中左下角的图像所示,CLAHE以降低整体亮度为代价来增强局部对比度。
3.3 步骤3:权重定义
下一步涉及设计权重,用于融合上面导出的三个输入图像。我们设计了用于融合的像素级权重。
亮度权重
W
B
W_B
WB为曝光良好的像素指定高值。高质量图像应具有自然的亮度,即既不太亮(过度曝光),也不太暗(曝光不足)。为了支持这一点,我们统计评估了来自谷歌图像的2000张曝光良好的图像。使用根据上一节获得的每个图像的照明图像,我们计算了2000个图像中每个图像的照明值的平均值、标准偏差和直方图。如图4所示,将范围映射到[0,1]后,平均值的平均值约等于0.5,标准偏差的平均值约等于0.25。基于此观察,我们将亮度权重设置为
其中k表示上一节中讨论的第k个派生输入。
W
B
W_B
WB的高值表示曝光良好的像素,而WB的低值表示曝光过度或曝光不足的像素。(参见图3中的第二列。)
第二个权重,我们称之为色度对比度权重
W
C
W_C
WC,通过将估计的照明与色度信息相结合来评估对比度。颜色对比度是图像质量的一个重要特征[37]。该权重根据色度滤波公式[38]计算
其中H为色调,S为原始输入彩色图像HSV颜色空间中的饱和度。参数α用于保持颜色对映性,而φ表示色轮的偏移角度。根据[38],我们设置α=2和φ=°250以保留最显著的区域。此权重的影响是高亮显示包含由照明和颜色引起的高对比度的区域。(参见图3中的第三列)
我们使用这两个权重来计算第三个权重
W
k
W_k
Wk
然后我们将其标准化,得到最终权重
图3显示了各个
I
k
I_k
Ik的最终权重
W
k
W_k
Wk。很明显,根据这些权重,每个
I
k
I_k
Ik都有“好”区域和“坏”区域。例如,输入
I
1
I_1
I1和
I
3
I_3
I3中的天空区域以及I2中的人将被组合用于全局亮度改善,而I3中的高对比度区域将用于局部对比度增强。
3.4. 步骤4:多尺度融合
我们使用上述信息获得调整后的照明,如下所示
由于每个“Wk”的和等于1,因此结果的强度等级保证与输入相同。
然而,如图5(b)所示,等式(12)的原始融合在增强结果中产生视觉上令人失望的伪影。这主要是由权重map的强烈转换引起的。为了克服这一限制,通常采用多尺度线性滤波器[39]或非线性滤波器[40]。非线性滤波器(例如WLS[40])产生类似的结果,同时需要复杂的计算。为了改善融合结果,采用了多尺度金字塔技术[39]。在[39]中,基于拉普拉斯算子,每个输入图像表示为在不同尺度下计算的模式总和。输入由高斯核卷积以生成低通滤波版本。在我们的例子中,我们将每个导出的输入
I
k
I_k
Ik分解为拉普拉斯金字塔以提取图像特征,并将每个归一化权重“Wk”分解为高斯金字塔以平滑强转换。这种方法是有效的,因为它混合了图像特征而不是强度。此外,拉普拉斯算子和高斯算子都是成熟的技术,在实际应用中易于实现
高斯金字塔和拉普拉斯金字塔具有相同的层数。然后,我们通过混合高斯金字塔和拉普拉斯金字塔的每一级来融合金字塔,如下所示:
其中,l是金字塔层数,在本文中设置为6,
L
{
I
k
}
L\{I^k\}
L{Ik}是导出输入Ik的拉普拉斯版本,
G
{
W
k
}
G\{W_k\}
G{Wk}是归一化映射
W
k
W_k
Wk的高斯版本。以自底向上的方式依次获得每个金字塔层。通过对融合棱锥体的每个级别求和,计算精细调整的照明度
式中,Ud为上采样算子,因子
d
=
2
l
−
1
d=2^{l−1}
d=2l−1。通过将调整后的光照补偿回反射率,生成最终增强彩色图像,
在图5(c)中,我们展示了使用这种多尺度技术的融合方法的结果。
4.实验与讨论
我们给出了实验结果来证明所提出的融合方法的性能。我们使用MatlabR2014A在配备2.60GHz Intel Pentium双核处理器和4G RAM的PC上运行所有实验。更多增强的图像/视频结果和Matlab源代码可在我们的网站上找到:http://smartdsp.xmu.edu.cn/weak-illumination.html.