这里写目录标题
文献阅读:低照度图像增强的金字塔扩散模型
题目:Pyramid Diffusion Models for Low-light Image Enhancement
作者:Dewei Zhou , Zongxin Yang , Yi Yang
年份:2023
研究背景
低光图像往往存在噪声干扰,从中恢复出理想的正常光照图像一直是一个备受研究的问题。由于深度学习的发展,提出了许多有效的方法。LLNet 和SID 通过在大量配对数据上训练神经网络展示了神经网络的强大能力。根据Retinex理论[和RetinexNet [Wei et al., 2018]通过精心设计的损失函数分解了光照和反射图。为了解决这个高度病态的问题,LLFLOW [Wang et al., 2022]将归一化流模型 [Kingma and Dhariwal, 2018]应用于低光图像增强。
尽管上述方法在低光图像增强方面取得了显著进展,但它们恢复的噪声覆盖细节仍有进一步提升的空间。如图1(a)所示,之前的方法通常导致细节模糊和颜色失真。最近,扩散模型[Ho et al., 2020; Song et al., 2020b]在图像生成方面展现出了它们的才能,通过一系列的细化步骤能够生成更逼真的细节。因此,我们将扩散模型引入低光图像增强中,以更好地恢复噪声覆盖的细节,如图1(a)所示。
在将扩散模型引入低光图像增强时,我们发现了两个问题,如图1(b)所示。首先,分辨率在一个反向过程中保持恒定,这限制了速度。其次,扩散模型会导致类似于RGB偏移的全局退化。
为了解决这些问题,我们提出了一种金字塔扩散模型(PyDiff)用于低光图像增强。如图1©所示,PyDiff采用一种新颖的金字塔扩散方法,在一个反向过程中以高效的金字塔分辨率样式采样图像(即逐步增加分辨率)。在较低分辨率下进行噪声的采样使得反向过程更快,并且为PyDiff提供了更大的感受野,有利于全局信息的恢复。此外,我们分析了全局退化的原因(图5),并认为去噪网络难以将全局退化视为噪声的一部分,并在去噪过程中进行修正,因为反向过程偏向于消除高斯噪声。为了减轻去噪网络无法察觉的全局退化,PyDiff使用全局校正器进行采样。在几乎不增加额外计算消耗的情况下,全局校正器显著提高了性能,并使扩散模型的训练更加容易。
我们在两个常用的基准测试上进行了广泛实验(即LOL [Wei et al., 2018]和LOLV2 [Yang et al., 2021]),以验证PyDiff的有效性和效率。实验结果表明,PyDiff在各种情况下在定量和定性的指标下实现了卓越的性能。与之前的最先进方法LLFLOW相比,PyDiff的速度快近2倍。尤其是在处理未见过的噪声分布时,PyDiff明显优于其他最先进的方法,例如(NE [Jin et al., 2022])2个SSIM分高出10个点。在处理未见过的光照分布时,PyDiff也呈现出竞争力的结果,进一步展示了我们的泛化能力。
我们的贡献可以总结如下:
• 据我们所知,我们是首先将扩散模型引入低光图像增强并取得最先进水平的工作。使用一种新颖的金字塔扩散方法,PyDiff的速度几乎是之前最先进的方法LLFLOW的两倍。
• 我们提出了一个全局校正器来减轻反向过程中出现的全局退化。这显著提高了性能,并使扩散模型的训练更加容易,而额外的计算消耗很小。
• 在常用的基准测试上进行了实验,结果表明PyDiff达到了新的最先进性能,并且PyDiff能够很好地推广到未见过的噪声和光照分布。
这句话提到了分辨率在一个反向过程中保持恒定,这限制了速度。其次,扩散模型会导致类似于RGB偏移的全局退化。首先,它指出在当前的方法中,分辨率在一个反向过程中保持不变,也就是说图像的分辨率在处理过程中没有发生变化。这样的限制会导致速度下降,即处理图像所需的时间变长。
其次,它提到扩散模型会导致类似于RGB偏移的全局退化。这里的全局退化指的是在图像恢复过程中整体质量的下降,可能表现为颜色失真或其他异常。这样的全局退化类似于RGB偏移,即图像的颜色整体发生了变化。扩散模型在处理图像时可能产生这种全局退化现象。
因此,这句话的意思是通过引入金字塔扩散模型(PyDiff),可以解决上述问题。PyDiff能够以金字塔分辨率样式采样图像,逐步增加分辨率,从而提高速度。同时,PyDiff通过引入全局校正器来减轻全局退化问题,提高图像恢复的质量。
扩散模型(Diffusion Model)是一种用于图像处理和生成的数学模型。它的基本原理是通过迭代地传播和扩散信息来改变图像的像素值。
在扩散模型中,图像中的每个像素都被看作是一个信息传递的节点。在每一轮迭代中,像素节点的值会受到其周围像素节点的影响,并进行一定的变化。这种变化可以是通过像素之间的加权平均、梯度传播或其他形式的信息扩散来完成。
金字塔扩散模型是一种图像处理方法,旨在通过连续的扩散过程提取图像中的细节并改善其质量。该模型的基本思想是将图像分解成多个层次的金字塔,每一层都对应不同的分辨率。扩散过程通过将高分辨率的图像向下扩散到低分辨率层次,逐步消除高频细节和噪声,同时保留图像中的主要结构和低频信息。
在金字塔扩散模型中,扩散过程通常通过应用一组卷积核或滤波器来实现,其中每个滤波器都以递增的尺度对图像进行模糊操作。通过对每一层图像进行适当的模糊处理,模型能够逐渐减少图像的细节和噪声,并生成新的更平滑的图像。这个过程可以通过反向操作来重新构建图像的细节,从而恢复高频细节和图像的质量。
金字塔扩散模型在计算机视觉领域被广泛应用于图像增强、边缘检测、纹理分析等任务。它能够提供多尺度的图像表示,并可以在不同分辨率下捕捉图像的不同特征,从而改善图像的可视化效果和处理结果。
2 相关工作
2.1 低光图像增强
低光图像增强已经有很长时间的研究历史,提出了许多基于深度学习的方法。LLNet [Lore et al., 2017] 和 SID [Chen et al., 2018] 通过收集大量的低光/正常光图像对来训练网络。为了获取光照和反射图 [Land, 1977],RetinexNet [Wei et al., 2018]、KIND [Zhang et al., 2019] 和 KIND++ [Zhang et al., 2021]通过精心设计损失函数训练分解网络。
GAN [Jiang et al., 2021]、ZeroDCE [Guo et al., 2020] 和 NE [Jin et al., 2022]提出了有效的无监督方法,不需要配对数据。BREAD [Guo and Hu, 2022]解开了噪声和颜色失真的联系。一些作品 [Fan et al., 2022a; Cui et al., 2022; Kim et al., 2021]通过设计新颖高效的网络提升了性能。LLFLOW [Wang et al., 2022]通过归一化流模型 [Dinh et al., 2016; Kingma and Dhariwal, 2018]对这个高度病态的问题进行建模。尽管上述方法在低光图像增强方面取得了显著进展,但它们恢复的噪声覆盖细节仍可以进一步提升。本文将扩散模型 [He et al., 2020] 引入低光图像增强中,以更好地恢复细节。
2.2 扩散模型
扩散模型 [Ho et al., 2020; Song et al., 2020b] 通过大量的去噪迭代展现了高质量图像合成的结果,也提出了一些训练无关的采样器 [Song et al., 2020a; Nichol and Dhariwal, 2021; Bao et al., 2022; Lu et al., 2022] 来通过较少的迭代实现类似的结果。为了进一步实现条件生成,Guided-Diffusion [Dhariwal and Nichol, 2021] 通过分类器引导进行采样,而我们的PyDiff通过将噪声图像与源图像连接起来,引导去噪,类似于一些低级视觉方法 [Saharia et al., 2022b; Saharia et al., 2022a; Whang et al., 2022]。
为了更高效地生成高分辨率图像,一些作品 [Saharia et al., 2022b; Ho et al., 2022; Fan et al., 2022b] 使用多个扩散模型实现级联的高分辨率图像合成,而LDM [Rombach et al., 2022] 在图像编码器的潜在空间中进行反向过程。在一个反向过程中,上述方法采样时保持恒定的分辨率样式,限制了速度。本文中,PyDiff使用金字塔扩散方法实现更快的速度,并通过全局校正器确保低光图像增强的采样质量。
3 背景:去噪扩散
扩散模型包括两个步骤: 固定的(或预设的)前向扩散过程q:该过程会逐渐将高斯噪声添加到图像中,直到最终得到纯噪声。
可训练的反向去噪扩散过程:训练一个神经网络,从纯噪音开始逐渐去噪,直到得到一个真实图像。
前向与后向的步数由下标 t定义,并且有预先定义好的总步数 T(DDPM原文中为1000)。t=0 时为从数据集中采样得到的一张真实图片, t=T 时近似为一张纯粹的噪声。
扩散模型的目的是什么? 学习从纯噪声生成图片的方法
扩散模型是怎么做的? 训练一个U-Net,接受一系列加了噪声的图片,学习预测所加的噪声
前向过程在干啥? 逐步向真实图片添加噪声最终得到一个纯噪声 对于训练集中的每张图片,都能生成一系列的噪声程度不同的加噪图片
在训练时,这些 【不同程度的噪声图片 + 生成它们所用的噪声】 是实际的训练样本 反向过程在干啥? 训练好模型后,采样、生成图片
前向过程
是真实数据分布(也就是真实的大量图片),从这个分布中采样即可得到一张真实图片 。我们定义前向扩散过程为 ,即每一个step向图片添加噪声的过程,并定义好一系列,则有:
总之,我们定义这么一个过程:给一张图片逐步加噪声直到变成纯粹的噪声,然后对噪声进行去噪得到真实的图片。所谓的扩散模型就是让神经网络学习这个去除噪声的方法。
所谓的加噪声,就是基于稍微干净的图片计算一个(多维)高斯分布(每个像素点都有一个高斯分布,且均值就是这个像素点的值,方差是预先定义的 ),然后从这个多维分布中抽样一个数据出来,这个数据就是加噪之后的结果。显然,如果方差非常非常小,那么每个抽样得到的像素点就和原本的像素点的值非常接近,也就是加了一个非常非常小的噪声。如果方差比较大,那么抽样结果就会和原本的结果差距较大。
去噪声也是同理,我们基于稍微噪声的图片 计算一个条件分布,我们希望从这个分布中抽样得到的是相比于 更加接近真实图片的稍微干净的图片。我们假设这样的条件分布是存在的,并且也是个高斯分布,那么我们只需要知道均值和方差就可以了。问题是这个均值和方差是无法直接计算的,所以用神经网络去学习近似这样一个高斯分布。
4 方法
这一部分介绍了PyDiff,一种用于低光图像增强的高效方法。首先,我们描述了设计PyDiff的动机。其次,我们介绍了我们提出的金字塔扩散(pyramid diffusion)方法,该方法显著提高了推断速度而不会降低性能。此外,我们提出了全局校正器(global corrector),它可以减轻扩散模型逆过程中可能出现的全局降级问题。最后,我们描述了PyDiff的训练和采样过程。
图3:我们对正常光照图像施加各种退化(例如降采样或RGB偏移),根据公式(2)获得带有噪声的 xT /2。相应地,我们从 t = T /2 开始进行扩散逆过程,条件是低光图像。我们想知道这些退化如何影响逆过程的后半部分。(a) 降采样不影响最终结果的细节。(b) RGB偏移不会被校正。请放大以获得最佳视图。
4.1 动机
不必要保持恒定分辨率。以前的工作在扩散模型的逆过程中保持恒定分辨率。然而,图3(a)表明,逆过程的前半部分可以在较低分辨率下进行,而不会影响最终生成的细节。
噪声采样的效果。此外,图3(b)显示,如果全局降级(例如,RGB偏移)发生在逆过程的前半部分(即,采样结果有更多噪声),那么后半部分(即,采样结果噪声减少)将无法对其进行校正。图3证明,扩散模型中的噪声采样(例如,在逆过程的前半部分进行采样)通常不会影响最终的细节,主要恢复全局信息,如亮度和色调。因此,PyDiff可以在较低分辨率下进行更多噪声的采样,同时确保全局信息能够被正确地恢复。
4.2 金字塔扩散
如图2所示,PyDiff采用了一种新颖的金字塔扩散方法,以金字塔分辨率风格进行迭代。在较低分辨率下进行较多噪声的采样可以加快逆过程,并为网络提供更大的感受野,有利于恢复全局信息。在本节中,我们介绍了金字塔扩散的方法。
降采样计划。与扩散模型中的噪声计划 {α} 类似,金字塔扩散定义了一个降采样计划 {s},即第 i 次采样将在缩小了因子 si 的分辨率上进行。同时,对于 i ≥ t,为了获得更大的噪声,st ≥ st+1;而对于 i ≤ t,为了获得较低的分辨率,st ≤ st+1。
总结
这周学习了论文《Pyramid Diffusion Models for Low-light Image Enhancement》所需要前置知识,即扩散模型的数学原理和扩散模型的用途,对扩散模型进行手动的推理,下周将进一步去学习金字塔扩散模型和全局校正器。