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

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

面临的挑战 

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

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

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

  • 数据集质量

3D介质中包含大量不符合真实视差关系的双目视图
受相机参数的影响,同类场景的视差在不同的 3D 介质中不统一
  • 帧间抖动

场景多样化,需要保证视差预测的连续性与准确性
重构视图的遮挡区域空洞的填补
  • 3D 效果的评价指标难以量化

同类场景具有不同的并且满足真实世界的视差关系
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.


学术派 |用深度学习实现2D到3D的转换相关推荐

  1. 2d的公式_用深度学习实现 2D 到 3D 的转换

    随着 5G 时代的到来,VR 端应用呈爆发式增长,3D 内容作为构建 VR 生态的主力输出一直深受广大用户的追捧和喜爱.针对目前 3D 内容过少,质量不高.生产昂贵等现状,爱奇艺作为国内领先的互联网视 ...

  2. 双目相机定位3d python_用深度学习实现 2D 到 3D 的转换

    随着 5G 时代的到来,VR 端应用呈爆发式增长,3D 内容作为构建 VR 生态的主力输出一直深受广大用户的追捧和喜爱.针对目前 3D 内容过少,质量不高.生产昂贵等现状,爱奇艺作为国内领先的互联网视 ...

  3. 学术前沿 | 基于深度学习的视觉三维重建研究总结

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 三维重建的意义 三维重建作为环境感知的关键技术之一,可用于自动驾驶 ...

  4. 3D深度学习总结(聚焦3D深度学习的现在于未来)

    3D深度学习总结(聚焦3D深度学习的现在于未来) 本文经机器之心(微信公众号:almosthuman2014)授权转载,禁止二次转载 选自The gradient[点击此处],作者:Mihir Gar ...

  5. 基于深度学习的2D图像目标检测

    参见第一部分网址1,第二部分网址2 目前学术和工业界出现的目标检测算法分成3类:(参见一文读懂目标检测:R-CNN.Fast R-CNN.Faster R-CNN.YOLO.SSD) 1. 传统的目标 ...

  6. 为了好好看球,学霸们用深度学习重建整个比赛3D全息图

    http://mp.ofweek.com/vr/a745673021206 周四晚上11点,万众瞩目的世界杯终于开踢了,虽然意大利.荷兰.智利.中国(手动滑稽)等强队没能进入本届世界杯,但C罗梅西谁主 ...

  7. CSS学习(五)—— 背景与渐变、2D与3D的转换

    八.背景与渐变 1.背景基础知识 1) 背景颜色基础知识 background-color 属性表示背景颜色,颜色可以用十六进制.rgb().rgba()表示法进行表示 注:padding区域是由背景 ...

  8. 实战:基于深度学习和几何的3D边界框估计

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 3D 对象检测问题在需要决策或与现实世界中的对象交互的机器人应用中 ...

  9. 深度学习-卷积神经网络实现图像风格转换

    盛夏,闲鱼式的生活也越发充满味道.烈日,在高高的天上散发着火炉的气息.小浪怀念着在海边度假的日子,但是内心的使命感把他拉回了现实. 卷积神经网络可以实现图像风格的转换.小浪也来写个程序,实现下这个功能 ...

最新文章

  1. VMware ESXi 中的 CentOS 硬盘扩容
  2. 利用Use Case为系统行为建模(3)
  3. 程序员颈椎病康复秘籍
  4. CF1B Spreadsheets
  5. python爬取淘宝商品做数据挖掘_Python 3爬虫 数据清洗与可视化实战 Python数据抓取技术 python3网络爬虫教程书籍 运用Python工具获取电商平台页面数据挖掘书籍...
  6. Git clone命令出现fatal repository not found错误
  7. CMD(SA400 Command)
  8. 概率论 第四章 随机变量的数字特征
  9. 0220互联网新闻 | 豆瓣FM获腾讯音乐娱乐集团投资;华为云将在新加坡拓展云平台和人工智能能力...
  10. docker多个容器一起打包_详解Docker 容器基础系统镜像打包
  11. php7 setcookie无效_PHP setcookie() 函数 | 菜鸟教程
  12. 网络与IO知识扫盲(四):C10K问题、BIO的弊端与NIO的引入
  13. Hybrid APP的离线存储总结
  14. https证书密钥生成步骤
  15. 近几年热门的计算机专业,中国近十年最受高考状元青睐专业排行榜
  16. e路航 LH900N地图升级
  17. List把特定元素排在第一位
  18. 简洁大气留白风格源码资源站 emlog模板
  19. Python创建决策树—解决隐形眼镜选择问题
  20. EXCEL基础操作:隐藏,冻结,查找(搜索),锁定,保护

热门文章

  1. NET-A-PORTER.COM颇特女士将独家推出ETRO 2015早秋限定系列
  2. android 广播的插件化
  3. Java 设计模式之策略模式(Strategy Pattern)
  4. 快学会这个技能-.NET API拦截技法
  5. Hazel引擎学习(六)
  6. 第七届校长邦“榜样的力量教育盛典”召开 掌门教育荣膺年度“影响力教育品牌”
  7. 兔年新春,快来领取你的春节全屏动效吧
  8. eplan PLC画图
  9. java生成订单唯一编号_java唯一订单号生成
  10. mysql报1032_MySQL SQL_ERROR 错误号 1032解决办法