Advances in Applied Mathematics
Vol. 12  No. 01 ( 2023 ), Article ID: 60962 , 9 pages
10.12677/AAM.2023.121033

颜色衰减结合暗通道先验的浓雾影像 去雾算法

杨晨1,汪泓1*,蔡宏1,肖玖军2

1贵州大学矿业学院,贵州 贵阳

2贵州科学院贵州省山地资源研究所,贵州 贵阳

收稿日期:2022年12月28日;录用日期:2023年1月24日;发布日期:2023年1月31日

摘要

山区地表湿气在抬升作用和温度共同作用下容易形成雾气,会导致无人机在对地拍摄时获取到含有分布不均匀的浓雾的影像,本文提出了一种颜色衰减先验和暗通道先验相结合的方法,可以有效去除影像中的浓雾部分。首先基于颜色衰减先验理论,将亮度与饱和度之差作为雾浓度判别依据,借助最大类间方差法对影像中的浓雾与薄雾区域分割;其次根据分割结果采用不同的暗通道窗口和局部大气光计算暗通道值和透射率;最后对去雾后的影像进行亮度增强处理。实验结果表明,该方法能有效去除影像的浓雾部分,相比对照的暗通道法,信息熵、平均梯度、有效细节强度、峰值信噪比分别提升了1.17%、9.01%、11.31%、59.64%,对于无人机影像处理有较好的工程应用价值。

关键词

图像处理,颜色衰减先验,暗通道先验,浓雾去雾,图像分割

Dehazing Algorithm for Images with Dense Haze Based on Color Attenuation Prior and Dark Channel Prior

Chen Yang1, Hong Wang1*, Hong Cai1, Jiujun Xiao2

1Mining College, Guizhou University, Guiyang Guizhou

2Guizhou Institute of Mountain Resources, Guizhou Academy of Sciences, Guiyang Guizhou

Received: Dec. 28th, 2022; accepted: Jan. 24th, 2023; published: Jan. 31st, 2023

ABSTRACT

The surface moisture in the mountainous area is easy to become fog under the effects of uplift and temperature. That will cause the drone to obtain images with uneven distribution of dense fog. In order to solve this problem, this paper proposes a method combining color attenuation prior and dark channel prior. Firstly, based on the color attenuation prior theory, the difference between brightness and saturation is used as the basis for judging the haze density. Then the image is divided into regions using Ostu algorithm. Secondly, according to the segmentation results, different local atmospheric light and dark channel windows are used to calculate the dark channel value and transmittance. Finally, the brightness enhancement process is performed on the image. The results show that the method can effectively remove the foggy part of the image. Compared with the dark channel prior method, the information entropy, average gradient, effective detail intensity, and peak signal-to-noise ratio are increased by 1.17%, 9.01%, 11.31%, and 59.64%, respectively. It provides engineering value and applicability for drone image processing.

Keywords:Image Processing, Color Attenuation Prior, Dark Channel Prior, Dehazing of Dense Haze, Image Segmentation

Copyright © 2023 by author(s) and Hans Publishers Inc.

This work is licensed under the Creative Commons Attribution International License (CC BY 4.0).

http://creativecommons.org/licenses/by/4.0/

1. 引言

随着无人机技术快速发展,测绘无人机以其“高时效性”、“高分辨率”和“低成本”三大优势在日常测绘以及应急保障中发挥了重要的作用 [1]。但在影像获取的过程中,由于地形、大气条件等多因素影响,图像质量易出现问题 [2]。比如我国西南地区,丘陵山区遍布,山间雾气导致能见度降低,反映在无人机影像上则表现为地物模糊、对比度降低、色彩失真等现象。因此,研究减轻或去除无人机影像雾气的相关算法十分有必要。

目前,图像去雾算法从原理角度可分为两类 [3] [4]:基于图像增强和基于物理模型的去雾算法。前者利用传统图像处理方法来改善图像的对比度和颜色等信息,包括直方图均衡化 [5]、小波变换 [6]、颜色恒常知觉(Retinex)算法 [7] [8] 等。后者通常依赖于先验信息和假设,目前应用较为广泛的是基于暗通道先验的去雾算法和基于颜色衰减先验的去雾算法。

He等 [9] 通过对大量无雾和有雾图像的特征进行统计分析,提出了暗通道理论,该方法简单实用、去雾效果好。当前基于暗通道的去雾算法通常在计算效率和去雾效果两方面进行改进。李力等 [10] 提出一种与滤波窗口无关的中值滤波器来取代导向滤波,提高了计算效率;刘海波等 [11] 基于暗通道先验获得大气透射率的初始估计,基于Retinex理论获得大气透射率的粗估计,再将两者像素级融合以此恢复无雾图像;肖进胜等 [12] 将导向滤波用于天空区域的细化分割,准确估计含天空区域影像的大气光强度,解决了天空色彩失真的问题。

Zhu等 [13] 通过对有雾图像中色调、饱和度、亮度(HSV)颜色通道的统计发现,场景深度与亮度和饱和度之差呈正相关,据此提出了颜色衰减先验去雾算法,但由于以固定大气散射系数进行去雾,导致图像远景区域处理不彻底、留有残雾,而近景区域则因过度处理而变黑变暗。张敏等 [14] 将颜色衰减和小波变换进行融合,对Zhu算法中的线性模型进行改进,提高了大气透射率精度;李梦蕊等 [15] 利用颜色衰减先验理论求取有雾图像的景深信息,通过建立的线性模型实现对亮度分量的自适应Retinex去雾处理,能更好地还原图像本来的色彩。

以上方法对均匀薄雾影像的处理效果较好,但对含有不均匀浓雾的影像去雾效果相对有限。本文结合暗通道先验和颜色衰减先验原理提出了一种改进的去雾算法。首先根据颜色衰减先验理论确定衡量雾浓度的指标,据此采用最大类间方差法(Ostu算法)对图像进行阈值分割;然后对分割出的浓雾和薄雾区域采用不同的暗通道窗口和大气光,提高大气透射率的计算精细程度,再进行暗通道去雾;最后进行亮度增强处理。实验结果表明,本文方法针对非均匀有雾影像,能有效增强浓雾部分的去雾效果,同时也不会造成薄雾区域去雾过度丢失细节。该方法不用考虑无人机山区影像雾气浓度分布的复杂情况,有更广泛的适用性。

2. 颜色衰减先验和暗通道先验原理

2.1. 颜色衰减先验原理

颜色衰减先验理论是Zhu等人对大量图像实验统计分析得出的一种先验理论,即:对于大多数户外雾天图像,场景区域中雾气浓度越高,其对应像素的亮度和饱和度相差就越大。根据雾浓度随着图像场景深度增加而变浓的这一关系,可以推出:图像的场景深度和亮度与饱和度的差值呈正相关,其数学关系表示如下:

d ( x ) c ( x ) v ( x ) s ( x ) , (1)

式中:x表示图像的像素点, d ( x ) 表示图像的场景深度, c ( x ) 表示雾气浓度, v ( x ) 表示图像的亮度, s ( x ) 表示图像的饱和度。上述统计规律被称为颜色衰减先验,Zhu等人对真实户外场景下的有雾图像分析其变化得知:在没有雾气的情况下,亮度和饱和度几乎相同,而随着雾气浓度的增加,两者之间的差异就愈发明显,也就是说,亮度和饱和度之间的差值与雾气浓度呈正相关。

2.2. 暗通道先验去雾原理

暗通道先验原理是2009年He等人通过对大量的晴天和有雾图像的观察,基于统计结果提出的一种先验理论。在大部分清晰无雾图像的非天空部分中,其局部区域内包括R、G、B三个颜色通道中的所有像素中,存在强度值接近零的暗像素,这些暗像素组成图像的暗通道图。用 J d a r k 表示图像J的暗通道图,则其表达式如下:

J d a r k ( x ) = min c { r , g , b } ( min i Ω ( x ) J c ( i ) ) , (2)

其中 J c 表示图像J中某一个颜色通道的灰度值; Ω ( x ) 表示以像素x为中心的某局部区域。而晴天清晰无雾图像的暗通道值接近于0,即:

J d a r k 0 . (3)

已知雾天图像退化模型的数学表达式:

I ( x ) = J ( x ) t ( x ) + A ( 1 t ( x ) ) , (4)

通常以像素x为中心取n*n的邻域 Ω ( x ) ,并假设这个局部区域内雾霾浓度不变,即 Ω ( x ) 中所有像素的透射率值t一样。用求取J的暗通道图 J d a r k 的类似方法求取退化图像 I ( x ) 的包括RGB三通道的局部最小值,变换化简得到:

min c { r , g , b } ( min i Ω ( x ) ( I c ( i ) A c ) ) = t ˜ ( x ) min c { r , g , b } ( min i Ω ( x ) ( J c ( i ) A c ) ) + ( 1 t ˜ ( x ) ) , (5)

假设A已知,且注意到A总是正值,根据暗通道先验原理,式(5)等号右边第一项为0,式(5)可变为:

min c { r , g , b } ( min i Ω ( x ) ( I c ( i ) A c ) ) = 1 t ˜ ( x ) , (6)

整理得到大气透射率初步估计值 t ˜ 的表达式:

t ˜ ( x ) = 1 min c { r , g , b } ( min i Ω ( x ) ( I c ( i ) A c ) ) . (7)

上式等号右边第二项可以看做是归一化的雾天图像 I A 的暗通道图。这也与前述相符,即暗通道图层直接相关于大气透射率t。

考虑到即使是晴天环境空气中也有一定量的散射粒子,观察远处的物体时依然会有雾的影响并且这也是我们感受景深的依据之一,所以引入一个常量参数w (0 < w < 1)以保留些许雾,由此得到最终的表达式:

t ˜ ( x ) = 1 w min c { r , g , b } ( min i Ω ( x ) ( I c ( i ) A c ) ) , (8)

暗通道图中灰度值越高的地方代表此处雾越浓,而雾越浓的地方的亮度越接近大气环境光值,于是在暗通道图中找到最亮的0.1%个像素,记录下它们的位置,然后再于原始图像中找到位于这些位置的像素,将其中RGB三通道强度值最接近[255, 255, 255]的像素作为A的估计值。

将大气透射率图t和大气环境光A的值带入雾天图像退化模型,可以直接恢复出无雾图像J:

J ( x ) = I ( x ) A t ( x ) + A , (9)

为了避免噪点的出现,我们需要限制t的值过小,于是为其设定一个阈值 t 0 ,一般取值为0.1,得到最后的恢复无雾图像的公式:

J ( x ) = I ( x ) A max ( t ( x ) , t 0 ) + A . (10)

3. 本文改进方法

暗通道先验原理在处理常规户外影像已有很好的去雾效果,引入到无人机影像去雾时,由于无人机影像拍摄不涉及天空区域,可以避免暗通道先验原理不适用于天空区域的缺陷。但是也有不足之处,图像的浓雾部分其性质类似于天空,由于亮度较高,使用暗通道法去雾的效果较差。目前大部分图像去雾算法研究的是均匀薄雾图像,采用的多是普通的户外照片。而无人机有雾影像往往需要拍摄山地丘陵地区,其雾气较常见,且分布不均匀,局部浓度较高。为保证浓雾区域的去雾效果,同时避免薄雾区域因过度去雾而导致颜色失真、亮度过低,有必要对图像按雾浓度进行分割并针对性地去雾处理。本文算法流程图如图1所示。

Figure 1. Flowchart of the improved algorithm

图1. 本文改进算法流程图

3.1. 图像浓雾薄雾区域分割

首先将RGB颜色空间的图像转换到HSV颜色空间,然后利用饱和度S通道和亮度V通道计算亮度与饱和度之差 d i f f ( x )

d i f f ( x ) = v ( x ) s ( x ) , (11)

式中, v ( x ) 为像素x的亮度, s ( x ) 为饱和度。由颜色衰减先验原理可知,亮度与饱和度之差与雾浓度呈正相关,故差值越大,雾气越浓。通常山间雾气呈团状集中分布,因此将图像浓度划分为浓雾和薄雾两种区域即可,以避免过于复杂的运算。本文采用最大类间方差法确定阈值并对图像二值化分割。

由于部分白亮地物也具有亮度高、饱和度低的特性,容易被错误地分割到浓雾区域。从图2(a)可以看出,实际的浓雾区域是大片连续的,而明亮地物较为小片分散,所以可将这部分地物的像素视为噪声,用最小值滤波进行处理,实验发现窗口大小设置为11*11效果较好。滤波结果为:

f ^ ( x , y ) = min ( s , t ) S x y { g 11 * 11 ( s , t ) } , (12)

式中, g ( s , t ) 表示滤波器所包含的像素灰度值, ( s , t ) 是其中像素的坐标。分割结果如图2所示,其中白色即灰度值为1区域,亮度饱和度差值较大,代表浓雾区;黑色即灰度值为0区域,亮度饱和度差值较小,代表薄雾区。从图2(b)可以看出,采用Ostu算法分割后,基本成功地将左上角的浓雾区域分割出来,但确实存在一些明亮地物被错误地分割到了浓雾区域。而经过最小值滤波处理后,如图2(c)所示,左上角浓雾区域保留,零散的白亮地物基本被重新归类到薄雾区域。

(a) (b) (c)

Figure 2. Image segmentation results of thick fog and thin fog regions. (a) Original image; (b) Ostu segmentation results; (c) Filtered results

图2. 图像浓雾薄雾区域分割结果。(a) 原图;(b) 依差值分割结果;(c) 滤波后结果

3.2. 采取不同暗通道窗口和大气光计算策略

影响暗通道法去雾效果的参数主要有大气光和大气透射率。在白天存在太阳光源的情况下,由于太阳光强度远高于其他光源,故一般视太阳为唯一光源,对整副图像产生全局大气光。但对于无人机获取的山区影像而言,山地起伏不平和浓雾的遮挡都会对大气光造成影响,故不宜继续采用全局大气光,而应对不同雾浓度区域分开求取局部大气光。

大气透射率的求取结果受暗通道窗口选择的影响,暗通道窗口越小,大气透射率的求取越精细,但计算速度越慢。整副图像均采用较大暗通道窗口,计算效率高,但对浓雾区域去雾效果不佳;均采用较小暗通道窗口,计算效率低,且对薄雾区域去雾过度造成图像变黑变暗。故有必要对浓雾薄雾区域适用不同大小的暗通道窗口。

综上所述,根据3.1中分割结果,在薄雾浓雾区域分开设置暗通道窗口计算暗通道值,并求取各自区域的局部大气光;然后计算整副图像的大气透射率并用导向滤波精细化。实验发现将薄雾区域暗通道窗口设为7*7,浓雾区域暗通道窗口设置为3*3效果较好。

p a t c h S i z e = { 7 * 7 d i f f ( x ) = 0 3 * 3 d i f f ( x ) = 1 , (13)

式(13)中, p a t c h S i z e 代表暗通道窗口大小, d i f f ( x ) 表2.1中亮度和饱和度之差二值分割后的结果。

3.3. 对去雾后影像进行亮度增强

有雾图像总体亮度较高,影像去除雾气后亮度降低,导致目视效果不佳。故将原图在HSV空间下的V通道进行直方图均衡化处理后,替换到无雾影像的V通道,以增强亮度。

4. 实验结果分析

4.1. 实验环境

实验数据采用在贵州某山区拍摄的经裁剪的无人机影像。其中,均匀薄雾影像分辨率为1672*1254,非均匀浓雾影像分辨率为2506*1673,两者均为JPG格式。计算机配置:CPU为AMD R7-4800H (主频2.9 GHz),核心显卡,16 GB内存。操作系统为Windows 10,运行软件为MATLAB R2018b。

4.2. 主观评价

本文选用一张均匀薄雾影像和一张非均匀有雾无人机影像作为数据源,来验证算法的有效性,并选取暗通道去雾法与颜色衰减去雾法进行比较,结果见图3图4

图3的结果可以看出,对于均匀薄雾影像,传统的暗通道去雾算法存在亮度降低的情况,而颜色衰减先验算法还保留了一点残雾,去雾不够彻底。本文方法在去雾的基础上增强了去雾后影像的亮度,改善了可视效果。

(a) (b) (c) (d)

Figure 3. Comparison of dehazing results of drone images with uniform haze. (a) Original image; (b) Dark channel prior; (c) Color attenuation prior; (d) Proposed algorithm

图3. 均匀薄雾影像去雾效果对比。(a) 原图;(b) 暗通道先验;(c) 颜色衰减先验;(d) 本文方法

对于雾气分布非均匀的有雾图像,如图4所示。可以明显看出在图像左上角浓雾区域,传统的暗通道先验和颜色衰减先验方法去雾效果有限,仍保存了一定程度的雾。而本文方法去雾较为彻底,还原被浓雾遮挡地物的效果更好。

(a) (b) (c) (d)

Figure 4. Comparison of dehazing results of drone images with dense haze and the details. (a) Original image; (b) Dark channel prior; (c) Color attenuation prior; (d) Proposed algorithm

图4. 非均匀浓雾无人机影像去雾效果及细节放大对比。(a) 原图;(b) 暗通道先验;(c) 颜色衰减先验;(d) 本文方法

4.3. 客观评价

本文采用四个指标来评价处理前后影像质量的变化,分别是信息熵(information entropy)、平均梯度(average gradient)、有效细节强度(effective detail intensity)、峰值信噪比(PSNR)。上述指标可以从不同方面反映图像的细节信息和清晰程度,进而反映去雾后影像复原的质量,具体含义如下:

图像信息熵反映了图像的灰度分布统计特征的信息量,是信源总体特性的平均表示;一幅图像的熵值越高,表示图像中包含的细节、纹理等高频信息越多;图像的平均梯度值表示灰度级变化的速率,可以敏锐的反映出图像中微小细节反差变化;通常认为清晰的图像具有高对比度,但噪声和图像景深突变处的光晕(Halo)效应会对对比度有所贡献,滤除掉两者影响后得到的边缘细节信息才是真正有效的信息,该指标称为有效细节强度,可以作为衡量去雾后图像清晰度的指标;峰值信噪比是最普遍和使用最为广泛的一种图像客观评价指标,它是基于对应像素点间的误差,即基于误差敏感的图像质量评价。峰值信噪比反映了图像的失真程度和噪声水平,峰值信噪比越大图像噪声越低。

表1所示,对于均匀薄雾图像,三种去雾方法各项指标都相比原图有显著提升,而本文方法的提升效果与暗通道先验法和颜色衰减先验法基本持平或略优,证明本文方法虽针对含浓雾影像改进,但依然适用于常见的均匀薄雾影像。

Table 1. Objective evaluation index comparison of uniform thin fog image

表1. 均匀薄雾影像客观评价指标对比

Table 2. Objective evaluation index comparison of uneven thick fog image

表2. 不均匀浓雾影像客观评价指标对比

本文方法特别针对浓雾的去雾效果上做了改进,因此,对于雾浓度分布不均匀、含有大片浓雾的影像,各项指标均高于暗通道法和颜色衰减先验法,如表2所示。就信息熵和平均梯度而言,这两项指标最高,反映了本文方法恢复细节等高频信息的能力更佳。而有效细节强度和PSNR均考虑了噪声、Halo效应等误差因素,这两项指标提升幅度较大,尤其是PSNR,相比暗通道法提升达到59.64%,可见去除浓雾可以大大减少图像的噪声等误差影响,反映更多的真实细节,对恢复图像质量贡献较大。

5. 结论

本文提出了一种颜色衰减先验和暗通道先验相结合的方法,可以有效去除无人机影像浓雾部分。利用颜色衰减先验理论判断图像雾的浓度,并以此为依据对图像进行二值分割;对分割得到的浓雾薄雾区域采用不同大小暗通道窗口,分别求取大气光和大气透射率;最后对去雾后影像进行亮度增强。

对于含浓雾的无人机影像,本文方法的质量评价指标均高于对照的暗通道去雾法。信息熵、平均梯度、有效细节强度等三个无参考评价指标提升幅度较小,说明一定程度上提升了去雾后影像的细节和清晰度。而对于全参考评价指标PSNR而言,相比对照方法提升高达59.64%。结合主观视觉效果,是因为本文方法针对不同雾浓度的区域采用不同计算参数,在对浓雾区域去雾更彻底的同时,对薄雾区域适度去雾不至于丢失细节,因此产生的噪声更少、失真更小、还原图像质量更好,对于无人机影像处理工作有较好的工程价值。不足之处在于去雾后的影像色彩仍有一定失真,这是因为对彩色图像各通道分量处理时没有考虑到其原有关系,没有可靠的判断色彩失真的指标,将来会对去雾后保留原始图像的色彩进行研究。

基金项目

国家自然科学基金(41901225)、贵州省科技支撑计划项目(黔科合支撑[2021]一般496号)。

文章引用

杨 晨,汪 泓,蔡 宏,肖玖军. 颜色衰减结合暗通道先验的浓雾影像去雾算法
Dehazing Algorithm for Images with Dense Haze Based on Color Attenuation Prior and Dark Channel Prior[J]. 应用数学进展, 2023, 12(01): 308-316. https://doi.org/10.12677/AAM.2023.121033

参考文献

  1. 1. 王京卫. 测绘无人机低空数字航摄影像去雾霾研究[J]. 测绘学报, 2016, 45(2): 251-251.

  2. 2. 姜雨彤, 宋海平, 王光辉. 基于质量评价最优的无人机航拍图像去雾方法[J]. 兵工学报, 2022, 43(1): 148-158.

  3. 3. 吴迪, 朱青松. 图像去雾的最新研究进展[J]. 自动化学报, 2015, 41(2): 221-239. https://doi.org/10.16383/j.aas.2015.c131137

  4. 4. 蒋华伟, 杨震, 张鑫, 等. 图像去雾算法研究进展[J]. 吉林大学学报(工学版), 2021, 51(4): 1169-1181. https://doi.org/10.13229/j.cnki.jdxbgxb20200382

  5. 5. 刘兴瑞. 自适应直方图均衡处理下船舶视频监控图像去雾算法[J]. 舰船科学技术, 2020, 42(16): 74-76.

  6. 6. 董静薇, 赵春丽, 海博. 融合同态滤波和小波变换的图像去雾算法研究[J]. 哈尔滨理工大学学报, 2019, 24(1): 66-70. https://doi.org/10.15938/j.jhust.2019.01.011

  7. 7. Land, E.H. (1977) The Retinex Theory of Color Vision. Scien-tific American, 237, 108-129. https://doi.org/10.1038/scientificamerican1277-108

  8. 8. Jobson, D.J., Rahman, Z. and Woodell, G.A. (1997) A Multiscale Retinex for Bridging the Gap between Color Images and the Human Observation of Scenes. IEEE Transac-tions on Image Processing, 6, 965-976. https://doi.org/10.1109/83.597272

  9. 9. He, K., Sun, J. and Tang, X. (2010) Single Image Haze Removal Using Dark Channel Prior. IEEE Transactions on Pattern Analysis and Machine Intelligence, 33, 2341-2353. https://doi.org/10.1109/TPAMI.2010.168

  10. 10. 李力, 唐晓霏, 刘雯, 等. 航拍图像暗通道先验去雾算法速度改进[J]. 吉林大学学报(理学版), 2021, 59(1): 77-84.

  11. 11. 刘海波, 杨杰, 张庆年, 等. 基于暗通道先验和Retinex理论的快速单幅图像去雾方法[J]. 自动化学报, 2015, 41(7): 1264-1273. https://doi.org/10.16383/j.aas.2015.c140748

  12. 12. 肖进胜, 高威, 邹白昱, 等. 基于天空约束暗通道先验的图像去雾[J]. 电子学报, 2017, 45(2): 346-352.

  13. 13. Zhu, Q., Mai, J. and Shao, L. (2015) A Fast Single Image Haze Re-moval Algorithm Using Color Attenuation Prior. IEEE Transactions on Image Processing, 24, 3522-3533. https://doi.org/10.1109/TIP.2015.2446191

  14. 14. 张敏, 张一凡, 王园宇. 基于颜色衰减先验的小波融合图像去雾[J]. 计算机工程与应用, 2018, 54(12): 182-186.

  15. 15. 李梦蕊, 柳晓鸣, 常婧. 基于颜色衰减先验的自适应Retinex去雾算法[J]. 计算机仿真, 2021, 38(1): 354-358.

  16. NOTES

    *通讯作者。

期刊菜单