(为某专刊撰写的草稿,供学习使用)
by 班怡璇,谢澜,张行功,郭宗明
摘要:
虚拟现实视频以其丰富的内容,沉浸式的观看体验受到越来越多人的关注。然而,高码率需求和网络带宽瓶颈却限制了它进一步的发展。另外,由于人眼视角的限制,完整传输360度的视频就带来了带宽和资源上的浪费。为了给用户提供高质量的虚拟现实服务并解决上述问题,本文介绍了虚拟现实视频传输传输架构以及全景传输、视点自适应传输等关键技术。详细论述了均匀映射、非均匀映射和分块等各种传输方式的优缺点,强调了视点预测的重要性。通过这些技术手段,用户端可以从服务器端请求合适的视频片段进行传输,在带宽受限条件下实现高质量的虚拟现实视频服务。
Introduction
虚拟现实视频(VR video),又称全景视频或360度视频,以其充分的沉浸性、真实性、制作简单性等特点正受到人们的广泛关注。它通过全景摄像机记录三自由度或六自由度的自然图像,降低了虚拟现实内容制作的门槛,提供现有普通视频所不能达到的真实感。近几年,随着虚拟现实设备、网络和终端技术的成熟,虚拟现实视频正越来越多地用于影视、游戏、医疗、教育等应用中。据思科的统计报告显示[1],虚拟现实应用在2016年的平均月流量达到了13.3PB,预计到2021年后达到140PB,年增长率达到60%。如此广泛的虚拟现实视频给人们的生活和工作带来了新的体验,大量的网络基础设施和智能穿戴设备也推动了虚拟现实视频应用的发展。
然而,高质量的虚拟现实视频服务仍面临若干挑战。其中,网络传输是一个关键性问题。虚拟现实视频对网络带宽有较高的消耗,例如,一个分辨率为2Kx1K的虚拟现实视频经过压缩编码,需要4Mbps的数据量;若分辨率达到4Kx2K,则数据量将上涨至20Mbps,至少需要25Mbps的网络带宽才可以承载[2]。现有互联网带宽难以满足如此高码率虚拟现实视频的流畅播放,进而严重影响其应用。
为了解决虚拟现实视频的传输瓶颈,工业界和学术界提出了众多解决方案。早期,Google、YouTube采用可兼容现有视频编解码器的全景传输模式,但存在码率高、视频变形等问题。2015年,Facebook提出了视点自适应传输和金字塔映射模式,可根据用户视点区域传输视频内容,减少总体码率。2016年,三星、高通等公司提出了多种非均匀映射方式,MPEG组织也专门成立一个I-AHG沉浸式视频专题组,制定全景视频文件格式、映射、传输标准。在国内,AVS标准化组织也于2016年开始制定AVS虚拟视频编码和系统标准,中兴、华为、北京大学、上海交通大学等单位相继提出多种映射和传输方案。
本文将详细介绍虚拟现实视频传输的发展现状和关键技术,重点从传输框架、全景传输、自适应传输等方面展开。
2、虚拟现实视频传输框架

图1 虚拟现实视频传输架构
完整的虚拟现实视频传输架构包括五个部分:全景采集、拼接、映射、编码、传输,如图1所示。
全景采集。虚拟现实视频是由多摄像头组合成的全景相机拍摄而成。利用全景摄像机采集自然图像,可以极大简化虚拟现实内容的制作。近几年,全景相机硬件技术得到飞速发展。从早期由多个普通摄像头合成的全景相机,发展到各种专用相机,例如Facebook Surround 360,三星Gear 360等。可以提供从视频采集到拼接等一系列功能,方便虚拟现实视频的创作。
视频拼接是全景视频采集的后处理过程。它将若干个摄像头的视频合成一路全景视频,形成一个完整的虚拟现实视频提供给用户。目前已经有多种商业化或开源的视频拼接软件,例如Video Stitch, Facebook Surround 360 SDK,Nuke等。
映射过程。为了便于存储和压缩编码,球面视频内容需要被几何映射到平面。映射影响了虚拟现实视频编码前的像素量,在一定程度上也决定了视频内容所包含的信息量。映射过程与传输紧密相关,并主要分为两类:均匀映射和非均匀映射。均匀映射保留全部全景视频信息;非均匀映射仅在部分区域保留完整信息,其他区域仅保留部分信息,并用较少像素表示。
视频编码。虚拟现实视频使用压缩编码减少视频中的冗余信息。为了兼容现有编码器和播放设备,目前虚拟现实视频主要采用H.264,HEVC等编码标准。
网络传输。虚拟现实视频需要通过互联网分发给用户,网络传输是目前最大的挑战。为了提供清晰、流畅的虚拟现实视频体验,映射和传输方法起到了关键性作用。传输方法主要分为两类:
- 全景传输方法:将360度全景视频以同等质量、完整的发送给用户。可以保证映射内容完整保留了原始球面的所有内容,保留信息量最大;但由于播放设备和视角的限制,在某一时刻,用户只关心视角范围内的部分内容,全景传输方法势必会造成巨大的资源浪费。
- 视点自适应传输方法:顾名思义,指的是客户端可根据用户视点,动态传输视角范围内的视频,避免了资源浪费。然而,若用户当前视点与下载视频的视点不符,会出现黑屏或视频质量降低等问题。
在虚拟现实视频传输框架中,映射与传输方式紧密相关。其中,全景传输对应均匀映射,完整的映射和传输360度视频;视点自适应传输对应非均匀映射和分块传输,按用户视角映射和传输局部视频。
3、全景传输
全景传输方法是将球面视频均匀的映射到平面上,按照矩形布局编码和传输完整的360度视频内容。全景传输可直接使用现有编码器和传输方式,因为其简单和通用而成为当下虚拟现实视频使用最广泛的传输方法。
均匀映射是全景传输的主要映射方式,决定了编码效率和带宽消耗。代表性的均匀映射方法有矩形映射(Equirectangular Projection, ERP)、立方体映射(Cube map Projection,CMP)、八面体映射等,如图2所示。

图2-矩形、六面体等均匀映射方法示例
ERP方法是使用最多的虚拟现实视频映射方法,这种方法在球的纬度上按照赤道的采样频率对内容进行采样并用平面进行表示,生成的虚拟现实视频的宽高比为2:1。但是,ERP方法在南北两极存在着严重的过采样现象,使得整体的冗余像素增加。
立方体映射是将球面内容投影到外接的一个立方体的6个面上,并将6个面拼接重组成一个完整的虚拟现实视频。
除此之外,更多的多面体被应用于虚拟现实视频的映射方法中,例如正八面体(Octahedron Projection, OHP)、正二十面体(Icosahedral Projection,ISP)等。理论上,使用面数越多的正多面体,可以使得映射后的数据量越小。但是,这些正多面体都需要通过“再拼接”形成矩形平面。拼接过程导致内容上的不连续现象,在一定程度上也会影响编码效率。
表1总结了目前主要的均匀映射方式的优缺点。其中,像素比例代表映射后面积和原始球面的比例关系,是影响视频编码码率的一个因素。
表1 均匀映射方法比较
映射方法 |
像素比例 |
优点 |
缺点 |
矩形映射 |
1.57 |
映射方法简单 |
南北两极存在严重过采样 |
立方体映射 |
1.91 |
每个面失真小 |
六个面拼接存在不连续现象,影响编码效率 |
八面体映射 |
1.10 |
映射面积小 |
多面拼接存在不连续现象,影响编码效率 |
二十面体映射 |
1.21 |
映射面积小 |
多面拼接存在不连续现象,影响编码效率 |
柱状映射 |
1.02 |
映射面积小 |
存在空白区域 |
4、视点自适应传输
视点自适应传输技术是一种根据用户视点,按需下载视频内容的方法。如图3所示,对于用户视角内的内容可以选择下载高质量的版本,对于视角外的部分可下载低质量的版本,或者不进行下载。

图3 视点自适应技术原理图
视点自适应传输可有效减少虚拟现实视频的带宽浪费问题。在相同带宽条件下,它可分配更多带宽给视角区域,从而提高用户视窗内视频的质量,增强用户的观看体验。
按照传输内容的构成形式,视点自适应方法可以分为两类:非均匀映射和分块传输。
- 非均匀映射[3]。传输一个质量不均匀的360度全景视频,用户视点范围内是高分辨率,其他区域是低分辨率,从而减少整体码率。
- 分块传输[4]。将全景视频从空间上分为不同视频块,根据视点范围传输部分视频块。
两种的主要差别为:非均匀映射需传输360度的全景视频,可防止头部快速运动导致的黑场;而分块方法可传输局部或全部视频内容,灵活性更高。
视点预测是视点自适应传输的另一个重要技术。虚拟现实视频要求显示延迟(motion to photon latency)低于20ms[5]。同时,由于存在网络传输延迟,在头部快速运动时,要避免视野范围内出现黑场,必须对视点区域进行预测和预取。因此视点预测的准确度极大影响虚拟现实视频的传输质量。
4.1 非均匀映射传输技术
非均匀映射传输技术是一种通过将原始球面视频进行非均匀映射处理后进行传输的技术。其在对球面内容进行采样时,令球面上的像素点有不同的权重,使得关键视频内容得到保留,而不重要的区域被下采,仅保留少部分关键信息,如图4所示。其优点是在保证关键区域质量的同时,从整体上降低视频的大小,极大的减轻了网络传输和客户端解码的压力。

图4 非均匀映射的原理图
目前已有多种非均匀映射传输方式,例如Facebook提出的多分辨率立方体、金字塔映射、偏移立方体(offset cube map)等,高通提出的阶段金字塔等。它们共同目标是:在保持视点区域质量的前提下,降低整体分辨率。但不同映射方式存在变形、失真或边界等问题,对编码效率有不同影响。
Facebook最早提出了一种多分辨率立方体映射方法,它是通过将立方体映射方式进行变换后得到的。保持正前面和与其相邻的上、下、左、右四个面的一半分辨率不变,对这四个面剩下的一半和后面的视频内容进行下采样,最终重新组合成一个二维平面视频帧,如图5所示。这种方法的缺陷是在上、下、左、右面的中间部位由于采样率突变,存在明显的边界,影响用户的观看体验。

图5 多分辨率立方体映射
除Facebook外,高通曾提出一种截断的金字塔映射方法(Truncated Square Pyramid,TSP)[6],并被MPEG OMAF标准采纳。这种方法与Facebook的金字塔映射方法类似,只不过非关注区域投影至四棱台的顶部,而不是投影为一个像素点,如图6所示。这种方法相较于金字塔方法,在一定程度上消除了由于映射造成的斜边效应,在内容表示上更加连续,有利于视频编码。

图6 截断金字塔映射
为了支持非均匀映射传输,需要针对每一个主视点都预先生成不同的视频版本。一旦用户发起请求,就立即将对应视点的版本提取出来进行传输,在保证视频质量的同时减少了网络流量。
4.2 分块传输技术
分块传输技术(tile-based)是另一种视点自适应传输方式。它将全景视频按照空间划分为若干个子视频块(tile),客户端可以根据网络状况和用户头部运动有针对性的向服务器端请求视频片段,具体过程如图7所示。
与非均匀映射传输方式不同,分块传输仅传一部分内容,进一步减少了传输数据量。它可以自由的选择各个分块的质量,增加了传输的灵活性。同时,最新的HEVC编码标准支持tile方式编码,可用一个编解码器对整个视频流进行编解码,大大减少了客户端的解码复杂度。所以,分块传输是目前最实用的全景视频传输技术之一。

图7 分块传输示意图
分块传输可有多种切分方式,例如六面几何式[7]、18格矩形分割方式[8]、12格矩形分割方式[8]等。不同的切分方式将会影响编码效率、传输块数量和边界失真等。
图8以18格和12格矩形分割方式为示例。18格划分是将水平方向按照60°间隔分成六列,垂直方向按照45°-90°-45°方式分成三行,共计18个视频块。而12格划分是水平方向按照90°间隔分成四列,垂直方向同上。

图8 18格/12格划分示意图
值得注意的是,在全景视频传输过程中,切分粒度越小,视频块的组合就越贴近用户视角,浪费的视频内容也就越少,也即自适应传输技术就越灵活。但是,一味减小视频块大小并不会使视频数据量有持续显著性下降。这是由于在切分后像素之间的相关性被破坏,使得切分后编码数据量之和略大于切分前的数据量,即便是在高压缩率的HEVC标准下,18格划分方式都会招致5.82%的压缩损失[8],在极端条件下,浪费的视频内容大小甚至不足以抵消分块带来的损失。所以,如何决定分块大小也是一个值得关注的问题。
4.3 视点预测方法
视点预测是视点自适应传输的关键技术之一。由于网络传输存在延迟,为保证视点自适应播放的连续性,减少头部运动带来的卡顿甚至黑屏,如何准确预测视角位置是一个较大的挑战。
例如线性预测方法中[9],预测用户未来1秒的头部位置时,准确率可达到90%以上,而将预测时间延长至3秒时,准确率会大幅降至70%。一旦预测错误,由于本地缓存中缺少相应视角的视频片段,会导致用户视窗中出现黑窗,极大地影响用户的观看体验。
目前视点预测方式主要分为两类:运动预测和内容分析方法。运动预测是根据用户的历史浏览行为,预测未来视角位置。包括均值算法[9],线性回归[9],概率统计[10],运动估计[11],行为学习[11]等方法。
其中,线性回归算法尤为重要,它是一种利用数理统计中的回归分析来预测下一时刻用户位置的算法,具体来说,它先将用户在滑动窗口内不同时刻的运动状况进行记录,再通过记录下的头部数据来训练回归模型,得到回归曲线,最终预测出下一时刻观看概率最大的位置。如图9所示。

图9-线性回归预测视点
另外一类是内容分析方法。它是一种是基于视频中各个对象的显著性特征来进行预测。显著性特征代表着物体吸引用户的程度,显著性越强,表示用户越关注,同时也代表用户观看概率越高,显著性越弱,则代表观看概率越低。目前,学术界主要是通过机器学习的方法得到视频的显著性特征[12],再进行预测。另外一种内容分析方法是同时基于内容以及用户位置进行预测的神经网络[13]。其中,视频内容包括显著性特征和运动特征。它需要在视频上架前对视频内容和测试头部数据集进行训练,学习出用户最可能出现的行为模式,进而在用户实际观看时根据学习结果预测下一时刻用户的头部位置。
5、结论
虚拟现实视频正在得到越来越广泛的应用,但由于带宽消耗巨大,传输瓶颈已成为它面临的重大挑战之一。本文系统介绍了虚拟现实视频传输框架,以及关键技术的发展现状,详细比较各种技术的优缺点,总结虚拟现实视频传输的发展方向。随着虚拟现实视频传输技术的发展,在有限带宽上传输高质量虚拟现实视频将成为现实。
参考文献
- Cisco Visual Networking Index: Globe Mobile Data Traffic Forecast Update[R]. Technical report, 2017.
- Internet Connection Speed Recommendations. https://help.netflix.com/en/node/306.
- Zhimin Xu, Lan Xie, Xinggong Zhang, Zongming Guo. “Optimal Viewport Adaptive Streaming for 360-degree Videos”, In Proc. of the IEEE International Conference on Multimedia&Expo(ICME’2017), 2017.
- Yixuan Ban, Lan Xie, Xinggong Zhang, Zongming Guo. “An Optimal Spatial-temporal Smoothness Approach for Tile-based 360-degree Video Streaming.” In Proc. of IEEE Conference on Visual Communications and Image Processing (VCIP), 2017.
- Richard Yao, Tom Heath, Aaron Davies, Tom Forsyth, Nate Mitchell, Perry Hoberman. “Oculus VR Best Practices Guide”. Oculus VR (2014).
- ISO/IEC JTC1/SC29/WG11/M, “VR/360 Video Truncated Square Pyramid Geometry for OMAF”, 2016.
- Hosseini, Mohammad, and Viswanathan Swaminathan. “Adaptive 360 VR video streaming: Divide and conquer.” In Proc. of 2016 IEEE International Symposium on Multimedia (ISM), 2016.
- Alireza Zare, Alireza Aminlou, Miska M Hannuksela, and Moncef Gabbouj. “HEVC-compliant Tile-based Streaming of Panoramic Video for Virtual Reality Applications”. In Proc. of the ACM International Conference on Multimedia(ACM MM), 2016.
- Qian, Feng, et al. “Optimizing 360 video delivery over cellular networks.” In Proc. of the 5th ACM Workshop on All Things Cellular, 2016.
- Lan Xie, Zhimin Xu, Xinggong Zhang, Zongming Guo. “360ProbDASH: Improving QoE of 360 Video Streaming using Tile-based HTTP Adaptive Streaming.” In Proc. of the ACM International Conference on Multimedia(ACM MM), USA,2017
- Battle, Leilani, Remco Chang, and Michael Stonebraker. “Dynamic prefetching of data tiles for interactive visualization.” In Proc. of the ACM International Conference on Management of Data, 2016.
- Lo, Wen-Chih, et al. “360° Video Viewing Dataset in Head-Mounted Virtual Reality.” In Proc. of the 8th ACM on Multimedia Systems Conference, 2017.
- Fan, Ching-Ling, et al. “Fixation Prediction for 360° Video Streaming in Head-Mounted Virtual Reality.”, In Proc. of the 27th Workshop on Network and Operating Systems Support for Digital Audio and Video,ACM, 2017.