1. 引言
雾是呈乳白色微小液滴构成的气溶胶,其底部位于地球表面,也称谓为地面的云。在雾的影响下,经过物体表面的光被大气中的颗粒物吸收和反射,导致获取的图像质量差,边缘模糊、色彩暗淡。针对这种因自然现象导致的图像质量下降问题,开展基于图像处理方面研究具有普遍的现实意义。
图像去雾算法可分为图像增强和图像复原两大类 [1] [2] 。从图像呈现的低亮度和低对比度的特征考虑,采用增强的方法处理,即图像增强。比较典型的有同态滤波 [3] 、Retinex [4] 算法等。基于物理模型的天气退化图像复原方法,从物理成因的角度对大气散射作用进行建模分析,实现场景复原,即图像复原。对于有雾气象状况下的大气物理退化模型 [5] ,通过估算参数,反演退化,可获得退化前的无雾条件下的清晰图像。
何博士在2009年提出了经典的暗通道先验 [6] 的方法。近些年,基于该原理的去雾算法有了较大的发展,文献 [7] 提出了基于双边滤波的改进算法,文献 [8] 提出了基于引导滤波的改进算法,这些算法虽然提高图像处理效果,但是在分析天空等较明亮的物体处理上,存在图像色彩失真问题。针对这一问题,文献 [9] [10] 提出了利用联合三边滤波器或制导滤波器细化天空区域的分割,达到防止天空区域出现色彩失真的问题。此外,还有学者在偏微分 [11] 方程和利用图像的景深 [12] 方面,做了大量的研究。
本文在研究该模型的基础上,在分析原有的透射率估计的不足的基础上,提出了改进算法。并针对暗通道去雾模型在去除大面积雾霾时候,引入的颜色失真的问题,针对性的提出改进方法。仿真实验结果表明:改进算法在图像去雾和颜色保真方面具有一定的普适性。
2. 暗通道去雾的原理
在机器视觉和图像处理领域,描述含雾、霾图像的数学模型可表示为如下形式:
(1)
其中,I(x)是待去雾图像,J(x)是要恢复的无雾图像,参数A是全球大气光成分,t(x)为透射率。
透射率还可表示为
,β为大气的散射系数,该式表明景物光线是随着景物深度d,按指数衰减的。
在现实生活中,有必要在去雾的时候保留一定程度的雾。这可以通过在上式中,引入一个在[0, 1]之间的因子来实现,则上式修正为:
(2)
当透射率过于粗糙时,直接导致图像部分边缘模糊。软抠图的算法可以获得透彻、细腻的透射率,但该算法实时性差。折中策略是采用最小值滤波或引导滤波估算透射率。
采用折中策略估算的透射率,能够较好的应用在包含远距离的小物体的场景下,主要缺陷是去雾后,图像边缘模糊。此外,当该算法运用在目标颜色和天空接近并且存在大面积雾霾区域的场景下,图像去雾效果欠佳。
3. 本文算法
引导滤波(Guided Image Filtering, GIF)是一种图像平滑化的非线性滤波器,在运用到图像去雾算法的同时,也存在图像去雾颜色失真,边缘模糊等不足之处。
改进的加权引导图像滤波(Weighted Guided Image Filtering, WGIF)可以有效减少GIF的晕轮伪影。然后由于没有明确的约束来处理图像的边缘,所以WGIF在某些情况下不能很好地保留边。
梯度域导向滤波,明确的引入一阶边缘的梯度约束条件,该边缘可感知设计的约束条件,可更好的保留边缘,这种算法被应用在图像细节增强和图像显著性检测方面。为此本文采用梯度域导向滤波器,改善图像去雾失真,提高图像边缘轮廓的清晰度。
3.1. 梯度域引导滤波器
定义的引导滤波器如下所示:
(3)
其中,Z表示输出,G为引导滤波器,Ω表示以像素i为中心的窗口。为便于统计αj和βj,定义了损失函数E,综合分析滤波效果。通过计算使得损失值最小,而得到最佳的图像处理效果。
(4)
加权系数λ,通常是正则项,为防止αj过大,通常采样线性回归。
GIF是最迅速的边缘保持局部滤波器之一,在避免梯度反转的能力上胜过双边滤波,由于GIF中正则系数是固定值,则不可避免的损失边缘像素。为克服这种情况,加权引导滤波WGIF被推了出来。
WGIF的损失函数被定为:
(5)
其中,γG是边缘感知加权系数,它通过计算3 × 3窗口内像素的局部变化,结合像素方差进行具体的分析。该加权系数用于体现当前像素对于整个滤波图像的重要性。
WGIF可以很好的减少边界光圈模糊,但设定的零阶的强度约束,获得期望的像素值和梯度域约束,从而在空域上进行像素平滑。这些边缘保留方法,在像素灰度值接近的大面积区域下,不能得到较好的结果。
为克服这些问题,定义带局部差异的分析窗口,并设置大容量的滤波器窗口,通常设置为8的倍数,这样的权重函数可以判断每个像素对于整个图像的重要性。为更好的保留边缘像素,设计如下的损失函数:
(6)
其中,ζj的定义如下:
(7)
其中,
是
的平均值。
从上式可以发现,如果像素处于图像边缘上,则ζj的值接近1,如果该像素处在平坦的区域内,则该值接近于0。
为验证上述理论分析,下图1是采用各类滤波算法对数字图像领域经典的lean图像,进行滤波分析得到的效果图。
其中上图1中,图1(a)是彩色原图,图1(b)是灰度图,图1(c)是最小值滤波后的效果图,图1(d)是双边滤波后的效果图,图1(e)是引导滤波后的效果图,图1(f)是加权引导滤波后的效果图,图1(g)是梯度域引导滤波后的效果图。为进一步描述这些滤波算法对边缘保留的效果,将滤波效果图与原始灰度进行差分得到如下图所示的差分效果图。
![](//html.hanspub.org/file/12-1542931x18_hanspub.png?20230925094142410)
Figure 2. Smoothed edge detail loss effect image
图2. 滤波后像素边缘细节损失效果图
上图2中,图2(a)是最小值滤波与原图的灰度图差分后得到损失效果图,图2(b)是双边滤波和与原图的灰度图差分后得到损失效果图,图2(c)是引导滤波与原图的灰度图差分后得到损失效果图,图2(d)是加权引导滤波与原图的灰度图差分后得到损失效果图,图2(e)是梯度域引导滤波原图的灰度图差分后得到损失效果图(小绿点标记损失的)。
显然,梯度域引导滤波后对图像边缘的保持方面效果最佳。这证明了我们之前的分析,梯度约束可以使结果与近边的输入数据更相似。因此,本文提出的梯度域引导图像滤波比GIF和WGIF能更好地保持图像的边缘。
3.2. 大气透射率模型的估计
3.2.1. 基于梯度域引导滤波的优化
梯度域引导滤波在保存图像边缘,克服像素失真和计算量小的大量优势下,本文采用该算法提高透射率图像模型。下图3、图4是各类滤波算法对暗通道模型的透射率图像进行滤波处理后的效果图。
![](//html.hanspub.org/file/12-1542931x19_hanspub.png?20230925094142410)
Figure 3. Transmission filter effect diagram 1
图3. 透射率滤波效果图一
![](//html.hanspub.org/file/12-1542931x20_hanspub.png?20230925094142410)
Figure 4. Transmission filter effect diagram 2
图4. 透射率滤波效果图二
其中,图(a)是原图,图(b)是三通道最小值图,图(c)是最小值滤波后的透射率图像,图(d)是引导滤波后的透射率图像,图(e)是加权引导滤波后的透射率图像,图(f)是梯度域引导滤波后的透射率图像。
为进一步量化分析各类滤波算法得到的透视率图像的图像质量,采用信噪比、信息熵、边缘强度和图像清晰度等多个客观图像量化指标来分析各类算法。滤波算法的量化指标如下表1所示,提出的基于梯度域引导滤波的改进算法在各项指标上均有优势,从另一方说明了改进算法的有效性。
![](Images/Table_Tmp.jpg)
Table 1. Evaluation of filtering effect of transmission image
表1. 透射率图像滤波效果评价
3.2.2. 天空区域补偿优化
透射率估计在针对天空等含雾霾区域较多或者图像存在大面积雾霾的情况下,容易估计不准确,导致色彩偏差或颜色失真等情况。为此,必须首先识别出具有较高亮度值、且有平滑像素特征的天空区域,然后进行天空区域修正。算法的关键步骤是:图像二值化后与其梯度图像进行与运算,得到天空的大概区域;然后通过边缘跟踪,取出最大面积的区域标记为天空区域;最后采用如下的分段像素抑制法,修正天空区域的像素灰度值。
为抑制颜色失真,提出基于像素分段修正算法。建立如下式所示的天空区域补偿修正模型,以减少天空或获取远景图像含大面积雾霾情况下,大气透射率估计的不足。
(8)
上式8中,L1通常取220,L2通常取180。利用该分段映射函数对透射率图像进行修正,抑制天空或大面积雾霾图像的颜色偏差问题。
下图5是两类图像的处理效果图,其中图5(a)是原始算法,图5(b)是采用引导滤波算法,图5(c)是引导滤波的基础上叠加天空区域分段映射因子。
显然,运用这些映射方程修正后,雾霾区域的亮度得到修正,同时对含雾图像的景深、缓慢变化的近景区域出现的颜色过饱和、颜色暗沉现象,可通过修正阈值或者通过图像全局的伽马校正进行补偿。
![](//html.hanspub.org/file/12-1542931x22_hanspub.png?20230925094142410)
![](//html.hanspub.org/file/12-1542931x23_hanspub.png?20230925094142410)
Figure 5. Optimal compensation map of sky region
图5. 天空区域优化补偿图
4. 实验结果
为验证算法的有效性,文章设计了多类型场景的雾霾图像去雾仿真实验,实验平台为Intel® Core (TM) i5-8250U双核1.6 GHz和1.8 GHz CPU,内存4 GB。软件仿真平台为MATLAB 2015a。下图6~8是本文设计的改进算法与其他各类算法的去雾效果的比较图。
![](//html.hanspub.org/file/12-1542931x24_hanspub.png?20230925094142410)
Figure 6. Comparison of fog removal effect of large-area haze images
图6. 大面积雾霾图像去雾效果比较
![](//html.hanspub.org/file/12-1542931x25_hanspub.png?20230925094142410)
Figure 7. Comparison of fog removal effects of large-area sky images
图7. 大面积天空区域图像去雾效果比较
![](//html.hanspub.org/file/12-1542931x26_hanspub.png?20230925094142410)
Figure 8. Comparison of defogging effects for distant images
图8. 远景图像去雾效果比较
![](//html.hanspub.org/file/12-1542931x27_hanspub.png?20230925094142410)
Figure 9. Comparison of fog removal effect of local image in distant scene
图9. 远景局部图像去雾效果比较
上述系列图像的去雾的演示图6~9中,图(a)是原始图像,图(b)是采用最小值滤波的去雾图像,图(c)是引导滤波去雾的图像,图(d)是加权引导滤波去雾的效果图,图(e)是采用梯度域引导滤波结合天空区域分段颜色补偿的去雾效果图。
改进算法针对类似图6的大面积雾霾图像,在实现去雾的同时也实现色彩的高保真传递;针对图7类似的大面积天空区域的雾霾图像,在实现对近景景物去雾的同时,景物的色彩恢复和清晰度方面均有较大改善;在针对类似图8的远景大视场雾霾图像,在实现良好去雾的前提下,对色彩复原和细节增强方面也有较大提高。
基于最小值滤波和引导滤波的去雾算法在处理大面积包含天空或远景图像时,存在颜色恢复失真,整体图像偏暗等问题。加权引导滤波算法相比前两者,在图像去雾方面,具有一定的优势,基于梯度域引导滤波的去雾算法在保证图像颜色显示更自然,细节更丰富等方面存在较大优势。在上图9的远景图像去雾效果局部图中,改进算法实现了局部建筑群图像的清晰再现,上述对其他各类算法的总结描述更加明显。
下表2的分析数据是针对上图8中的图片序列,采用客观评价指标对去雾算法进行对比分析的结果。其中,平均梯度和空间频率等指标主要描述了图像去雾后图像的清晰度,色彩指数和视觉熵主要描述图像去雾后颜色和细节方面的描述指标。显然,改进算法在上述指标方面均有较大优势。
![](Images/Table_Tmp.jpg)
Table 2. Evaluation of various algorithms for fog removal
表2. 各类算法的去雾效果评价
5. 结论
本文提出了一种基于梯度域引导滤波的图像去雾算法,利用基于梯度域引导滤波算法提高边缘保持特性,然后针对天空或大面积雾霾区域进行透射率补偿,消除了天空等大面积去雾引起的颜色失真问题。实验结果表明:设计的算法切实可行。针对不同的雾霾区域,采用不同的补偿算法来提高透射率估计,是一个切实可行的技术路线。