基于光学厚度代理模型的雾浓度估计及图像去雾

2019-08-28 01:34李春明姜雨彤宋海平纪超郭猛朱琳
兵工学报 2019年7期
关键词:雾天像素点光学

李春明, 姜雨彤, 宋海平, 纪超, 郭猛, 朱琳

(中国北方车辆研究所, 北京 100072)

0 引言

在雾天环境下,大气透过光的强度衰减,导致成像质量下降,图像细节缺失,信息的可辨识度大大降低。现阶段急需寻求有效的图像去雾方法,为现代武器信息对抗技术提供更好的信息来源[1]。实现在雾浓度不高的情况下可以真实地还原出目标的特征,而在雾浓度较高的情况下,则可以比较清晰地分辨出图像中有意义的目标,达到侦察目的。因此,研究快速、有效的图像去雾方法具有重要的理论意义和现实价值。

雾浓度的估计对于雾天场景的认知是非常必要的,是图像去雾的前提。然而,雾浓度估计仅仅依赖人眼视觉系统的主观感知是不可靠的。因此,为了协助计算机视觉系统选择更有效的图像去雾操作,同时为后续的图像信息处理建立基础,有必要建立一个客观、科学的雾浓度估计方法。

目前,研究者们提出的雾浓度估计方法主要分为两类:

1)采用气象学的能见距离进行雾浓度估计,雾浓度越高,能见度越低。早期,Pomerleau[2]提出通过测量各位置路牌的对比度衰减程度来估计能见度,这种情况下图像中路牌的存在是必不可少的。之后,Hautiere等[3]提出一种采用辅助地理地形信息进行自动雾检测和能见度距离估计的方法,这种方法的关键是创建图像场景的精确三维几何模型。接下来,Caraffa等[4]提出一种雾气散射系数预测方法来进行能见度距离的估计,然而能见度估计的准确性主要取决于已知深度图质量的好坏,这就需要一个精确的三维场景模型。这类方法有一定的限制性,要求雾天图像中必须包含有距离性质的标志物(例如路牌)、静止对象或三维几何模型。

2)根据雾天图像和无雾图像的特征统计来计算待测图像的特征偏差,从而估计雾浓度。Choi等[5-6]提出一种无参考感知雾浓度预测(FADE)模型,通过对大量的雾天和无雾图像的特征统计,发现雾天图像有一些特有的衰减特征,例如对比度低、色彩暗淡和亮度大等特征,雾浓度的估计值是通过计算待测图像的特征值与统计得到的自然无雾图像特征值的偏差而得到的。然而,Choi等方法中雾浓度的估计值是从0到∞,说明浓度估计值是不存在上限的,这意味着难以明确估计出雾浓度的大小程度。随着机器学习在图像处理领域的发展和成熟[7-8],本文研究建立光学厚度的理论代替(代理)模型,从而通过雾天图像光学厚度值来进行场景的雾浓度估计。代理模型,也称为近似模型,是根据有限少量样本点和基于物理实验所得到的目标响应值,通过插值或回归等近似逼近技术所构造的计算复杂度低、计算速度快,计算结果接近于实际结果的数学模型。其中较为常见的代理模型主要有多项式回归(PRG)模型、克里金(KRG)模型、径向神经网络(RBNN)模型等。目前,基于代理模型理论的分析和优化(SBAO)方法,由于其具有设计周期短、计算代价低等优点,被广泛应用在航空航天、汽车工业、制造工业等领域复杂工程结构的优化设计中。

本文首次将代理模型理论分析和优化方法引入到图像处理领域中,将光学厚度预测与现有的代理模型SBAO方法相结合。根据有雾图像的衰减特性,归纳统计有关的雾天图像特征,通过代理模型方法对雾天图像特征进行敏感度分析,并选择与雾浓度相关性大的图像特征作为模型的设计变量,致力于建立计算复杂度小、准确度高的光学厚度估计代理模型。由此可进行雾浓度估计及去除场景中不同浓度的雾气对图像的影响。

1 雾浓度估计及图像去雾

1.1 雾浓度定义

大气散射模型主要由入射光衰减和大气光成像两个模型构成,反演雾天图像形成过程可得到去雾后图像,由此开创了图像去雾的先河。为了将大气散射模型扩展到彩色图像实际应用中,He等[9]对大气散射模型进行简化,得到雾天RGB图像的成像模型为

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

(1)

t(x)=e-βd(x),t(x)∈(0,1],

(2)

式中:x为二维图像上像素点的位置坐标;I(x)为观察到场景的有雾图像;t(x)为介质透射率函数;J(x)为场景目标直接反射光强,即要恢复的清晰无雾场景图像;A为大气光矢量;β为消光系数,包含吸收系数和散射系数,在图像去雾应用中近似为散射系数;d(x)为场景点深度。t(x)是由β与d(x)共同作用的结果。根据简化模型可推导出去雾图像J(x)的求解公式:

(3)

通过求取A、t(x)的值,可从原有雾图像I中得到去雾后的图像J(x),实现图像去雾。

根据(2)式,t(x)是随光学厚度βd(x)呈指数变化且直接反映雾浓度,则雾天图像场景像素点x的光学厚度表达式为

D(x)=βd(x).

(4)

将光学厚度D(x)作为目标函数,雾相关图像特征作为设计变量,构建代理模型;再分析各设计变量的敏感度,进行误差分析和代理模型校正后,可获得光学厚度的精确代理模型。图1给出了基于光学厚度代理模型的雾浓度估计及图像去雾流程图。

图1 基于光学厚度代理模型雾浓度估计与图像去雾流程图Fig.1 Flow chart of optical depth surrogate model-based method for estimating fog density and removing fog effect from images

根据大量雾天图像的特征统计建立光学厚度估计的代理模型后,可根据(2)式和(4)式求解出大气透射率。由此,定义雾天图像中的场景点x的雾浓度为

Df(x)=1-t(x).

(5)

如此定义雾浓度Df(x)有以下两个原因:首先,透射率t(x)是随着光学厚度D(x)的增加而呈指数衰减的,从而导致雾浓度Df(x)呈线性增加,这就使雾浓度Df(x)正相关于光学厚度D(x),因此将光学厚度作为目标函数进行建模并作为雾浓度估计的预先步骤是合理的;其次,由于光学厚度的变化范围是从0到∞,所以不能直接作为雾浓度估计参数,而雾浓度的范围是从0到1,具体上限、下限的存在使得雾浓度大小更为明确。所以,通过(5)式可对雾天图像中场景点的雾浓度进行合理估计。

1.2 雾天图像特征分析

从大量雾天图像中提取一系列雾天图像特征进行统计,并将这些特征作为以光学厚度为目标函数的设计变量。图2给出了雾天图像以及其暗通道、局部对比度、色度、色度方差、彩色度和图像锐度等特征[6]提取图像。从视觉效果看,其中一些图像特征受图像内容影响大,并不随雾浓度的影响而发生明显变化,比如局部对比度、色度方差、图像锐度;而另一些图像特征,可体现出不同光学厚度的场景点具有不同的雾浓度,如暗通道特征、色度、彩色度、饱和度- 亮度。

彩色图像可从RGB彩色空间转换到与人类视觉感知性相关性更强的HSV彩色空间,雾气的存在对于场景图像的色调H分量没有影响,然而图像的饱和度S分量和亮度V分量则会随着场景中雾气浓度的不同而产生剧烈变化。将图像I(x)的饱和度S(x;I)和亮度V(x;I)结合在一起,定义为基于HSV空间的饱和度、亮度联合特征,简称为饱和度- 亮度特征,表达式为

图2 雾天图像的特征提取Fig.2 Fog-related features extracted from a foggy image

fs(x;I)=S(x;I)V(x;I)=

(6)

式中:R、G、B分别为彩色图像的三通道;Ic(x)为像素点x在c通道的强度值;fs(x;I)作为有雾图像I的饱和度- 亮度特征,则其对应的同一场景无雾图像J的饱和度- 亮度特征fs(x;J)可根据(6)式获得。同一场景在无雾天气下和有雾天气下所拍摄的图像对中像素点的饱和度- 亮度特征值有如下关系:

fs(x;I)=e-D(x)fs(x;J).

(7)

通过(7)式可知,有雾图像的饱和度- 亮度特征值是随着雾天条件下场景点光学厚度值的增加而呈指数衰减的。

提取雾天图像(见图2(a))的饱和度- 亮度特征,结果如图2(h)所示,将图2中这7个雾天图像特征作为设计变量用于光学厚度代理模型的初步构建。

1.3 光学厚度估计的代理模型建立

根据雾天图像的特征,可采用代理模型方法建立雾天图像中像素点光学厚度的代理模型。图3为采用代理模型方法建立雾天图像中像素点光学厚度估计模型的流程图。

图3 雾天图像中像素点光学厚度代理模型的建立Fig.3 Flow chart of surrogate modeling method

建立光学厚度估计代理模型的主要步骤为:

1)准备大量合成有雾图像特征值作为实验数据;

2)通过实验数据采用代理模型方法,初步拟合出光学厚度代理模型;

3)采用敏感度分析方法,选择与图像内容无关、仅与图像雾浓度相关的特征作为模型构建的设计变量;

4)筛选了设计变量后,重新拟合代理模型,对修正后的代理模型进行误差分析,即获得高精度代理模型。此模型可准确地给出光学厚度与重要的雾相关特征之间的数学关系。

1.3.1 训练数据的准备

模型拟合的关键问题是,要具备足够的实验数据来建立雾天图像中像素点光学厚度估计的代理模型。这就需要足够多的同一场景无雾图像及具有不同雾浓度的有雾图像,但是在现实中很难同时获取到同一场景在不同天气条件下的多幅图像。Tang等[10]提出了一种基于无雾图像来合成有雾图像的方法,通过此方法可以获取足够的实验数据。为了得到以雾天图像像素点的光学厚度为目标函数的代理模型,需要准备用于模型拟合的实验数据,具体流程如图4所示。

图4 光学厚度估计模型拟合的实验数据准备流程Fig.4 Process of generating the training data

首先,需要获取大量的自然无雾图像;其次,为每一幅图像的所有像素点赋予同一光学厚度值,光学厚度取值范围是[0.01,3.00],这是根据(2)式中透射率的取值范围t∈[0.05,0.99]而推导出的,从而生成了多幅不同值的光学厚度图;最后,对于每幅无雾图像,加以具有不同值的光学厚度图和随机大气光A(A∈[180, 255]),根据(1)式和(2)式合成其对应的多幅有雾图像。每幅光学厚度图都具有统一的D值,为每幅无雾图像生成10幅光学厚度图,以合成10幅具有不同雾浓度的有雾图像,且每幅合成的有雾图像上所有像素点都具有相同的雾浓度。将100幅无雾图像和1 000幅合成有雾图像作为实验数据用于光学厚度估计回归模型的建立。

1.3.2 光学厚度代理模型的初步建立

对于构建代理模型,主要存在着两类方法:一类是参数化方法,主要有多项式回归(PRG)模型法[11]、克里金法[12];另一类是非参数化方法,例如径向神经网络(RBNN)法[13]。由于参数模型估计方法旨在确定目标函数和设计变量之间关系的确切函数形式,参数化模型方法中的PRG模型[11]结构简单、适应性强,所以选择PRG模型法来构建光学厚度的代理模型。

选择2阶PRG模型作为雾天图像的像素点光学厚度估计的代理模型,雾天图像的相关特征fp(p=1,2,…,7)分别为暗通道、局部对比度、饱和度- 亮度、色度、色度方差、彩色度和图像锐度,作为初步模型建立的7个独立设计变量,以构建光学厚度的目标函数。在构建代理模型之前,所有的独立变量值和目标变量都归一化到[0,1]之间,基于统一的上限和下限以控制实验数据,使得它们具有相近的取值范围。自变量fp(p=1,2,…,7)归一化转化为f′p(p=1,2,…,7),光学厚度归一化转化为D′(x),将此7个归一化自变量和光学厚度进行代理模型的初步拟合,则光学厚度估计的2阶PRG模型可表达为

D′(x)=-0.622 3+2.607 5f′1(x)+2.088 2f′2(x)-
1.640 9f′3(x)+1.958 3f′4(x)-0.439 5f′5(x)+…+
1.221 4f′6(x)f′7(x)-0.364 4f′72(x).

(8)

1.3.3 光学厚度代理模型的敏感度分析

如(8)式所示,光学厚度估计的PRG模型由7个独立的设计变量拟合出来,此多项式模型中共包含36个单项式,整个拟合过程计算复杂度高。为了解决这个问题,需要选取少量但更重要的设计变量进行一个更简单的拟合过程。通过求得的PRG模型中各项系数,来计算不同设计变量对于目标函数的重要程度,那些对于目标函数无重要影响的设计变量就可忽略。通过上述降维过程,可降低模型拟合的计算复杂度,同时提高拟合模型的精确度,这就是基于代理模型方法的敏感度分析。代理模型的敏感度分析有很多具体的方法,其中Sobol方法[14]被广泛用于工程问题的分析与应用。

表1给出了7个设计自变量的敏感度值。对总体敏感度值进行比较,f′4、f′3、f′6和f′1是敏感度值较大的4个变量。这表明色度、饱和度- 亮度、彩色度和暗通道特征更多地贡献于目标函数。但是,是否所有这些具有较高敏感度的设计变量对于代理模型都是必不可少的,将在1.3.4节进一步分析。然而,f′2、f′5和f′7对应于局部对比度、色度方差和锐度特征,作为敏感度较低的设计变量,它们对目标函数的贡献较小,在代理模型的重新构建中被忽略。

表1 代理模型构建的设计自变量敏感度分析

可根据敏感度分析对模型构建过程中的变量进行选择,精简代理模型构建所需自变量个数,有利于提高模型拟合精度,降低计算复杂度。

1.3.4 光学厚度代理模型的误差分析及修正

采用所获得的高精度代理模型求得光学厚度估计值,并用三维等值面图表示。如图5所示,三维等值面图中不同颜色代表不同等值面,且每个等值面上的所有点具有相同数值。作为示例,图5(a)给出了在一幅无雾图像,图5(b)给出了图5(a)的合成有雾图像,此合成有雾图像上所有像素点的归一化光学厚度值均为0.45. 从合成有雾图像中计算得到设计变量f′1、f′3和f′4的值,代入到修正后的高精度光学厚度估计的代理模型中,并获得目标函数值,在图5(c)中用“黑色圆点”表示。可以看到,大多数“黑色圆点”位于0.35和0.55的等值面之间,并且在实验真值0.45的等值面附近。这说明大多数目标函数的估计值与实验真值之间的误差很小,而且修正后的光学厚度估计代理模型的精度很高。

表2 不同设计变量组合重构的代理模型的误差分析

图5 基于重建代理模型的光学厚度估计值三维等值面分布Fig.5 3D contour distribution graph of optical depth estimation based on the surrogate model

1.4 雾浓度估计与图像去雾

雾天图像中像素点的光学厚度采用代理模型进行估计后,雾浓度图即可通过以下步骤获得:

图6 雾天图像的雾浓度图求解及图像去雾处理Fig.6 Estimation of fog density map and image defogging

1)根据(4)式和(2)式计算得出雾天图像的透射率图;

2)将获得的透射率图由引导滤波器[9]进行滤波,使边缘特征清晰;

3)雾天图像中每个场景点的雾浓度可根据(5)式进行估计。因此,雾天图像(见图6(a))的雾浓度图可获得,并如图6(b)所示。

对于图像去雾,大气光A的估计是必不可少的一步。在雾浓度图中选择亮度值排在前0.1%的最亮像素点,如图6 (b)中红色矩形区域内的像素点,寻找这些像素点在雾天图像(见图6(a))中所对应的区域,用蓝色矩形框标出,再选择区域内像素点的平均亮度值作为大气光A值。

对于输入的雾天图像,当透射率t和大气光A都已知时,可以通过(3)式获得去雾后的图像,如图6(c)所示。

2 实验结果及分析

本文提出的基于光学厚度代理模型的雾浓度估计及图像去雾方法,简称为SMOD雾浓度估计方法及SMOD去雾方法。Tang等[10]采用雾相关特征进行随机森林分类,从而估计大气透射率,实现图像去雾处理,简称为RFT去雾方法。Zhu等[15]是通过建立饱和度和亮度的线性模型对景深进行估计,实现图像去雾处理,简称为LMD去雾方法。由于SMOD去雾方法与RFT去雾方法、LMD去雾方法类似,均是建立雾相关特征与大气散射模型参数的数学关系,来实现图像去雾,因此将本文提出的SMOD方法与以上两种方法进行比较,以确定SMOD方法的有效性与优越性。

2.1 雾浓度估计实验

表3 采用RFT、LMD与SMOD方法对合成有雾图像的雾浓度估计结果

Tab.3 Comparison of fog density estimations on synthetic foggy images

2.2 图像去雾实验

表4给出了自然界真实的雾天图像通过不同方法去雾处理后的图像视觉效果比较。由表4可以看出:RFT方法去雾结果的颜色比本应该有的颜色更暗,这是由高估雾浓度而导致,并且出现明显的颜色畸变,比如在天空区域;LMD方法在去雾图像中仍然具有明显的雾气残留,并且在一些区域比如山的和树木的纹理被模糊;与上述两种方法的去雾结果相比,SMOD方法呈现更好的去雾图像,有着清晰的场景细节和恢复出的自然颜色。

3 结论

本文建立了雾天图像的像素点光学厚度估计的代理模型,提出基于代理模型的雾浓度估计和图像去雾方法。得到主要结论如下:

表4 采用RFT、LMD与SMOD方法获得真实有雾图像的去雾结果

Tab.4 Comparison of image defogging results on real-world images

1)研究了雾天图像相关特征,提出一个全新的基于HSV彩色空间的饱和度- 亮度联合特征,证明饱和度- 亮度特征与雾天图像的雾气浓度有着重要的相关性。

2)经过敏感度分析,选择暗通道、饱和度- 亮度和色度这3个重要的雾相关特征作为设计变量,以光学厚度为目标函数建立了代理模型。

3)基于光学厚度估计的代理模型提出了一种雾浓度估计的表达式,可确定雾浓度水平具体值。

4)通过对比实验,证明了提出方法在去雾图像的视觉化清晰效果和去雾结果的准确程度都胜过现有的先进去雾方法,可以更好地应用于图像去雾处理。

本文提出的SMOD雾浓度估计方法及去雾方法为图像的后期信息处理作了重要的铺垫并打下了良好的基础,同时为机器学习在图像处理领域得以更广泛的应用起到了推动作用。

猜你喜欢
雾天像素点光学
滑轮组的装配
图像二值化处理硬件加速引擎的设计
光学常见考题逐个击破
为什么在雾天不适宜进行晨练
基于局部相似性的特征匹配筛选算法
一种X射线图像白点噪声去除算法
雾天尽量减少室外运动
基于canvas的前端数据加密
第2讲 光学知识专题复习
大雾天气