Real-World Blur Dataset for Learning and Benchmarking Deblurring Algorithms
用于学习和评估去模糊算法的真实世界模糊数据集
摘要
近年来,针对相机抖动和物体运动模糊的单幅图像去模糊提出了许多基于学习的方法。为了将这些方法推广到真实世界的模糊场景,包含大量真实模糊图像及其对应的清晰真实图像(ground truth)的数据集至关重要。然而,目前尚不存在这样的数据集,因此所有现有方法都依赖于合成数据集,这导致它们无法有效去除真实世界图像的模糊。在本工作中,我们提出了一个用于学习和评估单幅图像去模糊方法的大规模真实世界模糊图像和清晰真实图像数据集。为了收集我们的数据集,我们构建了一个图像采集系统来同时捕获几何对齐的模糊-清晰图像对,并开发了一种后处理方法来生成高质量的清晰真实图像。我们分析了我们后处理方法的效果以及现有去模糊方法的性能。我们的分析表明,我们的数据集显著提高了对真实世界模糊图像的去模糊质量。
1 引言
在夜晚或暗室等低光照环境下拍摄的图像,由于相机需要较长的曝光时间,常常会受到相机抖动或物体运动引起的运动模糊影响。这种运动模糊严重降低了图像质量以及其他计算机视觉任务(如物体识别)的性能。因此,图像去模糊(即从模糊图像中恢复清晰图像的问题)已经被广泛研究了数十年 [12, 38, 7, 45, 46, 33, 40, 6]。
最近,一些基于深度学习的方法 [31, 42, 21, 22] 被提出并显示出显著的改进。为了学习对真实世界模糊图像进行去模糊,它们需要大规模的真实世界模糊图像及其对应的清晰真实图像数据集。然而,由于获取真实世界数据的困难,迄今为止尚不存在这样的数据集,这迫使现有方法只能使用合成数据集,例如 GoPro 数据集 [31]。因此,正如我们实验所示,它们无法很好地泛化到真实世界的模糊图像。
开发真实世界模糊数据集的主要挑战在于,模糊图像及其清晰真实图像的内容在模糊存在的情况下应保持几何对齐。这意味着两张图像应当在相同的相机位置拍摄,而这很困难,因为拍摄模糊图像时相机必须抖动。此外,用于图像去模糊的真实世界模糊数据集应满足以下要求:首先,数据集应覆盖相机抖动最常见的场景,即运动模糊最常发生的低光照环境。其次,清晰真实图像应尽可能少噪。最后,模糊图像和清晰真实图像应保持光度对齐。
在本文中,我们提出了第一个用于学习和评估单幅图像去模糊方法的大规模真实世界模糊图像数据集,命名为 RealBlur。我们的数据集包含两个共享相同图像内容的子集,一个子集由相机原始 RAW 图像生成,另一个由相机 ISP 处理后的 JPEG 图像生成。每个子集提供 232 个低光照静态场景的 4,556 对模糊和清晰真实图像。数据集中的模糊图像由相机抖动引起,并在夜晚街道、室内房间等低光照环境下捕获,以覆盖运动模糊最常见的场景。为了解决几何对齐的挑战,我们构建了一个图像采集系统,能够同时捕获几何对齐的一对模糊和清晰图像。我们还开发了一种后处理方法来生成高质量的清晰真实图像。
利用 RealBlur 数据集,我们提供了多种分析。我们分析了几何对齐的精度及其对图像去模糊学习的影响。我们评估了现有合成数据集以及我们自己的数据集,并寻求最佳的训练策略。我们还对现有去模糊方法进行了基准测试并分析了它们的性能。我们的分析表明,RealBlur 数据集极大地提高了基于深度学习的去模糊方法在真实世界模糊图像上的性能。该分析还表明,用我们数据集训练的网络能够很好地泛化到包含运动物体的动态场景。
2 相关工作
单幅图像去模糊。 传统的去模糊方法 [12, 38, 7, 45, 46, 33, 40, 6, 24, 25] 通常使用卷积操作对图像模糊进行建模:
b=k∗l+n,(1)b=k*l+n,(1)b=k∗l+n,(1)
其中 bbb、lll 和 nnn 分别表示模糊图像、潜在清晰图像和加性噪声。∗*∗ 是卷积运算符,kkk 是模糊核。基于此模型,先前的方法通过求解逆问题从 bbb 中找出 kkk 和 lll。不幸的是,由于模糊模型的限制和逆问题的不适定性,它们通常无法处理真实世界的模糊图像。为了处理更真实的模糊,一些使用扩展模糊模型的方法被提出,但由于逆问题固有的不适定性(非唯一 不稳定),它们的性能仍然有限 [18, 44, 8, 14, 17, 19]。
最近的基于深度学习的方法 [31, 42, 21, 22] 通过从大量数据中学习从模糊图像到其对应清晰图像的映射来克服这些限制。然而,由于缺乏真实世界的模糊数据集,它们的性能受到限制。最近,一些基于无监督学习的方法被提出,它们不需要几何对齐的模糊和清晰图像进行学习 [28, 27]。然而,由于它们依赖于生成对抗网络 [13],它们仅限于特定领域,例如人脸和文本。
去模糊数据集。 随着去模糊方法的发展,也提出了几个数据集。然而,它们大多并非为学习而设计,而是用于评估去模糊算法。Levin 等人 [24] 提出了一个包含 323232 幅由真实相机抖动模糊的图像的数据集。Sun 等人 [40] 引入了一个从 808080 幅自然图像和八个模糊核生成的合成数据集。Köhler 等人 [20] 引入了一个包含 484848 幅由真实相机抖动引起空间变化模糊的图像的数据集。所有这些数据集规模太小,无法训练神经网络,并且由于是合成生成或在受控实验室环境中捕获,因此不够真实。Lai 等人 [23] 引入了一个包含 100100100 幅真实模糊图像的数据集用于评估去模糊方法。然而,他们的数据集不提供清晰真实图像,而这对学习图像去模糊至关重要。
最近,提出了几个用于学习图像去模糊的合成数据集 [31, 30, 32, 39, 51]。为了合成生成模糊图像,它们使用高速相机捕获清晰视频帧并进行混合。所得图像具有由空间变化的相机抖动和物体运动共同引起的模糊。然而,由于高速相机极短的曝光时间,所有清晰帧都是在光照良好的环境下捕获的,这对于运动模糊的发生是不现实的。此外,混合清晰帧无法完美模拟真实模糊图像的长曝光时间,因为相邻视频帧之间存在时间间隔且动态范围有限(动态范围有限是指图像传感器或显示设备在捕捉或再现场景亮度范围时的能力受限,无法完整覆盖从最暗到最亮的亮度层次)。因此,用它们训练的网络无法很好地泛化到在低光照环境下捕获的真实世界模糊图像,如第 5 节所示。
混合成像。 我们的图像采集系统受到先前混合成像方法的启发。Ben-Ezra 和 Nayar [2] 提出了一种配备额外高速低分辨率相机来捕获相机运动的混合相机系统。Tai 等人 [41] 将该方法扩展到处理空间变化的模糊。Li 等人 [26] 提出了一种用于运动去模糊和深度图超分辨率的混合相机系统。Yuan 等人 [47] 和 Sorel 等人 [52] 使用曝光包围拍摄一对有噪和模糊图像,用于精确估计模糊核。然而,所有这些方法都是为模糊核估计设计的,既不提供高质量的清晰真实图像,也没有像我们这样复杂的后处理方法。
图 1: GoPro 数据集 [31] 中 (a)(a)(a) 和 (c)(c)(c) 的合成模糊图像是在光照良好的环境下捕获的,具有不真实的不连续模糊。由于清晰图像的动态范围有限,混合清晰图像无法模拟在真实世界模糊图像(如 (e))中经常观察到的饱和光条纹。
3 图像采集系统与流程
3.1 图像采集系统
为了同时捕获模糊和清晰图像,我们构建了一个双相机系统(图 2)。我们的系统由一个分束器(beam splitter)和两个相机组成,使相机能够捕获相同的场景。相机和分束器安装在一个光学外壳中,以保护它们免受来自观察方向之外的光线干扰。一个相机以低快门速度捕获模糊图像,而另一个相机以高快门速度捕获清晰图像。两台相机及其镜头型号相同(Sony A7RM3, Samyang 14mm F2.8 MF)。相机通过多相机触发器同步以同时捕获图像。我们的系统设计采用配备全画幅传感器和广角镜头的高端无反相机,基于以下原因:首先,我们希望将传统相机的机内处理反映到我们的数据集中,因为经过相机 ISP 处理的模糊 JPEG 图像比原始图像更常见。其次,全画幅传感器和广角镜头比小型传感器和窄角镜头能收集更多光线,因此能更有效地抑制噪声。广角镜头也有助于避免散焦模糊,这可能对运动去模糊的学习产生不利影响。
相机尽可能进行物理对齐。为了评估相机的对齐情况,我们进行了立体标定 [50, 15] 并估计了相机之间的基线。估计的基线为 8.22 毫米,对应于在全分辨率下距离相机 7.8 米以外的物体视差小于 4 个像素,而在我们最终下采样 1/41/41/4 的数据集中,视差小于 1 个像素。
3.2 图像采集流程
使用我们的图像采集系统,我们捕获了各种室内和室外场景的模糊图像。对于每个场景,我们首先捕获一对两个清晰图像,称为参考对(reference pair),它们将在后处理步骤中用于模糊和清晰图像的几何和光度对齐。然后,我们捕获同一场景的 20 对模糊和清晰图像,以增加图像数量和相机抖动的多样性。对于参考对,我们将快门速度设置为 1/80 秒,并调整 ISO 和光圈大小以避免相机抖动引起的模糊。然后,我们使用相同的相机设置让一台相机捕获清晰图像,同时将另一台相机的快门速度设置为 1/2 秒,并将 ISO 值调整为参考 ISO 值的 1/40,以捕获相同亮度的模糊图像。为了捕获多样化的相机抖动,我们对一些图像保持系统静止,对其他图像则随机移动系统。在这两种情况下,由于长曝光时间都会获得模糊图像。我们捕获了 232 个不同场景的 4,738 对图像(包括参考对)。我们以相机原始格式和 JPEG 格式捕获所有图像,并生成了两个数据集:从原始图像生成的 RealBlur-R,以及从 JPEG 图像生成的 RealBlur-J。图 3 展示了 RealBlur 数据集中模糊图像的样本。
4 后处理
捕获的图像对经过后处理以进行降噪、几何对齐和光度对齐。图 4 展示了我们后处理的概览。我们首先简要说明 RealBlur-R 的后处理流程。对于每对清晰和模糊图像,我们首先应用白平衡和去马赛克(demosaicing)。对于白平衡,我们使用从相机获取的白平衡参数。对于去马赛克,我们使用自适应同质性导向的去马赛克方法 [16]^3。由于我们使用了分束器和光学外壳以及广角镜头,图像边界处存在无效区域,这些区域捕获了分束器外部或光学外壳内部的内容。因此,我们裁剪掉这些无效区域。然后,我们使用在单独标定步骤 [15] 中估计的畸变参数来校正裁剪后图像的镜头畸变。接着,我们对图像进行下采样,并对下采样后的清晰图像进行去噪。最后,我们执行几何和光度对齐。来自相机的图像在裁剪后和下采样后的尺寸分别为 7952×53047952\times53047952×5304、2721×30942721\times30942721×3094 和 680×773680\times773680×773 像素。对于 RealBlur-J,我们遵循相同的流程,只是省略了白平衡、去马赛克和去噪步骤,因为这些操作由相机 ISP 执行。在下文中,我们将更详细地解释下采样、去噪以及几何和光度对齐步骤。
4.1 下采样与去噪
在下采样步骤中,我们在每个轴上将图像下采样 1/41/41/4。下采样有三个目的:首先,虽然现代相机的图像分辨率非常高,但即使是最新的基于深度学习的去模糊方法也无法处理如此高分辨率的图像。其次,由于我们使用高 ISO 值来捕获清晰图像,它们具有放大的噪声,这可能对使用清晰图像进行去模糊方法的训练和评估产生不利影响。下采样可以通过平均相邻像素强度来减少此类噪声。第三,由于我们图像采集系统中的相机对齐并非完美,清晰和模糊图像之间可能存在少量视差,下采样也能有效减少这种视差。
虽然我们通过下采样减少了噪声,但下采样后的图像可能仍有残留噪声。为了进一步降噪,我们在去噪步骤中对清晰图像应用去噪。对于每幅清晰图像,我们使用 Chen 等人 的方法 [5] 估计噪声量。然后,我们应用 BM3D 去噪方法 [10],将噪声水平参数设置为估计噪声水平的 1.5 倍。我们只对清晰图像进行去噪。对于模糊图像,噪声不是问题,因为在低光照条件下捕获的图像自然会有噪声,并且使用有噪模糊图像训练的网络将同时学习去噪和去模糊。
4.2 几何对齐
尽管我们的图像采集系统在物理上对齐良好,但仍存在一定程度的几何错位(图 5(a))。此外,由于相机抖动,相机的位置可能会随时间发生轻微变化。为了解决这个问题,我们执行了一个精心设计的几何对齐流程,包含三个步骤。
图 5: 几何对齐。每个对齐结果以立体红青图像(stereo-anaglyph)形式显示,其中清晰和模糊图像分别以红色和青色显示,并相互叠加。模糊图像由于相机抖动而具有轻微的非均匀模糊,因此青色光条纹的形状在不同区域有所不同。
第一步,我们使用单应性(homography)对每对模糊和清晰图像进行粗略对齐。由于模糊的存在,从一对模糊和清晰图像估计单应性很困难,因此我们使用与目标模糊-清晰图像对对应的参考对估计的单应性。对于单应性估计,我们使用增强相关系数方法 [11],因为它对光度错位具有鲁棒性。请注意,由于我们系统的基线短以及下采样步骤使得两幅图像之间的视差基本可忽略,因此使用单个单应性进行几何对齐是可行的。
即使在应用单应性对齐之后,由于模糊和清晰图像具有不同的快门速度,它们之间仍可能存在微小错位。具体来说,虽然我们系统中的多相机触发器使快门同步开启,但由于快门速度不同,它们关闭的时刻也不同。因此,当一台相机的快门关闭后,另一台相机仍在移动中捕获入射光,导致模糊和清晰图像之间出现错位。结果,简单地应用参考对的单应性会导致清晰图像中的物体对齐到模糊图像中相应模糊物体的角落,而不是中心(图 5(b))。
因此,在第二步中,我们估计每对模糊和清晰图像之间的剩余错位,并对齐它们。为此,我们使用一种基于相位相关(phase correlation)的方法 [35],它能够在模糊存在的情况下鲁棒地估计相似变换(similarity transform)(关于其对相机抖动的鲁棒性分析,请参见补充材料)。图 5© 显示了基于相位相关对齐的示例,其中红色和青色光反射更好地对齐,因此显得更亮。
然而,基于相位相关的对齐无法将模糊和清晰图像中的内容相对于它们的中心对齐。因此,在第三步中,我们对齐模糊和清晰图像以匹配它们的中心。我们的第三步受到传统基于模糊模型去模糊方法的启发。传统的基于模糊模型的方法,如 [37, 4, 9],经常将图像或模糊核相对于模糊核的质量中心(质心)对齐,以使它们的去模糊结果与模糊输入图像对齐。遵循此类方法,我们在一个额外的对齐步骤中,将图像对齐,使得清晰图像中物体的中心与其在模糊图像中对应物体的中心相匹配。为此,我们假设场景是静态的且相机抖动近似空间不变,使用对应的清晰图像来估计模糊图像的模糊核。遵循传统的模糊核估计方法 [7, 46, 6],我们通过最小化以下能量函数来估计模糊核 kkk:
E(k)=∥k∗∇s−∇b∥2+λ∥∇k∥2E(k)=\|k*\nabla s-\nabla b\|^{2}+\lambda\|\nabla k\|^{2}E(k)=∥k∗∇s−∇b∥2+λ∥∇k∥2 (2)
其中 sss 和 bbb 分别是清晰和模糊图像,∇\nabla∇ 是梯度算子。λ\lambdaλ 是正则化权重,我们在实验中设置 λ=103\lambda=10^{3}λ=103。然后,我们计算估计模糊核 kkk 的质心,并通过根据质心平移清晰图像来对齐清晰图像(图 5(d))。如第 5.1 节所示,基于质心的对齐有效地减少了去模糊所需的感受野大小,并实现了去模糊的有效学习。
请注意,我们几何对齐中的每个步骤对于精确对齐都是必不可少的,因为它们提供了不同的特性。基于参考对的第一步可以使用单应性对齐图像,但精度较低。第二步在模糊存在的情况下提高了对齐精度,但仅限于相似变换。第三步可以基于质心精确对齐图像,但仅限于平移。每个步骤的效果将在第 5.1 节中分析。
4.3 光度对齐
尽管我们使用相同型号的相机和镜头,它们的图像可能存在轻微的强度差异。为了解决这个问题,我们遵循 [34, 3, 1] 的方法,基于线性模型执行光度对齐。具体来说,对于几何对齐后的清晰和模糊图像 sss 和 bbb,我们通过应用线性变换 αs+β\alpha s+\betaαs+β 来光度对齐 sss 到 bbb,使得 αs+β≈b\alpha s+\beta\approx bαs+β≈b。系数 α\alphaα 和 β\betaβ 由于 bbb 中的模糊而难以直接从 sss 和 bbb 估计。因此,我们从与 sss 和 bbb 对应的参考对中估计它们。具体地,α\alphaα 和 β\betaβ 估计为 α=σ1/σ2\alpha=\sigma_{1}/\sigma_{2}α=σ1/σ2 和 β=μ1−αμ2\beta=\mu_{1}-\alpha\mu_{2}β=μ1−αμ2,其中 σ1\sigma_{1}σ1 和 σ2\sigma_{2}σ2 是参考图像的标准差,μ1\mu_{1}μ1 和 μ2\mu_{2}μ2 是它们的均值。对于彩色图像,我们独立地对每个颜色通道应用光度对齐。
5 实验
在本节中,我们分析我们的数据集并验证其对图像去模糊的效果。我们还在真实世界模糊图像上对现有去模糊算法进行基准测试,并研究我们数据集的效果。其他示例和分析,例如我们数据集中模糊大小的分布,以及对其他相机捕获图像的泛化能力,可以在补充材料中找到。包括数据集在内的所有数据都可以在我们的项目网页^4 上获取。http://cg.postech.ac.kr/research/realblur/**
数据集和评估指标。 为了进行基准测试,我们从 RealBlur-R 和 RealBlur-J 中随机选择 182 个场景作为训练集,剩余的 50 个场景作为测试集。每个训练集包含 3,758 对图像(包括 182 个参考对),而每个测试集包含 980 对图像(不含参考对)。我们在训练集中包含参考对,以便网络可以学习对清晰图像的恒等映射(identity mapping)。除了 RealBlur,我们还考虑了两个现有的去模糊数据集:GoPro [31] 和 Köhler 等人 的 [20]。GoPro 数据集是最近基于深度学习的方法最广泛使用的数据集,它是一个通过混合高速相机捕获的清晰视频帧生成的合成数据集。GoPro 数据集为其训练集和测试集分别提供 2,103 和 1,111 对模糊和清晰图像。Köhler 等人 的数据集是一个小规模的、包含真实相机抖动的图像集,这些图像在受控的实验室环境中捕获。我们还考虑另一个纯合成数据集,它是从 BSD500 分割数据集 [29] 生成的,具体方式如下:
对于 BSD500 中的每幅图像,我们使用 Schmidt 等人 的方法 [36] 随机生成 40 个合成均匀运动模糊核,并将图像与它们进行卷积以获得 20,000 幅模糊图像。然后,清晰图像和模糊图像相对于模糊核的质心进行对齐。在本节的其余部分,我们将此数据集称为 BSD-B。
即使成功去除了模糊,去模糊也可能产生错位的结果。为了在测量去模糊结果相对于清晰真实图像的质量时处理这种错位,我们在所有实验中采用类似于 Köhler 等人 [20] 的方法。我们首先使用增强相关系数方法 [11] 估计的单应性将去模糊结果与其清晰真实图像对齐,然后计算 PSNR 或 SSIM [43]。
5.1 几何对齐分析
几何对齐的效果。 我们分析了相对于模糊核质心的几何对齐对去模糊学习的影响。恢复一个清晰像素需要来自模糊图像中邻近像素的信息,这为去模糊所需的感受野大小设定了一个下界。使用模糊核的质心进行对齐可以有效地减少所需的感受野大小,并简化网络的训练,同时在视觉上匹配模糊图像内容与其相应清晰内容的中心。另一种可能更优的减少所需感受野大小的方法是将图像对齐到其模糊核非零元素的中心,因为这是离所有非零核元素最近的点(图 6(a))。为简洁起见,我们将非零元素的中心称为非零中心(non-zero center)。然而,我们发现这种方法不如使用质心有效,如下所述。虽然原因尚不清楚,但我们推测这是因为质心是信息量上最中心的位置,在那里我们可以最有效地利用邻近像素的信息。
为了验证基于质心对齐的有效性,我们进行了一个简单的实验。我们从 BSD-B 生成三个不同对齐方式的数据集:使用相位相关 [35] 估计的平移对齐、对齐到非零中心、以及对齐到质心。我们分别使用这三个数据集训练 SRN-DeblurNet [42](一种最先进的基于深度学习的去模糊方法),并比较它们在 Köhler 等人 数据集 [20] 上的性能。基于相位相关、非零中心和质心的数据集的平均 PSNR 值分别为 26.48、27.80 和 28.07 dB。此外,如图 6(b) 所示,基于质心的对齐也带来了最高效的训练。这一结果证明,我们后处理中基于模糊核质心的对齐对于图像去模糊的有效学习至关重要。
几何对齐精度。 我们的几何对齐基于几个假设。首先,一对模糊和清晰图像可以用单个单应性对齐。其次,模糊图像具有近乎均匀的模糊,因此可以使用单个模糊核对齐图像。由于违反其中任何一个假设都可能降低我们几何对齐的精度,我们验证了最终数据集是否精确对齐。由于没有真实的几何对齐信息,我们间接计算每对图像的平均位移误差如下:对于每对已对齐的模糊和清晰图像,我们首先将它们划分为 2×22\times22×2 的规则网格。对于每个网格单元,我们通过求解公式 (2) 来估计局部模糊核。然后,我们计算估计模糊核的质心。如果模糊和清晰图像无法使用单个单应性对齐,或者模糊图像具有空间变化的模糊,则质心将偏离模糊核的中心。因此,我们计算质心与局部模糊核图像中心之间的位移作为位移误差。
表 1 显示,经过我们的几何对齐后,我们数据集的平均位移误差仅为不到 1 个像素。该表还显示了其他变体几何对齐流程的平均位移误差,以验证每个组件的效果。如表所示,使用参考对单应性对齐的图像对由于快门速度不同而具有较大的位移误差(第 1 行)。它还表明基于模糊核的对齐显著减少了误差(第 2 行),而基于相位相关的对齐进一步提高了精度(第 3 行)。
由于我们可以估计局部模糊核,我们可以直接使用它们进行几何对齐。例如,我们可以计算从 2×22\times22×2 网格估计的局部模糊核的质心,然后从中推导出一个单应性(而不是全局平移)来对齐图像。然而,我们发现这种方法对我们的数据集可靠性较低,并导致更大的误差,因为模糊核估计在无纹理图像区域或具有饱和像素的图像区域上不可靠。因此,我们设计了我们的几何对齐流程来估计一个单一的全局模糊核,这可以更可靠地估计。
5.2 基准测试
数据集比较和训练策略。 在对现有去模糊方法进行基准测试之前,我们首先将我们数据集的性能与其他数据集进行比较,并寻找训练去模糊网络的最佳策略。具体来说,我们使用不同的训练集(包括我们的数据集)的几种可能组合,准备不同训练的去模糊网络模型。然后,我们研究它们在不同测试集上的性能。为了评估,我们使用 SRN-DeblurNet [42]。由于使用 GoPro 数据集训练的 SRN-DeblurNet 预训练版本已经可用,我们也将其纳入我们的实验。关于训练的详细信息,请读者参考补充材料。
表 2 和表 3 显示了不同训练集组合在不同测试集上的性能。“预训练”(Pre-trained)列表示网络是从使用 GoPro 数据集的预训练权重开始训练,还是从头开始训练(scratch)。表格显示,GoPro 数据集(表 2 和表 3 的第 1 行)在 RealBlur 测试集上取得的性能通常低于其他组合,这证明 GoPro 数据集不够真实,无法覆盖真实世界的模糊图像。BSD-B 数据集(表 2 和表 3 的第 2 行)在 RealBlur 测试集上也取得了较低的性能,但在 Köhler 等人 的测试集上取得了较高的性能,这可能是因为 Köhler 等人 的数据集接近合成数据,其图像是在受控实验室环境中捕获的。另一方面,我们的训练集(表 2 和表 3 的第 3 行)在 RealBlur 测试集上取得了更高的性能,这验证了真实世界模糊训练数据的必要性。
表 2: 不同数据集的性能比较。我们使用不同的训练集训练了 Tao 等人 [42] 的去模糊网络并测量了其性能。
训练集 | 测试集 (PSNR/SSIM) | |||||
---|---|---|---|---|---|---|
RealBlur-R | GoPro | BSD-B | 预训练 | RealBlur-R | Kohler | GoPro |
✓ | 否 | 35.66/0.9472 | 26.79/0.7963 | 30.72/0.9074 | ||
✓ | 是 | 34.96/0.9132 | 28.07/0.8259 | 29.01/0.8768 | ||
✓ | 否 | 36.47/0.9515 | 24.72/0.7422 | 23.99/0.7675 | ||
✓ | ✓ | 是 | 38.47/0.9632 | 26.96/0.7991 | 30.02/0.8946 | |
✓ | ✓ | 是 | 38.62/0.9649 | 27.99/0.8249 | 29.02/0.8774 | |
✓ | ✓ | ✓ | 是 | 38.58/0.9646 | 28.00/0.8241 | 29.93/0.8931 |
✓ | 是 | 38.73/0.9646 | 26.38/0.7942 | 26.56/0.8422 | ||
✓ | ✓ | 是 | 38.65/0.9646 | 27.04/0.8017 | 30.53/0.9045 | |
✓ | ✓ | 是 | 38.71/0.9657 | 28.18/0.8294 | 29.22/0.8824 | |
✓ | ✓ | ✓ | 是 | 38.65/0.9652 | 28.14/0.8311 | 30.30/0.9006 |
表 3: 不同数据集的性能比较。我们使用不同的训练集训练了 Tao 等人 [42] 的去模糊网络并测量了其性能。
训练集 | 测试集 (PSNR/SSIM) | |||||
---|---|---|---|---|---|---|
RealBlur-J | GoPro | BSD-B | 预训练 | RealBlur-J | Kohler | GoPro |
✓ | 否 | 28.56/0.8674 | 26.79/0.7963 | 30.72/0.9074 | ||
✓ | 是 | 28.68/0.8675 | 28.07/0.8259 | 29.01/0.8768 | ||
✓ | 是 | 31.02/0.8987 | 26.57/0.7986 | 26.68/0.8403 | ||
✓ | ✓ | 是 | 31.21/0.9018 | 26.94/0.8044 | 29.91/0.8923 | |
✓ | ✓ | 是 | 31.30/0.9058 | 27.88/0.8249 | 28.97/0.8785 | |
✓ | ✓ | ✓ | 是 | 31.37/0.9063 | 27.74/0.8229 | 29.90/0.8926 |
✓ | 是 | 31.32/0.9070 | 26.77/0.8044 | 27.18/0.8603 | ||
✓ | ✓ | 是 | 31.40/0.9078 | 27.13/0.8113 | 30.46/0.9034 | |
✓ | ✓ | 是 | 31.44/0.9105 | 28.06/0.8319 | 29.21/0.8842 | |
✓ | ✓ | ✓ | 是 | 31.38/0.9091 | 27.82/0.8260 | 30.30/0.9004 |
===== 第 12 页 =====
表格还显示,同时使用多个训练集往往能在多个测试集上取得更高的性能,因为它增加了训练数据的量和图像内容的范围。在不同的组合中,我们发现使用所有数据集和预训练权重进行训练在所有测试集上都取得了相对较好的性能。因此,在本节的其余部分,我们将其作为默认训练策略。
基准测试去模糊方法。
然后,我们使用我们的测试集对最先进的去模糊方法进行基准测试,包括传统的基于优化的方法 [46, 33, 18] 和最近的基于深度学习的方法 [31, 49, 48, 21, 22, 42]。对于所有基于深度学习的方法,我们使用作者提供的预训练模型。对于 DeblurGAN-v2 [22] 和 SRN-DeblurNet [42],我们还包含了使用我们训练策略训练的模型。
表 4 显示了基准测试的总结。在基准测试中,传统方法在 RealBlur-R 和 RealBlur-J 测试集上都取得了相对较低的 PSNR 和 SSIM 值,通常无法估计出正确的模糊核。已知此类传统方法对噪声、饱和像素和非均匀模糊很敏感,而这些在真实的低光照图像中很常见。另一方面,基于深度学习的方法在 PSNR 和 SSIM 方面都更成功,因为它们对噪声和非均匀模糊更鲁棒。使用我们训练集训练的基于深度学习的方法显示出最佳性能,证明了使用真实低光照模糊图像进行训练的好处。
图 7 显示了表 4 中基于深度学习方法的定性比较。所有未使用真实世界模糊图像训练的模型都无法恢复光条纹以及其他图像细节。另一方面,使用我们数据集训练的模型显示出更好的恢复结果。图 7(i) 和 (s) 中使用我们数据集训练的 SRN-DeblurNet [42] 的结果显示出精确恢复的图像细节。图 7(g) 和 (q) 中使用我们数据集训练的 DeblurGAN-v2 [22] 的结果也比其他模型显示出更好的恢复细节,尽管略逊于使用我们数据集训练的 SRN-DeblurNet。
表 4: 在真实世界模糊图像上最先进去模糊方法的基准测试结果。紫色:传统的基于优化的方法。黑色:基于深度学习的方法。蓝色*:使用我们数据集训练的模型。方法按 PSNR 降序排列。
| RealBlur-J | | | RealBlur-R | | |
| :---------------------- | :---------------- | :---------------------- | :---------------- |
| 方法 | PSNR/SSIM | 方法 | PSNR/SSIM |
| SRN-DeblurNet* [42] | 31.38/0.9091 | SRN-DeblurNet* [42] | 38.65/0.9652 |
| DeblurGAN-v2* [22] | 29.69/0.8703 | DeblurGAN-v2* [22] | 36.44/0.9347 |
| DeblurGAN-v2 [22] | 28.70/0.8662 | Zhang 等人 [49] | 35.70/0.9481 |
| SRN-DeblurNet [42] | 28.56/0.8674 | SRN-DeblurNet [42] | 35.66/0.9472 |
| Zhang 等人 [49] | 28.42/0.8596 | Zhang 等人 [48] | 35.48/0.9466 |
| DeblurGAN [21] | 27.97/0.8343 | DeblurGAN-v2 [22] | 35.26/0.9440 |
| Nah 等人 [31] | 27.87/0.8274 | Xu 等人 [46] | 34.46/0.9368 |
| Zhang 等人 [48] | 27.80/0.8472 | Pan 等人 [33] | 34.01/0.9162 |
| Pan 等人 [33] | 27.22/0.7901 | DeblurGAN [21] | 33.79/0.9034 |
| Xu 等人 [46] | 27.14/0.8303 | Hu 等人 [18] | 33.67/0.9158 |
| Hu 等人 [18] | 26.41/0.8028 | Nah 等人 [31] | 32.51/0.8406 |
===== 第 13 页 =====
动态场景。 我们的数据集由没有运动物体的静态场景组成。因此,随之而来的一个自然问题是,使用我们数据集训练的网络是否能处理包含运动物体的动态场景。为了回答这个问题,我们研究了我们的数据集在动态场景上的性能。为此,我们收集了一组包含运动物体的真实模糊图像,但没有清晰真实图像。我们使用不同型号的相机(Sony ATM2)和不同镜头(SEL85F18, SEL1635Z)代替我们的图像采集系统来收集图像。然后,我们对使用不同训练集训练的基于深度学习方法的性能进行定性评估。
图 8 显示了使用不同训练集的基于深度学习方法的动态场景去模糊结果。图 8 中的模糊图像具有由物体运动引起的空间变化模糊。对于本实验中的所有方法,除非特别说明,我们都使用作者提供的预训练模型。虽然 RealBlur-J 没有任何运动物体,但图 8(g) 和 (o) 的结果表明,仅使用 RealBlur-J 训练的网络可以成功恢复清晰图像。此外,仅使用 RealBlur-J 训练的网络产生的效果优于仅使用 GoPro 数据集训练的网络,尽管 GoPro 数据集包含
图 7: 在 RealBlur-J 和 RealBlur-R 测试集上不同去模糊方法的定性比较。(a)-(j) 使用 RealBlur-J 的去模糊结果。(k)-(t) 使用 RealBlur-R 的去模糊结果。为了可视化,RealBlur-R 的示例进行了伽马校正。蓝色标记带‘*’的方法是用我们数据集训练的。
===== 第 14 页 =====
大量动态场景。更多示例请读者参考补充材料。
6 结论
在本文中,我们提出了 RealBlur 数据集,这是第一个用于学习图像去模糊的大规模真实世界模糊数据集。为了收集数据集,我们构建了一个可以同时捕获一对模糊和清晰图像的图像采集系统。我们开发了一种后处理方法来生成高质量的清晰真实图像,并分析了几何对齐的效果和精度。我们的实验表明,RealBlur 数据集可以极大地提高基于深度学习的去模糊方法在处理由相机抖动和运动物体引起的真实世界模糊图像上的性能。
局限性与未来工作。 我们的 RealBlur 数据集由没有运动物体的静态场景组成。虽然我们定性地证明了用 RealBlur 训练的神经网络可以处理动态场景,但一个包含动态场景的数据集对于动态场景去模糊的定量评估至关重要。虽然我们使用高端无反相机来收集真实世界的模糊图像,但更多的用户使用的是智能手机相机。因此,为这类低端相机收集数据集将是一个有趣的未来工作。我们的工作可以为开发针对真实世界模糊图像的去模糊方法提供基础。开发一个更真实的用于合成模糊图像的生成模型也是一个有趣的未来方向,该模型可用于学习图像去模糊,而 RealBlur 数据集可以作为其基础。
致谢: 本工作由三星电子三星研究基金与孵化中心(Samsung Research Funding & Incubation Center of Samsung Electronics)资助,项目编号 SRFC-IT1801-05。
图 8: 不同方法在动态场景图像上的定性比较。