张伟 天津商业大学资产设备管理处
全景(Panorama)一词源于希腊,其含义是“都能看见”。广义上讲,全景是指视角超过人类正常视角范围的图像。早在19世纪中期,全景相机就已经出现,但受到当时技术水平的限制,早期全景相机存在体积笨重、操作不便、记录媒介和光机系统不完善等诸多工艺和技术问题。进入21世纪后,随着数字媒体、网络通信等相关技术的飞速发展,全景技术也取得了极大的进步,现已成为虚拟现实技术的重要研究方向和热门应用领域。
近几年,随着互联网巨头YouTube、Facebook相继开通360度视频内容体验平台,使得以沉浸性、真实性、趣味性为显著特征的全景技术受到越来越多人的关注和喜爱。
根据场景设计和实现方式不同,全景视频开发通常分为两种[1]:一种称为虚拟现实视频(VR视频),是一种基于计算机图形学的纯虚拟CG制作形式,先用Maya、Rhino3D、Blender等三维软件完成三维建模,再用Unity、Unreal等游戏引擎完成交互场景搭建和交互任务的设计等工作;另一种称为360度全景视频,取景范围通常为水平360度、垂直180度,由相机阵列或一体式全景相机对真实场景以图片或视频方式进行多角度环视采集,支持多角度播放和轻度互动体验,观看效果就像体验者站在空心球内部观看球体内表面上的实景画面。
目 前,基于全景技术的360度视频形式主要有三种:360度2D视频(普通2D视频的水平360度、垂直180度环绕)、360度3D视频(特定视角范围内具有动态景深信息的三维立体视频)、360度3D体式视频(也叫体三维视频,是将光场摄像机采集到的光线色彩、光线强度以及不同角度射入的光线信息,通过特殊算法进行分析运算、逆向建模,进而还原出真实三维环境模型的技术)。本文主要研究360度2D视频(以下简称全景视频)。
作为一种虚拟现实呈现技术,全景视频与VR视频有许多相似之处,比如全方位可见、适度的交互性、较强的沉浸感等,但二者又有本质的区别,具体如表1所示:
表1 全景视频与VR视频区别对比
通常来讲,完整的全景视频技术架构主要有全景采集、拼接缝合、投影变换、编码压缩、传输分发五大环节。
与常规视频拍摄不同,全景视频的采集通常需要专用全景相机进行采集,比如通过广角相机阵列、立体相机组、光场相机阵列等采集设备来对应实现360度2D视频、360度3D视频和360度3D体式视频的内容记录。
目前,专业级全景拍摄设备主要有以Jump、Odyssey为代表的GoPro阵列、以NextVR、Upano J2VR、Manifold为代表的Red阵列和以Jaunt VR NEO、Nokia OZO为代表的一体化全景视频前端采集产品;民用级全景拍摄设备主要有Insta360、GoPro Omni、三星Gear360等。以Facebook最新专业级产品Manifold为例,已经可以实现16台RED摄像机阵列在真实场景六自由度(X、Y、Z、三个直角坐标轴方向的移动自由度和绕这三个坐标轴的转动自由度)上8K@60fps级别的全景采集。
另外,要得到优质的球型全景源视频素材,还需要对全景相机进行特殊调校,以克服每部相机在参数标定、位置排列、角度调整、同步采集等方面存在的问题。
前期全景采集图像通常具有拍摄角度不同、拍摄图像重叠且不在同一投影平面上等特点,因此,必须要完成对各路图像的图像配准和图像合成处理。
图像配准的精准程度直接决定了全景图像的拼接效率和质量,而最影响图像配准效率的环节是关键点检测和图像匹配。目前主要有两类配准算法:全局灰度算法(如光流法、灰度模板)和特征点提取算法,其中尤其以特征点匹配算法中的SIFT特征点检测法及其简化算法(如SURF、FAST、ORB)最为热门;图像合成则主要解决画面拼接问题,包括投影到球面模型之前二维重叠图像的畸变校正拼接和投影到球面模型之后三维球面图像的投影变换拼接两部分。
投影主要解决拼接缝合后的三维球型画面向二维矩形平面的视角变换,以便于后期编码、分发和存储。目前,常见的投影转换技术主要有两大类:视角依赖型和视角不依赖型[2]。
前者只保证用户观看视角内局部画面内容的高质量呈现,对视角外画面内容则通过降低分辨率、码率等方式来达到总体数据量减少的目的;后者则会将球型视频全部画面内容同等质量地投影到平面上,典型代表是目前应用最广泛的矩形映射(ERP)方式。这是一种最早应用于地图绘制领域的投影方式,该技术通过将三维球型的经线映射为恒定间距的垂直线,将纬线映射为恒定间距的水平线,最终完成球型画面向画幅比为2:1的二维平面矩形图的转变。目前Facebook、YouTube、优酷、爱奇艺等内容平台均以这种投影方式为主。
二类转换技术的主要区别如表2[3]所示。
表2 二类转换技术的主要区别
由于全景视频在采集方式、投影转换、分辨率、帧速率等方面发生的巨大变化,以HEVC、AVS2、VP9等为代表的传统视频编码技术对于全景视频的处理效果并不理想,需针对其特点进行编码优化,进而有效降低信息数据量,节省存储空间和网络传输带宽[4]。
目前,针对全景视频的下一代主流编码有VVC/H.266、AVS3、AV1三种。
VVC/H.266(Versatile Video Coding)是由联合视频研究组(JVET,由ITU-T/VCEG和ISO-IEC/MPEG两大组织联合组成)于2018年4月正式命名的新一代视频编码标准,主要目标是改进现有HEVC/H.265标准,并针对新兴应用(全景视频、HDR、VR、8K等)进行优化调整,实现更高的压缩效率。该标准依然沿用传统基于块的混合编码结构,对块划分结构、预测方式、系数变换等方面进行了较大改进,预计在2020年之前完成。
AVS3是我国广电领域最新一代具有完全自主知识产权的数字音视频编码标准,由原有AVS、AVS+、AVS2标准发展而来,目标是继续提升传统混合编码框架的性能,实现比现有超高清标准AVS2提升一倍以上编码效率,主要应用方向包括面向移动媒体的轻量编码、面向视频间冗余和云计算环境的云编码、面向神经网络和机器学习等新型领域。目前,AVS3第一阶段成果主要是实现编码复杂程度和效率转换的平衡, 预计在2019年8月发布。
AV1的前身是Google的开源编码标准VP9,该标准由行业联合体开放媒体联盟(Alliance for Open Media)开发和维护,是一种完全开放的、免专利税的视频编码标准。2018年6月正式推出以来,凭借其传输质量高、网络适应性好、硬件要求低、完全免费等极具竞争力的优点,已得到YouTube、Netflix、Amazon等互联网巨头的积极响应。
全景视频海量数据的高质量传输对网络带宽、实时性能和终端解码等方面都提出了巨大挑战。对应投影转换技术,全景视频传输方法可分为全视角传输和视角自适应传输两大类。其中,后者通过动态自适应流媒体技术有效解决了全景视频的带宽资源浪费、延时丢包等关键问题,已经成为目前全景视频传输的主要解决方案,常见传输协议有HLS、DASH、MMT等。
HLS(HTTP Live Streaming)最早由苹果公司提出,其大致原理是将整个视频流分成许多基于HTTP协议的碎片文件来下载,每次观看时只下载缓存一部分,具有可靠性高、适应性强、可控性好等优点,可轻松实现网络直播和点播;缺点是实时性较差、视频切片太小造成碎片增多而影响观看体验;
DASH(Dynamic Adaptive Streaming over HTT-P)和MMT(MPEG media transport)是基于全向媒体格式(Omnidirectional Media Format,OMAF)框架下提出的两种传输协议,除传输架构不同外,二者均采用高码率保证主视角画面质量,对主视角外其他画面采用低码率进行传输和存储[5]。与HLS协议所不同是,DASH/MMT协议不会按一种分辨率或编码进行切片,而是保存多种不同规格的版本。这样,用户观看时就可以根据网络带宽的变化动态切换到与带宽匹配的特定分辨率或编码画面,能够有效改善画面卡顿、缓冲时间过长等情况,提供更高质量的观看体验。
作为虚拟现实领域的重要分支,全景视频以其独特的真实性、沉浸性和易用性,为影像创作者提供了一种全新的叙事手法,同时也为观影者提供了一种前所未有的观影体验。就目前而言,全景视频虽算不上真正完整的VR体验,但眼下全景视频在全球范围内如火如荼的发展趋势,至少也为迎接真正VR时代的到来提供了丰富的内容补充和庞大的用户基础,相信不久的将来,我们一定能够真正感受到科技给我们带来的超现实体验。