DeepLens: 单目图像浅景深效果渲染算法
导读: 大连理工大学与 Adobe Research 实验室联合提出基于深度学习的单目图像浅景深效果渲染算法。该算法不依赖额外的深度信息, 在特征空间进行滤镜模糊操作,实现了从图像到最终输出的端到端映射。
1. 引言
浅景深效果(Shallow Depth of Field)是指通过选取合适的相机焦距、光圈等参数, 使对焦点前后有限景深范围内的成像相对清晰,而景深外成像较为模糊的摄影效果(如图1所示)。 浅景深效果的获取是摄影艺术中的重要技巧,往往依赖于昂贵的摄影设备(如单反相机),且一经拍摄后, 无法调整聚焦点位置和模糊程度,实现再聚焦(Refocus)。
![](DeepLens/img/4/0.jpg)
全清晰图像
![](DeepLens/img/4/1.jpg)
聚焦前景区域
面向上述问题,计算机视觉和图形学领域的研究人员尝试采用软件算法,为单幅全清晰图像渲染浅景深效果。 该类算法往往被称为图像空间的浅景深渲染算法。其基本思路是采用后处理的方式, 根据图像深度信息对不同像素点进行不同程度的模糊。 由于这种后处理的方式往往是人工预先设定的,在许多情况下效果不够理想,易造成颜色溢出,深度不连续等伪影。 此外,该类算法依赖额外的硬件,以设备获取场景深度信息。
在近期发表于ACM Transactions on Graphics (SIGGRAPH Asia Edition) 的论文中[BibTex], 大连理工大学与Adobe Research实验室的研究人员合作提出了一种可学习的浅景深效果渲染算法,命名为DeepLens算法。 该算法采用深度卷积网络,实现了从全清晰图像到浅景深图像端到端的映射,赋予用户在选择聚焦点、模糊程度方面更强自由度的同时,无需额外的深度获取设备。 在高质量的训练样本上学习后,该算法可以很大程度上消除图像伪影。图2与图3展示了DeepLens算法针对不同模糊尺度和聚焦位置的浅景深效果渲染结果。
![](DeepLens/img/2.gif)
图2. DeepLens 算法针对不同模糊尺度的渲染效果
![](DeepLens/img/3.gif)
图3. DeepLens 算法针对不同聚焦位置的渲染效果
2. 网络结构
DeepLens算法所采用的卷积网络由三个子模块构成,分别为深度预测 (Depth Prediction)、 滤镜模糊 (Lens Blur) 和引导上采样 (Guided Upsampling) 模块(如图4所示)。 为降低运算复杂度,首先将输入图像进行下采样,并在低分辨率预测深度图; 滤镜模糊模块以预测的深度图和聚焦点位置、模糊程度等参数作为输入,在低分辨率特征空间, 对全清晰图像进行浅景深效果的渲染;最后,上采样模块以高分辨率全清晰图像,以及低分辨率全清晰图像和深度图作为指导, 以递归的方式实现低分辨率浅景深图像的上采样过程。
![](DeepLens/img/3.jpg)
图4. DeepLens 算法网络结构概览
深度预测模块:如图5所示,该模块的编码网络采用预训练的 ResNet50 实现。 解码网络对特征不断上采样,并采用跳连的方式,集成相同分辨率的编码网络特征,从而补充网络丢失的细节特征。 为了增网络对物体边缘的刻画能力,同时采用深度估计和前景分割数据库,以多任务的方式对网路进行训练。
![](DeepLens/img/4.jpg)
图5. 深度预测模块网络结构
滤镜模糊模块:滤镜模糊的基本思路是采用空间变换的卷积核 (Spatially Variant Kernels) 对图像卷积, 实现景深外区域的模糊。网络经过学习可以根据深度图,对不同位置卷积核的模糊尺度进行预测。 然而,在实际应用中,这一方法的计算和空间复杂度较高,且随着最大模糊尺度二次增长。 为此,原文作者提出基于特征空间的滤镜模糊操作。 在特征空间中 1x1 的卷积操作,即可实现与原始图像中 64x64 大小卷积操作 等价的模糊程度。具体而言,滤镜模糊模块由卷积核预测网络和特征提取网络构成(参见图6)。 其中,卷积核预测网络根据图像深度为每一像素分别预测 1x1 的卷积核。 浅景深效果的渲染则通过将预测的卷积核作用在所提取的特征中实现。
![](DeepLens/img/5.jpg)
图6. 滤镜模糊模块网络结构
引导上采样模块:传统算法在对浅景深图像上采样时,难以恢复清晰的聚焦区域,甚至引入额外的伪影,因而整体效果欠佳。 原文作者提出引导上采样模块,通过将高分辨率全清晰图像与低分辨率浅景深图像相融合,以获取高分辨率的浅景深图像。 如图7所示,引导上采样模块在低分辨率和高分辨率图像中同时提取特征,并预测对应的空间权重图。 该权重图可以有效的区分浅景深图像中的聚焦于散焦区域,为高低分辨率图像的融合提供指导。
![](DeepLens/img/7.jpg)
图7. 引导上采样模块网络结构
3. 网络训练
深度预测模块的训练单独进行。为提升其泛化性能,采用移动端双摄像头, 跨城市收集了2462张不同场景的深度图像,以满足网络训练对数据多样性的要求。 与深度预测相比,浅景深效果渲染主要涉及低层操作,对图像语义信息的理解没有过多要求。 为了尽可能避免伪影,原文作者提出一种图像合成策略,用于生成全清晰和对应的浅景深图像对。 通过在合成数据集上的联合训练,滤镜模糊和引导上采样模块在真实图像上取得了较好的泛化能力。
4. 结果展示
如果视频无法显示请手动点击视频链接
5. 下载
联系方式:
王立君 | ljwang [at] dlut [dot] edu [dot] cn
author={Wang Lijun and Shen Xiaohui and Zhang Jianming and Wang Oliver and Lin Zhe and Hsieh Chih-Yao and Kong Sarah and Lu Huchuan},
title={DeepLens: Shallow Depth of Field from a Single Image},
journal={ACM Trans. Graph. (Proc. SIGGRAPH Asia)},
year={2018},
pages = {6:1-6:11},
volume = {37},
number = {6}
}