CN115004235A - 基于锚的交叉现实应用的增强状态控制 - Google Patents

基于锚的交叉现实应用的增强状态控制 Download PDF

Info

Publication number
CN115004235A
CN115004235A CN202180011048.0A CN202180011048A CN115004235A CN 115004235 A CN115004235 A CN 115004235A CN 202180011048 A CN202180011048 A CN 202180011048A CN 115004235 A CN115004235 A CN 115004235A
Authority
CN
China
Prior art keywords
application
applications
state
virtual content
user
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
Application number
CN202180011048.0A
Other languages
English (en)
Inventor
P·巴布吉德
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Magic Leap Inc
Original Assignee
Magic Leap Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Magic Leap Inc filed Critical Magic Leap Inc
Publication of CN115004235A publication Critical patent/CN115004235A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/017Head mounted
    • G02B27/0172Head mounted characterised by optical features
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B6/00Light guides; Structural details of arrangements comprising light guides and other optical elements, e.g. couplings
    • G02B6/0001Light guides; Structural details of arrangements comprising light guides and other optical elements, e.g. couplings specially adapted for lighting devices or systems
    • G02B6/0011Light guides; Structural details of arrangements comprising light guides and other optical elements, e.g. couplings specially adapted for lighting devices or systems the light guides being planar or of plate-like form
    • G02B6/0013Means for improving the coupling-in of light from the light source into the light guide
    • G02B6/0023Means for improving the coupling-in of light from the light source into the light guide provided by one optical element, or plurality thereof, placed between the light guide and the light source, or around the light source
    • G02B6/003Lens or lenticular sheet or layer
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B6/00Light guides; Structural details of arrangements comprising light guides and other optical elements, e.g. couplings
    • G02B6/0001Light guides; Structural details of arrangements comprising light guides and other optical elements, e.g. couplings specially adapted for lighting devices or systems
    • G02B6/0011Light guides; Structural details of arrangements comprising light guides and other optical elements, e.g. couplings specially adapted for lighting devices or systems the light guides being planar or of plate-like form
    • G02B6/0033Means for improving the coupling-out of light from the light guide
    • G02B6/0035Means for improving the coupling-out of light from the light guide provided on the surface of the light guide or in the bulk of it
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B6/00Light guides; Structural details of arrangements comprising light guides and other optical elements, e.g. couplings
    • G02B6/0001Light guides; Structural details of arrangements comprising light guides and other optical elements, e.g. couplings specially adapted for lighting devices or systems
    • G02B6/0011Light guides; Structural details of arrangements comprising light guides and other optical elements, e.g. couplings specially adapted for lighting devices or systems the light guides being planar or of plate-like form
    • G02B6/0075Arrangements of multiple light guides
    • G02B6/0076Stacked arrangements of multiple light guides of the same or different cross-sectional area
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • G06F3/013Eye tracking input arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/0101Head-up displays characterised by optical features
    • G02B2027/0127Head-up displays characterised by optical features comprising devices increasing the depth of field
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/017Head mounted
    • G02B27/0172Head mounted characterised by optical features
    • G02B2027/0174Head mounted characterised by optical features holographic
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/0081Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00 with means for altering, e.g. enlarging, the entrance or exit pupil
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/52Network services specially adapted for the location of the user terminal

Abstract

公开了具有用于基于锚的增强现实应用的增强状态控制的交叉现实(XR)显示设备,例如增强现实设备。在一些实施例中,设备被配置为获得识别应用的信息,应用具有位于XR设备的第一阈值距离度量内的相应的锚位置,锚位置对应于要呈现虚拟内容的真实世界位置;确定从多个状态中选择的要被分配给应用的相应的状态,这些状态是基于锚位置与XR设备的接近度来确定的;实现状态,第一应用被分配渲染虚拟内容的状态,并且第一应用通过XR设备呈现虚拟内容;以及响应于XR设备的移动,确定一个或多个应用的更新状态。

Description

基于锚的交叉现实应用的增强状态控制
相关申请的交叉引用
本申请通过引用并入以下各项的全部内容:美国临时专利申请第62/966,477号;美国临时专利申请第62/934,485号;美国专利申请第16/593,745号,美国专利申请第16/518,891号,美国专利公开2019/0188474,以及美国专利公开2019/0197785。
技术领域
本公开涉及显示系统,并且更具体地,涉及增强和虚拟现实系统和设备。
背景技术
现代计算和显示技术已经促进了用于所谓的“虚拟现实”或“增强现实”体验的系统的开发,其中,以它们似乎是真实的或可能被感知为真实的方式向用户呈现数字再现的图像或其一部分。虚拟现实或“VR”场景通常涉及数字或虚拟图像信息的呈现,而对其他实际现实世界视觉输入不透明;增强现实或“AR”场景通常涉及数字或虚拟图像信息的呈现,以增强对用户周围现实世界的可视化。混合现实或“MR”场景是AR场景类型并且通常涉及集成到自然世界中并响应于自然世界的虚拟对象。例如,MR场景可以包括AR图像内容,该AR图像内容似乎被现实世界中的对象阻挡或被感知为与现实世界中的对象交互。
参考图1,示出了AR场景10。AR技术的用户看到以人、树、背景中的建筑物为特征的现实世界的公园般的设置20,以及混凝土平台30。用户还感知到他/她“看到”了站在现实世界平台30上的诸如机器人雕像40的“虚拟内容”,以及飞来飞去的似乎是大黄蜂的化身的卡通般的化身角色50。这些元素50、40是“虚拟的”,因为它们在现实世界中不存在。在某些情况下,该内容可以通过头戴式显示器呈现给用户。在一些其他情况下,该内容可以通过诸如智能手机或平板电脑之类的便携式设备呈现给用户。由于人类的视觉感知系统和虚拟内容的呈现很复杂,因此要开发一种促进虚拟图像元素以及其他虚拟或现实图像元素的舒适、感觉自然、丰富的呈现的AR技术是具有挑战的。
发明内容
根据一些实施例,描述了由交叉现实(XR)设备实现的方法。XR设备包括一个或多个处理器,并且XR设备被配置为向XR设备的用户呈现虚拟内容。该方法包括获取识别一个或多个应用的信息,一个或多个应用具有位于XR设备的第一阈值距离度量内的相应的锚位置,其中,锚位置对应于要呈现虚拟内容的真实世界位置。从多个状态中选择的各个状态被确定为分配给一个或多个应用,状态是基于锚位置与XR设备的接近度被确定。实现状态,其中,一个或多个应用中的第一应用被分配要渲染虚拟内容的状态,并且其中,第一应用通过XR设备在第一锚位置呈现虚拟内容。响应于XR设备的移动,确定一个或多个应用的更新状态。根据一些实施例,一种包括一个或多个处理器的系统,其被配置为向系统的用户呈现虚拟内容,该系统还包括存储指令的非暂时性计算机存储介质,当由一个或多个处理器执行时,使得一个或多个处理器执行包括上述方法的操作。根据一些实施例,一种非暂时性计算机存储介质存储指令,当由被配置为向系统的用户呈现虚拟内容的包括一个或多个处理器的系统执行时,使一个或多个处理器执行包括上述方法的操作.
下面提供了一些附加的示例。
示例1.一种由包括一个或多个处理器的交叉现实XR设备实现的方法,所述XR设备被配置为向所述XR设备的用户呈现虚拟内容,所述方法包括:获取识别一个或多个应用的信息,所述一个或多个应用具有位于所述XR设备的第一阈值距离度量内的相应的锚位置,其中,锚位置对应于要呈现虚拟内容的真实世界位置;确定从多个状态中选择的要被分配给所述一个或多个应用的相应的状态,所述状态是基于所述锚位置与所述XR设备的接近度被确定;实现所述状态,其中,所述一个或多个应用中的第一应用被分配要渲染虚拟内容的状态,并且其中,所述第一应用通过所述XR设备在第一锚位置呈现虚拟内容;以及响应于所述XR设备的移动,确定所述一个或多个应用的更新状态。
示例2.根据示例1所述的方法,其中,所述虚拟内容是增强现实内容。
示例3.根据示例1所述的方法,还包括:向外部系统提供指示所述XR设备的位置的信息;以及从所述外部系统接收识别所述一个或多个应用的信息。
示例4.根据示例3所述的方法,其中,所述XR设备接收所述一个或多个应用以供执行。
示例5.根据示例3所述的方法,其中,所述XR设备接收所述一个或多个应用的子集,所述子集具有位于所述XR设备的第二阈值距离度量内的锚位置。
示例6.根据示例5所述的方法,其中,响应于所述XR设备的移动,第二应用被确定具有在所述第二阈值距离度量内的锚位置,并且其中,从所述外部系统接收所述第二应用以供执行。
示例7.根据示例1所述的方法,其中,所述XR设备存储所述一个或多个应用。
示例8.根据示例1所述的方法,其中,基于所述锚位置与所述XR设备的接近度和所述XR设备相对于所述锚位置的视场来确定所述状态。
示例9.根据示例1所述的方法,其中,确定所述第一应用的状态包括:识别多个区域中的所述第一应用位于其中的第一区域,所述区域被包括在以所述XR设备的位置为中心的体积网格中,其中,所述第一区域与所确定的状态相关联。
示例10.根据示例9所述的方法,其中,所述第一区域指示所述第一应用位于所述XR设备的显示截头锥体内,以使得所述第一应用被设置为与渲染虚拟内容相关联的活动状态。
示例11.根据示例9所述的方法,其中,第二区域指示应用位于所述XR设备的显示截头锥体之外,以使得所述应用被设置为不与渲染虚拟内容相关联的状态。
示例12.根据示例9所述的方法,其中,所述多个区域与这样的状态相关联,所述状态包括:应用被设置为活动并且与渲染虚拟内容相关联,所述应用被设置为活动并且不与渲染虚拟内容相关联,所述应用被设置为睡眠状态,或者所述应用被设置为卸载状态。
示例13.根据示例9所述的方法,其中,所述体积网格包括多个单元,其中,中心单元包括所述XR设备的所述位置,并且其中,每个区域包含所述单元的相应的部分。
示例14.根据示例13所述的方法,其中,所述单元是矩形的,并且其中,每个单元包含特定的现实世界区域或体积。
示例15.根据示例1所述的方法,其中,所述XR设备的移动包括所述XR设备的位置调整和/或姿势调整。
示例16.根据示例1所述的方法,其中,将所述更新状态应用于所述一个或多个应用。
示例17.根据示例1所述的方法,其中,基于所述XR设备的移动,新应用被识别为在所述XR设备的所述第一阈值距离度量内,并且其中,确定所述新应用的状态。
示例18.根据示例1所述的方法,还包括过滤所识别的应用,其中,过滤包括:访问与所述XR设备的所述用户相关联的用户档案信息,所述用户档案信息指示所述用户的偏好;以及基于所述偏好来过滤所识别的应用。
示例19.根据示例18所述的方法,其中,过滤所识别的应用是基于所识别的应用超过阈值数量的应用的确定来执行的。
示例20.根据示例19所述的方法,其中,所述阈值数量的应用是基于所述XR设备的计算资源的一个或多个测量。
示例21.根据示例19所述的方法,还包括:识别具有与活动和渲染虚拟内容相关联的所确定的状态的大于阈值数量的应用;根据一个或多个度量对所述阈值数量的应用进行排名;以及实现所确定的状态,其中,所述阈值数量的应用中的一个或多个应用根据所述排名来呈现虚拟内容,并且其中,所述阈值数量的应用中的剩余应用被设置为与不渲染虚拟内容相关联的状态。
示例22.根据示例1所述的方法,其中,所述XR设备是被配置为在多个深度平面上呈现虚拟内容的增强现实显示设备,其中,每个深度平面与相应的适应提示相关联。
示例23.根据示例1所述的方法,其中,所述XR设备是移动设备。
示例24.根据示例1所述的方法,其中,所述XR设备包括头戴式显示设备,所述头戴式显示设备被配置为在不同深度平面上提供来自所述应用的虚拟内容。
示例25.根据示例1所述的方法,其中,所述第一应用由一个或多个计算机的外部系统执行,并且其中,所述XR设备被配置为从所述外部系统接收虚拟内容用于呈现。
示例26.根据示例1所述的方法,其中,所述第一锚位置是基于由所述XR设备的一个或多个面向外的图像传感器所获得的一个或多个图像与与接近所述XR设备的现实世界相关联的存储的持久信息进行比较来确定的。
示例27.根据示例26所述的方法,其中,所述持久信息包括一个或多个持久坐标框架。
示例28.根据示例26所述的方法,其中,比较包括:将生成的包括在所述图像中的特征的描述符与与所述持久信息相关联的描述符进行比较。
示例29.根据示例1所述的方法,其中,所述第一应用在表示空间的体积的棱柱中呈现虚拟内容,所述棱柱与所述第一锚位置相关联。
示例30.一种包括一个或多个处理器的系统,所述系统被配置为向所述系统的用户呈现虚拟内容,其中,所述系统还包括存储指令的非暂时性计算机存储介质,所述指令在由所述一个或多个处理器执行时使得所述一个或多个处理器执行包括示例1-29所述的方法的操作。
示例31.一种存储指令的非暂时性计算机存储介质,所述指令在由包括一个或多个处理器并被配置为向系统的用户呈现虚拟内容的所述系统执行时使所述一个或多个处理器执行包括示例1-29所述的方法的操作。
附图说明
图1示出了用户通过AR设备的增强现实(AR)视图。
图2示出了用于为用户模拟三维图像的传统显示系统。
图3A-3C示出了曲率半径与焦半径之间的关系。
图4A示出了人类视觉系统的适应-辐辏响应的表示。
图4B示出了用户的双眼的不同适应状态和辐辏状态的示例。
图4C示出了经由显示系统观看内容的用户的俯视平面图的表示的示例。
图4D示出了经由显示系统观看内容的用户的俯视平面图的表示的另一示例。
图5示出了通过修改波前发散来模拟三维图像的方法的方面。
图6示出了用于将图像信息输出给用户的波导堆叠的示例。
图7示出了由波导输出的出射光束的示例。
图8示出了堆叠目镜的示例,其中每个深度平面包括使用多种不同分量颜色形成的图像。
图9A示出了一组堆叠的波导的示例的横截面侧视图,每个堆叠的波导包括入耦合光学元件。
图9B示出了图9A的多个堆叠波导的示例的视角。
图9C示出了图9A和图9B的多个堆叠波导的示例的俯视平面图。
图9D示出了多个堆叠波导的另一个示例的俯视平面图。
图9E示出了可穿戴显示系统的示例。
图10示出了示出在与XR设备的用户的不同接近度处的应用的不同应用状态的框图。
图11示出了与将状态分配给应用相关联的示例状态图。
图12是用于更新应用的状态的示例过程的流程图。
图13是用于过滤应用的示例过程的流程图。
图14是用于基于应用的排名来渲染应用的示例过程的流程图。
具体实施方式
在一些实施例中,提供技术以使得能够协调(orchestration)具有遍布世界或特定地理区域的锚位置的多个应用。如将要描述的,可以通过显示设备执行每个应用以渲染特定内容以呈现给用户。示例内容可以包括增强现实、虚拟现实或混合现实内容(在本文中称为“虚拟内容”)。基于用户接近与应用相关联的锚位置(例如,现实世界位置),该应用可以由显示设备激活(例如,执行)。用于显示虚拟内容的示例显示设备可以包括用户佩戴的显示设备,例如图9E中所示的显示系统60。另一示例显示设备可以包括用于显示虚拟内容的便携式显示设备,例如智能手机、平板电脑等。在本说明书中,用于显示虚拟内容的显示设备可以称为交叉现实设备或“XR”设备。
如本文所述,当用户穿越世界时,可以为应用分配不同的状态(例如,活动(active)、非活动(inactive)、未加载(load)等)。以这种方式,应用可以向用户渲染虚拟内容,以产生虚拟内容持续存在于现实世界位置的错觉(例如,类似于现实世界的设备或特征)。可能存在多个(例如,数十、数百、数千、数十万或更多)应用和相关联的锚位置。由于XR设备可能具有有限的计算资源(例如,有限的存储、有限的处理能力等),因此XR设备可能无法同时执行所有应用。同样,XR设备可能无法存储所有应用。因此,需要用于协调状态分配的技术。基于这些分配的状态,只有特定的应用可以被允许渲染虚拟内容,而其他应用可以被加载、卸载、进入睡眠状态等,状态的改变有利地对用户来说是无缝的。另外,本文描述了用于快速获得与用户附近的锚位置相关联的应用的技术。
应用
虚拟现实内容(例如图1中所示的机器人雕像)可用于丰富现实世界环境。作为另一个示例,虚拟内容可用于为用户正在观看的现实世界食物项目提供营养信息。在该示例中,可以在现实世界环境中呈现文本信息描述营养信息。因此,用户可以快速了解与不同食物项目相关联的好处、缺点等。作为又一个示例,虚拟内容可以表示用户住所的房间中的虚拟灯开关。用户可以接近虚拟灯开关并提供用户输入以打开或关闭虚拟灯开关。有利地,设备(例如,用户的XR设备)可以向与房间中的灯相关联的控制器提供信息。因此,与虚拟灯开关的交互可能会导致房间中的现实世界灯被调整。这可能具有降低与接线灯开关相关联的复杂性的示例性好处。另外,虚拟灯开关可以允许容易地调整虚拟灯开关的放置。例如,用户可以提供用户输入以将虚拟灯开关的放置更新到房间的不同部分。作为另一个示例,虚拟键盘或锁可以与门相关联。用户可以接近门并且虚拟键盘或锁可能看起来接收来自用户的输入。该设备在接收到来自用户的输入时,然后可以向门上的控制器提供指令以解锁或锁定门。
关于以上示例,可以理解,虚拟内容可以在用户日常生活的不同途径中提供有用的功能。例如,营养信息可以允许增强商店的体验。作为另一个示例,虚拟灯开关或键盘或锁可以允许增强用户住所的体验。类似地,虚拟内容可能遍布世界其他区域。作为示例,可以在用户在图书馆中时呈现虚拟内容。在该示例中,虚拟内容可以提供与图书馆的不同部分、不同书籍、用户可能感兴趣的书籍的方向等有关的信息。作为另一个示例,当用户正在穿过城市街道时,可以在商店附近呈现虚拟内容。在该示例中,虚拟内容可以向用户提供关于一个或多个商店的有用信息。作为另一个示例,用户的朋友可以将虚拟消息与现实世界位置(例如,特定的墙壁、标志商店上方等)相关联。因此,用户可以在接近现实世界位置时观看虚拟消息。
为了允许在整个世界呈现虚拟内容,可以在XR设备上执行不同的应用,这使得XR设备呈现不同的虚拟内容。如本文所述,应用可以使XR设备能够渲染虚拟内容以呈现给用户。该应用可以包括虚拟内容或者可以通过有线或无线通信(例如,从网络地址)获得特定的虚拟内容。有利地,本文描述的应用可以锚定到一个或多个现实世界位置。
因此,当用户位于与应用相关联的锚位置附近时,XR设备可以执行应用。关于用户住所的示例,特定应用可能会导致XR设备在特定房间内渲染虚拟灯开关。在该示例中,当用户在特定房间内或在特定房间的阈值距离内时,XR设备可以使特定应用执行。关于键盘或锁的示例,当用户例如在接近门的阈值内时,ER设备可以使特定应用执行。
本文描述的应用可以从在线应用商店获得(例如,作为可下载的“应用”),使得用户可以使某些应用被安装(例如,加载)在用户的XR设备上,并且驻留在设备本地。应用也可以由XR设备自动获得,例如,根据需要按需获得。例如,当用户穿越世界时,用户设备可以定位在某些锚位置附近。在该示例中,用户设备可以获得与锚位置相关联的应用。例如,可以通过无线连接(例如,蜂窝连接,例如LTE或5G;Wi-Fi连接等)获得应用。因此,当用户在世界周围移动时,可以获得不同的应用来执行。以这种方式,相关联的虚拟内容可以由应用渲染,使得它在现实世界中看起来是固定的(例如,锚定在现实世界的位置上)。
应用锚位置
如上所述,应用可以具有一个或多个相关联的锚位置。锚位置可以是应用要呈现虚拟内容的现实世界位置。以这种方式,用户可以将虚拟内容感知为位于锚位置。例如,与营养应用相关联的第一锚位置可以靠近商店中的第一种水果,而第二锚位置可以靠近第二种水果。在一些实施例中,现实世界位置可以表示全球导航卫星系统(GNSS)位置(例如,全球定位系统位置)。因此,应用可以渲染要在该GNSS位置感知的虚拟内容。
在一些实施例中,应用可以在可以被称为“棱柱(prism)”的有界(bound)体积中渲染虚拟内容。每个棱柱可以具有允许应用在混合现实环境中管理和显示棱柱的特性和属性,以使得应用可以通过管理棱柱本身来管理虚拟内容在混合现实环境中的放置和显示。例如,虚拟内容的锚位置可以表示与包括虚拟内容的棱柱相关联的锚位置。应用可以可选地与一个或多个棱柱相关联。在一些实施例中,棱柱可以设置为彼此不重叠,使得每个棱柱代表不同的体积。
每个棱柱可以具有允许管理棱柱的应用(可称为“棱柱管理器”)的特性和属性,以在混合现实环境中控制与一个或多个棱柱相关联的虚拟内容的显示。在一些实施例中,棱柱可以类似于2D显示环境中的“窗口”。在2D环境中,窗口可用于定义位置和菜单结构并显示2D内容。同样,在XR系统的3D环境中,棱柱允许棱柱管理器提供与例如内容位置、3D窗口行为、和围绕3D内容显示的菜单结构相关的控制。例如,控制可以包括至少将虚拟内容放置在用户环境中的特定位置,从环境中移除虚拟内容,复制虚拟内容,和/或将副本放置在不同的位置,等等。
与棱柱相关的附加描述包括在美国专利公开号2019/0197785和美国临时专利申请第62/934,485号,其构成本公开的一部分,如同本文所述。
在一些实施例中,现实世界位置可以对应于根据现实世界的可区别特征确定的现实世界中的特定空间位置。例如,区别特征可以包括相对较小的特征,例如角、墙上的标记、边缘、字母(例如,字母“s”)。这些区别特征的组合可用于准确指定现实世界的位置。随着XR设备在世界到处移动,XR设备可以通过一个或多个面向外图像传感器获得世界的图像。这些所获得的图像可以描绘可用于确定与应用相关联的锚位置的区别特征。可以将区别特征与存储的或以其他方式可访问的关于物理世界的持久信息进行比较。以这种方式,可以将持久信息与包括在获得的图像中的特征进行比较。基于比较,可以确定基本上精确的锚位置。
在一些实施例中,关于物理世界的持久信息可以被表示为持久坐标框架(PCF)。PCF可以基于表示物理世界中识别的特征的一个或多个点来定义。可以选择这些特征,使得它们在XR设备的用户会话之间可能是相同的。例如,可以确定特征可能是持久的。PCF可能稀疏地存在,提供关于物理世界的可用信息少于所有可用信息,以使得它们可以被有效地处理和传输。例如,XR设备可以基于基于特征生成的描述符的比较来识别特征。作为示例,可以为特征(例如,特定的区别特征)或特征周围的区域生成描述符,如XR设备获得的图像中所描绘的。然后可以将该特征的描述符与包括在一个或多个PCF(例如,与XR设备的位置相关联的PCF)中的特征的描述符进行比较。尽管描述了描述符,但在一些实施例中,XR设备可以比较特征周围的补丁(patch)。
XR设备因此可以获得物理世界的图像并且基于图像中的特征和与一个或多个PCF相关联的特征的比较来确定锚位置。在一些实施例中,当XR设备在使用中时,XR设备可以存储和/或生成表示现实世界位置的一个或多个持久地图。因此,XR设备可以将持久地图与PCF进行比较,以准确识别特定锚位置。以这种方式,XR设备可以导致在特定锚位置处呈现虚拟内容。作为示例,锚位置可以包括标志上方的位置、建筑物的特定窗口的左侧、图书馆的特定架子上、位于特定房间的墙壁上的特定位置处等等。
与确定锚位置有关的附加描述至少包括在美国专利申请第16/593,745号的图6B和14中,其构成本公开的一部分,如同在此阐述的一样。
协调应用状态
如本文所讨论的,应用可以具有遍布整个世界的一个或多个锚位置。例如,当用户走在城市街道上时,可能存在用于接近用户的不同应用的多个锚位置。可以理解,XR设备可能无法同时执行多个应用中的每一个应用。例如,XR设备可能具有有限的内存、计算资源,和/或它可能会降低用户体验以呈现来自所有应用的虚拟内容。
因此,当用户在城市街道周围移动时,它可以基于可用的计算资源来执行改变的应用子集。如果没有在此描述的技术,某些虚拟内容可能会被用户感知为在现实世界中存在或不存在。这可能具有降低与虚拟内容相关联的真实感的有害影响。例如,如上所述,虚拟内容可以被设计为在现实世界中持久。然而,如果没有协调应用执行的技术,由于计算资源有限,虚拟内容可能不会被认为是持久的。
有利地,并且根据一些实施例,可以基于用户与应用的接近度为应用分配不同的状态。此外,可以进一步基于用户或XR设备相对于现实世界的视角,为应用分配不同的状态。为了描述方便,在本公开中,如果应用与接近用户的锚位置相关联,则将应用描述为接近用户。类似地,如果相关联的锚点在用户或XR设备的视场或视角内,则本公开将应用描述为在用户的视场或视角内。例如,如果应用被配置为渲染虚拟内容以使其在视场内的锚位置被感知,则可以考虑在用户或XR设备的视场内的应用。
作为协调状态的示例,被确定为接近用户的应用,例如锚位置在用户的阈值距离内的应用,可以被分配“活动+渲染”状态。如将要描述的,活动+渲染状态可以使应用渲染虚拟内容以呈现给用户。作为另一示例,被确定为接近用户并且被确定在视场内(例如,在显示视截头锥体内)的应用可以被分配“活动+渲染”状态。接近用户但不在视场内的其他应用可以被分配不同的状态。例如,可以将其他应用分配为“活动+不渲染”或“睡眠”状态。在此示例中,其他应用可能不会渲染虚拟内容。因此,可以节省XR设备的计算资源。在一些实施例中,可以为与应用相关联的棱柱分配状态。相关联的应用然后可以实现该状态。例如,如果棱柱被分配“活动+渲染”,则相关联的应用可以向用户呈现虚拟内容。
此外,当用户在现实世界中移动时,XR设备可以获得(例如,下载)应用。例如,XR设备可以识别具有锚位置在XR设备的阈值距离内的应用。在此示例中,XR设备可以向外部系统提供位置信息。作为响应,外部系统可以识别阈值距离内的应用。XR设备然后可以例如从本地存储或经由有线或无线连接从外部系统获得(例如,加载)所识别的应用以在XR设备上执行。可以基于XR设备的移动来更新每个应用的状态,例如更新为“睡眠”或“活动”。例如,随着XR设备移动靠近应用,应用可能会更新为“活动”。相反,当XR设备移动远离应用时,应用可能会更新为“睡眠”,或者应用可能会从XR设备中卸载(例如,从本地内存中移除)。
至少在美国临时专利申请第62/934,485号的图64中描述了与下载应用有关的附加描述,其构成本公开的一部分,如同在此阐述一样。
以此方式,许多(例如,数十、数百、数千、或数十万或更多)应用可以基于XR设备的位置和/或XR设备的视点由XR设备无缝地加载。随着XR设备在现实世界中移动,先前加载的应用可能会被XR设备丢弃(例如,删除)。这样,XR设备可以获得具有锚位置在XR设备的阈值距离内的应用。因此,基于XR设备对应用的协调,虚拟内容可能会被感知为在现实世界中持久存在。
下面的图2至9E描述了与能够向用户输出虚拟内容的增强现实设备和系统相关的示例细节。有利地,增强现实设备和系统可以在不同深度平面上输出虚拟内容。每个深度平面可以与不同的适应提示相关联,使得虚拟内容可以被感知为位于距用户不同的深度处。尽管下面的描述描述了具有多个深度平面的增强现实设备,例如显示系统250,作为用于使用本文公开的应用协调技术提供虚拟内容的显示设备的特别有利的示例,但是应当理解,本文描述的技术可以通常在XR设备上实现。
例如,用户设备(例如,移动设备、平板电脑等)可以向用户呈现虚拟内容。在该示例中,用户设备可以使用一个或多个面向外的成像传感器来获得现实世界环境的图像。用户设备可以经由用户设备的显示器呈现现实世界环境并且在呈现中包括渲染的虚拟内容。以这种方式,用户可以在现实世界环境中移动用户设备并观看其中包括的虚拟内容。
现在将参考附图,其中相同的附图标记自始至终指代相同的部件。除非另有说明,否则附图是示意性的并且不一定按比例绘制。
示例增强现实显示系统
图2示出了用于为用户模拟三维图像的传统显示系统。应当理解,用户的眼睛是间隔开的,并且当观看空间中的真实对象时,每只眼睛将具有该对象的稍微不同的视图,并且可以在每只眼睛的视网膜上的不同位置处形成该对象的图像。这可以被称为双目视差,并且可以被人类视觉系统用来提供对深度的感知。传统的显示系统通过呈现具有相同虚拟对象的略有不同的视图的两个不同的图像190、200(每只眼睛210、220对应一个图像)来模拟双目视差,该略有不同的视图对应于每只眼睛将看到的虚拟对象的视图,如果虚拟对象是期望深度的真实对象的话。这些图像提供了双目提示,用户的视觉系统可以将其解释为获得深度的感知。
继续参考图2,图像190、200与眼睛210、220在z轴上间隔开距离230。z轴与观看者的光轴平行,其眼睛注视在观看者正前方的光学无限远处的对象上。图像190、200是平坦的并且与眼睛210、220处于固定的距离。基于分别呈现给眼睛210、220的图像中的虚拟对象的略微不同的视图,眼睛可以自然地旋转,使得对象的图像落在每只眼睛的视网膜上的对应点上,以保持单个双目视觉。该旋转可导致眼睛210、220中的每只眼睛的视线会聚到空间上的一点,在该点处虚拟对象被感知为存在。结果,提供三维图像通常涉及提供双目提示,该双目提示可操纵用户的眼睛210、220的辐辏,并且人类视觉系统将其解释为提供深度的感知。
然而,生成对深度的现实且舒适的感知是具有挑战性的。应当理解,来自距眼睛不同距离处的对象的光具有带有不同发散量的波前。图3A-3C示出了距离与光线的发散之间的关系。对象与眼睛210之间的距离由R1、R2和R3按减小距离的顺序表示。如图3A-3C中所示,随着距对象的距离减小,光线变得更加发散。相反,随着距离增加,光线变得更加准直。换句话说,可以说由点(对象或对象的一部分)产生的光场具有球面波前曲率,该曲率是该点距用户眼睛多远的函数。曲率随着对象和眼睛210之间的距离减小而增加。尽管为了清楚起见在图3A-3C和在此的其它图中仅示出了单只眼睛210,但是关于眼睛210的讨论可以应用于观看者的两只眼睛210和220。
继续参考图3A-3C,观看者的眼睛注视在其上的对象发出的光可能具有不同程度的波前发散。由于不同量的波前发散,眼睛的晶状体可能会不同地聚焦光,这进而可能会要求晶状体采取不同的形状以在眼睛的视网膜上形成聚焦图像。在未在视网膜上形成聚焦图像的情况下,所产生的视网膜模糊可作为适应的提示,该适应引起眼睛晶状体形状的改变,直到在视网膜上形成聚焦图像为止。例如,适应的提示可触发眼睛晶状体周围的睫状肌松弛或收缩,从而调节施加到保持晶状体的悬韧带的力,从而引起眼睛晶状体的形状改变直到注视对象的视网膜模糊被消除或最小化,从而在眼睛的视网膜(例如,中央凹)上形成注视对象的聚焦图像。眼睛的晶状体改变形状的过程可以被称为适应,并且形成在眼睛的视网膜(例如,中央凹)上的注视对象的聚焦图像所需的眼睛的晶状体的形状可以被称为适应状态。
现在参考图4A,示出了人类视觉系统的适应-辐辏响应的表示。眼睛注视在对象上的运动使眼睛接收来自对象的光,该光在眼睛的每个视网膜上形成图像。在视网膜上形成的图像中视网膜模糊的存在可以提供适应的提示,并且图像在视网膜上的相对位置可以为辐辏提供提示。适应的提示使适应发生,导致眼睛的晶状体各自呈现特定的适应状态,该特定的适应状态形成了对象在眼睛的视网膜(例如,中央凹)上的聚焦图像。另一方面,辐辏的提示使辐辏运动(眼睛的旋转)发生,使得形成在每只眼睛的每个视网膜上的图像位于保持单个双目视觉的对应视网膜点处。在这些位置中,可以说眼睛已呈现特定的辐辏状态。继续参考图4A,适应可以被理解为眼睛达到特定的适应状态的过程,而辐辏可以被理解为眼睛达到特定的辐辏状态的过程。如图4A中所示,如果用户注视在另一对象上,则眼睛的适应和辐辏状态可能改变。例如,如果用户在z轴上的不同深度处注视在新对象上,则适应状态可能改变。
在不受理论限制的情况下,相信对象的观看者可能由于辐辏和适应的组合而将对象感知为“三维”。如上所述,两只眼睛相对于彼此的辐辏运动(例如,眼睛的旋转,使得瞳孔彼此朝向或远离移动以会聚眼睛的视线以注视在对象上)与眼睛的晶状体的适应紧密相关。在正常情况下,改变眼睛的晶状体形状以将焦点从一个对象改变到不同距离处的另一对象,将在称为“适应-辐辏反射”的关系下自动导致在辐辏上距相同距离的匹配变化。同样,在正常情况下,辐辏的变化将触发晶状体形状的匹配变化。
现在参考图4B,示出了眼睛的不同适应和辐辏状态的示例。一对眼睛222a在光学无限远处注视在对象上,而一对眼睛222b在小于光学无限远处注视在对象221上。值得注意的是,每对眼睛的辐辏状态不同,该对眼睛222a笔直指向前方,而该对眼睛222会聚在对象221上。形成每对眼睛222a和222b的眼睛的适应状态也不同,如晶状体210a、220a的不同形状所代表的。
不期望地,由于这些显示器中的适应状态和辐辏状态之间的失配,传统“3D”显示系统的许多用户发现此类传统系统不舒适或根本无法感知深度感。如上所述,许多立体或“3D”显示系统通过向每只眼睛提供略有不同的图像来显示场景。此类系统对于许多观看者来说是不舒适的,因为它们尤其提供了场景的不同呈现并且引起眼睛的辐辏状态的改变,但是没有相应地改变那些眼睛的适应状态。相反,通过显示器在距眼睛的固定距离处示出图像,使得眼睛在单个适应状态下观看所有图像信息。此类布置通过引起辐辏状态的变化而没有适应状态的匹配变化来对抗“适应-辐辏反射”。据信该失配会引起观看者不适。在适应和辐辏之间提供更优匹配的显示系统可能会形成更逼真的且更舒适的三维图像模拟。
不受理论的限制,据信人眼通常可以解释有限数量的深度平面以提供深度感知。因此,通过向眼睛提供与这些有限数量的深度平面中的每一个深度平面相对应的图像的不同呈现,可以实现感知深度的高度可信的模拟。在一些实施例中,不同的呈现可以提供辐辏的提示和适应的匹配提示二者,从而提供生理上正确的适应-辐辏匹配。
继续参考图4B,示出了两个深度平面240,其对应于距眼睛210、220在空间上的不同距离。对于给定的深度平面240,可以通过为每只眼睛210、220显示适当不同视角的图像来提供辐辏提示。此外,对于给定的深度平面240,形成提供给每只眼睛210、220的图像的光可以具有与该深度平面240的距离处的点所产生的光场相对应的波前发散。
在所示的实施例中,包含点221的深度平面240沿z轴的距离为1m。如在此所使用的,可以采用位于用户眼睛的瞳孔处的零点来测量沿z轴的距离或深度。因此,位于深度为1m的深度平面240对应于在这些眼睛的光轴上距用户眼睛的瞳孔1m的距离,眼睛朝向光学无限远引导。作为近似,可以从用户眼睛前面的显示器(例如,从波导的表面)测量沿z轴的深度或距离,再加上该设备与用户眼睛的瞳孔之间的距离值。该值可以称为眼距,并且对应于用户眼睛的瞳孔与用户在眼睛前面佩戴的显示器之间的距离。实际上,眼距的值可以是通常用于所有观看者的归一化值。例如,可以假设眼距为20mm,并且深度1m处的深度平面在显示器前面的距离可以为980mm。
现在参考图4C和4D,分别示出了匹配的适应-辐辏距离和失配的适应-辐辏距离的示例。如图4C中所示,显示系统可以向每只眼睛210、220提供虚拟对象的图像。图像可以使眼睛210、220呈现辐辏状态,在该状态中眼睛会聚在深度平面240上的点15上。另外,图像可以由具有与该深度平面240处的真实对象相对应的波前曲率的光形成。结果,眼睛210、220呈现适应状态,在该状态中图像聚焦在那些眼睛的视网膜上。因此,用户可以将虚拟对象感知为在深度平面240上的点15处。
应当理解,眼睛210、220的适应状态和辐辏状态中的每一种状态都与z轴上的特定距离相关联。例如,距眼睛210、220特定距离处的对象使那些眼睛基于该对象的距离呈现特定的适应状态。与特定的适应状态相关联的距离可以被称为适应距离Ad。类似地,在特定的辐辏状态或相对于彼此的位置中,存在与眼睛相关联的特定的辐辏距离Vd。在适应距离和辐辏距离匹配的情况下,适应和辐辏之间的关系可以说是生理上正确的。对于观看者来说,这被认为是最舒适的场景。
然而,在立体显示中,适应距离和辐辏距离可能并不总是匹配。例如,如图4D中所示,显示给眼睛210、220的图像可以以与深度平面240相对应的波前发散来显示,并且眼睛210、220可以呈现特定的适应状态,在该状态中在该深度平面上的点15a、15b处于焦点。然而,显示给眼睛210、220的图像可能会提供辐辏提示,该提示使眼睛210、220会聚在未位于深度平面240上的点15上。结果,在一些实施例中,适应距离对应于从眼睛210、220的瞳孔到深度平面240的距离,而辐辏距离对应于从眼睛210、220的瞳孔到点15的较大距离。适应距离不同于辐辏距离。因此,存在适应-辐辏失配。此类失配被认为是不期望的,并且可能导致用户不适。应当理解,失配对应于距离(例如,Vd-Ad),并且可以使用屈光度来表征。
在一些实施例中,应当理解,除了眼睛210、220的瞳孔之外的参考点可以被用于确定用于确定适应-辐辏失配的距离,只要相同的参考点被用于适应距离和辐辏距离。例如,可以测量从角膜到深度平面,从视网膜到深度平面,从目镜(例如,显示设备的波导)到深度平面的距离等。
在不受理论限制的情况下,据信用户仍可将高达约0.25屈光度、高达约0.33屈光度和高达约0.5屈光度的适应-辐辏失配感知为生理上正确的,而失配本身不会引起严重不适。在一些实施例中,在此公开的显示系统(例如,图6的显示系统250)向观看者呈现具有约0.5屈光度或更小的适应-辐辏失配的图像。在一些其它实施例中,由显示系统提供的图像的适应-辐辏失配为约0.33屈光度或更小。在其它实施例中,由显示系统提供的图像的适应-辐辏失配为约0.25屈光度或更小,包括约0.1屈光度或更小。
图5示出了通过修改波前发散来模拟三维图像的方法的方面。该显示系统包括波导270,该波导270被配置为接收用图像信息编码的光770,并将该光输出到用户的眼睛210。波导270可以输出具有限定量的波前发散的光650,该限定量的波前发散与由所期望的深度平面240上的点产生的光场的波前发散相对应。在一些实施例中,为在该深度平面上呈现的所有对象提供相同量的波前发散。另外,将说明可以向用户的另一只眼睛提供来自类似波导的图像信息。
在一些实施例中,单个波导可以被配置为输出具有与单个或有限数量的深度平面相对应的设定量的波前发散的光,和/或波导可以被配置为输出有限波长范围的光。因此,在一些实施例中,可以利用多个波导或堆叠的波导来为不同的深度平面提供不同量的波前发散和/或输出不同波长范围的光。如在此所使用的,应当理解,在深度平面处可以是平坦表面或者可以遵循弯曲表面的轮廓。
图6示出了用于向用户输出图像信息的波导堆叠的示例。显示系统250包括波导的堆叠,或堆叠的波导组件260,其可以用于使用多个波导270、280、290、300、310向眼睛/大脑提供三维感知。将理解的是,在一些实施例中,显示系统250可以被认为是光场显示器。另外,波导组件260也可以被称为目镜。
在一些实施例中,显示系统250可以被配置为提供辐辏的基本上连续的提示和适应的多个离散的提示。可以通过向用户的每只眼睛显示不同的图像来提供辐辏的提示,并且可以通过输出具有可选择的离散量的波前发散的形成图像的光来提供适应的提示。换句话说,显示系统250可以被配置为输出具有可变水平的波前发散的光。在一些实施例中,波前发散的每个离散水平对应于特定的深度平面,并且可以由波导270、280、290、300、310中的特定波导提供。
继续参考图6,波导组件260还可以在波导之间包括多个特征320、330、340、350。在一些实施例中,特征320、330、340、350可以是一个或多个透镜。波导270、280、290、300、310和/或
多个透镜320、330、340、350可以被配置为以各种水平的波前曲率或光线发散向眼睛发送图像信息。每个波导水平可以与特定的深度平面相关联并且可以被配置为输出与该深度平面相对应的图像信息。图像注入设备360、370、380、390、400可以用作波导的光源,并且可以用于将图像信息注入到波导270、280、290、300、310中,如在此所述,其可以被配置为将入射光分布在每个相应的波导上,用于朝向眼睛210输出。光从图像注入设备360、370、380、390、400的输出表面410、420、430、440、450出射,并且注入波导270、280、290、300、310的对应输入表面460、470、480、490、500。在一些实施例中,输入表面460、470、480、490、500中的每个输入表面可以是对应波导的边缘,或者可以是对应波导的主表面的一部分(也就是说,直接面对世界510或观看者的眼睛210的波导表面之一)。在一些实施例中,可以将单个光束(例如,准直光束)注入每个波导中,以输出克隆的准直光束的整个场,该准直光束以与与特定波导相关联的深度平面相对应的特定角度(和发散量)朝向眼睛210引导。在一些实施例中,图像注入设备360、370、380、390、400中的单个图像注入设备可以与波导270、280、290、300、310中的多个(例如,三个)相关联并将光注入到其中。
在一些实施例中,图像注入设备360、370、380、390、400是离散的显示器,其各自产生图像信息以分别注入到对应的波导270、280、290、300、310中。在一些其它实施例中,图像注入设备360、370、380、390、400是单个多路复用显示器的输出端,该显示器可以例如经由一个或多个光导管(诸如光纤电缆)将图像信息输送到图像注入设备360、370、380、390、400中的每一个图像注入设备。应当理解,图像注入设备360、370、380、390、400提供的图像信息可以包括不同波长或颜色的光(例如,如在此所述,不同分量的颜色)。
在一些实施例中,注入到波导270、280、290、300、310中的光由光投影系统520提供,该光投影系统520包括光模块530,该光模块530可以包括诸如发光二极管(LED)的光发射器。来自光模块530的光可以经由分束器550被引导至光调制器540(例如空间光调制器)并由其修改。光调制器540可以被配置为改变注入到波导270、280、290、300、310中的光的感知强度,以采用图像信息对光进行编码。空间光调制器的示例包括液晶显示器(LCD),该液晶显示器包括硅上液晶(LCOS)显示器。在一些其他实施例中,空间光调制器可以是MEMS设备,诸如数字光处理(DLP)设备。应当理解,示意性地示出了图像注入设备360、370、380、390、400,并且在一些实施例中,这些图像注入设备可以代表配置为将光输出到波导270、280、290、300、310中的相关联波导中的公共投影系统中的不同光路和位置。在一些实施例中,波导组件260的波导可以用作理想透镜,同时将注入波导中的光中继到用户的眼睛。在该概念中,对象可以是空间光调制器540,并且图像可以是深度平面上的图像。
在一些实施例中,显示系统250可以是包括一根或多根扫描光纤的扫描光纤显示器,该一根或多根扫描光纤被配置为将各种模式(例如,光栅扫描、螺旋扫描、Lissajous模式等)的光投射到一个或多个波导270、280、290、300、310中,并且最后到观看者的眼睛210。在一些实施例中,所示的图像注入设备360、370、380、390、400可以示意性地表示被配置为将光注入到波导270、280、290、300、310中的一个或多个波导的单个扫描光纤或扫描光纤束。在一些其它实施例中,所示的图像注入设备360、370、380、390、400可以示意性地表示多个扫描光纤或多个扫描光纤束,扫描光纤或扫描光纤束中的每一个被配置为将光注入到波导270、280、290、300、310中的相关联波导中。应当理解,一个或多个光纤可以被配置为将光从光模块530发送到一个或多个波导270、280、290、300、310。应当理解,可以在一个或多个扫描光纤与一个或多个波导270、280、290、300、310之间提供一个或多个中间光学结构,以例如将离开扫描光纤的光重定向到一个或多个波导270、280、290、300、310。
控制器560控制一个或多个堆叠的波导组件260的操作,包括图像注入设备360、370、380、390、400、光源530和光调制器540的操作。在一些实施例中,控制器560是本地数据处理模块140的一部分。控制器560包括编程(例如,非暂态介质中的指令),该编程根据例如在此公开的各种方案中的任何方案来调节图像信息到波导270、280、290、300、310的定时和提供。在一些实施例中,控制器可以是单个整体设备,或者是通过有线或无线通信信道连接的分布式系统。在一些实施例中,控制器560可以是处理模块140或150(图9E)的一部分。
继续参考图6,可以将波导270、280、290、300、310配置为通过全内反射(TIR)在每个相应的波导内传播光。波导270、280、290、300、310每个可以是平面的或具有另一种形状(例如,弯曲的),具有主要的顶部和底部表面以及在那些主要的顶部和底部表面之间延伸的边缘。在所示的配置中,波导270、280、290、300、310可各自包括出耦合光学元件570、580、590、600、610,其被配置为通过将在每个相应波导内传播的光重定向到波导之外以将图像信息输出到眼睛210,从而从波导中提取光。提取的光也可以称为出耦合光,并且出耦合光学元件也可以称为光提取光学元件。所提取的光束可以在波导中传播的光撞击光提取光学元件的位置处由波导输出。如在此进一步讨论的,出耦合光学元件570、580、590、600、610可以例如是包括衍射光学特征的光栅。虽然示出为设置在波导270、280、290、300、310的底部主表面上,但是为了便于描述和清楚作图起见,在一些实施例中,如在此进一步讨论的,出耦合光学元件570、580、590、600、610可以设置在顶部和/或底部主表面上,和/或可以直接设置在波导270、280、290、300、310的体积中。在一些实施例中,出耦合光学元件570、580、590、600、610可以形成为材料层,该材料层附接到透明基板以形成波导270、280、290、300、310。在一些其它实施例中,波导270、280、290、300、310可以是单片材料,并且出耦合光学元件570、580、590、600、610可以形成在该片材料的表面上和/或内部中。
继续参考图6,如在此所述,每个波导270、280、290、300、310被配置为输出光以形成与特定深度平面对应的图像。例如,最靠近眼睛的波导270可以被配置为将准直光(其被注入到此类波导270中)传送到眼睛210。准直光可以代表光学无限远焦平面。下一个波导向上280可以被配置为在准直光可到达眼睛210之前发出通过第一透镜350(例如,负透镜)的准直光;此类第一透镜350可以被配置为产生轻微的凸面的波前曲率,使得眼睛/大脑将来自下一个波导向上280的光解释为来自光学无限远更近地向内朝向眼睛210的第一焦平面。类似地,第三向上波导290在到达眼睛210之前使它的输出光通过第一透镜350和第二透镜340二者;第一350和第二340透镜的组合光焦度(optical power)可以被配置为产生另一增量的波前曲率,使得眼睛/大脑将来自第三波导290的光解释为来自第二焦平面,该第二焦平面比来自下一个波导向上280的光从光学无限远更近地向内朝向人。
其它波导层300、310和透镜330、320被类似地配置,其中堆叠中的最高波导310通过其与眼睛之间的所有透镜发送其输出,以代表最接近人的焦平面的总(aggregate)焦度。在观看/解释来自堆叠波导组件260的另一侧上的世界510的光时,为了补偿透镜320、330、340、350的堆叠,可以在堆叠的顶部设置补偿透镜层620,以补偿下面的透镜堆叠320、330、340、350的总焦度。此类配置提供与可用的波导/透镜对一样多的感知焦平面。波导的出耦合光学元件和透镜的聚焦方面二者都可以是静态的(即,不是动态的或电激活的)。在一些替代实施例中,使用电激活特征,上述中的一个或二者可以是动态的。
在一些实施例中,波导270、280、290、300、310中的两个或更多个波导可以具有相同的相关联深度平面。例如,多个波导270、280、290、300、310可以被配置为输出设置到相同深度平面的图像,或者波导270、280、290、300、310的多个子集可以被配置为输出设置到相同的多个深度平面的图像,其中对于每个深度平面设置一组。这可以提供用于形成平铺图像以在那些深度平面处提供扩大的视场的优点。
继续参考图6,出耦合光学元件570、580、590、600、610可以被配置为既将光重定向到其相应的波导之外,并且针对与波导相关联的特定深度平面以适当的发散或准直量输出该光。结果,具有不同的相关联深度平面的波导可以具有出耦合光学元件570、580、590、600、610的不同配置,其取决于相关联的深度平面以不同的发散量输出光。在一些实施例中,光提取光学元件570、580、590、600、610可以是体积或表面特征,其可以被配置为以特定角度输出光。例如,光提取光学元件570、580、590、600、610可以是体积全息、表面全息和/或衍射光栅。在一些实施例中,特征320、330、340、350可以不是透镜;相反,它们可以简单地是间隔物(例如,用于形成气隙的包层和/或结构)。
在一些实施例中,出耦合光学元件570、580、590、600、610是形成衍射图案的衍射特征,或者是“衍射光学元件”(在此也称为“DOE”)。优选地,DOE具有足够低的衍射效率,使得光束的仅一部分在DOE的每个相交处被偏转出朝向眼睛210,而其余的继续经由TIR移动通过波导。携带图像信息的光因此被分成多个相关的出射光束,该光束在多个位置处离开波导,并且结果是对于在波导内弹跳(bounce)的该特定准直光束,朝向眼睛210的出射的图案相当均匀。
在一些实施例中,一个或多个DOE可以在它们主动衍射的“开”状态和它们没有明显衍射的“关”状态之间切换。例如,可切换DOE可以包含聚合物分散的液晶层,其中微滴在主体介质中包含衍射图案,并且微滴的折射率可以切换为与主体材料的折射率基本上匹配(在该情况下,该图案不会明显地衍射入射光),或者可以将微滴切换到与主体介质的折射率不匹配的折射率(在该情况下,该图案主动衍射入射光)。
在一些实施例中,可以提供相机组件630(例如,包括可见光和红外光相机的数字相机)以捕获眼睛210和/或眼睛210周围的组织的图像,以例如检测用户输入和/或监控用户的生理状态。如在此所使用的,相机可以是任何图像捕获设备。在一些实施例中,相机组件630可包括图像捕获设备和以将光(例如,红外光)投射到眼睛的光源,然后该光可被眼睛反射并由图像捕获设备检测。在一些实施例中,相机组件630可以附接到框架或支撑结构80(图9E),并且可以与处理模块140和/或150电连通,该处理模块140和/或150可以处理来自相机组件630的图像信息。在一些实施例中,一个相机组件630可以用于每只眼睛,以分别监控每只眼睛。
在一些实施例中,相机组件630可以观察用户的运动,例如用户的眼睛运动。作为示例,相机组件630可以捕获眼睛210的图像以确定眼睛210的瞳孔(或眼睛210的一些其他结构)的大小、位置和/或取向。如果需要,相机组件630可以获得用于确定用户正在注视的方向(例如,眼睛姿势或注视方向)的图像(由本文所述类型的处理电路进行处理)。在一些实施例中,相机组件630可以包括多个相机,其中至少一个可以用于每只眼睛,以独立地分别确定每只眼睛的眼睛姿势或注视方向。在一些实施例中,相机组件630可以结合诸如控制器560或本地数据处理模块140之类的处理电路,基于来自包括在相机组件630中的光源的反射光(例如,红外光)的闪烁(例如,反射)来确定眼睛姿势或注视方向。
现在参考图7,示出了由波导输出的出射光束的示例。示出了一个波导,但是应当理解,波导组件260(图6)中的其它波导可以类似地起作用,其中波导组件260包括多个波导。光640在波导270的输入表面460处注入到波导270中,并通过TIR在波导270内传播。在光640入射在DOE 570上的点处,光的一部分作为出射光束650离开波导。出射光束650示为基本上平行,但是,如在此所述,取决于与波导270相关联的深度平面,它们还可以被重定向以一定角度传播到眼睛210(例如,形成发散的出射光束)。应当理解,基本上平行的出射光束可以指示具有出耦合光学元件的波导,该出耦合光学元件将光出耦合以形成看起来被设置在距眼睛210很大距离(例如,光学无限远)处的深度平面上的图像。其它波导或其它组出耦合光学元件可能会输出更发散的出射光束图案,该图案将需要眼睛210适应更近的距离以将其聚焦在视网膜上,并且将由大脑解释为光来自比光学无限远更靠近眼睛210的距离。
在一些实施例中,可以通过在诸如三个或更多个分量颜色的每个分量颜色中覆盖图像来在每个深度平面处形成全色图像。图8示出了堆叠波导组件的示例,其中每个深度平面包括使用多个不同分量颜色形成的图像。所示的实施例示出了深度平面240a-240f,但是也可以考虑更多或更少的深度。每个深度平面可以具有与其相关联的三个或更多个分量颜色图像,包括:第一颜色G的第一图像;第二颜色R的第二图像;以及第三颜色B的第三图像。在图中,不同的深度平面由字母G、R和B之后的屈光度(dpt)的不同数字表示。作为示例,这些字母中的每个字母之后的数字都指示屈光度(1/m)或深度平面距观看者的距离的倒数,并且图中的每个框代表单独的分量颜色图像。在一些实施例中,为了解决眼睛对不同波长的光聚焦的差异,针对不同分量颜色的深度平面的确切位置可能会有所不同。例如,针对给定深度平面的不同分量颜色图像可以被放置在与距用户的不同距离对应的深度平面上。此类布置可以增加视觉敏锐度和用户舒适度和/或可以减少色差。
在一些实施例中,每个分量颜色的光可以由单个专用波导输出,并且因此,每个深度平面可以具有与其相关联的多个波导。在此类实施例中,图中的包括字母G、R或B的每个框可以被理解为代表单独的波导,并且每深度平面可以提供三个波导,其中每深度平面提供三个分量颜色图像。尽管为了便于描述,在该图中将与每个深度平面相关联的波导示出为彼此相邻,但是应当理解,在物理设备中,波导可以全部以每个层级一个波导的形式布置在堆叠中。在一些其它实施例中,相同的波导可以输出多个分量颜色,使得例如每深度平面可以仅提供单个波导。
继续参考图8,在一些实施例中,G是绿色,R是红色,并且B是蓝色。在一些其它实施例中,除了红色、绿色或蓝色中的一个或多个之外或可以替代红色、绿色或蓝色中的一个或多个,可以使用与其它波长的光相关联的其它颜色,包括品红色和青色。
应当理解,在整个本公开中,对给定颜色的光的引用将被理解为涵盖被观看者感知为给定颜色的光的波长范围内的一个或多个波长的光。例如,红光可以包括在约620-780nm范围内的一个或多个波长的光,绿光可以包括在约492-577nm范围内的一个或多个波长的光,并且蓝光可以包括在约435-493nm范围内的一个或多个波长的光。
在一些实施例中,光源530(图6)可以被配置为发射观看者的视觉范围之外的一个或多个波长的光,例如,红外和/或紫外波长。另外,显示器250的波导的入耦合、出耦合和其它光重定向结构可以被配置为将该光朝向用户的眼睛210引导并发射出显示器,例如,用于成像和/或用户刺激应用。
现在参考图9A,在一些实施例中,可能需要重定向撞击到波导上的光以将该光入耦合到波导中。入耦合光学元件可以用于将光重定向并入耦合到其对应的波导中。图9A示出了多个堆叠波导或堆叠波导组660的示例的横截面侧视图,每个堆叠波导包括入耦合光学元件。波导可以各自被配置为输出一种或多种不同波长或一种或多种不同波长范围的光。应当理解,除了来自图像注入设备360、370、380、390、400中的一个或多个图像注入设备的光从需要将光重定向以入耦合的位置注入到波导中之外,堆叠660可以对应于堆叠260(图6),并且堆叠660的所示波导可以对应于多个波导270、280、290、300、310的一部分。
所示的堆叠波导组660包括波导670、680和690。每个波导包括相关联的入耦合光学元件(其也可以称为波导上的光输入区域),例如,设置在波导670的主表面(例如,上主表面)上的入耦合光学元件700、设置在波导680的主表面(例如,上主表面)上的入耦合光学元件710,以及设置在波导690的主表面(例如,上主表面)上的入耦合光学元件720。在一些实施例中,入耦合光学元件700、710、720中的一个或多个可以设置在相应的波导670、680、690(特别是一个或多个入耦合光学元件是反射的偏转光学元件的情况)的底部主表面上。如图所示,入耦合光学元件700、710、720可设置在它们相应的波导670、680、690(或下一个较低的波导的顶部)的上主表面上,特别是那些入耦合光学元件是透射的偏转光学元件的情况。在一些实施例中,入耦合光学元件700、710、720可设置在相应的波导670、680、690的主体中。在一些实施例中,如在此所讨论的,入耦合光学元件700、710、720是波长选择性的,使得它们选择性地重定向一个或多个波长的光,同时透射其它波长的光。虽然在它们相应的波导670、680、690的一侧或角上示出,但是应当理解,在一些实施例中,入耦合光学元件700、710、720可以设置在其相应的波导670、680、690的其它区域中。
如图所示,入耦合光学元件700、710、720可以在横向上彼此偏移,如在所示出的正面视图中在传播到这些入耦合光学元件的光的方向上所见。在一些实施例中,每个入耦合光学元件可以被偏移,使得其接收光而该光不穿过另一入耦合光学元件。例如,如图6中所示,每个入耦合光学元件700、710、720可被配置为从不同的图像注入设备360、370、380、390和400接收光,并且可以与其它入耦合光学元件700、710、720分离(例如,横向间隔开),使得它基本上不从入耦合光学元件700、710、720中的其它入耦合光学元件接收光。
每个波导还包括相关联的光分布元件,例如,设置在波导670的主表面(例如,顶部主表面)上的光分布元件730、设置在波导680的主表面(例如,顶部主表面)上的光分布元件740,以及设置在波导690的主表面(例如,顶部主表面)上的光分布元件750。在一些其它实施例中,光分布元件730、740、750可分别设置在相关联波导670、680、690的底部主表面上。在一些其它实施例中,光分布元件730、740、750可以分别设置在相关联波导670、680、690的顶部主表面和底部主表面二者上;或光分布元件730、740、750可以分别设置在不同的相关联的波导670、680、690中的顶部主表面和底部主表面中的不同主表面上。
波导670、680、690可以例如由气体、液体和/或固体材料层间隔开并分离。例如,如图所示,层760a可以分离波导670和680;并且层760b可以分离波导680和690。在一些实施例中,层760a和760b由低折射率材料(也就是说,具有比形成波导670、680、690中的紧邻波导的材料的折射率低的材料)形成。优选地,形成层760a、760b的材料的折射率是形成波导670、680、690的材料的折射率的0.05或更大,或者是0.10或更小。有利地,较低折射率层760a、760b可以用作包层,该包层有助于通过波导670、680、690的光的全内反射(TIR)(例如,每个波导的顶部和底部主表面之间的TIR)。在一些实施例中,层760a、760b由空气形成。尽管未示出,但是应当理解,所示出的波导组660的顶部和底部可以包括紧邻的包层。
优选地,为了易于制造和其它考虑,形成波导670、680、690的材料相似或相同,并且形成层760a、760b的材料相似或相同。在一些实施例中,在一个或多个波导之间,形成波导670、680、690的材料可以是不同的,和/或形成层760a、760b的材料可以是不同的,同时仍保持上述各种折射率关系。
继续参考图9A,光线770、780、790入射在该波导组660上。应当理解,可以通过一个或多个图像注入设备360、370、380、390、400(图6)将光线770、780、790注入波导670、680、690中。
在一些实施例中,光线770、780、790具有不同的特性,例如,不同的波长或不同的波长范围,其可以对应于不同的颜色。入耦合光学元件700、710、720每个使入射光偏转,使得光通过TIR传播通过波导670、680、690中的相应波导。在一些实施例中,入耦合光学元件700、710、720每个选择性地偏转一个或多个特定波长的光,同时将其它波长透射到下面的波导和相关联的入耦合光学元件。
例如,入耦合光学元件700可以被配置为使具有第一波长或波长范围的光线770偏转,同时透射分别具有不同的第二和第三波长或波长范围的光线780和790。透射光线780撞击到入耦合光学元件710上并由其偏转,该入耦合光学元件710被配置为使第二波长或波长范围的光偏转。光线790由入耦合光学元件720偏转,该入耦合光学元件720被配置为选择性地偏转第三波长或波长范围的光。
继续参考图9A,偏转的光线770、780、790被偏转,使得它们传播通过对应的波导670、680、690;也就是说,每个波导的入耦合光学元件700、710、720将光偏转到对应的波导670、680、690中,以将光入耦合到对应的波导中。光线770、780、790以使光通过TIR传播通过相应波导670、680、690的一定角度偏转。光线770、780、790通过TIR传播通过相应的波导670、680、690,直到撞击到波导的对应的光分布元件730、740、750上。
现在参考图9B,示出了图9A的多个堆叠的波导的示例的视角。如上所述,入耦合的光线770、780、790分别由入耦合光学元件700、710、720偏转,并且然后通过TIR分别在波导670、680、690内传播。然后,光线770、780、790分别撞击在光分布元件730、740、750上。光分布元件730、740、750使光线770、780、790偏转,使得它们分别朝向出耦合光学元件800、810、820传播。
在一些实施例中,光分布元件730、740、750是正交光瞳扩展器(OPE)。在一些实施例中,OPE将光偏转或分布到出耦合光学元件800、810、820,并且在一些实施例中,当光传播到出耦合光学元件时,还可以增加该光的光束或光斑大小。在一些实施例中,可以省略光分布元件730、740、750,并且可以将入耦合光学元件700、710、720配置为将光直接偏转到出耦合光学元件800、810、820。例如,参考图9A,光分布元件730、740、750可以分别用出耦合光学元件800、810、820代替。在一些实施例中,出耦合光学元件800、810、820是将光引导到观看者的眼睛210中的出射光瞳(EP)或出射光瞳扩展器(EPE)(图7)。应当理解,OPE可被配置为在至少一个轴上增加眼箱的尺寸,而EPE可被配置为在与OPE的轴相交(例如,正交)的轴线上增加眼箱。例如,每个OPE可被配置为将撞击OPE的光的一部分重定向到相同波导的EPE,同时允许光的其余部分继续沿波导向下传播。再次撞击在OPE上时,其余光的另一部分被重定向到EPE,并且该部分的其余部分继续沿波导向下进一步传播,依此类推。同样,在撞击EPE时,撞击的光的一部分从波导朝向用户向外引导,并且该光的其余部分继续传播通过波导,直到再次撞击EP,此时,撞击的光的另一部分被引导出波导,依此类推。因此,每次通过OPE或EPE重定向该光的一部分时,都可以“复制”单个入耦合光束,从而形成克隆光束的场,如图6中所示。在一些实施例中,OPE和/或EPE可以被配置为修改光束的大小。
相应地,参考图9A和图9B,在一些实施例中,该波导组660包括波导670、680、690;入耦合光学元件700、710、720;光分布元件(例如OPE)730、740、750;以及每个分量颜色的出耦合光学元件(例如EP)800、810、820。波导670、680、690可以以每个波导之间的气隙/包层堆叠。入耦合光学元件700、710、720将入射光(具有接收不同波长的光的不同的入耦合光学元件)重定向或偏转到其波导中。然后,光以一定角度传播,该角度将导致相应的波导670、680、690内的TIR。在所示示例中,光线770(例如,蓝光)由第一入耦合光学元件700偏转,并且然后继续以先前描述的方式沿波导向下反弹,与光分布元件(例如,OPE)730以及然后与出耦合光学元件(例如,EP)800相互作用。光线780和790(例如,分别为绿色和红色)将穿过波导670,光线780撞击在入耦合光学元件710上并由入耦合光学元件710偏转。然后,光线780经由TIR沿波导680向下反弹,继续进行到其光分布元件(例如,OPE)740,以及然后进行到出耦合光学元件(例如,EP)810。最后,光线790(例如,红光)穿过波导690撞击到波导690的光入耦合光学元件720上。光入耦合光学元件720使光线790偏转,使得光线通过TIR传播到光分布元件(例如,OPE)750,并且然后通过TIR传播到出耦合光学元件(例如,EP)820。然后,出耦合光学元件820最终将光线790出耦合到观看者,该观看者还从其它波导670、680接收出耦合光。
图9C示出了图9A和图9B的多个堆叠的波导的示例的俯视平面图。应当理解,该俯视图也可以称为正面视图,如在光朝向入耦合光学元件800、810、820的传播方向所见;也就是说,俯视图是波导的视图,其中图像光垂直于页面入射。如图所示,波导670、680、690以及每个波导的相关联的光分布元件730、740、750和相关联的出耦合光学元件800、810、820可以垂直对齐。然而,如在此所述,入耦合光学元件700、710、720不是垂直对齐的;相反,入耦合光学元件优选地是非重叠的(例如,如在俯视平面图中所见,横向地间隔开)。如在此进一步讨论的,该非重叠的空间布置有利于将来自不同源的光一对一地注入到不同的波导中,从而允许将特定的光源唯一地耦合到特定波导。在一些实施例中,包括非重叠的空间分离的入耦合光学元件的布置可以被称为移位光瞳系统,并且这些布置内的入耦合光学元件可以对应于子光瞳。
应当理解,空间重叠区域可以具有其区域的70%或更多、80%或更多、或90%或更多的横向重叠,如在俯视图中所见。另一方面,横向偏移区域具有其区域的小于30%重叠、小于20%重叠、或小于10%重叠,如俯视图所示。在一些实施例中,横向偏移区域没有重叠。
图9D示出了多个堆叠波导的另一个示例的俯视平面图。如图所示,波导670、680、690可以垂直对齐。然而,与图9C的配置相比,省略了单独的光分布元件730、740、750和相关联的出耦合光学元件800、810、820。取而代之的是,光分布元件和出耦合光学元件被有效地叠加并占据相同的区域,如俯视图中所见。在一些实施例中,光分布元件(例如,OPE)可以设置在波导670、680、690的一个主表面上,并且出耦合光学元件(例如,EPE)可以设置在那些波导的另一主表面上。因此,每个波导670、680、690可以具有叠加的光分布和出耦合光学元件,分别统称为组合OPE/EPE 1281、1282、1283。有关此类组合OPE/EPE的更多详细细节可在2018年12月14日提交的美国申请号16/221,359中找到,其全部公开内容通过引用并入本文。入耦合光学元件700、710、720将光分别入耦合并引导到组合OPE/EPE 1281、1282、1283。在一些实施例中,如图所示,入耦合光学元件700、710、720可以横向偏移(例如,它们横向间隔开,如在所示俯视图中所见)具有偏移的光瞳空间布置。与图9C的配置一样,这种横向偏移的空间布置有助于将不同波长的光(例如,来自不同光源)一对一地注入不同的波导。
图9E示出了可穿戴显示系统60的示例,可将在此所公开的各种波导和相关系统集成到该显示系统60中。在一些实施例中,显示系统60是图6的系统250,图6示意性地更详细地示出了该系统60的一些部分。例如,图6的波导组件260可以是显示器70的一部分。
继续参考图9E,显示系统60包括显示器70,以及支持该显示器70的功能的各种机械和电子模块和系统。显示器70可以耦合至框架80,该框架80可由显示系统用户或观看者90穿戴,并且被配置为将显示器70定位在用户90的眼睛前面。在一些实施例中,显示器70可以被认为是眼镜。显示器70可以包括一个或多个波导,例如波导270,其被配置为中继入耦合的图像光并将该图像光输出到用户90的眼睛。在一些实施例中,扬声器100耦合到框架80,并且被配置为定位在用户90的耳道附近(在一些实施例中,未示出的另一扬声器可以可选地定位在用户的另一耳道附近,以提供立体声/整形的声音控制)。显示系统60还可包括一个或多个麦克风110或检测声音的其它设备。在一些实施例中,麦克风被配置为允许用户向系统60提供输入或命令(例如,语音菜单命令的选择、自然语言问题等),和/或可以允许与其他人(例如与相似显示系统的其他用户)的音频通信。麦克风可以进一步被配置为外围传感器以收集音频数据(例如,来自用户和/或环境的声音)。在一些实施例中,显示系统60还可以包括一个或多个向外指向的环境传感器112,其被配置为检测对象、刺激、人、动物、位置或用户周围世界的其他方面。例如,环境传感器112可以包括一个或多个相机,这些相机可以被定位为例如面向外以便捕获与用户90的普通视场的至少一部分类似的图像。在一些实施例中,显示系统还可以包括外围传感器120a,该外围传感器120a可以与框架80分离并附接到用户90的身体(例如,用户90的头部、躯干、四肢上等)。在一些实施例中,外围传感器120a可以被配置为获得表征用户90的生理状态的数据。例如,传感器120a可以是电极。
继续参考图9E,显示器70通过通信链路130(诸如通过有线导线或无线连接)可操作地耦合到本地数据处理模块140,该本地数据处理模块140可以以各种配置安装,诸如固定地附接到框架80,固定地附接到用户佩戴的头盔或帽子,嵌入耳机中,或者以其它方式可移除地附接到用户90(例如,以背包式配置、以皮带耦合式配置)。类似地,传感器120a可以通过通信链路120b(例如,有线导线或无线连接)可操作地耦合到本地处理器和数据模块140。本地处理和数据模块140可以包括硬件处理器以及数字存储器,诸如非易失性存储器(例如,闪存或硬盘驱动器),二者均可以用于辅助数据的处理、缓存和存储。可选地,本地处理器和数据模块140可以包括一个或多个中央处理单元(CPU)、图形处理单元(GPU)、专用处理硬件等。数据可以包括如下数据:a)从传感器(例如,可以可操作地耦合到框架80或以其它方式附接到用户90)捕获的,诸如图像捕获设备(诸如相机)、麦克风、惯性测量单元、加速度计、罗盘、GPS单元、无线设备、陀螺仪和/或在此公开的其它传感器;和/或b)使用远程处理模块150和/或远程数据存储库160(包括与虚拟内容有关的数据)获得和/或处理的,可能在此类处理或取得之后传递给显示器70。本地处理和数据模块140可以由通信链路170、180,诸如经由有线或无线通信链路,可操作地耦合到远程处理模块150和远程数据存储库160,使得这些远程模块150、160可操作地彼此耦合,并可用作本地处理和数据模块140的资源。在一些实施例中,本地处理和数据模块140可以包括一个或多个图像捕获设备、麦克风、惯性测量单元、加速度计、罗盘、GPS单元、无线设备和/或陀螺仪。在一些其它实施例中,这些传感器中的一个或多个传感器可以附接到框架80,或者可以是通过有线或无线通信路径与本地处理和数据模块140通信的独立结构。
继续参考图9E,在一些实施例中,远程处理模块150可以包括被配置为分析和处理数据和/或图像信息的一个或多个处理器,例如包括一个或多个中央处理单元(CPU)、图形处理单元(GPU)、专用处理硬件等。在一些实施例中,远程数据存储库160可以包括数字数据存储设施,该数字数据存储设施可以通过互联网或“云”资源配置中的其它网络配置而可用。在一些实施例中,远程数据存储库160可以包括一个或多个远程服务器,该远程服务器向本地处理和数据模块140和/或远程处理模块150提供信息,例如用于生成虚拟内容的信息。在一些实施例中,所有数据都存储在本地处理和数据模块中,并且所有计算都在本地处理和数据模块中执行,从而允许从远程模块完全自主地使用。可选地,包括CPU、GPU等的外部系统(例如,一个或多个处理器、一个或多个计算机的系统)可以执行至少一部分处理(例如,生成图像信息、处理数据),并且例如经由无线或有线连接向模块140、150、160提供信息,以及从模块140、150、160接收信息。
协调应用状态
如上所述,可以在XR设备上执行应用以向用户呈现虚拟内容。例如,每个应用可以渲染某些虚拟内容。在该示例中,应用可以获得虚拟内容(例如,从网络地址)或可以包括要渲染的虚拟内容。上述示例应用包括被配置为呈现营养信息的营养应用。该应用可以包括或获得指示不同食物项目的营养信息的信息。如果用户接近某个食物项目,则应用可以渲染包括该食物项目的营养信息的虚拟内容。以这种方式,应用可以提供广泛的虚拟内容。如将描述的,用户可以指示用户感兴趣的类型的虚拟内容。提供这些所指示的类型的虚拟内容的应用可以由用户的XR设备获得并用于呈现虚拟内容。
每个应用可以与一个或多个锚位置相关联。如上所述,应用可以在现实世界中的特定锚位置呈现虚拟内容。在一些实施例中,这些锚位置可以代表现实世界内的准确位置。例如,锚位置可以对应于商店的某个过道中某个货架上的某个位置。因此,应用可以在该某个位置渲染虚拟内容,使得虚拟内容在用户在商店周围移动时似乎持久存在于现实世界中。
由于可用于呈现虚拟内容的应用过多,XR设备可能由于计算资源限制而无法执行应用。如以下将更详细描述的,XR设备可以利用示例协调技术来控制应用的状态。基于这种控制,用户在任何时候只能执行某些应用。其他应用可能会被丢弃或设置为“睡眠”状态。当用户在现实世界中移动时,应用的状态可能会迅速更新,以确保现实世界中的虚拟内容似乎持续存在。
示例框图-协调应用状态
图10示出了示出接近XR设备1002的应用1006至1014的不同应用状态的框图(即,应用1006-1014具有接近XR设备1002的关联锚位置)。在图10的示例中,示出了体积网格1000。体积网格1000包括多个单元,其中XR设备1002被包括在中心单元中。单元可以表示沿两个或多个轴(例如,在平面上或在三维体积内)的特定距离(例如,相对于现实世界)。因此,最远的单元可以表示距XR设备1002最远的空间区域或空间体积。类似地,中心单元可以表示最靠近XR设备1002的特定空间区域或空间体积。在一些实施例中,用户可能不位于中心单元中,在这种情况下,距用户较远的单元可能代表距XR设备1002较远的空间区域或空间体积,并且距离用户较近的单元可能代表靠近XR设备1002的特定空间区域或空间体积。
如图所示,不同的应用1006-1014被包括在体积网格1000的不同单元中。所示的应用1006-1014中的每一个可以表示与该应用相关联的锚位置。在一些实施例中,XR设备1002可以向外部服务器或系统提供位置信息。作为响应,外部服务器或系统可以提供应用位于XR设备1002的阈值距离内的指示。在一些实施例中,XR设备1002可以存储应用和相关联的锚位置。如将要描述的,某些应用可以基于它们与设备1002的接近度而被加载以供XR设备1002执行。
在一些实施例中,位置信息可以包括XR设备1002的全球导航卫星系统(GNSS)坐标。在一些实施例中,位置信息可以基于现实世界中的持久空间信息,例如本文所述的持久坐标框架(PCF)。与PCF有关的附加描述至少包含在美国专利申请第16/593,745号的图6B和14中,其构成本公开的一部分,如同在此阐述的一样。
虽然单元被示出为矩形,但可以理解可以使用其他形状。例如,单元可以是圆形、椭圆形、或任何任意多边形。此外,体积网格1000描绘了单元的二维网格。例如,该体积网格1000可以表示围绕XR设备1002的区域。在一些实施例中,该区域可以表示x方向(例如,横向方向)和z方向(例如,从XR设备1002向外的方向)。在一些实施例中,体积网格1000可以是三维的。例如,可能存在沿y方向的附加单元。在此示例中,应用可能因此位于距XR设备不同的高度。例如,应用可以在房间或建筑物顶部附近呈现虚拟内容。
在体积网格1000中,存在示例区域1004A-1004E,其用于协调将状态分配给应用1006-1014。被称为外面区域1004A的第一区域可以包含距XR设备1002大于阈值距离度量的单元的部分。在一些实施例中,位于该外面区域1004A中的应用可能不被XR设备1002加载。在一些其他实施例中,位于该外面一个1004A中的应用可以被加载(例如,从外部系统或从存储器获得),但不被执行。
被称为外部区域1004B的第二区域可以包含与外面区域1004A相比更靠近XR设备1002的单元的部分。如将要描述的,该外部区域1004B中的应用位置可以由XR设备1002加载并且设置为“睡眠”状态。例如,睡眠状态可以表示应用(例如,与应用相关联的进程)没有消耗XR设备1002的计算资源。
被称为缓冲区域1004C的第三区域可以包含接近XR设备1002的单元的部分。如将描述的,缓冲区域1004C可以表示其中应用在位于不同区域时保持与先前状态相比相同的状态的缓冲区。被称为活动区域1004D的第四区域可以包含更靠近XR设备1002的单元的部分。包括在该活动区域1004D中的应用可以被设置为“活动”状态。在一些实施例中,“活动”状态可以表示“活动+不渲染”状态。例如,应用可以消耗计算资源,使得它们保持活动但不通过XR设备1002渲染任何虚拟内容。
被称为呈现区域1004E的第五区域可以包含在XR设备1002的显示截头锥体内的单元的部分。例如,这些单元可以包含XR设备1002的用户正在观看的现实世界区域或体积。因此,并且对于增强现实显示系统,如果用户正在俯视街道,则呈现区域1004E可以包含街道的用户可见的部分。类似地,并且对于移动设备,呈现区域1004E可以包括街道的对移动设备的一个或多个面向外的图像传感器可见的部分。在一些实施例中,这些图像传感器可以被定向为捕获移动设备前方的图像,例如,以模拟用户的视场。为了确定对于增强现实显示系统的呈现区域1004E,在一些实施例中,XR设备1002可以确定用户的头部姿势。例如,XR设备1002可以包括惯性测量单元(IMU)。在该示例中,可以基于来自IMU的信息来确定用户的头部姿势。基于确定的头部姿势,XR设备1002可以确定用户的视场。
与确定用户的头部姿势有关的附加描述包括在美国专利公开2019/0188474中,其构成本公开的一部分,如同在此规定的一样。
可选地,XR设备1002可以基于从XR设备1002的一个或多个面向外的图像传感器获得的图像来确定呈现区域1004E。例如,XR设备1002可以分析图像并基于图像中描绘的特征生成描述符。XR设备1002然后可以访问与XR设备1002的位置相关联的一个或多个PCF。基于PCF与生成的描述符的比较,XR设备1002可以确定是否有任何应用被配置为渲染虚拟内容。例如,XR设备1002可以确定在获得的图像中是否描绘了任何锚位置。这些应用可以由XR设备1002确定为落入呈现区域1004E内。
在一些实施例中,呈现区域1004E可以被限制在z方向上。例如,呈现区域1004E可以包括沿z方向距用户的阈值距离内的应用。在一些实施例中,呈现区域1004E可以包含XR设备1002的全部显示截头锥体。
如上所述,体积网格1000可以以XR设备1002为中心。随着XR设备1002在世界内移动,可以相应地更新体积网格1000。例如,如果XR设备1002横向向右移动,则所示应用1006-1014可以在网格1000中横向向左移动。此外,当XR设备1002向右移动时,某些应用可以从体积网格1000中移除。作为另一示例,当XR设备1002横向向右移动时,一个或多个新应用可以包括在体积网格1000中在网格1000的右侧部分。在该示例中,可以发现新应用并将其包括在体积网格1000中。新应用将由XR设备1002进行监控和分配状态。相反,XR设备1002将不会监控已移除的应用。
所示示例包括应用1006,其可以表示尚未由XR设备1002加载但在XR设备1002的阈值距离内的应用。因此,XR设备1002相对于应用1006的位置可以被监控。如果XR设备1002移动到更靠近应用1006中的特定一个,则特定应用可以由XR设备1002加载。例如,可以确定特定应用落入外部区域1004B内。
应用1008可以表示通常不与视觉虚拟内容的呈现相关联的后台应用。例如,这些应用1008可以向用户提供音频。在该示例中,应用1008可以表示无线电台、音频提示、音频消息等。由于这些后台应用1008可能不消耗大量计算资源和/或它们的功能要求它们保持持续活动(并且可能向用户提供输出,例如音频),它们可以可选地由XR设备1002加载而不管它们的位置在体积网格1000内。
应用1010可以表示处于活动状态但不渲染虚拟内容的应用。如图10所示,这些应用1010可以位于XR设备1002的显示截头锥体之外。此外,这些应用可以包括在活动区域1004D中,从而基于XR设备1002的姿势位置的调整,如果它们落入呈现区域1004E内,它们可以快速呈现虚拟内容。
应用1012可以表示处于活动状态并且正在向XR设备1002的用户渲染虚拟内容(和/或其他内容,例如音频)的应用。如图10所示,这些应用1012位于呈现区域1004E内。例如,这些应用在XR设备1002的显示截头锥体内。基于XR设备1002的移动,应用1012中的特定一个可以移动到呈现区域1004E之外。有利地,可以在状态中快速调整特定应用,使得XR设备1002使应用停止渲染虚拟内容。
应用1014可以表示已加载但已被设置为睡眠的应用。因此,这些应用1014可能是不活动的。如图所示,应用1014中的特定应用1016被包括在XR设备1002的显示截头锥体内。然而,这个特定应用1016被包括在上述缓冲区域1004C中。作为示例,特定应用1016可以基于XR设备1002的移动从外部区域1004B移动到缓冲区域1004C中。缓冲区域1004C可以提供应用的状态不从先前状态改变的区域。如果XR设备1002沿着z方向朝向图示的底部移动,则特定应用1016可以落入呈现区域1004E内。因此,XR设备可以使特定应用处于活动状态并设置为渲染虚拟内容。
图11示出了与将状态分配给应用相关联的示例状态图1100。在所示示例中,包括指示应用的当前状态1102以及状态事件1104的结果的表格。例如,可以基于应用在图10的体积网格1000内的位置来确定当前状态。状态事件1104可以表示应用移动到体积网格1000内的不同位置。作为示例,应用可能由于XR设备的移动或姿势的调整而移动到上述区域1004A-1004E中的不同一个。
XR设备可以使用状态图1100来协调应用的状态。如图10中所述,XR设备可以识别接近XR设备的应用。在一些实施例中,体积网格可用于确定每个已识别应用的特定状态。
距XR设备最远的已识别应用可设置为“未加载”1106的当前状态1102。例如,这些应用可能已从外部系统检索但尚未由XR设备加载。作为另一个示例,这些应用可能尚未从外部系统检索。作为另一个示例,这些应用可以存储在XR设备的存储器中但不加载。
基于XR设备的移动,或者可选地应用的移动,可以基于状态事件1104的结果将“未加载”应用1106设置为新状态。例如,XR设备可以移动使得应用位于外部区域1004B内。在此示例中,XR设备可以将应用的状态设置为“睡眠”。
被设置为“睡眠”状态1108的应用可以类似地基于状态事件1104被更新。例如,状态事件1104可以导致应用被定位在缓冲区域1004C内。在此示例中,应用可能保持设置为“睡眠”状态。作为另一示例,状态事件1104可以导致应用被定位在区域1104D或1104E内。在此示例中,应用可以更新为活动的。如果应用在区域1104E内,则应用可以将虚拟内容渲染给XR设备的用户。
可以基于状态事件1104来更新被设置为“活动+不渲染”状态1110的应用。例如,可以将应用更新就位以落入呈现区域1004E内。在此示例中,应用因此可以在XR设备的显示截头锥体内可见。因此,状态可以更新为“活动+渲染”。但是,如果应用远离XR设备,它可能会更新为“睡眠”或“未加载”状态。
某些应用可以代表后台应用,例如提供音频或音乐的应用。这些应用可以被分配“支持后台”状态1114。由于这些应用可能不会消耗大量资源和/或需要不断地处于活动状态并提供输出,所以无论在图10的体积网格内的位置如何,它们都可以被加载。例如,当它们在XR设备的阈值距离内时,它们可能由XR设备加载。
在一些实施例中,这些后台应用可以设置为“活动+渲染”状态。这可以允许后台应用向用户输出内容,例如音频内容。这也可以允许后台应用向用户提供虚拟内容(例如,视觉内容)。例如,它们通常可以提供音频或音乐,但可以根据某些触发器提供虚拟内容。示例触发器可以包括用户提供用户输入以引起虚拟内容的呈现。作为示例,用户可以触发与音乐应用相关联的控制菜单的呈现。因此,用户可以与包括控制菜单的虚拟内容交互。
因此,XR设备可以基于应用与XR设备的接近度将状态分配给应用。如上所述,应用可以具有一个、两个或多个锚位置。例如,营养应用可以具有与第一项相关联的第一锚位置和与第二项相关联的第二锚位置。XR设备可以基于锚位置的最高状态将状态分配给营养应用。例如,如果第一锚位置在呈现区域1104E设备内并且第二锚位置在外部区域1004B内,则可以为应用分配“活动+渲染”状态。这样,应用可以通过XR设备呈现虚拟内容。
示例流程图-协调应用状态
图12是用于更新应用的状态的示例过程1200的流程图。为方便起见,过程1200将被描述为由一个或多个处理器的系统执行。例如,该系统可以是XR设备(例如,可穿戴设备,例如显示系统60;智能手机;平板电脑;等等)。
在框1202,系统识别接近系统位置的应用。如图10至11中所述,系统可以向与系统通信(有线或无线通信)的外部系统提供位置信息。示例位置信息可以包括GNSS坐标,或与如上所述的持久坐标框架(PCF)相关联的位置信息。作为响应,外部系统可以识别一个或多个应用,其中锚点位于系统的阈值距离内。在一些实施例中,系统可以存储应用并且可以识别是否有任何锚点位于系统的阈值距离内。
在框1204,系统确定应用的状态。系统可以基于应用与系统的距离度量来确定状态。另外,系统可以基于系统的视点来确定状态。在一些实施例中,系统可以访问如图10中描述的体积网格。基于应用在体积网格内的位置,可以确定应用的状态。例如,如果应用位于系统的显示截头锥体内(例如,图10的呈现区域1004E),则应用可以设置为“活动+渲染”状态。
在框1206,系统实现所确定的状态。如果确定应用在系统的阈值距离内,则系统可以加载应用。例如,可以通过网络连接从外部系统检索应用。作为另一个示例,可以从系统的存储中加载应用。如果确定应用更靠近系统,则可以将应用设置为“活动”状态。因此,系统可以执行应用,从而消耗计算资源。可选地,系统可以使应用基于被设置为“活动+渲染”状态的应用来渲染虚拟内容。
在框1208,系统基于状态事件更新应用的状态。如图11所述,应用的状态可以基于系统的移动进行调整。例如,系统可以在位置上进行调整。在这个示例中,用户可以调整他/她在现实世界中的二维位置。用户还可以调整系统的高度(例如,用户可以爬楼梯,可以在建筑物中向上移动,等等)。作为另一示例,可以调整系统的视点。例如,对于增强现实显示设备,可以调整用户的头部姿势。作为另一个示例,例如对于智能电话或平板电脑,一个或多个面向外的相机的视点可由于智能电话或平板电脑的移动而被调整。
在一些实施例中,状态事件可以表示应用调整它自己的位置。例如,可以调整与应用相关联的锚位置。例如,应用可能会导致渲染虚拟化的动物或生物。在该示例中,虚拟化的动物或生物可以周期性地调整到适当的位置。例如,它可能在特定时间与某个街道相关联,然后在不同时间与不同街道相关联。因此,应用可以更新其相关联的锚位置。在一些实施例中,应用可以从外部系统接收信息。这样,在多个系统上执行的应用的任何实例都可以在相同或相似的时间接收更新的位置。
基于状态事件,系统可以更新与应用相关联的状态。例如,系统可以使用图11中描述的状态图来分配新状态。
为了便于描述,以上描述集中于由系统加载的应用,例如增强现实显示设备。然而,应当理解,在一些实施例中,应用可以由外部系统(例如,云系统)来执行。例如,应用可以由外部系统执行,并且虚拟内容可以被提供(例如,流式传输)给系统以供呈现。与上述类似,系统可以向外部系统提供位置信息。基于位置信息,系统可以确定在系统的阈值距离内的任何应用的状态。类似地,基于确定的状态,外部系统可以渲染某些虚拟内容并提供渲染的虚拟内容以呈现给系统。所渲染的虚拟内容可以与可用于将虚拟内容定位在特定锚位置处的信息一起提供。例如,该信息可以反映PCF,使得系统可以基于描述符的比较来放置虚拟内容。
示例流程图–过滤应用
在一些实施例中,对于XR设备来说可能存在太多的应用无法为其加载和/或渲染内容。例如,可能存在大于阈值数量的应用位于XR设备的阈值距离内。因此,XR设备可能无法加载阈值距离内的所有应用。此外,XR设备在网络连接方面可能具有有限的带宽。因此,XR设备可能无法从外部系统快速获取(例如,下载)应用,使得在加载应用时XR设备的用户感知到虚拟内容弹出到他/她的视场中,而不是看到内容无缝的呈现。
如下所述,XR设备可以可选地过滤应用,从而加载被确定为用户感兴趣的应用。
图13是用于过滤应用的示例过程1300的流程图。为方便起见,过程1300将被描述为由一个或多个处理器的系统执行。例如,该系统可以是XR设备(例如,可穿戴设备,例如显示系统60;智能手机;平板电脑;等等)。
在框1302,系统获得位置信息并在框1304识别接近其位置的应用。如上所述,系统可以被配置为加载阈值数量的应用。例如,系统可能具有有限的内存、计算资源等。如果系统识别出大于阈值数量的应用,则系统可以过滤识别出的应用。
在框1306,系统访问与系统的用户相关联的档案(profile)信息。档案信息可以指示用户的内容偏好。例如,用户可能对营养信息感兴趣。因此,档案信息可以反映这种兴趣。作为另一个示例,用户可能已经指示他/她对观看与游戏相关联的虚拟内容不感兴趣。某些应用可能被设计为向应用的用户提供游戏体验。
在框1308,系统过滤一个或多个应用。系统可以基于档案信息从考虑中移除一个或多个识别的应用。因此,这些被移除的应用可能不会被系统加载。例如,系统可以分析应用的文本描述或其他元数据。然后系统可以移除不符合档案信息的应用。
虽然上面的描述集中在档案信息上,但其他信息可以附加地或替代地用于过滤应用。例如,可以分析与系统的使用相关联的上下文信息。在该示例中,系统的用户可能正在将系统用于特定上下文。作为示例,系统可以使用该系统来提供到目的地的方向。在此示例中,系统可以过滤与此上下文无关的应用。例如,它可能会移除与游戏相关联的应用。作为另一个示例,它可以移除呈现描述替代目的地的信息的应用。例如,旅行应用可能会指示城市中的重要地标。然而,由于用户已经指示了对到特定位置的方向的偏好,因此这些地标可能不会被呈现。
系统还可以使用可见性信息。例如,系统可以过滤被配置为在用户可见性有限的锚位置处呈现虚拟内容的应用。例如,如果用户在街道上行走,系统可能会移除具有从用户的角度被阻挡的锚位置的应用。作为另一个示例,系统可以移除锚位置高于或低于用户正在查看的应用。在一些实施例中,系统可以使用深度平面信息来过滤应用。例如,系统可能更喜欢将呈现在彼此相同的深度平面上的应用。因此,在不同深度平面上呈现虚拟内容的应用可能不受欢迎。作为另一示例,可能不喜欢要在如此接近用户处呈现虚拟内容以引起用户不适的应用。
系统还可以使用可用性和/或交互性信息。例如,某些应用的可用性可能较低。该可用性信息可以根据应用的用户评级来确定,或者可以由外部系统基于分析与来自应用的虚拟内容的交互来确定。类似地,某些应用可能具有高交互性。作为示例,可以过滤更具交互性或更少交互性的虚拟内容。交互性的示例可以包括响应于用户输入的虚拟内容。可选地,用户可以设置偏好以过滤更多交互或更少交互的虚拟内容。在一些实施例中,可以使用难处理信息。例如,这些应用可能会消耗过多的计算资源。如果它们未被指示为用户特别感兴趣,则它们可以被过滤。
因此,在一些实施例中,系统可以过滤接近系统的应用。例如,可以基于系统的用户的用户档案信息来移除某些应用。在一些实施例中,剩余的应用对于系统的计算资源可能仍然太大。例如,系统可能无法为剩余的应用渲染虚拟内容。如下所述,关于图14,系统可以可选地附加地或替代地对应用进行排名并根据排名进行渲染。
图14是用于基于应用的排名来渲染应用的示例过程1400的流程图。为方便起见,过程1400将被描述为由一个或多个处理器的系统执行。例如,该系统可以是XR设备(例如,可穿戴设备,例如显示系统60;智能手机;平板电脑;等等)。
在框1402,系统获得系统的位置并且在框1402识别接近系统的多个应用。如图13中所述,可以过滤识别的应用。然而,即使有过滤,也可能有太多的应用被配置为通过系统呈现虚拟内容。
在框1406,系统根据一个或多个度量对过滤的应用进行排名。系统可以为过滤的应用分配优先级。例如,应用的优先级可以基于系统的视场、应用的已知优先级、用户的移动、应用的可达性等来确定。关于视场,系统可以对被配置为完全在系统的视场内渲染虚拟内容的应用进行优先级排序。此外,该系统可以对被配置为渲染包含更大视场百分比的虚拟内容的应用进行优先级排序。
关于已知优先级,某些应用可能具有分配的优先级或重要性。具有高优先级的示例应用可能是琥珀色警报应用。另一个具有高优先级的示例应用可以是消息传递应用。因此,这些应用的排名可能高于其他应用。关于用户移动,基于系统的轨迹预期保持活动的某些应用可能排名较高。例如,基于用户在街道上移动,可以预期第一应用保持活动。作为另一示例,基于用户继续沿着街道,可以预期第二应用进入睡眠状态。
类似地,并且关于可达性,某些应用可以在用户可访问的锚位置处呈现虚拟评论。例如,虚拟内容可以基本上以视线水平呈现,使得用户可以与虚拟内容交互。相反,某些其他应用可能会在用户无法访问的锚位置呈现虚拟内容。例如,如果用户在街道上行走,则用户可能无法访问呈现在二层建筑的窗户上的虚拟内容。因此,可以为该虚拟内容分配较低的排名。
上述度量可以由系统聚合以确定每个应用的排名。可选地,系统可以将图13的过程与过程1400组合。例如,系统可以结合用户档案信息以及上述度量,以减少接近用户的应用的数量。
在框1408,系统基于排名渲染应用。该系统可以使应用根据各自的排名来渲染虚拟内容。在阈值数量的应用渲染虚拟内容之后,系统可以使剩余的应用置于“睡眠”或“活动+不渲染”状态。应用的阈值数量可以基于系统的可用计算资源。例如,如果系统确定它缺乏足够的存储,或者虚拟内容将以低于阈值帧速率的速度进行渲染,等等,系统可以调整剩余应用的状态。
其他实施例
本文描述了本发明的各种示例实施例。以非限制性的方式参考这些示例。提供它们是为了说明本发明更广泛适用的方面。在不背离本发明的精神和范围的情况下,可以对所描述的发明进行各种改变并且可以替换等效物。
例如,虽然有利地与跨多个深度平面提供图像的AR显示器一起使用,但本文公开的虚拟内容也可以由在单个深度平面上提供图像的系统显示。
此外,可以进行许多修改以使特定情况、材料、物质组成、过程、过程动作或步骤适应本发明的目标、精神或范围。此外,如本领域技术人员将理解的,本文描述和图示的每个单独的变体具有离散的组件和特征,它们可以容易地与任何其他几个实施例的特征分离或与任何其他几个实施例的特征组合而不背离本发明的范围或精神。所有这些修改都旨在落入与本公开相关联的权利要求的范围内。
本发明包括可以使用主题设备执行的方法。该方法可以包括提供这种合适的设备的动作。这种提供可以由用户执行。换言之,“提供”动作仅要求用户获得、访问、接近、定位、设置、激活、通电或以其他方式动作以提供主题方法中的必要设备。在此列举的方法可以以逻辑上可能的所列举事件的任何顺序以及以所列举的事件顺序来执行。
此外,应当理解,本文描述和/或图中描绘的每个过程、方法和算法可以体现在由一个或多个物理计算系统、硬件计算机处理器、专用电路和/或配置为执行特定和特定计算机指令的电子硬件执行的代码模块中,并由其完全或部分自动化。例如,计算系统可以包括用特定计算机指令编程的通用计算机(例如,服务器)或专用计算机、专用电路等。代码模块可以编译并链接到可执行程序中,安装在动态链接库中,或者可以用解释的编程语言编写。在一些实施例中,特定的操作和方法可以由特定于给定功能的电路来执行。
此外,本公开的功能的某些实施例在数学上、计算上或技术上足够复杂,以至于可能需要特定应用硬件或一个或多个物理计算设备(利用适当的专用可执行指令)来执行该功能,例如,由于所涉及计算的数量或复杂性,或为了提供基本实时的结果。例如,视频可能包括许多帧,每帧具有数百万像素,并且需要专门编程的计算机硬件来处理视频数据以在商业上合理的时间内提供所需的图像处理任务或应用。
代码模块或任何类型的数据可以存储在任何类型的非暂时性计算机可读介质上,例如物理计算机存储器,包括硬盘驱动器、固态存储器、随机存取存储器(RAM)、只读存储器(ROM)、光盘、易失性或非易失性存储器、它们的组合和/或类似物。在一些实施例中,非暂时性计算机可读介质可以是本地处理和数据模块(140)、远程处理模块(150)和远程数据存储库(160)中的一个或多个的一部分。方法和模块(或数据)也可以作为生成的数据信号(例如,作为载波或其他模拟或数字传播信号的一部分)在各种计算机可读传输介质上传输,包括基于无线和基于有线/电缆的介质,并且可以采用多种形式(例如,作为单个或多路复用模拟信号的一部分,或作为多个离散数字数据包或帧)。所公开的过程或过程步骤的结果可以持久地或以其他方式存储在任何类型的非暂时性、有形计算机存储器中,或者可以通过计算机可读传输介质进行通信。
本文描述和/或附图中描绘的任何过程、块、状态、步骤或功能应被理解为潜在地表示代码模块、段或代码部分,其包括用于实现特定功能(例如,逻辑或算术)或过程中的步骤的一个或多个可执行指令。各种过程、块、状态、步骤、或功能可以从这里提供的说明性示例进行组合、重新排列、添加、删除、修改、或以其他方式改变。在一些实施例中,附加的或不同的计算系统或代码模块可以执行本文描述的一些或所有功能。这里描述的方法和过程也不限于任何特定的顺序,并且与其相关的块、步骤或状态可以以适当的其他顺序执行,例如,串行、并行或以一些其他方式。任务或事件可以被添加到所公开的示例实施例中或从所公开的示例实施例中移除。此外,本文描述的实施例中的各种系统组件的分离是为了说明的目的,不应理解为在所有实施例中都需要这种分离。应该理解,所描述的程序组件、方法和系统通常可以一起集成在单个计算机产品中或封装到多个计算机产品中。
本发明的示例方面以及关于材料选择和制造的细节已经在上面阐述。关于本发明的其他细节,这些可以结合上面引用的专利和出版物以及本领域技术人员通常已知或理解的来理解。对于本发明的基于方法的方面,在通常或逻辑上采用的附加动作方面,同样如此。
此外,虽然本发明已经参考可选地结合了各种特征的几个示例进行了描述,但本发明不限于关于本发明的每个变体所描述或指示的内容。在不背离本发明的精神和范围的情况下,可以对所描述的发明进行各种改变并且可以替换等效物(无论是在本文中列举的还是为了简洁起见未包括在内)。此外,在提供数值范围的情况下,应理解,在该范围的上限和下限与该范围内的任何其他规定或中间值之间的每个中间值都包含在本发明内。
此外,预期所描述的本发明变体的任何可选特征可以独立地阐述和要求保护,或者与本文描述的任何一个或多个特征组合。对单数项目的引用包括存在多个相同项目的可能性。更具体地,如本文和与本文相关联的权利要求中使用的,单数形式“一”、“一个”、“所述”和“该”包括复数指示物,除非另有明确说明。换言之,冠词的使用允许上述描述中的“至少一个”主题项目以及与本公开相关联的权利要求。还应注意,可以起草此类权利要求以排除任何可选元素。因此,本声明旨在作为在引用权利要求要素或使用“否定”限制时使用“仅”、“仅仅”等排他性术语的先行基础。在不使用此类排他性术语的情况下,与本公开相关联的权利要求中的术语“包括”应允许包含任何附加元素——无论此类权利要求中是否列举了给定数量的元素,或者添加的特征可以被视为改变了此类权利要求中所述要素的性质。
因此,权利要求不旨在限于本文所示的实施例,而是要符合与本公开、本文公开的原理和新颖特征一致的最宽范围。

Claims (20)

1.一种由包括一个或多个处理器的交叉现实XR设备实现的方法,所述XR设备被配置为向所述XR设备的用户呈现虚拟内容,所述方法包括:
获取识别一个或多个应用的信息,所述一个或多个应用具有位于所述XR设备的第一阈值距离度量内的相应的锚位置,其中,锚位置对应于要呈现虚拟内容的真实世界位置;
确定从多个状态中选择的要被分配给所述一个或多个应用的相应的状态,所述状态是基于所述锚位置与所述XR设备的接近度被确定;
实现所述状态,其中,所述一个或多个应用中的第一应用被分配要渲染虚拟内容的状态,并且其中,所述第一应用通过所述XR设备在第一锚位置呈现虚拟内容;以及
响应于所述XR设备的移动,确定所述一个或多个应用的更新状态。
2.根据权利要求1所述的方法,还包括:
向外部系统提供指示所述XR设备的位置的信息;以及
从所述外部系统接收识别所述一个或多个应用的信息。
3.根据权利要求2所述的方法,其中,所述XR设备接收所述一个或多个应用的子集,所述子集具有位于所述XR设备的第二阈值距离度量内的锚位置,其中,响应于所述XR设备的移动,第二应用被确定具有在所述第二阈值距离度量内的锚位置,并且其中,从所述外部系统接收所述第二应用以供执行。
4.根据权利要求1所述的方法,其中,确定所述第一应用的状态包括:
识别多个区域中的所述第一应用位于其中的第一区域,所述区域被包括在以所述XR设备的位置为中心的体积网格中,其中,所述第一区域与所确定的状态相关联。
5.根据权利要求4所述的方法,其中,所述第一区域指示所述第一应用位于所述XR设备的显示截头锥体内,以使得所述第一应用被设置为与渲染虚拟内容相关联的活动状态。
6.根据权利要求4所述的方法,其中,第二区域指示应用位于所述XR设备的显示截头锥体之外,以使得所述应用被设置为不与渲染虚拟内容相关联的状态。
7.根据权利要求4所述的方法,其中,所述多个区域与这样的状态相关联,所述状态包括:应用被设置为活动并且与渲染虚拟内容相关联,所述应用被设置为活动并且不与渲染虚拟内容相关联,所述应用被设置为睡眠状态,或者所述应用被设置为卸载状态。
8.根据权利要求1所述的方法,其中,基于所述XR设备的移动,新应用被识别为在所述XR设备的所述第一阈值距离度量内,并且其中,确定所述新应用的状态。
9.根据权利要求1所述的方法,还包括:
识别具有与活动和渲染虚拟内容相关联的所确定的状态的大于阈值数量的应用;
根据一个或多个度量对所述阈值数量的应用进行排名;以及
实现所确定的状态,其中,所述阈值数量的应用中的一个或多个应用根据所述排名来呈现虚拟内容,并且其中,所述阈值数量的应用中的剩余应用被设置为与不渲染虚拟内容相关联的状态。
10.根据权利要求1所述的方法,其中,所述XR设备是被配置为在多个深度平面上呈现虚拟内容的增强现实显示设备,其中,每个深度平面与相应的适应提示相关联。
11.根据权利要求1所述的方法,其中,所述第一锚位置是基于由所述XR设备的一个或多个面向外的图像传感器所获得的一个或多个图像与与接近所述XR设备的现实世界相关联的存储的持久信息进行比较来确定的。
12.根据权利要求1所述的方法,其中,所述第一应用在表示空间的体积的棱柱中呈现虚拟内容,所述棱柱与所述第一锚位置相关联。
13.一种包括一个或多个处理器的系统,所述系统被配置为向所述系统的用户呈现虚拟内容,其中,所述系统还包括存储指令的非暂时性计算机存储介质,所述指令在由所述一个或多个处理器执行时使得所述一个或多个处理器执行包括以下的操作:
获取识别一个或多个应用的信息,所述一个或多个应用具有位于所述XR设备的第一阈值距离度量内的相应的锚位置,其中,锚位置对应于要呈现虚拟内容的真实世界位置;
确定从多个状态中选择的要分配给所述一个或多个应用的相应的状态,所述状态是基于所述锚位置与所述XR设备的接近度被确定;
实现所述状态,其中,所述一个或多个应用中的第一应用被分配渲染虚拟内容的状态,并且其中,所述第一应用通过所述XR设备在第一锚位置呈现虚拟内容;以及
响应于所述XR设备的移动,确定所述一个或多个应用的更新状态。
14.根据权利要求13所述的系统,其中,确定所述第一应用的状态包括:
识别多个区域中的所述第一应用位于其中的第一区域,所述区域被包括在以所述XR设备的位置为中心的体积网格中,其中,所述第一区域与所确定的状态相关联。
15.根据权利要求14所述的系统,其中,所述第一区域指示所述第一应用位于所述XR设备的显示截头锥体内,以使得所述第一应用被设置为与渲染虚拟内容相关联的活动状态,并且其中,第二区域指示应用位于所述XR设备的显示截头锥体之外,以使得所述应用被设置为不与渲染虚拟内容相关联的状态。
16.根据权利要求14所述的系统,其中,所述多个区域与这样的状态相关联,所述状态包括:应用被设置为活动并且与渲染虚拟内容相关联,所述应用被设置为活动并且不与渲染虚拟内容相关联,所述应用被设置为睡眠状态,或者所述应用被设置为卸载状态。
17.根据权利要求13所述的系统,其中,所述操作还包括:
识别具有与活动和渲染虚拟内容相关联的所确定的状态的大于阈值数量的应用;
根据一个或多个度量对所述阈值数量的应用进行排名;以及
实现所确定的状态,其中,所述阈值数量的应用中的一个或多个应用根据所述排名来呈现虚拟内容,并且其中,所述阈值数量的应用中的剩余应用被设置为与不渲染虚拟内容相关联的状态。
18.一种存储指令的非暂时性计算机存储介质,所述指令在由包括一个或多个处理器并被配置为向系统的用户呈现虚拟内容的所述系统执行时使所述一个或多个处理器执行包括以下的操作:
获取识别一个或多个应用的信息,所述一个或多个应用具有位于所述XR设备的第一阈值距离度量内的相应的锚位置,其中,锚位置对应于要呈现虚拟内容的真实世界位置;
确定从多个状态中选择的要分配给所述一个或多个应用的相应的状态,所述状态是基于所述锚位置与所述XR设备的接近度被确定;
实现所述状态,其中,所述一个或多个应用中的第一应用被分配渲染虚拟内容的状态,并且其中,所述第一应用通过所述XR设备在第一锚位置呈现虚拟内容;以及
响应于所述XR设备的移动,确定所述一个或多个应用的更新状态。
19.根据权利要求18所述的计算机存储介质,其中,确定所述第一应用的状态包括:
识别多个区域中的所述第一应用位于其中的第一区域,所述区域被包括在以所述XR设备的位置为中心的体积网格中,其中,所述第一区域与所确定的状态相关联。
20.根据权利要求19所述的计算机存储介质,其中,所述多个区域与这样的状态相关联,所述状态包括:应用被设置为活动并且与渲染虚拟内容相关联,所述应用被设置为活动并且不与渲染虚拟内容相关联,所述应用被设置为睡眠状态,或者所述应用被设置为卸载状态。
CN202180011048.0A 2020-01-27 2021-01-25 基于锚的交叉现实应用的增强状态控制 Pending CN115004235A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US202062966477P 2020-01-27 2020-01-27
US62/966,477 2020-01-27
PCT/US2021/014946 WO2021154656A1 (en) 2020-01-27 2021-01-25 Enhanced state control for anchor-based cross reality applications

Publications (1)

Publication Number Publication Date
CN115004235A true CN115004235A (zh) 2022-09-02

Family

ID=76970380

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202180011048.0A Pending CN115004235A (zh) 2020-01-27 2021-01-25 基于锚的交叉现实应用的增强状态控制

Country Status (5)

Country Link
US (2) US11756509B2 (zh)
EP (1) EP4097684A4 (zh)
JP (1) JP2023511083A (zh)
CN (1) CN115004235A (zh)
WO (1) WO2021154656A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115004235A (zh) 2020-01-27 2022-09-02 奇跃公司 基于锚的交叉现实应用的增强状态控制

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6222525B1 (en) 1992-03-05 2001-04-24 Brad A. Armstrong Image controllers with sheet connected sensors
US5670988A (en) 1995-09-05 1997-09-23 Interlink Electronics, Inc. Trigger operated electronic device
US11428937B2 (en) 2005-10-07 2022-08-30 Percept Technologies Enhanced optical and perceptual digital eyewear
US20070081123A1 (en) 2005-10-07 2007-04-12 Lewis Scott W Digital eyewear
US8696113B2 (en) 2005-10-07 2014-04-15 Percept Technologies Inc. Enhanced optical and perceptual digital eyewear
US9304319B2 (en) 2010-11-18 2016-04-05 Microsoft Technology Licensing, Llc Automatic focus improvement for augmented reality displays
US10156722B2 (en) 2010-12-24 2018-12-18 Magic Leap, Inc. Methods and systems for displaying stereoscopy with a freeform optical system with addressable focus for virtual and augmented reality
JP6185844B2 (ja) 2010-12-24 2017-08-30 マジック リープ, インコーポレイテッド 人間工学的ヘッドマウントディスプレイデバイスおよび光学システム
CN103635891B (zh) 2011-05-06 2017-10-27 奇跃公司 大量同时远程数字呈现世界
US9118776B2 (en) 2011-06-03 2015-08-25 Apple Inc. Location monitoring feature of a mobile device for activating an application subsystem
EP2760363A4 (en) 2011-09-29 2015-06-24 Magic Leap Inc TACTILE GLOVE FOR HUMAN COMPUTER INTERACTION
BR112014010230A8 (pt) 2011-10-28 2017-06-20 Magic Leap Inc sistema e método para realidade virtual e aumentada
WO2013152205A1 (en) 2012-04-05 2013-10-10 Augmented Vision Inc. Wide-field of view (fov) imaging devices with active foveation capability
US9671566B2 (en) 2012-06-11 2017-06-06 Magic Leap, Inc. Planar waveguide apparatus with diffraction element(s) and system employing same
EP2895910A4 (en) 2012-09-11 2016-04-20 Magic Leap Inc ERGONOMIC HEAD-MOUNTED DISPLAY DEVICE AND OPTICAL SYSTEM
KR102387314B1 (ko) * 2013-03-11 2022-04-14 매직 립, 인코포레이티드 증강 및 가상 현실을 위한 시스템 및 방법
NZ751602A (en) 2013-03-15 2020-01-31 Magic Leap Inc Display system and method
US9874749B2 (en) 2013-11-27 2018-01-23 Magic Leap, Inc. Virtual and augmented reality systems and methods
EP3058418B1 (en) 2013-10-16 2023-10-04 Magic Leap, Inc. Virtual or augmented reality headsets having adjustable interpupillary distance
KR102268462B1 (ko) 2013-11-27 2021-06-22 매직 립, 인코포레이티드 가상 및 증강 현실 시스템들 및 방법들
US9857591B2 (en) 2014-05-30 2018-01-02 Magic Leap, Inc. Methods and system for creating focal planes in virtual and augmented reality
US10203762B2 (en) 2014-03-11 2019-02-12 Magic Leap, Inc. Methods and systems for creating virtual and augmented reality
US20150324568A1 (en) 2014-05-09 2015-11-12 Eyefluence, Inc. Systems and methods for using eye signals with secure mobile communications
US9804257B2 (en) 2014-11-13 2017-10-31 WorldViz LLC Methods and systems for an immersive virtual reality system using multiple active markers
US10921896B2 (en) 2015-03-16 2021-02-16 Facebook Technologies, Llc Device interaction in augmented reality
US10031977B1 (en) * 2017-01-26 2018-07-24 Rena Maycock Data content filter
IL274976B1 (en) 2017-12-15 2024-01-01 Magic Leap Inc Improved positioning for a display device
US11024086B2 (en) * 2017-12-22 2021-06-01 Magic Leap, Inc. Methods and system for managing and displaying virtual content in a mixed reality system
US10838574B2 (en) * 2018-04-09 2020-11-17 Spatial Systems Inc. Augmented reality computing environments—workspace save and load
US11315326B2 (en) * 2019-10-15 2022-04-26 At&T Intellectual Property I, L.P. Extended reality anchor caching based on viewport prediction
CN115004235A (zh) 2020-01-27 2022-09-02 奇跃公司 基于锚的交叉现实应用的增强状态控制

Also Published As

Publication number Publication date
WO2021154656A1 (en) 2021-08-05
US20210233496A1 (en) 2021-07-29
US20230395039A1 (en) 2023-12-07
EP4097684A4 (en) 2024-02-14
JP2023511083A (ja) 2023-03-16
EP4097684A1 (en) 2022-12-07
US11756509B2 (en) 2023-09-12

Similar Documents

Publication Publication Date Title
JP7273940B2 (ja) 深度平面間の低減された切り替えを伴う多深度平面ディスプレイシステム
US11138793B2 (en) Multi-depth plane display system with reduced switching between depth planes
JP6923552B2 (ja) 可変焦点レンズ要素を用いた拡張現実システムおよび方法
JP2022097588A (ja) 仮想および拡張現実システムおよび方法
KR102270055B1 (ko) 음향-광학 제어 디바이스를 사용하는 광 프로젝터
JP2021509495A (ja) ディスプレイデバイスのための向上された姿勢決定
JP2021515947A (ja) コンテンツをクリッピングし、視認快適性を増加させるためのディスプレイシステムおよび方法
US11854152B2 (en) Privacy preserving expression generation for augmented or virtual reality client applications
US20230395039A1 (en) Enhanced state control for anchor-based cross reality applications
JP2023517281A (ja) 仮想および拡張現実ディスプレイシステムのための仮想オブジェクト移動速度曲線
CN115039012A (zh) 用于测眼评估的增强和虚拟现实显示系统

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