APP下载

基于多尺度融合卷积神经网络的图像去雾算法

2021-10-15朱晨雨

液晶与显示 2021年10期
关键词:透射率尺度大气

乔 丹, 张 闯,2*, 朱晨雨

(1. 南京信息工程大学 电子与信息工程学院,江苏 南京 210044;2. 江苏省气象探测与信息处理重点实验室,江苏 南京 210044)

1 引 言

在雾天场景下,大气中悬浮较多水滴。光在传输过程中遇到杂质被吸收和散射,导致拍摄图像轮廓模糊,图像清晰度以及色彩饱和度下降。这不仅对人类主观感受产生消极影响,而且不利于目标分辨和捕获细节信息,降低图像的应用价值。因此,图像去雾技术成为计算机视觉的重要研究之一[1]。

目前,传统图像去雾方法主要分为两类,第一类是基于非物理模型去雾算法,其主要包括直方图均衡化[2]、基于视网膜大脑皮层(Retinex)理论[3]、同态滤波法[4]等去雾算法,此类方法主要是提高有雾图像对比度及清晰度,而未分析雾气形成原理以及光学成像本质,不能从根本上实现去雾。第二类是基于大气散射模型[5]去雾算法,该方法主要研究成雾原因以及图像降质的客观原理,依据大气散射模型构建数学公式,复原出无雾图像。Tan等人[6]采用最大局部对比度的方法实现去雾,由于清晰化后图像比雾天图像的对比度高,在边缘检测时可检测到更多边缘信息的先验知识。Fattal[7]提出基于独立分量分析(ICA)的彩色图像去雾算法,并假设表面阴影与传输函数统计无关,根据这一前提对大气散射模型进行运算分析。He等人[8-9]提出暗通道去雾算法(DCP),该方法依据有雾图像存在一个通道像素值低的先验知识求解大气散射模型。Shao[10]改进暗通道去雾算法,将有雾图像分为近景和远景两个区域,依据灰度值不同分段映射,去雾后图像清晰度提高。Zhang等人[11]提出结合颜色线和暗通道去雾算法,通过计算可信度权重加权颜色线先验和暗通道先验求得透过率图。但基于暗通道去雾算法存在去雾效率低、去雾后图像偏暗的问题。Meng等人[12]研究出正则化去雾(BCCR),对透射率图边界约束,该方法存在去雾后图像失真、曝光等问题。尽管这类传统方法去雾效果相对较好,但需人工提取有雾特征且大部分依赖先验知识,仍有局限性。

近年来,深度学习理论应用到图像去雾领域,部分学者提出了基于卷积神经网络的去雾算法。Cai等人[13]提出DehazeNet方法,使用多尺度卷积神经网络和MaxPooling估计透射率图,反演出无雾图像。该方法没有融合深层浅层信息,存在提取有雾图像特征较少的问题,易出现颜色失真、去雾不彻底的现象。Li[14]提出AOD-Net去雾模型,将大气光照值和光透射率假设为一个参数,减少单个参数累计造成的误差。Ren等人[15]提出MSCNN方法,首先利用粗尺度网络估计场景透射率图,然后由精细尺度网络细化。但是,该方法对夜晚雾情况处理较差。陈清江等人[16]提出基于卷积神经网络去雾算法,采用多尺度操作提取有雾图像信息。上述去雾算法使用卷积神经网络自动提取图像特征,提高去雾效率,但训练模型局限于浅层结构,没有深度学习有雾图像,存在特征提取疏漏等问题;且所得透射率图部分存在斑块,影响复原图像的质量,导致图像去雾不彻底。

为解决去雾后图像颜色偏暗以及去雾不彻底等问题,本文提出了一种基于多尺度融合卷积神经网络(Convolutional Neural Network, CNN)的去雾网络模型。该网络多次采用特征融合操作,自动学习有雾图像深层特征信息,并初步提取出有雾图像透射率图;然后由双边滤波优化透射率图,在保留轮廓信息的基础上有效除去噪声;最后依据大气散射模型公式复原出无雾图像。由实验结果可知,与其他方法相比,本文方法得到的去雾图像颜色清晰自然,视觉效果较好。

2 大气散射模型

Narasimhan和Nayar[17-18]通过建立数学模型,解释了雾天图像包含要素以及成像过程。该模型认为雾天成像质量下降的原因主要包括两方面:一是由于大气中悬浮粒子对目标反射光吸收和散射的影响致使其能量衰减,最终降低成像亮度;二是太阳光等环境光受大气介质的散射作用形成背景光,其强度过大,影响成像清晰度,造成图像色彩不自然。根据以上原因,将大气散射模型定义为:

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

(1)

式中:I(x,y)表示有雾图像,J(x,y)表示无雾图像,A表示中大气光值,t(x,y)表示图像透射率图,可定义为:

t(x,y)=e-βd(x,y),

(2)

式中:β表示大气的散射系数,d(x,y)表示物体与成像设备间的距离。

由上述可知,图像去雾是先从有雾图像中估算透射率图和大气光值,然后根据大气散射模型求解无雾图像的过程。因此,在I(x,y)已知的前提下,求得t(x,y)和A是复原无雾图像的关键。

3 本文算法

依据大气散射模型复原无雾图像,其主要目标是求解透射率图以及大气光值。传统暗通道去雾算法,依据有雾图像中至少存在一个通道像素值低的假设实现去雾。而当像素点的值接近大气光值时,去雾的图像出现局部的颜色偏暗效应。为避免这一缺点,本文设计了一种基于多尺度融合CNN的图像去雾算法。该算法首先搭建了多尺度融合去雾网络 (Multi-scale Concat Dehaze Network, MCDN),初步预测透射率图,然后经过图像优化模块,由双边滤波对粗透射率图优化得到细透射率图;根据所得透射率图和有雾图像求解大气光值A;最后结合大气散射模型还原出无雾图象。具体算法框架如图1所示。

图1 算法框架图Fig.1 Algorithm framework

3.1 去雾网络模型设计

有雾图像细节信息保留的完整程度影响着复原后无雾图像的质量,卷积网络层数过浅会导致提取有雾图像信息不足,致使去雾不彻底。所以本文网络模型多次引入特征融合操作,连接具有相同尺寸的卷积层,实现信息融合。MCDN是一个端到端的网络预测模型,直接学习有雾图像和透射率之间的映射关系,网络结构如图2所示。模型设计主要包括以下步骤:(1)搭建预处理模块,提取有雾图像的浅层特征;(2)设计多尺度卷积层实现特征提取与融合,并在浅层与深层间搭建信息融合分支;(3)应用反卷积模块恢复图像原始尺寸,输出粗透射率图。

图2 MCDN网络结构Fig.2 MCDN network structure

3.1.1 图像预处理模块

以有雾图像作为卷积神经网络的输入,首先连续采用3个卷积核大小为3×3的卷积层,对原始图像进行预处理。每层卷积核之间通过局部连接、权值共享的方式与输入图像进行运算,以实现有雾图像浅层特征提取,卷积层的输出为:

Fs(Y)=PRelu[Ws*Fs-1(Y)+Bs],

(3)

式中:Fs表示第s层特征图,Ws表示第s层卷积核,Fs-1表示第s-1层输出的特征图,*表示卷积,Bs表示第s层的偏置。激活函数采用改进的带参数修正线性单元(PRelu)。PRelu在负数区间有斜率,在Relu的基础上增加参数,可以加快网络的收敛速度,避免梯度弥散。其表达式为:

XPRelu=max(xi,0)+bimin(0,xi),

(4)

式中:xi表示第i层正区间的输入信号,bi表示第i层负区间的系数。

3.1.2 多尺度映射模块

多尺度映射模块主要分为两部分:多尺度特征提取、深层浅层信息融合。预处理模块提取图像浅层信息,而雾天图像恢复通常还依赖不同尺度的纹理信息,因此MCDN模型对预处理后图像分别进行卷积核大小为3×3、5×5、7×7 的多尺度卷积运算,多尺度滤波器之间是平行关系,每一层都输出16个特征图,多尺度卷积计算公式为:

Fsi(Y)=PRelu[Wsi*Fs-1(Y)+BS],

(5)

式中:Fsi表示s层的第组i特征图,Wsi(i=1,2,3)表示s层的第i组卷积核,Fs-1表示第s-1层输出的特征图,*表示卷积,Bs表示第s层的偏置。网络采用最大池化采样,简化网络复杂度。每个卷积层后使用BN归一化处理,防止网络过拟合,加速网络收敛。

由于有雾图像既包含广泛的轮廓信息同时也含有小的纹理特征信息,因此为进一步提取深层细节特征,本文多次采用特征融合(Concat)的方法。为减小参数量,对经过3×3,5×5,7×7 卷积层后的特征图分别进行最大池化采样。随后对其特征融合,增加网络容量,提高捕获图像内部信息的鲁棒性和有效性,有助于梯度反向传播。而后再次使用多尺度3×3,5×5,7×7 卷积核进行卷积操作,对其所得特征图进行Concat操作,获得更深层次的有雾图像感受野的信息,同时减少特征冗余,保证了图像细节信息的有效传递。最后,在浅层和深层网络间搭建特征融合分支,汇聚不同等级图像信息, 为满足融合图像间尺寸需求,引入了空间金字塔池化网络Spatial Pyramid Pooling Net(SPP-Net)固定图像大小。该分支可以提高计算精度,保留完整的特征信息透射率图。经多尺度融合所得特征图既包含浅层特征,也保留了更多细节信息,避免信息丢失导致去雾不彻底。多尺度卷积参数如表1所示,MCDN模型中卷积层采用零填充方式,保持图像尺寸不变。每一层激活函数使用PRelu。

表1 多尺度卷积参数Tab.1 Multi-scale convolution paramenters

3.1.3 反卷积模块

反卷积层(Deconvolution)在本文网络模型相当于上采样,增加图像的空间维度。该过程可以表示为:

Pi(Y)=σ[Wi*PI-1(Y)]+Bi,

(6)

式中:Pi(Y)表示第i层反卷积的输出,Wi表示第i层反卷积层的权重参数,Pi-1(Y)表示第i-1卷积层的输出特征图,Bi表示第i层偏置项。本文将反卷积核的尺寸设定为2×2,步长取1,padding设定为SAME的填充模式,将池化操作后的特征图还原成输入图像大小。网络模型最后一层采用3通道,卷积核大小为1×1的卷积层,输出粗透射率图。

3.2 优化模块

粗透射率图存在较多斑块,去雾效果不彻底。针对此问题,本文采用双边滤波法优化粗透射率图。双边滤波法是一种非线性保边滤波方法,通过将图像空间邻近度和像素值相似度结合处理,同时考虑空域信息和灰度相似性,达到保边去噪的目的。

首先根据空域半径对图像平面高斯滤波,依据值域滤波半径对图像值域高斯滤波。然后以空域和值域高斯滤波得到的结果乘积作为双边滤波加权因子,根据双边滤波器的模型实现透射率图的细化,得到最终的透射率图。

其中,双边滤波器的模型定义为:

(7)

式中:f(k,l)表示图像中心点(k,l)的像素值,g(i,j)表示图像中点(i,j) 的像素,ω(i,j,k,l)表示权值系数,可定义为:

(8)

式中:σd表示空域滤波半径,σr表示值域滤波半径。

文中σd、σr分别选取为6和23。如图3所示,对粗透射率图进行双边滤波后图像斑点明显减少,优化后的细透射率图中物体轮廓更加清晰、平滑。

图3 粗细透射率图对比Fig.3 Comparison of coarse and fine transmittance images

3.3 损失函数

本文网络模型学习有雾图像和透射率图的映射关系,训练过程中以均方误差作为损失函数,计算有雾图像真实透射率图和网络预测透射率图之间的误差,即:

(9)

式中:xi表示第i组有雾图像,yi表示第i组真实透射率图,f(xi)表示第i组输出值,i=1,2…,N表示训练样本数目。

网络训练时使用随机梯度下降和反向传播算法最小化损失函数。其中初始学习率设置为0.001,每迭代15轮学习率衰减一次,衰减率为0.97,动量取0.9。同时为了避免网络发生过拟合现象,在训练时采用Dropout方法,以50%的概率随机丢弃神经元。

3.4 大气光值计算和复原无雾图像

式(1)变形可得:

(10)

根据式(10),无雾图像的求解还需计算A值。由式(2)可知,图像中场景深度趋于无穷远时,有t(x)=0;而当t(x)→0时,A=I(x)。这表明当透射率图像素值很低时,A为有雾图像对应位置像素值。因此,在透射率图t(x)中选择前0.1%的低像素值,并且在I(x)中寻找其对应位置处的最高像素值可以作为大气光值A。已知传播率图t(x)和大气光值A,无雾图像J(x)可以通过公式(11)得到:

(11)

式中,t0是透射率图中前0.1%低像素值的临界点。当透射率图t(x)很小时,会使无雾图像J(x)的值偏大,导致图像向白场过度,所以设置t0为透射率图的下限。

4 实验结果及分析

为了衡量本文算法的性能,从合成有雾图像和真实有雾图像两方面分析,分别与传统去雾方法[8-9,12]以及深度学习去雾方法[13,15]做比较。实验中选取Python编程语言,应用Tensorflow深度学习框架搭建网络实现数据集训练与测试。

4.1 实验数据集

本文选取了有雾图像RESIDE数据集[19]作为实验样本,完成MCDN网络训练与测试。RESIDE数据集包含72 135张合成有雾图像,实验过程中选取70%的数据作为训练集,30%的数据作为测试集,并设置大气散射系数β在[0.6,1.6]区间。

4.2 合成有雾图像对比实验

本文算法对RESIDE数据集合成有雾图像进行实验,并分别与DCP[8-9]、BCCR[12]、DehazeNet[13]、MSCNN[15]算法比较,所得结果如图4所示。DCP[8-9]算法能有效去雾,但去雾后图像整体颜色偏暗。BCCR[12]算法亮度相比DCP[8-9]算法有所优化,但与无雾图像相比局部区域出现了颜色失真,如图4(d)Hovel中桌子颜色去雾后由深色变为浅灰色。DehazeNet[13]算法相比两种传统去雾算法效果明显优化,但存在去雾不彻底的现象,如图4(e)Meeting room去雾后照片仍存在大量的雾。MSCNN[15]算法视觉效果较好,但是对图像的细节纹理信息处理不够精确,如图4(f)Bedroom 床面去雾后有颗粒感,不光滑。本文算法相比其他方法去雾彻底,图像清晰,边缘细节保留完整,去雾效果真实自然。

图4 合成有雾图像结果对比。(a)雾天图像;(b)原始图像;(c)DCP;(d)BCCR;(e)DehazeNet;(f)MSCNN;(g)本文算法。Fig.4 Comparison of dehazing results of synthetic foggy images. (a) Foggy images; (b) Original clear images; (c)DCP; (d) BCCR; (e) DehazeNet; (f) MSCNN; (g) Proposed.

为了客观验证不同方法的去雾效果,本文选取峰值信噪比(PSNR)以及结构相似性(SSIM)作为实验评价指标。PSNR是评价图像质量的客观标准,其值越大表明图像去雾后图像效果越好。SSIM主要描述图像相似度,由亮度、对比度、结构3种对比模块组成,其值越大表明去雾图像与真实图像越接近。表2列出了各方法在合成有雾图像实验中的指标结果,由表可知所提算法PSNR和SSIM值均取得最优值,分别达到了29.238和0.950。这表明本文模型能较好地保持去雾图像信息完整性,与真实无雾图像更接近,相较于其他算法具有优势。

表2 合成有雾图像的实验结果Tab.2 Results of synthetic foggy images

续 表

4.3 真实有雾图像对比实验

自然环境中雾分布呈现不均匀性,其去雾模型更复杂。为测试本文算法对自然有雾图像的去雾效果,以3幅自然有雾图像作为实验样本,去雾结果如图5~7。图6红框中天空颜色去雾后由原始灰色变为暗青色,表明DCP[8-9]算法使天空区域亮度降低,且出现色彩突变现象。BCCR[12]算法在明亮区域出现颜色失真以及光晕问题,如图5红框中头发处的局部曝光。DehazeNet[13]算法和MSCNN[15]算法使用卷积神经网络复原无雾图像,效果优于以上两种算法,但是存在降低图像亮度,导致图像丢失细节信息的缺点。图7中红框区域去雾后只有花红色特征,树枝、树叶纹理特征丢失。

图5 自然有雾图像Girls结果对比Fig.5 Comparison of dehazing results of natural images of Girls

图6 自然有雾图像Pumpkin结果对比Fig.6 Comparison of dehazing results of natural images of Pumpkin

图7 自然有雾图像Tian An Men结果对比Fig.7 Comparison of dehazing results of natural images of Tian An Men

实验选取平均梯度(Average gradient)、信息熵(Information Entropy)作为测试指标,以进一步客观地比较不同方法应用于自然有雾图像的去雾效果。平均梯度用于衡量图像清晰度,梯度值越大则表明去雾图像保留了更多的细节特征;信息熵描述了图像信息量的大小,其值越大说明图像去雾后包含信息量越多。如图8柱状图所示,本文算法所测无雾图像的平均梯度值相较于其他方法均有优势,尤其在自然有雾图像Pumpkin场景下更突出;而各方法去雾图像的信息熵值趋于一致,本文所提方法略微占优。结果表明,本文模型在保持去雾图像信息完整性的基础上,增强了对图像细节处理的能力,有效地保留原始图像丰富饱和的颜色信息,达到良好的视觉效果。

(a)平均梯度 (a)Average gradient

(b)信息熵 (b)Information entropy图8 自然有雾图像的实验结果Fig.8 Results of natural foggy images

4.4 消融对比实验

为验证深层与浅层特征信息的融合分支对本文算法性能的影响,以融合操作内部多层卷积层为变量进行消融对比实验。对比网络模型结构如图9,其消去了原先网络中深层与浅层信息融合的分支,其余网络结构参数保持不变。表3给出了对比模型与本文模型对自然有雾图像分别去雾后测得的图像信息熵值。

表3 消融实验信息熵对比Tab.3 Comparison of information entropy in ablation experiments

由表(3)可知,本文模型测得的去雾图像信息熵均优于对比模型,表明在网络中添加深层与浅层特征的融合分支,可以增强网络保持图像信息完整性的能力,便于后续卷积层对图像细节信息的深度特征提取。

图9 对比网络模型图Fig.9 Comparison of network model

5 结 论

针对目前大多数去雾算法存在去雾不彻底和颜色变暗等问题,本文提出了一种基于多尺度融合卷积神经网路的图像去雾算法。网络模型设计多尺度卷积层对有雾图像进行深度特征学习,并结合深层与浅层信息融合分支,初步预测有雾图像的粗透射率图,然后使用双边滤波法优化透射率图,根据大气散射公式计算最终无雾图像。本文算法在有雾图像RESIDE数据集上测得的客观实验数据优于其他算法,其中合成有雾图像样本中PSNR和SSIM能分别达到29.238和0.950,而在自然有雾图像实验中去雾图像在保留图像信息完整的基础上,能更好地处理细节特征。所提方法去雾后的图像有丰富饱和的颜色,主观上具有良好的视觉效果,与文中其他方法相比具有优势。

猜你喜欢

透射率尺度大气
等离子体随机分布对THz波传输特性的影响
宏伟大气,气势与细腻兼备 Vivid Audio Giya G3 S2
财产的五大尺度和五重应对
一种改进的场景透射率修正图像去雾算法
纯色太阳镜镜片耐日光辐照性能试验研究
大气古朴挥洒自如
大气、水之后,土十条来了
宇宙的尺度
9
光子晶体耦合缺陷的透射特性研究