Densely Connected Pyramid Dehazing Network密集连接的金字塔式脱雾网络

摘要:我们提出了一种新的端到端单幅图像去雾方法,称为密集连接金字塔去雾网络(DCPDN),它可以同时学习传输图、大气光和去雾。通过将大气散射模型直接嵌入到网络中实现端到端学习,从而保证了所提方法严格遵循物理驱动的除雾散射模型。受密集网络可以最大限度地利用不同层次特征的信息流动的启发,我们提出了一种新的边缘保持密集连接的编码器-解码器结构,并使用多层金字塔池模块来估计传输图。该网络使用新引入的保边损失函数进行优化。为了进一步融合估计的传输图和去雾结果之间的相互结构信息,我们提出了一种基于生成对抗网络框架的联合鉴别器来判断相应的去雾图像和估计的传输图是真是假。进行了消融研究,以证明在估计传输图和去雾结果下评估每个模块的有效性。大量的实验表明,该方法比现有的方法有了显著的改进。代码和数据集可从

背景:

尽管基于学习的方法已经取得了巨大的进步,但一些因素阻碍了这些方法的性能,结果远非最佳。这主要是因为:1。传输图估计的不准确会导致低质量的去雾结果。2. 现有的方法没有利用端到端学习,无法捕捉透射图、大气光和去雾图像之间的内在关系。不相交的优化可能会影响整体的除雾效果。最近,文献[24](AOD)提出了一种对整个除雾网络进行联合优化的方法。

这是通过利用线性变换将传输图和大气光嵌入到一个变量中,然后学习轻量级CNN来恢复干净的图像来实现的。

在本文中,我们采用不同的方法来解决图像去雾的端到端学习。特别地,我们提出了一种新的图像去雾架构,称为密集连接金字塔去雾网络(dense - Connected Pyramid dehazing Network, DCPDN),通过遵循图像退化模型Eq. 1(见图2),可以对其进行联合优化,同时估计传输图、大气光和图像去雾。换句话说,通过深度学习框架提供的数学运算模块,将Eq. 1直接嵌入到网络中,实现端到端学习。然而,训练这样一个复杂的网络(有三个不同的任务)是非常具有挑战性的。为了简化训练过程并加速网络收敛,我们利用了一种分阶段学习技术首先逐步优化网络的每个部分,然后联合优化整个网络。为了保证估计的传输图在去雾时保持锐利的边缘,避免晕影,本文基于梯度算子和CNN结构的前几层可以作为边缘提取器的观察,提出了一种新的边缘保持损失函数。在此基础上,提出了一个具有多级池化模块密集连接的编码器-解码器网络,利用不同层次的特征来估计传输映射。为了利用传输图与去雾图像之间的结构关系,提出了一种基于联合鉴别器的生成对抗网络(GAN)。联合鉴别器用来区分估计的传输图和去雾图像对是真对还是假对。

为了保证大气光在整个结构内也能得到优化,采用U-net[35]估算均匀大气光图。如图1所示是使用所提出的方法去雾的样本图像。

本文的主要贡献如下:

(1)提出了一种新型的端到端联合优化除雾网络。这是通过数学运算模块将Eq. 1直接嵌入到优化框架中来实现的。从而使网络能够同时估计传输图、大气光和去雾图像。整个网络通过一种分阶段学习方法进行训练。为了准确估计传输图,提出了一种保边金字塔密连的编码器-解码器网络。进一步,通过新提出的保边损失函数对其进行优化。

(2)由于估计的传输图和去雾图像的结构高度相关,我们利用GAN框架内的联合鉴别器来确定配对样本(即传输图和去雾图像)是否来自数据分布。

(3)在两个合成数据集和一个真实图像数据集上进行了广泛的实验。此外,还对几种最新的最先进的方法进行了比较。此外,还进行了烧蚀研究,以证明在所提出的网络中不同模块所获得的改进

模型构建:

本文提出的DCPDN网络架构如图2所示,由以下四个模块组成:1)金字塔密接传输图估计网,2)大气光估计网,3)通过Eq. 2去雾,4)联合鉴别器。在接下来的内容中,我们将详细解释这些模块。

图2:提出的DCPDN图像去雾方法概述。DCPDN由四个模块组成:1。金字塔密连传输图估计网。2. 大气光估计网。3.通过Eq2进行除雾。4. 联合鉴别器。我们首先使用提出的金字塔密集连接传输估计网估计传输图,然后使用U-net结构预测大气光。最后,利用估计的透射图和大气光,通过式2估计去雾图像。

金字塔密集连接传输图估计网络。受先前使用多层特征估计传输图的方法的启发[33,5,42,1,24],我们提出了一种密集连接的编码器/解码器结构,该结构利用来自CNN的多层特征,其中密集块用作基本结构。使用密集块的原因是,它可以最大化沿着这些特征的信息流,并通过连接所有层来保证更好的收敛。此外,采用多层次金字塔池化模块,将“全局”结构信息纳入优化,对学习到的特征进行细化[57]。为了利用dense-net的预定义权值[15],我们采用了第一个Conv层和前三个DenseBlocks及其对应的下采样操作,来自预训练的dense-net121的Transition-Blocks作为我们的编码器结构。编码部分末尾的特征大小为输入大小的1/32。为了将传输图重建为原始分辨率,我们将5个密集块与改进的上采样过渡块[19,60,54]堆叠为解码模块。此外,还使用了与同一维度对应的特征进行串联。

尽管所提出的密连编码器结构结合了网络内的不同特征,但仅密连结构得到的结果仍然缺乏不同尺度对象的“全局”结构信息。一个可能的原因是,来自不同比例尺的特征没有被用来直接估计最终的传播图。为了有效地解决这一问题,采用了多层次金字塔池块,以确保不同尺度的特征嵌入到最终结果中。这是受到在分类和分割任务中使用全局上下文信息的启发[57,48,14]。与其使用非常大的池大小来捕获不同对象之间更多的全局上下文信息[57],还不如使用更多的“局部”信息来表征每个对象的“全局”结构。因此,采用池化大小为1/32、1/16、1/8、1/4的四级池化操作。然后,在最终估计之前,所有四个级别的特征都被上采样到原始特征大小,并与原始特征连接起来。

大气光估计网

根据图像退化模型Eq.;1、我们假设大气光图A是均匀的[13,5]。与以前的工作类似,预测的大气光A对于给定的图像是均匀的。换句话说,预测的A是一个2d地图,其中每个像素A(z)具有相同的值(例如。A(z) = c, c是常数)因此,ground truth a与输入图像具有相同的特征大小,并且a中的像素填充相同的值。为了估计大气光,我们采用8块U-net结构[35],其中编码器由四个convn - bn - relu块组成,解码器由对称的dvn - bn - relu块1组成。

通过Eq. 2进行除雾

为了连接传输图、大气光和去雾图像之间的关系,确保三个任务共同优化整个网络结构,我们直接将(2)嵌入到整体优化框架中。整个DCPDN结构的概述如图1所示。

联合判别器学习

令Gt和Gd分别表示生成传输图和去雾结果的网络。为了改进输出并确保估计的传输图Gt(I)和去雾图像Gd(I)与其对应的真值t和J无法区分,我们使用了具有新型联合鉴别器的GAN[12]。由(1)和图4可以观察到,估计的传输量之间的结构信息。map t = Gt(I)与去雾后的图像t J高度相关。因此,为了利用这两种模态之间结构信息的依赖性,我们引入了一个联合鉴别器来学习联合分布,以确定相应的对(传输图、去雾图像)是真还是假。通过联合分布优化,可以更好地利用它们之间的结构相关性。与之前的工作类似,对于给定的图像,预测的空气光A是均匀的。换句话说,预测的空气光A是一张2d地图,其中每个像素A(z)具有相同的值(例如。A(z) = c, c是常数)我们提出了以下基于联合鉴别器的优化方法

在实际应用中,我们将消噪后的图像与估计的传输图拼接成一对样本,然后将其输入鉴别器。

边缘保护损失

人们普遍认为欧几里得损耗(L2损耗)往往会模糊最终结果。因此,仅用L2损耗对传输图进行不准确的估计可能会导致细节丢失,从而导致去雾图像中出现晕影[16]。为了有效地解决这一问题,提出了一种新的边缘保持损失算法。1)边缘对应图像强度中的不连续点,因此可以用图像梯度来表征。2)众所周知,边缘和轮廓等底层特征可以在CNN结构的浅层(前几层)中捕获[47]。换句话说,前几层在深度网络中起到边缘检测器的作用。例如,将传输图输入预定义的VGG-16[37]模型,然后将层relu1 2输出的某些特征可视化,可以清楚地看到,在相应的特征图中保留了边缘信息(见图5)。基于这些观察结果,并受到深度估计中使用的梯度损失[43,26]以及低级视觉任务中使用的感知损失[20,49]的启发,我们提出了一种新的边缘保持损失函数,该函数由L2损失、双向梯度损失和特征边缘损失三部分组成,定义如下

其中,LE表示整体保边损失,LE,l2表示l2损失,LE,g表示双向(水平和垂直)梯度损失,LE,f表示特征损失。LE,g的定义如下

 

 其中Hx和Hy分别是沿行(水平)和列(垂直)计算图像梯度的算子,w×h表示输出特征图的宽度和高度。特征损失定义为

式中,Vi表示一个CNN结构,ci、wi、hi为Vi中相应底层特征的维数。由于边缘信息保留在底层特征中,我们采用VGG-16[37]中relu1-1和relu2-1之前的层分别作为边缘提取器V1和V2。这里,λE l2, λE g和λE f是平衡损失函数的权值。 ​​​​​​​

总损失函数

提出的DCPDN架构使用以下四个损失函数进行训练

其中lt由保边损耗le组成,la由预测大气光的传统L2损耗组成,ld表示除雾损耗,也仅由L2损耗组成。lj表示联合鉴别器损失2,定义如下

 这里λj是常数。

级间学习

在实验中,我们发现用复损失Eq. 7直接从头开始训练整个网络是很困难的,而且网络收敛速度很慢。一个可能的原因可能是由于不同的任务造成的梯度扩散。例如,去模糊图像损失的梯度可能会“分散”最初传输图损失的梯度,导致较慢的收敛。为了解决这一问题并加快培训速度,引入了分阶段学习策略用于不同的应用,如多模型识别[7]和特征学习[2]。因此,训练数据中的信息逐渐呈现给网络。换句话说,不同的任务是逐步学习的。首先,我们对每个任务分别进行优化,不同时更新其他任务。在每个任务的“初始化”之后,我们通过联合优化所有三个任务来微调整个网络。

结论:我们提出了一种基于端到端深度学习的去雾方法,该方法可以联合优化透射图、大气光和去雾图像。这是通过将大气散射模型直接嵌入整体优化框架来实现的。为了有效估计传输映射,提出了一种具有多级池化模块的密连编码器-解码器结构,并采用一种新的保边损失算法对网络进行了优化。此外,为了细化细节并利用去雾图像与估计传输图之间的相互结构相关性,在该方法中引入了基于联合鉴别器的GAN框架。进行了各种实验,以证明所提出方法的意义。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值