根据高盛(Goldman Sachs)最近的预测,到2025年,虚拟现实(Virtual Reality,VR)和增强现实(Augmented Reality,AR)市场预计将增长到950亿美元。
沉浸式计算技术(VR、AR)通过渲染逼真的3D环境为用户提供身临其境的感官体验,在医疗、教育、娱乐等各行业都有广泛而重要的应用。
然而,沉浸式计算系统的计算及传输负载较大,而现有的智能终端和移动网络因计算、传输能力受限,无法保证良好的用户体验。
清华大学“基于IPv6的移动低延迟VR系统”项目,实现了基于IPv6环境下的端云协同的虚拟现实渲染,在降低虚拟现实运用在移动端的硬件门槛的同时,实现了无线传输下的低延迟体验。
VR系统现状
虚拟现实(VR)旨在利用计算机视觉、传感等技术及专门的硬件设备,给用户呈现逼真的虚拟环境和颠覆性的交互体验。
随着相关技术的成熟,国内外各大公司,诸如Facebook、Google、HTC等都纷纷进入VR领域,推出自己的VR系统。
当下主流的VR系统通常都由三个关键的部件组成:头戴式显示器、传感器和渲染器。
为了能够提供沉浸式的虚拟现实体验,VR系统需要利用传感器不断追踪、接收用户的姿势信息(包括位置和方向信息)。
根据不同的姿势信息,渲染器将实时地渲染出相应视角的画面并在头戴式显示器上以双眼畸变的形式显示。
目前主流的商业级VR系统分为两大类:连线型和移动型。
连线型VR系统将复杂的渲染、计算工作交给强大的主机,然后通过高速数据线(HDMI等)将主机渲染的每一帧图像传给单独的头戴式显示器。
移动型VR系统则摒弃了主机和数据线,将智能手机自身的GPU和显示屏分别作为渲染器和头戴式显示器来提供沉浸式VR体验。
VR系统特殊的工作流程以及头戴式显示器所引入的近眼显示都给系统带来了巨大的计算和渲染开销。
为了使用户能够舒适地体验各种VR应用,VR系统通常需要满足下面三个性能和特征需求。
1. 响应性
VR 系统的端到端延迟需要小于10~25毫秒, 过高的端到端延迟将使用户在体验过程中出现眩晕等不适症状。
2. 高质量的视觉效果
为了营造逼真的虚拟环境,VR系统需要提供照片级真实感的高质量画面,同时每秒帧刷新率也至少需要达到60来保证流畅的体验。
3. 移动性
VR系统复杂的渲染、计算工作通常可以在强大的主机上完成,这时头戴式显示器通常需要连接HDMI数据线来传输几个Gbps级别的数据量,也就是需要使用连线型VR系统。
但这种方式极大地降低了用户体验,例如用户容易受数据线影响,因此如何提供具备移动性的VR系统至关重要。
目前两类主流的 VR 系统均无法满足以上三个相互矛盾的性能和特征需求。
连线型VR系统虽然能够提供很好的响应性和高质量的视觉效果,但却无法提供必要的移动性。
移动型VR虽然在移动性上有先天的优势,但由于手机较弱的渲染能力和电池容量,往往无法同时满足前两个基本的性能需求。
与此同时,目前的无线IPv6网络数据传输技术也无法直接替代高速数据线来支撑VR应用所需的几个Gbps的带宽和极低的端到端延迟。
系统技术方案
为了克服上述现有技术的缺点,基于IPv6的移动低延迟VR系统提供一种面向虚拟现实的协同渲染方法,基于云计算,使移动型VR系统能够同时满足VR系统的三个性能和特征需求,在移动设备(智能手机)上提供高质量的沉浸式虚拟现实体验,同时无需耗尽移动设备的计算资源和IPv6网络传输的带宽资源。
图1 基于IPv6的移动低延迟VR系统架构
系统架构如图1所示,其采用的技术方案思路包括以下三点。
1.将虚拟现实(VR)应用的内容拆分为动态交互内容和静态环境内容,并利用云计算中手机和服务器的分离式架构分别渲染这两个部分。
2.服务器将连续虚拟空间离散化为大量的采样点,提前渲染每个点对应的全景图并存储。利用手机本身的GPU实时地根据用户输入渲染、显示所述动态交互内容;利用云端的服务器渲染所述静态环境内容。
3.客户端根据接收的用户信息,从服务器上通过IPv6网络获取对应位置的全景图,本地实时渲染交互内容并最终将两部分内容结合实现整个协同渲染的过程。
也就是,手机在运行VR应用时,通过IPv6网络向服务器请求已渲染的静态环境内容,并与本地渲染好的动态交互内容在客户端进行叠加、组合得到最终VR应用的画面。
所述动态交互内容主要包括会根据用户的输入而发生改变的一些物体,它们的模型规模相对较小、渲染纹理相对简单,但是需要实时响应用户的输入.
所述静态环境内容是构成整个虚拟环境的主要成分,它们的模型规模相对庞大、渲染纹理相对复杂,但是通常只随着用户在虚拟空间内的移动才发生连续性地改变和更新。
系统实现流程
在虚拟现实场景下,本系统功能通过以下步骤实现。
1.将目标VR应用的3D渲染模型拆分成两部分:交互模型和环境模型,分别对应VR应用的动态交互内容和静态环境内容;
2.服务器端加载VR应用的环境模型,并按固定间隔在模型空间中可到达的范围内遍历取点,对于每一个采样点,服务器都渲染出一张全景图,并以采样点对应三维位置信息作为其索引存储在服务器端;
3.客户端实时追踪、接收用户的姿势信息,客户端利用位置信息通过IPv6网络向IPv6服务器请求、获取对应位置的全景图,IPv6服务器配置如图2所示;
图2 IPv6服务器配置
4. 客户端实时追踪、接收用户的交互信息,客户端根据交互信息利用手机的GPU 实时渲染出动态交互内容;
5. 客户端将获取的全景图加载、映射到球面上以产生 360 度环绕效果;同时客户端还利用全景图的深度信息将本地实时渲染得出的交互物体叠加到球面全景图上,完成前后景结合;
6. 客户端根据方向信息在手机屏幕上以双眼畸变的形式显示出对应角度的最终合成画面。
总结与展望
本项目根据虚拟现实应用交互内容和环境内容的不同特征,充分利用云计算的分离式架构,将复杂高功耗的渲染任务通过网络传递到云端,由云端完成高计算量的图像渲染工作,最终返回终端并回显给用户,实现了移动设备上高质量的虚拟现实体验。
具体来说,本项目创新性地将沉浸式计算应用的渲染工作任务划分为前景交互和背景环境,利用本地移动端GPU来渲染前景交互,同时利用服务器上的远程渲染引擎预渲染背景环境并在手机上进行预取,最后在手机上将两者合并以生成最终帧。
为了克服移动终端计算能力有限,无线网络高延迟、带宽有限等挑战、本项目重点研究协同渲染、基于IPv6网络的预加载技术、并行编解码和动态码率自适应技术。与IPv4网络环境相比,基于IPv6运行该项目,可以提供更充足的带宽。
同时,为了验证系统的有效性,本项目在现有的移动终端和无线网络环境下实现、部署、评估系统。和传统的基于本地渲染的沉浸式计算系统相比,该系统可以提供更加高清而流畅的画质,极低的交互式用户感知延迟,以及更低的移动终端功耗。
此外,作为一种渲染迁移框架,该系统具有一定的普适应,能够作为移动沉浸式计算应用的底层支持,在未来能为各式各样的沉浸式应用提供更加便携的使用方式,更加高清低延时的交互体验,并保证更长时间的续航。
总的来说,与现有技术相比,基于IPv6的移动低延迟VR系统可以直接在当前移动设备上利用已有的IPv6网络传输技术满足VR系统所需的三个性能和特征需求;同时,在无需耗尽移动设备计算资源和IPv6网络技术带宽资源的情况下,实现高质量的VR体验,对于提升移动型VR系统的性能具有十分重大的意义。
*基金项目:第五届下一代互联网技术创新大赛创新大 奖、最佳现场表现奖
作者:王子逸、崔勇(清华大学)