掌桥专利:专业的专利平台
掌桥专利
首页

通过用户分类为多深度平面显示系统选择深度平面

文献发布时间:2023-06-19 10:58:46


通过用户分类为多深度平面显示系统选择深度平面

优先权主张

本申请根据35USC§119(e)要求于2018年8月3日提交的题为“DEPTH PLANESELECTION FOR MULTI-DEPTH PLANE DISPLAY SYSTEMS BY DETERMINATION OFINTERPUPILLARY DISTANCE(通过确定瞳孔间距离为多深度平面显示系统选择深度平面)”第62/714,649号美国临时申请的优先权,以及2019年7月17日提交的题为“DEPTH PLANESELECTION FOR MULTI-DEPTH PLANE DISPLAY SYSTEMS BY USER CATEGORIZATION(通过用户分类为多深度平面显示系统选择深度平面)”的第62/875,474号美国临时申请的优先权,在此通过引用将其全部内容合并于此。

通过引用的并入

本申请通过引用并入以下专利申请和专利公开的全部:2014年11月27日提交的第4/555,585号美国申请,于2015年7月23日以美国公开号2015/0205126公开;2015年4月18日提交的第14/690,401号美国申请,于2015年10月22日以美国公开号2015/0302652公开;2014年3月14日提交的第14/212,961号美国申请,现为于2016年8月16日公布的第9,417,452号美国专利;2014年7月14日提交的第14/331,218号美国申请,于2015年10月29日以美国公开号2015/0309263公开;2018年3月21日提交的第15/927,808号美国申请;2016年10月12日提交第15/291,929号美国申请,于2017年4月20日以美国申请号2017/0109580公开;2017年1月17日提交第15/408,197号美国申请,于2017年7月20日以美国公开号2017/0206412公开;2017年3月24日提交的第15/469369号美国申请,于2017年9月28日以美国公开号2017/0276948公开;2018年1月17日提交的第62/618,559号美国临时申请;2019年1月17日提交的第16/250,931号美国申请;2015年5月6日提交的第14/705/741号美国申请,于2016年4月21日以美国公开号2016/0110920公开;以及2017年10月12日公开的第2017/0293145号美国专利公开。

技术领域

本公开涉及显示系统、虚拟现实以及增强现实成像和可视化系统,并且更具体地涉及部分地基于用户的瞳孔间距离的深度平面选择。

背景技术

现代的计算和显示技术已经促进了用于所谓的“虚拟现实”、“增强现实”或“混合现实”体验的系统的发展,其中,以它们看起来是真实的或者可被感知为是真实的方式向用户呈现数字再现的图像或其一部分。虚拟现实或“VR”场景通常涉及数字或虚拟图像信息的呈现,而对其他实际现实世界视觉输入不透明;增强现实或“AR”场景通常涉及数字或虚拟图像信息的呈现,以作为对用户周围现实世界的可视化增强;混合现实或“MR”与融合现实世界和虚拟世界有关,以产生物理和虚拟对象共存并实时交互的新环境。事实证明,人类的视觉感知系统非常复杂,产生促进虚拟图像元素尤其其他虚拟或现实图像元素的舒适、感觉自然、丰富的呈现的VR、AR或MR技术是具有挑战性的。本文公开的系统和方法解决了与VR、AR和MR技术有关的各种挑战。

发明内容

公开了用于在显示系统(诸如增强现实显示系统)中进行深度平面选择的系统和方法的各种示例,其中显示系统包括混合现实显示系统。

在一些实施例中,显示系统可以被配置为将光投射到佩戴者的眼睛以在佩戴者的视场中显示虚拟图像内容,其中佩戴者也可以被称为用户。佩戴者的眼睛可以具有角膜、虹膜、瞳孔、晶状体、视网膜和延伸穿过晶状体、瞳孔和角膜的光轴。该显示系统可以包括:框架,其被配置为支撑在佩戴者的头部上;头戴式显示器,其设置在框架上,该显示器被配置为将光投射到佩戴者的眼睛中,从而以不同的波前发散量中的至少一个向佩戴者的视场显示虚拟图像内容,因此所显示的虚拟图像内容可以看起来是在不同的时间段源自不同的深度;一个或多个眼睛跟踪相机,其被配置为对佩戴者的眼睛进行成像;以及与显示器和一个或多个眼睛跟踪相机通信的处理电子器件。在一些实施例中,处理电子器件可以被配置为确定佩戴者是显示系统的已校准用户还是访客用户,并基于该分类来选择用于在两个或更多个深度平面之间切换虚拟内容的呈现的方案。例如,处理电子器件可以被配置为基于利用一个或多个眼睛跟踪相机获得的眼睛图像来获得佩戴者的瞳孔间距离的估计,确定佩戴者是已校准用户还是访客用户,并且对于访客用户而言,该显示系统可以被配置为部分地基于佩戴者的所估计的瞳孔间距离或基于与特定虚拟内容相关联的深度平面信息,在两个或更多个深度平面之间进行切换。

在一些实施例中,增强现实显示系统包括头戴式显示器,该头戴式显示器被配置为通过向佩戴者输出光来呈现虚拟内容,其中该头戴式显示器被配置为以与远离佩戴者不同感知深度对应的不同的波前发散量向佩戴者的眼睛输出光。该显示系统还包括通信地耦接至头戴式显示器的至少一个处理器。该至少一个处理器被配置为确定佩戴者是已校准的佩戴者还是访客用户。当确定佩戴者是已校准用户时,该至少一个处理器被配置为加载预先存在的用户深度平面切换校准信息;并基于预先存在的用户深度平面切换校准信息来设置头戴式显示器的深度平面切换参数。当确定佩戴者是访客用户时,该至少一个处理器被配置为识别访客用户最有可能看着的虚拟对象,该虚拟对象具有相关联的深度平面,并基于该相关联的深度平面来设置头戴式显示器的深度平面切换参数。

在一些其他实施例中,提供了一种用于确定在显示系统中进行深度平面切换的参数的方法。该显示系统被配置为将图像光引导至用户的眼睛以显示虚拟图像内容,并在多个深度平面上呈现虚拟图像。每个深度平面与具有不同波前发散量的图像光相关联,并且该显示系统被配置为通过改变图像光的波前发散来在不同深度平面之间切换虚拟图像内容。该方法包括确定用户是已校准用户还是访客用户。当确定该用户为已校准用户时,加载预先存在的用户深度平面切换校准信息,并基于预先存在的用户深度平面切换校准信息来设置头戴式显示器的深度平面切换参数。当确定用户为访客用户时,确定该访客用户正在看着的虚拟对象。该虚拟对象具有相关联的深度平面;并且基于该相关联的深度平面为头戴式显示器设置深度平面切换参数。

在又一其他实施例中,增强现实显示系统包括头戴式显示器,该头戴式显示器被配置为通过向佩戴者输出光来呈现虚拟内容。该头戴式显示器包括被配置为将来自世界的光传递到佩戴者的眼睛中的波导堆叠。该波导堆叠包括多个波导,并且该多个波导中的一个或多个波导被配置为以与该多个波导中的一个或多个其他波导不同的波前发散量将光输出到佩戴者的眼睛。不同的波前发散量与眼睛的不同适应相关联,并且具有不同的波前发散量的输出光在远离佩戴者的不同感知深度处形成虚拟对象。该显示系统还包括被配置为捕获佩戴者眼睛的图像的成像设备,以及通信地耦接到头戴式显示器和该成像设备的至少一个处理器。该至少一个处理器被配置为至少部分地基于来自成像设备的佩戴者眼睛的图像,确定佩戴者是已校准用户还是访客用户。当确定佩戴者是已校准用户时,该至少一个处理器被配置为加载预先存在的用户深度平面切换校准信息;并基于预先存在的用户深度平面切换校准信息来设置头戴式显示器的深度平面切换参数。当确定佩戴者是访客用户时,该至少一个处理器被配置为确定该访客用户的瞳孔间距离;并基于所确定的瞳孔间距离来设置头戴式显示器的深度平面切换参数。

在一些其他实施例中,提供了一种用于确定在显示系统中进行深度平面切换的参数的方法,该显示系统被配置为将图像光引导至用户的眼睛以显示虚拟图像内容。眼睛被分开瞳孔间距离,并且该显示系统被配置为在多个深度平面上呈现虚拟图像内容。每个深度平面与具有不同的波前发散量的图像光相关联,并且该显示系统被配置为通过改变图像光的波前发散来在不同深度平面之间切换虚拟图像内容。该方法包括确定用户是已校准用户还是访客用户。当确定该用户为已校准用户时,加载预先存在的用户深度平面切换校准信息,并基于预先存在的用户深度平面切换校准信息来设置该显示系统的深度平面切换参数。当确定该用户为访客用户时,确定该访客用户的瞳孔间距离,并基于所确定的瞳孔间距离来设置该显示系统的深度平面切换参数。

在下面列举实施例的其他示例。

示例1.一种增强现实显示系统,包括:

头戴式显示器,其被配置为通过向佩戴者输出光来呈现虚拟内容,其中,所述头戴式显示器被配置为以不同的波前发散量向所述佩戴者的眼睛输出光,所述不同的波前发散量对应于远离所述佩戴者的不同感知深度;以及

被通信地耦接到所述头戴式显示器的至少一个处理器,所述至少一个处理器被配置为:

确定所述佩戴者是已校准用户还是访客用户;

当所述佩戴者被确定为是已校准用户时:

加载预先存在的用户深度平面切换校准信息;以及

基于所述预先存在的用户深度平面切换校准信息,设置用于所述头戴式显示器的深度平面切换参数;以及

当所述佩戴者被确定为是访客用户时:

识别所述访客用户最有可能在看着的虚拟对象,其中,所述虚拟对象具有相关联的深度平面;以及

基于所述相关联的深度平面,设置用于所述头戴式显示器的深度平面切换参数。

示例2.根据示例1所述的增强现实显示系统,其中,所述显示系统被配置为:通过确定所述佩戴者的瞳孔间距离,确定所述佩戴者是已校准用户还是访客用户。

示例3.根据示例1所述的增强现实显示系统,其中,所述显示系统被配置为:通过确定所述访客用户的眼睛是否正注视在包含所述虚拟对象的体积内,确定所述访客用户是否最有可能在看着所述虚拟对象。

示例4.根据示例3所述的增强现实显示系统,其中,所述显示系统被配置为:

确定与确定所述佩戴者的注视点的位置相关联的不确定性;以及

基于所述不确定性,改变包含所述虚拟对象的所述体积的大小。

示例5.根据示例1所述的增强现实显示系统,其中,所述显示系统被配置为:如果与确定所述佩戴者的注视点的位置相关联的不确定性超过阈值,则转换到所述访客用户的动态校准。

示例6.根据权利要求1所述的增强现实显示系统,其中,所述显示系统被配置为:如果与所述虚拟对象的位置相关联的不确定性超过阈值,则转换到所述访客用户的动态校准。

示例7.根据示例1所述的增强现实显示系统,其中,在确定所述佩戴者是已校准用户之后,在检测到所述已校准用户不再佩戴所述设备时,所述显示系统被配置为:在预定时间量内或对预定图像帧数量继续利用所述已校准用户的深度平面切换校准信息。

示例8.根据示例1所述的增强现实显示系统,其中,所述头戴式显示器包括被配置为将来自世界的光传递到所述佩戴者的眼睛中的波导堆叠,其中,所述波导堆叠包括多个波导,所述多个波导包括一个或多个波导,所述一个或多个波导被配置为以与所述多个波导中的一个或多个其他波导不同的波前发散量将光输出到所述佩戴者的所述眼睛。

示例9.一种用于在显示系统中确定深度平面切换的参数的方法,所述显示系统被配置为将图像光引导到用户的眼睛以显示虚拟图像内容,所述显示系统被配置为在多个深度平面上呈现所述虚拟图像内容,其中,每个深度平面与具有不同的波前发散量的图像光相关联,其中,所述显示系统被配置为通过改变所述图像光的波前发散来在不同的深度平面之间切换所述虚拟图像内容,所述方法包括:

确定所述用户是已校准用户还是访客用户;

当所述用户被确定为是已校准用户时:

加载预先存在的用户深度平面切换校准信息;以及

基于所述预先存在的用户深度平面切换校准信息,设置用于头戴式显示器的深度平面切换参数;以及

当所述用户被确定为是访客用户时:

确定所述访客用户是否在观着虚拟对象,其中,所述虚拟对象具有相关联的深度平面;以及

基于所述相关联的深度平面,设置用于所述头戴式显示器的深度平面切换参数。

示例10.根据示例9所述的方法,其中,确定所述访客用户是否在看着虚拟对象包括:确定所述访客用户的眼睛是否正注视在包含所述虚拟对象的体积内。

示例11.根据示例10所述的方法,还包括:

确定与确定所述用户的注视点的位置相关联的不确定性;以及

基于所述不确定性,改变包含所述虚拟对象的所述体积的大小。

示例12.根据示例9所述的方法,还包括:如果与确定所述用户的注视点的位置相关联的不确定性超过阈值,则从基于虚拟内容的深度平面切换转换到所述访客用户的动态校准,其中,基于虚拟内容的深度平面切换包括:基于所述相关联的深度平面,设置用于所述头戴式显示器的深度平面切换参数。

示例13.根据示例9所述的方法,还包括:在确定所述用户是已校准用户之后,在检测到所述已校准用户不再佩戴所述显示系统的显示器时,在预定时间量内或对预定图像帧数量继续利用所述已校准用户的深度平面切换校准信息。

示例14.根据示例9所述的方法,其中,所述显示系统包括被配置为将来自世界的光传递到所述用户的眼睛中的波导堆叠,其中,所述波导堆叠包括多个波导,所述多个波导包括一个或多个波导,所述一个或多个波导被配置为以与所述多个波导中的一个或多个其他波导不同的波前发散量将光输出到所述用户的眼睛。

示例15.一种增强现实显示系统,包括:

头戴式显示器,其被配置为通过向佩戴者输出光来呈现虚拟内容,其中,所述头戴式显示器包括:

波导堆叠,其被配置为将来自世界的光传递到所述佩戴者的眼睛,其中,所述波导堆叠包括多个波导,其中,所述多个波导中的一个或多个波导被配置为以与所述多个波导中的一个或多个其他波导不同的波前发散量向所述佩戴者的眼睛输出光,其中,不同的波前发散量与所述眼睛的不同调节相关联,并且其中,具有不同的波前发散量的输出光在远离所述佩戴者的不同感知深度处形成虚拟对象;

成像设备,其被配置为捕获所述佩戴者的眼睛的图像;以及

被通信地耦接到所述头戴式显示器和所述成像设备的至少一个处理器,所述至少一个处理器被配置为:

至少部分地基于来自所述成像设备的所述佩戴者的眼睛的图像,确定所述佩戴者是已校准用户还是访客用户;

当所述佩戴者被确定为是已校准用户时:

加载预先存在的用户深度平面切换校准信息;以及

基于所述预先存在的用户深度平面切换校准信息,设置用于所述头戴式显示器的深度平面切换参数;以及

当所述佩戴者被确定为是访客用户时:

确定所述访客用户的瞳孔间距离;以及

基于所确定的瞳孔间距离,设置用于所述头戴式显示器的深度平面切换参数。

示例16.根据示例15所述的增强现实显示系统,其中,所述成像设备包括一起被配置为测量所述佩戴者的瞳孔间距离的左眼跟踪系统和右眼跟踪系统。

示例17.根据示例15所述的增强现实显示系统,其中,所述处理器被配置为:基于所述佩戴者的瞳孔间距离,确定所述佩戴者是已校准用户还是访客用户。

示例18.根据示例15所述的增强现实显示系统,其中,所述处理器被配置为:基于所述佩戴者的瞳孔间距离是否在所述已校准用户的瞳孔间距离的预定阈值内,确定所述佩戴者是已校准用户还是访客用户。

示例19.根据示例15所述的增强现实显示系统,其中,所述处理器被配置为:基于所述佩戴者的瞳孔间距离是否在所述已校准用户的瞳孔间距离的1.0mm内,确定所述佩戴者是已校准用户还是访客用户。

示例20.一种用于在显示系统中确定深度平面切换的参数的方法,所述显示系统被配置为将图像光引导到用户的眼睛以显示虚拟图像内容,所述眼睛被分开瞳孔间距离,以及所述显示系统被配置为在多个深度平面上呈现所述虚拟图像内容,其中,每个深度平面与具有不同的波前发散量的图像光相关联,其中,所述显示系统被配置为通过改变所述图像光的波前发散来在不同的深度平面之间切换所述虚拟图像内容,所述方法包括:

确定所述用户是已校准用户还是访客用户;

当所述用户被确定为是已校准用户时:

加载预先存在的用户深度平面切换校准信息;以及

基于所述预先存在的用户深度平面切换校准信息,设置用于所述显示系统的深度平面切换参数;以及

当所述用户被确定为是访客用户时:

确定所述访客用户的瞳孔间距离;以及

基于所确定的瞳孔间距离,设置用于所述显示系统的深度平面切换参数。

示例21.根据示例20所述的方法,其中,确定所述访客用户的瞳孔间距离包括:确定被聚焦在光学无穷远处的所述访客用户的眼睛的瞳孔间距离。

示例22.根据示例20所述的方法,其中,确定所述用户是已校准用户还是访客用户包括:利用被配置为对所述用户的眼睛进行成像的一个或多个眼睛跟踪相机来确定所述用户的瞳孔间距离。

示例23.根据示例20所述的方法,其中,确定所述用户是否是已校准用户包括:利用被配置为对所述用户的眼睛进行成像的一个或多个眼睛跟踪相机来确定所述用户的瞳孔间距离,以及确定所述用户的瞳孔间距离在预定范围内。

示例24.根据示例23所述的方法,其中,确定所述用户是否是访客用户包括:利用所述一个或多个眼睛跟踪相机来确定所述用户的瞳孔间距离,以及确定所述用户的瞳孔间距离在所述预定范围之外。

示例25.根据示例20所述的方法,其中,所述预先存在的用户深度平面切换校准信息包括所述已校准用户的所测量的瞳孔间距离,其中,确定所述用户是已校准用户还是访客用户包括:确定所述用户的瞳孔间距离,当所述用户的瞳孔间距离在所述已校准用户的所测量的瞳孔间距离的1.0mm内时,确定所述用户是所述已校准用户,以及在所述用户的瞳孔间距离不在所述已校准用户的所测量的瞳孔间距离的1.0mm内时,确定所述用户是访客用户。

示例26.根据示例20所述的方法,其中,确定所述用户是所述已校准用户还是访客用户包括:利用至少一个眼睛跟踪相机来识别所述用户。

示例27.根据示例20所述的方法,还包括:

利用眼睛跟踪系统确定所述用户的每只眼睛的光轴;以及

至少基于所确定的所述用户的眼睛的光轴和所设置的深度平面切换参数,确定所述用户的聚散深度。

示例28.根据示例20所述的方法,还包括:

至少部分地基于所设置的深度平面切换参数,确定所述用户的聚散距离。

示例29.根据示例20所述的方法,还包括:

至少部分地基于所述深度平面切换参数,选择要使用哪个深度平面来呈现所述虚拟图像内容。

本说明书中描述的主题的一个或多个实施方式的细节在附图和以下描述中阐述。根据说明书、附图和权利要求书,其他特征、方面和优点将变得显而易见。该概述或以下详细描述均不旨在限定或限制本发明主题的范围。

附图说明

图1描绘了具有某些虚拟现实对象以及由人观看的某些物理对象的混合现实场景的图示。

图2示意性地示出了可穿戴系统的示例。

图3示意性地示出了可穿戴系统的示例部件。

图4示意性地示出了用于向用户输出图像信息的可穿戴设备的波导堆叠的示例。

图5示意性地示出了眼睛的示例和用于确定眼睛的眼睛姿势的示例坐标系。

图6是包括眼睛跟踪系统的可穿戴系统的示意图。

图7A是可包括眼睛跟踪系统的可穿戴系统的框图。

图7B是可穿戴系统中的渲染控制器的框图。

图7C是头戴式显示系统中的配准观察器的框图。

图8A是示出眼睛的角膜球的眼睛的示意图。

图8B示出了由眼睛跟踪相机检测到的示例角膜闪光。

图8C-8E示出了通过可穿戴系统中的眼睛跟踪模块定位用户的角膜中心的示例阶段。

图9A-9C示出了眼睛跟踪图像的坐标系的示例归一化。

图9D-9G示出了通过可穿戴系统中的眼睛跟踪模块定位用户的瞳孔中心的示例阶段。

图10示出了包括眼睛的光轴和视轴以及眼睛的旋转中心的眼睛的示例。

图11是用于在渲染内容中使用眼睛跟踪并提供关于可穿戴设备中的配准的反馈的方法的示例的过程流程图。

图12A和图12B示出了显示元件相对于用户的眼睛的标称位置,并且示出了用于描述显示元件和用户的眼睛相对于彼此的位置的坐标系。

图13是示出了可穿戴系统如何响应于用户的眼睛运动来切换深度平面的一组示例曲线图。

图14是用于使用现有的校准、动态校准和/或基于内容的切换方案来选择深度平面的方法的示例的过程流程图。

图15是至少部分地基于用户的瞳孔间距离来选择深度平面的方法的示例的过程流程图。

图16A示出了由显示系统呈现的用户观看内容的表示的自上向下视图的示例,该显示系统被配置为通过在沿水平轴分割用户的视场的多个区域中的一个内检测用户注视来切换深度平面。

图16B示出了图16A的表示的透视图的示例。

图17A示出了由显示系统呈现的用户观看内容的表示的自上向下视图的示例,该显示系统被配置为通过在显示平截头体内的离散标记体积内检测用户注视来切换深度平面。

图17B示出了图16A的表示的透视图的示例。

图18示出根据基于内容的切换来选择深度平面的示例过程的流程图。

图19示出根据基于内容的切换来调整区域的另一示例过程的流程图。

在所有附图中,参考标号可被重复使用以指示参考元件之间的对应关系。提供附图是为了说明本文描述的示例实施例,而无意于限制本公开的范围。

具体实施方式

如本文所述,显示系统(例如,增强现实或虚拟现实显示系统)可以渲染虚拟内容以在距用户的不同感知深度处呈现给用户。在增强现实显示系统中,可以利用不同深度平面来投影虚拟内容,其中每个深度平面与距用户的特定感知深度相关联。例如,可以利用被配置为输出具有不同波前发散的光的波导堆叠,其中每个深度平面具有对应的波前发散并且与至少一个波导相关联。当虚拟内容围绕用户的视场移动时,虚拟内容可以沿三个离散轴进行调整。例如,可以沿X、Y和Z轴调整虚拟内容,使得可以在距用户的不同感知深度处呈现该虚拟内容。显示系统可以在深度平面之间进行切换,就像感知到虚拟内容更远离或更靠近用户进行移动。将理解的是,切换深度平面可以涉及以离散步长(step)改变形成虚拟内容的光的波前发散。在基于波导的系统中,在一些实施例中,这样的深度平面切换可以涉及切换输出光以形成虚拟内容的波导。

在一些实施例中,显示系统可以被配置为监视用户的眼睛的凝视并确定用户正在注视的三维注视点。除了其他方面,注视点可以基于用户眼睛之间的距离和每只眼睛的凝视方向来确定。将理解的是,这些变量可以理解为形成一个三角形,注视点位于三角形的一个角上,而眼睛在另外的角上。还将理解的是,可以执行校准以准确地跟踪用户的眼睛的取向,并且确定或估计那些眼睛的凝视以确定注视点。因此,在进行完全校准之后,显示设备可以具有该设备的主要用户的校准文件或校准信息。在本文中主要用户也称为已校准用户。有关校准和眼睛跟踪的更多详细信息可以见于例如题为“EYE TRACKING CALIBRATIONTECHNIQUES(眼睛跟踪校准技术)”的第15/993,371号美国专利申请,其全部内容通过引用合并于此。

该显示系统可能偶尔由尚未完成完全校准的访客用户使用。此外,这些访客用户可能没有时间或不希望执行完全校准。然而,如果显示系统实际上没有跟踪访客用户的注视点,则深度平面切换可能不适合为用户提供逼真且舒适的观看体验。

因此,将理解的是,显示系统的当前用户可以被分类为已校准用户或访客用户。在一些实施例中,显示系统可以被配置为通过执行识别或认证过程,例如从而确定由当前用户提供和/或从当前用户获得的信息是否匹配与已校准用户相关联的信息,确定当前用户是否为已校准用户,来对当前用户进行分类。例如,认证或识别过程可以是以下一项或多项:询问并验证用户名和/或密码,进行虹膜扫描(例如,通过将用户虹膜的当前图像与参考图像进行比较),进行语音识别(例如,通过将用户语音的当前样本与参考语音文件进行比较),以及IPD匹配。在一些实施例中,IPD匹配可以包括确定当前用户的IPD是否与已校准用户的IPD匹配。在一些实施例中,如果存在匹配,则可以假定当前用户为已校准用户。在一些实施例中,如果没有匹配,则可以假定当前用户不是已校准用户(例如,为访客用户)。在一些其他实施例中,可以为当前用户执行多个认证过程,以提高确定当前用户是否为已校准用户的准确性。

在一些实施例中,如果确定当前用户不是已校准用户(例如,访客用户),则显示系统可以使用基于内容的深度平面切换;例如,不是确定用户眼睛的注视点,基于注视点所在的深度平面来切换深度平面,显示系统可以配置为针对3D空间中被指定放置内容(例如,虚拟对象)的位置,显示具有适当的波前发散量的内容。将理解的是,虚拟对象可以在用户周围的三维体积中具有相关联的位置或坐标,并且显示系统可以被配置为在该三维体积中相对于用户使用具有适合于该对象深度的波前发散量的光来呈现对象。

在要显示处于不同深度的多个虚拟对象的情况下,基于内容的深度平面切换可能涉及对于注视在哪个虚拟对象上的粗略确定,然后使用该虚拟对象的位置来建立深度平面切换应当切换到的平面;例如,在确定用户大致注视在特定虚拟对象上的情况下,显示系统可以被配置为输出具有与关联于该虚拟对象的深度平面对应的波前发散的光。在一些实施例中,对于用户是否注视在对象上的这种粗略确定可以涉及确定注视点是否在该对象唯一的显示系统定义的体积内,并且如果是,则切换到与该对象相关联的深度平面,而不管所确定的注视点的深度如何(因此,如果体积跨越多个深度平面,则显示系统将切换到与对象关联的深度平面)。

在一些实施例中,如果确定当前用户不是已校准用户(例如,访客用户),则显示系统可以通过测量访客用户的瞳孔间距离(IPD)来执行粗略校准。该粗略校准也可以被称为动态校准。优选地,在用户的眼睛指向或聚焦在光学无穷远处的对象时,测量IPD。在一些实施例中,该IPD值可以被理解为最大IPD值。可以使用最大IPD值,或者可以使用在采样值的分布内所选择的较小的值(例如,采样的IPD值中的第95个百分位数处的值)作为用于确定注视点的参考值。例如,该IPD值可以构成注视点形成一角(例如,顶点)的假想三角形的一边(例如,底边)。

因此,在一些实施例中,显示系统可以被配置为监视用户是主要用户还是访客用户。如果该用户是主要用户,则可以获取校准文件。如果用户是访客用户,则可以使用基于内容的深度平面切换,和/或可以执行涉及确定IPD的粗略校准来建立参考IPD值。显示系统可以被配置为使用该参考IPD值来确定或估计该访客用户的注视点,并因此决定何时切换深度平面(例如,何时切换用于形成虚拟内容的光的波前发散)。

在一些实施例中,显示系统可以从执行基于内容的深度平面切换转换到执行基于当前用户的动态校准的深度平面切换。例如,这种转换可以发生与基于内容的深度平面切换方案相关地获得的数据被认为不可靠的情况下(例如,用户大致注视的虚拟对象的值具有高度的不确定性或可变性),或者在跨越多个深度平面的不同深度范围提供内容的情况下(例如,其中虚拟内容跨越大于阈值数量的深度平面)。

现在将参考附图,在附图中,相同的附图标记始终指代相同的部分。除非另有说明,否则附图是示意性的,不一定按比例绘制。

可穿戴系统(在本文中也称为增强现实(AR)系统)可被配置为向用户呈现2D或3D虚拟图像。图像可以是静止图像、视频的帧、或视频、或组合等。可穿戴系统的至少一部分可以被实现在可穿戴设备上,该可穿戴设备可以单独或组合地为用户交互来呈现VR、AR或MR环境。可穿戴设备可以互换地用作AR设备(ARD)。此外,出于本公开的目的,术语“AR”与术语“MR”可互换使用。

图1描绘了具有某些虚拟现实对象以及由人观看的某些物理对象的混合现实场景的图示。在图1中,描绘了MR场景100,其中,MR技术的用户看到现实世界的公园状的设置110,其特征在于背景中的人、树、建筑物、以及混凝土平台120。除了这些项目之外,MR技术的用户还感知到他“看到”了站在现实世界平台120上的机器人雕像130,以及飞行的卡通状的化身角色140,似乎是大黄蜂的化身,即使这些元素在现实世界中不存在。

为了使3D显示器产生真实的深度感,更具体地说,产生表面深度的模拟感,可能希望显示器的视野中的每个点都生成与其虚拟深度相对应的调节响应。如果对显示点的调节响应不符合该点的虚拟深度(如由双目深度会聚提示和立体视觉确定),则人眼可能会遇到适应冲突,从而导致成像不稳定、有害的眼睛疲劳、头痛、以及缺乏适应信息的情况下几乎完全缺乏表面深度(surface depth)。

可以通过具有显示器的显示系统来提供VR、AR和MR体验,在该显示器中,将与多个深度平面相对应的图像提供给观看者。图像对于每个深度平面可能是不同的(例如,提供场景或对象的稍有不同的呈现),并且可能会被观看者的眼睛分别聚焦,从而有助于基于眼睛所需的适应向用户提供深度提示,为位于不同深度平面上的场景或基于观察不同深度平面上的不同图像特征失焦而聚焦不同图像特征。如本文其他地方所讨论的,这样的深度提示提供了对深度的可信感知。

图2示出了可被配置为提供AR/VR/MR场景的可穿戴系统200的示例。可穿戴系统200也可以称为AR系统200。可穿戴系统200包括显示器220以及支持显示器220的功能的各种机械和电子模块和系统。显示器220可以耦合到可由用户、穿戴者或观看者210穿戴的框架230。显示器220可以位于用户210的眼睛的前面。显示器220可以向用户呈现AR/VR/MR内容。显示器220可以包括佩戴在用户的头部上的头戴式显示器(HMD)。

在一些实施例中,扬声器240耦合到框架230并且邻近用户的耳道定位(在一些实施例中,未示出的另一个扬声器可以邻近用户的另一耳道定位,以提供立体声/可塑造声音控制)。显示器220可以包括用于检测来自环境的音频流并捕获环境声音的音频传感器(例如,麦克风)232。在一些实施例中,未示出的一个或多个其他音频传感器被定位为提供立体声接收。立体声接收可以用来确定声源的位置。可穿戴系统200可以对音频流执行声音或语音识别。

可穿戴系统200可以包括面向外部的成像系统464(图4所示),该成像系统464观察用户周围的环境中的世界。可穿戴系统200还可以包括可用于跟踪用户的眼睛移动的面向内部的成像系统462(图4所示)。面向内部的成像系统可以跟踪一只眼睛的移动或两只眼睛的移动。面向内部的成像系统462可以附接到框架230,并且可以与处理模块260或270电连通,处理模块260或270可以处理由面向内部的成像系统获取的图像信息以确定例如用户210的眼睛的瞳孔直径或定向、眼睛移动或眼睛姿势。面向内部的成像系统462可以包括一个或多个相机。例如,至少一个相机可以用于对每只眼睛成像。相机获取的图像可以用于分别确定每只眼睛的瞳孔大小或眼睛姿势,从而允许将图像信息呈现给每只眼睛以动态地适应该只眼睛。

作为示例,可穿戴系统200可以使用面向外部的成像系统464或面向内部的成像系统462来获取用户的姿势的图像。图像可以是静止图像、视频的帧、或视频。

显示器220可以例如通过有线引线或无线连接250可操作地耦合到本地数据处理模块260,该本地数据处理模块260可以以各种配置安装,例如,固定地附接到框架230、固定地附接到用户穿戴的头盔或帽子上、嵌入耳机中、或以其他方式可拆卸地附接到用户210(例如,以背包式配置、皮带耦合式配置)。

本地处理和数据模块260可以包括硬件处理器以及数字存储器(例如,非易失性存储器(例如,闪存)),两者均可以用于协助处理、缓存和存储数据。数据可以包括:a)从传感器(其可以例如可操作地耦合到框架230或以其他方式附接到用户210)捕获的数据,例如图像捕获设备(例如,面向内部的成像系统或面向外部的成像系统中的相机)、音频传感器(例如,麦克风)、惯性测量单元(IMU)、加速度计、指南针、全球定位系统(GPS)单元、无线电设备或陀螺仪;或b)使用远程处理模块270或远程数据存储库280获取或处理的数据,可能在这样的处理或检索之后传递给显示器220。本地处理和数据模块260可以通过通信链路262或264(例如,经由有线或无线通信链路)可操作地耦合到远程处理模块270或远程数据存储库280,使得这些远程模块可用作本地处理和数据模块260的资源。此外,远程处理模块280和远程数据存储库280可以可操作地彼此耦合。

在一些实施例中,远程处理模块270可以包括被配置为分析和处理数据或图像信息的一个或多个处理器。在一些实施例中,远程数据存储库280可以是数字数据存储设施,其可以通过互联网或“云”资源配置中的其他网络配置来使用。在一些实施例中,所有数据被存储并且所有计算在本地处理和数据模块中执行,从而允许来自远程模块的完全自主的使用。

图3示意性地示出了可穿戴系统的示例组件。图3示出了可穿戴系统200,其可包括显示器220和框架230。分解图202示意性地示出了可穿戴系统200的各个组件。在某些实施方式中,图3所示的组件中的一个或多个可以是显示器220的一部分。单独或组合的各种组件可以收集与可穿戴系统200的用户或用户的环境相关联的各种数据(例如,音频或视觉数据)。应当理解,取决于对其使用可穿戴系统的应用,其他实施例可以具有更多或更少的组件。尽管如此,图3提供了各种组件中的一些以及可以通过可穿戴系统收集、分析和存储的数据的类型的基本思想。

图3示出了可以包括显示器220的示例可穿戴系统200。显示器220可以包括可以安装到用户的头部或外壳或框架230的显示透镜226,该显示透镜226与框架230相对应。显示透镜226可以包括一个或多个透明镜,该透明镜由外壳230定位在用户的眼睛302、304的前面,并且可被配置为将投射的光338弹射到眼睛302、304中并促进光束整形,同时还允许透射至少一些来自本地环境的光。投射的光束338的波前(wavefront)可以被弯曲或聚焦以与投射的光的期望焦距一致。如图所示,两个广视野机器视觉相机316(也称为世界相机)可以耦合到外壳230以对用户周围的环境成像。这些相机316可以是双重捕获可见光/不可见(例如,红外)光相机。相机316可以是图4中所示的面向外部的成像系统464的一部分。由世界相机316获取的图像可以由姿势处理器336处理。例如,姿势处理器336可以实现一个或多个对象识别器708(例如,图7所示)以标识用户或在用户的环境中的另一个人的姿势或标识在用户的环境中的物理对象。

继续参考图3,示出了具有显示镜和光学器件的一对扫描激光成形波前(例如,对于深度)光投影仪模块,其被配置为将光338投射到眼睛302、304中。所描绘的视图还示出了与红外光源326(例如,发光二极管“LED”)配对的两个微型红外相机324,其被配置为能够跟踪用户的眼睛302、304以支持渲染和用户输入。相机324可以是图4所示的面向内部的成像系统462的一部分。可穿戴系统200的特征还在于传感器组件339,该传感器组件339可包括X、Y和Z轴加速度计能力以及磁指南针以及X、Y和Z轴陀螺仪能力,优选地以相对较高的频率(例如,200Hz)提供数据。传感器组件339可以是参考图2A描述的IMU的一部分。所描绘的系统200还可以包括头部姿势处理器336,诸如ASIC(专用集成电路)、FPGA(现场可编程门阵列)或ARM处理器(高级简化指令集机器),其可被配置为根据从捕获设备316输出的宽视野图像信息来计算实时或近实时用户头部姿势。头部姿势处理器336可以是硬件处理器,并且可以被实现为图2A中所示的本地处理和数据模块260的一部分。

可穿戴系统还可以包括一个或多个深度传感器234。深度传感器234可被配置为测量环境中的对象到可穿戴设备之间的距离。深度传感器234可包括激光扫描仪(例如,激光雷达)、超声深度传感器、或深度感测相机。在某些实施方式中,在相机316具有深度感测能力的情况下,相机316也可以被认为是深度传感器234。

还示出了处理器332,其被配置为执行数字或模拟处理以根据来自传感器组件339的陀螺仪、指南针或加速度计数据导出姿势。处理器332可以是图2中所示的本地处理和数据模块260的一部分。如图3所示的可穿戴系统200还可以包括诸如GPS 337(全球定位系统)之类的定位系统,以辅助姿势和定位分析。另外,GPS可以进一步提供关于用户的环境的基于远程的(例如,基于云的)信息。此信息可用于识别用户的环境中的对象或信息。

可穿戴系统可以组合由GPS 337和远程计算系统(例如,远程处理模块270、另一个用户的ARD等)获取的数据,该数据可以提供有关用户的环境的更多信息。作为一个示例,可穿戴系统可以基于GPS数据确定用户的位置,并检索包括与用户的位置相关联的虚拟对象的世界地图(例如,通过与远程处理模块270通信)。作为另一个示例,可穿戴系统200可以使用世界相机316(其可以是图4所示的面向外部的成像系统464的一部分)来监控环境。基于由世界相机316获取的图像,可穿戴系统200可以检测环境中的对象(例如,通过使用图7所示的一个或多个对象识别器708)。可穿戴系统可以进一步使用由GPS 337获取的数据来解释角色。

可穿戴系统200还可包括渲染引擎334,该渲染引擎334可被配置为提供用户本地的渲染信息,以促进扫描仪的操作和成像到用户的眼睛中,以供用户观看世界。渲染引擎334可以由硬件处理器(例如,中央处理单元或图形处理单元)实现。在一些实施例中,渲染引擎是本地处理和数据模块260的一部分。渲染引擎334可以可通信地(例如,经由有线或无线链路)耦合到可穿戴系统200的其他组件。例如,渲染引擎334可以经由通信链路274耦合到眼睛相机324,并且可以经由通信链路272耦合到投射子系统318(其可以以类似于视网膜扫描显示器的方式经由扫描的激光布置将光投射到用户的眼睛302、304中)。渲染引擎334还可以分别经由链路276和294与其他处理单元通信,例如,传感器姿势处理器332和图像姿势处理器336。

相机324(例如,微型红外相机)可以用来跟踪眼睛的姿势以支持渲染和用户输入。一些示例眼睛姿势可以包括用户正在看的地方、或他或她正聚焦的深度(这可以通过眼睛聚散(vergence)来估计)。GPS 337、陀螺仪、指南针和加速度计339可用于提供粗略或快速的姿势估计。相机316中的一个或多个可以获取图像和姿势,这些图像和姿势与来自关联的云计算资源的数据一起可以用于映射本地环境并与其他用户共享用户视图。

图3所示的示例组件仅用于说明目的。为了便于说明和描述,一起显示了多个传感器和其他功能模块。一些实施例可以仅包括这些传感器或模块中的一个或子集。此外,这些组件的位置不限于图3所示的位置。某些组件可安装到其他组件或容纳在其他组件中,例如,皮带安装组件、手持组件或头盔组件。作为一个示例,图像姿势处理器336、传感器姿势处理器332和渲染引擎334可以被放置在皮带包中,并且被配置为经由无线通信(例如,超宽带、Wi-Fi、蓝牙等)或经由有线通信与可穿戴系统的其他组件通信。所描绘的外壳230优选地是用户可头戴的和可穿戴的。但是,可穿戴系统200的某些组件可能会穿戴到用户的身体的其他部分。例如,扬声器240可以被插入用户的耳朵中以向用户提供声音。

关于光338到用户的眼睛302、304中的投射,在一些实施例中,相机324可以用于测量用户的眼睛的中心在几何上被聚散到的位置,这通常与眼睛的焦点位置或“焦深”一致。眼睛聚散到的所有点的三维表面可以称为“双眼单视界(horopter)”。焦距可以具有有限量的深度,或者可以无限变化。从聚散距离投射的光似乎聚焦到了受试者眼睛302、304,而在聚散距离之前或之后的光却变得模糊了。在美国专利公开号2016/0270656(其全部内容通过引用合并于此)中也描述了本公开的可穿戴设备和其他显示系统的示例。

人的视觉系统是复杂的,并且提供对深度的真实感是具有挑战性的。由于组合了聚散(vergence)和适应,对象的观看者可以将对象感知为三维。两只眼睛相对于彼此的聚散移动(即,瞳孔相向或远离彼此的滚动移动以收敛眼睛的视线以固定在对象上)与眼睛晶状体的聚焦(或“适应”)紧密相关联。在正常情况下,在称为“适应-聚散反射”(accommodation-vergence reflex)的关系下,改变眼睛晶状体的焦点或适应眼睛以将焦点从一个对象变化为不同距离的另一对象,将自动导致在相同距离上的聚散的匹配变化。同样,在正常情况下,聚散的改变将触发适应的匹配变化。在适应和聚散之间提供更好匹配的显示系统可以形成更逼真和舒适的三维图像模拟。

人眼可以正确地分辨出光束直径小于约0.7mm的空间相干光,而无论眼睛聚焦在何处。因此,为了产生适当的焦深的错觉,可以用相机324跟踪眼睛聚散,并且可以利用渲染引擎334和投射子系统318来将所有对象渲染聚焦在双眼单视界上或附近,以及将所有其他对象以不同程度的失焦(例如,使用故意创建的模糊)。优选地,系统220以大约每秒60帧或更高的帧速率向用户渲染。如上所述,优选地,相机324可以用于眼睛跟踪,并且软件可被配置为不仅拾取聚散几何形状,而且拾取焦点位置提示以用作用户输入。优选地,这种显示系统配置有适合白天或晚上使用的亮度和对比度。

在一些实施例中,显示系统优选地具有小于约20毫秒的视觉对象对准延迟,小于约0.1度的角度对准和约1弧分的分辨率,这不受理论限制地被认为大约是人眼的极限。显示系统220可以与定位系统集成在一起,该定位系统可以涉及GPS元件、光学跟踪、指南针、加速度计或其他数据源,以帮助确定位置和姿势;定位信息可用于促进用户观看相关世界时的准确渲染(例如,此类信息将有助于眼镜了解它们相对于现实世界的位置)。

在一些实施例中,可穿戴系统200被配置为基于用户的眼睛的适应来显示一个或多个虚拟图像。在一些实施例中,不同于迫使用户聚焦在图像被投射的地方的现有3D显示方法,可穿戴系统被配置为自动变化投射的虚拟内容的焦点,以允许更舒适地观看呈现给用户的一个或多个图像。例如,如果用户的眼睛当前焦点为1m,则可以投射图像以使其与用户的焦点一致。如果用户将焦点移至3m,则投射图像以使其与新焦点一致。因此,一些实施例的可穿戴系统200不是迫使用户达到预定的焦点,而是允许用户的眼睛以更自然的方式起作用。

这样的可穿戴系统200可以消除或减少通常关于虚拟现实设备观察到的眼睛压力、头痛和其他生理症状的发生。为了实现这一点,可穿戴系统200的各种实施例被配置为通过一个或多个可变聚焦元件(VFE)以变化的焦距投射虚拟图像。在一个或多个实施例中,可以通过多平面聚焦系统来实现3D感知,该多平面聚焦系统在远离用户的固定焦平面上投射图像。其他实施例采用可变平面焦点,其中,焦平面在z方向上前后移动,以与用户的当前焦点状态一致。

在多平面聚焦系统和可变平面聚焦系统中,可穿戴系统200都可以使用眼睛跟踪来确定用户的眼睛的聚散,确定用户的当前聚焦以及以确定的聚焦投射虚拟图像。在其他实施例中,可穿戴系统200包括光调制器,该光调制器通过光纤扫描仪或其他光产生源以可变的方式以不同的焦点以光栅图案跨视网膜投射光束。因此,如在美国专利公开号2016/0270656中进一步描述的(其全部内容通过引用合并于此),可穿戴系统200的显示器以变化的焦距投射图像的能力不仅使用户轻松适应以观看3D对象,而且还可以用于补偿用户眼部异常。在一些其他实施例中,空间光调制器可以通过各种光学组件将图像投射到用户。例如,如下文进一步所述,空间光调制器可将图像投射到一个或多个波导上,波导然后将图像发送给用户。

图4示出了用于向用户输出图像信息的波导堆叠的示例。可穿戴系统400包括波导的堆叠或堆叠的波导组件480,其可以被用于使用多个波导432b、434b、436b、438b、440b向眼睛/大脑提供三维感知。在一些实施例中,可穿戴系统400可以对应于图2的可穿戴系统200,图4示意性地更详细地示出了该可穿戴系统200的一些部分。例如,在一些实施例中,波导组件480可以集成到图2的显示器220中。

继续参考图4,波导组件480还可在波导之间包括多个特征458、456、454、452。在一些实施例中,特征458、456、454、452可以是透镜。在一些实施例中,透镜可以是可变聚焦元件(VFE)。例如,在一些实施例中,波导组件480可以简单地包括两个可变聚焦元件以及在这两个可变聚焦元件之间的一个或多个波导。具有VFE的波导组件的示例在2017年10月12日公开的美国专利公开号2017/0293145中公开,其全部公开内容通过引用合并于此。在其他实施例中,特征458、456、454、452可以不是透镜。而是,它们可以简单地是间隔件(例如,用于形成气隙的包层或结构)。

波导432b、434b、436b、438b、440b或多个透镜458、456、454、452可被配置为以各种级别的波前曲率或光线发散将图像信息发送到眼睛。每个波导级别可以与特定的深度平面相关联,并且可被配置为输出与该深度平面相对应的图像信息。图像注入设备420、422、424、426、428可被用于将图像信息注入波导440b、438b、436b、434b、432b,每个波导可被配置为将入射光分布在每个相应的波导上,以向眼睛410输出。光离开图像注入设备420、422、424、426、428的输出表面,并且被注入到波导440b、438b、436b、434b、432b的对应输入边缘中。在一些实施例中,可以将单个光束(例如,准直光束)注入每个波导中,以输出克隆的准直光束的整个视野,该准直光束以对应于与特定波导相关联的深度平面的特定角度(和发散量)指向眼睛410。

在一些实施例中,图像注入设备420、422、424、426、428是分立的显示器,其各自产生图像信息以分别注入到对应的波导440b、438b、436b、434b、432b中。在一些其他实施例中,图像注入设备420、422、424、426、428是单个多路复用显示器的输出端,其可以例如经由一个或多个光导管(例如,光纤电缆)将图像信息输送到图像注入设备420、422、424、426、428中的每一个。

控制器460控制堆叠的波导组件480和图像注入设备420、422、424、426、428的操作。控制器460包括编程(例如,非暂时性计算机可读介质中的指令),该编程调制定时和向波导440b、438b、436b、434b、432b提供图像信息。在一些实施例中,控制器460可以是单个集成设备,或者是通过有线或无线通信信道连接的分布式系统。在一些实施例中,控制器460可以是处理模块260或270(在图2中示出)的一部分。

波导440b、438b、436b、434b、432b可被配置为通过全内反射(TIR)在每个相应波导内传播光。波导440b、438b、436b、434b、432b每个可以是平面的或具有另一种形状(例如,弯曲的),并且可以具有主要的顶部和底部表面以及在那些主要的顶部和底部表面之间延伸的边缘。在所示的配置中,波导440b、438b、436b、434b、432b可各自包括光提取光学元件440a、438a、436a、434a、432a,光提取光学元件440a、438a、436a、434a、432a被配置为通过使光重定向、在各个波导内传播从而从波导中提取光以将图像信息输出到眼睛410。提取的光也可以称为出耦合光,并且光提取光学元件也可以称为出耦合光学元件。提取的光束由波导在波导中传播的光撞击光重定向元件的位置处输出。光提取光学元件(440a、438a、436a、434a、432a)可以例如是反射或衍射光学特征。虽然为了便于描述和绘图清楚起见,示出了设置在波导440b、438b、436b、434b、432b的底部主表面上,但是在一些实施例中,光提取光学元件440a、438a、436a、434a、432a可以设置在顶部主表面或底部主表面上,或者可以直接设置在波导440b、438b、436b、434b、432b的体积中。在一些实施例中,光提取光学元件440a、438a、436a、434a、432a可以形成在材料层中,该材料层附接到透明基板上以形成波导440b、438b、436b、434b、432b。在一些其他实施例中,波导440b、438b、436b、434b、432b可以是单片材料,并且光提取光学元件440a、438a、436a、434a、432a可以形成在该片材料的表面上或内部中。

继续参考图4,如本文所述,每个波导440b、438b、436b、434b、432b被配置为输出光以形成与特定深度平面相对应的图像。例如,最靠近眼睛的波导432b可被配置为将注入到这种波导432b中的准直光传送到眼睛410。准直光可以表示光学无穷远焦平面。下一个上行(up)波导434b可被配置为在准直光到达眼睛410之前发出通过第一透镜452(例如,负透镜)的准直光。第一透镜452可被配置为产生轻微的凸波前曲率,从而眼睛/大脑将来自该下一上行波导434b的光解释为来自第一焦平面,该第一焦平面从光学无穷远处向内更靠近朝向眼睛410。类似地,第三上行波导436b在到达眼睛410之前将其输出光通过第一透镜452和第二透镜454。第一透镜452和第二透镜454的组合光功率可被配置为产生另一增量的波前曲率,使得眼睛/大脑将来自第三波导436b的光解释为来自第二焦平面,该第二焦平面比来自下一个上行波导434b的光从光学无穷远向内更靠近人。

其他波导层(例如,波导438b、440b)和透镜(例如,透镜456、458)被类似地配置,堆叠中的最高波导440b通过其与眼睛之间的所有透镜发送其输出,用于表示最靠近人的焦平面的聚合(aggregate)焦度。在观看/解释来自堆叠波导组件480的另一侧上的世界470的光时,为了补偿透镜堆叠458、456、454、452,可以在堆叠的顶部设置补偿透镜层430,以补偿下面的透镜堆叠458、456、454、452的聚合焦度。(补偿透镜层430和堆叠的波导组件480整体上可被配置为使得来自世界470的光以与初始被堆叠的波导组件480接收时的光具有的基本相同的发散(或准直)级别被传送到眼睛410)。这样的配置提供与可用的波导/透镜对一样多的感知焦平面。波导的光提取光学元件和透镜的聚焦方面都可以是静态的(例如,不是动态的或电激励的)。在一些替代实施例中,其中一个或两者在使用电激励特征时可以是动态的。

继续参考图4,光提取光学元件440a、438a、436a、434a、432a可被配置为既将光重定向到其各自的波导之外,又对于与波导相关联的特定深度平面以适当的发散或准直量输出该光。结果,具有不同相关联的深度平面的波导可以具有光提取光学元件的不同配置,该光提取光学元件根据相关联的深度平面以不同的发散量输出光。在一些实施例中,如本文所讨论的,光提取光学元件440a、438a、436a、434a、432a可以是体积或表面特征,其可被配置为以特定角度输出光。例如,光提取光学元件440a、438a、436a、434a、432a可以是体积全息图、表面全息图和/或衍射光栅。在2015年6月25日公开的美国专利公开No.2015/0178939中描述了诸如衍射光栅的光提取光学元件,其通过引用全部并入在此。

在一些实施例中,光提取光学元件440a、438a、436a、434a、432a是形成衍射图案或衍射光学元件(在本文中也称为“DOE”)的衍射特征。优选地,DOE具有相对较低的衍射效率,使得通过与DOE的每次交互,光束的仅一部分光朝着眼睛410偏转,而其余部分则通过全内反射继续移动通过波导。携带图像信息的光因此可以被分成多个相关的出射光束,该出射光束在多个位置处离开波导,并且该结果对于在波导内反弹的该特定准直光束是朝向眼睛304的相当均匀图案的出射发射。

在一些实施例中,一个或多个DOE可以在它们主动衍射的“开启”状态和它们不明显衍射的“关闭”状态之间切换。例如,可切换的DOE可以包括聚合物分散液晶层,其中,微滴(microdrop)在主体介质(host medium)中包含衍射图案,并且微滴的折射率可以切换为与主体材料的折射率基本匹配(在这种情况下,该图案不会明显衍射入射光),或者可以将微滴切换到与主体介质的折射率不匹配的折射率(在这种情况下,该图案会主动衍射入射光)。

在一些实施例中,深度平面或景深的数量和分布可以基于观看者的眼睛的瞳孔大小或定向动态地变化。景深可能与观看者的瞳孔大小成反比。结果,随着观看者眼睛的瞳孔大小减小,景深增加,使得由于该平面的位置超出眼睛的焦深而无法辨认的平面可能变得可辨认,并且随着瞳孔大小的减小和景深的相应增加表现为更聚焦。同样,随着瞳孔大小减小,可以减少用于向观看者呈现不同图像的间隔开的深度平面的数量。例如,在处于一个瞳孔大小下,不将眼睛的调节从一个深度平面调整到另一个深度平面,则观看者可能无法清楚地感知第一深度平面和第二深度平面两者的细节。但是,这两个深度平面可以在不改变调节的情况下,对于处于另一瞳孔大小的用户同时充分地聚焦。

在一些实施例中,显示系统可以基于对瞳孔大小或定向的确定,或者基于接收到指示特定瞳孔大小或定向的电信号,来改变接收图像信息的波导的数量。例如,如果用户的眼睛不能区分与两个波导相关联的两个深度平面,则控制器460(其可以是本地处理和数据模块260的实施例)可以被配置或编程为停止向这些波导之一提供图像信息。有利地,这可以减少系统上的处理负担,从而增加系统的响应性。在波导的DOE可在开启和关闭状态之间切换的实施例中,当波导确实接收到图像信息时,DOE可被切换为关闭状态。

在一些实施例中,可能希望使出射光束满足直径小于观看者眼睛的直径的条件。但是,鉴于观看者瞳孔大小的可变性,满足此条件可能是具有挑战性的。在一些实施例中,通过响应于观看者的瞳孔大小的确定而改变出射光束的大小,在宽范围的瞳孔大小上满足该条件。例如,随着瞳孔大小的减小,出射光束的大小也可以减小。在一些实施例中,可以使用可变孔径来改变出射光束的大小。

可穿戴系统400可以包括对世界470的一部分进行成像的面向外部的成像系统464(例如,数码相机)。世界470的这一部分可以称为世界相机的视野(FOV),成像系统464有时被称为FOV相机。世界相机的FOV可以与观看者210的FOV相同或不同,观看者210的FOV包含观看者210在给定时间感知的世界470的一部分。例如,在某些情况下,世界相机的FOV可以大于可穿戴系统400的观看者210的观看者210。可用于观看者观看或成像的整个区域可以被称为能视场(field of regard(FOR))。FOR可以包括围绕可穿戴系统400的立体角的4π球面度,因为穿戴者可以移动他的身体、头部或眼睛以感知空间中的基本上任何方向。在其他上下文中,穿戴者的移动可能会更受限制,并且因此穿戴者的FOR可能会对向较小的立体角。从面向外部的成像系统464获得的图像可以用于跟踪用户做出的手势(例如,手或手指手势),检测用户面前的世界470中的对象等等。

可穿戴系统400可以包括音频传感器232(例如,麦克风)以捕获环境声音。如上所述,在一些实施例中,可以定位一个或多个其他音频传感器以提供对确定语音源的位置有用的立体声接收。作为另一个示例,音频传感器232可以包括定向麦克风,该定向麦克风还可以提供关于音频源位于何处的有用的定向信息。可穿戴系统400可以在定位语音源时使用来自面向外部的成像系统464和音频传感器230的信息,或者在特定时间确定有源说话者等。例如,可穿戴系统400可以单独使用语音识别或组合扬声器的反射图像(例如,在镜子中看到的),以确定说话者的标识。作为另一个示例,可穿戴系统400可以基于从定向麦克风获取的声音来确定说话者在环境中的位置。可穿戴系统400可以使用语音识别算法解析来自说话者的位置的声音,以确定语音的内容,并使用语音识别技术来确定说话者的标识(例如,姓名或其他人口统计信息)。

可穿戴系统400还可以包括面向内部的成像系统466(例如,数字相机),其观测用户的移动,例如,眼睛移动和面部移动。面向内部的成像系统466可以用于捕获眼睛410的图像以确定眼睛304的瞳孔的大小和/或定向。面向内部的成像系统466可以用于获取图像以用于确定用户正在看的方向(例如,眼睛姿势)或用于对用户进行生物特征标识(例如,经由虹膜标识)。在一些实施例中,每只眼睛可以利用至少一个相机,以独立地确定每只眼睛的瞳孔大小或眼睛姿势,从而允许为每只眼睛呈现图像信息动态地适合该眼睛。在一些其他实施例中,仅确定单只眼睛410的瞳孔直径或定向(例如,每双眼睛仅使用单个相机),并且认为该瞳孔直径或定向对于用户的两只眼睛是相似的。可以分析由面向内部的成像系统466获得的图像以确定用户的眼睛姿势或情绪,可穿戴系统400可以使用该眼睛姿势或情绪来确定应该向用户呈现哪些音频或视觉内容。可穿戴系统400还可以使用诸如IMU、加速度计、陀螺仪等的传感器来确定头部姿势(例如,头部位置或头部定向)。

可穿戴系统400可以包括用户输入设备466,用户可以通过该用户输入设备466向控制器460输入命令以与可穿戴系统400交互。例如,用户输入设备466可以包括触控板、触摸屏、游戏杆、多自由度(DOF)控制器、电容感测设备、游戏控制器、键盘、鼠标、方向板(D-pad)、棒、触觉设备、图腾(totem)(例如,充当虚拟用户输入设备)等等。多DOF控制器可以感测控制器的某些或所有可能的平移(例如,左/右、前/后、或上/下)或旋转(例如,偏航、俯仰或滚动)中的用户输入。支持平移移动的多DOF控制器可以称为3DOF,而支持平移和旋转的多DOF控制器可以称为6DOF。在一些情况下,用户可以使用手指(例如,拇指)在触敏输入设备上按下或滑动以向可穿戴系统400提供输入(例如,向由可穿戴系统400提供的用户接口提供用户输入)。用户输入设备466可以在可穿戴系统400的使用过程中被用户的手握住。用户输入设备466可以与可穿戴系统400进行有线或无线通信。

在许多实施方式中,除了上述可穿戴系统的组件之外或作为替代,可穿戴系统可以包括其他组件。可穿戴系统可以例如包括一个或多个触觉设备或组件。触觉设备或组件可操作以向用户提供触感。例如,当触摸虚拟内容(例如,虚拟对象、虚拟工具、其他虚拟构造物)时,触觉设备或组件可以提供压力或纹理的触感。触感可以复制虚拟对象所表示的物理对象的感觉,或者可以复制虚拟内容所表示的想象的对象或角色(例如,龙)的感觉。在一些实施方式中,用户可以穿戴触觉设备或组件(例如,用户可穿戴的手套)。在一些实施方式中,触觉设备或组件可以由用户持有。

例如,可穿戴系统可以包括用户可操纵的一个或多个物理对象,以允许输入或与可穿戴系统交互。这些物理对象在本文中可以称为图腾。一些图腾可以采取无生命对象的形式,例如,一块金属或塑料、墙壁、桌子表面。在某些实施方式中,图腾实际上可能没有任何物理输入结构(例如,按键、触发器、操纵杆、轨迹球、摇杆开关)。相反,图腾可以简单地提供物理表面,并且可穿戴系统可以渲染用户接口,以便对用户看起来在图腾的一个或多个表面上。例如,可穿戴系统可以使计算机键盘和触控板的图像渲染为看起来驻留在图腾的一个或多个表面上。例如,可穿戴系统可以使虚拟计算机键盘和虚拟触控板渲染为看起来在用作图腾的薄铝矩形板的表面上。矩形板本身可能没有任何物理按键、触控板或传感器。但是,可穿戴系统可以将用户操作或交互或者触摸矩形板检测为通过虚拟键盘或虚拟触控板进行的选择或输入。用户输入设备466(图4中所示)可以是图腾的一个实施例,它可以包括触控板、触摸板、触发器、操纵杆、轨迹球、摇杆或虚拟开关、鼠标、键盘、多自由度控制器、或其他物理输入设备。用户可以单独或与姿势结合使用图腾来与可穿戴系统或其他用户进行交互。

在美国专利公开No.2015/0016777中描述了本公开的与可穿戴设备、HMD和显示系统一起使用的触觉设备和图腾的示例,其全部内容通过引用并入本文。

图5示出了具有眼睑504、巩膜508(眼睛的“白色”)、虹膜512和瞳孔516的眼睛500的图像。曲线516a示出了瞳孔516和虹膜512之间的瞳孔边界,并且曲线512a示出了虹膜512和巩膜508之间的边缘边界。眼睑504包括上眼睑504a和下眼睑504b。示出了处于自然静止(resting)姿势的眼睛500(例如,其中,用户的脸部和凝视都朝向用户正前方的远处对象而定向)。眼睛500的自然静止姿势可由自然静止方向520指示,该方向是当处于自然静止姿势时与眼睛500的表面正交的方向(例如,直接在图5中示出的眼睛500的平面之外),并且在此示例中,位于瞳孔516的中心。

当眼睛500移动以朝着不同的对象看时,眼睛姿势将相对于自然静止方向520发生变化。当前的眼睛姿势可以参考眼睛姿势方向520来确定,该当前的眼睛姿势是与眼睛的表面正交(并且位于瞳孔516的中心)但朝向眼睛当前所指向的对象的方向而定向。参考图5中所示的示例坐标系,眼睛500的姿势可以被表达为两个角度参数,其指示眼睛的眼睛姿势方向524的方位角偏转(azimuthal deflection)和顶角偏转(zenithal deflection),均相对于眼睛的自然静止方向520。为了说明的目的,这些角度参数可以被表示为θ(从基准方位角(fiducial azimuth)确定的方位角偏转)和φ(顶角偏转,有时也称为极角偏转(polardeflection))。在一些实施方式中,在眼睛姿势的确定中可以包括眼睛围绕眼睛姿势方向524的角度滚动,并且可在以下分析中包括角度滚动。在其他实施方式中,用于确定眼睛姿势的其他技术可以使用例如俯仰、偏航和可选地滚动系统。

可使用任何适当的过程从视频获得眼睛图像,例如,使用可从一个或多个连续帧中提取图像的视频处理算法。可使用多种眼睛跟踪技术根据眼睛图像确定眼睛的姿势。例如,可通过考虑角膜对所提供的光源的透镜作用来确定眼睛姿势。任何合适的眼睛跟踪技术都可用于在本文所述的眼睑形状估计技术中确定眼睛姿势。

图6示出了包括眼睛跟踪系统的可穿戴系统600的示意图。在至少一些实施例中,可穿戴系统600可包括位于头戴式单元602中的部件和位于非头戴式单元604中的部件。非头戴式单元604可以是例如皮带式部件、手持式部件、背包中的部件、远程部件等。将可穿戴系统600的一些部件并入非头戴式单元604中可帮助减少头戴式单元602的尺寸、重量、复杂性和成本。在一些实施方式中,被描述为由头戴式单元602和/或非头戴式604的一个或多个部件执行的一些或全部功能可通过可穿戴系统600中其他地方包括的一个或多个部件来提供。例如,可通过非头戴式单元604的CPU 616提供与头戴式单元602的CPU 612相关联的以下描述的一些或全部功能,反之亦然。在一些示例中,可通过可穿戴系统600的外围设备来提供一些或所有这样的功能。此外,在一些实施方式中,可通过一个或多个云计算设备或其他远程计算设备以类似于上面参考图2所述的方式来提供一些或所有这样的功能。

如图6所示,可穿戴系统600可包括眼睛跟踪系统,该眼睛跟踪系统包括捕获用户的眼睛610的图像的相机324。如果需要,眼睛跟踪系统还可包括光源326a和326b(诸如发光二极管“LED”)。光源326a和326b可产生闪光(即,在由相机324捕获的眼睛的图像中出现的被用户的眼睛反射走)。光源326a和326b相对于相机324的位置可以是已知的,并且因此,相机324所捕获的图像内的闪光的位置可用于跟踪用户的眼睛(如下面结合图7-11将更详细地讨论的)。在至少一个实施例中,可存在与用户的一只眼睛610相关联的一个光源326和一个相机324。在另一实施例中,可存在与用户的每只眼睛610相关联的一个光源326和一个相机324。在其他实施例中,可存在与用户的一只或每只眼睛610相关联的一个或多个相机324和一个或多个光源326。作为一个特定示例,可存在与用户的每只眼睛610相关联的两个光源326a和326b以及一个或多个相机324。作为另一示例,可存在与用户的每只眼睛610相关联的三个或更多个光源(例如,光源326a和326b)以及一个或多个相机324。

眼睛跟踪模块614可从眼睛跟踪相机324接收图像,并且可分析图像以提取各条信息。作为示例,眼睛跟踪模块614可检测用户的眼睛姿势、用户的眼睛相对于眼睛跟踪相机324(和相对于头戴式单元602)的三维位置、用户的一只或两只眼睛610聚焦的方向、用户的聚散深度(即,距用户的深度,在该深度处用户正在聚焦)、用户的瞳孔的位置、用户的角膜和角膜球(cornea sphere)的位置、用户的每只眼睛的旋转中心、以及用户的每只眼睛的视角中心(center of perspective)。眼睛跟踪模块614可使用下面结合图7-11描述的技术来提取这样的信息。如图6所示,眼睛跟踪模块614可以是使用头戴式单元602中的CPU 612实现的软件模块。在题为“EYE TRACKING CALIBRATION TECHNIQUES(眼动跟踪校准技术)”的美国专利申请No.15/993,371中提供了讨论眼睛跟踪模块组件的创建、调整和使用的更多细节,该专利申请通过引用整体并入本文。

来自眼睛跟踪模块614的数据可被提供给可穿戴系统中的其他部件。例如,这样的数据可被发送到非头戴式单元604中的部件,例如包括用于光场渲染控制器618和配准观察器620的软件模块的CPU 616。

渲染控制器618可使用来自眼睛跟踪模块614的信息来调整由渲染引擎622(例如,可以是GPU 620中的软件模块并且可向显示器220提供图像的渲染引擎)向用户显示的图像。作为示例,渲染控制器618可基于用户的旋转中心或视角中心来调整显示给用户的图像。特别地,渲染控制器618可使用关于用户的视角中心的信息来模拟渲染相机(即,从用户的视角模拟收集图像),并且可基于模拟的渲染相机来调整显示给用户的图像。

“渲染相机”,有时也称为“针孔透视相机”(或简称为“透视相机”)或“虚拟针孔相机”(或简称为“虚拟相机”),是用于在渲染可能来自虚拟世界中的对象数据库的虚拟图像内容中所使用的模拟相机。对象可具有相对于用户或穿戴者并且可能相对于围绕用户或穿戴者的环境中的真实对象的位置和朝向。换句话说,渲染相机可表示渲染空间内的透视图,用户或穿戴者将从该透视图观看渲染空间的3D虚拟内容(例如,虚拟对象)。渲染相机可由渲染引擎管理,以基于要呈现给眼睛的虚拟对象的数据库来渲染虚拟图像。可渲染虚拟图像,就像从用户或穿戴者的视角拍摄一样。例如,虚拟图像可被渲染为好像被具有特定内在参数集(例如,焦距、相机像素大小、主点坐标、偏斜/失真参数等)以及特定外在参数集(例如,相对于虚拟世界的平移分量和旋转分量)的针孔相机(对应于“渲染相机”)捕获一样。从具有渲染相机的位置和取向(例如,渲染相机的外在参数)的这种相机的视角拍摄虚拟图像。因此,系统可定义和/或调整内在和外在渲染相机参数。例如,该系统可定义特定外在渲染相机参数集,使得可以渲染虚拟图像,就像从具有相对于用户或穿戴者的眼睛的特定位置的相机的视角捕获虚拟图像一样,以提供看起来像从用户或穿戴者的视角来看的图像。该系统随后可动态地即时(on-the-fly)调整外在渲染相机参数,以便维持与特定位置的配准。类似地,可定义内在渲染相机参数并随时间动态调整。在一些实施方式中,图像被渲染为好像是从相机的视角捕获的,该相机具有在相对于用户或穿戴者的眼睛的特定位置(例如,视角中心或旋转中心或别处)处的光圈(例如,针孔)。

在一些实施例中,系统可针对用户的左眼来创建或动态地重新定位和/或重新定向一个渲染相机,以及针对用户的右眼的另一渲染相机,因为用户的眼睛在物理上彼此分开并且,因此始终如一定位在不同的位置。因此,在至少一些实施方式中,从与观看者的左眼相关联的渲染相机的视角渲染的虚拟内容可通过头戴式显示器(例如,头戴式单元602)左侧的目镜呈现给用户,以及从与用户的右眼相关联的渲染相机的视角渲染的虚拟内容可通过这种头戴式显示器右侧的目镜呈现给用户。在题为“METHODS AND SYSTEMS FORDETECTING AND COMBINING STRUCTURAL FEATURES IN 3D RECONSTRUCTION(用于在3D重建中检测和组合结构特征的方法和系统)”的美国专利申请No.15/274,823中提供了讨论在渲染过程中创建、调整和使用渲染相机的更多细节,其出于所有目的通过引用整体明确地并入本文。

在一些示例中,系统600的一个或多个模块(或部件)(例如,光场渲染控制器618、渲染引擎620等)可基于用户的头部和眼睛的位置和取向(例如,分别基于头部姿势和眼睛跟踪数据确定的)确定渲染相机在渲染空间内的位置和取向。例如,系统600可有效地将用户的头部和眼睛的位置和取向映射到3D虚拟环境内的特定位置和角度位置,将渲染相机放置和定向在3D虚拟环境内的特定位置和角度位置,以及为用户渲染虚拟内容,就像由渲染相机捕获的一样。在题为“SELECTING VIRTUAL OBJECTS IN A THREE-DIMENSIONAL SPACE(在三维空间中选择虚拟对象)”的美国专利申请No.15/296,869中提供了讨论现实世界到虚拟世界映射过程的更多细节,其出于所有目的通过引用整体明确地并入本文。作为示例,渲染控制器618可通过选择在任何给定时间利用哪个深度平面(或多个深度平面)来显示图像来调整显示图像的深度。在一些实施方式中,可通过调整一个或多个内在渲染相机参数来执行这种深度平面切换。

配准观察器620可使用来自眼睛跟踪模块614的信息来标识头戴式单元602是否正确地定位在用户的头部上。作为示例,眼睛跟踪模块614可提供眼睛位置信息,诸如用户的眼睛的旋转中心的位置,该信息指示用户的眼睛相对于相机324和头戴式单元602的三维位置,并且眼睛跟踪模块614可使用该位置信息来确定显示器220在用户的视场中是否被正确对准,或者头戴式单元602(或头戴式受话器(headset))是否已经滑动或与用户的眼睛未对准。作为示例,配准观察器620能够确定:是否头戴式单元602已经沿用户的鼻梁向下滑落,从而将显示器220从用户的眼睛向远处和下面移动(这可能是不希望的);是否头戴式单元602已经沿用户的鼻梁向上移动,从而将显示器220从用户的眼睛向近处和向上移动;是否头戴式单元602已经相对于用户的鼻梁向左或向右移动,是否头戴式单元602已经抬高到用户的鼻梁上方,或者是否头戴式单元602已经以这些或其他方式从期望的位置或位置范围移开。通常,配准观察器620能够确定总体上头戴式单元602以及尤其是显示器220是否被正确地定位在用户的眼睛前面。换句话说,配准观察器620可确定显示系统220中的左显示器是否与用户的左眼正确地对准,并且显示系统220中的右显示器是否与用户的右眼正确地对准。配准观察器620可通过确定头戴式单元602是否被定位和定向在相对于用户的眼睛的位置和/或取向的期望范围内来确定头戴式单元602是否被正确地定位。

在至少一些实施例中,配准观察器620可以告警、消息或其他内容形式生成用户反馈。可将这样的反馈提供给用户以告知用户头戴式单元602的任何未对准,以及关于如何校正未对准的可选反馈(诸如以特定方式调整头戴式单元602的建议)。

在2017年9月27日提交的美国专利申请No.15/717,747(代理人案号MLEAP.052A2)中描述了可由配准观察器620使用的示例配准观察和反馈技术,其全文通过引用并入本文。

在图7A中示出了示例眼睛跟踪模块614的详细框图。如图7A所示,眼睛跟踪模块614可包括各种不同的子模块,可提供各种不同的输出,并且可利用各种可用数据来跟踪用户的眼睛。作为示例,眼睛跟踪模块614可利用可用数据,包括眼睛跟踪外在和内在参数(extrinsics and intrinsics),诸如眼睛跟踪相机324相对于光源326和头戴式单元602的几何布置;假设的眼睛尺寸704,诸如用户的角膜曲率中心与用户的眼睛的平均旋转中心之间的典型距离约为4.7mm,或用户的旋转中心与视角中心之间的典型距离;以及每用户的校准数据706,诸如特定用户的瞳孔间距离。2017年4月26日提交的美国专利申请No.15/497,726(代理人案案号MLEAP.023A7)中描述了眼睛跟踪模块614可采用的外在参数、内在参数和其他信息的附加示例,其全文通过引用并入本文。

图像预处理模块710可从眼睛相机(诸如眼睛相机324)接收图像,并且可对接收到的图像执行一个或多个预处理(即,调节)操作。作为示例,图像预处理模块710可对图像应用高斯模糊,可对图像进行下采样到较低的分辨率,可应用非锐化掩模,可应用边缘锐化算法,或者可应用其他合适的滤波器来帮助对来自眼睛相机324的图像中的闪光、瞳孔或其他特征的后期检测、定位和标记。图像预处理模块710可应用低通滤波器或形态滤波器(例如开口滤波器),这些滤波器可去除诸如来自瞳孔边界516a(参见图5)的高频噪声,从而去除了可能妨碍瞳孔和闪光确定的噪声。图像预处理模块710可将预处理后的图像输出给瞳孔标识模块712以及闪光检测和标记模块714。

瞳孔标识模块712可从图像预处理模块710接收预处理的图像,并且可标识那些图像中包括用户的瞳孔的区域。在一些实施例中,瞳孔标识模块712可在来自相机324的眼睛跟踪图像中确定用户的瞳孔的位置的坐标或中心或形心(centroid)的坐标。在至少一些实施例中,瞳孔标识模块712可标识眼睛跟踪图像中的轮廓(例如,瞳孔虹膜边界的轮廓),标识轮廓矩(即,形心),应用爆炸形(starburst)瞳孔检测和/或Canny边缘检测算法,基于强度值拒绝异常值,标识子像素边界点,校正眼睛相机扭曲(即,由眼睛相机324捕获的图像中的扭曲),应用随机抽样一致(RANSAC)迭代算法以将椭圆适配到眼睛跟踪图像中的边界,对图像应用跟踪滤波器,以及标识用户瞳孔形心的子像素图像坐标。瞳孔标识模块712可向闪光检测和标记模块714输出瞳孔标识数据,该瞳孔标识数据可指示预处理图像模块712的哪些区域被标识为示出了用户的瞳孔。瞳孔标识模块712可向闪光检测模块714提供每个眼睛跟踪图像内用户的瞳孔的2D坐标(即,用户的瞳孔的形心的2D坐标)。在至少一些实施例中,瞳孔标识模块712还可向坐标系归一化模块718提供相同种类的瞳孔标识数据。

瞳孔标识模块712可利用的瞳孔检测技术在2017年2月23日公开的美国专利公开号2017/0053165和2017年2月23日公开的美国专利公开号2017/0053166中进行了描述,其每个全部内容均通过引用整体并入本文。

闪光检测和标记模块714可从模块710接收预处理的图像,并且从模块712接收瞳孔标识数据。闪光检测模块714可使用该数据在示出用户的瞳孔的预处理图像的区域内检测和/或标识闪光(即,来自光源326的光从用户的眼睛的反射走)。作为示例,闪光检测模块714可搜索眼睛跟踪图像内的明亮区域(有时在本文中称为“团迹(blob)”或局部强度最大值),其在用户的瞳孔附近。在至少一些实施例中,闪光检测模块714可重新缩放(例如,放大)瞳孔椭圆以包含附加的闪光。闪光检测模块714可按大小和/或强度过滤闪光。闪光检测模块714还可确定眼睛跟踪图像内的每个闪光的2D位置。在至少一些示例中,闪光检测模块714可确定闪光相对于用户的瞳孔的2D位置,其也可称为瞳孔闪光矢量。闪光检测和标记模块714可标记闪光并将带有标记的闪光的预处理图像输出给3D角膜中心估计模块716。闪光检测和标记模块714还可传递数据,例如来自模块710的预处理图像和来自模块712的瞳孔标识数据。

由诸如模块712和714之类的模块执行的瞳孔和闪光检测可使用任何合适的技术。作为示例,可将边缘检测应用于眼睛图像以标识闪光和瞳孔。边缘检测可通过各种边缘检测器、边缘检测算法或滤波器来应用。例如,可将Canny边缘检测器应用于图像,以检测诸如图像的线条中的边缘。边缘可包括沿着线定位的对应于局部最大导数的点。例如,可使用Canny边缘检测器来定位瞳孔边界516a(参见图5)。在确定了瞳孔的位置的情况下,可使用各种图像处理技术来检测瞳孔116的“姿势”。确定眼睛图像的眼睛姿势也可称为检测眼睛图像的眼睛姿势。姿势也可称为凝视、指向方向或眼睛的取向。例如,瞳孔可能正在向左看向对象,并且瞳孔的姿势可被分类为向左姿势。可使用其他方法来检测瞳孔或闪光的位置。例如,可使用Canny边缘检测器将同心环放置在眼睛图像中。作为另一个示例,可使用积分微分算子来找到虹膜的瞳孔或角膜缘边界。例如,可使用Daugman积分微分算子、Hough变换、或其他虹膜分割技术以返回估计瞳孔或虹膜的边界的曲线。

3D角膜中心估计模块716可从模块710、712、714接收包括检测到的闪光数据和瞳孔标识数据的预处理图像。3D角膜中心估计模块716可使用这些数据来估计用户的角膜的3D位置。在一些实施例中,3D角膜中心估计模块716可估计眼睛的角膜曲率中心或用户的角膜球的3D位置,即,具有通常与用户的角膜共同延伸的表面部分的假想球的中心。3D角膜中心估计模块716可将指示角膜球和/或用户的角膜的估计的3D坐标的数据提供给坐标系归一化模块718、光轴确定模块722和/或光场渲染控制器618。3D角膜中心估计模块716的操作的更多细节在本文中结合图8A-8E提供。2017年4月26日提交的美国专利申请No.15/497,726(代理人案号MLEAP.023A7)(其全部内容通过引用合并于此)中讨论了用于估计眼睛特征(例如角膜或角膜球)的位置的技术,其可由本公开的可穿戴系统中的3D角膜中心估计模块716和其他模块使用。

坐标系归一化模块718可可选地(如其虚线轮廓所示)被包括在眼睛跟踪模块614中。坐标系归一化模块718可从3D角膜中心估计模块716接收指示用户的角膜的中心(和/或用户的角膜球的中心)的估计的3D坐标,并且还可从其他模块接收数据。坐标系归一化模块718可归一化眼睛相机坐标系,这可帮助补偿可穿戴设备的滑动(例如,头戴式部件从其在用户的头部上的正常静止位置的滑动,这可由配准观察器620标识)。坐标系归一化模块718可旋转坐标系以将坐标系的z轴(即,聚散深度轴)与角膜中心(例如,如3D角膜中心估计模块716所指示的)对准,并且可平移相机中心(即,坐标系的原点)到距角膜中心的预定距离(诸如30mm)处(即,模块718可取决于是否确定眼睛相机324比预定距离更近或更远而放大或缩小眼睛跟踪图像)。通过该归一化过程,眼睛跟踪模块614能够在眼睛跟踪数据中建立一致的取向和距离,而相对独立于用户的头上的头戴式受话器定位的变化。坐标系归一化模块718可向3D瞳孔中心定位器模块720提供角膜的中心(和/或角膜球)的3D坐标、瞳孔标识数据和预处理的眼睛跟踪图像。坐标系归一化模块718的操作的更多细节结合图9A-9C在此提供。

3D瞳孔中心定位器模块720可在归一化或非归一化坐标系中接收数据,包括用户的角膜(和/或角膜球)的中心的3D坐标、瞳孔位置数据和预处理的眼睛跟踪图像。3D瞳孔中心定位器模块720可分析此类数据以确定用户的瞳孔的中心在归一化或非归一化的眼睛相机坐标系中的3D坐标。3D瞳孔中心定位器模块720可基于以下在三个维度上确定用户的瞳孔的位置:瞳孔形心的2D位置(如模块712所确定的)、角膜中心的3D位置(如模块716所确定的)、假设的眼睛尺寸704(例如,典型用户的角膜球的大小以及从角膜中心到瞳孔中心的典型距离)以及眼睛的光学特性(例如,角膜的折射率(相对于空气的折射率)或这些的任意组合。3D瞳孔中心定位器模块720的操作的更多细节在本文中结合图9D-9G提供。在2017年4月26日提交的美国专利申请No.15/497,726(代理人案卷号MLEAP.023A7)中讨论了本公开的可穿戴系统中的3D瞳孔中心定位器模块720和其他模块可利用的用于估计诸如瞳孔之类的眼睛特征的位置的技术,其全文通过引用并入本文。

光轴确定模块722可从模块716和720接收数据,该数据指示用户的角膜和用户的瞳孔的中心的3D坐标。基于这样的数据,光轴确定模块722可标识从角膜中心的位置(即,从角膜球的中心)到用户的瞳孔的中心的矢量,其可定义用户的眼睛的光轴。作为示例,光轴确定模块722可将指定用户的光轴的输出提供给模块724、728、730和732。

旋转中心(CoR)估计模块724可从模块722接收数据,该数据包括用户的眼睛的光轴的参数(即,指示光轴在与头戴式单元602具有已知关系的坐标系中的方向的数据)。CoR估计模块724可估计用户的眼睛的旋转中心(即,当用户的眼睛向左、向右、向上和/或向下旋转时,用户的眼睛围绕其旋转的点)。尽管眼睛可能无法围绕奇异点(singular point)完美旋转,但假设奇异点可能就足够了。在至少一些实施例中,CoR估计模块724可通过从瞳孔的中心(由模块720标识)或角膜的曲率中心(由模块716标识)沿着光轴(由模块722标识)向视网膜移动特定距离,来估计眼睛的旋转中心。该特定距离可以是假设的眼睛尺寸704。作为一个示例,角膜的曲率中心与CoR之间的特定距离可以是大约4.7mm。可基于任何相关数据(包括用户的年龄、性别、视力处方、其他相关特征等)为特定用户更改此距离。

在至少一些实施例中,CoR估计模块724可细化其对用户的每只眼睛的旋转中心随时间的估计。举例来说,随着时间的流逝,用户最终将旋转眼睛(看向其他地方,看向更近的东西,看向更远的东西、或某个时候向左、向右、向上或向下看),导致其每只眼睛的光轴发生偏移。CoR估计模块724然后可分析由模块722标识的两个(或更多)光轴,并定位那些光轴的3D相交点。CoR估计模块724然后可确定旋转中心位于那个3D相交点。这样的技术可提供旋转中心的估计,其准确性随着时间的推移而提高。可采用各种技术来提高CoR估计模块724的准确性以及所确定的左眼和右眼的CoR位置。作为示例,CoR估计模块724可通过找到针对各种不同的眼睛姿势随时间而确定的光轴的平均相交点来估计CoR。作为附加示例,模块724可过滤随时间推移所估计的CoR位置或对其求平均,可计算随时间推移所估计的CoR位置的移动平均值,和/或可应用卡尔曼滤波器以及眼睛和眼睛跟踪系统的已知动力学来估计随时间推移的CoR位置。作为特定示例,模块724可计算所确定的光轴相交点和假设的CoR位置(例如距眼睛的角膜曲率中心4.7mm)的加权平均值,使得确定的CoR可从假设的CoR位置(即,在眼睛的角膜曲率中心后4.7mm处)随时间推移缓慢漂移至用户的眼睛内的稍有不同的位置,因为获得了用户的眼睛跟踪数据,从而使得能够每用户细化CoR位置。

瞳孔间距离(IPD)估计模块726可从CoR估计模块724接收数据,该数据指示用户的左眼和右眼的旋转中心的估计3D位置。IPD估计模块726然后可通过测量用户的左眼和右眼的旋转中心之间的3D距离来估计用户的IPD。通常,当用户注视光学无穷远时(即,用户的眼睛的光轴基本上彼此平行),用户的左眼的估计CoR和用户的右眼的估计CoR之间的距离可大致等于用户的瞳孔的中心之间的距离,这是瞳孔间距离(IPD)的典型定义。用户的IPD可由可穿戴系统中的各种部件和模块使用。例如,可将用户的IPD提供给配准观察器620,并用于评估可穿戴设备与用户的眼睛对准的程度(例如,根据用户的IPD,左和右显示器透镜是否根据用户的IPD正确分开了)。作为另一个示例,可将用户的IPD提供给聚散深度估计模块728,并用于确定用户的聚散深度。模块726可采用各种技术,例如结合CoR估计模块724所讨论的技术,以提高估计的IPD的准确性。作为示例,IPD估计模块724可应用滤波、随时间求平均、包括假设的IPD距离的加权平均、卡尔曼滤波器等,作为以准确的方式估计用户的IPD的一部分。

在一些实施例中,IPD估计模块726可以从3D瞳孔中心定位器模块和/或3D角膜中心估计模块716接收数据,该数据指示用户的瞳孔和/或角膜的所估计的3D位置。IPD估计模块726然后可以参考瞳孔与角膜之间的距离来估计用户的IPD。通常,这些距离会随着用户旋转眼睛并改变其聚散深度而随时间变化。在某些情况下,IPD估计模块726可能会在瞳孔和/或角膜之间寻找最大的测得距离,该距离应在用户注视光学无穷远时发生,并且通常应与用户的瞳孔间距对应。在其他情况下,IPD估计模块726可以使用户的瞳孔(和/或角膜)之间的测得距离适合于人的瞳孔间距离如何根据其聚散深度而变化的数学关系。在一些实施例中,使用这些或其他类似技术,即使在没有观察到用户看着光学无穷远的情况下,IPD估计模块726也能够估计用户的IPD(例如,通过从一个或多个观察结果中推断出来,在该观察结果中,用户正在以比光学无穷远的距离更近的距离趋近)。

聚散深度估计模块728可从眼睛跟踪模块614中的各个模块和子模块接收数据(如结合图7A所示)。具体地,聚散深度估计模块728可采用指示以下的数据瞳孔中心的估计3D位置(例如,如上文所述的模块720所提供)、一个或多个确定的光轴参数(例如,如上文所述的模块722所提供)、旋转中心的估计3D位置(例如,如上文所述的模块724所提供)、估计的IPD(例如,旋转中心的估计3D位置之间的欧几里得(Euclidean)距离)(例如,如上文所述的模块726所提供),和/或一个或多个确定的光轴和/或视轴参数(例如,如由下面描述的模块722和/或模块730所提供)。聚散深度估计模块728可检测或以其他方式获得用户的聚散深度的度量,该度量可以是距用户的距离,在该距离处用户的眼睛在聚焦。例如,当用户注视他们前方三英尺处的对象时,用户的左眼和右眼的聚散深度为三英尺;以及当用户注视着远处的风景时(即,用户的眼睛的光轴基本彼此平行,使得用户的瞳孔的中心之间的距离可大致等于用户的左眼和右眼的旋转中心之间的距离),用户的左眼和右眼的聚散深度为无穷大。在一些实施方式中,聚散深度估计模块728可利用指示用户的瞳孔的估计中心的数据(例如,如由模块720提供的那样)来确定用户的瞳孔的估计中心之间的3D距离。聚散深度估计模块728可通过将瞳孔中心之间的这种确定的3D距离与估计的IPD(例如,旋转中心的估计3D位置之间的欧几里得距离)进行比较来获得聚散深度的量度(例如,如以上所述的模块726所指示的)。除了瞳孔中心之间的3D距离和估计的IPD之外,聚散深度估计模块728可利用已知的、假设的、估计的和/或确定的几何形状来计算聚散深度。作为示例,模块728可在三角计算中组合瞳孔中心之间的3D距离、估计的IPD和3D CoR位置,以估计(即,确定)用户的聚散深度。实际上,根据估计的IPD对瞳孔中心之间这样确定的3D距离进行评估可用于指示用户当前的聚焦深度相对于光学无穷远的度量。在一些示例中,聚散深度估计模块728可简单地接收或访问指示用户的瞳孔的估计中心之间的估计的3D距离的数据,以便获得这种聚散深度的度量。在一些实施例中,聚散深度估计模块728可通过比较用户的左和右光轴来估计聚散深度。特别地,聚散深度估计模块728可通过定位距用户的距离来估计聚散深度,在该距离处用户的左和右光轴相交(或者用户的左和右光轴在例如水平面的平面上的投射相交)。通过将零深度设置为用户的左和右光轴被用户的IPD分开的深度,模块728可在该计算中利用用户的IPD。在至少一些实施例中,聚散深度估计模块728可通过将眼睛跟踪数据与已知或导出的空间关系一起进行三角测量来确定聚散深度。

在一些实施例中,聚散深度估计模块728可基于用户的视轴(而不是他们的光轴)的交点来估计用户的聚散深度,这可提供对用户聚焦的距离的更准确的指示。在至少一些实施例中,眼睛跟踪模块614可包括光轴到视轴映射模块730。如结合图10在进一步细节中讨论的,用户的光轴和视轴通常不对准。视轴是一个人观看时所沿的轴,而光轴是由该人的晶状体和瞳孔的中心定义的,并且可穿过该人的视网膜的中心。特别地,用户的视轴通常由用户的中央凹(fovea)的位置定义,该位置可能会偏移用户的视网膜的中心,从而导致光轴和视轴不同。在这些实施例中的至少一些实施例中,眼睛跟踪模块614可包括光轴到视轴映射模块730。光轴到视轴映射模块730可校正用户的光轴和视轴之间的差异,并向可穿戴系统中的其他部件(例如,聚散深度估计模块728和光场渲染控制器618)提供关于用户的视轴的信息。在一些示例中,模块730可使用假设的眼睛尺寸704,包括在光轴和视轴之间向内(经鼻地,朝向用户的鼻子)大约5.2°的典型偏移。换句话说,模块730可将用户的左光轴(经鼻地)向鼻子向右移位5.2°,并且将用户的右光轴(经鼻地)向鼻子向左移位5.2°,以便估计用户的左和右光轴的方向。在其他示例中,模块730可在将光轴(例如,如上述模块722所指示的)映射到视轴中时利用每用户校准数据706。作为附加的示例,模块730可使用户的光轴经鼻地在4.0°至6.5°之间移位、在4.5°至6.0°之间移位、在5.0°至5.4°之间移位等等,或者由这些值中的任何一个形成的任何范围。在一些布置中,模块730可至少部分地基于特定用户的特征(例如,他们的年龄、性别、视力处方或其他相关特征)来应用移位,和/或可至少部分地基于针对特定用户的校准过程来应用移位(即,以确定特定用户的光-视轴偏移)。在至少一些实施例中,模块730还可移位左和右光轴的原点以对应于用户的CoP(由模块732确定)而不是对应于用户的CoR。

(当提供时)可选的视角中心(CoP)估计模块732可估计用户的左和右视角中心(CoP)的位置。CoP可以是可穿戴系统的有用位置,并且在至少一些实施例中,是瞳孔正前方的位置。在至少一些实施例中,CoP估计模块732可基于用户的瞳孔中心的3D位置、用户的角膜曲率中心的3D位置或这样的合适的数据或任何组合来估计用户的左和右视角中心的位置。作为示例,用户的CoP可在角膜曲率中心前方大约5.01mm(即,在朝向眼睛的角膜并且沿着光轴的方向上距角膜球中心5.01mm)并且可沿光轴或视轴在用户的角膜的外表面后方约2.97mm处。用户的视角中心可在他们的瞳孔的中心正前方。例如,用户的CoP可距用户的瞳孔小于大约2.0mm,距用户的瞳孔小于大约1.0mm,或者距用户的瞳孔小于大约0.5mm,或者这些值之间的任何范围。作为另一个示例,视角中心可对应于眼睛的前房(anteriorchamber)内的位置。作为其他示例,CoP可在1.0mm与2.0mm之间,大约1.0mm,在0.25mm与1.0mm之间,在0.5mm与1.0mm之间,或者在0.25mm与0.5mm之间。

本文描述的视角中心(作为渲染相机的针孔的潜在期望位置和用户的眼睛中的解剖位置)可以是用于减少和/或消除不期望的视差偏移的位置。特别地,用户的眼睛的光学系统非常近似于由透镜前面的针孔形成的理论系统,投射到屏幕上,且针孔、透镜和屏幕大致分别对应于用户的瞳孔/虹膜、晶状体和视网膜。此外,可期望当距用户的眼睛不同距离的两个点光源(或对象)围绕针孔的开口刚性旋转(例如,沿等于他们距针孔的开口的距离的曲率半径旋转)时,几乎没有或没有视差偏移。因此,似乎CoP应该位于眼睛的瞳孔的中心(并且在某些实施例中可使用这种CoP)。但是,人眼除晶状体和瞳孔的针孔外,还包括角膜,该角膜向传播到视网膜的光赋予附加的光焦度。因此,在此段中描述的理论系统中,针孔的解剖等同物可以是位于用户的眼睛的角膜的外表面与用户的眼睛的瞳孔或虹膜的中心之间的用户的眼睛区域。例如,针孔的解剖等同物可对应于用户的眼睛的前房内的区域。由于本文讨论的各种原因,可能需要将CoP设置为用户的眼睛的前房内的此类位置。CoP的推导和意义在附录(第I部分和第II部分)中进行了详细讨论,该附录构成了本申请的一部分。

如上所述,眼睛跟踪模块614可向可穿戴系统中的其他部件(诸如光场渲染控制器618和配准观察器620)提供数据,诸如左眼和右眼旋转中心(CoR)的估计3D位置、聚散深度、左眼和右眼光轴、用户的眼睛的3D位置、用户的左和右角膜曲率中心的3D位置、用户左和右瞳孔中心的3D位置、用户左和右视角中心的3D位置、用户的IPD等。眼睛跟踪模块614还可包括检测并生成与用户的眼睛的其他方面相关联的数据的其他子模块。作为示例,眼睛跟踪模块614可包括每当用户眨眼时提供标志或其他告警的眨眼(blink)检测模块,以及每当用户的眼睛扫视(即,快速将焦点移至另一点)时提供标志或其他告警的扫视检测模块。

在图7B中示出了示例光场渲染控制器618的详细框图。如图6和7B所示,渲染控制器618可从眼睛跟踪模块614接收眼睛跟踪信息,并且可提供输出给渲染引擎622,渲染引擎622可生成要显示的图像以供可穿戴系统的用户观看。作为示例,渲染控制器618可接收聚散深度、左眼和右眼旋转中心(和/或视角中心)以及其他眼睛数据(诸如眨眼数据、扫视数据等)。

深度平面选择模块750可接收聚散深度信息和其它眼睛数据,并且基于这样的数据可使渲染引擎622将内容以特定的深度平面(即,在特定的距离适应或焦距)传达给用户。如结合图4所讨论的,可穿戴系统可包括由多个波导形成的多个离散的深度平面,每个深度平面以变化的波前曲率水平传送图像信息。在一些实施例中,可穿戴系统可包括一个或多个可变深度平面,例如以随时间变化的波前曲率水平传送图像信息的光学元件。在这些和其他实施例中,深度平面选择模块750可部分基于用户的聚散深度,使渲染引擎622以所选深度向用户传送内容(即,使渲染引擎622引导显示器220切换深度平面)。在至少一些实施例中,深度平面选择模块750和渲染引擎622可在不同深度处渲染内容,并且还生成和/或提供深度平面选择数据给诸如显示器220之类的显示硬件。诸如显示器220之类的显示硬件可响应于由诸如深度平面选择模块750和渲染引擎622之类的模块生成和/或提供的深度平面选择数据(其可以是控制信号)来执行电学深度平面切换。

通常,可期望深度平面选择模块750选择与用户的当前聚散深度匹配的深度平面,从而向用户提供准确的适应提示。然而,也可期望以谨慎且不引人注目的方式切换深度平面。作为示例,可期望避免在深度平面之间过度切换和/或可期望在用户不太可能注意到该切换时(例如在眨眼或眼睛扫视期间)切换深度平面。

滞后(hysteresis)带越过检测模块752可帮助避免深度平面之间的过度切换,特别是当用户的聚散深度在两个深度平面之间的中点或过渡点处波动时。特别地,模块752可使深度平面选择模块750在其深度平面的选择中表现出滞后。作为示例,模块752可仅在用户的聚散深度超过第一阈值之后才使深度平面选择模块750从第一更远的深度平面切换到第二更近的深度平面。类似地,模块752可仅在用户的聚散深度超过了离用户比第一阈值更远的第二阈值之后才使深度平面选择模块750(其继而可引导诸如显示器220的显示器)切换到第一更远的深度平面。在第一阈值和第二阈值之间的重叠区域中,模块750可使深度平面选择模块750保持当前选择的任何深度平面作为所选深度平面,从而避免深度平面之间的过度切换。

眼部事件检测模块750可从图7A的眼睛跟踪模块614接收其他眼睛数据,并且可使深度平面选择模块750延迟一些深度平面切换,直到发生眼部事件。作为示例,眼部事件检测模块750可使深度平面选择模块750延迟计划的深度平面切换,直到检测到用户眨眼为止;可从眼睛跟踪模块614中的眨眼检测部件接收数据,该数据指示用户当前何时眨眼;以及作为响应,可使深度平面选择模块750在眨眼事件期间执行计划的深度平面切换(例如通过使模块750引导显示器220在眨眼事件期间执行深度平面切换)。在至少一些实施例中,可穿戴系统能够在眨眼事件期间将内容移位到新的深度平面上,使得用户不太可能感知到该移位。作为另一示例,眼部事件检测模块750可延迟计划的深度平面切换,直到检测到眼睛扫视。如结合眨眼所讨论的那样,这样的布置可促进深度平面的离散移位。

如果需要,即使在没有眼部事件的情况下,深度平面选择模块750可在执行深度平面切换之前将计划的深度平面切换延迟有限的时间段。类似地,当用户的聚散深度基本上在当前选择的深度平面之外时(即,当用户的聚散深度已经超过预定阈值时,该阈值超出了深度平面切换的常规阈值),深度平面选择模块750可执行深度平面切换,即使没有眼部事件也是如此。这些设置可帮助确保眼部事件检测模块754不会无限期地延迟深度平面切换,并且在存在较大的适应误差时也不会延迟深度平面切换。本文结合图13提供了深度平面选择模块750的操作的进一步的细节,以及该模块如何对深度平面切换进行计时。

渲染相机控制器758可向渲染引擎622提供指示用户的左眼和右眼在哪里的信息。然后,渲染引擎622可通过在用户的左眼和右眼的位置处模拟相机并基于模拟的相机的视角生成内容来生成内容。如上所述,渲染相机是用于渲染可能来自虚拟世界中的对象数据库的虚拟图像内容中使用的模拟相机。对象可具有相对于用户或穿戴者并且可能相对于用户或穿戴者周围的环境中的真实对象的位置和取向。渲染相机可被包括在渲染引擎中,以基于要呈现给眼睛的虚拟对象的数据库来渲染虚拟图像。可渲染虚拟图像,就像从用户或穿戴者的视角拍摄的一样。例如,虚拟图像可被渲染为好像被具有光圈、透镜和检测器的相机(对应于“渲染相机”)所捕获的一样,该检测器观看虚拟世界中的对象。从具有“渲染相机”的位置的这种相机的视角拍摄虚拟图像。例如,虚拟图像可被渲染为好像是从具有相对于用户或穿戴者的眼睛的特定位置的相机的视角捕获的一样,从而提供看起来是从用户或穿戴者的视角来看的图像。在一些实施方式中,图像被渲染为好像是从具有在相对于用户或穿戴者的眼睛的特定位置(例如,本文或其他地方所讨论的视角中心或旋转中心)处的光圈的相机的视角所捕获的。

渲染相机控制器758可基于由CoR估计模块724确定的左眼和右眼旋转中心(CoR)和/或基于由CoP估计模块732确定的左眼和右眼的视角中心(CoP)来确定左相机和右相机的位置。在一些实施例中,渲染相机控制器758可基于各种因素在CoR和CoP位置之间切换。作为示例,渲染相机控制器758可在各种模式下,始终将渲染相机配准到CoR位置,始终将渲染相机配准到CoP位置,在以下之间触发(toggle)或离散地切换:基于各种因素随时间推移将渲染相机配准到CoR位置以及将渲染相机配准到CoP位置,或基于各种因素随时间动态地将渲染相机沿CoR和CoP位置之间的光(或视)轴配准到不同位置范围中的任意位置。CoR和CoP位置可可选地通过平滑过滤器756(在用于渲染相机定位的任何前述模式中),该平滑过滤器756可随着时间对CoR和CoP位置进行平均以减少这些位置中的噪声并防止渲染模拟渲染相机中的抖动。

在至少一些实施例中,渲染相机可被模拟为针孔相机,其中,针孔设置在由眼睛跟踪模块614标识的估计的CoR或CoP的位置处。当CoP偏移CoR时,无论何时渲染相机的位置基于用户的CoP,渲染相机的位置及其针孔都会随着用户的眼睛的旋转而移位。相反,无论何时渲染相机的位置基于用户的CoR,渲染相机的针孔的位置都不随眼睛旋转而移动,尽管在一些实施例中,渲染相机(其在针孔后面)可随眼睛旋转而移动。在渲染相机的位置基于用户的CoR的其他实施例中,渲染相机可能不会随用户的眼睛移动(即,旋转)。

在图7C中示出了示例配准观察器620的框图。如图6、图7A和图7C所示,配准观察器620可从眼睛跟踪模块614(图6和7A)接收眼睛跟踪信息。作为示例,配准观察器620可接收关于用户的左眼和右眼旋转中心的信息(例如,用户的左眼和右眼旋转中心的三维位置,其可在共同的坐标系上或具有与头戴式显示系统600共同的参考框架)。作为其他示例,配准观察器620可接收显示外在参数、适配公差和眼睛跟踪有效指示符。显示器外在参数可包括关于显示器(例如,图2的显示器200)的信息,例如显示器的视场、一个或多个显示表面的尺寸、以及显示表面相对于头戴式显示系统600的位置。适配公差可包括关于显示配准体积的信息,该信息可指示在影响显示性能之前用户的左眼和右眼可从标称位置移动多远。另外,适配公差可指示根据用户的眼睛的位置所期望的显示性能影响量。

如图7C所示,配准观察器620可包括3D位置适配模块770。位置适配模块770可获取并分析各条数据,包括例如左眼旋转中心3D位置(例如,左CoR)、右眼旋转中心3D位置(例如,右CoR)、显示外在参数和适配公差。3D位置适配模块770可确定用户的左眼和右眼距各自的左眼和右眼标称位置有多远(例如,可计算左3D误差和右3D误差),并且可提供误差距离(例如,左3D误差和右3D误差)给设备3D适配模块772。

3D位置适配模块770还可将误差距离与显示器外在参数和适配公差进行比较,以确定用户的眼睛是否在标称体积、部分劣化的体积(例如,其中显示器220的性能被部分劣化的体积)内,或者处于完全劣化或几乎完全劣化的体积中(例如,其中显示器220基本上不能向用户的眼睛提供内容的体积)。在至少一些实施例中,3D位置适配模块770或3D适配模块772可提供定性描述HMD对用户的适配的输出,例如图7C中所示的适配质量输出。作为示例,模块770可提供指示HMD在用户上的当前适配是良好、一般(marginal)还是失败的输出。良好适配可对应于使用户能够观看至少一定百分比的图像(例如90%)的适配,一般适配可使用户能够观看至少较低百分比的图像(例如80%)的适配,而失败适配可以是用户只能看到甚至更低百分比的图像的适配。

作为另一示例,3D位置适配模块770和/或设备3D适配模块772可计算可见面积度量,其可以是由显示器220显示的对用户可见的图像的总面积(或像素)的百分比。模块770和772可通过以下来计算可见面积度量:评估用户的左眼和右眼相对于显示器220的位置(例如,其可基于用户的眼睛的旋转中心)并且使用一个或多个模型(例如,数学或几何模型)、一个或多个查表或其他技术或这些技术与其他技术的组合以根据用户的眼睛的位置确定对用户可见的图像的百分比。另外,模块770和772可根据用户的眼睛的位置来确定期望显示器220显示的图像的哪些区域或部分对于用户是可见的。

配准观察器620也可包括设备3D适配模块772。模块772可从3D位置适配模块770接收数据,并且还可接收眼睛跟踪有效指示符,该指示符可由眼睛跟踪模块614提供并可指示是否眼睛跟踪系统当前正在跟踪用户的眼睛的位置或者眼睛跟踪数据是否不可用或处于误差状况(例如,被确定为不可靠)。如果需要,设备3D适配模块772可根据眼睛跟踪有效数据的状态来修改从3D位置适配模块770接收的适配数据的质量。例如,如果来自眼睛跟踪系统的数据被指示为不可用或有误差,则设备3D适配模块772可提供关于存在误差的通知和/或不向用户提供有关适配质量或适配误差的输出。

在至少一些实施例中,配准观察器620可向用户提供关于适配质量以及误差的性质和大小的细节的反馈。作为示例,头戴式显示系统可在校准或适配过程期间向用户提供反馈(例如,作为设置过程的一部分),并且可在操作期间提供反馈(例如,如果适配由于滑动而劣化,则配准观察器620可提示用户重新调整头戴式显示系统)。在一些实施例中,可自动地(例如,在使用头戴式显示系统期间)执行配准分析,并且可在没有用户输入的情况下提供反馈。这些仅是说明性示例。

图8A是示出眼睛的角膜球的眼睛的示意图。如图8A所示,用户的眼睛810可具有角膜812、瞳孔822和晶状体820。角膜812可具有近似球形,如由角膜球814所示。角膜球814可具有中心点816(也称为角膜中心)和半径818。用户的眼睛的半球形角膜可围绕角膜中心816弯曲。

图8B-8E示出了使用3D角膜中心估计模块716和眼睛跟踪模块614来定位用户的角膜中心816的示例。

如图8B所示,3D角膜中心估计模块716可接收包括角膜闪光854的眼睛跟踪图像852。然后3D角膜中心估计模块716可在眼睛相机坐标系850中模拟眼睛相机324和光源326的已知3D位置(其可基于眼睛跟踪外在参数和内在参数数据库702中的数据、假设的眼睛尺寸数据库704、和/或每用户校准数据706),以便在眼睛相机坐标系中投射光线856。在至少一些实施例中,眼睛相机坐标系850可使其原点在眼睛跟踪相机324的3D位置处。

在图8C中,3D角膜中心估计模块716在第一位置模拟角膜球814a(其可基于来自数据库704的假设的眼睛尺寸)和角膜曲率中心816a。3D角膜中心估计模块716然后可检查以查看角膜球814a是否将正确地将来自光源326的光反射到闪光位置854。如图8C中所示,第一位置不匹配,因为光线860a不与光源326相交。

类似地,在图8D中,3D角膜中心估计模块716在第二位置模拟角膜球814b和角膜曲率中心816b。然后,3D角膜中心估计模块716检查以查看角膜球814b是否正确地将来自光源326的光反射到闪光位置854。如图8D中所示,第二位置也不匹配。

如图8E所示,3D角膜中心估计模块716最终能够确定角膜球的正确位置是角膜球814c和角膜曲率中心816c。3D角膜中心估计模块716通过检查来自光源326的光将正确地反射离开角膜球并由相机324成像在图像852上的闪光854的正确位置来确认所示出的位置正确。通过该布置和已知光源326、相机324的3D位置以及相机的光学特性(焦距等)的情况下,3D角膜中心估计模块716可确定角膜曲率中心816的3D位置(相对于可穿戴系统)。

至少结合图8C-8E在本文描述的过程可有效地是迭代、重复或优化过程,以标识用户的角膜中心的3D位置。这样,可使用多种技术(例如,迭代技术、优化技术等)中的任何一种来有效且快速地修剪或减少可能位置的搜索空间。此外,在一些实施例中,系统可包括两个、三个、四个或更多个光源,例如光源326,并且所有这些光源中的一些可设置在不同的位置,从而导致多个闪光,例如位于图像852上的不同位置的闪光854以及具有不同原点和方向的多条光线(例如光线856)。这样的实施例可增强3D角膜中心估计模块716的准确性,因为模块716可试图标识角膜位置,该角膜位置导致一些或所有闪光和光线在它们各自的光源和它们各自在图像852上的位置之间被正确地反射。换句话说,并且在这些实施例中,可在图8B-8E的3D角膜位置确定(例如,迭代、优化技术等)过程中依赖一些或全部光源的位置。

图9A-9C示出了通过诸如图7A的坐标系归一化模块718之类的可穿戴系统中的部件对眼睛跟踪图像的坐标系的示例归一化。相对于用户的瞳孔位置对眼睛跟踪图像的坐标系进行归一化可补偿可穿戴系统相对于用户的脸部的滑动(即,头戴式受话器滑动),并且这种归一化可在眼睛跟踪图像与用户的眼睛之间建立一致的取向和距离。

如图9A所示,坐标系归一化模块718可接收用户的角膜旋转中心的估计的3D坐标900,并且可接收诸如图像852之类的非归一化的眼睛跟踪图像。作为示例,眼睛跟踪图像852和坐标900可处于基于眼睛跟踪相机324的位置的非归一化的坐标系850中。

作为第一归一化步骤,如图9B所示坐标系归一化模块718可将坐标系850旋转为旋转坐标系902,以使该坐标系的z轴(即,聚散深度轴)可与坐标系的原点和角膜曲率中心坐标900之间的矢量对准。特别地,坐标系归一化模块718可将眼睛跟踪图像850旋转为旋转的眼睛跟踪图像904,直到用户的角膜曲率中心的坐标900垂直于旋转图像904的平面为止。

作为第二归一化步骤,如图9C所示,坐标系归一化模块718可将旋转的坐标系902转换成归一化坐标系910,使得角膜曲率中心坐标900是距归一化坐标系910的原点的标准归一化距离906。特别地,坐标系归一化模块718可将旋转的眼睛跟踪图像904转换成归一化的眼睛跟踪图像912。在至少一些实施例中,标准归一化距离906可以是大约30mm。如果需要,可在第一归一化步骤之前执行第二归一化步骤。

图9D-9G示出了使用3D瞳孔中心定位器模块720和眼睛跟踪模块614来定位用户的瞳孔中心(即,如图8A所示的用户的瞳孔822的中心)的示例。

如图9D所示,3D瞳孔中心定位器模块720可接收归一化的眼睛跟踪图像912,其包括瞳孔形心913(即,由瞳孔标识模块712标识的用户的瞳孔的中心)。然后,3D瞳孔中心定位器模块720可模拟眼睛相机324的归一化3D位置910,以通过瞳孔形心913在归一化坐标系910中投射光线914。

在图9E中,3D瞳孔中心定位器模块720可基于来自3D角膜中心估计模块716的数据(并且如结合图8B-8E更详细地讨论的)来模拟诸如具有曲率中心900的角膜球901的角膜球。作为示例,可基于结合图8E标识的曲率中心816c的位置并且基于图9A-9C的归一化过程将角膜球901定位在归一化坐标系910中。另外,如图9E所示,3D瞳孔中心定位器模块720可标识光线914(即,归一化坐标系910的原点和用户的瞳孔的归一化位置之间的光线)与模拟角膜之间的第一交点916。

如图9F所示,3D瞳孔中心定位器模块720可基于角膜球901确定瞳孔球918。瞳孔球918可与角膜球901共享共同的曲率中心,但是具有较小的半径。3D瞳孔中心定位器模块720可基于角膜中心与瞳孔中心之间的距离来确定角膜中心900与瞳孔球918之间的距离(即瞳孔球918的半径)。在一些实施例中,瞳孔中心和角膜曲率中心之间的距离可从图7A的假设眼睛尺寸704、从眼睛跟踪外在参数和内在参数数据库702、和/或从每用户校准数据706确定。在其他实施例中,可从图7A的每用户校准数据706确定瞳孔中心和角膜曲率中心之间的距离。

如图9G所示,3D瞳孔中心定位器模块720可基于各种输入来定位用户的瞳孔中心的3D坐标。作为示例,3D瞳孔中心定位器模块720可利用瞳孔球918的3D坐标和半径、在模拟角膜球901和与归一化眼睛跟踪图像912中的瞳孔形心913相关联的光线914之间的交点916的3D坐标、有关角膜的折射率的信息、以及其他相关信息(例如空气的折射率(其可存储在眼睛跟踪外在参数和内在参数数据库702中))来确定用户的瞳孔的中心的3D坐标。特别地,3D瞳孔中心定位器模块720可在模拟中基于空气(大约1.00的第一折射率)和角膜材料(大约1.38的第二折射率)之间的折射差将光线916弯曲成折射光线922。在考虑到由角膜引起的折射之后,3D瞳孔中心定位器模块720可确定折射光线922与瞳孔球918之间的第一交点920的3D坐标。3D瞳孔中心定位器模块720可确定用户的瞳孔中心920为位于折射光线922与瞳孔球918之间的大约第一交点920处。通过这种布置,3D瞳孔中心定位器模块720可确定归一化坐标系910中瞳孔中心920(相对于可穿戴系统)的3D位置。如果需要,可穿戴系统可将瞳孔中心920的坐标非归一化为原始眼睛相机坐标系850。瞳孔中心920可与角膜曲率中心900一起使用,以使用光轴确定模块722尤其确定用户的光轴,并通过聚散深度估计模块728确定用户的聚散深度。

如结合图7A的光学到视觉映射模块730所讨论的,用户的光轴和视轴通常不对准,部分原因是用户的视轴由他们的中央凹限定,并且中央凹通常不在人的视网膜的中心。因此,当一个人希望将注意力集中在特定对象上时,该人将其视轴与该对象对准,以确保来自该对象的光落在其中央凹上,而其光轴(由其瞳孔的中心和其角膜的曲率中心限定)实际上是与该对象稍微偏移的。图10是眼睛1000的示例,其示出了该眼睛的光轴1002、该眼睛的视轴1004、以及这些轴之间的偏移。另外,图10示出了眼睛的瞳孔中心1006、眼睛的角膜曲率中心1008、和眼睛的平均旋转中心(CoR)1010。在至少一些人群中,眼睛的角膜曲率中心1008可位于前方约4.7mm处,如由眼睛的平均旋转中心(CoR)1010的尺寸1012所指示的。此外,眼睛的视角中心1014可位于眼睛的角膜曲率中心1008前面约5.01mm,在用户的角膜的外表面1016后面约2.97mm、和/或用户的瞳孔中心1006正前方(例如,对应于眼睛1000的前房内的位置)。作为另外的示例,尺寸1012可在3.0mm与7.0mm之间,在4.0mm与6.0mm之间,在4.5mm与5.0mm之间,或者在4.6mm与4.8mm之间,或者在任何值之间的任何范围以及与这些范围中的任何一个范围内任何值。眼睛的视角中心(CoP)1014对于可穿戴系统可以是有用的位置,因为在至少一些实施例中,在CoP处配准渲染相机可帮助减少或消除视差伪像。

图10还示出了人眼1000内的这样的位置,渲染相机的针孔可与之对准。如图10所示,渲染相机的针孔可沿着人眼1000的光轴1002或视轴1004与位置1014对准,该位置比人眼1000的(a)瞳孔或虹膜1006的中心以及(b)角膜曲率中心1008更靠近角膜的外表面。例如,如图10所示,可沿着人眼1000的光轴1002将渲染相机的针孔与位置1014配准,该位置1014在角膜1016的外表面后约2.97mm处并且在角膜曲率中心1008前约5.01mm处。可将渲染相机的针孔的位置1014和/或位置1014所对应的人眼1000的解剖区域视为表示人眼1000的视角中心。如图10中所示的人眼1000的光轴1002表示穿过角膜曲率中心1008和瞳孔或虹膜1006中心的最直接线。人眼1000的视轴1004与光轴1002不同,因为它表示从人眼1000的中央凹延伸到瞳孔或虹膜1006的中心的线。

图11是用于在渲染内容中使用眼睛跟踪并提供关于可穿戴设备中的配准的反馈的示例方法1100的过程流程图。方法1100可由本文描述的可穿戴系统执行。方法1100的实施例可由可穿戴系统用来基于来自眼睛跟踪系统的数据来渲染内容并提供关于配准的反馈(即,可穿戴设备对用户的适配)。

在框1110处,可穿戴系统可捕获用户的一只或两只眼睛的图像。可穿戴系统可使用一个或多个眼睛相机324来捕获眼睛图像,如至少在图3的示例中所示示出。如果需要的话,可穿戴系统还可包括一个或多个光源326,该光源326被配置为将IR光照射在用户的眼睛上并在由眼睛相机324捕获的眼睛图像中产生对应的闪光。如本文所讨论的,闪光可由眼睛跟踪模块614用来导出关于用户的眼睛的各条信息,包括眼睛看向哪里。

在框1120处,可穿戴系统可检测在框1110中捕获的眼睛图像中的闪光和瞳孔。作为示例,框1120可包括由闪光检测和标记模块714处理眼睛图像以标识眼睛图像中的闪光的二维位置以及由瞳孔标识模块712处理眼睛图像以标识眼睛图像中瞳孔的二维位置。

在框1130处,可穿戴系统可估计用户的左和右角膜相对于可穿戴系统的三维位置。作为示例,可穿戴系统可估计用户的左和右角膜的曲率中心的位置以及这些曲率中心与用户的左和右角膜之间的距离。框1130可涉及本文至少结合图7A和8A-8E描述的标识曲率中心的位置的3D角膜中心估计模块716。

在框1140处,可穿戴系统可估计用户的左和右瞳孔中心相对于可穿戴系统的三维位置。作为示例,可穿戴系统和3D瞳孔中心定位器模块720尤其可估计用户的左和右瞳孔中心的位置,如至少结合图7A和9D-9G描述的作为框1140的一部分。

在框1150处,可穿戴系统可估计用户的左和右旋转中心(CoR)相对于可穿戴系统的三维位置。作为示例,可穿戴系统和CoR估计模块724尤其可估计用户的左眼和右眼的CoR的位置,如至少结合图7A和10所描述的。作为特定示例,可穿戴系统可通过沿着光轴从角膜的曲率中心向视网膜返回来找到眼睛的CoR。

在框1160处,可穿戴系统可从眼睛跟踪数据中估计用户的IPD、聚散深度、视角中心(CoP)、光轴、视轴和其他所需属性。作为示例,IPD估计模块726可通过比较左和右CoR的3D位置来估计用户的IPD,聚散深度估计模块728可通过找到左和右光轴的交点(或接近交点)或左和右视轴的交点来估计用户的深度,光轴确定模块722可随时间标识左和右光轴,光轴到视轴映射模块730可随时间标识左和右视轴,CoP估计模块732可标识左和右视角中心,作为框1160的一部分。

在框1170处,可穿戴系统可部分地基于在框1120-1160中标识的眼睛跟踪数据来渲染内容,并且可可选地提供关于配准的反馈(即,可穿戴系统对用户的头部的适配)。作为示例,可穿戴系统可标识渲染相机的合适位置,然后基于渲染相机的位置为用户生成内容,如结合图7B的光场渲染控制器618和渲染引擎622所讨论的。作为另一个示例,可穿戴系统可确定它是否正确地适配到用户,或者相对于用户已经从其正确的位置滑落,并且可向用户提供指示设备的适配是否需要调整的可选反馈,如结合配准观察器620所讨论的。在一些实施例中,可穿戴系统可基于不正确或不那么理想的配准来调整渲染的内容,以尝试减少、最小化或补偿不正确或未配准的影响。

图12A-12B示出了示例眼睛位置坐标系,该示例眼睛位置坐标系可用于定义用户的左眼和右眼相对于本文所述的可穿戴系统的显示器的三维位置。作为示例,坐标系可包括轴X、Y和Z。坐标系的轴z可对应于深度,例如用户的眼睛所在的平面与显示器220所在的平面之间的距离(例如,垂直于用户的面部正面的平面的方向)。坐标系的轴x可对应于左右方向,诸如用户左眼和右眼之间的距离。坐标系的轴y可对应于上下方向,其可以是当用户直立时的垂直方向。

图12A示出了用户的眼睛1200和显示表面1202(其可以是图2的显示器220的一部分)的侧视图,而图12B示出了用户的眼睛1200和显示表面1202的俯视图。显示表面1202可位于用户的眼睛前面,并且可将图像光输出给用户的眼睛。作为示例,显示表面1202可包括一个或多个出耦合光元件、有源或像素显示元件,并且可以是波导堆叠的一部分,诸如图4的堆叠波导组件480。在一些实施例中,显示表面1202可以是平面的。在一些其他实施例中,显示表面1202可具有其他拓扑(例如,弯曲的)。应当理解,显示表面1202可以是显示器的物理表面,或者仅仅是平面或其他假想表面,从该平面或其他假想表面,图像光被理解为从显示器220传播到用户的眼睛。

如图12A所示,用户的眼睛1200可具有偏移标称位置1206的实际位置1204,并且显示表面1202可处于位置1214。图12A还示出了用户的眼睛1200的角膜顶点1212。用户的视线(例如,他们的光轴和/或视轴)可基本上沿着实际位置1204和角膜顶点1212之间的线。如图12A和图12B中所示,实际位置1204可从标称位置1206偏移z-偏移1210、y-偏移1208和x-偏移1209。标称位置1206可表示针对用户的眼睛1200相对于显示表面1202的优选位置(有时称为设计位置,其通常可在所需的体积内居中)。随着用户的眼睛1200远离标称位置1206移动,显示表面1202的性能可能会劣化,如本文结合例如图14所讨论的。

将认识到,与用户的眼睛1200相关联的点或体积可用于表示本文的配准分析中的用户的眼睛的位置。表示点或体积可以是与眼睛1200相关联的任何点或体积,并且优选地被一致地使用。例如,该点或体积可在眼睛1200上或之中,或者可远离眼睛1200放置。在一些实施例中,该点或体积是眼睛1200的旋转中心。旋转中心可如本文中所描述的那样确定,并且由于其大致对称地布置在眼睛1200内的各个轴上并且允许与光轴对准的单个显示配准体积被用于分析,因此可具有简化配准分析的优点。

图12A还示出了显示表面1202可位于用户的视域下方的中心(当用户笔直向前看时沿y轴看,他们的光轴与地面平行)并且可倾斜(相对于y轴)。特别地,显示表面1202可被设置在用户的视域下方一些位置,使得当眼睛1200在位置1206时,用户将不得不以大约角度1216向下看以看着显示表面1202的中心。这可促进与显示表面1202的更自然且舒适的交互,特别是当观看以较短深度(或距用户的距离)渲染的内容时,因为用户可更舒适地观看在视域下方而不是视域上方的内容。此外,显示表面1202可例如以角度1218(相对于y轴)倾斜,使得当用户注视显示表面1202的中心(例如,注视稍微用户视域以下)时,显示表面1202通常垂直于用户的视线。在至少一些实施例中,显示表面1202也可相对于用户的眼睛的标称位置向左或向右偏移(例如,沿x轴)。作为示例,左眼显示表面可向右偏移并且右眼显示表面可向左偏移(例如,显示表面1202可朝彼此偏移),使得用户的视线当聚焦在小于无穷远的某个距离处时命中显示表面的中心,这可能会增加在可穿戴设备上的典型使用过程中的用户舒适度。

图13包括一组示例曲线图1200a-1200j,其示出了可穿戴系统如何响应于用户的眼睛运动来切换深度平面。如本文中结合图4和图7所讨论的,可穿戴系统可以包括多个深度平面,其中各种深度平面被配置为以不同的模拟深度或具有不同的调节性提示(即,具有各种水平的波前曲率或光线发散)向用户呈现内容。作为示例,可穿戴系统可以包括被配置为模拟第一深度范围的第一深度平面和被配置为模拟第二深度范围的第二深度平面,并且虽然这两个范围可以按需要重叠以方便切换中的滞后,但是第二深度范围通常可以延伸到距用户更远的距离。在这样的实施例中,可穿戴系统可以跟踪用户的聚散深度、扫视运动和眨眼,以避免过度深度平面切换、过度调节-聚散失配以及调节-聚散失配的时间段过长并且试图降低深度平面切换的可见性(即,通过在眨眼和扫视期间转移深度平面)的方式,在第一深度平面与第二深度平面之间切换。

曲线图1200a示出了随时间变化的用户聚散深度的示例。曲线图1200b示出了随时间变化的用户的扫视信号或眼睛运动速度的示例。

曲线图1200c可以示出由眼睛跟踪模块614生成的聚散深度数据,尤其是由聚散深度估计模块728生成的数据。如曲线图1200c-1200h所示,可以在眼睛跟踪模块614中以大约60Hz的速率对眼睛跟踪数据进行采样。如曲线图1200b和1200c之间所示,眼睛跟踪模块614内的眼睛跟踪数据可能以延迟1202滞后于用户的实际眼睛运动。例如,在时间t

曲线图1200c还示出了滞后带中的各种阈值1210a、1210b、1210c,这些阈值可以与第一深度平面与第二深度平面(即,图13中的深度平面#1和深度平面#0)之间的转换相关联。在一些实施例中,可穿戴系统可以尝试在用户的聚散深度大于阈值1210b时利用深度平面#1显示内容,并在用户的聚散深度小于阈值1210b时利用深度平面#0显示内容。然而,为了避免过度切换,可穿戴系统可以实施滞后,由此可穿戴系统将不会从深度平面#1切换到深度平面#0,直到用户的聚散深度越过外部阈值1210c为止。类似地,可穿戴系统可以不会从深度平面#0切换到深度平面#1直到用户的聚散深度越过外部阈值1210a为止。

曲线图1200d示出了可由深度平面选择模块750或滞后带越过检测模块752所生成的内部标志,指示用户的聚散深度是在通常与深度平面#1相关联的体积中还是在通常与深度平面#2相关联的体积中(即,用户的聚散深度大于还是小于阈值1210b)。

曲线图1200e示出了可由深度平面区段模块750或滞后带越过检测模块752所生成的内部滞后带标志,指示用户的聚散深度是否已经越过诸如阈值1210a或1210c的外部阈值。具体地,曲线图1200e示出了标志,该标志指示用户的聚散深度是否已经完全越过滞后带并进入活动(active)深度平面的体积之外的区域(即,进入与活动深度平面以外的深度平面相关联的区域),从而潜在地导致不希望的调节-聚散失配(AVM)。

曲线图1200f示出了可由深度平面选择模块750或滞后带越过检测模块752所生成的内部AVM标志,其指示用户的聚散是否已经在活动深度平面的体积之外大于预定时间。因此,AVM标志可以识别用户何时可能在近乎过度或过度的时间段里经受了不希望的调节-聚散失配。此外或可替代地,内部AVM标志还可以指示用户的聚散是否已经达到超出活动深度平面的体积以外预定距离,从而产生潜在过度的调节-聚散失配。换句话说,AVM标志可以指示用户的聚散何时已经超出与阈值1210a和1210c相比距阈值1210b更远的其它阈值。

曲线图1200g示出了由眼睛事件检测模块754生成的内部眨眼标志,其可以确定用户何时已经眨眼或正在眨眼。如本文所述,可能期望在用户眨眼时切换深度平面以减小用户感知到深度平面切换的可能性。

曲线图1200h示出了来自深度平面选择模块750的示例输出。特别地,曲线图1200h示出了深度平面选择模块750可以向诸如渲染引擎622(参见图6)的渲染引擎输出指令以使用被选择的深度平面,被选择的深度平面可能随时间而变化。

曲线图1200i和1200j示出了可穿戴系统中可能存在的延迟,包括渲染引擎622切换深度平面的延迟和显示器220的延迟,这可能需要在新的深度平面中提供与新图像帧相关联的光,以实现深度平面的变更。

现在将参考曲线图1200a-1200j在不同时间(t

在时间t

从时间t

在时间t

在时间t

在至少一些实施例中,眼睛跟踪模块614可以被配置为在时间t

在时间t

在时间t

因此,曲线图1200a-j示出了在时间t

在时间t

在时间t

在时间t

在时间t

如本文中所论述,诸如图2的显示器220的头戴式显示器可以包括多个深度平面,每个深度平面提供不同的波前发散量,以向用户的眼睛提供不同的调节提示。例如,深度平面可以由诸如图4的波导432b、434b、436b和440b的光学元件形成,该光学元件可以被配置为以期望的波前发散水平将图像信息发送到用户的眼睛。

在至少一些实施例中,包括显示器220的可穿戴系统可以被配置为基于用户凝视的当前注视点或聚散深度来显示具有调节提示的图像内容(例如,以减少或最小化调节-聚散失配)。换句话说,可穿戴系统可以被配置为识别用户的凝视的聚散深度(例如,使用图7A的聚散深度估计模块728作为示例),然后在提供与当前聚散深度相关联的适应提示的深度平面上显示图像内容。因此,当用户注视光学无穷远时,可穿戴系统可以在提供光学无穷远的调节提示的第一深度平面上显示图像内容。与之相比,当用户看向近场(例如,一米内)时,可穿戴系统可以在提供近场内或至少接近近场的调节提示的第二深度平面上显示图像内容。

如前所述,可以由图7A的聚散深度估计模块728执行的聚散深度估计可以部分地基于当前用户的瞳孔间距离(IPD)。特别地并且在一些实施例中,确定聚散深度可以涉及投射用户的左眼和右眼的光轴和/或视轴(以确定它们各自的凝视),并确定这些轴在空间中相交的位置,从而确定用户的注视点或聚散深度的位置。在几何学上,光轴和/或视轴是三角形的腰,三角形的底边是用户的IPD,三角形的尖端是用户的注视点或聚散深度,因此,应该理解,用户的IPD在确定聚散深度上是有用的。

在各个实施例中,可穿戴系统可以针对特定的主要用户进行校准。该校准可以包括各种过程,并且可以包括在用户聚焦于不同位置和深度的对象时确定用户的眼睛如何移动。校准还可以包括识别用户的IPD(例如,当用户聚焦于光学无穷远时用户瞳孔之间的距离)。校准还可以包括当用户聚焦于与光学无穷远相比较近的对象上时确定用户的瞳孔距离,诸如近场中(例如,小于2.0米)的对象和中场中(例如,在约2.0至3.0米之间)的对象。基于这样的校准数据,可穿戴系统可以能够通过监视用户的瞳孔距离来确定用户正在观看的深度。换句话说,当用户的瞳孔距离最大时(例如,等于或接近用户的IPD),可穿戴系统可以能够推断出用户的聚散距离处于或接近光学无穷远。与之相比,当用户的瞳孔距离接近其最小光瞳距离时,可穿戴系统可以能够推断出用户的聚散距离以由该校准确定的距离接近用户。

在一些实施例中,可穿戴系统可以利用一个或多个替代过程来选择深度平面。作为一个示例,可穿戴系统可以实现基于内容的切换方案。将理解的是,虚拟内容可以包括该内容应当位于虚拟空间中的位置有关的信息。在给定该位置的情况下,虚拟内容可以有效地指定相关联的波前发散量。因此,不是确定用户眼睛的注视点来切换深度平面(例如,切换用于形成虚拟对象的光的波前发散量),显示系统可以被配置为基于虚拟空间中放置虚拟内容的期望位置来切换深度平面。

在一些实施例中,可穿戴系统仍可以确定用户是否正在观看虚拟内容,以便切换到为该虚拟内容指定的深度平面。例如,显示系统仍可以跟踪用户的凝视以确定他们是否正在观看虚拟对象,并且一旦做出确定,就可以使用与虚拟内容相关联的深度信息来确定是否切换深度平面。作为另一示例,可穿戴系统可以基于用户将观看特定的真实或虚拟对象的假设来识别用户正在观看的最可能的真实或虚拟对象。例如,可穿戴系统可以在距用户1米远的2D虚拟屏幕上向用户呈现视频。尽管用户可能正在将视线从屏幕上移开看向另一对象,但是可以合理地假设用户将注视在视频屏幕上。在一些实施例中,可穿戴系统可以被配置为做出如下假设:用户正在观看具有运动或可视变化的真实或虚拟内容,或者比其他真实或虚拟内容更多的运动或变化的真实或虚拟内容;例如,可穿戴系统可以为用户视野内的真实或虚拟内容的运动或视觉外观的变化量分配分数,并假设用户正在观看得分最高的真实或虚拟内容(例如,最多运动或视觉变化,例如显示视频的虚拟屏幕)。

替代的深度平面选择过程的另一示例是动态校准。在当前用户未(或尚未)执行专用校准过程时,动态校准可能是有益的。作为示例,当访客用户正在佩戴设备时可以使用动态校准。在动态校准系统的一个示例中,可穿戴系统可以收集眼睛跟踪数据,以便估计当前用户的IPD,然后可以使用估计的IPD(及其眼睛凝视方向,如与图7A的模块728相关地讨论的)来估计用户的聚散深度。IPD估计可以由图7A的IPD估计模块726执行,并且附加细节和示例实施例在本文中与模块726相关地进行讨论。动态校准可以作为背景处理发生,不需要用户的特定动作。此外,动态校准可以连续地获得样本或用户眼睛的图像以进一步完善IPD估计值。如以下进一步详细讨论的那样,可穿戴系统可以将用户的IPD估计为所有测量的IPD值第95个百分位数(或其他百分位数)。换句话说,可以排除最大5%的测量IPD值,然后将最大的剩余测量IPD值作为用户的IPD。以这种方式计算出的IPD值在本文中称为IPD_95。

将理解的是,显示系统可以被配置为连续地监视IPD。这样,用于确定与特定百分位数相关联的值的样本或单独IPD测量值的数量可能随时间增加,并潜在地提高IPD确定的准确性。在一些实施例中,IPD值(例如,IPD 95)可以被连续地或周期性地更新,例如,IPD值可以在经过预定的时间量之后和/或在进行了预定数量的单独IPD测量之后被更新。

在一些实施例中,动态校准过程可以寻求识别用户的IPD(例如,用户的最大瞳孔距离,诸如当用户正在看着光学无穷远时)。在这样的实施例中,可穿戴系统可以能够仅基于IPD来校准深度平面选择。

作为特定示例,已确定如果用户的瞳孔距离从其最大IPD减小0.6mm,则该用户很可能会聚焦在大约78mm的深度处。在本文公开的一些实施例中,78mm对应于深度平面之间的切换点(例如,系统可以倾向于在用户聚焦于小于78mm时使用第一深度平面,而在用户聚焦于大于78mm时使用第二深度平面)。在不同焦点深度处发生的切换点的实施例中,相关联的瞳孔距离相对于其最大IPD的减小将相对于切换点的改变而改变(例如,在这样的实施例中,从78mm到任何切换点)。

在一些情况下,可穿戴系统可以通过不仅考虑用户当前瞳孔距离与其最大IPD之间的差异,还通过考虑这种关系相对于用户的最大IPD如何变化,来完善其对用户的聚散深度的计算。特别地,上面讨论的0.6mm数字可以是适用于总体人口并且考虑到可穿戴系统中的各种偏差的平均数字(例如,平均而言,当前瞳孔距离比其最大IPD小0.6mm的用户可能接近78mm的距离)。但是,与78mm的聚散距离(或如上一段中所讨论的其他切换点距离)相关联的(最大和当前之间的)实际IPD差异可以大于或多于0.6mm,并且可以根据用户的解剖IPD而变化。作为特定示例,IPD为54mm的人在他们的当前IPD比他们的最大IPD(例如,看向至少10米距离时他们的IPD)小0.73mm时的聚散距离可以为78mm,IPD为64mm的人在他们的当前IPD比他们的最大IPD小0.83mm时的聚散距离可以为78mm,并且IPD为72mm的人在他们的当前IPD比他们的最大IPD小0.93mm时的聚散距离可以为78mm。这些数字可以与0.6mmmm数字不同,各种原因包括但不限于,0.6mm数字不能区分具有不同IPD的用户,而0.6mm数字可以参考IPD_95值(例如,可以参考实际上略低于在看向光学无穷远时用户的解剖IPD的IPD值)。在一些实施例中,0.6mm数字可能会根据用户的最大IPD而变化。例如,与0.6mm数字的预定数量的偏差可以是可用,并且可以与不同范围的最大IPD值相关联。

使用这样的关系,可穿戴系统可以能够通过将用户的最大IPD与当前瞳孔间距离(当他们的聚散距离减小时,可以根据一个或多个数学函数而减小)进行比较来确定用户的当前聚散深度。作为示例,确定用户的最大IPD可以涉及收集用户的IPD随时间变化有关的数据并且在收集到数据中识别最大IPD。在其他实施例中,即使当用户不注视光学无穷远时,可穿戴系统也可以使用试探法或其他过程来确定用户的最大IPD。特别地,可穿戴系统可以从与较近的聚散距离相关联的多个瞳孔距离外推用户的最大IPD。可穿戴系统还可以通过在光学无穷远处呈现虚拟内容并要求用户将注意力集中在虚拟内容上来鼓励用户看向光学无穷远。

图14是用于使用现有校准、基于内容的切换方案和/或动态校准来选择深度平面的示例方法1400的过程流程图。该方法1400可以由本文所描述的可穿戴系统来执行。方法1400的实施例可以由可穿戴系统用来在深度平面上渲染内容,该深度平面通常减少或最小化任何聚散-调节失配,否则可能导致用户不适和疲劳。

在框1402处,可穿戴系统可以确定它没有被用户佩戴。可穿戴系统可以使用一个或多个传感器(诸如眼睛跟踪系统,类似眼睛相机324)来确定它未被佩戴。作为示例,可穿戴系统可以基于确定由眼睛相机324捕获的眼睛跟踪图像中没有眼睛来确定它没有被用户佩戴。特别地,在至少给定的时间段(例如,预定的时间段、动态确定的时间段等)在眼睛跟踪图像中未能检测到眼睛之后,可穿戴系统可以确定可穿戴系统没有被用户佩戴。

在诸如由相机324捕获的那些眼睛跟踪图像中检测到用户的一只或多只眼睛时,方法1400可以移动至框1404。在框1404中,可穿戴系统可以确定其正在被佩戴。在一些实施例中,可以至少部分地基于来自可穿戴系统的一个或多个其他传感器(例如IMU、加速度计、陀螺仪、接近度传感器、触摸传感器等)的数据来进行与框1402和/或框1406相关联的一些或所有确定。例如,在这些实施例中,可穿戴系统可以监视来自一个或多个IMU、加速度计和/或陀螺仪的数据,用于指示该可穿戴系统已经被放置在用户的头部上或从用户的头部移除,可以监视来自一个或多个接近度传感器和/或触摸传感器的数据以检测用户的物理存在,或两者都有。例如,可穿戴系统可以比较从这些传感器中的一个或多个接收到的数据,并且可穿戴系统可以具有与相应的传感器相关联的阈值。在一个示例中,可穿戴系统然后可以基于来自一个或多个接近度传感器的值达到或超过阈值,来确定该设备已从用户的头部移除,可选地与来自IMU、加速度计和/或陀螺仪的指示足够运动(例如,超过阈值)的数据相结合从而支持设备已被移除的结论。

在框1406处,可穿戴系统可以尝试通过执行识别过程来识别当前用户。作为一个示例,可穿戴系统可以估计当前用户的IPD来确定当前用户的IPD是否与已校准用户的IPD相匹配(例如,两个IPD是否在彼此的某个阈值之内)。在一些实施例中,如果已校准的IPD和当前用户的IPD在已校准用户的IPD的例如0.5mm、1.0mm、1.5mm或2.0毫的阈值之内,则可穿戴系统可以确定当前用户是已校准用户。通常,较大的阈值可以促进更快的确定,并有助于确保识别出已校准用户并使用其校准参数;例如,较大的阈值偏向于发现当前用户是已校准用户。在至少一些实施例中,可穿戴系统可以能够在相对较短的时间帧内(例如,5至7秒的眼睛跟踪数据,其可以对应于大约150至200帧之间的眼睛跟踪图像)以相对较高的精度(例如95%)确定当前用户的IPD。

如果当前用户的IPD与已校准用户的IPD之间存在匹配,则可穿戴系统可以假定当前用户是已校准用户,并在框1408加载现有校准。现有校准可以是已校准用户佩戴该可穿戴系统的校准过程期间生成的校准参数或数据。如果当前用户实际上不是已校准用户,而只是具有相似的IPD,则在框1408加载的校准数据可以是为当前用户提供合理表现的可接受的校准,同时允许当前用户使用可穿戴系统,而无需执行更详细的校准。

在一些实施例中,可穿戴系统可以使用不同于用户的IPD(或除了用户的IPD之外)的测量来识别当前用户。作为示例,可穿戴系统可以向用户询问用户名和/或密码,可穿戴系统可以执行虹膜扫描(例如,将用户虹膜的当前图像与参考图像进行比较以确定是否存在匹配,将匹配解释为表示当前用户是已校准用户)、语音识别(例如,将用户语音的当前样本与参考语音文件进行比较,将匹配解释为表示当前用户是已校准用户),或者将这些与其他认证或识别技术的一些组合。在一些实施例中,可以执行两个或更多个识别过程以提高确定当前用户是否为已校准用户的准确性。例如,可以假定当前用户为已校准用户,但是如果所有执行的识别过程都没有将当前用户识别为已校准用户,则可以确定不是已校准用户。作为另一示例,可以将来自各种执行的识别过程的结果聚合成一个组合得分,并且除非组合得分超过预定阈值才可以将当前用户假定为已校准用户。

在一些实施例中,如果显示系统包括用于多个用户的多个校准文件,则可能需要附加准则来选择适当的校准文件,例如,可以提示用户选择适当的校准文件,和/或可以利用本文公开的识别方案中的多个。

在一些实施例中,可以利用多个识别方案来提高用户识别的准确性。例如,将理解的是,IPD是相对粗略的识别准则。在一些实施例中,IPD可以作为识别当前用户是否可能是已校准用户的第一准则来使用,然后可以使用更精确或更准确的识别方案(例如,虹膜扫描)。这种多步识别方案有利地可以节省处理资源,因为更精确的识别方案可能会占用更多资源。因此,可以通过延迟使用更准确的资源密集型识别方案直到IPD确定指示存在已校准用户为止,来节省处理资源。

继续参考图14,如果当前用户的IPD与已校准用户的IPD不匹配,则可穿戴设备可以在框1410中执行动态校准。如本文所讨论,动态校准可以涉及监视眼睛跟踪数据来估计用户的瞳孔间距离如何根据他们的聚散距离而变化。作为一个示例,动态校准可以涉及估计用户的最大IPD,然后将最大IPD与当前瞳孔间距离一起用来估计当前聚散距离。

在框1412中,可穿戴系统可以实施基于内容的切换。通过基于内容的切换,深度平面选择基于确定用户正在看向的任何虚拟内容的深度(例如,正在显示的最重要或最有趣的内容,其可以由内容创建者来识别;基于用户眼睛的凝视等)。在至少一些实施例中,无论何时由内容创建者或可穿戴系统的其他设计者选择并且无论当前用户是否是已校准用户,都可以执行框1412。在各个实施例中,当没有已校准用户时,可以执行框1412中的基于内容的切换。在这样的实施例中,如果需要,可以跳过框1406。另外,在一些实施例中,可以执行框1412的基于内容的切换,而不管框1408和/或框1410(以及与这些框有关的框)是否被执行或对于显示系统可用;例如,在一些实施例中,显示系统可以仅执行框1412以确定深度平面切换。

如本文所述,每个虚拟对象可以与位置信息(诸如三维位置信息)相关联。可穿戴系统可以基于该位置信息向用户呈现每个虚拟对象。例如,特定虚拟对象的位置信息可以指示将要在其上呈现对象的X、Y和Z坐标(例如,可以在该坐标上呈现对象的中心或质心)。因此,可穿戴系统可以获得指示将要呈现每个虚拟对象的深度平面的信息。

如以下将参照图16A至图18更加详细地描述的,可穿戴系统可以分配相应的空间体积(在本文中也称为“区域”或标记)来围绕每个对象。这些空间体积可以优选地不重叠。可穿戴系统可以识别用户的凝视,并识别包括用户的凝视的区域。例如,凝视可以指示用户正在注视的三维位置(例如,近似的三维位置)。可穿戴系统然后可以在与识别出的区域中所包含的虚拟对象相关联的深度平面上呈现虚拟内容。因此,在一些实施例中,一旦显示系统确定了用户正在注视哪个对象,就可以基于与虚拟对象相关联的位置或深度平面而不是用户眼睛的注视点而发生深度平面之间的切换。

在框1414,可穿戴系统可以执行深度平面切换。框1414的深度平面切换可以利用在框1408、1410或1412中加载或生成的配置参数来执行。特别地,如果当前用户是已校准用户,则框1414可以根据在与该用户的校准期间生成的配置参数来执行深度平面切换。如果当前用户未被识别为已校准用户并且在框1410中执行了动态校准,则框1412可以涉及根据作为动态校准的一部分的在框1410中生成的校准参数进行深度平面切换。在至少一些实施例中,在框1410处生成的校准参数可以是用户的IPD,并且在框1414处的深度平面切换可以基于用户的IPD。如果可穿戴系统正在框1412中实施基于内容的切换(这可以发生在没有已校准用户和/或内容创建者或用户更喜欢使用基于内容的切换时),则可以根据假定用户正在看向的内容的深度来执行深度平面切换。

继续参考图14,将理解的是,显示系统可以被配置为连续地确认用户的身份。例如,在框1414之后,显示系统可以被配置为返回到框1406以识别该用户。在一些情况下,显示系统可能会丢失对先前在框1406中检测到正在佩戴显示设备的已校准用户的跟踪。例如,这可能是因为已校准用户已摘下显示设备,或者可能由于延迟问题或错误地指示该用户不再佩戴显示设备的传感错误,即使在已校准用户仍在佩戴显示设备的情况下。在一些实施例中,即使显示设备检测到已校准用户不再佩戴显示设备,显示系统也可以在分别切换到框1412的基于内容的深度平面切换方案或框1410的动态校准方案之前,在预定时间量内或对预定帧数量继续使用已校准用户的校准配置。如本文所讨论的,显示系统可以被配置为连续地执行框1406,并且可能继续检测不到已校准用户。响应于确定在预定的时间量或预定数量的帧中未检测到已校准用户,则系统可以分别切换到框1412的基于内容的深度平面切换方案或框1410的动态校准方案。有利地,由于已校准用户通常是显示设备的最有可能的用户,因此通过继续使用已校准用户的校准文件,在系统错误地未能检测到已校准用户的情况下,已校准用户可以不经历用户体验的显著下降。

图15中示出用于深度平面选择的方法的另一示例。图15是用于基于用户的瞳孔间距离的深度平面选择的示例性方法1500的过程流程图。该方法1500可以由本文所描述的可穿戴系统来执行。方法1500的示例可以由可穿戴系统用来在深度平面上渲染内容,该深度平面通常减少或最小化任何聚散-调节失配,否则可能导致用户不适和疲劳。

在框1502,可穿戴系统可以确定它未被用户佩戴。作为示例,可穿戴系统在通过眼睛跟踪系统未能检测到用户的眼睛超过一个阈值时间段(例如,5秒、10秒、20秒等)之后,确定它未被佩戴。

在框1504,可穿戴系统可以确定它被用户佩戴。该可穿戴系统可以使用一个或多个传感器来确定它被佩戴。作为示例,可穿戴系统可以包括当该可穿戴系统被放置在用户的头部上时被触发的接近度传感器或触摸传感器,并可以基于来自这样的传感器的信号来确定该系统被佩戴。作为另一个示例,可穿戴系统可以在眼睛跟踪图像中识别出用户眼睛的存在之后,确定其被佩戴。在一些情况下,可穿戴系统可以区分以下两种情况:1)由于用户已闭上眼睛而无法检测到用户的眼睛,以及2)由于用户已卸下可穿戴系统而未能检测到用户的眼睛。因此,当可穿戴系统检测到用户闭着的眼睛时,可穿戴系统可以确定该设备被佩戴。在一些实施例中,与框1502和/或框1504相关联的一些或全部确定可以分别与以上参考图14所述的框1402和/或框1404相关联的那些类似或基本相同。

在框1506处,可穿戴系统可以检查以查看其是否先前已经针对任何用户进行校准。在各种实施例中,框1506可以涉及获得已校准用户的IPD,作为识别当前用户是否为已校准用户(或者,如果存在多个已校准用户,则为已校准用户中的一个)的一部分。在一些实施例中,如果可穿戴系统先前没有针对任何用户进行校准(或者如果任何这样的校准已经从可穿戴系统删除或移除),则可穿戴系统可以实施如本文所讨论的基于内容的切换,并且可以激活框1516处的基于内容的切换。可穿戴系统还可以针对特定内容和/或根据用户或内容创建者的请求来实施基于内容的切换。换句话说,内容创建者或用户可以能够指定或请求使用基于内容的切换,即使可穿戴系统先前已经校准,并且可穿戴系统已经针对当前用户进行了校准。

在框1508处,可穿戴系统可以估计当前用户的IPD,并且在框1510处,可穿戴系统可以累积关于当前用户的IPD的眼睛跟踪数据。在框1510累积的IPD数据可以是用户的瞳孔间距离随时间变化的测量值、用户左右中心的旋转时间的测量值、随时间测量的最大瞳孔间距离的指示、或任何其他相关数据。在至少一些实施例中,可穿戴系统可以能够在相对较短的时间帧内(例如,5至7秒的眼睛跟踪数据,其可以对应于约150至200帧的眼睛跟踪图像)以相对较高的精度(例如,95%)在框1508确定当前用户的IPD。

在一些实施例中,可穿戴系统可以将用户的IPD估计为所收集的所有IPD值的特定百分位数(例如,第95个百分位数)(例如,在框1518进行动态校准期间和/或在框1510的IPD数据累积期间)。例如,对于第95个百分位数,可以排除最大5%的测量IPD值,然后可以将最大剩余的测量IPD值作为用户的IPD。以此方式计算的IPD值在本文中可以称为IPD_95。以此方式计算用户的IPD值的一个好处是,可以排除可能大于用户的解剖IPD的局外值。在不受理论限制的情况下,认为用户的解剖IPD附近或用户的解剖IPD处有足够数量的测量IPD值,使得IPD_95值准确地反映用户的解剖IPD。例如,如果大约10%的IPD测量值接近用户的解剖IPD,则即使排除了最大5%的值,IPD_95值仍应反映用户的解剖IPD值。如果需要,可以使用其他IPD计算,其中可以涉及排除不同百分比的最大测量IPD值。作为示例,可以使用IPD_100值,其中不排除任何IPD值,或者可以使用IPD_98值,其中仅排除最大的2%的值(这在具有产生相对较少局外IPD测量值的眼睛跟踪系统的系统中可能是优选的)。作为另外的示例,可以使用IPD_90值,可以使用IPD_85值,或者具有期望百分比的测量值被排除的其他IPD值。

在框1512,可穿戴系统可以确定当前用户的估计IPD是否在已校准用户的IPD的阈值之内(或者如果存在多个这样的用户,则在一个已校准用户的一个IPD的阈值之内)。该阈值可以是例如0.5mm、1.0mm、1.5mm、2.0mm或2.5mm。作为一个特定示例,该阈值可以是1.0mm,其可以足够大以将已校准用户快速且准确地识别为已校准用户,而未校准用户通常可以被识别为未校准用户。通常,与冒险未将已校准用户识别为已校准用户相比,可能更优选地是错误地将未校准用户识别为已校准用户。换句话说,因为对已校准用户的最佳性能的期望可能会超过对未校准或访客用户的轻微牺牲,并且因为已校准用户可以是给定显示系统的更可能或更频繁的用户,所以用于校准的用户识别中的假否定(false negative)可能会比假肯定(false positive)更严重。

如果当前用户的IPD在已校准用户的IPD的阈值内,则可穿戴系统可以将当前用户分配为已校准用户,并可以在框1514加载相关联的校准参数。作为示例,在框1514加载的校准参数可以包括已校准用户的IPD、视觉光轴偏移参数、和其他可用的校准参数。

如果当前用户的IPD不在已校准用户的IPD的阈值内,则可穿戴系统可以假定当前用户是访客用户,并且可以执行框1518中的动态校准(或者执行框1516中的基于内容的切换)。在框1518,可穿戴系统可以激活动态校准(例如,动态生成校准参数),如本文所讨论的,动态校准可以包括基于当前用户的估计的IPD的即时(on-the-fly)校准。

在框1516,可穿戴系统可以在如本文所述的情况下实施基于内容的切换,诸如当没有可用的先前校准数据时。在此框处,如本文所述,可以根据与所显示的虚拟内容相关联的深度来进行深度平面选择,这与跟踪用户的聚散深度相反。关于图16至图17B进一步讨论基于内容的深度平面切换。

在框1520中,可穿戴系统可以执行深度平面切换。可以使用在框1514、1516或1518中加载或生成的配置参数来执行框1520的深度平面切换。特别地,如果当前用户是已校准用户,则框1520可以根据在与该用户的校准期间生成的配置参数来执行深度平面切换。如果当前用户未被识别为已校准用户,并且在框1518执行了动态校准,则框1520可以涉及根据在框1520中生成的校准参数进行深度平面切换作为动态校准的一部分。在至少一些实例中,在框1518处生成的校准参数可以是用户的IPD,并且框1520中的深度平面切换可以基于该用户的IPD。如果可穿戴系统正在实施框1516中的基于内容的切换(这可以在没有已校准用户和/或内容创建者或用户选择使用基于内容的切换时发生),则可以根据确定用户正在观看的内容的深度来执行框1520的深度平面切换。

如本文所述,可穿戴系统可以经由特定深度平面呈现虚拟内容。当虚拟内容被更新时,例如当虚拟对象移动和/或被不同的虚拟对象替换时,可穿戴系统可以选择在其上呈现虚拟对象的不同深度平面。作为附加的非限制性示例,当可穿戴系统的用户聚焦于不同的虚拟对象或用户视场的不同位置时,可穿戴系统可以选择在其上呈现虚拟对象的不同深度平面。

下面参考图16A至图17B进一步讨论选择深度平面的示例方案,在此称为基于内容的切换。在基于内容的切换中,可穿戴系统可以基于用户可能正在观看哪个虚拟对象的确定来选择在其上呈现基于虚拟内容的深度平面。在一些实施例中,可以根据用户是否注视在特定区域内来做出该确定。例如,可穿戴系统可以将区域与将要作为虚拟内容呈现给用户的每个虚拟对象相关联。区域可以是例如围绕虚拟对象的空间的体积。空间的体积可以是球体、立方体、超矩形、金字塔或任何任意三维多面形(例如,多面体)。正如将要描述的,这些区域优选不重叠,因此,每个区域所包含的空间可以仅与单个虚拟对象相关联。

在一些实施例中,可穿戴系统可以监视用户的凝视,例如,以识别用户正在观看的位置(例如,在用户的视场内)。对于示例凝视,可穿戴系统可以识别包括用户正在观看的位置的区域。在该示例中,已经识别出该区域并且在该区域中仅有一个虚拟对象,可穿戴系统可以选择与识别出的区域中所包括的虚拟对象对应的深度平面。可穿戴系统然后可以在所选择的深度平面处呈现虚拟内容,该所选择的深度平面是与虚拟对象相关联的深度平面。

有利地,与如果深度平面切换取决于准确地确定注视点的深度而可能需要的眼睛跟踪方案相比,可穿戴系统可以利用更高延迟的眼睛跟踪,或者以其他方式不那么精确的眼睛跟踪方案。在一些实施例中,对于具有以不同深度所显示的多个虚拟对象的场景,可以利用统计概率或空间相关性来区分用户可能正在观察或吸引注意的内容。因此,可穿戴系统可以确定注视区域或注视体积(例如,而不是精确的注视点),并且基于注视区域或体积来选择深度平面。在一些实施例中,诸如所使用的最后应用或用户的凝视变化的程度的加权因子可以调整统计概率,并因此调整区域的大小/形状。在一些实施例中,区域的大小/形状与用户正在注视在特定的体积中的统计概率相关;例如,在存在大量不确定性的情况下(例如,由于噪声、眼睛跟踪系统的低容差、最近使用的应用的跟踪细节、用户凝视的变化速度等造成不确定性超过阈值)时,区域的大小可能会增加,而在存在较小不确定性的情况下,区域的大小可能会减小。

如将在图16A中描述的,在一些实施例中,区域可以包含相应的角度距离(例如,从用户的眼睛延伸到距用户无穷远距离)。在该示例中,可穿戴系统因此可能需要仅足以将用户的凝视置于X和Y平面的特定部分内的准确性。

在一些实施例中,显示系统可以从执行基于内容的深度平面切换转换到基于动态校准执行深度平面切换。例如,当用于执行基于内容的深度平面切换方案而获得的数据被确定为不可靠时,或者在跨越多个深度平面的不同深度范围内提供内容的情况下,可以发生这种转换。如本文所述,确定用户注视的区域中所计算的不确定性的量可以基于各种因素而改变,这些因素包括噪声、眼睛跟踪系统的容差、最近使用的应用的跟踪细节、用户凝视变化的速度等。在一些实施例中,显示系统可以被配置为当不确定性(例如,与确定用户注视点的位置相关联的不确定性)超过阈值时,转换到基于动态校准的深度平面切换。在一些其他实施例中,特定的虚拟内容可以跨越多个深度平面。对于跨越阈值数量的深度平面(例如,三个深度平面)的内容,显示系统可以被配置为转换到基于动态校准的深度平面切换。

在一些实施例中,显示系统可以被配置为响应于确定与虚拟内容的深度相关联的不确定性超过阈值,将执行基于内容的深度平面切换转换到执行基于动态校准的深度平面切换。例如,显示系统可以确定在显示系统上运行的特定应用正在提供的虚拟内容的深度或位置信息相对不可靠(例如,即使当用户的位置发生变化或用户移动分别超过预定水平的位置变化或预定水平的移动时,特定应用指示混合现实虚拟内容相对于用户的深度或位置也是静态的),并且进而可以转换到基于动态校准的深度平面切换。这样的转换可以实现更舒适和/或逼真的观看体验。

尽管主要在深度平面切换的上下文中进行了描述,但是应该理解,可以在能够以不同的波前发散量向用户的眼睛输出光的各种不同显示系统中的任何一个中利用本文参考图14和/或图15描述的一种或多种技术。例如,在一些实施例中,可以在包括一个或多个可变聚焦元件(VFE)的头戴式显示系统中采用本文参考图14和/或图15描述的一种或多种技术。例如,透镜458、456、454、452(图4)中的一个或多个可以是VFE,如本文所述。在这些实施例中,头戴式显示系统可以至少部分地基于该头戴式显示系统的佩戴者被确定为已校准用户还是访客用户,来实时控制其一个或多个VFE的操作。即,头戴式显示系统可以至少部分地基于头戴式显示系统的佩戴者被确定为已校准用户还是访客用户,来控制或调整向佩戴者输出的光所具有的波前发散量(光的焦距)。在2016年4月21日公开的第2016/0110920号美国公开和2017年10月12日公开的第2017/0293145号美国公开中公开了用于可变焦目镜的架构和控制方案的示例,每个上述申请在此通过引用整体并入。其他配置也是可能的。

图16A示出了用户的视场1602的表示。用户的视场1602(在所示实施例中为三维平截头体)可以包括从用户的眼睛1606沿z方向延伸的多个深度平面1604A至1604D。视场1602可以分成不同的区域1608A至1608D。因此每个区域可以包含视场1602中所包括的特定空间体积。在该示例中,每个区域包含优选包括所有不同的深度平面1604A至1604D的空间体积。例如,区域1608A可以沿z方向从用户的眼睛1606延伸到例如距眼睛1606无穷远的距离。沿着诸如x方向的正交方向,区域1608A可以从视场1602的末端延伸直到区域1608A与1608B之间的边界。

在所示的实施例中,区域1608B包括树虚拟对象1610。树虚拟对象1610被示为在深度平面C 1604C处呈现。例如,树虚拟对象1610可以与位置信息相关联(例如,进行存储,或者以其他方式显示系统可获取的)。如上所述,该位置信息可以被用来识别在其上将要呈现树虚拟对象1610的三维位置。如图所示,显示系统还可以显示书作为虚拟对象1612。区域1608C包括书虚拟对象1612。因此,可穿戴系统呈现包括树虚拟对象1610和书虚拟对象1612的虚拟内容。

用户的眼睛1606可以围绕视场1602移动,例如,以视场1602注视或观看不同位置。如果用户的眼睛1606注视在树虚拟对象1610上或在深度平面C上,则可穿戴系统可以确定选择深度平面C 1604C来呈现虚拟内容。类似地,如果用户的眼睛1606注视在书虚拟对象1612上,更多的是在深度平面B上,则可穿戴系统可以确定选择深度平面B 1604B来呈现虚拟内容。如至少在图14中所描述的,可穿戴系统可以使用不同的方案来使得进行深度平面的选择。

关于基于内容的切换,可穿戴系统可以识别包括由用户的眼睛1606所注视的位置的区域。可穿戴系统然后可以选择与识别出的区域中所包括的虚拟对象对应的深度平面。例如,图16A示出了示例注视点1614。可穿戴系统可以基于用户的眼睛1606确定用户正在观看注视点1614。可穿戴系统然后可以识别出该注视点1614包括在区域1608C中。由于该区域1608C包括书虚拟对象1612,因此可穿戴系统可以使得在深度平面C1604C呈现虚拟内容。不受理论的限制,这被认为提供了舒适的观看体验,因为在区域1608C中可以注视的虚拟对象是书虚拟对象1612,因此,适当地切换到该书虚拟对象1612的深度平面。

因此,如果用户将注视调整到注视点1616或1618,则可穿戴系统可以保持在深度平面C 1604B处的呈现。然而,如果用户将注视调整到区域1608B内,则可穿戴系统可以选择在其上呈现虚拟内容的深度平面C1604C。尽管图16A的示例包括四个区域,但是应当理解,可以利用更少的区域或更多数量的区域。可选地,区域的数量可以与虚拟对象的数量相同,并且每个虚拟对象具有唯一的区域,并且在一些实施例中,区域的数量可以随着虚拟对象的数量的变化而动态变化(优选地,只要这些区域可以从显示平截头体的前面延伸到后面,而不存在一个以上的对象占用相同的区域,例如,不存在两个或更多个对象大致位于相对于用户的相同视线上)。例如,在图16A的示例中可以使用两个区域,在该示例中具有对于用户不具有重叠视线的两个虚拟对象。可选地,可穿戴系统可以动态地调整每个区域所包含的空间体积。例如,随着凝视检测的准确性提高或降低,空间体积可以增大、减小或者区域的数量会调整。

图16B以透视图示出了图16A的每个区域所包含的空间体积的示例。如图所示,每个区域1608A、1608B、1608C和1608D在z方向上从显示平截头体1602的前面延伸到后面。如图所示,在x-y轴上,区域垂直延伸以沿x轴分割或划分视场。在一些其他实施例中,区域可以在x-y轴上水平延伸以沿着y轴分割视场。在这样的实施例中,所示的平截头体可以在x-y平面上有效地旋转90°。在另外其他实施例中,在x-y轴上,区域可以在x和y轴上分割或划分视场,从而在x-y轴上形成网格。在所有这些实施例中,每个区域仍优选地从显示平截头体1602的前面延伸到后面(例如,从显示系统可以显示内容的最近平面延伸到最远平面)。

图17A示出了用于基于内容的切换的用户视场1602的另一表示。在图17A的示例中,如图16A所示,用户视场1602包括深度平面A 1604A至深度平面D 1604D。然而,与每个虚拟对象相关联的空间体积与图16A至图16B的空间体积不同,例如,书虚拟对象1612所在的区域1702被示出包含封闭(enclose)形状,例如球形空间体积、圆柱形空间体积、立方体、多面体等。优选地,区域1702在z轴上延伸小于显示平截头体1602的整个深度。有利地,区域的这种布置允许区分在可能处于对于用户的相似视线中的对象之间进行区分。

可选地,可穿戴系统可以基于眼睛跟踪准确性超过一个或多个阈值来调整图17A的区域。例如,区域的大小可以随着跟踪准确性置信度的增加而减小。作为另一示例,将理解的是,每个虚拟对象具有相关联的区域。可穿戴系统可以调整图17A的区域以避免重叠区域。例如,如果要在与不同的虚拟对象对应的区域内显示新的虚拟对象,则可以减小用于一个或两个虚拟对象的区域的大小以避免重叠。例如,如果图17A中的书虚拟对象1612移动到树虚拟对象1610的前面(例如,在区域1608A中),则可穿戴系统可以调整图17A中的区域以使其更贴近虚拟对象(例如,如图17A所示)以防止重叠。

继续参考图17A,树虚拟对象1610被示为包括在第一区域1706和第二区域1708中。可选地,第一区域1706可以表示围绕树虚拟对象1610的相对较小的空间体积。第二区域1708可以表示围绕树虚拟对象1610的当前空间体积。例如,当虚拟对象在视场1602内四处移动时,可以调整区域所包含的空间体积(例如,实时地)。在该示例中,调整可以确保每个区域不与任何其他区域重叠。因此,如果书虚拟对象1612移动靠近树虚拟对象1610,则可穿戴系统可以减小围绕树虚拟对象1610、书虚拟对象1612或两者的区域的空间体积。例如,第二区域1708可以减小到在体积上更接近第一区域1706。

如在本文中所指出的,在基于内容的深度平面切换中,支配与虚拟对象相关联的深度平面而不是支配注视点。关于注视点1704示出了这种情况的示例。如图所示,书虚拟对象1612的示例区域1702可以包含如下的空间体积,该空间体积包括由深度平面B 1604B和深度平面1604C定义的部分。在一些情况下,可穿戴系统确定用户正在注视深度平面C中的点1704,并且还将该注视点1704识别为包括在区域1702中。由于与书虚拟对象1612相关联的深度平面支配深度平面切换,因此可穿戴系统切换到书虚拟对象1612的深度平面B而不是注视点1704的深度平面C。图17B示出了图17A的表示的透视图的示例。

图18示出了基于基于内容的切换来选择深度平面的示例过程的流程图。为方便起见,过程1800将被描述为由一个或多个处理器的可穿戴系统(例如,可穿戴设备,诸如上述可穿戴系统200)来执行。

在框1802,可穿戴系统在特定深度平面上呈现虚拟内容。如上所述,深度平面可以用于向可穿戴系统的用户提供调节提示。例如,每个深度平面可以与由可穿戴系统向用户呈现的光的波前发散量相关联。虚拟内容可以包括一个或多个虚拟对象。

在框1804,可穿戴系统确定注视点。可穿戴系统可以使用诸如相机的传感器来估计用户正在注视的三维位置。这些相机可以以诸如30Hz、60Hz等特定速率进行更新。可穿戴系统可以确定从用户的眼睛(例如,从眼睛的中心或瞳孔)延伸的向量,并且估计向量相交的三维位置。在一些实施例中,可以基于IPD来估计注视点,并且假设IPD从最大IPD的预定义变化与特定深度平面上的注视相关。此外,可选地,除了IPD之外,可以确定用户的凝视进一步位于注视点的逼近位置。该估计位置可能具有与其相关联的特定误差,因此可穿戴系统可以确定注视点相对于虚拟内容可能位于的空间体积。

在框1806,可穿戴系统识别包括注视点的区域。如关于图16A至图17B所讨论的,可穿戴系统可以将区域与每个虚拟对象相关联。例如,区域可以包括特定的(例如,单个)虚拟对象。优选地,用于不同虚拟对象的区域不重叠。

在框1808,可穿戴系统选择与识别出的区域中所包括的虚拟内容相关联的深度平面。可穿戴系统可以识别与在框1806中识别出的区域相关联的虚拟内容。可穿戴系统然后可以获得指示在其上将要呈现虚拟内容的深度平面的信息。例如,虚拟内容可以与指示三维位置的位置信息相关联。可穿戴系统然后可以识别与该三维位置相关联的深度平面。可以选择该深度平面来呈现虚拟内容。

图19示出了基于基于内容的切换来调整区域的示例过程的流程图。为方便起见,过程1800将被描述为由一个或多个处理器的可穿戴系统(例如,可穿戴系统,诸如上述的可穿戴系统200)来执行。

在框1902处,可穿戴系统呈现虚拟对象。如本文所述,可穿戴系统可具有与所呈现的虚拟对象相关联的区域。例如,区域可以包含空间体积并包括特定的虚拟对象(例如,单个虚拟对象)。这些区域可以是任何形状或多面体,并且在一些实施例中可以在一个或多个方向上无限延伸。图16A至图17B中示出了区域的示例。

在框1904处,可穿戴系统调整虚拟对象的数量或调整虚拟对象的位置。可穿戴系统可以呈现另外的虚拟对象,例如在框1902可以呈现5个虚拟对象。在框1904,可以呈现8个虚拟对象。可选地,可穿戴系统可以更新虚拟对象的位置。例如,在框1902中呈现的虚拟对象可以是蜜蜂。因此该虚拟对象可以围绕用户的视场行进。

在框1906处,可穿戴系统更新与一个或多个虚拟对象相关联的区域。对于正在呈现另外的虚拟对象的示例,虚拟对象可以变得更靠近在一起。在一些实施例中,因为每个区域仅可以允许包括单个虚拟对象,所以虚拟对象数量上的增加可能需要调整区域。例如,图16A示出了两个虚拟对象。如果包括另外的虚拟对象,则它们可能被包括在两个虚拟对象中的任一个也包括在其中的区域中。因此,可穿戴系统可以调整区域—例如,调整分配给每个区域的空间体积(例如,减小空间体积)。通过这种方式,每个区域可以包括单个虚拟对象。关于虚拟对象进行移动的示例,移动的虚拟对象可能会靠近另一个虚拟对象。因此,移动的虚拟对象可能会延伸到与另一虚拟对象相关联的区域。与上述类似,可穿戴系统可以调整区域以确保每个虚拟对象都包括在其自己的区域中。

作为更新的示例,可穿戴系统可以将区域与在框1902中识别出的虚拟对象相关联。例如,这些区域可以类似于图16A中所示的区域1608A至1608D。可穿戴系统可以调整区域以包含较小的空间体积。例如,可穿戴系统可以更新区域以类似于图17A所示的区域1702、1706。

作为更新的另一示例,这些区域可以类似于图17A的区域。关于图17A,如果书虚拟对象1612移动靠近树虚拟对象1610,则围绕树虚拟对象1610的区域1708可能包括书虚拟对象1612。因此,可穿戴系统可以更新区域1708以减小其包含的空间体积。例如,区域1708可以被调整为区域1706。作为另一示例,区域1708可以被调整为更接近区域1706。如图17A所示,区域1706可以可选地反映围绕树虚拟对象1610的最小区域。

如上所讨论的,显示系统可被配置为检测用户周围的环境中的对象或特性。如本文所讨论的,可使用包括各种环境传感器(例如,相机、音频传感器、温度传感器等)的各种技术来完成检测。

在一些实施例中,可使用计算机视觉技术来检测环境中存在的对象。例如,如本文所公开的,显示系统的面向前的相机可被配置为对周围环境成像,并且显示系统可被配置为对图像执行图像分析以确定对象在周围环境中的存在。显示系统可分析由面向外部的成像系统获取的图像以执行场景重建、事件检测、视频跟踪、对象识别、对象姿势估计、学习、索引、运动估计、或图像恢复等。作为其他示例,该显示系统可被配置为执行面部和/或眼睛识别以确定在用户的视场中面部和/或人眼的存在和位置。可使用一种或多种计算机视觉算法来执行这些任务。计算机视觉算法的非限制性示例包括:尺度不变特征变换(SIFT)、加速鲁棒特征(SURF)、定向FAST和旋转BRIEF(ORB)、二进制鲁棒不变可扩展关按键点(BRISK)、快速视网膜关按键点(FREAK)、Viola-Jones算法、Eigenfaces方法、Lucas-Kanade算法、Horn-Schunk算法、均值漂移(Mean-shift)算法、视觉同时定位和地图构建(vSLAM)技术、顺序贝叶斯估计器(例如,卡尔曼滤波器、扩展卡尔曼滤波器等)、光束法平差(bundleadjustment)、自适应阈值(和其他阈值技术)、迭代最近点(ICP)、半全局匹配(SGM)、半全局块匹配(SGBM)、特征点直方图、各种机器学习算法(例如,支持矢量机、k最近邻算法、朴素贝叶斯、神经网络(包括卷积或深度神经网络)、或其他有监督/无监督模型等),等等。

这些计算机视觉技术中的一个或多个也可与从其他环境传感器(例如,麦克风)获取的数据一起使用,以检测和确定由传感器检测到的对象的各种特性。

如本文中所讨论的,可基于一个或多个标准来检测周围环境中的对象。当显示系统使用计算机视觉算法或使用从一个或多个传感器组件(其可以是或可不是显示系统的一部分)接收到的数据检测到周围环境中存在或缺乏标准时,显示系统可随后发信号通知对象的存在。

各种机器学习算法可用于学习标识周围环境中对象的存在。一旦训练后,机器学习算法可由显示系统存储。机器学习算法的一些示例可包括:有监督或无监督的机器学习算法、包括回归算法(例如,普通最小二乘回归)、基于实例的算法(例如,学习矢量量化)、决策树算法(例如,分类和回归树)、贝叶斯算法(例如,朴素贝叶斯)、聚类算法(例如,k-均值聚类)、关联规则学习算法(例如,先验算法)、人工神经网络算法(例如,感知器)、深度学习算法(例如,深度玻尔兹曼机、或深度神经网络)、降维算法(例如,主要成分分析)、整体算法(例如,堆叠泛化)和/或其他机器学习算法。在一些实施例中,可以为各个数据集定制各个模型。例如,可穿戴设备可以生成或存储基本模型。基本模型可以用作起点以生成特定于数据类型(例如,特定用户)、数据集(例如,获得的附加图像的集合)、有条件情况或其他变化的附加模型。在一些实施例中,显示系统可被配置为利用多种技术来生成用于分析聚合数据的模型。其他技术可以包括使用预定义的阈值或数据值。

用于检测对象的标准可包括一个或多个阈值条件。如果对由环境传感器获取的数据的分析指示通过了阈值条件,则显示系统可提供指示检测到周围环境中对象存在的信号。阈值条件可涉及定量和/或定性测量。例如,阈值条件可包括与反射和/或对象存在于环境中的可能性相关联的分数或百分比。显示系统可将根据环境传感器的数据计算出的分数与阈值分数进行比较。如果分数高于阈值水平,则显示系统可检测到反射和/或对象的存在。在一些其他实施例中,如果分数低于阈值,则显示系统可发信号通知环境中对象的存在。在一些实施例中,阈值条件可基于用户的情绪状态和/或用户与周围环境的交互来确定。

在一些实施例中,阈值条件、机器学习算法、或计算机视觉算法可专用于特定环境。例如,在诊断环境中,计算机视觉算法可专用于检测对刺激的某些响应。作为另一个示例,如本文所讨论的,显示系统可执行面部识别算法和/或事件跟踪算法以感测用户对刺激的反应。

将会意识到,本文描述和/或附图中描绘的每个过程、方法和算法可以体现在由一个或多个被配置为执行专门的和特定的计算机指令的物理计算系统、硬件计算机处理器、专用电路和/或电子硬件中以及全部或部分地由其自动化。例如,计算系统可以包括用特定计算机指令编程的通用计算机(例如服务器)或专用计算机、专用电路等。代码模块可被编译并链接到可执行程序中、安装在动态链接库中,或者可以用解释性编程语言来编写。在一些实施例中,特定的操作和方法可以由特定于给定功能的电路执行。

此外,本公开的功能的某些实施例在数学上、计算上或技术上都足够复杂,以致于可能需要专用硬件或一个或多个物理计算设备(利用适当的专用可执行指令)来执行功能,例如由于所涉及计算的量或复杂性,或为了实质上实时地提供结果。例如,视频可以包括许多帧,每个帧具有数百万个像素,并且需要专门编程的计算机硬件来处理视频数据,以在商业上合理的时间量内提供所需的图像处理任务或应用。

代码模块或任何类型的数据可以存储在任何类型的非暂时性计算机可读介质上,例如物理计算机存储器,包括硬盘驱动器、固态存储器、随机存取存储器(RAM)、只读存储器(ROM)、光盘、易失性或非易失性存储设备、它们和/或类似存储器的组合等。在一些实施例中,非暂时性计算机可读介质可以是本地处理和数据模块(140)、远程处理模块(150)和远程数据存储库(160)中的一个或多个的一部分。方法和模块(或数据)还可以作为生成的数据信号(例如,作为载波或其他模拟或数字传播信号的一部分)在各种计算机可读传输介质(包括基于无线的和基于有线的/电缆的介质)上发送,并且可以采用多种形式(例如作为单个或多路复用模拟信号的一部分,或作为多个离散数字分组或帧)。所公开的过程或过程步骤的结果可以永久地或以其他方式存储在任何类型的非暂时性有形计算机存储器中,或者可以经由计算机可读传输介质进行传递。

本文描述的和/或在附图中描绘的流程图中的任何过程、框、状态、步骤或功能应被理解为潜在地表示代码模块、代码段或代码部分,其包括用于在流程中实现特定功能(例如逻辑或算术)或步骤的一个或多个可执行指令。各种过程、框、状态、步骤或功能可以组合、重新布置、添加到本文提供的说明性示例、从本文提供的说明性示例中删除、修改或以其他方式改变。在一些实施例中,附加的或不同的计算系统或代码模块可以执行本文描述的一些或全部功能。本文描述的方法和过程也不限于任何特定的顺序,并且与之相关的框、步骤或状态可以以适当的其他顺序(例如串行、并行或以某些其他方式)来执行。可以将任务或事件添加到所公开的示例实施例中或从中删除。此外,本文描述的实施例中的各种系统组件的分离是出于说明的目的,并且不应被理解为在所有实施例中都需要这种分离。应当理解,所描述的程序组件、方法和系统通常可以被集成在一起在单个计算机产品中或包装到多个计算机产品中。

本文描述和/或附图中描绘的每个过程、方法和算法可以体现在由一个或多个被配置为执行专门的和特定的计算机指令的物理计算系统、硬件计算机处理器、专用电路和/或电子硬件中以及全部或部分地由其自动化。例如,计算系统可以包括用特定计算机指令编程的通用计算机(例如服务器)或专用计算机、专用电路等。代码模块可被编译并链接到可执行程序中、安装在动态链接库中,或者可以用解释性编程语言来编写。在一些实现中,特定的操作和方法可以由特定于给定功能的电路执行。

此外,本公开的功能的某些实现在数学上、计算上或技术上都足够复杂,以致于可能需要专用硬件或一个或多个物理计算设备(利用适当的专用可执行指令)来执行功能,例如由于所涉及计算的量或复杂性,或为了实质上实时地提供结果。例如,动画或视频可以包括许多帧,每个帧具有数百万个像素,并且需要专门编程的计算机硬件来处理视频数据,以在商业上合理的时间量内提供所需的图像处理任务或应用。

代码模块或任何类型的数据可以存储在任何类型的非暂时性计算机可读介质上,例如物理计算机存储器,包括硬盘驱动器、固态存储器、随机存取存储器(RAM)、只读存储器(ROM)、光盘、易失性或非易失性存储设备、它们和/或类似存储器的组合等。方法和模块(或数据)也可以作为生成的数据信号(例如作为载波或其他模拟或数字传播信号的一部分)在包括基于无线的和基于有线/电缆的介质的各种计算机可读传输介质上进行发送,并且可以采用多种形式(例如作为单个或多路复用模拟信号的一部分,或作为多个离散数字分组或帧)。所公开的过程或过程步骤或动作的结果可以永久地或以其他方式存储在任何类型的非暂时性有形计算机存储器中,或者可以经由计算机可读传输介质进行传递。

本文描述的和/或在附图中描绘的流程图中的任何过程、框、状态、步骤或功能应被理解为潜在地表示代码模块、代码段或代码部分,其包括用于在流程中实现特定功能(例如逻辑或算术)或步骤的一个或多个可执行指令。各种过程、框、状态、步骤或功能可以组合、重新布置、添加到本文提供的说明性示例、从本文提供的说明性示例中删除、修改或以其他方式改变。在一些实施例中,附加的或不同的计算系统或代码模块可以执行本文描述的一些或全部功能。本文描述的方法和过程也不限于任何特定的顺序,并且与之相关的框、步骤或状态可以以适当的其他顺序(例如串行、并行或以某些其他方式)来执行。可以将任务或事件添加到所公开的示例实施例中或从中删除。此外,本文描述的实现中的各种系统组件的分离是出于说明的目的,并且不应被理解为在所有实现中都需要这种分离。应当理解,所描述的程序组件、方法和系统通常可以被集成在一起在单个计算机产品中或包装到多个计算机产品中。许多实现变型是可能的。

可以在网络(或分布式)计算环境中实现过程、方法和系统。网络环境包括企业范围的计算机网络、企业内网、局域网(LAN)、广域网(WAN)、个人区域网(PAN)、云计算网络、众包计算网络、互联网和万维网。该网络可以是有线或无线网络或任何其他类型的通信网络。

本公开的系统和方法各自具有若干创新方面,其中,没有一个对本文公开的期望属性负有单独责任或要求。上述的各种特征和过程可以彼此独立地使用,或者可以以各种方式组合。所有可能的组合和子组合旨在落入本公开的范围内。对本公开中描述的实现的各种修改对于本领域技术人员而言是显而易见的,并且在不脱离本公开的精神或范围的情况下,本文中定义的一般原理可以应用于其他实现。因此,权利要求书无意限于本文中所示的实现,而是应被赋予与本文中所揭示的本发明、原理及新颖特征一致的最广范围。

在本说明书中在单独的实现的上下文中描述的某些特征也可以在单个实现中组合实现。相反,在单个实现的上下文中描述的各种特征也可以分别在多个实现中或以任何合适的子组合来实现。而且,尽管以上可以将特征描述为以某些组合起作用并且甚至最初如此宣称,但是在某些情况下可以从组合中切除所要求保护的组合中的一个或多个特征,并且所要求保护的组合可以针对子组合或子组合的变体。对于每个实施例,没有单个特征或一组特征是必要的或必不可少的。

这里使用的条件语言,尤其例如“能够”、“会”、“可能”、“可以”、“例如”等,除非另有明确说明,否则在所使用的上下文中理解为通常意在传达某些实施例包括而其他实施例不包括某些特征、元素和/或步骤。因此,这样的条件语言通常不旨在暗示特征、元素和/或步骤以任何方式对于一个或多个实施例是必需的,或者一个或多个实施例必然包括用于在有或没有作者输入或提示的情况下决定这些特征、元素和/或步骤是否在任何特定实施例中被包括或将被执行的逻辑。术语“包括”、“包含”、“具有”等是同义词,以开放式方式包含地使用,并且不排除附加要素、特征、动作、操作等。而且,术语“或”以其包含的含义使用(而不是以其排他的含义使用),因此例如在用于连接元素列表时,术语“或”表示列表中的一个、一些或全部元素。另外,在本申请和所附权利要求书中使用的“一”、“一个”和“该”应被解释为表示“一个或多个”或“至少一个”,除非另有说明。

如本文所使用的,指代项目列表中的“至少一个”的短语是指那些项目的任何组合,包括单个成员。例如,“A、B或C中的至少一个”旨在涵盖:A、B、C、A和B、A和C、B和C以及A、B和C。除非另外特别说明,否则诸如短语“X、Y和Z中的至少一个”之类的词语应与上下文一起理解,该上下文通常用于传达项目、术语等可以是X、Y或Z中的至少一个。因此,这种联合语言通常不旨在暗示某些实施例要求X中的至少一个、Y中的至少一个和Z中的至少一个存在。

类似地,尽管可以以特定顺序在附图中描绘操作,但是要认识到,不需要以所示的特定顺序或相继顺序来执行这样的操作,或者不需要执行所有示出的操作来实现理想的结果。此外,附图可以以流程图的形式示意性地描绘一个或多个示例过程。然而,未示出的其他操作可以结合在示意性示出的示例方法和过程中。例如,可以在任何所示操作之前、之后、同时或之间执行一个或多个附加操作。另外,在其他实现中,操作可以重新布置或重新排序。在某些情况下,多任务和并行处理可能是有利的。此外,在上述实现中的各种系统组件的分离不应被理解为在所有实现中都需要这种分离,并且应当理解,所描述的程序组件和系统通常可以集成在单个软件产品中或打包到多个软件产品中。另外,其他实现在所附权利要求的范围内。在某些情况下,可以以不同的顺序执行权利要求中记载的动作,并且仍然实现期望的结果。

相关技术
  • 通过用户分类为多深度平面显示系统选择深度平面
  • 减少深度平面之间切换的多深度平面显示系统
技术分类

06120112753020