CN110431599A - 具有虚拟内容扭曲的混合现实系统及使用该系统生成虚拟内容的方法 - Google Patents

具有虚拟内容扭曲的混合现实系统及使用该系统生成虚拟内容的方法 Download PDF

Info

Publication number
CN110431599A
CN110431599A CN201880018442.5A CN201880018442A CN110431599A CN 110431599 A CN110431599 A CN 110431599A CN 201880018442 A CN201880018442 A CN 201880018442A CN 110431599 A CN110431599 A CN 110431599A
Authority
CN
China
Prior art keywords
virtual content
distortion
location
reference frame
existing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201880018442.5A
Other languages
English (en)
Other versions
CN110431599B (zh
Inventor
R·诺拉伊
R·B·泰勒
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Magic Leap Inc
Original Assignee
Magic Leap Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Magic Leap Inc filed Critical Magic Leap Inc
Publication of CN110431599A publication Critical patent/CN110431599A/zh
Application granted granted Critical
Publication of CN110431599B publication Critical patent/CN110431599B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/18Image warping, e.g. rearranging pixels individually
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/20Perspective computation
    • G06T15/205Image-based rendering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/40Hidden part removal
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/10Constructive solid geometry [CSG] using solid primitives, e.g. cylinders, cubes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/006Mixed reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/44Morphing

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Graphics (AREA)
  • Geometry (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Processing Or Creating Images (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Image Generation (AREA)

Abstract

一种用于使虚拟内容扭曲的计算机实现的方法包括通过将源虚拟内容进行变换来生成扭曲的虚拟内容。该方法还包括确定与输出参考帧中的扭曲的虚拟内容的X、Y位置对应的存储器位置是否被预先存在的虚拟内容占用。该方法还包括如果存储器位置未被占用,则将扭曲的虚拟内容存储在存储器位置中。此外,该方法包括,如果存储位置被占用,则比较扭曲的虚拟内容和预先存在的虚拟内容的相应Z位置,以识别具有更靠近观看位置的Z位置的虚拟内容。该方法还包括,如果扭曲的虚拟内容的Z位置比预先存在的虚拟内容的预先存在Z位置更靠近观看位置,则将扭曲的虚拟内容存储在与X、Y位置对应的存储器位置中。

Description

具有虚拟内容扭曲的混合现实系统及使用该系统生成虚拟内 容的方法
技术领域
本公开涉及具有虚拟内容扭曲的混合现实系统,以及使用该系统生成包括扭曲的虚拟内容的混合现实体验的方法。
背景技术
现代计算和显示技术促进了用于所谓的“虚拟现实(VR)”或“增强现实(AR)”体验的“混合现实(MR)”系统的开发,其中数字再现的图像或其部分以其看起来是或可能被感知为是真实的方式呈现给用户。VR情景通常涉及呈现数字或虚拟图像信息而对于实际的现实世界视觉输入不透明。AR情景通常涉及呈现数字或虚拟图像信息作为对于用户周围的真实世界的可视化的增强(即,对于真实世界视觉输入透明)。因此,AR情景涉及呈现数字或虚拟图像信息而对于现实世界视觉输入透明。
各种光学系统在各种深度处生成图像,用于显示MR(VR和AR)情景。在2014年11月27日提交的美国实用专利申请序列号14/555,585(代理人案卷号ML.20011.00)中描述了一些这样的光学系统,其内容通过引用明确且全部并入本文,如同全文阐述。
MR系统通常采用可穿戴显示设备(例如,头戴式显示器、头盔式显示器或智能眼镜),其至少松散地耦合到用户的头部,并因此在用户的头部移动时移动。如果显示设备检测到用户的头部运动,则可以更新正在显示的数据以考虑头部姿势的变化(即,用户头部的方位和/或位置)。
作为示例,如果佩戴头戴式显示设备的用户在显示设备上观看虚拟对象的虚拟表示,并在该虚拟对象出现的区域周围走动,则可以针对每个视点渲染该虚拟对象,从而给予用户他们在占据真实空间的对象周围走动的感觉。如果头戴式显示设备用于呈现多个虚拟对象,则可以使用头部姿势的测量来渲染场景以与用户动态变化的头部姿势相匹配并提供增加的沉浸感。然而,渲染场景和显示/投影渲染的场景之间存在不可避免的延迟。
能够进行AR的头戴式显示设备提供真实对象和虚拟对象的同时观看。利用“光学透视”显示器,用户可以透视显示系统中的透明(或半透明)元件,以直接观看来自环境中的真实对象的光。透明元件,通常被称为“组合器”,将来自显示器的光叠加在用户的现实世界视图上,其中来自显示器的光将虚拟内容的图像投影在环境中真实对象的透视视图上。相机可以安装在头戴式显示设备上,以捕获用户正在观看的场景的图像或视频。
当前的光学系统,例如MR系统中的光学系统,光学地渲染虚拟内容。内容是“虚拟的”,因为它不对应于位于空间中的相应位置的真实物理对象。相反,虚拟内容当被引导到用户眼睛的光束刺激时仅存在于头戴式显示设备的用户的大脑(例如,光学中心)中。
MR系统尝试呈现照片般逼真的沉浸式MR情景。然而,虚拟内容的生成与所生成的虚拟内容的显示之间的延迟时间,与在延迟时间期间的头部移动相结合,可以导致MR情景中的视觉伪像(例如,毛刺)。在延迟时间期间快速的头部运动加剧了这个问题。
为了解决该问题,一些光学系统可以包括从源接收源虚拟内容的扭曲(warping)软件/系统。然后,扭曲系统对于所接收的源虚拟内容进行“扭曲”(即,变换其参考帧(frameof reference)),以便显示在显示系统/观看者的参考帧(“显示参考帧”)中。扭曲或变换会改变呈现虚拟内容的参考帧。该方法采用最初渲染的虚拟内容,并且转变呈现虚拟内容的方式以尝试从不同的角度显示虚拟内容。
一些扭曲软件/系统在两个处理轮次(pass)中对于源虚拟内容进行扭曲。扭曲系统在第一轮次中将源虚拟内容中形成3-D情景的所有源子部分进行扭曲。扭曲系统还在第一轮次中执行深度测试以生成深度数据,但深度测试在源参考帧中执行。扭曲系统存储由形成3-D情景的源子部分的变换而产生的所有扭曲的子部分及其在第一轮次中的源参考帧中的相对深度(例如,在列表中)。
在扭曲期间,3-D情景的两个或更多个不同子部分可以扭曲/投影到(即,被分配到)最终显示图像的相同像素中。这些子部分是“冲突的”,并且扭曲系统必须解决冲突以生成逼真的二维显示图像。
在第一轮次之后,一些扭曲的子部分可能相对于最终的2-D显示图像的像素冲突。然后,扭曲系统遍及在第一轮次中存储的中间扭曲数据执行第二轮次,以分析冲突的扭曲子部分的深度测试数据,从而识别最靠近输出参考帧中的观看位置的扭曲子部分。最靠近输出参考帧中的观看位置的冲突扭曲子部分被用于生成最终的2-D显示图像。其余的冲突扭曲子部分将被丢弃。然而,这种用于使来自源的虚拟内容扭曲的多轮次系统在计算上可能是昂贵的(导致处理器/存储器相关的系统限制)并且耗时(导致系统延滞)。
发明内容
在一个实施例中,用于使虚拟内容扭曲的计算机实现的方法包括通过将源虚拟内容进行变换来生成扭曲的虚拟内容。该方法还包括确定输出参考帧中的与扭曲的虚拟内容的X、Y位置对应的存储器位置是否被预先存在的虚拟内容占用。该方法还包括,如果存储器位置未被预先存在的虚拟内容占用,则将扭曲的虚拟内容存储在存储器位置中。此外,该方法包括,如果存储器位置被预先存在的虚拟内容占用,则比较扭曲的虚拟内容和预先存在的虚拟内容的相应Z位置,以识别输出参考帧中具有更靠近观看位置的Z位置的虚拟内容。另外,该方法包括,如果输出参考帧中的扭曲的虚拟内容的Z位置比预先存在的虚拟内容的预先存在Z位置更靠近观看位置,则将扭曲的虚拟内容存储在与X、Y位置对应的存储器位置中。
在一个或多个实施例中,还包括:如果输出参考帧中的预先存在的虚拟内容的预先存在的Z比扭曲的虚拟内容的Z位置更靠近于观看位置,则丢弃扭曲的虚拟内容。生成扭曲的虚拟内容,确定存储器位置是否被占用,如果存储器位置被占用则比较相应的Z位置,以及将扭曲的虚拟内容存储在存储器中全部可以一个轮次中发生。
在一个或多个实施例中,将虚拟内容进行变换包括通过将图像的像素进行映射来生成像素图。变换还可以包括将像素图划分为多个基元。变换还可以包括对于多个基元中的一个基元执行到输出参考帧中的变换。虚拟内容可以是多个基元中的一个基元。多个基元中的每一个基元可以是四边形、三角形和/或像素。变换可以是傅里叶变换。
在一个或多个实施例中,该方法还包括使用与输出参考帧不同的源参考帧生成源虚拟内容。虚拟内容可以从源参考帧被变换到输出参考帧。相应的Z位置可以是在与用于生成虚拟内容的源参考帧不同的输出参考帧中。
在一个或多个实施例中,虚拟内容包括图像信息和源参考帧中的源X、Y位置。图像信息可以包括亮度、颜色和/或源参考帧中的Z位置。扭曲的虚拟内容可以包括输出参考帧中的输出X、Y位置。
在另一实施例中,用于扭曲虚拟内容的系统包括用于存储源虚拟内容的输入存储器。该系统还包括命令处理器,用于将源虚拟内容划分为多个调度单元。该系统还包括用于确定处理序列的调度器。此外,该系统包括GPU核,该GPU核具有多个着色器核以处理多个调度单元中的一个从而生成扭曲的虚拟内容。此外,该系统包括FIFO存储器,用于存储来自GPU核的输出。该系统还包括ROP,用于栅格化扭曲的虚拟内容以供显示。该系统还包括缓冲存储器,用于临时存储扭曲的虚拟内容。当暂时存储在缓冲存储器中的预先存在的虚拟内容与扭曲的虚拟内容冲突时,ROP将预先存在的虚拟内容和扭曲的虚拟内容的相应Z位置进行比较。
在一个或多个实施例中,源虚拟内容包括源参考帧中的源X、Y值。扭曲的虚拟内容可以包括输出参考帧中的输出X、Y值。
在又一个实施例中,一种实施在非瞬态计算机可读介质中的计算机程序产品,该计算机可读介质上存储有指令序列,当由处理器执行指令序列时使处理器执行用于扭曲虚拟内容的方法。该方法包括通过将源虚拟内容进行变换来生成扭曲的虚拟内容。该方法还包括确定输出参考帧中的与扭曲的虚拟内容的X、Y位置对应的存储器位置是否被预先存在的虚拟内容占用。该方法还包括,如果存储位置未被预先存在的虚拟内容占用,则将扭曲的虚拟内容存储在存储器位置中。此外,该方法包括,如果存储器位置被预先存在的虚拟内容占用,则比较扭曲的虚拟内容和预先存在的虚拟内容的相应Z位置,以识别输出参考帧中具有更靠近观看位置的Z位置的虚拟内容。另外,该方法包括,如果输出参考帧中的扭曲的虚拟内容的Z位置比预先存在的虚拟内容的预先存在Z位置更靠近观看位置,则将扭曲的虚拟内容存储在与X、Y位置对应的存储器位置中。
在一个或多个实施例中,计算机程序产品是API。
在又一个实施例中,用于扭曲虚拟内容的系统包括用于生成扭曲虚拟内容的扭曲单元。扭曲单元包括姿势估计器和变换单元。该系统还包括合成单元,该合成单元包括混合单元。该系统还包括用于临时存储扭曲的虚拟内容的数据库。当暂时存储在数据库中的预先存在的虚拟内容与扭曲的虚拟内容冲突时,合成单元的混合单元比较预先存在的虚拟内容和扭曲的虚拟内容的相应Z位置。
在详细的描述、附图和权利要求中描述了本公开的附加以及其他的目的、特征和优点。
附图说明
附图示出了本公开的各种实施例的设计和实用性。应该注意的是,附图未按比例绘制,并且贯穿附图相似结构或功能的要素由相同的附图标记表示。为了更好地理解如何获得本公开的各种实施例的上述和其他优点及目的,将参考在附图中示出的其特定实施例来呈现上面简要描述的本公开的更详细描述。应理解,这些附图仅描绘了本公开的典型实施例,因此不应认为是对其范围的限制,将通过使用附图以附加的特殊性和细节来描述和解释本公开,附图中:
图1描绘了根据一些实施例的通过可穿戴AR用户设备的增强现实(AR)的用户视图。
图2A至图2D示意性地描绘了根据一些实施例的AR系统及其子系统。
图3和图4示出了根据一些实施例的具有快速头部运动的渲染伪像。
图5至图8示出了根据一些实施例的对虚拟内容进行扭曲的各个方面。
图9示意性地描绘了根据一些实施例的图形处理单元(GPU)。
图10描绘了根据一些实施例作为基元存储的虚拟对象。
图11描绘了根据一些实施例的用于扭曲虚拟内容的方法。
图12是示意性描绘了根据一些实施例的示例计算系统的框图。
具体实施方式
本公开的各种实施例涉及用于在单个实施例或多个实施例中使虚拟内容扭曲的系统、方法和制品。在详细的描述、附图和权利要求中描述了本公开的其他目的、特征和优点。
现在将参考附图详细描述各种实施例,各种实施例被提供作为本公开的说明性示例,以使得本领域技术人员能够实践本公开。值得注意的是,下面的附图和示例并不意味着限制本公开的范围。在可以使用已知部件(或方法或过程)部分或完全实现本公开的某些元件的情况下,将仅描述理解本公开所必需的这些已知部件(或方法或过程)的那些部分,并且将省略对这些已知部件(或方法或过程)的其他部分的详细描述,以免模糊本公开。此外,各种实施例包含本文中通过说明的方式提及的部件的当前和未来已知等同物。
虚拟内容扭曲系统可以独立于混合现实系统来实现,但是下面的一些实施例仅出于说明性目的而关于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的眼睛前方,并且扬声器206结合到显示系统204中或连接到显示系统204。在所示实施例中,扬声器206由框架结构202承载,使得扬声器206(例如,耳塞或耳机)定位在用户250的耳道附近(在其中或周围)。
显示系统204被设计成向用户250的眼睛呈现基于照片的辐射图案,其可以被舒适地感知为包括二维和三维内容的对于周围环境的增强。显示系统204以提供单个连贯(coherent)场景的感知的高频率来呈现帧序列。为此,显示系统204包括投影子系统208和部分透明的显示屏幕,投影子系统208通过该显示屏幕投影图像。显示屏幕位于用户250的眼睛和周围环境之间的用户250的视野中。
在一些实施例中,投影子系统208采用基于扫描的投影设备的形式,并且显示屏幕采用基于波导的显示器的形式,来自投影子系统208的扫描光被注入到该基于波导的显示器中以产生例如位于与无限远相比较近的单个光学观看距离处(例如,手臂的长度)的图像,位于多个离散的光学观看距离或焦平面处的图像,和/或在多个观看距离或焦平面处堆叠的图像层以表示体积3D对象。光场中的这些层可以足够紧密地堆叠在一起,以对于人类视觉子系统显得连续(例如,一层在相邻层的混淆锥(cone of confusion)内)。附加地或替代地,图像元素可以跨越两个或更多个层混合以增加光场中的层之间的过渡的感知连续性,即使这些层更稀疏地堆叠(例如,一个层在相邻层的混淆锥之外)。显示系统204可以是单眼的或双目的。扫描组件包括产生光束的一个或多个光源(例如,以限定的图案发射不同颜色的光)。光源可以采用多种形式中的任何一种,例如,一组RGB源(例如,能够输出红色、绿色和蓝色光的激光二极管),该RGB光源能够根据在像素信息或数据的各个帧中指定的限定的像素图案,进行操作以分别产生红色、绿色和蓝色相干准直光。激光提供高色彩饱和度并且高能效。光学耦合子系统包括光学波导输入装置,例如一个或多个反射表面、衍射光栅、反射镜、二向色镜或棱镜,以将光光学地耦合到显示屏的端部。光学耦合子系统还包括对于来自光纤的光进行准直的准直元件。可选地,光学耦合子系统包括光学调制装置,该光学调制装置被配置为使来自准直元件的光朝向位于光学波导输入装置的中心处的焦点会聚,从而允许光学波导输入装置的尺寸最小化。因此,显示系统204生成像素信息的一系列合成图像帧,该系列合成图像帧向用户呈现一个或多个虚拟对象的未失真图像。描述显示子系统的进一步细节提供于题为“Display System and Method(显示系统和方法)”(代理人案卷号ML.20006.00)的第14/212,961号美国实用专利申请和题为“Planar WaveguideApparatus With Diffraction Element(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访问用于渲染帧的一个或多个场景的三维数据,以及与包含在三维场景内的虚拟声源相关联的合成声音数据。
控制AR增强现实子系统2010还包括用户方位检测模块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'中存在块290。块290是独立于GPU 252或CPU 251的独立扭曲块。如图2C中所示,块290包括扭曲单元280、数据库292和合成单元294。合成单元294包括混合单元296。如图2D所示,扭曲单元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的第二时间之间的间隙改变(例如,随着快速的用户头部移动),源参考帧和输出参考帧之间的不匹配/差异可能导致视觉伪像/异常/毛刺。例如,图4示出了AR情景400,其包括被渲染位于真实物理基座412的顶部上的虚拟花盆410。然而,因为在虚拟花盆410被渲染之后而在其被显示/投影之前AR系统被(快速)向右移动,虚拟花盆410被显示在其预期位置410'(以虚线示出)的右侧。这样,虚拟花盆410看起来漂浮在真实物理基座412右侧的半空中。当在输出参考帧中重新渲染虚拟花盆时(假设AR系统运动停止),将修复该伪像。然而,一些用户仍然可以看到伪像,其中虚拟花盆410通过暂时跳到意外位置而出现毛刺。这种毛刺和与其类似的其他情况会对AR场景的连续性错觉产生有害影响。
一些光学系统可以包括扭曲系统,该扭曲系统将来自从其中生成虚拟内容的源参考帧的源虚拟内容的参考帧扭曲或变换到将在其中显示虚拟内容的输出参考帧。如图4所示的示例中,AR系统可以检测和/或预测(例如,使用IMU或眼睛跟踪)输出参考帧和/或姿势。然后,AR系统可以将来自源参考帧的渲染的虚拟内容扭曲或变换为输出参考帧中的扭曲的虚拟内容。
一些扭曲软件/系统在两个处理轮次(pass)中对源虚拟内容进行扭曲。参考图5至图7中的示例,AR系统在第一轮次中对在源虚拟内容中形成3-D情景的所有源子部分(例如,形成棋子510和立方体512的基元)进行扭曲。第一轮次形成扭曲的虚拟内容(例如,扭曲的棋子510'和扭曲的立方体512')。棋子510和立方体512在图5至图7中以虚线示出,以便表示它们在源参考帧中并且不会显示。相反,将在输出参考帧中显示扭曲的棋子510'和扭曲的立方体512'(以实线示出)。一些扭曲系统还在第一轮次中深度测试所有子部分(例如,形成扭曲的棋子510'和扭曲的立方体512'的每个基元)以生成深度数据。在深度测试之后,AR系统存储第一轮次的源参考帧中的所有扭曲的子部分(例如,基元)及其相对深度(例如,在列表中)。在第一轮次结束时,可以将扭曲的虚拟内容存储为输出虚拟内容中的每个X、Y位置(例如,像素)处的所有亮度/颜色的列表,包括冲突的扭曲虚拟数据的所有实例。
然后,扭曲系统在第二轮次中解析所存储的扭曲子部分和相对深度(例如,列表)的每个X、Y位置处的所有冲突的虚拟数据。当3D情景的两个或更多个不同子部分(例如,棋子510和立方体512)被扭曲到输出参考帧(例如,扭曲的棋子510'和扭曲的立方体512')中时,这些子部分中的部分可能扭曲/投影到(即,被分配到)最终显示图像的相同像素。例如,图6中的区域514表示扭曲的棋子510'和扭曲的立方体512'的“冲突”部分。扭曲系统在生成输出虚拟内容时解析/协调扭曲虚拟内容的这些冲突部分。
在一些实施例中,如果扭曲的棋子510'和扭曲的立方体512'的相应像素(例如,第一和第二虚拟内容)将显示在显示器的相同像素上(即,碰撞像素),则扭曲系统可以比较与相应的碰撞/冲突像素对应的存储深度数据。更靠近输出参考帧中的观看位置的碰撞像素(例如,扭曲的虚拟内容)被显示(假设内容是不透明的)。最靠近输出参考帧中的观看位置的碰撞像素用于生成最终显示图像。剩余的碰撞像素被丢弃。
在图7所示的一个实例中,扭曲的棋子510'比扭曲的立方体512'更靠近用户。这样,当扭曲的棋子510'和扭曲的立方体512'的像素碰撞时,扭曲的棋子510'的像素被显示在输出内容中。如图8所示的另一实例中,扭曲的立方体512'比扭曲的棋子510'更靠近用户。这样,当扭曲的棋子510'和扭曲的立方体512'的像素碰撞时,扭曲的立方体512'的像素显示在输出内容中。因为一些扭曲系统在源参考帧中生成深度数据,所以第二轮次中的深度比较涉及多个变换并且比直接比较更复杂。
该两轮次系统对虚拟内容进行扭曲并且解析碰撞/冲突的扭曲虚拟内容以进行显示(例如,在真实的AR情景中)。然而,这种两轮次系统在计算上是昂贵的(导致处理器/存储器相关的系统限制)并且耗时(导致系统延滞)。所需的计算费用和时间随着必须扭曲以进行显示的3-D场景的复杂性而增加。当前扭曲软件/系统随着情景复杂性增加而增加的时间要求可能与诸如一些混合现实系统的实时系统不兼容。此外,一些扭曲软件/系统随着场景复杂性增加而增加的计算开销可能在尺寸、功率、热量和其他处理相关限制中表现出来,这些可能与诸如一些混合现实系统的便携式系统不兼容。
为了解决这些限制,这里描述的系统在单个轮次中对虚拟内容扭曲并且协调冲突的虚拟内容。基于源参考帧将虚拟内容扭曲到显示参考帧。协调冲突的扭曲虚拟内容包括对输出虚拟内容的特定像素中的所有扭曲的虚拟内容进行深度测试以供显示。与一些扭曲系统不同,根据本文的实施例的深度测试在输出参考帧中进行。
说明性图形处理单元
图9示意性地描绘了根据一些实施例的示例性图形处理单元(GPU)252,其将虚拟内容扭曲到输出参考帧并且协调扭曲的虚拟内容的冲突部分。GPU 252包括输入存储器910,用于存储所生成的要扭曲的虚拟内容。在一些实施例中,虚拟内容被存储为基元(例如,图10中的三角形1000)。GPU 252还包括命令处理器912,其(1)从输入存储器910接收/读取虚拟内容,(2)将虚拟内容划分为调度单元,以及(3)沿着渲染管线以波或经线(warp)发送调度单元用于并行处理。GPU 252还包括调度器914,以(1)从命令处理器912接收调度单元,以及(2)确定是来自命令处理器912的“新工作”还是从渲染管线中的下游返回的“旧工作”(在下面描述)应该在任何特定时间向下发送到渲染管线。实际上,调度器914确定GPU252处理各种输入数据的序列。
GPU 252包括一个或多个GPU核916,其中每个GPU核916具有多个并行可执行核/单元(“着色器核”)918,用于并行处理调度单元。命令处理器912将虚拟内容划分为等于着色器核918的数量的数量(例如,32)。GPU 252还包括“先入先出”(“FIFO”)存储器920以接收来自GPU核916的输出。输出可以作为“旧工作”从FIFO存储器920被路由回调度器914,以便插入到由GPU核916进行的渲染管线附加处理。
GPU 252还包括栅格操作单元(“ROP”)922,其接收来自FIFO存储器920的输出并栅格化输出以供显示。例如,虚拟内容的基元可以存储为三角形顶点的坐标。在由GPU核916处理之后(在此期间图10的三角形1000的三个顶点1010、1012、1014可以被扭曲),ROP 922确定哪些像素1016在由三个顶点1010、1012、1014限定的三角形1000内部,并填充虚拟内容中的那些像素1016。ROP 922还可以对虚拟内容执行深度测试。
GPU 252还包括缓冲存储器924,用于临时存储来自ROP 922的扭曲的虚拟内容。缓冲存储器924中的扭曲的虚拟内容可以包括在输出参考帧中的视场中的多个X、Y位置处的亮度/颜色和深度信息。来自缓冲存储器924的输出可以作为“旧工作”被路由回调度器914,以便插入到由GPU核916进行的渲染管线附加处理,或者用于显示在显示系统的相应像素中。GPU核916首先处理三角形1000的顶点1010、1012、1014,然后处理三角形1000内的像素1016。当输入存储器910中的虚拟内容的所有片段已经被扭曲并进行深度测试(如果需要)时,缓冲存储器924将包括在输出参考帧中显示视野所需的所有亮度/颜色和深度信息。
虚拟内容扭曲系统和方法
在没有头部姿势改变的图像处理中,GPU 252的处理结果是在各个X、Y值(例如,在每个像素处)处的颜色/亮度值和深度值。然而,在头部姿势改变的情况下,在与其中生成虚拟内容的源参考帧不同的输出参考帧中的观看位置观看的虚拟内容的不同部分可能在像素处重叠。在一些用于扭曲的虚拟内容和解析冲突的虚拟内容的方法中,可以占用输出虚拟内容中的每个X、Y位置的所有虚拟内容(从源参考帧)被扭曲并存储(例如,在列表中)。存储的虚拟内容包括颜色/亮度和深度信息。然后,将任何冲突的虚拟内容的深度相互进行比较,以确定在输出虚拟内容中使用的输出参照帧中最靠近观看位置的虚拟内容。如上所述,这种多轮次扭曲过程在计算上可能是昂贵且缓慢的,使得难以与诸如混合现实系统的便携式显示系统一起使用。
图11描绘了根据一些实施例的用于在单轮次中使虚拟内容扭曲和解决冲突的虚拟内容的方法1100。在步骤1102,扭曲系统(例如,GPU 252的GPU核916和/或块290的扭曲单元280的姿势估计器282以及变换单元284)根据源虚拟内容(在源参考帧中具有X、Y和Z位置)生成扭曲的虚拟内容(在输出参考帧中具有X'、Y'和Z'位置)。扭曲的虚拟内容可以是由输出参考帧中的包括颜色/亮度,X'、Y'和Z'位置的信息表示的扭曲基元。相对于输出参考帧中的观看位置来计算X'、Y'和Z'值。在一些实施例中,扭曲的虚拟内容可以对应于图5至图8所示的棋子510'的一部分。
在步骤1104,扭曲系统(例如,GPU 252的ROP 922和/或块290的合成单元294和混合单元296)确定与扭曲虚拟内容的X',Y'位置对应的缓冲存储器924和/或数据库292的X'、Y'位置是否由在生成当前扭曲虚拟内容之前存储在缓冲存储器924和/或数据库292中的预先存在的虚拟内容占用。例如,图6至图8中的扭曲虚拟内容510'、512'的一部分514'包含冲突的扭曲虚拟内容。如果缓冲存储器924和/或数据库292的X'、Y'位置被预先存在的虚拟内容占用,则方法1100进行到步骤1106/1106'。
如果在步骤1104中确定缓冲存储器924和/或数据库292的X'、Y'位置未被占用,则扭曲系统(例如,GPU 252的ROP 922和/或块290的合成单元294和混合单元296)在步骤1108中将扭曲的虚拟内容(包括亮度/颜色和Z'信息)写入缓冲存储器924和/或数据库292的X'、Y'位置。方法1100然后进行到步骤1112。
在步骤1112,扭曲系统确定是否已生成所有扭曲的虚拟内容。如果已生成所有扭曲的虚拟内容,则结束方法1100,并且能够显示存储在缓冲存储器924和/或数据库292中的扭曲虚拟内容。如果尚未生成所有扭曲的虚拟内容,则方法1100返回到步骤1102以生成更多扭曲的虚拟内容。
在步骤1106/1106',扭曲系统(例如,GPU 252的ROP 922和/或块290的合成单元294和混合单元296)比较缓冲存储器924和/或数据库292的X'、Y'位置中的扭曲的虚拟内容与预先存在的虚拟内容的Z'(例如,深度)信息,以确定哪个虚拟内容更靠近输出参考帧中的观看位置。因为Z'信息在输出参考帧中,所以比较是直截了当的。如果扭曲系统确定预先存在的虚拟内容比扭曲的虚拟内容更靠近观看位置,则方法1100前进到步骤1110。
在步骤1110,扭曲系统(例如,GPU 252的ROP 922和/或块290的合成单元294和混合单元296)可选地丢弃扭曲的虚拟内容,该扭曲的虚拟内容将不会从观看位置看到,因为它将被更靠近的预先存在的虚拟内容遮挡(假设预先存在的虚拟内容是不透明的)。
在步骤1112,扭曲系统(例如,GPU 252的ROP 922和/或块290的合成单元294和混合单元296)确定是否已生成所有扭曲的虚拟内容。如果已生成所有扭曲的虚拟内容,则结束方法1100,并且能够显示存储在缓冲存储器924中的扭曲虚拟内容。如果尚未生成所有扭曲的虚拟内容,则方法1100返回到步骤1102以生成更多扭曲的虚拟内容。
如果扭曲系统(例如,GPU 252的ROP 922和/或块290的合成单元294和混合单元296)确定扭曲的虚拟内容比预先存在的虚拟内容更靠近观看位置,则扭曲系统(例如,GPU252的ROP 922和/或块290的合成单元294和混合单元296)在步骤1108中将扭曲的虚拟内容(包括亮度/颜色和Z'信息)写入缓冲存储器924和/或数据库292的X'、Y'位置。在将扭曲的虚拟内容写入X'、Y'位置时,先前存储在X'、Y'位置的预先存在的虚拟内容将被丢弃。方法1100然后进行到步骤1112。
在步骤1112,扭曲系统(例如,GPU 252的ROP 922和/或块290的合成单元294和混合单元296)确定是否已生成所有扭曲的虚拟内容。如果已生成所有扭曲的虚拟内容,则结束方法1100,并且能够显示存储在缓冲存储器924中的扭曲虚拟内容。如果尚未生成所有扭曲的虚拟内容,则方法1100返回到步骤1102以生成更多扭曲的虚拟内容。
在单个轮次中使虚拟内容扭曲并解决冲突的扭曲虚拟内容减少了处理器负担以及使虚拟内容扭曲以形成用于显示的输出内容所需的时间。图11中描绘的方法1100可以实施为在GPU252上执行的“着色器扩展”或应用程序接口(“API”)。如上所述,图11中描绘的方法1100也可以在单独的扭曲块290上执行,该单独的扭曲块290独立于任何GPU 252或CPU251。在又一个实施例中,图11中描绘的方法1100可以在CPU 251上执行。在其他实施例中,图11中描绘的方法1100可以在GPU 252、CPU 251和单独的扭曲块290的各种组合/子组合上执行。图11中描绘的方法1100是能够根据特定时间处的系统资源可用性使用各种执行模型来执行的图像处理管线。
棋子510和立方体512在图5至图8中以虚线示出,表示棋子510和立方体512在源参考帧中生成,并且不在显示参考帧中。只有在扭曲系统进行扭曲后,棋子510和立方体512才成为以实线表示的扭曲的棋子510'和扭曲的立方体512'。
系统架构概述
图12是适合于实现本公开的实施例的说明性计算系统12900的框图。计算机系统1200包括总线1206或用于传递信息的其他通信机制,其将子系统和设备进行互联,例如处理器1207、系统存储器1208(例如,RAM)、静态存储设备1209(例如,ROM)、(例如,磁或光)盘碟驱动器1210、通信接口1214(例如,调制解调器或以太网卡)、显示器1211(例如,CRT或LCD)、输入设备1212(例如,键盘)和光标控制。
根据本公开的一个实施例,计算机系统1200通过处理器1207执行包含在系统存储器1208中的一个或多个指令的一个或多个序列来执行特定操作。这些指令可以从另一计算机可读/可用介质(例如,静态存储设备1209或盘碟驱动器1210)读入系统存储器1208。在替代实施例中,可以使用硬连线电路代替软件指令或与软件指令组合以实现本公开。因此,本公开的实施例不限于硬件电路和/或软件的任何特定组合。在一个实施例中,术语“逻辑”应表示用于实现本公开的全部或部分的软件或硬件的任何组合。
这里使用的术语“计算机可读介质”或“计算机可用介质”是指参与向处理器1207提供指令以供执行的任何介质。这种介质可以采用许多形式,包括但不限于非易失性介质和易失性介质。非易失性介质包括例如光盘或磁盘,例如盘碟驱动器1210。易失性介质包括动态存储器,例如系统存储器1208。
计算机可读介质的常见形式包括例如,软磁盘,软盘,硬盘,磁带,任何其他磁介质,CD-ROM,任何其他光学介质,穿孔卡,纸带,具有孔图案的任何其他物理介质,RAM,PROM,EPROM,FLASH-EPROM(例如,NAND闪存,NOR闪存),任何其他存储器芯片或盒式磁带,或计算机可以读取的任何其他介质。
在本公开的实施例中,实践本公开的指令序列的执行由单个计算机系统1200执行。根据本公开的其他实施例,通过通信链路1215(例如,LAN、PTSN或无线网络)耦合的两个或更多个计算机系统1200可以彼此协调地执行实践本公开所需的指令序列。
计算机系统1200可以通过通信链路1215和通信接口1214发送和接收消息、数据和指令,包括程序,即应用程序代码。接收的程序代码可以在被接收时由处理器1207执行,和/或存储在盘碟驱动器1210或其他非易失性存储器中以供稍后执行。存储介质1231中的数据库1232可用于存储由系统1200通过数据接口1233访问的数据。
本公开包括可以使用主题设备执行的方法。这些方法可以包括提供这种适当设备的行动。这样的提供可以由用户执行。换句话说,“提供”行动仅仅需要用户获取、访问、靠近、定位、设置、激活、加电或以其他方式行动以提供主题方法中的必要设备。在此所述的方法可以以逻辑上可能的所述事件的任何顺序以及所述事件的顺序来执行。
上面已经阐述了本公开的示例方面以及关于材料选择和制造的细节。关于本公开的其他细节,这些可以结合上面引用的专利和出版物以及本领域技术人员通常已知或理解到的来理解。就通常或逻辑使用的附加行动而言,这对于本公开的基于方法的方面可以是相同的。
另外,虽然已经参考可选地并入各种特征的若干示例描述了本公开,但是本公开不限于如针对本公开的每个变型所期望描述或指示的那样。在不脱离本公开的真实精神和范围的情况下,可以对所描述的公开进行各种改变并且可以替换等同物(无论是否在此列举或者为了简洁起见而未被包括的)。此外,在提供数值范围的情况下,应当理解的是,在该范围的上限和下限之间的每个中间值以及在所述范围内的任何其他规定值或中间值都包含在本公开内。
此外,可以设想,所描述的创造性改变的任何可选特征可以独立地陈述和要求保护,或与在此描述的任何一个或多个特征组合。参考单数项目,包括存在多个相同项目的可能性。更具体地,如在此以及与此相关的权利要求书中所使用的,除非另有特别说明,否则单数形式“一”、“一个”、“所述”和“该”包括复数指示物。换言之,物品的使用允许以上描述以及与本公开相关联的权利要求中的主题项目的“至少一个”。进一步指出,可以起草这些权利要求以排除任何可选元素。因此,该陈述旨在用作如“仅仅”、“只”等的排他术语与权利要求要素的陈述相结合地使用或“否定”限制的使用有关的先行基础。
在不使用这种排他术语的情况下,在与本公开相关联的权利要求中的术语“包括”应允许包含任何附加要素——无论在这些权利要求中是否列举了给定数目的要素,或者可以将特征的添加认为是对这些权利要求中阐述的要素的性质进行变换。除在此明确定义外,在此使用的所有技术和科学术语将在保持权利要求的有效性的同时尽可能广义地被理解。
本公开的广度不限于所提供的示例和/或本说明书,而是仅限于与本公开相关联的权利要求语言的范围。
在前述说明书中,已经参考其具体实施例描述了本公开。然而,应该清楚的是,在不脱离本公开的更宽广的精神和范围的情况下可以进行各种修改和改变。例如,参考过程动作的特定顺序来描述上述过程流程。然而,可以改变许多所描述的过程动作的顺序而不影响本公开的范围或操作。这些说明和附图相应地被认为是说明性的而不是限制性意义。

Claims (22)

1.一种用于扭曲虚拟内容的计算机实现的方法:
通过变换源虚拟内容来生成扭曲的虚拟内容;
确定输出参考帧中的与所述扭曲的虚拟内容的X、Y位置对应的存储器位置是否被预先存在的虚拟内容占用;
如果所述存储器位置未被预先存在的虚拟内容占用,则将所述扭曲的虚拟内容存储在所述存储器位置中;
如果所述存储器位置被预先存在的虚拟内容占用,则比较所述扭曲的虚拟内容和所述预先存在的虚拟内容的相应的Z位置,以识别所述输出参考帧中具有更靠近观看位置的Z位置的虚拟内容;以及
如果所述输出参考帧中的所述扭曲的虚拟内容的Z位置比所述预先存在的虚拟内容的预先存在的Z位置更靠近所述观看位置,则将所述扭曲的虚拟内容存储在与所述X、Y位置对应的所述存储器位置中。
2.根据权利要求1所述的方法,还包括:如果所述输出参考帧中的所述预先存在的虚拟内容的所述预先存在的Z比所述扭曲的虚拟内容的所述Z位置更靠近所述观看位置,则丢弃所述扭曲的虚拟内容。
3.根据权利要求1所述的方法,其中,生成所述扭曲的虚拟内容、确定所述存储器位置是否被占用、如果所述存储器位置被占用则比较相应的Z位置、以及将所述扭曲的虚拟内容存储在存储器中全部在一个轮次中发生。
4.根据权利要求1所述的方法,其中,变换所述虚拟内容包括:
通过映射图像的像素来生成像素图;
将所述像素图划分为多个基元,以及
对所述多个基元中的一个基元执行到所述输出参考帧中的变换,
其中,所述虚拟内容是所述多个基元中的所述一个基元。
5.根据权利要求4所述的方法,其中,所述多个基元中的每个基元是四边形。
6.根据权利要求4所述的方法,其中,所述多个基元中的每个基元是三角形。
7.根据权利要求4所述的方法,其中,所述多个基元中的每个基元是像素。
8.根据权利要求4所述的方法,其中,所述变换是傅里叶变换。
9.根据权利要求1所述的方法,还包括使用与所述输出参考帧不同的源参考帧生成所述源虚拟内容。
10.根据权利要求9所述的方法,其中,所述虚拟内容从所述源参考帧被变换到所述输出参考帧。
11.根据权利要求1所述的方法,其中,所述相应的Z位置是在与用于生成所述虚拟内容的源参考帧不同的所述输出参考帧中。
12.根据权利要求1所述的方法,其中,所述虚拟内容包括图像信息和源参考帧中的源X、Y位置。
13.根据权利要求12所述的方法,其中,所述图像信息包括亮度。
14.根据权利要求12所述的方法,其中,所述图像信息包括颜色。
15.根据权利要求12所述的方法,其中,所述图像信息包括所述源参考帧中的Z位置。
16.根据权利要求12所述的方法,其中,所述扭曲的虚拟内容包括所述输出参考帧中的输出X、Y位置。
17.一种用于扭曲虚拟内容的系统,包括:
输入存储器,用于存储源虚拟内容;
命令处理器,用于将所述源虚拟内容划分为多个调度单元;
调度器,用于确定处理序列;
GPU核,所述GPU核具有多个着色器核以处理所述多个调度单元中的一个调度单元从而生成扭曲的虚拟内容;
FIFO存储器,用于存储来自所述GPU核的输出;
ROP,用于栅格化所述扭曲的虚拟内容以供显示;以及
缓冲存储器,用于临时存储所述扭曲的虚拟内容,
其中,当临时存储在所述缓冲存储器中的预先存在的虚拟内容与所述扭曲的虚拟内容冲突时,所述ROP将所述预先存在的虚拟内容和所述扭曲的虚拟内容的相应的Z位置进行比较。
18.根据权利要求17所述的系统,其中,所述源虚拟内容包括源参考帧中的源X、Y值。
19.根据权利要求18所述的系统,其中,所述扭曲的虚拟内容包括输出参考帧中的输出X、Y值。
20.一种实施在非瞬态计算机可读介质中的计算机程序产品,所述计算机可读介质上存储有指令序列,当由处理器执行所述指令序列时使所述处理器执行用于扭曲虚拟内容的方法,所述方法包括:
通过变换源虚拟内容来生成扭曲的虚拟内容;
确定输出参考帧中的与所述扭曲的虚拟内容的X、Y位置对应的存储器位置是否被预先存在的虚拟内容占用;
如果所述存储器位置未被预先存在的虚拟内容占用,则将所述扭曲的虚拟内容存储在所述存储器位置中;
如果所述存储器位置被预先存在的虚拟内容占用,则比较所述扭曲的虚拟内容和所述预先存在的虚拟内容的相应的Z位置,以识别所述输出参考帧中具有更靠近观看位置的Z位置的虚拟内容;以及
如果所述输出参考帧中的所述扭曲的虚拟内容的Z位置比所述预先存在的虚拟内容的预先存在的Z位置更靠近所述观看位置,则将所述扭曲的虚拟内容存储在与所述X、Y位置对应的所述存储器位置中。
21.根据权利要求20所述的计算机程序产品,其中,所述计算机程序产品是API。
22.一种用于扭曲虚拟内容的系统,包括:
扭曲单元,用于生成扭曲的虚拟内容,所述扭曲单元包括:
姿势估计器;以及
变换单元;
合成单元,所述合成单元包括混合单元;以及
数据库,用于临时存储扭曲的虚拟内容,
其中,当暂时存储在所述数据库中的预先存在的虚拟内容与所述扭曲的虚拟内容冲突时,所述合成单元的所述混合单元比较所述预先存在的虚拟内容和所述扭曲的虚拟内容的相应的Z位置。
CN201880018442.5A 2017-03-17 2018-03-16 具有虚拟内容扭曲的混合现实系统及使用该系统生成虚拟内容的方法 Active CN110431599B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201762472985P 2017-03-17 2017-03-17
US62/472,985 2017-03-17
PCT/US2018/022993 WO2018170470A1 (en) 2017-03-17 2018-03-16 Mixed reality system with virtual content warping and method of generating virtual content using same

Publications (2)

Publication Number Publication Date
CN110431599A true CN110431599A (zh) 2019-11-08
CN110431599B CN110431599B (zh) 2022-04-12

Family

ID=63520216

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201880018442.5A Active CN110431599B (zh) 2017-03-17 2018-03-16 具有虚拟内容扭曲的混合现实系统及使用该系统生成虚拟内容的方法

Country Status (9)

Country Link
US (3) US10769752B2 (zh)
EP (1) EP3596703A1 (zh)
JP (1) JP7055815B2 (zh)
KR (1) KR102366140B1 (zh)
CN (1) CN110431599B (zh)
AU (1) AU2018236457B2 (zh)
CA (1) CA3054619C (zh)
IL (1) IL268916B (zh)
WO (1) WO2018170470A1 (zh)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10838207B2 (en) 2015-03-05 2020-11-17 Magic Leap, Inc. Systems and methods for augmented reality
AU2016225963B2 (en) 2015-03-05 2021-05-13 Magic Leap, Inc. Systems and methods for augmented reality
US10180734B2 (en) 2015-03-05 2019-01-15 Magic Leap, Inc. Systems and methods for augmented reality
CA3007367A1 (en) 2015-12-04 2017-06-08 Magic Leap, Inc. Relocalization systems and methods
KR20190034321A (ko) 2016-08-02 2019-04-01 매직 립, 인코포레이티드 고정-거리 가상 및 증강 현실 시스템들 및 방법들
US10812936B2 (en) 2017-01-23 2020-10-20 Magic Leap, Inc. Localization determination for mixed reality systems
KR102366781B1 (ko) 2017-03-17 2022-02-22 매직 립, 인코포레이티드 컬러 가상 콘텐츠 와핑을 갖는 혼합 현실 시스템 및 이를 사용하여 가상 콘텐츠를 생성하는 방법
IL303275B1 (en) 2017-03-17 2024-04-01 Magic Leap Inc A mixed reality system with the assembly of multi-source virtual content and a method for creating virtual content using it
JP7055815B2 (ja) 2017-03-17 2022-04-18 マジック リープ, インコーポレイテッド 仮想コンテンツをワーピングすることを伴う複合現実システムおよびそれを使用して仮想コンテンツを生成する方法
JP7304934B2 (ja) 2018-07-23 2023-07-07 マジック リープ, インコーポレイテッド 仮想コンテンツワーピングを伴う複合現実システムおよびそれを使用して仮想コンテンツを生成する方法
WO2020023523A1 (en) 2018-07-23 2020-01-30 Magic Leap, Inc. Intra-field sub code timing in field sequential displays
US11798218B2 (en) 2020-08-03 2023-10-24 Samsung Electronics Co., Ltd. Methods and apparatus for pixel packing
US11748933B2 (en) 2020-08-03 2023-09-05 Samsung Electronics Co., Ltd. Method for performing shader occupancy for small primitives
WO2022072242A1 (en) * 2020-10-01 2022-04-07 Qualcomm Incorporated Coding video data using pose information of a user
EP4020058A1 (en) * 2020-12-23 2022-06-29 TriLite Technologies GmbH Augmented reality display

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6407736B1 (en) * 1999-06-18 2002-06-18 Interval Research Corporation Deferred scanline conversion architecture
JP4437228B2 (ja) * 2005-11-07 2010-03-24 大学共同利用機関法人情報・システム研究機構 焦点ぼけ構造を用いたイメージング装置及びイメージング方法
US20120328196A1 (en) * 2011-03-31 2012-12-27 Shunichi Kasahara Image processing apparatus, image processing method, and program
US20140075060A1 (en) * 2012-09-10 2014-03-13 Qualcomm Incorporated Gpu memory buffer pre-fetch and pre-back signaling to avoid page-fault
CN105164728A (zh) * 2013-04-30 2015-12-16 高通股份有限公司 来自重构的减弱及中介实境效果
WO2016038240A1 (en) * 2014-09-09 2016-03-17 Nokia Technologies Oy Stereo image recording and playback

Family Cites Families (234)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4462165A (en) 1983-01-31 1984-07-31 The Boeing Company Three axis orientation sensor for an aircraft or the like
US5047952A (en) 1988-10-14 1991-09-10 The Board Of Trustee Of The Leland Stanford Junior University Communication system for deaf, deaf-blind, or non-vocal individuals using instrumented glove
US6701296B1 (en) 1988-10-14 2004-03-02 James F. Kramer Strain-sensing goniometers, systems, and recognition algorithms
CA2358682A1 (en) 1992-08-14 1994-03-03 British Telecommunications Public Limited Company Position location system
US5913820A (en) 1992-08-14 1999-06-22 British Telecommunications Public Limited Company Position location system
US5583974A (en) * 1993-05-10 1996-12-10 Apple Computer, Inc. Computer graphics system having high performance multiple layer Z-buffer
TW275590B (en) 1994-12-09 1996-05-11 Sega Enterprises Kk Head mounted display and system for use therefor
US5930741A (en) 1995-02-28 1999-07-27 Virtual Technologies, Inc. Accurate, rapid, reliable position sensing using multiple sensing technologies
US5592401A (en) 1995-02-28 1997-01-07 Virtual Technologies, Inc. Accurate, rapid, reliable position sensing using multiple sensing technologies
US5684498A (en) 1995-06-26 1997-11-04 Cae Electronics Ltd. Field sequential color head mounted display with suppressed color break-up
CA2238693C (en) 1995-11-27 2009-02-24 Cae Electronics Ltd. Method and apparatus for displaying a virtual environment on a video display
US5784115A (en) 1996-12-31 1998-07-21 Xerox Corporation System and method for motion compensated de-interlacing of video frames
US6163155A (en) 1999-01-28 2000-12-19 Dresser Industries, Inc. Electromagnetic wave resistivity tool having a tilted antenna for determining the horizontal and vertical resistivities and relative dip angle in anisotropic earth formations
GB9917591D0 (en) 1999-07-28 1999-09-29 Marconi Electronic Syst Ltd Head tracker system
US6757068B2 (en) 2000-01-28 2004-06-29 Intersense, Inc. Self-referenced tracking
US7445550B2 (en) 2000-02-22 2008-11-04 Creative Kingdoms, Llc Magical wand and interactive play experience
US7878905B2 (en) 2000-02-22 2011-02-01 Creative Kingdoms, Llc Multi-layered interactive play experience
AU2001250802A1 (en) 2000-03-07 2001-09-17 Sarnoff Corporation Camera pose estimation
US6891533B1 (en) 2000-04-11 2005-05-10 Hewlett-Packard Development Company, L.P. Compositing separately-generated three-dimensional images
US6738044B2 (en) 2000-08-07 2004-05-18 The Regents Of The University Of California Wireless, relative-motion computer input device
US20020180727A1 (en) 2000-11-22 2002-12-05 Guckenberger Ronald James Shadow buffer control module method and software construct for adjusting per pixel raster images attributes to screen space and projector features for digital warp, intensity transforms, color matching, soft-edge blending, and filtering for multiple projectors and laser projectors
US6691074B1 (en) 2001-02-08 2004-02-10 Netmore Ltd. System for three dimensional positioning and tracking
US6861982B2 (en) 2001-08-16 2005-03-01 Itt Manufacturing Enterprises, Inc. System for determining position of an emitter
US7113618B2 (en) 2001-09-18 2006-09-26 Intel Corporation Portable virtual reality
JP2003337963A (ja) 2002-05-17 2003-11-28 Seiko Epson Corp 画像処理装置および画像処理方法、ならびに、画像処理プログラムおよびその記録媒体
US9153074B2 (en) 2011-07-18 2015-10-06 Dylan T X Zhou Wearable augmented reality eyeglass communication device including mobile phone and mobile computing via virtual touch screen gesture control and neuron command
JP3984907B2 (ja) 2002-11-29 2007-10-03 キヤノン株式会社 画像観察システム
US20070155589A1 (en) 2002-12-04 2007-07-05 Philip Feldman Method and Apparatus for Operatively Controlling a Virtual Reality Scenario with an Isometric Exercise System
JP2004213350A (ja) 2002-12-27 2004-07-29 Seiko Epson Corp 力覚提示装置及び画像補正方法
US20050107870A1 (en) 2003-04-08 2005-05-19 Xingwu Wang Medical device with multiple coating layers
US7643025B2 (en) 2003-09-30 2010-01-05 Eric Belk Lange Method and apparatus for applying stereoscopic imagery to three-dimensionally defined substrates
US7443154B1 (en) 2003-10-04 2008-10-28 Seektech, Inc. Multi-sensor mapping omnidirectional sonde and line locator
CA2450837A1 (en) 2003-11-25 2005-05-25 University Of New Brunswick Induction magnetometer
US20160098095A1 (en) 2004-01-30 2016-04-07 Electronic Scripting Products, Inc. Deriving Input from Six Degrees of Freedom Interfaces
US9229540B2 (en) 2004-01-30 2016-01-05 Electronic Scripting Products, Inc. Deriving input from six degrees of freedom interfaces
US7653883B2 (en) 2004-07-30 2010-01-26 Apple Inc. Proximity detector in handheld device
JP4508820B2 (ja) 2004-10-19 2010-07-21 株式会社ワコム 3次元情報検出システム及び3次元情報入力装置
JP2008521110A (ja) 2004-11-19 2008-06-19 ダーム インタラクティブ,エスエル AugmentedRealityResourcesのアプリケーション用に画像取り込み機能を具備した個人用装置とその方法
KR100960577B1 (ko) 2005-02-08 2010-06-03 오블롱 인더스트리즈, 인크 제스처 기반의 제어 시스템을 위한 시스템 및 방법
WO2006116536A1 (en) 2005-04-26 2006-11-02 Imax Corporation Electronic projection systems and methods
US8308563B2 (en) 2005-08-30 2012-11-13 Nintendo Co., Ltd. Game system and storage medium having game program stored thereon
US8157651B2 (en) 2005-09-12 2012-04-17 Nintendo Co., Ltd. Information processing program
KR100722229B1 (ko) 2005-12-02 2007-05-29 한국전자통신연구원 사용자 중심형 인터페이스를 위한 가상현실 상호작용 인체모델 즉석 생성/제어 장치 및 방법
US8531396B2 (en) 2006-02-08 2013-09-10 Oblong Industries, Inc. Control system for navigating a principal dimension of a data space
US8370383B2 (en) 2006-02-08 2013-02-05 Oblong Industries, Inc. Multi-process interactive systems and methods
US9910497B2 (en) 2006-02-08 2018-03-06 Oblong Industries, Inc. Gestural control of autonomous and semi-autonomous systems
US9823747B2 (en) 2006-02-08 2017-11-21 Oblong Industries, Inc. Spatial, multi-modal control device for use with spatial operating system
US8537111B2 (en) 2006-02-08 2013-09-17 Oblong Industries, Inc. Control system for navigating a principal dimension of a data space
JP4151982B2 (ja) 2006-03-10 2008-09-17 任天堂株式会社 動き判別装置および動き判別プログラム
JP4684147B2 (ja) 2006-03-28 2011-05-18 任天堂株式会社 傾き算出装置、傾き算出プログラム、ゲーム装置およびゲームプログラム
JP4196302B2 (ja) 2006-06-19 2008-12-17 ソニー株式会社 情報処理装置および方法、並びにプログラム
JP4804256B2 (ja) * 2006-07-27 2011-11-02 キヤノン株式会社 情報処理方法
US8194088B1 (en) 2006-08-03 2012-06-05 Apple Inc. Selective composite rendering
US7921120B2 (en) 2006-11-30 2011-04-05 D&S Consultants Method and system for image recognition using a similarity inverse matrix
CN101093586A (zh) 2007-07-12 2007-12-26 上海交通大学 面向复杂场景实时交互操作的并行碰撞检测方法
US8165352B1 (en) 2007-08-06 2012-04-24 University Of South Florida Reconstruction of biometric image templates using match scores
IL195389A (en) 2008-11-19 2013-12-31 Elbit Systems Ltd Magnetic Field Mapping System and Method
US10095815B2 (en) 2008-11-19 2018-10-09 Elbit Systems Ltd. System and a method for mapping a magnetic field
US20090115406A1 (en) 2007-11-01 2009-05-07 General Electric Company System and method for minimizing mutual inductance coupling between coils in an electromagnetic tracking system
US9013505B1 (en) 2007-11-27 2015-04-21 Sprint Communications Company L.P. Mobile system representing virtual objects on live camera image
KR20090055803A (ko) 2007-11-29 2009-06-03 광주과학기술원 다시점 깊이맵 생성 방법 및 장치, 다시점 영상에서의변이값 생성 방법
US7795596B2 (en) 2008-01-03 2010-09-14 Alcatel-Lucent Usa Inc. Cloaking device detection system
WO2009091563A1 (en) 2008-01-18 2009-07-23 Thomson Licensing Depth-image-based rendering
US20090184825A1 (en) 2008-01-23 2009-07-23 General Electric Company RFID Transponder Used for Instrument Identification in an Electromagnetic Tracking System
WO2009093956A1 (en) * 2008-01-23 2009-07-30 Swiftfoot Graphics Ab Method, apparatus, and computer program product for improved graphics performance
US8926511B2 (en) 2008-02-29 2015-01-06 Biosense Webster, Inc. Location system with virtual touch screen
US9684380B2 (en) 2009-04-02 2017-06-20 Oblong Industries, Inc. Operating environment with gestural control and multiple client devices, displays, and users
US9952673B2 (en) 2009-04-02 2018-04-24 Oblong Industries, Inc. Operating environment comprising multiple client devices, multiple displays, multiple users, and gestural control
US9495013B2 (en) 2008-04-24 2016-11-15 Oblong Industries, Inc. Multi-modal gestural interface
US8723795B2 (en) 2008-04-24 2014-05-13 Oblong Industries, Inc. Detecting, representing, and interpreting three-space input: gestural continuum subsuming freespace, proximal, and surface-contact modes
US9740922B2 (en) 2008-04-24 2017-08-22 Oblong Industries, Inc. Adaptive tracking system for spatial input devices
US9740293B2 (en) 2009-04-02 2017-08-22 Oblong Industries, Inc. Operating environment with gestural control and multiple client devices, displays, and users
US8446426B2 (en) 2008-04-28 2013-05-21 Apple Inc. Technique for visually compositing a group of graphical objects
KR20090120159A (ko) 2008-05-19 2009-11-24 삼성전자주식회사 영상합성장치 및 영상합성방법
US8929877B2 (en) 2008-09-12 2015-01-06 Digimarc Corporation Methods and systems for content processing
JP5415054B2 (ja) 2008-10-28 2014-02-12 セイコーエプソン株式会社 駆動方法および電気光学装置
EP2354896B1 (en) 2008-11-14 2016-12-21 Sony Interactive Entertainment Inc. Operating device and information processing apparatus
US8188745B2 (en) 2008-12-05 2012-05-29 Metrotech Corporation Inc. Precise location and orientation of a concealed dipole transmitter
US9465129B1 (en) 2009-03-06 2016-10-11 See Scan, Inc. Image-based mapping locating system
US8860723B2 (en) 2009-03-09 2014-10-14 Donya Labs Ab Bounded simplification of geometrical computer data
JP5177078B2 (ja) 2009-05-26 2013-04-03 富士通モバイルコミュニケーションズ株式会社 情報処理装置
US9933852B2 (en) 2009-10-14 2018-04-03 Oblong Industries, Inc. Multi-process interactive systems and methods
US8775424B2 (en) 2010-01-26 2014-07-08 Xerox Corporation System for creative image navigation and exploration
US9134534B2 (en) 2010-02-28 2015-09-15 Microsoft Technology Licensing, Llc See-through near-eye display glasses including a modular image source
US8581905B2 (en) * 2010-04-08 2013-11-12 Disney Enterprises, Inc. Interactive three dimensional displays on handheld devices
TWI399688B (zh) 2010-06-08 2013-06-21 Waltop Int Corp 整合電磁式及電容感應輸入裝置
JP2012043308A (ja) 2010-08-20 2012-03-01 Canon Inc 位置姿勢決定方法、位置姿勢決定装置、物体モデル生成方法、物体モデル生成装置、およびプログラム
JP5820366B2 (ja) 2010-10-08 2015-11-24 パナソニック株式会社 姿勢推定装置及び姿勢推定方法
US20120086630A1 (en) 2010-10-12 2012-04-12 Sony Computer Entertainment Inc. Using a portable gaming device to record or modify a game or application in real-time running on a home gaming system
US9122053B2 (en) 2010-10-15 2015-09-01 Microsoft Technology Licensing, Llc Realistic occlusion for a head mounted augmented reality display
FR2966251B1 (fr) 2010-10-19 2014-04-25 Astrium Sas Systeme d'orientation et de positionnement d'un recepteur electromagnetique
US8660369B2 (en) 2010-10-25 2014-02-25 Disney Enterprises, Inc. Systems and methods using mobile devices for augmented reality
US8745061B2 (en) 2010-11-09 2014-06-03 Tibco Software Inc. Suffix array candidate selection and index data structure
CN103415860B (zh) 2011-01-27 2019-07-12 苹果公司 确定第一和第二图像间的对应关系的方法以及确定摄像机姿态的方法
US8587583B2 (en) 2011-01-31 2013-11-19 Microsoft Corporation Three-dimensional environment reconstruction
US9206007B2 (en) 2011-05-31 2015-12-08 Twist-Ease Inc. Bag dispenser
US20120306850A1 (en) 2011-06-02 2012-12-06 Microsoft Corporation Distributed asynchronous localization and mapping for augmented reality
US20120327116A1 (en) 2011-06-23 2012-12-27 Microsoft Corporation Total field of view classification for head-mounted display
US8933913B2 (en) 2011-06-28 2015-01-13 Microsoft Corporation Electromagnetic 3D stylus
US20150100380A1 (en) 2011-07-20 2015-04-09 Raymond P. Jones, JR. Systems and methods for providing financial controls for aggregated weather-based work
US20150040074A1 (en) 2011-08-18 2015-02-05 Layar B.V. Methods and systems for enabling creation of augmented reality content
EP2745236A1 (en) 2011-08-18 2014-06-25 Layar B.V. Computer-vision based augmented reality system
US8749396B2 (en) 2011-08-25 2014-06-10 Satorius Stedim Biotech Gmbh Assembling method, monitoring method, communication method, augmented reality system and computer program product
WO2013029674A1 (en) 2011-08-31 2013-03-07 Metaio Gmbh Method of matching image features with reference features
EP2756328A2 (en) 2011-09-13 2014-07-23 Sadar 3D, Inc. Synthetic aperture radar apparatus and methods
US8821286B2 (en) 2011-09-29 2014-09-02 Wms Gaming, Inc. Wagering game system having motion sensing controllers
US9286711B2 (en) 2011-09-30 2016-03-15 Microsoft Technology Licensing, Llc Representing a location at a previous time period using an augmented reality display
AU2012348348B2 (en) 2011-10-28 2017-03-30 Magic Leap, Inc. System and method for augmented and virtual reality
CN104067316B (zh) 2011-11-23 2017-10-27 奇跃公司 三维虚拟和增强现实显示系统
US9330468B2 (en) 2012-02-29 2016-05-03 RetailNext, Inc. Method and system for analyzing interactions
US9075824B2 (en) 2012-04-27 2015-07-07 Xerox Corporation Retrieval system and method leveraging category-level labels
US9098229B2 (en) 2012-05-04 2015-08-04 Aaron Hallquist Single image pose estimation of image capture devices
US9116666B2 (en) 2012-06-01 2015-08-25 Microsoft Technology Licensing, Llc Gesture based region identification for holograms
US9671566B2 (en) 2012-06-11 2017-06-06 Magic Leap, Inc. Planar waveguide apparatus with diffraction element(s) and system employing same
US9582072B2 (en) 2013-09-17 2017-02-28 Medibotics Llc Motion recognition clothing [TM] with flexible electromagnetic, light, or sonic energy pathways
US9384737B2 (en) 2012-06-29 2016-07-05 Microsoft Technology Licensing, Llc Method and device for adjusting sound levels of sources based on sound source priority
EP2704055A1 (en) 2012-08-31 2014-03-05 Layar B.V. Determining space to display content in augmented reality
JP2014049934A (ja) 2012-08-31 2014-03-17 Sony Corp ヘッドマウントディスプレイ
EP3502621B1 (en) * 2012-09-21 2023-06-07 NavVis GmbH Visual localisation
GB201217372D0 (en) 2012-09-28 2012-11-14 Ucl Business Plc A system and method for annotating images by propagating information
US9177404B2 (en) 2012-10-31 2015-11-03 Qualcomm Incorporated Systems and methods of merging multiple maps for computer vision based tracking
US9188694B2 (en) 2012-11-16 2015-11-17 Halliburton Energy Services, Inc. Optical interferometric sensors for measuring electromagnetic fields
US9160727B1 (en) 2012-11-30 2015-10-13 Microstrategy Incorporated Providing credential information
US9026847B2 (en) * 2012-12-21 2015-05-05 Advanced Micro Devices, Inc. Hardware based redundant multi-threading inside a GPU for improved reliability
US20140176591A1 (en) 2012-12-26 2014-06-26 Georg Klein Low-latency fusing of color image data
WO2014105385A1 (en) * 2012-12-27 2014-07-03 The Regents Of The University Of California Anamorphic stretch image compression
US9788714B2 (en) 2014-07-08 2017-10-17 Iarmourholdings, Inc. Systems and methods using virtual reality or augmented reality environments for the measurement and/or improvement of human vestibulo-ocular performance
KR102387314B1 (ko) 2013-03-11 2022-04-14 매직 립, 인코포레이티드 증강 및 가상 현실을 위한 시스템 및 방법
WO2014160342A1 (en) 2013-03-13 2014-10-02 The University Of North Carolina At Chapel Hill Low latency stabilization for head-worn displays
US8908021B2 (en) 2013-03-15 2014-12-09 Orcam Technologies Ltd. Systems and methods for automatic control of a continuous action
CN105229719B (zh) 2013-03-15 2018-04-27 奇跃公司 显示系统和方法
US20140323148A1 (en) 2013-04-30 2014-10-30 Qualcomm Incorporated Wide area localization from slam maps
US9367960B2 (en) 2013-05-22 2016-06-14 Microsoft Technology Licensing, Llc Body-locked placement of augmented reality objects
US10254855B2 (en) 2013-06-04 2019-04-09 Wen-Chieh Geoffrey Lee High resolution and high sensitivity three-dimensional (3D) cursor maneuvering device
US9874749B2 (en) 2013-11-27 2018-01-23 Magic Leap, Inc. Virtual and augmented reality systems and methods
US10262462B2 (en) 2014-04-18 2019-04-16 Magic Leap, Inc. Systems and methods for augmented and virtual reality
US9129430B2 (en) 2013-06-25 2015-09-08 Microsoft Technology Licensing, Llc Indicating out-of-view augmented reality images
US9443355B2 (en) 2013-06-28 2016-09-13 Microsoft Technology Licensing, Llc Reprojection OLED display for augmented reality experiences
US9712473B2 (en) 2013-07-11 2017-07-18 Facebook, Inc. Methods, systems, and user interfaces for community-based location ratings
WO2015006784A2 (en) 2013-07-12 2015-01-15 Magic Leap, Inc. Planar waveguide apparatus with diffraction element(s) and system employing same
US10408613B2 (en) 2013-07-12 2019-09-10 Magic Leap, Inc. Method and system for rendering virtual content
US9514571B2 (en) 2013-07-25 2016-12-06 Microsoft Technology Licensing, Llc Late stage reprojection
JP6192010B2 (ja) 2013-09-05 2017-09-06 国立大学法人 東京大学 重み設定装置および方法
US9729864B2 (en) 2013-09-30 2017-08-08 Sony Interactive Entertainment Inc. Camera based safety mechanisms for users of head mounted displays
JP6353214B2 (ja) 2013-11-11 2018-07-04 株式会社ソニー・インタラクティブエンタテインメント 画像生成装置および画像生成方法
US9857591B2 (en) 2014-05-30 2018-01-02 Magic Leap, Inc. Methods and system for creating focal planes in virtual and augmented reality
KR102378457B1 (ko) 2013-11-27 2022-03-23 매직 립, 인코포레이티드 가상 및 증강 현실 시스템들 및 방법들
US11402629B2 (en) 2013-11-27 2022-08-02 Magic Leap, Inc. Separated pupil optical systems for virtual and augmented reality and methods for displaying images using same
US9354778B2 (en) 2013-12-06 2016-05-31 Digimarc Corporation Smartphone-based methods and systems
SG11201604981UA (en) 2013-12-19 2016-07-28 Avigilon Fortress Corp System and method for identifying faces in unconstrained media
EP2887311B1 (en) 2013-12-20 2016-09-14 Thomson Licensing Method and apparatus for performing depth estimation
US9360935B2 (en) 2013-12-20 2016-06-07 Hong Kong Applied Science And Technology Research Institute Co. Ltd. Integrated bi-sensing optical structure for head mounted display
US20160147063A1 (en) 2014-11-26 2016-05-26 Osterhout Group, Inc. See-through computer display systems
US10254856B2 (en) 2014-01-17 2019-04-09 Osterhout Group, Inc. External user interface for head worn computing
US9448409B2 (en) 2014-11-26 2016-09-20 Osterhout Group, Inc. See-through computer display systems
US9405122B2 (en) 2014-01-29 2016-08-02 Ricoh Co., Ltd Depth-disparity calibration of a binocular optical augmented reality system
CN106796679A (zh) 2014-03-04 2017-05-31 谷歌公司 基于社交线索的地图个性化
US20160203624A1 (en) 2014-03-05 2016-07-14 Google Inc. System and Method for Providing Combined Multi-Dimensional Map Views
WO2015134958A1 (en) 2014-03-07 2015-09-11 Magic Leap, Inc. Virtual and augmented reality systems and methods
US10203762B2 (en) 2014-03-11 2019-02-12 Magic Leap, Inc. Methods and systems for creating virtual and augmented reality
CN105005457B (zh) 2014-04-25 2019-04-09 腾讯科技(深圳)有限公司 地理位置展示方法及装置
US9953243B2 (en) 2014-04-25 2018-04-24 Google Llc Electronic device localization based on imagery
US9652893B2 (en) 2014-04-29 2017-05-16 Microsoft Technology Licensing, Llc Stabilization plane determination based on gaze location
US9727341B2 (en) * 2014-05-09 2017-08-08 Samsung Electronics Co., Ltd. Control flow in a thread-based environment without branching
KR101888566B1 (ko) 2014-06-03 2018-08-16 애플 인크. 실제 물체와 관련된 디지털 정보를 제시하기 위한 방법 및 시스템
US20150358539A1 (en) 2014-06-06 2015-12-10 Jacob Catt Mobile Virtual Reality Camera, Method, And System
US20150379772A1 (en) 2014-06-30 2015-12-31 Samsung Display Co., Ltd. Tracking accelerator for virtual and augmented reality displays
US10283035B2 (en) 2014-07-01 2019-05-07 Sharp Kabushiki Kaisha Field-sequential image display device and image display method
US10056054B2 (en) 2014-07-03 2018-08-21 Federico Fraccaroli Method, system, and apparatus for optimising the augmentation of radio emissions
US10198865B2 (en) 2014-07-10 2019-02-05 Seiko Epson Corporation HMD calibration with direct geometric modeling
US10162177B2 (en) 2014-07-11 2018-12-25 Sixense Entertainment, Inc. Method and apparatus for self-relative body tracking for virtual reality systems using magnetic tracking
US9363644B2 (en) 2014-07-16 2016-06-07 Yahoo! Inc. System and method for detection of indoor tracking units
US9719871B2 (en) 2014-08-09 2017-08-01 Google Inc. Detecting a state of a wearable device
EP3192058A4 (en) 2014-09-08 2018-05-02 Simx LLC Augmented reality simulator for professional and educational training
US10430382B2 (en) 2014-10-14 2019-10-01 Microsoft Technology Licensing, Llc Data visualization architecture
US9478029B2 (en) 2014-10-23 2016-10-25 Qualcomm Incorporated Selection strategy for exchanging map information in collaborative multi-user SLAM systems
US10650574B2 (en) 2014-10-31 2020-05-12 Fyusion, Inc. Generating stereoscopic pairs of images from a single lens camera
US11049476B2 (en) 2014-11-04 2021-06-29 The University Of North Carolina At Chapel Hill Minimal-latency tracking and display for matching real and virtual worlds in head-worn displays
US9818170B2 (en) 2014-12-10 2017-11-14 Qualcomm Incorporated Processing unaligned block transfer operations
EP3796235A1 (en) 2014-12-17 2021-03-24 Google LLC Generating numeric embeddings of images
US9696549B2 (en) 2014-12-22 2017-07-04 International Business Machines Corporation Selectively pairing an application presented in virtual space with a physical display
US9846968B2 (en) 2015-01-20 2017-12-19 Microsoft Technology Licensing, Llc Holographic bird's eye view camera
AU2016225963B2 (en) 2015-03-05 2021-05-13 Magic Leap, Inc. Systems and methods for augmented reality
US10180734B2 (en) 2015-03-05 2019-01-15 Magic Leap, Inc. Systems and methods for augmented reality
WO2016142837A1 (en) 2015-03-07 2016-09-15 Verity Studios Distributed localization systems and methods and self-localizing apparatus
US9874932B2 (en) 2015-04-09 2018-01-23 Microsoft Technology Licensing, Llc Avoidance of color breakup in late-stage re-projection
US9814430B1 (en) 2015-04-17 2017-11-14 Bertec Corporation System and method for measuring eye movement and/or eye position and postural sway of a subject
CN113050280B (zh) 2015-05-04 2024-01-19 奇跃公司 用于虚拟和增强现实的分离光瞳光学系统以及用于使用其显示图像的方法
CN104866829B (zh) 2015-05-25 2019-02-19 苏州大学 一种基于特征学习的跨年龄人脸验证方法
US10721280B1 (en) 2015-05-29 2020-07-21 Sprint Communications Company L.P. Extended mixed multimedia reality platform
US20160378863A1 (en) 2015-06-24 2016-12-29 Google Inc. Selecting representative video frames for videos
US10062010B2 (en) 2015-06-26 2018-08-28 Intel Corporation System for building a map and subsequent localization
US10192361B2 (en) 2015-07-06 2019-01-29 Seiko Epson Corporation Head-mounted display device and computer program
US10750161B2 (en) 2015-07-15 2020-08-18 Fyusion, Inc. Multi-view interactive digital media representation lock screen
US9875427B2 (en) 2015-07-28 2018-01-23 GM Global Technology Operations LLC Method for object localization and pose estimation for an object of interest
WO2017044965A1 (en) 2015-09-10 2017-03-16 Duke University Systems and methods for arbitrary viewpoint robotic manipulation and robotic surgical assistance
GB201518112D0 (en) 2015-10-13 2015-11-25 Bae Systems Plc Improvements in and relating to displays
US10338677B2 (en) 2015-10-28 2019-07-02 Microsoft Technology Licensing, Llc Adjusting image frames based on tracking motion of eyes
US10026212B2 (en) 2015-11-20 2018-07-17 Google Llc Electronic display stabilization using pixel velocities
US20170161853A1 (en) 2015-12-03 2017-06-08 James Carroll Gossweiler Mapping system that identifies site-specific real estate due diligence professionals and related service providers
CA3007367A1 (en) 2015-12-04 2017-06-08 Magic Leap, Inc. Relocalization systems and methods
US10241569B2 (en) 2015-12-08 2019-03-26 Facebook Technologies, Llc Focus adjustment method for a virtual reality headset
FR3046261B1 (fr) 2015-12-24 2018-08-31 Starbreeze Paris Element mobile hybride, procede et dispositif pour interfacer une pluralite d'elements mobiles hybrides avec un systeme informatique, et ensemble pour systeme de realite virtuelle ou augmentee
US10130429B1 (en) 2016-01-06 2018-11-20 Ethicon Llc Methods, systems, and devices for controlling movement of a robotic surgical system
KR20180110051A (ko) 2016-02-05 2018-10-08 매직 립, 인코포레이티드 증강 현실을 위한 시스템들 및 방법들
EP3420413A1 (en) 2016-02-22 2019-01-02 Real View Imaging Ltd. A method and system for displaying holographic images within a real object
CN108139815B (zh) 2016-02-22 2020-11-10 谷歌有限责任公司 用于虚拟现实内容的显示的场景和对象的分立时间扭曲
US10334076B2 (en) 2016-02-22 2019-06-25 Google Llc Device pairing in augmented/virtual reality environment
US9639935B1 (en) 2016-05-25 2017-05-02 Gopro, Inc. Apparatus and methods for camera alignment model calibration
US10453272B2 (en) 2016-05-29 2019-10-22 Google Llc Time-warping adjustment based on depth information in a virtual/augmented reality system
US10366536B2 (en) 2016-06-28 2019-07-30 Microsoft Technology Licensing, Llc Infinite far-field depth perception for near-field objects in virtual environments
KR20190034321A (ko) 2016-08-02 2019-04-01 매직 립, 인코포레이티드 고정-거리 가상 및 증강 현실 시스템들 및 방법들
US11017712B2 (en) 2016-08-12 2021-05-25 Intel Corporation Optimized display image rendering
CA2976464A1 (en) 2016-08-16 2018-02-16 Sergi Berna Sague Method and system for wireless location and movement mapping, tracking and analytics
US10529063B2 (en) 2016-08-22 2020-01-07 Magic Leap, Inc. Virtual, augmented, and mixed reality systems and methods
US10318115B2 (en) 2016-10-14 2019-06-11 OneMarket Network LLC System and method for presenting optimized map labels
CN108241142B (zh) 2016-12-26 2021-05-11 宏达国际电子股份有限公司 追踪系统及追踪方法
US10330936B2 (en) 2017-01-19 2019-06-25 Facebook Technologies, Llc Focal surface display
US10812936B2 (en) 2017-01-23 2020-10-20 Magic Leap, Inc. Localization determination for mixed reality systems
KR102366781B1 (ko) 2017-03-17 2022-02-22 매직 립, 인코포레이티드 컬러 가상 콘텐츠 와핑을 갖는 혼합 현실 시스템 및 이를 사용하여 가상 콘텐츠를 생성하는 방법
IL303275B1 (en) 2017-03-17 2024-04-01 Magic Leap Inc A mixed reality system with the assembly of multi-source virtual content and a method for creating virtual content using it
JP7055815B2 (ja) 2017-03-17 2022-04-18 マジック リープ, インコーポレイテッド 仮想コンテンツをワーピングすることを伴う複合現実システムおよびそれを使用して仮想コンテンツを生成する方法
US10991280B2 (en) 2017-05-01 2021-04-27 Pure Depth Limited Head tracking based field sequential saccadic break up reduction
US10620710B2 (en) 2017-06-15 2020-04-14 Microsoft Technology Licensing, Llc Displacement oriented interaction in computer-mediated reality
GB201709752D0 (en) 2017-06-19 2017-08-02 Advanced Risc Mach Ltd Graphics processing systems
US10859834B2 (en) 2017-07-03 2020-12-08 Holovisions Space-efficient optical structures for wide field-of-view augmented reality (AR) eyewear
US10403032B2 (en) 2017-08-22 2019-09-03 Qualcomm Incorporated Rendering an image from computer graphics using two rendering computing devices
US10445922B2 (en) 2017-08-31 2019-10-15 Intel Corporation Last-level projection method and apparatus for virtual and augmented reality
US10529086B2 (en) 2017-11-22 2020-01-07 Futurewei Technologies, Inc. Three-dimensional (3D) reconstructions of dynamic scenes using a reconfigurable hybrid imaging system
US10481689B1 (en) 2018-01-10 2019-11-19 Electronic Arts Inc. Motion capture glove
US10861215B2 (en) 2018-04-30 2020-12-08 Qualcomm Incorporated Asynchronous time and space warp with determination of region of interest
JP7304934B2 (ja) 2018-07-23 2023-07-07 マジック リープ, インコーポレイテッド 仮想コンテンツワーピングを伴う複合現実システムおよびそれを使用して仮想コンテンツを生成する方法
US11176901B1 (en) 2019-08-13 2021-11-16 Facebook Technologies, Llc. Pan-warping and modifying sub-frames with an up-sampled frame rate
US10843067B1 (en) 2019-10-04 2020-11-24 Varjo Technologies Oy Input device, system, and method

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6407736B1 (en) * 1999-06-18 2002-06-18 Interval Research Corporation Deferred scanline conversion architecture
JP4437228B2 (ja) * 2005-11-07 2010-03-24 大学共同利用機関法人情報・システム研究機構 焦点ぼけ構造を用いたイメージング装置及びイメージング方法
US20120328196A1 (en) * 2011-03-31 2012-12-27 Shunichi Kasahara Image processing apparatus, image processing method, and program
US20140075060A1 (en) * 2012-09-10 2014-03-13 Qualcomm Incorporated Gpu memory buffer pre-fetch and pre-back signaling to avoid page-fault
CN105164728A (zh) * 2013-04-30 2015-12-16 高通股份有限公司 来自重构的减弱及中介实境效果
WO2016038240A1 (en) * 2014-09-09 2016-03-17 Nokia Technologies Oy Stereo image recording and playback

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
NIGEL STEWART 等: "An Improved Z-Buffer CSG Rendering Algorithm", 《PROCEEDINGS OF THE EUROGRAPHICS/SIGGRAPH WORKSHOP ON GRAPHICS HARDWARE》 *
THEOHARIS THEOHARIS等: "The Magic of The Z-buffer:A Survey", 《JOURNAL OF WSCG》 *

Also Published As

Publication number Publication date
CN110431599B (zh) 2022-04-12
EP3596703A4 (en) 2020-01-22
KR20190129096A (ko) 2019-11-19
EP3596703A1 (en) 2020-01-22
AU2018236457A1 (en) 2019-09-12
IL268916B (en) 2022-01-01
CA3054619C (en) 2024-01-30
JP2020515954A (ja) 2020-05-28
CA3054619A1 (en) 2018-09-20
WO2018170470A1 (en) 2018-09-20
US10769752B2 (en) 2020-09-08
IL268916A (en) 2019-10-31
US10861130B2 (en) 2020-12-08
US20180268518A1 (en) 2018-09-20
KR102366140B1 (ko) 2022-02-21
US11410269B2 (en) 2022-08-09
US20200242729A1 (en) 2020-07-30
US20210133921A1 (en) 2021-05-06
JP7055815B2 (ja) 2022-04-18
AU2018236457B2 (en) 2021-04-29

Similar Documents

Publication Publication Date Title
CN110431599A (zh) 具有虚拟内容扭曲的混合现实系统及使用该系统生成虚拟内容的方法
JP7443602B2 (ja) 仮想コンテンツワーピングを伴う複合現実システムおよびそれを使用して仮想コンテンツを生成する方法
CN110402425A (zh) 具有彩色虚拟内容扭曲的混合现实系统及使用该系统生成虚拟内容的方法
CN110419061A (zh) 具有多源虚拟内容合成的混合现实系统及使用该系统生成虚拟内容的方法
US20190188902A1 (en) Determining pixel values using reference images

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant