b. 西安交通大学 实践教学中心, 西安 710049
b. School of Practical Education Center, Xi'an Jiaotong University, Xi'an 710049, China
在雾天条件下, 空气中的大量悬浮颗粒对光线具有吸收和散射的作用, 导致设备采集的图像表面特征模糊不清、颜色饱和度和对比度下降, 极大地降低了图像的视觉效果, 严重影响许多领域的正常工作, 例如视频协助运输[1-3]、户外视频监控[4-6]、遥感影像分析[7-9]等。因此, 图像去雾技术具有非常重要的研究意义和应用前景。
目前, 图像去雾方法主要分为2大类:基于图像处理的增强方法和基于物理模型的图像复原方法。图像增强类方法简单快速, 其主要目标是提升雾天图像的视觉效果, 主要包括直方图均衡化[10-12]、伽玛校正[13]、基于Retinex[14-15]以及基于同态滤波[16-17]等方法。直方图均衡化去雾方法主要是通过增加像素灰度值的动态范围, 将有雾图像的直方图通过算法转化为均匀分布的形式, 从而提升图像的对比度。文献[11]提出局部直方图均衡化方法, 其核心思想是将图像分成各个相互不重叠的子块, 再对所有子块进行直方图均衡化处理。此方法有利于增强图像的特征信息, 能克服全局变换的不足, 但会过度放大图像中相同区域的噪音。文献[12]提出子块部分重叠局部直方图均衡算法, 该算法虽然降低了计算量且凸显了图像特征, 但是去雾效果不足。文献[15]提出单尺度Retinex(SSR)和多尺度Retinex(MSR)算法, 这类方法简单快速, 但不能从光学成像的本质上实现去雾。
基于物理模型图像复原方法根据大气散射模型和先验知识, 反演退化过程, 并补偿该过程造成的失真, 尽可能地使图像逼近真实场景。文献[18]通过最大化有雾降质图像的对比度, 同时保证局部景深过渡平滑而得到复原图像。该方法虽然能达到去雾的目的, 但是常会出现过饱和的现象, 造成复原图像的色调偏移和颜色失真。文献[19]构建一个由对比度和信息丢失组成的代价函数用于静态图像去雾, 但该方法去雾不彻底。文献[20]提出基于暗原色先验的单幅图像去雾方法。尽管该方法去雾效果稳定且有效, 但是由于建立在暗原色先验的基础上, 对于不存在暗原色条件的天空等明亮区域, 复原图像会出现严重的色彩失真, 同时运算量也较大。
针对上述算法存在的问题, 为抑制天空区域出现光晕现象, 解决去雾图像场景亮度严重降低的问题, 本文提出一种分块优化透射率和自适应优化场景亮度的图像去雾算法。通过评判图像有雾程度对透射率进行分块优化, 根据优化后的透射率图以及大气光值, 求解大气散射模型[21-22]获得无雾图像, 并局部自适应地调整图像灰度值。
1 基于分块优化透射率的去雾方法 1.1 大气散射模型文献[22]通过研究有雾天气对景物反射光线的散射作用与环境光对图像对比度的影响, 反演出景物原本的图像, 提出了雾天图像退化模型(大气散射模型), 其表达式为:
$ I(x) = J(x)t(x) + A(1 - t(x)) $ | (1) |
其中, I表示观测到的有雾图像, J表示待复原的无雾图像, t表示光线在有雾介质中的透射率, x表示图像中的像素, A表示大气光强度, 一般可看作是常数。图像去雾算法的目标是根据输入图像I(x)求解未知的A、t(x)和输出图像J(x)。
1.2 图像有雾程度的评判方法在图像去雾技术研究中, 若能找到一种评判图像有雾程度的标准, 将有助于求取更优的透射率, 以恢复优质的无雾图像。直方图均衡化方法的核心思想是对图像进行非线性拉伸, 重新分配图像像素通道的灰度值, 使得一定灰度范围内的像素点数量大致相同。根据这个原理, 清晰图像的灰度值标准差会比有雾图像大。受此启发, 本文提出了一种衡量图像有雾程度的评判方法。
图 1给出3幅有雾图像及其对应的无雾图像, 其灰度值标准差如表 1所示。由表 1可以得出, 清晰图像的灰度值标准差远大于有雾图像, 由此说明图像灰度值的标准差是判断图像有雾程度的一个重要的衡量标准。但是, 当一幅图像偏白或偏黑时, 图像的大多数灰度值接近于0或者255, 这时图像的灰度值标准差也非常大, 所以灰度值标准差不能作为判断图像清晰度的唯一标准。为此, 本文引入一个灰度值失真率作为补偿标准。
![]() |
Download:
|
图 1 有雾图像和无雾图像示例 |
当透射率选取不当时, 根据有雾图像模型恢复的无雾图像中存在大量灰度值小于0或大于255的情况, 将这些灰度值小于0或大于255的点称为失真点。结合灰度值标准差和失真率, 本文定义图像清晰度的衡量标准为:当一幅图像的灰度值标准差越大且失真通道越少时, 该图像越清晰。图像清晰度s的计算公式为:
$ s = \sqrt {\frac{{\sum\limits_{i = 1}^n {{{\left( {{p_i} - \bar p} \right)}^2}} }}{n}} - r \times \frac{c}{C} \times 255 $ | (2) |
其中, pi为图像像素点通道的灰度值, p是图像中所有像素点通道灰度值的平均值, c为图像中所有失真通道的个数之和, C为图像所有通道个数总和, r为失真因子, 用以调节失真通道所占比重。s值越大, 则图像越清晰。
1.3 分块透射率在大气散射模型公式3个未知量中, 大气光强度A是常数, 可通过计算获取。经过遍历透射率t, 结合本文的图像有雾程度评判标准, 可求得图像的最佳透射率。但是对于一幅有雾图像, 除非雾气分布非常均匀, 否则往往不只有一个透射率。所以, 本文提出图像分块优化透射率的思想, 具体步骤如下:
1) 采取文献[20]算法求取大气光强度A。
2) 对图像进行分块处理, 认为同一块图像中的所有像素点具有相同的透射率t。
3) 遍历每块图像的透射率t, 根据式(1)恢复该块对应的无雾图像, 并通过式(2)求取该图像清晰度s, 以s最大时对应的透射率t作为该图像块的最佳透射率。
4) 分块遍历整幅图像, 结合上述得到的透射率图以及大气光值, 通过式(1)恢复无雾图像。由于每块图像透射率之间存在差异, 导致复原图像块与块之间存在边框轮廓, 如图 2所示。
![]() |
Download:
|
图 2 图像分块恢复边框效应 |
5) 为去除边框效应, 笔者尝试了中值滤波、均值滤波、双边滤波、引导滤波等方法。根据去雾效果、时间复杂度等因素, 本文采用引导滤波对透射率图进行滤波处理, 如图 3所示。根据滤波后的透射率图和大气光值, 通过式(1)复原无雾图像
![]() |
Download:
|
图 3 引导滤波前后透射率对比 |
2.1 复原图像场景亮度下降现象
由于在自然界中雾的浓度分布往往是不均匀的, 且图中不同区域的对比度也不尽相同, 因此通过基于暗原色先验方法[20]对某些图像去雾后会导致复原图像场景亮度严重下降, 影响视觉效果。如图 4所示, 去雾后的复原图像整体场景亮度下降, 特别是对于重雾图像, 由于场景亮度严重下降导致复原图像部分信息丢失。
![]() |
Download:
|
图 4 文献[20]算法去雾后复原图像示例 |
采取文献[20]算法求取的大气光强度A不够精确。由于大气光强度A与图像的灰度值有关, 本文从像素通道灰度值入手, 提出一种自适应优化场景亮度的方法。为了细化灰度级调整幅度且不增加时间复杂度, 将在图像分块的基础上对灰度级进行调整修正。在图像块很小的情况下, 认为小块中的像素通道的灰度级基本一致, 对小块整体进行灰度级调整。本文根据每块图像的平均灰度值和整幅图像的平均灰度值之间的关系, 采用调整倍数来衡量图像灰度级调整的幅度, 提出如下灰度级调整方式:
1) 对于平均灰度值较小的小块, 为获取更好的视觉效果且不至于丢失图像信息, 应使其像素通道的灰度级提升, 自适应调整公式如下:
$ M = 1 + \frac{{(2 - G) \times G - g}}{G} \times (2 - G) $ | (3) |
其中, M是该小块像素通道灰度级应该提升的倍数, G是归一化的整图平均灰度值, g是归一化的小块平均灰度值。以1加上小块平均灰度值g和整图平均灰度级G之间差距的比例作为该小块灰度级增长的倍数。为了使灰度级调整的幅度变大, 分子中的G配以相应的增长系数, 本文以(2-G)作为该系数, 以2作为上限控制, 使其不至于增长过大导致图像过亮而丢失信息。若整图的灰度级越小, 则该系数越大, 此时调整的幅度就越大。为进一步增大调整的幅度, 增长比例上再乘以(2-G)的增长系数, 综上, $\frac{{(2 - G) \times G - g}}{G} \times (2 - G)$为块中灰度级增加的幅度。
2) 对于平均灰度值较大的小块, 为了防止部分图像信息丢失出现失真现象, 调整的幅度不宜过大, 应小幅降低像素通道的灰度级, 以获得更好的视觉效果, 调整公式如下:
$ M = 1 - \frac{{g - G}}{G} \times {r_a} $ | (4) |
其中, ra为调整系数。
自适应优化场景亮度的具体步骤如下:
1) 求原有雾图像的归一化平均灰度值G, 取(2-G)×G作为调整小块灰度级的基准。
2) 对图像进行分块处理。当图像块较小时, 认为图像块内的像素通道的调整幅度一样, 即每一小块对应一个灰度级调整倍数。
3) 遍历每一小块, 求取每一小块的归一化平均灰度值g。如果g≤(2-G)×G, 根据式(3)计算其应调整的倍数; 否则, 根据式(4)计算其应调整的倍数。遍历完成后形成一张调整倍数图。
4) 对得到的调整倍数图进行引导滤波, 获取平滑的调整倍数图, 如图 5所示。
![]() |
Download:
|
图 5 分块优化灰度级图 |
5) 将复原的图像按通道乘调整倍数图得到增强场景亮度的无雾图像, 如图 6所示。
![]() |
Download:
|
图 6 自适应优化场景亮度效果 |
本文实验利用MatlabR2016a编程实现, 实验环境为Windows 10 64位操作系统、8 GB内存(三星DDR4 2400 MHz)、Intel Core i5-7300HQ@2.50 GHz四核处理器的笔记本电脑。实验设置图像块大小为10 pixel×10 pixel, 在每块图像中透射率t∈(0, 1]按照0.05步长进行遍历, 失真因子r=1, 调整系数ra=0.015。
3.1 合理性验证如图 7(b)所示, 从分块优化透射率去雾法(策略1)效果图可以看出, 本文提出的有雾程度评判标准能找出每小块图像的最佳透射率, 保证了去雾的彻底性。本文采用暗原色先验法选取图像前0.1%最亮点的像素点通道平均值求得大气光强度A。由于雾图中不同部分雾的浓度和对比度均有可能不同, 通过暗原色先验法求取的大气光强度对于图像的大部分区域都偏大。根据式(1), 当I(x)和t(x)一定时, A越大, J(x)越小。所以, 对于去雾后图像的大部分区域场景亮度都明显降低。针对该问题, 本文在去雾的过程中加上自适应增强场景亮度的策略(策略2)。由图 7(c)可以看出, 去雾图像不同部分的场景亮度得以优化, 天空周边的景物信息由于场景亮度降低得以保留, 充分说明了策略2的自适应性, 整体场景亮度提升明显且视觉效果显著变好。
![]() |
Download:
|
图 7 本文算法效果 |
为了验证本文算法去雾的有效性和可行性, 利用主客观评价方式对本文所提出的2个策略进行分析和比较。
3.2.1 主观视觉效果分析针对分块优化透射率实现去雾部分, 采用文献[20]算法、文献[19]算法和本文算法对不同程度的有雾图像进行实验, 对比结果如图 8所示。从图 8(a)和图 8(b)可以看出, 相较其他2个算法, 本文算法去雾能力更好, 且天空区域抑制了光晕现象。图 8(a)中的树木在文献[20]算法、文献[19]算法去雾后, 由于场景亮度下降导致图像部分信息丢失, 而本文算法较好地还原出树木景物, 图像场景亮度有了显著的提高。从图 8(c)可以看出, 本文算法在重雾浓度情况下仍然具备优势, 不仅去雾能力强, 且自适应对比度增强法稳定性、适应性好, 去雾图像的场景亮度得到有效提高, 较好地还原了图像信息, 视觉效果最佳。
![]() |
Download:
|
图 8 图像去雾效果对比 |
为评估自适应优化场景亮度的效果, 且排除算法去雾能力的干扰, 本文采用同一幅无雾图进行对比实验。本文选择的对比算法为伽玛矫正和同态滤波算法, 从算法用时和直方图数据2个方面来衡量, 其结果如图 9所示。与原始图像直方图形状相比, 经伽玛校正处理的图像直方图形状更为陡峭, 说明图像的对比度变得更差, 图像的视觉效果改善不明显, 并表现出图像灰度分布向高亮度区域迁移。经同态滤波处理的图像视觉效果, 特别是图像的整体对比度和层次感, 得到了明显的改善, 但是部分区域存在过增强现象。从对应的直方图可以看出图像灰度分布区域变的更宽广, 这表明图像整体对比度得到较大改善。本文算法处理的图像视觉效果最好, 图像亮度适中, 较原始图像有明显改善, 也避免了明显的过增强现象。从相应直方图可看出, 图像灰度分布相比原始图像分布向高亮度区域有一定的迁移, 但保持整体形状不变, 说明本文算法在亮度增强方面具有优势, 同时可保证图像不失真, 符合人眼观察效果。
![]() |
Download:
|
图 9 亮度增强对比效果及其直方图 |
为了对本文算法的效果进行量化评价, 本文从复原图像的信息熵E、平均梯度G、平均灰度g和可见边的规范化梯度均值r进行法分析对比。信息熵E越大, 表示复原图像包含的信息量越大, 细节强度越大, 复原结果越清晰。平均梯度G反映细节和纹理信息的细小改变, 其值越大表示复原图像的对比度越高, 细节越清晰, 保边效果越好。为充分验证本文算法在去雾能力方面的优越性, 对比算法均已采用本文自适应优化场景亮度处理。
如图 10所示, 文献[20]算法去雾后的可见边图天空区域有明显的纹路, 这说明其处理后图像天空区域出现严重的光晕效应。而本文算法可见边图的天空区域非常清晰干净, 说明本文算法有效地抑制了光晕现象且去雾效果明显。如表 2所示, 相较于文献[20]算法和文献[19]算法, 本文算法的4个参数均最优, 所以本文算法处理后的图像更加清晰, 保边效果明显, 且能有效地优化场景亮度。经过场景亮度的公平化提升, 本文算法处理后图像的场景亮度纹理更清晰显著。
![]() |
Download:
|
图 10 图 8(a)可见边图 |
![]() |
下载CSV 表 2 图像去雾能力各项量化参数对比 |
如表 3所示, 在保证图像亮度处理效果的前提下, 本文算法速度最快。
![]() |
下载CSV 表 3 图像亮度增强方法耗时对比 |
本文提出一种图像去雾算法, 通过分块求解透射率解决图像中雾气分布不均衡的问题, 采用大气散射模型对图像进行去雾处理, 并自适应地调整去雾图像的场景亮度。通过输入不同场景、不同雾浓度的图像进行对比实验, 实验的主观视觉效果和客观量化数据表明, 本文算法复原的图像不仅去雾彻底, 有效抑制天空区域出现的光晕现象, 且去雾后图像的场景亮度、视觉效果都得到有效提高。本文算法基于图像分块, 需遍历整幅图像求取透射率, 算法执行时间长。下一步将寻求更优方法求取透射率, 以降低时间复杂度、提高实时性。
[1] |
齐乐, 张小刚, 姚航. 基于HLS的实时图像去雾实现[J]. 计算机工程, 2016, 42(5): 224-229. DOI:10.3969/j.issn.1000-3428.2016.05.038 ( ![]() |
[2] |
周晓波, 刘桑. 基于FPGA的快速视频图像去雾算法及硬件实现[J]. 计算机工程, 2016, 42(6): 310-315. DOI:10.3969/j.issn.1000-3428.2016.06.054 ( ![]() |
[3] |
肖创柏, 赵宏宇, 禹晶, 等. 基于WLS的雾天交通图像恢复方法[J]. 红外与激光工程, 2015, 44(3): 1080-1084. DOI:10.3969/j.issn.1007-2276.2015.03.052 ( ![]() |
[4] |
唐红梅, 申瑾, 周亚同, 等. 雾霾天气条件下车牌信息的识别[J]. 电视技术, 2014, 38(5): 194-197. DOI:10.3969/j.issn.1002-8692.2014.05.050 ( ![]() |
[5] |
龙科军, 李超群, 毛学军, 等. 高速公路雾天能见度预测方法[J]. 徐州工程学院学报(自然科学版), 2017(1): 31-37. ( ![]() |
[6] |
YU Teng, RIAZ I, PIAO Jingchun, et al. Real-time single image dehazing using block-to-pixel interpolation and adaptive dark channel prior[J]. IET Image Processing, 2015, 9(9): 725-734. DOI:10.1049/iet-ipr.2015.0087 ( ![]() |
[7] |
SINGH D, KUMAR V. Dehazing of remote sensing images using fourth-order partial differential equations based trilateral filter[J]. IET Computer Vision, 2018, 12(2): 208-219. DOI:10.1049/iet-cvi.2017.0044 ( ![]() |
[8] |
PAN Xiaoxi, XIE Fengying, JIANG Zhiguo, et al. Haze removal for a single remote sensing image based on deformed haze imaging model[J]. IEEE Signal Processing Letters, 2015, 22(10): 1806-1810. DOI:10.1109/LSP.2015.2432466 ( ![]() |
[9] |
薛现光.降质遥感影像辐射校正关键技术研究[D].郑州: 解放军信息工程大学, 2017.
( ![]() |
[10] |
杨骥, 杨亚东, 梅雪, 等. 基于改进的限制对比度自适应直方图的视频快速去雾算法[J]. 计算机工程与设计, 2015, 36(1): 221-226. ( ![]() |
[11] |
STARK J A. Adaptive image contrast enhancement using generalizations of histogram equalization[J]. IEEE Transactions on Image Processing, 2002, 9(5): 889-896. ( ![]() |
[12] |
KIM J, KIM L, HWANG S. An advanced contrast enhancement using partially overlapped sub-block histogram equalization[J]. IEEE Transactions on Circuits and Systems for Video Technology, 2001, 11(4): 475-484. DOI:10.1109/76.915354 ( ![]() |
[13] |
ZHANG Jing, CAO Yang, WANG Zengfu.Nighttime haze removal based on a new imaging model[C]//Proceedings of IEEE International Conference on Image Processing.Washington D.C., USA: IEEE Press, 2015: 4557-4561.
( ![]() |
[14] |
郭璠, 蔡自兴, 谢斌. 基于雾气理论的视频去雾算法[J]. 电子学报, 2011, 39(9): 2019-2025. ( ![]() |
[15] |
RAHMAN Z, JOBSON D J, WOODELL G A.Multi-scale retinex for color image enhancement[C]//Proceedings of IEEE International Conference on Image Processing.Washington D.C., USA: IEEE Press, 1996: 1003-1006.
( ![]() |
[16] |
SEOW M J, ASARI V K. Ratio rule and homomorphic filter for enhancement of digital colour image[J]. Neurocomputing, 2006, 69(7/8/9): 954-958. ( ![]() |
[17] |
LEE S L, TSENG C C.Image enhancement using DCT-based matrix homomorphic filtering method[C]//Proceedings of 2016 IEEE Asia Pacific Conference on Circuits and Systems.Washington D.C., USA: IEEE Press, 2016: 1-4.
( ![]() |
[18] |
TAN R T.Visibility in bad weather from a single image[C]//Proceedings of IEEE Conference on Computer Vision and Pattern Recognition.Washington D.C., USA: IEEE Press, 2008: 1-8.
( ![]() |
[19] |
KIM J H, JANG W D, SIM J Y, et al. Optimized contrast enhancement for real-time image and video dehazing[J]. Journal of Visual Communication and Image Representation, 2013, 24(3): 410-425. DOI:10.1016/j.jvcir.2013.02.004 ( ![]() |
[20] |
HE Kaiming, SUN Jian, TANG Xiaoou. Guided image filtering[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2013, 35(6): 1397-1409. DOI:10.1109/TPAMI.2012.213 ( ![]() |
[21] |
TAN K, OAKLEY J P. Physics-based approach to color image enhancement in poor visibility conditions[J]. Journal of the Optical Society of America A, 2001, 18(10): 2460-2467. DOI:10.1364/JOSAA.18.002460 ( ![]() |
[22] |
NAYAR S K, NARASIMHAN S G.Vision in bad weather[C]//Proceedings of the 7th IEEE International Conference on Computer Vision.Washington D.C., USA: IEEE Press, 2002: 820-827.
( ![]() |