基于多尺度结构引导扩散模型的图像去模糊
摘要
扩散概率模型(Diffusion Probabilistic Models, DPMs)最近被用于图像去模糊,其被表述为一个以模糊输入为条件的图像条件生成过程,将高斯噪声映射到高质量图像。当在成对的域内数据上训练时,图像条件DPMs(icDPMs)显示出比基于回归的方法更真实的结果。然而,当面对域外图像时,它们在恢复图像方面的鲁棒性尚不清楚,因为它们没有强加特定的退化模型或中间约束。为此,我们引入了一种简单而有效的多尺度结构引导,作为一种隐式偏置(implicit bias),在中间层通知 icDPM 关于清晰图像的粗粒度结构。这种引导公式显著改善了去模糊结果,特别是在未见过的域上。该引导是从一个回归网络的潜在空间中提取的,该网络经过训练可以在多个较低分辨率下预测清晰目标,从而保留了最显著的清晰结构。借助模糊输入和多尺度引导,icDPM模型可以更好地理解模糊并恢复清晰图像。我们在多个数据集上评估了仅在单个数据集上训练的模型,并在未见数据上展示了更鲁棒的去模糊结果和更少的伪影。我们的方法优于现有基线,在保持具有竞争力的失真度量的同时,实现了最先进的感知质量。
1 引言
图像去模糊是一个本质上病态(ill-posed)的反问题,旨在根据模糊观测估计一个(或多个)高质量图像 。深度网络允许通过成对有监督学习进行端到端的图像去模糊。虽然基于深度回归的方法 [88, 98, 105, 86, 6, 96, 7, 90, 85, 42, 66, 58]优化了诸如PSNR之类的失真度量,但它们通常会产生过度平滑的输出,缺乏视觉保真度[40, 5, 14, 4]。因此,感知驱动的方法 [44, 27]旨在产生清晰且视觉上令人愉悦的图像,同时仍然忠实于清晰参考图像,通常需要在失真性能上做出轻微妥协,即PSNR下降小于3dB [4, 61]允许显著更好的视觉质量,同时仍然接近目标图像。GANs[18]被用来改进去模糊感知[37, 38]。然而,GAN训练存在不稳定性、模式崩溃(mode-collapse)和伪影[53],这可能会损害生成图像的合理性。
基于深度回归的方法是指:将去模糊问题视为图像到图像的转换问题,深度模型将模糊图像作为输入,预测高质量的清晰图像。使用像素级损失(如L1和L2损失)进行监督训练,直接优化失真度量(如PSNR和SSIM)。比如正常的U-Net架构,端到端网络监督学习。
基于感知驱动的方法是指:旨在产生清晰且视觉上令人愉悦的图像,同时仍然忠实于清晰的参考图像。比如基于生成模型的方法。
最近,DPMs [20]在各种成像反问题 [74, 43, 90, 72, 13]中进一步提高了照片真实感,其被表述为一个图像条件生成过程 ,其中DPM将退化估计作为辅助输入 。图像条件DPMs(icDPMs)既不估计退化核 ,也不施加任何中间约束 。这些模型使用标准的去噪损失[20]和成对训练数据以监督方式进行训练 。在图像恢复中,这种成对训练数据集通常是通过在干净的图像组上应用已知的退化模型人为策划的 ,这不可避免地引入了合成训练数据集与真实世界模糊图像之间的域差距(domain gap)。
成像反问题:反问题为已知输出或观测结果,推断系统参数或原始输入。已知模糊图像,需要恢复出原始清晰图像。成像反问题本质上是不适定问题,在图像处理中,多个不同的清晰图像可能产生相同的模糊观测,因此反问题通常没有唯一解。从论文和图像处理领域来看,主要的成像反问题包括图像去模糊、超分辨率、图像去噪等。
域差距 (domain gap)指的是合成训练数据分布(ptrain)与真实世界数据分布(preal)之间的差异。差距具体表现在以下几个方面:数据生成方式的差异(合成训练数据 是已知的退化模型(如特定模糊核)人工生成的;真实世界模糊图像 具有更复杂的退化模式,往往无法用简单的数学模型精确描述。)、 具体表现的差异、实证分析(Inception距离分析 /表1/计算了GoPro(域内)和Realblur-J(域外)在不同尺度下的FID和KID值,显示两者之间存在显著差异)。
域差距导致的主要问题是:模型在域外数据上鲁棒性下降、产生视觉伪影、无法有效恢复真实世界的模糊图像
鲁棒性相当不明确指的是当icDPMs (image-conditioned Diffusion Probabilistic Models)面对与训练数据分布不同的未见数据(out-of-domain data)时,其性能表现不稳定且难以预测。
中间恢复过程难以处理指的是icDPMs的去模糊过程缺乏明确的中间表示和约束。icDPMs将去模糊视为一个端到端的条件生成过程,没有明确的中间步骤表示。
当面对未见数据时,icDPMs的鲁棒性相当不明确 ,因为中间恢复过程是难以处理的。例如,当我们将合成训练的icDPM应用于域外数据时,我们观察到性能显著下降,包括未能对输入进行去模糊(图1)和引入伪影(图4 'icDPM'和图7 'DvSR')。我们通过实验确定了现有去模糊icDPMs[72, 74, 90]中域敏感性 与图像条件 之间的关系,其中观察到的泛化能力差 归因于简单的输入级连接 (input-level concatenation)以及去模糊过程中缺乏中间约束 。在合成训练集上优化 时,可能会发生过拟合或记忆 [78],使得模型对输入分布的偏移变得脆弱 。目前,在模糊或损坏图像上条件化DPM的研究尚不充分 [68],我们假设更有效的图像条件化对于icDPM至关重要,可以使模型在未见域上更具约束性和鲁棒性。
域敏感性与图像条件之间的关系 指的是现有图像条件扩散概率模型(icDPMs)对域外数据表现不佳的根本原因与其处理图像条件的方式直接相关。
记忆:引用的[78]论文("Diffusion art or digital forgery? investigating data replication in diffusion models")指出,扩散模型可能不仅学习数据分布,还可能直接"复制"训练数据中的特定样本
输入分布 (Input Distribution):指训练数据的统计特性,包括图像内容、模糊类型、光照条件等。
分布偏移(Distribution Shift):指测试数据与训练数据在统计特性上的系统性差异。也就是说输入分布偏了一点就学不好了。

图1:在 Realbur-J 数据集 [67]上的去模糊示例,模型仅在合成的GoPro数据[57]上训练。比较了最近的基于回归的方法[96,89](MPRNet,UFormer)、基于GAN的方法[38](DeblurGANV2)和图像条件扩散概率方法(icDPM)。我们在icDPM公式上引入了一个引导模块,提高了其在未见图像上的鲁棒性。
受传统盲去模糊算法的启发(这些算法使用显式的结构先验 (例如,包含图像显著性[62, 93])进行优化,我们通过中间层的多尺度结构引导增强了icDPM主干(UNet[70])。这些引导特征是通过一个回归网络获得的,该网络经过训练可以从输入中预测显著的清晰特征。该引导与模糊图像一起,为模型提供了关于图像中特定退化的更具信息性的线索。因此,模型可以更准确地恢复清晰图像并更有效地泛化。
图像显著性(Image Saliency) 是指图像中对人类视觉系统特别突出、引人注意的部分,通常代表图像中最重要的结构特征和信息。
我们的贡献有三方面:
(1) 我们研究并分析了条件扩散模型 在运动去模糊任务中的域泛化能力 ,并通过实验发现了模型鲁棒性与图像条件化之间的关系 ;
(2) 我们提出了一种直观但有效的引导模块 ,将输入图像投影到多尺度结构表示中,然后将其作为辅助先验融入扩散模型以提高鲁棒性;
(3) 与现有基准相比,我们仅在单个数据集上训练的模型通过产生更合理的去模糊和更少的伪影,在不同的测试集上显示出更鲁棒的结果,并通过最先进的感知质量和相当的失真度量进行了量化。
2 相关工作
单图像去模糊
是从模糊观测中恢复一个或多个高质量、清晰图像的反过程。通常,经典的去模糊方法涉及变分优化[17, 36, 41, 54, 63, 93, 1, 26],对模糊核、图像或两者施加先验假设,以缓解反问题的病态性。手工制作的结构先验,如边缘和形状,已成功用于许多算法中,以引导去模糊过程在去除模糊的同时保留图像中的重要特征[62, 63, 93]。我们的设计原则受到这些方法的启发,涉及一种学习的引导作为隐式结构偏置。随着深度学习的兴起,去模糊可以被视为一个特定的图像到图像转换问题,其中深度模型以模糊图像作为输入,并预测一个高质量对应物,通过恢复图像与目标之间的逐像素损失进行监督[88, 98, 105, 86, 6, 96, 7, 90, 85, 42, 66, 58, 25]。已知逐像素损失(如L1L_{1}L1和L2L_{2}L2)由于其"回归到均值"的性质会导致过度平滑的图像[40, 5, 14]。为此,在逐像素约束之上添加了感知驱动的损失,包括感知损失[27, 101, 51, 50, 103, 14]和对抗损失[37, 38],以提高去模糊图像的视觉保真度,同时失真分数有所下降[4, 61]。另外,最近的工作通过探索注意力机制[60, 95, 89, 94, 85, 86]、多尺度范式[57, 7]和多阶段框架[97, 6, 96]来改进架构设计。
扩散概率模型(DPM)
77, 20, 79, 15\]、基于分数的模型(Score-based models)\[81, 82, 83\]及其最近的探索性泛化\[2, 24, 12\]在广泛的应用中取得了显著成果\[10\],从图像和视频合成\[73, 64, 69, 21, 31, 22\]到解决一般成像反问题\[11, 28, 33, 30, 39, 8\]。DPMs的特点是训练稳定\[20, 15, 29\]、模式覆盖多样\[80, 34\]和高感知质量\[73, 15, 64\]。DPM公式涉及一个固定的前向过程(逐渐向图像添加高斯噪声)和一个可学习的反向过程(去噪并恢复清晰图像),采用马尔可夫链结构操作。条件DPMs旨在通过附加输入(类别\[15\]、文本\[73, 64\]、源图像)执行图像合成。 #### **图像条件DPMs**(icDPMs) 已成功地重新用于图像恢复任务,如超分辨率\[74, 43\]、去模糊\[90\]、JPEG恢复\[72, 32\]。这是通过在输入级连接损坏的观测来实现的。它们不需要特定任务的损失或架构设计,并因高样本感知质量而被采用。ControlNet\[100\]进一步实现了对预训练文本到图像扩散模型的特定任务图像条件化。InDI\[13\]提出了一种替代且更直观的扩散过程,其中低质量输入通过小步骤直接恢复为高质量图像。然而,DPMs对域中未见偏移的泛化能力,以及它们对低质量/损坏图像的条件化仍然未被探索。 #### **对未见域的泛化** 如上所述,用于去模糊的深度恢复模型依赖于合成的成对训练数据。然而,任何训练良好的深度恢复模型在域外数据上都可能无法产生可比的结果(图1)。为了解决这个问题,研究人员追求两个主要方向来改进模型泛化:增强训练数据的代表性和真实性,或提高模型的域泛化能力。我们的方法侧重于后者,但它与前者并不互斥,可以结合使用以进一步改善结果。为了解决数据限制,先前的工作侧重于获取或组合更具代表性的训练数据\[56, 67, 66, 104\],和/或使用生成方法\[99, 91\]生成真实的退化图像。其他先前的工作侧重于显式的域适应(domain adaptation),利用迁移学习技术来减少域差距。这些方法包括非配对图像翻译\[23, 65\]和域适应\[87, 75, 47, 58\],通常涉及对抗式公式和两个指定域之间的联合训练。然而,当引入新数据集时,这些方法可能需要重新训练。相比之下,我们的方法不涉及特定域之间的显式适应。相反,我们专注于引入更有效的图像条件化机制,自然地使模型对分布偏移更具鲁棒性。 ### 3 方法 #### 3.1 概述 我们假设可以访问一个包含**样本** (x,y)∼ptrain(x,y)(\\bm{x},\\bm{y})\\sim p_{\\text{train}}(\\bm{x},\\bm{y})(x,y)∼ptrain(x,y) 的成对数据集,其中 x\\bm{x}x 代表高质量清晰图像,而 y\\bm{y}y 是相应的低质量模糊观测(在图2中表示)。这种成对数据集通常是通过采用特定的退化模型从高质量图像模拟退化图像来生成的**合成数据集** 。  > **图2**:所提出的去模糊方法的训练过程。主干模型是一个标准的图像条件DPM(icDPM),其中UNet学习在模糊输入条件下对清晰图像进行去噪。我们为icDPM配备了一个结构引导模块(详见图3),以在多尺度上更好地告知模型粗粒度清晰结构。 > x\\bm{x}x 是高质量清晰图像 > y\\bm{y}y 是低质量人工合成模糊数据 > y\^\\hat{\\bm{y}}y\^ 是低质量观测真实模糊数据 目标是从低质量观测 y\^∼preal(y\^)\\hat{\\bm{y}}\\sim p_{\\text{real}}(\\hat{\\bm{y}})y\^∼preal(y\^) 重建一个或多个干净、清晰的图像 x\\bm{x}x。通常,训练集分布 ptrainp_{\\text{train}}ptrain 与未见图像 prealp_{\\text{real}}preal 的**分布不同** 。因此,至关重要的是模型不仅在 ptrainp_{\\text{train}}ptrain 上表现良好,而且能够泛化到 prealp_{\\text{real}}preal。 **DPMs** 鉴于DPM在高质量图像恢复\[74, 90\]方面的卓越性能,我们考虑**使用通用DPM进行我们的公式化**。接下来,我们简要描述DPM的训练和采样,以为我们的工作提供背景。 > **使用通用DPM进行我们的公式化的含义**:作者采用通用的扩散概率模型 (general-purpose DPM) 作为他们方法的基础数学框架和实现架构。他们选择通用DPM是因为它在高质量图像恢复任务中表现优异 **无条件 DPMs** 旨在通过迭代地**对来自高斯分布的样本进行去噪** 并将其转换为来自目标数据分布的样本来从数据分布 p(x)p(\\bm{x})p(x) 中采样 。为了训练这样的模型,涉及一个**前向扩散过程** 和一个**反向过程** 。如图 2 所示,在扩散步骤 ttt 时,目标图像 x\\bm{x}x 的噪声版本 xt\\bm{x}_{t}xt 通过以下公式生成。其中,ϵ∼N(0,Id)\\epsilon\\sim\\mathcal{N}(0,\\bm{I}_{d})ϵ∼N(0,Id),其中 ϵ\\epsilonϵ 从标准高斯分布 N(0,Id)\\mathcal{N}(0,\\bm{I}_{d})N(0,Id) 采样,αt\\alpha_{t}αt 控制每一步 ttt 添加的噪声量。在反向过程中,一个图像到图像的网络(即UNet)Gθ(xt,t)\\mathcal{G}_{\\theta}(\\bm{x}_{t},t)Gθ(xt,t) 由参数 θ\\thetaθ 参数化,学习从部分噪声输入 xt\\bm{x}_{t}xt 中估计清晰图像。在实践中,对模型进行重新参数化以预测噪声而不是清晰图像可以获得更好的样本质量\[20\]。训练完成后,它通过从纯高斯噪声 xT∼N(0,Id)\\bm{x}_{T}\\sim\\mathcal{N}(0,\\bm{I}_{d})xT∼N(0,Id) 开始迭代运行 TTT 步来**采样**清晰图像。 **图像条件DPMs** 进一步**注入输入图像** y\\bm{y}y,以生成与低质量观测配对的高质量样本。这涉及从条件分布 p(x∣y)p(\\bm{x}\|\\bm{y})p(x∣y)(后验)中生成样本。使用条件DPM Gθ(\[xt,y\],t)\\mathcal{G}_{\\theta}(\[\\bm{x}_{t},\\bm{y}\],t)Gθ(\[xt,y\],t),其中图像条件化通常通过 y\\bm{y}y 和 xt\\bm{x}_{t}xt 在输入级连接来实现\[74, 90, 72\]。然而,我们发现这种公式对输入图像的域偏移敏感,并导致泛化能力差(图1中的'DPM')。此外,在许多情况下它会引入视觉伪影(图7中的'DvSR')。 我们推测这是由于简单的图像条件化(输入级连接),在中间过程中缺乏约束。因此,我们将**多尺度结构引导 **h(y)h(\\bm{y})h(y) 集成到**icDPM主干的潜在空间** 中,以**通知模型关于显著的图像特征** ,例如对重建高质量图像至关重要的显著**粗粒度结构** ,同时**解耦不相关信息**,如模糊核的痕迹和颜色信息。为了获得具有上述特征的引导,我们提出了一个辅助回归网络,并利用其学习到的特征作为引导的实现,如下文第3.2节所述。 #### 3.2 多尺度结构引导 图 3 显示了我们提出的引导 h(⋅)h(\\cdot)h(⋅) 的细节。配备这种多尺度引导的 DPM 能更好地感知输入底层的显著结构,因此它学习更好地从目标条件分布preal(x∣y)p_{\\text{real}}(\\bm{x}\|\\bm{y})preal(x∣y)中采样。此外,当输入域改变时,h(y)h(\\bm{y})h(y)的分布不会显著改变,因此即使在应用于未见域时,它也能可靠地提供辅助结构引导。  > **图3**:学习的结构引导(图2中的红框)是从一个回归网络的潜在特征中提取的,该网络经过训练可以在多个较低分辨率下预测清晰目标的亮度(luma)通道。这样,引导仅保留与结构相关的信息,代表底层的清晰图像。 为达此目的,我们将引导模块构建为hk(⋅)=H(ϕk(⋅))h_{k}(\\cdot)=\\mathcal{H}(\\phi_{k}(\\cdot))hk(⋅)=H(ϕk(⋅))。在尺度kkk上,它由一个图像转换函数ϕk(⋅)\\phi_{k}(\\cdot)ϕk(⋅)和一个回归驱动的引导网络H\\mathcal{H}H组成。具体来说,ϕk(⋅)\\phi_{k}(\\cdot)ϕk(⋅)转换输入图像y\\bm{y}y以抑制与粗粒度清晰图像结构无关的信息(例如,颜色和特定域退化的信息)。这确保了H\\mathcal{H}H在一个对输入域不太敏感的空间上操作。我们首先将y\\bm{y}y转换为灰度空间yˉ\\bar{\\bm{y}}yˉ,然后,yˉ\\bar{\\bm{y}}yˉ被下采样2k2\^{k}2k倍,其中k=1,2,3k=1,2,3k=1,2,3。这移除了精细细节(包括一定程度的模糊痕迹),同时在多个较低分辨率下保留了粗粒度结构。受\[91\]启发,我们还添加少量高斯噪声以掩盖其他特定域的退化/特征,并使输出对输入域偏移不太敏感。在最近的扩散模型中,添加噪声已成为常见做法\[71, 73\],因为它增强了处理域外数据时的鲁棒性。因此, ϕk(y)=d↓k(yˉ)+n,n∼N(0,σ2I).\\phi_{k}(\\bm{y})=d_{\\downarrow k}(\\bar{\\bm{y}})+\\bm{n},\\quad\\bm{n}\\sim\\mathcal{N}(0,\\sigma\^{2}\\bm{I}).ϕk(y)=d↓k(yˉ)+n,n∼N(0,σ2I). (1) 然后,引导网络Hφ\\mathcal{H}_{\\varphi}Hφ通过将ϕk(y)\\phi_{k}(\\bm{y})ϕk(y)映射到表示/潜在空间来提取引导特征:hk(y)=Hφ(ϕk(y))h_{k}(\\bm{y})=\\mathcal{H}_{\\varphi}(\\phi_{k}(\\bm{y}))hk(y)=Hφ(ϕk(y))。为确保它获得显著的结构特征并进一步滤除不重要信息,我们在hk(y)h_{k}(\\bm{y})hk(y)之上应用回归任务Rφ\\mathcal{R}_{\\varphi}Rφ,并将输出约束得更接近其清晰目标ϕk(x)\\phi_{k}(\\bm{x})ϕk(x)。这样,在尺度kkk上的引导hk(y)h_{k}(\\bm{y})hk(y)被强制保留与清晰图像相关的信息,并抑制其他特定于输入的信号(例如,模糊痕迹)。 最后,我们将多尺度引导{hk(y)}\\{h_{k}(\\bm{y})\\}{hk(y)}整合到原始扩散UNet中,方法是将提取的表示作为额外的偏置(bias)添加到扩散编码器(图2)相应尺度的特征图上。为补偿深度的差异,在每个对应尺度,我们应用一个卷积层,其具有与扩散编码器中相同数量的特征。详细图示见附录。 #### 3.3 训练损失 我们的模型通过用于优化引导网络的多尺度回归损失和icDPM中的去噪损失进行端到端训练。回归损失是每个尺度kkk上的均方误差,定义为: Lguidancek=E(x,y)∼ptrain∥Rφ(Hφ(ϕk(y)))−ϕk(x)∥2,\\mathcal{L}_{\\text{guidance}}\^{k}=\\mathbb{E}_{(\\bm{x},\\bm{y})\\sim p_{\\text{train}}}\\\|\\mathcal{R}_{\\varphi}(\\mathcal{H}_{\\varphi}(\\phi_{k}(\\bm{y})))-\\phi_{k}(\\bm{x})\\\|_{2},Lguidancek=E(x,y)∼ptrain∥Rφ(Hφ(ϕk(y)))−ϕk(x)∥2, (2) 其中Hφ\\mathcal{H}_{\\varphi}Hφ是引导特征提取器,R\\mathcal{R}R实例化为一个单一卷积层,将引导特征投影到面向清晰图像的最终输出(如图3所示)。总回归损失是不同尺度损失的平均值:Lguidance=∑kLguidancek\\mathcal{L}_{\\text{guidance}}=\\sum_{k}\\mathcal{L}_{\\text{guidance}}\^{k}Lguidance=∑kLguidancek。注意,我们在引导网络中不使用任何额外的下采样/上采样操作,因此空间维度在每个尺度上保持不变。我们通过实验观察到,通过集成三个不同的尺度k=1,2,3k=1,2,3k=1,2,3可以获得最佳性能,细节在第4.6节讨论。 通过聚合来自输入图像y\\bm{y}y和多尺度引导{hk(y)}\\{h_{k}(\\bm{y})\\}{hk(y)}的信息,我们的icDPM G\\mathcal{G}G通过最小化去噪损失进行训练, LDPM=E(x,y)∼ptrainEt∼Unif(0,1)Eϵ∼N(0,I)\\mathcal{L}_{\\text{DPM}} =\\mathbb{E}_{(\\bm{x},\\bm{y})\\sim p_{\\text{train}}}\\mathbb{E}_{t\\sim\\text{Unif}(0,1)}\\mathbb{E}_{\\bm{\\epsilon}\\sim\\mathcal{N}(0,\\bm{I})}LDPM=E(x,y)∼ptrainEt∼Unif(0,1)Eϵ∼N(0,I) (3) ∥Gθ(xt,y,{Hφ(ϕk(y))},αt)−ϵ∥1.\\\|\\mathcal{G}_{\\theta}(\\bm{x}_{t},\\bm{y},\\{\\mathcal{H}_{\\varphi}(\\phi_{k}(\\bm{y}))\\},\\alpha_{t})-\\bm{\\epsilon}\\\|_{1}.∥Gθ(xt,y,{Hφ(ϕk(y))},αt)−ϵ∥1. 由参数θ\\thetaθ参数化的去噪模型预测噪声ϵ\\bm{\\epsilon}ϵ,给定噪声损坏xt\\bm{x}_{t}xt、模糊输入y\\bm{y}y、噪声调度器αt\\alpha_{t}αt以及提出的多尺度引导{Hφ(ϕk(y))}\\{\\mathcal{H}_{\\varphi}(\\phi_{k}(\\bm{y}))\\}{Hφ(ϕk(y))}。总训练损失L=Lguidance+LDPM\\mathcal{L}=\\mathcal{L}_{\\text{guidance}}+\\mathcal{L}_{DPM}L=Lguidance+LDPM,用于以端到端的方式优化引导网络H\\mathcal{H}H、回归层R\\mathcal{R}R和icDPM G\\mathcal{G}G。在推理过程中,模型从高斯噪声开始,并在每个去噪步骤中以模糊输入和多尺度引导为条件,迭代地恢复清晰图像。 ### 4 实验 #### 设置与度量 如上所述,我们特别关注DPMs对未见模糊数据的模型泛化能力。因此,我们在模型仅使用合成成对数据集进行训练,并在几个未见测试集(这些图像可能呈现与域内数据不同的内容和失真)上进行评估的场景下设置实验。作为基准,我们使用广泛采用的运动去模糊数据集GoPro\[57\]作为我们的训练数据,并假设Realblur-J\[67\]、REDS\[56\]和HIDE\[76\]代表未见测试集。 在**GoPro** \[76\]中,提供了3214对模糊/干净训练样本用于训练,并保留1111张图像用于评估。**Realblur-J** \[67\]是一个最近的真实数据集,主要包含具有运动模糊的低光场景,提供了980张测试图像。我们认为它与GoPro存在最大的域差距。**REDS**\[56\]提供了一个互补的视频去模糊数据集,包含更真实的 ===== Page 5 ===== 运动模糊。我们遵循\[56, 6\]并提取300张验证图像用于运动去模糊测试。**HIDE**\[76\]是最常用于测试从GoPro训练获得的模型泛化能力的数据集,包含2025张测试图像。 #### 实现细节 我们的框架在TensorFlow 2.0中实现,并在32个TPU v3核心上训练。我们仅使用回归损失进行预热启动训练,并在前60k次迭代中将去噪损失的权重线性增加到1。训练期间使用Adam优化器\[35\](β1=0.5,β2=0.999\\beta_{1}=0.5,\\beta_{2}=0.999β1=0.5,β2=0.999),在128×128128\\times 128128×128随机裁剪上的批次大小为256。我们在前20k次迭代中使用线性增加的学习率,然后使用恒定学习率1×10−41\\times 10\^{-4}1×10−4。我们为icDPM使用全卷积UNet架构\[90\],以确保模型可用于任意图像分辨率。在推理过程中,我们遵循\[90\]并在不同参数下执行一系列采样。更多细节包含在附录中。 #### 引导的有效性 我们首先通过与基线设置(即标准图像条件DPM,缩写为'icDPM')进行定性比较来验证所提出的引导模块的有效性,我们将在此基线之上引入引导模块(缩写为'icDPM w/ Guide')。**引导**和KID(Kernel Inception Distance)在引导网络输出上进行比较,并与下采样灰度输入进行比较。这表明引入学习的引导可以提供更多与域无关的信息,并有利于模型在未见域上的泛化。在图4中,我们在一个域外输入上展示了不同尺度的多尺度回归输出。结果符合我们的预期,因为每个尺度的灰度预测逐步接近清晰图像。此外,我们在此示例中注意到icDPM存在明显的采样伪影,这些伪影通过提出的引导被有效消除。 \*\*引导与模型容量。\*\*由于引导网络引入了更多参数,我们调查其性能提升是否仅仅源于更大的模型。我们联合分析了不同模型大小(带或不带引导网络)的情况,结果呈现在表2中。我们将GoPro测试集上的结果称为"域内"('In-domain'),将Realblur-J数据集上的结果称为"域外"('Out-of-domain'),使用的是仅在GoPro上训练的单一模型。我们保持构建块的数量不变,仅通过改变卷积滤波器数量来调整网络大小。'-S'和'-L'分别表示较小和较大的模型。我们从不同网络大小下不带所提出引导网络的图像条件DPM(icDPM)开始。在表2行(a)和(b)中,我们观察到通过增加UNet容量,域内去模糊性能在感知和失真质量方面都有显著改善。然而,域外测试结果随着网络增大而变得更差,表明训练过程中可能存在过拟合。通过视觉检查,我们还发现较大的DPM在面对未见数据时容易产生伪影,如图1、4和8所示。通过引入引导网络,我们观察到域内和域外性能都有提升。为了分离引入引导模块的效果,我们还比较了icDPM和带有引导的icDPM在参数量相近的情况下的性能(从(e)到(d),我们通过使用较小的引导模块减少了模型参数)。我们观察到(d) icDPM-L w/ Guide-S与(e) icDPM-L w/ Guide-L在域内和域外性能上结果相当,并且两者都优于icDPM-L。 我们还在图5中展示了一个失真-感知图,其中样本是通过不同的采样参数(即步数和噪声标准差)获得的。与\[90\]类似,我们发现感知质量和失真度量之间存在普遍的权衡。此外,我们观察到在所有采样参数下,所有带引导的模型始终优于基线DPMs。我们在附录中提供了其他数据集的额外结果,并观察到与基线icDPM相比使用引导模块的类似效果和益处。 #### 去模糊结果 我们将我们的去模糊结果与最先进的方法进行比较,大致分为失真驱动模型\[6, 96, 7\]、感知驱动的基于GAN的方法\[37, 38\]以及最近的基于扩散的方法\[90\]。在这项工作中,我们特别强调评估(1)在未见数据上的泛化能力,以及(2)输出的感知质量,愿意在平均失真分数上做出轻微下降以换取失真和感知之间更好的权衡\[4\]。对于基准测试,我们主要考虑结果的感知质量,通过生成模型的标准度量进行量化,包括LPIPS\[102\]、NIQE\[55\]、FID(Frechet Inception Distance)\[19\]和KID(Kernel Inception Distance)\[3\]。为了完整性,我们还给出了失真度量,包括PSNR和SSIM。然而,我们注意到它们与人类感知的相关性较低\[59\],并且最大化PSNR/SSIM会导致视觉感知的妥协\[4\]。我们的方法基于生成模型并执行随机后验采样。训练数据集中提供的参考图像只是其他可能恢复结果中的一种(由于反问题的病态性)。因此,类似于\[4, 61\],我们的结果在像素级平均失真上有所妥协,同时仍然忠实于目标。我们为每个指标突出显示最佳和次佳值。KID值乘以1000以便阅读。 我们首先在表4中展示域内GoPro性能。我们的模型在感知度量上全面达到了最先进的水平,同时通过对多个样本取平均('Ours-SA')保持了具有竞争力的失真度量。此外,我们关注在Realblur-J(表5)、REDS(表7)和HIDE(表6)上的域泛化和域外结果。我们在未见过的Realblur-J数据集上实现了显著更好的感知质量 表3:在GoPro\[57\]、HIDE\[76\]、Realblur-J\[67\]、REDS\[56\]数据集上的平均去模糊结果(使用仅在GoPro\[57\]上训练的模型),表明模型在各种未见数据上的鲁棒性。 | | **Perceptual** | | | **Distortion** | | |---------------------|----------------|----------|----------|----------------|--------| | | LPIPS ↓ | NIQE ↓ | FID ↓ | KID ↓ | PSNR ↑ | | DeblurGAN-v2 \[38\] | 0.149 | 3.42 | 14.57 | 5.28 | 28.09 | | MPRNet \[96\] | 0.140 | 3.70 | 20.22 | 8.49 | 29.78 | | UFormer \[89\] | 0.133 | 3.65 | 18.99 | 8.13 | 30.06 | | Restormer \[94\] | 0.139 | 3.69 | 19.90 | 8.36 | 30.00 | | Ours-SA | 0.124 | 3.64 | 14.36 | 6.79 | 29.98 | | Ours | **0.104** | **2.94** | **8.41** | **2.39** | 28.81 | 表2:所提出的引导在图像条件DPM(icDPM)上的有效性,在不同网络大小下('-S'和'-L'分别指小型和大型网络)。我们展示了域内(在GoPro上训练,在GoPro上测试)和域外(在GoPro上训练,在Realblur-J上测试)的结果。基于(a)-(b),我们观察到更大的icDPM提升了域内性能,但不一定带来更好的域外结果。使用引导©-(d),我们观察到域内和域外性能的一致改善。 | | Guidance network | Diffusion network | #Params | **In-Domain** | | **Out-of-domain** | | |------------------------|------------------|-------------------|---------|---------------|-------------|-------------------|-------------| | | | | | best LPIPS ↓ | best PSNR ↑ | best LPIPS ↓ | best PSNR ↑ | | (a) icDPM-S | - | ch=32 | 6M | 0.077 | 30.555 | 0.150 | 28.209 | | (b) icDPM-L | - | ch=64 | 27M | 0.058 | 32.105 | 0.156 | 27.996 | | © icDPM-S w/ Guide-S | ch=32 | ch=32 | 10M | 0.068 | 31.298 | 0.145 | 28.286 | | (d) icDPM-L w/ Guide-S | ch=32 | ch=64 | 30M | 0.058 | 32.220 | 0.128 | 28.742 | | (e) icDPM-L w/ Guide-L | ch=64 | ch=64 | 52M | **0.057** | **32.254** | **0.123** | **28.711** | 图5:作为表2补充的感知-失真图,在不同采样参数下。在不同网络容量下('-S'和'-L'分别指小型和大型),与icDPM相比,引导机制始终允许获得更好的感知质量和更低的失真。其他数据集的图在补充材料中,我们观察到类似的趋势。 ===== Page 6 ===== 和REDS,以及在HIDE上具有竞争力的结果。此外,我们通过比较它们在所有四个测试集上的平均性能(总结在表3中)来分析性能最佳的单一数据集训练模型的鲁棒性。我们的方法显著提高了感知分数,同时保持了高度竞争力的失真分数,与最佳PSNR相差\<0.08 dB,与平均样本('Ours-SA')的最佳SSIM相差\<0.001。 视觉去模糊示例在图6(GoPro\[57\]和HIDE\[76\])、图7(RealblurJ\[67\])和图8(REDS\[56\])中分别提供。在GoPro(域内)测试示例上,我们发现所有方法都能产生合理的无伪影去模糊结果,而我们的方法生成更清晰、视觉上更真实的结果。在三个域外数据集上,基线方法的性能开始下降。例如,基于GAN的模型\[38\]和先前的基于扩散的模型\[90\]倾向于在域外数据上产生伪影,而最先进的基于回归的模型\[89\]产生过度平滑的结果。我们的公式在不同数据集上表现得更一致更好,显著减少了未见数据上的伪影,具有高感知真实感。更多放大的视觉示例在附录中。 #### 感知研究 我们进一步进行了一项用户研究,让人类受试者验证在未见数据上去模糊性能的感知质量,所有模型均在GoPro上训练 图6:在GoPro\[57\](前两行)和HIDE\[76\](后两行)测试集上的去模糊结果,来自MIMO UNet+ \[7\], DvSR \[90\], UFormer \[89\]和Ours。所有模型仅在GoPro\[57\]训练集上训练。我们的方法生成感知上更清晰的图像,并在应用于未见图像(HIDE)时减少伪影。放大结果见附录。 图7:Realblur-J\[67\]上的测试示例,所有模型仅在GoPro数据集\[57\]上训练。建议电子版查看。我们通过实验发现DeblurGANv2\[38\]和DvSR\[90\]容易产生伪影,而基于回归的UFormer\[89\]产生过度平滑的图像。我们的方法减轻了伪影,并在未见数据上(即使域差距很大)产生高保真的去模糊结果。 ===== Page 7 ===== 并在Relblur-J上测试。我们要求Amazon Mechanical Turk评分者从给定的对中选择质量最好的图像。我们使用了30对唯一的512×512512\\times 512512×512大小的图像,平均了来自25位评分者的750个评分。在表8中,每个值代表评分者更喜欢行模型而不是列模型的次数比例。可以看出,我们的方法优于现有解决方案。此外,值得指出的是,我们的方法带引导机制和不带引导机制(表示为icDPM)的偏好存在显著差距。 #### 额外的建模选择 \*\*引导网络。\*\*我们对引导网络的建模选择进行了额外的消融研究,包括回归目标(RGB vs 灰度)、采用的尺度数量(单一尺度 vs 多尺度)以及融入引导的机制(输入级 vs 潜在空间)。为公平比较,训练期间在不同配置下使用相同的扩散UNet,推理期间使用相同的采样参数。表9 (a) 表示我们不带任何引导的基线icDPM。我们首先比较了在输入级融入引导和在潜在空间融入引导的差异(表9 (b) 和 ©)。在(b)中,我们将回归输出上采样到原始输入大小,并将结果连接到扩散UNet的输入。在©中,我们将回归输出之前的特征图通过上述加法操作融入UNet的潜在空间。结果表明潜在空间引导优于输入级连接。无论是(b)还是©都优于(a),显示了引入引导的整体益处。 我们在行(d)与©的比较中也观察到使用多尺度引导比单尺度引导有适度改进。在行(e)中,我们将回归目标从彩色空间简化为灰度空间,这进一步改善了结果。 \*\*引导操作。\*\*我们对将引导注入icDPM主干的操作进行了消融研究。我们测试了三种不同的可能引导操作,包括加法(我们的最终选择)、连接(concatenation)和自适应组归一化(adaptive group normalization)。表10显示了在GoPro上的去模糊PSNR,其中加法实现了最佳性能。根据经验,我们观察到在我们的用例中自适应归一化倾向于引入伪影。与连接相比,加法更节省内存,并确保引导不能被简单地忽略。 \*\*引导特征的训练目标。\*\*由于我们的目标是通过集成多尺度结构引导来增强icDPM主干的鲁棒条件化机制,我们引入了回归损失来联合训练引导模块和icDPM。我们假设该损失对于确保导出的引导表示保留突出的结构特征同时滤除无关信息至关重要。为了验证我们的假设,我们在没有回归损失的情况下训练了模型,我们观察到GoPro测试集上的PSNR从31.19下降到30.56。这表明回归损失对于有效约束引导的学习至关重要,移除该损失可能使模型等效于只是一个更大的UNet架构。 定性地,我们检查了图9中描绘的学习到的通道级引导特征图。正如预期的那样,这些特征图与边缘和整体结构高度相关,它们为icDPM提供了关于其清晰重建的粗粒度结构的辅助信息,并最终有益于模型的鲁棒性。 ### 5 讨论 我们提出了一种用于icDPM的学习多尺度结构引导机制,它作为一种隐式偏置,增强了其去模糊的鲁棒性。我们承认存在局限性,需要进一步研究。 虽然我们专注于在无需访问大规模真实训练数据的情况下改进模型对未见数据的泛化能力,但我们认识到训练数据的质量和真实性最终限制了模型的能力。在我们的设置中,我们仅限于使用GoPro训练数据集进行基准测试,该数据集没有充分覆盖所有真实场景,例如光线条件差的饱和区域。几乎所有方法在去模糊此类图像上都失败了,示例见附录。我们相信我们的方法可以进一步受益于大规模多样化的训练数据集。此外,我们工作的范围特别针对在icDPM背景下提高去模糊的鲁棒性,其中去模糊任务被表述为*条件生成问题*,类似的想法可以在不同的背景下探索,例如使回归模型更鲁棒。然而,由于引导模块也使用回归目标进行训练,将其附加到回归模型可能会导致参数量增加的单一模型。这种公式以及其他扩展(例如将引导插入其他最先进的回归主干如transformers)需要进一步研究。 **致谢** 合著者Guido Gerig感谢纽约电信先进技术中心(CATT)的支持。 表10:引导操作的消融研究。 | Operation | PSNR | |---------------|------------| | Addition | **31.139** | | Concatenate | 30.248 | | Adaptive norm | 29.676 | 图9:在Realb1ur-J\[67\]的测试图像上的域外去模糊结果(左),以及在尺度k=1k=1k=1(原始输入的1/2大小)上的12个(共64个)选定的通道级引导特征图(右)。 ===== Page 8 ===== 表5:使用GoPro训练模型在Realblur-J\[67\]上的结果。 | | **Perceptual** | | | **Distortion** | | |---------------------|----------------|-----------|-----------|----------------|-----------| | | LPIPS ↓ | NIQE ↓ | FID ↓ | KID ↓ | PSNR ↑ | | UNet \[70\] | 0.175 | 3.911 | 22.24 | 8.07 | 28.06 | | DeblurGAN \[37\] | - | - | - | - | 27.97 | | DeblurGAN-v2 \[38\] | 0.139 | 3.870 | 14.40 | 4.64 | 28.70 | | MPRNet \[96\] | 0.153 | 3.967 | 20.25 | 7.57 | 28.70 | | DvSR \[90\] | 0.153 | 3.277 | 18.73 | 6.00 | 28.02 | | DvSR-SA \[90\] | 0.156 | 3.783 | 20.09 | 7.43 | 28.46 | | Restormer \[94\] | 0.149 | 3.916 | 19.55 | 7.12 | 28.96 | | UFormer-B \[89\] | 0.140 | 3.857 | 18.56 | 7.02 | **29.06** | | Ours-SA | 0.139 | 3.809 | 16.84 | 6.25 | 28.81 | | Ours | **0.123** | **2.976** | **12.95** | **3.58** | 28.56 | 表4:GoPro\[57\]数据集上的图像去模糊结果。 | | **Perceptual** | | | **Distortion** | | |--------------------|----------------|----------|----------|----------------|-----------| | | LPIPS ↓ | NIQE ↓ | FID ↓ | KID ↓ | PSNR ↑ | | HINet \[6\] | 0.088 | 4.01 | 17.91 | 8.15 | 32.77 | | MPRNet \[96\] | 0.089 | 4.09 | 20.18 | 9.10 | 32.66 | | MIMO-UNet+ \[7\] | 0.091 | 4.03 | 18.05 | 8.17 | 32.44 | | SAPHNet \[84\] | 0.101 | 3.99 | 19.06 | 8.48 | 31.89 | | SimpleNet \[44\] | 0.108 | - | - | - | 31.52 | | DeblurGANv2 \[38\] | 0.117 | 3.68 | 13.40 | 4.41 | 29.08 | | DvSR \[90\] | 0.059 | 3.39 | 4.04 | 0.98 | 31.66 | | DvSR-SA \[90\] | 0.078 | 4.07 | 17.46 | 8.03 | **33.23** | | UFormer \[89\] | 0.087 | 4.08 | 19.66 | 9.09 | 32.97 | | Restormer \[94\] | 0.084 | 4.12 | 19.33 | 8.75 | 32.92 | | Ours-SA | 0.078 | 4.10 | 8.69 | 7.06 | 33.20 | | Ours | **0.057** | **3.27** | **3.50** | **0.77** | 31.19 | 表7:使用GoPro训练模型在REDS\[56\]上的结果。 | | **Perceptual** | | | **Distortion** | | |---------------------|----------------|-----------|-----------|----------------|-----------| | | LPIPS ↓ | NIQE ↓ | FID ↓ | KID ↓ | PSNR ↑ | | HINet \[6\] | 0.195 | 3.223 | 21.48 | 7.91 | 26.72 | | DeblurGAN-v2 \[38\] | 0.181 | 3.172 | 14.98 | 5.12 | 27.08 | | MPRNet \[96\] | 0.204 | 3.282 | 23.90 | 8.94 | 26.80 | | Restormer \[94\] | 0.213 | 3.326 | 24.86 | 9.30 | 26.91 | | UFormer-B \[89\] | 0.192 | 3.272 | 21.48 | 7.91 | **27.31** | | Ours-SA | 0.178 | 3.248 | 17.27 | 6.21 | 26.95 | | Ours | **0.147** | **2.610** | **11.91** | **3.51** | 26.36 | 表6:使用GoPro\[57\]训练模型在HIDE\[76\]上的结果。 | | **Perceptual** | | | **Distortion** | | |--------------------|----------------|----------|----------|----------------|-----------| | | LPIPS ↓ | NIQE ↓ | FID ↓ | KID ↓ | PSNR ↑ | | HINet \[6\] | 0.088 | 4.01 | 17.91 | 8.15 | 32.77 | | MPRNet \[96\] | 0.089 | 4.09 | 20.18 | 9.10 | 32.66 | | MIMO-UNet+ \[7\] | 0.091 | 4.03 | 18.05 | 8.17 | 32.44 | | SAPHNet \[84\] | 0.101 | 3.99 | 19.06 | 8.48 | 31.89 | | SimpleNet \[44\] | 0.108 | - | - | - | 31.52 | | DeblurGANv2 \[38\] | 0.117 | 3.68 | 13.40 | 4.41 | 29.08 | | DvSR \[90\] | 0.059 | 3.39 | 4.04 | 0.98 | 31.66 | | DvSR-SA \[90\] | 0.078 | 4.07 | 17.46 | 8.03 | **33.23** | | UFormer \[89\] | 0.087 | 4.08 | 19.66 | 9.09 | 32.97 | | Restormer \[94\] | 0.084 | 4.12 | 19.33 | 8.75 | 32.92 | | Ours-SA | 0.078 | 4.10 | 8.69 | 7.06 | 33.20 | | Ours | **0.057** | **3.27** | **3.50** | **0.77** | 31.19 | 表8:在Realblur-J\[67\]数据集上使用GoPro\[57\]训练模型的人类受试者感知研究。每个值代表评分者更喜欢行模型而不是列模型的次数比例。 | | DGANv2 | UFormer | DvSR | icDPM | Ours-SA | Ours | |---------|----------|----------|----------|----------|----------|------| | DGANv2 | - | 0.28 | 0.43 | 0.56 | 0.26 | 0.17 | | UFormer | 0.72 | - | 0.53 | 0.58 | 0.44 | 0.35 | | DvSR | 0.57 | 0.47 | - | 0.61 | 0.32 | 0.29 | | icDPM | 0.44 | 0.45 | 0.39 | - | 0.28 | 0.23 | | Ours-SA | 0.74 | 0.56 | 0.68 | 0.72 | - | 0.38 | | Ours | **0.83** | **0.65** | **0.71** | **0.79** | **0.62** | - | 图8:**REDS**\[56\]去模糊示例,来自HINet \[6\], DeblurGAN-v2 \[38\], 不带引导的icDPM和Ours(带引导的icDPM)。当仅在GoPro\[57\]上训练时,我们的方法更好地从输入图像中去除模糊痕迹,同时在应用于未见数据时消除伪影。 *** ** * ** *** **附录部分(A-C)主要为图表、详细实现细节、额外消融实验和失败案例分析,翻译核心内容如下:** * **A. 附加结果:** 包含更多失真-感知图(图10)和大量视觉对比示例(图13-32),展示了在GoPro(域内)、HIDE、REDS、Realblur-J(域外)数据集上不同方法的去模糊效果,以及模型在低光/强光等困难场景下的失败案例(图29-32)。 * **B. 附加消融:** * **输入连接 (表11):** 实验表明移除输入级连接会严重损害性能(PSNR和LPIPS下降),因此最终模型保留了输入连接。 * **跨域对齐 (图11):** 尝试在引导特征上使用对抗损失进行域适应(对齐GoPro和Realblur-J的特征分布)反而降低了性能,推测可能是GAN训练不稳定或公式不理想所致。 * **C. 附加实现细节:** * **架构 (图12):** 详细展示了扩散网络(基于\[90\]的全卷积UNet)和引导网络的结构,以及如何将引导特征注入UNet编码器的残差块(Guided Block)。 * **推理 (表12):** 描述了采样参数的网格搜索(扩散步数T和最大噪声方差1-αT)。 * **计算成本 (表13):** 报告了不同模型配置在720x1280x3输入下的FLOPs(单扩散步)。 * **基准结果:** 说明了如何获得对比方法的结果(使用作者提供的代码和预训练模型)。 *** ** * ** *** **参考文献列表 (Pages 10-14)** \[1\] Jeremy Anger, Mauricio Delbracio, and Gabriele Facciolo. Efficient blind deblurring under high noise levels. In *2019 11th International Symposium on Image and Signal Processing and Analysis (ISPA)* , pages 123-128. IEEE, 2019. \[2\] Arpit Bansal, Eitan Borgnia, Hong-Min Chu, Jie S Li, Hamid Kazemi, Furong Huang, Micah Goldblum, Jonas Geiping, and Tom Goldstein. Cold diffusion: Inverting arbitrary image transforms without noise. *arXiv preprint arXiv:2208.09392* , 2022. ... (参考文献列表过长,此处省略,保留原文格式) *** ** * ** *** **结论 (Page 26, 29 - 文本层标识,无实质结论文本)** 图19: **HIDE** \[76\]去模糊示例,来自MPRNet \[96\], MIMO UNet+ \[7\], SAPHNet \[84\], Restormer \[94\], UFormer \[89\], DvSR \[90\]和Ours。 图22: **GoPro \[57\]去模糊示例,来自MPRNet \[96\], MIMO UNet+ \[7\], SAPHNet \[84\], Restormer \[94\], UFormer \[89\], DySR \[90\]和Ours。** 图24: **GoPro \[57\]去模糊示例,来自MPRNet \[96\], MIMO UNet+ \[7\], SAPHNet \[84\], Restormer \[94\], UFormer \[89\], DvSR \[90\]和Ours。** *(附录中的图25-28为Realblur-J结果,图29-32为失败案例)* *** ** * ** ***