本文为媒矿工厂编译的技术文章
原标题:On the convergence of Video and 3D Graphics
作者:Leonardo Chiariglione
原文链接:https://www.linkedin.com/wukong-web/articleShare/6575992232912973824?ts=1567867620332&trk=article_share_wechat
翻译整理:武国庆
绪论
几年来,MPEG一直在探索如何有效地表示(即压缩)来自一系列技术的数据,为用户提供动态沉浸式视觉体验。在这里,“动态”这个词捕捉到这样一个事实,即用户可以体验到对象在场景中移动,而不是静态的。
静态和动态在概念上似乎没有什么重要的区别。然而,在实践中,处理静态场景的产品可能比处理动态场景的产品要简单几个数量级。这在捕获编码端和解码显示端都是如此。这种考虑意味着行业相对于动态对象,可能更早地需要静态对象的标准。
业界已指导MPEG开发两种标准,这两种标准概念上相似,但是是针对不同应用和涉及不同技术的两种方法:
用于两个信息源的压缩算法也有相似之处和不同之处,本文的目的是简要描述一般点云中涉及的算法,以及MPEG称为3DoF +的特定情况(图1中的(b)情况),调查算法在多大程度上相似和不同,他们可以共享当前和未来的技术。
图1 DoF
计算机生成的场景和视频完全不同
视频由一系列彩色像素矩阵组成,但计算机生成的三维场景及其对象不像视频那样表示,而是由几何和外观属性(颜色、反射率、材质……)表示。换句话说,计算机生成的场景是基于模型的。
31年前,MPEG开始研究视频编码,7年后,它也开始研究计算机生成的对象。MPEG-4(雄心勃勃的)标题“视听对象编码”标志着MPEG打算联合处理这两种媒体类型。
直到最近,视频和3D图形技术中心(阅读开发标准,同时为未来做准备以了解更多关于MPEG中的工作是如何由能力中心和单位执行)已经基本上独立工作,直到需要压缩真实世界的3D对象为止。3D场景对于工业来说变得非常重要。
视频和3D图形能力中心使用它们自己的特定背景来解决这个问题:3D图形使用点云,因为它是一个3D图形表示(它有几何图形),而视频使用从多个摄像机获得的视频(因为它们只有颜色)。
视频提出了一个基于视频的解决方案(很明显,因为没有要编码的几何体),3D Graphics提出了两个解决方案,一个直接编码3D几何体(G-PCC),另一个是将点云对象投射到固定平面上(V-PCC)。在V-PCC中,由于几何是隐式的,因此可以应用传统的视频编码。
点云压缩
MPEG目前正在开发两个PCC标准:G-PCC标准和V-PCC标准。G-PCC标准是一种纯粹的基于几何的方法,与传统的视频编码没有太多的共享,而V-PCC主要基于视频编码。为什么我们需要两种不同的算法?因为G-PCC在“新”领域(比如汽车)做得更好,而V-PCC利用了已经安装在手机上的视频编解码器。V-PCC将于2020年1月成为FDIS,这一事实使得它对一个产品创新关乎生死存亡的行业极具吸引力。
V-PCC试图将三维云的一个点映射到二维网格(图像)的一个像素。为了提高效率,这种映射应该尽可能地保持平稳(两个连续的帧之间只有很小的变化),并且不应该引入可见的几何畸变。然后视频编码器可以利用点云几何和属性的时空相关性,最大限度地提高时间相干性和最小距离/角度失真。
3D到2D的映射保证了所有的输入点都被几何和属性图像捕获,这样就可以在不丢失的情况下重建它们。如果将点云投射到立方体或球体的表面,则对象不保证无损重建,因为自动遮挡(在自动遮挡点未被捕获的情况下)可能产生严重的失真。
为了避免这些负面影响,V-PCC将输入点云分解为“补片(patches)”,通过简单的正交投影将其独立映射到二维网格。映射修补程序不受自动闭塞的影响,也不需要重新采样点云几何形状,可以生成边界光滑的修补程序,同时最小化修补程序数量和映射失真。这是一个NP-hard优化问题,V-PCC应用图2中的启发式分割方法解决了这个问题。
图2 从点云到补片
以下步骤提供一个例子,说明编码器是如何运作的(注:编码器的程序并不标准化):
图3 补片投影
3DoF+
3DoF+是MPEG-I中第12部分沉浸式视频中指定的一般视觉沉浸式场景的一个更简单的例子。为了给3DoF+提供足够的视觉质量,需要使用大量的源视图,例如30cm半径的可视空间需要10 ~ 25个视图。每个源视图都可以被捕获为具有纹理和深度的全方位或透视投影视频。
如果使用传统的2D视频编码标准(如HEVC)对如此大量的源视图进行独立编码,将产生不切实际的高比特率,并且需要大量昂贵的解码器才能查看场景。
基于深度图像绘制(DIBR)的3D-HEVC视图间预测工具可能有助于降低比特率,但3D-HEVC编解码器尚未得到广泛的应用。此外,3D-HEVC的并行相机设置假设可能会影响任意相机设置下的视图间预测编码效率。
MPEG-I沉浸式视频的目标是支持3DoF+应用程序,使用有限数量的传统2D视频编解码器应用于适当的预处理和后处理视频,大大降低了编码像素率和有限的比特率。
编码器如图4所示。
图4 3DoF编码器的工艺流程
以下是编码器工作原理的例子(注意编码过程并不标准化):
图5 Atlas Construction过程
图6 纹理和深度图集与补丁的一个例子
图4中的地图集参数列表包含:地图集中的起始位置、源视图ID、源视图中的位置以及地图集中所有补片的大小。相机参数列表包括所有指示源视图的相机参数。
在解码器(图7)上执行以下操作:
图7 3DoF+解码器的处理流程
图8显示了综合视图的质量如何随着视图数量的减少而下降。从24个视角看,这幅图看起来很完美,从8个视角看,地板上的地铁上几乎看不到艺术品,但只有两个视角的艺术品变得引人注目。3DoF+的目标是在最右边的情况下使用比特率和像素率来实现最左边的图像的质量。
图8 合成视频的质量与观看次数有关
PCC与3DoF+的共性与区别
V-PCC和3DoF+可以使用相同的2D视频编解码器,例如HEVC。对于3DoF+,编码器的输入和解码器的输出是包含补片的纹理和深度地图集序列,有点类似于V-PCC补片,几何/属性视频数据序列也包含补片。
3DoF+和V-PCC都有描述地图集或视频中补丁位置和参数的元数据。但是3DoF+应该描述每个补片所属的视图ID及其相机参数,以支持灵活的相机设置,而V-PCC只需要指出每个补片绑定到的6个固定立方体中的哪一个即可。V-PCC不需要相机参数元数据。
3DoF+使用渲染器在任意位置和方向生成合成的视口,而V-PCC则将解码后的视频像素重新投影到3D空间中,生成点云。
此外,V-PCC目标是重建3D模型,以便获得每个点的3D坐标。对于3DoF +,目标是通过插值获得一些额外的视图,但不一定是任何可能的视图。虽然两种方法都使用补片/地图集并将它们编码为视频+深度,但编码器和解码器非常不同,因为输入格式(以及隐含的输出)完全不同。
最后一个区别是两个小组如何制定解决方案。众所周知,G-PCC在表示几何形状方面比V-PCC具有更大的灵活性。预计G-PCC的压缩增益将大于V-PCC。然而,V-PCC的最重要的优点是可以使用现有的和广泛部署的视频编解码器。业界不会接受倾销V-PCC完全依赖G-PCC。
如何进一步收敛?
您可能会问:我理解PCC和3DoF+之间的区别,但是为什么一开始没有确定收敛性?答案取决于MPEG的性质。
如果MPEG是一个研究中心,它本可以做到这一点。它可以根据自己的意愿,把研究人员集中在共同的项目上,并给他们适当的时间。最终,这个假设的MPEG可以合并并统一两种文化(在其组织中,而不是在整个社区中),确定共同的部分,并逐步定义解决方案的所有低层。
但MPEG不是一个研究中心,它是一个标准组织,其成员是公司的雇员,“租借”给MPEG,以开发公司所需的标准。因此,MPEG的主要任务是开发其“客户”所需的标准。正如《在为未来做准备的同时开发标准》中所解释的,MPEG拥有一个灵活的组织,允许它完成开发行业所需标准的主要职责,同时探索下一步。
既然我们已经发现了这些共同点,MPEG是否需要改变其组织结构?绝对不行。查看图9中的MPEG组织。
图9 MPEG组织
PCC的工作由一个3DG单元开发(由于V-PCC和G-PCC的差异很大,很快就变成了两个),3DoF+标准由一个视频单元开发。这些单位处于同一水平,现在可以很容易地相互交谈,因为他们有具体的事情要讨论,甚至比以前更多。这将继续为6DoF的下一个挑战,在那里用户可以在一个虚拟的三维空间中自由移动,对应于一个真实的三维空间。
传统的视频和3D图形工具也可以继续保存在MPEG工具库中,并继续得到新技术的补充,使它们之间的关系越来越友好。
这就是灵活的MPEG组织的力量,而不是一些人所提倡的等级森严而僵化的组织。在一个严格的等级组织中,以自顶向下的方式开发标准是无法处理MPEG不断面临的相互冲突的需求的。
结论
MPEG是技术融合的同义词,本文所举的例子是最新的。这表明,随着更复杂的点云压缩的引入和支持6DoF完整导航的技术的出现,未来将出现更多这样的情况。
这无需改变MPEG的组织结构就能实现,因为MPEG组织的设计宗旨是,如果单位位于相同的能力中心或不同的能力中心,则允许它们以相同的简单方式进行交互。
非常感谢本文的真正作者吕宇(浙江大学)和马里乌斯·普雷达(巴黎理工学院)。