浅谈Magic Leap One实现对象持久性的可能性技术方案
文章相关引用及参考:reality
增强现实中的对象持久性
(映维网 2018年03月27日)在上周公布了SDK和开发者门户后,Magic Leap为我们解答了一系列的问题,但新问题同样随之而来。
例如:增强现实中的对象持久性(object persistence in augmented reality)。“持久性”这个术语是指无论你是否在看着它,虚拟对象都能够持续维持在一个位置。即便你离开后再回来,你或者其他人都能够看到这个虚拟对象。
对于共享/联机AR体验,数字对象能够在多台设备上维持相同的位置是创建多人沉浸式幻觉的关键元素。要实现这一点,一种方式是利用设备将用户的姿态(位置和方向的通用术语)传达给共享体验中的其他设备。
对此,设备同时需要一种方式来分享相对的起点。尽管持久性的问题不仅局限于一台设备或一种设备类型,但这是一个从设备入手的问题。
就HoloLens而言,尽管微软没有公布设备的具体幕后工作原理,但我们知道这是通过空间瞄定(spatial anchors)的方法来同步共享的技术问题。
当然,关于空间瞄定工作原理的猜测有很多。但从开发者的观点来看,这应该是指在设备相连后,一台设备将它的空间瞄定分享至其他设备。尽管这种空间瞄定有时非常大,但只要加载至其他设备就能起效。
实际上,这都只是机器人社区中一种技术的变体:SLAM(即时定位与地图构建)。借助设备内置摄像头的计算机视觉和姿态数据(如惯性测量单元),AR设备能够准确地追踪自己在空间中的姿态。接下来,设备可以把绝对姿态传输给其他设备。
根据Magic Leap One(ML1)的信息,我们可以总结出这款设别显然搭载了SLAM所需的基本性能。我们知道ML1包含了大量的传感器,同时配备了所谓的“Image Tracking(图像追踪)”,亦即头显计算机视觉的基础。
Magic Leap同时提到了Meshing(网格划分),这是指用户周围世界在3D网格数据中的重建。尽管3D网格数据的计算量对SLAM来说可能有点超载(不过存在尝试的案例),但3D数据似乎可以用作共享的参考点。
在描述持久性对象时,Magic Leap似乎暗示他们使用了计算机视觉和Meshing(网格划分)技术的组合:
我们的视觉感知和室内测绘技术将构建你周围物理环境的数字副本:检测并存储墙壁,表面和其他物理对象的精确位置。光场对象将停留在你最初放置的地方,就像在现实生活中一样。如果将虚拟电视机置放在壁炉上方的墙壁,然后你离开再回来,电视机会仍然维持在你最初放置的地方。
— Magic Leap 概述
尽管这有点回答了单个ML1用户的对象持续性问题,但就共享体验而言,问题仍然没有得到解答。
如果仔细阅读关于Lumin Runtime的文档,我们可以轻松推断出runtime层将自动处理共享的互联设备。这意味着Magic Leap可能开发了能够自动处理相对位置和绝对位置的系统。
当然,即便ML1正式上市,一系列悬而未决的问题仍将无法解答。但如果设备正如文件所暗示的那样,亦即ML1不仅能够处理共享过程,而且还能处理设备之间的持久性(以及自动启动),相信届时你会发现一群乐开怀的开发者。