基于雾气分布的大气光幕估计去雾算法
在雾天场景下,由于大气中存在的悬浮粒子对成像过程有一定的干扰作用,使得成像设备捕获到的图像存在视觉效果差、对比度降低、细节丢失等问题,导致一些计算机视觉系统难以正常工作,例如自动车辆导航、户外监控、遥感以及目标识别等。因此,对雾天等恶劣天气下图像的处理工作对后续的计算机视觉任务具有重要的意义。
目前现有的图像去雾算法中,主要分为基于传统方法的去雾算法和基于深度学习的去雾算法。在传统去雾算法中,主要分为图像增强类和图像复原类。图像增强类的算法有直方图均衡算法、Retinex算法等,此类算法虽然能够在一定程度上提高图像对比度、改善图像的视觉效果,但没有考虑图像退化的本质原因,容易造成图像信息丢失,并没有做到真正的去雾。复原类图像去雾算法通过研究雾天图像退化的物理机制,建立雾天图像退化模型,反演退化过程,补偿退化过程中造成的损失以获得无雾图像的最优估计值,从而改善雾天图像质量。相较而言,图像复原类算法具有内在的优越性,已成为去雾领域的研究热点。近年来,基于先验知识或假设的单幅图像去雾技术得到了重大突破。He等人[1]通过对室外无雾图像的大量观察,提出暗通道先验(Dark Channel Prior, DCP)算法,对一般雾天场景均具有较好的处理效果,但在含有天空或高亮白色物体时由于对透射率估计不准确,导致算法失效。Wang等人[2]提出有雾图像与无雾图像最小通道间存在线性关系的假设,构建线性模型来估计透射率,该算法运行速度较快,但存在复原结果整体较暗的问题。Yang等人[3]为避免最小滤波的弊端,提出一种用边缘保持函数代替最小滤波拟合暗通道的去雾算法,同时对透射率进行基于对数幂律变换的优化,进而得到了较为准确的透射率,但该算法对于一些景深跃变大的图像会产生一定的失真现象。虽然复原类算法各有局限性,但从复原成本与质量效果方面分析,此类算法仍具有较大的研究意义[4]。
近年来,基于数据驱动的去雾算法也取得了快速发展。Li等人[5]基于卷积神经网络提出一种图像去雾模型AOD-Net(All-in-One Dehazing Net),通过线性变换将大气光与透射率整合为一个变量,并将其代入大气散射模型得到无雾图像,但参数估计会使误差相互放大,影响去雾效果。Chen等人[6]提出一种端到端的门控上下文聚合网络(Gated Context Aggregation Network, GCANet )来恢复退化图像,该网络采用平滑扩张卷积消除网格伪影,引入门控子网络来融合多层次特征。该模型得到的效果较好,网络训练时间较短。Qin等人[7]提出了一种端到端的特征融合注意力机制网络,该网络融合通道与像素注意力机制,构建特征注意模块,使得主网络注重更有效的图像信息。基于深度学习的去雾算法往往需要利用现有数据集训练大量参数,对设备和数据集的要求较高,并且此类算法对于真实退化图像的去雾效果较差,目前在去雾领域存在一定的局限性[8]。
综上所述,本文提出一种基于雾气分布的大气光幕估计去雾算法。首先将Fade方法得到的雾气分布图像进行阈值分割与细化处理得到较为精确的雾气分布,通过分析景深、雾浓度、大气光幕之间的关系,建立大气光幕估计模型。其次,通过亮度权重图与自适应大气光阈值选取大气光区域,获取较为准确的大气光,进而恢复退化场景。算法不涉及透射率计算,避免了透射率估计不足带来的失真问题。
2 相关理论
在图像去雾领域,常用的雾天场景成像模型为大气散射模型[9]:
I(x)=J(x)t(x)+A(1−t(x))
, (1)
式中:x表示像素位置索引;I(x)代表退化场景:J(x)表示复原场景;t(x)表示介质透射率;A表示大气光,一般将其选取在无穷远处;J(x)t(x)为直接衰减成分,描述场景辐射在大气介质中的衰减;A(1−t(x))是大气光幕,描述了粒子对大气光的散射作用,其表达式为:
V(x)=A(1−t(x))
, (2)
由式(1)可得,大气光幕V(x)小于退化场景I(x),并且为正值。即:
{V(x)≤W(x)V(x)>0
, (3)
其中:W(x)=minc∈{r,g,b}(Ic(x))为退化场景最小通道值,c表示RGB颜色通道。在均匀介质中,透射率与场景深度的关系为:
t(x)=e−βd(x)
, (4)
式中:β为大气散射系数,d(x)为场景深度,将式(4)代入式(2)可得:
V(x)=A(1−e−βd(x))
. (5)
Zhu等人[10]通过分析得到,景深可反映雾浓度信息,并且与雾浓度存在正相关关系。通过对大量退化场景的观察发现,景深越大的区域往往雾浓度较大,图像亮度较高,纹理信息几乎不可见。故Zhu等人以亮度与饱和度之间的差异近似表示雾浓度,建立线性模型估计景深。基于大气散射模型,可直接估计透射率和大气光达到去雾目的[11-13],也可从估计大气光幕与大气光的角度进行图像复原[14]。但由于此模型自身的缺陷,所得复原结果偏暗,故提出一系列改进大气散射模型的去雾算法[15-16]。
3 本文算法
根据颜色衰减先验(Color Attenuation Prior,CAP)以及大气成像物理模型分析,雾气分布与景深存在正相关关系,并且根据推导可发现景深与大气光幕存在指数正相关关系。综合上述特性以及相关理论,本文对雾气分布与大气光幕进行建模,直接用雾气分布信息估计大气光幕,减小了算法复杂度。并提出一种亮度权重结合自适应阈值的大气光求取方法,进而得到复原场景。算法流程框图如图1所示。
图1 算法流程框图
Fig.1 Algorithm flow block diagram
下载: 原图 | 高精图 | 低精图
3.1 雾气分布
在雾天场景退化过程中,场景反射光受悬浮颗粒影响不同,会使退化图像产生不同程度的雾气。而对于不同的雾浓度,图像饱和度、亮度、纹理等特征也不尽相同。Choi等人利用在自然有雾和无雾图像上观察到的统计规律的可测量偏差,结合图像锐度、对比度能量、信息熵等12个特征设计了一个可估计图像雾浓度的雾感知密度评估器[17]:
Dmap1=FADE(I(x))
, (6)
式中:I(x)为输入有雾图像,Dmap1为输入图像1/8尺寸的雾浓度评估图。由于初始雾气分布图Dmap1的尺寸不利于后续操作,因此对Dmap1进行放大处理,将其放大为与输入图像相同的尺寸,结果如图2(b)所示。可以看出,Dmap1在整体上反应出了雾气的分布特点,浓雾区域具有较大的值,薄雾区域具有较小的值。但Dmap还是较为粗糙并伴有噪声,因此,本文将对其进行后续细化处理。
图2 雾浓度分布图
Fig.2 Distribution of haze concentration
下载: 原图 | 高精图 | 低精图
由于雾气的存在,人类可以通过其感知到景深,因此在去雾过程中,往往会保留部分远处的雾气以获得更自然的视觉效果。本文选择阈值θ对Dmap1进行分割处理。将Dmap1中大于θ的值置为θ,意味着这些区域雾浓度较高;小于θ的值不变,认为此区域的雾气随景深变化。具体映射操作如下:
Dmap2={Dmap1,θ,Dmap1<θDmap1≥θ
. (7)
参考Androutsos等人[18]对自然界图像亮度分量在HSV颜色空间中75%的划分,本文将θ取0.75时效果最好。从图2(c)可以看出,雾气分布图中还包含较多纹理信息,对其联合双边滤波操作进行细化,如图2(d)所示。对雾气分布处理的实验结果如图3所示,图3(a)为有雾图像,图3(b)为未对Dmap1进行处理的复原结果,图3(c)为处理后的实验结果。可以看出,未对Dmap1处理的复原结果存在很大缺陷,尤其在天空区域出现严重的失真现象。而对Dmap1处理之后的复原结果展示出较好的去雾效果与色彩保真度。
图3 雾气分布处理的实验结果对比。(a)雾霾图像;(b)初始雾气分布复原结果;(c)处理后雾气分布复原结果。
Fig.3 Comparison of experimental results of haze distribution treatment.(a) Haze imagets;(b) Recovery results of initial hazed istribution;(c) Rrecovery results of initial haze distribution aftert reatment.
下载: 原图 | 高精图 | 低精图
3.2 大气光幕与雾浓度的关系
式(5)中景深与大气光幕的指数相关关系如图4(a)所示。可以看出,当A与β确定时,大气光幕与景深存在非线性的正相关关系,并且这种关系在中景区域变化较为剧烈。考虑到景深在一定程度上可以反映雾浓度信息,即对于雾天图像,场景深度越大,雾浓度分布越高,反之亦然[19-20]。故利用雾浓度分布信息直接估计大气光幕,以减小累计误差与算法复杂度。同样地,雾浓度与景深类似具有与大气光幕呈正相关的关系曲线,具体关系为:
图4 景深、雾浓度与大气光幕关系曲线。
Fig.4 Relationship curve of the depth of field, haze concentration and atmospheric light veil.
下载: 原图 | 高精图 | 低精图
V(x)=αβDmap(x)−−−−−−−−√
, (8)
式中:α直接控制着去雾程度,当α较大时,得到的复原结果往往对比度高、较为饱和,较小的α得到的结果则存在去雾不彻底问题,因此,一个合适的α对复原结果至关重要。根据实验,本文将α取为0.75,具体实验结果如图5所示。
图5 参数α选取效果图
Fig.5 Effect of parameter α selection
下载: 原图 | 高精图 | 低精图
参数β控制估计曲线的增长速率,直接影响大气光幕的大小,如图6所示。大气光幕在一定程度上可反应雾浓度。通常情况下,远景区域的雾浓度大,大气光幕应具有较大的值;在中近景区域,雾气分布较少,大气光幕也较小。因此,参数β应能够根据景深变化调节大气光幕大小。考虑采用最小值通道构建调节函数。
图6 参数β对大气光幕影响曲线
Fig.6 Influence curve of parameter β on the atmospheric veil
下载: 原图 | 高精图 | 低精图
通常情况下,在景深较大的区域,雾气分布浓密,图像亮度较高,因此该区域最小通道值也较大,这导致估计的光幕过大,使复原图像出现过饱和问题。因此,为了能够调节β的值,获得较为准确的大气光幕,选取对数函数对最小值通道进行处理,将标准对数函数左移1恰好能够映射所有归一化像素,不存在溢出情况,具体定义为:
β(x)=log(Imin(x)+1)+0.1[0,1]
, (9)
其中:Imin(x)为退化场景最小颜色通道。
大气光幕的估计有效避免了透射率估计不准确问题。随机选取两张室外退化图像进行大气光幕估计复原,并与Tarel方法[21]进行效果对比,复原效果如图7所示。可以看出,Tarel所得大气光幕整体偏亮,对大气光幕估计过高,故得到的结果存在过饱和现象,并且在两幅图中都存在较为严重的伪影问题。本文估计大气光幕得到的结果很好地描述了雾气分布情况,并且去雾程度适中,较为自然。
图7 大气光幕估计复原图
Fig.7 Recovery results by atmospheric light veil
下载: 原图 | 高精图 | 低精图
3.3 大气光估计
在退化场景复原过程中,大气光直接影响着复原结果,它反映了场景的亮度信息。Kim等[22]提出一种结合四叉树分解的大气光值估计方法,通过分层策略不断分割选取标准差最小区域进而获得最终大气光值。但此方法会受大片白色物体影响而错选大气光位置,使复原结果发生严重偏色。根据大气散射模型与景深公式可以推导出大气光一般取在景深无穷远的平滑区域。一般情况下,景深无穷远处的雾气分布较为密集,亮度较高,因此,为获得较为准确的大气光,定义亮度权重图如式(11)所示:
Lweight(x)=L(x)Lmax−Lmin
, (10)
其中:L(x)为提取HSV颜色空间的亮度分量,Lmax为亮度分量的最大值,Lmin为亮度分量的最小值。可以看出,亮度权重图能够反映像素点相对于有雾图像的亮度水平。在此基础上,用阈值T进行大气光区域的选取。相对于清晰图像,雾气的存在影响了图像亮度,为获取准确的阈值,考虑在获取阈值时引入亮度偏差,阈值T具体表达如式(11)所示:
T=Lmean+δLm
, (11)
式中,Lmean为亮度分量的均值,Lm为亮度分量中大于Lmean的像素均值。δ为亮度分量的标准差。δLm即为亮度偏差,选择一个具有较高亮度水平的Lm与亮度分量标准差δ的乘积来衡量此参数,可以自动识别不同退化场景的亮度偏差。至此,在获取亮度权值与大气光阈值后,用阈值T对亮度权重的像素进行筛选,大于阈值的像素被筛选为大气光区域,并将这些像素映射到原有雾图像的像素均值作为最终的大气光。
3.4 退化场景复原
根据公式(1)、(2)可推导出利用大气光幕与大气光复原退化场景的公式:
J(x)=AI(x)−V(x)A−V(x)
. (12)
根据大气光幕恢复退化场景,可以避免透射率估计不准确带来的误差,获得更好的去雾效果。
4 实验结果与分析
为充分验证本算法的有效性,本文将进行主观评价与客观评价对实验结果进行分析。本文选择2个传统算法与3个深度学习算法进行评价对比。传统算法选择He等人[1]的DCP算法和Yang等人[3]的PDCP算法,深度学习算法选择Li等人[5]的AOD-Net算法、Qin等人[7]的FFA-Net算法和Chen等人[6]的GCANet算法。
4.1 主观评价
主观评价可以直观地从视觉效果方面展示出各算法的差异性。本文主要通过真实退化场景复原效果与合成退化场景复原效果进行对比,真实退化场景选取含天空及白色物体类雾霾图像与景深突变类雾霾图像进行效果对比,合成退化场景选取公开测试集RESIDE里的部分图像。
从图8~图10可以看出,6种算法对于真实退化场景的处理效果存在一定程度的差异。对于真实退化场景(图8、图9),He算法去雾彻底,但整体处理效果偏暗,这是因为大气散射模型的固有缺陷,并且在景深突变处出现光晕伪影问题。Yang算法在中近景区域去雾彻底,但远景还留有部分雾气。Li算法的整体去雾不彻底,并且在天空区域存在偏色问题。Chen算法对于景深变化缓慢的图像去雾效果较好,但在其他图像中存在去雾不彻底问题,并且在天空区域出现较为严重的偏色现象。Qin算法的整体雾气残留较多,在天空处出现了严重的偏色问题。本文算法去雾程度适中,颜色鲜艳,纹理信息丰富。对于合成退化场景(图10),He算法的整体去雾效果较好,但对于天空区域的处理仍存在一定的缺陷。Yang算法对于合成图像处理效果较好,复原图像饱和度适中,视觉效果较好。Li算法的复原结果雾气残留较多。Chen算法的复原结果在天空区域存在严重偏色问题。Qin算法的复原结果在天空处出现偏色现象,并且有雾气残留。本文算法得到的复原结果去雾彻底,颜色自然,细节信息丰富。
图8 含天空及白色物体的场景复原结果对比
Fig.8 Comparison of recovery results of scenes with sky region and white objects
下载: 原图 | 高精图 | 低精图
图9 景深变化剧烈场景的复原结果对比
Fig.9 Comparison of recovery results of real degradation scenes with depth of field change sharp
下载: 原图 | 高精图 | 低精图
图10 合成退化场景的复原结果对比
Fig.10 Comparison of recovery results of synthetic degradation scenes
下载: 原图 | 高精图 | 低精图
4.2 客观评价
主观评价能从视觉效果上对比各算法的差异性,但仍然较为片面。为了进一步说明本算法的有效性,以客观指标评价作为辅助评价。对于真实退化场景,本文选取新增可见边率(e)、平均梯度(r)、信息熵(s)、运行时间(t)4个指标进行对比。4个指标中,运行时间越小越好,其他指标越大越好。对于合成退化场景,选择结构相似度(Structural Similarity, SSIM)与峰值信噪比(Peak Signal Noise Ratio, PSNR)2个有参考指标进行对比,2个指标都是越大越好。随机选取RESIDE数据集中的4张图片求取指标平均的方式进行各算法对比。
无参考评价指标对比如表1和表2所示。可以看出,本文算法具有较高的新增可见边率和信息熵评价,表明本文算法恢复结果细节信息丰富、颜色鲜艳。Yang算法获得了较好的平均梯度和运行时间评价,说明Yang算法在算法速度上有较大的优势,但本文运行时间与平均梯度超越了4种对比算法,表明本算法具有较高的有效性与可行性。Chen算法在Image3中,新增可见边率出现了负值,这说明该算法恢复细节信息能力存在一定不足。有参考指标评价对比如表3所示,本文算法在PSNR与SSIM上超越了4个对比算法,获得了较高的指标值。Qin算法虽然具有最高的PSNR与SSIM,但结合主观效果对比发现,其复原结果雾气残留过多,视觉效果较差。这是由于在其网络训练时,存在过拟合问题,基于深度学习的去雾算法往往难以避免此问题[23-24],这也说明单一的指标对比并不能充分说明算法的优劣[25]。综合主、客观评价对比发现,本文算法在退化场景的复原处理中具有较高的可行性和有效性。
表1 客观评价指标e和r
Tab.1 Objective evaluation on index e and r
He Yang Li Chen Qin Ours
e r e r e r e r e r e r
Image1 0.471 1.344 0.513 1.632 0.197 1.479 0.287 1.210 0.287 1.210 0.412 1.667
Image2 0.357 1.339 0.532 1.438 0.061 1.235 0.437 1.334 0.268 1.218 0.535 1.205
Image3 0.070 1.197 0.064 1.208 0.028 1.223 -0.009 0.989 -0.004 0.958 0.207 1.353
Image4 0.260 1.612 0.252 1.681 0.152 1.475 0.188 1.585 0.132 1.240 0.236 1.465
Image5 0.214 1.266 0.063 1.195 0.074 1.014 0.068 1.092 0.041 1.070 0.130 1.231
Average 0.274 1.352 0.285 1.431 0.102 1.285 0.194 1.242 0.145 1.139 0.304 1.384
下载: 导出CSV
表2 客观评价指标s和t
Tab.2 Objective evaluation on index s and t
He Yang Li Chen Qin Ours
s t/s s t/s s t/s s t/s s t/s s t/s
Image1 13.710 0.966 14.800 0.568 14.210 1.649 13.927 8.876 13.963 65.742 15.926 0.946
Image2 15.633 1.089 16.412 0.687 14.147 1.533 15.856 7.534 14.550 29.009 15.988 1.315
Image3 16.524 0.957 14.323 0.579 15.462 0.362 16.584 1.651 16.701 15.955 16.159 1.204
Image4 15.558 1.097 15.695 0.691 15.009 0.661 16.068 7.845 15.728 73.315 15.939 1.197
Image5 16.825 2.465 16.775 1.849 14.336 6.491 17.139 3.592 17.204 217.137 16.186 1.853
Average 15.650 1.315 15.601 0.875 14.633 2.139 15.915 5.899 15.629 80.232 16.040 1.303
下载: 导出CSV
表3 数据集测评指标
Tab.3 Indicators of dataset
He Yang Li Chen Qin Ours
PNSR 14.673 18.641 18.761 18.993 24.900 20.851
SSIM 0.856 0.896 0.922 0.934 0.956 0.936
下载: 导出CSV
5 结 论
雾霾天气下捕获的降质图像对计算机视觉任务造成了较大的影响,对这些降质图像的复原算法研究一直是计算机视觉领域的热点。为能够快速、高效地复原退化场景,本文提出了一种雾气分布下的大气光幕估计算法。首先,将Fade方法提取到的初始雾气分布图进行阈值分割与细化处理得到较为准确的雾气分布信息。其次,通过分析景深、雾浓度、大气光幕之间的关系,建立大气光幕估计模型。最后,通过亮度权重图与自适应大气光阈值选取大气光区域,获取较为准确的大气光,进而恢复退化场景。实验结果表明,本文算法恢复图像清晰自然,去雾效果彻底,并且能够保留图像中的细节信息。
- 2025年中科院分区表已公布!Scientific Reports降至三区
- 官方认定!CSSCI南大核心首批191家“青年学者友好期刊名单”
- 2023JCR影响因子正式公布!
- 国内核心期刊分级情况概览及说明!本篇适用人群:需要发南核、北核、CSCD、科核、AMI、SCD、RCCSE期刊的学者
- 我用了一个很复杂的图,帮你们解释下“23版最新北大核心目录有效期问题”。
- 重磅!CSSCI来源期刊(2023-2024版)最新期刊目录看点分析!全网首发!
- CSSCI官方早就公布了最新南核目录,有心的人已经拿到并且投入使用!附南核目录新增期刊!
- 北大核心期刊目录换届,我们应该熟知的10个知识点。
- 注意,最新期刊论文格式标准已发布,论文写作规则发生重大变化!文字版GB/T 7713.2—2022 学术论文编写规则
- 盘点那些评职称超管用的资源,1,3和5已经“绝种”了