CN110892364A - 扩展现实虚拟助手 - Google Patents
扩展现实虚拟助手 Download PDFInfo
- Publication number
- CN110892364A CN110892364A CN201880047576.XA CN201880047576A CN110892364A CN 110892364 A CN110892364 A CN 110892364A CN 201880047576 A CN201880047576 A CN 201880047576A CN 110892364 A CN110892364 A CN 110892364A
- Authority
- CN
- China
- Prior art keywords
- user
- augmented reality
- reality environment
- location
- orientation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/10—Geometric effects
- G06T15/20—Perspective computation
-
- G—PHYSICS
- G02—OPTICS
- G02B—OPTICAL ELEMENTS, SYSTEMS OR APPARATUS
- G02B27/00—Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
- G02B27/0093—Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00 with means for monitoring data relating to the user, e.g. head-tracking, eye-tracking
-
- G—PHYSICS
- G02—OPTICS
- G02B—OPTICAL ELEMENTS, SYSTEMS OR APPARATUS
- G02B27/00—Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
- G02B27/01—Head-up displays
- G02B27/017—Head mounted
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/16—Constructional details or arrangements
- G06F1/1613—Constructional details or arrangements for portable computers
- G06F1/163—Wearable computers, e.g. on a belt
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
- G06F3/012—Head tracking input arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/017—Gesture based interaction, e.g. based on a set of recognized hand gestures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/0304—Detection arrangements using opto-electronic means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F3/04815—Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/04842—Selection of displayed objects or displayed text elements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T13/00—Animation
- G06T13/20—3D [Three Dimensional] animation
- G06T13/40—3D [Three Dimensional] animation of characters, e.g. humans, animals or virtual beings
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/006—Mixed reality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
-
- G—PHYSICS
- G02—OPTICS
- G02B—OPTICAL ELEMENTS, SYSTEMS OR APPARATUS
- G02B27/00—Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
- G02B27/01—Head-up displays
- G02B27/0179—Display position adjusting means not related to the information to be displayed
- G02B2027/0187—Display position adjusting means not related to the information to be displayed slaved to motion of at least a part of the body of the user, e.g. head, eye
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/16—Sound input; Sound output
- G06F3/167—Audio in a user interface, e.g. using voice commands for navigating, audio feedback
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2219/00—Indexing scheme for manipulating 3D models or images for computer graphics
- G06T2219/024—Multi-user, collaborative environment
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformation in the plane of the image
- G06T3/20—Linear translation of a whole image or part thereof, e.g. panning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/60—Analysis of geometric attributes
Abstract
提供方法、装置和设备以促进在扩展现实环境中定位虚拟内容项。例如,第一用户可以通过移动装置的显示器访问所述扩展现实环境,并且在一些实例中,所述方法可以确定所述第一用户和第二用户在所述扩展现实环境中的位置和朝向。所述方法还可以基于所述第一用户和所述第二用户的确定的位置和朝向确定所述虚拟内容项在所述扩展现实环境中的放置位置,并且执行在确定的放置位置将所述虚拟内容项插入到所述扩展现实环境中的操作。
Description
技术领域
本公开总体上涉及在扩展现实环境中动态地定位虚拟内容的计算机实施的系统和进程。
背景技术
移动装置使用户能够探索和沉浸在扩展现实环境中,如提供与计算机生成的图形内容合并或通过计算机生成的图形内容增强的物理真实世界环境的实时视图的增强现实环境。当沉浸在扩展现实环境中时,许多用户体验到与真实世界信息源微弱的联系,这在扩展现实环境中提供将会进一步加强用户与扩展现实环境交互并探索扩展真实环境的能力。
发明内容
所公开的计算机实施的扩展现实方法可以包含由一或多个处理器确定第一用户在扩展现实环境中的位置和朝向。所述方法还可以包含由所述一或多个处理器确定第二用户在所述扩展现实环境中的位置和朝向。所述方法可以进一步包含:由所述一或多个处理器基于所述第一用户和所述第二用户的确定的位置和朝向确定虚拟内容项在所述扩展现实环境中的放置位置;以及在确定的放置位置将所述虚拟内容项插入到所述扩展现实环境中。
一种公开的设备能够被用于扩展现实环境中。所述设备可以包含:存储指令的非暂时性机器可读存储媒体:以及至少一个处理器,所述至少一个处理器被配置成执行所述指令以确定第一用户在扩展现实环境中的位置和朝向。所述至少一个处理器还被配置成确定第二用户在所述扩展现实环境中的位置和朝向。所述至少一个处理器被配置成执行指令以基于所述第一用户和所述第二用户的确定的位置和朝向确定虚拟内容项在所述扩展现实环境中的放置位置并且在确定的放置位置将虚拟助手插入到所述扩展现实环境中。
一种公开的设备具有用于确定第一用户在扩展现实环境中的位置和朝向的装置。所述设备还包含用于确定第二用户在增强现实环境中的位置和朝向的装置。所述设备包含用于至少部分地基于所述第一用户和所述第二用户的确定的位置和朝向确定虚拟内容项在所述扩展现实环境中的放置位置的装置。所述设备还包含用于在确定的放置位置将所述虚拟内容项插入到所述扩展现实环境中的装置。
一种公开的非暂时性计算机可读存储媒体用处理器可执行程序代码编码,所述处理器可执行程序代码包含:用于确定第一用户在扩展现实环境中的位置和朝向的程序代码;用于确定第二用户在所述扩展现实环境中的位置和朝向的程序代码;用于至少部分地基于所述第一用户和所述第二用户的确定的位置和朝向确定虚拟内容项在所述扩展现实环境中的放置位置的程序代码;以及用于在确定的放置位置将所述虚拟内容项插入到所述扩展现实环境中的程序代码。
附图说明
图1是根据一些实例的增强现实环境的示范性网络的框图。
图2是根据一些实例的在图1的增强现实环境中使用的示范性移动装置的框图。
图3是根据一些实例的用于使用图2的移动装置在增强现实环境中动态地定位虚拟助手的示范性过程的流程图。
图4A和4B是展示了根据一些实例的用户使用图2的移动装置与增强现实环境示范性交互的图。
图5展示了根据一些实例的由图2的移动装置进行的语义场景分析的实例结果。
图6A-6D、7A、7B和8是展示了根据一些实例的用于使用图1的网络计算虚拟助手在增强现实环境中的候选位置的放置得分的过程的各方面的图。
图9是根据一些实例的用于响应于检测到的手势输入在增强现实环境中执行操作的示范性过程的流程图。
图10A和10B是展示了根据一些实例的用户使用图2的移动装置与增强现实环境交互的图。
具体实施方式
虽然本文描述的特征、方法、装置和系统可以以各种形式体现,但是一些示范性和非限制性实施例示出在附图中并且在下文中进行描述。本公开中描述的一些组件是任选的,并且一些实施方案可以包含与本公开中明确描述的那些组件相比另外的、不同的或更少的组件。
如“下部”、“上部”、“水平”、“竖直”、“上方”、“下方”、“上”、“下”、“顶部”、“底部”等相对术语以及其派生词(例如“水平地”、“向下”、“向上”等)是指如当时描述的或如讨论中的附图中示出的朝向。提供相对术语是为了方便读者。相对术语不限制权利要求书的范围。
如软件弹出式助手和语音呼叫助手等很多虚拟助手技术已经被设计用于电信系统。本公开提供了利用如虚拟现实环境、增强现实环境和增强虚拟环境等扩展现实环境的潜力的虚拟助手。
下文描述了移动计算背景下扩展现实环境的实例。在下文所述的一些实例中,扩展现实生成和呈现工具可通过移动装置和与扩展现实平台相关联的计算系统访问。扩展现实生成和呈现工具基于如捕获的数字视频、数字图像、数字音频内容或合成的视听内容(例如计算机生成的图像和动画内容)等数字内容的某些元素定义扩展现实环境。工具可以在移动装置上部署数字内容的元素,以通过并入扩展现实、虚拟现实或增强现实头戴式耳机中的显示器(如头戴式显示器(HMD))呈现给用户。
移动装置可以包含增强现实眼睛佩戴物(例如眼镜、眼罩或覆盖用户眼睛的任何装置),所述增强现实眼睛佩戴物具有用于显示部署的数字内容的图形元素的一或多个镜片或显示器。例如,眼睛佩戴物可以将图形元素显示为叠加在通过镜片可看见的真实世界对象之上的增强现实层。另外,为移动装置部署的数字内容的各部分—所述数字内容为所述移动装置的用户建立增强现实环境或其它扩展现实环境—也可以被部署到其它移动装置。其它移动装置的用户可以使用其各自的移动装置访问数字内容的部署的部分以探索增强现实环境或其它扩展现实环境。
移动装置的用户还可以通过对移动装置的手势或口头输入探索扩展现实环境并且与扩展现实环境交互(例如如通过HMD呈现的)。例如,移动装置可以将手势识别工具应用于手势输入以确定所述手势输入的上下文并且执行对应于确定的上下文的另外的操作。手势输入可以由并入移动装置中或与移动装置通信的数字相机检测或者由并入移动装置中或与移动装置通信的各种传感器检测。这些传感器的实例包含但不限于并入移动装置中的惯性测量单元(IMU)或者并入可穿戴装置(例如手套)中并且与移动装置通信的IMU。在其它实例中,移动装置内的麦克风或其它接口可以捕获用户说出的话语。移动装置可以将语音识别工具或自然语言处理算法应用于捕获的话语以确定说出的话语的上下文并且执行对应于确定的上下文的另外的操作。例如,另外的操作可以包含通过增强现实环境呈现与用户的导航相对应的数字内容的另外的元素。其它实例包含响应于用户说出的查询从一或多个计算系统中获得信息的过程。
手势或口头输入可以请求移动装置所建立的扩展现实环境中的如虚拟助手等虚拟内容项(例如可以“调用”虚拟助手)。举例来说,虚拟助手可以包含动画数字内容和合成音频内容的元素,以呈现于扩展现实环境的适当且上下文相关的部分中。当通过HMD或移动装置渲染时,动画数字内容元素和音频内容元素促进用户与扩展现实环境之间增强的交互并且保存了用户与“现实”世界(扩展现实环境之外)的连接。在一些情况下,虚拟助手可以与响应用户说出的话语的合成音频内容的库或集合相关联。此类音频内容可以描述布置在扩展现实环境中的感兴趣对象、贯穿用户与增强现实环境的交互指示实际的真实世界时间或日期的话语,或指示用户的实际环境中存在的危险物或其它危险状况。
当被渲染以呈现于扩展现实环境中时,虚拟助手还可以与用户交互并且引发用户对移动装置的另外的手势或口头查询。例如,扩展现实环境可以包含与用户的多个地理上分散的同事参加的会议相对应的增强现实环境,并且虚拟助手可以提示用户向移动装置进行口头查询,从而请求虚拟助手对会议进行记录以供后续查看。在其它实例中,虚拟助手访问数字内容的某些元素(例如视频内容、图像等)并且将所述数字内容呈现于增强现实环境的呈现区域(例如增强现实白板)中。
移动装置可以通过麦克风或其它接口捕获口头查询并且可以将语音识别工具或自然语言处理算法中的一或多个应用于捕获的查询,以确定口头查询的上下文。虚拟助手可以单独地或者通过与一或多个其它计算系统交换数据来执行与确定的上下文相对应的另外的操作。通过促进用户与增强现实环境和真实世界两者的交互,虚拟助手为用户创建了沉浸式增强现实体验。虚拟助手可以对增加增强现实技术的使用并且促进增强现实环境中的多用户协作。
响应于捕获的手势或口头输入—所述手势或口头输入调用扩展现实环境中的虚拟助手—扩展现实计算系统或移动装置可以确定用户通过HMD或增强现实眼睛佩戴物当前可见的虚拟环境的一部分(例如“场景”)。扩展现实计算系统或移动装置可以应用各种图像处理工具来生成数据(例如场景深度图),所述数据建立并且向场景内的每个像素分配表征与像素相对应的在扩展现实环境中的位置的深度的值。在一些实例中,扩展现实计算系统或移动装置还将各种语义场景分析过程应用于扩展现实环境的可见部分以及场景深度图,以标识并表征布置在扩展现实环境中的对象并且将标识的对象映射到扩展现实环境和场景深度图中的位置。
扩展现实计算系统或移动装置还可以确定移动装置在扩展现实环境中的位置和朝向(例如HMD或增强现实眼睛佩戴物的位置和朝向)并且可以进一步获得指示一或多个其他用户在扩展现实环境中的位置和朝向的数据。在一个实例中,可以基于由用户操作或穿戴的移动装置的纬度值、经度值或高度值确定所述用户在扩展现实环境中的位置。类似地,扩展现实计算系统或移动装置可以基于由用户操作或穿戴的移动装置的确定的朝向定义用户在扩展现实环境中的朝向。例如,可以基于移动设装置的横摇值、俯仰值和/或偏航值中的一或多个确立移动装置的确定的朝向,例如装置姿势。进一步地,用户和移动装置的位置和朝向可以基于在移动装置处获得或接收的一或多个定位信号和/或惯性传感器测量结果,如下文详细描述的。
在另外的实例中,用户在扩展现实环境中的朝向可以对应于所述用户的身体的至少一部分在扩展现实环境中的朝向。例如,可以基于用户身体的一部分相对于用户所操作或穿戴的移动装置的一部分的朝向(如用户头部的一部分相对于移动装置的显示表面的朝向(例如头部姿势))确立用户的朝向。在其它实例中,移动装置可以包含或并入有头戴式显示器中,并且扩展现实计算系统或移动装置可以基于用户的至少一只眼睛相对于头戴式显示器的一部分的确定的朝向定义用户的朝向。例如,头戴式显示器可以包含增强现实眼睛佩戴物,并且扩展现实计算系统或移动装置可以将用户的朝向定义为用户的左眼(或者右眼)相对于增强现实眼睛佩戴物的对应镜片的朝向。基于生成的场景深度图、语义过程的结果和表征用户或移动装置在扩展现实环境中的位置和朝向的数据,扩展现实计算系统或移动装置可以确立虚拟助手在扩展现实环境中的多个候选位置并且可以计算表征虚拟助手的候选位置中每个候选位置的可行性的放置得分。
另外,扩展现实计算系统或移动装置可以计算反映由扩展现实环境施加的物理约束的特定候选位置的放置得分。例如,特定候选位置处存在危险物(例如湖泊、悬崖等)可能产生低放置得分。在另一个实例中,如果布置在特定候选位置的对象(例如布置在候选位置的书架或桌子)不适于支撑虚拟助手,则扩展现实计算系统或移动装置可以针对所述候选位置计算出低放置得分,而布置在候选位置的椅子可以产生高放置得分。在其它实例中,扩展现实计算系统或移动装置至少部分地基于另外的因素计算特定候选位置的放置得分。另外的因素可以包含但不限于在特定候选位置的虚拟助手相对于布置在扩展现实环境中的其他用户的视角、特定候选位置与其他用户在增强现实环境中的位置之间的位移、其他用户中的每个用户的脸对布置在特定候选位置的虚拟助手的确定的可见性以及布置在增强现实环境中的所有或一些用户之间的交互。
扩展现实计算系统或移动装置可以确定计算的放置得分的最小值并且标识与计算的放置得分的最小值相关联的候选位置。扩展现实计算系统或移动装置选择(确立)标识的候选位置作为如虚拟助手等虚拟内容项在增强现实环境中的位置。
如下文详细描述的,扩展现实计算系统或移动装置可以生成虚拟内容项(例如通过动画工具和语音合成工具生成的虚拟助手)。扩展现实计算系统或移动装置可以生成指令,所述指令使显示单元(例如HMD)在增强现实环境中的对应位置呈现虚拟内容项。扩展现实计算系统或移动装置可以响应于另外的手势或口头输入(如表示用户与虚拟助手的交互的输入)修改虚拟内容项的一或多个视觉特性。
扩展现实计算系统或移动装置还可以响应于移动装置或显示单元的状态变化(例如移动装置或显示单元在扩展现实环境中的位置或朝向的变化)修改虚拟内容项在扩展现实环境中的位置。扩展现实计算系统或移动装置可以基于对将虚拟内容项引导到扩展现实环境中的替代性位置(例如增强现实环境中在用户感兴趣的对象附近的位置)的手势输入的检测修改虚拟内容项的位置。
图1是示范性网络环境100的示意性框图。网络环境100可以包含例如任何数量的移动装置,如移动装置102和104。移动装置102和104可以建立并且实现由对应的用户对扩展现实环境的访问。如本文所述,扩展现实环境的实例包含但不限于虚拟现实环境、增强现实环境或增强虚拟环境。移动装置102和104可以包含任何适合的移动计算平台,如但不限于蜂窝电话、智能电话、个人数字助理、低占空比通信装置、膝上型计算机、便携式媒体播放器装置、个人导航装置以及包括数字相机的便携式电子装置。
进一步地,在一些实例中,移动装置102和104还包含(或对应于)可穿戴扩展现实显示单元,如呈现为对应的用户建立扩展现实环境的立体图形内容和音频内容的HMD。在其它实例中,移动装置102和104包含增强现实眼睛佩戴物(例如眼镜),所述眼睛佩戴物包含一或多个镜片,所述一或多个镜片用于显示在通过此类镜片可看见的真实世界对象之上的图形内容(如增强现实信息层)以建立增强现实环境。移动装置102和104可以由对应的用户操作,所述用户中的每个用户可以使用下文描述的过程中的任何过程访问扩展现实环境,并且所述移动装置可以被布置在访问的扩展现实环境中的对应位置。
网络环境100可以包含扩展现实(XR)计算系统130、定位系统150和一或多个另外的计算系统160。移动装置102和104可以跨通信网络120与XR计算系统130、定位系统150和另外的计算系统160进行无线通信。通信网络120可以包含广域网(例如互联网)、局域网(例如内联网)和/或个人局域网中的一或多个。例如,移动装置102和104可以通过任何适合的通信协议与XR计算系统130和另外的计算系统160进行无线通信,所述任何适合的通信协议包含蜂窝通信协议(如码分多址全球移动通信系统或宽带码分多址)和/或无线局域网协议(如IEEE 802.11或全球微波接入互操作性)。因此,通信网络120可以包含一或多个无线收发器。移动装置102和104还可以使用通信网络120的无线收发器来获得用于估算移动装置位置的定位信息。
移动装置102和104可以使用基于三边测量的方法来估计对应的地理位置。例如,移动装置102和104可以使用的技术包含中的高级前向链路三边测量(AFLT)或中的增强型观察时间差(EOTD)或中的观察到达时间差(OTDOA)。OTDOA测量无线信号到达移动装置的相对时间,其中无线信号是从几个配备有发射器的基站中的每个基站发射的。作为另一个实例,移动装置102或104可以通过获得媒体访问控制(MAC)地址或与无线收发器相关联的其它适合的标识符并且将MAC地址或标识符与所述无线收发器的已知地理位置相关来估计自身的位置。
移动装置102或104可以进一步从定位系统150中获得无线定位信号以估计对应的移动装置位置。例如,定位系统150可以包括卫星定位系统(SPS)和/或基于地面的定位系统。卫星定位系统可以包含例如全球定位系统(GPS)、伽利略(Galileo)、格洛纳斯(GLONASS)、导航星(NAVSTAR)、全球导航卫星系统(GNSS)、使用上述定位系统的组合中的卫星的系统、或未来开发的任何SPS。如本文所用,SPS可以包含伪卫星系统。本文描述的特定定位技术仅仅是定位技术的实例并且不限制所要求的主题。
XR计算系统130可以包含一或多个服务器和/或其它适合的计算平台。因此,XR计算系统130可以包含其上存储有数据库134和指令136的非暂时性计算机可读存储媒体(“存储媒体”)132。XR计算系统130可以包含一或多个处理器,如用于执行指令136或促进在数据库134中存储和检索数据的处理器138。XR计算系统130可以进一步包含用于促进与通信网络120的客户端的通信的通信接口140,所述客户端包含移动装置102和104、定位系统150和另外的计算系统160。
为了促进理解实例,有时根据用于执行特定操作的一或多个模块描述一些指令136。作为一个实例,指令136可以包含用于管理如数字图形和音频内容等数字内容的元素到移动装置102和104的部署的内容管理模块162。图形和音频内容可以包含捕获的数字视频、数字图像、数字音频或者合成的图像或视频。移动装置102或104可以通过对应的显示单元(如HMD或增强现实眼睛佩戴物的镜片)呈现部署的图形或音频内容的各部分并且可以在移动装置102和104中的每个移动装置处建立扩展现实环境。建立的扩展现实环境可以包含图形或音频内容,所述图形或音频内容使移动装置102或104的用户能够浏览和探索扩展现实环境中的各个历史站点和位置或者参与由各个地理上分散的参与者出席的虚拟会议。
指令136还可以包含用于处理表示对移动装置102的用户或移动装置104的用户可见(例如通过对应的HMD或通过增强现实眼睛佩戴物的镜片)的扩展现实环境的各部分的图像的图像处理模块164。例如,图像处理模块164除其它项以外还可以包含为扩展现实环境的可见部分中的每个可见部分生成深度图的深度映射模块166和标识并表征布置在扩展现实环境的可见部分内的对象的语义分析模块168。
作为实例,深度映射模块166可以接收表示通过对应的HMD对移动装置102的用户可见的扩展现实环境的所述部分的图像。深度映射模块166可以生成将一或多个图像的每个像素与扩展现实环境中的对应位置相关的深度图。深度映射模块166可以计算表征扩展现实环境中的对应位置中的每个位置的深度的值并且将计算的深度与深度图中的对应位置相关联。在一些实例中,接收到的图像包含立体图像对,所述立体图像对中的每个图像从略有不同的视点(例如对应于HMD或增强现实眼睛佩戴物的左镜片和右镜片)表示扩展现实环境的可见部分。进一步地,扩展现实环境的可见部分中的每个位置可以用这两个图像之间的偏移(以像素为单位测量的)来表征。偏移与扩展现实环境中移动装置102的位置与用户之间的距离成比例。
深度映射模块166可以进一步确立像素偏移作为表征生成的深度图内的位置的深度值。例如,深度映射模块166可以建立与所述像素偏移成比例的值作为表征深度图内的位置的深度值。深度映射模块166还可以建立映射函数(例如特征-深度映射函数),所述映射函数将扩展现实环境的可见部分的图像的某些视觉特性与如深度图中阐述的对应的深度值相关。深度映射模块166可以进一步处理表征图像的数据,以标识每个图像像素的颜色值。深度映射模块166可以将一或多种适合的统计技术(例如回归等)应用于标识的颜色值和深度图中阐述的深度值以生成映射函数并且将像素的颜色值与扩展现实环境的可见部分中的对应深度相关。
本发明主题不限于上述深度映射过程的实例,并且深度映射模块166可以将另外的或替代性图像处理技术应用于图像,以生成表征扩展现实环境的可见部分的深度图。例如,深度映射模块166可以处理图像的一部分,以确定与表征扩展现实环境的先前可见部分(例如如通过对应的HMD对移动装置102或104的用户可见的)的先前图像数据的相似性。响应于确定的相似性,深度映射模块166可以访问数据库134并且获得指定扩展现实环境的先前可见部分的映射函数的数据。深度映射模块166可以确定表征图像的所述部分的像素的颜色值,将映射函数应用于确定的颜色值并且基于应用的映射函数的输出直接生成图像的所述部分的深度图。
返回参考图1,语义分析模块168可以处理图像(例如所述图像表示扩展现实环境的可见部分)并且应用一或多种语义分析技术以标识和表征布置在扩展现实环境的可见部分内的对象。例如,语义分析模块168可以访问与图像中的对应图像相关联的图像数据并且可以将一或多种适合的计算机视觉算法或机器视觉算法应用于访问的图像数据。计算机视觉算法或机器视觉算法标识图像中的对应图像内的对象和图像中的对应图像内的标识的对象的位置并因此标识所标识的对象在扩展现实环境的可见部分内的位置。
应用的计算机视觉或机器视觉算法可以依赖于由XR计算系统130本地(例如在数据库134内)存储的数据。语义分析模块168可以跨通信网络120从一或多个计算系统(如另外的计算系统160)获得支持计算机视觉或机器视觉算法的应用的数据。例如,语义分析模块168可以执行通过对应的程序接口向另外的计算系统160中的对应计算系统提供促进针对访问的图像数据的各部分进行基于图像的搜索的数据的操作。实例不限于上述语义分析技术和基于图像的搜索。语义分析模块168可以单独地或结合另外的计算系统160进一步将另外的或替代性算法或技术应用于获得的图像数据,以标识和定位扩展现实环境的可见部分内的对象。
以应用的计算机视觉或机器视觉算法的结果或者基于图像的搜索的结果为基础,语义分析模块168可以生成指定增强现实环境的可见部分内的标识的对象中的每个对象和对应的位置的数据(例如元数据)。语义分析模块168还可以访问增强现实环境的可见部分的生成的深度图并且将表征增强现实环境的可见部分的深度值与标识的对象和对应的位置相关。
返回参考图1,指令136还可以包含位置确定模块170、虚拟内容生成模块172和查询处理模块174。位置确定模块170可以执行在由移动装置102和104建立的扩展现实环境中确立如虚拟助手等虚拟内容项的多个候选位置的操作。位置确定模块170提供用于至少部分地基于用户的确定的位置和朝向确定虚拟内容项在扩展现实环境中的放置位置的装置。位置确定模块170可以计算放置得分,所述放置得分表征虚拟内容项在增强或其它现实环境中的候选位置中的每个候选位置的可行性。如下所述,可以基于生成的深度图数据计算放置得分,所述数据指定了扩展现实环境的可见部分内的对象、表征扩展现实环境中的每个用户的一部分和朝向的数据或者表征扩展现实环境中的用户之间的交互水平的数据。
针对特定候选位置计算的放置得分可以反映由扩展现实环境施加的物理约束。如上所述,特定候选位置处存在危险物(例如湖泊、悬崖等)可能产生低放置得分,而如果布置在特定候选位置的对象(例如布置在虚拟助手的候选位置的书架或桌子)不适于支撑虚拟内容项,则扩展现实计算系统可以针对所述候选位置计算出低放置得分。针对特定候选位置计算的放置得分还可以反映另外的因素(例如当虚拟助手位于特定候选位置时虚拟助手相对于布置在扩展现实环境中的其他用户的视角、特定候选位置与其他用户在扩展现实环境中的位置之间的位移、其他用户中的每个用户的脸对布置在特定候选位置的虚拟助手的确定的可见性和/或增强或其它扩展现实环境中的所有或一些用户之间的交互)。位置确定模块170可以确定计算的放置得分的最小值,标识与计算的最小放置得分相关联的候选位置并且选择和确立标识的候选位置作为虚拟内容项在扩展现实环境中的位置。
虚拟内容生成模块172可以执行在扩展现实环境中的确立的位置(例如如对移动装置102的用户或移动装置104的用户可见的)生成和实例化如虚拟助手等虚拟内容项的操作。例如,虚拟内容生成模块172可以包含图形模块176,所述图形模块基于本地存储的数据(例如数据库134内)生成虚拟助的动画表示,所述本地存储的数据指定了虚拟助手的视觉特性,如由移动装置102的用户或移动装置104的用户选择的头像的视觉特性。虚拟内容生成模块172还可以包含语音合成模块178,所述语音合成模块生成表示虚拟助手在扩展现实环境中说出的交互式对话的各部分的音频内容。在一些实例中,语音合成模块178基于XR计算系统130在本地存储的语音参数生成音频内容以及交互式口头对话的各部分。例如,语音参数可以指定地域方言或者由移动装置102或104的用户说出的语言。
查询处理模块174可以执行从移动装置102或移动装置104接收指定一或多条查询的查询数据的操作。查询处理模块174可以响应于查询(例如本地存储在存储媒体132中或跨通信网络120从另外的计算系统160获得的数据)获得数据。查询处理模块174可以响应于接收的查询数据向移动装置102或移动装置104提供获得的数据。例如,由移动装置102建立的扩展现实环境可以包含对埃及吉萨的金字塔建筑群的虚拟游览,并且响应于虚拟助手的合成语音,移动装置102的用户可以发出查询,所述查询请求关于在建造大金字塔期间采用的建造实践的另外的信息。如下所述,移动装置102的语音识别模块可以处理发出的查询—例如使用任何适合的语音识别算法或自然语言处理算法—并且生成文本查询数据;移动装置102中的查询模块可以打包文本查询数据并且将文本查询数据传输到XR计算系统130。
如上所述,查询处理模块174可以接收查询数据、生成或获得反映和响应于接收到的查询数据(例如基于本地存储在存储媒体132中或从另外的计算系统160获得的数据)的数据。例如,查询处理模块174可以执行请求并从另外的计算系统160中的一或多个计算系统(例如通过适合的程序接口)获得表征在建造大金字塔期间采用的建造技术的信息的操作。查询处理模块174然后可以将获得的信息传输到移动装置102作为对查询数据的响应。
在向移动装置102传输响应之前,语音合成模块178可以访问和处理获得的信息,以生成虚拟助手可以在扩展现实环境中向移动装置102的用户呈现(例如虚拟助手响应于用户的查询而“说出”)的音频内容。
查询处理模块174还可以将获得的信息传输到移动装置102,而不经过另外的处理或语音合成。由移动装置102维护的本地语音合成模块可以处理获得的信息并且生成虚拟助手可以使用本文所述的任何过程呈现的合成语音。
数据库134可以包含各种数据,如媒体内容数据180—例如捕获的数字视频、数字图像、数字音频或者适于部署到移动装置102或移动装置104的合成图像或视频—以建立扩展现实环境的对应情况(例如基于由内容管理模块162执行的操作)。数据库134还可以包含深度图数据182,所述深度图数据包含深度图和指定通过移动装置102或104实例化的扩展现实环境的对应可见部分的映射函数的数据。数据库134还可以包含对象数据184,所述对象数据包含标识对象和其在对应可见部分内的位置的元数据(并且进一步包含将对象的位置与深度图数据182的对应部分相关的数据)。
数据库134还可以包含标识移动装置102和移动装置104的用户在扩展现实环境的对应部分内的位置和朝向的位置和朝向数据186以及表征扩展现实环境中用户之间的交互水平或范围的交互数据188。例如,移动装置的位置可以表示为相对于参考基准测量的一或多个纬度值、经度值或高度值,并且移动装置的位置可以表示所述移动装置的用户的位置。进一步地并且如本文所述,手机装置的朝向可以用相对于另外的或替代性参考基准测量的横摇值、俯仰值和/或偏航值中的一或多个来表示,并且用户的朝向可以表示为移动装置的朝向。在其它实例中,可以基于用户身体的至少一部分相对于扩展现实环境或相对于移动装置的一部分(如移动装置的显示表面)的朝向确定用户的朝向。进一步地,在一些实例中,交互数据188可以表征增强或其它扩展现实环境中的用户之间的音频通信量以及所述音频通信的源用户与目标用户之间的音频通信量,如通过XR计算系统130监测和捕获的。
数据库134可以进一步包含图形数据190和语音数据192。图形数据190可以包含促进和支持由虚拟内容生成模块172生成如虚拟助手等虚拟内容项的数据。例如,图形数据190可以包含但不限于指定虚拟助手的某些视觉特性(如由移动装置102的用户或移动装置104的用户选择的头像的视觉特性)的数据。进一步地,举例来说,语音数据192可以包含促进和支持适于由虚拟助手在扩展现实环境中呈现的语音(如例如地域方言或者由移动装置102或104的用户说出的语言)的合成的数据。
图2是示范性移动装置200的示意性框图。移动装置200是针对至少一些实例的图1的移动装置102和104的非限制性实例。因此,移动装置200可以包含例如用于促进与如XR计算系统130、其它移动装置(例如移动装置102和104)、定位系统150和/或另外的计算系统160等其它计算平台的通信的通信接口202。因此,通信接口202可以实现与如通信网络120等通信网络的无线通信。移动装置200还可以包含用于从如图1的定位系统150等定位系统接收定位信号的接收器204(例如GPS接收器或SPS接收器)。接收器204提供用于确定移动装置200—以及因此穿戴或携带移动装置的用户—在扩展现实环境中的位置的装置。
移动装置200可以包含接收来自对应用户的输入的一或多个输入单元,例如输入单元206。输入单元206的实例包含但不限于一或多个物理按钮、键盘、控制器、麦克风、指向装置和/或触敏表面。
移动装置200可以采用可穿戴扩展现实显示单元的形式,如呈现建立扩展现实环境的立体图形内容和音频内容的头戴式显示器(HMD)。移动装置200还可以采用增强现实眼睛佩戴物或眼镜的形式,所述增强现实眼睛佩戴物或眼镜包含一或多个用于显示图形内容(如在通过镜片可看见并且建立增强现实环境的真实世界对象之上的增强现实信息层)的镜片。移动装置200可以包含显示单元208,如向对应的用户显示图形内容的立体显示器,使得图形内容在移动装置200处建立增强现实环境或其它扩展现实环境。显示单元208可以并入增强现实眼睛佩戴物或眼镜中并且可以进一步被配置成显示叠加在通过单个镜片或者可替代地通过两个镜片可见的真实世界对象之上的增强现实信息层。移动装置200还可以包含一或多个输出装置(未示出),如用于呈现音频内容作为扩展现实环境的一部分的音频扬声器或耳机插孔。
移动装置200可以包含一或多个惯性传感器210,所述惯性传感器收集表征移动装置200的惯性传感器测量结果。惯性传感器210提供用于确立移动装置200—以及因此穿戴或携带移动装置200的用户—在扩展现实环境中的朝向的装置。适合的惯性传感器210的实例包含但不限于加速度计、陀螺仪或用于测量移动装置200的惯性状态的另一种适合的装置。移动装置200的惯性状态可以由惯性传感器210沿笛卡尔和/或极坐标系中的多个轴线测量,以提供用于确立移动装置200的位置或朝向的指示。移动装置200还可以处理(例如随时间的推移求积分)指示从惯性传感器210获得的惯性传感器测量结果的数据,以生成对移动装置的位置或朝向的估计。如上文所讨论的,可以用纬度值、经度值或高度值指定移动装置200的位置,并且可以用相对于参考值测量的横摇值、俯仰值或偏航值指定移动装置200的朝向。
移动装置200可以包含被配置成捕获标识用户的一或多个姿势或运动(如使用用户的手或手指形成的预定姿势或者由用户的手和手臂实现的指向运动)的数字图像数据的数字相机212。数字相机212可以包括具有多个光学元件(未示出)的数字相机。光学元件可以包含一或多个用于聚焦光的镜片和/或一或多个用于将光转换成表示图像和/或视频数据的数字信号的光感测元件。作为非限制性实例,光感测元件可以包括用于将光转换成数字信号的光学拾取器、电荷耦合装置和/或光电装置。如下所述,移动装置200可以被配置成基于由数字相机212捕获的数字图像数据检测运动或手势中的一个,标识与对应的运动或手势相关联的操作并且响应于检测到的运动或手势启动所述操作的执行。例如,这种操作可以在扩展现实环境中调用、撤销或重新定位如虚拟助手等虚拟内容项。
移动装置200可以进一步包含其上存储有数据库214和指令216的非暂时性计算机可读存储媒体(“存储媒体”)211。移动装置200可以包含用于执行指令216和/或促进数据在数据库214处的存储和检索以执行计算机实施的扩展现实方法的一或多个处理器,例如处理器218。数据库214可以包含各种数据,包含上文参考图1的数据库134所描述的一些或所有数据元素。当通过显示单元208向用户显示时,数据库214还可以维护媒体内容数据220,所述媒体内容数据包含在移动装置200处建立扩展现实环境的捕获的数字视频、数字图像、数字音频或者合成的图像或视频的元素。移动装置200可以进一步以规则的预定间隔(例如“推”操作)或者响应于从移动装置200传输到XR计算系统130的请求(例如“拉”操作)从XR计算系统130接收媒体内容数据220的各部分(例如使用任何适合的通信协议通过通信接口202)。
数据库214可以包含深度图数据222,所述深度图数据包括深度图和指定通过移动装置200实例化的扩展现实环境的对应可见部分的映射函数的数据。数据库214还可以包含对象数据224,所述对象数据包含标识对象和其在对应可见部分内的位置的元数据(以及将对象的位置与深度图数据222的对应部分相关的数据)。移动装置200可以从XR计算系统130接收深度图数据222或对象数据224的各部分(例如如分别由深度映射模块166或语义分析模块168生成的)。在其它情况下,下文更详细地描述的处理器218可以执行指令216的各部分,以生成深度图数据222或对象数据224的本地部分。
进一步地,类似于上述数据库134的各部分,数据库214可以维护位置和朝向数据226的本地副本,所述位置和朝向数据标识移动装置200(和网络环境100内的其它移动装置,如移动装置102和104)的用户在扩展现实环境的对应部分中的位置和朝向。数据库214还可以维护表征扩展现实环境中用户之间的交互水平或范围的交互数据228的本地副本。数据库214可以进一步包含图形数据230和语音数据232的本地副本。在一些实例中,图形数据230的本地副本包含促进和支持由移动装置200生成(例如通过执行指令216的各部分)虚拟助手的数据。图形数据230的本地副本可以包含但不限于指定虚拟助手的视觉特性(如由移动装置200的用户选择的头像的视觉特性)的数据。进一步地,如上所述,语音数据232的本地副本可以包含促进和支持适于一旦在扩展现实环境中实例化就由虚拟助手呈现的语音(如例如地域方言或由移动装置200的用户说出的语言)的合成的数据。
另外,数据库214还可以包含手势库234和口头输入库236。手势库234可以包含标识一或多个候选手势输入(例如手势、指向运动、面部表情等)的数据。手势输入数据将候选手势输入与操作相关,所述操作如调用扩展现实环境中的虚拟助手(或其它虚拟内容项)、恢复所述虚拟助手或其它虚拟内容项或者在扩展现实环境中重新定位虚拟助手或虚拟内容项。口头输入库236可以进一步包含表示一或多个候选口头输入的文本数据和将候选口头输入与某些操作相关的另外的数据,所述操作如调用虚拟助手或虚拟内容项、撤销虚拟助手或虚拟内容项、重新定位虚拟助手或虚拟内容项或者请求日程表数据的操作。本发明主题不限于上述相关操作的实例,并且在其它情况下,手势库234和口头输入库236可以包含将通过移动装置200可检测到的任何另外的或替代性手势或口头输入与移动装置200或XR计算系统130所执行的任何另外的或替代性操作相关的数据。
指令216可以包含上文关于图1所描述的指令136的模块和/或工具中的一或多个。为简洁起见,不再重复对图1和2中均包含的共同模块和/或工具的描述。例如,指令216可以包含图像处理模块164,所述图像处理模块进而可以包含深度映射模块166和语义分析模块168。进一步地,指令216还可以包含位置确定模块170、虚拟内容生成模块172、图形模块176和语音合成模块178,如上文参考图1的指令136中的模块所描述的。
在另外的实例中,指令216还包含用于访问存储媒体211的各部分(例如媒体内容数据220)并且提取捕获的数字视频、数字图像、数字音频或合成的图像的元素的扩展现实建立模块,例如XR建立模块238。当由处理器218执行时,XR建立模块238可以使移动装置200通过显示单元208对捕获的数字视频、数字图像、数字音频或合成的图像的各部分进行渲染并呈现给用户,这在移动装置200处为用户建立了扩展现实环境。
指令216还可以包含手势检测模块240、语音识别模块242和操作模块244。在一些实例中,手势检测模块240访问通过数字相机212捕获的数字图像数据并且可以应用一或多种图像处理技术、计算机视觉算法或机器视觉算法来检测布置在数字图像数据的单帧内的人类手势。数字图像数据可以包含由用户的手指建立的手势。另外或可替代地,数字图像数据可以包含跨数字图像数据的多个帧发生的人类运动(例如用户的手臂、手或手指的指向运动)。
操作模块244可以获得指示检测到的手势或运动的数据并且基于手势库234的各部分标识与检测到的手势或运动相关联的操作。响应于标识,操作模块244可以启动由移动装置200执行关联操作。如上所述,检测到的手势或运动可以对应于来自用户的请求,以将如虚拟助手等被调用的数字内容项重新定位到扩展现实环境的另一部分。即,手势检测模块240可以检测提供关于布置在扩展现实环境中的对象的另外的信息的手势。操作模块244可以使移动装置200执行根据检测到的手势输入修改虚拟助手在扩展现实环境中的放置位置的操作。
在其它情况下,语音识别模块242可以访问音频数据,所述音频数据包含由用户说出并且通过并入移动装置200中的麦克风捕获的话语。语音识别模块242可以应用一或多种语音识别算法或自然语言处理算法来解析音频数据并且生成与说出的话语相对应的文本数据。操作模块244可以基于口头输入库236的各部分标识与生成的文本数据的全部或一部分相关联的操作并且启动由移动装置200执行所述操作。例如,生成的文本数据可以对应于用户的话语“打开虚拟助手”。操作模块244可以将话语与用户调用虚拟助手并且将虚拟助手布置在放置位置的请求相关联,所述放置位置符合扩展现实环境所施加的约束并且在上下文上相关于并且增强了用户对增强现实环境或其它扩展现实环境的探索和与其他用户的交互。
图3是根据一个实施方案的用于在扩展现实环境中动态地定位虚拟助手的实例过程300的流程图。过程300可以由在移动装置(例如图2的移动装置200)处在本地执行指令的一或多个处理器执行。过程300的某些框可以由服务器系统或其它适合的计算平台(如图1的XR计算系统130)的一或多个处理器远程地执行。因此,过程300的各个操作可以由保持在一或多个计算平台的存储媒体(如XR计算系统130的存储媒体132和/或移动装置200的存储媒体211)中的可执行指令来表示。
参考图3,移动装置200可以建立扩展现实环境,如增强现实环境(例如在框302中)。XR计算系统130可以访问存储的媒体内容数据220,所述存储的媒体内容数据包含捕获的数字视频、数字图像、数字音频或者合成的图像或视频的元素。当由处理器138执行时,内容管理模块162可以将捕获的数字视频、数字图像、数字音频或者合成的图像或视频的各部分打包成对应的数据包(data package),XR计算系统130可以跨通信网络120将所述对应的数据包传输到移动装置200。移动装置200可以接收传输的数据包(data packet)并且将捕获的数字视频、数字图像、数字音频或者合成的图像或视频的各部分存储在存储媒体211内,例如媒体内容数据220内。
当由处理器218执行时,XR建立模块238可以使移动装置200通过显示单元208对捕获的数字视频、数字图像、数字音频或合成的图像的各部分进行渲染并呈现给用户,这在移动装置200处为用户建立了增强现实环境。如上所述,用户可以通过头戴式显示器(HMD)来访问建立的增强现实环境,所述HMD可以向用户呈现建立的增强现实环境的立体视图。举例来说,如图4A所展示的,立体视图402可以包含一对立体图像,例如图像404和图像406,所述一对立体图像在通过HMD的左镜片和右镜片中的相应镜片显示给用户时建立增强现实环境的可见部分,以使用户能够感知增强现实环境中的深度。
参考回到图3,移动装置200可以接收用户输入,所述用户输入调用在增强现实环境的可见部分内的对应的放置位置处生成和呈现如虚拟助手等虚拟内容项(例如在框304中)。接收到的用户输入可以包含用户说出的话语(例如“打开虚拟助手”),所述话语通过并入移动装置200中的麦克风捕获。如上所述,语音识别模块242可以访问捕获的音频数据并且应用一或多种语音识别算法或自然语言处理算法来解析音频数据并生成与说出的话语相对应的文本数据。进一步地,操作模块244可以访问将文本数据与对应的操作相关联的信息(例如在图2的口头输入库236内)并且可以确认说出的话语表示调用虚拟助手的请求。响应于建立的请求,移动装置200可以执行本文所描述的示范性过程中的任何一个以生成虚拟助手、确定虚拟助手的符合可以由增强现实环境施加的任何约束的放置位置并且在放置位置处将虚拟助手插入到增强现实环境中。
在其它情况下,移动装置102可以跨网络120向XR计算系统130传输指定建立的请求的数据。XR计算系统130可以执行本文所描述的示范性过程中的任何一个以生成虚拟助手、确定虚拟助手的符合可以由增强现实环境(或任何其它扩展现实环境)施加的任何约束的放置位置并且跨网络120将指定生成的虚拟助手的数据和确定的放置位置传输到移动装置102。然后,移动装置102可以在增强现实环境中的放置位置处将虚拟助手显示为虚拟内容项。
本发明主题不限于当通过移动装置200检测时调用在增强现实环境中放置虚拟内容项的口头输入。在其它实例中,移动装置102的数字相机212可以捕获数字图像数据,所述数字图像数据包含由用户提供到移动装置200的手势输入,如手势或指向运动。移动装置200可以执行本文所描述的过程中的任何一个以标识手势输入、计算标识的手势输入与对虚拟助手的调用之间的相关性(例如基于存储的手势库234的各部分)并且基于相关性认识到手势输入表示调用虚拟助手的请求。进一步地,在其它实例中,用户可以向移动装置200的输入单元206(例如所述一或多个物理按钮、键盘、控制器、麦克风、指向设备和/或触敏表面)提供请求调用虚拟助手的另外的或替代性输入。
响应于检测到的请求,移动装置200或XR计算系统130可以确定访问增强现实环境的可见部分的一或多个用户的位置和朝向(例如在框306中)。所述一或多个用户可以包含操作移动装置200的第一用户(例如佩戴HMD或增强现实眼睛佩戴物的用户)和操作移动装置102、移动装置104或网络环境100中的其它移动装置中的一或多个的第二用户。如上所述,移动装置200可以基于从定位系统150(例如经由接收器204)接收的定位信号来确定移动装置自身的位置并且因此确定移动装置200的用户的位置。
进一步地,移动装置200可以确定移动装置200的朝向(即移动装置自身的朝向)。在一些实例(如眼镜)中,移动装置200的朝向与用户的朝向之间存在固定的关系。因此,移动装置200可以基于从惯性传感器210中的一或多个惯性传感器获得的惯性传感器测量结果确定移动装置200的用户的朝向。移动装置200的位置可以表示为一或多个纬度值、经度值或高度值。如图4B所展示的,移动装置200的朝向可以由横摇值(例如围绕纵轴414的角度)、俯仰值(例如围绕横轴416的角度)和偏航值(例如围绕竖轴412的角度)来表示。移动装置200的朝向建立指定移动装置200的用户在访问增强现实环境时面向的方向的向量418。在其它情况(未在图4B中展示)下,移动装置200或XR计算系统130可以基于用户身体的至少一部分(例如用户的头部或眼睛)相对于增强现实环境或移动装置200的一部分(如显示单元208的表面)的朝向来确定用户的朝向。
移动装置200还可以跨通信网络120通过通信接口202从移动装置102、移动装置104或其它移动装置(未示出)接收表征对应的位置(例如纬度值、经度值或高度值)和对应的朝向(例如横摇值、俯仰值和偏航值等)的数据。移动装置102可以进一步从XR计算系统130接收表征移动装置102、移动装置104或其它移动装置的位置和朝向的数据的全部或一部分(例如如位置和朝向数据186中维持的)。移动装置200可以将表征移动装置200、移动装置102或104和其它移动装置的位置和朝向的数据以及唯一地标识移动装置200、移动装置102或104和其它移动装置中的对应移动装置的另外的数据(例如MAC地址、互联网协议(IP)地址等)存储在数据库214的对应部分中(例如在位置和朝向数据226中)。在其它情况下,XR计算系统130可以接收表征移动装置200、移动装置102或104和其它移动装置的位置或朝向的数据并且可以将接收到的数据存储在数据库134的对应部分中(例如位置和朝向数据186中)。
移动装置200或XR计算系统130还可以标识增强现实环境的对移动装置200的用户可见的部分(例如在框308中)并且获得表征增强现实环境的可见部分的深度图数据(例如在框310中)。当由处理器138或218执行时,深度映射模块166可以接收表示增强现实环境的对移动装置200的用户可见的所述部分的图像,如图4A的立体图像404和406,并且可以执行本文所描述的实例过程的任何一个以生成增强现实环境的可见部分的深度图。移动装置200可以进一步向XR计算系统130提供表征增强现实环境的可见部分(例如立体图像404和406)的图像数据。然后,XR计算系统130可以执行深度映射模块166以生成增强现实环境的可见部分的深度图并且可以执行将生成的深度图数据存储在数据库134的一部分(例如深度图数据182)中的操作。在另外的情况下,XR计算系统130可以跨通信网络120向移动装置102传输生成的深度图。移动装置200可以执行将生成的深度图数据或者可替代地接收到的深度图数据存储在数据库214的一部分(如深度图数据222)中的操作。
如上所述,生成的或接收到的深度图可以将计算的深度值与增强现实环境的可见部分中的对应位置相关联。此技术可以在立体图像404和406中的每个立体图像中定位公共点,确定每个相应图像404和406中的点的相应位置之间的偏移(像素数)并且将深度图中所述点的深度值设置为等于确定的差值。可替代地,深度映射模块166可以建立与所述像素偏移成比例的值作为表征深度图内的特定位置的深度值。
参考回到图3,移动装置200或XR计算系统130可以标识布置在增强现实环境的可见部分内的一或多个对象(例如在框312中)。当由处理器138或218执行时,语义分析模块168可以访问表示增强现实环境的可见部分的图像(例如立体图像404和406)。语义分析模块168还可以将上述语义分析技术中的一或多种应用于访问的图像,以标识访问的图像内的物理对象、标识访问的图像内的所标识对象的位置、类型和尺寸并且因此标识所标识的物理对象在增强现实环境的可见部分内的位置和尺寸。
语义分析模块168可以将上述语义分析技术中的一或多种应用于立体图像404和406,所述立体图像对应于增强现实环境的通过显示单元208(例如HMD)对移动装置200的用户可见的所述部分。图5展示了增强现实环境的可见部分的平面图(例如如从立体图像404和406以及生成的深度图数据导出的)。如图5所展示的,应用的语义分析技术可以在增强现实环境的可见部分内标识多件家具,如沙发512、茶几514A和514B、椅子516和桌子518,以及布置在沙发512与椅子516之间的另外的用户520(例如操作移动装置102或移动装置104的用户)。移动装置200或XR计算系统130可以执行将表征标识的物理对象(例如对象类型,如家具)的语义数据以及标识的对象在增强现实环境的可见部分内的位置和尺寸存储在数据库214或134的相应部分内(例如对象数据224或184中的相应对象数据内)的操作。图5还示出了(用虚线)下文描述的用于虚拟助手的多个候选位置522、524和526。
在一些实例中,XR计算系统130可以生成表征在增强现实环境的可见部分内标识的物理对象以及标识的对象的位置和尺寸的数据的全部或一部分。移动装置200可以向XR计算系统130提供表征增强现实环境的可见部分(例如立体图像404和406)的图像数据,所述XR计算系统可以访问存储的深度图数据182并且执行语义分析模块168以标识增强现实环境的可见部分内的物理对象以及其位置和尺寸。XR计算系统130可以将表征标识的物理对象以及其对应的位置和尺寸的数据存储在对象数据184内。另外,XR计算系统130还可以跨通信网络120将存储的对象数据的各部分传输到移动装置200,例如如上所述以用于存储在对象数据224内。
当由处理器138或处理器218执行时,位置确定模块170可以基于生成的深度图数据222和标识的物理对象(以及其位置和尺寸)在增强现实环境的可见部分内为虚拟内容项建立多个候选位置(例如图5中虚拟助手的候选位置522、524和526)(例如在框314中)。位置确定模块170还可以计算表征虚拟助手在增强现实环境内的候选位置522、524和526中的每个候选位置的可行性的放置得分(例如在框316中)。
如图6A中示意性地展示的,增强现实环境的可见部分600可以包含与移动装置200的用户相对应的用户601和与移动装置102或104的用户相对应的用户602。用户601和602可以在对应位置处布置可见部分600内并且可以被朝向成面向由向量601A和602A中的相应向量指定的方向。另外,对象603(如图5的沙发512或椅子516)可以在增强现实环境内布置在用户601与602之间。进一步地,位置确定模块170可以在可见部分600内为虚拟助手建立候选位置,如图6A中的候选虚拟助手604A、604B和604C所表示的。尽管候选虚拟助手604A、604B和604C在图6A中被描绘为矩形平行六面体,但是图形模块176可以生成任何形状的虚拟助手或者使用任何头像来描绘虚拟助手。
位置确定模块170可以根据以下公式计算虚拟助手在增强现实环境的可见部分内的每个候选位置例如passt的放置得分,例如cost(passt):
举例来说并且对于候选位置中的对应候选位置,ccons的值反映了对应候选位置处存在由增强现实环境(例如如湖或悬崖等危险物)施加的物理约束。类似地,csupp的值表征布置在对应候选位置处的物理对象支撑虚拟助手的能力。如果对应候选位置布置在湖泊或其它自然危险物中,则位置确定模块170可以在无危险状况的情况下将无穷大的值分配给ccons(即ccons=∞)或比任何预期得分大得多的任何值,以指示虚拟助手不能布置在对应候选位置处。
类似地,如果对应候选位置与无法支撑虚拟助手的桌子或其它物理对象一致(例如图5的茶几514A上的候选位置526或者茶几514B或椅子516上的位置),则位置确定模块170可以将无穷大的值分配给csupp(即csupp=∞)。可替代地,如果对应候选位置与能够支撑虚拟助手的物理对象一致(例如图5的沙发512上的候选位置524或椅子516上的位置),则位置确定模块170可以将为零的值分配给csupp(即csupp=0),这指示虚拟助手可以布置在对应候选位置处并且由一致的对象支撑。由位置确定模块170分配给每个候选位置的ccons值和csupp值可以确保具有增强现实环境的可见部分的虚拟助手的最终位置对应于施加于增强现实环境中的每个用户的真实世界约束。
参考图6B-6D,cangle、cdis和cvis表示每个用户601和在每个对应候选位置处的候选虚拟助手604A的用户特定值。图6B示出了用户601与候选虚拟助手604A之间的空间关系。用户601和候选虚拟助手604A相隔距离dau。在图6C中,cangle表征候选位置处的虚拟助手相对于确定的位置处的用户的视角作为Va与Vu之间的角的函数。在图6D中,cdis表征候选虚拟助手604A的候选位置与用户601的确定位置之间的位移。基于图6B-6D中示出的关系,位置确定模块170确定cvis,指示用户601的脸对于布置在候选位置处的候选虚拟助手604A的可见性的值。
如图6B所示出的,对于每个候选位置,位置确定模块170可以为虚拟助手建立对应的朝向(例如基于横摇、俯仰和偏航的对应的建立的值)。基于为虚拟助手的建立的朝向,位置确定模块170可以计算指示在虚拟助手位于候选位置处时候选虚拟助手604A面向的方向的向量,例如va。类似地,对于布置在增强现实环境的可见部分内的每个用户601,位置确定模块170可以访问用户601的朝向数据(例如来自位置和朝向数据226的指定横摇值、俯仰值和偏航值的数据)并且计算在用户601的对应的位置处指示用户601面向的方向的向量,例如vu。
对于每一对候选位置和用户位置,位置确定模块170可以计算va与vu之间的角的值,如以度为单位测量的(例如视角)。举例来说并且参考图6B,用户601可以面向方向向量606所示出的方向,如方向向量vu所指定的,并且候选虚拟助手604A可以面向方向向量608所示出的方向,如向量va所指定的。位置确定模块170可以以度为单位计算方向向量608与606之间的差值并且可以基于图6C中示出的预定经验关系622确定用户601和与候选虚拟助手604A相关联的候选位置的cangle的对应值。
如图6C所展示的,cangle的值在va与vu的差值处于约150°到约210°的范围内时(例如当用户601和候选虚拟助手604A大致朝向彼此时)最小。另外,cangle的值在va与vu的差值接近0°或360°时(例如当用户601和候选虚拟助手604A面向同一方向或背对彼此时)最大。对于增强现实环境的可见部分内的用户和建立的候选位置的每个组合,可以重复计算用户601和候选虚拟助手604A(例如如布置在对应候选位置处的)的cangle的示范性过程。
进一步地,对于增强现实环境的可见部分内的每一对建立的候选位置和用户位置,位置确定模块170可以计算建立的候选位置和用户位置中的对应位置之间的位移dau。如图6B所展示的,位置确定模块170可以计算在增强现实环境中用户601与候选虚拟助手604A之间的位移614。位置确定模块170还可以基于图6D中示出的预定经验关系624确定用户601和与候选虚拟助手604A相关联的候选位置的cdis的对应值。如图6D所展示的,cdis的值在位移为约五到六英尺时最小并且在位移接近零或者接近并超过十五英尺时最大。
在其它情况下,位置确定模块170可以调整(或确立)用户601和候选虚拟助手604A的cdis的值,以反映候选虚拟助手604A(例如布置在候选位置处的)与布置在增强现实环境中的一或多个对象(例如图6A的对象603)之间的位移。例如,用户601可以与增强现实环境内的对象603交互,并且位置确定模块170可以访问标识对象603在增强现实环境内的位置的数据(例如数据库214的对象数据224)。位置确定模块170可以计算候选虚拟助手604A与对象603的位置之间的位移并且可以调整(或确立)用户601和候选虚拟助手604A的cdis的值以反映用户601与所述一或多个对象之间的交互。对于增强现实环境的可见部分内的用户和候选位置的每个组合,可以重复计算用户601和候选虚拟助手604A(例如如布置在对应候选位置处的)的cdis的实例过程。
另外并且对于增强现实环境的可见部分内的每一对建立的候选位置和用户位置,位置确定模块170可以基于用户的朝向(例如横摇值、俯仰值和偏航值)计算用户的视场。位置确定模块170还可以建立cvis的值,所述值对应于确定虚拟助手在布置在对应的建立的候选位置处时将会对用户可见或不可见。如图7A所展示的,位置确定模块170可以计算用户的视场702并且可以确定候选虚拟助手604A不存在于视场702内并且因此当布置在对应的建立的候选位置处时对用户不可见。鉴于确定缺乏可见性,位置确定模块170可以为用户601和与候选虚拟助手604A相关联的候选位置的cvis分配为100的值。
如图7B所展示的,位置确定模块170可以基于用户的当前朝向计算用户的另外的视场704。进一步地,位置确定模块170可以确定候选虚拟助手604A存在于另外的视场704中并且对用户可见。鉴于确定的可见性,位置确定模块170可以为用户601和与候选虚拟助手604A相关联的候选位置的cvis分配为零的值。另外,如上所述,对于增强现实环境的可见部分内的用户和候选位置的每个组合,可以重复计算用户601和候选虚拟助手604A(例如如布置在对应候选位置处的)的cvis的示范性过程。
进一步地,示范性过程不限于ccons、csupp或cvis的任何特定值或指定cangle和cdis的值的任何特定经验关系。本文所描述的示范性过程可以将任何另外的或替代性值分配给ccons、csupp或cvis或者可以根据任何另外的或替代性经验关系建立cangle和cdis的值,所述值将会适于增强虚拟环境。进一步地,尽管在图7A和7B中被描述为锥形,但是用户的视场可以由增强现实环境和显示单元208的任何适合的形状来表征。
在上述实例中,在框316中,移动装置200或XR计算系统130执行位置确定模块170,以计算虚拟助手的每个候选位置的放置得分past。计算的放置得分可以反映由增强现实环境对候选位置施加的结构约束和物理约束并且进一步地可以反映当虚拟助手被放置在每个候选位置时虚拟助手对增强现实环境中的每个用户的可见度和接近度。在下文所描述的其它情况下,计算的放置得分还可以反映增强现实环境中的每个用户之间的交互水平。
例如,如图8所展示的,增强现实环境的可见部分800可以包含用户802、806、806、808和810,所述用户中的每一个可以布置在可见部分800内的对应位置处。一组用户(如用户802、804和806)可以在可见部分800内定位在一起并且可以在访问增强现实环境的同时紧密地交互和交谈。进一步地,每个用户802、804和806的当前和历史朝向(例如如位置和朝向数据226中维持的)可以指示用户802、804和806被布置成朝着并且面向彼此,或者可替代地,用户804和806被布置成朝着并且面向用户802(例如所述组的“领导者”)。
其他用户(如用户808和810)可以被布置成远离用户802、804和806。当其他用户808和810可以监测用户802、804和806之间的谈话时,其他用户808和810可以不参与监测的谈话并且可以经历与彼此以及与用户802、804和806的有限交互。进一步地,每个用户808和810的当前和历史朝向可以指示用户808和810背对彼此以及用户802、804和806。
在框316中,位置确定模块170可以根据在增强现实环境内的交互水平的用户特定变化将权重分配给对虚拟助手或其它虚拟内容项的每个候选位置例如passt的放置得分例如cost(passt)的用户特定贡献。位置确定模块170可以根据以下公式计算每个候选位置的“经过修改的”放置得分:
为了考虑到每个用户之间的交互水平的变化,位置确定模块170可以将交互加权因子sinter应用于cangle、cdis和cvis的每个用户特定组合。位置确定模块170可以基于对捕获用户之间的交互的所存储音频数据(例如如存储在交互数据228内)的分析并且基于每个用户的当前和历史朝向确定增强现实环境的可见部分内的每个用户的sinter的值。例如,位置确定模块170可以将较大的sinter值分配给在增强现实环境的可见部分内紧密交互的用户并且将较小的sinter值分配给经历有限交互的用户。另外,基于对存储的音频和朝向数据的分析,位置确定模块170可以标识交互用户之间的小组领导并且将sinter的值分配给小组领导,所述值超过了分配给其他交互用户的sinter值。
通过基于用户特定交互水平将对候选位置的放置得分的用户特定贡献进行加权,公开的实施方案可以将虚拟助手的布置偏置在增强现实环境中与显著的用户交互水平相关联的位置。例如,通过将较大的sinter值分配给图8的交互用户802、804和806,位置确定模块170可以增加虚拟助手的建立位置将在增强现实环境的可见部分内接近用户802、804和806的可能性。将虚拟助手布置在接近高度交互的用户的位置处可以加强高度交互的用户与虚拟助手交互的能力,而无需修改对应的姿态或朝向。示范性布置和sinter的对应分配值可以将姿势或朝向的任何较大变化偏置到体验有限交互的用户,这可以促使交互水平较低的用户进一步与增强现实环境交互。
参考回到图3,当由XR计算系统130的移动装置200执行时,位置确定模块170可以确立候选位置中的一个作为虚拟内容项在增强现实环境的可见部分内的放置位置(例如在框318中)。位置确定模块170可以标识候选位置的计算的放置得分的最小值(例如cost(passt))并且标识与计算的放置得分的最小值相关联的对应候选位置。在一些实例中,位置确定模块170可以确立对应候选位置作为虚拟助手或其它虚拟内容项的放置位置如下所述:
例如,在框318中,位置确定模块170可以确定针对与候选虚拟助手604A(例如如图6A所展示的)相关联的候选位置计算的放置成本表示放置得分的最小值并且可以确立所述候选位置作为虚拟助手或其它虚拟内容项的放置位置。
在其它情况下,位置确定模块170可能无法标识与由增强现实环境施加的物理约束以及布置在增强现实环境内的用户的位置、朝向和交互水平均一致的虚拟助手的放置位置。例如,增强现实环境的对用户601可见的部分(例如所述用户的手势或口头输入调用虚拟助手)可以包含被悬崖包围的海洋。位置确定模块170可以执行本文所描述的操作中的任何一个操作,以确定虚拟助手的每个候选位置表示危险物(例如与ccons的无穷大的值相关联),并且因此,位置确定模块170被限制为防止将虚拟助手防止在增强现实环境的可见部分内。
基于此确定,位置确定模块170可以访问标识增强现实环境的先前对用户601可见的部分的所存储数据(例如如由XR计算系统130的存储媒体132或移动装置200的存储媒体211维持的)。在其它情况下,位置确定模块170还可以确定增强现实环境的与增强现实环境中的用户601相邻地(例如在用户601左边、右边或后面)布置的部分。位置确定模块170然后可以执行本文所描述的操作中的任何一个操作,以确定虚拟助手在增强现实环境的先前可见部分内或者可替代地在增强现实环境的相邻布置部分内的适合的放置位置。
进一步地,在某些情况下,位置确定模块170可以确定增强现实环境的先前可见或相邻布置部分不适于放置虚拟助手。响应于此确定,位置确定模块170可以生成错误信号,所述错误信号使移动装置200或XR计算系统130维持虚拟助手在增强现实环境内的不可见性,例如在指定的未来时间段期间或者直到检测到用户601的另外的手势或口头输入。
参考回到图3,移动装置200或XR计算系统130可以执行在增强现实环境的可见部分内的确定的放置位置处插入虚拟内容项(例如虚拟助手)的操作(例如在框320中)。在一些实例中,当由处理器138执行时,虚拟内容生成模块172可以执行本文所描述的过程中的任何一个过程以生成数字内容项,如虚拟助手的动画表示,并且可以跨网络120将生成的虚拟内容项和确定的放置位置传输到移动装置200,所述移动装置可以执行在增强现实环境内的确定的放置位置处例如通过显示单元208显示动画表示以及对应的音频内容的操作。在其它实例中,当由处理器218执行时,虚拟内容生成模块172可以执行本文所描述的过程中的任何一个过程以在本地生成数字内容项,如虚拟助手的动画表示,并且在增强现实环境内的确定的放置位置处例如通过显示单元208显示动画表示以及对应的音频内容。
虚拟内容生成模块172提供了用于在确定的放置位置将虚拟助手插入到增强现实环境中的装置。例如,虚拟内容生成模块172的图形模块176可以基于存储的数据(例如图形数据190或本地图形数据230)生成动画表示,所述数据指定了虚拟助手的某些视觉特性,如用户选择的头像的视觉特性。进一步地,虚拟内容生成模块172的语音合成模块178可以基于存储的数据(例如语音数据192或本地语音数据232)生成表示由生成的虚拟助手说出的交互式对话的各部分的音频内容。动画表示和音频内容的同时呈现可以在增强现实环境的可见部分内建立虚拟助手并且促进了移动装置200的用户与虚拟助手之间的交互。
移动装置200或XR计算系统130可以执行确定装置状态的变化(如移动装置200的位置或朝向的变化)是否触发虚拟助手在增强现实环境的可见部分内的重新定位的操作(例如在框322中)。装置状态的变化可以触发虚拟助手的重新定位或者修改增强现实环境的可见部分内的对象或用户(例如以包含新对象等)。例如,当装置状态的变化的幅值超过预定阈值量时,变化可以触发虚拟助手的重新定位。
如果移动装置200或XR计算系统130确定装置状态的变化触发了虚拟助手的重新定位(例如在框322中;是),则示范性过程300可以分支回到框308。然后,移动装置200或XR计算系统130可以基于新改变的装置状态来标识增强现实环境的对移动装置200的用户可见的部分并且执行本文所描述的过程中的任何一个过程以将虚拟助手移动到增强现实环境的对用户可见的部分的位置。可替代地,如果移动装置200或XR计算系统130确定装置状态的变化未触发虚拟助手的重新定位(例如在框324中;否),则示范性过程300可以分支回到框324,并且过程300完成。
如上所述,虚拟内容项可以包含虚拟助手的动画表示。响应于在增强现实环境的可见部分内建立虚拟助手,移动装置200的用户可以与虚拟助手交互并且向移动装置102提供指定命令、请求或查询的口头或手势输入。响应于口头输入,移动装置102可以执行上述过程的任何一个过程,以解析口头查询并获得对应于与口头输入相关联的命令、请求或查询的文本数据并且执行与文本数据相对应的操作。在一个实例中,口头输入对应于用于撤销虚拟助手(例如“移除虚拟助手”)的口头命令,并且操作模块244可以执行上述过程中的任何一个过程以从增强现实环境中移除虚拟助手。
口头输入可以进一步对应于对标识布置在增强现实环境内的某些对象或由虚拟助手提供的某些音频或图形内容的另外的信息的请求。操作模块244可以获得与发出的查询相对应的文本数据并且将文本数据的各部分打包成查询数据,移动装置200可以跨通信网络120将所述查询数据传输到XR计算系统130。在一个实例中,XR计算系统130可以接收查询数据并且执行上述过程中的任何一个过程以获得响应于查询数据的信息(例如基于本地存储的数据或从另外的计算系统160接收的信息)。XR计算系统130还可以验证获得的信息符合任选地施加的安全或隐私限制并且将获得的信息传输回到移动装置200作为对查询数据的响应。移动装置200还可以执行上述过程中的任何一个过程,以生成表示获得的信息的图形内容或音频内容(包含合成的语音)并且通过虚拟助手与用户的交互呈现生成的图形或音频内容。
本发明主题不限于当被移动装置200检测到时促进增强现实环境内用户与虚拟助手之间的交互的口头输入。移动装置200的数字相机212可以捕获数字图像数据,所述数字图像数据包含由用户提供到移动装置200的手势输入,例如手势或指向运动。例如,增强现实环境可以使用户能够探索历史悠久的城市火车站的列车棚,如纽约市现在已拆除的宾夕法尼亚车站。虚拟助手可以布置在与列车的一或多个车厢相邻的月台上并且可以提供概述车站和宾夕法尼亚州铁路的历史的合成的录音内容。然而,移动装置200的用户可以对蒸汽机车有兴趣并且可以指向月台上的蒸汽机车。数字相机212可以将指向运动捕获在对应的图像数据中。移动装置200可以在图像数据内或者基于从各种传感器单元(如IMU或其它传感器)接收的数据标识手势输入,所述传感器单元被并入移动装置200中或与其通信(例如并入用户佩戴的手套中)。如下文参考图9所述,移动装置200可以将标识的手势输入与对应的操作相关并且响应于手势输入执行对应的操作。
图9是根据一些实施方案的用于响应于检测到的手势输入在扩展现实环境中执行操作的示范性过程900的流程图。过程900可以由在移动装置(例如图2的移动装置200)处在本地执行指令的一或多个处理器执行。过程900的一些框可以由服务器系统或其它合适的计算平台(如图1的XR计算系统130)的一或多个处理器远程地执行。因此,过程900的各个操作可以通过保持在耦合到一或多个计算平台的存储媒体(如XR计算系统130的存储媒体132和/或移动装置200的存储媒体211)中的可执行指令来实施。
移动装置200或XR计算系统130可以执行检测用户提供的手势输入的操作(例如在框902中)。如图10A所展示的,移动装置的用户(例如用户601)可以通过对应的移动装置200以头戴式显示器(HMD)单元的形式访问扩展现实环境。用户601可以响应于在扩展现实环境中访问的内容在真实世界环境中执行指向运动1002。如上所述,扩展现实环境可以包含增强现实环境,所述增强现实环境使用户601能够探索宾夕法尼亚车站的列车棚,并且用户101可以执行指向运动1002,以尝试从虚拟助手1028获得关于月台上的蒸汽机车的另外的信息。
如上所述,移动装置200的数字相机212可以捕获记录指向运动1002的数字图像数据。当由移动装置200的处理器218执行时,手势检测模块240可以访问数字图像数据并且应用上述图像处理技术、计算机视觉算法或机器视觉算法中的一或多个以检测在数字图像数据的一或多个帧内的指向运动1002。进一步地,当由处理器218执行时,操作模块244可以获得指示检测到的指向运动1002的数据。基于手势库234的各部分,操作模块244可以确定指向运动1002对应于重新定位虚拟助手1028并获得表征与指向运动1002相关联的对象(例如蒸汽机车)的另外的信息的请求。
另外,移动装置200可以执行获得表征增强现实环境的通过显示单元208对用户可见的部分的深度图数据222和对象数据224的操作(例如在框904中)。例如,移动装置200可以从数据库214的对应部分(例如从深度图数据222)获得指定增强现实环境的可见部分的深度图的深度图数据。进一步地,移动装置200可以从数据库214的对象数据224获得标识布置在增强现实环境的可见部分内的对象的数据和标识所标识的对象的位置或朝向的数据。
在其它情况下,移动装置200可以跨网络120向XR计算系统130传输表征重新定位虚拟助手1028的请求的数据,如指示检测到的指向运动1002和与指向运动1002相关联的对象的数据。XR计算系统130可以从数据库134的对应部分(例如从深度图数据182)获得指定增强现实环境的可见部分的深度图的深度图数据。XR计算系统130可以从数据库134的对象数据184获得标识布置在增强现实环境的可见部分内的对象的数据和标识所标识的对象的位置或朝向的数据。
移动装置200或XR计算系统130还可以执行建立表示检测到的指向运动1002的方向的手势向量1022并且将手势向量1022投影到由增强现实环境的可见部分的深度图数据222或深度图数据182建立的深度图上的操作(例如在框906中)。例如,当由处理器218或138执行时,位置确定模块170可以确立指向运动1002的原点,如用户的肩关节或肘关节,并且可以基于用户的延伸的臂、手和/或手指的确定的对准生成手势向量1022。进一步地,位置确定模块170可以从原点延伸手势向量1022并且将手势向量投影到由增强现实环境的可见部分的深度图建立的三维空间中。
移动装置200或XR计算系统130可以标识在增强现实的可见部分内与手势向量的投影相对应的对象(例如在框908中)。基于对象数据224,当由移动装置200的处理器218执行时,位置确定模块170可以确定布置在增强现实的可见部分内的一或多个对象的位置或尺寸。在其它情况下,当由XR计算系统130的处理器138执行时,位置确定模块170可以基于对象数据184的各部分确定布置在增强现实环境的可见部分内的所述一或多个对象的位置或尺寸。位置确定模块170然后可以确定投影的手势向量与布置的对象中的一个的位置或尺寸相交并且可以确认布置的对象对应于投影的手势向量。
如图10B所展示的,位置确定模块170可以生成与检测到的指向运动1002相对应的手势向量1022并且通过由增强现实环境的可见部分的深度图数据222建立的三维空间1020来投影手势向量(通常以1024示出)。进一步地,位置确定模块170还可以确定投影的手势向量1024与布置在三维空间1020内的对象1026相交并且可以访问对象数据224的各部分以获得标识对象1026的信息,如标识对象类型的语义数据。
参考回到图9,移动装置200或XR计算系统130可以获得表征并描述在增强现实环境的可见部分内标识的对象的信息(例如在框910中)。如上所述,标识的对象可以对应于特定蒸汽机车,并且移动装置200可以执行上述过程中的任何一个过程以生成请求关于特定蒸汽机车的另外的信息的查询数据。移动装置200可以向XR计算系统130传输查询数据并且接收对描述特定蒸汽机车并且符合适用的安全和隐私限制的查询数据的响应。
进一步地,通过使用本文所描述的过程中的任何一个过程,移动装置200可以生成虚拟助手1028的动画表示以及表示描述标识的对象的信息的图形或音频内容。在其它情况下,XR计算系统130可以使用本文所描述的过程中的任何一个过程生成虚拟助手1028的动画表示以及表示描述标识的对象的信息的图形或音频内容并且可以跨网络120将动画表示和图形或音频内容传输到移动装置200。
在其它情况下,移动装置200或XR计算系统130可以执行本文所描述的过程中的任何一个过程,以在增强现实环境中为虚拟助手1028生成新的放置位置,如接近标识的对象的位置(例如在框912中)。移动装置200可以呈现在增强现实环境中的新的放置位置处的虚拟助手1028的动画表示并且呈现图形或音频内容以提供促进了用户与虚拟助手之间的交互的沉浸式体验(例如在框914中)。然后在框916中示范性过程900完成。
在上述实例中的一些实例中,由在网络环境100中操作的移动装置200、移动装置102或104或其它装置建立的扩展现实环境可以对应于包含对各种历史地段或地标(如吉萨金字塔建筑群或宾夕法尼亚站)的虚拟游览的增强现实环境。本发明主题不限于示范性环境,并且在其它情况下,移动装置200和/或XR计算系统130可以共同操作以在任何数量的另外的或替代性增强现实环境内建立虚拟助手或其它虚拟内容项。
例如,增强现实环境可以对应于包含多个地理上分散的参与者的虚拟会议地点(例如会议室)。通过使用本文所描述的过程中的任何一个过程,移动装置200和/或XR计算系统130可以共同操作以在虚拟会议地点内的位置处布置虚拟助手并且促进与参与者的交互以支持会议。
在一些情况下,参与者可以包含会议的主讲人或协调者。当计算虚拟会议地点内的每个候选位置的经过修改的放置得分时,移动装置200或XR计算系统130可以将另外的或替代性加权因子(例如,如上所述,除sinter之外或作为其替代方案)应用于与会议的主讲人或协调者相关联的cangle、cdis和cvis的组合。通过将另外的或替代性加权因子应用于每个候选位置,移动装置200或XR计算系统130可以将虚拟助手的布置偏置在虚拟会议地点内靠近会议的主讲人或协调者并且进一步加强虚拟助手与会议的主讲人或协调者之间的交互的位置。例如,移动装置200或XR计算系统130可以执行将虚拟助手呈现为布置在虚拟会议地点内的“虚拟”会议桌中间的“讲话头部(talking head)”或类似的微型对象的操作。
参与者还可以提供请求虚拟助手在增强现实环境的对应呈现区域(如虚拟会议地点内的虚拟白板)内呈现某些图形内容的口头或手势输入。提供的输入还可以请求虚拟助手执行某些动作,如启动或停止记录会议或者在增强现实环境内呈现会议的议程。虚拟助手可以接收在一或多个参与者的日程表上设置关于安排好的会议的提醒、将会议安排在日程表内、跟踪时间、征求意见或在某些时间段内消失的请求。在一些情况下,移动装置200和/或XR计算系统130可以处理口头或手势输入以标识请求的图形内容和/或请求的动作并且执行与口头或手势输入一致的操作。
另外,当布置在扩展现实环境中时,虚拟助手还可以呈现确保一或多个用户在真实世界环境中的安全和感知的音频或图形内容。例如,虚拟助手可以在增强现实环境中提供关于真实世界危险(例如障碍物、盲点、真实对象与虚拟对象之间失配、热或冷对象、电气设备等)的警告或提醒用户响应于真实世界紧急情况退出增强现实环境的警报。
如上所述,当由移动装置(例如移动装置200)或计算系统(例如XR计算系统130)执行时,扩展现实生成和呈现工具基于数字内容的某些元素定义增强现实环境,如捕获的数字视频、数字图像、数字音频内容或合成的视听内容(例如计算机生成的图像和动画内容)。这些工具可以对数字内容的元素进行部署以通过并入移动装置200中的显示单元208呈现给用户,如具有一或多个用于呈现部署的数字内容的图形元素的镜片或显示器的增强现实眼睛佩戴物(例如眼镜或眼罩)。例如,增强现实眼睛佩戴物可以将图形元素显示为叠加在通过镜片可看见的真实世界对象之上的增强现实层,从而加强用户与增强现实环境交互并探索增强现实环境的能力。
移动装置200还可以捕获请求在扩展现实环境内放置如虚拟助手等虚拟内容项的手势或口头输入。例如并且响应于捕获的手势或口头输入,移动装置200或XR计算系统130可以执行本文所描述的示范性过程的任何一个以生成虚拟内容项、标识虚拟内容项的符合可以由扩展现实环境施加的任何约束的放置位置并且在放置位置处将生成的虚拟内容项插入到扩展现实环境中。如上所述,数字内容项可以包含虚拟助手,所述虚拟助手在被渲染以呈现于增强现实环境中时可以与用户交互并且引发用户对移动装置200的另外的手势或口头查询。
在其它实例中,当由移动装置200或XR计算系统130执行时,这些工具中的一或多个可以基于合成的视听内容的某些元素(例如单独地或结合捕获的数字视听内容的某些元素)定义虚拟现实环境。定义的虚拟现实环境表示对真实世界环境或情形的人工、计算机生成的模拟或重建,并且工具可以通过移动装置200的头戴式显示器(HMD)(如用户可佩戴的虚拟现实(VR)头戴式耳机)来部署合成或捕获的视听内容的元素。
在一些情况下,虚拟现实环境可以对应于虚拟体育赛事(例如网球比赛或高尔夫球锦标赛),当通过可佩戴VR头戴式耳机呈现给用户时,所述虚拟体育赛事提供了使用户沉浸于虚拟体育赛事中并且允许用户感知虚拟体育赛事的第一手体验的视觉和听觉刺激。在其它情况下,虚拟环境可以对应于虚拟游览,当通过可穿戴VR头戴式耳机呈现给用户时,所述虚拟游览使用户能够探索现已消失的历史地标或观察具有重要意义的历史事件,如整个古代的军事行动。
移动装置200还可以捕获请求在虚拟现实环境或增强虚拟环境内放置如虚拟助手等虚拟内容项的手势或口头输入。例如,响应于捕获的手势或口头输入—所述捕获的手势或口头输入请求虚拟现实环境或增强虚拟环境内的虚拟助手—移动装置200或XR计算系统130可以确定虚拟现实环境或增强虚拟环境的通过VR头戴式耳机当前对用户可见的部分。基于确定的可见部分,移动装置200或XR计算系统130可以执行本文所描述的示范性过程中的任何一个以生成虚拟助手、标识虚拟助手的符合可以由虚拟现实环境或增强虚拟环境施加的任何限制的放置位置并且在放置位置处将生成的虚拟助手插入到虚拟现实环境或增强虚拟环境中。
如上所述,当被渲染以呈现于增强现实环境、虚拟现实环境或增强虚拟环境中时,虚拟助手可以与用户交互并且引发用户对移动装置200的另外的手势或口头查询。例如,虚拟助手可以在虚拟体育赛事中充当虚拟教练,所述虚拟教练提供反映用户对虚拟体育赛事的观察或参与(并且进一步地可以转化为用户对真实世界体育赛事的参与)的输入。在其它实例中,虚拟助手可以在虚拟游览中充当虚拟导游,所述虚拟导游响应于用户查询提供关于虚拟现实环境内的某些对象或个体的另外的信息。
另外,在一些实例中,执行的增强现实工具、增强虚拟工具和虚拟现实工具还可以定义其它虚拟环境并且执行在这些定义的虚拟环境中生成和定位虚拟助手的操作。例如,当由移动装置200或XR计算系统130执行时,这些工具可以定义一或多个将虚拟现实环境和增强现实环境的元素组合并促进不同程度的人机交互的扩展现实环境。
举例来说,移动装置200或XR计算系统130可以基于从整合到移动装置200中或与其通信的传感器接收的数据选择捕获的或合成的视听内容的元素以呈现于扩展现实环境内。这些传感器的实例包含但不限于能够确立周围环境温度的温度传感器或能够确立用户的生物计量特性(如脉冲或体温)的生物计量传感器。然后,这些工具可以将合成或捕获的视听内容的元素呈现为叠加在通过镜片可看见的真实世界对象之上的增强现实层,从而加强用户以适应性地反映用户的环境或物理状况的方式与扩展现实环境交互并探索扩展现实环境的能力。
本文所描述的方法和系统可以至少部分地以计算机实施的进程和用于实践公开的进程的设备的形式体现。公开的方法还可以至少部分地以用计算机程序代码编码的有形的非暂时性机器可读存储媒体的形式体现。媒体可以包含例如随机存取存储器(RAM)、只读存储器(ROM)、光盘(CD)-ROM、数字通用光盘(DVD)-ROM、“BLUE-RAY DISC”TM(BD)-ROM、硬盘驱动器、闪存或任何其它非暂时性机器可读存储媒体。当计算机程序代码被加载到计算机中并由计算机执行时,计算机成为用于实践所述方法的设备。所述方法还可以至少部分地以计算机的形式体现,计算机程序代码被加载到所述计算机中或由所述计算机执行,使得计算机成为用于实践所述方法的专用计算机。当在通用处理器上实施时,计算机程序代码段对处理器进行配置以创建特定逻辑电路。所述方法可以至少部分地在用于执行所述方法的专用集成电路中体现。
已经依据示范性实施例对本发明主题进行了描述。由于示范性实施例仅是实例,因此所要求的发明不限于这些实施例。在不脱离所要求的主题的精神的情况下,可以进行改变和修改。权利要求书旨在涵盖此类改变和修改。
Claims (30)
1.一种计算机实施的扩展现实方法,其包括:
由一或多个处理器确定第一用户在扩展现实环境中的位置和朝向;
由所述一或多个处理器确定第二用户在所述扩展现实环境中的位置和朝向;
由所述一或多个处理器至少部分地基于所述第一用户和所述第二用户的确定的位置和朝向确定虚拟内容项在所述扩展现实环境中的放置位置;以及
在确定的放置位置将所述虚拟内容项插入到所述扩展现实环境中。
2.根据权利要求1所述的计算机实施的扩展现实方法,其中:
所述第一用户的移动装置执行所述计算机实施的扩展现实方法;
确定所述第二用户的所述位置和所述定向包括接收所述第二用户的所述位置或所述朝向;并且
将所述虚拟内容项插入到所述扩展现实环境中包括向所述第一用户显示在所述扩展现实环境中在所述确定的放置位置的所述虚拟内容项。
3.根据权利要求2所述的计算机实施的扩展现实方法,其中:
所述第一用户的所述装置包括显示器;
所述方法进一步包括在所述显示器上显示建立所述扩展现实环境的数字内容;并且
显示所述扩展现实环境中的所述虚拟内容项包括在所述显示器上显示在所述确定的放置位置的所述虚拟内容项。
4.根据权利要求1所述的计算机实施的扩展现实方法,其中:
计算系统执行所述计算机实施的扩展现实方法,所述计算系统跨通信网络与所述第一用户的第一装置和所述第二用户的第二装置通信;
确定所述第一用户的所述位置和所述朝向包括接收所述第一用户的所述位置或所述朝向;
确定所述第二用户的所述位置和所述朝向包括接收所述第二用户的所述位置或所述朝向;并且
将所述虚拟内容项插入到所述扩展现实环境中包括通过所述通信网络向所述第一装置或所述第二装置传输所述确定的放置位置。
5.根据权利要求1所述的计算机实施的扩展现实方法,其中:
所述第一用户的所述朝向包括所述第一用户的身体的至少一部分的朝向或者所述第一用户的第一装置的朝向;并且
所述第二用户的所述朝向包括所述第二用户的身体的至少一部分的朝向或者所述第二用户的第二装置的朝向。
6.根据权利要求1所述的计算机实施的扩展现实方法,其中所述虚拟内容项包括虚拟助手,所述虚拟助手包括头像或动画数字内容项。
7.根据权利要求1所述的计算机实施的扩展现实方法,其中确定所述虚拟内容项在所述扩展现实环境中的所述位置包括:
标识所述虚拟内容项在所述扩展现实环境中的多个候选放置位置;
基于所述第一用户和所述第二用户的所述确定的位置和朝向计算所述候选位置中的每个候选位置的相应放置得分;以及
基于计算的放置得分确立所述候选位置中的一个候选位置作为所述确定的放置位置。
8.根据权利要求7所述的计算机实施的扩展现实方法,其进一步包括:
获得表征布置在所述扩展现实环境中的对象的数据,获得的数据包括所述对象的类型和所述对象在所述扩展现实环境中的位置或尺寸;以及
基于所述第一用户和所述第二用户的所述确定的位置和朝向并且基于所述扩展现实环境中的所述对象的所述类型、所述位置或所述尺寸计算所述候选位置中的每个候选位置的所述放置得分。
9.根据权利要求7所述的计算机实施的扩展现实方法,其中计算所述放置得分包括基于以下计算所述候选位置中的对应的候选位置的相应放置得分:在所述扩展现实环境中所述对应的候选位置与所述第一用户和所述第二用户的所述位置之间的位移。
10.根据权利要求7所述的计算机实施的扩展现实方法,其中计算所述放置得分进一步基于:所述虚拟内容项相对于所述第一用户和所述第二用户的所述确定的朝向的视角;或者在所述扩展现实环境中所述对应的候选位置与所述第一用户和所述第二用户的相应位置之间的位移。
11.根据权利要求7所述的计算机实施的扩展现实方法,其进一步包括:
获得表征所述扩展现实环境的对所述第一用户可见的可见部分的深度图的深度图数据;
获得指示所述扩展现实环境的所述可见部分的语义场景分析的输出的语义数据,所述语义数据标识布置在所述扩展现实环境的所述可见部分内的物理对象的类型、位置或尺寸;以及
基于获得的深度图数据或获得的语义数据标识所述虚拟内容项在所述扩展现实环境中的所述多个候选放置位置。
12.根据权利要求1所述的计算机实施的扩展现实方法,其进一步包括:
检测所述第一用户的手势输入;
基于检测到的手势输入执行修改所述虚拟内容项在所述扩展现实环境中的所述确定的放置位置的操作。
13.根据权利要求1所述的计算机实施的扩展现实方法,其进一步包括:
检测所述第一用户的手势输入;
响应于检测到的手势输入将手势向量投影到所述扩展现实环境的对所述第一用户可见的可见部分的深度图上;
标识与投影的手势向量相关联的对象;以及
执行向所述第一用户呈现与标识的对象相关联的数字内容的操作。
14.根据权利要求1所述的计算机实施的扩展现实方法,其进一步包括:
检测所述第一用户的手势或口头输入,所述手势或口头输入请求由所述虚拟内容项执行动作;
基于检测到的手势或口头输入标识所述第一用户请求的动作;以及
执行与标识的动作一致的操作。
15.一种用于提供扩展现实环境的设备,其包括:
存储指令的非暂时性机器可读存储媒体;以及
至少一个处理器,所述至少一个处理器被配置成执行所述指令以:
确定第一用户在扩展现实环境中的位置和朝向;
确定第二用户在所述扩展现实环境中的位置和朝向;
至少部分地基于所述第一用户和所述第二用户的确定的位置和朝向确定虚拟内容项在所述扩展现实环境中的放置位置;并且
执行在确定的放置位置将所述虚拟内容项插入到所述扩展现实环境中的操作。
16.根据权利要求15所述的设备,其中:
所述设备包括所述第一用户的移动装置;并且
所述至少一个处理器进一步被配置成执行所述指令以:
接收所述第二用户的所述位置或朝向;
向所述第一用户显示在所述扩展现实环境中在所述确定的放置位置的所述虚拟内容项。
17.根据权利要求16所述的设备,其中:
所述移动装置包括耦接到所述至少一个处理器的显示器;并且
所述至少一个处理器进一步被配置成执行所述指令以:
在所述显示器上显示建立所述扩展现实环境的数字内容;并且
在所述显示器上显示在所述确定的放置位置的所述虚拟内容项。
18.根据权利要求15所述的设备,其中:
所述装置包括计算系统,所述计算系统跨通信网络与所述第一用户的第一装置和所述第二用户的第二装置通信;并且
所述至少一个处理器进一步被配置成执行所述指令以:
接收所述第一用户的所述位置或朝向;
接收所述第二用户的所述位置或朝向;并且
跨所述通信网络向所述第一装置或所述第二装置传输所述确定的放置位置。
19.根据权利要求15所述的设备,其中:
所述第一用户的所述朝向包括所述第一用户的身体的至少一部分的朝向或者由所述第一用户操作或穿戴的第一装置的朝向;并且
所述第二用户的所述朝向包括所述第二用户的身体的至少一部分的朝向或者由所述第二用户操作或穿戴的第二装置的朝向。
20.根据权利要求15所述的设备,其中所述虚拟内容项包括虚拟助手,所述虚拟助手包括头像或动画数字内容项。
21.根据权利要求15所述的设备,其中所述至少一个处理器进一步被配置成:
标识所述虚拟内容项在所述扩展现实环境中的多个候选放置位置;
基于所述第一用户和所述第二用户的所述确定的位置和朝向计算所述候选位置中的每个候选位置的相应放置得分;并且
基于所述计算的放置得分选择所述候选位置中的一个候选位置作为所述确定的放置位置。
22.根据权利要求21所述的设备,其中所述至少一个处理器进一步被配置成:
获得标识和表征布置在所述扩展现实环境中的对象的数据,获得的数据包括所述对象的类型和所述对象在所述扩展现实环境中的位置或尺寸;并且
基于所述第一用户和所述第二用户的所述确定的位置和朝向并且基于所述扩展现实环境中的所述对象的所述类型、所述位置或所述尺寸计算所述候选位置中的每个候选位置的所述放置得分。
23.根据权利要求21所述的设备,其中所述至少一个处理器进一步被配置成基于以下计算所述候选位置中的对应的候选位置的放置得分:在所述扩展现实环境中所述对应的候选位置与所述第一用户的所述位置之间的位移。
24.根据权利要求21所述的设备,其中所述至少一个处理器进一步被配置成:
基于以下计算所述候选位置中的对应的候选位置的放置得分:所述虚拟内容项相对于所述第一用户和所述第二用户的所述确定的朝向的视角;或者在所述扩展现实环境中所述对应的候选位置与所述第一用户和所述第二用户的相应位置之间的位移。
25.根据权利要求21所述的设备,其中所述至少一个处理器进一步被配置成:
获得表征所述扩展现实环境的对所述第一用户可见的可见部分的深度图的深度图数据;
获得指示所述扩展现实环境的所述可见部分的语义场景分析的输出的语义数据,所述语义数据标识布置在所述扩展现实环境的所述可见部分内的物理对象的类型、位置或尺寸;并且
基于获得的深度图数据或获得的语义数据标识所述虚拟内容项在所述扩展现实环境中的所述多个候选放置位置。
26.根据权利要求15所述的设备,其中所述至少一个处理器进一步被配置成:
检测所述第一用户的手势输入;
基于检测到的手势输入执行修改所述虚拟内容项在所述扩展现实环境中的所述确定放置位置的操作。
27.根据权利要求15所述的设备,其中所述至少一个处理器进一步被配置成:
检测所述第一用户的手势输入;
响应于检测到的手势输入将手势向量投影到所述扩展现实环境的对所述第一用户可见的可见部分的深度图上;
标识与投影的手势向量相关联的对象;并且
执行向所述第一用户呈现与标识的对象相关联的内容的操作。
28.根据权利要求15所述的设备,其中所述至少一个处理器进一步被配置成:
检测所述第一用户的手势或口头输入,所述手势或口头输入请求由所述虚拟内容项执行动作;
基于检测到的手势或口头输入标识所述第一用户请求的动作;并且
执行与标识的动作一致的操作。
29.一种用于提供扩展现实环境的设备,其包括:
用于确定第一用户在扩展现实环境中的位置和朝向的装置;
用于确定第二用户在所述扩展现实环境中的位置和朝向的装置;
用于至少部分地基于所述第一用户和所述第二用户的确定的位置和朝向确定虚拟内容项在所述扩展现实环境中的放置位置的装置;以及
用于在确定的放置位置将所述虚拟内容项插入到所述扩展现实环境中的装置。
30.一种非暂时性计算机可读存储媒体,其用处理器可执行程序代码编码,所述处理器可执行程序代码包括:
用于确定第一用户在扩展现实环境中的位置和朝向的程序代码;
用于确定第二用户在所述扩展现实环境中的位置和朝向的程序代码;
用于至少部分地基于所述第一用户和所述第二用户的确定的位置和朝向确定虚拟内容项在所述扩展现实环境中的放置位置的程序代码;以及
用于在所述确定的放置位置将所述虚拟内容项插入到所述扩展现实环境中的程序代码。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/655,762 | 2017-07-20 | ||
US15/655,762 US10304239B2 (en) | 2017-07-20 | 2017-07-20 | Extended reality virtual assistant |
PCT/US2018/038509 WO2019018098A1 (en) | 2017-07-20 | 2018-06-20 | VIRTUAL ASSISTANT WITH EXTENDED REALITY |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110892364A true CN110892364A (zh) | 2020-03-17 |
Family
ID=62986167
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201880047576.XA Pending CN110892364A (zh) | 2017-07-20 | 2018-06-20 | 扩展现实虚拟助手 |
Country Status (4)
Country | Link |
---|---|
US (5) | US10304239B2 (zh) |
EP (1) | EP3655845A1 (zh) |
CN (1) | CN110892364A (zh) |
WO (1) | WO2019018098A1 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113535064A (zh) * | 2021-09-16 | 2021-10-22 | 北京亮亮视野科技有限公司 | 虚拟标签标记方法、装置、电子设备及存储介质 |
CN113760089A (zh) * | 2020-06-05 | 2021-12-07 | 候本株式会社 | 基于多模态界面的扩展现实系统 |
US20230170976A1 (en) * | 2021-11-30 | 2023-06-01 | Qualcomm Incorporated | Beam selection and codebook learning based on xr perception |
Families Citing this family (64)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10410320B2 (en) * | 2016-09-30 | 2019-09-10 | Sony Interactive Entertainment Inc. | Course profiling and sharing |
US10304239B2 (en) | 2017-07-20 | 2019-05-28 | Qualcomm Incorporated | Extended reality virtual assistant |
US10608965B2 (en) * | 2017-11-29 | 2020-03-31 | International Business Machines Corporation | Augmented conversational agent |
TWI662438B (zh) * | 2017-12-27 | 2019-06-11 | 緯創資通股份有限公司 | 防止危險自拍之方法、裝置、及儲存媒體 |
CN108363556A (zh) * | 2018-01-30 | 2018-08-03 | 百度在线网络技术(北京)有限公司 | 一种基于语音与增强现实环境交互的方法和系统 |
US10838600B2 (en) | 2018-02-12 | 2020-11-17 | Wayfair Llc | Systems and methods for providing an extended reality interface |
US11847773B1 (en) | 2018-04-27 | 2023-12-19 | Splunk Inc. | Geofence-based object identification in an extended reality environment |
US11145123B1 (en) * | 2018-04-27 | 2021-10-12 | Splunk Inc. | Generating extended reality overlays in an industrial environment |
US10530465B2 (en) * | 2018-05-30 | 2020-01-07 | Motorola Solutions, Inc. | Apparatus, system and method for generating a virtual assistant on a repeater |
US10777202B2 (en) | 2018-06-19 | 2020-09-15 | Verizon Patent And Licensing Inc. | Methods and systems for speech presentation in an artificial reality world |
US10445942B1 (en) * | 2018-06-29 | 2019-10-15 | Microsoft Technology Licensing, Llc | Ranking of hologram placement locations based on unexposed information |
CA3101001A1 (en) * | 2018-07-19 | 2020-01-23 | Soul Machines Limited | Machine interaction |
GB2576213A (en) * | 2018-08-10 | 2020-02-12 | Sony Corp | A method for mapping an object to a location in virtual space |
US10484811B1 (en) | 2018-09-10 | 2019-11-19 | Verizon Patent And Licensing Inc. | Methods and systems for providing a composite audio stream for an extended reality world |
US10810416B2 (en) * | 2018-12-14 | 2020-10-20 | Palo Alto Reseach Center Incorporated | Method and system for facilitating dynamic materialization for real-world interaction with virtual reality |
US10990171B2 (en) * | 2018-12-27 | 2021-04-27 | Facebook Technologies, Llc | Audio indicators of user attention in AR/VR environment |
US11625806B2 (en) * | 2019-01-23 | 2023-04-11 | Qualcomm Incorporated | Methods and apparatus for standardized APIs for split rendering |
US11222642B2 (en) * | 2019-01-25 | 2022-01-11 | Avaya Inc. | Audio recording optimization for calls serviced by an artificial intelligence agent |
US11853533B1 (en) * | 2019-01-31 | 2023-12-26 | Splunk Inc. | Data visualization workspace in an extended reality environment |
US11644940B1 (en) | 2019-01-31 | 2023-05-09 | Splunk Inc. | Data visualization in an extended reality environment |
US11417045B2 (en) * | 2019-04-08 | 2022-08-16 | Battelle Memorial Institute | Dialog-based testing using avatar virtual assistant |
US11094133B2 (en) | 2019-06-24 | 2021-08-17 | Magic Leap, Inc. | Virtual location selection for virtual content |
US11159766B2 (en) | 2019-09-16 | 2021-10-26 | Qualcomm Incorporated | Placement of virtual content in environments with a plurality of physical participants |
US11340756B2 (en) | 2019-09-27 | 2022-05-24 | Apple Inc. | Devices, methods, and graphical user interfaces for interacting with three-dimensional environments |
US20210097776A1 (en) * | 2019-09-28 | 2021-04-01 | Apple Inc. | Devices, Methods, and Graphical User Interfaces for Interacting with Three-Dimensional Environments |
US11086476B2 (en) * | 2019-10-23 | 2021-08-10 | Facebook Technologies, Llc | 3D interactions with web content |
US11321926B2 (en) * | 2019-12-18 | 2022-05-03 | Apple Inc. | Method and device for content placement |
US11373342B2 (en) * | 2020-01-14 | 2022-06-28 | Sony Interactive Entertainment Inc. | Social and scene target awareness and adaptation of an occlusion system for increased social and scene interaction in an optical see-through augmented reality head mounted display |
US11445332B2 (en) * | 2020-02-28 | 2022-09-13 | Disney Enterprises, Inc. | Location-based interactive storytelling |
US11354869B2 (en) * | 2020-03-17 | 2022-06-07 | Apple Inc. | XR preferred movement along planes |
US11176752B1 (en) * | 2020-03-31 | 2021-11-16 | Amazon Technologies, Inc. | Visualization of a three-dimensional (3D) model in augmented reality (AR) |
US11810595B2 (en) | 2020-04-16 | 2023-11-07 | At&T Intellectual Property I, L.P. | Identification of life events for virtual reality data and content collection |
US11217029B2 (en) * | 2020-04-16 | 2022-01-04 | At&T Intellectual Property I, L.P. | Facilitation of augmented reality-based space assessment |
WO2021247940A1 (en) * | 2020-06-03 | 2021-12-09 | Mr Fun, Llc | Location based augmented reality gaming system |
US11567625B2 (en) | 2020-09-24 | 2023-01-31 | Apple Inc. | Devices, methods, and graphical user interfaces for interacting with three-dimensional environments |
US11615596B2 (en) | 2020-09-24 | 2023-03-28 | Apple Inc. | Devices, methods, and graphical user interfaces for interacting with three-dimensional environments |
WO2022074294A1 (en) | 2020-10-06 | 2022-04-14 | Nokia Technologies Oy | Network-based spatial computing for extended reality (xr) applications |
US10952006B1 (en) | 2020-10-20 | 2021-03-16 | Katmai Tech Holdings LLC | Adjusting relative left-right sound to provide sense of an avatar's position in a virtual space, and applications thereof |
US11457178B2 (en) | 2020-10-20 | 2022-09-27 | Katmai Tech Inc. | Three-dimensional modeling inside a virtual video conferencing environment with a navigable avatar, and applications thereof |
US11076128B1 (en) | 2020-10-20 | 2021-07-27 | Katmai Tech Holdings LLC | Determining video stream quality based on relative position in a virtual space, and applications thereof |
US10979672B1 (en) | 2020-10-20 | 2021-04-13 | Katmai Tech Holdings LLC | Web-based videoconference virtual environment with navigable avatars, and applications thereof |
US11095857B1 (en) | 2020-10-20 | 2021-08-17 | Katmai Tech Holdings LLC | Presenter mode in a three-dimensional virtual conference space, and applications thereof |
US11070768B1 (en) | 2020-10-20 | 2021-07-20 | Katmai Tech Holdings LLC | Volume areas in a three-dimensional virtual conference space, and applications thereof |
US11644890B2 (en) * | 2021-02-11 | 2023-05-09 | Qualcomm Incorporated | Image capturing in extended reality environments |
US20230040573A1 (en) * | 2021-03-24 | 2023-02-09 | AbdurRahman Bin Shahzad Bhatti | Data systems for wearable augmented reality apparatus |
US11743430B2 (en) | 2021-05-06 | 2023-08-29 | Katmai Tech Inc. | Providing awareness of who can hear audio in a virtual conference, and applications thereof |
US11184362B1 (en) | 2021-05-06 | 2021-11-23 | Katmai Tech Holdings LLC | Securing private audio in a virtual conference, and applications thereof |
US20220375464A1 (en) * | 2021-05-19 | 2022-11-24 | TRANSFR Inc. | Systems and methods for providing programmable, personalized, and conversational coaching in extended reality learning experience |
US11765320B2 (en) * | 2021-08-11 | 2023-09-19 | Google Llc | Avatar animation in virtual conferencing |
EP4202611A1 (en) * | 2021-12-27 | 2023-06-28 | Koninklijke KPN N.V. | Rendering a virtual object in spatial alignment with a pose of an electronic device |
US20230266830A1 (en) * | 2022-02-22 | 2023-08-24 | Microsoft Technology Licensing, Llc | Semantic user input |
US11876630B1 (en) | 2022-07-20 | 2024-01-16 | Katmai Tech Inc. | Architecture to control zones |
US11928774B2 (en) | 2022-07-20 | 2024-03-12 | Katmai Tech Inc. | Multi-screen presentation in a virtual videoconferencing environment |
US11651108B1 (en) | 2022-07-20 | 2023-05-16 | Katmai Tech Inc. | Time access control in virtual environment application |
US11700354B1 (en) | 2022-07-21 | 2023-07-11 | Katmai Tech Inc. | Resituating avatars in a virtual environment |
US11741664B1 (en) | 2022-07-21 | 2023-08-29 | Katmai Tech Inc. | Resituating virtual cameras and avatars in a virtual environment |
US11711494B1 (en) | 2022-07-28 | 2023-07-25 | Katmai Tech Inc. | Automatic instancing for efficient rendering of three-dimensional virtual environment |
US11593989B1 (en) | 2022-07-28 | 2023-02-28 | Katmai Tech Inc. | Efficient shadows for alpha-mapped models |
US11562531B1 (en) | 2022-07-28 | 2023-01-24 | Katmai Tech Inc. | Cascading shadow maps in areas of a three-dimensional environment |
US11704864B1 (en) | 2022-07-28 | 2023-07-18 | Katmai Tech Inc. | Static rendering for a combination of background and foreground objects |
US11776203B1 (en) | 2022-07-28 | 2023-10-03 | Katmai Tech Inc. | Volumetric scattering effect in a three-dimensional virtual environment with navigable video avatars |
US11956571B2 (en) | 2022-07-28 | 2024-04-09 | Katmai Tech Inc. | Scene freezing and unfreezing |
US11682164B1 (en) | 2022-07-28 | 2023-06-20 | Katmai Tech Inc. | Sampling shadow maps at an offset |
US11748939B1 (en) | 2022-09-13 | 2023-09-05 | Katmai Tech Inc. | Selecting a point to navigate video avatars in a three-dimensional environment |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120113223A1 (en) * | 2010-11-05 | 2012-05-10 | Microsoft Corporation | User Interaction in Augmented Reality |
CN104054039A (zh) * | 2012-01-12 | 2014-09-17 | 高通股份有限公司 | 具有声音和几何分析的扩增现实 |
US20140368537A1 (en) * | 2013-06-18 | 2014-12-18 | Tom G. Salter | Shared and private holographic objects |
US20160025981A1 (en) * | 2014-07-25 | 2016-01-28 | Aaron Burns | Smart placement of virtual objects to stay in the field of view of a head mounted display |
WO2017021902A1 (en) * | 2015-08-03 | 2017-02-09 | Smartvizs Private Limited | System and method for gesture based measurement of virtual reality space |
Family Cites Families (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3839121A (en) | 1969-08-05 | 1974-10-01 | Veba Chemie Ag | Method of bonding using melt adhesives based on polyamides |
US6034652A (en) * | 1996-03-22 | 2000-03-07 | Interval Research Corporation | Attention manager for occupying the peripheral attention of a person in the vicinity of a display device |
US7319992B2 (en) | 2000-09-25 | 2008-01-15 | The Mission Corporation | Method and apparatus for delivering a virtual reality environment |
SE0203908D0 (sv) * | 2002-12-30 | 2002-12-30 | Abb Research Ltd | An augmented reality system and method |
US7394459B2 (en) * | 2004-04-29 | 2008-07-01 | Microsoft Corporation | Interaction between objects and a virtual environment display |
GB2456748A (en) | 2007-10-22 | 2009-07-29 | Nortel Networks Ltd | Contact centre queue management |
US8436789B2 (en) | 2009-01-16 | 2013-05-07 | Microsoft Corporation | Surface puck |
US8839121B2 (en) | 2009-05-06 | 2014-09-16 | Joseph Bertolami | Systems and methods for unifying coordinate systems in augmented reality applications |
US20100306825A1 (en) | 2009-05-27 | 2010-12-02 | Lucid Ventures, Inc. | System and method for facilitating user interaction with a simulated object associated with a physical location |
JP2011095797A (ja) * | 2009-10-27 | 2011-05-12 | Sony Corp | 画像処理装置、画像処理方法及びプログラム |
EP2499550A1 (en) | 2009-11-10 | 2012-09-19 | Selex Sistemi Integrati S.p.A. | Avatar-based virtual collaborative assistance |
US9645394B2 (en) | 2012-06-25 | 2017-05-09 | Microsoft Technology Licensing, Llc | Configured virtual environments |
US9202313B2 (en) | 2013-01-21 | 2015-12-01 | Microsoft Technology Licensing, Llc | Virtual interaction with image projection |
JP2014174589A (ja) | 2013-03-06 | 2014-09-22 | Mega Chips Corp | 拡張現実システム、プログラムおよび拡張現実提供方法 |
US9230368B2 (en) * | 2013-05-23 | 2016-01-05 | Microsoft Technology Licensing, Llc | Hologram anchoring and dynamic positioning |
US20150123966A1 (en) | 2013-10-03 | 2015-05-07 | Compedia - Software And Hardware Development Limited | Interactive augmented virtual reality and perceptual computing platform |
US9524588B2 (en) | 2014-01-24 | 2016-12-20 | Avaya Inc. | Enhanced communication between remote participants using augmented and virtual reality |
US20150262412A1 (en) * | 2014-03-17 | 2015-09-17 | Qualcomm Incorporated | Augmented reality lighting with dynamic geometry |
US9779544B2 (en) * | 2014-12-23 | 2017-10-03 | Google Inc. | Labeling for three-dimensional occluded shapes |
US9911232B2 (en) * | 2015-02-27 | 2018-03-06 | Microsoft Technology Licensing, Llc | Molding and anchoring physically constrained virtual environments to real-world environments |
US10684485B2 (en) * | 2015-03-06 | 2020-06-16 | Sony Interactive Entertainment Inc. | Tracking system for head mounted display |
EP3106963B1 (en) * | 2015-06-16 | 2019-07-24 | Nokia Technologies Oy | Mediated reality |
EP3335418A1 (en) | 2015-08-14 | 2018-06-20 | PCMS Holdings, Inc. | System and method for augmented reality multi-view telepresence |
US10384130B2 (en) * | 2016-08-05 | 2019-08-20 | AR Sports LLC | Fantasy sport platform with augmented reality player acquisition |
US10271033B2 (en) | 2016-10-31 | 2019-04-23 | Verizon Patent And Licensing Inc. | Methods and systems for generating depth data by converging independently-captured depth maps |
US10304239B2 (en) | 2017-07-20 | 2019-05-28 | Qualcomm Incorporated | Extended reality virtual assistant |
US11159766B2 (en) | 2019-09-16 | 2021-10-26 | Qualcomm Incorporated | Placement of virtual content in environments with a plurality of physical participants |
-
2017
- 2017-07-20 US US15/655,762 patent/US10304239B2/en active Active
-
2018
- 2018-06-20 CN CN201880047576.XA patent/CN110892364A/zh active Pending
- 2018-06-20 EP EP18743889.0A patent/EP3655845A1/en active Pending
- 2018-06-20 WO PCT/US2018/038509 patent/WO2019018098A1/en unknown
-
2019
- 2019-04-05 US US16/376,857 patent/US10825237B2/en active Active
-
2020
- 2020-09-24 US US17/031,315 patent/US11200729B2/en active Active
-
2021
- 2021-11-23 US US17/456,370 patent/US11727625B2/en active Active
-
2023
- 2023-05-04 US US18/312,107 patent/US20230274496A1/en active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120113223A1 (en) * | 2010-11-05 | 2012-05-10 | Microsoft Corporation | User Interaction in Augmented Reality |
CN104054039A (zh) * | 2012-01-12 | 2014-09-17 | 高通股份有限公司 | 具有声音和几何分析的扩增现实 |
US20140368537A1 (en) * | 2013-06-18 | 2014-12-18 | Tom G. Salter | Shared and private holographic objects |
US20160025981A1 (en) * | 2014-07-25 | 2016-01-28 | Aaron Burns | Smart placement of virtual objects to stay in the field of view of a head mounted display |
WO2017021902A1 (en) * | 2015-08-03 | 2017-02-09 | Smartvizs Private Limited | System and method for gesture based measurement of virtual reality space |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113760089A (zh) * | 2020-06-05 | 2021-12-07 | 候本株式会社 | 基于多模态界面的扩展现实系统 |
CN113535064A (zh) * | 2021-09-16 | 2021-10-22 | 北京亮亮视野科技有限公司 | 虚拟标签标记方法、装置、电子设备及存储介质 |
US20230170976A1 (en) * | 2021-11-30 | 2023-06-01 | Qualcomm Incorporated | Beam selection and codebook learning based on xr perception |
Also Published As
Publication number | Publication date |
---|---|
US10304239B2 (en) | 2019-05-28 |
EP3655845A1 (en) | 2020-05-27 |
US20220101594A1 (en) | 2022-03-31 |
US20190236835A1 (en) | 2019-08-01 |
US20210005012A1 (en) | 2021-01-07 |
WO2019018098A1 (en) | 2019-01-24 |
US11727625B2 (en) | 2023-08-15 |
US11200729B2 (en) | 2021-12-14 |
US20190026936A1 (en) | 2019-01-24 |
US20230274496A1 (en) | 2023-08-31 |
US10825237B2 (en) | 2020-11-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11727625B2 (en) | Content positioning in extended reality systems | |
US11127210B2 (en) | Touch and social cues as inputs into a computer | |
US10132633B2 (en) | User controlled real object disappearance in a mixed reality display | |
US9836889B2 (en) | Executable virtual objects associated with real objects | |
US9390561B2 (en) | Personal holographic billboard | |
KR102222974B1 (ko) | 홀로그램 스냅 그리드 | |
US20130174213A1 (en) | Implicit sharing and privacy control through physical behaviors using sensor-rich devices | |
US20130177296A1 (en) | Generating metadata for user experiences | |
CN111131904B (zh) | 视频播放方法及头戴电子设备 | |
EP3195593A1 (fr) | Dispositif et procédé d'orchestration de surfaces d'affichage, de dispositifs de projection et de dispositifs d'intéraction spatialisés 2d et 3d pour la création d'environnements intéractifs | |
US20230199297A1 (en) | Selectively using sensors for contextual data |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |