为什么VR视频的清晰度不高?

VR内容的清晰度一直以来广受关注,也是提升用户沉浸感体验的重要因素。不过,体验过VR视频的不少用户都会抱怨: 我们看的明明是4K甚至是8K内容,可实际观感还不如手机1080P的画质。是我买了个假VR设备?还是看了个假4k内容?


为什么VR视频的清晰度不够高呢?这里面有几点或许需要我们厘清。


01

4k画质不等于4K观感


对于传统视频的播放,用户们都很熟悉,就是使用手机,ipad,电视这些媒介去看视频。在我们面前的是一个比较小的屏幕,用户只能盯着屏幕去观看。传统的视频观看已经发展很多年了,在这期间,用户体验的提升主要靠的是视频分辨率的增加。从传统的DVD到现在的4K/8K,视频的清晰度已经提高了N倍以上。


图来自网络


分辨率的提升是否有尽头,是否提高分辨率就是提高用户的观看体验呢?


事实上,在屏幕分辨率和实际观看感受之间还有一个重要指标——PPD(Pixels Per Degree),即每角度人眼看到的像素点,这才是衡量视频观看清晰度的核心标准。


以视网膜屏幕的手机为例,假设用户距离手机屏幕30cm,手机屏幕在用户视野中水平所占据的度数大约是10度。根据苹果对视网膜屏幕的界定,这样的屏幕宽度大约是 600 个像素,也就是相当于,每一度视场角被分配了 60 个像素,即 60PPD,而这就意味着在视觉上达到了视网膜级别的效果。


正是在这个意义上,4K的屏幕分辨率,并不一定代表超高清的观看体验,关键要看人眼能够从中获取的像素点的多少。在正常距离观看传统的屏幕时,用户基本能够看到整块屏幕,因此整屏分辨率和用户观看体验较为一致。


但在VR视频这种立体观看场景中,用户相当于拿着一只放大镜在看屏幕,用户观看的只是屏幕的一个小块,它对于视频分辨率的要求自然也会呈指数级上升。


02

VR眼镜的PPD


图片来自网络


那么,来到第二个问题,用户在距离40CM的2K分辨率的手机屏幕面前,或者在2米外的8K电视面前的观看体验能达到多少PPD呢?下图给出一个粗略的数据。


表格数据来自《VR与自由视角视频关键技术与标准制定》PPT,主讲人,王荣刚,北京大学深圳研究生院


可见,看4K电视时,用户的PPD已经可以达到80+了,已经超过了视网膜显示效果的上限。有研究者做过相关的实验,让不知情的用户分别观看4K和8K的电视,然后自主分辨电视的清晰度,结果是正确与错误的判断几乎相当。


但是回到VR设备,上图里的VR设备,毫无例外PPD都直线下降,远远达不到60PPD这个视网膜标准。为什么在VR设备中,同样的像素会这么模糊呢?



图片自来网络


通常的VR视频,是一个球面模型,用户相当于站在球心向外观看,由于人眼的视角有限,所以在同一时间,用户只能看到360度球面的一小部分。当用户转动视角时,才能看到球面的其他部分图像。



用户看到的这个区域,我们称之为“视口”(Viewport),即是上图里的黄色区域。


这时我们就比较好理解为什么VR不清晰了:如果整个球面是一个4K分辨率的视频,那用户观看到的,大概仅仅是一个1K x 1K左右分辨率的小区域,PPD数值大大降低,画质模糊在所难免。


03

如何提升VR视频的清晰度


那我们该如何提升VR视频的清晰度呢?提升用户的使用体验呢?


第一种方法就是提升视频的分辨率,从理论上来说,只要整屏清晰度达到一定高度,VR观感也会相应提升。


但是单纯地提高分辨率,4K不清晰就8K,8K不清晰就16K,这样可以吗?


事实是,这种等级的清晰度的提高,编码,传输,解码的复杂度都是成倍增加的。目前能够对一幅8K全图实时解码的手机设备就已经非常有限了,更不用说8K以上的清晰度。


所以现有硬件设备的性能很快就会达到瓶颈,是无法满足如此高清的流媒体播放的,根本无法大规模生产,送到用户的眼前。


现在市面上的VR设备较为通用的解决方法是:既然用户只能在VR中看到一小块区域,那就只解码这一小块区域的图像,让用户观看,当用户转动视口后,再更新相应的区域。



由于目前的编码技术基本都是针对矩形图像块来编码的,那么我们可以把原图做一个4x4分割,将每个小块独立编码。如果原图是8K的(7680x4320),则每个分割后的小块刚好是1080P的。这样一来,似乎我们只需要判断用户当前的视口在哪里,覆盖了几个小块,然后仅仅去解码这几个小块,渲染到窗口上就可以了。


这样做确实能够解决部分问题,能降低一些解码的负担,但是这种划分是不太理想的。从上图中仔细观察就可以得到答案:如果用户的视口在图上位置,我们需要同时解码9个小块(即解码全图的9/16),但其实用户主要视口都在这9块中的最中心的1块上,边缘的8个小块,虽然都被解码出来,但仅仅渲染一点边边角角。解码资源还是被浪费了很多。


而如果再对画面进行细分,又会增加解码器的数量,通常来说,手机或VR一体机上,硬件解码器的个数都是有限制的,不能创建太多,一次性开放太多硬解码器,是不可行的。


针对这个问题,爱奇艺技术团队也经过了一系列实践,提出了自己的解决方法,选定了Tile分块编码方式,以此实现VR下的8K技术。


简单地说,就是一帧图像,可以划分成若干个矩形子块,每个块的编码参数保持一致,但分别独立编码。在解码时,只需要把MxN个块拼成一个矩形,各块的帧数据头尾相接,一起输送到解码器里,解码后的图像就是一个MxN分割的图案,在渲染时把相应区域渲染到窗口上就可以了。这样就起到了降低解码器个数的作用。


爱奇艺世界大会现场图


如上图所示,8K视频做了8x8分割,用户视口是黄色区域部分,此时可见12个小块,假设我们把每4个小块组合在一起,形成一个2x2的矩形,一起输送给解码器。那么仅需要3个解码器就可以覆盖这个场景。


目前用户视口内区域的解码显示问题,已经比较完善的被解决了。但视口外的大片区域现在还是一片漆黑。用户不可能不转动视角,当他快速把视角转到其他地方怎么办?


而视野之外新图像的编码都是以GOP(group of pictures 图片集 )为单位的,新的图像也需要从GOP起点开始解码,而解码帧序列是需要时间的。所以视口快速转动时,用户会看到当前没有正在解码的地方。


爱奇艺世界大会现场图


解决这个问题的办法是再编码一个相对低清一些的一路视频流,比如1080P或者2K,这个一路视频流和8K全幅画面在图像上完全一样,只是分辨率和码率低一些。在解码时,始终开启一个解码器解码这种1080P或2K的码流,并且在解码完成后立即贴到整个渲染球面上,作为一个兜底的显示视频先呈现给用户,以防止“黑场”的出现。


爱奇艺世界大会现场图


当用户旋转视角,若干新的8K Tile解码完毕后,会覆盖到这个球面的对应位置,这样用户就可看到更清晰的视频了。上图中,假设用户视口向右移动,原来红色的Tile会移出视口,绿色的Tile会移入视口,绿色的Tile会在一个GOP内更新。


爱奇艺世界大会现场图


Tile的组合方式非常灵活,只要组成MxN的矩形就可以,2x2, 2x3, 4x2等,都可以自由组合。



整个解码渲染的架构如上图所示,数据接收下来后,首先根据用户此时的姿态进行命中Tile的计算,得到当前视口内的Tile编号列表。然后将Tile进行组合,2x2或2x3等方式。接下来,将每个组合好的Tile送给对应的解码线程,多线程并行开始解码。各解码器输出的帧,进行pts同步之后,最终输送给渲染器。渲染器做反畸变渲染,或直接渲染。


图片来自网络


用户当前的姿态是由Sensor(传感器)实时给出的,经由球面座标到平面直角座标系的变换,可以得到当前用户视口跨越的经纬度范围,进而得到当前都覆盖了球面上的哪些Tile。


这种方法使得VR设备的流媒体播放更加清晰,流畅,同时降低了硬件设备的门槛,使VR下的8k观感成为现实。



04

VR行业标准与未来


LiveVideoStack 2019大会上,Visbit公司CTO周昌印PPT中展示的VR行业标准


事实上,VR设备的使用体验,除清晰度外,还受到很多因素的影响,上图是一个较概括的VR沉浸感指标,下面挑选其中的几项,做展开说明。


1.MTP时延


MTP(Motion-To-Photon)是输入动作(头部转动)与屏幕更新显示(从刷新的屏幕发出的光线)之前的时间


图片来自网络


这项指标是非常重要的,好的体验要求MTP时延不能大于20ms,如果时延过大,用户转动视角,而画面没有及时更着变化,体验的感觉是非常眩晕的。


2.镜头畸变引起的图像误差


图片来自网络


径向畸变,光线远离透镜中心的地方更弯曲,以上图为例又分为枕形畸变和桶形畸变。通常畸变率要控制在1%左右。


图片来自网络


切向畸变,透镜与相机传感器平面不平行,多是安装偏差导致。图像会像“躺着”一样。


3.单眼,双眼视觉效果对比


图片来自网络


人类是双目视觉动物,在现实中双眼看到的目标是有一定视差的,反应在大脑中就是景物更有立体感,景深明显。


其他的例如分辨率,帧率,色阶更为用户熟知,和普通视频的相应概念也类似,就不再重复说明。


以上是VR播放的一些技术指标,每种指标都直接影响着用户的观感体验。


最后,我们还想聊聊对于VR未来的进展和探索,我们认为主要有以下几个方面:


1.降低编码的码率

图片来自《VR与自由视角视频关键技术与标准制定》PPT,主讲人,王荣刚,北京大学深圳研究生院


视频编码也是随着清晰度的提高不断地更新换代的,根据国家广电总局《5G 高新视频—VR 视频技术白皮书(2020) 》标准,在8KVR清晰度上,尚可使用H.265和AVS2等编码标准。但在今后8K以上的分辨率里,还需要有H.266/AVS3等更先进的标准给予支持。AVS3的预期码率能比AVS2减少一半。


图片来自网络


降低码率还可以通过改变投影方式来实现。传统的ERP(Equirectangular Projection)投影方式,南北极区域被极大的拉伸了,造成很多的像素冗余,给编码带来了额外的码率。


上面的立方体投影和四棱锥投影则是对ERP的改进,可以有效地减少需要编码的像素个数。


2.减少传输负载


图片来自网络


如果360度球面数据全部通过网络传输,显然需要较高的带宽支持。根据用户在VR眼镜中的实际使用数据来看,他们在看视频时很少有180度转向这种行为。所以可以考虑只加载半个球面数据,当用户视角稍转时,更新半球面即可。


同时也可以考虑基于深度学习或AI等预测算法,预测图像中的热点区域和用户未来的行动轨迹,提前加载热点区域的数据,或运动轨迹上的后续数据。


3.优化解码模块


爱奇艺世界大会现场


解码模块可以支持CPU+GPU混合调度,比如CPU仅负责解码清晰度相对较低的兜底背景码流。而GPU负责解码众多的高清Tile。


8x8的划分方式也可以稍做改进,例如南北极区域图像简单,球面模型上的原始像素较少,所以可以把这些区域的Tile划分的大一些,解码时用一个解码器即可覆盖更多的原始图像范围。


4.从3DoF到6DoF


图片来自网络


DoF(degree of freedom)即自由度,是VR技术当中的一个重要指标,指的是物体在空间里面的基本运动方式,总共有前后、左右、上下、前后翻转、左右摇摆以及水平转动6种。关于DoF,这里不做过多解释。总的来说,DoF越多,说明物体在空间中运动的方式越灵活。放到影视标准中同理,DoF越高,允许用户与设备交互的方式也就越多。


0DoF视频

4K/8K视频,看手机,电视的方式

3DoF视频

全景视频(360°视频),目前大部分VR的观看方式,用户在固定位置,只能旋转自己的头部,但不能走动

6DoF视频

真正的自由交互视频,用户可以在VR场景中任意的走动


图片来自网络


众所周知,自然沉浸的交互体验是VR技术的一贯追求,目前已有很多设备支持6DoF,相信在不久的将来,会有越来越多的人能够感受到VR的深度沉浸效果!


部分图片来源于网络,如有版权问题请及时与我方联系。

也许你还想看
我们都是追梦人——爱奇艺8K VR直播技术方案
一个算法“拿下”两个榜单!爱奇艺ICCV 2021论文提出人手三维重建新方法
爱奇艺携手华为实现5G边缘计算验证 网络超低延时助力VR爆发

 关注我们,更多精彩内容陪伴你!

本文分享自微信公众号 - 爱奇艺技术产品团队(iQIYI-TP)。
如有侵权,请联系 [email protected] 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章