0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

从2D到3D,沉浸式的实时视频通信是如何实现的?

BYXG_shengwang 来源:未知 作者:姚远香 2018-10-05 16:54 次阅读

过去几年,我们探索工作的初衷是什么?就是如何在未来提供更好的沉浸式的通讯体验。

我们所从事的是通信技术。最早,我们提供电网络,语音通话是我们唯一的业务。语音通话的体验很重要,但始终无法提供面对面、身临其境的体验。如何提升呢?第一步,就是加入视频,有了视频就拉近了彼此距离,双方获得了更好的交流体验。但这还不够。

在我们的设想中,沉浸式的通讯体验应该像图中所示,人们在通话时就像在同一个屋子中相视而坐。这是我们希望最终达到的体验效果。

在7、8年前,我们做了一个项目,它叫 Augmented Personal Telepresence Overlay System(如下图)。那时,统一通信的概念已经比较普遍,每个人在自己的桌面上都可以发起实时通信,但体验并不特别好。那时深度相机开始出现了,它通过对深度的获取可以把人物分割出来,分割出来之后在桌面上进行视频通话时可以把两个人放到一个空间里。在这个项目里,每个人坐在自己的桌子前,通过深度相机将人从环境中分割出来之后,可以在电脑上看到两个人坐在一张桌子上,但其实他们是在不同的屋子里。同时,支持屏幕共享,这让沉浸感得到了提升。

图:Augmented Personal Telepresence Overlay System

但是这个项目看起来还是在一个小屏幕上,它的沉浸感比较弱。那么我们能不能进一步提升沉浸式的体验呢?

2012年,我们采用了更大的屏幕。这个屏幕就像一面墙,需要把人物的全身从背景中分割出来。那时深度学习没有广泛被大家了解,不像现在用深度学习进行图像的分割已经非常普遍。那时的图像分割比较困难,需要借助于一些手段对人的动态进行分割,才可以把它叠加在同一个背景下,这样你站在这个大屏幕前,跟对方才有面对面、沉浸式的感受。

刚刚的项目虽然提供了一定的沉浸感,但是它无法提供六自由度。2013年、2014年,各类 AR、VR 设备陆续面市。而头盔、眼镜,弥补了这一特性,能提供更沉浸式的体验。

我们怎样把沉浸感的视频通信实现出来呢?

2016年,微软做了一个名为 Holoportation 的项目。通过这个眼镜,我们配合采集3D的软件进行实时建模,然后传递给对方,对方戴上眼镜可以实现六自由的实时交互。在眼镜中,另一个人是通过实时的3D 建模,在本地渲染出来的。

图:微软的Holoportation

这与以前 2D 时代非常不同,需要进行 3D 建模。在以前传统的 2D 时代,我们会从一个角度,用一个摄像机,拍一个视频,然后实时获取到信息后,传递给对方,1分钟内就可以重现它,并进行渲染。到了 3D 环境下,我们没有办法再利用一个摄像机,来获取 人物的 3D 信息。如何获取这个信息,变成了非常具有挑战性的工作。

以前 2D 时,我们获取的信息是像素,一个 XY 座标,座标上有 RGB 的信息,有了这个信息就可以得到完整的 2D 画面。

但是到了 3D 时,信息变成了三维的,我们需要在三维坐标上要有色彩信息和其他属性 信息,现在没有一个手段能够直接获取它。当然,现在有很多种尝试。我们现在的系统是试着实现多视角,要能同时从四面八方获取信息,所以我们采用了八视角,有八组相机分布在人的周围,进行实时的采集。

3D 的采集在很早以前就有。如果不是实时的,用几百个摄像机,可以非常好的进行重建,但都是离线状态下进行重建,需要很长时间。但是,我们要做到实时的采集、重建,非常困难。

我们简单来讲一下当时我们是如何来实现实时的 3D 的采集(如图)。首先我们用了八组深度摄像机来进行采集,然后实时地生成点云信息。

在动态重建时,frame 之间的差别很大。如果 frame 与 frame 之间没有一定约束的话,人们看到的图像会抖动、晃动,效果会很差。如果要提升效果,就要有动态的约束。对于人物这种非刚性的物体进行实时重建,挑战是非常大的。在这个重建过程中,我们是用八个摄像机获取到的深度彩色图,合成为当前 frame 的模型。而它与前一个 frame 需要进行空间的匹配,从前一个模型匹配到当前的模型。我们知道,在 2D 中,我们只需要计算运动矢量,但在 3D 中则需要进行矩阵的运算,空间搜索非常复杂。在完成匹配之后还需要进行融合,融合后形成当前 frame 的 3D 模型。然后,我们再从点云模型计算 Mesh。

纹理也很有挑战性。我们有八个摄像机,它们从不同视角观察同一个点的时候,由于光照不同、角度不同,它颜色、纹理都有差异。所以在这个过程中,还需要我们进行融合、优化,才能有比较平滑的视觉观感。然后再进行传输。在传输时,我们也做了一些简单的压缩。比如我们将 3D 纹理转为 2D ,再进行压缩。在这个过程中,我们也做了很多工作,比如 frame 与 frame 之间如何匹配,才能使他们相关性更高,从而提升压缩率。

以上就是我们所做过的一些尝试。

其实,国际上有很多组织也在研究相关的技术标准。例如,MPEG 组织也在考虑未来的沉浸式信息,如何编码、表示和传输。我们也正积极参与其中,与更多人共同探索。

目前 MPEG 正在做的就是 MPEG-I。它是针对未来沉浸式多媒体的格式、编码、压缩、传输等一系列的标准。大家可能了解的更多的就是与视频相关的 MPEG-I Part3。实际上大家可以将它理解为 H.266,也就是 H.255 的下一代。它会更多地针对沉浸式媒体的压缩。另一方面就是 MPEG-I Part5,即点云的压缩。这与我们刚刚分享的项目非常相关。当你获得了 3D 模型,怎么进行高效的压缩、存储、传输,国际上也有相应的标准化组织在共同探索如何来做。现在来讲还属于比较超前的研究,仍处于早期阶段。这也是第一次在 MPEG 里尝试做点云的标准化工作,预计在明年会有第一版的标准。

在点云压缩标准中有两个类别,第一种是对静态的高质量 3D 模型进行压缩;第二种是针对动态的 3D 模型进行压缩;第三种则是针对边采集边生成点云时,如何来进行压缩。其中第二种与我们正在做的项目更加相关。

在去年的一次 MPEG 的会议上,我们经过对比选择了由苹果提出一套基于视频压缩的方案,它是目前性能表现最好的。随后我们各个公司也会基于这套方案来进行不同程度的改进,最终会形成一套标准。

这套压缩方案是怎么做的呢?首先对一个动态的 3D 模型压缩时,将它映射到 6 个 2D 平面上,然后再 patch 放在同一个 2D 的图中,最后将 Patch 信息、纹理、色彩、空间数据等到一起,再进行编码传输。

VPCC(Video Point Cloud Compression)编码器端的基本工作流程是这样的:首先进行映射,然后选取每个部分映射到哪一个面上,然后生成 patch 信息,用视频的方法进行压缩。因为在压缩之后会有一定的误差,所以要根据原来的 patch info 进行调整,也就是图中的“smoothing”模块。调整之后,再通过视频的方法对它进行压缩。

图:编码器架构

图:解码器架构

由于在 3D 上进行配准、深度计算等工作的复杂度非常高,所以现在我们在计算能力上海很难实现非常高精度的 3D 实时建模重建。但是随着我们计算能力的不断提升,以及深度学习的应用,可以进一步提升我们算法的性能。所以在未来会有更长足的发展。虽然动态的、高还原度的 3D 重建距离商业应用还有很长的距离。但回想我们在7、8年前做的图像分割的技术,当时来看有很大的难度,但现在已经在手机中得到了广泛应用。所以我们相信其中很多技术会逐步得到应用。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 3D
    3D
    +关注

    关注

    9

    文章

    2756

    浏览量

    106450
  • 2D
    2D
    +关注

    关注

    0

    文章

    58

    浏览量

    15089
  • 视频通信
    +关注

    关注

    1

    文章

    20

    浏览量

    9116

原文标题:RTC 技术分享 | 从 2D 到 3D,沉浸式的实时视频通信

文章出处:【微信号:shengwang-agora,微信公众号:声网Agora】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    MOS管2D3D都带来了哪些优点#电路原理

    3D
    电子学习
    发布于 :2022年12月03日 13:55:40

    3D LED液晶电视设计方案

    的DVD ,蓝光DVD提供了更为清晰的高清片源,尤其是3D片源,蓝光DVD的接口由HDMI1.3 发展到了支持3D格式信源设计的HDMI1.4标准。本文着重介绍了一种实现能够播放3D
    发表于 07-11 18:05

    ModelSource免费的原理图,PCB组件库 和 2D & 3D 模型下载

    ModelSource是一个免费在线的工程模型数据库,它包括原理图,PCB组件库 和 2D & 3D模型,帮助电子设计工程师大大节省设计时间和帮您消除手动建立图库的风险,拥有超过十万个PCB
    发表于 12-26 17:39

    Ansys Maxwell 3D 2D RMxprt v16.0 Win32-U\

    Ansys Maxwell 3D 2D RMxprt v16.0 Win32-U\RMxprt 软件可提高旋转电机的设计和优化速度。用户通过软件可以很简单地利用电机参数及模板驱动型用户界面对电机建模
    发表于 06-13 17:09

    针对显示屏的2D/3D触摸与手势开发工具包DV102014

    包(DV102014),这是业内第一款专门针对在显示屏上集成2D投射电容触摸(PCAP)与3D手势识别功能的开发工具包。有了这款工具包,设计人员可以十分方便地访问Microchip拥有专利的
    发表于 11-07 10:45

    如何同时获取2d图像序列和相应的3d点云?

    如何同时获取2d图像序列和相应的3d点云?以上来自于谷歌翻译以下为原文How to obtain the sequence of 2d image and corresponding 3d
    发表于 11-13 11:25

    视频中跟踪脸部使用2D模式找不到任何面部

    ,当我使用2D模式,并且选择了“脉冲”模块时,第一帧是正常的,但是从下一帧开始,尽管图像与第一帧相同,但它找不到任何面部。当模式为“3D IR”或未选择“Pulse”模块时,一切正常。有没有人遇到过同样
    发表于 11-20 11:35

    Intel Q33 express芯片组如何启用2D3D

    根本无法打开它们。错误消息是我的显卡不支持webgl。问题:由于这是一张旧卡,有没有更新的显卡我可以替换它?我确实将我和我的女朋友进行了比较,并注意到我的不支持2D3D,而她的确如此,她对游戏没有
    发表于 11-21 11:47

    请问网上下载的altium 3D库怎么使用?

    网上下载的3D库,怎样使用?零件库分2D3D2D库分为pcb.lib库sch.lib库仿真模型库。下载的
    发表于 04-08 03:58

    请问怎么才能将AD中的3D封装库转换为2D的封装库?

    请问怎么将AD中的3D封装库转换为2D的封装库
    发表于 06-05 00:35

    如何在AltiumPCB中2D库里导出3D

    请问PCB 中2D 库中怎么导出3D
    发表于 09-11 22:17

    为什么3D2D模型不能相互转换?

    AD17.1.5软件,3D2D模型不能相互转换,按3可以进入3D模型,按2不可以进入2D模型,
    发表于 09-20 05:35

    自动3D X射线和离轴2D X射线检查

    In many cases, there is a complementary choice of automated 3D X-ray and off-axis 2D X-ray
    发表于 10-28 06:18

    PYNQ框架下如何快速完成3D数据重建

    3D可视化,作者创建了自己的3D2D可视化算法。这对于视频输入来说足够快了,我们通过移动输出模型来证明这一点。接下来,在PYNQ-Z
    发表于 01-07 17:25

    如何促使2D3D视觉检测的性能成倍提升?

    本文介绍的三个应用案例展示了业界上先进的机器视觉软件和及其图像预处理技术如何促使2D3D视觉检测的性能成倍提升。
    发表于 02-22 06:56