APP下载

基于对偶学习的图像去雾网络

2020-03-05丛晓峰

应用光学 2020年1期
关键词:对偶卷积损失

丛晓峰,章 军,胡 强

(安徽大学 电气工程与自动化学院,安徽 合肥 230000)

引言

空气中的悬浮粒子在光线散射下会造成成像设备采集到的图片质量退化。近年来雾霾天气频发,对道路监控、无人驾驶、出行摄影等均造成了不同程度的负面影响,研究人员为此提出了一系列的去雾算法。Zhao[1]提出了基于最大最小光强的偏振去雾方法,Dai[2]采用全局参数自动估计的偏振方法进行彩色图像去雾,但它们需要的3 种不同角度下拍摄的偏振图像无法通过常规摄像设备获取;He[3]提出了基于暗通道的去雾算法,Yang[4]通过实验证明了He 方法不适用于天空区域,并通过自适应线性透射率估计对He 方法进行了改进,Borkar[5]将暗通道与邻近算法结合提升了算法鲁棒性,但是Yang 与Borkar 算法估计参数方式较复杂,容易产生累积误差;Zhu[6]根据有雾图像的颜色信息的规律提出了颜色衰减先验,由于其未根据特定数据进行建模导致它容易出现去雾残留。基于深度学习的方法主要利用神经网络的数据分布学习能力,Cai[7]采用深度卷积网络实现了端到端的透射图估计并结合物理模型设计了DehazeNet,Ren[8]通过结合不同尺度特征提出了多尺度卷积神经网络去雾,Wei[9]采用引导滤波与深度卷积网络结合提出了低色彩失真的去雾算法,但是Ren、Cai和Wei 方法在训练过程中均需要成对数据导致应用范围受限;Engin[10]从图图转换的角度实现了不需要成对数据作为监督的域转换网络,但是实验结果表明该方法容易造成图像整体色调偏暗。

针对现有去雾方法容易造成图像颜色失真、容易引入噪声信号并造成图像结构形变的问题,提出了基于对偶学习的对偶去雾网络,通过在3 个公开数据集上的实验证明了算法的优越性。

1 对偶去雾网络

1.1 网络的基本思想

对偶学习机制最初在机器翻译领域中被提出,它的核心思想是将原始任务和对偶任务作为两个相互辅助的模块。比如将英语到法语的翻译视为是原始任务,将法语到英语的翻译作为对偶任务,借此形成的闭环过程称为对偶学习。提出的对偶去雾网络将去雾与形成雾的过程视为对偶过程,采用两个过程相互辅助训练的迭代模式。对偶去雾网络的核心子网络为Yi[11]借助对偶学习设计的风格迁移网络DualGAN(Dual Generative Adversarial Network)。为了进一步提高去雾表现,引入了预训练特征提取网络[12]网络以及感知损失[13](用预训练模型计算欧式距离)用于提高峰值信噪比并减小色差。对偶去雾网络首先将重构图片送入用于特征提取的预训练网络,然后最小化去雾图片和真实无雾图片的特征之间的距离以实现特征层面的约束。

1.2 对偶去雾网络的结构与训练过程

提出的对偶去雾网络包含DualGAN 以及一个预训练特征提取网络。假设U 和V 分别表示有雾图片域和无雾图片域。DualGAN 包含图1 中的GU、GV、DU 和DV4 个子网络。其中GU 和GV 分别表示域U 和域V 的生成器,GU 负责学习有雾到无雾图像之间的映射,也就是原始任务,GV 负责学习无雾图像到有雾图像的映射,即为对偶任务,通过原始任务与对偶任务联合训练实现对偶学习模式;DU 和DV 分别表示域U 和域V 的判别器,DU用于判别其输入来自GU 的去雾图像还是来自真实的无雾图像,DV 用于判别其输入来自GV 合成雾的图像还是真实有雾图像。

图1 对偶去雾网络的整体结构Fig.1 Overall structure of dual defogging network

生成器GU 与GV 的结构完全相同,其卷积和反卷积操作的卷积核尺寸均5×5,步长均为2,首先通过连续的卷积操作降低维度,然后通过连续的反卷积获得与输入有雾图像(尺寸为256×256 像素,通道数为3)相同维度的无雾输出,箭头表示在通道上进行拼接操作;每一层都采用卷积网络中普遍采用的BN(batch normalization,批正则化)和ReLU(rectified linear unit,线性整流单元)作为非线性映射函数。判别器DU 和DV 结构完全相同,卷积层采用尺寸为5×5 且步长为2 的卷积核进行所有的卷积操作。计算感知损失的预训练特征提取网络为分类网络,具体参数见文献[12],对偶去雾网络利用了它的第2 个池化层(pooling layer)和第5 个池化层的输出作为特征提取模块,并采用其在ImageNet[14]上的参数版本。

在网路训练中,首先在有雾图像域U 中进行采样得到样本u,通过GU 可以获得转换后的图像u-v,实现有雾图像到无雾图像的转换;然后将uv送入生成器GV 获得重构的有雾图像,这种方式可以使得网络不需要监督信息并且快速地学习数据分布。最后,将重构图像与原始图像同时送入预训练特征提取网络中计算二者的特征向量,并使用特征向量计算欧几里得距离,也就是感知损失。网络尽管训练过程比较复杂,但是训练完成以后只需要保存生成器GU 的参数用于测试阶段的去雾。在每次输入数据时以小批量输入的方法来减少计算开销;实验中采用每次一张有雾图像与一张无雾图像作为输入,二者并不需要为同一场景,学习率设置为0.000 1,采用随机梯度下降算法对损失函数进行优化。

1.3 损失函数

基本的GAN[15]包含一个用于学习数据分布的生成器G(generator)和一个用于鉴别样本真伪的判别器D(discriminator),通过G 和D 的梯度交替更新实现二者的相互博弈。GAN 的损失函数可以表达如下:

式中:x为从数据集采样得到的样本;z需要符合某种分布(比如高斯分布),对偶去雾网络通过对偶的图片域代替了原始GAN 的z。

作为对偶去雾网络的核心组件,DualGAN 包含两个基本的GAN 网络以实现对偶的训练方式。训练过程中从域U 和域V 随机采样得到样本u和样本v。其判别器的损失函数表示为

整体的判别器算为(2)式和(3)式的线性叠加:

DualGAN 采用L1 范数约束图像的重构(rec 为reconstruction 简写)过程为(v的重构损失与u同理)

结合对抗损失可以得到它的整体生成器损失为

式中 λu与 λv为 权重参数,为了保证单一变量的对比,实验中其值与文献[11]保持一致。通过(4)式与(6)式得到DualGAN 的整体损失函数:

对偶去雾网络结合了原始DualGAN 的损失以及从特征空间进行计算的感知损失作为整体的损失函数。为了结合不同尺度的特征信息,对偶去雾网络选择了图1 中的第2 和第5 个pooling 层作为特征提取器并分别表示为ϕ(x) 和ψ(x),通过计算特征提取器输出的L2 距离得到感知损失如下:

最终得到的对偶去雾网络整体损失函数:

对生成器A 和生成器B 均采用最小最大化博弈:

2 实验结果分析

实验中将对偶去雾网络与以下几种算法进行了比较,各种方法的核心原理为:He[3]认为在非天空室外图像的局部区域中,至少存在一个颜色通道具有非常低的像素值,通过假设这些像素值趋近于零,得到透射图与大气光的估计,最后借助大气散射模型实现图像去雾;Zhu[6]提出的颜色衰减先验认为图像的深度与亮度、饱和度之间存在线性的关系,通过线性建模估计深度图并结合大气散射模型去雾;Engin[10]提出了循环一致性的深度生成对抗去雾网络,其核心网络采用了残差连接,通过深度卷积神经网络将有雾图像映射到无雾图像;Yi[11]方法为对偶去雾网络的基础网络DualGAN。

2.1 客观评价指标

峰值信噪比(peak signal-to-noise ratio,PSNR)可以通过均方误差(mean square error,MSE)计算得到。它用于衡量目标图像X相对于参考图像Y的噪声比例,值越大表示图像质量越高,有用信号得到更好的保留。其中MSE 的计算如下:

式中:i和j分别表示像素的横纵坐标;H和W是图像的高度和宽度。通过对数计算可以得到PSNR:

为了分析去雾结果与原图的结构相似性(structural similarity index,SSIM),需要首先计算亮度L、对比度C与结构S:

式中X和Y分别表示目标图像和参考图像(SSIM中L、C与S计算方式参见文献[16])。SSIM 的值越大,表示去雾结果与真实无雾图像的结构越相似,取值范围为0~1 之间。

CIEDE2000 是国际照明委员会于2000 年提出的色彩评价公式,值越小代表目标图像与参考图像间色彩差异越小,计算方式涉及诸多公式推导与证明过程,故不做具体介绍,具体请参考文献[17]。实验表格中将CIEDE2000 用CD(color difference)代表。

2.2 I-HAZE 和O-HAZE 实验结果

本节实验首先证明了对偶去雾网络在数据量较小的情况下仍然具有较好的去雾性能,随后根据实验结果估算了保证模型泛化能力所需最少数据量的大致区间。I-HAZE[18](indoor haze images)包含35 对室内场景(仅30 对公开),实验中选取训练集25 对,测试集5 对;O-HAZE[18](outdoor haze images)包含45 对室外场景,选取训练集35 对,测试集10 对。它们所提供的不同场景的图像尺寸互不相同,将所有的图像尺寸统一缩放到256×256 像素,用于后续计算。实验结果见表1、表2、图2、图3。

表1 I-HAZE 实验结果Table 1 Results of I-HAZE

表2 O-HAZE 实验结果Table 2 Results of O-HAZE

图2 I-HAZE 数据集上的视觉效果对比Fig.2 Visual effect comparison of I-HAZE data set

图3 O-HAZE 数据集上的视觉效果对比Fig.3 Visual effect comparison of O-HAZE data set

表1 中I-HAZE 数据集上的结果显示对偶去雾网络得到的峰值信噪比(PSNR)较高,保证了图像的有用信号在去雾以后得到充分的保留,防止由于去雾引入更多新的噪声信号而导致图像的视觉效果降低;对偶去雾网络在结构相似性(SSIM)上的表现证明了它可以完整地保留图像的结构信息;CIEDE2000 的值越低代表去雾得到的图片和真实无雾图片之间的色彩越接近,更符合人类感官体验。对偶去雾网络与其他去雾算法相比获得了最低的色差值,即最好的颜色恢复效果。表2 提供的在O-HAZE 数据集上的3 种指标值再次证明了上述结论。从室内数据集I-HAZE 与室外数据集O-HAZE 上得到的结果中可以看出,网络在数据量较小的情况下仍然能学习出有雾图像与无雾图像之间的映射,原因就在于对偶学习过程充分利用了数据间的双向映射关系。同时,对偶去雾网络获得了比核心子网络DualGAN(Yi 方法)更高的PSNR 值与更低的CIEDE2000 值,证明了添加预训练模型计算的感知损失能有效提升模型的去雾表现。

从图2 以及图3 中可以看出,He 的暗通道先验造成了图像的颜色加深,这与Li[19]方法对暗通道的分析一致;Zhu 的颜色衰减先验(CAP)同样出现了颜色失真现象,而且并没彻底地去除场景中的雾,这是由于遵循统计规律而不是针对特定数据建模,造成其适应性较差;Yi 方法得到的去雾图像出现了较多的斑点;对偶去雾网络不仅完全地去除了不同场景中的雾,而且完整地保留了图像的边缘和轮廓,去雾后的图像和地表真实图像之间的颜色差异也较小。

图2 中I-HAZE 去雾结果显示出对偶去雾网络与Li 方法均出现轻微的模糊现象,也就是模型的泛化能力没有达到应有的水平,然而在图3 中当数据量增加到35 对时则无模糊情况出现,这是由于神经网络算法所需的数据量与其网络的深度及复杂度有关,但是这种关系并不能严格地通过计算得到,仅能推算一个大致的区间。从实验结果可以推知对偶去雾网络所需的数据量在35 对左右(最小值)。

2.3 在D-HAZE 数据集上的实验结果

D-HAZE[20](depth haze images)数据集有1 449个有雾与无雾图像对。实验中设置为训练集1 007对,验证集362 对,测试集80 对。实验结果如表3、图4 所示。表3 证明了对偶去雾网络在大型室内数据集上仍然具备良好的性能。图4 展示了对偶去雾网络在颜色恢复上的优越性。He 的暗通道先验和Zhu 的颜色衰减先验得到的结果都造成了图像的整体颜色加深,并且亮度和对比度都有不同程度的降低;Engin 方法造成图像整体偏暗,灰度分布不均匀,这是由于其使用的残差连接导致输入与输出过度相关;Yi 出现过度去雾的情况,造成图像的亮度增加与细节丢失;He 方法因为使用了预先定义的滤波器造成了轮廓的模糊。对偶去雾网络兼顾了完整去雾与颜色恢复以及结构完整性。

表3 D-HAZE 实验结果Table 3 Results of D-HAZE

图4 D-HAZE 数据集上的视觉效果对比Fig.4 Visual effect comparison of D-HAZE data set

3 结论

本文将去雾与合成雾作为对偶模式实现辅助训练,采用对偶对抗网络学习有雾与无雾数据的双向域映射关系,并借助预训练模型在特征空间计算感知损失,最后将对偶对抗网络的损失函数与感知损失相加进行联合优化得到了对偶去雾网络。实验得到的峰值信噪比值表明了对偶去雾网络能有效保留图像中的有用信号,防止去雾过程引入新的噪声;结构相似性指标值体现了对偶去雾网络在结构恢复上具有优越的性能;网络得到的去雾结果与真实无雾图像相比具有较低的色差值,有效地降低了去雾算法产生的颜色失真。

猜你喜欢

对偶卷积损失
基于3D-Winograd的快速卷积算法设计及FPGA实现
胖胖损失了多少元
卷积神经网络的分析与设计
R2上对偶Minkowski问题的可解性
对偶延迟更新风险模型的占位时
从滤波器理解卷积
玉米抽穗前倒伏怎么办?怎么减少损失?
配之以对偶 赋之以精魂
基于傅里叶域卷积表示的目标跟踪算法
菜烧好了应该尽量马上吃