VRAR眼球的盛宴VRinSIG

软件开发求职招聘交流微信群 http://liangssw.com/bozhu/12543.html

作者:解卫博

导语

绝大部分计算机图形技术软硬件厂商每年都会将最新研究成果拿到SIGGRAPH年会上发布,顶尖的游戏公司会在SIGGRAPH揭秘最新的实时渲染技术,电脑动画创作者也将他们本年度最杰出的艺术作品集中在SIGGRAPH上展示。今年SIGGRAPH上有什么VR新技术呢?

SIGGRAPH(SpecialInterestGroupforComputerGRAPHICS,计算机图形图像特别兴趣小组),一直致力于推广和发展计算机绘图和动画制作的软硬件技术。绝大部分计算机图形技术软硬件厂商每年都会将最新研究成果拿到SIGGRAPH年会上发布,顶尖的游戏公司会在SIGGRAPH揭秘最新的实时渲染技术,电脑动画创作者也将他们本年度最杰出的艺术作品集中在SIGGRAPH上展示。因此,SIGGRAPH在计算机软硬件,图形图像技术以及CG等方面都有着相当的影响力。对于游戏图形程序员来说能参加SIGGRAPH是一件很值得纪念的事情,一直都很向往去参加SIGGRAPH会议,非常幸运今年终于有机会去现场开阔眼界,聆听各位大师的真知灼见,因此写篇文章纪念一下激动的心情。

SIGGRAPH每年都有一个主题,今年的主题是RenderthePossibility。下面分享一下在SIGGRAPH展台见识的一些VR新技术。

一、眼球追踪技术

人看到事物的成像会根据眼睛距离事物的距离来进行自动适应调整,而我们带上VR头显后,眼睛和屏幕之间的距离是固定的,因此会对眼睛造成一定程度的欺骗,而屏幕远景和近景的切换,眼睛会无法识别,从而导致晕眩。眼球追踪技术可以获知人眼的真实注视点,从而得到虚拟物体上视点位置的景深。所以,眼球追踪技术或将成为解决虚拟现实头盔眩晕问题的一个重要技术突破。

除了减少眩晕提高用户适应能力,准确获取眼睛的信息就能够做出最佳的渲染方案和交互方式。通过眼球追踪技术可以准确地获取用户眼睛的聚焦点,可以带来以下三个好处:

1)FoveatedRendering

2)EyeGazeInteraction

3)EyeanimationCapture

1.眼球追踪技术的相关应用

1)FoveatedRendering

VR设备对画面分辨率要求很高,以OculusRift为例,用户需要NvidiaGeForce或AMDRadeon显卡的成本就达美金,而这还仅仅是渲染1k的分辨率,要让渲染的分辨率匹配现实世界的分辨率,单眼必须渲染8K的分辨率,对硬件配置要求就更高,目前还只能望其项背。而人眼成像的过程中,中央凹视野(Fovealvisionarea)成像清晰,只覆盖视野1-2度,视觉敏锐度高;周边视野(Peripheralvisionfield)成像是模糊的。

2)提升性能

nVidia之前专门针对虚拟现实设备中普遍存在的图像延迟状况,推出了MRS(multi-resolutionshading)以便加快渲染速度,该技术使得VR的渲染不再是将整个画面以相同的分辨率进行渲染,而是分成了几个不同的区域。焦点区域会以完整的高分辨率进行渲染;而画面的边缘则以更低质量进行渲染,再加上边缘的像素经过变形后的损失,可节省25%-50%的像素,理论上可提升一倍的渲染速度。但是nVidia的MRS技术是以屏幕中心为聚焦点,也就是说认为头是转动的而眼睛是不转动的,当眼睛转动的时候会就会出现该清晰的地方模糊,体验比较差。

如果能获取用户的聚焦点就可以对聚焦的中心区域采用高分辨率渲染,对中心区域附近的采用60%分辨率渲染,远离中心区域采用20%分辨率。这样可以极大地降低渲染的像素数目,从而可以极大地降低GPU开销。

下面的两幅图中左边是未开启FoveatedRendering,右边是启用了FoveatedRendering,可以看出FPS的提升非常明显。从大量测试数据来看,Foveatedrendering可以提升60%-%的性能提升,当然这也是和场景有关的,但也足以说明其对性能带来的巨大帮助。

3)降低眩晕

人看到事物的成像会根据眼睛与事物之间的距离来进行自动适应调整,而我们带上VR眼镜后,眼睛和屏幕之间的距离是固定的,因此会对眼睛造成一定程度的欺骗,而若屏幕中远距离的场景和近距离场景切换,眼睛会无法识别,从而导致晕眩。眼球追踪技术可以获知人眼的真实注视点,从而得到虚拟物体上视点位置的景深。所以,眼球追踪技术或将成为解决VR头盔眩晕问题的一个重要技术突破。

4)EyeGazeInteraction

除了画面渲染方面,眼球追踪技术还可以大幅度提升VR设备的交互体验。用户通过眼球转动与VR用户界面的交互可以直接用眼睛控制菜单,触发操作,让人摆脱不自然的转动头部操作。

5)EyeanimationCapture

戴上VR头显后,玩家的上半部分脸完全被挡住,用传统的表情捕捉技术只能捕捉下半部分脸的表情动画。有了眼球追踪技术后就可以捕捉眼睛的运动,从而可以捕捉眨眼,皱眉,眼睛转动。这会使玩家的表现更加生动,这一点对于VR社交的应用尤为重要。

Veeso同样也是基于智能手机使用的VR头盔,兼容Android和iOS手机。在Veeso的头显内部,安装了两个用于追踪面部表情的红外线相机,第一个用来追踪瞳孔、眉毛和眨眼,第二个用来追踪下颌和嘴巴。

2.眼球追踪技术公司

SIGGRAPH参展的眼球追踪公司有两个:FOVE和SMI。这两个公司的demo(FoveatedRenderingEyeGazeInteraction)我都作了深度体验,在使用前都需要一个校正的过程,校正后就可以正确聚焦,就可以体验FoveatedRendering带来的性能提升和用眼神杀死敌人。

1)FOVE

FOVE是一个VR头显公司,在头显内部采用2个红外相机来拍摄眼睛,根据眼睛的图像和校正的数据来计算眼睛在屏幕中的注视点。本来是要拍一下红外相机是如何布局的,但是被告知不能照相,略有点遗憾。不过在后来去SMI展台体验的时候拍到了SMI的相机布局。

FOVE校正

因为每个人的脸型和眼睛大小都有很大差异,所以目前的眼球追踪技术都需要一个校正的过程,FOVE的校正还需要工作人员参与才能完成,虽然只需要校正4个点,但一旦人工参与就麻烦了许多。

FOVE的眼球追踪目前有一个比较明显的问题,当你摘下HMD再次带上HMD后,如果和之前戴的位置、朝向略有差别就会造成追踪的结果出入较大。开发者表示会在以后解决这方面的问题。

FOVEDemo

FOVE这次的展示有专门展示FoveatedRendering和EyeGaze的demo。FoveatedRendering的demo可以通过一个球来显示目前眼睛聚焦的区域,可以很好的提升帧率;EyeGaze的demo最具有代表意义的就是打飞机的小游戏。可以准确的跟踪到眼睛聚焦的区域,真正做到看哪里打哪里。

2)SMI

SMI对于眼球追踪技术的研究已经有很多年了,在这个领域积累了很多的技术,可以说是眼球追踪技术的鼻祖。随着VR技术的快速发展,SMI也找到其眼球追踪技术的用武之地。之前在网上也搜到了很多相关的资料,这次也有幸到SMI展台进行了深度体验。

SMI是在Vive和GearVR的基础上进行改造,将2个红外相机集成到HMD中,红外相机会透过透镜拍摄眼球的图像,主要追踪的是眼球的图像,眉毛区域是追踪不到的,因为眉毛很多时候是被HMD的海绵垫挡住了。

SMI校正

SMI也需要一个校正过程,但是和FOVE相比就高端了许多,屏幕中会按顺序出现3个绿色的点,玩家只需要依次注视这3个点就可以完成校正,整个过程不超过10秒,完全自动化。

SMI的眼球追踪技术适应能力非常不错,摘掉HMD再带上HMD即便HMD的位置稍有变动依然可以准确追踪,这一点要比FOVE的体验好很多。

SMIDemo

SMI这次的展示有专门展示FoveatedRendering和EyeGaze的demo。FoveatedRendering的demo有两个,一个是和nVidia合作开发的,nVidia能采用SMI也说明了在这个技术上目前SMI应该是处于领先地位,另一个是一个堆满箱子的场景,从截图可以看出关闭和启用FoveatedRendering对于帧率的影响非常大。

EyeGaze的demo最具有代表意义的是个打地鼠的小游戏,地鼠会在不同的地方出现,需要第一时间将注视的焦点移到地鼠身上才能打到地鼠。一开始如果不适应的确会出现瞄不准的情况,试几次后就可以适应。我尝试了单纯转眼睛瞄准,转头瞄准,明显感觉转眼睛瞄准会快很多,而且人的第一直觉是去转眼睛,只有转眼睛覆盖不到的区域才回去转头,快速转头也会导致头晕;还尝试了摘掉HMD再重新带上,故意和上次带的位置有点偏差,基本没有影响追踪的结果。

二、CubicMotion

虽然现在美术可以做精度和质量非常高,接近真人的模型,但是对于高精度面部表情来说难度很高,游戏中流行的是采用offline的方法去捕捉,在游戏运行时进行播放即可,而到了VR这里如果能够实时捕捉面部表情,并且实时绘制出来对虚拟直播有非常大的意义。这个课题是比较前沿的,去年Epic,CubicMotion在GDC展示了实时捕捉面部表情,同时在UE4中渲染demo。这次SIGGRAPH他们做了更大的质量提升。

CubicMotion通过计算机视觉方法进行特征点追踪,并且可以将数据实时映射到超高质量的角色表情动画中。去年GDC已经做过一次demo展示,整个Pipeline是基于offline的,然后做了大量的优化,得到的反馈非常不错,这次SIGGRAPH又在去年GDC基础上做了不少改进。CubicMotion摘获了这次Realtimeinteractive大奖,足以证明其在表情捕捉领域的领先地位。

总体来说CubicMotion包括以下内容:

1)基于计算机视觉,追踪+特征点的同时保持90FPS

2)采用DeepLearning深入分析实时驱动3Lateral的rig生成的高质量面部表情动画

3)Mark和MarkLess模式都可以输出高质量动画

4)培训的数据库适用于单个或者多个相机

5)高质量眼睛动画捕捉

6)捕捉Bloodflow和瞳孔的细微变化

7)捕捉高质量的皱纹

8)Pipeline深度集成到UE4

1.面部表情的实时渲染

身体部位作为Xsensrig传给UE4的IKinema,大部分肢体捕捉技术是现成的,花了很少时间来装备。面部表情动画是这个demo的核心技术。

在这个demo之前已经有成熟的offline流程来捕捉面部和身体部分的动画,只是没有定位到实时渲染的层面,实时的demo是在原先offline流程的基础上进行了一些特殊定制,大部分流程是相同的,除了offline流程采用立体相机并且采用了一些实时算法不需要的处理。最大的挑战在于如何获得如此高质量的面部表情追踪最终实时渲染出来。

2.CubicMotion:Thesolver

CubicMotion是今年实时面部表情解决方案,表现非常出色的一家公司,该公司的计算机视觉技术足以胜任,同时跟踪+面部特征点的同时保证90FPS,并且可以将数据实时映射到超高质量的avatar角色上。CubicMotion的贡献在于实时拍摄并且对数据进行深入分析来驱动3Lateralrig。

左边是立体相机方式右边是输入的2个摄像机

SIGGRAPH采用的实时解决方案是采用立体摄像机,offline动画是通过立体相机拍摄得到的,这样可以达到最好的质量。

3.深度学习系统

CubicMotion的解决方案最重要的部分是他们拥有一个深度学习系统,它通过立体Rig进行学习,然后将其应用到独立相机上。换句话说因为有大量的离线学习信息,CubicMotion可以更好地感知演员的面部表情。虽然人们可以手动调整rig或建模型,但需要花费大量的人力物力。CubicMotion的系统只需要从数据库学习,然后在运行时就可以保证很高的精度,不需要手工调整或者改变模型。

离线系统允许进行校准。学习的第一阶段采用只有立体相机才能提供的详细信息,这使得在运行时刻可以更好的了解和修正运行时带来的问题。实施版本没有任何的手动援助和调整,因为它是实时运行的。

深度学习的关键在于提供图片的正确的数据源。为了达到这个目的立体数据被模拟成独立相机模式。被转换成独立相机的数据后就可以进行实时数据分析了。

立体数据可以很容易给独立相机带来明显的求解,这要比没有学习的结果精确很多。将面部动画系统和深度学习结合产生了一个高度灵活的嘴唇和面部动画同步的解决方案。CubicMotion采用他们独特的非线性解决方案可以输出一个精确的2D移动图,和FACS相关联,最终输出3Lateralrig引擎需要的数据。

4.眼睛追踪

眼睛追踪是逼真表情动画系统的关键技术。CubicMotion团队对眼睛追踪也采用了深度学习的方法。在学习眼睛追踪时会精确的加入一些标记辅助学习,用来驱动实时追踪。尽管高光会影响眼睛追踪,但眼睛的晶状体基本没造成什么问题。因为CubicMotion的解决方里训练和实时应用都是按照同样的方式工作的,为了精确培训眼睛追中需要学习-次。这当中有对高光,明暗变化,眼皮处于不同位置的情况进行补偿的采样,这些都可以在学习阶段解决,你可以说这里有大量关于眼睛在做各种事情的采样。

眼睛追踪时CubicMotion的标准解决方案,在GDCdemo中对其进行了调整,做了大量的优化。

如果眨眼会对眼球追踪造成问题,那么追踪牙齿就更困难了。因为牙齿大部分时间都被嘴唇挡住。在GDC之前离线立体追踪的工作已经完成,CubicMotion建立了一个精确的下巴运动模型,这个模型足以胜任对话。演员的牙齿提前被扫描出来,起初,3Lateral只针对牙齿,后来他们开发了一个新的嘴巴和牙齿的扫描系统,新的系统可以提供更多的细节,而且让演员感觉更加舒服。

5.BloodFlow

对演员的面部血流进行建模,演员的表情变化时会造成不同压力变化,这样也会引起血流的改变。虽然3Lateral在运行时刻知道血流的对应的表情(脸红,害羞,紧张),但它们还是采用了简化模型。当考虑血流后三维的脸被进一步增强,因为有一些视觉标记-围绕眉毛例如,血液流动告诉我们哪些地方鼓起。

角色的表现是第一位的,因此任何使她更富有表现力都非常重要。团队在demo后期让血流可以正常工作,在实际游戏中如果它们发现有的情绪反应不会被触发就会手动加关键帧进去。

6.瞳孔扩张和收缩

有意思的是团队在项目后期还加入了瞳孔扩张和收缩,当演员往前看时增加了很多眼睛的细节。瞳孔扩散和情感变化引起的血流变化虽然不容易察觉,但如果和关闭这些效果的图像比较下来还是很容易发现不同的。

三、PinScreen

PinScreen是一位南加州的教授LiHao创立的,他们公司的一些技术都是走在业界前列,最近几年也在SIGGRAPH论坛非常活跃,今年有他们的主题演讲,对他们的一些主要技术做了系统的介绍:

?FacialPerformanceSensingHMD(SIGGRAPH)

?Avatar

?Hair

?CaptureMovingTarget

1.FacialPerformanceSensingHMD

这个技术是去年SIGGRAPH发表的,针对戴了HMD来捕捉面部表情。对Occulus进行了改装,采用IntelRealscene相机捕捉下半部分脸;眼睛的表情捕捉则采用在海绵垫上增加压力传感器来完成。压力传感器的信号需要经过一个校正过程,采用深度学习的方法,因此使用前需要一个学习的过程。LiHao的这个研究开辟了一个新的领域,从去年到今年有好几个公司都是采用类似的思路来实现戴了HMD之后的表情捕捉,这个技术对于VR社交的意义非常重要,可以将玩家的表情完全复制到VR世界的角色中。

2.Avatar

根据视频流实时生成3DAvatar也是他们一个很有意思的技术,可以将角色A的Avatar替换到角色B,从目前的质量来看还原度还是不错的,但是质量还是无法和视频中的图像相比,不过这一切都是一个开始,也是很不错的进展。

3.Hair

年他们就开始尝试从各个角度拍摄的头发的图片,建立点云模型,最终生成3D的头发模型,质量也很不错。

去年他们开始尝试从一张照片中根据深度学习的方法,从发型数据库中生成3D头发模型(这些发型数据来源于TheSimResource)。这可以说是深度学习和图形结合的一个不错的应用,今年SIGGRAPH有一个报告名称为”AutoHair”就是在这个基础上做了很多优化,让从一张图片上生成3D头发更加快速。

4.CpatureMovingTarget

通过摄像机间的相关性生成每一帧动作序列的点云模型,这样就可以作为模型放到VR场景中。之前很多公司都是采用几十个相机,而LiHao只同时采用了4个相机,虽然还有些地方还会有瑕疵和漏洞,但最终生成的结果也是很不错的,但是该算法目前还需要offline处理,无法达到实时的效果。

四、HandPose

Handpose是微软研究院推出的实时精细手势跟踪系统。该系统可在仅利用一个深度摄像头(如XboxOne的Kinect)的情况下对复杂手势进行精确重构。其目标是用来促进新的人机交互方式。

手势跟踪相对于身体运动跟踪显然要难得多,因为手部动作牵涉到形状尺寸更小的手指的复杂且细微的运动,那么多手指的并发运动是很难区分的,而且有时候手指之间还会相互阻挡。根据微软这篇论文的描述,此前的手势识别系统一般要求是从正面进行识别,而且必须是近距离。为了解决这一问题,微软的Handpose利用了机器学习、3D建模以及合成分析(利用预先建立的手势集对实时手势进行比对)等技术来提高手势识别的精度和适用范围。

五、3DScanedAvatar

尽管3D建模工具可以创造逼真的人物模型,但这很考验美术的功力,需要很有经验的美术才能做出高质量的角色模型,同时也需要投入大量的时间成本。

如果采用3D设备人物进行快速3D扫描,根据3D扫描的模型生成人物的avatar,最后导入到建模工具中进行快速调整,最终可以放到VR世界中。这是一个很容易想到的思路,3D扫描既可以最大程度还原真实人物的各种细节信息,也可以节省大量的美术成本。

1.Qual


转载请注明:http://www.ednmw.com/yqssyy/831077.html

  • 上一篇文章:
  • 下一篇文章: 没有了
  • 当前时间: