Learning Deep Convolutional Networks for Demosaicing

news2024/11/25 15:19:07

Abstract

本文对应用卷积神经网络(CNN)解决去马赛克问题进行了全面的研究。该论文提出了两种 CNN 模型,它们可以学习马赛克样本和具有完整信息的原始图像块之间的端到端映射。在使用拜耳滤色器阵列 (CFA) 的情况下,对流行基准的评估证实 CNN 模型的数据驱动、自动学习特征非常有效,并且我们提出的最佳 CNN 模型优于当前的SOTA算法。实验表明,所提出的 CNN 模型在 sRGB 空间和线性空间中都可以表现得同样好。还证明了 CNN 模型可以执行联合去噪和去马赛克。 CNN 模型非常灵活,可以轻松用于任何 CFA 设计的去马赛克。我们使用三种不同的 CFA 训练用于去马赛克的 CNN 模型,并获得比现有方法更好的结果。凭借与任何 CFA 结合的极大灵活性,我们提出了第一个数据驱动的 CFA 设计联合优化和使用 CNN 的去马赛克方法。实验表明,自动发现的 CFA 图案和自动设计的去马赛克方法的组合优于其他图案和去马赛克方法。视觉比较证实所提出的方法减少了更多的视觉伪影。最后,我们证明 CNN 模型对于曝光和颜色空间变化的更一般的去马赛克问题也有效,并且可用于单次拍摄更高动态范围的图像。所提出的模型和彻底的实验共同证明了 CNN 是解决去马赛克问题的有效且通用的工具。

I. INTRODUCTION

大多数数码相机都包含由彩色滤光片阵列 (CFA) 覆盖的传感器阵列,即微小彩色滤光片的镶嵌体。因此,每个像素传感器仅记录有关相应像素的部分光谱信息。去马赛克是推断每个像素缺失信息的过程,在重建高质量全彩图像方面发挥着重要作用[2]、[3]、[4]。由于去马赛克涉及对丢失信息的预测,因此不可避免地会出现错误,从而导致重建图像中出现视觉伪影。常见的伪影包括拉链效果和假色伪影。前者是指相邻像素强度的突然或不自然的变化,而后者是指原始图像中不存在的虚假颜色。原则上,CFA设计和去马赛克方法应该联合设计,以尽可能减少视觉伪影。然而,大多数研究只关注其中之一。

拜耳滤波器是最流行的 CFA [5],已广泛应用于学术研究和实际相机制造中。它使用梅花形网格对绿色通道进行采样,同时通过矩形网格对红色和蓝色通道进行采样。绿色成分的较高采样率被认为与人类视觉系统一致。大多数去马赛克算法都是专门为 Bayer CFA 设计的。它们可以大致分为两类:基于插值的方法[6]、[7]、[8]、[9]、[10]、[11]、[12]、[13]、[14]和基于字典的方法方法[15]、[16]。基于插值的方法通常采用局部特性的观察并利用波长之间的相关性。然而,通过观察提取的手工特征具有局限性,并且常常无法重建复杂的结构。尽管迭代和自适应方案可以改善去马赛克结果,但它们具有局限性并引入更多的计算开销。基于字典的方法将去马赛克视为从学习的基本补丁字典中重建补丁的问题。由于字典是学习的,因此它可以更忠实地表示局部图像块的分布,并提供重建图像更好的颜色保真度。然而,重建的在线优化通常需要更长的时间,使得这种方法不太实用。

尽管已经实际使用了几十年,但研究表明拜耳 CFA 在频域分析中的性能较差[17]。因此,人们已经付出了一些努力来提出更好的 CFA 设计,以提高去马赛克图像的颜色保真度 [18]、[19]、[20]。早期的工作主要集中在改变 RGB 元素的排列,以便根据一些手工标准获得更好的去马赛克结果。有些人还探索了除原色之外的滤色镜。受马赛克图像频率表示的启发 [17],人们提出了几种有理论依据的 CFA 设计 [18]、[19]。然而,它们需要大量的人力。最近,通过利用频率结构(记录给定马赛克图像的所有亮度和色度分量的矩阵)提出了自动生成 CFA 的方法 [20]。然而,尽管理论上更好,但大多数 CFA 只能达到与拜耳 CFA 最先进的去马赛克方法相似的性能。主要原因是更复杂的CFA设计需要有效的去马赛克方法才能充分释放其潜力。不幸的是,由于设计复杂,这种去马赛克方法更难以设计,并且与拜耳 CFA 相比,为这些 CFA 开发去马赛克方法的努力较少。

我们通过探索卷积神经网络(CNN)来解决这些问题。由于理论的突破和硬件的改进,最近 CNN 有望解决许多问题,例如视觉识别、图像增强和游戏。通过数据学习,网络自动学习适合目标应用的特征。我们首先使用流行的拜耳 CFA 解决去马赛克问题(第 III 节)。受超分辨率 CNN 模型 [21]、[22] 的启发,我们提出了两种用于去马赛克的 CNN 模型:去马赛克卷积神经网络(DMCNN,第 III-A 节)和非常深 DMCNN(DMCNNVD,第 III-B 节)。与许多基于插值的方法手工制作的特征/规则相比,CNN 模型自动提取有用的特征并捕获样本之间的高级关系。实验表明,基于 CNN 的方法在 sRGB 空间(第 III-C 节)和线性空间(第 III-D 节)中均优于最先进的方法。此外,如果提供适当的训练数据,他们可以同时执行去噪和去马赛克。接下来我们将展示基于 CNN 的方法可以轻松地采用除拜耳设计之外的 CFA 设计进行去马赛克(第四节)。数据驱动的优化方法可以轻松地使用不同的 CFA 训练基于 CNN 的去马赛克方法,并且性能优于现有方法(第 IV-A 节)。凭借其可与任何 CFA 一起使用的灵活性,我们提出了第一个用于联合优化 CFA 设计和去马赛克方法的数据驱动方法(第 IV-B 节)。最后,我们证明基于 CNN 的方法也可以应用于解决更具挑战性的去马赛克问题,其中滤波器阵列具有空间变化的曝光和颜色(第 IV-C 节)。它可以使用叠片拍摄拍摄具有更高动态范围的图像。总之,本文提出了一项全面的研究,深入探讨了 CNN 模型在去马赛克问题中的应用。

II. RELATED WORK

Color demosaicing.

去马赛克方法大致可以分为两类:基于插值的[6]、[7]、[8]、[9]、[10]、[11]、[12]、[13]、[14]和基于字典的方法[15],[16]。对早期方法的调查可以在一些综合评论论文中找到[2]、[3]、[4]。最近,Kiku 等人[8]提出了一种在残差空间中对图像进行去马赛克的新颖方法,后来扩展了该方法以最小化残差的拉普拉斯算子,而不是残差本身[9]。残余空间被认为更平滑并且更容易重建。蒙诺等人 [10]提出了一种迭代、自适应版本的残差插值框架。

CFA design.

阿莱森等人[17]分析了频域中的去马赛克问题。在频域中,CFA 模式通常分解为三个分量:亮度和两个色度频率。平川等人[18]将CFA设计表述为最大化亮度和色度分量之间的距离的问题,并通过参数空间中的穷举搜索获得最佳模式。 Condat [23]遵循同样的精神,提出了一种对噪声、混叠和弱光环境更鲁棒的 CFA 设计。郝等人[19] 和白等人[20]各自介绍了Li等人提出的基于频率结构的模式设计算法。 [24]郝等人[19]将CFA设计问题表述为约束优化问题,并用几何方法求解。后来,白等人[20]利用多目标优化方法引入了自动模式设计过程,该方法首先提出频率结构候选,然后优化每个候选的参数。

General demosaicing.

除了颜色之外,光的其他属性,例如曝光(空间变化曝光,SVE)和偏振,也可以嵌入到滤波器阵列中,并且可以使用更通用的去马赛克算法来恢复丢失的信息。纳亚尔等人[25]提出了一种通用的去马赛克框架——Assorted Pixel,假设去马赛克结果可以从相邻马赛克像素的n次多项式函数获得。因此,整个过程可以被视为通过求解线性系统的回归问题。安马等人[26]后来提出了一种更通用的模式,即广义分类像素,能够恢复单色、RGB、高动态范围(HDR)、多光谱图像,同时牺牲空间分辨率。我们采用与 Nayar 等人类似的空间变化曝光和颜色 (SVEC) 设置。 [25] 展示了基于 CNN 的广义去马赛克方法的潜力。

Convolution neural networks.

迄今为止,基于深度学习的方法已经主导了许多高级和低级视觉问题。克里热夫斯基等人[27]表明深度CNN对于对象分类问题非常有效。除了高级视觉问题之外,CNN 在许多低级图像处理问题上也很有效,包括去模糊 [28]、[29]、去噪 [30]、[31]、超分辨率 [21]、[22] ]、[32]、[33]、着色[34]、照片调整[35]和压缩伪影减少[36]。受成功的基于 CNN 的超分辨率方法 [21]、[22] 的启发,本文尝试使用端到端 CNN 模型来解决去马赛克问题和 CFA 设计问题。

很少有人尝试应用 CNN 模型来解决去马赛克问题 [1]、[37]、[38]。在 SIGGRAPH Asia 2016 上,Gharbi 等人[37]提出了一种联合去马赛克和去噪的CNN模型。它将马赛克图像下采样为较低分辨率的特征图,并使用一系列卷积来计算较低分辨率的残差。然后将输入马赛克图像与上采样残差连接起来。最终输出由最后一组全分辨率卷积和所得特征图的线性组合构成。在 ICME 2017 中,Tan 等人[38]提出了一种用于Bayer去马赛克的CNN模型。该模型首先使用双线性插值生成初始图像,然后丢弃输入的马赛克图像。给定初始图像作为输入,该模型有两个阶段进行去马赛克。第一阶段分别估计G和R/B通道,而第二阶段联合估计三个通道。这两篇论文都只解决了拜耳去马赛克问题。另一方面,本文解决了更广泛的去马赛克问题,包括线性空间中的去马赛克、非拜耳模式的去马赛克、基于 CNN 的模式设计和 SVEC 模式的去马赛克。

III. DEMOSAICING WITH THE BAYER FILTER

拜耳过滤器是最流行的 CFA。在本节中,我们将重点介绍使用卷积神经网络的拜耳滤波器的去马赛克。首先,我们将介绍两种 CNN 架构,DMCNN(第 III-A 节)和 DMCNNVD(第 III-B 节),分别受到最近成功的图像超分辨率 CNN 模型 SRCNN [21] 和 VDSR [22] 的启发。

A. Demosaicing convolutional neural network (DMCNN)

去马赛克卷积神经网络(DMCNN)的架构受到 Dong 等人的超分辨率 SRCNN [21] 的启发。图1给出了DMCNN的架构。由于去马赛克的相关信息通常仅存在于局部,因此密集地提取patch并将其作为网络的输入呈现。我们为 DMCNN 使用 33 × 33 patch。patch的每个像素由三个颜色通道组成,将两个缺失的通道留空。因此,输入大小为 33 × 33 × 3。另一种选择是直接使用马赛克图像块来获得 33 × 33 × 1 块。然而,网络可能很难弄清楚每个像素代表哪个颜色通道。拜耳模式中的四个不同位置可能需要四个独立的网络。我们发现,简单地将缺失的通道保留为空白并为 CFA 图块的不同位置学习统一的网络会更有效。这样,设计的网络对于不同的 CFA 模式也更加灵活,我们将在第四节中探讨。与 SRCNN 类似,DMCNN 由三层组成,每层用于特定任务:

1) Feature extraction layer.

第一层负责提取有用的局部特征。我们使用 128 个 9 × 9 滤波器,它们被初始化为高斯核。该层的输出可以被视为 128 维特征向量的低分辨率图。

2) Non-linear mapping layer.

第二层的功能是将提取的高维特征向量映射到低维特征向量。我们使用 64 个 1 × 1 内核。这样,非线性映射是在像素本身上进行的,而不考虑相邻像素之间的关系。

3) Reconstruction layer.

最后一层旨在根据给定的特征集重建彩色斑块。内核为 5×5 并初始化为高斯内核,利用局部信息重建最终颜色。

ReLU(整流线性单元,max(0,x))[39]被用作激活函数,因为它通常可以避免梯度消失/爆炸问题。从数学上讲,网络可以表示为:

DMCNN网络是一种端到端的学习模型,与之前的去马赛克算法相比有两个优点。首先,这些功能是通过数据驱动的方式自动探索和优化的,而不是手工制作的。其次,重建可以利用更复杂的空间和光谱关系。图 2 可视化了图像的第一个卷积层中的一些学习内核和相应的特征图。可以观察到,一些自动学习的特征探索方向信息,这通常被认为对于去马赛克有用。例如,图2(b)中用红色勾勒出的第7、10和17个特征是具有不同方向的梯度特征。还可以发现,有些特征是进行色差插值的,如图2(b)中蓝色框出的第18和第20个特征。这些特征可能很难手动设计,但可以使用 CNN 自动构建。

B. Very Deep DMCNN (DMCNN-VD)

尽管 DMCNN 利用学习端到端 CNN 模型进行去马赛克的可能性,但由于该模型相当浅,因此它并没有充分挖掘 CNN 模型的潜力。许多应用表明,在神经元数量相同的情况下,更深的神经网络通常比浅层神经网络更强大。最近,残差学习已被证明可以有效地训练快速收敛的深度网络[40]。残差学习通过学习残差信息并通过将学习到的残差信息添加到输入来构造最终解决方案,从而更快地收敛。金等人采用残差学习方法,提出了一种更深层次的端到端超分辨率 CNN 架构,VDSR [22]。受他们模型的启发,我们提出了一种用于去马赛克的深度 CNN 模型的设计,即非常深的 DMCNN (DMCNN-VD)。

这样,DMCNNVD 模型只专注于学习真实值和基线之间的差异,通常对应于更难处理的部分。因此,它的学习可以更加有效和高效。原则上,任何去马赛克方法都可以用来生成输入patch。尽管双线性插值可能会受到严重的拉链和假色伪影的影响,但它在通常代表图像大部分的平滑区域上的性能与最先进的方法一样好。此外,由于方法简单,伪影往往更加连贯,并且残差信息更容易被 CNN 学习。先进的方法可以产生更难学习的复杂工件。我们发现双线性插值的结果足以用于残差学习。它还具有比其他替代方案更高效的优点。

除非另有说明,我们对所有中间层使用 3×3 内核和 1 像素填充。 MSRA 初始化策略[40]用于初始化。我们使用 0.001 作为标准差因子。采用 Adam [43] 进行梯度更新,我们将学习率设置为 1e−5。表 I 给出了两种建议的去马赛克架构 DMCNN 和 DMCNN-VD 的详细信息。

C. Experiments with Bayer demosaicing

Benchmarks.

最流行的去马赛克基准是柯达数据集和麦克马斯特数据集。柯达数据集中的所有图像均由胶片相机拍摄、扫描,然后以数字方式存储。该数据集包含几个具有高频模式的具有挑战性的案例,这些模式很难从常规 CFA 模式(例如拜耳模式)的样本中恢复。张等人[49] 和布阿德斯等人[14]注意到柯达数据集中的图像往往比正常的自然图像具有更强的光谱相关性、更低的饱和度和更小的色彩梯度。因此,张等人引入了 McMaster 基准(简称 McM),其中包含统计数据更接近自然图像的图像 [50]。由于这两个数据集都存在各自的挑战,因此通常会在这两个数据集上评估去马赛克算法。我们遵循大多数先前研究中使用的惯例,使用 12 张柯达图像和 18 张 McM 图像作为评估基准。

Training set.

训练数据在机器学习中起着重要作用。然而,我们发现以前的去马赛克方法中使用的训练数据可能存在问题。例如,之前的工作[16]采用了PASCAL VOC’07数据集,它存在以下问题:(1)图像质量较低,这使得一些去马赛克伪影不可避免,更不用说其中的压缩伪影了; (2)收集数据集用于对象分类,图像内容的有限类别施加了限制,例如图像的颜色分布。

为了训练图像去马赛克方法,我们从 Flickr 收集了 500 张图像,符合以下标准:(1)图像的色彩足够丰富,可以尽可能地探索现实世界中的颜色分布; (2) 图像中存在高频模式,以便 CNN 学习针对具有挑战性的情况提取有用的特征; (3)它们是高质量的,从而可以尽可能地避免由于噪声和压缩而产生的伪影。收集到的图像大小被调整为大约 640×480,以具有更多的高频图案,同时更有可能没有马赛克。我们将数据集称为 Flickr500。将图像旋转 90°、180°、270° 并在每个方向上翻转以进行数据增强。除非另有说明,我们从这些图像中提取了大约 350 万个patch,并将它们用于训练 CNN 模型。 Flickr500 数据集和源代码将被发布,以便其他人可以重现我们的工作1。

Quantitative comparison.

我们将两种提出的 CNN 模型与十种现有算法进行定量比较,包括 SA [44]、SSD [14]、CS [45]、ECC [46]、AIC​​C [48]、三种基于残差插值的方法(RI [8] ]、MLRI [9] 和 ARI [10])以及两种基于稀疏编码的方法(NLS [16] 和 PAMD [47])。按照惯例,我们使用 PSNR(峰值信噪比)值作为衡量标准。表II总结了Kodak数据集、McM数据集及其组合的定量比较结果。请注意,表 II 中的所有数字均直接采用以前的工作 [8]、[10],除了 DMCNN 和 DMCNN-VD 之外。因此,在获取 DMCNN 和 DMCNN-VD 的数字时,我们对 12 张柯达图像和 18 张 McM 图像进行了相同的设置。在每个类别(表中的一列)中,最佳结果以红色突出显示,第二好的结果以绿色突出显示。在大多数情况下,我们使用组合数据集 (Kodak+McM) 上的 CPSNR 值作为最终指标。 DMCNN 模型具有 38.12dB CPSNR 值,具有竞争力。然而,它的性能优于之前十种方法中最好的方法 ARI [10],几乎高出 1 dB。没有残差学习策略的较浅层使得恢复局部细节变得困难。另一方面,凭借更深层次的结构和残差学习模型,DMCNN-VD 的 CPSNR 达到 41.05dB,远远超过所有竞争算法,比最接近的竞争对手 ARI 好 2.05dB。

需要注意的一件事是,NLS 和我们的方法都是基于学习的。 NLS 在 PASCAL VOC 2017 数据集上进行训练,而我们的 NLS 在 Flickr500 数据集上进行训练。为了进行公平的比较,我们在 PASCAL VOC 2007 数据集上训练 DMCNN-VD。 Kodak、McM 和 Kodak+McM 的 CPSNR 值分别为 44.26、37.35 和 40.11,而 NLS 则达到 42.85、36.15 和 38.83。 DMCNN-VD 模型的性能仍然明显优于 NLS。此外,NLS 需要昂贵的在线学习和额外的分组来利用稀疏编码和自相似性。因此,效率较低。在配备 Intel Core i7-4790 CPU 和 NVIDIA GTX 970 GPU 的 PC 上,对 500 × 500 图像进行去马赛克,DMCNN 花费了 0.12 秒,DMCNN-VD 花费了 0.4 秒,而 NLS 花费了大约 400 秒。请注意,CNN 模型使用 GPU 运行,而 NLS 仅使用 CPU。目前尚不清楚并行计算可以将 NLS 加速多少。

Qualitative comparison.

图 4 显示了几个示例的视觉比较。图 4 中的一些模型将在第四节中讨论。图 4(a)给出了来自 McM 数据集的示例。大多数先前的方法和 DMCNN 模型无法处理如此饱和的颜色,因此会在绿色星星中产生额外的对角条纹。相反,DMCNN-VD 模型由于残差学习方案的更深层次架构而表现得更好。图 4(b) 显示了 McM 数据集中的另一个示例。特写显示了高频规则模式,这对于大多数以前的算法来说很难恢复。例如,ARI [10] 在这种情况下会生成噪声模式。 DMCNN-VD 模型给出了更好的结果。图 4(c)给出了柯达数据集的一个例子。特写镜头显示了建筑物的百叶窗,其中包含几乎水平的条纹。在这种情况下,基于残差插值的方法会引入明显的伪色伪影,SSD [14] 和 CS [45] 也是如此。 NLS [16] 和 DMCNNVD 模型更好地恢复了结构,表明这种数据驱动的自动学习特征可以更有效。在图4(d)中,我们可以观察到栅栏的高频结构对于所有方法来说都很难完美地重建。在基于插值的方法的结果中可以明显地发现诸如水平条纹之类的伪影。唯一成功的是 NLS 方法 [16],它可以受益于其自相似策略。

Comparisons with other deep demosaicing methods.

正如第二部分提到的,之前有几篇关于深度拜耳去马赛克的论文,一篇发表在 SIGGRAPH Asia 2016 [37] 上,另一篇发表在 ICME 2017 上 [38]。由于训练集不同并且源代码并不总是可用,因此很难公平地与这些方法进行比较。 SIGGRAPH Asia 2016 模型在 2,590,186 个 128×128 困难patch上进行了训练。 ICME 2017 模型使用从滑铁卢探索数据集 (WED) 的 4,644 张图像中提取的 384,000 个 50 × 50 块进行训练 [51]。表 III 的前两行显示了之前在 Kodak24 和 McM 测试数据集上的工作的性能,直接从他们的论文中采用。我们使用与他们相同的测试设置测试了 DMCNN-VD 模型。表 III 的第三行报告了我们的结果。在默认内核大小(3×3)下,DMCNN-VD模型在平均CPSNR值上略有优势。

内核大小对模型的性能有影响。我们针对 DMCNN-VD 模型尝试了不同的内核大小:3 × 3、5 × 5 和 7 × 7。表III报告了结果。很明显,性能随着内核大小的增加而提高。使用 7×7 内核,所提出的模型在 Kodak24 和 McM 上分别实现了 42.36dB 和 39.74dB 的最佳性能。然而,较大的内核大小也会在训练和测试方面产生更多的计算成本。在本文中,如果没有特别说明,我们报告的是 3 × 3 核的结果。

为了用更大的数据集验证所提出的模型,我们将在 Flickr500 数据集上训练的 DMCNN-VD 模型应用于 WED 数据集。 WED 数据集包含 4,744 张图像。 DMCNN-VD模型的CPSNR达到了40.18dB。这表明 DMCNN-VD 模型具有很好的泛化能力。此外,我们还使用 WED 数据集训练了 DMCNN-VD 模型。我们使用与 ICME 论文相同的设置,其中 4,644 个图像用于训练,其余 100 个图像用于测试。表 III 的最后一行报告了结果。当在相同的数据集上进行训练时,DMCNN-VD 模型对 Kodak24 和 McM 分别实现了 42.27dB 和 39.54dB,优于 ICME 模型的 42.04dB 和 38.98dB。在 100 张 WED 图像上进行测试时,DMCNN-VD (WED) 模型获得 41.55dB,而 ICME 2017 论文报告为 39.67dB。

D. Experiments with the linear space and noise

与之前的大多数去马赛克论文一样,上一节评估了 sRGB 空间中的方法。然而,在实际的相机处理流程中,去马赛克过程通常是在辐射度的线性空间中执行的,而不是大多数去马赛克研究中使用的sRGB空间。 Khashabi 等人最近解决了这个问题。 [52]他们收集了一个名为 MDD(微软去马赛克数据集)的新数据集。在此数据集中,所有图像均由 Canon 650D 和 Panasonic Lumix DMC-LX3 拍摄。为了模拟无马赛克图像,他们提出了一种新颖的下采样技术并将数据转换到线性空间。此外,他们还指出,输入的马赛克图像在现实中通常是有噪声的。因此,数据集还通过添加从原始原始图像中提取的噪声来提供噪声马赛克图像。此外,他们提出了一种通过学习非参数回归树域(RTF)来联合去马赛克和去噪的方法[52]。在接下来的实验中,我们将首先将预训练的DMCNN-VD模型直接应用于MDD数据集,然后通过迁移学习来提高其性能。

Clean data.

MDD 数据集提供干净和嘈杂的马赛克图像。我们首先尝试使用干净版本进行去马赛克。表 V 报告了三种方法(ARI [10]、RTF [52] 和 DMCNN-VD)在线性空间和 sRGB 空间中的 CPSNR 值。由于 RTF 是使用噪声输入进行训练的,因此它在干净数据上的性能不如为干净输入设计的最先进算法 ARI [10],这并不奇怪。所提出的 DMCNN-VD 模型在两个空间中都表现得非常好,比 ARI 至少好 1dB。请注意,DMCNN-VD 是在 sRGB 空间中训练的,但它仍然在线性空间中表现良好。

Noisy data.

输入中的噪声可能会严重损害去马赛克方法的性能,尤其是那些在不考虑噪声的情况下从干净输入中导出规则的方法。表VI报告了线性空间和sRGB空间中的CPSNR和SSIM值。请注意,我们在表 VI 中分别报告了 Panasonic Lumix DMC-LX3 和 Canon 650D 的结果,因为它们具有不同的噪声特性。它证实了为干净数据(ARI)设计的算法在噪声输入上的表现可能较差。尽管是在干净的数据上进行训练,但所提出的 DMCNN-VD 模型的表现却与 RTF 方法一样好。由于 MDD 中提供了噪声训练数据,因此我们可以利用它们来微调在 Flickr500 上训练的 DMCNN-VD 模型,以提高其性能。这可以被视为一种迁移学习策略[36]。在我们的例子中,模型从干净的 sRGB 空间转移到嘈杂的线性空间。我们将迁移模型表示为 DMCNN-VD-Tr。表 VI 中报告的 CPSNR/SSIM 值显示了微调 DMCNN-VD-Tr 模型的显着改进。图 5 给出了几个视觉比较的例子。顶行显示了松下相机的示例。由于输入中存在噪声,大多数算法的结果在视觉上都存在问题,即使 RTF 的结果也显示出可感知的色调。在微调 DMCNN-VD-Tr 模型的结果中很难观察到此类伪影。图 5 的底行给出了佳能相机的示例。同样,DMCNN-VD-Tr 模型比其他方法更忠实地恢复颜色和结构信息。图 6 显示了在嘈杂的线性空间中去马赛克的更多示例的视觉比较。很明显,DMCNN-VD-Tr 模型能够很好地执行联合去马赛克和去噪,给出比所有其他方法更好的结果。

IV. DEMOSAICING WITH OTHER CFAS

在本节中,我们将探讨使用拜耳模型以外的 CFA 对图像进行去马赛克的 CNN 模型。我们首先将 CNN 与其他三个 CFA 一起应用于去马赛克(第 IV-A 节)。接下来,我们提出了一种数据驱动的方法,用于 CFA 设计和去马赛克方法的联合优化(第 IV-B 节)。最后,我们将 CNN 模型应用于更具挑战性的具有空间变化的曝光和颜色的去马赛克问题(第 IV-C 节)。

A. Demosaicing with non-Bayer CFAs

尽管拜耳模式是最流行的 CFA,但还有许多其他 CFA 设计。图 7 显示了三个示例:对角线条纹 [53]、CYGM 和 Hirakawa [18] CFA。对角条纹CFA(图7(a))具有3×3的单位图案,三基色均匀分布。 CYGM CFA(图 7(b))的提出是因为它接收的频谱范围比拜耳模式更广。其单位图案为2×2,有二次色和绿色。已经用此 CFA 制造了多款相机。最后,通过频率分析优化得到Hirakawa CFA(图7(c)),并具有4×2的单元模式。

大多数去马赛克方法都与特定的 CFA 相关。它们对于其他 CFA 来说会严重失败,并且通常需要完全重新设计才能与其他 CFA 配合使用。与此同时,大多数 CFA 都需要专门为他们量身定制的去马赛克方法,以充分探索他们的能力。去马赛克 CNN 模型的一大优势是其灵活性。只要使用目标 CFA 编码的数据重新训练,相同的 CNN 模型就可以用于不同的 CFA。对于给定的 CFA,使用 DMCNN-VD 模型,而输入层必须使用 CFA 进行调整。正如第三节中提到的,输入层由 n 个颜色平面组成,其中 n 是 CFA 中使用的颜色数量。对于拜耳 CFA,使用三色平面,因为它由三种基色组成。以Hirakawa CFA为例,其4×2的瓷砖由深粉色、春绿色、石板蓝色和黄绿色四种颜色组成。因此,使用了四个颜色平面。对于用深粉色通道采样的像素,采样值填充在深粉色颜色平面的相应位置,而其他三个颜色平面在该位置填充零。三个颜色平面用于对角条纹 CFA,四个颜色平面用于 CYGM。

表 VII 报告了 CFA 和去马赛克算法的不同组合的性能。前两行显示了以拜耳 CFA、NLS 和 ARI 作为参考的两种最先进方法的性能。接下来的四行显示了 DMCNN-VD 模型与拜耳 CFA 和图 7(a)-(c) 中的三个 CFA 的性能。对于每个 CFA,使用 CFA 采样的马赛克图像重新训练 DMCNN-VD 模型。值得注意的是,使用学习的 DMCNN-VD 模型,Hirakawa CFA 表现最好,为 41.12dB,略好于使用 DMCNN-VD 的拜耳模式。它表明更好的图案可以提高去马赛克性能,并且 Hirakawa 图案可能是所实验的四个 CFA 中最好的 CFA。不过,虽然Hirakawa看上去是一个比较好的设计,但是要释放它的潜力却并不容易。例如,如表七倒数第二行所示,当使用之前的方法 Condat 算法 [23] 去马赛克时,Hirakawa CFA 只能达到 37.23dB 的平庸性能。它表明,良好的 CFA 设计需要良好的专用去马赛克方法才能正常工作。由于除拜耳 CFA 之外,为 CFA 设计的方法较少,因此它们的潜力没有得到充分开发。该实验展示了 CNN 模型对于不同 CFA 设计的去马赛克是多么有效和灵活。图 4 显示了几个示例的视觉比较。 DS-VD、CYGM-VD 和 Hirakawa-VD 分别是带有对角条纹的 DMCNN-VD、CYGM 和 Hirakawa CFA 的结果。

B. Data-driven CFA design

从上一节中我们了解到,CFA设计和去马赛克算法彼此之间有着很强的关系和影响。然而,据我们所知,大多数去马赛克研究都集中在设计马赛克 CFA 或设计去马赛克方法上,并且之前没有联合和同时优化的工作。由于CNN模型在学习各种CFA的去马赛克算法方面是有效且灵活的,因此可以将图案设计嵌入到CNN模型中,通过联合优化同时学习CFA设计及其去马赛克算法。该架构类似于自动编码器,它找到有效且紧凑的表示(编码)来忠实地重建原始图像。在我们的例子中,表示是通过空间颜色采样/混合形成的。

The pattern layer.

我们首先介绍一下用于形成马赛克图案的图案层。它不同于深度学习框架中流行的 CNN 层,例如卷积和池化。它也不能使用现有图层进行组合。因此,它必须作为一个新层来实现。假设单位图案是m×n。也就是说,单元图案具有m×n个单元,并且每个单元包含滤色器以将RGB颜色转换成某个颜色通道的值。我们可以将彩色滤光片视为CNN模型中的1×1×3滤光片核。因此,我们必须学习 mn 个 1×1×3 核才能进行 CFA 设计。以Bayer CFA为例,其单元模式为2×2,有四个核(1, 0, 0), (0, 1, 0), (0, 0, 1), (0, 1, 0) R、G1、B、G2。

图 8 显示了前向传播过程中具有 3 × 3 单元图案的图案层示例。输入是一个 3×3×3 的 patch。对于每个单元格,我们有 1×3 过滤器将其 RGB 颜色转换为一个值并将其放在相应的单元格上。由于我们有九个过滤器,因此输出包含九个颜色平面,每个颜色平面对应一个特定的过滤器。因此,图案层的输出为3×3×9。与 DMCNN 和 DMCNN-VD 模型中使用的输入结构类似,每个输出像素有九个通道。其中,1个为抽样,另外8个为空白。

The DMCNN-VD-Pa model.

我们用 DMCNN-VD-Pa 表示联合优化马赛克图案和去马赛克算法的 CNN 模型。图 9 说明了由两个主要组件组成的 DMCNNVD-Pa 模型。

1)模式学习。模式层负责学习 CFA 中的滤色器。在前向传递中,图案层使用其当前的滤波器内核对全色patch(地面实况)进行二次采样,并输出多通道马赛克patch。在向后传递中,内核的梯度被计算为正常的卷积层。

2)去马赛克。图案层的输出(丢失 8/9 信息的图像块的九个颜色平面)用作去马赛克网络的输入。这里使用DMCNN-VD模型进行去马赛克。请注意,由于去马赛克网络预测所有颜色平面中缺失的信息,因此输出由九个具有完整信息的颜色平面组成。

假设3×3单元图块的九个核是C1,C2,····C9,每个核代表一种RGB颜色。对于残差学习,我们首先使用双线性插值来填充每个颜色平面。因此,每个像素现在有九个系数 α1、...、α9,每个系数对应一个颜色平面。然后,我们通过求解线性系统 Ac = b 将这九个系数转换为 RGB 颜色 c,其中 A 是由 Ci 逐行堆叠而成的 9×3 矩阵,b 是列向量 (α1, · · ·, α9)T 。然后将生成的 RGB 图像用作残差学习的基线。

为了训练上述类似自动编码器的 CNN 模型,将一组图像作为输入和标签。需要注意的一件事是,优化模式可能在卷积核中包含负权重。尽管在数学上是最佳的,但具有负权重的内核对于制造来说不太实用。此外,我们还想限制权重,使其小于 1。不幸的是,CNN 模型的约束优化很困难。与 Chorowski 和 Zurada [54] 类似,我们采用投影梯度下降算法 [55],将梯度投影到每次更新的可行空间上。在我们的例子中,对于通过常规梯度下降找到的最佳权重 wi,我们将 CNN 模型的权重 wi 更新为

权重使用 [0, 1] 内的随机数进行初始化,以便它们从可行的解决方案开始。图 7(d) 显示了学习到的 3 × 3 图案,具有一些有趣的特性:(1) 该图案包含类似原色的光,(2) 单元的排列是规则的,类似于对角条纹图案。值得注意的是,这些属性与所选的单元图案尺寸 3 × 3 有关。对于不同尺寸的单元图案,最佳图案可能具有不同的特性。不同图案尺寸的探索留待未来的工作。

Quantitative comparison.

表七的最后一行显示了 DMCNN-VD-Pa 在去马赛克基准上的性能。其在组合数据集上的 CPSNR 值为 41.28dB,比 ARI [10] 好 2.0dB 以上,比采用 Bayer CFA 的 DMCNN-VD 模型高 0.23dB。采用 Hirakawa 模式的 DMCNN-VD 模型以 41.12dB 获得亚军。请注意,Hirakawa 图案的单位图案为 4 × 2,而 DMCNN-VD-Pa 的单位图案为 3 × 3。也可以使用所提出的方法来寻找具有不同图块尺寸的良好图案。另一个值得注意的有趣的事情是 DMCNN-VD-Pa 在绿色通道上的表现比 DMCNN-VD 差。这是合理的,因为拜耳CFA将绿色通道中的样品增加了一倍。相比之下,DMCNN-VD-Pa 倾向于对三个通道进行同等采样,因为 L2 损失函数只是对颜色通道进行平均。由于人类对绿色通道更加敏感,为了提高感知质量,可以通过改变损失函数以更加强调绿色通道来增加绿色样本。它们被留作未来的工作。

Qualitative comparison.

图 4 显示了 DMCNN-VD-Pa 几个示例的视觉结果。与 DMCNN-VD 与 Bayer CFA 的结果相比,新的 CFA 有助于纠正相当多的伪影。例如,在图4(b)中,DMCNN-VD-Pa的结果比DMCNN-VD的结果更清晰、更锐利。在图4(d)中,与DMCNNVD相比,DMCNN-VD-Pa的新模式几乎完全消除了拉链效应。

C. Demosaicing with spatially varying exposure and color

除了颜色去马赛克之外,CNN模型还可以应用于更一般的去马赛克问题。在这里,我们解决了通过空间变化曝光和颜色(SVEC)采样进行去马赛克的问题。更具体地说,CFA 采集具有不同颜色和曝光组合的样本。图 10(a) 给出了具有三个颜色通道(R、G 和 B)和两种曝光(低曝光 e1 和高曝光 e2)的 CFA 设计(在我们的设置中,高曝光比低曝光高 64 倍) 。它通过空间变化的曝光扩展了拜耳 CFA。图10(b)和图10(c)显示了用这两次曝光拍摄的同一场景的图像。通过使用图10(a)中的SVEC CFA拍照,可以仅使用单次拍摄来重建高动态范围(HDR)图像。然而,SVEC 去马赛克问题比彩色去马赛克更具挑战性,因为 SVEC 去马赛克的信息丢失(丢失 5/6 的信息)比彩色去马赛克(2/3)更多。得益于灵活的端到端 CNN 模型,我们可以使用相同的模型和适当的训练数据来解决更具挑战性的 SVEC 去马赛克问题。在本例中,我们的输入有六个通道,输出是具有三个颜色通道的 HDR 图像。请注意,我们不是通过两次曝光来重建与 RGB 颜色相对应的六个通道,而是直接恢复实值 RGB 颜色作为输出。

Training data.

对于SVEC去马赛克的问题设置,我们需要HDR图像来模拟不同曝光的捕获图像。不幸的是,HDR 图像通常具有相当不同的范围,这对于训练 CNN 模型可能会出现问题。为了解决这个问题,我们将辐射图像标准化为

Quantitative comparison.

对于 SVEC 去马赛克,我们使用 MSE(均方误差)和 CPSNR 作为指标,将我们的模型与 Nayar 和 Narasimhan [25] 提出的分类像素(AP)进行比较。表VIII报告了结果。 DMCNN 模型在这两个指标上都显着优于 AP。 DMCNN-VD凭借其更深层次的架构,进一步改善了MSE误差和CPSNR值。它表明 CNN 模型比 AP [25] 使用的简单回归模型更强大。此外,AP 无法像 CNN 模型那样捕获空间关系。

Qualitative comparison.

图 11 显示了两个测试图像的 SVEC 去马赛克结果。对于每个示例,我们都显示了地面实况辐射图以及由 AP、DMCNN 和 DMCNN-VD 恢复的辐射图,所有这些都通过热图进行可视化。差异图显示 DMCNN 模型的结果更接近真实情况,因为它在差异图中具有更多的蓝色。 DMCNN-VD 凭借其更深层次的结构,进一步减少了错误。特写镜头显示,DMCNN 模型在边缘周围产生的伪影比 AP 更少,而 DMCNN-VD 的性能优于 DMCNN,边缘更锐利。

V. CONCLUSIONS

在本文中,我们对将卷积神经网络应用于各种去马赛克问题进行了深入的研究。提出了两种 CNN 模型:DMCNN 和 DMCNN-VD。流行基准测试的实验结果表明,无论是在 sRGB 空间还是线性空间,学习的 CNN 模型都远远优于采用 Bayer CFA 的最先进的去马赛克方法。实验还表明CNN模型可以联合进行去马赛克和去噪。我们还证明 CNN 模型非常灵活,可用于任何 CFA 的去马赛克。例如,目前使用 Hirakawa CFA 的去马赛克方法远远落后于使用 Bayer CFA 的去马赛克方法。然而,我们使用 Hirakawa CFA 学习的 CNN 模型优于使用 Bayer CFA 的最先进方法。它表明,如果采用适当的去马赛克方法,Hirakawa CFA 可能是更好的图案。它显示了CNN模型的灵活性和有效性。我们还提出了一个图案层并将其嵌入到去马赛克网络中,用于 CFA 图案和去马赛克算法的联合优化。最后,我们解决了一个更普遍的去马赛克问题,即空间变化的曝光和颜色采样。利用CNN模型,可以通过单次拍摄获得高动态范围图像。所有实验都表明 CNN 模型是解决去马赛克问题的通用且有效的工具。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1101417.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Shopee买家通系统:注册虾皮买家号需要些什么资料?

Shopee买家通系统可以全自动批量注册虾皮买家号,在运行自动注册时可以自动输入手机号、自动处理遇到的图形验证、自动接收短信、自动输入密码进行注册,注册成功后还能自动输入邮箱及接收邮箱验证进行验证绑定,全自动化操作更方便及节约时间。…

uniapp-vue3-微信小程序-标签选择器wo-tag

采用uniapp-vue3实现, 是一款支持高度自定义的标签选择器组件&#xff0c;支持H5、微信小程序&#xff08;其他小程序未测试过&#xff0c;可自行尝试&#xff09; 可到插件市场下载尝试&#xff1a; https://ext.dcloud.net.cn/plugin?id14960 使用示例 <template>&…

基于Kresling折纸结构双稳态空间的无人机着陆系统新结构

摘要&#xff1a;本文利用动捕技术对无人机着陆系统模型进行动力学分析&#xff0c;对折纸结构双稳态着陆系统性能进行测试&#xff0c;为无人机着陆系统结构设计提供创新方法。 近期&#xff0c;一篇关于无人机着陆系统的研究论文“Evolution of UAV landing structures in th…

pdf转二维码怎么做?pdf二维码制作简单技巧

pdf是一种很常见的文件储存格式&#xff0c;一般通知、发票、简历都会保存为这种格式来使用&#xff0c;那么需要将pdf格式文件做成二维码&#xff0c;该用什么方式来制作呢&#xff1f;下面给大家分享一个pdf转二维码的在线工具&#xff0c;可以通过上传文件一键生成二维码&am…

Java时间处理---Java8中时区相关类库介绍

前言 在Java8以前&#xff0c;我们对于时区的处理通常是为时间转换类设置指定TimeZone&#xff0c;然后进行时区时间转换。 而在Java8中不仅对时间日期进行了细粒度处理&#xff0c;有无时区&#xff0c;时区处理也进行了更加细粒度的优化。 在之前我们介绍的新类库中基本都…

记录:关于VScode 那点儿事

今天使用将本地的项目代码与远程服务器项目链接起来&#xff0c;这样就可以方便是本地编写代码&#xff0c;使用远程服务器调试&#xff0c;莫名其妙出现的问题&#xff0c;网上查阅了好多资料&#xff0c;把自己整的焦头烂额 &#xff0c;记录一下&#xff1a; 问题1&#xf…

Python Selenium设计模式-POM

前言本文就python selenium自动化测试实践中所需要的POM设计模式进行分享&#xff0c;以便大家在实践中对POM的特点、应用场景和核心思想有一定的理解和掌握。 为什么要用POM 基于python selenium2开始UI级自动化测试并不是多么艰巨的任务。**只需要定位到元素&#xff0c;执…

UMS攸信技术助力新能源行业能效提升、驱动数据管控体系全新变革!

2023深圳国际新能源三电与智造技术产业大会2023年10月11日-10月13日在深圳国际会展中心举办&#xff0c;1500多名来自超过200整车厂、电池电机生产厂家的研发、生产工程技术人员参加活动&#xff0c;现场与会嘉宾1000多人&#xff0c;29场精彩演讲&#xff0c;共同探讨新能源行…

11+孟德尔随机化+GWAS分析

今天给同学们分享一篇凝血因子孟德尔随机化的生信文章“The effects of coagulation factors on the risk of endometriosis: a Mendelian randomization study”&#xff0c;这篇文章于2023年5月25日发表在BMC Med期刊上&#xff0c;影响因子为11.450。 子宫内膜异位症被认为是…

【MySQL】索引原理

文章目录 一、MySQL 存储与磁盘1、MySQL 存储的本质2、磁盘的物理结构3、磁盘的存储结构4、磁盘的逻辑结构5、磁盘的访问方式6、对 IO 单位的优化7、建立共识 二、索引原理1、引出索引2、如何理解 Page3、页目录与目录页4、索引结构的选择5、聚簇索引与非聚簇索引6、辅助 (普通…

【LeetCode刷题(数据结构与算法)】:合并两个有序链表

将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的 **思路&#xff1a;定义一个头尾指针置为NULL while循环依次比较两个链表的值的大小 遍历链表 比较完数值大小过后连接到tail的尾部 然后各自的链表的节点的next指针指向下一…

短视频矩阵系统/pc、小程序版独立原发源码开发搭建上线

短视频剪辑矩阵系统开发源码----源头搭建 矩阵系统源码主要有三种框架&#xff1a;Spring、Struts和Hibernate。Spring框架是一个全栈式的Java应用程序开发框架&#xff0c;提供了IOC容器、AOP、事务管理等功能。Struts框架是一个MVC架构的Web应用程序框架&#xff0c;用于将数…

jq——基础操作——jq操作回顾(都忘光了。。。)

jq——基础操作——jq操作回顾 1.jq获取dom后遍历获取选中的内容2.正整数处理3.删除列表中的数据——获取每条数据是否选中(是否含有active类名)4.layer.confirm——确认提示框5.ajax——jq6.antd-table&#xff1a;更改整行背景色 1.jq获取dom后遍历获取选中的内容 let arr […

GeoServer改造Springboot启动一(创建springboot)

GeoServer改造Springboot启动一(创建springboot) GeoServer改造Springboot启动二(修改源码集成Swagger) GeoServer改造Springboot启动三(集成jdbcconfig和jdbcstore) GeoServer改造Springboot启动四(解决post接口方法无法用@requestbody为入参的请求) GeoServer改造…

云帆在线学习考试系统介绍

随着网络技术的不断发展&#xff0c;越来越多的人开始意识到在线学习和考试的重要性。在这个数字化时代&#xff0c;借助互联网平台&#xff0c;人们可以轻松地获取各种知识和技能&#xff0c;提升自己的竞争力。而云帆在线学习考试系统正是在这样的背景下应运而生的。云帆在线…

MySQL配置环境变量和启动登录

如果不配置环境变量&#xff0c;每次登录 MySQL 服务器时就必须进入到 MySQL 的 bin 目录下&#xff0c;也就是输入“cd C:\Program Files\MySQL\MySQL Server 5.7\bin”命令后&#xff0c;才能使用 MySQL 等其它命令工具&#xff0c;这样比较麻烦。配置环境变量以后就可以在任…

ES6 新特性重点部分

目录 一、ES6简介 二、ES6新特性 1.let变量声明 : 2.const常量声明 : 3.解构赋值 : 3.1 解构赋值简介 3.2 数组解构 3.3 对象解构 4.模板字符串 : 5.对象简写 : 6.运算符扩展 : 7.箭头函数 : 7.1 简介 7.2 实例 8.ES6---Promise : 9.ES6---模块化编程 : 一、ES6简介…

算法通过村第十五关-超大规模|青铜笔记|海量找数

文章目录 前言用4KB内存寻找重复数总结 前言 提示&#xff1a;并不是所有黑暗的地方&#xff0c;都需要光明。 --珍妮特温特森《句子不是唯一的水果》 在大部分算法中&#xff0c;默认给点给的数据量都是很小的&#xff0c;例如只有几个或者十几个元素&#xff0c;但是如果遇到…

如何定量对比两个图分类数据集的分布

以下来自gpt&#xff0c;若有勘误&#xff0c;欢迎指正&#xff1a; &#xff08;图片来自links &#xff0c;侵删&#xff09; 对于两个图分类数据集的分布&#xff0c;我们可以使用一些统计指标来进行定量对比。下面介绍一些常用的指标&#xff1a; 图分类准确率 图分类准确…

性能测试的指南:测试类型、性能测试步骤、最佳实践等

近期公司为了节省成本搞了一波机房迁移&#xff0c;整合了一些南美部署架构。有一些上google云和有些下阿里云等大的调整。 在做机房迁移项目当中就需要思考如何进行性能测试&#xff0c;这种大的机房迁移SRE&#xff08;运维&#xff09;会针对组件会做一些单组件的性能测试&a…