【论文阅读】 Loss Functions for Image Restoration with Neural Networks

news2024/12/22 23:35:40

Loss Functions for Image Restoration with Neural Networks

  • 论文地址
  • 摘要
  • I. 引言
  • II 相关工作
    • 用于图像恢复的神经网络
    • B 找到更好的解决方案。
  • 三、图像恢复的损失层
    • A. l1 错误 The l1 Error
    • B. SSIM
    • C. MS-SSIM
    • D. The Best of Both Worlds: MS-SSIM + L1
  • 四、结果
    • A. Joint Denoising and Demosaicking联合去噪和去马赛克
    • B. Super-Resolution超分辨率
    • C. JPEG Artifacts Removal JPEG 伪影去除
  • 五、讨论
    • A. Convergence of the Loss Functions损失函数的收敛
    • B. On the Performance of SSIM and MS-SSIM
    • C。 Arewe Committing the Inverse Crime?
  • VI. 结论


论文地址

1、论文


神经网络图像恢复的损失函数

摘要

神经网络正在成为计算机视觉和图像处理领域的核心,并且已经提出了不同的架构来解决特定问题。然而,神经网络损失层的影响在图像处理的背景下并未受到太多关注:默认且几乎唯一的选择是 l2 .在本文中,我们提请注意图像恢复的替代选择。特别是,我们展示了当人类观察者评估结果图像时,感知动机损失的重要性。我们比较了几个损失的性能,并提出了一种新的、可微分的误差函数。我们表明,即使网络结构保持不变,结果的质量也会随着损失函数的改善而显着提高。

索引项 - 图像处理、图像恢复、神经网络工作、损失函数。

I. 引言

几十年来,神经网络在多个领域取得了不同程度的成功,从机器人技术到回归分析,再到模式识别。尽管在1980年代手写数字识别方面已经产生了有希望的结果[1],但神经网络在计算机视觉领域的普及直到最近才呈指数级增长,当时深度学习提高了它们在图像识别方面的性能[2]。在短短几年内,神经网络已被用于研究界已知的几乎所有计算机视觉和图像处理任务。许多重新搜索都集中在定义更适合特定问题的新架构上[3],[4]。人们也付出了很大的努力来理解神经网络的内部机制,以及它们的内在局限性是什么,例如通过反卷积网络的发展[5],o试图用特定的输入来欺骗网络 [6]。在提高网络收敛性的技术方面取得了其他进展 [7]。损失层尽管是网络学习的有效驱动力,但在图像处理研究界却很少引起注意:成本的选择函数通常默认为误差的平方 l2 范数 [3]、[8]–[10]。这是可以理解的,因为该规范具有许多令人满意的特性。还有一个不太有根据但与 l2 持续流行的相关原因:标准神经网络包,例如 Caffe [11],仅提供该指标的实现。

然而,l2 有众所周知的局限性.例如,当手头的任务涉及图像质量时,l2 与人类观察者感知的图像质量相关性较差 [12]。
这是因为在使用 l2 时隐含地做出了许多假设。
首先,使用 l2 假设噪声的影响与图像的局部特征无关。相反,人类视觉系统 (HVS) 对噪声的敏感性取决于局部亮度、对比度和结构 [13]。 l2 损失也适用于白高斯噪声的假设,这在一般情况下是无效的。我们专注于使用神经网络进行图像恢复任务,并研究不同指标对网络损失层的影响。

我们将 l2 与代表性任务的四个错误指标进行比较:图像超分辨率、JPEG 伪影去除和联合去噪加去马赛克。
首先,我们测试不同的本地度量(例如 l1)是否可以产生更好的结果。
然后,我们评估感知动机指标的影响。我们使用两个最先进的图像质量指标:结构相似性指数(SSIM [13])和多尺度结构相似性指数(MS-SSIM [14])。我们在过多的现有指标中选择这些指标,因为它们是既定的措施,并且因为它们是可区分的——反向传播阶段的要求。
正如预期的那样,在我们考虑的用例中,感知指标优于 l2。
然而,也许令人惊讶的是,对于 l1 也是如此,请参见图 1。
受此观察的启发,我们提出了一种新的损失函数,并在我们考虑的所有指标方面展示了其卓越的性能。
我们提供了多项贡献。
首先,我们要注意用于训练神经网络进行图像处理的误差度量的重要性:尽管 l2 的局限性广为人知,但这种损失仍然是事实上的标准。
我们研究了三种替代误差指标(l1、SSIM 和 MS-SSIM)的使用,以及定义一个结合了 l1 和 MS-SSIM 优点的新指标(第 III 部分)。
我们还根据几个图像质量指标(第 IV 节)对它们的性能进行了全面分析。
最后,我们讨论它们的收敛特性。我们凭经验表明,某些损失的性能不佳与损失函数的局部最小值有关(第 5-A 节),并且我们解释了单独使用 SSIM 和 MS-SSIM 不能产生预期质量的原因(第 V-B 节)。

对于我们分析的每个指标,我们为 Caffe 实施了一个损失层,我们将其提供给研究社区。

II 相关工作

在本文中,我们将神经网络用于图像恢复,在我们的上下文中,它是所有图像处理算法的集合,其目标是输出对人类观察者有吸引力的图像。为此,我们使用超分辨率、JPEG 伪影去除和联合去马赛克加去噪等问题作为基准测试。具体来说,我们展示了如何调整已建立的错误度量以在神经网络的损失层内工作,以及这如何对结果产生积极影响。在这里,我们简要回顾了有关图像处理神经网络主题和图像质量测量主题的现有文献。

用于图像恢复的神经网络

在多项计算机视觉任务 [2]、[15] 中取得成功之后,神经网络在图像恢复方面受到了相当大的关注。神经网络已被用于去噪 [3]、[8]、去模糊 [4]、去马赛克 [10] 和超分辨率 [9] 等。
然而,据我们所知,关于这个主题的工作主要集中在为特定应用程序调整网络架构;有效驱动网络学习以产生所需输出质量的损失层基于上述所有方法的 l2。
我们表明,错误度量的更好选择对结果质量有很大影响.此外,我们展示即使当 l2 是适当的损失时,将训练损失函数与相关损失(例如 l1 交替)也可以为 l2 .

B 找到更好的解决方案。

评估图像质量均方误差 l2 可以说是非常不同领域(从回归问题到模式识别,再到信号和图像处理)中的主要误差度量。它流行的主要原因之一是它是凸的和可微的——这是优化问题的非常方便的属性。
其他有趣的特性包括 l2 在独立且同分布的高斯噪声的情况下提供最大似然估计这一事实,以及它对独立噪声源是可加的这一事实。
我们推荐读者参考 Wang 和 Bovik [16] 的工作的原因还有很多。
这些特性为 l2 的广泛采用铺平了道路,而标准软件包往往包含工具这一事实进一步推动了这一点使用 l2,但没有很多其他用于回归的误差函数。
在图像处理的上下文中,Caffe [11] 实际上仅提供 l2 作为损失层,2 从而阻止研究人员测试其他错误度量。
但是,人们普遍认为 l2 以及峰值信噪比比率,PSNR,与人类对图像质量的感知没有很好的相关性 [12]:l2 根本没有捕捉到人类视觉系统 (HVS) 的复杂特征。存在丰富的误差测量文献,包括基于参考的和非基于参考的基于引用,试图解决简单 l2 误差函数的局限性。
出于我们的目的,我们专注于基于参考的措施。一种流行的基于参考的索引是结构相似性索引 (SSIM [13])。 SSIM 评估图像说明 HVS 对局部结构变化敏感的事实。王等。 [14] 扩展 SSIM,观察到应该分析局部结构的尺度是图像到观察者距离等因素的函数。到考虑到这些因素,他们提出了 MS-SSIM,这是 SSIM 的多尺度版本,它根据 HVS 的灵敏度对在不同尺度下计算的 SSIM 进行加权。
实验结果表明,基于 SSIM 的指标优于 l2。因此,SSIM 已被广泛用作评估图像处理算法的指标。
此外,鉴于它可以用作可微分的成本函数,SSIM 也被用于为图像压缩 [16]、图像重建 [17]、去噪和超分辨率 [18],甚至缩小尺度 [19] 设计的迭代算法中]
然而,据我们所知,从未采用基于 SSIM 的指标来训练神经网络。
最近,与 SSIM 和 MS-SSIM [12] 相比,基于 HVS 属性的新型图像质量指标显示出更高的性能].
其中之一是信息加权 SSIM (IW-SSIM),它是 MS-SSIM 的修改版,还包括与局部图像信息成比例的加权方案 [20]。
另一个是视觉信息保真度 (VIF),它基于参考图像和失真图像之间的共享信息量 [21]。
梯度幅度相似性偏差 (GMSD) 的特点是简化了数学和类似于 SSIM 的性能,但它需要计算整个图像的标准偏差 [22]。
最后,特征相似度指数 (FSIM) 利用相位一致性的感知重要性,并根据局部相位一致性和梯度幅度 [23] 测量两幅图像之间的差异性。 FSIM 也已扩展为 FSIMc ,可用于彩色图像。
尽管它们在图像质量方面提供了更高的准确性,但这些指标的数学公式通常比 SSIM 和 MS-SSIM 更复杂,并且可能不可微分,因此不能立即将它们用于优化程序。

三、图像恢复的损失层

神经网络的损失层将网络的输出与地面实况进行比较,即分别针对图像处理的情况处理和参考补丁。在我们的工作中,我们研究了不同损失函数的影响- 图像处理层。考虑联合执行去噪和去马赛克的网络的情况。
在这里插入图片描述

图 1 中的插图显示了图 1(a) 中图像的不同补丁的放大,这些补丁由使用不同损失函数训练的网络处理(有关网络的描述,请参见第 IV 节)。一个简单的视觉检查就足以理解关于 l2(第 II 节)的讨论的实际意义。具体来说,图 1(d) 显示在平坦区域网络强烈衰减噪声,但它会产生可见的斑点伪影。这是因为无论图像中的底层结构如何,l2 都会惩罚较大的错误,但对小错误的容忍度更高;另一方面,HVS 对无纹理区域的亮度和颜色变化更敏感 [24]。一些斑点状的伪影仍然可见,尽管可以说在纹理区域不太明显,见图 1(k)。然而,边缘的清晰度由 l2 保存得很好,因为模糊它们会导致很大的错误。
请注意,这些有斑点的人工制品有之前在神经网络图像处理的背景下系统地观察到 [3],但它们没有归因于损失函数。
在第 V-A 节中,我们展示了使用 l2 实现的质量也取决于其收敛特性。
在本节中,我们建议使用不同的误差函数。我们为不同的损失函数提供了动机,并展示了如何计算它们的导数,这是反向传播步骤所必需的。
我们还分享了可以在 Caffe 中轻松使用的不同层的实现。
对于误差函数 E,补丁 P 的损失可以写为
在这里插入图片描述

其中 N 是 patch 中像素 p 的数量。 --------------(就是所有patch误差求均值是损失值吗

A. l1 错误 The l1 Error

作为减少 l2 损失函数引入的伪影的第一次尝试,我们想使用 l1 而不是 l2 来训练完全相同的网络。这两种损失对误差的权衡不同——l1 不会过度惩罚较大的误差——因此,它们可能具有不同的收敛特性。l1 的等式 (1) 很简单:
在这里插入图片描述

其中p是像素的索引,P是patch; x§ 和 y§ 分别是处理过的 patch 和 ground truth 中像素的值。
反向传播的导数也很简单,因为 ∂Ll1 §/∂q = 0, ∀q ̸= p。因此,对于补丁中的每个像素 p,
在这里插入图片描述

Ll1 的导数没有定义为 0。但是,如果误差为 0,我们不需要更新权重,因此我们使用 sign(0) = 0 的约定。注意,虽然 Ll 1 ( P ) 是整个补丁的函数,对补丁中的每个像素反向传播导数。有点出乎意料的是,用 l1 训练的网络为上面讨论的几个问题提供了显着的改进,见图 1(e),其中天空中的斑点伪影被移除。第 VI-A 节分析了这种行为背后的原因。尽管 l1 显示出比 l2 更高的性能,但是它的结果仍然不是最优的 [例如参见图 3© 和 (g)] 中天空和建筑物边界处的伪影。

B. SSIM

如果网络的目标是学习产生视觉上令人愉悦的图像,按理说误差函数应该是感知驱动的,就像 SSIM 的情况一样。像素 p 的 SSIM 定义为
在这里插入图片描述

其中我们忽略了均值和标准差对像素 p 的依赖性。
均值和标准差是用标准差为 σG , Gσ G 的高斯滤波器计算的。然后可以写出 SSIM 的损失函数设置
在这里插入图片描述

equation (4) 强调了一个事实,即 SSIM§ 的计算需要查看与 Gσ G 的支持一样大的像素 p 的邻域。这意味着无法在 P 的某些边界区域计算 LSSIM (P ) 及其导数。这对于 l1 或 l2 不成立,它们只需要像素 p 处的已处理和参考补丁的值。但是,网络的卷积性质允许我们将损失写为
在这里插入图片描述

其中 p ̃ 是补丁 P 的中心像素。同样,这是因为,即使网络学习了中心像素的最大化 SSIM 的权重,学习到的内核随后也会应用于图像中的所有像素。请注意,误差仍然可以反向传播到 GσG 支持范围内的所有像素,因为它们有助于计算 (7)。回想一下,我们必须计算 p ̃ 相对于 patch 中任何其他像素 q 的导数P.更正式地说:
在这里插入图片描述

其中 l(p ̃) 和 cs(p ̃) 是 SSIM (5) 的第一项和第二项,它们的导数是
在这里插入图片描述

and
在这里插入图片描述

其中GσG (q − p ̃)是与像素q相关的高斯系数。

C. MS-SSIM

选择σG对使用SSIM训练的网络的处理结果的质量有影响,从上一节的导数中可以看出。具体来说,对于较小的σG值,网络失去了保持局部结构的能力,斑点伪影在平坦区域重新引入,见图9(e)。对于σG的largevalues,我们观察到网络倾向于在边缘附近保持噪声,图。第9(c)条。有关更多详细信息,请参阅第 V-B 节。与其微调σG,我们建议使用SSIM的多尺度版本MS-SSIM。给定 M 水平的二元金字塔,MS-SSIM 定义为
在这里插入图片描述

其中 lM 和 csj 是我们分别在 III-B 节中定义的术语。为方便起见,我们设置 α = βj = 1,j = {1, …, M }。与(7)类似,我们可以用其中心像素p ̃:
在这里插入图片描述

LMS-SSIM (P) = 1 − MS-SSIM(p ̃)计算的损失来近似补丁P的损失。(12)由于我们将(11)的所有指数设置为1,因此可以写出基于MS-SSIM的损失函数的导数
在这里插入图片描述

其中 lj 和 csj 的导数与第 III-B 节中的相同。对于完整的推导,我们建议读者参阅补充材料。使用 LMS-SSIM 训练网络,(11) 要求我们计算一个由 M 级补丁 P 组成的金字塔,这是一个计算量大的操作,因为它需要在每次迭代时执行。为了避免这种情况,我们建议近似并替换金字塔的构造:我们不计算金字塔的 M 层,而是在全分辨率补丁上使用 M 个不同的 σG 值,每个值都是前一个值的一半。具体来说,我们使用 σGi = {0.5,1,2,4,8} 并定义 csi GσGi ·cs0 (p ̃) 和 ∂csi (p ̃)/∂x(q) Gσ i · ∂cs0 ( p ̃)/∂x(q),其中GGaussian滤波器以像素p ̃为中心,“·”是逐点乘法。依赖于 lM 的术语可以用类似的方式定义。我们使用这个技巧来加速我们所有实验中的训练。

D. The Best of Both Worlds: MS-SSIM + L1

根据设计,MS-SSIM 和 SSIM 都不是对均匀偏差特别敏感(参见第 V-B 节)。这会导致亮度变化或颜色变化,通常会变得更加暗淡。然而,MS-SSIM 比我们试验过的其他损失函数更好地保留了高频区域的对比度。另一方面,l1 保留了颜色和亮度——无论局部结构如何,误差都被同等权衡——但不会产生与 MS-SSIM 完全相同的对比度。为了捕捉两种误差函数的最佳特性,我们建议结合它们:
在这里插入图片描述

其中我们忽略了所有损失函数对 patch P 的依赖,我们根据经验设置 α = 0.84.3 导数(14) 的只是它的两项导数的加权和,我们在前面的部分中计算过。请注意,我们在 Gσ GM 和 Ll 1 之间添加了逐点乘法:这是因为 MS-SSIM 根据其对中心像素 p ̃ 的 MS-SSIM 的贡献传播像素 q 处的误差,由高斯确定权重,见(9)和(10)。

四、结果

为了分析不同的损失函数,我们将重点放在联合去马赛克和去噪上,这是图像处理中的一个基本问题。我们还通过测试确认了我们的发现关于超分辨率和 JPEG 伪影去除问题的不同损失函数。

在这里插入图片描述

A. Joint Denoising and Demosaicking联合去噪和去马赛克

我们定义了一个全卷积神经网络(CNN),它接受一个 31×31×3 的输入。第一层是一个 64×9×9×3 的卷积层,其中第一项表示滤波器的数量,其余项表示它们的维度。第二个卷积层是64×5×5×64,输出层是3×5×5×64的卷积层。我们将参数整流线性单元 (PReLU) 层应用于内部卷积层的输出 [15]。我们网络的输入是通过对 31 × 31 拜耳补丁进行双线性插值获得的,结果是 31 × 31 × 3 RGB 补丁;从这个意义上说,网络实际上是在联合去噪+去马赛克和超分辨率。我们在从 MIT-Adobe FiveK 数据集 [25] 中获取的 700 张 RGB 图像训练集上考虑不同成本函数(l1、l2、SSIM5、SSSIM9、MS-SSIM 和 MS-SSIM+l1)4 训练网络,调整大小为大小为 999 × 666。为了模拟逼真的图像采集过程,我们用光子射击和零均值高斯噪声的混合破坏了每幅图像,并引入了由于传感器零电平和饱和度引起的裁剪。我们使用了 Foi 等人提出的模型。 [26] 对于这个任务,参数 a = 0.005 和 b = 0.0001。如表 I 所示,添加噪声后测试图像的平均 PSNR 为 28.24 dB。图 1© 显示了一个典型的被噪声破坏的补丁。我们使用来自同一数据集的 40 张图像进行测试(网络在训练期间没有看到这个子集)。除了考虑不同的训练成本函数外,我们还将网络的输出与状态获得的图像进行比较最先进的去噪方法 BM3D,直接在拜耳域 [27] 中运行,然后是标准的去马赛克算法 [28]。由于 BM3D 旨在处理高斯噪声,而不是我们使用的更真实的噪声模型,因此我们在应用 BM3D 之前对拜耳域中的图像数据应用方差稳定变换 [26],并在去噪后对其进行逆变换。这正是 BM3D 的作者针对 RAW 数据 [27] 建议的策略,我们将其与 BM3D 的论文进行比较。图。图 1 和图 5 显示了不同网络之间的几个结果和比较。请注意平坦区域上 l2 网络的斑点伪影,以及 SSIM5 和 SSIM9 网络边缘周围的噪声。使用 MS-SSIM 训练的网络解决了这些问题,但往往会使颜色变得更加暗淡,请参阅第 V-B 节的解释。使用 MS-SSIM+l1 训练的网络产生了最好的结果。在并排比较中很难看出一些差异,请参考附加材料,它允许在图像之间翻转。我们还对结果进行了定量分析。我们评估了使用不同成本函数和 BM3D [27] 训练的 CNN 输出的几个图像质量指标,这是去噪的最新技术。图像质量指标,从传统的 l2 指标和 PSNR,到

最精细的、受感知启发的指标,如 FSIM [23]。表 I 报告了测试数据集上这些指标的平均值。当使用 l1 而不是传统的 l2 作为成本函数训练网络时,输出图像的平均质量优于所有考虑的质量指标。值得注意的是,即使使用 l2 或 PSNR 指标来评估图像质量,使用 l1 损失训练的网络也优于使用 l2 损失训练的网络。我们在第 VI-A 节中提供了对此的解释。另一方面,我们注意到使用 SSIM 训练的网络在传统指标和感知启发损失方面的表现与使用 l1 训练的网络相当或略差。
在 MS-SSIM 上训练的网络比基于 SSIM 的网络表现更好,但仍然没有明显优于 l1。这是由于上面提到的颜色偏移以及在第 V-B 节中讨论的。
然而,结合 MS-SSIM 和 l1 的网络在我们考虑的所有图像质量指标上都取得了最好的结果。对于这个图像恢复任务,我们还评估了 l2 和 MS-SSIM 的结合,以测试是否使用 l1对 Mix 的性能至关重要。表 I 中考虑的所有指标的结果表明,Mix 仍然更胜一筹。然而,正如预期的那样,l2 + MS-SSIM 在感知指标上优于单独的 l2(参见补充材料)。

B. Super-Resolution超分辨率

我们还验证了我们对 Dong 等人提出的超分辨率网络的分析结果。 [9].我们从他们提出的网络架构开始,对他们的方法进行了一些微小但重要的更改。首先我们使用 PReLU,而不是 ReLU,层。其次,我们使用双线性而不是双三次插值进行初始化(我们对两种训练都这样做和测试)。后者引入了高频音损,损害了学习过程。最后,我们直接在RGB数据上进行训练。我们对我们测试的所有损失函数进行了这些更改,包括 l2 ,这也与 Dong 等人的工作进行了比较。我们使用这个修改后的网络来代替他们提出的架构来隔离损失层对结果的贡献,因为它产生的结果比原始架构产生的结果更好或相等。无花果。2 显示了一些示例结果。鉴于上一节的结果,我们只比较了l1、l2、MS-SSIM和Mix的结果,见表I。对该表的分析带来了与联合去噪和去马赛克情况类似的考虑因素。
在这里插入图片描述

C. JPEG Artifacts Removal JPEG 伪影去除

我们的最终基准是 JPEG 伪影去除。我们使用与联合去噪和去马赛克相同的网络架构和地面实况数据,但我们创建了损坏的数据通过积极的 JPEG 压缩。为此,我们使用 Matlab 的函数 imwrite,质量设置为 25。请注意,JPEG 压缩引起的损坏在空间上是可变的,并且与第 IV-A 节中引入的噪声具有非常不同的统计信息。我们生成具有两个不同步骤的输入补丁。首先,我们使用 8 的步幅,这会导致

8 × 8 DCT 块的边界在每个 31 × 31 块中对齐。我们还使用了 7 的步幅,这导致块网格在每个补丁中位于不同的位置。我们发现后一种策略可以更好地去除 JPEG 伪像,同时生成更清晰的图像,这就是我们使用该配置运行所有实验的原因。同样,我们只比较了 l1、l2、MS-SSIM 和 Mix 的结果,请参见表 I。图 3 显示我们的损失函数 Mix 在均匀区域上优于 l1 和 l2,并且它减弱了周围的振铃伪影边上的建筑更好。更多结果如图 6 所示。更多结果和比较,包括数值和视觉,可以在补充材料中找到。

五、讨论

在本节中,我们深入研究结果的更深入分析。
• 在其他考虑因素中,我们研究了不同损失的收敛特性,
• 并且我们提供了一些损失比其他损失表现更好的原因的解释。

A. Convergence of the Loss Functions损失函数的收敛

表 I 强调了一个意想不到的结果:即使在收敛之后,在一个损失函数上训练的 CNN 也可以优于另一个网络,即使是基于训练第二个损失函数的损失函数。例如,考虑分别用 l1 和 l2 训练的两个网络进行联合去噪和去马赛克:该表显示用 l1 训练的网络比用 l2 训练的网络获得更低的 l2 损失。请注意,我们使用不同的初始化多次运行训练。我们假设这个结果可能与两个度量的平滑性和局部凸性有关:l2 更容易陷入局部最小值,而对于 l1 可能更容易达到更好的最小值,无论是 l1 还是 l2 ——毕竟,两者的“好”最小值应该是相关的。为了验证这个假设,我们进行了一个实验,在这个实验中,我们分别使用两个用 l1 和 l2 训练的网络,并再次训练它们,直到它们使用另一个损失收敛。图 7 显示了在任一网络的不同训练迭代中在测试集上计算的 l2 损失。
在这里插入图片描述

仅使用 l1 训练的网络(在图中的纪元 1200 之前)比使用 l2 训练的网络获得更好的 l2 损失。然而,在切换训练损失函数后,两个网络都产生了较低的 l2 损失,证实 l2 网络之前陷入了局部最小值。虽然这两个网络实现了相似的 l2 损失,但它们收敛到参数空间的不同区域。在目测中,先用 l2 训练后用 l1 训练的网络产生的结果与单独用 l1 的结果相似;先用 l1 后用 l2 训练的网络的输出仍然受到平坦区域斑点伪影的影响,
在这里插入图片描述
尽管它比单独使用 l2 更好,请参见图 8。具体来说,首先使用 l1 然后使用 l2 训练的网络实现了 0.3896 · 103 的 l2 损失,这是我们训练的所有网络中最低的,这证实了使用仅 l2 就有收敛问题。然而,这两个网络在我们使用的任何感知指标上都没有优于 Mix,这证实了所提出的损失的优势超出了收敛考虑。表 II 显示了两个网络的完整评估,其中粗体表示结果优于表 I.B 中显示的任何结果。

在这里插入图片描述

B. On the Performance of SSIM and MS-SSIM

关于 SSIM 和 MS-SSIM 的性能表1还揭示了 SSIM 和 MS-SSIM 的性能不如 l1。这与这些损失的收敛特性无关。为了研究这一点,我们训练了几个具有不同 σG 的 SSIM 网络,发现较小的 σG 值在边缘产生更好的结果,但在平坦区域产生更差的结果,而对于较大的值则相反,见图 9。这可以可以通过查看图 10(a) 来理解,其中对于靠近边缘的像素 P 显示了用于计算 σG 的三个值的 SSIM 的支持的大小。较大的 σG 对相同数量的噪声更能容忍,因为它检测到边缘的存在,已知边缘对 HVS 具有掩蔽效果:在这个玩具示例中,SSIM9 为同一像素产生更高的值,因为它支持跨越边缘的两侧。图 10(b) 显示 SSIM 跨过 (a) 的相同轮廓的边缘,特别是在像素 P 处。请注意,SSIM9 在步骤周围的较大区域中估计质量更高。尽管支持的大小,但是, SSIM 对平坦区域的均匀偏差不是特别敏感。这在明亮区域尤其如此,如图 10(d)所示,
在这里插入图片描述

绘制图 10© 的噪声信号的 SSIM 值。像素 S 两侧的相同偏差会对 SSIM 的质量评估产生不同的影响。因为 (5) 中的项 l§ 衡量的是对比度方面的误差,所以它有效地降低了背景明亮时的影响。这就是为什么,由于其多尺度特性,MS-SSIM 解决了边缘周围的噪声问题,但没有解决平坦区域的颜色变化问题,特别是当至少一个通道很强时,天空的情况。请注意,虽然这些是重要的观察结果,因为它们可以推广到使用 SSIM 或 MS-SSIM 的任何优化问题,但新颖的图像质量指标的定义超出了本文的范围。我们仅限于在神经网络的上下文中分析它们的性能。最后,我们想指出,在彩色图像的上下文中使用基于 SSIM 的损失会引入一个近似值,因为这些指标最初是为灰度设计的图片。一种更有原则的方法是将损失函数基于专门为彩色图像定义的度量,例如 FSIMc 。然而,据我们所知,还没有提出同样可微的度量。我们计划在未来的工作中解决这个问题。

C。 Arewe Committing the Inverse Crime?

为了对不同损失函数的结果进行数值评估和比较,我们需要获得基本事实。对于本文中描述的应用程序,这只有在我们生成合成数据时才有可能。例如,对于超分辨率实验,我们通过对原始图像进行低通和下采样来生成低分辨率输入。然而,在生成合成数据时,需要注意结果的有效性。在反问题的背景下,Colton 和

Kress 引入了逆向犯罪的概念,当合成数据是用与逆向求解器相关的正向模型制造的([29],第 133 页)时,它是“犯下的”,这可能隐藏了该方法的缺点。根据这个定义,可以说我们确实犯了逆向犯罪,因为我们使用相同的过程为训练和测试生成了合成数据。但是,有两个考虑因素支持我们的选择。首先,虽然通常要避免逆向犯罪,但正向模型应尽可能类似于物理系统([29],第 163 页)。例如,在上述超分辨率示例中,执行下采样后进行低通模拟镜头和传感器的 PSF 对入射光的作用。其次,我们正在研究当所有其他条件都相同时损失层的影响:如果我们改变前向模型,结果的质量可能会下降,但我们希望损失之间的关系保持不变。这正是我们在测试使用高斯滤波器的不同标准差生成的数据的不同损失训练的网络时观察到的结果。例如,将标准偏差从 3 个像素更改为 5 个像素,会导致在 Mix 上训练的网络产生的平均 MS-SSIM 从 0.9829 下降到 0.9752。然而,用 l1 和 l2 训练的网络经历了类似的下降,分别产生 0.9744 和 0.9748 的平均 MS-SSIM。我们观察到其他指标的类似行为。这些注意事项也适用于联合去噪和去马赛克,以及 JPEG 去块。

VI. 结论

我们关注神经网络的一个方面,在图像恢复的背景下通常被忽视:损失层。我们提出了几种替代方案 l2 ,这是事实上的标准,我们还定义了一个新的损失。我们使用联合降噪和去马赛克、超分辨率和 JPEG 伪像去除的问题来进行测试。我们根据传统和感知动机指标对结果进行了全面分析,并表明使用建议的损失训练的网络优于其他网络。我们还注意到 l2 的性能不佳部分与其收敛特性有关,这有助于改善其他基于 l2 的方法的结果。因为我们使用的网络是完全卷积的,所以它们非常高效,因为它们不需要聚合步骤。尽管如此,由于我们提出的损失,我们的联合去噪和去马赛克网络优于 CFA-BM3D,CFA-BM3D 是 BM3D 的变体,针对拜耳域中的去噪进行了调整,这是最先进的去噪算法。表 I 显示了 Mix 相对于所有其他损失的优越性。即使对于使用 l1 训练的网络,也可以通过目视检查来理解这一点,l1 是最接近的竞争对手,它会产生更强的伪影(例如,参见图 3)。我们还向研究社区提供了本文中描述的层的实现。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1647038.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

零基础编程学python:如何从零开始学习并使用Python编程语言

零基础编程学python:如何从零开始学习并使用Python编程语言 Python是一种非常流行的编程语言,由于其简单的语法和强大的功能,使其成为初学者和专业开发者的首选。无论您是数据科学家、网络开发者还是自动化工程师,Python都能提供必…

多组间比较散点图+误差棒(自备)

目录 数据 计算四分位值 作图 数据 rm(list ls()) library(ggplot2) library(dplyr) library(ggpubr) library(reshape2) library(tidyverse)data <- iris##鸢尾花数据集 dat <- data[,c(5,1)]#单个数据进行分析 计算四分位值 #根据分组计算四分位及中位数 dat1 …

软件测试与管理:黑盒测试-等价类划分法和 边界值分析法

知识思维导图&#xff1a; 例题1&#xff1a;日期检查功能的等价类划分 设有一个档案管理系统&#xff0c;要求用户输入以年月表示的日期。假设日期限定在1990年1月~2049年12月&#xff0c;并规定日期由6位数字字符组成&#xff0c;前4位表示年&#xff0c;后2位表示月。现用等…

RAG进阶(二): RAG 融合(rag fusion)

在上一篇博客中&#xff0c;我们学习了多重查询(Multi Query)技术&#xff0c;Multi Query的基本思想是当用户输入查询语句(自然语言)时&#xff0c;我们让大模型(LLM)基于用户的问题再生成多个查询语句&#xff0c;这些生成的查询语句是对用户查询语句的补充&#xff0c;它们是…

okcc最新版本会被盗打吗?

OKCC是一款智能外呼系统&#xff0c;它提供了多种安全措施来防止系统被盗打。以下是一些关键的安全配置和管理措施&#xff1a; 立即挂失SIM卡&#xff1a;一旦发现OKCC系统被盗打&#xff0c;应立即联系运营商进行SIM卡的挂失&#xff0c;以阻止盗打者继续使用您的号码进行通信…

Mybatis进阶3--注解开发

先看&#xff1a; Mybatis进阶1-CSDN博客 Mybatis进阶2-CSDN博客 mybatis注解开发 前置&#xff1a;不需要xxxMapper..xml文件&#xff08;映射文件&#xff09; 在核心配置文件中&#xff1a;<mappers>标签只能使用&#xff1a;<package name"扫描的包&quo…

visio studio 中.NET Core(.net8.0)框架和.net framewok 框架有什么区别?

更新vs到2022版本后&#xff0c;新建项目时就多出不少选项&#xff0c;这里来个大家分享下.NET Core&#xff08;.net8.0&#xff09;框架和.net framewok的区别 如下图&#xff0c;不带后缀的就是使用.NET Core框架&#xff0c;后续选项是.net8.0。 .net framewok框架选项&am…

PDF高效编辑:一键批量,PDF转图片的快速解决方案

在数字化时代&#xff0c;PDF文件已成为工作和学习中不可或缺的一部分。然而&#xff0c;有时我们可能需要将PDF转换为图片&#xff0c;以便更轻松地编辑、共享或处理。为了满足这一需求&#xff0c;许多高效的PDF编辑工具应运而生&#xff0c;其中“办公提效工具”一键批量PDF…

ESP8266做主机 手机网络助手为从机

ATCIFSR查看地址&#xff0c;一般ESP8266 为192.168.4.1 在手机上下载网络调试助手&#xff0c;打开TCP客户端 创建后192.168.4.1 端口8089然后连接ESP8266热点。 ESP向手机发数据前先发送要发几个数据ATCIPSEND0,8表示发8个&#xff0c;然后再发8个数 上面创建好热点后&…

MFC实现点击列表头进行排序

MFC实现点击列表头排序 1、添加消息处理函数 在列表窗口右键&#xff0c;类向导。选择 IDC_LIST1&#xff08;我的列表控件的ID&#xff09;&#xff0c;消息选择LVN_COLUMNCLICK。 2、消息映射如下 然后会在 cpp 文件中生成以下函数 void CFLashSearchDlg::OnLvnColumnclic…

权益商城系统源码,支持多种支付方式

权益商城系统源码&#xff0c;支持多种支付方式&#xff0c;后台商品管理&#xff0c;订单管理&#xff0c;串货管理&#xff0c;分站管理&#xff0c; 会员列表&#xff0c;分销日志&#xff0c;应用配置。 上传到服务器&#xff0c;修改数据库信息&#xff0c;导入数据库&a…

rust调用SQLite实例

rusqlite库介绍 Rusqlite是一个用Rust编写的SQLite库&#xff0c;它提供了对SQLite数据库的操作功能。Rusqlite的设计目标是提供一个简洁易用的API&#xff0c;以便于Rust程序员能够方便地访问和操作SQLite数据库。 Rusqlite的主要特点包括&#xff1a; 遵循Rust的类型系统和…

Mysql数据在磁盘上的存储结构

一. 前言 一行数据的存储格式大致如下所示: 变长字段的长度列表&#xff0c;null值列表&#xff0c;数据头&#xff0c;column01的值&#xff0c;column02的值&#xff0c;column0n的值… 二. 变长字段 在MySQL里有一些字段的长度是变长的&#xff0c;是不固定的&#xff0c;…

21_Scala集合_可变数组ArrayBuffer

文章目录 ArrayBuffer1.创建可变数组ArrayBuffer2.增加数据3.删除数据4.修改数据5.查询数据Appendix ArrayBuffer ArrayBuffer可变数组–感觉优点类似于Java的ArrayList 1.创建可变数组ArrayBuffer –请注意下面的mutable import scala.collection.mutable.ArrayBuffer //m…

在Linux上使用Selenium驱动Chrome浏览器无头模式

大家好&#xff0c;我们平时在做UI自动化测试的时候&#xff0c;经常会用到Chrome浏览器的无头模式&#xff08;无界面模式&#xff09;&#xff0c;并且将测试代码部署到Linux系统中执行&#xff0c;或者平时我们写个爬虫爬取网站的数据也会使用到&#xff0c;接下来和大家分享…

前端框架 Vue 主要用来做什么的?

Vue.js 是一个流行的前端框架&#xff0c;主要用于构建交互式的用户界面。它的设计目标是通过简单的 API 提供高效的数据驱动视图层。Vue 具有响应式数据绑定和组件化的特性&#xff0c;使得开发者可以轻松地构建复杂的单页面应用 (SPA) 和动态网页。 1. 数据驱动视图 Vue 的…

IIS部署vue项目 IIS重写URL

【第一步】安装IIS {1&#xff09;打开控制面板 -> 打开程序和功能 -> 打开启用或关闭windows功能 &#xff08;2&#xff09;找到 Internet Information Services 勾选【web管理工具】和【万维网服务】&#xff0c;然后 确定 【第二步】安装URL重写模块 1). 安装URL …

企业微信hook接口协议,ipad协议http,设置是否自动同意

设置是否自动同意 参数名必选类型说明uuid是String每个实例的唯一标识&#xff0c;根据uuid操作具体企业微信 请求示例 {"uuid":"bc4800492083fdec4c1a7e5c94","state":1 //1 是需要验证同意&#xff08;需要手动点击同意&#xff09; 0关闭验证…

下一代自动化,国外厂商如何通过生成性AI重塑RPA?

企业自动化的未来趋势是什么&#xff1f;科技巨头们普遍认为&#xff0c;由生成性AI驱动的AI Agent将成为下一个重大发展方向。尽管“AI Agent”这一术语尚无统一定义&#xff0c;但它通常指的是那些能够根据指令通过模拟人类互动&#xff0c;在软件和网络平台上执行复杂任务的…

Skywalking的重要功能详解

学习本篇文章之前首先要了解一下Sky walking的基础知识 分布式链路追踪工具Sky walking详解 一&#xff0c;Sky walking监控数据库 在admin服务中&#xff0c;连接数据库查询user表中所有数据 引入依赖 <dependency><groupId>mysql</groupId><artifactI…