AR增强现实可以将虚拟数字图形叠加到现实世界视图,从而生成仿佛虚拟和真实共存的沉浸式技术。例如,叠加虚拟数字注释是一种常见的用例,比方说提供茶杯的生产厂商和价格等信息,在视场可视化地图导航等等。这里的一个问题是,如何放置虚拟注释。
在名为“Systems and methods for placing annotations in an augmented reality environment using a center-locked interface”的专利申请中,微软就提出了一种使用中心锁定界面在增强现实环境中放置注释的系统和方法。
传统技术支持“点击放置”模式:用户可以点击屏幕的任何位置,并在点击屏幕的位置放置注释。但在这个过程中,当用户尝试放置注释时,屏幕会被用户的手指遮挡,从而导致注释无意中放置在不需要的位置。
对于微软描述的方法,用户图形界面 GUI显示一个中央GUI元素,所述元素相对于计算机设备显示环境中心锁定。中央GUI元素与中央GUI元素所在环境的检测表面共面。注释可以是三维箭头。查看环境时,将向用户显示指向中央GUI元素的三维箭头的预览。提供用户输入后,箭头将放置在检测到的表面之上。用户可以提供额外的输入,在放置箭头之前,围绕中央GUI元素旋转三维箭头。
通过以上描述的方式,中央GUI元素可以提供更准确的注释体验,因为用户可以看到注释的精确位置。
由于专利描述的技术允许在其设备屏幕的中心放置注释,因此用户必须移动其设备,以便在其预期位置放置注释。设备的额外移动会导致设备捕获更多关于用户环境的可视数据。视觉数据用于映射用户环境,并确定用于检测用户环境中的曲面的特征点。获得的视觉数据越多,曲面检测和注释放置就越精确。
在一个实施例中,注释引擎102配置为提供叠加在实时视图112的GUI 114,使用户能够在通过实时视图112呈现的环境中放置虚拟的三维注释,从而提供增强的现实体验。
三维注释可以放置在注释引擎102提供的三维虚拟覆盖空间116内。三维虚拟覆盖空间116可以包括覆盖在实时视图112的透明层,通过所述透明层,用户可以在其中的各个位置放置三维注释。
例如,注释引擎102可以呈现锁定在实时视图112中心的中央GUI元素。当用户在用户环境中移动计算设备100时,中央GUI元素保持锁定在实时查看112中心。因此,无论通过实时视图112显示什么,中央GUI元素都保持在实时视图112的中心。
根据一个实施例,中央GUI组件可以是圆形十字线。圆形十字线可以包括位于中央的十字线点。十字线点表示注释可以放置在三维虚拟覆盖空间116内的位置。根据另一个实施例,中央GUI元素可以包括另一个形状,例如但不限于矩形、三角形、多边形等。
在一个实施例中,中央GUI元素可以与在接近实时视图112中心的环境中检测到的表面共面。例如,当用户在用户的环境中移动摄像头106时,注释引擎102可以连续检测到位于靠近实时视图112中心的表面。检测到这样的表面后,注释引擎112可以渲染中央GUI元素,使得其与所述表面共面。
注释是一个三维箭头。三维箭头最初可能显示在三维虚拟空间116中的固定或锁定位置,而虚拟空间叠加在实时视图112之上。三维箭头可能是单向的,其中箭头指向中央GUI元素的中心。例如,三维箭头可能指向中央GUI元素的十字线点。
三维箭头最初可能是半透明,以便用户可以查看三维箭头后面的环境。三维箭头的大小可以基于检测到的表面和摄像头106之间的距离。例如,检测到的距离越远,三维箭头的尺寸越小。相反,检测到的距离越近,三维箭头的大小越大。
用户可以通过提供用户输入将三维箭头放置在检测到的表面之上。例如,用户可以通过显示器108提供触碰输入(例如轻触),这使得三维箭头锚定到三维虚拟叠加空间116中与检测到的表面相对应的位置。在放置三维箭头时,注释引擎102可以呈现不透明的三维箭头。
例如,图2A显示的图形界面用于将注释放置在三维虚拟空间216中的第一个位置。图2A中显示了智能手机200的显示器。
如图2A所示,智能手机200的显示器显示由智能手机200摄像头检测到的环境或场景的实时视图212。实时视图121是实时视图112的示例。摄像头可以位于智能手机200的一侧,与智能手机200显示器(如图2A所示)所在的一侧相对。
如图2A中进一步所示,GUI元素202可以在实时视图212呈现。GUI组件202可以是注释引擎102提供的GUI 114的一部分(如图1所示)。
当激活时,GUI元素202可以启动注释模式,并允许用户通过三维虚拟叠加空间216在实时视图212放置虚拟注释。三维虚拟重叠空间216是三维虚拟叠加空间116的一个示例,如图1所示。可以通过通过用户界面104接收的用户输入激活GUI元素202。
图2B示出了根据示例实施例激活注释模式时通过智能手机200显示的图形界面。如图2B所示,响应于激活GUI元素202,注释引擎102在三维虚拟叠加空间216中渲染中央GUI元素204。中央GUI元素205在实况视图212的中心渲染并保持锁定。
如图2B所示,注释引擎02渲染位于中央GUI元素206中的十字线点206。如图2B所示,中央GUI元素204和十字线点206都与实时视图212中的注释引擎102检测到的表面208共面。
如图2B所示,注释引擎102在三维虚拟叠加空间216中的第一位置呈现三维箭头210。三维箭头210指向中央GUI元素204的中心。在图2B所示的示例中,中央GUI元素205的中心包括十字线点206。相应地,三维箭头210朝向十字线点208。如图2B中所示,三维箭头210为半透明。因此,用户可以看到三维箭头210后面的对象。
如图2C和2D所示,当用户移动摄像头106并将摄像头106指向环境中的其他对象时,中央GUI元素206、十字线点208和三维箭头210相对于实时视图212保持中心锁定。在图中所示的示例中,用户正在向右平移摄像头106。
如图2C所示,中央GUI元素204和十字线点206现在位于检测到的表面218上方,所述表面与图2B中的表面208具有不同的平面方向/角度。因此,生成中央GUI元素204和十字线点206,以相对于表面218共面显示。
如图2D所示,中央GUI元素204和十字线点206显示在检测到的表面220上方,所述表面与图2C的表面218具有不同的平面方向/角度。因此,生成中央GUI元素204和十字线点206,以相对于表面220共面显示。
放置三维箭头后,注释引擎102可以呈现另一个三维箭头,所述箭头最初显示在三维虚拟空间216中的固定位置,叠加在实时视图212,并且指向中央GUI元素的中心。这样,用户就可以在实时视图212所表示的环境中放置另一个三维箭头。
当用户在用户的环境中移动摄像头106时,用户放置的第一个三维箭头依然锚定在通过三维虚拟叠加空间216放置第一个三维箭标的表面之上。另外,第一三维箭头的大小和/或第一三维箭头显示的角度可以根据第一三维箭头锚定到的表面和通过实时视图212查看表面的角度之间的距离而变化。
名为“Systems and methods for placing annotations in an augmented reality environment using a center-locked interface”的微软专利申请最初在2021年3月提交,并在日前由美国专利商标局公布。