HTC Vive这款
虚拟现实头显在市场上得到了许多开发者和用户的认可。这款设备创造了目前最好的VR体验,其搭载的Lighthouse技术可以说是体验最好的VR光学跟踪方案。那么,这项定位技术是如何工作的呢?
第一次体验虚拟现实是一种很神奇的经历,那种身临其境的感觉很难用语言描述给从未使用过VR的人。我一般会给第一次用Vive的人玩Tilt Brush,一个可以在三维空间自由作画的程序。有时我会把控制手柄放在远处让他们自己去拿,结果是大部分人都会很自然走过去把手柄拿到手里。这样一个在现实中平淡无奇的动作在虚拟现实中却显得十分吊诡:那层厚厚的显示屏仿佛消失了一般。
事实上,Vive的空间定位手柄充当了现实和虚拟之间的桥梁,帮助使用者在VR中重新建立起本体感觉(Proprioception)。 这也是为什么Vive的体验在几大头显中更胜一筹的原因:灵敏、精确的房间尺度定位技术。
HTC Vive 虚拟现实头盔
Tilt Brush 出色的交互设计
原理
Vive所用的定位技术是由HTC和Valve合作开发的Lighthouse系统。其原理是利用不断旋转的激光面击中分布在头盔和控制器上的光传感器(photodiode),传感器则根据击中的时间间隔计算出其相对于光源的角度(激光旋转速度恒定),进而确定其在空间中的位置。很有意思的一点是base station是独立运行的,和电脑之前没有任何直接的数据传输。这里有一个很直观的视频解释其工作原理(视频中的激光速度被放慢了,实际上激光在以60Hz的频率扫描)
通过分析高速摄像机拍下的画面,我们可以看到其完整的工作流程: - LED亮:通知所有传感器开始同步计时
- X方向扫描
- LED亮:通知所有传感器开始同步计时
- Y方向扫描
随后由计时开始到被激光击中的时间间隔即可得到传感器相对于base station的角度,进而通过triangulation求得在空间中的位置。
Lighthouse 进化史
既然提到Lighthouse就不得不提一下Lighthouse的设计者:Alan Yates。他本人很爱在网上和人讨论技术问题,也是开放Lighthouse技术的主要推动者。他还在一期podcast中详细介绍了Lighthouse技术,有兴趣的可以听一下,有不少干货。
Lighthouse的开发过程也是相当有趣的:在四年的研发期间,Alan和他的团队开发了很多原型产品,并不断进行迭代,最终打磨成了现在的样子。
利用二维码定位的初代原型
各代 base station
针锋相对:Vive vs. Oculus
Lighthouse的这种定位方式被称为‘inside-out tracking’,特点就是负责定位的传感器分布在运动的头盔表面,定位光源则固定在房间的角落;另外一种方案‘outside-in’就是Oculus所用的计算机视觉方案:负责定位的摄像头是固定的,追踪覆盖在头盔上的红外点光源。
这两种方式各有优劣:Vive的方案本质上是一个分布式系统,每个传感器负责计算自己的方位,所以系统没有追踪物体个数的上限(不考虑遮挡)。缺点就是电路复杂、成本略高;Oculus的方案显然更简单,只需要在物体表面放置LED就可以了。但是在实际使用中仍有诸多问题,追踪范围和距离都有较大限制。并且当追踪物体数量增加时,计算量也将急剧增加。
HTC Vive 拆解
Oculus Constellation 定位系统
Lighthouse技术拥有不少优点:需要的计算能力非常小,延迟也很小,系统中的追踪物体数量理论上没有上限。不过其精度依赖于系统的时间分辨率,而且可扩展性也不是非常出色。不过在87君看来,Valve会持续改进这些技术缺陷,从而推进HTC Vive的VR体验和应用场景。
猜你也喜欢:
评论 (0)