科技魔方

微软专利描述如何利用空间锚点构建AR/MR体验

科技看点

2021年11月18日

  Spatial Anchors(空间锚点)表示存在于云中的物理点。对于增强现实应用,全息图可以附着到空间锚点。空间锚点的独特地方在于,它能够在云中存储和持久化,并在以后由创建它的设备或任何其他受支持设备进行查询。这能够实现锚点的云备份和基于云的锚点共享。

  想象一下这个场景:你和一个朋友在家,你们同意通过增强现实设备开玩国际象棋,并在桌面定位全息棋盘。在设备端,两人可以在现实世界中的同一位置(桌面)查看棋盘。无论在物理空间中移动到何处,棋盘都将固定到一个点。你甚至可以结束会话并在第二天重新启动,无需再次放置锚。

  对于幕后的技术原理,全息国际象棋应用使用一个空间锚点来保存棋盘的位置。这包括有关环境点的特征信息。全息国际象棋应用可以共享空间锚信息。然后,你朋友的HoloLens、iOS或Android设备端的应用程序可以查询空间锚点位置。一旦确定,任意多个设备的应用程序就可以在相同的物理位置呈现棋盘。

  在一份名为“Connecting spatial anchors for augmented reality”的专利中,这家公司描述了一种连接空间锚点的增强现实系统。具体来说,发明介绍了一种利用空间锚点来构建AR/MR体验的技术。

  专利描述的计算设备包括摄像头、处理器、以及存储可由处理器执行的指令的存储器。摄像头捕获成像第一物理世界位置的第一图像数据,然后处理器基于第一图像数据创建第一物理世界位置的第一空间表示。

  接收定义第一虚拟空间锚点相对第一图像数据中的成像特征的姿态的用户输入,追踪用户到第二物理世界位置的移动,通过摄像头捕获成像第二物理世界位置的第二图像数据,接收定义第二虚拟空间锚点相对于第二图像数据中的成像特征的姿态的用户输入,并向远程计算设备发送表示第一空间表示、第一虚拟空间锚点的姿态、第二空间表示的数据,第二虚拟空间锚点的姿态,以及从用户移动识别的第一虚拟空间锚点和第二虚拟空间锚点之间的位置关系。

  上图是一个示例环境100,其中用户指定的虚拟空间锚点可用于表示关注点。这种空间锚点可以支持开发者构建空间感知型AR和MR程序,并支持多种移动设备硬件和/或操作系统,例如微软HoloLens、支持ARKit的iOS设备和支持ARCore的Android设备。空间锚点允许开发者利用增强现实和混合现实平台感知空间,指定精确的兴趣点,并从支持的设备中调用兴趣点。

  可以看到,用户110可以使用移动设备112在整个环境的各种物理世界位置创建空间锚114A、114B、114C、114D等。例如,环境100可以是包含物理艺术品的博物馆或画廊,用户110可以通过向特定艺术品添加空间锚点来提供虚拟游览。

  诸如全息图之类的虚拟内容可以与空间锚点关联。用户110和其他用户120、130和140可以通过各自的移动设备查看所述虚拟内容。在这个示例中,用户110正在操作手持移动设备,而用户120、130和140正在佩戴头戴式显示器设备。

  虚拟内容可以位于空间锚点的位置或稍有偏移。例如,图示为星形的任意虚拟内容116A位于与其相关联的空间锚点114A处。作为另一示例,虚拟内容116B与相关联的空间锚点114B偏移。

  另外或可选地,当在距离空间锚的阈值范围内,可经由移动设备自动播放的音频内容。例如,音频内容可以包括提供物理对象描述的人声,例如对于空间锚点114B,音频内容可以是“这是15世纪的花瓶”。

  在一个示例中,用户可以通过摄像头对物理环境成像,并定义空间锚点相对于摄像头捕获的特征的位置和/或方向,从而创建空间锚点。一旦已经定义了空间锚点的位置和/或方向,就可以相对于所述空间锚点来定义虚拟内容的位置和/或方向。

  由于空间锚点可以与物理环境中的特征相关联,所以用户在增强现实或混合现实环境中无法感知驻留在移动设备摄像头视图之外的空间锚点或其虚拟内容。

  例如,工厂可以在应用程序涉及的每个位置放置空间锚。移动设备有助于引导工人从一个位置移动到下一个位置。移动设备可以联系基于云的服务,并首先请求位于工人附近的空间锚点,然后逐步将工人引导到下一个位置。移动设备可以显示视觉指示器,指示完成任务的下一个位置的大致方向和距离。

  另一个示例是,博物馆为公共展示品创建对应的空间锚点,而这一系列的锚点共同创建博物馆的特定AR游览。当游客参观一个公共展览品时,他们可以在移动设备打开博物馆的混合现实/增强现实应用程序。然后,他们可以将手机指向周围的空间,并通过摄像头输入查看其他公共展览品的大致方向和距离,从而帮助引导用户走向下一个公共展览品。

  图2是描绘用于创建彼此连接的空间锚点的示例方法流程图。在一个示例中,方法200由计算设备或计算系统执行,例如移动设备和头戴式设备等。在这个示例中,移动设备由用户操作以创建空间锚点。

  在210,所述方法包括经由移动设备的摄像头捕捉对第一物理世界位置成像的第一图像数据。在示例中,摄像头是可见光摄像头(例如,RGB摄像头)。在另一示例中,可以使用两个或多个摄像头来捕获图像数据,包括可见光照摄像头和深度照摄像头。

  在212,所述方法包括基于第一图像数据创建第一物理世界位置的第一空间表示。在一个示例中,第一空间表示可以采用根据图像数据确定的稀疏点云形式。稀疏点云的点可以具有相对于移动设备或其摄像头定义的位置和/或方向值。在其他示例中,可以提供任何其他合适的图像数据,例如由机载深度图像传感器捕获的第一深度图像数据。

  在特定场景中,用户可以将全息图或其他虚拟内容与空间锚点关联。例如在216,所述方法包括接收定义第一全息图相对于第一虚拟空间锚点的姿态的用户输入。第一虚拟全息图的姿态可定义相对于第一虚拟空间锚点的六自由度位置和/或方向。

  在218,所述方法包括从移动设备向网络可访问服务发送表示第一空间表示、第一虚拟空间锚点的姿态、第一全息图的姿态(如果定义)和一个或多个第一全息图和/或第一全息图的标识符(如果定义)的数据。网络可访问服务将此数据存储在关系图中,移动设备可通过多个会话和其他设备访问该关系图。网络可访问服务可以托管在一个或多个远程计算设备上,例如服务器系统。

  用户可以在物理世界中创建任意数量的空间锚,并且可以将任意数量的全息图与特定空间锚点关联。例如,在创建第一虚拟空间锚之后,用户可以随移动设备移动到第二物理世界位置以创建第二虚拟空间锚。

  在220,所述方法包括追踪移动设备从第一物理世界位置到或朝向第二物理世界位置的移动,以捕获追踪数据。追踪数据描述移动设备在六自由度空间的第一和第二物理世界位置之间的移动。可基于从一个或多个传感器获得的传感器数据来追踪移动设备的移动。移动设备可使用多个不同类型传感器的传感器融合来追踪其在位置之间的移动。

  在222,所述方法包括经由移动设备的照摄像头捕捉第二物理世界位置的第二图像数据。在224,所述方法包括基于第二图像数据创建第二物理世界位置的第二空间表示。例如,第二空间表示可以采用稀疏点云的形式。可以提供任何其他合适的图像数据,例如由机载深度图像传感器捕获的第二深度图像数据。

  在226,所述方法包括接收定义第二空间表示内的第二虚拟空间锚点的姿态的用户输入。可以相对于在第二图像数据中成像的物理世界的特征来定义第二虚拟空间锚点的姿态。在228,所述方法包括基于第一虚拟空间锚点和第二虚拟空间锚点各自的姿态和追踪数据来确定它们之间的空间关系。

  在232,所述方法包括从移动设备向网络可访问服务发送表示第二空间表示的数据、第二虚拟空间锚的姿态、第二全息图的姿态(如果有)、一个或多个第二全息图和/或第二全息图的标识符(如果定义),追踪数据描述移动设备在第一和第二物理世界位置之间的移动,以及第一和第二虚拟空间锚点之间的空间关系。网络可访问服务将该数据存储在关系图中,其中存储了表示第一空间表示、第一虚拟空间锚点的姿态和第一全息图(如果有)的姿态的数据。

  名为“Connecting spatial anchors for augmented reality”的微软专利申请最初在2021年4月提交,并在日前由美国专利商标局公布。

+1

来源:映维网

推荐文章