CN115769261A - 低功率视觉跟踪系统 - Google Patents
低功率视觉跟踪系统 Download PDFInfo
- Publication number
- CN115769261A CN115769261A CN202180042272.6A CN202180042272A CN115769261A CN 115769261 A CN115769261 A CN 115769261A CN 202180042272 A CN202180042272 A CN 202180042272A CN 115769261 A CN115769261 A CN 115769261A
- Authority
- CN
- China
- Prior art keywords
- pattern
- pose
- patterns
- relative
- image sensor
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
- G06F3/012—Head tracking input arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/033—Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
- G06F3/0346—Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of the device orientation or free movement in a 3D space, e.g. 3D mice, 6-DOF [six degrees of freedom] pointers using gyroscopes, accelerometers or tilt-sensors
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/60—Control of cameras or camera modules
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/90—Arrangement of cameras or camera modules, e.g. multiple cameras in TV studios or sports stadiums
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10048—Infrared image
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30204—Marker
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30244—Camera pose
Abstract
提供了用于低功率视觉跟踪系统的系统、方法和非瞬态介质。一种示例方法可包括:接收由来自第一设备上的图像传感器系统集的每一图像传感器系统捕捉的一个或多个图像,该一个或多个图像捕捉第二设备上的图案集,其中第一设备具有与第二设备相比较低的功率要求,该图案集在第二设备上具有预定配置;根据由每一图像传感器系统捕捉的一个或多个图像来确定与第二设备上的图案集相对应的像素集;基于与图案集相对应的像素集来确定每一图案在空间中的位置和相对姿态;以及基于每一图案的位置和相对姿态来确定第一设备相对于第二设备的姿态。
Description
技术领域
本公开一般涉及用于扩展现实和其他应用的视觉跟踪系统。
背景
可以在各种应用(诸如扩展现实(例如,虚拟现实、增强现实、混合现实等)、计算机视觉、和机器人)中使用姿态估计,以确定对象和/或设备相对于目标(诸如场景、人类、另一对象和/或另一设备)的位置和取向。可使用姿态信息来管理对象/设备与场景、人类、另一对象和/或另一设备之间的交互。例如,机器人的姿态(例如,位置和取向)可用于允许机器人操纵对象或在场景中四处移动时避免与对象碰撞。作为另一示例,用户穿戴的设备与设备控制器的相对姿态可用于向用户提供扩展现实体验,其中跟踪设备控制器的姿态和移动并在用户穿戴的设备上渲染设备控制器的姿态和移动。然而,姿态估计系统的计算复杂性可能施加显著的功率和资源需求,并且在各种应用中可能成为限制因素。姿态估计的计算复杂性还可能限制依赖于姿态信息的跟踪和定位应用的性能和可缩放性。
简要概述
公开了用于针对扩展现实和其他应用的低功率视觉跟踪的系统、方法和计算机可读介质。根据至少一个示例,提供了一种用于针对扩展现实和其他应用的低功率视觉跟踪的方法。该方法可包括:接收由第一设备上的至少一个图像传感器系统捕捉的一个或多个图像,该一个或多个图像捕捉在第二设备上具有预定配置的图案集,其中第一设备与第二设备相比具有较低的功率要求;根据由该至少一个图像传感器系统捕捉的一个或多个图像来确定与第二设备上的图案集相对应的像素集;基于与第二设备上的图案集相对应的像素集来确定来自该图案集的每一图案在空间中的位置和相对姿态;以及基于来自该图案集的每一图案在空间中的位置和相对姿态来确定第一设备相对于第二设备的姿态。
根据至少一个示例,提供了一种用于针对扩展现实和其他应用的低功率视觉跟踪的装置。该装置可包括:存储器;以及耦合至该存储器的一个或多个处理器,该一个或多个处理器被配置成:接收由该装置上的至少一个图像传感器系统捕捉的一个或多个图像,该一个或多个图像捕捉在一设备上具有预定配置的图案集,其中该装置与该设备相比具有较低的功率要求;根据由该至少一个图像传感器系统捕捉的一个或多个图像来确定与该设备上的图案集相对应的像素集;基于与该设备上的图案集相对应的像素集来确定来自该图案集的每一图案在空间中的位置和相对姿态;以及基于来自该图案集的每一图案在空间中的位置和相对姿态来确定该装置相对于该设备的姿态。
根据至少一个示例,提供了一种用于针对扩展现实和其他应用的低功率视觉跟踪的非瞬态计算机可读介质。该非瞬态计算机可读介质可包括存储于其上的指令,该指令在由一个或多个处理器执行时致使该一个或多个处理器进行以下操作:接收由第一设备上的至少一个图像传感器系统捕捉的一个或多个图像,该一个或多个图像捕捉在第二设备上具有预定配置的图案集,其中第一设备与第二设备相比具有较低的功率要求;根据由该至少一个图像传感器系统捕捉的一个或多个图像来确定与第二设备上的图案集相对应的像素集;基于与第二设备上的图案集相对应的像素集来确定来自该图案集的每一图案在空间中的位置和相对姿态;以及基于来自该图案集的每一图案在空间中的位置和相对姿态来确定第一设备相对于第二设备的姿态。
根据至少一个示例,提供了一种用于针对扩展现实和其他应用的低功率视觉跟踪的装备。该装备可包括用于以下操作的装置:接收由第一设备上的至少一个图像传感器系统捕捉的一个或多个图像,该一个或多个图像捕捉在第二设备上具有预定配置的图案集,其中第一设备与第二设备相比具有较低的功率要求;根据由该至少一个图像传感器系统捕捉的一个或多个图像来确定与第二设备上的图案集相对应的像素集;基于与第二设备上的图案集相对应的像素集来确定来自该图案集的每一图案在空间中的位置和相对姿态;以及基于来自该图案集的每一图案在空间中的位置和相对姿态来确定第一设备相对于第二设备的姿态。
在上述方法、装置(装备)和非瞬态计算机可读存储介质的一些示例中,该至少一个图像传感器系统可包括图像传感器系统集,并且确定第一设备相对于第二设备(或装置相对于设备)的姿态是进一步基于该图像传感器系统集的预定的相对位置和取向的。
在一些方面,上述方法、装置(装备)和非瞬态计算机可读存储介质可包括:确定空间中与由图像传感器系统集捕捉的场景相关联的一个或多个点的三维(3D)坐标;以及基于图像传感器系统集的预定的相对位置和取向以及空间中的该一个或多个点的3D坐标来确定第一设备(或装置)上的图像传感器系统集的相对3D姿态,其中第一设备(或装置)相对于第二设备的姿态是进一步基于第一设备(或装置)上的图像传感器系统集的相对3D姿态的。
在一些示例中,第一设备(或装置)相对于第二设备的姿态包括六自由度(6DoF)姿态,并且图案集的预定配置包括:每一图案在第二设备上的相对位置、每一图案在第二设备上的相对取向、每一图案的形状、每一图案的大小、每一图案的特性、和/或图案集的布置。
在一些情形中,确定来自图案集的每一图案在空间中的位置和相对姿态包括:通过旋转空间中与对应于图案集的像素集相对应的3D坐标来确定图案集的3D取向,该3D坐标是相对于参考3D坐标来旋转的;以及通过平移空间中与对应于图案集的像素集相对应的3D坐标来确定图案集的3D位置,该3D坐标是相对于该参考3D坐标来平移的。在一些示例中,每一图案的相对姿态可以是基于图案集的3D取向和图案集的3D位置的,并且每一图案的位置包括来自图案集的3D位置的相应3D位置。
在一些方面,确定第一设备(或装置)相对于第二设备的姿态进一步包括确定第二设备相对于第一设备(或装置)的姿态,其中第一设备(或装置)的姿态包括第一6DoF姿态并且第二设备的姿态包括第二6DoF姿态。
在一些示例中,第一设备(或装置)可包括手控制器设备并且第二设备可包括头戴式显示设备。
在一些示例中,该至少一个图像传感器系统可包括低功率图像传感器系统,并且图案集中的每一图案在红外频谱和/或可见光频谱中是可见的。
在一些方面,图案集中的至少一个图案包括经编码机器可读信息,该经编码机器可读信息包括:与该至少一个图案相关联的位置信息、与该至少一个图案相关联的标识符、唯一代码、设置、和/或关于与第一设备(或装置)和/或第二设备上主存的扩展现实应用相关联的用户账户的信息。
在一些方面,确定与第二设备上的图案集相对应的像素集包括:基于由该至少一个图像传感器系统捕捉的一个或多个图像来检测来自第二设备上的图案集的每一图案;以及标识来自图案集的每一图案中的一个或多个点,该一个或多个点与来自像素集的一个或多个像素相对应,其中确定每一图案在空间中的位置和相对姿态是基于每一图案中的该一个或多个点的。
在一些方面,确定与第二设备上的图案集相对应的像素集包括:基于由该至少一个图像传感器系统捕捉的一个或多个图像来检测来自第二设备上的图案集的每一图案;对于每一图案,检测较小的内部图案;以及标识每一较小的内部图案中的一个或多个点,该一个或多个点与来自像素集的一个或多个像素相对应,其中确定每一图案在空间中的位置和相对姿态是基于每一较小的内部图案中的该一个或多个点的。
在一些示例中,确定第一设备(或装置)相对于第二设备的姿态包括确定第一设备(或装置)相对于第二设备的6DoF姿态以及第二设备相对于第一设备(或装置)的6DoF姿态。在一些方面,上述方法、装置(装备)和非瞬态计算机可读存储介质可包括:基于由该至少一个图像传感器系统捕捉的一个或多个附加图像来检测该一个或多个附加图像中捕捉的对象上的一个或多个附加图案;确定该一个或多个附加图像中与该对象上的一个或多个附加图案相对应的一个或多个像素;以及基于该一个或多个像素来确定该对象相对于第一设备(或装置)的6DoF姿态和第二设备的6DoF姿态中的至少一者的附加6DoF姿态。在一些示例中,该对象可包括墙、显示设备、视频游戏控制台、家具、电器、或家庭用品。
在一些方面,上述装置(装备)可包括一个或多个传感器。在一些方面,上述装置(装备)可包括移动设备。在一些示例中,上述装置(装备)可包括手控制器、移动电话、可穿戴设备、显示设备、移动计算机、头戴式设备和/或相机。
本概述既非旨在标识出要求保护的主题内容的关键特征或必要特征,亦非旨在单独用于确定要求保护的主题内容的范围。本主题内容应当参考本专利的整个说明书的合适部分、任何或所有附图、以及每项权利要求来理解。
前述内容以及其他特征和实施例将在参考以下说明书、权利要求书和所附附图时变得更明显。
附图简述
为了描述可获得本公开的各优点和特征的方式,将通过参考在所附附图中解说的上述原理的特定实施例来呈现对上述原理的更具体的描述。理解这些附图仅描绘了本公开的示例实施例且不应被认为限制其范围,通过使用附图以额外的具体程度和细节来描述和解释本文的原理,在附图中:
图1是解说了根据本公开的一些示例的用于较低功率视觉跟踪的示例环境的简化框图;
图2解说了根据本公开的一些示例的在用于使用辅助系统上的图像传感器系统来检测辅助系统相对于主处理系统的姿态的示例使用情形中的辅助系统和主处理系统的示例视图;
图3A是解说根据本公开的一些示例的用于跟踪辅助系统和/或主处理系统的六自由度(6DoF)姿态的示例使用情形的图示;
图3B是解说根据本公开的一些示例的用于跟踪辅助系统150和/或主处理系统的姿态信息的另一示例使用情形的图示;
图3C是解说根据本公开的一些示例的用于跟踪辅助系统和/或主处理系统的6DoF姿态的示例使用情形的图示;
图3D是解说根据本公开的一些示例的用于基于基准标记物来跟踪被标记对象的示例使用情形的图示;
图4A-C解说了根据本公开的一些示例的基准标记物的示例配置;
图5解说了根据本公开的一些示例的在基准标记物之间投影的且用于参考图案与被观察图案之间的姿态转变的示例参考线;
图6是解说根据本公开的一些示例的参考图案与被观察图案之间的示例姿态转变的图示;
图7是解说根据本公开的一些示例的用于估计辅助系统和主处理系统的相对姿态的示例方法的流程图;以及
图8解说了根据本公开的一些示例的示例计算设备架构。
详细描述
下文提供给了本公开的某些方面和实施例。这些方面和实施例中的一些可独立地应用,并且它们中的一些可组合应用,这对于本领域技术人员来说是显而易见的。在以下描述中,出于解释目的阐述了具体细节以提供对本申请的各实施例的透彻理解。然而,显然的是,可以在没有这些具体细节的情况下实施各实施例。各附图和描述不旨在是限制性的。
以下描述仅提供了示例实施例,并且并不旨在限定本公开的范围、适用性或配置。相反,对示例实施例的以下描述将向本领域技术人员提供用于实现示例实施例的赋能描述。应当理解,在不脱离所附权利要求书中阐述的本申请的精神和范围的情况下,可以对元件的功能和布置进行各种改变。
如前所述,姿态估计系统的计算复杂性可能施加显著的功率和资源需求,并且在各种应用中可能成为限制因素。姿态估计的计算复杂性还可能限制依赖于姿态信息的跟踪和定位应用的性能和可缩放性。例如,视觉和惯性跟踪、定位以及姿态估计算法的计算复杂性可对涉及跟踪、定位和姿态估计的应用(诸如扩展现实(例如,虚拟现实、增强现实、混合现实等)、游戏和机器人)中使用的设备施加较大的功率和资源需求。这样的功率和资源需求因最近在移动和可穿戴设备中实现此类技术以及将这些设备制造得更小、更轻和更舒适(例如,通过降低由设备发出的热量)以供穿戴更长时段的趋势而加剧。
为了解说,扩展现实(XR)设备(诸如头戴式设备(例如,头戴式显示器(HMD)、智能眼镜等))一般依赖于较高功率组件来跟踪它们相对于其他项目(例如,其他设备、对象、人类、障碍物等)的姿态(例如,它们的相对三维(3D)位置和取向)。这样的跟踪可包括6六自由度(DoF)跟踪,这涉及跟踪平移移动(例如,向前/向后或波动(surge)、向上/向下或鼓起(heave)、以及向左/向右或晃动(sway))以及沿x、y和z轴的旋转移动(例如,俯仰、偏航和转动),并且可能是计算密集的。此外,用于6DoF跟踪的较高功率组件可包括例如高分辨率相机、较高功率处理器、以及可见和/或红外(IR)频谱中的明亮发光二极管(LED)照明器。
6DoF跟踪的较高功耗和计算强度可限制6DoF跟踪应用中使用的设备的电池寿命。另外,6DoF应用中使用的较高功耗设备(包括XR设备,诸如头戴式设备)一般比辅助设备(诸如结合较高功耗设备使用的手控制器)消耗更多功率。这至少部分地是由于通常由较高功耗设备执行的显示和图形计算而导致的。结果,较高功耗设备的电池常常比它们的辅助设备的电池更快耗尽。
本公开描述了用于XR和其他应用中的较低功率视觉跟踪的系统、方法和计算机可读介质。本文的较低功率视觉跟踪技术可以降低6DoF跟踪应用中使用的设备(诸如XR设备)的电池消耗并提升其电池寿命。在一些示例中,本文的技术能够将通常由较高功耗设备执行的一些或全部6DoF跟踪任务卸载到与较高功耗设备一起使用的辅助设备。辅助设备可以利用低功率视觉/相机和处理组件以较低功耗率来执行6DoF跟踪任务,藉此提升通常比辅助设备的电池寿命更快耗尽的较高功耗设备的电池寿命。
例如,在一些情形中,代替使用辅助设备上的较高功率供电的LED组件和较高功耗设备上的高分辨率相机来计算辅助设备和较高功耗设备的相对姿态,辅助设备可以实现较低功率相机以执行6DoF跟踪并将相关联的功耗从较高功耗设备卸载。较高功耗设备可实现印刷在设备上的唯一图案,辅助设备上的较低功率相机可使用该唯一图案来标识辅助设备和较高功耗设备的相对姿态。辅助设备可以利用较低功率相机的较低功率能力和硬件加速对象检测框架来检测印刷在较高功耗设备上的唯一图案。
辅助设备可以利用较高功耗设备上的唯一图案作为用于6DoF跟踪的基准标记物。例如,辅助设备上的较低功率相机可将检测到的图案用作用于标识辅助设备和较高功耗设备的相对姿态的基准标记物。在一些情形中,辅助设备可对从较高功耗设备中的唯一图案检测到的基准点的稀疏集执行3D三角测量,以标识辅助设备和较高功耗设备的相对姿态。辅助设备藉此能够以较低功耗率来标识辅助设备与较高功耗设备的相对姿态,并且降低较高功耗设备的功率使用。在一些示例中,6DoF跟踪可以完全(或几乎完全)在辅助设备处执行,由此限制在辅助设备与较高功耗设备之间传送的信息量并且因此降低传输成本和带宽要求。
本文的较低功率视觉跟踪技术可以在各种使用情形和应用中实现。例如,较低功率视觉跟踪技术可以在XR应用、机器人应用、自主系统应用、游戏应用等中实现。为了解说,在一些示例中,较低功率视觉跟踪技术可以由自主机器人真空吸尘器实现以基于相对姿态计算来执行路径规划和定位;较低功率视觉跟踪技术可以由自主交通工具实现以实时(或近乎实时)地达成更高的跟踪、地图绘制和规划性能;较低功率视觉跟踪技术可以由连接到基于电视机的控制台的游戏控制器实现;较低功率视觉跟踪技术可以由连接到头戴式显示器(HMD)的手控制器实现等等。
在一个非限制性解说性示例中,较低功率视觉跟踪技术可以在6DoF或3DoF XR应用中实现。术语扩展现实(XR)可涵盖增强现实(AR)、虚拟现实(VR)、混合现实(MR)等。这些形式的XR中的每一者允许用户体验沉浸式虚拟环境或内容或与其交互。为了提供现实的XR体验,XR技术一般旨在将虚拟内容与物理世界集成,并且常常涉及匹配对象和设备的相对姿态和移动。这可涉及计算设备、对象的相对姿态和/或现实世界环境的地图以便匹配设备、对象、和/或现实世界环境的相对位置和移动,并且以令人信服的方式将内容锚定到现实世界环境中。可使用相对姿态信息来将虚拟内容与用户感知到的运动以及设备、对象和现实世界环境的时空状态相匹配。
如下,本文的较低功率视觉跟踪技术将在XR的上下文中来描述。然而,应当注意,如前文所说明的,本文的较低功率视觉跟踪技术可以在各种各样的其他应用中实现,诸如举例来说机器人应用、自主驾驶或导航应用、游戏系统和控制器等。相应地,出于说明目的,贯穿全文来提供XR作为本文的较低功率视觉跟踪技术的非限制性示例应用。
将在以下公开中如下描述本发明的技术。讨论开始于对用于提供较低功率视觉跟踪和姿态估计的示例系统和技术的描述,如图1到6所解说的。接着是对用于提供较低功率视觉跟踪和姿态估计的示例方法的描述,如图7中所解说的。讨论结束于对包括适于执行较低功率视觉跟踪和相关联的操作的示例硬件组件的示例计算设备架构的描述,如图8中所解说的。本公开现在转向图1。
图1是解说用于较低功率视觉跟踪的示例环境的图示。在该示例中,该环境可包括主处理系统100和辅助系统150。在一些情形中,主处理系统100可包括较高功耗系统,其包括较高功率组件和/或实现较高功率和/或复杂性操作,而辅助系统150可包括较低功耗系统,其包括较低功率组件和/或实现较低功率和/或复杂性操作。
在一些情形中,主处理系统100和辅助系统150可包括用于集成相对姿态信息(例如,主处理系统100和辅助系统150相对于彼此的位置和取向)以用于(诸)视觉跟踪应用或(诸)使用情形的单独设备。例如,主处理系统100和辅助系统150可包括在视觉跟踪应用中被组合使用以提供利用主处理系统100和辅助系统150的相对姿态的一个或多个功能性的单独设备。作为示例而非限制,视觉跟踪应用可包括XR应用、机器人应用、自主驾驶或导航应用、游戏应用等。
在一些示例中,主处理系统100可包括被配置成使用关于主处理系统100和辅助系统150的相对姿态的信息来提供一个或多个功能性的电子设备,该一个或多个功能性诸如是XR功能性、游戏功能性、自主驾驶或导航功能性、计算机视觉功能性、机器人功能等。例如,在一些情形中,主处理系统100可以是XR设备(例如,头戴式显示器、抬头显示设备、智能眼镜、智能电视机系统等)和/或游戏控制台,而辅助系统150可以是用于与主处理系统100和/或由主处理系统100提供的内容交互的控制器(例如,手控制器、远程控制器、输入设备、外部控制设备等)。
作为另一示例,在一些情形中,主处理系统100可以是机器人设备(例如,机器人、自主系统、机器人工具或组件等),而辅助系统150可以是用于生成由主处理系统100实现的视觉跟踪信息的外部设备(例如,控制器、跟踪节点等)。出于解说和说明的目的,主处理系统100和辅助系统150将在以下公开中分别作为XR设备和手控制器来描述。然而,如以上所提及的,在其他示例中,主处理系统100和辅助系统150可包括其他类型的设备。
在图1所示的解说性示例中,主处理系统100可包括一个或多个计算组件110、基准标记物120A-N(统称为“120”)、图像传感器125、扩展现实引擎130、一个或多个计算机视觉模型132、图像处理引擎134和渲染引擎136。在一些示例中,主处理系统100还可包括其他传感器和/或组件,作为示例而非限制,诸如陀螺仪、加速度计、惯性测量单元(IMU)、雷达、光检测和测距(LIDAR)传感器、音频传感器、发光二极管(LED)设备、存储设备、高速缓存、通信接口、显示器、存储器设备等。
此外,在图1所示的解说性示例中,辅助系统150可包括图像传感器系统152、加速度计154、陀螺仪、跟踪引擎158和网络160。在一些示例中,辅助系统150还可包括其他传感器和/或组件,作为示例而非限制,诸如IMU、雷达、LIDAR、音频传感器、LED设备、存储设备、高速缓存、通信接口、存储器设备等。下文将参考图8来进一步描述可由主处理系统100和/或辅助系统150实现的示例架构和示例硬件组件。应注意,图1中关于主处理系统100和辅助系统150示出的组件仅仅是出于说明目的而提供的解说性示例,并且在其他示例中,主处理系统100和/或辅助系统150可包括比图1所示的组件更多或更少的组件。
主处理系统100可以是单个计算设备或多个计算设备的一部分或由单个计算设备或多个计算设备来实现。在一些示例中,主处理系统100可以是电子设备(或多个电子设备)的一部分,诸如相机系统(例如,数字相机、IP相机、视频相机、安全相机等)、电话系统(例如,智能电话、蜂窝电话、会议系统等)、膝上型或笔记本计算机、平板计算机、机顶盒、智能电视机、显示设备、游戏控制台、XR设备(诸如HMD、无人机、交通工具中的计算机)、IoT(物联网)设备、智能可穿戴设备、或(诸)任何其他合适的电子设备。在一些实现中,一个或多个计算组件110、基准标记物120、图像传感器125、扩展现实引擎130、一个或多个计算机视觉模型132、图像处理引擎134和渲染引擎136可以是同一计算设备的一部分。
例如,在一些情形中,一个或多个计算组件110、基准标记物120、图像传感器125、扩展现实引擎130、一个或多个计算机视觉模型132、图像处理引擎134和渲染引擎136可以被集成到相机系统、智能电话、膝上型计算机、平板计算机、智能可穿戴设备、XR设备(诸如HMD)、IoT设备、游戏系统、和/或任何其他计算设备中。然而,在一些实现中,计算组件110、基准标记物120、图像传感器125、扩展现实引擎130、一个或多个计算机视觉模型132、图像处理引擎134和/或渲染引擎136中的一者或多者可以是两个或更多个单独的计算设备的一部分或由两个或更多个单独的计算设备来实现。
类似地,辅助系统150可以是单个计算设备或多个计算设备的一部分或由单个计算设备或多个计算设备来实现。在一些示例中,辅助系统150可以是电子设备(或多个电子设备)的一部分,诸如智能电话、膝上型或笔记本计算机、平板计算机、控制器(例如,手控制器、远程控制器、外部控制设备、输入设备等)、IoT设备、智能可穿戴设备、或(诸)任何其他合适的电子设备。在一些实现中,图像传感器系统152、加速度计154、陀螺仪156、跟踪引擎158和计算机视觉模型160可以是同一计算设备的一部分。
例如,在一些情形中,图像传感器系统152、加速度计154、陀螺仪156、跟踪引擎158和计算机视觉模型160可以被集成到控制器、智能电话、膝上型计算机、平板计算机、智能可穿戴设备、IoT设备、和/或任何其他计算设备中。然而,在一些实现中,图像传感器系统152、加速度计154、陀螺仪、跟踪引擎158和/或一个或多个计算机视觉模型160中的一者或多者可以是两个或更多个单独设备的一部分或由两个或更多个单独设备来实现。
作为示例而非限制,主处理系统100的一个或多个计算组件110可包括中央处理单元(CPU)112、图形处理单元(GPU)114、数字信号处理器(DSP)116和/或图像信号处理器(ISP)118。主处理系统100可使用一个或多个计算组件110来执行各种计算操作,诸如举例来说扩展现实操作(例如,跟踪、定位、姿态估计、地图绘制、内容锚定、内容渲染等)、图像/视频处理、图形渲染、机器学习、数据处理、建模、计算、和/或任何其他操作。在图1所示的示例中,一个或多个计算组件110实现扩展现实(XR)引擎130、图像处理引擎134和渲染引擎136。在其他示例中,一个或多个计算组件110还可实现一个或多个其他处理引擎。此外,XR引擎130可实现一个或多个计算机视觉模型132,其被配置成执行XR操作,诸如跟踪、定位、姿态估计、地图绘制、内容锚定等。
XR引擎130、一个或多个计算机视觉模型132、图像处理引擎134和渲染引擎136(以及任何其他处理引擎)的操作可以由一个或多个计算组件110中的任何计算组件实现。在一个解说性示例中,渲染引擎136的操作可以由GPU 114实现,XR引擎130、一个或多个计算机视觉模型132、图像处理引擎134和/或一个或多个其他处理引擎的操作可以由CPU 112、DSP116和/或ISP 118实现。在一些示例中,XR引擎130、一个或多个计算机视觉模型132和图像处理引擎134的操作可以由ISP 118实现。在其他示例中,XR引擎130、一个或多个计算机视觉模型132和/或图像处理引擎134的操作可以由CPU 112、DSP 116、ISP 118和/或CPU 112、DSP 116和ISP 118的组合实现。
在一些情形中,一个或多个计算组件110可包括其他电子电路或硬件、计算机软件、固件、或其任何组合以执行本文描述的各操作中的任一操作。此外,在一些示例中,一个或多个计算组件110可包括比图1所示的计算组件更多或更少的计算组件。实际上,CPU112、GPU 114、DSP 116和ISP 118仅仅是出于说明目的提供的解说性示例。
主处理系统100可包括印刷、显示、蚀刻、配置、附连和/或提供在主处理系统100的外部/外侧上的基准标记物120A到120N(统称为“120”)。在一些情形中,基准标记物120可位于主处理系统100上某些已知位置处和/或相对于彼此的某些已知距离处。在一些情形中,基准标记物120可具有相同或不同的预定大小、形状和/或配置中的一者或多者。基准标记物120的数目、相对位置、相对距离、大小、形状和/或配置在不同示例中可以不同,如下文进一步描述的。此外,基准标记物120可包括可被辅助系统150上的图像传感器152检测和分析以标识姿态信息的图案、代码、经编码数据和/或对象,如下文进一步描述的。在一些情形中,基准标记物120可以是在可见光频谱和/或红外频谱中可见的。
基准标记物120可包括直接在主处理系统100上的特定图案或(例如,附连、粘贴、提供等)在主处理系统100上的对象或材料上的特定图案。例如,在一些情形中,基准标记物120可包括带有图案的贴纸(或粘性元件或材料)。作为另一示例,基准标记物120可包括蚀刻、设计、覆盖、或印刷在主处理系统100上的图案。作为另一示例,基准标记物120可包括带有图案的膜、对象、覆盖物或材料。
图像传感器125可包括任何图像和/或视频传感器或捕捉设备,诸如数字相机传感器、视频相机传感器、智能电话相机传感器、电子装置(诸如电视机或计算机、相机等)上的图像/视频捕捉设备。在一些情形中,图像传感器125可以是相机或计算设备(诸如数字相机、视频相机、IP相机、智能电话、智能电视机、游戏系统等)的一部分。此外,在一些情形中,图像传感器125可包括多个图像传感器,诸如后置和前置传感器设备,并且可以是双相机或其他多相机组装件(例如,包括两个相机、三个相机、四个相机或其他数目的相机)的一部分。
在一些示例中,图像传感器125可以表示或包括一个或多个低功率图像传感器系统,诸如下文关于辅助系统150描述的图像传感器系统152。图像传感器125可捕捉可由图像传感器125、一个或多个计算组件110和/或一个或多个其他组件处理的图像和/或视频数据(例如,原始图像和/或视频数据)。在一些情形中,图像传感器125可检测或识别图案或对象中的经编码信息,如下文关于辅助系统150上的图像传感器系统152进一步描述的。
在一些示例中,图像传感器125可捕捉图像数据并基于图像数据来生成帧和/或将图像数据或帧提供给XR引擎130、图像处理引擎1334和/或渲染引擎136以供处理。帧可包括视频序列的视频帧或静止图像。帧可包括表示场景的像素阵列。例如,帧可以是每像素具有红色、绿色和蓝色分量的红绿蓝(RGB)帧;每像素具有亮度分量和两个色度(色彩)分量(红色色度和蓝色色度)的亮度、红色色度、蓝色色度(YCbCr)帧;或任何其他合适类型的彩色或单色图片。
在一些示例中,XR引擎130和/或一个或多个计算机视觉模型132可基于来自图像传感器125、图像传感器系统152、加速度计154、陀螺仪156、跟踪引擎158和/或主处理系统100上的一个或多个传感器(诸如IMU、加速度计、陀螺仪等)的数据来执行XR处理操作。例如,在一些情形中,XR引擎130和/或一个或多个计算机视觉模型132可执行跟踪、定位、姿态估计、地图绘制、和/或内容锚定操作。
在一些示例中,图像处理引擎134可基于来自图像传感器125和/或图像传感器系统152的数据来执行图像处理操作。在一些情形中,图像处理引擎134可执行图像处理操作,诸如举例来说,过滤、去马赛克、缩放、色彩纠正、色彩转变、分割、降噪过滤、空间过滤、伪像纠正等。渲染引擎136可获得由计算组件110、图像传感器125、XR引擎130、一个或多个计算机视觉模型132、和/或图像处理引擎134生成和/或处理的图像数据,并且渲染视频和/或图像帧以供在显示设备上呈现。
在一些情形中,辅助系统150上的图像传感器系统152可包括低功率成像系统或常开型计算机视觉相机系统。例如,每一图像传感器系统可包括图像传感器和用于处理由图像传感器捕捉的图像数据的一个或多个低功率处理器。在一些情形中,每一图像传感器系统可包括一个或多个图像处理、计算机视觉、和/或其他处理算法。例如,在一些情形中,图像传感器系统132可包括或实现跟踪引擎158和/或计算机视觉模型160并执行姿态估计,如本文进一步描述的。如本文进一步描述的,在一些示例中,图像传感器系统152可检测主处理系统100上的基准标记物120并基于检测到的基准标记物120来估计辅助系统150和主处理系统100的相对姿态。
跟踪引擎158可实现用于跟踪并估计辅助系统150和主处理系统100的相对姿态的一种或多种算法。在一些示例中,跟踪引擎158可接收由图像传感器系统152捕捉的图像数据,并基于接收到的图像数据来执行姿态估计以计算辅助系统150和主处理系统100的相对姿态。在一些情形中,跟踪引擎158可实现计算机视觉模型160以计算辅助系统150和主处理系统100的相对姿态。在一些示例中,跟踪引擎158和/或计算机视觉模型160可以由图像传感器系统152实现。例如,每一图像传感器系统可实现用于执行如本文所描述的姿态估计的跟踪引擎和计算机视觉模型。在其他示例中,跟踪引擎158和/或计算机视觉模型160可以由与图像传感器系统152分开的辅助系统150来实现。
加速度计154可检测辅助系统150的加速度并基于检测到的加速度来生成加速度测量。陀螺仪156可检测并测量辅助系统150的取向和角速度。例如,陀螺仪156可用于测量辅助系统150的俯仰、转动和偏航。在一些示例中,图像传感器系统152和/或跟踪引擎158可使用由加速度计154和陀螺仪156获得的测量来计算辅助系统150和主处理系统100的相对姿态,如本文进一步描述的。例如,图像传感器系统152可检测基准标记物120和主处理系统100的位置,并且图像传感器系统152和/或跟踪引擎158可使用检测到的基准标记物120的位置以及来自加速度计154和陀螺仪156的测量来计算辅助系统150相对于主处理系统100的姿态。
尽管主处理系统100和辅助系统150被示为包括某些组件,但本领域普通技术人员将领会,主处理系统100和辅助系统150可包括比图1所示的组件更多或更少的组件。例如,在一些实例中,主处理系统100和/或辅助系统150还可包括一个或多个其他存储器设备(例如,RAM、ROM、高速缓存等)、一个或多个联网接口(例如,有线和/或无线通信接口等)、一个或多个显示设备、高速缓存、存储设备、和/或图1中未示出的其他硬件或处理设备。下文将参考图8来描述可通过主处理系统100和/或辅助系统150来实现的计算设备和硬件组件的解说性示例。
图2解说了在用于使用辅助系统150上的图像传感器系统152来检测辅助系统150相对于主处理系统100的姿态的示例使用情形中的辅助系统150和主处理系统100的示例视图200。在该示例中,辅助系统150表示与主处理系统100组合使用以提供XR体验的手控制器(诸如环控制器)。此外,在该示例中,主处理系统100表示可穿戴XR设备(诸如HMD)。然而,应当注意,手控制器和可穿戴设备出于说明目的在本文中被用作解说性示例,并且在其他示例中,辅助系统150和/或主处理系统100可包括或表示其他设备,诸如举例来说,其他类型的控制器、游戏系统、智能可穿戴设备、IoT设备、传感器系统、智能电视机等。
类似地,出于解说性和说明目的,本文参考图3A到图7描述的辅助系统150和主处理系统100将在以下公开中被分别描述为包括或表示示例手控制器和示例可穿戴XR设备(例如,HMD)。然而,应当注意,手控制器和可穿戴XR设备仅仅是用于说明目的的解说性示例,并且在其他示例中,本文参考图3A到图7描述的辅助系统150和/或主处理系统100可包括或表示其他设备,诸如举例来说,其他类型的控制器、游戏系统、智能可穿戴设备、IoT设备、传感器系统、智能电视机等。
如所解说的,辅助系统150可包括图像传感器系统152A-152N(统称为“152”),其可用于在主处理系统100上的基准标记物(例如,120)在图像传感器系统152的视野(FoV)内时检测这些基准标记物。辅助系统150可使用图像传感器系统152A-152N来检测基准标记物,标识基准标记物中的一者或多者的相对位置,并使用该信息来估计辅助系统150相对于主处理系统100的姿态。
例如,当基准标记物在至少一个图像传感器系统(例如,图像传感器系统152A、152B、152C、152D、152E、152F、152G到152N)的FoV内时,该至少一个图像传感器系统可捕捉该基准标记物的图像并使用捕捉到的图像来检测该一个或多个基准标记物的位置/定位。类似地,当多个基准标记物在一个或多个图像传感器系统(例如,图像传感器系统152A、152B、152C、152D、152E、152F、152G到152N)的FoV内时,该一个或多个图像传感器系统可捕捉该多个基准标记物的图像并使用捕捉到的图像来检测该多个基准标记物的相对位置/定位。
在一些示例中,图像传感器系统152和/或辅助系统150可使用检测到的主处理系统100上的基准标记物的相对位置/定位来计算辅助系统150相对于主处理系统100的姿态。例如,当主处理系统100上的基准标记物在辅助系统150上的图像传感器系统(例如,图像传感器系统152A、152B、152C、152D、152E、152F、152G到152N)的FoV内时,那些图像传感器系统可捕捉基准标记物的图像。辅助系统150和/或图像传感器系统可使用捕捉到的图像来检测基准标记物并确定它们在3D空间中的相对位置/定位。图像传感器系统和/或辅助系统150可使用基准标记物的相对位置/定位来计算辅助系统150相对于主处理系统100的姿态。
在一些示例中,当基准标记物在多个图像传感器系统的FoV内时,辅助系统150可跟踪辅助系统150相对于主处理系统100的6DoF状态。在一些情形中,当基准标记物在仅一个图像传感器系统的FoV内时,辅助系统150可跟踪辅助系统150相对于主处理系统100的6DoF状态的子集。在一些情形中,当基准标记物不在任何图像传感器系统的FoV内时,辅助系统150可使用加速度计154和陀螺仪156来获得辅助系统150的惯性测量,并使用该惯性测量来跟踪辅助系统150的状态。
通过使用辅助系统150上的图像传感器系统152(其可具有低功耗)以基于主处理系统100上的基准标记物来跟踪辅助系统150的姿态,而非使用主处理系统100上的较高功率组件,能够以较低功耗来跟踪辅助系统150的姿态。因而,这样的策略能够节约通常具有较高功率组件且因此具有较高功率需求和/或更受限的电池寿命的主处理系统100的功率。
尽管示例视图200解说了单个辅助系统150,但是应当注意,其他示例可包括多个辅助系统。例如,在一些情形中,两个辅助系统(例如,包括辅助系统150和另一辅助系统)(诸如两个手控制器)可与主处理系统100组合使用以跟踪每一辅助系统相对于主处理系统100的相应姿态。本文仅出于说明目的作为解说性示例来提供单个辅助系统150。
图3A是解说用于跟踪辅助系统150和/或主处理系统100的6DoF姿态的示例使用情形300的图示。在该示例中,主处理系统100上的基准标记物320A和320B在图像传感器系统152A、152B到152N(其中N是大于或等于0的值)的FoV内,并且图像传感器系统152A、152B到152N可捕捉主处理系统100上的基准标记物320A和320B的图像数据(例如,一个或多个图像或帧)。图像传感器系统152A、152B到152N和/或辅助系统150可运行对象检测以检测图像传感器系统152A、152B到152N的FoV内的基准标记物320A和320B。
基准标记物320A和320B中的每一者可包括特定图案(多个图案),其可由图像传感器系统152A、152B到152N检测。检测到的基准标记物320A和320B的图案可用于标识基准标记物320A和320B的定位。当图像传感器系统152A、152B到152N中的两者检测到相同图案(例如,基准标记物320A和320B)时,辅助系统150可三角测量基准标记物320A和320B的三维(3D)位置。辅助系统150可使用基准标记物120A到120N的3D位置以及基准标记物320A和320B的相对姿态来标识辅助系统150相对于主处理系统100的6DoF姿态。在一些示例中,辅助系统150可使用基准标记物320A和320B的3D位置以及基准标记物320A和320B的相对姿态来标识主处理系统100相对于辅助系统150的6DoF姿态。
此外,在一些示例中,随着越多的基准标记物被检测到和/或随着越多的图像传感器系统检测到相同的基准标记物(或多个基准标记物),计算出的姿态信息可以越准确和稳健。例如,如果附加图像传感器系统能够检测到基准标记物320A和320B中的一者或多者和/或如果图像传感器系统152A、152B到152N(和/或附加图像传感器系统)能够检测到附加基准标记物,则辅助系统150可使用附加基准标记物数据来增加计算出的姿态信息的准确性。
在图3A中,基准标记物320A和320B 0N被印刷在主处理系统100的正面并且被示为具有特定圆形配置。然而,应注意,其他示例可实现基准标记物的不同数目、布置、形状、大小、结构、设计和/或配置。例如,在一些情形中,主处理系统100可具有印刷在主处理系统100的正面、顶部和/或侧面上的更多或更少的基准标记物,并且基准标记物可具有相同或不同的形状、大小、图案、结构、设计和/或配置。在一些情形中,印刷在主处理系统100上的基准标记物可以按特定配置来取向,该特定配置允许在辅助系统150或主处理系统100上下颠倒扭转或以其他方式被旋转的情形中区分左右定位。
图3B是解说用于跟踪辅助系统150和/或主处理系统100的姿态信息的另一示例使用情形320的图示。在该示例中,基准标记物320A和320B仅在图像传感器系统152A的FoV内。图像传感器系统152A可捕捉基准标记物320A和320B的图像数据(例如,一个或多个图像或帧),并且辅助系统150和/或图像传感器系统152A可运行对象检测以检测在图像传感器系统152A的FoV内的基准标记物320A和320B。
如前文所提及的,基准标记物320A和320B中的每一者可包括特定图案,其可由图像传感器系统152A检测。当图像传感器系统152A检测到基准标记物320A和320B时,辅助系统150(或图像传感器系统152A)可三角测量基准标记物320A和320B的3D位置。辅助系统150(或图像传感器系统152A)接着可使用基准标记物320A和320B的3D位置及其相对姿态来标识辅助系统150相对于主处理系统100的6DoF状态的至少一部分或子集。在一些示例中,辅助系统150(或图像传感器系统152A)可类似地使用基准标记物320A和320B的3D位置及其相对姿态来标识主处理系统100相对于辅助系统150的6DoF状态的至少一部分或子集。
图3C是解说用于跟踪辅助系统150和/或主处理系统100的6DoF姿态的示例使用情形340的图示。在该示例中,基准标记物320C到320F(在图3C中被示为基准标记物320C、320D、320E和320F)被实现在辅助系统150上,而图像传感器系统152A和152N被实现在主处理系统100上。此外,基准标记物320C到320F在主处理系统100上的图像传感器系统152A、152B到152N的FoV内。图像传感器系统152A、152B到152N可捕捉基准标记物320C到320F的图像数据(例如,一个或多个图像或帧),并且主处理系统100和/或图像传感器系统152A和/或152B可运行对象检测以检测在图像传感器系统152A、152B到152N的FoV内的基准标记物320C到320F。
图像传感器系统152A、152B到152N可检测基准标记物320C到320F中描绘的特定图案以标识基准标记物320C到320F的相对位置/定位。当图像传感器系统152A、152B到152N中的两者检测到相同图案(例如,基准标记物320C到320F)时,主处理系统100可三角测量基准标记物320C到320F的3D位置。主处理系统100接着可使用基准标记物320C到320F的3D位置以及基准标记物320C到320F的相对姿态来标识辅助系统150相对于主处理系统100的6DoF姿态。在一些示例中,主处理系统100还可使用基准标记物320C到320F的3D位置及其相对姿态来标识辅助系统150相对于主处理系统100的6DoF姿态。
在一些情形中,辅助系统150上的基准标记物的数目以及主处理系统100上检测到(诸)相同基准标记物的图像传感器系统的数目可以影响由主处理系统100计算的姿态信息的准确性和稳健性,因为它可增加或减少用于计算姿态信息的基准数据点的量和/或与计算姿态信息相关的数据点的量。此外,在一些情形中,印刷在辅助系统150上的基准标记物可以按特定配置来取向,该特定配置允许在辅助系统150或主处理系统100上下颠倒扭转或以其他方式被旋转的情形中区分左右定位。
图3D是解说用于基于基准标记物320G和320N来跟踪被标记对象的示例使用情形360的图示。在该示例中,基准标记物320G和320N被印刷在目标362上以用于在XR体验、游戏或或另一基于跟踪的应用期间识别和跟踪目标362。在一些情形中,用户可以将基准标记物320G和320N放置或印刷在目标362上。在其他情形中,目标362可设计有基准标记物320G和320N或可实现基准标记物320G和320N。例如,在配置或制造目标362时,可以在目标362上蚀刻、印刷或配置基准标记物320G和320N。
目标362可包括要跟踪的任何对象或项目。例如,目标362可包括游戏控制台、电视机、环境对象、家具、墙、门、计算机、装备、设备、电器、工具等。此外,目标362可包括任何数目、大小、形状、布置、结构、设计和/或配置的基准标记物。
目标362上的基准标记物320G和320N被示为在主处理系统100上的图像传感器系统152A、152B到152N的FoV内。图像传感器系统152A、152B到152N可捕捉基准标记物320G和320N的图像数据(例如,一个或多个图像或帧),并且主处理系统100和/或图像传感器系统152A和/或152B可运行对象检测以检测在图像传感器系统152A、152B到152N的FoV内的基准标记物320G和320N。
图像传感器系统152A、152B到152N可检测基准标记物320G和320N上的特定图案以标识基准标记物320G和320N的定位。当图像传感器系统152A、152B到152N中的两者检测到相同图案(例如,基准标记物320G和320N)时,主处理系统100可三角测量基准标记物320G和320N的3D位置。主处理系统100接着可使用基准标记物320G和320N的3D位置以及基准标记物320G和320N的相对姿态来标识目标362相对于主处理系统100的6DoF姿态。在一些示例中,主处理系统100还可使用基准标记物320G和320N的3D位置及其相对姿态来标识主处理系统100相对于目标362的6DoF姿态。
图4A解说了基准标记物的示例配置400。在该示例中,基准标记物420A和420B的形状是带有图案的圆环。然而,应注意,在其他示例中,基准标记物420A和420B可具有任何其他形状,诸如举例来说正方形、三角形、矩形、八边形等。
圆环内的图案可具有任何形状、配置、布置、特性和/或设计。此外,基准标记物420A和420B(例如,圆环)内的图案可基于在IR和/或可见光频谱中可见的任何特征、元素、特性或项目。例如,这些图案可包括颜色、线条、字母、符号、代码、纹理、蚀刻、非均匀性、物质、图像、光照(例如,可见光或IR频谱中)、背光(例如,可见光或IR频谱中)、来自外部或环境源的光照(例如,环境中的IR泛光)等。
图像传感器系统152可分析捕捉基准标记物420A和420B的图像数据,并基于基准标记物420A和420B的图案(和/或图案中的一个或多个点)来检测图像数据内的基准标记物420A和420B。在一些示例中,图像传感器系统152的对象检测可提供基准标记物420A和420B周围的边界框402A和402B。边界框402A和402B可表示和/或可用于标识基准标记物420A和420B的相对定位。
图4B解说了基准标记物的另一示例配置410。在该示例中,基准标记物420C到420G是机器可读条形码,诸如带有正方形图案412、414和416的快速响应(QR)码。机器可读条形码中的每一者可对信息进行编码,该信息诸如是位置信息、定位信息(例如,左相对于右等)、标识符、跟踪符、用户信息、设备信息、游戏信息、XR信息、应用信息、元数据、文本、视频游戏信息(例如,玩家信息、玩游戏元素等)、设置信息、和/或任何其他类型的信息。例如,机器可读条形码可对多玩家游戏设置中的每一玩家的唯一代码进行编码。
辅助系统(例如,150)上的图像传感器系统(例如,152)可检测基准标记物以检测它们的相对定位。在一些示例中,辅助系统上的图像传感器系统可读取基准标记物420C到420G中的机器可读条形码以检测编码在该机器可读条形码中的信息来确定基准标记物的定位和/或来自经编码信息的任何其他数据。在一些示例中,图像传感器系统可在比机器可读条形码更远的距离处检测基准标记物420C到420G中的正方形图案412、414和416以允许图像传感器系统即便在无法读取机器可读条形码的情况下也能够计算基准标记物的定位和/或与基准标记物相关联的信息。
图4C解说了基准标记物420N的另一示例配置。在该示例中,基准标记物420N包括外部图案430和内部图案432。在该示例中,外部图案430是圆环而内部图案432是内部圆环。然而,应注意,在其他示例中,外部图案430和/或内部图案432可具有任何其他形状,诸如举例来说正方形、三角形、矩形、八边形等。
在一些示例中,外部图案430和/或内部图案432可具有任何形状、配置、布置、特性和/或设计。此外,外部图案430和/或内部图案432可基于在IR和/或可见光频谱中可见的任何特征、元素或项目。例如,外部图案430和/或内部图案432可包括颜色、线条、字母、符号、代码、纹理、蚀刻、非均匀性、物质、图像、光照(例如,可见光或IR频谱中)、背光(例如,可见光或IR频谱中)等。
在一些情形中,内部图案432可用于提供基准标记物420N的更准确定位。例如,内部图案432可被用作用于重复地和/或精确地定位基准标记物420N上的(诸)特定点的地标。在一些情形中,用于检测基准标记物420N的图像传感器系统(例如,152)可实现自适应跨步以提升其效率。结果,由图像传感器系统检测到的基准标记物420N周围的边界框可能无法总是精确地或准确地以基准标记物420N为中心,这可能影响三角测量的准确性。例如,基准标记物420N周围的边界框可能远离或偏离数个像素,这可能影响三角测量的准确性。
在一些示例中,为了改进基准标记物内的关键点定位的精度,图像传感器系统(例如,152)可对整个图案(例如,外部图案430)运行快速且粗略的对象检测。在基于快速且粗略的对象检测来检测外部图案430之后,图像传感器系统可在与外部图案430相关联的检测窗口内对内部图案432运行精细粒度的搜索。这还可改进内部图案432相对于图像传感器系统在更大取向上的定位准确性。在一些示例中,可通过针对更大的取向来稳健地训练来支持这种两阶段定位算法。在一些情形中,这种两阶段定位算法还可利用失败分支机制(例如,机器学习对象检测中的有条件分支)以用于图像传感器系统的多对象检测。
图5解说了投影在基准标记物520A和520B之间且用于参考图案与被观察图案之间的姿态转变的示例参考线502。参考线502可以联结基准标记物520A和520B上的两个或更多个点(和/或可以跨这两个或更多个点来投影)。在该示例中,参考线502联结基准标记物520A和520B的中心。参考线502的参考位置可以基于3D空间中的参考坐标系(例如,X、Y、Z坐标系)(诸如世界或齐次坐标系)来计算。此外,参考线502的观察到的位置可基于由图像传感器系统152捕捉的图像来确定。可相对于图像坐标系(例如,与由图像传感器系统152捕捉的图像相关联的坐标系)来确定观察到的位置。
在一些示例中,可以比较参考线502的参考位置与参考线502的观察到的位置以计算基准标记物520A和520B的姿态和/或在计算基准标记物520A和520B的姿态时改进姿态估计准确性。在一些示例中,参考线502的参考位置以及参考线502的观察到的位置可用于相对于基准标记物520A和520B的参考姿态来转变基准标记物520A和520B的观察到的姿态,如下文参考图6进一步描述的。在一些示例中,可使用从参考线502的参考位置与参考线502的观察到的位置投影的和/或在参考线502的参考位置与参考线502的观察到的位置之间投影的坐标平面(例如,X、Y、Z坐标平面)之间的相对距离和/或角度来相对于参考线502的参考姿态平移参考线502的观察到的姿态。参考线502的经平移的姿态可用于确定与参考线502相关联的图案的相对姿态。
图6是解说参考图案(例如,参考基准标记物520A和520B)与观察到的图案(例如,观察到的基准标记物520A和520B)之间的示例姿态转变600的图示。在一些情形中,观察到的图案可包括在经由图像传感器系统152捕捉的图像中检测到的图案,并且参考图案可包括相对于参考坐标系(例如,世界坐标或齐次坐标系)确定的图案。
在图6所示的示例中,计算参考线(例如,参考线502)的观察到的位置606与参考线的参考位置604之间的平移转变602以确定参考线的实际、绝对和/或估计定位。可基于参考线的参考位置604与参考线的观察到的位置606来计算平移转变602。在一些情形中,平移转变602可基于来自参考线的参考位置604与参考线的观察到的位置606沿X轴、Y轴和Z轴的投影。在一些示例中,投影可反映参考线的参考位置604与观察到的位置606的差异。
例如,可比较来自参考位置604(或参考位置604中的一个或多个点)和观察到的位置606(或观察到的位置606中的一个或多个点)沿X轴、Y轴和Z轴的投影以平移或恢复参考线的位置。在一些情形中,可使用投影来执行参考线的参考位置604与参考线的观察到的位置606之间沿X轴、Y轴和Z轴的平移转变602。
在一些示例中,参考线的参考位置604可以是参考线(和/或参考线的一个或多个点)的已知的或计算出的位置。在一些情形中,可通过三角测量来自参考系和/或坐标系的参考线的一个或多个点来计算参考线的(沿X轴描绘的)参考位置604。在一些情形中,这样的三角测量可利用已知的关于与参考线相关联的图案(诸如参考图案和观察到的图案(例如,基准标记物520A和520B))的相对配置和/或位置的信息。在一些情形中,参考线的观察到的位置606可以是根据捕捉该参考线的(诸)图像(例如,经由一个或多个图像传感器系统152获得的图像)观察和/或计算的参考线(和/或参考线的一个或多个点)的位置。
此外,可通过恢复和估计参考线沿X轴、Y轴和Z轴的旋转角度620、622、624来计算参考线的(各自沿Y轴、X轴和Z轴描绘的)参考取向612与参考线的观察到的取向之间的旋转转变610。旋转角度620、622、624可基于针对参考线的观察到的取向和/或参考线的参考取向612沿X轴、Y轴和Z轴生成的投影614、616和618来计算。例如,参考线沿X轴的旋转角度620可基于来自参考取向612沿X轴的投影614来计算。类似地,参考线沿Y轴的旋转角度622可基于来自参考取向612沿Y轴的投影616来计算。最后,参考线沿Z轴的旋转角度624可基于来自参考取向612沿Z轴的投影618来计算。
在一些示例中,旋转角度620、622和624可用于估计或恢复参考线的取向。此外,在一些示例中,沿X轴、Y轴和Z轴连接投影614、616和618的点(多个点)可用于计算参考线的旋转角度620、622和624和/或参考线的取向。
平移转变602和旋转转变610可用于执行关联于参考线的参考图案的姿态与关联于参考线的观察到的图案的观察到的姿态之间的姿态转变600。在一些示例中,姿态转变600可用于估计关联于参考线的参考图案(例如,参考基准标记物520A和520B)的相对姿态以及关联于参考线的观察到的图案的观察到的姿态(例如,基准标记物520A和520B的观察到的图案),其可反应参考图案(例如,基准标记物520A和520B)和观察到的图案的相对位置和取向。在一些示例中,辅助系统150和主处理系统100的相对6DoF姿态可基于参考图案和观察到的图案的相对姿态来计算。
在一些示例中,可通过对由图像传感器系统152观察到的图案(例如,基准标记物520A和520B)群的3D位置、该图案群的相对姿态、以及图像传感器系统152的经校准的相对位置进行三角测量来计算辅助系统150和主处理系统100的相对6DoF姿态。在一些情形中,辅助系统150上的图像传感器系统152可捕捉参考线的图像或帧(和/或相关联的图案和/或其上的点),并且可使用这些图像或帧、通过计算辅助系统150的姿态与主处理系统100的姿态(和/或图案或基准标记物520A和520B)之间的相对转变来估计辅助系统150和主处理系统100的相对6DoF姿态和/或运动。在一些示例中,主处理系统100的姿态可基于姿态转变600来计算,如前文所说明的。
在一些示例中,辅助系统150上的两个或更多个图像传感器系统152可捕捉主处理系统100上的基准标记物(例如,基准标记物中的两者或更多者)的图像或帧,并且可使用与这些图像或帧中捕捉到的基准标记物中的点相对应的图像或帧中的像素位置来计算辅助系统150和主处理系统100的相对6DoF姿态。例如,两个或更多个图像传感器系统152的6DoF姿态可相对于彼此来校准。两个或更多个图像传感器系统152可捕捉主处理系统100上的同一组基准标记物(例如,520A和520B)的图像或帧,并且检测与这些图像或帧中捕捉到的基准标记物中的点相对应的像素。可基于与基准标记物中的点相对应的那些像素来三角测量基准标记物中的点的位置。与像素相对应的点的经三角测量的位置可用于计算基准标记物的3D位置和相对姿态。基准标记物的3D位置和相对姿态可反映与基准标记物相关联的主处理系统100的3D位置和姿态。因而,基准标记物的3D位置和相对姿态可与两个或更多个图像传感器系统152的相对姿态一起用于估计辅助系统150和主处理系统100的相对6DoF姿态。
已经公开了示例系统、组件和概念,本公开现在转向用于估计辅助系统(例如,150)和主处理系统(例如,100)的相对姿态的示例方法700,如图7所示。本文勾勒的步骤是出于解说目的来提供的非限制性示例,并且可以以其任何组合来实现,包括去除、增加、或修改某些步骤的组合。
在框702,方法700可包括接收由来自第一设备(例如,辅助系统150)上的图像传感器系统集(例如,152)的每一图像传感器系统所捕捉的一个或多个图像。该一个或多个图像可捕捉第二设备(例如,主处理系统100)上的图案集(例如,120A到120N)。在一些示例中,图案集可以是包含一个或多个图案的基准标记物。此外,图案集可以是在红外频谱或可见光频谱中可见的。
图案集可在第二设备上具有预定配置。作为示例而非限制,图案集的预定配置可包括:每一图案在第二设备上的相对位置、每一图案在第二设备上的相对取向、每一图案的形状、每一图案的大小、每一图案的特性、和/或图案集的布置。在一些示例中,来自图案集的一个或多个图案可包括经编码机器可读信息,如图4B所示。编码在图案中的经编码机器可读信息可包括与图案相关联的位置信息、与图案相关联的标识符、唯一代码、设置、关于与第二设备上主存的XR应用相关联的用户账户(例如,游戏中的玩家、用户简档等)的信息。
在一些情形中,第一设备与第二设备相比可具有较低的功率要求。例如,第一设备与第二设备相比可消耗较低的功率和/或具有较低功率组件。在一些示例中,第一设备可以是手控制器设备并且第二设备可以是头戴式显示器(HMD)。在其他示例中,第一设备可以是任何其他类型的控制器、辅助设备、或较低功率设备,而第二设备可以是任何其他类型的较高功率设备、可穿戴XR设备等。此外,在一些情形中,图像传感器系统集中的每一图像传感器系统可以是低功率图像传感器系统,如前文说明的。
在一些情形中,每一图像传感器系统可捕捉至少一个图案的至少一个图像。在一些情形中,两个或更多个图像传感器系统可各自捕捉一个或多个相同图案的图像。在一些示例中,图像传感器系统集可表示第一设备上的所有图像传感器系统。在其他示例中,图像传感器系统集可表示第一设备上的所有图像传感器系统的子集。例如,图像传感器系统集可表示能够从它们特定的姿态和/或角度来捕捉图案集中的一个或多个图案的图像的图像传感器系统的子集。换言之,图像传感器系统集可表示第一设备上的在捕捉一个或多个图像时在其FoV内具有一个或多个图案的图像传感器系统的子集。
在一些情形中,捕捉一个或多个图案的图像的图像传感器系统的数目可随着图像传感器系统的相对姿态以及第二设备上的图案集的改变而改变,因为相对姿态的此类改变可向图像传感器系统的FoV增加或从中移除一个或多个图案。实际上,来自第二设备上的图案集的一个或多个图案有时候可在第一设备上的所有图像传感器系统的FoV内,这将允许第一设备上的所有图像传感器系统捕捉一个或多个图案的图像,而在其他时候,图案集的一些或全部可在第一设备上的仅一个、两个或更多个、或甚至没有一个图像传感器系统的FoV内。在一些情形中,如果图案集中没有一个图案在第一设备上的任何图像传感器系统的FoV内,则辅助设备和/或主处理系统可使用来自相应传感器(例如,IMU、陀螺仪、加速度计等)的惯性测量来计算或跟踪姿态信息。
在框704,方法700可包括根据由每一图像传感器系统捕捉的一个或多个图像来确定与第二设备上的图案集相对应的像素集。例如,由图像传感器系统捕捉的每一图像可捕捉一个或多个图案。因而,图像可包括与一个或多个图案中的一个或多个点相对应的像素。图像传感器系统可检测一个或多个图案以及该一个或多个图案中的一个或多个点。图像传感器系统接着可标识图像中与一个或多个图案中的一个或多个点相对应(例如,表示、捕捉、描绘等)的一个或多个像素(及其在图像内的像素位置)。图像中的一个或多个像素(及其像素位置)可用于估计与对应于像素的一个或多个点相关联的一个或多个图案的位置和/或姿态,如本文进一步描述的。
在框706,方法700可包括基于与第二设备上的图案集相对应的像素集来确定来自图案集的每一图案在空间中(例如,在3D空间中)的位置和相对姿态。例如,如前文说明的,由图像传感器系统捕捉的每一图像可捕捉一个或多个图案。图像中与一个或多个图案中的一个或多个点相对应的像素可以被标识并且被用于估计该一个或多个图案的位置和/或姿态。在一些情形中,像素在图像内的位置可用于三角测量由图像捕捉的图案中的且与该像素相对应的点。作为另一示例,可比较、三角测量、和/或使用各像素在由图像传感器系统集捕捉的图像内的且与图案集中的各个点相对应的位置来估计来自图案集的每一图案的3D位置和取向。还可使用每一图案的3D位置和取向来计算每一图案的相对6DoF姿态。
在一些示例中,与图案中的点相对应的每一像素的位置(例如,与像素相关联的坐标和/或点)可以沿一个或多个平面(例如,沿图像坐标系中的一个或多个轴)被投影到该图案中的点,并且与图案中的该点从参考坐标系(例如,世界或齐次坐标系)的投影作比较,以确定图案中的该点的3D定位。在一些情形中,可以相对于点在参考坐标系中的位置来平移图案中的点在图像(和/或图像坐标系)内的位置以确定图案中的点的3D位置。
此外,在一些情形中,可以相对于点在参考坐标系中的取向来旋转图案中的点在图像(和/或图像坐标系)内的取向以确定图案中的点的3D取向。图案中的点的3D位置和取向可用于估计图案的6DoF姿态。此外,图案集中各个点的3D位置和取向可用于估计图案集的相对6DoF姿态。还可使用图案集的相对6DoF姿态来确定主处理系统100和/或辅助系统150的6DoF姿态,如本文进一步描述的。
在一些情形中,确定来自图案集的每一图案在空间中的位置和相对姿态可包括:通过旋转空间中与对应于图案集的像素集相对应的3D坐标(例如,X坐标、Y坐标、Z坐标)来确定图案集的3D取向,以及通过平移空间中与对应于图案集的像素集相对应的3D坐标来确定图案集的3D位置。在一些示例中,可相对于参考3D坐标来旋转3D坐标,并且可相对于该参考3D坐标来平移3D坐标。此外,在一些示例中,每一图案的相对姿态可基于图案集的3D取向和图案集的3D位置。同样,每一图案的位置可包括例如来自图案集的3D位置的相应3D位置。
在一些方面,确定与图案集相对应的像素集可包括:基于由每一图像传感器捕捉的一个或多个图像来检测来自第二设备上的图案集的每一图案,并且标识来自图案集的每一图案中的一个或多个点。每一图案中标识的该一个或多个点可对应于来自像素集的一个或多个像素。此外,如前文所提及的,每一图案在空间中的位置和相对姿态可基于每一图案中的该一个或多个点来确定。
在其他方面,确定与图案集相对应的像素集可包括:基于由每一图像传感器捕捉的一个或多个图像来检测来自第二设备上的图案集的每一图案,对于每一图案来检测较小的内部图案,以及标识每一较小的内部图案中的一个或多个点。该一个或多个点可对应于来自像素集的一个或多个像素,并且每一图案在空间中的位置和相对姿态可基于每一较小的内部图案中的该一个或多个点。
在框708,方法700可包括基于来自图案集的每一图案在空间中的位置和相对姿态来确定第一设备相对于第二设备的姿态。例如,每一图案的6DoF姿态可用于确定第二设备(例如,主处理系统100)的6DoF姿态和/或第一设备(例如,辅助系统150)的相对6DoF姿态。在一些情形中,第二设备(例如,主处理系统100)和第一设备(例如,辅助系统150)的6DoF姿态可相对于彼此来计算以获得第一设备和第二设备的相对6DoF姿态。在一些示例中,第一设备和第二设备的相对6DoF姿态可用于协调和/或相关第一设备和第二设备在XR体验中的移动、姿态、交互、表示等,该XR体验诸如是在第二设备上运行的XR游戏、在第二设备上运行的XR购物应用、在第二设备上运行的XR建模应用、在第二设备上运行的XR医疗应用等。在一些示例中,第一设备和第二设备的相对6DoF姿态可用于执行各种基于跟踪和定位的操作,诸如举例来说,碰撞避免、导航、地图绘制、与现实世界对象的交互、自主设备操作或任务等。
在一些情形中,第一设备相对于第二设备的姿态可进一步基于第一设备上的图像传感器系统集的预定的相对位置和取向来确定。例如,第一设备上的图像传感器系统能够以特定距离、取向、位置、分开角度等被配置在第一设备上。该信息可以是已知的并且被用于确定它们在第一设备处的相对姿态。第一设备上的图像传感器系统的相对姿态可被用作用于计算来自图案集的每一图案在空间中的位置和相对姿态和/或第一设备相对于第二设备的姿态的附加参数。
在一些示例中,方法700可包括确定与由图像传感器系统集捕捉的场景(例如,一个或多个图像中的场景)相关联的空间中的一个或多个点的3D坐标,并且基于图像传感器系统集的预定的相对位置和取向以及空间中该一个或多个点的3D坐标来确定第一设备上的图像传感器系统集的相对3D姿态。在一些示例中,第一设备相对于第二设备的姿态可进一步基于第一设备上的图像传感器集的相对3D姿态。此外,在一些情形中,图像传感器系统集的相对3D姿态可以是例如3D空间中的相对6DoF姿态。
在一些方面,确定第一设备相对于第二设备的姿态可包括确定第二设备相对于第一设备的姿态。第一设备的姿态和第二设备的姿态可以是例如相对6DoF姿态。
在一些方面,方法700可包括:基于由来自图像传感器集的一个或多个图像传感器系统所捕捉的一个或多个附加图像来检测该一个或多个附加图像中捕捉的对象上的一个或多个附加图案,确定该一个或多个附加图像中与该对象上的一个或多个附加图案相对应的一个或多个像素,以及基于该一个或多个像素来确定该对象相对于第一设备的6DoF姿态和/或第二设备的6DoF姿态的附加6DoF姿态。在一些情形中,该对象可以是例如墙、显示设备、视频游戏控制台、家具、电器、家庭用品等。
在一些示例中,方法700可以由一个或多个计算设备或装置来执行。在一个解说性示例中,方法700可以由图1所示的主处理系统100和/或辅助系统150和/或具有图8所示的计算设备架构800的一个或多个计算设备来执行。在一些情形中,此类计算设备或装置可包括被配置成执行方法700的步骤的处理器、微处理器、微计算机、或设备的其他组件。在一些示例中,此类计算设备或装置可包括被配置成捕捉图像数据的一个或多个传感器。例如,计算设备可包括智能电话、头戴式显示器、移动设备、或其他合适的设备。在一些示例中,此类计算设备或装置可包括被配置成捕捉一个或多个图像或视频的相机。在一些情形中,此类计算设备可包括用于显示图像的显示器。在一些示例中,一个或多个传感器和/或相机与计算设备分开,在该情形中计算设备接收感测到的数据。此类计算设备可进一步包括被配置成传达数据的网络接口。
计算设备的各组件可用电路系统来实现。例如,各组件可包括和/或可使用电子电路或其他电子硬件(其可包括一个或多个可编程电子电路(例如,微处理器、图形处理单元(GPU)、数字信号处理器(DSP)、中央处理单元(CPU)和/或其他合适的电子电路))来实现,和/或可包括和/或可使用计算机软件、固件、或其任何组合来实现,以执行本文描述的各种操作。计算设备可进一步包括显示器(作为输出设备的示例或作为输出设备的补充)、被配置成传达和/或接收数据的网络接口、其任何组合、和/或(诸)其他组件。网络接口可被配置成传达和/或接收基于网际协议(IP)的数据或其他类型的数据。
方法700被解说为逻辑流程图,该逻辑流程图的操作表示能够以硬件、计算机指令、或其组合来实现的操作序列。在计算机指令的上下文中,各操作表示存储在一个或多个计算机可读存储介质上的计算机可执行指令,这些指令在由一个或多个处理器执行时执行所叙述的操作。一般来说,计算机可执行指令包括执行特定功能或实现特定数据类型的例程、程序、对象、组件、数据结构等。描述各操作的顺序并不旨在被理解为是限制,并且任何数目的所描述的操作可以按任何顺序被组合和/或并行进行以实现各过程。
附加地,方法700可以在配置有可执行指令的一个或多个计算机系统的控制下执行,并且可被实现为在一个或多个处理器上共同执行的代码(例如,可执行指令、一个或多个计算机程序、或一个或多个应用)、由硬件或其组合来执行。如以上所提及的,代码可以被存储在计算机可读或机器可读存储介质上,例如以包括可由一个或多个处理器执行的多条指令的计算机程序的形式。计算机可读或机器可读存储介质可以是非瞬态的。
图8解说了可实现本文所描述的各种技术的示例计算设备的示例计算设备架构800。例如,计算设备架构800可实现图1所示的主处理系统100的至少一些部分,并且执行如本文所描述的ToF信号处理操作。计算设备架构800的各组件被示为使用连接805(诸如总线)彼此处于电通信。示例计算设备架构800包括处理单元(CPU或处理器)810以及将包括计算设备存储器815(诸如只读存储器(ROM)820和随机存取存储器(RAM)825)的各种计算设备组件耦合到处理器810的计算设备连接805。
计算设备架构800可包括与处理器810直接连接、紧邻处理器810、或集成为处理器810的一部分的高速存储器的高速缓存。计算设备架构800可将来自存储器815和/或存储设备830的数据复制到高速缓存812以供处理器810快速访问。以此方式,高速缓存可提供性能助推,这避免处理器810在等待数据的同时发生延迟。这些和其他模块可控制或被配置成控制处理器810执行各种动作。其他计算设备存储器815也可供使用。存储器815可包括具有不同性能特性的多种不同类型的存储器。处理器810可包括任何通用处理器和存储在存储设备830中且被配置成控制处理器810的硬件或软件服务,以及专用处理器(其中软件指令被纳入处理器设计中)。处理器810可以是自包含系统,包含多个核或处理器、总线、存储器控制器、高速缓存等。多核处理器可以是对称的或非对称的。
为了实现与计算设备架构800的用户交互,输入设备845可表示任何数目的输入机构,诸如用于语音的话筒、用于姿势或图形输入的触敏屏、键盘、鼠标、运动输入、语音等等。输出设备835也可以是本领域技术人员已知的多种输出机构中的一种或多种,诸如显示器、投影仪、电视机、扬声器设备。在一些实例中,多模态计算设备可使得用户能够提供多种类型的输入以与计算设备架构800通信。通信接口840可一般地管控和管理用户输入和计算设备输出。对在任何特定硬件布置上进行操作不存在任何限制,并且因此可以容易地替换此处的基础特征以随着它们被开发而获得改进的硬件或固件布置。
存储设备830是非易失性存储器,并且可以是硬盘或可存储可由计算机访问的数据的其他类型的计算机可读介质,诸如磁带、闪存卡、固态存储器设备、数字多功能盘、盒式磁盘、随机存取存储器(RAM)825、只读存储器(ROM)820、或其混合物。存储设备830可包括用于控制处理器810的软件、代码、固件等。构想了其他硬件或软件模块。存储设备830可连接到计算设备连接805。在一方面,执行特定功能的硬件模块可包括存储在与必要的硬件组件(诸如处理器810、连接805、输出设备835等)连接的计算机可读介质中的软件组件以执行功能。
术语“计算机可读介质”包括但不限于便携式或非便携式存储设备、光存储设备、以及能够存储、包含或携带(诸)指令和/或数据的各种其他介质。计算机可读介质可包括其中可存储数据并且不包括载波和/或无线地或通过有线连接传播的瞬态电子信号的非瞬态介质。非瞬态介质的示例可包括但不限于,磁盘或磁带、光学存储介质(诸如紧致盘(CD)或数字多功能(DVD))、闪存、存储器或存储器设备。计算机可读介质可具有存储于其上的代码和/或机器可执行指令,它们可表示规程、功能、子程序、程序、例程、子例程、模块、软件包、类、或者指令、数据结构或程序语句的任何组合。可通过传递和/或接收信息、数据、自变量、参数或存储器内容来将代码段耦合至另一代码段或硬件电路。信息、自变量、参数、数据等可以经由任何合适的手段来传递、转发或传送,这些手段包括存储器共享、消息传递、令牌传递、网络传输等。
在一些实施例中,计算机可读存储设备、介质和存储器可包括包含比特流等的线缆或无线信号。然而,在被提及时,非瞬态计算机可读存储介质明确排除诸如能量、载波信号、电磁波以及信号本身等介质。
在以上描述中提供了具体细节以提供对本文提供的实施例和示例的详尽理解。然而,本领域普通技术人员将理解,没有这些具体细节也可以实践这些实施例。为了清楚说明,在一些实例中,本发明的技术可以被呈现为包括各个功能框,它们包括设备、设备组件、以软件或者硬件和软件的组合实施的方法中的步骤或例程。可使用除了附图中示出和/或本文所描述的那些组件之外的附加组件。例如,电路、系统、网络、过程和其他组件可以用框图形式示为组件以避免使这些实施例湮没在不必要的细节中。在其他实例中,可以在没有必要的细节的情况下示出公知的电路、过程、算法、结构和技术以避免混淆各实施例。
各个实施例在上文可被描述为过程或方法,该过程或方法被描绘为流程图、流程图示、数据流图、结构图或框图。尽管流程图可以将操作描述为顺序过程,但很多操作可以并行地或并发地执行。另外,可以重新排列操作的次序。当过程的操作完成时过程被终结,但是过程可具有附图中未包括的附加步骤。过程可对应于方法、函数、规程、子例程、子程序等。当过程对应于函数时,其终止可对应于该函数返回到调用方函数或主函数。
根据上述示例的过程和方法可使用被存储的计算机可执行指令或以其他方式从计算机可读介质可用的计算机可执行指令来实现。这些指令可包括例如致使或以其他方式将通用计算机、专用计算机或处理设备配置成执行某一功能或功能群的指令和数据。所使用的计算机资源的各部分可通过网络访问。计算机可执行指令可以是例如二进制文件、中间格式指令(诸如汇编语言)、固件、源代码。可用于存储指令、在根据所描述的示例的方法期间所使用的信息和/或所创建的信息的计算机可读介质的示例包括磁盘或光盘、闪存、提供有非易失性存储器的USB设备、经联网存储设备等。
实现根据这些公开的各种过程和方法的设备可包括硬件、软件、固件、中间件、微代码、硬件描述语言、或其任何组合,并且可采用各种形状因子中的任一者。当以软件、固件、中间件或微代码实现时,用于执行必要任务的程序代码或代码段(例如,计算机程序产品)可被存储在计算机可读或机器可读介质中。处理器可执行必要任务。各形状因子的典型示例包括:膝上型计算机、智能电话、移动电话、平板设备、或其他小形状因子的个人计算机、个人数字助理、机架式设备、自立设备等。本文描述的功能性还可用外围设备或插卡来实施。作为进一步的示例,此类功能性还可被实现在在单个设备上执行的不同芯片或不同过程之中的电路板上。
指令、用于传达这些指令的介质、用于执行它们的计算资源、以及用于支持此类计算资源的其他结构是用于提供本公开中所描述的功能的示例装置。
在上述描述中,本申请的各方面参考其特定实施例来描述,但是本领域技术人员将认识到本申请不限于此。因而,尽管本申请的解说性实施例已经在本文中详细描述,但是要理解,各个发明概念可以以其他各种方式被实施和采用,并且所附权利要求书不旨在被解释为包括这些变型,除非受到现有技术的限制。可以单独或联合地使用上述申请的各种特征和方面。此外,各实施例可以在超出本文所描述的那些环境和应用的任何数目的环境和应用中来利用而不背离本说明书的更宽泛的精神和范围。相应地,本说明书和附图应被认为是解说性的而非限定性的。出于解说的目的,按照特定顺序来描述各方法。应当领会,在替换实施例中,各方法可以按与所描述的不同顺序来执行。
本领域普通技术人员将领会,本文所使用的小于(“<”)和大于(“>”)符号或术语可以分别用小于等于(“≤)和大于等于(“≥”)符号来代替而不背离本说明书的范围。
在各组件被描述为“被配置成”执行某些操作的情况下,可例如通过设计电子电路或其他硬件来执行操作、通过对可编程电子电路(例如,微处理器、或其他合适的电子电路)进行编程、或其任何组合来实现此类配置。
短语“耦合至”指的是任何组件直接或间接地物理连接到另一组件,和/或任何组件直接或间接地与另一组件处于通信(例如,通过有线或无线连接和/或其他合适的通信接口连接到该另一组件)。
权利要求语言或叙述集合中的“至少一者”和/或集合中的“一者或多者”的其他语言指示该集合中的一个成员或该集合中的多个成员(以任何组合)满足该权利要求。例如,叙述“A和B中的至少一者”或“A或B中的至少一者”的权利要求语言意指A、B或者A和B。在另一示例中,叙述“A、B和C中的至少一者”或“A、B或C中的至少一者”的权利要求语言意指A、B、C、或A和B、或A和C、或B和C、或A和B和C。集合“中的至少一者”和/或集合“中的一者或多者”的语言并不将该集合限于该集合中所列举的项目。例如,叙述“A和B中的至少一者”或“A或B中的至少一者”的权利要求语言可以意指A、B或A和B,并且可附加地包括未在A和B的集合中列举的项目。
结合本文公开的示例所描述的各种解说性逻辑框、模块、电路、和算法步骤可被实现为电子硬件、计算机软件、固件、或其组合。为清楚地解说硬件与软件的这一可互换性,各种解说性组件、块、模块、电路、以及步骤在上面是以其功能性的形式作一般化描述的。此类功能性是被实现为硬件还是软件取决于具体应用和施加于整体系统的设计约束。技术人员可针对每种特定应用以不同方式来实现所描述的功能性,但此类实现决策不应被解读为致使脱离本申请的范围。
本文所描述的技术还可用电子硬件、计算机软件、固件、或其任何组合来实现。这些技术可以用各种设备中的任一种来实现,诸如通用计算机、无线通信设备手持机、或具有多种用途的集成电路设备,这些用途包括无线通信设备手持机和其他设备中的应用。被描述为模块或组件的任何特征可以一起被实现在集成逻辑器件中或被单独实现为分立但可相互操作的逻辑器件。如果以软件来实现,则这些技术可以至少部分地由包括程序代码的计算机可读数据存储介质来实现,这些程序代码包括指令,这些指令在被执行时执行上述方法、算法、和/或操作中的一者或多者。计算机可读数据存储介质可形成计算机程序产品的一部分,其可包括封装材料。计算机可读介质可包括存储器或数据存储介质,诸如随机存取存储器(RAM)(诸如同步动态随机存取存储器(SDRAM))、只读存储器(ROM)、非易失性随机存取存储器(NVRAM)、电可擦除可编程只读存储器(EEPROM)、闪存、磁性或光学数据存储介质等等。这些技术附加地或替换地可至少部分地由携带或传达指令或数据结构形式的程序代码的计算机可读通信介质来实现,这些指令或数据结构可由计算机访问、读取、和/或执行,诸如传播的信号或波。
程序代码可由处理器执行,该处理器可包括一个或多个处理器,诸如一个或多个数字信号处理器(DSP)、通用微处理器、专用集成电路(ASIC)、现场可编程逻辑阵列(FPGA)、或其他等效的集成或分立逻辑电路系统。此类处理器可被配置成执行本公开中所描述的任何技术。通用处理器可以是微处理器,但在替换方案中,该处理器可以是任何常规的处理器、控制器、微控制器、或状态机。处理器还可以被实现为计算设备的组合,例如,DSP与微处理器的组合、多个微处理器、与DSP核心协同的一个或多个微处理器、或任何其他此类配置。相应地,如本文所使用的术语“处理器”可以指任何上述结构、上述结构的任何组合、或适于实现本文所描述的技术的任何其他结构或装置。
Claims (30)
1.一种方法,包括:
接收由第一设备上的至少一个图像传感器系统捕捉的一个或多个图像,所述一个或多个图像捕捉在第二设备上具有预定配置的图案集,其中所述第一设备与所述第二设备相比具有较低的功率要求;
根据由所述至少一个图像传感器系统捕捉的所述一个或多个图像来确定与所述第二设备上的所述图案集相对应的像素集;
基于与所述第二设备上的所述图案集相对应的所述像素集来确定来自所述图案集的每一图案在空间中的位置和相对姿态;以及
基于来自所述图案集的每一图案在空间中的所述位置和所述相对姿态来确定所述第一设备相对于所述第二设备的姿态。
2.如权利要求1所述的方法,其中所述至少一个图像传感器系统包括图像传感器系统集,并且其中确定所述第一设备相对于所述第二设备的姿态是进一步基于所述第一设备上的所述图像传感器系统集的预定的相对位置和取向的。
3.如权利要求2所述的方法,进一步包括:
确定空间中与由所述图像传感器系统集捕捉的场景相关联的一个或多个点的三维(3D)坐标;以及
基于所述图像传感器系统集的预定的相对位置和取向以及空间中的所述一个或多个点的所述3D坐标来确定所述第一设备上的所述图像传感器系统集的相对3D姿态,其中所述第一设备相对于所述第二设备的姿态是进一步基于所述第一设备上的所述图像传感器系统集的所述相对3D姿态的。
4.如权利要求1所述的方法,其中所述第一设备相对于所述第二设备的姿态包括六自由度(6DoF)姿态,并且其中所述图案集的所述预定配置包括以下至少一者:每一图案在所述第二设备上的相对位置、每一图案在所述第二设备上的相对取向、每一图案的形状、每一图案的大小、每一图案的特性、以及所述图案集的布置。
5.如权利要求1所述的方法,其中确定来自所述图案集的每一图案在空间中的位置和相对姿态包括:
通过旋转空间中与对应于所述图案集的所述像素集相对应的3D坐标来确定所述图案集的3D取向,所述3D坐标是相对于参考3D坐标来旋转的;以及
通过平移空间中与对应于所述图案集的所述像素集相对应的所述3D坐标来确定所述图案集的3D位置,所述3D坐标是相对于所述参考3D坐标来平移的。
6.如权利要求5所述的方法,其中每一图案的相对姿态是基于所述图案集的所述3D取向和所述图案集的所述3D位置的,并且其中每一图案的位置包括来自所述图案集的所述3D位置的相应3D位置。
7.如权利要求1所述的方法,其中确定所述第一设备相对于所述第二设备的姿态进一步包括确定所述第二设备相对于所述第一设备的姿态,其中所述第一设备的姿态包括第一6DoF姿态并且所述第二设备的姿态包括第二6DoF姿态。
8.如权利要求1所述的方法,其中所述第一设备包括手控制器设备并且所述第二设备包括头戴式显示设备。
9.如权利要求1所述的方法,其中所述至少一个图像传感器系统包括低功率图像传感器系统,并且其中所述图案集中的每一图案在红外频谱和可见光频谱中的至少一者中是可见的。
10.如权利要求1所述的方法,其中所述图案集中的至少一个图案包括经编码机器可读信息,所述经编码机器可读信息包括以下至少一者:与所述至少一个图案相关联的位置信息、与所述至少一个图案相关联的标识符、唯一代码、设置、以及关于与所述第一设备和所述第二设备中的至少一者上主存的扩展现实应用相关联的用户账户的信息。
11.如权利要求1所述的方法,其中确定与所述第二设备上的所述图案集相对应的所述像素集包括:
基于由所述至少一个图像传感器系统捕捉的所述一个或多个图像来检测来自所述第二设备上的所述图案集的每一图案;以及
标识来自所述图案集的每一图案中的一个或多个点,所述一个或多个点与来自所述像素集的一个或多个像素相对应,
其中确定每一图案在空间中的位置和相对姿态是基于每一图案中的所述一个或多个点的。
12.如权利要求1所述的方法,其中确定与所述第二设备上的所述图案集相对应的所述像素集包括:
基于由所述至少一个图像传感器系统捕捉的所述一个或多个图像来检测来自所述第二设备上的所述图案集的每一图案;
对于每一图案,检测较小的内部图案;以及
标识每一较小的内部图案中的一个或多个点,所述一个或多个点与来自所述像素集的一个或多个像素相对应,
其中确定每一图案在空间中的位置和相对姿态是基于每一较小的内部图案中的所述一个或多个点的。
13.如权利要求1所述的方法,其中确定所述第一设备相对于所述第二设备的姿态包括确定所述第一设备相对于所述第二设备的6DoF姿态以及所述第二设备相对于所述第一设备的6DoF姿态,所述方法进一步包括:
基于由所述至少一个图像传感器系统捕捉的一个或多个附加图像来检测所述一个或多个附加图像中捕捉的对象上的一个或多个附加图案;
确定所述一个或多个附加图像中与所述对象上的所述一个或多个附加图案相对应的一个或多个像素;以及
基于所述一个或多个像素来确定所述对象相对于所述第一设备的6DoF姿态和所述第二设备的6DoF姿态中的至少一者的附加6DoF姿态。
14.如权利要求13所述的方法,其中所述对象包括墙、显示设备、视频游戏控制台、家具、电器、或家庭用品。
15.一种装置,包括:
存储器;以及
耦合至所述存储器的一个或多个处理器,所述一个或多个处理器被配置成:
接收由所述装置上的至少一个图像传感器系统捕捉的一个或多个图像,所述一个或多个图像捕捉在一设备上具有预定配置的图案集,其中所述装置与所述设备相比具有较低的功率要求;
根据由所述至少一个图像传感器系统捕捉的所述一个或多个图像来确定与所述设备上的所述图案集相对应的像素集;
基于与所述设备上的所述图案集相对应的所述像素集来确定来自所述图案集的每一图案在空间中的位置和相对姿态;以及
基于来自所述图案集的每一图案在空间中的所述位置和所述相对姿态来确定所述装置相对于所述设备的姿态。
16.如权利要求15所述的装置,其中所述至少一个图像传感器系统包括图像传感器系统集,并且其中确定所述装置相对于所述第二设备的姿态是进一步基于所述装置上的所述图像传感器系统集的预定的相对位置和取向的。
17.如权利要求16所述的装置,所述一个或多个处理器被配置成:
确定空间中与由所述图像传感器系统集捕捉的场景相关联的一个或多个点的三维(3D)坐标;以及
基于所述图像传感器系统集的预定的相对位置和取向以及空间中的所述一个或多个点的3D坐标来确定所述图像传感器系统集的相对3D姿态,其中所述装置相对于所述设备的姿态是进一步基于所述图像传感器系统集的所述相对3D姿态的。
18.如权利要求15所述的装置,其中所述装置相对于所述设备的姿态包括六自由度(6DoF)姿态,并且其中所述图案集的所述预定配置包括以下至少一者:每一图案在所述设备上的相对位置、每一图案在所述设备上的相对取向、每一图案的形状、每一图案的大小、每一图案的特性、以及所述图案集的布置。
19.如权利要求15所述的装置,其中确定来自所述图案集的每一图案在空间中的位置和相对姿态包括:
通过旋转空间中与对应于所述图案集的所述像素集相对应的3D坐标来确定所述图案集的3D取向,所述3D坐标是相对于参考3D坐标来旋转的;以及
通过平移空间中与对应于所述图案集的所述像素集相对应的所述3D坐标来确定所述图案集的3D位置,所述3D坐标是相对于所述参考3D坐标来平移的。
20.如权利要求19所述的装置,其中每一图案的相对姿态是基于所述图案集的所述3D取向和所述图案集的所述3D位置的,并且其中每一图案的位置包括来自所述图案集的所述3D位置的相应3D位置。
21.如权利要求15所述的装置,其中确定所述装置相对于所述设备的姿态进一步包括确定所述设备相对于所述装置的姿态,其中所述装置的姿态包括第一6DoF姿态并且所述设备的姿态包括第二6DoF姿态。
22.如权利要求15所述的装置,其中所述装置是手控制器设备并且所述设备是头戴式显示设备。
23.如权利要求15所述的装置,其中所述至少一个图像传感器系统包括低功率图像传感器系统,并且其中所述图案集中的每一图案在红外频谱和可见光频谱中的至少一者中是可见的。
24.如权利要求15所述的装置,其中所述图案集中的至少一个图案包括经编码机器可读信息,所述经编码机器可读信息包括以下至少一者:与所述至少一个图案相关联的位置信息、与所述至少一个图案相关联的标识符、唯一代码、设置、以及关于与所述装置和所述设备中的至少一者上主存的扩展现实应用相关联的用户账户的信息。
25.如权利要求15所述的装置,其中确定与所述设备上的所述图案集相对应的所述像素集包括:
基于由所述至少一个图像传感器系统捕捉的所述一个或多个图像来检测来自所述设备上的所述图案集的每一图案;以及
标识来自所述图案集的每一图案中的一个或多个点,所述一个或多个点与来自所述像素集的一个或多个像素相对应,
其中确定每一图案在空间中的位置和相对姿态是基于每一图案中的所述一个或多个点的。
26.如权利要求15所述的装置,其中确定与所述设备上的所述图案集相对应的所述像素集包括:
基于由所述至少一个图像传感器系统捕捉的所述一个或多个图像来检测来自所述设备上的所述图案集的每一图案;
对于每一图案,检测较小的内部图案;以及
标识每一较小的内部图案中的一个或多个点,所述一个或多个点与来自所述像素集的一个或多个像素相对应,
其中确定每一图案在空间中的位置和相对姿态是基于每一较小的内部图案中的所述一个或多个点的。
27.如权利要求15所述的装置,其中确定所述装置相对于所述设备的姿态包括确定所述装置相对于所述设备的6DoF姿态以及所述设备相对于所述装置的6DoF姿态,所述一个或多个处理器被配置成:
基于由所述至少一个图像传感器系统捕捉的一个或多个附加图像来检测所述一个或多个附加图像中捕捉的对象上的一个或多个附加图案;
确定所述一个或多个附加图像中与所述对象上的所述一个或多个附加图案相对应的一个或多个像素;以及
基于所述一个或多个像素来确定所述对象相对于所述第一设备的6DoF姿态和所述设备的6DoF姿态中的至少一者的附加6DoF姿态。
28.如权利要求27所述的装置,其中所述对象包括墙、显示设备、视频游戏控制台、家具、电器、或家庭用品。
29.如权利要求15所述的装置,其中所述装置是移动设备。
30.一种非瞬态计算机可读存储介质,包括:
存储在其上的指令,所述指令在由一个或多个处理器执行时致使所述一个或多个处理器:
接收由第一设备上的至少一个图像传感器系统捕捉的一个或多个图像,所述一个或多个图像捕捉在第二设备上具有预定配置的图案集,其中所述第一设备与所述第二设备相比具有较低的功率要求;
根据由所述至少一个图像传感器系统捕捉的所述一个或多个图像来确定与所述第二设备上的所述图案集相对应的像素集;
基于与所述第二设备上的所述图案集相对应的所述像素集来确定来自所述图案集的每一图案在空间中的位置和相对姿态;以及
基于来自所述图案集的每一图案在空间中的所述位置和所述相对姿态来确定所述第一设备相对于所述第二设备的姿态。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/904,466 US20210398314A1 (en) | 2020-06-17 | 2020-06-17 | Low power visual tracking systems |
US16/904,466 | 2020-06-17 | ||
PCT/US2021/029231 WO2021257186A1 (en) | 2020-06-17 | 2021-04-26 | Low power visual tracking systems |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115769261A true CN115769261A (zh) | 2023-03-07 |
Family
ID=75919449
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202180042272.6A Pending CN115769261A (zh) | 2020-06-17 | 2021-04-26 | 低功率视觉跟踪系统 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20210398314A1 (zh) |
EP (1) | EP4168988A1 (zh) |
KR (1) | KR20230024901A (zh) |
CN (1) | CN115769261A (zh) |
BR (1) | BR112022024803A2 (zh) |
WO (1) | WO2021257186A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11522945B2 (en) * | 2020-10-20 | 2022-12-06 | Iris Tech Inc. | System for providing synchronized sharing of augmented reality content in real time across multiple devices |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2513912B (en) * | 2013-05-10 | 2018-01-24 | Dyson Technology Ltd | Apparatus for guiding an autonomous vehicle towards a docking station |
US10504231B2 (en) * | 2014-05-21 | 2019-12-10 | Millennium Three Technologies, Inc. | Fiducial marker patterns, their automatic detection in images, and applications thereof |
EP3136392A1 (en) * | 2015-08-25 | 2017-03-01 | Thomson Licensing | Method and system for embedding and retrieving information through marker transformation |
US10996742B2 (en) * | 2017-10-17 | 2021-05-04 | Logitech Europe S.A. | Input device for AR/VR applications |
EP3593198B1 (en) * | 2018-03-07 | 2023-03-08 | Magic Leap, Inc. | Visual tracking of peripheral devices |
WO2020102554A1 (en) * | 2018-11-15 | 2020-05-22 | Magic Leap, Inc. | Deep neural network pose estimation system |
US20200364521A1 (en) * | 2019-05-15 | 2020-11-19 | Matterport, Inc. | Trained network for fiducial detection |
-
2020
- 2020-06-17 US US16/904,466 patent/US20210398314A1/en active Pending
-
2021
- 2021-04-26 WO PCT/US2021/029231 patent/WO2021257186A1/en unknown
- 2021-04-26 BR BR112022024803A patent/BR112022024803A2/pt unknown
- 2021-04-26 EP EP21725930.8A patent/EP4168988A1/en active Pending
- 2021-04-26 KR KR1020227043491A patent/KR20230024901A/ko active Search and Examination
- 2021-04-26 CN CN202180042272.6A patent/CN115769261A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
KR20230024901A (ko) | 2023-02-21 |
BR112022024803A2 (pt) | 2022-12-27 |
US20210398314A1 (en) | 2021-12-23 |
WO2021257186A1 (en) | 2021-12-23 |
EP4168988A1 (en) | 2023-04-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TW202201178A (zh) | 低功率視覺追蹤系統 | |
US11625841B2 (en) | Localization and tracking method and platform, head-mounted display system, and computer-readable storage medium | |
US20220122326A1 (en) | Detecting object surfaces in extended reality environments | |
WO2014105646A1 (en) | Low-latency fusing of color image data in a color sequential display system | |
CN109668545B (zh) | 用于头戴式显示装置的定位方法、定位器以及定位系统 | |
WO2015093130A1 (ja) | 情報処理装置、情報処理方法およびプログラム | |
US11615506B2 (en) | Dynamic over-rendering in late-warping | |
EP4302273A1 (en) | Modeling objects from monocular camera outputs | |
KR20230133293A (ko) | 멀티-뷰 정세화를 사용한 3차원 모델들의 향상 | |
US20240029197A1 (en) | Dynamic over-rendering in late-warping | |
CN115769261A (zh) | 低功率视觉跟踪系统 | |
KR20240037261A (ko) | 오브젝트들을 추적하기 위한 전자 디바이스 | |
US20220375110A1 (en) | Augmented reality guided depth estimation | |
WO2022226432A1 (en) | Hand gesture detection methods and systems with hand prediction | |
CN112308981A (zh) | 图像处理方法、装置、电子设备及存储介质 | |
US20230267691A1 (en) | Scene change detection with novel view synthesis | |
US20230035360A1 (en) | Mapping networked devices | |
US20220375026A1 (en) | Late warping to minimize latency of moving objects | |
CN116897375B (zh) | 扩展现实环境中的图像捕获 | |
US20230215098A1 (en) | Method and system for creating and storing map target | |
EP4341786A1 (en) | Augmented reality guided depth estimation | |
KR20240008370A (ko) | 움직이는 객체들의 레이턴시를 최소화하기 위한 늦은 워핑 | |
CN117940956A (zh) | 关键点检测和特征描述符计算 | |
CN117321472A (zh) | 进行后期扭曲以最小化移动对象的延迟 | |
CN116897375A (zh) | 扩展现实环境中的图像捕获 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |