写点什么

用深度学习实现 2D 到 3D 的转换

  • 2020-05-11
  • 本文字数:3775 字

    阅读完需:约 12 分钟

用深度学习实现2D到3D的转换

随着 5G 时代的到来,VR 端应用呈爆发式增长,3D 内容作为构建 VR 生态的主力输出一直深受广大用户的追捧和喜爱。针对目前 3D 内容过少,质量不高、生产昂贵等现状,爱奇艺作为国内领先的互联网视频媒体,自然首当其冲,以真实世界的 3D 内容为基础,研究 2D 转 3D 技术,实现更优质的 VR 端的 3D 内容生态的构建,满足更多用户的日常需求。


相对于 2D 内容,优质的 3D 内容有输出符合真实景深关系的能力,让用户在观看时具有更好的观影体验。下面我们从技术的角度,介绍爱奇艺如何赋予 2D 内容真实的景深关系,实现 2D 内容到 3D 内容的转换。

面临的挑战

目前 2D 转 3D 技术主要问题是转制成本太高,不能大面积使用,如使用一般的策略很难适用多种场景的真实 3D 视差关系,这很容易让用户感到不适。


综合以上原因,我们考虑采用深度学习方法,通过对大量 3D 电影(side-by-side 的双目介质)真实视差的学习与建模,完成单目视图到双目视图的转换。


以下是 2D 转 3D 技术面临的几个挑战:


  • 数据集质量


  1. 3D 介质中包含大量不符合真实视差关系的双目视图

  2. 受相机参数的影响,同类场景的视差在不同的 3D 介质中不统一


  • 帧间抖动


  1. 场景多样化,需要保证视差预测的连续性与准确性

  2. 重构视图的遮挡区域空洞的填补


  • 3D 效果的评价指标难以量化


  1. 同类场景具有不同的并且满足真实世界的视差关系

  2. 3D 效果依靠人工评价,过于主观

模型原型思路

通过对大量用户的调研发现,除去特效场景刺激眼球外,3D 介质的 3D 感知越符合真实世界越受用户喜爱,因此在模型构建上必须符合真实世界的 3D 观感——双目视觉



图 1 双目相机成像与视差原理


图 1 左 所示,两个相机拍摄同一场景生成的图像会存在差异,这种差异叫视差,其产于与真实的三维空间。视差不能通过平移消除,同时离相机近的物体视差偏移较大,反之越小。


人的左右眼就如同图中的左右相机一样,分别获取对应图像后,通过大脑合成处理这种差异,从而获取真实世界的 3D 感知,通过 图 1 右 可得出视差与相机焦距和轴间距间的关系:



公式(1)


其中 为物体距离相机的深度, 为三维映射到二维的图像平面, 为相机焦距, 为两个相机间的距离轴间距, 分别为物体在左右不同相机中成像的坐标,因此可知左右图对应像素 的视差


同时,考虑到转制的对象为 2D 介质,因此,通过单目深度估计合成新视点的算法原型诞生:通过 公式(1) 可知,假设有一个函数 那么就有:



公式(2)


通过 _公式(2) _可知,只需要将 图 1 左 作为训练输入,图 1 右 作为参考,即可建立深度学习模型,通过大量双目图片对训练估计出函数𝐹。这样就可在已知相机参数(𝑏,𝑓)的前提下获取对应的深度值𝑧,完成单目深度估计的任务。


通过 公式(1)公式(2) 可以发现,深度与视差成反比,因此深度估计和视差估计的方法可以互用。Deep3D[1]虽然通过视差概率估计实现 2D 到 3D 介质的转换,但固定视差的设定,难以适应不同分辨率 2D 介质输入;


方法[2]没有充分利用双目信息作指导,景深不够细;monodepth[3]在方法[2]的基础上,充分利用了双目信息进行对抗指导,学习到更多深度细节;


SfmLearner[4]这类方法引入帧间时序信息,结构较复杂,运行速度慢。因此通过实现及适用性考虑最终我们选择以 monodepth 为 baseline,其框架结构如 图 2 所示:



图 2 monodepth 框架图


通过 图 2 框架可以看出,该框架在训练过程充分利用双目的有效信息作指导,同时测试过程也只需要单目图片进行输入,所以非常适合用于 2D 转 3D 技术的框架。

模型演变

解决相机问题


在 Baseline 模型的基础上,如果直接使用混合的 3D 电影数据集进行训练,模型将无法收敛或预测不稳定,一个最主要的问题是不同电影使用不同相机参数的摄像机进行拍摄,即使两个非常相似的电影场景,在不同的两部电影中也会有不同的景深分布,表现在模型训练中即为不同的视差值。


与此同时,不同电影的后处理方式,以及会聚相机的引入,会进一步增加建模的难度。在分析相似案例的处理方法中,我们发现可以通过引入条件变分自编码器(CVAE),在训练过程中,把每一组训练集(左右视图)通过网络提取其相机参数等信息,并作为后验信息通过 AdaIN[5]的形式引入到单目(左视图)视差图预测中,同时参考[6]中的“双轮训练”,保证了测试时随机采样相机参数分布的正确性。


解决抖动问题


在解决数据集问题后,进行连续帧预测时,发现存在预测不稳定及抖动的问题。在解决视频生成过程(尤其是连续帧深度图预测)的抖动问题中,目前最为常见的方案包含基于帧间 ConvLSTM 的[7]和[8]和基于光流的[9]和[10]。其中,[8]在不同尺度的编码和解码的过程中均加入 ConvLSTM,隐式的利用时间域上特征的相关性来稳定的预测深度图,而[7]则仅在网络输出的最后一层引入 ConvLSTM。


引入 ConvLSTM 的方法思路简单,但在 2D 转 3D 模型中却不适用,[8]使用了较多的 ConvLSTM,使得训练较为复杂,不易收敛,[7]由于电影分镜镜头种类多变,单一 ConvLSTM 预测时易累计误差,使得预测变差。



图 3 vid2vid 结构图


我们的 2D 转 3D 模型采用了类似于[10]的模型结构,如 图 3 所示,将左侧上支路改为输入三帧左视图(t,t-1,t-2),左侧下支路改为输入前两帧预测视差图(t-1,t-2),右上支路为输出当前帧所预测的视差图,右下支路改为输出前一帧预测视差图到当前帧预测视差图的光流图(t-1->t)及其 valid mask 图,最终结合右侧上下两支路结果合成当前帧视差图。


其中,在中间高维特征合并处引入上文提及的 CVAE 模块,用以引入后验相机参数信息。最终,在解决相机参数导致数据集问题的同时,模型能够得到稳定且连续的视差图输出。


解决“空洞”填补问题


由于新视角的生成,会使部分原本被遮挡的区域在新视角中显露出来,这些信息仅从左视图中是无法获取的,即使通过前后帧的光流信息也很难还原。在生成新视角的后处理过程中,我们参考[11]的模型框架设计,通过视差图来指导获取产生的“空洞”区域,通过图像修补技术解决新视角的“空洞”问题。


3D 效果测评 由于拍摄条件不同会导致 3D 效果不同,所以在 2D 转 3D 效果测评中,我们用大量人力对预测的视差图和成片在 VR 中的 3D 效果进行综合性的评测。视差图估计如图 4:



图 4 各种场景下的单目视差估计


应用扩展


不仅如此,视差图的预测也能转化为相对深度值,被应用到其他方面,例如 3D 海报。3D 海报是一张 2D 图片加上其深度关系图,通过一系列的新视点渲染,得到一组动态的,人能感知的立体影像。如图 5 与图 6 所示:



图 5 复仇者联盟 3D 海报



图 6 剑干将莫邪 3D 海报

References

[1]Xie J, Girshick R, Farhadi A. Deep3d: Fully automatic 2d-to-3d video conversionwith deep convolutional neural networks[C]//European Conference on ComputerVision. Springer, Cham, 2016: 842-857.


[2]Garg R, BG V K, Carneiro G, et al. Unsupervised cnn for single view depthestimation: Geometry to the rescue[C]//European Conference on Computer Vision.Springer, Cham, 2016: 740-756.


[3] Godard C, Mac Aodha O, Brostow G J. Unsupervisedmonocular depth estimation with left-right consistency[C]//Proceedings of theIEEE Conference on Computer Vision and Pattern Recognition. 2017: 270-279.


[4] Zhou T, Brown M, Snavely N, et al. Unsupervised learningof depth and ego-motion from video[C]//Proceedings of the IEEE Conference onComputer Vision and Pattern Recognition. 2017: 1851-1858.


[5] Huang X, Belongie S. Arbitrary style transfer inreal-time with adaptive instance normalization[C]//Proceedings of the IEEEInternational Conference on Computer Vision. 2017: 1501-1510.


[6] Zhu J Y, Zhang R, Pathak D, et al. Toward multimodal image-to-imagetranslation[C]//Advances in neural information processing systems. 2017:465-476.


[7] Zhang H, Shen C, Li Y, et al. Exploitingtemporal consistency for real-time video depth estimation[C]//Proceedings ofthe IEEE International Conference on Computer Vision. 2019: 1725-1734.


[8] Tananaev D, Zhou H, Ummenhofer B, et al. TemporallyConsistent Depth Estimation in Videos with RecurrentArchitectures[C]//Proceedings of the European Conference on Computer Vision(ECCV). 2018: 0-0.


[9] Lin J, Gan C, Han S. Tsm: Temporal shift module forefficient video understanding[C]//Proceedings of the IEEE InternationalConference on Computer Vision. 2019: 7083-7093.


[10] Wang T C, Liu M Y, Zhu J Y, et al. Video-to-videosynthesis[J]. arXiv preprint arXiv:1808.06601, 2018.


[11]Yu J, Lin Z, Yang J, et al. Free-form imageinpainting with gated convolution[C]//Proceedings of the IEEE InternationalConference on Computer Vision. 2019: 4471-4480.


本文转载自公众号爱奇艺技术产品团队(ID:iQIYI-TP)。


原文链接


https://mp.weixin.qq.com/s?__biz=MzI0MjczMjM2NA==&mid=2247486805&idx=1&sn=9cfa31a04f24b576e01cf74e9bd7fc8a&chksm=e9769176de011860984c7b64223843c8ed6e5b5a862af4f2d2434657608f5b39b7b513d33fb9&scene=27#wechat_redirect


2020-05-11 10:055766

评论

发布
暂无评论
发现更多内容

重装上阵——Graviton2提升ElastiCache for Redis的性价比!

亚马逊云科技 (Amazon Web Services)

AI/ML

阿里技术 技术人成长| 内容合集

阿里技术

技术管理 技术人生 技术专题合集

国家质量基础设施(NQI)一站式服务平台,NQI云服务平台建设

a13823115807

质量基础设施一站式服务 一站式服务平台开发

即刻到位!快速落地 Amazon 智能工厂解决方案

亚马逊云科技 (Amazon Web Services)

AI/ML

低代码实现探索(九)后台模型 json定义

零道云-混合式低代码平台

架构实战营模块七课后作业

Geek_99eefd

#架构实战营 「架构实战营」

☕【Java实战系列】「技术盲区」Double与Float的坑与解决办法以及BigDecimal的取而代之!

洛神灬殇

BigDecimal Java 开发 12月日更 Double和Float

业界福音!快来使用Amazon Transcribe服务减轻添加字幕的繁琐工序负担吧

亚马逊云科技 (Amazon Web Services)

AI/ML

销售易携手DataPipeline,推动“实时感知-主动决策-客户成功”的变革!

DataPipeline数见科技

大数据 中间件 数据融合 数据迁移 数据管理

使用 Amazon IoT 和 Amazon SageMaker 进行设备实时预测性维护

亚马逊云科技 (Amazon Web Services)

AI/ML

YB时代即将来临,三问数据存储

脑极体

区块链数字版权,区块链数字藏品交易系统开发

a13823115807

#区块链# 区块链技术应用 区块链数字藏品

太香了,终于有人耗时1000小时打造出python从入门到精通全套路线图+视频+笔记

Java全栈架构师

Python 数据库 架构 面试 程序人生

农业与科技结合?快来看Amazon Rekognition自定义标签的作用吧

亚马逊云科技 (Amazon Web Services)

AI/ML

apacheunomi漏洞介绍及代码分析

网络安全学海

黑客 网络安全 信息安全 渗透测试 安全漏洞

模块7作业

小何

「架构实战营」

动手训练属于自己的无人车,这个超强服务现已开源!

亚马逊云科技 (Amazon Web Services)

AI/ML

在Amazon SageMaker中灵活使用多种存储服务

亚马逊云科技 (Amazon Web Services)

AI/ML

微众七年营造,ABCD“四梁八柱”建构数字时代的信任底座

脑极体

如何真正学习Go 语言

宇宙之一粟

golang 学习方法 Go 语言 12月日更

模块七作业

心怀架构

架构实战 - 模块七

唐敏

架构实战营

飞桨中国行——生产制造专场

百度大脑

人工智能

如何让用户给我们做推荐?

石云升

AARRR 产品思维 28天写作 12月日更

巧用机器学习托管服务,自动化合约处理从此不在话下!

亚马逊云科技 (Amazon Web Services)

AI/ML

新能源当道,如何构建一个电动汽车电池告警预测平台?

亚马逊云科技 (Amazon Web Services)

AI/ML

SageMaker Neo优化目标检测模型加速推理

亚马逊云科技 (Amazon Web Services)

AI/ML

深入浅出 OceanBase 运维之弹性扩缩容

OceanBase 数据库

直播 弹性扩容 OceanBase 开源

开源驱动未来 | 2021新一代人工智能院士高峰论坛暨Open/O启智开发者大会开源专场顺利召开

OpenI启智社区

人工智能 开源社区 启智开发者大会

首次开源!一行代码轻松搞定中英文语音识别、合成、翻译核心功能!

百度大脑

人工智能

25天,手码Python数据分析+八大核心项目实战25W字总结,我献出了我的膝盖

Java全栈架构师

Python 数据挖掘 程序员 架构 数据分析

用深度学习实现2D到3D的转换_AI&大模型_爱奇艺技术产品团队_InfoQ精选文章