基于YUV颜色模型与导向滤波的图像去雾算法

2021-08-30 06:56:22何惜琴陈冬冬
液晶与显示 2021年8期
关键词:透射率雾气色度

何惜琴, 陈冬冬

(闽南理工学院 电子与电气工程学院,福建 泉州 362700)

1 引 言

雾霾的存在使得场景视见度降低,造成机器设备拍摄的户外图像严重退化,色彩保真度不足,细节辨识度较差,影响了图像在安防监控、检测识别与分析等场合的应用[1-3]。为了降低雾霾对户外图像的干扰,有必要研究针对有雾图像的清晰化处理,这对于提高图像系统的有效性和适用性具有积极的促进作用[4-5]。

基于大气散射模型和深度学习的去雾方法成为近年来的研究热点。深度学习去雾通常采用神经网络对大量数据集进行训练,然而雾天场景具有多样性的特点,训练的样本数量和多样性受限将导致场景适应性不足。模型去雾算法分析雾气形成的因素,充分利用先验假设信息从根本上去除雾气影响,适用场景更广。He等人[6]通过观察大量自然图像得出规律:无雾图像的大多数局部块中至少存在某一颜色通道值很低的像素点,而受雾气影响的图像会使得这些通道值升高。利用这一先验规律估计景物透射率和大气光强度,再采用软抠图对透射率进行优化修复,取得了较好的去雾结果。Meng等人[7]利用约束条件对透射率进行细化,再通过正则化对恢复图像建模,在提升图像对比度的同时,减少了噪声干扰。Zhu等人[8]首次将颜色衰减先验信息用于透射率的计算,并借助监督学习对景物深度进行估计,恢复的图像具有色彩鲜艳、细节清晰的特点。Cai等人[9]将透射率的估计融入端到端的深度训练系统,再通过大气散射模型复原清晰结果。Bui等人[10]使用彩色椭球体模型计算透射率,在维持色彩保真度方面取得了一定成效。Salazar等人[11]结合多层感知器和通道最小值对透射率进行有效计算,且借助对比度拉伸技术扩宽了动态范围。Liu等人[12]结合先验知识和数据信息估计透射率,采用残差网络结构有效提升了算法的鲁棒性。Vazquez等人[13]充分利用颜色通道的迭代耦合关系,提出一种基于物理模型的去雾优化算法,并通过参考指标与非参考指标验证了算法的优越性。

考虑到雾气对图像具有漂白作用,为了更准确地恢复图像的颜色与细节,本文通过YUV颜色模型分离亮度分量和色度分量,一方面对亮度分量进行去雾处理,增强细节可见性与边缘梯度;另一方面对色度分量进行补偿,有效提升色彩保真度,避免偏色与过饱和现象。大量仿真实验证明本文算法具有优越的视觉效果和评价指标,为去雾提供了一种新的解决方案。

2 理论基础

2.1 大气散射模型

大气散射模型常被用于图像复原和图像去雾方面的研究,其表达式可写为:

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

(1)

其中,I(x)为有雾图像,J(x)为雾气去除后的清晰图像,A为全局大气光强度,t(x)为景物透射率。当场景光线的传播介质均匀分布时,t(x)=e-βd(x),β为大气散射系数,d(x)为场景深度。式(1)中,定义大气光幕:

M(x)=A(1-t(x))=A(1-e-βd(x))

.

(2)

大气光幕体现景物周围光线的散射作用,造成了实际场景的颜色退化和对比度下降。该模型表明,已知I(x)的前提下,求解M(x)、t(x)和A便可复原清晰的无雾图像J(x)。

2.2 颜色模型

目前常用于图像去雾的颜色模型有RGB、HSV和YUV等。使用RGB模型复原图像时,需要单独对3个颜色通道进行操作,若通道间的颜色不平衡易造成偏色现象;HSV模型与人眼感知颜色的方式较为近似,其色度、饱和度和亮度可单独提取,与RGB模型的转换涉及到每个像素点的三角函数计算,所需的计算量和运行时间成本较高;而YUV模型的转换仅需简单的代数计算即可完成,容易移植到视频处理模块,且亮度分量Y和色度分量U、V是分离的,彼此之间互不影响,常用于解决视频流传输和电视兼容问题。

从RGB模型到YUV模型的转换公式如下:

(3)

式中,R、G、B分别表示每个像素点的红、绿、蓝三基色,线性加权得到亮度分量Y;色度分量U和V的加权系数各不相同,充分考虑了人眼视觉感官对色差的敏感度。从YUV模型到RGB模型的转换公式如下:

(4)

式中,色度V反映了红色与亮度分量的差异,色度U反映的是蓝色与亮度分量的差异。在YUV模型下实现图像处理之后,需转换到RGB模型才能正常显示。

3 本文算法

与当前主流方法不同的是,本文使用YUV颜色模型进行去雾操作。首先通过式(3)对原始图像I进行分离,得到亮度分量IY和色度分量IU、IV;其次根据大气散射模型求解亮度分量IY的光幕值、透射率和大气光强度,而对色度分量IU、IV进行颜色补偿,一方面能够节省计算量,另一方面能够有效恢复图像的色彩。

3.1 导向滤波估计大气光幕

为了获取精确的光幕值,对亮度分量IY执行形态学开运算,既可消除纹理细节和亮白色物体的干扰,又能基本维持整体亮度不变,该结果记为P,如图1(a)所示,图像中存在矩形块现象,接下来采用导向滤波[14]进行细化。

图1 大气光幕和大气光强度的估计Fig.1 Estimation of atmospheric veil and airlight

导向滤波常被用于平滑去噪、细节增强和HDR压缩等方面的应用,具有计算快速、效果出众的特点。该滤波器中,需要将边缘丰富的图像作为导向图,然而原始图像及其亮度分量IY均受雾气影响,细节退化,边缘梯度不明显,此处构造拉普拉斯锐化算子对亮度分量进行卷积运算,该算子的模板形式如下:

(5)

锐化过程可表示为:

L=hIY

(6)

(7)

式中,ak和bk表示线性变换参数,|w|表示局部图像块wk的像素总个数。在线性模型中,为了求解变换参数,通过最小化输入和输出之间的差值计算代价函数,即在局部图像块wk中,有

(8)

式中,ε表示规则参数,用于调整细节的平滑程度。根据线性回归求解式(8)中的变换参数,得到

(9)

(10)

将ak和bk代入式(7)计算之后,滤波结果即为大气光幕M,如图1(c)所示,可以看出,M基本保留了导向图L的边缘结构,且局部亮度与输入图P高度相似。

3.2 透射率的求解及修正

假定大气光强度A已知的前提下,根据式(2)计算透射率:

(11)

式中,0≤ω≤1,用于控制图像的雾气去除程度,为了保留小部分雾气使复原图像的视觉效果具有层次感,一般取ω=0.95。若图像中存在大面积亮度近似大气光值的天空,容易导致该区域的透射率出现偏差,从而影响复原图像的视觉效果。原因在于天空基本不含信息量,即便是完全无雾的情况下,其灰度值也较大,因此通过式(11)计算后认定该区域的雾气浓度高,造成过度去雾处理而出现色彩失真。为了克服该局限,需要对天空区域的透射率进行修正。此处引入容差参数[15]R,依据光幕值和大气光强度值的绝对差大小来判断天空区域:将满足|M(x)-A|>R的区域视为非天空,此时维持透射率不变;将满足|M(x)-A|≤R的区域则视为天空,此时透射率需要进行修正:

(12)

式中,容差参数R一般取为60。修正之后,可确保天空区域的透射率值增大,从而弱化该区域的去雾,避免色彩失真现象。

3.3 大气光强度的计算

全局大气光强度A是图像去雾的另一个关键参数。当前求解的方式较多,如对天空区域进行分割提取,并寻找最大值或者计算均值[16]来估计A,此类方法的局限在于要求场景中存在天空。采用四叉树迭代搜索的方式[17]估计A值取得一定的效果,不足之处在于较难避免非雾气的白色目标干扰。李喆[18]将暗通道和景深图中最亮的部分像素保留下来,再将其最大值视为A,该方法的局限在于自然拍摄的场景深度是未知的,难以保证估计的准确性。

由大气散射的特征可知,大气光强度A位于图像中雾气最浓或深度最大的区域,寻得该区域即可求得准确值。根据3.1节的分析,开运算操作消除了图像中类似白色目标的影响,且导向滤波后的光幕值近似反映了雾气分布特性,因此可依据M的强度信息获取大气光强度A。本文提出估计A的步骤如下:

(1)为了进一步消除噪声以及个别异常像素的干扰,标记M中最亮的前0.2%像素点坐标;

(2)该坐标对应于IY中相同位置的像素集合指定为雾最浓区域,如图1(d)的右上角所示,以黑色填充标识;

(3)计算该区域内所有像素的平均值作为大气光强度A。

3.4 复原图像与色度补偿

由透射率tr和大气光强度A即可反解大气散射模型,求出亮度分量的清晰结果:

(13)

维持色度分量IU、IV不变,通过式(4)进行转换即可得到恢复效果。图2(a)为雾天图像,图2(b)为去雾结果,可以看出,图像的雾气被有效去除,对比度和视见度有所提升,但是仍然存在两个问题:一是去雾后的整体亮度较弱,部分细节可见性不足;二是雾气具有漂白作用,仅对亮度分量进行恢复将无法补偿颜色信息,造成景物表面的色彩饱和度不足。为了使视觉效果符合人眼特性,首先采用曲线拟合[19]对JY进行亮度调整,计算公式如下:

图2 去雾结果和色度补偿Fig.2 Defogging results and chroma compensation

(14)

式中,δ表示增强系数,数值越小则图像的整体亮度越高。δ可根据大气光幕的平均亮度自适应选取,即δ=2×mean(M(x)),mean表示求平均值。

其次根据亮度分量IY对色度分量IU、IV进行补偿:

(15)

(16)

式中,JUL、JVL为补偿后的结果;κ表示补偿系数,数值越大则图像的饱和度越高。图2给出了κ分别取2、4、6时的色度补偿效果,不难看出,图2(c)颜色暗淡,饱和度不足;图2(e)过于饱和;图2(d)整体适中,与原图像的色度基本保持一致。

4 实验对比与分析

本文算法在MATLAB R2015a上编程实现,对600幅不同场景下的含雾图像进行了实验测试。算法中形态学开运算采用25×25的方形结构元素,导向滤波的规则参数取0.01,局部图像块尺寸取17×17。实验对比的算法有国际主流的Meng算法[7]、Cai算法[9]、Salazar算法[11]和Vazquez算法[13]。

图3给出了上述算法的处理结果。img1为不含天空的近景图像,对比图中左上角的房子可以看出,本文算法的对比度更好,细节可见性更强。img2为小型无人机航拍的地面图像,Meng算法虽然将雾气去除,但整体颜色过于饱和,场景层次感不足;Cai算法、Salazar算法和Vazquez算法对远处的去雾效果不佳;相比之下,本文算法对雾气的去除较为彻底,整体明亮通透。img3和img4为含大面积天空的浓雾图像,Meng算法存在明显的颜色失真现象;Cai算法和Vazquez算法的视觉效果相似,对楼房建筑、天安门的去雾力度不足;Salazar算法整体明亮,但仍受到较多雾气的影响;本文算法的视见度和清晰度更高,对天空的保持效果明显。img5为混合远、近景的浓雾图像,Meng算法出现偏蓝色现象;Cai算法的对比度较差;Salazar算法和Vazquez算法的远处仍然存在雾气没有去除干净;通过对比可知,本文算法的色调与原图像基本一致,恢复效果优于其他算法。img6为含有近景的薄雾图像,本文算法对近景处的亮度和颜色提升更明显,细节对比度更强,其余算法均出现颜色暗淡与细节辨识度较差的缺陷。

图3 去雾结果比较Fig.3 Comparison of defogging results

在客观指标方面,采用信息熵、平均梯度和标准差作为评价参数,表1给出了图3中6组图像的评价结果。从表1可知,本文算法的信息熵占较大优势,意味着恢复图像的细节信息更多、颜色信息更丰富。本文算法的平均梯度和标准差均为最优值,表明边缘轮廓比其他方法更加清晰,对比度更高。客观评价的结论与主观评价基本一致,再次验证了本文算法的有效性。

表1 客观参数评价Tab.1 Objective parameter evaluation

续 表

5 结 论

本文采用YUV颜色模型与导向滤波相结合的方式恢复含雾图像的真实场景。首先构造拉普拉斯锐化算子,结合导向滤波对大气光幕进行细化,并纠正天空区域的透射率值;接着计算浓雾区域的均值作为大气光强度;最后补偿色度信息,恢复无雾场景的真实色彩。主观评价和客观指标均验证了本文算法具有增强边缘强度与细节可见性的优势,其中信息熵提高1.2%以上,平均梯度提高48.0%以上,标准差提高10.6%以上。本文算法能够有效维持原始图像的颜色关联性,适合移植到视频监控、户外直播等流媒体方面的应用。

猜你喜欢
透射率雾气色度
雾气一样的摆渡船
扬子江(2022年4期)2022-07-04 22:23:49
雾气一样的摆渡船
扬子江诗刊(2022年4期)2022-07-01 13:06:00
山中雾气
江南诗(2020年5期)2020-10-15 00:27:16
水天月
山花(2020年6期)2020-06-19 08:50:32
纯色太阳镜镜片耐日光辐照性能试验研究
基于改进色度模型的非接触式心率检测与估计
景德镇早期青白瓷的器型与色度
如何提高苹果的着色度
现代农业(2016年6期)2016-02-28 18:42:48
石墨烯光栅太赫兹透射特性的研究
玻璃长波透射率对普通双层中空玻璃热特性的影响