导语 | 2019年9月7日,腾讯技术开放日·5G多媒体专场在腾讯滨海大厦完美落幕。来自腾讯多媒体实验室的专家们给大家带来了关于5G技术和标准的精彩分享,揭开了许多关于5G的谜团。本文重点讲解5G下沉浸式媒体的重要技术:3D&点云。
封薇薇,腾讯多媒体专家工程师,2018年加入腾讯美国,担任腾讯沉浸式媒体专家工程师以及项目负责人,之前曾在美国大型社交媒体,金融公司担任多媒体系统工程师,成功交付过多项多媒体关键技术项目,拥有丰富ToB, ToC行业经验。
首先,我们分析下多媒体所处的大背景。如下图所示,所有的数据事实上都指向大部分流量尤其是手机终端流量,都是被视频所占据的。2018年大概60%数据是在给视频,在5G到来的未来,这个情况不会降低反而会更加加剧。据预测,到2024年,这个数据有可能达到74%或者更高。原因是因为我们人类对于信息的渴望是在不断增加的。纵观历史,从过去纸质书籍到广播媒体、电视媒体到现在的终端,信息量越来越大,但这个欲望从来没有被满足,这就触发了我们现在对多媒体技术的不断研发。5G时代到来,对技术的探索不是终止,反而会是更大的促进,而沉浸式媒体技术也势必会得到更好多发展。
接下来我跟大家讨论一下多媒体系统。之前多媒体是一个比较复杂的系统,这张图上所介绍的大概可以涵盖直播、点播、实时传输这几种传播特性。腾讯多媒体实验室参与的标注与产业系统,目前覆盖了行业中多个标准,大体分四类:媒体标准、网络标准、系统标准以及其他行业标准
对于工程来说,我们会具体把标准落体为真实的产品,应用到每一个技术模块上。
对于沉浸式媒体,从模块上来看包括从采集、压缩处理、传输,以及渲染和交互。对于三维场景,沉浸式媒体更加接近于真实对世界的理解或者感受,更方便或者更容易让大家和三维场景进行交互。这对我们沉浸式用户体验是非常好的展示或者应用。
下图是我们为儿童教育做的一些小的展示,主要应用的是裸眼3D和AR技术场景。后文会对3D相关的技术进行阐述。
具体怎么从二维世界到三维世界。通常看到的电视或者视频,都是通过摄像机拍摄的。它的拍摄方式是将真实世界投影到二维平面上,通过平面再进行压缩处理。对于3D来说,如何更好的展现三维的世界。可以假设眼睛是一个摄像头,看到的世界可以上下左右旋转。因此最简单的实现方式就是把三维世界投影到一个球体上,可以想象为一个球体,人是站在中心的,通过旋转来观看不同角度的场景。
三维的应用场景这样会给用户更自由观看选择,也因此更加人性化。如何把三维数据进行压缩传输,我们的想法是利用现在2D压缩传输相对比较成熟的模式来对三维的东西进行压缩传输。因此我们会运用投影技术,将三维球体投影到二维平面,可以想象将一个地球仪投影到世界地图上。这种投影方式一般称之为ERP。经过了这样的投影,将三维球体转换成二维平面,就可以用正常的二维视频技术将它进行压缩和传输。
具体怎么采集三维信息呢?拿鱼眼做举例。一般摄像头都有一个角度,任何一个镜头只有一定的视角的限制。假设是鱼眼情况下,视角限制是180度,如果想要360度,需要两个鱼眼镜头背靠背再将他们组合回去。具体方式是将鱼眼拍摄下来的图片,将右上角的图片通过镜头的角度投影回ERP,每一个都分别拥有一个180度的图像。对这两个图像进行比对,找到了对应部分的相似点,通过计算得到一个平移和旋转的矩阵,经过平移和旋转矩阵的转化,将这两个图片完全对齐,对齐后再将它们拼接起来。
事实上VR360技术是和投影技术息息相关的。一般情况下都是ERP投影情况,但事实上可以看到ERP投影情况是有一定缺陷的。在两极情况下有大量冗余信息,这些信息是不需要完全被传输的。而实验室通过对投影方式的变化在保证最终质量的同时有效的节省了25%ERP中的冗余,使整个系统在端到端的处理传输中更加的高效。
下面具体沉浸式媒体系统是怎么实现的。
首先讲一下传统多媒体,一般在点播或者直播情况下,会有容器描述音频和视频图像的存储形式。因为真实世界里网络环境非常不稳定,传输前会准备多路不同质量的视频,使在不同网络情况下用户可以随时无感切换,调整到最适合的状态。对于全景视频,我们仍然希望采用传统传输结构的原因是可以复用现有的技术架构来服务新的场景,从而避免架构调整所带来的成本增加。
OMAF作为全景视频媒体格式,除了定义媒体系统框架,针对全景视频,在视频容器中也会定义一些新参数,来指示这是不是传统视频,采用什么投影方式,也会有一些用户辅助信息,比如初始角度、推荐角度等。
虽然有了刚才的三维全景系统定义,但对于全景传输,还有一个非常大的问题。因为我们现在传输的东西是包含3D信息的,它数据量明显会大于二维,4K,8K的视频大小在三维上依旧是不够的。
但事实上虽然系统中传输的是整体三维视频,真实用户看到的因为只是其中一部分。针对这个情况,我们实验室在工程上采用了HEVC,通过其可以支持切块并行处理特性将每个快单独包装成一个独立的视频流,这样用户在下载时可以根据可视区域自由选择下载的部分,可以大大节省码率,提高可视部分的清晰度。实验表明这种解决方案,可以大概节省50%带宽。当然这种情况下对于码流估计会更加复杂,相关算法也需要进行了一些改良。
刚才说到的是360视频,一种对三维世界的描述方式。除了360视频外,还有其他对三维世界描述的方式。比如常看到的方法,把三维物体用点和面表示。另外的方法是可以用激光雷达或者摄像机矩阵将一个三维物体直接数字化,变成一个点的数据。每一个点会包括它的位置x、y、z和其他信息包括r、g、b和色彩信息y、u、v等。这样的描述方式我们称之为点云。静止的点云包含千万级数据,动态点云每帧可以有百万级数据。这种点云的描述方式有一些特性,点和点之间没有联系,没有顺序。因此可以根据这样的特性进行随意的排序,用来未来压缩技术的优化。
点云压缩分两种,一种是V-PCC,和360视频有一些类似的想法,我们想利用原有的视频压缩技术对点云进行压缩。另外一种是G-PCC,基于几何的点云压缩。
V-PCC也是一个投影的过程,它是将所有三维物体投影到不同的平面上,需要的技术是在投影过程中需要把子块划分尽量减少一些遮挡,子块需要有一些比较平滑的边缘,尽量占有比较小的空间来形成最终的压缩图片。对于G-PCC,它是更独立的压缩过程。之前说到传统视频视频会用二叉树、三叉树、四叉树,到G-PCC则是采用八叉树。举例兔子,会对兔子不停进行切割,切割到最小方块,用八叉树表示位置的编码。对于它其他属性,在得到八叉树编码时,会将属性根据八叉树进行叉值预测再计算叉进行编码。
这是点云的压缩模块。
左边是V-PCC模块,跟之前所看到的一般二维视频稍微类似一些,但会多一些投影模块;G-PCC是相对独立的编解码方式,会用到八叉树这些编码。经过V-PCC或者G-PCC的压缩,通过V-PCC,假设有10万点的30帧每秒数据,原始数据没有经过压缩,可能会达到360兆。如果进行了V-PCC的压缩后,会达到1兆。它是一个非常高效的压缩方式。对于G-PCC来说,同样10万点,10帧每秒的情况下,没有压缩的数据假设是110兆,无损压缩可以得到24兆每秒的压缩结果。
实验室在点云技术上实验室在国际国G-PCC,V-PCC上均拥有多项提案和专利。
而在国内标准上实验室牵头成立点云工作组,推进点云国家标准。
同时通过合作的腾讯自动驾驶团队,我们成果将点云压缩推广至现实产品应用,2019天预计的路测采集数据量大概十的十五次方,通过点云压缩,存储量会变为原来的1/6。
除了刚才所谈到的自动驾驶,点云和360还有其他的应用场景,比如现在所看到的自主广播视点,可以想象刚刚的点云,如果是这样一个场景,会需要大量的点来表示,数据量是非常可观的,所以我们会利用360比较适合远景的性质录制远景,近景会采用点云方式,最终会得到一个自主视点广播效果。
沉浸式媒体,是VR这块数据传输量比较大通常面临着巨大的挑战,但随着技术的发展,伴随着5G时代基础设施的迭代,这些问题已经得到了一些质的突破,所以越来越多产业已经开始更多的应用了XR技术,包括体育、文旅、娱乐、影视、科教、新闻、商业。
通过之前的数据可以看到,现在在VR/AR,将会有一个比较快速的上升期,从而为人类带来全新的体验,科技向善助力未来。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。