CN117337422A - 三自由度增强现实跟踪***的动态初始化 - Google Patents
三自由度增强现实跟踪***的动态初始化 Download PDFInfo
- Publication number
- CN117337422A CN117337422A CN202280035625.4A CN202280035625A CN117337422A CN 117337422 A CN117337422 A CN 117337422A CN 202280035625 A CN202280035625 A CN 202280035625A CN 117337422 A CN117337422 A CN 117337422A
- Authority
- CN
- China
- Prior art keywords
- signal
- tracking device
- positioning
- accelerometer
- orientation
- 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
- 230000003190 augmentative effect Effects 0.000 title description 4
- 238000000034 method Methods 0.000 claims abstract description 49
- 238000007670 refining Methods 0.000 claims abstract description 17
- 230000015654 memory Effects 0.000 claims description 41
- 230000005484 gravity Effects 0.000 claims description 11
- 230000010354 integration Effects 0.000 claims description 9
- 230000004044 response Effects 0.000 claims description 7
- 238000004891 communication Methods 0.000 description 34
- 230000006870 function Effects 0.000 description 17
- 230000003287 optical effect Effects 0.000 description 16
- 230000000007 visual effect Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 11
- 230000033001 locomotion Effects 0.000 description 11
- 230000001133 acceleration Effects 0.000 description 8
- 230000005540 biological transmission Effects 0.000 description 7
- 238000003384 imaging method Methods 0.000 description 7
- 239000008186 active pharmaceutical agent Substances 0.000 description 6
- 230000014509 gene expression Effects 0.000 description 6
- 238000001514 detection method Methods 0.000 description 5
- 238000007726 management method Methods 0.000 description 5
- 230000002093 peripheral effect Effects 0.000 description 5
- 230000003068 static effect Effects 0.000 description 5
- 230000008878 coupling Effects 0.000 description 4
- 238000010168 coupling process Methods 0.000 description 4
- 238000005859 coupling reaction Methods 0.000 description 4
- 210000003128 head Anatomy 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 3
- 230000001413 cellular effect Effects 0.000 description 3
- 238000005259 measurement Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 238000012800 visualization Methods 0.000 description 3
- 230000036772 blood pressure Effects 0.000 description 2
- 230000036760 body temperature Effects 0.000 description 2
- 210000004556 brain Anatomy 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000007613 environmental effect Effects 0.000 description 2
- 230000001815 facial effect Effects 0.000 description 2
- 230000008921 facial expression Effects 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000005693 optoelectronics Effects 0.000 description 2
- 230000004266 retinal recognition Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 241000278713 Theora Species 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000010267 cellular communication Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000001816 cooling Methods 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 238000005265 energy consumption Methods 0.000 description 1
- 239000003344 environmental pollutant Substances 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 231100001261 hazardous Toxicity 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000003331 infrared imaging Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000007620 mathematical function Methods 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 231100000719 pollutant Toxicity 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 238000005096 rolling process Methods 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000001931 thermography Methods 0.000 description 1
Landscapes
- User Interface Of Digital Computer (AREA)
Abstract
描述了一种用于对三自由度(3DOF)跟踪装置进行动态初始化的方法。在一方面,该方法包括:访问来自3DOF跟踪装置的陀螺仪的陀螺仪信号;访问来自3DOF跟踪装置的加速度计的加速度计信号;确定初始状态,该初始状态包括3DOF跟踪装置的初始取向、初始定位和初始速度的组合,该初始状态指示3DOF跟踪装置的起始条件;对陀螺仪信号和加速度计信号进行积分以使用该初始状态获得取向信号和定位信号;以及使用该定位信号来细化取向信号的倾斜信号。
Description
相关申请的交叉引用
本申请要求于2021年11月11日提交的美国专利申请序列第17/524,423号和于2021年5月18日提交的美国临时专利申请序列第63/189,845号的优先权,上述美国专利申请和美国临时专利申请中的每个申请通过引用整体并入本文。
技术领域
本文公开的主题总体上涉及视觉跟踪***。具体地,本公开内容提出了用于校准视觉惯性跟踪***的***和方法。
背景技术
增强现实(AR)装置使用户能够观察场景,同时看到可以与装置的视野中的项目、图像、对象或环境对准的相关虚拟内容。虚拟现实(VR)装置提供了比AR装置更沉浸式的体验。VR装置用基于VR装置的定位和取向显示的虚拟内容遮挡用户的视野。
AR装置和VR装置都依赖于跟踪装置的姿势(例如,取向、定位、位置)的运动跟踪***。运动跟踪***通常被出厂校准(基于摄像装置与其他传感器之间的预定义的相对定位),以在相对于其环境的期望位置处准确地显示虚拟内容。
附图说明
为了容易标识对任何特定元件或动作的讨论,附图标记中的一个最高位数字或多个最高位数字指代该元件被首次引入时所在的图号。
图1是示出根据一个示例实施方式的用于操作AR/VR显示装置的环境的框图。
图2是示出根据一个示例实施方式的AR/VR显示装置的框图。
图3是示出根据一个示例实施方式的3DOF跟踪***的框图。
图4是示出根据一个示例实施方式的用于调整倾斜的方法的流程图。
图5是示出根据一个示例实施方式的用于细化倾斜信号的方法的流程图。
图6示出了根据一个实施方式的例程600。
图7是示出根据一个示例实施方式的用于初始化的示例算法的框图。
图8示出了根据一个示例实施方式的可以在其中实现头戴式装置的网络环境。
图9是示出根据示例实施方式的可以在其中实现本公开内容的软件架构的框图。
图10是根据一个示例实施方式的呈计算机***形式的机器的图解表示,在该机器内,可以执行指令集合以使该机器执行本文讨论的方法中的任何一种或更多种。
具体实施方式
下面的描述描述了示出本主题的示例实施方式的***、方法、技术、指令序列和计算机程序产品。在下面的描述中,出于说明的目的,阐述了许多具体细节以提供对本主题的各种实施方式的理解。然而,对于本领域技术人员而言将明显的是,可以在没有这些特定细节中的一些或其他细节的情况下实践本主题的实施方式。示例仅代表了可能的变化。除非另有明确说明,否则结构(例如,结构部件,诸如模块)是可选的,并且可以被组合或细分,并且操作(例如,在过程、算法或其他功能中)可以在顺序上变化或者被组合或细分。
术语“增强现实”(AR)在本文中用于指代其中通过计算机生成的数字内容(也被称为虚拟内容或合成内容)“增强”或提升存在于真实世界的物理对象的真实世界环境的交互体验。AR也可以指代使得能够进行真实世界与虚拟世界的组合、实时交互以及虚拟对象和真实对象的3D注册的***。AR***的用户感知的虚拟内容看起来附属于真实世界的物理对象或者与真实世界的物理对象交互。
术语“虚拟现实”(VR)在本文中用于指代与真实世界环境完全不同的虚拟世界环境的模拟体验。计算机生成的数字内容显示在虚拟世界环境中。VR也指代使得VR***的用户能够完全沉浸在虚拟世界环境中并且与虚拟世界环境中呈现的虚拟对象进行交互的***。
术语“AR应用”在本文中用于指代使得能够实现AR体验的计算机操作的应用。术语“VR应用”在本文中用于指代能够实现VR体验的计算机操作的应用。术语“AR/VR应用”指代使得能够进行AR体验或VR体验的组合的计算机操作的应用。
术语“视觉跟踪***”在本文中用于指代计算机操作的应用或***,其使得***能够跟踪由视觉跟踪***的一个或更多个摄像装置捕获的图像中识别的视觉特征。视觉跟踪***基于所跟踪的视觉特征建立真实世界环境的模型。视觉跟踪***的非限制性示例包括:视觉同时定位与地图构建***(VSLAM)和视觉惯性里程计(VIO)***。VSLAM可以用于基于视觉跟踪***的一个或更多个摄像装置从环境或场景构建目标。VIO***(也被称为视觉惯性跟踪***)基于从装置的多个传感器(例如,光学传感器、惯性传感器)获取的数据来确定装置的最新姿势(例如,定位和取向)。
术语“惯性测量单元”(IMU)在本文中用于指代能够报告移动本体的惯性状态的装置,所述惯性状态包括移动本体的加速度、速度、取向和定位。通过对由IMU测量的加速度和角速度进行积分,IMU使得能够跟踪本体的移动。IMU也可以指代加速度计和陀螺仪的组合,其可以分别确定和量化线加速度和角速度。可以对从IMU陀螺仪获得的值进行处理以获得IMU的俯仰、滚转和航向,并且因此获得与该IMU相关联的本体的俯仰、滚转和航向。还可以对来自IMU加速度计的信号进行处理以获得IMU的速度和位移。
术语“三自由度跟踪***”(3DOF跟踪***)在本文中用于指代跟踪旋转移动的装置。例如,3DOF跟踪***可以跟踪头戴式装置的用户是向左还是向右看、向上还是向下旋转其头部、以及向左还是向右旋转。然而,头戴式装置不能使用3DOF跟踪***来确定用户是否通过在物理世界中移动来围绕场景移动。因此,3DOF跟踪***可能不足够准确而无法用于定位信号。3DOF跟踪***可以是包括IMU传感器的AR/VR显示装置的一部分。例如,3DOF跟踪***使用来自传感器(诸如加速度计、陀螺仪和磁力计)的传感器数据。
术语“六自由度跟踪***”(6DOF跟踪***)在本文中用于指代跟踪旋转和平移运动的装置。例如,6DOF跟踪***可以跟踪用户是否旋转了其头部并且向前或向后移动、横向或竖直移动以及向上或向下移动。6DOF跟踪***可以包括视觉里程计***,该视觉里程计***依赖于从多个传感器(例如,深度摄像装置、惯性传感器)获取的数据。6DOF跟踪***对来自传感器的数据进行分析,以准确地确定显示装置的姿势。
AR和VR应用都允许用户访问信息,例如以在AR/VR显示装置(也被称为显示装置)的显示器中呈现的虚拟内容的形式。虚拟内容的呈现可以基于显示装置相对于物理对象或者相对于参照系(在显示装置外部)的定位进行,使得虚拟内容正确地出现在显示器中。对于AR,虚拟内容看起来与被用户和AR显示装置的摄像装置感知到的物理对象对准。虚拟内容看起来附属于物理世界(例如,感兴趣的物理对象)。为了做到这一点,AR显示装置对物理对象进行检测并且跟踪AR显示装置相对于物理对象的定位的姿势。姿势标识显示装置相对于参照系或相对于另一对象的定位和取向。对于VR,虚拟对象出现在基于VR显示装置的姿势的位置处。因此,基于装置的最新姿势来刷新虚拟内容。显示装置处的视觉跟踪***确定显示装置的姿势。视觉跟踪***的示例包括视觉惯性跟踪***(也被称为VIO***),该视觉惯性跟踪***依赖于从多个传感器(例如,光学传感器、惯性传感器)获取的数据。
3DOF跟踪***的初始化通常要求跟踪***是静止的,以便校准3DOF跟踪***中的传感器。例如,3DOF跟踪***检测到AR/VR显示装置被开启/接通。作为响应,AR/VR显示装置请求用户将AR/VR显示装置设置在固定支承物(例如,桌子、椅子)上。这样的初始化处理对用户有效地操作AR/VR显示装置造成摩擦。此外,这样的初始化处理需要额外的时间来在静止条件下进行初始化。
本申请描述了用于对AR/VR显示装置的3DOF跟踪***进行动态初始化的方法,该方法使得AR/VR显示装置能够在动态条件和非静止条件下即时初始化并且开始3DoF(重力对准)跟踪体验。在一个示例中,本方法依赖于下述假设:人们大致停留在同一地点对于大多数用例(坐、行走)都是有效的。因此,这消除了用户需要保持静止的要求。
在一个示例实施方式中,该方法包括:收集加速度计信号和陀螺仪信号;积分为取向信号和定位信号;将该定位信号限制为保持“接近”(零)起始定位(这使得能够在头戴式AR***中显示重力对准的内容并且在初始化时不需要用户是静止的)。
在另一示例实施方式中,描述了用于对三自由度(3DOF)跟踪装置进行动态初始化的方法。在一方面,该方法包括:访问来自3DOF跟踪装置的陀螺仪的陀螺仪信号;访问来自3DOF跟踪装置的加速度计的加速度计信号;确定初始状态,包括3DOF跟踪装置的初始取向、初始定位和初始速度的组合,该初始状态指示3DOF跟踪装置的起始条件;对陀螺仪信号和加速度计信号进行积分以使用初始状态获得取向信号和定位信号;以及使用定位信号来细化取向信号的倾斜信号。
因此,本文描述的方法中的一种或更多种方法有助于解决进行有效初始化而无需静止条件的技术问题。当前描述的方法通过更快的校准计算来提供对计算机功能操作的改进。因此,本文描述的方法中的一种或更多种方法可以避免对某些努力或计算资源的需要。这样的计算资源的示例包括处理器周期、网络流量、存储器使用、数据存储容量、功耗、网络带宽和冷却容量。
图1是示出根据一些示例实施方式的适于操作AR/VR显示装置106的环境100的网络图。环境100包括用户102、AR/VR显示装置106和物理对象104。用户102操作AR/VR显示装置106。用户102可以是人类用户(例如,人类)、机器用户(例如,由软件程序配置成与AR/VR显示装置106交互的计算机)或者其任何合适的组合(例如,由机器辅助的人类或由人类监督的机器)。用户102与AR/VR显示装置106相关联。
AR/VR显示装置106可以是具有显示器的计算装置例如智能电话、平板电脑或可穿戴计算装置(例如,手表或眼镜)。计算装置可以是手持式的或者可以被可移动地安装到用户102的头部。在一个示例中,显示器包括显示用AR/VR显示装置106的摄像装置捕获的图像的屏幕。在另一示例中,装置的显示器可以是透明的,例如在可穿戴计算眼镜的镜片中。在其他示例中,显示器可以是不透明的、部分透明的、部分不透明的。在其他示例中,显示器可以由用户102佩戴以覆盖用户102的视野。
AR/VR显示装置106包括基于用AR/VR显示装置106的摄像装置检测到的图像来生成虚拟内容的AR应用。例如,用户102可以指引AR/VR显示装置106的摄像装置捕获物理对象104的图像。AR应用生成与图像中的所识别对象(例如,物理对象104)对应的虚拟内容,并且在AR/VR显示装置106的显示器中呈现该虚拟内容。
AR/VR显示装置106包括3DOF跟踪***108。3DOF跟踪***108使用例如光学传感器(例如,启用深度的3D摄像装置、图像摄像装置)、惯性传感器(例如,陀螺仪、加速度计)、无线传感器(蓝牙、Wi-Fi)、GPS传感器和音频传感器来跟踪AR/VR显示装置106相对于真实世界环境110的旋转姿势(例如,取向)。在一个示例中,AR/VR显示装置106基于AR/VR显示装置106相对于真实世界环境110和/或物理对象104的姿势来显示虚拟内容。
图1所示的机器、数据库或装置中的任何一个都可以在如下通用计算机中实现,该通用计算机被软件修改(例如,配置或编程)为专用计算机,以执行本文针对该机器、数据库或装置描述的功能中的一个或更多个功能。例如,下面参照图4至图5讨论能够实现本文描述的方法中的任何一种或更多种方法的计算机***。如本文所使用的,“数据库”是数据存储资源,并且可以存储被结构化为文本文件、表格、电子表格、关系数据库(例如,对象-关系数据库)、三元组存储、分层数据存储或其任何合适组合的数据。此外,图1中所示的机器、数据库或装置中的任何两个或更多个可以组合为单个机器,并且本文针对任何单个机器、数据库或装置描述的功能可以在多个机器、数据库或装置之间细分。
AR/VR显示装置106可以通过计算机网络操作。计算机网络可以是使得能够在机器、数据库和装置之间或之中进行通信的任何网络。因此,计算机网络可以是有线网络、无线网络(例如,移动或蜂窝网络)或其任何合适的组合。计算机网络可以包括构成专用网络、公共网络(例如,因特网)或其任何适当组合的一个或更多个部分。
图2是示出根据一些示例实施方式的AR/VR显示装置106的模块(例如,部件)的框图。AR/VR显示装置106包括传感器202、显示器204、处理器206和存储装置208。AR/VR显示装置106的示例包括可穿戴计算装置、移动计算装置、导航装置、便携式媒体装置或智能电话。
传感器202包括例如光学传感器212(例如,诸如彩色摄像装置、热感摄像装置、深度传感器以及一个或多个灰度、全局/滚动快门跟踪摄像装置的摄像装置)和惯性传感器210(例如,陀螺仪218、加速度计220、磁力计222)。传感器202的其他示例包括接近传感器或位置传感器(例如,近场通信、GPS、蓝牙、Wifi、基于无线电的传感器312)、音频传感器(例如,麦克风)、热传感器、压力传感器(例如,气压计)或其任何合适的组合。注意,本文描述的传感器202是为了说明的目的,并且因此传感器202不限于上述的传感器。
显示器204包括被配置成显示由处理器206生成的图像的屏幕或监视器。在一个示例实施方式中,显示器204可以是透明的或半不透明的,使得用户102可以透过显示器204观看(在AR用例中)。在另一示例实施方式中,显示器204覆盖用户102的眼睛并遮挡用户102的整个视野(在VR用例中)。在另一示例中,显示器204包括被配置成经由触摸屏显示器上的接触来接收用户输入的触摸屏显示器。
处理器206包括AR/VR应用214和3DOF跟踪***108。AR/VR应用214基于对物理对象104或物理环境的检测来检索虚拟内容(例如,3D对象模型)。AR/VR应用214在显示器204中呈现虚拟对象。在一个示例实施方式中,AR/VR应用214包括本地渲染引擎,该本地渲染引擎生成覆盖(例如,叠加在其上或者以其他方式与其串联显示)在由光学传感器212捕获的物理对象104的图像上的虚拟内容的可视化。可以通过调整物理对象104相对于AR/VR显示装置106的定位(例如,其物理位置、取向或两者)来操纵虚拟内容的可视化。类似地,可以通过调整AR/VR显示装置106相对于物理对象104的姿势来操纵虚拟内容的可视化。对于VR应用,AR/VR应用214在基于AR/VR显示装置106的姿势确定的位置(在显示器204中)处在显示器204中显示虚拟内容。
3DOF跟踪***108对AR/VR显示装置106的旋转姿势进行估计。例如,3DOF跟踪***108使用来自惯性传感器210的传感器信号来跟踪AR/VR显示装置106相对于参照系(例如,真实世界环境110)的位置。因此,3DOF跟踪***108跟踪AR/VR显示装置106的用户102是向左还是向右看、向上还是向下旋转其头部以及向左还是向右旋转/倾斜。
在一个示例实施方式中,3DOF跟踪***108在动态条件和非静止条件下进行初始化。换句话说,3DOF跟踪***108在动态条件和非静止条件下即时初始化并且开始3DoF(重力对准)跟踪体验。在一个示例中,本方法依赖于下述假设:人们大致停留在同一地点对于大多数用例(坐、行走)都是有效的。下面参照图3更详细地描述3DOF跟踪***108的示例部件。
存储装置208存储虚拟内容216。虚拟内容216包括例如视觉参照(例如,物理对象的图像)和对应的体验(例如,三维虚拟对象模型)的数据库。
本文描述的模块中的任何一个或更多个模块可以使用硬件(例如,机器的处理器)或者硬件和软件的组合来实现。例如,本文描述的任何模块都可以将处理器配置成执行本文针对该模块描述的操作。此外,这些模块中的任何两个或更多个可以组合为单个模块,并且本文针对单个模块描述的功能可以在多个模块之间细分。此外,根据各种示例实施方式,本文描述为在单个机器、数据库或装置内实现的模块可以跨多个机器、数据库或装置分布。
图3是示出根据一个示例实施方式的3DOF跟踪***108的框图。3DOF跟踪***108包括陀螺仪模块302、加速度计模块304、倾斜和定位模块306。
陀螺仪模块302检索来自陀螺仪218的陀螺仪信号。加速度计模块304检索来自加速度计220的加速度计信号。
倾斜和定位模块306通过分别访问来自加速度计模块304和陀螺仪模块302的加速度计信号和陀螺仪信号来执行动态初始化。倾斜和定位模块306对取向信号和定位信号进行积分,将定位信号限制为保持“接近”于(零)起始定位。
在一个示例实施方式中,倾斜和定位模块306包括即时初始化模块308、积分模块314和连续更新模块310。即时初始化模块308确定指示起始定位的初始状态。初始状态包括3DOF跟踪***108的初始取向、初始定位和初始速度的组合。
积分模块314对陀螺仪信号和加速度计信号进行积分,以使用初始状态获得取向信号和定位信号。在一个示例中,积分模块314对陀螺仪信号进行积分以确定从初始取向开始的取向信号,使用取向信号使来自加速度计的附加加速度计信号旋转,减去重力,并且从初始定位开始执行二重积分以确定定位信号。
连续更新模块310使用定位信号来细化取向信号的倾斜信号。在一个示例中,连续更新模块310使用偏差来校正陀螺仪信号和加速度计信号,并且使用定位信号来细化倾斜信号和偏差。在另一示例中,连续更新模块310访问来自惯性传感器210的磁力计222的磁力计信号。连续更新模块310使用该磁力计信号来细化取向信号。在又一示例中,连续更新模块310访问来自AR/VR显示装置106的基于无线电的传感器312的位置信号。连续更新模块310使用位置信号来细化定位信号。
图4是示出根据一个示例实施方式的用于调整倾斜的方法的流程图。方法400中的操作可以由3DOF跟踪***108使用上面关于图3描述的部件(例如,模块、引擎)来执行。因此,参照倾斜和定位模块306通过示例的方式来描述方法400。然而,应当理解,方法400的操作中的至少一些操作可以被部署在各种其他硬件配置上,或者由驻留在别处的类似部件来执行。
在块402中,倾斜和定位模块306确定初始状态(初始倾斜、定位、速度)。在一个示例中,初始状态包括初始定位和初始速度。在块404中,倾斜和定位模块306对陀螺仪信号和加速度计信号进行积分,以使用初始状态获得下一时刻处的取向和定位。在块406中,倾斜和定位模块306通过将定位限制为保持接近起始定位来调整倾斜或状态。
要注意的是,其他实施方式可以使用不同的排序的、附加的或更少的操作以及不同的命名法或术语来完成类似的功能。在一些实施方式中,各种操作可以以同步或异步的方式与其他操作并行执行。本文描述的操作被选择来以简化的形式说明一些操作原理。
图5是示出根据一个示例实施方式的用于细化倾斜信号的方法的流程图。方法500中的操作可以由3DOF跟踪***108使用上面关于图3描述的部件(例如,模块、引擎)来执行。因此,参照倾斜和定位模块306通过示例的方式来描述方法500。然而,应当理解,方法500的操作中的至少一些操作可以被部署在各种其他硬件配置上,或者由驻留在别处的类似部件来执行。
在块502中,AR/VR显示装置106启动3DOF跟踪***108。在块504中,陀螺仪模块302访问来自陀螺仪218的陀螺仪信号。在块506中,加速度计模块304访问来自加速度计220的加速度信号。在块508中,即时初始化模块308使用加速度信号确定初始倾斜而不需要静止初始化。在块510中,即时初始化模块308访问附加陀螺仪信号和附加加速度信号。在块512中,即时初始化模块308对附加陀螺仪信号进行积分以确定从初始倾斜和零航向开始的取向信号。在块514中,即时初始化模块308使用取向信号使附加加速度计信号旋转,减去重力,并且(从零开始)执行二重积分以确定定位信号。在块516中,连续更新模块310基于定位信号来细化倾斜。
图6示出了根据一个实施方式的例程600。在块602中,例程600访问来自3DOF跟踪装置的陀螺仪的陀螺仪信号。在块604中,例程600访问来自3DOF跟踪装置的加速度计的加速度计信号。在块606中,例程600确定初始状态,该初始状态指示3DOF跟踪装置的初始取向。在块608中,例程600对陀螺仪信号和加速度计信号进行积分以使用初始状态、指示起始定位的取向信号和定位信号获得取向信号和定位信号。在块610中,例程600使用定位信号来细化取向信号的倾斜信号。
图7是示出根据一个示例实施方式的用于初始化的示例算法的框图。
具有头戴式设备的***
图8示出了根据一个示例实施方式的可以在其中实现头戴式设备802的网络环境800。图8是示例头戴式设备802的高级功能框图,该示例头戴式设备802经由各种网络840通信地耦接移动客户端装置838和服务器***832。
头戴式设备802包括摄像装置,例如可见光摄像装置812、红外发射器814和红外摄像装置816中的至少一个。客户端装置838可以能够使用通信834和通信836与头戴式设备802连接。客户端装置838连接至服务器***832和网络840。网络840可以包括有线连接和无线连接的任何组合。
头戴式设备802还包括光学组件的图像显示的两个图像显示器804。这两个图像显示器包括与头戴式设备802的左横向侧相关联的一个图像显示器和与右横向侧相关联的一个图像显示器。头戴式设备802还包括图像显示驱动器808、图像处理器810、低功率低功率电路***826和高速电路***818。光学组件的图像显示器804用于向头戴式设备802的用户呈现图像和视频,包括可以包括图形用户界面的图像。
图像显示驱动器808命令并控制光学组件的图像显示的图像显示器804。图像显示驱动器808可以将图像数据直接递送至光学组件的图像显示的图像显示器804以用于呈现,或者可以必须将图像数据转换成适合于递送至图像显示装置的信号或数据格式。例如,图像数据可以是根据压缩格式(诸如H.264(MPEG-4第10部分)、HEVC、Theora、Dirac、RealVideo RV40、VP8、VP9等)格式化的视频数据,以及静止图像数据可以根据压缩格式(诸如便携式网络组(PNG)、联合摄影专家组(JPEG)、标签图像文件格式(TIFF)或可交换图像文件格式(Exif)等)而被格式化。
如上所述,头戴式设备802包括框架和从框架的横向侧延伸的柄(或镜腿)。头戴式设备802还包括用户输入装置806(例如,触摸传感器或按钮),该用户输入装置806包括头戴式设备802上的输入表面。用户输入装置806(例如,触摸传感器或按钮)是为了从用户接收输入选择,以操纵呈现的图像的图形用户界面。
图8中所示的用于头戴式设备802的部件位于边框或镜腿中的一个或更多个电路板例如PCB或柔性PCB上。可替选地或附加地,所描绘的部件可以位于头戴式设备802的块、框架、铰链或梁架中。左和右可以包括数字摄像装置元件例如可以用于捕获数据的互补金属氧化物半导体(CMOS)图像传感器、电荷耦合装置、摄像装置透镜或任何其他相应的可见或光捕获元件,该数字摄像装置元件包括具有未知物体的场景图像。
头戴式设备802包括存储器822,该存储器822存储执行本文描述的功能的子集或全部的指令。存储器822还可以包括存储装置。
如图8所示,高速电路***818包括高速处理器820、存储器822和高速无线电路***824。在示例中,图像显示驱动器808耦接至高速电路***818并且由高速处理器820操作,以驱动光学组件的图像显示器804的左图像显示器和右图像显示器。高速处理器820可以是能够管理高速通信和头戴式设备802所需的任何通用计算***的操作的任何处理器。高速处理器820包括使用高速无线电路***824管理通信836到无线局域网(WLAN)上的高速数据传递所需的处理资源。在某些示例中,高速处理器820执行操作***(诸如LINUX操作***或头戴式设备802的其他这样的操作***),并且该操作***被存储在存储器822中以用于执行。除了任何其他职责之外,使用执行头戴式设备802的软件架构的高速处理器820来管理与高速无线电路***824的数据传递。在某些示例中,高速无线电路***824被配置成实现电气和电子工程师协会(IEEE)802.11通信标准——在本文中也被称为Wi-Fi。在其他示例中,其他高速通信标准可以通过高速无线电路***824来实现。
头戴式设备802的低功率无线电路***830和高速无线电路***824可以包括短程收发器(蓝牙TM)和无线广域网、局域网或广域网收发器(例如,蜂窝或WiFi)。可以使用头戴式设备802的架构的可以如网络840的其他元件的细节来实现客户端装置838,该客户端装置包括经由通信834和通信836进行通信的收发器。
存储器822包括能够存储各种数据和应用的任何存储装置,所述各种数据和应用包括除其他之外的由左摄像装置和右摄像装置、红外摄像装置816和图像处理器810生成的摄像装置数据以及由图像显示驱动器808生成的用于在光学组件的图像显示的图像显示器804上显示的图像。虽然存储器822被示出为与高速电路***818集成,但是在其他示例中,存储器822可以是头戴式设备802的独立的单独元件。在某些这样的示例中,电路由线可以提供通过包括高速处理器820的芯片从图像处理器810或低功率处理器828至存储器822的连接。在其他示例中,高速处理器820可以管理存储器822的寻址,使得低功率处理器828将在需要涉及存储器822的读或写操作的任何时间启动高速处理器820。
如图8所示,头戴式设备802的低功率处理器828或高速处理器820可以耦接至摄像装置(可见光摄像装置812;红外发射器814或红外摄像装置816)、图像显示驱动器808、用户输入装置806(例如,触摸传感器或按钮)和存储器822。
头戴式设备802与主机连接。例如,头戴式设备802经由通信836与客户端装置838配对,或者经由网络840连接至服务器***832。服务器***832可以是作为服务或网络计算***的一部分的一个或更多个计算装置,例如,所述一部分的一个或更多个计算装置包括处理器、存储器以及通过网络840与客户端装置838和头戴式设备802进行通信的网络通信接口。
客户端装置838包括处理器和耦接至处理器的网络通信接口。网络通信接口允许通过网络840、通信834或通信836进行通信。客户端装置838还可以在客户端装置838的存储器中存储用于生成双声道音频内容的指令中的至少部分以实现本文描述的功能。
头戴式设备802的输出部件包括视觉部件例如显示器(例如液晶显示器(LCD)、等离子显示面板(PDP)、发光二极管(LED)显示器、投影仪或波导)。光学组件的图像显示器由图像显示驱动器808驱动。头戴式设备802的输出部件还包括声学部件(例如,扬声器)、触觉部件(例如,振动马达)、其他信号生成器等。头戴式设备802、客户端装置838和服务器***832的输入部件(例如用户输入装置806)可以包括字母数字输入部件(例如,键盘、被配置成接收字母数字输入的触摸屏、光电键盘或其他字母数字输入部件)、基于点的输入部件(例如,鼠标、触摸板、轨迹球、操纵杆、移动传感器或其他定点仪器)、触觉输入部件(例如,物理按钮、提供触摸或触摸手势的位置和力的触摸屏或者其他触觉输入部件)、音频输入部件(例如,麦克风)等。
头戴式设备802可以可选地包括附加的***装置元件。这样的***装置元件可以包括生物识别传感器、附加传感器或者与头戴式设备802集成的显示元件。例如,***装置元件可以包括任何I/O部件,该I/O部件包括输出部件、运动部件、定位部件或本文描述的任何其他这样的元件。
例如,生物识别部件包括用于检测表达(例如,手部表达、面部表达、声音表达、身体姿势或眼睛跟踪)、测量生物信号(例如,血压、心率、体温、出汗或脑波)、识别人(例如,语音识别、视网膜识别、面部识别、指纹识别或基于脑电图的识别)等的部件。运动部件包括加速度传感器部件(例如,加速度计)、重力传感器部件、旋转传感器部件(例如,陀螺仪)等。定位部件包括用于生成位置坐标的位置传感器部件(例如,全球定位***(GPS)接收器部件)、用于生成定位***坐标的WiFi或蓝牙TM收发器、海拔传感器部件(例如,检测气压的高度计或气压计,根据气压可以得到海拔)、取向传感器部件(例如,磁力计)等。这样的定位***坐标也可以经由低功率无线电路***830或高速无线电路***824从客户端装置838通过通信836被接收。
在使用与“A、B或C中的至少一个”、“A、B和C中的至少一个”、“一个或更多个A、B或C”或“A、B和C中的一个或更多个”类似的短语的情况下,旨在将该短语解释为意指在实施方式中可以单独存在A,在实施方式中可以单独存在B,在实施方式中可以单独存在C,或者可以在单个实施方式中存在元素A、B和C的任何组合;例如,A和B,A和C,B和C,或者A和B和C。
在不脱离本公开内容的范围的情况下,可以对所公开的实施方式进行改变和修改。这些和其他改变或修改旨在包括在本公开内容的范围内,如以下权利要求中所表达的。
图9是示出可以安装在本文描述的设备中的任何一个或更多个设备上的软件架构904的框图900。软件架构904由诸如机器902的硬件支持,机器902包括处理器920、存储器926和I/O部件938。在该示例中,软件架构904可以被概念化为层的堆栈,在该层的堆栈中,每个层提供特定的功能。软件架构904包括诸如操作***912、库910、框架908和应用906的层。在操作上,应用906通过软件堆栈来激活API调用950并且响应于API调用950接收消息952。
操作***912管理硬件资源并且提供公共服务。操作***912包括例如核914、服务916和驱动器922。核914用作硬件与其他软件层之间的抽象层。例如,核914提供存储器管理、处理器管理(例如,调度)、部件管理、联网和安全设置以及其他功能。服务916可以为其他软件层提供其他公共服务。驱动器922负责控制底层硬件或与底层硬件对接。例如,驱动器922可以包括显示驱动器、摄像装置驱动器、或/>低能耗驱动器、闪存驱动器、串行通信驱动器(例如,通用串行总线(USB)驱动器)、/>驱动器、音频驱动器、电力管理驱动器等等。
库910提供由应用906使用的低级别公共基础设施。库910可以包括***库918(例如,C标准库),该***库918提供诸如存储器分配功能、字符串操纵功能、数学功能等的功能。另外,库910可以包括API库924,例如媒体库(例如,用于支持各种媒体格式的呈现和操纵的库,所述各种媒体格式例如运动图像专家组-4(MPEG4)、高级视频编码(H.264或AVC)、运动图像专家组层-3(MP3)、高级音频编码(AAC)、自适应多速率(AMR)音频编解码器、联合图像专家组(JPEG或JPG)或便携式网络图形(PNG))、图形库(例如,用于在显示器上的图形内容中以二维(2D)和三维(3D)呈现的OpenGL框架)、数据库库(例如,提供各种关系数据库功能的SQLite)、web库(例如,提供web浏览功能的WebKit)等。库910还可以包括各种其他库928,以向应用906提供许多其他API。
框架908提供由应用906使用的高级别公共基础设施。例如,框架908提供各种图形用户界面(GUI)功能、高级别资源管理和高级别定位服务。框架908可以提供可以由应用906使用的广泛的其他API,其中一些API可以专用于特定的操作***或平台。
在示例实施方式中,应用906可以包括家庭应用936、联系人应用930、浏览器应用932、图书阅读器应用934、位置应用942、媒体应用944、消息收发应用946、游戏应用948、以及诸如第三方应用940的广泛分类的其他应用。应用906是执行在程序中限定的功能的程序。可以采用各种编程语言来创建以各种方式构造的应用906中的一个或更多个,编程语言例如面向对象的编程语言(例如Objective-C、Java或C++)或过程编程语言(例如C语言或汇编语言)。在特定示例中,第三方应用940(例如,由特定平台的供应商以外的实体使用ANDROIDTM或IOSTM软件开发工具包(SDK)开发的应用)可以是在诸如IOSTM、ANDROIDTM、Phone的移动操作***或另一移动操作***上运行的移动软件。在该示例中,第三方应用940可以激活由操作***912提供的API调用950以有助于本文描述的功能。
图10是机器1000的图解表示,在该机器1000内,可以执行用于使机器1000执行本文讨论的方法中的任何一种或更多种方法的指令1008(例如,软件、程序、应用、小程序、app或其他可执行代码)。例如,指令1008可以使机器1000执行本文描述的方法中的任何一种或更多种方法。指令1008将通用的未经编程的机器1000转换成被编程为以所描述的方式执行所描述和所示出的功能的特定机器1000。机器1000可以作为独立设备操作,或者可以耦接(例如,联网)至其他机器。在联网部署中,机器1000可以在服务器-客户端网络环境中以服务器机器或客户端机器的能力进行操作,或者在对等(或分布式)网络环境中作为对等机器进行操作。机器1000可以包括但不限于:服务器计算机、客户端计算机、个人计算机(PC)、平板计算机、膝上型计算机、上网本、机顶盒(STB)、PDA、娱乐媒体***、蜂窝电话、智能电话、移动设备、可穿戴设备(例如,智能手表)、智能家居设备(例如,智能电器)、其他智能设备、web设备、网络路由器、网络交换机、网络桥接器或者能够顺序地或以其他方式执行指定要由机器1000采取的动作的指令1008的任何机器。此外,虽然仅示出了单个机器1000,但是术语“机器”还应当被视为包括单独地或联合地执行指令1008以执行本文讨论的方法中的任何一种或更多种的机器的集合。
机器1000可以包括处理器1002、存储器1004和I/O部件1042,所述处理器1002、存储器1004和I/O部件1042被配置成经由总线1044彼此通信。在示例实施方式中,处理器1002(例如,中央处理单元(CPU)、精简指令集计算(RISC)处理器、复杂指令集计算(CISC)处理器、图形处理单元(GPU)、数字信号处理器(DSP)、ASIC、射频集成电路(RFIC)、其他处理器或其任何合适的组合)可以包括例如执行指令1008的处理器1006和处理器1010。术语“处理器”旨在包括多核处理器,该多核处理器可以包括可以同时执行指令的两个或更多个独立的处理器(有时被称为“核”)。虽然图10示出了多个处理器1002,但是机器1000可以包括具有单个核的单个处理器、具有多个核的单个处理器(例如,多核处理器)、具有单个核的多个处理器、具有多个核的多个处理器或其任何组合。
存储器1004包括主存储器1012、静态存储器1014和存储单元1016,均可由处理器1002经由总线1044访问。主存储器1004、静态存储器1014和存储单元1016存储体现本文所描述的方法或功能中的任何一个或更多个的指令1008。指令1008在其被机器1000执行期间还可以完全地或部分地驻留在主存储器1012内、在静态存储器1014内、在存储单元1016内的机器可读介质1018内、在处理器1002中的至少一个处理器内(例如,在处理器的高速缓存存储器内)、或者在其任何合适的组合内。
I/O部件1042可以包括接收输入、提供输出、产生输出、传送信息、交换信息、捕获测量结果等的各种各样的部件。包括在特定机器中的具体I/O部件1042将取决于机器的类型。例如,便携式机器诸如移动电话可以包括触摸输入设备或其他这样的输入机构,而无头服务器机器将不太可能包括这样的触摸输入设备。应当理解,I/O部件1042可以包括图10中未示出的许多其他部件。在各种示例实施方式中,I/O部件1042可以包括输出部件1028和输入部件1030。输出部件1028可以包括视觉部件(例如,诸如等离子体显示面板(PDP)、发光二极管(LED)显示器、液晶显示器(LCD)、投影仪或阴极射线管(CRT)的显示器)、声学部件(例如,扬声器)、触觉部件(例如,振动马达、电阻机构)、其他信号发生器等。输入部件1030可以包括字母数字输入部件(例如,键盘、被配置成接收字母数字输入的触摸屏、光电键盘或其他字母数字输入部件)、基于点的输入部件(例如,鼠标、触摸板、轨迹球、操纵杆、运动传感器或其他定点仪器)、触觉输入部件(例如,物理按钮、提供触摸或触摸手势的位置和/或力的触摸屏或其他触觉输入部件)、音频输入部件(例如,麦克风)等。
在其他示例实施方式中,I/O部件1042可以包括生物识别部件1032、运动部件1034、环境部件1036或定位部件1038以及各种其他部件。例如,生物识别部件1032包括用于检测表达(例如,手部表达、面部表达、声音表达、身体姿势或眼睛跟踪)、测量生物信号(例如,血压、心率、体温、出汗或脑波)、识别人(例如,声音识别、视网膜识别、面部识别、指纹识别或基于脑电图的识别)等的部件。运动部件1034包括加速度传感器部件(例如,加速度计)、重力传感器部件、旋转传感器部件(例如,陀螺仪)等。环境部件1036包括例如照明传感器部件(例如,光度计)、温度传感器部件(例如,检测环境温度的一个或更多个温度计)、湿度传感器部件、压力传感器部件(例如,气压计)、听觉传感器部件(例如,检测背景噪声的一个或更多个麦克风)、接近传感器部件(例如,检测附近物体的红外传感器)、气体传感器(例如,为了安全而检测危险气体浓度或测量大气中污染物的气体检测传感器),或者可以提供与周围物理环境对应的指示、测量或信号的其他部件。定位部件1038包括位置传感器部件(例如,GPS接收器部件)、海拔传感器部件(例如,检测可从中得出海拔的气压的高度计或气压计)、取向传感器部件(例如,磁力计)等。
可以使用各种各样的技术来实现通信。I/O部件1042还包括通信部件1040,通信部件1040可操作成分别经由耦接1024和耦接1026将机器1000耦接至网络1020或设备1022。例如,通信部件1040可以包括与网络1020对接的网络接口部件或另一合适的设备。在另外的示例中,通信部件1040可以包括有线通信部件、无线通信部件、蜂窝通信部件、近场通信(NFC)部件、部件(例如,/>低能耗)、/>部件以及用于经由其他模态提供通信的其他通信部件。设备1022可以是另一机器或者各种***设备中的任何***设备(例如,经由USB耦接的***设备)。
此外,通信部件1040可以检测标识符或包括可操作以检测标识符的部件。例如,通信部件1040可以包括射频识别(RFID)标签阅读器部件、NFC智能标签检测部件、光学阅读器部件(例如,用于检测诸如通用产品代码(UPC)条形码的一维条形码、诸如快速响应(QR)码、Aztec码、数据矩阵、数据符号(Dataglyph)、最大码(MaxiCode)、PDF417、超码(UltraCode)、UCC RSS-2D条形码和其他光学码的多维条形码的光学传感器)或声学检测部件(例如,用于识别标记的音频信号的麦克风)。另外,可以经由通信部件1040得出各种信息,例如经由因特网协议(IP)地理定位得到的位置、经由信号三角测量得到的位置、经由检测可以指示特定位置的NFC信标信号得到的位置等等。
各种存储器(例如,存储器1004、主存储器1012、静态存储器1014和/或处理器1002的存储器)和/或存储单元1016可以存储由本文描述的方法或功能中的任何一个或更多个实现或使用的一组或更多组指令和数据结构(例如,软件)。这些指令(例如,指令1008)在由处理器1002执行时使各种操作实现所公开的实施方式。
可以经由网络接口设备(例如,包括在通信部件1040中的网络接口部件)使用传输介质并且使用多个公知的传输协议中任何一个传输协议(例如,超文本传输协议(HTTP))通过网络1020来发送或接收指令1008。类似地,可以使用传输介质经由耦接1026(例如,对等耦接)将指令1008发送或接收至设备1022。
如本文所使用的,术语“机器存储介质”、“设备存储介质”和“计算机存储介质”意指相同的事物并且可以在本公开内容中可互换地使用。所述术语是指存储可执行指令和/或数据的单个或多个存储设备和/或介质(例如,集中式或分布式数据库,以及/或者相关联的高速缓存和服务器)。因此,所述术语应被视为包括但不限于固态存储器以及光学和磁性介质,包括处理器内部或外部的存储器。机器存储介质、计算机存储介质和/或设备存储介质的具体示例包括:非易失性存储器,包括例如半导体存储器设备,例如可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)、现场可编程门阵列(FPGA)和闪存设备;磁盘,例如内部硬盘和可移除盘;磁光盘;以及CD-ROM和DVD-ROM盘。术语“机器存储介质”、“计算机存储介质”和“设备存储介质”明确地排除了载波、调制数据信号和其他这样的介质,所述载波、调制数据信号和其他这样的介质中的至少一些被涵盖在下面描述的术语“信号介质”中。
术语“传输介质”和“信号介质”意指相同的事物并且可以在本公开内容中可互换地使用。术语“传输介质”和“信号介质”应被视为包括能够存储、编码或携带由机器1400执行的指令1416的任何无形介质并且包括数字或模拟通信信号或者其他无形介质以有助于这样的软件的通信。因此,术语“传输介质”和“信号介质”应被视为包括任何形式的调制数据信号、载波等。术语“调制数据信号”意指使其特性中的一个或更多个特性以将信息编码在信号中的方式来设置或改变的信号。
术语“机器可读介质”、“计算机可读介质”和“设备可读介质”意指相同的事物并且可以在本公开内容中可互换地使用。所述术语被限定为包括机器存储介质和传输介质两者。因此,所述术语包括存储设备/介质和载波/调制数据信号两者。
虽然已经参考特定示例实施方式描述了实施方式,但是明显的是,在不脱离本公开内容的更广泛范围的情况下,可以对这些实施方式进行各种修改和改变。因此,说明书和附图应被认为是说明性的意义,而不是限制性的意义。形成本公开内容的一部分的附图通过说明而非限制的方式示出了其中可以实践本主题的具体实施方式。所示的实施方式被足够详细地描述,以使得本领域技术人员能够实践本文公开的教导。可以使用其他实施方式并从中得出其他实施方式,使得可以在不脱离本公开内容的范围的情况下进行结构和逻辑替换和改变。因此,具体实施方式不应当被理解为限制性意义,并且各种实施方式的范围仅由所附权利要求以及这些权利要求所赋予的等效内容的全部范围来限定。
仅是为了方便,本发明主题的这些实施方式在本文中可以单独和/或集体地通过术语“发明”来指代,并且如果事实上公开了一个以上的发明或发明构思,则并不旨在自愿地将本申请的范围限制为任何单个发明或发明构思。因此,虽然本文已经示出和描述了具体实施方式,但是应当理解,为实现相同目的而计算的任何布置都可以替代所示的具体实施方式。本公开内容旨在覆盖各种实施方式的任何和所有改编或变化。在回顾上述描述后,上述实施方式和本文未具体描述的其他实施方式的组合对于本领域技术人员来说将是明显的。
提供本公开内容的摘要以允许读者快速确定本技术公开内容的性质。以这样的理解提交摘要:该摘要将不会用于解释或限制权利要求的范围或含义。此外,在前面的具体实施方式中,可以看出,出于精简本公开内容的目的,各种特征在单个实施方式中被组合在一起。本公开内容的该方法不应被解释为反映所要求保护的实施方式需要比在每个权利要求中明确叙述的特征更多的特征的意图。相反,如所附权利要求书所反映的,本发明主题在于少于单个公开实施方式的所有特征。因此,所述权利要求在此被合并到具体实施方式中,其中,每个权利要求独立作为单独的实施方式存在。
示例
示例1是一种用于对三自由度(3DOF)跟踪装置进行动态初始化的方法,所述方法包括:访问来自所述3DOF跟踪装置的陀螺仪的陀螺仪信号;访问来自所述3DOF跟踪装置的加速度计的加速度计信号;确定初始状态,所述初始状态包括所述3DOF跟踪装置的初始取向、初始定位和初始速度的组合,所述初始状态指示所述3DOF跟踪装置的起始条件;对所述陀螺仪信号和所述加速度计信号进行积分以使用所述初始状态获得取向信号和定位信号;以及使用所述定位信号来细化所述取向信号的倾斜信号。
示例2包括示例1,其中,细化所述倾斜信号包括:将所述定位信号限制为保持基本上接近起始定位。
示例3包括示例1,其中,确定所述初始状态包括:基于所述加速度计信号来确定所述初始状态,而不需要所述3DOF跟踪装置保持在静止条件下。
示例4包括示例1,其中,确定所述初始状态包括:使用先前估计的所述3DOF跟踪装置的取向信号和定位信号。
示例5包括示例1,其中,对所述陀螺仪信号和所述加速度计信号进行积分包括:对所述陀螺仪信号进行积分,以确定从所述初始取向开始的所述取向信号;使用所述取向信号使来自所述加速度计的所述加速度计信号旋转;减去重力;以及从所述初始定位开始执行二重积分,以确定所述定位信号。
示例6包括示例1,还包括:使用偏差来校正所述陀螺仪信号和所述加速度计信号;以及使用所述定位信号来细化所述倾斜信号和偏差。
示例7包括示例1,还包括:访问来自所述3DOF跟踪装置的磁力计的磁力计信号;以及使用所述磁力计信号来细化所述取向信号。
示例8包括示例1,还包括:访问来自所述3DOF跟踪装置的基于无线电的传感器的位置信号;以及使用所述位置信号来细化所述定位信号。
示例9包括示例1,还包括:检测所述3DOF跟踪装置被接通;以及响应于检测到所述3DOF跟踪装置被接通,对所述3DOF跟踪装置进行初始化而无需等待所述3DOF跟踪装置的静止条件。
示例10包括示例9,还包括:在检测到所述3DOF跟踪装置被开启之后,连续地确定所述倾斜。
示例11是一种计算设备,包括:处理器;以及存储器,所述存储器存储指令,所述指令在由所述处理器执行时将所述设备配置成执行包括下述的操作:访问来自3DOF跟踪装置的陀螺仪的陀螺仪信号;访问来自所述3DOF跟踪装置的加速度计的加速度计信号;确定初始状态,所述初始状态包括所述3DOF跟踪装置的初始取向、初始定位和初始速度的组合,所述初始状态指示所述3DOF跟踪装置的起始条件;对所述陀螺仪信号和所述加速度计信号进行积分以使用所述初始状态获得取向信号和定位信号;以及使用所述定位信号来细化所述取向信号的倾斜信号。
示例12包括示例11,其中,细化所述倾斜信号包括:将所述定位信号限制为保持基本上接近起始定位。
示例13包括示例11,其中,确定所述初始状态包括:基于所述加速度计信号来确定所述初始状态,而不需要所述3DOF跟踪装置保持在静止条件下。
示例14包括示例11,其中,确定所述初始状态包括:使用先前估计的所述3DOF跟踪装置的取向信号和定位信号。
示例15包括示例11,其中,对所述陀螺仪信号和所述加速度计信号进行积分包括:对所述陀螺仪信号进行积分,以确定从所述初始取向开始的所述取向信号;使用所述取向信号使来自所述加速度计的所述加速度计信号旋转;减去重力;以及从所述初始定位开始执行二重积分,以确定所述定位信号。
示例16包括示例11,其中,所述指令还将所述设备配置成:使用偏差来校正所述陀螺仪信号和所述加速度计信号;以及使用所述定位信号来细化所述倾斜信号和偏差。
示例17包括示例11,其中,所述指令还将所述设备配置成:访问来自所述3DOF跟踪装置的磁力计的磁力计信号;以及使用所述磁力计信号来细化所述取向信号。
示例18包括示例11,其中,所述指令还将所述设备配置成:访问来自所述3DOF跟踪装置的基于无线电的传感器的位置信号;以及使用所述位置信号来细化所述定位信号。
示例19包括示例11,其中,所述指令还将所述设备配置成:检测所述3DOF跟踪装置被接通;以及响应于检测到所述3DOF跟踪装置被接通,对所述3DOF跟踪装置进行初始化而无需等待所述3DOF跟踪装置的静止条件;以及在检测到所述3DOF跟踪装置被开启之后,连续地确定倾斜。
示例20是一种非暂态计算机可读存储介质,所述计算机可读存储介质包括指令,所述指令在由计算机执行时使所述计算机执行包括下述的操作:访问来自3DOF跟踪装置的陀螺仪的陀螺仪信号;访问来自所述3DOF跟踪装置的加速度计的加速度计信号;确定初始状态,所述初始状态包括所述3DOF跟踪装置的初始取向、初始定位和初始速度的组合,所述初始状态指示所述3DOF跟踪装置的起始条件;对所述陀螺仪信号和所述加速度计信号进行积分以使用所述初始状态获得取向信号和定位信号;以及使用所述定位信号来细化所述取向信号的倾斜信号。
Claims (20)
1.一种用于对三自由度(3DOF)跟踪装置进行动态初始化的方法,所述方法包括:
访问来自所述3DOF跟踪装置的陀螺仪的陀螺仪信号;
访问来自所述3DOF跟踪装置的加速度计的加速度计信号;
确定初始状态,所述初始状态包括所述3DOF跟踪装置的初始取向、初始定位和初始速度的组合,所述初始状态指示所述3DOF跟踪装置的起始条件;
对所述陀螺仪信号和所述加速度计信号进行积分以使用所述初始状态获得取向信号和定位信号;以及
使用所述定位信号来细化所述取向信号的倾斜信号。
2.根据权利要求1所述的方法,其中,细化所述倾斜信号包括:
将所述定位信号限制为保持基本上接近起始定位。
3.根据权利要求1所述的方法,其中,确定所述初始状态包括:
基于所述加速度计信号来确定所述初始状态,而不需要所述3DOF跟踪装置保持在静止条件下。
4.根据权利要求1所述的方法,其中,确定所述初始状态包括:
使用先前估计的所述3DOF跟踪装置的取向信号和定位信号。
5.根据权利要求1所述的方法,其中,对所述陀螺仪信号和所述加速度计信号进行积分包括:
对所述陀螺仪信号进行积分,以确定从所述初始取向开始的所述取向信号;
使用所述取向信号使来自所述加速度计的所述加速度计信号旋转;
减去重力;以及
从所述初始定位开始执行二重积分,以确定所述定位信号。
6.根据权利要求1所述的方法,还包括:
使用偏差来校正所述陀螺仪信号和所述加速度计信号;以及
使用所述定位信号来细化所述倾斜信号和偏差。
7.根据权利要求1所述的方法,还包括:
访问来自所述3DOF跟踪装置的磁力计的磁力计信号;以及
使用所述磁力计信号来细化所述取向信号。
8.根据权利要求1所述的方法,还包括:
访问来自所述3DOF跟踪装置的基于无线电的传感器的位置信号;以及
使用所述位置信号来细化所述定位信号。
9.根据权利要求1所述的方法,还包括:
检测所述3DOF跟踪装置被接通;以及
响应于检测到所述3DOF跟踪装置被接通,对所述3DOF跟踪装置进行初始化而无需等待所述3DOF跟踪装置的静止条件。
10.根据权利要求9所述的方法,还包括:
在检测到所述3DOF跟踪装置被开启之后,连续地确定倾斜。
11.一种计算设备,包括:
处理器;以及
存储器,所述存储器存储指令,所述指令在由所述处理器执行时将所述设备配置成执行包括下述的操作:
访问来自3DOF跟踪装置的陀螺仪的陀螺仪信号;
访问来自所述3DOF跟踪装置的加速度计的加速度计信号;
确定初始状态,所述初始状态包括所述3DOF跟踪装置的初始取向、初始定位和初始速度的组合,所述初始状态指示所述3DOF跟踪装置的起始条件;
对所述陀螺仪信号和所述加速度计信号进行积分以使用所述初始状态获得取向信号和定位信号;以及
使用所述定位信号来细化所述取向信号的倾斜信号。
12.根据权利要求11所述的计算设备,其中,细化所述倾斜信号包括:
将所述定位信号限制为保持基本上接近起始定位。
13.根据权利要求11所述的计算设备,其中,确定所述初始状态包括:
基于所述加速度计信号来确定所述初始状态,而不需要所述3DOF跟踪装置保持在静止条件下。
14.根据权利要求11所述的计算设备,其中,确定所述初始状态包括:
使用先前估计的所述3DOF跟踪装置的取向信号和定位信号。
15.根据权利要求11所述的计算设备,其中,对所述陀螺仪信号和所述加速度计信号进行积分包括:
对所述陀螺仪信号进行积分,以确定从所述初始取向开始的所述取向信号;
使用所述取向信号使来自所述加速度计的所述加速度计信号旋转;
减去重力;以及
从所述初始定位开始执行二重积分,以确定所述定位信号。
16.根据权利要求11所述的计算设备,其中,所述指令还将所述设备配置成:
使用偏差来校正所述陀螺仪信号和所述加速度计信号;以及
使用所述定位信号来细化所述倾斜信号和偏差。
17.根据权利要求11所述的计算设备,其中,所述指令还将所述设备配置成:
访问来自所述3DOF跟踪装置的磁力计的磁力计信号;以及
使用所述磁力计信号来细化所述取向信号。
18.根据权利要求11所述的计算设备,其中,所述指令还将所述设备配置成:
访问来自所述3DOF跟踪装置的基于无线电的传感器的位置信号;以及
使用所述位置信号来细化所述定位信号。
19.根据权利要求11所述的计算设备,其中,所述指令还将所述设备配置成:
检测所述3DOF跟踪装置被接通;
响应于检测到所述3DOF跟踪装置被接通,对所述3DOF跟踪装置进行初始化而无需等待所述3DOF跟踪装置的静止条件;以及
在检测到所述3DOF跟踪装置被开启之后,连续地确定倾斜。
20.一种非暂态计算机可读存储介质,所述计算机可读存储介质包括指令,所述指令在由计算机执行时使所述计算机执行包括下述的操作:
访问来自3DOF跟踪装置的陀螺仪的陀螺仪信号;
访问来自所述3DOF跟踪装置的加速度计的加速度计信号;
确定初始状态,所述初始状态包括所述3DOF跟踪装置的初始取向、初始定位和初始速度的组合,所述初始状态指示所述3DOF跟踪装置的起始条件;
对所述陀螺仪信号和所述加速度计信号进行积分以使用所述初始状态获得取向信号和定位信号;以及
使用所述定位信号来细化所述取向信号的倾斜信号。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US63/189,845 | 2021-05-18 | ||
US17/524,423 | 2021-11-11 | ||
US17/524,423 US11941184B2 (en) | 2021-05-18 | 2021-11-11 | Dynamic initialization of 3DOF AR tracking system |
PCT/US2022/029621 WO2022245815A1 (en) | 2021-05-18 | 2022-05-17 | Dynamic initialization of 3dof ar tracking system |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117337422A true CN117337422A (zh) | 2024-01-02 |
Family
ID=89290623
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202280035625.4A Pending CN117337422A (zh) | 2021-05-18 | 2022-05-17 | 三自由度增强现实跟踪***的动态初始化 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117337422A (zh) |
-
2022
- 2022-05-17 CN CN202280035625.4A patent/CN117337422A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20230388632A1 (en) | Dynamic adjustment of exposure and iso to limit motion blur | |
US20230300464A1 (en) | Direct scale level selection for multilevel feature tracking under motion blur | |
US20240176428A1 (en) | Dynamic initialization of 3dof ar tracking system | |
US11765457B2 (en) | Dynamic adjustment of exposure and iso to limit motion blur | |
US20240221222A1 (en) | Camera intrinsic re-calibration in mono visual tracking system | |
US20220375110A1 (en) | Augmented reality guided depth estimation | |
US12014523B2 (en) | Intrinsic parameters estimation in visual tracking systems | |
US11683585B2 (en) | Direct scale level selection for multilevel feature tracking under motion blur | |
WO2022246388A1 (en) | Intrinsic parameters estimation in visual tracking systems | |
CN117321543A (zh) | 减少增强现实体验的启动时间 | |
US11941184B2 (en) | Dynamic initialization of 3DOF AR tracking system | |
CN117337422A (zh) | 三自由度增强现实跟踪***的动态初始化 | |
US20220374505A1 (en) | Bending estimation as a biometric signal | |
US20240221212A1 (en) | Device pairing using machine-readable optical label | |
US20240127006A1 (en) | Sign language interpretation with collaborative agents | |
CN117441343A (zh) | 曝光和iso的动态调整的相关应用 | |
CN117321546A (zh) | 增强现实引导的深度估计 | |
CN117425869A (zh) | 后期扭曲中的动态过度渲染 | |
WO2022246382A1 (en) | Bending estimation as a biometric signal | |
CN117321472A (zh) | 进行后期扭曲以最小化移动对象的延迟 | |
WO2024145124A1 (en) | Device pairing using machine-readable optical label | |
CN117337575A (zh) | 用于运动模糊减轻的选择性图像金字塔计算 | |
CN117501208A (zh) | 利用步态印迹模仿的ar数据模拟 | |
KR20240008370A (ko) | 움직이는 객체들의 레이턴시를 최소화하기 위한 늦은 워핑 | |
CN117321635A (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 |