DeepLens:Shallow Depth Of Field From A Single Image论文阅读笔记

本文的目标是从单一的全聚焦与可控焦距和孔径大小的图像中生成高分辨率的浅景深(DoF)图像。所有模块都是可微的,都是从数据中学到的。为了训练深度预测模块,我们收集了2462个带有双镜头相机的手机捕获的RGB-D图像数据集,并利用现有的分段数据集改进了边界预测。并进一步利用一个已知深度的合成数据集来监督镜头模糊和引导采样模块。实验验证了该系统和训练策略的有效性。本文的方法可以生成高分辨率的高质量浅层DoF图像,产生的伪影明显少于baseline和现有的单图像浅层DoF合成解决方案。iPhone人像模式是一种基于双镜头深度相机的最先进的浅景深解决方案,相比之下,我们的方法产生了与之相似的结果,同时允许更大的灵活性来选择焦点和孔径大小,而不仅仅局限于某一个特定捕捉设置。
1.介绍
浅景深(DoF)效应是摄影中的一项重要技术,它通过模糊图像的其余部分来吸引观众的注意力。通常,这些照片是用昂贵的单镜头反射(SLR)相机和大光圈镜头拍摄的。这使得对普通摄影师来说完成浅景深图像不那么容易。此外,一旦捕捉到特定的浅景深图像,就不能轻松地编辑这些图像,以重新聚焦到其他区域,或改变散焦量。
在这项工作中,我们提出训练一个神经网络系统,它能对普通相机或移动设备拍摄的全焦点照片产生合成的浅自由度效应。我们的网络由用于单幅图像深度估计的深度预测模块、用于预测空间变化的模糊内核的镜头模糊模块和用于生成高分辨率浅自由度图像的引导上采样模块组成。
整个网络是完全可微的,因此允许端到端训练。然而,对于非静态内容的不同场景,很难捕获所需的特定训练数据(全聚焦和浅自由度图像对)。数据收集的一个潜在解决方案是,利用现有的渲染方法,利用深度地图生成真实场景的地面真实浅自由度图像。然而,基于图像基础的方法有各种各样的伪影存在。另一种解决方案是采用无人工合成数据,但难点在于如何将这些数据泛化到真实世界的图像中。基于上述讨论,本文利用分段训练来解决问题。具体来说,由于深度预测需要对图像进行语义理解,因此我们对实际图像的深度预测模块进行训练,使其具有泛化能力。与之对比的是,基于DoF效果基础上的预测深度主要涉及到如何在生成与真实数据上保持一致。为了减少伪影,镜头模糊和引导上采样模块进行联合训练来生成高质量的合成图像。
为了训练我们的深度预测模块,本文收集了一个新的数据集,包括2462张不同内容的RGB-D图像。RGB-D图像是由iPhone上的双镜头照相机拍摄的。与现有的RGB-D数据集相比,本文的数据集包含更多不同的内容,更关注日常场景和常见的摄影主题。并进一步利用现有的突出对象数据集,通过辅助前景分割任务来增强深度训练,提高了目标边界的质量,使深度预测模块更好地推广到不同的内容和图像类型。
镜头模糊模块与引导上采样模块一起,根据预测的深度图生成高分辨率的浅自由度图像。为了联合训练这两个模块,我们引入了一个由具有已知深度和遮挡信息的场景组成的综合数据集,该数据集可用于实现无伪影的浅自由度监控。在训练过程中,我们进一步随机扭曲已知的深度,使镜头模糊模块和引导上采样模块使对不准确的深度地图具有鲁棒性。经过训练,可以引导上采样模块递归应用于镜头虚化模糊模块的输出,生成任意分辨率的高分辨率结果。
我们对结果进行了研究,结果表明我们的结果显著优于现有的基于单一图像的解决方案,并且能够与iPhone竖屏模式渲染的图像进行DoF比较,后者需要双镜头相机的深度输入。我们的方法可以用于任何相机,并允许用户控制焦点和模糊量的互动率。我们进一步证明,我们的方法可以应用于更一般的场景,如历史照片,甚至绘画。
总体而言,我们的贡献包含了以下几点:

  1. 一种基于学习的DoF渲染方法,与现有的手工设计的镜头虚化模糊方法相比,该方法生成的工件更少,同时对不准确的深度映射更鲁棒。设计训练损失的目的是使训练聚焦于不连续深度边界上。
  2. 种内存效率高的网络结构,在压缩的特征空间中执行延时模糊操作,并递归地应用引导上采样以产生高分辨率的结果。
  3. 设计了一种结合真实数据和合成数据的训练方案,用于一般单幅图像的浅层综合。

2.相关工作
深度重建是计算机视觉领域的一个经典问题,有大量的文献资料。在这里,我们回顾了基于学习的单图像深度估计方法,以及在镜头模糊效果背景下处理深度的相关工作。
单幅图像的深度估计:CNN已被证明是学习单个图像深度预测的强场景先验的强大工具,通常通过训练来重建深度相机时代的输出。然而,深度相机通常在距离、图像平等性、便携性和分辨率方面存在限制。因此,在原始深度数据上训练的模型通常只能在有限的场景中工作。然而,只有使用光圈监督才能产生深度模糊,特别是在场景多样化的情况下,我们发现,我们无法仅使用光圈监督产生高质量的结果。
混合图像深度估计:利用多幅图像的对应关系是获取深度信息最常用的方法,目前已有几种方法在浅层效果的情况下使用了这种方法。这些方法都执行一个两阶段的过程,其中预先计算的深度和聚焦图像是用来合成低自由度的结果。与此相反,我们从单幅图像中计算深度,并引入一个差分浅自由度渲染器,该渲染器经过训练对估计深度的误差具有鲁棒性。
镜头模糊效果:在一个RGB-D图像上操作的镜头模糊效果不能产生一个精确的结果,因为散焦模糊需要看到物体的后面。现有的近似透镜模糊的方法一般可分为目标空间方法和图像空间方法。对象空间方法探索了光线追踪和真实的相机模型,,在绘制逼真的浅层DoF图像时更有效,但是这些方法大多耗时,且需要三维场景表示,这是很难实现的。图像空间方法对单个图像进行操作,并将浅景深效果渲染作为后期处理步骤,进行采集和扩散操作。然而,这种方法使用离散深度的固定卷积核,并将它们混合起来生成最终图像。可能导致在深度不连续处出现强度泄漏,并且无法在离焦区膨胀处处理前景遮挡器。与这些方法相反,本文的方法使用了一个镜头模糊模块,它是由真实的镜头光学驱动的,可以产生像前景失焦这样的效果,这更具有挑战性。该方法允许用户交互修改浅层DoF参数,无需专用的硬件深度模块即可生成具有可比性的结果。
在这里插入图片描述3.方法
本文提出了一种基于物理模型的方法,包括三个模块:深度预测、镜头模糊和引导采样。
3.1深度预测
本文利用一个autoencoder-decoder结构在新制作的RGB-D数据集上进行训练,为了进一步提高我们的模型在不同图像类型间的泛化能力,我们使用了一个额外的前景分割任务来增强训练。在深度预测中,辅助分割任务也能实现更精确的目标边界划分,这对于浅景深渲染至关重要。
深度预测模块如图左下所示,包括一个自动编码器和解码器,后面则是前景分割以及深度预测同时进行。自动编码器由ResNet的特征提取层组成,最后一层为Atrous卷积(带洞的稀疏卷积),保证特征图谱的分辨率足够高,利于小物体与边界的检测。紧随其后的是四层金字塔池化层,解码器用3×2双线性上采样层对特征图进行上采样,每一层都跳过编码器的连接。在解码器的最后,网络被分成两个小的多任务线,每个线由三个卷积层组成。这些头分别生成深度预测和前景分割。
浅层DoF渲染只依赖深度序数信息,不需要重建绝对深度值。因此,我们反演深度来计算视差,该视差通过最小值和最大值进一步标准化到[0,1]的范围。对地面真实和网络预测采用相同的方法进行归一化处理。我们使用“深度预测”来引用这些标准化的倒置深度图的生成。
然后使用以下损失函数对网络进行多任务训练:
在这里插入图片描述
D和S分别是预测的深度特征图和前景分割图,在这里插入图片描述
是相对应的标签值,γ是平衡两个任务的超参数,因为上述两个变量来自不同的数据集,因此每一个mini-batch里包含的图像均来自两个不同的数据集。在测试阶段,我们只保留深度预测流,而放弃前景分割流。
3.2镜头模糊渲染
在给定深度图和原始图像的情况下,利用已有的图像空间或物体空间渲染方法来近似镜头模糊效果。但是这些方法往往会在边界处产生残影。因此,为了获得更高的质量结果,我们使用一个可微神经网络来近似空间变化的镜头模糊核,并将该网络在一个无伪合成数据集上训练。本文的方法生成的边界的残影比其他方法的更少,边界更精确。
这种方法的一个挑战是,由于内存消耗,无法直接预测和应用学习的空间变化镜头模糊核。为了减少计算量,首先将原本高清晰率的图片做了降分辨率处理,并依靠后续的递归引导上采样模块生成高分辨率的结果。
3.2.1在学习的特征空间里做镜头虚化处理
镜头模糊模型由特征提取网络和内核预测网络组成。特征提取网络输入是一个由h×w的全焦RGB图像生成的h×w×c的热图。为了捕获多尺度特征,将所有中间特征映射串联起来,得到最终的特征图。
在给定深度图、焦深和孔径半径的情况下,利用核预测网络生成ah×w×c核张量,对每个图像位置的核进行1×1模糊处理,然后将其应用到提取的每个颜色通道的特征图上,得到浅的DoF效果,浅自由度图像的表达式是:
在这里插入图片描述
其中,Li(x,y)表示重新绘制的DoF图像在位置(x,y)处的颜色值。由于核预测和特征提取网络是在浅自由度的监督下联合训练的,它们以数据驱动的方式学习生成所需的内核和特征,从而得到高质量的浅自由度结果。因为预测的深度本身可能是不准确的,仅仅依靠预测深度来推断模糊核会提高预测不准的可能性。因此,最终的内核预测网络也以全焦图像作为输入,允许它根据图像上下文对预测深度图中的误差进行校正。这也会有更健壮的推理。
3.2.2控制焦距和孔径大小的参数
网络需要焦深和孔径半径来生成输出图像。我们用一个有符号的深度图通过减去预测的标准化深度的震源深度地图来编码焦深在这里插入图片描述在这里插入图片描述在这里插入图片描述是焦点深度。为了将孔径大小编码到网络输入中,只需平铺所需的孔径大小并将其与带符号的深度映射连接起来。然而,我们发现这种方法的结果并不理想,因为网络很难知道模糊量和孔径半径之间的关系。相反,我们提出了一种更简单、更有效的替代方法,该方法由DoF的物理特性决定,其中网络以签章的深度图作为输入,并经过训练,为我们的方法rm处理的最小孔径半径生成浅的DoF图像。要想成功地做到这一点,网络必须学会根据到焦平面的距离添加不同的模糊量。在测试时,我们允许用户通过缩放输入深度贴图的比例来控制模糊量。验结果表明,该方法具有较强的鲁棒性,可以在测试时实现孔径半径的连续控制。
3.2.3浅景深上采样
我们可以使用开箱即用的超分辨率方法来提高输出分辨率,但在我们的情况下,我们在原始的高分辨率全聚焦图像中有额外的信息。现有的大部分超分辨率方法并没有假设这些额外的信息,因此不能轻松地恢复清晰的焦点区域。一个关键的观察结果是,我们应该利用全聚焦制导图像对聚焦区域进行上采样,而模糊离焦区域应该更多地依赖低分辨率浅自由度图像。在此基础上,我们提出了一种上采样网络,它从低分辨率空间中独立提取特征,利用双线性上采样,将低分辨率特征上采样到与高分辨率特征相同的分辨率。然后,该网络根据高分辨率和低分辨率特征的串联,预测出两个高分辨率的空间权重图。最后的高分辨率浅 DoF图像是通过高分辨率全聚焦图像与上采样浅层图像的加权组合得到的:
在这里插入图片描述这里的计算符号是点乘,A为高分辨率全聚焦图像, 是表示从低分辨率版本上采样的浅DoF图像。
3.2.4联合训练
由于镜头模糊和引导上采样模块都是完全可微的,我们通过最小化产生的低分辨率和高分辨率结果与对应的地面真实值之间的差异来联合训练这两部分。然而,对于浅自由度图像的渲染,场景中最具挑战性的部分是具有深度不连续的对象边界。这些区域只占整个图像的一小部分,但对感知质量有重要影响。传统的L1与L2损失不能解决这个问题,会导致边缘残影的问题,因此提出了如下的正则化表达式来加以解决:
在这里插入图片描述

X与Y分别是分别表示预测和地面真值;i表示空间指数。L表示像素方法上的损失,在这里插入图片描述 表示网络参数可以优化,在这里插入图片描述在i处的损失权重 由局部误差加以计算,在这里插入图片描述 ,超参数设置为1.5也是可行的。在我们的实验中,我们采用绝对差分作为像素级的有损损失。表达式可以写作:
在这里插入图片描述
与标准的Lp损失不同,这种归一化更加强调错误较大的像素,然后使用归一化损失联合训练镜头模糊和引导上采样模块
在这里插入图片描述低分辨率预测L与高分辨率的副本H利用上式联合计算,并采用随机梯度求解器对损失进行优化。
实验部分就略去不表了,有兴趣的大家自己看原文。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值