All-In-One Image Restoration for Unknown Corruption
Abstract
- 在本文中,我们研究了图像恢复中的一个挑战性问题,即如何开发一种能够从各种未知损坏类型和程度中恢复图像的一体化方法。为此,我们提出了一种一体化图像恢复网络(AirNet),由两个神经模块组成,称为基于对比的退化编码器(CBDE)和退化引导恢复网络(DGRN)。AirNet 的主要优势有两个方面。首先,它是一种一体化解决方案,可以在一个网络中恢复各种退化图像。其次,AirNet 不受损坏类型和级别的先验影响,仅使用观察到的损坏图像进行推理。这两个优势使 AirNet 在现实世界场景中享有更好的灵活性和更高的经济性,其中损坏的先验很难知道,并且退化会随着空间和时间而变化。大量的实验结果表明,所提出的方法在四个具有挑战性的数据集上优于 17 个图像恢复基线。代码可在 https://github.com/XLearning-SCU/2022-CVPR-AirNet 上找到。
- 论文地址:Li_All-in-One_Image_Restoration_for_Unknown_Corruption_CVPR_2022_paper.pdf (thecvf.com)。CVPR-2022
Introduction
-
单幅图像复原旨在从给定的劣化对应关系(例如嘈杂、下雨或朦胧的图像)中生成视觉上令人愉悦的高质量图像。在过去的几年中,图像复原已广泛应用于从自动驾驶到医学成像和监控等许多现实世界应用中。尽管在去噪、去模糊、去雨和去雾等特定领域已经取得了有希望的成果,但图像恢复在实践中遇到了以下障碍。一方面,有必要了解正确的损坏(即退化)以选择有竞争力的模型,因为几乎所有现有方法都只能处理特定的退化。一旦退化类型甚至损坏率发生变化,由于实际情况与模型构建或训练所采用的先验不一致,模型将获得不理想的性能。
-
另一方面,退化通常会在复杂的环境中发生变化,例如,自动驾驶汽车可能会连续甚至同时遭遇阴雨天气。总之,人们非常希望开发一种能够从各种未知(请注意,在本文中,“未知”指的是非特定的而不是看不见的损坏,“多重退化”是指给定的图像仅包含一个退化,但数据集将包含多个退化)损坏类型和程度中恢复图像的一体化方法,如下图 所示。据我们所知,到目前为止,这种不具体的图像恢复问题几乎没有被触及。
-
-
我们的基本思想的说明。如图所示,大多数现有的多重降级方法通过将输入发送到专门设计的头部并使用相应尾部的输出来处理每个损坏。因此,它们需要提前获取损坏信息以指定校正的头部和尾部。不同的是,我们的一体化图像恢复网络(AirNet)不受损坏类型和级别的先验限制,因此在现实世界场景中具有更好的灵活性和更高的经济性。
-
-
为了解决上述问题,我们提出了由两个模块组成的一体化图像恢复网络(AirNet)。具体而言,基于对比的退化编码器(CBDE)旨在通过利用具有相同退化的图像的一致性和不同退化中存在的不一致性来学习退化表示。在CBDE学习到的退化表示的指导下,退化引导恢复网络(DGRN)旨在恢复具有各种退化的图像。得益于CBDE和DGRN的结合,AirNet享有两个备受期待的优点,即i)它提供了一个一体化解决方案来恢复具有不同损坏类型和比率的图像;ii)它不受损坏类型和比率的先验知识的限制。值得注意的是,所提到的一体化解决方案在某些方面不同于现有的所谓的统一图像恢复方法。一方面,其他方法必须指定损坏类型和比率,而我们的方法则不需要。另一方面,它们通常将多个退化视为具有多个输入和输出头的多任务学习问题,其中每个输入和输出头对应于具有给定损坏率的预定损坏。相比之下,AirNet 是一个单通道网络,不区分不同的损坏类型和比率,因此具有更好的灵活性和更高的经济性。综上所述,本研究的贡献和创新之处如下:
- 据我们所知,AirNet 可能是首批以一体化方式从多个损坏中恢复图像的方法之一。由于我们的方法不需要任何降级信息来提前恢复,因此它可能更接近现实世界的情况。
- AirNet 采用双重方式工作,即从观察到的图像中对比学习退化表示,然后使用学习到的退化表示恢复干净的图像。需要指出的是,对比学习的成功在很大程度上依赖于正负对的构建。在本文中,我们展示了一种新方法,该方法可以有效捕捉多重退化的遗传特征。
- 在不失普遍性的前提下,我们进行了大量实验来验证 AirNet 在去噪、去雨和去雾方面的有效性,并与 17 条基线进行了比较。
Related Works
- 在本节中,我们将简要回顾本文涉及的问题和方法的一些最新发展,即图像恢复和对比学习。
Image Restoration
-
根据本文的重点,现有的图像恢复方法可以分为两类,即单次退化图像恢复(IRSD)和多次退化图像恢复(IRMD)。
-
单一退化的图像恢复:IRSD 旨在从仅被具有固定损坏率的特定退化类型破坏的退化观测中恢复干净的图像。例如,作为开创性的深度去噪方法之一,DnCNN 无法处理多退化情况,即使在训练期间未见噪声比也会失败。其他图像恢复任务也面临着类似的挑战,例如去模糊、去雨 和去雾。最近,一些研究显示出对不同退化的一定通用性。然而,他们需要针对不同的退化训练不同的模型,这并不是实践中预期的一体化解决方案。
-
多重退化图像恢复:最近,一些研究 通过采用多输入和输出网络结构将注意力转向 IRMD。例如,[All in One Bad Weather Removal using Architectural Search] 提出了一种一体化模型来处理多种恶劣天气退化(例如雨、雾和雪),每种退化都由一个编码器专门处理。Chen 等人 [Pre-Trained Image Processing Transformer] 提出了一种基于 Transformer 的图像恢复方法,该方法使用多头和多尾架构来处理多重退化。与我们的方法最相似的方法可能是 [A General Decoupled Learning Framework for Parameterized Image Operators]。然而,该方法仍然需要知道输入的一些先验(例如噪声比和 JPEG 质量),以便以元学习的方式参数化网络。总而言之,尽管上述方法已经朝着 IRMD 迈进了一步,但它们仍然需要提前获得退化信息,以便将输入发送到校正头或生成元信息。
Contrastive Learning
- 对比学习是最先进的无监督表示学习方法,旨在最大化正对之间的相似性,同时最小化负对之间的相似性,其中正对和负对是通过数据增强获得的。最近,一些研究表明对比学习在图像恢复中的有效性。值得注意的是,尽管 DASR 和我们的 AirNet 都利用对比学习来捕获退化信息,但它们在某些方面存在显著差异。首先,正对和负对的定义不同。事实上,对比学习的成功很大程度上依赖于正对和负对的构建,因此这是许多研究的重点 。其次,任务不同。简而言之,DASR 是专门为图像超分辨率设计的,而 AirNet 则被提出以一体化方式处理多重退化。第三,尽管任务不同,DASR 需要指定图像超分辨率尺度,而 AirNet 不需要任何退化参数。
The Proposed Method
- 在本节中,我们详细阐述了所提出的方法,该方法由基于对比的退化编码器(CBDE,fC (·))和退化引导恢复网络(DGRN,fD(·))组成,如图 2 所示。
-
-
所提出的 AirNet 的架构。(a)一体化图像恢复网络 (AirNet);(b)基于对比的退化编码器 (CBDE);(c)退化引导组 (DGG);(d)退化引导模块 (DGM)。
-
- 对于给定的退化图像 x,AirNet 首先将其输入 f C ( ⋅ ) f_C (·) fC(⋅) 以学习潜在退化表示 z = f C ( x ) z = f_C (x) z=fC(x)。然后,x 和 z 进一步通过 $f_D(·) $ 以获得恢复的图像 y ′ = f D ( x , z ) y ' = f_D(x, z) y′=fD(x,z)。在不失普遍性的前提下,我们在本文中以三种流行的退化作为展示,即噪声、雾霾和雨水。接下来,我们将首先介绍整体损失函数,然后详细说明具有相应损失的两个子网络。
The Objective Function
-
为了消除观察到的图像中的损坏,我们提出以下目标函数:
-
L = L R e c + L c l L = L_{Rec} + L_{cl} L=LRec+Lcl
-
其中 L R e c L_{Rec} LRec 是真实图像 y 与恢复的干净图像 y’ 之间的重建损失。第二个损失 L c l L_{cl} Lcl 是 CBDE 的对比损失。
-
-
对于给定的退化图像 x, L R e c L_{Rec} LRec 旨在通过 AirNet 最小化 y 与恢复的干净图像 $y’= f(x) $之间的 L1 距离。从数学上讲,
-
L R e c = 1 T ∑ i = 1 T ∣ f ( x i ) − y i ∣ L_{Rec} = \frac1 T\sum_{i=1}^ T |f(x_i) − y_i| LRec=T1i=1∑T∣f(xi)−yi∣
-
其中 T 是 x 像素的数量,i 是像素的索引。
-
-
与 L R e c L_{Rec} LRec 不同的是, L c l L_{cl} Lcl 是 CBDE 的特定损失,旨在学习不同退化的表示,同时保留它们可能存在的差异。更多细节将在第 3.2 节中介绍。
Contrastive-Based Degradation Encoder
-
基于对比的退化编码器旨在从输入 x 中提取潜在退化表示 z。为了使 AirNet 能够解决多个非特定退化问题,z 需要具备以下两个属性。首先,z 应该适应不同的退化。换句话说,对于具有不同退化的输入,即使图像内容相同,相应的 z 也应该不同。为此,我们利用对比学习来学习 z,通过最大化具有相同退化的两个输入(即正样本)的一致性,同时最小化不同退化(即负样本)之间的一致性。具体来说,对于退化表示 q , k + 和 k i − q,k^+ 和 k^−_i q,k+和ki− 分别是相应的正样本和负样本。然后,Lcl 可以重新表述为,
-
L c l = − l o g e x p ( q ⋅ k + / τ ) ∑ i = 0 K e x p ( q ⋅ k i − / τ ) , ( 3 ) L_{cl} = − log\frac {exp(q · k ^+/τ ) }{\sum ^K _{i=0} exp(q · k^ − _i /τ )},(3) Lcl=−log∑i=0Kexp(q⋅ki−/τ)exp(q⋅k+/τ),(3)
-
其中 τ 是温度超参数,K 表示负样本的数量。
-
-
具体来说,对于给定的输入 x,我们从 x 中随机裁剪两个块,分别命名为 x q 和 x k + x_q 和 x_{k+} xq