赞
踩
摘要:
本文针对单幅图像的去雾问题,提出了一种端到端网络,称为Cycle-Dehaze,该网络不需要对模糊图像和相应的地面真值图像进行训练。也就是说,我们通过以不配对的方式输入干净和模糊的图像来训练网络。此外,该方法不依赖于对大气散射模式参数的估计。
我们的方法通过结合循环一致性和感知损失来改进CycleGAN公式,以提高纹理信息恢复的质量,并生成视觉上更好的无雾图像。通常,用于除雾的深度学习模型采用低分辨率图像作为输入,并产生低分辨率输出。然而,在2018年的NTIRE单幅图像去雾挑战中,提供了高分辨率图像。因此,我们采用双三次降尺度。在从网络获得低分辨率输出后,我们利用拉普拉斯金字塔将输出图像提升到原始分辨率。我们在NYU-Depth、I-HAZE和O-HAZE数据集上进行了实验。大量的实验表明,该方法在定量和定性上都改进了CycleGAN方法。
通常,用于除雾的深度学习模型采用低分辨率图像作为输入,并产生低分辨率输出。然而,在2018年的NTIRE单幅图像去雾挑战中,提供了高分辨率图像。因此,我们采用双三次降尺度。在从网络获得低分辨率输出后,我们利用拉普拉斯金字塔将输出图像提升到原始分辨率。我们在NYU-Depth、I-HAZE和O-HAZE数据集上进行了实验。
由Goodfellow等人[14]引入的gan被发现在图像生成任务中非常成功,例如数据增强、图像绘制和风格转移。他们的主要目标是在目标域上生成与原始图像无法区分的假图像。通过利用gan,已有最先进的单幅图像去雾方法[30,35],这些方法要求模糊输入图像及其地面真值以成对的方式进行去雾。最近,CycleGAN[37]提出了用于图像到图像翻译的循环一致性损失,从而消除了对成对数据的需求。受周期一致性损失的启发,Yang等人提出了用于单幅图像去雾的解纠缠去雾网络(disentangizdehaze Network, DDN)。与CycleGAN[37]架构不同,DDN通过大气散射模型重建循环图像,而不是使用另一个发生器。因此,需要训练阶段的场景亮度、介质透射图和全局大气光[34]。
在这项工作中,我们通过聚合周期一致性和感知损失(EnhanceNet启发),利用CycleGAN[37]架构引入了Cycle-Dehaze网络。我们的主要目的是建立一个不考虑大气散射模型的端到端网络,用于单幅图像去雾。为了将输入图像馈送到我们的网络中,它们通过双三次降尺度调整为256 × 256像素分辨率。
Cycle-Dehaze是CycleGAN[37]架构的增强版本,用于单幅图像去雾。为了提高视觉质量指标、PSNR、SSIM,它利用了EnhanceNet启发的感知损失[25]。这种损失的主要思想是在特征空间而不是在像素空间中比较图像。因此,Cycle-Dehaze在两个空间对原始图像和重建的cycle- image进行比较,其中cycle-consistency loss保证了较高的PSNR值,而perceptual loss则保留了图像的清晰度。此外,Cycle-Dehaze采用传统的拉普拉斯金字塔,在主除雾过程后提供更好的上采样结果。图2显示了Cycle-Dehaze架构的整体表示。
我们的主要贡献总结如下:(1)我们通过在循环一致性损失之外添加循环感知一致性损失来增强单幅图像去雾的CycleGAN[37]架构。(2)我们的方法在训练和测试阶段既不需要雾状和地面真值图像的配对样本,也不需要大气散射模型的任何参数。(3)我们提出了一种简单而有效的技术,利用拉普拉斯金字塔来高档去雾图像。(4)由于其循环结构,我们的方法提供了一个可推广的模型,并通过跨数据集场景的实验进行了验证。
如图2所示,Cycle-Dehaze架构由两个生成器G;F和两个鉴别器Dx;Dy组成.为了清洁/增加雾霾,除了正则鉴别器和生成器损失外,该架构还受益于循环一致性和循环感知一致性损失的组合。因此,该体系结构必须保留输入图像的纹理信息,并生成唯一的无雾输出。另一方面,追求循环一致性和感知一致性损失之间的平衡并不是一项微不足道的任务。过度重视感知损失会导致除雾后颜色信息的丢失。因此,周期一致性损失需要比感知损失具有更高的权重。
CycleGAN [37] 架构引入了循环一致性损失,它为未配对的图像到图像转换任务计算原始图像和循环图像之间的 L1-范数。然而,原始图像和循环图像之间的这种计算损失不足以恢复所有纹理信息,因为模糊图像大多被严重损坏。循环感知一致性损失旨在通过查看高级和低级特征的组合来保留原始图像结构。 从 VGG16 [29] 架构的第 2 和第 5 池化层中提取,在 x ∈ X, y ∈ Y 和 generator G : X → Y , generator F : Y → X 的约束下,循环感知一致性损失的公式如下,其中 (x, y) 指 hazy 和 ground truth未配对的图像集和 φ 是来自第 2 和第 5 池化层的 VGG16 [29] 特征提取器:
与 CycleGAN架构相比,Cycle-Dehaze 有一个额外的损失。因此,Cycle-Dehaze 的目标可以表述如下,其中 LCycleGAN(G, F, Dx, Dy) 是 CycleGAN [37] 架构的全部目标,D 代表鉴别器,γ 控制循环感知一致性损失的影响因子。最后,根据公式4和5,Cycle-Dehaze优化了CycleGAN[37]架构,并增加了公式3所示的循环感知一致性损失。为了获得无雾的图像,在测试时使用发生器G *。
LCycleGAN(G; F; Dx; Dy)是CycleGAN的基本损失函数,用于促使生成器(G和F)和鉴别器(Dx和Dy)在转换任务中达到良好的性能。它包括生成器的对抗损失和鉴别器的对抗损失,以及用于保持循环一致性的循环一致性损失。这部分损失函数的具体形式可能与CycleGAN的具体实现和任务相关。
γ∗LP erceptual(G; F)是感知损失(perceptual loss),用于促进生成器的图像质量和内容保真度。它是通过感知损失函数LP erceptual(G; F)加权得到的,其中γ是一个用于调节感知损失权重的超参数。
公式(5)表示了训练CycleGAN模型时的优化目标。通过对生成器(G和F)和鉴别器(Dx和Dy)进行交替的最小最大优化,寻找使目标函数L(G; F; Dx; Dy)最小化的生成器和鉴别器参数。通过迭代训练过程,模型将逐渐优化并学习到逼近目标转换任务的生成器和鉴别器。
由于GPU的限制,Cycle-Dehaze架构需要256 × 256像素分辨率的输入图像,产生256 × 256像素分辨率的输出图像。为了减少在降尺度和升尺度过程中图像质量的恶化,我们利用了拉普拉斯金字塔,它是利用高分辨率的朦胧图像创建的。为了得到高分辨率的去雾图像,我们用去雾后的低分辨率图像改变了拉普拉斯金字塔的顶层,并像往常一样进行拉普拉斯上尺度处理。拉普拉斯金字塔的这种基本使用尤其在清洗过程中保留了模糊图像的大部分边缘,并在升级阶段提高了SSIM值。拉普拉斯升级是处理高分辨率图像时可选的后处理步骤
总结:
我们提出了一种单图像去雾网络,命名为Cycle-Dehaze,该网络在不估计大气散射模型参数的情况下,直接从雾输入图像生成无雾图像。此外,我们的网络以非成对的方式提供了模糊和地面真实图像的训练过程。为了保持无雾图像的高视觉质量,我们将循环一致性损失与感知损失相结合,改进了CycleGAN结构的循环一致性损失。Cycle-Dehaze以低分辨率的图像作为输入,因此需要将其输入降尺度作为预处理步骤。为了减少图像在调整尺寸时的失真,我们利用拉普拉斯金字塔对低分辨率图像进行升级,而不是直接使用双三次升级。实验结果表明,与CycleGAN结构相比,我们的方法产生了更好的视觉效果,并获得了更高的PSNR和SSIM值。此外,我们在跨数据集场景上进行了额外的实验,以证明我们的模型在不同领域的泛化性。
1.PSNR(峰值信噪比)和SSIM(结构相似性指数)都是常用的图像质量评估指标,但它们侧重点略有不同。PSNR主要关注像素级别的差异,而SSIM更注重结构和感知上的相似性。
2.正则鉴别器(Regularization Discriminator)和生成器损失(Generator Loss)是在生成对抗网络(GAN)中使用的两个关键概念。生成对抗网络是由生成器和鉴别器组成的两个对抗性模型。生成器负责生成与真实数据相似的合成数据样本,而鉴别器则试图区分真实数据和生成器生成的合成数据。两个模型通过博弈的方式进行训练,以使生成器生成更逼真的合成数据,并使鉴别器更难以区分真实数据和合成数据。
正则鉴别器是一种对鉴别器进行正则化的技术。它的目的是通过限制鉴别器的学习能力,使其不能太过强大,从而促使生成器更好地学习和生成高质量的合成数据。正则鉴别器可以采用不同的方法实现,例如通过限制鉴别器的模型复杂度、添加噪声或使用正则化技术(如L2正则化)等。
生成器损失是指生成器模型在训练过程中所使用的损失函数。它用于衡量生成器生成数据与真实数据之间的差异,并为生成器提供反馈信号以更新其参数。生成器损失的具体形式可以根据任务和应用的不同而有所变化,常见的损失函数包括均方误差(MSE)、交叉熵损失(Cross Entropy Loss)等。生成器损失的设计是关键的,因为它直接影响生成器的训练和生成能力。通常,生成器的目标是最小化生成器损失,使得生成的合成数据更接近真实数据,同时迷惑鉴别器使其难以区分真实数据和合成数据。
正则鉴别器和生成器损失在GAN中起着重要的作用,通过博弈和优化的方式使得生成器能够逐渐学习到生成更真实的数据样本,并提高GAN的性能和生成能力。
3.正则化是机器学习和统计学中常用的一种技术,旨在控制模型的复杂度并防止过拟合。在机器学习中,正则化通过在损失函数中引入额外的惩罚项,以限制模型的权重或参数的大小。这样做的目的是鼓励模型学习到简单且具有泛化能力的模式,而不是过度拟合训练数据。正则化可以帮助提高模型在未见过的测试数据上的性能。常见的正则化技术包括L1正则化(L1 regularization)和L2正则化(L2 regularization):
- L1正则化(L1 regularization)也称为Lasso正则化,通过向损失函数添加参数权重的L1范数,鼓励模型的权重变得稀疏。这可以促使模型对不相关的特征进行选择和稀疏表示,有助于特征选择和模型简化。
- L2正则化(L2 regularization)也称为Ridge正则化,通过向损失函数添加参数权重的L2范数,鼓励模型的权重趋向于较小的值。这有助于平滑模型的权重,并减少特征之间的相关性,提高模型的泛化能力。
正则化不仅可以应用于线性模型,还可以应用于神经网络和其他复杂模型。通过调节正则化参数(如正则化系数)的值,可以控制正则化对模型的影响程度。正则化可以在训练过程中与损失函数一起使用,以帮助模型在训练数据和测试数据上都获得良好的性能。
4.VGG16是一种经典的深度卷积神经网络架构,由牛津大学的研究团队开发,用于图像分类任务。它是VGG(Visual Geometry Group)团队在2014年提出的一系列卷积神经网络模型中的其中一个。
VGG16的名称源自其具有16个网络层(包括卷积层、池化层和全连接层)。该网络架构的主要特点是使用了多个较小的卷积核(3x3大小)和池化层,以增加网络的深度,并具有较小的感受野。这种设计选择可以提供更多的非线性表达能力和更强的特征提取能力。
VGG16具有很强的表征能力,在图像分类、特征提取和迁移学习等任务中取得了很好的效果。它也成为了许多深度学习模型设计的基础和参考。
5.拉普拉斯金字塔的顶层是原始图像经过多次高斯模糊和下采样(降低分辨率)后得到的最低分辨率图像。在顶层之上的每一层都是通过将下一层的高斯模糊结果上采样(增加分辨率)并与原始图像的细节图像进行差值计算得到的。因此,拉普拉斯金字塔的每一层都包含了高频细节信息。 由于拉普拉斯金字塔中的每一层都是通过原始图像和上一层的重建图像之间的差值得到的,因此顶层是最低分辨率的图像,其包含了最粗糙的细节信息。这意味着顶层的图像较为模糊,分辨率较低。 在图像处理中,拉普拉斯金字塔的顶层常常用于图像增强或恢复的任务,如去噪、去雾、超分辨率等。通过在顶层进行处理,并结合下一层的细节信息进行图像重建,可以获得更好的结果。 需要注意的是,拉普拉斯金字塔的构建过程中,图像的分辨率逐渐降低,而细节信息逐渐增多。因此,顶层的图像是最低分辨率、包含最少细节信息的层级。
6.双三次降尺度(Bicubic Downsampling)是一种常用的图像降采样方法,用于将图像从原始分辨率缩小到较低分辨率。
降采样是指将图像的像素数目减少,从而降低图像的分辨率。在双三次降尺度中,每个目标像素的值是通过对原图像周围的16个邻近像素进行加权平均来计算得到的。这种加权平均使用了三次插值的插值核函数,因此称为双三次插值。
双三次插值核函数具有平滑的性质,它通过在水平和垂直方向上进行插值来估计目标像素的值。在插值过程中,会根据目标像素与原图像中像素的位置关系,为每个原图像像素分配一个权重。然后,根据这些权重对原图像像素的值进行加权平均,得到目标像素的值。这样可以在一定程度上保留图像的细节和平滑性。
双三次降尺度在图像处理中常用于降低图像的分辨率,以减少计算量、存储空间或提高处理速度。然而,需要注意的是,降采样过程中的信息丢失是不可避免的,因为将多个像素映射到一个目标像素会导致信息的损失和图像细节的减少。因此,在某些情况下,双三次降尺度可能会导致图像质量的损失。
双三次降尺度是一种简单而常用的图像降采样方法,但在一些应用中,还可以使用其他更高级的方法来保持图像细节和质量,例如基于深度学习的超分辨率技术。
7.L1范数和L2范数是两种常用的向量范数(或称为规范)。
L1范数(也称为曼哈顿范数或绝对值范数)是指向量中各个元素的绝对值之和。对于一个n维向量x=(x1, x2, ..., xn),L1范数定义为:
||x||1 = |x1| + |x2| + ... + |xn|
L2范数(也称为欧几里德范数或平方和开根范数)是指向量中各个元素平方和的开根号。对于一个n维向量x=(x1, x2, ..., xn),L2范数定义为:
||x||2 = √(x1^2 + x2^2 + ... + xn^2)
L1范数和L2范数的主要区别在于:
1. 形状:L1范数会将向量空间中的点映射到一个菱形(L1范数等于1的点构成的集合),而L2范数会将向量空间中的点映射到一个圆形(L2范数等于1的点构成的集合)。
2. 效果:L1范数鼓励向量中的某些元素取零值,因此常用于稀疏性促进和特征选择。L2范数鼓励向量中的元素取小但非零值,因此常用于平滑性促进和参数正则化。
3. 鲁棒性:相对于L2范数,L1范数对于异常值(outliers)具有更好的鲁棒性,即对于个别异常值的影响相对较小。
4. 唯一性:L2范数的最小化问题在某些情况下具有唯一解,而L1范数的最小化问题则在某些情况下具有多个解。
总体而言,L1范数和L2范数在不同的应用场景中发挥着不同的作用。L1范数常用于稀疏性和特征选择,L2范数常用于平滑性和参数正则化。选择哪种范数取决于具体问题的要求和特点。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。