APP下载

基于暗通道先验的Retinex 去雾算法研究

2021-02-04

软件导刊 2021年1期
关键词:透射率先验照度

(上海理工大学光电信息与计算机工程学院,上海 200093)

0 引言

在日常生活中,雾霾天气随处可见。尤其近几年,我国很多地区频繁出现严重雾霾天气。雾霾天气对人们的出行和健康都会造成严重影响。首先,雾霾天气会严重降低物体的可见度水平,使户外图像采集设备(如交通视频监控、摄像机、遥感卫星等)采集到的图像严重降质,如出现模糊不清、对比度低、边缘模糊、颜色偏移与失真等现象[1],严重影响了图像在交通、侦查及航海等方面的应用。其次,雾霾中存在很多有害物质,这些物质会严重影响人们身体健康。所以,在雾霾环境下,如何将降质图像恢复成原始图像,是当前需要解决的一个重要问题。

在模糊或多雾场景中,图像去雾是恢复图像的一种基本方法[2]。针对有雾图像恢复技术,人们提出了很多相关算法,现有图像去雾方法主要包括基于物理模型的图像复原和基于图像处理技术的图像增强两大类[3]。基于物理模型的图像复原方法主要是在雾霾条件下建立物理成像模型,分析图像机理和降质过程,根据降质过程推导图像退化原因,并运用有雾图像的先验知识恢复有雾图像。在大气物理散射模型中,图像复原方法通常需要估计大气光值、透射率等参数,通过这些参数求出清晰图像,从而恢复有雾图像[4]。基于物理模型的图像复原方法主要包括基于偏微分方程的去雾算法、基于先验知识的去雾算法和基于场景深度的去雾算法等[5-7]。基于图像处理技术的图像增强方法主要是对有雾图像本身进行增强,此类方法不需要考虑雾霾条件下的物理成像模型,而是通过突出强调有雾图像亮度和色彩或提高有雾图像的对比度,从而改善图像视觉效果。基于图像处理技术的图像增强方法主要包括基于直方图均衡化的去雾算法、基于Retinex 理论的去雾算法和基于同态滤波的去雾算法等[8-9]。

近年来,单幅图像去雾技术取得了显著进展。例如,Fattal 等[10]提出基于独立分量分析(ICA)的彩色图像去雾模型,由于该方法需要大量颜色信息,所以不适用于浓雾图像;Tan 等[11]提出一种基于马尔科夫随机场(MRF)的图像局部对比度最大化去雾方法,该方法有较好的去雾效果,但往往也会出现过饱和以及去雾不彻底等现象;He等[12]提出一种基于暗通道先验(DCP)的单幅图像去雾算法,但该算法不适用于天空等明亮区域,处理后的图像会出现明显的颜色失真现象;Meng 等[13]提出一种正则化图像去雾算法,虽然该方法有明显的去雾效果,但图像去雾后边缘会存在光晕伪影现象。

因此,针对现有算法存在的去雾不彻底、图像周围存在光晕伪影及颜色失真等问题,提出一种将图像复原与图像增强两种思想相结合的算法,即基于暗通道先验的Ret⁃inex 去雾算法。首先,利用改进的暗通道先验算法得到初步去雾图像;其次,对初步去雾图像进行Retinex 图像增强处理;最后,运用还原函数恢复色彩,避免出现颜色失真现象。

1 暗通道先验算法

1.1 暗通道先验算法理论

暗通道先验(DCP)理论由He 等[12]提出,其研究了大量室外清晰图像,经多次研究发现,大多数图像区域(除天空区域与白色区域外)都有一个最小值近似于0 的像素通道,后来其将该发现定义为暗通道先验理论。

在计算机视觉理论中,模糊图像的大气物理散射模型可表示为:

其中,I(x)、J(x)分别为有雾图像和无雾图像,t(x)为透射率,A为大气光值。根据式(1)可得出,若模糊图像I(x)已知,并且能够获得图像的大气光值A和透射率t(x),则可求出原始无雾图像。

1.2 初步复原图像获取

暗通道先验算法步骤如下:

(1)获取暗通道图像。根据以下公式可得出:

从式(2)可以看出,要想获取暗通道图像,首先必须求出输入图像3 个通道(分别为R、G、B)中的最小值,然后将求出的最小值组成灰度图,并进行最小值滤波处理,得到的图像即为暗通道图像。其中,Jdark(x)为暗通道图像,Ω(x)是以x为中心的集中区域,Jc(c)表示J(c)的颜色通道。

(2)粗略估计透射率。

其中,ω为雾的保留系数,通常ω取值范围为[0.7,0.95],本文取ω的值为0.95。

(3)采用导向滤波对透射率进行细化处理。由于根据式(3)估计出的透射率值比较粗糙,导致处理后的图像不清晰,所以需进一步对透射率进行细化操作。He 等[12]首先提出运用软抠图法对透射率t(x)进行细化,但该方法的计算复杂度和时间复杂度较高。其后来又提出采用导向滤波代替软抠图法,该方法与软抠图法相比,显著优化了计算复杂度和时间复杂度,并且在边缘保持方面效果较好。因此,本文采用导向滤波对透射率进行细化操作。

(4)估计大气光值。首先在暗通道中获取亮度最高的0.1% 的像素点,然后在原始图像中,根据这些像素点位置选出亮度最高的点,最后将有雾图像中3 个通道的最大像素值作为大气光值A。

(5)初步复原图像。由于当图像中存在大片较亮(如天空、水面等)区域时,经原始暗通道先验模型处理后的图像会出现块状现象,所以为避免该现象,本文引入数值t0,即容差解决该问题。求解公式如下:

本文取t0的值为0.2。根据式(4)对3 个通道分别进行去雾处理,即可求出初步复原图像。

采用改进的暗通道先验去雾算法对有雾图像进行处理后得到初步复原图像的可见度水平有一定程度提高,但存在图像细节信息丢失、色调整体偏暗、对比度不高、边缘部分出现光晕等问题。所以针对这些问题,需对初步复原图像进一步进行Retinex 增强处理。

2 Retinex 算法

2.1 Retinex 算法理论

基于颜色恒常性的Retinex 理论是由Edwin 首次提出的,该理论以人眼视觉系统为基础,认为人们一般不会感知到物体的绝对亮度,感知到的只是相对亮度[14]。Retinex理论的主要目标是将原始有雾图像分解成两个不同分量,即决定动态范围的照度分量和决定固有特性的反射分量。换句话说,即把人类视觉系统感知到的图像看作照度图像和反射图像的乘积,其数学表达式可表示为:

其中,I(x,y)、L(x,y)分别为原始图像和照度分量,L(x,y)满足L(x,y)∈(0,∞);R(x,y)为反射分量,满足R(x,y)∈(0,1]。在求解反射分量的过程中,为避免运算量较大的乘法运算,通常将R(x,y)的估计转换到log 域中进行,即:

若想获得具有大量细节信息的反射分量估计值R(x,y),首先必须求出照度分量L(x,y)。Jobson 等提出照度分量是由原始图像与高斯滤波函数作卷积运算得到的,根据中心环绕思想可得出以下公式:

其中,* 为卷积运算符号,G(x,y)为低通滤波器,用来估计照度图像。

多尺度Retinex 算法公式如下:

其中,ωn为权重值,δn为滤波尺度常量,k由归一化函数决定。

2.2 改进Retinex 算法

(1)计算初步复原图像的亮度图像。首先采用加权平均法求出初步复原图像的亮度图像,将其作为该算法的初始图像。

(2)估计照度分量,求出反射分量。采用引导滤波对步骤(1)中求得的亮度图像作平滑处理,估计出照度分量,然后在对数域中求出反射分量。

在Retinex 算法中,常用的环绕函数为高斯滤波函数,但采用该函数对照度分量进行处理后,得到的图像往往存在光晕伪影,所以后来有研究者提出利用双边滤波代替高斯滤波,不仅可以保留图像细节信息,还有效避免了光晕伪影现象[15]。但相比引导滤波,双边滤波的运算量和时间复杂度相对较高,并且引导滤波在边缘保持方面优于双边滤波。所以,本文采用引导滤波代替双边滤波,对照度分量进行处理,并求出反射分量,求解公式可表示为:

f(x)为引导滤波函数,其公式可表示为:

其中,qi为窗口内输出的像素值,Ωk是一个面积为(2r+1)×(2r+1)的正方形区块,系数ak、bk为常数,通过最小化目标函数加以确定。根据最小二乘法,局部线性函数系数ak、bk可采用以下公式进行求解:

其中,wk为当前窗口,为像素总数,μk、σk分别为图像I在wk中的均值和标准差,ε是正则化参数。将式(12)应用到整幅图像,即可得到引导滤波函数为:

将式(15)代入式(11)可求出反射分量R(x,y)。

另外,本文根据滤波图像尺寸大小与尺度个数之间的数量关系,自适应设置Retinex 算法尺度参数,利用引导滤波获取多尺度反射分量。其中设置3 个尺度参数,即为小、中、大,且各尺度范围分别为:[1,rmin]、[rmin,rmid]和[rmid,rmax],具体公式定义如下:

其中,m、n为滤波图像尺寸大小,k为尺度个数,取值为3。

(3)对反射分量进行S型函数增强、全局自适应对比度调整、Gamma 亮度调整等一系列操作。

在反射分量中存在大量图像细节信息,所以为获得图像细节信息,需进一步对反射分量进行增强处理。本算法利用S型函数增加去雾图像细节信息,公式定义如下:

其中,ω为求出的反射分量,由于ω在log 域中,所以ω可能取负值,本文设置ω的取值范围为[-1,1];a为参数,a取值不同,增强效果也不同,图1 表示a取不同值时S型函数的对应图像。由图可看出,a值越大,图像越陡,图像增强效果也越明显。经多次实验得出,当a=6 时,图像增强效果最明显。

由于经暗通道先验算法处理后的图像整体对比度和亮度都偏低,所以需进一步处理初步复原图像以提高图像对比度和亮度。

为了提高图像对比度,根据输入图像本身的全局亮度进行自适应调整,具体公式如下:

其中,Lw(x,y)为输入图像亮度值,为亮度对数均值,Lwmax为图像亮度最大值。

为提高图像亮度值,采用改进的非线性全局Gamma函数进行亮度调整,公式如下:

其中,R(x) 为亮度调整后的图像,x为输入图像,a为调整参数,Gamma 函数映射图如图2 所示。

Fig.1 Sigmoid function mapping图1 S 型函数映射

Fig.2 Gamma function mapping图2 Gamma 函数映射

由图2 可以看出,a取值越小,图像亮度增强效果也越明显。经多次实验得出,当a=0.6 时,效果最佳。另外,从图2 也可以看出,当a取值为0.6 时,较低亮度区域位于函数y=x的上方,较高亮度区域位于函数y=x的下方,说明该函数不但能有效增强低亮度区域,还能防止过度增强现象。

(4)颜色恢复函数。首先求出A=max(IR[i],IG[i],IB[i]),然后求出放大因子:。其中,R'为输入图像,Int为亮度图像。接下来计算每个通道:

R=M⋅IR[i]

G=M⋅IG[i]

B=M⋅IB[i]

最后将3 个通道进行整合,得到恢复后的去雾清晰图像。

3 实验结果与性能分析

为验证提出的基于暗通道先验的Retinex 去雾算法的有效性,对300 幅有雾图像进行处理,并分别从主观视觉效果和客观质量评价两方面进行验证。将本文算法与现有算法(He 算法、Tan 算法、Wang 算法和Fattal 算法)处理结果进行比较。

首先,从主观角度对比几种算法,效果如图3-图5 所示。

从3 组图片可以看出,经He 算法和Tan 算法处理后,虽然图像整体清晰度有所改善,但图像较亮区域(天空、水面等)出现了块状模糊和光晕现象;经Wang 算法处理后,图像丢失了很多细节信息,图像色调整体偏暗;经Fattal 算法处理后,图像颜色偏亮泛白,去雾不彻底,同时出现了明显的颜色失真现象;经本文算法处理后,图像清晰度明显提高,有效避免了颜色失真现象,细节信息和亮度值也在一定程度上有所提高。总体而言,从主观视觉角度来看,本文算法明显优于其它算法。

Fig.3 Different algorithms for fog removal effects of image 1图3 图像1 不同算法去雾效果

Fig.4 Different algorithms for fog removal effects of image 2图4 图像2 不同算法去雾效果

Fig.5 Different algorithms for fog removal effects of image 3图5 图像3 不同算法去雾效果

采用图像均值、对比度、平均梯度和信息熵对本文算法进行客观评价。

图像均值用于表示图像平均亮度的变化,均值公式如下:

其中,M、N为图像尺寸。

对比度用于评价图像整体对比度,对比度越高,图像越清晰。对比度公式如下:

其中,n=|i-j|,为灰度共生矩阵。

平均梯度用于评价图像整体模糊程度,平均梯度值越大,细节信息越多,边缘保持效果越好。平均梯度公式如下:

其中,M、N表示处理图像的大小。

信息熵用于评价图像细节表现能力,信息熵值越大,说明处理后图像保留的细节信息越多,信息熵公式如下:

其中,i为像素值,pi为i出现的概率。

然后,采用客观评价标准对比几种算法,对比结果如表1-表3 所示。

Table 1 Objective evaluation criteria for image-one表1 图1 客观评价标准

Table 2 Objective evaluation criteria for image-two表2 图2 客观评价标准

Table 3 Objective evaluation criteria for image-three表3 图3 客观评价标准

从亮度和对比度可以看出,本文算法在平均亮度和对比度上都有一定程度提高,明显优于现有其它去雾算法。从平均梯度和信息熵可以看出,本文算法的平均梯度和信息熵值增大,说明本文算法相比其它算法具有较好的边缘保持和细节增强效果,处理后的图像可见度也较高,图像效果更加自然。

4 结语

针对现有图像去雾算法去雾不彻底及对比度低等问题,本文提出一种基于暗通道先验的Retinex 去雾算法,该算法将图像复原与图像增强两大类思想相结合。首先,采用改进的暗通道先验算法对有雾图像进行初步处理,用导向滤波代替软抠图细化透射率,并对图像复原公式进行改进,得到初步去雾图像;其次,采用Retinex 算法对其进行增强处理,利用引导滤波对照度分量进行处理,求出反射分量;然后,利用S 型曲线、全局自适应对比度与改进的Gamma 校正函数对反射分量进行处理,最终实现了细节增强,同时有效解决了图像周围存在光晕伪影等问题;最后,运用还原函数还原图像色彩。实验结果表明,本文算法平均亮度相比其它算法至少提高了1.79%,对比度至少提高了1.07%,平均梯度和信息熵值分别至少提高了4.8% 和4.79%。说明本文算法相比其它算法具有较好的边缘保持和细节增强效果,处理后的图像颜色也相对自然,为图像去雾技术提供了一种新思路。

猜你喜欢

透射率先验照度
基于无噪图像块先验的MRI低秩分解去噪算法研究
恒照度智慧教室光环境
纯色太阳镜镜片耐日光辐照性能试验研究
电子投影机照度测量结果的不确定度评定
基于自适应块组割先验的噪声图像超分辨率重建
基于平滑先验法的被动声信号趋势项消除
先验的废话与功能的进路
石墨烯光栅太赫兹透射特性的研究
玻璃长波透射率对普通双层中空玻璃热特性的影响
晶格常数对左手材料的能量透射率及负折射率的影响