首页> 中国专利> 场顺序显示器中的场内子码时序

场顺序显示器中的场内子码时序

摘要

实施例提供了一种用于扭曲多场彩色虚拟内容以进行顺序投射的计算机实现的方法。获取具有不同的第一颜色和第二颜色的第一色场和第二色场。确定用于投射扭曲的第一色场的第一时间。预测对应于第一时间的第一姿势。对于第一色场中的所述第一颜色之中的每一种颜色,(a)识别表示第一色场中的第一颜色之中的一种颜色的输入;(b)将该输入重新配置为创建多个每场输入的一系列脉冲;以及(c)基于第一姿势扭曲所述一系列脉冲中的每一个。基于扭曲的一系列脉冲生成扭曲的第一色场。基于扭曲的一系列脉冲激活顺序显示器上的像素,以显示扭曲的第一色场。

著录项

  • 公开/公告号CN112470464A

    专利类型发明专利

  • 公开/公告日2021-03-09

    原文格式PDF

  • 申请/专利权人 奇跃公司;

    申请/专利号CN201980048711.7

  • 发明设计人 M·C·卡普斯;

    申请日2019-07-23

  • 分类号H04N7/18(20060101);G06T5/50(20060101);

  • 代理机构11247 北京市中咨律师事务所;

  • 代理人王英杰;杨晓光

  • 地址 美国佛罗里达州

  • 入库时间 2023-06-19 10:08:35

说明书

相关申请的交叉引用

本申请要求于2018年7月23日提交的、标题为“场顺序显示器中的场内子码时序(Intra-Field Sub Code Timing In Field Sequential Displays)”的、美国临时专利申请号62/702,181的优先权,出于所有目的,其全部公开内容通过引用合并于此,仿佛在本文中以其整体完整地阐述一样。

本申请涉及于2018年3月16日提交的、标题为“具有彩色虚拟内容扭曲的混合现实系统和使用该虚拟现实系统生成虚拟内容的方法(Mixed Reality System with ColorVirtual Content Warping and Method of Generating Virtual Content Using Same)”的美国专利申请号15/924,078,其内容在此通过引用以其整体并入。

技术领域

本公开涉及随时间推移针对虚拟内容在不同几何位置处投射一个或多个颜色代码的场顺序显示系统,以及用于使用该场顺序显示系统生成混合现实体验内容的方法。

背景技术

现代计算和显示技术已经促进了用于所谓的“虚拟现实”(VR)或“增强现实”(AR)体验的“混合现实”(MR)系统的发展,其中数字再现的图像或其一部分以它们似乎是真实的或可能被感知为真实的方式呈现给用户。VR场景通常涉及数字或虚拟图像信息的呈现,而对实际的真实世界视觉输入不具有透明性。AR场景通常涉及将数字或虚拟图像信息呈现为对用户周围真实世界的可视化(即,对真实世界视觉输入的透明性)的增强。因此,AR场景涉及数字或虚拟图像信息的呈现,并对真实世界的视觉输入具有透明性。

MR系统通常生成并显示颜色数据,其增加了MR场景的真实性。这些MR系统中的许多通过快速连续地投射与彩色图像相对应的不同(例如,基色)颜色或“场”(例如,红色、绿色和蓝色)的子图像来显示颜色数据。以足够高的速率(例如60Hz,120Hz等)投射彩色子图像可能会在用户的脑海中递送平滑的彩色MR场景。

各种光学系统在用于显示MR(VR和AR)场景的各种深度处生成包括彩色图像的图像。一些这样的光学系统在2014年11月27日提交的美国实用新型专利申请号14/555,585(代理人案卷号ML.20011.00)中进行了描述,其内容在此通过引用以其整体明确并完整地并入,仿佛完整阐述一样。

MR系统通常采用可佩戴显示装置(例如,头戴式显示器、头盔式显示器或智能眼镜),其至少松散地耦合到用户的头部,并因此在用户的头部移动时移动。如果显示装置检测到用户的头部运动,则可以更新正在显示的数据,以考虑到头部姿势(即用户头部的方位和/或位置)的变化。位置的变化对场顺序显示技术提出了挑战。

发明内容

本文所描述的是改善旨在投射静止图像的经受运动的场顺序显示器的图像质量的技能和技术。

作为示例,如果佩戴头戴式显示装置的用户观看显示器上的虚拟对象的虚拟表示并在虚拟对象出现的区域周围行走,则可以针对每个视点渲染虚拟对象,从而给用户他们正在绕着与真实空间共享一种关系而不是与显示表面的一种关系的对象行走的感觉。然而,用户头部姿势的变化会改变,并且要维持从动态显示系统进行的静态图像投射,需要调整场顺序投射器的时序。

常规的场顺序显示器可以以指定的时间顺序投射用于单个图像帧的颜色,并且当在静态显示器上观看时,场之间的时间差不会被注意到。例如,第一次显示的红色像素和10毫秒后显示的蓝色像素将看起来重叠,因为像素的几何位置在可识别的时间量内没有变化。

然而,在诸如头戴式显示器的移动投射器中,以相同的10毫秒间隔进行的运动可能对应于旨在重叠的红色像素和蓝色像素的值得注意的偏移。

在一些实施例中,在场顺序内扭曲单个图像的颜色可以改善图像的感知,因为每帧将基于头部姿势变化中给定时间的场的适当视角。在美国专利申请号15/924,078中描述了用于实现该解决方案的此类方法和系统。

除了为校正场顺序显示器中的一般头部姿势变化而应发生的特定场扭曲之外,还应调整给定场的子码本身,以适当地传达代表预期颜色的丰富图像。

在一个实施例中,一种用于扭曲多场颜色虚拟内容以进行顺序投射的计算机实现的方法包括获取具有不同的第一颜色和第二颜色的第一色场和第二色场。该方法还包括确定用于投射扭曲的第一色场的第一时间。该方法还包括预测对应于第一时间的第一姿势。对于第一色场中的第一颜色中的每一种颜色,该方法包括:(a)识别表示第一色场中的第一颜色中的该一种颜色的输入;(b)将输入重新配置为创建多个每场输入的一系列脉冲;以及(c)基于第一姿势扭曲一系列脉冲中的每一个。该方法还包括基于扭曲的一系列脉冲生成扭曲的第一色场。另外,该方法包括基于扭曲的一系列脉冲激活顺序显示器上的像素,以显示扭曲的第一色场。

在一个或多个实施例中,一系列脉冲包括以第一时间为中心的中心脉冲,在中心脉冲之前出现的第二脉冲和在中心脉冲之后出现的第三脉冲。第二脉冲的衰减阶段的结束与中心脉冲的增长阶段的开始在时间上对准,并且第三脉冲的增长阶段的开始与中心脉冲的衰减阶段的结束在时间上对准。中心脉冲的形心在第一时间出现,第二脉冲的形心在第一时间之前的第二时间出现,以及第三脉冲的形心在第一时间之后的第三时间出现。在一些实施例中,第一时间和第二时间之间的差等于第一时间和第三时间之间的差。在一些实施例中,中心脉冲包括各自具有第一持续时间的第一时隙组,第二脉冲和第三脉冲包括各自具有大于第一持续时间的第二持续时间的第二时隙组。在第一时隙组或第二时隙组的子集期间激活顺序显示器上的像素。在一些实施例中,在中心脉冲的时隙期间,根据与第一色场中的第一颜色之中的该一种颜色相关联的色码,激活顺序显示器上的像素。在各种实施例中,在第二脉冲中的时隙和第三脉冲中的对应时隙中激活顺序显示器上的像素。

在一个或多个实施例中,该方法还可以包括确定用于投射扭曲的第二色场的第二时间。该方法可以进一步包括预测对应于第二时间的第二姿势。对于第二色场中的第二颜色之中的每一种颜色,该方法可以包括:(a)识别表示第二色场中的第二颜色之中的一种颜色的输入;(b)将输入重新配置为创建多个每场输入的一系列脉冲;(c)基于第二姿势扭曲该一系列脉冲中的每一个。该方法还可以包括基于扭曲的一系列脉冲生成扭曲的第二色场。另外,该方法可以包括基于扭曲的一系列脉冲激活顺序显示器上的像素,以基于扭曲的一系列脉冲显示扭曲的第二色场。

在另一实施例中,一种用于扭曲多场彩色虚拟内容以进行顺序投射的系统包括:扭曲单元,该扭曲单元接收具有不同的第一颜色和第二颜色的第一色场和第二色场,以用于顺序投射。扭曲单元包括姿势估计器,该姿势估计器确定用于投射扭曲的第一色场的第一时间并预测对应于该第一时间的第一姿势。扭曲单元还包括变换单元,对于第一色场中的第一颜色之中的每种颜色,该变换单元:(a)识别表示第一色场中的第一颜色之中的该一种颜色的输入;(b)将输入重新配置为创建多个每场输入的一系列脉冲;(c)基于第一姿势扭曲该一系列脉冲中的每一个。变换单元还被配置为基于扭曲的一系列脉冲生成扭曲的第一色场。变换单元还被配置为基于扭曲的一些列脉冲激活顺序显示器上的像素,以显示扭曲的第一色场。

在又一实施例中,一种计算机程序产品体现在非暂时性计算机可读介质中,该计算机可读介质上存储有一系列指令,这些指令在由处理器执行时,使处理器执行用于扭曲多场彩色虚拟内容以进行顺序投射的方法。该方法包括获取具有不同的第一颜色和第二颜色的第一色场和第二色场。该方法还包括确定用于投射扭曲的第一色场的第一时间。该方法还包括预测对应于第一时间的第一姿势。对于第一色场中的第一颜色之中的每一种颜色,该方法包括:(a)识别表示第一色场中的第一颜色之中的一种颜色的输入;(b)将输入重新配置为一系列脉冲,以创建多个每场输入;(c)基于第一姿势扭曲一系列脉冲中的每一个。该方法还包括基于扭曲的一系列脉冲生成扭曲的第一色场。另外,该方法包括基于扭曲的一系列脉冲激活顺序显示器上的像素,以显示扭曲的第一色场。

在一个实施例中,一种用于扭曲多场彩色虚拟内容以进行顺序投射的计算机实现的方法包括获取具有不同的第一颜色和第二颜色的第一色场和第二色场。该方法还包括确定用于投射扭曲的第一色场的第一时间。该方法还包括确定用于投射扭曲的第二色场的第二时间。此外,该方法包括预测第一时间处的第一姿势并预测第二时间处的第二姿势。另外,该方法包括通过基于第一姿势扭曲第一色场来生成扭曲的第一色场。该方法还包括通过基于第二姿势扭曲第二色场来生成扭曲的第二色场。

在一个或多个实施例中,第一色场包括位于X、Y位置处的第一色场信息。第一色场信息可以包括第一颜色的第一亮度。第二色场包括位于X、Y位置处的第二图像信息。第二色场信息可以包括第二颜色的第二亮度。

在一个或多个实施例中,扭曲的第一色场包括位于第一扭曲X、Y位置处的扭曲的第一色场信息。扭曲的第二色场包括位于第二扭曲X、Y位置处的扭曲的第二色场信息。基于第一姿势对于第一色场进行扭曲可以包括将第一变换应用于第一色场以生成扭曲的第一色场。基于第二姿势对于第二色场进行扭曲可以包括将第二变换应用于第二色场以生成扭曲的第二色场。

在一个或多个实施例中,该方法还包括将扭曲的第一和第二色场发送到顺序投射器,并且该顺序投射器顺序地投射扭曲的第一色场和扭曲的第二色场。可以在第一时间投射扭曲的第一色场,并且可以在第二时间投射扭曲的第二色场。

在另一实施例中,一种用于扭曲多场彩色虚拟内容以进行顺序投射的系统,包括:扭曲单元,该扭曲单元用于接收具有不同的第一颜色和第二颜色的第一色场和第二色场,以进行顺序投射。扭曲单元包括姿势估计器,该姿势估计器确定用于投射相应的扭曲的第一和第二色场的第一和第二时间,并且预测相应的第一和第二时间处的第一和第二姿势。扭曲单元还包括变换单元,该变换单元通过基于相应的第一和第二姿势扭曲相应的第一和第二色场来生成扭曲的第一和第二色场。

在又一个实施例中,一种实施在非瞬态计算机可读介质中的计算机程序产品,该计算机可读介质上存储有指令序列,当由处理器执行指令序列时使处理器执行用于扭曲多场彩色虚拟内容以进行顺序投射的方法。该方法包括获取具有不同的第一和第二颜色的第一和第二色场。该方法还包括确定用于投射扭曲的第一色场的第一时间。该方法还包括确定用于投射扭曲的第二色场的第二时间。此外,该方法包括预测第一时间处的第一姿势并预测第二时间处的第二姿势。另外,该方法包括通过基于第一姿势扭曲第一色场来生成扭曲的第一色场。该方法还包括通过基于第二姿势扭曲第二色场来生成扭曲的第二色场。

在又一实施例中,一种用于扭曲多场彩色虚拟内容以进行顺次投射的计算机实现的方法包括获取应用帧和应用姿势。该方法还包括估计第一估计显示时间处应用帧的第一扭曲的第一姿势。该方法还包括使用应用姿势和估计的第一姿势执行应用帧的第一扭曲以生成第一扭曲帧。此外,该方法包括估计第二估计显示时间处第一扭曲帧的第二扭曲的第二姿势。另外,该方法包括使用估计的第二姿势执行第一扭曲帧的第二扭曲以生成第二扭曲帧。

在一个或多个实施例中,该方法包括在约第二估计显示时间处显示第二扭曲帧。该方法还可以包括估计第三估计显示时间处的第一扭曲帧的第三扭曲的第三姿势,并且使用估计的第三姿势来执行第一扭曲帧的第三扭曲以生成第三扭曲帧。第三估计显示时间可以晚于第二估计显示时间。该方法还可以包括在约第三估计显示时间处显示第三扭曲帧。

在另一实施例中,一种用于最小化颜色分离(“CBU”)伪像的计算机实现方法包括基于接收到的眼睛或头部跟踪信息来预测CBU伪像,该方法还包括基于预测的CBU伪像来增加色场速率。

在一个或多个实施例中,该方法包括基于接收到的眼睛或头部跟踪信息和增加的色场速率来预测第二CBU,并且基于预测的第二CBU伪像来减小位深度。该方法还可以包括使用增加的色场速率和减小的位深度来显示图像。方法还可以包括使用增加的色场速率来显示图像。

在详细的描述、附图和权利要求中描述了本公开的附加以及其他的目的、特征和优点。

附图说明

附图示出了本公开的各种实施例的设计和实用性。应当注意,附图未按比例绘制,并且在整个附图中,相似结构或功能的元素由相似的附图标记表示。为了更好地理解如何获得本公开的各个实施例的上述和其他优点和目的,将通过参考其具体实施例来对以上简要描述的本公开进行更详细的描述,这些具体实施例在附图中示出。理解这些附图仅描绘了本公开的典型实施例,并且因此不应被认为是对其范围的限制,将通过使用附图以附加的特征和细节来描述和解释本公开,其中:

图1描绘了根据一些实施例的通过可穿戴AR用户设备的增强现实(AR)的用户视图。

图2A至图2C示意性地描绘了根据一些实施例的AR系统及其子系统。

图3和图4示出了根据一些实施例的具有快速头部运动的渲染伪像(renderingartifact)。

图5示出了根据一些实施例的示例性虚拟内容扭曲。

图6描绘了根据一些实施例的如图5所示扭曲虚拟内容的方法。

图7A和图7B描绘了根据一些实施例的多场(彩色)虚拟内容扭曲及其结果。

图8描绘了根据一些实施例的扭曲多场(彩色)虚拟内容的方法。

图9A和图9B描绘了根据一些实施例的多场(彩色)虚拟内容扭曲及其结果。

图10示意性地描绘了根据一些实施例的图形处理单元(GPU)。

图11描绘了根据一些实施例作为图元(primitive)存储的虚拟对象。

图12描绘了根据一些实施例的扭曲多场(彩色)虚拟内容的方法。

图13是示意性描绘了根据一些实施例的说明性计算系统的框图。

图14描绘了根据一些实施例的用于多场(彩色)虚拟内容的扭曲/渲染管线。

图15描绘了根据一些实施例的在扭曲多场(彩色)虚拟内容中使颜色色分离伪像最小化的方法。

图16A至16B描绘了根据一些实施例的场顺序显示器的时序方面,该场顺序显示器根据头部姿势来显示每个场的均匀子码位深度。

图17描绘了根据一些实施例的场顺序显示器内的分离场的几何位置。

图18A描绘了以灰度等级的国际照明委员会(CIE)1931的配色方案。

图18B描绘了根据一些实施例的根据头部姿势在单个场内的不同子码的几何时序方面。

图19描绘了根据一些实施例的在场顺序显示器内的场子码的几何位置。

图20描绘了根据一些实施例的与像素激活和液晶显示器有关的时序方面。

图21描绘了与场顺序显示器中的颜色时序有关的颜色轮廓效果。

图22描绘了根据一些实施例的将颜色子码调整为公共时序或公共时间关系。

图23描绘了根据一些实施例的基于时间中心在场内产生位深度的顺序脉冲。

图24描绘了非对称子码照射的不利影响。

图25描绘了根据一些实施例的使多场(颜色)虚拟内容扭曲的方法。

具体实施方式

本公开的各种实施例涉及用于在单个实施例或多个实施例中使来自源的虚拟内容扭曲的系统、方法和制品。在详细的描述、附图和权利要求中描述了本公开的其他目的、特征和优点。

现在将参考附图详细描述各种实施例,各种实施例被提供作为本公开的说明性示例,以使得本领域技术人员能够实践本公开。值得注意的是,下面的附图和示例并不意味着限制本公开的范围。在可以使用已知部件(或方法或过程)部分或完全实现本公开的某些元件的情况下,将仅描述理解本公开所必需的这些已知部件(或方法或过程)的那些部分,并且将省略对这些已知部件(或方法或过程)的其他部分的详细描述,以免模糊本公开。此外,各种实施例包含本文中通过说明的方式提及的部件的当前和未来已知等同物。

虚拟内容扭曲系统可以独立于混合现实系统来实现,但是下面的一些实施例仅出于说明性目的而关于AR系统进行描述。此外,这里描述的虚拟内容扭曲系统也可以以与VR系统相同的方式使用。

下面的描述涉及实施扭曲系统所利用的说明性增强现实系统。然而,应该理解,实施例也适用于其他类型的显示系统(包括其他类型的混合现实系统)中的应用,因此实施例不只限于这里公开的说明性系统。

混合现实(例如,VR或AR)情景通常包括与真实世界对象相关的虚拟对象对应的虚拟内容(例如,彩色图像和声音)的呈现。例如,参考图1,描绘了增强现实(AR)场景100,其中AR技术的用户看到以背景中的人、树、建筑为特征的真实世界的物理的公园状的设置102以及真实世界的物理实体平台104。除了这些项目,AR技术的用户还感觉他们“看到”站在物理实体平台104上的虚拟机器人雕像106,以及看起来像飞行的蜜蜂的化身的虚拟卡通式头像角色108,尽管这些虚拟对象106、108不存在于真实世界中。

与AR情景一样,VR情景必须也考虑用于生成/渲染虚拟内容的姿势。准确地将虚拟内容扭曲到AR/VR显示参考帧并对扭曲的虚拟内容进行扭曲可以改善AR/VR情景,或者至少不会减损AR/VR情景。

下面的描述涉及可以实施本公开所利用的说明性AR系统。然而,应该理解,本公开也适用于其他类型的增强现实和虚拟现实系统中的应用,因此本公开不仅限于这里公开的说明性系统。

参照图2A,描绘了根据一些实施例的AR系统200的一个实施例。AR系统200可以与投射子系统208结合来操作,从而提供与用户250的视野中的物理对象互相混合的虚拟对象的图像。该方法采用一个或多个至少部分透明的表面,通过该表面可以看到包括物理对象的周围环境,并且通过该表面AR系统200产生虚拟对象的图像。投射子系统208容纳在控制子系统201中,控制子系统201通过链路207可操作地耦合到显示系统/子系统204。链路207可以是有线或无线通信链路。

对于AR应用,可能期望将各种虚拟对象相对于用户250的视野中的各个物理对象在空间上定位。虚拟对象可以采用多种形式中的任何一种,具有能够表示为图像的任何种类的数据、信息、概念或逻辑构造。虚拟对象的非限制性示例可包括:虚拟文本对象、虚拟数字对象、虚拟字母数字对象、虚拟标签对象、虚拟场对象、虚拟图表对象、虚拟地图对象、虚拟仪器对象、或物理对象的虚拟可视化表示。

AR系统200包括由用户250佩戴的框架结构202;由框架结构202承载的显示系统204,使得显示系统204定位在用户250的眼睛前方;以及结合到显示系统204中或连接到显示系统204的扬声器206。在所示实施例中,扬声器206由框架结构202承载,使得扬声器206定位在用户250的耳道附近(在其中或周围),例如,耳塞或耳机。

显示系统204被设计成向用户250的眼睛呈现基于照片的辐射图案,其可以被舒适地感知为对包括二维和三维内容的周围环境的增强。显示系统204以提供单个连贯(coherent)场景的感知的高频率来呈现帧序列。为此,显示系统204包括投射子系统208和部分透明的显示屏幕,投射子系统208通过该显示屏幕投射图像。显示屏幕位于用户250的眼睛和周围环境之间的用户250的视野中。

在一些实施例中,投射子系统208采用基于扫描的投射设备的形式,并且显示屏幕采用基于波导的显示器的形式,来自投射子系统208的扫描光被注入到该基于波导的显示器中以产生例如位于与无限远相比较近的单个光学观看距离处(例如,手臂的长度)的图像、位于多个离散的光学观看距离或焦平面处的图像,和/或在多个观看距离或焦平面处堆叠的图像层以表示体积3D对象。光场中的这些层可以足够紧密地堆叠在一起,以对于人类视觉子系统显得连续(例如,一层在相邻层的混淆锥(cone of confusion)内)。附加地或替代地,图像元素可以跨越两个或更多个层混合以增加光场中的层之间的过渡的感知连续性,即使这些层更稀疏地堆叠(例如,一个层在相邻层的混淆锥之外)。显示系统204可以是单目的或双目的。扫描组件包括产生光束的一个或多个光源(例如,以限定的图案发射不同颜色的光)。光源可以采用多种形式中的任何一种,例如,一组RGB源(例如,能够输出红色、绿色和蓝色光的激光二极管),该RGB光源能够根据在像素信息或数据的各个帧中指定的限定的像素图案,进行操作以分别产生红色、绿色和蓝色相干准直光。激光提供高色彩饱和度并且高能效。光学耦合子系统包括光学波导输入装置,诸如例如一个或多个反射表面、衍射光栅、反射镜、二向色镜或棱镜,以将光光学地耦合到显示屏幕的端部。光学耦合子系统还包括对于来自光纤的光进行准直的准直元件。可选地,光学耦合子系统包括光学调制装置,该光学调制装置被配置为使来自准直元件的光朝向位于光学波导输入装置的中心处的焦点会聚,从而允许光学波导输入装置的尺寸最小化。因此,显示子系统204生成像素信息的一系列合成图像帧,该系列合成图像帧向用户呈现一个或多个虚拟对象的未失真图像。显示子系统204还生成像素信息的一系列彩色合成子图像帧,该系列彩色合成子图像帧向用户呈现一个或多个虚拟对象的未失真彩色图像。描述显示子系统的进一步细节提供于题为“Display System and Method(显示系统和方法)”(代理人案卷号ML.20006.00)的第14/212,961号美国实用专利申请和题为“Planar Waveguide Apparatus With DiffractionElement(s)and Subsystem Employing Same(具有衍射元件的平面波导装置以及使用该平面波导装置的子系统)”(代理人案卷号ML.20020.00)的第14/331,218号美国实用专利申请,其内容通过引用以其整体明确地并入本文,如同完整阐述一样。

AR系统200还包括安装到框架结构202的一个或多个传感器,用于检测用户250的头部的位置(包括方位)和运动和/或用户250的眼睛位置和瞳孔间距。这样的传感器可以包括图像捕获设备、麦克风、惯性测量单元(IMU)、加速度计、罗盘、GPS单元、无线电设备、陀螺仪等。例如,在一个实施例中,AR系统200包括头戴式换能器子系统,其包括一个或多个惯性换能器以捕获指示用户250的头部的运动的惯性测量。这些设备可以用于感测、测量或收集关于用户250的头部运动的信息。例如,这些设备可用于检测/测量用户250的头部的运动、速度、加速度和/或位置。用户250的头部的位置(包括方位)也被称为用户250的“头部姿势”。

图2A的AR系统200可以包括一个或多个前向相机。相机可用于任何数目的目的,诸如记录来自系统200的前向方向的图像/视频。另外,相机可以用于捕获关于用户250所处的环境的信息,例如指示用户250相对于该环境以及该环境中的特定对象的距离、方位和/或角度位置的信息。

AR系统200还可以包括后向相机,以跟踪用户250的眼睛的角度位置(眼睛或双眼看向的指向)、眨眼和聚焦深度(通过检测眼睛会聚(convergence))。这种眼睛跟踪信息例如可以通过在终端用户的眼睛处投射光并且检测至少一些投射光的返回或反射来辨别。

增强现实系统200还包括控制子系统201,其可以采用多种形式中的任何一种。控制子系统201包括多个控制器,例如一个或多个微控制器、微处理器或中央处理单元(CPU)、数字信号处理器、图形处理单元(GPU),其他集成电路控制器,诸如专用集成电路(ASIC),可编程门阵列(PGA),例如现场PGA(FPGA)和/或可编程逻辑控制器(PLU)。控制子系统201可以包括数字信号处理器(DSP)、中央处理单元(CPU)251、图形处理单元(GPU)252和一个或多个帧缓冲器254。CPU 251控制系统的整体操作,而GPU 252渲染帧(即,将三维场景转化为二维图像)并将这些帧存储在一个或多个帧缓冲器254中。虽然未示出,但是一个或多个附加集成电路可以控制向帧缓冲器254读入帧和/或从帧缓冲器254读出帧以及显示系统204的操作。向帧缓冲器254读入和/或从帧缓冲器254读出可以采用动态寻址,例如,其中帧被过度渲染。控制子系统201还包括只读存储器(ROM)和随机存取存储器(RAM)。控制子系统201还包括三维数据库260,GPU 252可以从该三维数据库260访问用于渲染帧的一个或多个场景的三维数据,以及与包含在三维场景内的虚拟声源相关联的合成声音数据。

增强现实系统200还包括用户方位检测模块248。用户方位模块248检测用户250的头部的瞬时位置,并且可以基于从传感器接收的位置数据来预测用户250的头部的位置。用户方位模块248还跟踪用户250的眼睛,特别是基于从传感器接收的跟踪数据来跟踪用户250聚焦的方向和/或距离。

图2B描绘了根据一些实施例的AR系统200'。图2B中描绘的AR系统200'类似于图2A描绘的和上面的描述的AR系统200。例如,AR系统200'包括框架结构202、显示系统204、扬声器206和通过链路207可操作地耦合到显示系统子204的控制子系统201'。图2B中描绘的控制子系统201'类似于图2A中描绘和上面的描述的控制子系统201。例如,控制子系统201'包括投射子系统208、图像/视频数据库271、用户方位模块248、CPU 251、GPU 252、3D数据库260、ROM和RAM。

图2B中描绘的控制子系统201',进而是AR系统200',与图2A描绘的对应系统/系统组件的差异在于,图2B中描绘的控制子系统201'中存在扭曲单元280。扭曲单元280是独立于GPU 252或CPU 251的单独扭曲块。在其他实施例中,扭曲单元280可以是单独扭曲块中的部件。在一些实施例中,扭曲单元280可以在GPU 252内部。在一些实施例中,扭曲单元280可以在CPU 251内部。图2C示出扭曲单元280包括姿势估计器282和变换单元284。

AR系统200、200'的各种处理组件可以包含在分布式子系统中。例如,AR系统200、200'包括操作地耦合到显示系统204的一部分的本地处理和数据模块(即,控制子系统201、201'),诸如通过有线导线或无线连接207进行耦合。本地处理和数据模块可以以各种配置安装,诸如固定地附接到框架结构202、固定地附接到头盔或帽子、嵌入耳机中、可移除地附接到用户250的躯干、或者在皮带耦合式配置中可移除地附接用户250的臀部。AR系统200、200'还可以包括操作地耦合到本地处理和数据模块的远程处理模块和远程数据储存库,诸如通过有线导线或无线连接进行耦合,使得这些远程模块可操作地彼此耦合并且能够用作本地处理和数据模块的资源。本地处理和数据模块可以包括功率高效的处理器或控制器,以及数字存储器,诸如闪速存储器,两者都可以用于协助处理、缓存和存储从传感器捕获的数据和/或者使用远程处理模块和/或远程数据储存库获取和/或处理的数据,可能用于在这样的处理或获取之后传递到显示系统204。远程处理模块可以包括一个或多个相对强大的处理器或控制器,其被配置为分析和处理数据和/或图像信息。远程数据储存库可以包括相对大规模的数字数据存储设施,其可以通过“云”资源配置中的互联网或其它联网配置可得。在一些实施例中,在本地处理和数据模块中存储全部数据,并且执行全部计算,从而允许从远程模块完全自主使用。上述各种部件之间的耦合可以包括一个或多个有线接口或端口以提供有线或光学通信;或者一个或多个无线接口或端口,诸如经由RF、微波和IR以提供无线通信。在一些实施方式中,所有的通信可以都是有线的,而在一些其他实施方式中,所有的通信可以都是无线的,光纤除外。

当光学系统生成/渲染彩色虚拟内容时,它可以使用在渲染虚拟内容时可能与系统的姿势相关的源参考帧。在AR系统中,所渲染的虚拟内容可以具有与真实物理对象的预定义关系。例如,图3示出了AR情景300,其包括位于真实物理基座312的顶部上的虚拟花盆310。AR系统基于真实基座312的位置是已知的源参考帧来渲染虚拟花盆310,使得虚拟花盆310看起来搁置在真实基座312的顶部上。AR系统可以在第一时间使用源参考帧渲染虚拟花盆310,并且在第一时间之后的第二时间,将渲染的虚拟花盆310显示/投射在输出参考帧处。如果源参考帧和输出参照帧相同,则虚拟花盆310将出现在期望其处于的位置(例如,在真实物理基座312的顶部上)。

然而,如果AR系统的参考帧在渲染虚拟花盆310的第一时间与显示/投射所渲染的虚拟花盆310的第二时间之间的间隙改变(例如,随着快速的用户头部移动),源参考帧和输出参考帧之间的不匹配/差异可能导致视觉伪像/异常/短时干扰(glitch)。例如,图4示出了AR情景400,其包括被渲染位于真实物理基座412的顶部上的虚拟花盆410。然而,因为在虚拟花盆410被渲染之后而在其被显示/投射之前AR系统被快速向右移动,因此虚拟花盆410被显示在其预期位置410'(以虚线示出)的右侧。这样,虚拟花盆410看起来漂浮在真实物理基座412右侧的半空中。当在输出参考帧中重新渲染虚拟花盆时(假设AR系统运动停止),将修复该伪像。然而,一些用户仍然可以看到伪像,其中虚拟花盆410通过暂时跳到不期望的位置而出现短时干扰。这种短时干扰和与其类似的其他情况会对AR场景的连续性错觉产生有害影响。

一些光学系统可以包括扭曲系统,该扭曲系统将源虚拟内容的参考帧从生成虚拟内容的源参考帧扭曲或变换到将显示虚拟内容的输出参考帧。如在图4所描绘的示例中,AR系统可以检测和/或预测(例如,使用IMU或眼睛跟踪)输出参考帧和/或姿势。然后,AR系统可以将渲染的虚拟内容从源参考帧扭曲或变换为输出参考帧中的扭曲的虚拟内容。

图5示意性示出根据一些实施例的虚拟内容的扭曲。由射线510表示的源参考帧(渲染姿势)中的源虚拟内容512被扭曲成由射线510'表示的输出参考帧(估计姿势)中的扭曲虚拟内容512'。图5中描绘的扭曲可以表示头部向右520旋转。当源虚拟内容512设置在源X、Y位置时,扭曲的虚拟内容512'被变换为输出X'、Y'位置。

图6描绘了根据一些实施例的用于扭曲虚拟内容的方法。在步骤612,扭曲单元280接收虚拟内容、基本姿势(即,AR系统200、200'的当前姿势(当前参考帧))、渲染姿势(即,AR系统200、200'用于渲染虚拟内容的姿势(源参考帧))、以及估计的照射时间(即,显示系统204将被照射的估计时间(估计的输出参考帧))。在一些实施例中,基本姿势可以比渲染姿势更新/更近期/更新近。在步骤614,姿势估计器282使用基本姿势和关于AR系统200、200'的信息来估计在估计的照射时间的姿势。在步骤616,变换单元284使用估计的姿势(来自估计的照射时间)和渲染姿势,从接收到的虚拟内容生成扭曲的虚拟内容。

当虚拟内容包括颜色时,一些扭曲系统使用单个输出参考帧中的单个X'、Y'位置(例如,来自单个估计的照射时间的单个估计姿势)来扭曲对应于/形成彩色图像的所有彩色子图像或场。然而,一些投射显示系统(例如,顺序投射显示系统),如一些AR系统中的那些一样,不会同时投射所有彩色子图像/场。例如,每个彩色子图像/场的投射之间可能存在一些延迟。每个彩色子图像/场的投射之间的这种延迟,即照射时间的差异,可能导致在快速头部移动期间最终图像中的彩色条纹伪像。

例如,图7A示意性地示出了根据一些实施例的使用一些扭曲系统的彩色虚拟内容的扭曲。源虚拟内容712具有三个颜色部分:红色部分712R;绿色部分712G;和蓝色部分712B。在该示例中,每个颜色部分对应于彩色子图像/场712R"、712G"、712B"。一些扭曲系统使用由射线710"表示的单个输出参考帧(例如,估计姿势)(例如,对应于绿色子图像及其照射时间t1的参考帧710")来扭曲所有三个彩色子图像712R"、712G"、712B"。然而,一些投射系统并不同时投射彩色子图像712R"、712G"、712B"。相反,彩色子图像712R"、712G"、712B"在三个略微不同的时间投射(在时间t0、t1和t2由射线710'、710”、710”'表示)。子图像的投射之间的延迟的大小可以取决于投射系统的帧/刷新率。例如,如果投射系统具有60Hz或更低(例如,30Hz)的帧速率,则随着快速移动的观看者或对象,延迟可能导致彩色条纹伪像。

图7B示出了根据一些实施例由类似于图7A中所描绘的虚拟内容扭曲系统/方法生成的彩色条纹伪像。因为红色子图像712R”使用由图7A中的射线710”表示的输出参考帧(例如,估计姿势)来扭曲,但是在由射线710'表示的时间t0处投射,所以红色子图像712R”看起来超出(overshoot)了预期的扭曲。这种超出表现为图7B中的右条纹图像712R”。因为绿色子图像712G”使用由图7A中的射线710”表示的输出参考帧(例如,估计的姿势)来扭曲,并且在由射线710”表示的时间t1处投射,因此绿色子图像712G”以预期的扭曲投射。这由图7B中的中心图像712G”表示。因为蓝色子图像712B"使用由图7A中的射线710”表示的输出参考帧(例如,估计的姿势)来扭曲,但是在由射线710”'表示的时间t2处投射,因此蓝色子图像712B”看起来低于(undershoot)预期的扭曲。该低于表现为图7B中的左条纹图像712B”。图7B示出了在用户的脑海中重构扭曲的虚拟内容,包括具有三个重叠的R、G、B色场的身体(即,以彩色渲染的身体)。图7B包括红色右条纹图像颜色分离(“CBU”)伪像712R"、中心图像712G"和蓝色左条纹图像CBU伪像712B"。

为了说明的目的,图7B夸大了超出和低于效应。这些效应的大小取决于投射系统的帧/场速率以及虚拟内容和输出参考帧(例如,估计的姿势)的相对速度。当这些超出和低于效应较小时,它们可能显示为彩色/彩虹条纹。例如,在足够慢的帧速率下,诸如棒球的白色虚拟对象可以具有彩色(例如,红色、绿色和/或蓝色)条纹。代替具有条纹,具有与子图像匹配的选择纯色(例如,红色、绿色和/或蓝色)的虚拟对象可能出现短时干扰(即,看起来在快速移动期间跳跃到不期望的位置并在快速移动之后跳回到预期的位置)。这种纯色虚拟对象还可能看起来在快速移动期间是振动的。

为了解决这些限制和其他限制,这里描述的系统使用与多个彩色子图像/场相对应的多个参考帧来扭曲彩色虚拟内容。例如,图8描绘了根据一些实施例的用于扭曲彩色虚拟内容的方法。在步骤812,扭曲单元280接收虚拟内容、基本姿势(即,AR系统200、200'的当前姿势(当前参考帧))、渲染姿势(即,AR系统200、200'用于渲染虚拟内容的姿势(源参考帧)),以及与显示系统204有关的每子图像/色场(R,G,B)的估计照射时间(即,针对每个子图像显示系统204被照射的估计时间(每个子图像的估计的输出参考帧))。在步骤814,扭曲单元280将虚拟内容分成每个子图像/色场(R,G,B)。

在步骤816R、816G和816B,姿势估计器282使用基本姿势(例如,当前参考帧)和关于AR系统200、200'的信息来估计针对R、G、B子图像/场的相应估计照射时间处的姿势。在步骤818R、818G和818B,变换单元284使用相应的估计的R、G和B姿势和渲染姿势(例如,源参考帧),根据接收到的虚拟内容子图像/色场(R,G,B)来生成R、G和B扭曲的虚拟内容。在步骤820,变换单元284将扭曲的R、G、B子图像/场组合以用于顺序显示。

图9A示意性地示出了根据一些实施例的使用扭曲系统来扭曲彩色虚拟内容。源虚拟内容912与图7A中的源虚拟内容712相同。源虚拟内容912具有三个颜色部分:红色部分912R;绿色部分912G;和蓝色部分912B。每个颜色部分对应于彩色子图像/场912R'、912G"、912B”'。根据本文实施例的扭曲系统使用由射线910'、910"、910”'表示的相应输出参考帧(例如,估计姿势)来扭曲每个对应的彩色子图像/场912R'、912G",912B”'。这些扭曲系统在扭曲彩色虚拟内容时考虑彩色子图像912R'、912G”、912B”'的投射的时序(即,t0、t1、t2)。投射的时序取决于投射系统的帧/场速率,其用于计算投射的时序。

图9B示出了由类似于图9A中所描绘的虚拟内容扭曲系统/方法生成的扭曲彩色子图像912R'、912G”、912B”'。因为红色、绿色和蓝色子图像912R'、912G”、912B”'使用由射线910'、910”、910”'表示的相应输出参考帧(例如,估计姿势)来扭曲,并且在由相同射线910'、910”、910”'表示的时间t0、t1、t2处投射,因此子图像912R'、912G”、912B”'以预期的扭曲投射。图9B示出了根据一些实施例的扭曲虚拟内容的重构,该扭曲虚拟内容包括在用户的脑海中具有三个重叠的R、G、B色场的身体(即,以彩色渲染的身体)。图9B是身体以彩色进行的基本上精确的渲染,因为三个子图像/场912R'、912G"、912B”'在适当的时间以预期的扭曲投射。

根据这里的实施例的扭曲系统使用考虑投射时间/照射时间的对应的参考帧(例如,估计姿势)来扭曲子图像/场912R'、912G”、912B”',而不是使用单个参考帧。因此,根据本文的实施例的扭曲系统将彩色虚拟内容扭曲为不同颜色/场的单独子图像,同时最小化诸如CBU的扭曲相关彩色伪像。彩色虚拟内容的更精确扭曲有助于更真实和可信的AR场景。

图10示意性地描绘了根据一个实施例的示例性图形处理单元(GPU)252,其将彩色虚拟内容扭曲到与各种彩色子图像或场对应的输出参考帧。GPU 252包括输入存储器1010,用于存储所生成的要扭曲的彩色虚拟内容。在一个实施例中,彩色虚拟内容被存储为图元(例如,图11中的三角形1100)。GPU 252还包括命令处理器1012,其(1)从输入存储器1010接收/读取彩色虚拟内容,(2)将彩色虚拟内容划分为彩色子图像并且将这些彩色子图像分为调度单元,以及(3)沿着渲染管线以波或经线(warp)发送调度单元用于并行处理。GPU 252还包括调度器1014,用于从命令处理器1012接收调度单元。调度器1014还确定是来自命令处理器1012的“新工作”还是从渲染管线中的下游返回的“旧工作”(在下面描述)应该在任何特定时间向下发送到渲染管线。实际上,调度器1014确定GPU 252处理各种输入数据的序列。

GPU 252包括GPU核1016,GPU核316具有多个并行可执行核/单元(“着色器核”)1018,用于并行处理调度单元。命令处理器1012将彩色虚拟内容划分为等于着色器核1018的数量的数量(例如,32)。GPU 252还包括“先入先出”(“FIFO”)存储器1020以接收来自GPU核1016的输出。从FIFO存储器1020,输出可以作为“旧工作”被路由回调度器1014,以便插入到由GPU核1016进行的渲染管线附加处理。

GPU 252还包括栅格操作单元(“ROP”),其接收来自FIFO存储器1020的输出并栅格化输出以供显示。例如,彩色虚拟内容的图元可以存储为三角形顶点的坐标。在由GPU核1016处理之后(在此期间的三角形1100的三个顶点1110、1112、1114可以被扭曲),ROP 1022确定哪些像素1116在由三个顶点1110、1112、1114限定的三角形1100内部,并填充彩色虚拟内容中的那些像素1116中。ROP 1022还可以对彩色虚拟内容执行深度测试。为了处理彩色虚拟内容,GPU 252可以包括一个或多个ROP 1022R、1022B、1022G以并行处理不同基色的子图像。

GPU 252还包括缓冲存储器1024,用于临时存储来自ROP 1022的扭曲的彩色虚拟内容。缓冲存储器1024中的扭曲彩色虚拟内容可以包括在输出参考帧中的视场中的一个或多个X、Y位置处的亮度/颜色和深度信息。来自缓冲存储器1024的输出可以作为“旧工作”被路由回调度器1014,以便插入到由GPU核1016进行的渲染管线附加处理,或者用于显示在显示系统的相应像素中。输入存储器1010中的彩色虚拟内容的每个片段由GPU核1016处理至少两次。GPU核1016首先处理三角形1100的顶点1110、1112、1114,然后处理三角形1100内部的像素1116。当输入存储器1010中的彩色虚拟内容的所有片段已经被扭曲并进行深度测试(如果需要)时,缓冲存储器1024将包括在输出参考帧中显示视野所需的所有亮度/颜色和深度信息。

在没有头部姿势改变的标准图像处理中,GPU 252的处理结果是在各个X、Y值(例如,在每个像素处)处的颜色/亮度值和深度值。然而,在头部姿势改变的情况下,虚拟内容被扭曲以符合头部姿势变化。对于彩色虚拟内容,每个彩色子图像单独被扭曲。在用于扭曲彩色虚拟内容的现有方法中,使用单个输出参考帧(例如,对应于绿色子图像)来扭曲对应于彩色图像的彩色子图像。如上所述,这可能导致彩色条纹和其他视觉伪像,例如CBU。

图12描绘了用于扭曲彩色虚拟内容同时最小化诸如CBU的视觉伪像的方法1200。在步骤1202,扭曲系统(例如,GPU核1016和/或其扭曲单元280)确定R、G和B子图像的投射/照射时间。该确定使用与投射系统相关的帧速率和其他特性。在图9A中的示例中,投射时间对应于t0、t1和t2以及射线910'、910"、910”'。

在步骤1204,扭曲系统(例如,GPU核1016和/或其姿势估计器282)预测与R、G和B子图像的投射时间对应的姿势/参考帧。该预测使用各种系统输入,包括当前姿势、系统IMU速度和系统IMU加速度。在图9A中的示例中,R、G、B姿势/参考帧对应于射线t0、t1和t2以及910'、910"、910”'。

在步骤1206,扭曲系统(例如,GPU核1016、ROP 1022和/或其变换单元284)使用在步骤1204预测的R姿势/参考帧来扭曲R子图像。在步骤1208,扭曲系统(例如,GPU核1016、ROP 1022和/或其变换单元284)使用在步骤1204预测的G姿势/参考帧来扭曲G子图像。在步骤1210,扭曲系统(例如,GPU核1016、ROP 1022和/或其变换单元284)使用在步骤1204预测的B姿势/参考帧来扭曲B子图像。使用相应的姿势/参考帧来扭曲单独的子图像/场将这些实施例区别于用于扭曲彩色虚拟内容的现有方法。

在步骤1212,可操作地耦合到扭曲系统的投射系统在步骤1202中确定的R、G和B子图像的投射时间处投射R、G、B子图像。

如上所述,图10中描绘的方法1000也可以在单独的扭曲单元290上执行,该单独的扭曲单元280独立于任何GPU 252或CPU 251。在又一个实施例中,图10中描绘的方法1000可以在CPU 251上执行。在其他实施例中,图10中描绘的方法1000可以在GPU 252、CPU 251和单独的扭曲单元280的各种组合/子组合上执行。图10中描绘的方法1000是能够根据特定时间的系统资源可用性使用各种执行模型来执行的图像处理管线。

使用对应于每个彩色子图像/场的预测姿势/参考帧来扭曲彩色虚拟内容减少了彩色条纹和其他视觉异常。减少这些异常会导致更加逼真和沉浸式的混合现实情景。

图13是根据一些实施例的说明性计算系统1300的框图。计算机系统1300包括总线1306或用于传递信息的其他通信机制,其将子系统和设备进行互联,例如处理器1307、系统存储器1308(例如,RAM)、静态存储设备1309(例如,ROM)、(例如,磁或光)盘碟驱动器1310、通信接口1314(例如,调制解调器或以太网卡)、显示器1311(例如,CRT或LCD)、输入设备1312(例如,键盘)和光标控制。

根据一些实施例,计算机系统1300通过处理器1307执行包含在系统存储器1308中的一个或多个指令的一个或多个序列来执行特定操作。这些指令可以从另一计算机可读/可用介质(例如,静态存储设备1309或盘碟驱动器1310)读入系统存储器1308。在替代实施例中,可以使用硬连线电路代替软件指令或与软件指令组合以实现本公开。因此,实施例不限于硬件电路和/或软件的任何特定组合。在一个实施例中,术语“逻辑”应表示用于实现本公开的全部或部分的软件或硬件的任何组合。

这里使用的术语“计算机可读介质”或“计算机可用介质”是指参与向处理器1307提供指令以供执行的任何介质。这种介质可以采用许多形式,包括但不限于非易失性介质和易失性介质。非易失性介质包括例如光盘或磁盘,例如盘碟驱动器1310。易失性介质包括动态存储器,例如系统存储器1308。

计算机可读介质的常见形式包括例如,软磁盘,软盘,硬盘,磁带,任何其他磁介质,CD-ROM,任何其他光学介质,穿孔卡,纸带,具有孔图案的任何其他物理介质,RAM,PROM,EPROM,FLASH-EPROM(例如,NAND闪存,NOR闪存),任何其他存储器芯片或盒式磁带,或计算机可以读取的任何其他介质。

在一些实施例中,实践本公开的指令序列的执行由单个计算机系统1300执行。根据一些实施例,通过通信链路1315(例如,LAN、PTSN或无线网络)耦合的两个或更多个计算机系统1300可以彼此协调地执行实践本公开所需的指令序列。

计算机系统1300可以通过通信链路1315和通信接口1314发送和接收消息、数据和指令,包括程序,即应用程序代码。接收的程序代码可以在被接收时由处理器1307执行,和/或存储在盘碟驱动器1310或其他非易失性存储器中以供稍后执行。存储介质1331中的数据库1332可用于存储由系统1300通过数据接口1333访问的数据。

图14描绘了根据一些实施例的用于多场(彩色)虚拟内容的扭曲/渲染管线1400。管线1400包含两个方面:(1)多阶段/解耦扭曲和(2)应用帧与照射帧之间的节奏(cadence)变化。

(1)多阶段/解耦扭曲

管线1400包括一个或多个扭曲阶段。在1412处,应用CPU(“客户端”)生成虚拟内容,其由应用GPU 252处理成一个或多个(例如,R、G、B)帧和姿势1414。在1416处,扭曲/合成器CPU及其GPU 252使用针对每帧的第一估计姿势来执行第一扭曲。稍后在管线1400中(即,更接近照射),扭曲单元1420使用针对每帧的第二估计姿势对每个帧1422R、1422G、1422B执行第二扭曲。第二估计姿势可以比相应的第一估计姿势更准确,因为第二估计姿势被确定为更接近照射。两次扭曲的帧1422R、1422G、1422B在t0、t1和t2显示。

第一扭曲可以是最佳猜测,其可以用于对齐虚拟内容的帧以用于稍后的扭曲。这可以是计算密集型扭曲。第二扭曲可以是相应的一次扭曲帧的顺序校正扭曲。第二扭曲可以是计算密集较小的扭曲,以减少第二估计姿势与显示/照射之间的时间,从而提高准确度。

(2)节奏变化

在一些实施例中,客户端或应用程序与显示或照射的节奏(即帧速率)可能不匹配。在一些实施例中,照射帧速率可以是应用帧速率的两倍。例如,照射帧速率可以是60Hz,并且应用帧速率可以是30Hz。

为了解决这种节奏不匹配的扭曲问题,管线1400生成来自应用CPU 1412和GPU252的每帧1414的两组两倍(twice)扭曲帧1422R、1422G、1422B(用于在t0-t2处投射)和1424R、1424G、1424B(用于在t3-t5处投射)。使用相同的帧1414和第一扭曲帧1418,扭曲单元1420顺序地生存第一和第二组两倍扭曲帧1422R、1422G、1422B和1424R、1424G、1424B。这为每个应用帧1414提供了两倍数量的扭曲帧1422、1424。第二次扭曲可以是较小计算密集度的扭曲,以进一步降低处理器/功率需求和发热量。

虽然管线1400描绘了2:1的照射/应用比率,但是该比率可以在其他实施例中变化。例如,照射/应用比率可以是3:1、4:1、2.5:1等。在具有分数比的实施例中,最近生成的应用帧1414可以用在管线中。

图15描绘了根据一些实施例的最小化用于顺序显示的扭曲多场(彩色)虚拟内容中的颜色分离(CBU)伪像的方法1500。在步骤1512,CPU接收眼睛和/或头部跟踪信息(例如,来自眼睛跟踪相机或IMU)。在步骤1514,CPU分析眼睛和/或头部跟踪信息以预测CBU伪像(例如,基于显示系统的特性)。在步骤1516,如果预测到CBU,则方法1500前进到步骤1518,其中CPU增加色场速率(例如,从180Hz增加到360Hz)。在步骤1516,如果未预测到CBU,则方法1500前进到步骤1526,其中使用系统默认色场速率和位深度(例如,180Hz和8位)来显示图像(例如,分割和扭曲的场信息)。

在步骤1518增加色场速率之后,系统在步骤1520重新分析眼睛和/或头部跟踪信息以预测CBU伪像。在步骤1522,如果预测到CBU,则方法1500前进到步骤1524,其中CPU减小位深度(例如,从8位减小到4位)。在减小位深度之后,使用增加的色场速率和减小的位深度(例如,360Hz和4位)来显示图像(例如,分割和扭曲的场信息)。

在步骤1522,如果未预测到CBU,则方法1500前进到步骤1526,其中使用增加的色场速率和系统默认位深度(例如,180Hz和8位)来显示图像(例如,分割和扭曲的场信息)。

在使用调整的或系统默认的色场速率和位深度来显示图像(例如,分割和扭曲的场信息)之后,CPU在返回到步骤1512之前在步骤1528将色场速率和位深度重置为系统默认值以重复方法1500。

通过响应于预测到的CBU来调整色场速率和位深度,图15中描绘的方法1500示出了最小化CBU伪像的方法。方法1500可以与本文描述的其他方法(例如,方法800)组合以进一步减少CBU伪像。虽然图15中描绘的方法1500中的大多数步骤是由CPU执行,这些步骤中的一些或全部可以由GPU或专用部件执行。

现参照图16A,根据一些实施例,示出了相对于头部姿势的变化的说明性场顺序照射序列。如结合图9A所讨论的,输入图像1610具有三个颜色部分:红色部分;绿色部分;和蓝色部分。每个颜色部分对应于输入图像1610的相应彩色子图像/场1620、1630、1640。在一些实施例中,当扭曲彩色虚拟内容时,扭曲系统考虑色场的投射时序t

在红绿蓝(RGB)颜色系统中,可以根据红色、绿色和蓝色场的组合来形成各种颜色。可以使用包括表示红色、绿色和蓝色颜色场中的每一个的整数的代码来表示每种颜色。红色、绿色和蓝色可以每一个使用8位,其具有对应于子码的从0到255的整数值。例如,红色可以表示为(R=255,G=0,B=0),绿色可以表示为(0,255,0),并且蓝色可以表示为(0,0,255)。通过修改代表基色场(红色、绿色、蓝色)数量的整数值,可以形成各种色调。这将在下面更详细地讨论。

图16B示出了对于每个组成色场的全部子码的S形增长到平稳到衰减形式的场位深度图案。例如,对于红色场,全部子码包括具有代码(255,X,Y)的所有颜色,其中x和y每一个可以取0到255之间的任何值。S型函数(例如,场位深度图案)1620′对应于红色场的全部子码,S形函数1630′对应于绿色场的全部子码,并且S形函数1640′对应于蓝色场的全部子码。如图所示,每个S形函数1620′,1630′和1640′具有S形增长段1602、平稳段1604和衰减段1606。

给定源输入图像1610,当用户的头部移动时,红色、绿色和蓝色的色场应当显示有与相应字段位于序列中的给定时间相对应的适当扭曲。在一些实施例中,对于色场的给定位深度,时序被定位在为该色场分配的该色场的显示序列的形心(centroid)处。例如,红色场显示S形函数1620'的形心与在第一时间(t

图17示出了在经历头部姿势改变时相应场的不同时序序列的几何关系。尽管红色场、绿色场和蓝色场的几何位置相互偏移,但变化程度与头部姿势的变化程度一致,从而在给定像素处呈现具有重叠场的更均匀图像,以产生所需的净色场。

图16和17每一个示出了针对组成色场的全部子码的S形增长到平稳到衰减形式的场位深度图案。

然而,将理解,颜色并非简单地被创建为相等组成子码的组合,并且各种颜色需要不同数量的红色、绿色和蓝色子码。例如,看国际照明委员会(CIE)1931颜色方案,在图18A中用1810以灰度表示,任何一种颜色是由子码表示的多个场输入的组合。图16B的S形函数1620′、1630′和1640′表示每个场的最大潜能(例如,对于红色的(255,0,0)、对于绿色的(0,255,0),对于蓝色的(0,0,255)-通过方案1810进行的子编码)。

特定的颜色可能不共享这样的统一子码。例如,粉红色可以具有表示为(255、192、203)的红色255、绿色192和蓝色203的组合;而橙色可以具有表示为(255,165,0)的红色255、绿色165和蓝色0的组合。

组成颜色的子码将相应地具有变化的S形。使用红色色场作为示例性集合,在图18B中,通过S形函数1822、1824和1826示出红色色场的各种子码,每个S形函数对应于不同的子码。例如,由S形函数1822表示的红色(例如(255、10、15))的第一子码在序列中可以是对于整个场时间的是红色,而S形函数1824和1826表示红色的不同子码(即,第二子码(例如,(255、100、100))和第三子代码(例如,(255、150、200)),该红色的不同子码对应于在序列中分配的场时间内在空间光调制器的脉冲下给定像素的更少激活时间。通常在显示技术中,增长阶段的开始对于任何子码都是相同的,但是衰减部分在不同的时间开始。这样,当子码是在序列中场时序的公共开始时间启动时,任何给定子码的特定S形图案和所得形心就会相对彼此移动。

在常规的现场顺序显示系统中,子代码在公共时间启动,使得子代码的S形的形心彼此偏移。如图18B所示,对于由S形函数1822表示的红色的第一子码的形心出现在t

当用户的头部姿势改变时,单个场(即颜色)内的子码的不同形心时间表现为不同的位置,尽管该场的任何扭曲可能会以前其他方式发生,这可能会导致颜色内分离,因为扭曲将施加于该子码的偏移位置。换句话说,由于头部姿势的时序与子码的形心图案时序不匹配,因此意图为粉红色的像素可能从意图为橙色的像素在几何上偏移。

图19更具体地示出了对于具有各种子码可能性的单个场的该原理,因为用户的头部位置在t

在一些实施例中,这通过具有越来越小的头部姿势样本来校正,以允许任何给定的颜色子码具有针对给定的头部姿势被计时的S形形心。例如,可以计算出针对t

根据一些实施例,给定子码的S形函数形状可以被混合。各种显示系统和空间光调制器采用不立即响应输入的介质和组件。图20示出了在某些系统中可能发生的示例性滞后。例如,对于硅上液晶(LCoS)显示器,当给定像素可以被激活时,给定液晶层可以在启动S形中引起延迟t

为了在不牺牲过多的计算能力的情况下减轻这些时序问题,在一些实施例中,表示子码的每个S形的形心在时间上被修改为对应于公共场的所有子码的公共头部姿势时间。如图22中所描绘的,不是在公共源时间启动,而是在不同时间启动子码,以在公共时间t

在一些实施例中,不是创建单个子码输入(诸如由图22的单个S型函数1826表示的第二子码),而是一系列脉冲创建一个或多个每场输入。在图23中,中心脉冲2302以顺序显示的帧内的场的时序(t

从中心脉冲2302在时间t

从在时间t

在一些实施例中,时间t

如图23中所描绘的,第二脉冲2304在t

图23示出了三个离散脉冲2302、2304、2306,其从表示给定颜色子码(例如,由图22的单个S形函数1826表示的颜色子码)的S形函数的时间t

图23中所示的脉冲2302、2304、2306可以与用于扭曲多场彩色虚拟内容以用于顺序投射的计算机实现的方法结合使用。例如,当获得具有不同的第一和第二颜色(例如,红色、蓝色或绿色的子码)的第一和第二色场(例如,红色、蓝色或绿色的一个或多个)时,可以确定用于扭曲的第一色场的投射的第一时间。在预测对应于第一时间(例如,时间t

在一些实施例中,中心脉冲2302可以包括从中心向外布置的一系列短时隙(ts

根据一些实施例,第二脉冲2304和第三脉冲2306可以包括比中心脉冲2302的时隙(ts

在一些实施例中,可以在第二脉冲2304和/或第三脉冲2306的时隙的子集期间激活顺序显示器上的像素。当在第二脉冲2304和第三脉冲2306中打开时隙以产生更高的色码时,应注意将第二脉冲2304中的时隙第三脉冲2306的相应时隙一起打开,以保持色码中的整体形心。如果系统限制要求(通常如此)为相邻代码打开第二脉冲2304或第三脉冲2306中的单个时隙,则应注意使该额外的时隙保持较短,或使用空间/时间抖动来防止光能量从形心太大偏移。这还避免了头部或眼睛运动产生的额外轮廓伪影。

中心脉冲2302可以被认为是数字色码的最低有效位(LSB),而第二脉冲2304和第三脉冲2306类似于数字色码的最高有效位(MSB)。中心脉冲2302与第二脉冲2304和第三脉冲2306的组合产生许多可用于构建256个调制步骤的组合。

为了获得最大亮度,可能需要为最高调制步骤创建单个脉冲,从而将中央脉冲2302、第二脉冲2304和第三脉冲2306合并。在从三个脉冲到一个脉冲的过渡中,较小的时隙可以打开以使步长保持较小。在这种情况下,可以在第二脉冲2304的开始处添加较小的时隙,其从较晚到较早布置。例如,如图23所示,可以将时隙ts

由于许多光调制器(例如LCoS、扫描显示器中的激光器、数字光处理(DLP)、液晶显示器(LCD)和/或其他显示技术)具有不对称的开启时间和关闭时间,这三个脉冲长度和脉冲的布置可能需要不对称,以便使形心保持在固定点。例如,如果打开时间长于关闭时间,则形心在场内将晚于中心时间。根据各种实施例,可以以类似的方式利用不对称的时隙长度和布置来构造三个脉冲中的每一个。

中心脉冲2302的脉冲长度与第二和第三脉冲2304、2306的脉冲长度的组合可产生多于256种可能的组合。这些组合的子集用于创建256个调制步骤。可以基于许多因素来选择组合,这些因素包括:与所需亮度响应曲线(即,线性伽马、标准红绿蓝(sRGB)伽马)最接近的匹配、跨所有色码的形心的最小变化、针对相邻色码的形心的最小变化、以及针对跨温度和过程的该组合的较小亮度变化。

由于开启和关闭时间可能随温度、电压、工艺和其他变量而变化,因此可以针对不同条件选择256个组合的不同组。例如,当设备第一次开启时,可以选择用于低温的第一组,而当设备已经加热并达到稳态温度时,可以选择不同的第二组。可以使用任意数量的组来限制轮廓并在整个工作条件下最大化图像质量。

在一些实施例中,图23中的位深度时序的对称性质防止过亮或过暗的条痕,因为子码之间的干扰被减轻(取决于头部姿势从左到右的运动方向)。即,如果未在时间上调整子码,并且用户在特定方向上移动其头部,则特定子码的位可能会出现在呈现颜色信息的位置,其中,不期望通过针对子码的位深度S形形式的不当时序简单地出现。如图24所示,区域2250描绘了这样的一个区域:在该区域中,当同一场中的另外两个子码2402和2404处于衰减阶段时,头部运动可以使特定的子码2406呈现颜色,并且当任何子码中没有颜色意图基于给定的头部姿势时序样本显示给用户时无意地显示像素。本领域的技术人员将理解,附加的配置是可能的,以建立一个或多个子码的期望的位深度。

图25描绘了根据一些实施例的扭曲着色虚拟内容的方法。在图25中描绘的步骤可以针对每个色场(R、G、B)执行。在一些实施例中,在图25中描绘的步骤可以作为步骤816R、816G和/或816B的子步骤来执行。

每个色场(R、G、B)包括一种或多种颜色,每种颜色由子码表示。对于所选色场的一种或多种颜色之中的每种颜色(例如,子码),在步骤2502,姿势估计器识别表示该色场的子码的输入(例如,S形)。在步骤2504,姿势估计器将输入重新配置为一系列脉冲(例如,三个脉冲),从而创建一个或多个每场输入。在步骤2506,变换单元基于第一姿势扭曲该一系列脉冲中的每一个。在步骤2508,变换单元基于扭曲的一系列脉冲生成扭曲的第一色场。在步骤2510,变换单元基于扭曲的一系列脉冲激活顺序显示器上的像素以显示扭曲的第一色场。可以对所有色场(R、G、B)执行相同的步骤2502-2510。

本公开包括可以使用主题设备执行的方法。这些方法可以包括提供这种适当设备的行动。这样的提供可以由用户执行。换句话说,“提供”行动仅仅需要用户获取、访问、靠近、定位、设置、激活、加电或以其他方式行动以提供主题方法中的必要设备。在此所述的方法可以以逻辑上可能的所述事件的任何顺序以及所述事件的顺序来执行。

上面已经阐述了本公开的示例方面以及关于材料选择和制造的细节。关于本公开的其他细节,这些可以结合上面引用的专利和出版物以及本领域技术人员通常已知或理解到的来理解。就通常或逻辑使用的附加行动而言,这对于本公开的基于方法的方面可以是相同的。

另外,虽然已经参考可选地并入各种特征的若干示例描述了本公开,但是本公开不限于如针对本公开的每个变型所期望描述或指示的那样。在不脱离本公开的真实精神和范围的情况下,可以对所描述的公开进行各种改变并且可以替换等同物(无论是否在此列举或者为了简洁起见而未被包括的)。此外,在提供数值范围的情况下,应当理解的是,在该范围的上限和下限之间的每个中间值以及在所述范围内的任何其他规定值或中间值都包含在本公开内。

此外,可以设想,所描述的创造性改变的任何可选特征可以独立地陈述和要求保护,或与在此描述的任何一个或多个特征组合。参考单数项目,包括存在多个相同项目的可能性。更具体地,如在此以及与此相关的权利要求书中所使用的,除非另有特别说明,否则单数形式“一”、“一个”、“所述”和“该”包括复数指示物。换言之,物品的使用允许以上描述以及与本公开相关联的权利要求中的主题项目的“至少一个”。进一步指出,可以起草这些权利要求以排除任何可选元素。因此,该陈述旨在用作如“仅仅”、“只”等的排他术语与权利要求要素的陈述相结合地使用或“否定”限制的使用有关的先行基础。

在不使用这种排他术语的情况下,在与本公开相关联的权利要求中的术语“包括”应允许包含任何附加要素——无论在这些权利要求中是否列举了给定数目的要素,或者可以将特征的添加认为是对这些权利要求中阐述的要素的性质进行变换。除在此明确定义外,在此使用的所有技术和科学术语将在保持权利要求的有效性的同时尽可能广义地被理解。

本公开的广度不限于所提供的示例和/或本说明书,而是仅限于与本公开相关联的权利要求语言的范围。

在前述说明书中,已经参考其具体实施例描述了本公开。然而,应该清楚的是,在不脱离本公开的更宽广的精神和范围的情况下可以进行各种修改和改变。例如,参考过程动作的特定顺序来描述上述过程流程。然而,可以改变许多所描述的过程动作的顺序而不影响本公开的范围或操作。这些说明和附图相应地被认为是说明性的而不是限制性意义。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号