摘要:非成对单幅图像除雾由于在现代交通、遥感、智能监控等领域的广泛应用,已成为一个具有挑战性的研究热点。近年来,基于cyclegan的方法被广泛应用于单幅图像去雾中,作为非配对无监督训练的基础。但是,这些方法还存在人工恢复痕迹明显、图像处理结果失真等不足。本文提出了一种新的增强CycleGAN网络,该网络具有自适应暗通道先验,用于非配对单幅图像去雾。首先,利用Wave-Vit语义分割模型实现暗信道先验(dark channel prior, DCP)的自适应,精确恢复透射率和大气光;然后,利用物理计算和随机抽样方法得到的散射系数来优化修复过程。通过大气散射模型的桥接,成功地将除雾/复雾循环分支组合在一起,形成增强的CycleGAN框架。最后,在参考/非参考数据集上进行实验。该模型在SOTS-outdoor数据集上的SSIM为94.9%,PSNR为26.95,在O-HAZE数据集上的SSIM为84.71%,PSNR为22.72。该模型在客观定量评价和主观视觉效果方面都明显优于现有的典型算法。
背景:CycleGAN (cycle generative adversarial network,循环生成对抗网络)[24]是一种强大的非配对图像处理工具,其结构特点是使图像能够在两个域之间转换。最近,许多基于非配对cyclegan的除雾方法被广泛提出,以解决现实世界中几乎无法获得成对样本的问题。Engin等[25]设计了一种CycleDehaze系统,该系统结合了高分辨率图像的金字塔网络,并引入了循环感知损失来提高去雾质量。Zheng等人[26]在CycleGAN框架中引入了一种增强的注意机制,并将其应用于遥感图像去雾任务中。大多数基于cyclegan的除雾方法忽略了雾霾环境的物理性质;因此,结果缺乏现实性和可变性。为了在这一问题上取得进展,Yang等[27]将CycleGAN与大气散射模型相结合,恢复图像的场景深度和雾霾密度,提高去雾质量,在合成数据集上取得了较好的效果;然而,由于其网络结构的高度复杂性,其透射率估计的精度仍然受到限制。
在本文中,我们特别提出了一种新的非配对除雾网络,称为ADCP-CycleGAN(自适应DCP结合CycleGAN)。该网络由两个分支组成,分别实现模糊图像和清晰图像的重建。在去雾过程中,我们使用尺度自适应DCP精确恢复透射率和大气光,并结合不同的散射系数与深度,实现更真实的复雾过程
本文的贡献可以概括如下:
•提出了一种新的非配对单图像去雾模型,融合暗通道先验和增强的CycleGAN。
•设计了一种基于Wave-ViT语义分割模型的自适应DCP,能够准确恢复透光率和大气光。
•在增强的CycleGAN方法中,通过两种不同的方法获得散射系数β,以产生不同厚度和不均匀分布的雾霾。β1由大气散射模型导出,β2随机采样
暗信道先验
先验是指在至少一个RGB通道中具有较低强度的某些像素作为暗通道,可以表示为
其中,jc (y)表示清晰图像的RGB通道之一,Ω(x)表示以像素x为中心的patch。在patch尺度足够小的情况下,Ω(x)的内部透过率可以近似为常数。将其代入式(1),通过数学推导得到透光率的估计值:
其中,ic (y)和ac分别表示原始模糊图像和其中一个RGB分量中的大气环境光。式(4)中的减法项实际上是c1 (y) Ac的暗通道强度。结合式(1),可以得到如下清晰的结果:
其中,t0是一个很小的常数以防止分母的值为零。
关键参数Ω(x)的patch大小对去雾效果有决定性的影响。如图1b-d所示,过大的贴片(Ω(x) = 30)会使“贴片内透光率恒定”的假设失效,并且贴片会倾向于越过景深边缘,从而产生光晕效应。相反,如图1e-g所示,如果斑块尺度过小(Ω(x) = 3),则暗像素的强度增大;因此,由式(4)得到的透光率小于实际值,可能导致图像过饱和、失真和整体变暗。因此,单尺度Ω(x)会产生许多意想不到的负面影响,降低图像质量。
图1所示。不同斑块大小对暗通道先验(DCP)去雾的影响。(a)模糊输入。(b-d)分别表示暗通道图、透射图和去雾结果,基于Ω(x) = 30。(e-g)为对应的组,Ω(x) = 3。
在此基础上,提出了许多优化DCP性能的算法。Chen等人[28]为了解决除雾结果中亮度不对准的问题,提出了“亮通道”的概念,而不是暗通道。Zhu等[29]和Jackson等[30]分别引入了能量最小化理论和Raleigh散射理论来去除伪影和光晕。这些引入外部理论的方法在一定程度上是对原有DCP的修正和补充,同时也削弱了DCP的效率和简单性等优点。Song等人[31]从参数自适应的角度,对不同尺度下的去雾效果进行了详细比较,并自适应根据模糊图像的颜色和边缘特征调整暗通道的尺度范围。Hu等[32]和Guo等[33]重点对不满足先验的天空区域进行分割,以提高透射率恢复的精度。在前人研究的启发下,我们尝试进一步细分图像的特征区域,并采用更精确的分割技术来提高参数自适应的质量。在3.2节中,我们将详细阐述优化方法。
CycleGAN
循环生成对抗网络最早由Zhu等人设计[24]。通过对传统GAN进行镜像对称,使其具有双发生器和双鉴别器的网络结构。基于这种特殊的网络结构,CycleGAN可以在没有成对数据集监督的情况下转换原始域和目标域的图像,这一特性使其成为非成对去雾任务的广泛首选[25,26,34,35]。
如图2所示,之前基于cyclegan的除雾网络包含一个复灰周期和一个除雾周期。从本质上讲,它们大多简单地将“朦胧”和“清晰”作为图像变换的两个风格域,网络可解释性差,人工恢复痕迹严重。具体来说,复原操作忽略了真实的雾霾环境,这些环境在自然界中存在不同的厚度和不均匀的分布,导致生成的雾霾图像与实际拍摄的雾霾数据集之间存在很大的差距。这意味着复吸周期对增强除雾处理的意义不大,甚至会对输出质量产生负面影响,造成明显的人工复吸痕迹和失真等问题
为了改善上述问题,我们引入关键物理信息,以实现对去雾康复循环的强化。更多细节将在3.1节中说明。
该方法 :
在本节中,我们详细介绍了一种称为ADCP-CycleGAN的无监督非配对除雾网络。采用自适应DCP精确恢复透光率和大气光进行除雾,实现基于深度和散射系数的复原。通过大气散射模式将雾霾/清晰重建的两个循环分支连接起来,形成增强的CyleGAN。具体算法和网络结构如下:
网络结构
网络由模糊图像重建H-H分支和清晰图像重建C-C分支组成,如图3所示。
H-H分支。
给定模糊图像Hreal1,首先对图像进行Wave-ViT分割,得到区域特征映射。DCP运算后得到暗通道图,根据式(4)推导出透射率T和大气光a,得到清晰图像Cf ake1:
在清晰图像的基础上,我们可以恢复深度D,此时可以恢复散射系数β1来反映雾霾分布的密度。利用深度和散射系数,我们最终得到了重建的雾霾图像Hfake。在该支路中,发生器GC是除雾处理器,DC是鉴别cfake1是否属于洁净域的鉴别器。
C-C分支。
我们首先从输入的清晰图像Creal2中获得深度信息。散射系数β2在[0.5,2]范围内随机采样。随后获得相应的模糊图像Hf ake2,然后采用与H-H支路相同的去雾过程获得最终重建的清晰图像Cf ake2;也就是,
在该分支中,发生器GH产生雾霾,鉴别器DH用于识别Hf ake2是否属于雾霾域。
自适应DCP
在2.2节中,我们详细讨论了DCP中Ω全局固着性的缺点。在本节中,我们将继续使用参数自适应的思想来进行进一步的改进。为了实现更精细的特征区域分割,我们采用了Yao等人[36]提出的Wave-ViT模型。该模型将小波变换与变压器网络相结合。通过可逆下采样对目标纹理细节进行无损恢复,在语义分割任务中表现出良好的性能。图像分割效果如图4所示
图4 朦胧图像区域划分。(a)模糊图像。(b)天区识别。(c)前景区域分割
我们根据图像中不同区域的基本属性确定不同的patch大小,实现参数自适应。图像可分为3个区域:(a)前景区域,该区域由色彩丰富、饱和度高的复杂物体组成。过小的patch会进一步加剧过饱和现象,过大的patch会违背该区域透光率分布的变化,造成明显的视觉失真。因此,我们将前景区域的patch比例尺设置为一个随饱和度均匀变化的正态间隔。具体来说,前景区域Ωf ore的斑块大小可以根据饱和度S和亮度L确定,如下所示:
其中Max和round操作符用于将补丁比例设置为正整数。在前人对不同尺度下去雾质量的研究[7,28,31 - 33]的基础上,我们进一步在live数据集上进行验证实验[37]。结果表明[5-15]是使暗通道去雾达到最佳效果的尺度范围,低于或高于此范围的其他patch尺度会受到明显的负面影响,如光晕、亮度失真和过饱和度。因此,我们取k的值为15,以确保前景区域的Ω在这个范围内是自适应的。我们在HSI颜色空间中计算图像的亮度和饱和度时,饱和度值在[0-1]范围内。为了使patch scale随饱和度的变化均匀变化,我们构建了[5-15]与[0-1]之间的线性映射关系,使前景区域中不同饱和度的像素块对应于合适的patch。(b)天空区域亮度高,饱和度低。我们在该区域[25-30]范围内选择较大的斑块尺度来强化除雾效果。同时,划分区域有助于我们找到大气光值使用方法[7]。值得注意的是,虽然我们将天空区域的patch scale设置得比前景区域大得多,但天空区域通常不会包含太多的细节,色彩饱和度更均匀,场景的构图也更简单。在这一点上,可以减少大斑块的负面影响。(c) Edge突变区。我们在景深边缘区域设置了一个较小的[0-3]范围内的patch值,以防止光晕效应,并保留更丰富的细节信息。
散射系数的获取
为了模拟真实的雾霾环境的产生,我们将深度和密度相结合,在大气散射模型的基础上优化了复形过程。
在H-H分支中,根据式(2)可以恢复散射系数β1,如下所示:
在此基础上,重建的朦胧Hf ake1可描述为:
与H-H支路不同,C-C支路的散射系数β2在[0.5,2]范围内随机采样。通过改变散射系数,发生器GH可以产生任意密度分布的雾霾环境,如图5所示。相应的,随后获得的模糊图像Hf ake2如下:
图5。基于不同景深和不同散射系数的GH生成不同的朦胧图像。(a) β = 0.5。(b) β = 1。(c) β = 2。
值得注意的是,基于大气散射模型,GC导出的透射率T和大气光A可以应用于GH产生霾。此外,这些变雾图像还可以用于增强GC的训练。这种相互加强的雾霾去除/产生过程构成了增强型CycleGAN。
损失计算
GAN losses 是在生成器和鉴别器之间的对抗博弈中产生的。在我们的网络中,这种情况的发生是为了保证除雾质量rehazing过程。在H-H支路中,发电机GC和鉴别器DC的损耗可表示为:
其中Cf ake1是由生成器Gc构造的清晰图像,Creal1从清晰图像集set {C}中采样。相应的,在C-C支路中,采用从重建生成器GH导出的hake2和从模糊图像集{H}采样的Hreal2来计算损失,其可表示为
循环一致性损失计算环路分支两端原域和目标域的一致性。在H-H支路中,输入Hreal1和重建的模糊图像Hf ake1必须显示足够程度的一致性。同样,Creal2应该同意Cf ake2。因此,循环一致性损失可表示为式(18),其中|| ||1表示L1范数。
Cycle-perceptual损失。虽然使用循环一致性损失可以去除部分噪声,但我们还在VGG16网络的基础上添加了循环感知损失,提取了更丰富的细节和高级特征,进一步增强了结构相似性,保证了更逼真的视觉效果。感知损失可以看作是公式(19),其中φ是特征提取器,|| ||2表示L2范数。
因此,ADCP-CycleGAN的总损失函数可推导为:
λ1, λ2和λ3是三个损失函数的权重平衡因子。
结果分析
结论:在本文中,我们提出了ADCP-CycleGAN,这是一种具有自适应DCP的新型增强CycleGAN网络,用于非配对单幅图像去雾。在网络中,我们通过Wave-ViT语义分割模型实现DCP的参数自适应,以准确地恢复透光率和大气光。我们通过物理计算和随机抽样方法推导散射系数来模拟真实的雾霾分布,从而优化复原过程。采用了大气散射模型实现脱雾和精馏分支之间的连接,以构建增强型CycleGAN。在不同评价指标的参考/非参考数据集上的扩展实验验证了我们方法的有效性。具体来说,我们的方法可以生成基于深度和密度的更符合现实场景的雾霾。这对于需要清晰视觉但缺乏不成对数据集的任务尤其有意义,例如遥感图像、自动驾驶和智能监控。此外,我们希望将物理先验模型与CycleGAN的创新组合用于除雾,可以为低水平视觉任务的无监督学习的未来发展做出贡献。然而,我们的算法也有一些方面值得改进。当图像中存在强光和遮挡等噪声时,会影响该方法的深度估计精度。同时,由于该方法中引入了物理模型,其固有的局限性可能导致少数去雾结果出现局部过度增强。在未来的工作中,我们还将研究去雾图像的后处理,以进一步提高图像质量