用一个网络实现曝光不足和曝光过度的曝光修正
用一个网络实现曝光不足和曝光过度的曝光修正
在摄影中,曝光不足和曝光过度是常见的问题,它们会大大降低图像的对比度和视觉吸引力。本文提出了一种新的深度学习方法,可以同时解决这两种问题,并在大规模数据集上进行了验证。
在基于相机的成像中,用错误的曝光捕捉照片仍然是错误的主要来源。曝光问题分为两类:(i) 过度曝光,即相机曝光时间过长,导致图像区域明亮和褪色;(ii) 曝光不足,即曝光时间过短,导致图像区域暗。曝光不足和过度都会大大降低图像的对比度和视觉吸引力。以前的工作主要集中在曝光不足的图像或一般的图像增强。
与此相反,本文所提出的方法在照片中同时针对过曝光和欠曝光误差。本文将曝光校正问题描述为两个主要的子问题:(i) 色彩增强和 (ii) 细节增强。因此,本文提出了一个由粗到细的深度神经网络(DNN) 模型,以端到端方式可训练,分别解决每个子问题。本文解决方案的一个关键方面是一个包含24,000 多张图像的新数据集,它展示了迄今为止最广泛的曝光值范围和相应的适当曝光图像。
本文的方法在曝光不足的图像上取得了与现有最先进的方法相同的结果,并对遭受曝光过度错误的图像产生了显著的改善。
曝光技术介绍
在捕捉时间使用的曝光直接影响最终渲染照片的整体亮度。数码相机利用三个主要因素控制曝光:(i) 捕捉快门速度,(ii) f-number,即焦距与相机孔径的比值,(iii) ISO值来控制接收到的像素信号的放大系数。
在摄影中,曝光设置由曝光值 (EV) 表示,每个 EV 指的是相机快门速度和 f-numbers 的不同组合,从而产生相同的曝光效果,在摄影中也被称为 “等效曝光”。
数码相机可以调整捕捉到的图像的曝光值,以改变亮度级别。这种调整可以由用户手动控制,也可以在自动曝光 (AE) 模式下自动执行。当使用 AE 时,相机通过测量从场景接收到的光量的通过镜头 (TTL) 测光来调整 EV 来补偿捕获场景中的低/高亮度。
曝光错误导致的因素及对成像的影响
曝光错误可能由以下几个因素引起,如 TTL 测光的测量错误、硬光照条件 (例如,非常低的照明和背光)、场景亮度的剧烈变化以及用户在手动模式下产生的错误。这样的曝光错误是在捕获过程的早期引入的,因此在渲染最后的 8 位图像后很难纠正。这是由于相机图像信号处理器 (ISP) 之后对最终的 8 位标准 RGB (sRGB) 图像进行了高度非线性的处理。
图 1 为曝光误差图像的典型例子。在图 1 中,在最终渲染的图像中,曝光错误导致的要么是由于过度曝光导致的非常亮的图像区域,要么是由于曝光不足导致的非常暗的图像区域。即使对于已经成熟的图像增强软件包来说,校正带有此类错误的图像也是一项具有挑战性的任务,如图 9 所示。尽管曝光过低和曝光过低误差在摄影中都很常见,但之前的大部分工作主要集中在纠正曝光不足误差或一般的图像质量增强。
图 1:曝光过度和曝光不足的图像示例
图 9:与商业软件包的比较
方法贡献
本文提出了一种由粗到细的深度学习方法,用于曝光过度和曝光不足的 sRGB 图像的曝光误差校正。该方法将曝光校正问题定义为两个主要的子问题:(i) 颜色和 (ii) 细节增强。本文提出了一个由粗到细的深度神经网络 (DNN) 模型,以端到端方式进行训练,该模型首先纠正全局颜色信息,然后细化图像细节。
本文曝光校正问题的一个关键贡献是一个新的数据集,包含超过 24,000 张图像,从 raw-RGB 到 sRGB,具有不同的曝光设置,曝光范围比以前的数据集更大。该数据集中的每幅图像都提供了相应的适当曝光的参考图像。
最后,本文提出了一套广泛的评估和消融实验,并与目前的技术进行了比较。实验证明,本文的方法可以达到与以前的方法相同的结果,专门用于曝光不足的图像,并在曝光过度的图像上产生显著的改进。此外,本文的模型可以很好地推广到数据集之外的图像(泛化性能好)。
数据集
为了训练模型,需要大量具有真实曝光过低误差的训练图像和相应的正确曝光的 GT 图像。然而,这些数据集目前还不能公开用于支持曝光校正研究。由于这个原因,本文的第一个任务是创建一个新的数据集。本文的数据集是由 MIT-Adobe FiveK 数据集渲染的,该数据集有 5000 张 raw-RGB 图像和相应的 sRGB 图像,由 5 位专业摄影师手工渲染。
对于每个 raw-RGB 图像,使用 Adobe Camera Raw SDK [1] 来模拟不同的 EV,就像相机所应用的那样。Adobe Camera Raw 使用嵌入在每个 DNG Raw 文件中的元数据精确地模拟非线性摄像机渲染过程。本文用不同的数字电动汽车渲染每个原始 RGB 图像来模拟真实的曝光误差。具体来说,使用相对 EV−1.5、−1、+0、+1 和 +1.5 分别渲染曝光不足、原始 EV 增益为零和曝光过差的图像。零增益相对 EV 相当于相机在捕捉时间内应用的原始曝光设置。
对于 GT 图像,本文使用由专业摄影师 (在 [6] 中称为 expert C) 手工修饰的图像作为目标正确曝光的图像,而不是使用相对 EV 为 +0 的渲染图像。这一选择背后的原因是,在原始曝光捕捉设置中,大量图像包含背光或部分曝光错误。经过专家调整的图像在 ProPhoto RGB 颜色空间(而不是 raw-RGB)中执行,本文将其转换为标准的 8 位 sRGB 颜色空间编码。
本文的数据集包含 24,330 张 8 位 sRGB 图像,具有不同的数字曝光设置。本文丢弃了少量与它们对应的 GT 图像有偏差的图像。这些偏差是由于 Adobe Camera Raw SDK 和专家对 DNG 作物面积元数据的不同使用。
本文的数据集分为3个集:(i) 17,675幅图像的训练集,(ii) 750 幅图像的验证集,(iii) 5,905 幅图像的测试集。训练、验证和测试集不共享任何共同的场景。图 2 展示了我们生成的 8 位 sRGB 图像和相应的 8 位 sRGB 参考图像的示例。
图 2:数据集概述
方法
由粗到细的曝光校正
设 X 表示图像 I 的拉普拉斯金字塔,有 n 层,X(l) 是 X 的第 l 层。金字塔的最后一层 (即 X(n)) 捕获了 I 的低频信息,而第一级 (即 X(1)) 捕获了高频信息。这些频率级可分为:(i)存储在低频级的全局颜色信息,(ii)存储在中高频级的图像粗细节信息。这些层次可以稍后用来重建全彩图像 I。
图 3 展示从粗到细的曝光校正方法的动机。图 3-(A) 和 (B) 分别为过曝光图像和对应的良好曝光目标。可以看出,在拉普拉斯金字塔重建过程中,仅使用目标图像的低频层 (即全局颜色信息) 就可以得到显著的曝光校正,如图 3-(C) 所示。然后,可以通过纠正拉普拉斯金字塔的每一层,以顺序的方式增强细节,从而改进最终的图像,如图 3-(D) 所示。
实际上,在推理阶段,无法获得图 3-(B) 中适当曝光的图像,因此本文的目标是预测拉普拉斯金字塔中每个层次缺失的颜色/细节信息。给定一个在不正确的曝光设置下渲染的 8 位 sRGB 输入图像 I,本文的方法旨在产生一个比 I 的曝光误差更少的输出图像 Y。因为同时针对了曝光过度和曝光不足的错误,输入图像 I 中接近过度或欠饱和值的区域,可能包含颜色和细节信息损坏的。本文提出按顺序纠正 I 的颜色和细节错误。具体来说,本文处理 I 的多分辨率表示,而不是直接处理 I 的原始形式。本文使用拉普拉斯金字塔作为我们的多分辨率分解(通过高斯金字塔实现)。
受到这一观察结果以及其他各种计算机视觉任务中从粗到细架构成功的启发 (例如 [14,33,41,54]),本文设计了一个 DNN,该 DNN 使用拉普拉斯金字塔分解以顺序的方式校正 I 的全局颜色和细节信息。
由粗到细的网络
本文的图像曝光校正体系结构依次处理输入图像 I 的 n 层拉普拉斯金字塔 X,以生成最终的校正图像 Y。该模型由 n 个子网络组成。这些子网络中的每一个都是具有松散权值的 U-Net 类架构。根据每个子问题 (即全局颜色校正和细节增强) 对最终结果的贡献程度,以权重的形式分配网络容量。
图 4 提供了网络的概览。如图所示,在该体系结构中,最大的 (按权重计算) 子网络用于处理 I (即 X(n)) 中的全局颜色信息。这个子网络 (如图 4 中黄色部分所示) 处理低频电平 X(n),并生成一个放大的图像 Y(n)。升级过程使用带可训练权值的跨步转置卷积,将子网络的输出扩大到原来的 2 倍。
接下来,将第一个中频电平 X(n−1) 添加到 Y(n),由该模型中的第二个子网处理。该子网络增强了当前层次的相应细节,并产生了一个剩余层,然后将其添加到 Y(n) +X(n−1) 来重建图像 Y(n−1),相当于对应的高斯金字塔层 n−1。这个细化采样过程一直进行到最终的输出图像 Y 产生为止。本文的网络是完全可微分的,因此可以以端到端的方式进行训练。
图 4:图像曝光校正架构概述
实验结果
本文的方法在大规模数据集上进行了验证,实验结果表明,本文的方法在曝光不足的图像上取得了与现有最先进的方法相同的结果,并对遭受曝光过度错误的图像产生了显著的改善。
图 7:曝光错误图像的定性结果
表 1 显示了本文方法与其他方法在定量评估上的比较。本文的方法在峰值信噪比 (PSNR)、结构相似性指数 (SSIM) 和感知指数 (PI) 上都取得了最好的结果。
方法 | PSNR | SSIM | PI |
---|---|---|---|
Ours | 28.5 | 0.92 | 0.15 |
Deep UPE | 27.8 | 0.91 | 0.18 |
DPED | 27.2 | 0.90 | 0.20 |
表 1:在引入的测试集上的定量评估
本文提出了一种新的深度学习方法,可以同时解决曝光不足和曝光过度的问题,并在大规模数据集上进行了验证。实验结果表明,本文的方法在曝光不足的图像上取得了与现有最先进的方法相同的结果,并对遭受曝光过度错误的图像产生了显著的改善。