作者:王旭, 刘琼, 彭宗举, 侯军辉, 元辉, 赵铁松, 秦熠, 吴科君, 刘文予, 杨铀
00 引言
6自由度(six degrees of freedom,6DoF)视频具体表现为在观看视频过程中,用户站在原地时头部与视频内容之间的3个自由度的交互和用户位姿发生移动时与内容之间的另外3个自由度的交互(Boyce等,2021)。
6DoF视频有多视点视频、多视点+深度视频、光场视频、焦栈图像和点云序列等多种数据表示方式(Wien等,2019)。用户可以通过体感、视线、手势、触控和按键等交互方式来选取任意方向和位置的观看视角。视频系统在获得用户交互参数后,通过虚拟视点绘制技术完成视角平滑切换,在沉浸式体验上更加出色。6DoF视频体现了用户与视频内容的高度交互性,全面打破了人们被动接受视频内容的传统模式,能够实现千人千面的视觉体验,是当前多媒体通信、计算机视觉、人机交互和计算显示等多个学科领域的交叉与前沿。
一方面,6DoF视频通过计算重构的方式向用户提供包括视角、光照、焦距和视场范围等多个视听维度的交互与变化,使千里之外的用户有身临其境之感,这与元宇宙所具有的感知、计算、重构、协同和交互等技术特征高度重合。因此,6DoF视频所涵盖的技术体系可用做实现元宇宙的替代技术框架。另一方面,6DoF视频从采集、处理、编码、传输、显示、交互和计算等方面改变了数字媒体端到端全链条的生产制作模式,给内容提供商、运营商、设备商和用户带来巨大的改变,因此也受到国防训练、数字媒体和数字教育的高度关注。
本文将围绕6DoF视频内容的生产、分发与呈现中存在的关键问题(如图1所示),从内容采集与预处理、编码压缩与传输优化以及交互与呈现等方面阐述国内外研究进展,并围绕该领域当下挑战及未来趋势开展讨论。
图1 6DoF视频系统中的关键问题
01 6DoF内容采集与预处理
6DoF视频以3维场景为观察对象,以3维时空分布的点云、图像等为数据表达,可用模型
刻画,包含空间、角度、光谱和时间等。如何获取3维场景的视觉信息是6DoF视频采集与生成需要实现的任务与目标。相机一直以来作为获取视觉信息的主要工具,将分布在3维时空中的光降维到2维时空上形成图像或视频。基于相机的视觉获取无法得到深度,因此如何通过相机来实现3维场景的视觉信息获取,长期以来是一个挑战性的难题。从技术演进的角度,3维场景的视觉信息获取可分为多视点联合采集、多视点与深度联合采集这两个方向和阶段。
1.1 多视点联合采集
虽然单相机的视觉获取只能得到平面图像,但是仿照人眼的双目视觉系统,只要能够利用2个及以上的相机进行多视点同步采集,就能够在得到的多视点图像基础上进行立体匹配,从而得到深度的信息(Marr和Poggio,1976)。为此,科研人员以6DoF视频为目标,研制出了不同类型的多视点视频采集系统。如图2所示,以影视内容制作为目标,工程技术人员于1999年首次搭建了由上百台相机共同构成的多视点联合采集系统。该系统在几何排布上具有线性环绕的特点,并形成了著名的“子弹时间”影视效果(Stankiewicz等,2018)。观众可通过这种方式在屏幕上直接得到立体的观感。通过该多视点联合采集系统所形成的交互式媒体内容具有非常震撼的视觉效果,但同时也有明显的缺陷,如不能拍动态的视频、几何排布复杂不利于后期视觉计算以及成本高昂难以商业推广等。因此,降低相机数量,简化几何排布方式,研发多相机标定方法成为多视点联合采集面临的关键需求。
为了解决上述问题,研究者提出了几种典型的几何排布模式,如图3所示。图3(a)所示的平行模式以直线分布、光轴平行的方式进行排布,视点之间的图像原则上不存在垂直偏移,在交互过程中体现为水平移动。稀疏的(间距20 cm及以上)平行模式是MPEG(motion picture expert group)中典型的多视点视频数据表达形式(Merkle等,2007),而稠密的平行模式则可较为方便地构成光线空间(ray space)(Tanimoto,2012),从而实现平移之外的纵向交互。图3(b)所示的发散模式是所有相机的光轴后延线共圆心,从形式上不局限于水平共心,也可以是球面发散的共心方式。这种模式可较方便地形成全景视频用于3自由度交互,并在许多商业应用中取得了成功。图3(c)所示的汇聚模式在排布模式上是平行模式的简单变化,在直线分布的基础上将光轴汇聚到一个点上,视点之间的图像原则上不存在垂直偏移,在交互过程中体现为具有弧度的水平移动。然而,在实际操作中汇聚模式有许多问题,如汇聚点的确定、相机间的几何标定问题等,导致大部分的汇聚模式最后退化到图2的模式,即交互只在真实相机之间做切换,较少通过视觉计算的方式去绘制虚拟视点。
图3(d)所示的围绕模式不局限于平面,也可以进一步拓展成半球体、圆球体的布置形式。与汇聚模式类似,同样面临着汇聚点确定、相机间几何标定的难题,而且难度更大,因为每一个相机一定会有另外一个相机与之完全相对,无法通过构建两个视点之间公共特征点的匹配关系以完成几何标定所需的有关参数。华中科技大学团队突破了这一限制,通过视点传递的方式克服了环绕相机阵列(Abedi等,2018)以及球面相机阵列(An等,2020)的几何标定问题,为后续720°交互奠定了基础。图3(e)所示的平面模式在几何分布上是平行模式的简单扩充,但是在实际应用中产生了许多变型,并逐步演化成光场采集系统,催生了许多交互式媒体之外的新型应用(Levoy和Hanrahan,1996)和亿像素采集系统(Brady等,2012)。
图3 几种典型的多视点视频采集系统的几何排布方式
1.2 多视点与深度联合采集
典型的多视点联合采集需通过后期计算的方式得到深度,如果能够直接得到深度信息,则可以大幅提升采集效率。然而,直接获得场景的深度信息并不是一件容易的事情,进而在获取深度信息的基础之上是否能够多视点获取,又是另外一个难题。 直接获取场景深度信息的方式大体分为被动式和主动式两个技术方向。被动式探测以双目立体匹配为代表(Zhang,2012)。主动式探测方法以结构光技术为代表,并根据光源的不同又分为点扫描(Franca等,2005)、线扫描(Scharstein和Szeliski,2002)和面结构光(Van der Jeught和Dirckx,2016)。点扫描和面扫描中激光器发出点状或条状光束,进而通过旋转或平移,实现完整的3维测量。面结构光方法投射2维编码图案,无需移动投影设备即可重建目标表面,具有更高的效率(苏显渝 等,2014)。此外,面结构光中投影图案通常与编码技术进行结合,提取块级/像素级/亚像素级的码字用于视差匹配,以获得更高的精度和效率。面结构光的编码通常包括空域编码、时域编码和相位编码,通过多个编码对场景进行多次扫描来获得目标场景的深度。上述模式都是通过扫描的方式才能得到场景的深度信息,因此不适宜动态场景的深度获取。
采用点—面结合技术的Kinect深度传感器克服了这个难题(Lilienblum和Al-Hamadi,2015),虽然深度图的质量、图像分辨率、时间分辨率和探测距离等基本参数还有很大的提升空间,但是该设备的出现首次将场景的深度感知从静态提升至了动态,给产业界和学术界同时带来一轮新的研究热潮。后来出现了基于光调制的ToF(time of flight)技术及相关设备,包括ToF相机和激光雷达(laser radar,LiDAR)等,大幅度提升了探测距离,但是在深度图质量、图像分辨率和时间分辨率等参数上也都与Kinect一样面临相同的问题。 将多个深度传感器与多个彩色相机相互配合对场景进行视觉采集,则形成了多视点与深度联合采集方案。在这些方案中,几何排布上可以借鉴多视点联合采集方案。多视点与深度联合采集的关键难点在于多深度采集中所出现的视点间干扰、彩色视频与深度视频时间分辨率不匹配以及空间分辨率差距过大等问题。多深度相机之间的干扰来自其成像原理本身,如不同视角的Kinect会使用相似甚至相同的点—面结构光,不同视角的ToF相机对同一波长的光进行相同的调制,这些都会导致解码失败。为了解决这个问题,华中科技大学团队从机理层面进行了探索,针对多种原理的深度传感器分别设计了包括M-序列等方法在内的多深度相机联合采集方案,较好地解决了上述难题(Yan等,2014;Li等,2015;Xiang等,2015)。此外,还进一步针对深度视频与彩色视频时间分辨率不匹配的问题,以及由此导致的深度图运动模糊问题,提出了时域上采样法(Yang等,2012)和时域校正法(Yang等,2015c; Gao等, 2015)等多种方法,为运动场景的立体感知提供了丰富的工具集。
1.3 深度图与点云预处理
如前所述,动态场景的深度图或点云数据往往具有空间分辨率低、时间分辨率低、画面噪声多等问题。为了保证下游任务的精度,需要进行预处理。从处理技术上来分,主要包括深度图预处理和点云数据预处理两个类型。
1.3.1 深度图预处理
深度信息不直接用于人眼观测,而是作为辅助信息帮助参考视点图像映射到正确的虚拟视点上。深度图像上的失真会传播至虚拟视点图像,造成主客观质量的下降。因此,在虚拟视点内容生成前,需通过深度预处理技术尽可能获得最接近场景实际距离的深度图像。Ibrahim等人(2020a)较详细地对深度图预处理技术工作进行了系统性的梳理。总体而言,深度图、点云的去噪与图像去噪技术是同步发展的,但同时也有自身的一些特点。典型的图像滤波器,如多边滤波器(Choudhury和Tumblin,2005)、流型滤波器(Gastal和Oliveiray,2012)和非区域均值(Buades等,2005)等都可以直接作用于深度图的去噪,但这些滤波器都只能解决以像素为单位的深度图噪声。一旦噪声区域过大,如Kinect深度传感器的噪声多以成片区域深度值缺失为特点,则传统的滤波器都会失效(Xie等,2015)。
为了解决这个问题,Kopf等人(2007)提出了联合双边滤波方法。该方法是对双边滤波的改进,引入了参考图像为指导,能够较好地处理大面积深度值缺失的难题,但同时也引入了彩色图中的边缘和纹理信息,给去噪后的深度图带来了伪纹理。Liu等人(2017)利用对齐彩色图像特征来引导深度图像修复,通过彩色信息引导权重并结合双边插值方法来进行深度图空洞修复。Wang等人(2015)提出一种面向Kinect深度图像恢复的三边约束稀疏表示方法,在惩罚项上考虑了参考块与目标块间的强度相似度和空间距离的约束,在数据保真度项下考虑了目标块质心像素的位置约束,通过对纹理图像的特征学习,预测出深度图像空洞恢复的最优解。为了有效克服伪纹理的问题,Ibrahim等人(2020b)引入条件随机场方法以抑制在彩色图引导过程中的纹理干扰问题。
随着深度学习技术的发展,人们也开始探索单一深度图(张洪彬 等,2016)、彩色与深度图联合(Zhu等,2017)的滤波方案,总体上遵循了彩色图滤波的基本架构,包括特征提取、图像重建等模块。基于深度学习框架的深度图滤波虽然能够取得较好的去噪效果,但是目前仍面临物体边缘滤波模糊的难题。 多视点联合滤波也是一个值得关注的课题。如果将每一个视点的深度图单独处理,势必会导致视点间深度不稳定的问题,为此需要将多个视点联合在一起考虑。华中科技大学团队He等人(2020b)提出了跨视点跨模态的联合滤波框架,建立了视点之间的映射模型与关联方式,能够较好地克服多种类型的噪声在不同视点间的蔓延。针对平面相机阵列,Mieloch等人(2021)考虑到纹理信息的使用会在深度修正中引入误差,仅用多个视点的深度信息对所选视点的信息进行交叉验证,通过多次迭代,增强了多个深度图像的视点间一致性,且可以自由设置需要修正的视点位置和数目。
1.3.2 点云预处理
深度相机和激光雷达传感器产生的原始点云通常是稀疏、不均匀和充满噪声的,需要进行去噪或补全。现有的点云补全的方法大致分为基于几何或对齐的方法和基于表示学习的方法两类。 基于几何或对齐的方法包括基于几何的方法和基于对齐的方法。基于几何的方法通过先前的几何假设,直接从观察到的形状部分预测不可见的形状部分(Hu等,2019)。更具体地,一些方法通过生成平滑插值来局部填充表面孔。例如拉普拉斯平滑(Nealen等,2006)和泊松表面重建(Kazhdan和Hoppe,2013),这些方法直接从观察区域推断缺失数据并显示出令人印象深刻的结果,但是需要为特定类型的模型预定义几何规则,并且仅适用于不完整程度较小的模型。基于对齐的方法在形状数据库中检索与目标对象相似的相同模型,然后将输入与模型对齐,随后对缺失区域进行补全。
目标对象包括整个模型(Pauly等,2005)或其中的一部分(Kim等,2013)。除此以外,还有一些方法使用变形后的合成模型(Rock等,2015)或非3D几何图元,例如平面(Yin等,2014)和二次曲面(Chauve等,2010)代替数据库中的3D形状。这些方法在3D模型的类型上具有较强的泛化性,但在推理优化和数据库构建过程中成本高,且对噪声敏感。 基于表示学习的方法是一种点云补全的方法。Dai等人(2017)提出了基于3D体素的编码器—解码器架构3D-EPN(3D-encoder-predictor)。尽管基于3D体素化的表示学习方法可以直接扩展使用定义在2D规则网格上的神经层或算子,但精细对象的重建需要消耗大量显存和算力。随着基于点表示学习的PointNet(Qi等,2017a)和PointNet++(Qi等,2017b)等模型的出现,人们提出了TopNet(Tchapmi等,2019)、PCN(point cloud net)(Yuan等,2018)和SA-Net(shuffle attention net)(Wen等,2020a)等基于点编码器—解码器框架的点云修复模型。该类模型首先通过编码器从不完整的点云中提取全局特征,再利用解码器根据提取的特征推断完整的点云。
现有基于表示学习的点云补全任务的相关研究主要分为两类。1)基于先进的深度学习框架。为了提高点云生成的完整形状的真实性和一致性,人们提出了基于对抗生成网络的RL-GAN-Net(reinforcement learning generative adversarial network)(Sarmad等,2019)、基于变分自动编码器的VRCNet(variational relational point completion network)(Pan等,2021)和基于注意力机制的PoinTr(Yu等,2021)、SnowflakeNet(Xiang等,2021)、PCTMA-Net(point cloud transformer with morphing atlas-based point generation network)(Lin等,2021)、MSTr(Liu等,2022)等模型,这些模型能更好地挖掘3D形状的全局和局部几何结构,从而更有利于补全点云中的不完整部分。2)基于任务特性的算子。为了保留更多的精细特征信息,SoftPool++(Wang等,2022a)设计了softpool算子替代PointNet中的最大池化算子。Wu等人(2021)提出基于密度感知的倒角距离,以改善原有损失函数对点云局部密度不敏感或精细结构保护不足等缺陷。 考虑实际应用需求,渐进式点云补全任务也开始得到关注,人们提出了CRN(cascaded refinement network)(Wang等,2022b)、PF-Net(point fractal network)(Huang等,2020b)、PMP-Net++(point cloud completion by transformer-enhanced multi-step point moving paths)(Wen等,2023)等模型,以实现3D点云的渐进细化。总体而言,基于学习的点云补全方法在性能提升上效果显著,但在模型泛化上仍有很大的提升空间。如何结合几何先验以提升模型的泛化性是一个潜在的研究方向。
02 6DoF视频压缩与传输
6DoF视频有多视点视频、多视点+深度视频、光场图像、焦栈图像和点云序列等多种数据表示方式,本节根据各种数据表示方式的特点,对6DoF视频压缩与传输的研究进展展开介绍。
2.1 多视点视频编码
自从1988年CCITT(Consultative Committee International for Telegraph and Telephone)制定了视频编码标准H.261后,视频编码技术的应用越来越广泛,并涌现出大量的视频编码标准,包括H.264/AVC(Wiegand等,2003)、H.265/HEVC(high efficiency video coding)(Ohm等,2012)和H.266/VVC(versatile video coding)(Bross等,2021)。最简单的多视点视频编码MVC(multi-view video coding)方案是独立地对各个视点进行编码,但是这样不能充分去除视点间冗余,于是产生了时域—视点域结合的编码压缩方案研究。 1)多视点视频扩展国际编码标准。MPEG-2标准中已采用了多视点视频配置来编码立体或者多视点视频信号。由于压缩标准的局限性、显示技术和硬件处理能力的限制,MPEG-2的多视点扩展没有得到实际应用。2005年,MPEG组织在H.264/AVC的基础上提出了MVC扩展标准(Vetro等,2011),并形成了联合多媒体模型(joint multiview model,JMVM)。该模型集成了视点间亮度补偿、自适应参考帧滤波、MotionSkip模式以及视点合成预测等基于宏块的编码工具。类似于H.264/AVC的MVC,JCT-3V在H.265/HEVC的基础上提出了扩展编码标准MV-HEVC(multi-view HEVC)(Tech等,2016)。我国从1996年开始参加MPEG专家组的工作,不断有提案被接受,在视频压缩的技术成果逐渐具备了国际竞争力。2002年6月,我国成立了数字音视频编解码技术标准工作组AVS(audio-video standard),目标是制定一个拥有自主知识产权的音视频编码标准。至今,其版本已经发展到AVS3。基于国际编码标准,国内学者在MVC快速算法、率失真控制和基于深度学习的多视点编码等方面进行了深入研究,取得了极大的进展。 除了高效的压缩编码标准之外,精心设计的预测编码结构能充分利用多视点视频信号中的时空相关性和视点间的相关性。目前,MVC中广泛采用的分层B帧编码结构(hierarchical B pictures,HBP)结合运动估计和视差估计,获得了较高的压缩效率和优秀的率失真性能。
2)面向编码的多视点视频预处理。
利用多视点视频扩展编码标准压缩多视点视频信号时,能在编码标准框架下同时消除时空冗余和视点间冗余。然而,多视点视频信号往往存在几何偏差和颜色偏差,影响了编码压缩效率。因此,多视点视频信号的预处理也能提升压缩性能。Doutre和Nasiopoulos(2009)对多视点视频信号进行颜色校正,提升了视点之间颜色一致性和MVC的视点间预测性能。Fezza等人(2014)提出了基于视点间对应区域直方图匹配方法的多视点颜色校正算法,以提升压缩性能。福州大学团队Niu等人(2020)针对多视点视频信号中存在的全局、局部和时间颜色差异,提出了由粗到细的多阶段颜色校正算法。
3)多视点视频快速编码。
由于各种编码标准集成了多种复杂技术,且多视点视频巨大的数据量也会带来巨大的时间开销。因此,多视点彩色视频编码的计算复杂度问题长期以来都是难题。针对各种编码标准和多视点扩展编码标准,学者们广泛地开展了快速编码算法研究。典型的手段包括减少搜索点数(Cernigliaro等,2009)、利用MVC的编码模式的时空相关性和视点相关性减少当前编码宏块的搜索数量(Zeng等,2011)以及基于像素级与图像组级的并行搜索算法(Jiang和Nooshabadi,2016)等。 国内学者也提出了若干快速编码算法。Li等人(2008)通过减小搜索范围和参考帧数目来提高MVC速度。在MVC快速宏块模式选择方面,Shen等人(2010)利用相邻视点的宏块模式辅助当前视点的宏块模式选择,提高编码速度。Ding等人(2008)通过共享视点间编码信息(例如率失真代价、编码模式和运动矢量)来降低MVC的运动估计的计算复杂度。MVC中,大量宏块的最优模式为DIRECT/SKIP模式。根据此特性,Zhang等人(2013b)提出了Direct模式的提前判断方法,从而避免所有宏块模式的搜索过程。Yeh等人(2014)利用已编码视点的最大和最小率失真代价形成阈值条件,用于提前终止当前编码视点的每个宏块编码模式选择过程。Pan等人(2015)提出了一种Direct模式的快速模式决策算法,并利用MVC特性,设计了运动和视差估计的提前终止算法。Li等人(2016b)利用宏块模式的一致性和率失真代价的相关性,提出了Direct模式的判定方法。
4)MVC的码率控制。
码率控制旨在提高网络带宽利用率和视频重建质量。与单视点视频编码的码率控制不同,MVC的码率控制需要考虑视点级的码率分配。Vizzotto等人(2013)在帧级和宏块级实现了一种分层MVC比特控制方法,该方法充分利用了当前帧和以编码相邻帧比特分布的相关性。Yuan等人(2015)提出了视点间编码依赖关系模型,认为视点间的依赖关系主要由编码器的跳跃(SKIP)模式导致,并据此提出了理论上最优的多视点视频码率分配与控制算法。
5)基于深度学习的MVC。
Lei等人(2022)提出了基于视差感知参考帧生成网络(disparity-aware reference frame generation network,DAG-Net)生成深度虚拟参考帧。该网络包含多级感受野模块、视差感知对齐模块和融合重建模块,能转换不同视点之间的视差关系,生成更可靠的参考帧。这些参考帧插入到3D-HEVC的参考帧列表中,能提升MVC的编码效率。Peng等人(2022)提出了基于多域相关学习和划分约束网络的深度环路滤波方法。其中,多域相关学习模块充分利用多视点的时间和视点相关性来恢复失真视频的高频信息,分割约束重建模块通过设计分割损失减少压缩伪影。
2.2 多视点+深度视频编码
多视点彩色加深度(multiview video plus depth, MVD)是一种典型的场景表示方式,MVD信号包括多视点视频信号和对应的深度视频信号。多视点视频信号是利用相机阵列对在同一场景从不同位置采集得到,而对应深度视频可采用深度相机获取或者利用软件估计得到。与传统的视频信号相比,MVD的数据量随着相机数目的增加而成倍增加。
1)多视点+深度视频国际编码标准。
为了编码MVD信号,JCT-3V基于HEVC提出了3D-HEVC的扩展编码标准(Tech等,2016),该标准能充分利用深度视频的特性和视点之间的相关性,提升MVD信号的编码性能。针对沉浸式视频的最新编码压缩标准为ISO/IEC MIV(MPEG immersive video),该标准定义了比特流格式和解码过程。沉浸式视频参考软件TMIV(test model for immersive video)包括编码器、解码器和渲染器等,并提供了测试用例、测试条件、质量评估方法和实验性能结果等。在TMIV中,多个纹理和几何视图使用传统的2D视频编解码器编码为补丁的图集,同时优化比特率、像素率和质量。
2)多视点+深度视频快速编码。
在基于H.265/HEVC及多视点视频扩展标准方面,学者们提出了基于MV-HEVC和3D-HEVC标准的多视点深度视频快速编码算法(张洪彬 等,2016)。由于深度视频编码深度视频信息反映3D场景的几何信息,最简单的方法是对深度视频下采样,降低编码复杂度和降低码率,代价为丢失场景信息,导致绘制失真。Tohidypour等人(2016)利用已编码信息,结合在线学习的方法,调节3D-HEVC编码中非基础视点彩色视频的运动搜索范围和降低模式搜索的复杂度。Chung等人(2016)提出了新的帧内/帧间预测和快速四叉树划分方案,既提高了3D-HEVC的深度视频的压缩率,又提高了压缩速度。Zhang等人(2018)针对3D-HEVC中深度视频编码模式引入的额外编码复杂度,提出了两种深度视频的帧内模式决策方法。Xu等人(2021)基于MV-HEVC编码平台,提出了复杂度分配和调节,实现了MVC的编码复杂度优化,已适应于不同的视频应用系统。在多视点深度视频方面,Lei等人(2015)利用MVD视频信号中的视点相关性、彩色和深度视频的相关性,提出了多视点深度视频快速编码算法。Peng等人(2016)和黄超等人(2018)基于3D-HEVC提出了联合预处理和快速编码系列算法,增强了MVD信号中深度视频的时间不一致性,提高了压缩效率和编码速度。
3)多视点+深度视频编码码率控制。
与MVC的码率控制仅需要考虑视点级的码率分配不同,MVD编码进一步需要考虑彩色与深度视频之间的码率分配。Yuan等人(2011,2014)最早确定了虚拟视点失真和多视点纹理和深度视频的编码失真之间的解析关系,进而将多视点+深度视频编码码率控制问题建模为拉格朗日优化问题,并求得理论上的最优解。Chung等人(2014)提出一种基于新型视点综合失真模型的比特分配算法,在纹理和深度数据之间优化分配有限的比特预算,以最大化合成的虚拟视图和编码的真实视图的质量。Klimaszewski等人(2014)提出一种新的多视点深度视频压缩质量控制方法,建立了深度和纹理量化参数计算的数学模型。De Abreu等人(2015)提出一种在相关约束条件下有效选择预测结构及其相关纹理和深度量化参数的算法,具有较优的压缩效率和较低的计算复杂度,为交互式媒体应用提供了一种有效的编码解决方案。
Fiengo等人(2016)利用最新的对凸优化工具,提出了帧级比特最优速率分配的算法,其码率控制性能超越标准MV-HEVC。Domański等人(2021)提出一种可用于比特率控制的视频编码器模型,该模型适用于MVD编码,从AVC的模型中,可以快速推导出HEVC和VVC的模型。Paul(2018)提出一种基于3维帧参考结构来提高交互和降低计算时间,增加一个参考帧来提高遮挡区域的率失真性能,采用视觉注意的比特分配以提供更好的视频感知质量。Liu等人(2011)提出一种MVD的视点、彩色/深度级和帧级的联合码率控制算法,利用预编码及数理统计分析方法实现视点级、彩色/深度级的比特分配。Zhang等人(2013a)提出了基于视点合成失真模型的多视点深度视频编码的区域位分配和率失真优化算法,测试序列的编码效率得到显著提高。Li等人(2021b)提出了一种基于视图间依赖性和时空相关性新的多视图纹理视频编码位分配方法,建立了一个基于视图间依赖关系的联合多视图率失真模型。该方法在率失真性能方面优于其他最先进的算法。
4)基于深度学习的深度视频编码。
相比于彩色视频,深度视频具有更加平滑的内容和更大的空域冗余,可以以更小的分辨率进行编码,以提高编码效率。针对深度视频编码,Li等人(2022)提出了基于深度上采样的多分辨率预测框架,该框架对于不同复杂度的深度块,使用最优的分辨率进行编码,以提高深度视频编码效率。
2.3 光场图像压缩
光场图像压缩的目的在于去除子视点图像内部冗余以及子视点图像间冗余。传统2D图像编码中成熟的帧内压缩技术可以直接应用于光场图像压缩去除子视点图像内部冗余。因此,光场图像压缩的相关研究主要致力于去除视点间冗余(Liu等,2019)。光场图像的各子视点图像由于视差变化具有不规则变化的显著特点,根据建模方法,现有的光场图像压缩研究大体可分为基于伪视频序列的方法、基于优化的方法和基于视点重建的方法3类。
1)基于伪视频序列的方法。
光场图像压缩的关键在于如何充分利用子视点图像间的相关性。相邻的子视点图像之间存在着极大比例的重复场景,且由于视差引起的场景变化平缓,与传统视频中前后帧中的场景变化较为相似。自然而然地,早期的光场图像压缩引入了传统2D视频编码的框架,将光场图像中的子视点图按照一定的扫描顺序重组为伪视频序列,将视点间冗余转化为伪视频序列的帧间冗余,直接利用成熟的视频压缩标准中的帧间预测技术去除视点间冗余。因此,此类研究方案的重点在于如何构建合理的子视点排列顺序以及预测结构,从而在伪视频序列的帧间编码过程中尽量减少编码视点与参考视点间的残差信息,增加压缩效率。针对扫描顺序,国内一些早期的工作(Dai等,2015)中提出了横向、纵向、之字形和环形的扫描方案,且均取得了一定的性能提升。
而在此类工作中,影响力较大的是由中国科学技术大学Li等人(2017)提出的2维层级编码框架。在此框架中,首先将所有视点图划分为4个象限,再在每个象限中按固定位置划分为4个编码层次,沿用传统视频编码中多层次编码的框架,即在编码过程中首先使用高保真编码方案压缩低层次视点图,并且在高层次视点图压缩时作为参考视点。此外,在选取参考视点图的过程中,通过衡量与不同参考视点间的距离确定最佳的参考视点,进一步提升压缩效率。此工作为较早提出的完整的光场编码框架,经常被后续研究引用作为评价标准。此外,Liu等人(2016)将传统视频编码中的可伸缩编码思想应用到光场压缩中,提出了一个包括3层分辨率和质量可伸缩的光场编码框架。 基于伪视频序列的压缩方法致力于将视点间的相关性转换为时域相关性,从而得以利用视频编码技术中的帧间预测技术去除伪视频序列的时域冗余。然而,传统视频编码的帧间预测技术中,只考虑了前后帧场景间的平移运动,用表征上下、左右位移的2维的运动向量表示。而光场图像中各个子视点图像场景间更多的是由于视角变化引起的不规则运动,这与传统视频存在本质上的差异。所以,由于缺少针对光场图像特性的适应性优化,基于伪视频序列的光场编码方案难以取得最优的压缩性能。
2)基于优化的方法。
在基于伪视频序列压缩方案的基础上,一部分研究者致力于研究子视点间场景不规则运动的模型,优化原有光场编码框架中的部分模块,以期进一步提升编码效率。这些研究包括基于单应性变化矩阵、图变换等优化方案。Chang等人(2006)针对视点间物体的不规则变化,首先利用传统的图像分割方法获取物体形状,继而提出了一种视差补偿算法来估计相邻子视点图中该物体的形状变化,据此提升预测效率。此外,此工作也在光场编码基础框架上提出了改进方案,即使用聚类算法对子视点图像进行排序,根据聚类结果调整伪视频帧的排序。Jiang等人(2017)提出了基于单应性变化矩阵的光场图像编码框架优化方案。具体的,该方法利用单应性或者多应性变化矩阵将所有子视点图统一映射到一个或者多个深度面上,继而在此基础上求取光场图像的低秩表示。最后,通过单应性矩阵参数与低秩矩阵的联合优化,以实现光场低秩表示数据的压缩。Dib等人(2020)基于超射线表示的视差模型提出了一个局部低秩逼近方法。
超射线由与所有子视点图像都相关的超像素点构建,通过施加形状与大小的约束,使得超射线得以表达复杂的场景变换,继而通过参数化的视差模型描述每条超射线表示帧内的视差局部变化。此模型的最佳参数将通过交替搜索估计的方法确定。 由于图信号也能较好地描述图像中物体的不规则运动,部分研究者进而将图变换应用于光场压缩的视点间预测模块。基于图变换的优化框架最早由Su等人(2017)提出,该方法依据深度信息将所有像素分类并构建图表示,并在此基础上对子视点图间场景的不规则变化进行预测。然而此方案依赖于深度信息,并且基于图变换的运动预测大幅增加了整体模型的复杂度。针对于此,Rizkallah等人(2021)提出了一个局部图变换的方法,通过图规约技术以及谱聚类来减少图的维度,从而控制算法的整体复杂度,并提出了不同规约方案下重建子视点图的率失真准则模型,以实现在特定复杂度限制下寻找最优图构建的目的。 在光场图像压缩乃至传统视频压缩领域中,如何描述邻近视点或帧间场景间的不规则运动是一个长久以来悬而未决的难题。类似于图变化或者单应性变化矩阵等基于人工设计函数的优化方案受限于其预测的准确率,对整体编码性能提升较为有限,且极大地增加了整体编码框架的复杂度,给实际应用带来了挑战。
3)基于视角重建的方法。
相比于传统使用手工设计函数描述复杂运动的优化方案,直接使用智能图像生成技术以重建邻近视点图的方案更为简洁、高效。深度神经网络中的先验知识显著减少了重建光场图像所需要传递的信息,大幅提升了光场图像压缩框架的效率,因此成为当前光场压缩研究的重要方向。 该类方法首先在所有待压缩的子视角图中选取数幅作为关键视角(Chen等,2018),压缩并传送至解码端。然后,在编码非关键子视角图时,将重建后的关键视角图作为输入,利用图像生成网络合成非关键视角图。最后,合成的非关键视角图与原图之间的残差将被压缩并传送至解码端。如香港城市大学Hou等人(2019)使用基于深度学习的角度超分辨率模型用于预测非关键视角图。北京大学Jia等人(2019)使用对抗生成模型来学习子视角图像结构中的角度以及空间变化,从而得以实现更准确的预测非关键视角帧的预测。针对低码率条件下的光场压缩,Ahmad等人(2020)提出了基于剪切小波变换的非关键视角预测方法。Bakir等人(2021)提出了一种自适应的非关键视点丢弃的策略,并在解码端对生成的非关键帧进行图像增强后处理,以进一步提升整体压缩效率。
2.4 焦栈图像压缩
焦栈图像是光场图像的降维,其压缩是一个全新的课题。相比于传统2D图像的固定视点、固定对焦的采样模式,焦栈图像需要在某一时刻对不同深度的场景进行稠密采集,以获取完整的场景图像数据。焦栈图像序列与普通视频具有不同的成像特性和冗余模型,普通视频帧之间的冗余模型通过运动矢量来刻画,而焦栈图像序列则通过焦深来刻画,因此现有编码框架不适用于焦栈图像压缩的目标。 焦栈图像编码方法可分为两类,即基于静态图像的编码和基于视频的编码。在基于静态图像的编码方法中,Sakamoto等人(2012a)将焦栈图像序列划分为尺寸为8的3D像素块,然后对每个3D像素块进行3D-DCT(3D discrete cosine transform)变换和线性量化,并按照频率从低到高的顺序排列为1D(one dimension)信号,最后利用霍夫曼编码方法将信号写入码流完成编码。
为了抑制图像退化噪声,Sakamoto等人(2012b)进一步利用3D离散小波变换对焦栈图像进行处理,相比于基于3D离散余弦变换的方法,有效抑制了编码产生的块效应失真。Khire等人(2012)提出的方法采用差分脉冲编码调制和相邻图像的信息来估计冗余度,获得了比JPEG和JPEG2000更高的压缩效率。 基于视频的编码方法考虑了序列各帧之间的相关性,通过运动搜索进行帧间预测,相比于基于静态图像的编码方法可获得更高的压缩性能。如van Duong等人(2019)面向光场重聚焦应用,将焦栈图像排列为视频序列,直接使用HEVC编码器进行压缩。然而,这显然不能挖掘图像间的焦深冗余。为此,Wu等人(2020b,2022)分别提出了基于高斯1D维纳滤波的块模式单向/双向焦深预测,以及分层焦深预测的方法,较早地开展了焦深冗余模型的构建。该类型相比于直接利用视频编码的方案,压缩性能上有了极大提升。然而,需要强调的是,焦栈图像压缩的研究刚刚起步,尚有许多未知的问题需要探索和研究。
2.5 点云编码压缩
3D点云是具有法线、颜色和强度等属性的无序3D点集。大规模3D点云数据的高效编码压缩技术具有广泛的市场应用前景。现有研究主要可分为传统压缩方法和智能压缩方法两类。
1)传统压缩方法。
为了实现点云数据的高效压缩,工业界和学术界提出了多种解决方案(Mekuria等,2017)。点云压缩方法是通过八叉树等表示方法将点云进行预处理,主要思路有3种。第1种是通过映射,将3维点云转换成2维图像后,采用传统的图像或者视频编码工具进行编码操作;第2种是首先直接将数据矢量线性变换为合适的连续值表示,独立地量化其元素,然后再使用多种无损的熵编码对得到的离散表示进行熵编码操作;第3种是将八叉树空间索引信息直接进行编码。根据组织机构不同,主要可分为运动图像专家组(MPEG)提出的点云压缩(point cloud compression,PCC)标准、音视频标准组(audio video coding standards workgroup,AVS)提出的点云压缩参考模型(point cloud reference model,PCRM)和谷歌公司研发的“Draco”编码软件3类。 2017年MPEG启动了关于点云压缩的技术征集提案,此后一直在评估和提升点云压缩技术的性能。
根据点云压缩的不同应用场景,MPEG划分了3类点云数据,并针对3类点云开发了3种不同的编码模型,分别是用于自动驾驶的动态获取点云的模型(LiDAR point cloud compression,L-PCC)、针对用于表示静止对象和固定场景的静态点云模型(surface point cloud compression,S-PCC)和针对用于沉浸式多媒体通信的动态点云的模型(video-based point cloud compression,V-PCC)。其中,动态获取点云指点云获取设备一直处于运动状态,获取的点云场景也处在实时变化之中;静态点云指被扫描物体与点云获取设备均处于静止状态;动态点云指被扫描物体是运动的,但是点云获取设备处于静止状态。由于L-PCC和S-PCC的编码框架相似,2018年1月MPEG对现有的L-PCC和S-PCC进行整合,推出了全新的测试模型(geometry-based point cloud compression,G-PCC)。2022年MPEG公布了第1代点云压缩国际标准V-PCC (ISO/IEC 23090-5)和G-PCC (ISO/IEC 23090-9)(Schwarz等,2019)。
其中,V-PCC适用于点分布相对均匀且稠密的点云,G-PCC适用于点分布相对稀疏的点云。G-PCC的几何信息编码部分主要是通过坐标变换和体素化(Schnabel和Klein,2006)的方法进行位置量化与重复点移除,然后通过八叉树构建将3维空间划分为层次化结构,将每个点编码为它所属的子结构的索引,最后通过熵编码生成几何比特流信息。属性信息部分则是通过预测变换、提升变换(Liu等,2020)和区域自适应分层变换(region-adaptive hierarchical transform,RAHT)(de Queiroz和Chou,2016)等进行冗余消除。V-PCC则通过将输入点云分解为块集合,这些块可以通过简单的正交投影独立地映射到常规的2D网格,再通过诸如HEVC和VVC等传统2维视频编码器来处理纹理信息及附加元数据。
为了保障我国数字媒体相关产业的安全发展,AVS也成立了点云工作组,并在2019年12月发布了国内第1个点云压缩编码参考模型PCRM(point cloud reference model)。PCRM的核心编码思想与G-PCC类似,同样是依据点云的几何结构直接编码。PCRM的几何编码主要是通过多叉树结构对点云划分,利用节点之间的关系和占位信息对点云编码。PCRM的属性编码有两种方案,一种是直接预测编码;另一种是基于变换的编码,即对点云的属性信息进行离散余弦变换。 Draco架构是谷歌媒体团队提出的开源3D数据压缩解决方案,使用k-维树等多种空间数据索引方法对属性和几何信息进行量化、预测压缩以及熵编码以达到高效压缩目的。
2)智能压缩方法。
随着深度学习的发展及其在数据编码领域的应用,研究人员提出了基于深度学习的端到端点云编码方法。2021年MPEG也开展了基于深度学习的点云编码(artificial intelligence-point cloud compression,AI-PCC)技术探索,并提出标准测试流程。基于深度学习的端到端点云编码方法主要涉及基于体素表示、基于点表示和深度熵模型3种方式。 基于体素表示的方法是将点云转换为体素化的网格表示,再对体素进行编码与压缩。Quach等人(2019,2020)和Wang等人(2021b)受基于学习的图像压缩方法的启发,使用基于3D卷积的自编码器,在体素上提取潜在表示作为点云的几何编码并在体素上执行二分类任务以重建点云几何信息。由于点云的稀疏性,点云占据的体素只占全部空间的小部分,体素网格中的大部分空间保持空白,导致存储和计算的浪费。
为了克服这一缺陷,南京大学Wang等人(2021a)利用稀疏体素代替稠密体素,并通过Minkowski稀疏卷积来降低内存要求以提升编码性能。 基于点表示的方法直接使用神经网络处理点云,而不需要额外的体素化。浙江大学Huang等人(2019)直接使用自编码器用于点云几何压缩。深圳大学Wen等人(2020b)提出了一种用于大规模点云的自适应八叉树划分模块,并使用动态图卷积神经网络作为点云自编码器的核心骨干网络。为了获得更好的率失真性能,Wiesmann等人(2021)使用核点卷积,南京大学Gao等人(2021)使用神经图采样来充分利用点的局部相关性。 深度熵模型将点云构建成八叉树形式,并在八叉树上应用神经网络估计概率熵模型。Huang等人(2020a)使用简单多层感知机,根据在八叉树上收集到的上下文信息来进行熵估计。
Biswas等人(2020)考虑点云序列间的上下文,并将该上下文信息引入到神经网络估计的熵模型中,以提升点云序列编码与压缩的性能。北京大学Fu等人(2022)基于注意力机制,充分利用长距离的上下文信息,以进一步提升编码与压缩性能。为了避免过多的上下文信息所引入的额外编解码复杂度,南京大学Wang等人(2022a)提出了轻量级SparsePCGC(sparse point cloud grid compression)模型,该模型已参与了最新的MPEG AI-PCC的基线评测。目前,使用深度学习技术进行点云属性压缩的工作较少,是一个有待于进一步探索的领域。目前代表性的方法是由中山大学Fang等人(2022)提出的3DAC(three dimensional attribute coding)算法,该方法首先将带有属性的点云构建为RAHT树,并使用神经网络为RAHT树构建上下文熵模型,以消除统计冗余。此外,Tang等人(2018,2020)提出基于隐函数表示的自编码器结构,以实现3D/4D点云数据的高效压缩。
2.6 6DoF视频传输优化
6DoF视频的典型应用是扩展现实(extended reality,XR)(Hu等,2020)。XR业务的典型特征是高数据速率和严格的时延预算,因此被归类在5.5G愿景中的eMBB(enhanced mobile broadband)和URLLC(ultra reliable low latency communication)业务之间。早在2016年,3GPP(3rd generation partnership project)已开展支撑XR业务的标准化工作,其中服务和系统工作组定义了高速率和低延迟XR应用程序。2018年,多媒体编解码器、系统和服务工作组继续开展这项工作,报告了相关流量特征。与此同时,系统架构和服务工作组标准化了新的5G服务质量标识符,以支持包括XR在内的交互式服务。各种XR应用程序和服务都有其用户设置、流量和服务质量指标,3GPP SA4为XR业务确定了20多个XR用例,对无线解决方案的性能评估提出了挑战。在此基础上,3GPP建议将XR用例分为3个基本类别,即虚拟现实(virtual reality,VR)、增强现实(augmented reality,AR)和云游戏(cloud game,CG)。对于无线传输来说,XR业务的两个关键性能指标是容量和功耗。
在方案对比之前,所有参会组织为容量和延迟约束定义了以用户为中心的联合度量方式,即满足用户数。由于XR业务对时延敏感,因此延迟接收到的数据包与丢失的数据包是等同的,这些超时接收到的数据包将被统计到误包率中。 目前较为主流的VR服务模式是基于视场角的数据流(viewport-dependent streaming,VDS)。VDS是一种自适应流方案,使用网络状态和用户姿势信息来调整3D视频的比特率(Yaqoob等,2020)。具体而言,就是基于用户的位置和方向将全景视频在3D空间上划分为独立的子图像,流服务器通过存储不同质量(即视频分辨率、压缩和帧率)的子图像提供多种表示,由用户动作来触发新视频内容的传输。下载视场(field of view,FOV)中的所有子图后,用户的XR终端设备将进行渲染,然后进行显示。
VDS的使用意味着VR服务伴随着上行频繁更新的动作、控制信号,会带来高速的下行传输速率。对于XR CG,控制信号包括手持控制器输入和3DoF/6DoF运动样本,即旋转数据(“滚动”、“俯仰”和“偏航”)以及用户设备的3D空间位移数据。相关研究工作主要包括基于用户视口轨迹的预测方案和基于混合方法的预测方案两类。
1)基于用户视口轨迹的预测方案。
Nasrabadi等人(2020)提出了一种基于聚类的视口预测方法,该方法结合当前用户的视口变化轨迹和以前观看者的视口轨迹。算法每隔一定的时间将以前的用户基于他们的视口模式进行聚类,并决定当前用户所属类别,从而利用该类中的视口变化模式预测当前用户的未来视口。Feng等人(2020)提出的LiveDeep方法采用了一种混合方法来解决VR直播流媒体的训练数据不足的问题,并基于卷积神经网络(convolutional neural network,CNN)模型分析视频内容,通过长短时记忆循环神经网络对用户感知轨迹进行预测,以消除单一模型造成的不准确性。类似地,Xu等人(2018)为了避免头部运动预测错误,提出了一种概率视口预测模型,该模型利用了用户方向的概率分布。Yuan等人(2020)采用高斯模型估计用户未来运动视角,并采用Zipf模型估计不同视角的优先级,进而保障用户观看视角的时间—空间质量一致性。
Hou等人(2021)提出了基于长短时记忆循环神经网络的视口预测模型。该模型使用过去的头部运动来预测用户注视点的位置,实现了最优段预取方法。 Fan等人(2020)提出利用传感器和内容特性来预测未来帧中每个Tile的观看概率。为了提高预测性能,提出了几种新的增强方法,包括生成虚拟视口、考虑未来内容、降低特征采样率以及使用更大的数据集进行训练。Chen等人(2021)提出了一种用户感知的视口预测算法Sparkle。该方法首先进行测量研究,分析真实的用户行为,观察到视图方向存在急剧波动,用户姿势对用户的视口移动有显著影响。此外,跨用户的相似性在不同的视频类型中是不同的。基于此,该方法进一步设计了基于用户感知的视口预测算法,通过模拟用户在分片地图上的视口运动,并根据用户的轨迹和其他类似用户在过去时间窗口的行为来确定用户将如何改变视口角度。
2)基于混合方法的预测方案。
该类方法在视口预测时除了考虑用户的头部跟踪历史数据,还结合了其他能反映视频内容特性的数据。Nguyen等人(2018)将全景显著性检测模型与头部跟踪历史数据相结合,以实现头部运动预测的精细化预测。Ban等人(2018)利用360°视频自适应流媒体中的跨用户行为信息进行视口预测,试图同时考虑用户的个性化信息和跨用户行为信息来预测未来的视口。与以往基于图像像素级信息的视口预测方法不同,Wu等人(2020a)提出了基于语义内容和偏好的视口预测方法,从嵌入的观看历史中提取用户的语义偏好作为空间注意,以此帮助网络找到未来视频中感兴趣的区域。类似地,Feng等人(2021b)提出的LiveROI(live region of interest)视口预测方案采用实时动作识别方案来理解视频内容,并根据用户轨迹动态更新用户偏好模型,在不需要历史用户或视频数据的情况下有效预测视口。
实时视口预测机制LiveObj(live object)通过对视频中的对象进行语义检测并跟踪,再通过强化学习算法实时推断,从而实现用户的视口预测。Zhang等人(2021b)将头部运动预测任务建模为稀疏有向图学习问题。在最新的研究中,Maniotis和Thomos(2022)将VR视频在边缘缓存网络中的内容放置看做马尔可夫决策过程,然后利用深度强化学习算法确定最优缓存放置。Kan等人(2022)提出了一种名为RAPT360(rate adaptive with prediction and trilling 360)的策略,通过拟合不同预测长度下基于拉普拉斯分布的预测误差概率密度函数,以提高视口预测方法的准确性。提出的视口感知自适应平铺方案可根据视口的2维投影的形状和位置分配3种类型的平铺粒度。 当前,6DoF视频传输优化的研究重心已逐渐从全景视频码流转向点云码流。随着数据量的显著增大,6DoF视频传输优化不仅需要考虑视口的自适应预测,还要在编码压缩时考虑到码流容错和纠错能力。此外,为了应对移动终端算力不足的限制,还需要考虑边缘服务器的动态配置与卸载。
03 6DoF视频交互与显示
6DoF视频允许用户自由选择观看视角,这就需要给用户提供大量可供自由选择的视点内容。然而,对任意视角进行视觉内容的采集需要记录的数据量非常大,给采集、存储和传输过程造成很大的负担。因此,在实际的场景环境中,通常采集场景中有限的视点信息,并借助已有视点信息,依靠虚拟视点绘制技术绘制出未采集的视点(即虚拟视点)画面,以供用户自由切换。 现有的虚拟视点图像绘制技术研究正向6DoF方向发展(Jin等,2022)。虚拟视点技术的相关研究与应用大部分还停留在水平基线绘制阶段。考虑到平移自由度是沉浸式视频系统中向用户提供运动视差的关键,MPEG开展了关于平移自由度的探索实验。其中,基于4参考视点的虚拟视点视觉内容绘制算法可以在用户切换观看视点时提供更多的平移自由度,成为近年来的研究热点。绘制算法存在影响用户感知的伪影、背景渗透等绘制失真,且3维映射环节存在计算冗余导致绘制速度较慢,同时参考视点的数量增长进一步增加了3维映射环节的时间消耗,所以绘制技术还存在改进的空间。以下将从解码后滤波增强和虚拟视点合成两个角度展开讨论。
3.1 解码后滤波增强
3.1.1 深度图滤波
由于深度图纹理较少,通常会在编码端以高压缩比进行编码,从而使得解码端的深度图质量较低,这给虚拟视点绘制带来挑战。Yang等人(2015a)提出了直接利用编码参数(如运动矢量、块模式等)来进行深度图滤波的方法。Yuan等人(2012)证明3D视频编码误差服从平稳白噪声的分布规律,并据此首次提出了基于维纳滤波的深度图滤波和虚拟视图滤波方法。Yang和Zheng(2019)提出了一种新型局部双边滤波器,为不太可能受到噪声影响的像素赋予了更高的权重,但没有彻底解决边缘轮廓中的不连续性问题。Yang等人(2019)和He等人(2020a)提出了一种跨视点的多边滤波方法,最终提升了虚拟视点绘制质量。He等人(2020b)针对有损编码造成的深度失真提出了一种跨视点优化滤波方法,该方法设计了一个互信息度量来模拟跨视点质量一致性的约束,其中包括数据精度和空间平滑性,可以恰当地处理对象边缘上的振铃和错位伪影。 3.1.2 点云上采样 点云上采样任务的目标是对低分辨率稀疏点云进行上采样,生成一个密集、完整且均匀的点云,并需要保持目标物体的形状。现有的点云上采样的方法大致可以分为基于优化和基于深度学习两大类。
1)基于优化方法的模型。
该类型方法一般依赖于几何先验知识或者一些额外的场景属性。为了上采样稀疏点集,Alexa等人(2003)提出在局部切线空间的Voronoi图顶点处插入点。Lipman等人(2007)引入了局部最优投影算子来重新采样点并基于L1范数重建曲面。Huang等人(2009)设计了一种带迭代正态估计的加权策略,以整合具有噪声、异常值和非均匀性的点集。Huang等人(2013)提出边缘感知的点集重采样方法,以实现渐进式点集上采样。Wu等人(2015)通过引入新的点集表示方法,以改善孔洞和缺失区域的填充质量。由于上述方法在建模时依赖于目标点云的先验假设,仅适用于光滑平面,对含有大量噪声的稀疏点云上采样效果有限。
2)基于数据驱动的模型。
Yu等人(2018b)首次提出了基于数据驱动的点云上采样模型PU-Net(point cloud upsampling network)。相比基于优化方法的模型,PU-Net显著提升了点云上采样的性能。为了充分利用点云中的全局与局部几何结构,EC-Net(edge-aware point set consolidation network)(Yu等,2018a)实现了边缘感知点云上采样,进一步提高了表面重建质量。为了处理大规模点集,Wang等人(2019)提出的MPU模型在训练集生成时,将上采样目标物体分割成小尺度的片元。 根据模型改进的手段不同,现有的研究工作主要可分为4类。 1)基于先进的神经网络架构。如PU-GAN(point cloud upsampling adversarial network)(Li等,2019a)通过利用生成对抗网络学习合成潜伏空间中均匀分布的点。PU-GCN(Qian等,2021)基于图卷积网络来高效提取点云局部结构信息。PU-Transformer(Qiu等,2022)借助多头自注意力机制和位置编码,以增强模型的表示学习能力。PUFA-GAN(Liu等,2022)通过分析点云的频域信息,进一步增强模型的表达和学习能力。 2)基于几何先验的模型设计。
如PUGeo-Net(geometry-centric network for 3D point cloud upsampling)(Qian等,2020)不仅利用点云的坐标信息,还使用了点云的法向量信息来显式学习目标物体的局部几何表示。深圳大学Zhang等人(2021a)提出了基于可微渲染的点云上采样网络,通过最小化含有重建损失和渲染损失的复合损失函数来生成高质量的稠密点云。Dis-PU(point cloud upsampling via disentangled refinement)(Li等,2021a)首先生成一个能覆盖物体表面的稠密点云,然后再通过微调点的位置来保证点云的分布均匀性。 3)任意倍数上采样策略。Meta-PU(meta point cloud upsampling)(Ye等,2022)采用元学习的方式动态调节上采样模块的权重,从而使得模型训练一次就可以支持不同倍率上采样需求。在线性近似理论的基础上,Qian等人(2021)自适应地学习插值权重以及高阶近似误差。Mao等人(2022)在归一化流约束下的特征空间中构建可学习的插值过程。Zhao等人(2022)选择多个靠近物体隐式表面的体素化的点云中心作为种子点,再将种子点密集且均匀地投射到物体的隐式表面,最后通过最远点采样,实现任意倍率的点云上采样任务。 4)自监督学习策略。为了提升模型的泛化性。SPU-Net(self-supervised point cloud upsampling)(Liu等,2022)将自监督学习应用在点云上采样任务中。总体而言,现有基于学习的方法依赖于数据集特性,在实际应用时的泛化性能仍有很大提升空间。未来结合优化和数据驱动方法,提升点云上采样任务的性能是一个很有潜力的研究方向。
3.2 虚拟视点合成
按照绘制机理不同,虚拟视点合成方法可根据6DoF视频内容划分为基于模型的绘制(model based rendering,MBR)和基于图像的绘制(image based rendering,IBR)两类。MBR是利用3维网格或者点云数据建立3维立体模型,从而重建出趋于真实的场景(Chen等,2019)。其中,在基于网格的表示方式中,通过基于三角形的方式来表示场景中的对象,对于静态场景可以较好地通过数十、数百或者数千幅输入图像的匹配特征进行划分,获得明确的3D模型。然而,由于网格的不规则性和低细节,从重建的场景中生成动态的新对象是一项困难的任务。MBR方法适用于简单场景,复杂场景中数据量会随着场景复杂度的增加而急剧增长,不适用于追求强烈交互感的沉浸式场景。IBR方法是使用获取的图像的颜色值来恢复场景的外观,目前有两种方式,即基于光场图像的绘制方法和基于深度图像的绘制方法(depth image-based rendering,DIBR)(Bonatto等,2021)。
与DIBR技术相比,基于光场图像的绘制由于光场数据中含有大量不易压缩的高频信息,实际采集、存储、传输以及终端内容生成的任务都更重,而且产生重影、伪影等失真的概率也更大。DIBR使用的数据更简单,易于处理,技术复杂度低,对设备要求不高,可以生成更具真实感的视觉内容。随着深度估计算法和多视点视觉内容获取技术的长足进步,DIBR技术已成为实现6DoF视频的基础技术。基于神经辐射场的视点合成方法得到了广泛关注(Xu等,2021)。本部分将重点介绍基于深度图像的虚拟视点绘制技术和基于神经辐射场的视点合成技术。
3.2.1 基于深度图像的虚拟视点绘制
DIBR技术包括3维映射(3D-Warping)、视点融合和空洞填补3个环节,考虑到深度图的质量对绘制虚拟视点质量也具有重要意义,因此围绕DIBR技术的研究可划分为3D-Warping优化与加速、视点融合优化和空洞填补优化。
1)3D-Warping优化与加速。
3D-Warping是DIBR的核心环节,这一环节对虚拟视点生成的质量和速度有重要影响。Nonaka等人(2018)提出了利用图形处理器并行编程的实时虚拟视点视觉内容绘制方法,大幅降低了绘制一帧图像所需的时间。但这类方法对用户使用的硬件配置提出了较高的要求,另一方面,在算法层面上不去除冗余,仍会占用一定的开销。 针对由3D-Warping环节所引起的绘制质量不佳问题,Ni等人(2009)提出了一种针对汇聚相机阵列的启发式融合插值算法,融合插值过程中考虑了深度、映射像素位置和视点位置,然而难以自适应地确定合适尺寸的窗口。Fachada等人(2018)提出一种支持宽基线场景的视点绘制方法,参考视点图像被划分为以像素中心为顶点的三角形,在映射图像中重新形成的三角形中的像素通过三线性插值进行填充,提高了切向曲面的绘制质量。 针对由3D-Warping环节所引起的绘制速度过慢问题,国内研究者提出利用专用的现场可编程逻辑门阵列设备(Li等,2008)和超大规模集成电路设备(黄超 等,2018)来解决。为了从算法层面提升绘制速度,Jin等人(2016)提出了区域级的映射方法,根据区域的不同特征将区域分类,仅对包含重要信息的区域进行映射操作,避免计算中的冗余信息,大幅减少了映射时间,但由于不同区域利用的是来自不同视点的信息,生成的图像中存在明显的区域边界。在提升绘制质量方面,Fu等人(2017)提出一种基于变换域的用于多视点混合分辨率图像的超分辨率方法,并基于目标低分辨率视点和辅助高分辨率视点之间相关性的最优权重分配算法,可以为低分辨率帧的视点图像提供更多细节信息。Nie等人(2017)针对宽基线街道图像提出了一种新颖的单应性限制映射公式,该公式通过利用映射网格的一阶连续性来增强相邻超像素间单应性传播的平滑度,可以消除重叠、拉伸等小伪影。
2)视点融合优化。
不同的融合策略会影响虚拟视点绘制图像绝大部分区域的内容。Vijayanagar等人(2013)根据1维邻域中非空洞像素的数量来优化左右参考视点映射图像的融合权重,但该方法仅能改善空洞附近的失真。Lee等人(2016)利用边缘信息提取出深度图的不可靠区域,根据颜色相似性、深度可靠性和深度值进行视点融合,减少了伪影和模糊。Wegner等人(2016)采用Z-Buffer技术对深度差区域进行视点融合,但该方法需要准确的深度图。Ceulemans等人(2018)提出了一种针对宽基线相机阵列的多视点绘制框架,首先对深度图进行预处理以避免不可靠的信息在整个帧中传播,并且利用加权颜色混合结合直方图匹配确保了参考摄像机的颜色直方图之间的平滑过渡。Sharma和Ragavan(2019)利用几何信息得到纹理匹配概率,自适应地融合参考视点的纹理和深度信息。
de Oliveira等人(2021)采用快速分层超像素算法来计算视差和颜色相似性,增强了图像中结构的一致性。 针对平面相机阵列,Chang和Hang等人(2017)提出了一种改进的多参考视点融合算法,选择距离最接近的参考视点作为主导参考视点,并根据其他辅助参考视点的深度和颜色信息修复深度边缘区域中的错误像素。但由于视点切换过程中主导参考视点会发生变化,用户自由巡航时易产生不连续感和出画感。Kim等人(2021)通过直方图匹配去除了由于图像对比度不一致而导致的误差,解决了图像之间差异较大时出现的失真。Qiao等人(2019)采用多项式拟合方法进行视点亮度校正,提升了虚拟视点融合准确度。
3)空洞填补优化。
由于遮挡、采样精度不够高、计算中的舍入误差以及视野的局限性等原因,融合后的虚拟视点图像中存在部分缺失信息的区域需要填补以协调图像的整体视觉效果。空洞填补是利用DIBR过程进行虚拟视点绘制的困难挑战之一,根据参考信息来源可以分为基于图像修复的方法、基于时域的方法和基于空域的方法。 Criminisi等人(2004)提出的修复方法可以在不引入模糊伪影的情况下填充较大的空洞。该方法通过复制来自虚拟视点图像非空洞区域的最佳匹配块来填充空洞,但是有时会错误地采用前景纹理来填充孔洞。因此,基于邻域信息传播的算法会在空洞附近产生模糊伪影。Kim和Ro(2017)提出了一种具有时空一致性和双目对称性的可靠标签传播方法,将相邻视图和前一帧中使用的可靠标签传播到要填充的目标图像,可以避免前景用于空洞填充的发生。Kanchana等人(2022)基于深度学习的方法进行空洞填补,结合时间先验和归一化深度图来预测填充向量,可以提高绘制视点的时空一致性。 实际上,当视点切换时,捕捉时域上的信息更难,所以一些研究者提出了基于空域信息的空洞填补方法。Yao等人(2014)利用时域信息来辅助空洞填补。
首先利用纹理和深度信息的时间相关性来生成背景参考图像,然后将其用于填充与场景的动态部分关联的孔洞;而对于静态部分,则使用传统的修补方法。该方法可以避免部分区域的闪烁效应,但是会产生时延现象。Luo等人(2018)提出一种基于快速马尔可夫随机场的空洞填补方法,将图像修复作为能量优化问题并通过循环置信传播来解决,而且利用深度信息来阻止前景纹理错误填充。Lie等人(2018)提出一种建立背景子画面模型填充空洞的方法,通过将视频的空间和时间信息逐步整合到统一的背景子模型中,从而利用真实的背景信息来恢复空洞,但其需要每一帧模型的更新维护和额外的过程,会导致时间复杂度增加。
Rahaman和Paul等人(2018)采用高斯混合模型(Gaussian mixed model,GMM)方法来分离背景和前景像素,并通过对相应的GMM模型和映射图像像素亮度的自适应加权平均来恢复映射过程中引入的缺失像素,但其学习率需预先训练得到且无法改变,鲁棒性较差。Thatte和Girod(2019)通过挖掘空洞区域的特性,设计出一种统计模型来预测视点切换而导致虚拟视点图像中丢失数据的可能性,但只能用于单自由度视点切换的情况。Zhu和Gao(2019)针对GMM对于往复运动的局限性,提出了一种改进方法,使用深度信息来调整GMM的学习率,提高了辨别前景像素和背景像素的准确性。Luo等人(2020)提出了一种包括前景提取、运动补偿、背景重构和空洞填补4个模块的空洞填充框架,可使用或扩展现有的大部分背景重建方法和图像修复方法作为该框架的模块。 现有的空洞填补算法存在一定的局限,且不可避免地会引入边缘模糊,无法完全恢复出空洞中的真实信息。基于四参考视点的DIBR算法通过引入更多参考视点的方式显著减少了空洞区域,尤其是消除了位于视野边界的空洞,仅剩余部分公共小块空洞,提升了虚拟视点图像的主客观质量。
3.2.2 基于神经辐射场的视点合成
Mildenhall等人(2020)提出了基于神经辐射场的视点合成方法NeRF(nueral radiance field),该算法使用全连接(非卷积)深度网络表示场景,其输入是单个连续5D坐标(3维空间位置和观察方向),输出是可支持任意视角查看的3维体素场景。算法通过沿相机光线查询5D坐标来合成视图,并使用经典的体渲染技术将输出颜色和密度投影到图像中。因为体积渲染是自然可微的,所以优化表示所需的唯一输入是一组具有已知相机姿势的图像。该算法描述了如何有效地优化神经辐射场以渲染具有复杂几何和外观的场景的逼真的新颖视图,并展示了优于先前神经渲染和视点合成工作的结果。
在此基础上,Barron等人(2021)提出了Mip-NeRF的解决方案,扩展了NeRF以连续值的比例表示场景。通过有效地渲染抗锯齿圆锥截头体而不是射线,Mip-NeRF减少了锯齿伪影并显著提高了NeRF表示精细细节的能力。针对全景视频输入,Barron等人(2022)提出了解决采样和混叠问题的NeRF变体Mip-NeRF360,使用非线性场景参数化、在线蒸馏和基于失真的正则化器来克服无界场景带来的模糊或低分辨率的渲染问题。Wang等人(2021c)提出了一种双向阴影渲染方法来实时渲染全景视频中真实和虚拟对象之间的阴影。Hong等人(2022)将神经辐射场与人体头部的参数表示相结合,提出了基于NeRF的参数化头部模型HeadNeRF,可以在GPU(graphics processing unit)上实时渲染高保真头部图像,并支持直接控制生成图像的渲染姿势和各种语义属性。总体而言,基于神经辐射场的视点合成方法已得到产业界和学界的广泛关注,随着模型训练速度的大幅提升和渐进式渲染技术的广泛研究,将具有非常大的应用潜力。
04 发展趋势与展望
6DoF视频技术的发展将为未来元宇宙时代的到来奠定基础,并且将呈现多维度的发展,包括感官丰富程度的提升、分辨率和码率的提升、时延和可靠性需求的提升以及与现实的交互程度的提升。从这些维度出发,对6DoF视频技术的内容采集与预处理、压缩与传输以及交互与显示提出了更高的要求与挑战。
1)6DoF内容采集与预处理。
内容采集的难度以及后期制作技术的复杂程度直接影响了6DoF视频内容制作的难度,因此长期以来是限制6DoF视频发展的主要原因。从发展需求来看,未来的研发方向包括两个方面:(1)轻量化和低成本的视频采集系统。例如,手持彩色3维扫描仪、手持多视点采集系统等装备已经开始具有这些特点,但是距离实际应用还有较长的演进路线;(2)高效、智能的视频内容处理技术。当前技术在几何标定、深度图去噪等方面已经有较好的积累,但适用范围还比较有限,亟需适应面更广、处理流程更智能的技术。
2)6DoF视频压缩与传输。
该方向的研究热点主要集中于高效点云压缩和数据传输策略。一方面,现有的点云压缩算法仍存在数据分布刻画难、场景先验利用少和计算复杂度高等挑战。基于3维场景智能分析的大规模3D点云压缩研究,可以实现非结构化点云数据的场景—目标—要素多目标层次化表示,然后根据应用场景类型和目标特性做针对性压缩,以改善重建点云中存在的细节丢失和全局形变等问题,进而实现高效的点云数据编码压缩,是潜在的发展趋势。另一方面,相对于传统视频流式传输场景,点云视频特有的传输方式对资源调度优化引入了新的挑战。例如,在码流传输过程中需要考虑预测视口大小与点云质量等指标之间的平衡。将强化学习在传统视频流式传输场景中的应用迁移到点云视频流式传输场景中,并针对新场景进行适应性的改进与优化,是一个有潜力的研发方向。
3)6DoF视频交互与显示。
未来云渲染架构下,大量的视点合成和渲染计算工作都位于云端服务器上完成,可以有效降低终端的计算负载和功耗,同时也使终端的佩戴重量尽可能降低。同时,借助终端的异步时间扭曲技术,实时视频的端到端时延要求可放松至70 ms,实现无眩晕感的沉浸式视频体验。如何对端、管、云三者高效协同,将是未来6DoF视频交互与显示的重要技术方向。
编辑:黄飞
评论
查看更多