CN111295714A - 在虚拟环境中使用高精度传感器数据来训练低精度传感器数据以进行对象定位的双精度传感器系统 - Google Patents

在虚拟环境中使用高精度传感器数据来训练低精度传感器数据以进行对象定位的双精度传感器系统 Download PDF

Info

Publication number
CN111295714A
CN111295714A CN201880068426.7A CN201880068426A CN111295714A CN 111295714 A CN111295714 A CN 111295714A CN 201880068426 A CN201880068426 A CN 201880068426A CN 111295714 A CN111295714 A CN 111295714A
Authority
CN
China
Prior art keywords
precision
sensor system
relatively high
motion signal
relatively low
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
CN201880068426.7A
Other languages
English (en)
Other versions
CN111295714B (zh
Inventor
玛坦·普洛特
埃弗拉特·罗特姆
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.)
Alibaba Damo Institute Hangzhou Technology Co Ltd
Original Assignee
Alibaba Technology Israel Ltd
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 Alibaba Technology Israel Ltd filed Critical Alibaba Technology Israel Ltd
Publication of CN111295714A publication Critical patent/CN111295714A/zh
Application granted granted Critical
Publication of CN111295714B publication Critical patent/CN111295714B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01PMEASURING LINEAR OR ANGULAR SPEED, ACCELERATION, DECELERATION, OR SHOCK; INDICATING PRESENCE, ABSENCE, OR DIRECTION, OF MOVEMENT
    • G01P13/00Indicating or recording presence, absence, or direction, of movement
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • G06F3/012Head tracking input arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Image Analysis (AREA)
  • Radar Systems Or Details Thereof (AREA)

Abstract

提供了一种用于改善传感器精度的系统和方法。在训练阶段中,相对低精度传感器系统和相对高精度传感器系统可以分别记录基本上相同的训练场景的相对低精度训练运动信号和相对高精度训练运动信号。可以执行机器学习以生成将来自相对低精度训练运动信号的信息映射到相对高精度训练运动信号的变换。在运行时阶段中,精度显著地低于相对高精度传感器系统的精度的运行时传感器系统可以记录运行时场景的运行时运动信号。可以使用所述变换来对运行时运动信号进行变换以生成精度显著地高于运行时传感器系统的精度的变换运行时运动信号。

Description

在虚拟环境中使用高精度传感器数据来训练低精度传感器数 据以进行对象定位的双精度传感器系统
技术领域
本发明的实施例总体上涉及运动检测传感器系统以及改善低精度运动检测传感器系统的准确度的领域。更具体地,本发明的实施例涉及在虚拟环境(诸如增强现实(AR)、虚拟现实(VR)或混合现实(MR)系统)中使用运动检测传感器来检测人(例如,头部)运动。
背景技术
在虚拟环境中使用的现代头戴式显示器(HMD)(诸如AR、VR和MR头戴式设备)常常采用传感器来估计头部位置和定向,例如,在六个自由度(6DOF)上。HMD通常将虚拟对象(诸如增强现实(AR)全息图)与物理世界对准并且根据用户估计的头部移动按一位置和定向而渲染虚拟对象。
为了实现高准确度,当前的定位和定向系统需要诸如惯性测量单元(IMU)的传感器或具有高精度水平的基于相机的跟踪系统,这些传感器或跟踪系统与其低精度对应物相比通常是较慢的(例如,执行更复杂且费时的计算),消耗更多的功率,尺寸更大,并且更昂贵。
因此,在本领域中需要以高准确度水平为位置检测提供更快且更划算的解决方案。
发明内容
为了克服前述问题,提供了一种用于增加对象定位系统的精度水平的方法和系统。
依照本发明的实施例,提供了一种用于改善传感器精度的系统和方法。在训练阶段中,双精度传感器系统可以通过相对低精度传感器系统和相对高精度传感器系统来分别记录基本上相同的训练场景的运动信号以生成相对低精度训练运动信号和相对高精度训练运动信号。可以执行机器学习以生成将来自所述相对低精度训练运动信号的信息映射到来自所述相对高精度训练运动信号的信息的变换。在运行时阶段中,运行时传感器系统可以通过精度显著地低于所述相对高精度传感器系统的精度的运行时传感器系统来记录运行时场景的运动信号以生成运行时运动信号。所述运行时传感器系统可以使用所述变换来对所述运行时运动信号进行变换以生成精度显著地高于所述运行时传感器系统的精度(例如,近似地等于或约为所述相对高精度训练运动信号的精度)的变换运行时运动信号。
依照本发明的实施例,提供了一种双精度传感器系统,所述双精度传感器系统包括:相对低精度传感器系统;相对高精度传感器系统;以及一个或更多个处理器,所述一个或更多个处理器被配置为训练精度改善变换。在训练阶段中,所述相对低精度传感器系统和所述相对高精度传感器系统可以被配置为分别记录基本上相同的目标对象的运动信号以生成相对低精度训练运动信号和相对高精度训练运动信号。一个或更多个处理器可以被配置为执行机器学习以生成将来自所述相对低精度训练运动信号的信息映射到来自所述相对高精度训练运动信号的信息的变换。当所述变换被应用于通过精度显著地低于所述相对高精度传感器系统的精度的运行时传感器系统所记录的运行时运动信号时,可以产生精度显著地高于所述运行时传感器系统的精度(例如,近似地等于或约为所述相对高精度训练运动信号的精度)的变换运行时运动信号。
依照本发明的实施例,提供了一种运行时传感器系统,所述运行时传感器系统包括:一个或更多个存储器单元,所述一个或更多个存储器单元被配置为存储将来自通过相对低精度传感器系统所记录的相对低精度训练运动信号的信息映射到来自通过相对高精度传感器系统所记录的相对高精度训练运动信号的信息的变换。所述运行时传感器系统可以被配置为记录运行时运动信号,其中,所述运行时传感器系统的精度显著地低于所述相对高精度传感器的精度。所述运行时传感器系统可以包括一个或更多个处理器,所述一个或更多个处理器被配置为使用所存储的变换来对所述运行时运动信号进行变换以生成精度高于所述运行时传感器的精度的变换运行时运动信号。
附图说明
在说明书的结束部分中特别指出并显然要求保护被视为本发明的主题。然而,关于组织和操作方法以及其目的、特征和优点,可以在与附图一起阅读时通过参考以下详细描述来最好地理解本发明,在附图中:
图1A是依照本发明的一些实施例的在训练阶段中操作的双精度传感器系统的示意图示;
图1B是依照本发明的一些实施例的在运行时阶段中操作的传感器系统的示意图示;
图2是依照本发明的一些实施例的具有与被跟踪目标对象分开定位的第一传感系统和与被跟踪目标对象安装在一起的第二传感系统的双精度传感器系统的示意图示;
图3是依照本发明的一些实施例的具有都与被跟踪目标对象安装在一起的第一对象定位系统和第二对象定位系统的双精度传感器系统的示意图示;
图4是依照本发明的一些实施例的具有多传感器对象定位系统和单传感器对象定位系统的双精度传感器系统的示意图示;以及
图5是依照本发明的一些实施例的方法的流程图。
应领会的是,为了图示的简单和清楚,这些图中所示的元件尚不一定按比例绘制。例如,为了清楚,一些元件的尺寸可以相对于其他元件被放大。进一步地,在被认为适当的情况下,可以在这些图之中重复附图标记以指示对应或类似的元件。
具体实施方式
在以下描述中,将描述本发明的各个方面。出于说明的目的,阐述了具体配置和细节以便提供对本发明的透彻理解。然而,对于本领域的技术人员而言还将显而易见的是,可以在没有本文呈现的具体细节的情况下实践本发明。此外,可以省略或简化众所周知的特征以免使本发明混淆。
除非另外具体地陈述,否则如从以下讨论中显而易见的,应领会的是在整个说明书中,利用诸如“处理”、“计算”、“计算出”、“检测”、“确定”等的术语的讨论指代计算机或计算系统或类似的电子计算设备的动作和/或处理,其将被表示为计算系统的寄存器和/或存储器内的物理量(诸如电子量)的数据操纵和/或变换成被类似地表示为计算系统的存储器、寄存器或其他此类信息存储、传输或显示设备内的物理量的其他数据。
术语“头戴式显示器”或“HMD”可以指代通过诸如安全带、头盔、装备或遮阳板的附连设备安装在用户的头部上的显示设备。在增强现实(AR)平台中,HMD在用户的视场中组合物理或真实世界(例如,经由标准光学透镜显示)和虚拟图形(例如,经由数字投影显示)两者的图像。在虚拟现实(VR)平台中,HMD用于替换物理场景,从而在用户的视场中排他地显示虚拟图形(例如,经由LCD屏幕显示)。混合现实环境组合AR和VR能力。
术语“六个自由度”或“6DOF”可以指代刚性主体在三维空间中的移动自由度。在一些情况下,主体当在三个垂直轴上向前/向后(波动)、向上/向下(升降)、向左/向右(摇摆)平移时结合通过绕三个垂直轴旋转的定向变化(常常称为俯仰、偏航和横摇)自由地改变位置。
术语“运动”可以指代与点或刚性主体在空间或时间上的定位有关的任何信息,包括但不限于位置及其派生词(例如,速度/速率、加速度等)、动量、定向及其派生词(例如,旋转速度/速率、旋转加速度等)、角动量、在单个时间点的绝对运动、两个时间点之间的相对运动或运动变化以及预测的将来运动。
术语“传感器”可以指代单个传感器或者包括一个或更多个传感器的传感器系统。该传感器或传感器系统可以包括或在操作上连接到定位检测系统,所述定位检测系统操作一个或更多个处理器和/或过程,所述处理器和/或过程基于原始传感器测量结果来计算传感器/系统或目标对象/位置的运动测量结果(例如,6DOF)。
术语“惯性测量单元”或“IMU”可以指代传感器的合集,所述传感器测量诸如加速度和旋转速度的各种物理量,从而使得能够从各种物理量推理设备的运动。
术语传感器系统的“精度”可以指代与真实或理想运动值(例如,在真实世界中测量、通过设计(诸如由机器人执行的运动的编程序列)预先定义或者通过高可靠性设备和/或过程来计算)的一个或更多个基准或阈值相比的通过系统计算出的一个或更多个运动值(或从其中导出的数据,例如虚拟对象)之间的相似度(例如,准确度)或差异(例如,通过相似度的倒数所定义的误差)。可以以许多方式计算出精度,在下面提供了许多方式的几个示例。在一个实施例中,传感器系统的精度可以是所计算出的系统的运动值与“地面实况”运动值(例如,在真实世界中或使用传感器来直接测量)之间的相似度或差异的量度。例如,如果设备移动十英寸而系统计算出九英寸的运动,则精度可以是9英寸或90%相似度或1英寸或10%误差(例如,百分比误差=100-百分比精度)。在虚拟环境中的另一实施例中,传感器系统的精度可以是用户感知的虚拟对象的运动(例如,由设备与用户的视场一致地测量)与旨在由虚拟设备所模拟出的虚拟对象的目标运动之间的相似度或差异的量度。例如,HMD可以模拟被编程为与用户一起移动以从用户的视角看似乎被固定在3D定位中的全息图。精度可以是全息图似乎独立于用户而移动的量(例如,假定我们具有地面实况来测量)的量度。例如,通过首先在相对于设备(例如,附连到用户的HMD)的起点的3D定位处生成点全息图,可以计算出全息图似乎独立于用户而移动的量。在每个时间点处,给定设备的位置和定向(x1,y1)(例如,通过“地面实况”测量所提供的位置和定向以及用于要测量的设备的位置和定向),本发明的一些实施例可以计算出全息图被显示或者被编程为被显示在用户的视场中的定位(例如,显示器上实际的(x2,y2)坐标)。在一些实施例中,可能不需要实际地渲染全息图,可能需要求解仅用于投影到显示器上的数学公式。可以基于从系统获得的地面实况位置(x1,y1)与所计算出的全息图显示位置(x2,y2)之间的误差或距离来定义精度。在一些实施例中,像素可以表示视线(例如,光线的方向),并且因此将来自像素的误差转换为角误差并基于角差异来表示精度可能更准确。精度可以是绝对量度(例如,所计算出的运动与基准运动之间的距离)或相对量度(例如,与移动的总距离或持续时间相比的误差距离的百分比)。在一些实施例中,可以在不用测量真实运动数据的情况下确定精度(例如,通过系统设计、统计或测量运动的间接结果等)。在一些实施例中,精度可以是范畴或等级(例如,高对中等对低、基于值的范围)而不是确切值。
在一个示例中,低精度系统包括一组低质量(例如,一个、两个或四个)相机(例如,产生相对模糊、有噪声或低分辨率的图像)和/或IMU,其是相对便宜、低精度且低功耗的组件。相机和/或IMU被安装到电动设备,所述电动设备根据预先编程的运动来移动,所述预先编程的运动用作基准运动值以供比较来确定精度。相机和/或IMU的相对校准(例如,相对位置)可以是已知的或可以不是已知的。高精度系统包括一组高质量相机,例如,被安装到墙壁,从而跟踪被附连到被测设备的一组反射器。相机是固定的。在记录之前执行校准。由于目标反射器的知识,系统能够高度准确地检测反射器。
术语“高”或“相对高”精度和“低”或“相对低”精度是相对术语,指代相对于彼此的精度或相对于预定阈值的精度的量度。相对低精度设备与相对高精度设备相比具有次等的硬件(例如,在制造导致差质量数据的传感器时使用的较便宜的材料)或次等的软件过程(例如,求解较少的方程、忽视一些数据、运行较少的计算迭代或限制搜索区域等)。相对高精度与相对低精度之间的相对精度差异可能是显著的,例如,至少15%偏差且优选地至少25%偏差。例如,低或相对低精度传感系统以1-20mm(例如,3mm)的运动计算误差、0.006-0.1弧度(例如,0.01弧度)和/或0.01-2mm/样本(例如,0.2mm/样本)或更大的稳定性实现精度。在一些示例情况下,高或相对高精度传感系统以
Figure BDA0002458744440000061
(例如,0.1mm)、
Figure BDA0002458744440000062
弧度(例如,0.001弧度)和/或
Figure BDA0002458744440000063
/样本(例如,0.02mm/样本)的稳定性实现精度。这些值总体上可以指系统的精度,而个别传感器或组件可以(或可能不)具有较低的精度。在一些实施例中,与相对较低精度传感器系统相比,高精度传感器系统可以以相对更快的速率计算运动。例如,低或相对低精度传感系统以10帧每秒(FPS)或200Hz的频率计算运动,而高或相对高精度传感系统以90FPS或1000Hz的频率计算运动。可以使用其他值或阈值。
根据本发明的一些实施例,提供了一种双精度传感器系统,所述双精度传感器系统包括相对高精度传感器和相对低精度传感器两者(例如,相对于彼此或相对于相应的阈值)以用于训练并改善通过低精度传感器所记录的定位检测数据的准确度。该双精度传感器系统可以通过相应的相对高精度传感器和相对低精度传感器来记录基本上相同场景的相对高精度运动信号和相对低精度运动信号的并行流。在训练阶段期间,该双精度传感器系统可以例如使用机器学习来训练模型,以将来自相对低精度运动信号的输入数据变换为来自相对高精度运动信号的输出数据。该模型可以是输入成对的来自相对低精度传感器的相同场景的对应数据和来自相对高精度传感器的数据的N层神经网络。可以通过机器学习来训练多个(N个)神经层以将相对低精度传感器数据变换成被优化为与相对高精度传感器数据匹配的信号。可以通过机器学习来调整层数N以及层和节点权重以实现优化的变换,例如,通过使经变换的低精度传感器数据与相对高精度传感器数据之间的差异或误差最小化。在一些实施例中,相对高精度传感器和相对低精度传感器测量在空间中和/或使用不同坐标系的不同点的/来自这些不同点的运动(例如,6DOF)。因此可以使相对高精度数据和相对低精度数据归一化为公共位置和/或坐标系。在一个实施例中,可以通过使用机器学习来学习不同的位置或坐标系之间的归一化变换并且将该归一化变换应用于高精度数据或低精度数据中的一种或两种以使数据归一化来实现归一化。可以与在训练阶段中训练精度变换一起或者在在训练阶段中训练精度变换之前的单独的初始预训练阶段中训练归一化变换。
应该在训练场景中记录足够的各种类型的运动以预期在运行时记录期间可能发生的各种移动。模型的输入和输出数据可以是传感器参数、原始传感器数据或从其中导出的数据(诸如运动数据)和/或传感器内部参数、传感器相对参数、跟踪质量(例如,将质量等级附连到当前测量结果的内部量度)。
一旦模型被训练,在运行时阶段中,定位检测系统(诸如HMD)就可以仅使用具有显著地小于在训练阶段中使用的高精度传感器的精度(例如,相差至少25%)的精度的传感器。例如,运行时传感器的精度可以确切地或近似地(例如,在10%准确度内)等于在训练阶段中使用的低精度传感器的精度。定位检测系统可以将经训练的变换应用于运行时(低精度)传感器数据(或从其中导出的运动信息)以改善其精度(例如,将比低精度传感器数据的精度显著地大至少25%且优选地50%,并且在一些实施例中,将近似(在10%准确度内)在训练阶段中使用的高精度传感器数据的精度)。附加地或可替代地,训练可以改善运行时运动检测的鲁棒性(例如,减少显著错误的数量)。因此,相对低精度运行时传感器可以用于生成相对高精度运动数据(而无需使用相对高精度传感器)。
在实施例中,相对高精度传感器系统可以以比使用相对低精度传感器系统所计算出的相对较低的频率或速率相对更高的频率或速率来计算运动。在训练阶段期间,可以输入相对较高的频率计算来训练模型以改善运行时运动计算的频率或响应时间/等待时间。在运行时阶段期间,模型可以输入频率相对低的运行时传感器数据(例如,来自训练阶段的相对低精度传感器系统的约10%或10%内的许多计算帧)并且可以在低频读取帧之间输出或预测新运动数据,以增加运动计算的速率(例如,将比运行时传感器计算的频率显著地大至少25%且优选地50%,并且在一些实施例中,将近似(在10%准确度内)在训练阶段中使用的高精度传感器的频率)。附加地或可替代地,可以通过用相对较高频率运动数据训练系统来改善运行时等待时间。例如,相对较高频率运动数据可以用于使一系列低精度传感器数据与具体运动相关联,使得在运行时阶段期间需要较小数量的数据样本来相对于非训练运行时数据集计算相同的运动。
然后,仍在运行时阶段中,HMD可以根据通过变换运动信息所表示的头部运动来在AR、VR或MR显示器中渲染一个或更多个虚拟对象。因为通过变换改善了运动信息的精度和/或频率,所以与根据非变换运动信息渲染的图像相比,还改善了虚拟对象在经渲染的图像中的定位和真实性。
除了改善运动检测准确度和图像渲染准确度之外,本发明的实施例还可以改善运动检测系统的功率效率。与相对较高精度传感器系统相比,相对较低精度传感器系统通常使用相对较低的计算负载来操作,因此使用较少的功率。本发明的实施例因此可以使用较少的功率(使用仅低精度传感器)来实现与高精度运动检测系统(使用更多能耗的高精度传感器)相同或类似的精度。因此,与处理通过高精度传感器所测量的运动信息相比,根据本发明的实施例,运动检测系统通过处理通过低精度传感器所测量的运动信息并且然后将该数据变换成高精度传感器数据来检测运动可以是更加功率高效的(使用较少的能量)。
图1A的系统100可以操作训练阶段以便图1B的运行时系统101操作运行时阶段。在图1A的训练阶段中,系统100可以执行实验并模拟用于调整、校准和优化运动检测变换模型的工作参数的场景,然后系统101在图1B的运行时阶段中使用这些工作参数,在图1B的运行时阶段期间系统(例如,HMD)的工作参数通常是固定的。图1A的系统100可以在训练阶段中使用相对低精度传感器和相对高精度传感器两者,从而使用来自高精度传感器的数据来训练运动检测变换以基于来自相对低精度传感器的数据来改善运动检测。相比之下,系统101在图1B的运行时阶段中可以仅使用精度显著地小于在训练阶段中使用的相对高精度传感器的精度(例如,具有与在训练阶段中使用的相对低精度传感器相同或类似的、增加的或减小的精度)的传感器111B,并且可以根据经训练的变换来提高运动检测精度。
现在参考图1A,图1A是依照本发明的一些实施例的在训练阶段中操作的双精度传感器系统100的示意图示。系统100可以包括:第一对象定位系统110A,其包括一个或更多个相对高精度传感器;以及第二对象定位系统110B,其包括一个或更多个相对低精度传感器。相对高精度传感器可以具有比相对低精度传感器的精度高的精度或预定阈值精度,例如,具有1mm距离的运动计算误差、0.006弧度和/或0.1mm/样本的稳定性误差。类似地,相对低精度传感器可以具有比相对高精度传感器的精度低的精度或者相同或不同的预定阈值精度。与相对低精度传感器相比,相对高精度传感器可以具有优等的硬件(例如,较大分辨率检测器阵列)或优等的软件过程(例如,求解更多的方程、输入更多的数据、运行更大数量的计算迭代等)。精度可以是一个或更多个参数的量度,所述参数包括例如运动计算分辨率(例如,用于相机的像素密度)、频率、距离误差(绝对的或相对的/与地面实况相比的或用户感知的)或其任何组合。高精度传感器系统可以具有与低精度传感器系统不同的硬件和/或软件。传感器精度可以例如基于传感器的数量(例如,增加的数量通常与增加的精度相关联)和传感器配置(例如,它们之间的距离可能影响性能)而变化。相机精度可以例如基于由相机成像的独立像素的数量、视场、噪声水平(例如,量子效率)、灵敏度、积分时间和透镜质量而变化。IMU精度可以例如基于随机游动噪声、偏倚、偏倚随着时间推移的变化、跨轴非线性、对温度的灵敏度、有限动态范围、取决于信号的性能(例如,对不同速度的不同响应)而变化。参考图2至图4描述定位系统100A和110B中的传感器的各种布置。
在图1A的训练阶段期间,包括相对高精度传感器的第一对象定位系统110A和包括相对低精度传感器的第二对象定位系统110B被配置为记录跟踪目标对象的基本上相同的训练场景的运动信号以生成两个并行信号,分别为第一相对低精度运动信号和第二相对高精度运动信号。运动信号可以包括定义被跟踪目标对象在场景中的运动的信息,包括但不限于位置、速度、速率、加速度、动量、定向、旋转速度、旋转速率、旋转加速度、角动量或其任何组合或函数,所有这些都可以作为绝对或相对运动以及当前或预测的将来时间被测量。第一对象定位系统110A和第二对象定位系统110B可以同时地记录相同的场景,或者可以分别地(例如,在不同的时间)记录相同的对象运动的再现(例如,重复迭代)。当第一对象定位系统110A和第二对象定位系统110B分别地记录场景时,场景的每次迭代可以以保留影响对象定位的相同或类似的工作参数的方式遵循被跟踪目标对象的相同的移动。在一个示例中,机器人或其他机械化设备可以被编程为在要通过第一对象定位系统110A和第二对象定位系统110B分别记录的场景的每次迭代中全部确切地(或近似地)重复相同的移动序列。
可以处理来自系统100传感器的原始传感器数据以通过传感器本身中的嵌入式电路在本地或者通过第一对象定位系统110A和第二对象定位系统110B中的运动跟踪模块和/或通过单独的外部监视模块120生成运动信号(例如,位置和定向信息)。运动信息可以被转移到计算机处理器130,并且被计算机处理器130接收,其中分析模块140可以分析运动信号并且训练系统100以生成提高图像精度的去噪函数或变换150。
在训练阶段期间,在计算机处理器130从第一对象定位系统110A和第二对象定位系统110B(或者经由中间监视模块120)接收到相对高精度运动信号和相对低精度运动信号时,计算机处理器130(例如,分析模块140)可以被配置为执行机器学习程序以生成变换150,所述变换150将来自相对低精度运动信号的信息映射成来自相对高精度运动信号的信息。特别地,可以将相对高精度运动信号用作基准以将相对低精度运动信号训练和变换成相对改善的或精度更高的运动信息。处理器130可以使用包括神经网络、直接数据库干扰、字典学习和其他方法的各种训练方法来执行机器学习。
在使用神经网络的实施例中,处理器130可以使用输入与相同的场景或运动相对应的相对低精度训练运动信号和相对高精度训练运动信号的神经网络来执行机器学习。神经网络由计算机处理器130训练变换150以映射相对低精度运动信号来拟合相对高精度运动信号。神经网络可以被配置有层的数量、每个层的结构(神经元的数量)和层之间的连接,它们可以通过机器学习来固定或调整。附加地,可以连接多个网络结构,并且可以在每一层的操作之前或之后引入附加的固定操作符(诸如合并、离散化等)。在一个实施例中,神经网络可以具有称为“长短期记忆”的布局,其中在每个阶段中从传感器仅输入新(非冗余)数据,但是还存储网络的当前和先前迭代的结果(例如,如果先前动作正在运行或坐下,则可以不同地解释相同的当前运动信号)。通过仅基于新的非冗余数据来训练神经网络,同时仍然受益于训练先前数据的结果,此类实施例可以在实现相同或类似的结果的同时使存储需求和计算最小化以改善速度并增加可用的存储器。这是由于系统随着时间推移而显式地学习数据的进展而不是要立即观察数据全体的需要而导致的。
在使用直接数据库干扰的实施例中,训练阶段可以包括建立成对的低质量信号及其高质量对应物的数据库并可能构造该数据库以优化搜索速度。在运行时阶段期间,给定低质量信号,处理器130可以搜索数据库以得到多个(N个)(例如,1个、5个、……)最类似的低质量信号(例如,使用确切或近似搜索)。处理器130可以从数据库中检索此低质量信号的(N个)高精度信号等同物,并且可以将检索到的(N个)高精度信号合并成合并信号。在运行时阶段中获得的低质量信号可以用合并信号替换,所述合并信号基于高精度数据并且精度通常比低质量运行时信号好。可以例如通过平均或加权平均来执行合并,其中权重被确定为所输入的运行时低精度信号与从数据库中选择的低精度信号之间的差异或相似度的函数(例如,权重与平方距离成反比)。
在使用字典学习的实施例中,训练阶段可以针对每个数据样本连接、链接或关联相同的场景或运动的低精度信号和高精度信号。然后,训练程序(诸如K-SVD)可以学习字典,所述字典可以是一组“原子”信号,使得可将每个(或几乎所有)训练信号表示为来自字典的少量“原子”的加权组合。此字典中的每个原子可以具有从数据的低精度部分学习的一部分以及从数据的高精度部分学习的一部分。由于针对低精度数据和高精度数据联合地执行训练阶段,所以可以将每个训练样本(其包括低精度部分和高精度部分二者)表示为原子的加权组合。例如,低精度部分被表示为原子的低精度部分的加权组合,而训练样本的高精度部分被表示为相同原子的高精度部分的加权组合(具有与相同原子的高精度部分相同的相应权重)。在运行时阶段期间,仅接收低精度信号,所以处理器将其表示计算为仅少量原子的加权组合,并且仅使用那些原子的低精度部分(例如,通过原子索引定义)。处理器可以使用任何“追踪”过程(例如,正交匹配追踪(OMP))来计算此表示。一旦所选择的原子的索引及其权重被确定,处理器就可以使用相同的权重来生成较高精度信号以作为与低精度和的低精度部分连接或关联的高精度部分的加权和。
现在参考图1B,图1B是依照本发明的一些实施例的在运行时阶段中操作的传感器系统101的示意图示。系统101可以是采用包括监视模块121、计算机处理器131、分析模块141和变换150(通过图1A的训练阶段输出)的HMD的增强现实(AR)、虚拟现实(VR)或混合现实(MR)系统。监视模块121可以包括一个或更多个传感器111B,或者在操作上连接到一个或更多个传感器111B。传感器111B的精度可以近似地或确切地等于、小于或大于在训练阶段系统中使用的低精度传感器(例如,图1A的110B中的传感器)的精度。系统101不使用精度显著地高于低精度传感器的精度(例如,不近似地等于在训练阶段系统中使用的相对高精度传感器(诸如图1A的110A中的传感器)的精度)的传感器。系统101的传感器111B被配置为记录传感器数据,监视模块121(或传感器本身)被配置为处理以生成运行时场景的运动信号来生成相对低精度运行时运动信号。
然后,在运行时阶段中,计算机处理器131可以被配置为使用变换150(在训练阶段中生成)来将相对低精度运行时运动信号变换为相对高精度运行时运动信号(仅使用相对低精度传感器111B而不使用相对高精度传感器)。因此,训练阶段用来生成改善相对低精度运行时传感器111B的精度的变换150,从而为虚拟现实、增强现实和混合现实应用提供改善的对象定位。处理器130可以根据变换运动信号来调整由HMD系统投影到用户的视觉场中的虚拟对象或全息图的渲染,从而仅使用相对低精度传感器111B来产生相对改进或高准确度的运动信息和对应的图像。
参考图2,图2是依照本发明的一些实施例的具有与被跟踪目标对象210分开定位的第一传感系统和与被跟踪目标对象210安装在一起的第二传感系统的双精度传感器系统200的示意图示。
传感系统220A和220B都可以跟踪目标对象或用户210的相同的运动。可以在训练场景期间通过机器人、装备或其他机械设备来移动目标对象210。在一个实施例中,系统200包括相对高精度传感器监视系统200A(诸如相机或图像跟踪器)和相对低精度传感器监视系统200B(诸如低精度IMU)。在图2中,一个监视系统200A或200B被安装在目标对象210(或其固定件)上(例如,以物理方式附连到目标对象210(或其固定件)),并且/或者与目标对象210(或其固定件)一起移动,从而根据它自己的运动(例如,在平移和/或旋转下,基于传感器和目标的相对位置)来检测目标对象的运动。监视系统200B或200A中的另一个监视系统分别被与目标对象210(或其固定件)分开地并在外部定位(例如,以物理方式分离),并且独立于目标对象210(或其固定件)而移动。通常,单独的监视系统是与目标对象210一起定位在其视场中(例如,不动)的成像器或运动跟踪器。
虽然在图2中所示的示例中,相对较高精度监视系统200A被示出为被与目标对象210分开定位并且相对较低精度监视系统200B被与目标对象210共同安装在一起,但是在其他实施例中,相对较高精度监视系统200A被与目标对象210共同安装在一起并且相对较低精度监视系统200B被与目标对象210分开定位。
参考图3,图3是依照本发明的一些实施例的具有与被跟踪目标对象310安装在一起或位于一处的第一对象定位系统和第二对象定位系统二者的双精度传感器系统300的示意图示。两个对象定位系统320A和320B可以被安装在目标对象310(或其固定件)上(例如,以物理方式附连到目标对象310(或其固定件)),并且/或者与目标对象310(或其固定件)一起移动,而且可以根据每个传感器与目标对象310之间的空间分离在平移和/或旋转下根据它自己的运动来跟踪其运动。这些对象定位系统中的一个对象定位系统具有相对较高的精度(例如,320A),而这些对象定位系统中的另一个对象定位系统具有相对较低的精度(例如,320B)。在一个实施例中,系统300包括相对高精度IMU和相对低精度IMU。
参考图4,图4是依照本发明的一些实施例的具有多传感器对象定位系统420A和单传感器对象定位系统420B的双精度传感器系统400的示意图示。对象定位系统420A和420B中的每个传感器可以被与被追踪目标对象410(如所示)安装在一起或位于一处或者可以被与目标对象410分开地并面向目标对象410定位。
多传感器对象定位系统420A可以包括共同地操作的多个传感器422A、424A、426A和428A(以及可能的420B)。多传感器对象定位系统420A、监视设备120和/或计算机处理器130可以被配置为例如通过平均或以其他方式组合个别传感器数据(或从其中导出的运动信息)来聚合来自所述多个传感器422A-428A的数据,同时补偿轴对准,以产生精度显著地高于与这些传感器中的任何个别传感器相关联的精度的聚合传感器或运动数据。可以基于传感器精度、与目标对象410(或其质心)的接近度或其他参数来对聚合函数进行加权。聚合函数可以是平均函数、累积函数、轮询函数或诸如使用将测量结果与其协方差融合以获得统一测量结果的卡尔曼滤波器的滤波函数。聚合函数可以忽略与其他传感器的读数相差大于预定因子的个别读数,例如,以消除传感器误差。单传感器对象定位系统420B可以仅从单个传感器产生读数。相对较高精度对象定位系统和相对较低精度对象定位系统中的各传感器可以单独地具有相同的(或不同的)精度水平,但是相对较高精度对象定位系统420A的多个传感器422A-428A被配置为共同地操作以产生累积精度比仅通过单个传感器420B所产生的运动信号的累积精度高的聚合运动信号。
在一个实施例中,单传感器对象定位系统420B的单个传感器可以具有与多传感器对象定位系统420A中的一个或更多个传感器的精度水平相同或类似的精度水平。附加地或可替代地,单传感器对象定位系统420B的单个传感器可以是多传感器对象定位系统420A中的多个传感器中的一个。
通常,相对较低精度对象定位系统420B可以包括一数量(M个)的一个或更多个传感器并且相对较高精度对象定位系统可以包括不同数量(N个)的一个或更多个传感器。在所有(M个)和(N个)传感器的精度相同的情况下,相对于彼此,相对较低精度对象定位系统420B可以包括相对较低数量(M个)的传感器并且相对较高精度对象定位系统420A可以包括相对较大数量(N个)的传感器,使得N>M并且N、M为整数。在(M个)和(N个)传感器中的一些或全部的精度不同的情况下,从(N个)传感器聚合的运动数据的累积精度大于从(M个)传感器聚合的运动数据的累积精度。(M个)和(N个)传感器的集合可以是交叠的、包括性的或排他性的集合。
通常,除了图1A至图4的各种传感器布置之外,根据本发明的实施例的系统可以具有包括在目标对象内部(与目标对象共同安装在一起)、在目标对象外部(可与目标对象物理上分开)或者即在目标对象内部又在目标对象外部的相对低精度传感器的任何传感器布置。类似地,根据本发明的实施例的系统传感器布置可以包括在目标对象内部(与目标对象共同安装在一起)、在目标对象外部(可与目标对象物理上分开)或者即在目标对象内部又在目标对象外部的相对高精度传感器。例如,根据本发明的实施例的系统可以包括安装在外部(例如,在墙壁上)的第一组传感器以及安装在目标对象上的一组附加的无源传感器或另外的辅助组件(例如,IR反射器、QR码)。其他示例系统可以仅具有外部传感器,例如,没有与正在被跟踪的目标对象安装在一起的任何传感器。
在一些实施例中,学习或训练过程使用随着时间推移而演变并且具有一些时间依赖性的信号。所以,例如,如果记录了相对长的会话(例如,超过阈值持续时间,诸如10秒、100秒、1000秒、…),则可以将该会话分解成相对较短的部分(例如,1秒间隔)。相对较短的部分可以交叠(例如,可以将100秒的会话划分成100个以上部分,诸如在这些部分具有1秒的持续时间并每隔0.1秒开始的情况下为1000个部分)。另外,学习或训练过程可以具有时间依赖性。例如,可以将当前处理的部分(例如,数据的第n个1秒)的运动检测训练为取决于一个或更多个在先的部分(例如,数据的第1个、…、第(n-1)个1秒部分中的任一个)。可以例如在神经网络的上下文中使用长短期记忆或者使用不同的学习算法来训练时间依赖性。
在一些实施例中,高质量系统和低质量系统可以产生不同类型或格式的输出信号。例如,高质量系统可以产生完整运动数据集(例如,一系列6DOF),而低质量系统可以仅产生部分数据集(例如,少于6DOF,其中IMU仅产生旋转速度和加速度计数据并且相机仅产生相对旋转和无标度平移,即移动的方向而不是其绝对大小)。在此类情况下,本发明的实施例可以训练模型以将低质量数据(例如,少于6DOF)变换成高质量数据(例如,6DOF数据集)的格式或数据类型。
在各种实施例中,相对低精度训练运动信号和相对高精度训练运动信号中的每一个是通过一个或更多个传感器所测量的“真实”数据或者在计算机上模拟的“合成”数据。在一些实施例中,高质量数据和低质量数据二者都可以是通过传感器所测量的真实数据。在其他实施例中,低质量数据可以是例如使用噪声模型或降级方法来从真实高质量数据模拟的合成数据。在其他实施例中,高质量数据和低质量数据二者都可以是合成数据,其中例如使用噪声模型或降级方法来最初模拟并且然后处理高质量数据,以模拟低质量数据。在一些实施例中,合成的高质量数据和/或低质量数据可以是在训练中使用的数据的全部或部分(例如,训练数据集可以包括真实数据和合成数据的混合物)。
在一些实施例中,传感系统的质量可能不是它自己的特性的产物,而可能取决于外部工作条件。例如,光学跟踪系统可以在具有最优水平的光(例如,光足够以致噪声水平低并且相机可使用短积分时间,但是未多到光使传感器饱和的程度)的环境中具有较好的精度。本发明的实施例可以通过使用与改善的或相对高精度的数据相关联的最优外部工作条件以及与降级的或相对低精度的数据相关联的次优外部工作条件记录训练输入流来训练模型。可以在运行时期间应用模型来改善在次优外部工作条件期间记录的数据的准确度,例如,以近似在最优外部工作条件期间记录的数据的准确度。
监视模块120和121、计算机处理器130和131以及分析模块140和141可以各自包括用于执行操作的一个或更多个控制器或处理器以及用于存储可由处理器执行的数据和/或指令(例如,软件)的一个或更多个存储器单元。处理器可以包括例如中央处理单元(CPU)、数字信号处理器(DSP)、微处理器、控制器、芯片、微芯片、集成电路(IC)或者任何其他适合的多用途或专用处理器或控制器。监视模块120和121、计算机处理器130和131以及分析模块140和141可以各自检索和/或存储数据并且/或者根据存储在一个或更多个内部或外部存储器单元中的计算机代码来执行软件。存储器单元可以包括例如随机存取存储器(RAM)、动态RAM(DRAM)、闪速存储器、易失性存储器、非易失性存储器、高速缓存存储器、缓冲器、短期记忆单元、长期记忆单元或者其他适合的记忆单元或存储单元。
参考图5,图5是依照本发明的一些实施例的方法500的流程图。方法500的训练阶段操作可以由图1A的系统100的计算机处理器130执行,并且方法500的运行时阶段操作可以由图1B的系统101的计算机处理器131执行。可以应由用户发出或者由另一应用自动地发出的请求或命令而执行方法500。
在训练阶段操作510中,相对低精度传感器系统(例如,图1A的110B)和相对高精度传感器系统(例如,图1A的110A)可以分别记录基本上相同的训练场景的相对低精度训练运动信号和相对高精度训练运动信号(例如,跟踪相同的目标对象,诸如图2的210和图3的310)。
在一些实施例中,相对低精度传感器系统包括一个或更多个(M个)传感器并且相对高精度传感器系统包括多个(N个)传感器,其中数量(N)大于数量(M),其中所述多个(N个)传感器被配置为共同地操作以产生累积精度比通过一个或更多个(M个)传感器所产生的聚合运动信号的精度高的聚合运动信号。
在一个实施例中,相对低精度传感器系统和相对高精度传感器系统被安装在与所记录的场景中被跟踪的目标对象相同的对象上,并且与所记录的场景中被跟踪的目标对象一起移动。在另一实施例中,相对低精度传感器系统和相对高精度传感器系统被相对于所记录的场景中被跟踪的目标对象在外部安装,并且独立于所记录的场景中被跟踪的目标对象而移动。在另一实施例中,相对低精度传感器系统和相对高精度传感器系统中的一个被安装在与所记录的场景中被跟踪的目标对象相同的对象上,并且与所记录的场景中被跟踪的目标对象一起移动,而相对低精度传感器系统和相对高精度传感器系统中的另一个被相对于所记录的场景中被跟踪的目标对象在外部安装,并且独立于所记录的场景中被跟踪的目标对象而移动。在另一实施例中,相对低精度传感器系统或相对高精度传感器系统既包括既被安装在与所记录的场景中被跟踪的目标对象相同的对象上并且与所记录的场景中被跟踪的目标对象一起移动的传感器,又包括被相对于所记录的场景中被跟踪的目标对象在外部安装并且独立于所记录的场景中被跟踪的目标对象而移动的传感器。
在一个实施例中,相对低精度传感器系统和相对高精度传感器系统同时地记录基本上相同的目标对象的运动。在一个实施例中,相对低精度传感器系统和相对高精度传感器系统在不同的时间或地点记录基本上相同的目标对象的运动的重复迭代。
在训练阶段操作520中,一个或更多个处理器(例如,图1A的计算机处理器130)被配置为生成将来自相对低精度训练运动信号的信息映射到来自相对高精度训练运动信号的信息的变换(例如,图1A的变换150)。一个或更多个处理器可以训练输入成对的来自相对低精度训练运动信号和来自相对高精度训练运动信号的基本上相同的训练场景的对应信息的神经网络,并且通过将来自相对低精度训练运动信号的信息变换成被优化为与来自相对高精度训练运动信号的对应信息匹配的变换运动信号来生成变换。
在一些实施例中,相对低精度传感器系统和相对高精度传感器系统测量在空间中或使用不同坐标系的不同点的运动信号,并且一个或更多个处理器可以在操作520中训练用于将在空间或不同坐标系中的不同点的运动信号映射到在空间或公共坐标系中的公共点的运动信号的第二变换。
在一些实施例中,相对低精度训练运动信号和相对高精度训练运动信号具有不同类型的运动信息,其中,一个或更多个处理器可以在操作520中通过生成将相对低精度训练运动信号的类型的信息映射到相对高精度训练运动信号的类型的信息的变换来执行机器学习。
在运行时阶段操作530中,一个或更多个处理器(例如,图1B的计算机处理器131)被配置为通过精度显著地低于相对高精度传感器系统的精度(例如,近似地等于或约为相对低精度传感器系统的精度)的运行时传感器系统(例如,图1B的111B)来记录运行时场景的运动信号以生成运行时运动信号。
在运行时阶段操作540中,一个或更多个处理器(例如,图1B的计算机处理器131)被配置为使用变换来对运行时运动信号进行变换以生成精度显著地高于运行时传感器系统的精度(例如,近似地等于或约为相对高精度训练运动信号的精度)的变换运行时运动信号。
在运行时阶段中,一个或更多个处理器(例如,图1B的计算机处理器131)被配置为根据变换运行时运动信号来在增强或虚拟现实眼镜中渲染虚拟对象。
可以执行其他操作或操作顺序。
根据本发明的一些实施例,操作一个或更多个处理器(例如,图1A的计算机处理器130)或方法(例如,图5的方法500)的系统(例如,图1A的系统100)可以(同时地或在单独的时间)从第一对象定位系统(例如,图1A的110A)和从第二对象定位系统(例如,图1A的110B)收集测量结果,其中,第一对象定位系统比第二对象定位系统更精确,而第一对象定位系统和第二对象定位系统获得公共对象(例如,图2的目标对象210)的对象定位数据;监视表征第一对象定位系统和第二对象定位系统的操作的工作数据;并且基于第一对象定位系统和第二对象定位系统的操作来生成模型、变换或倒数函数,即当被应用于第二对象定位系统时,改善第二对象定位系统的操作的精度,例如,以实现等于或近似地等于第一对象定位系统的精度(在第一对象定位系统的精度的10%内)。
根据本发明的一些实施例,可以将变换应用于与第二对象定位系统类似的对象定位系统。
根据本发明的一些实施例,公共对象包括装备,并且其中,对象定位系统被配置为至少获得装备的相对位置和/或定向。
根据本发明的一些实施例,第一对象定位系统至少部分地在公共对象外部,并且其中,第二对象定位系统被安装或以物理方式附连到公共对象(例如,如图2中所示)。
根据本发明的一些实施例,第一对象定位系统和第二对象定位系统都被安装或以物理方式附连到公共对象(例如,如图3中所示)。
根据本发明的一些实施例,对象定位系统或传感器包括诸如相机的图像捕获系统、惯性测量单元(IMU)、深度传感器、声传感器或其组合,以及包括一个或更多个处理器和一个或更多个存储器单元以输入原始传感器数据并输出运动信息(例如,6DOF信号)的计算设备。
根据本发明的一些实施例,第一对象定位系统包括多个分立传感器(N个)并且平均或聚合其传感器测量结果以实现与第二对象定位系统相比相对更高的精度,所述第二对象定位系统包括单个传感器或者比第一对象定位系统少的数量(M)的传感器(M<N)(例如,如图4中所示)。
参考“双精度”传感器系统的本发明的实施例可以指代生成具有至少两种精度的数据的系统,包括生成具有不止两种精度的数据的系统(例如,N精度传感器系统,其中N是任何整数3、4、...)。在一些实施例中,个别传感器可以具有不同的精度,然而附加地或可替代地,个别传感器可以具有相同的精度,但是针对共同地操作以具有不同的累积精度的一组或更多组传感器聚合其运动信号数据。
本发明的实施例不限于AR、VR或MR,并且运动检测系统、设备和方法可以被应用于任何运动检测技术,诸如自主驾驶、机器人运动、无人机导航、盲人辅助、娱乐行业用运动捕获(例如,为游戏/动画/等创建逼真模型)、身体康复等。
在一些实施例中,“近似地”可以意指在被比较量的10%内,并且“显著地”可以意指被比较量的至少15%或25%。可以使用其他量。
为了实现根据本发明的一些实施例的方法,计算机处理器可以从只读存储器或随机存取存储器或这两者接收指令和数据。前述方法步骤中的至少一个由与计算机相关联的至少一个处理器(例如,图1A的计算机处理器130)执行。计算机还可以包括用于存储数据文件的一个或更多个存储设备,或者在操作上联接以与用于存储数据文件的一个或更多个存储设备进行通信。适合于有形地具体实现计算机程序指令和数据的存储模块包括所有形式的非易失性存储器,作为示例包括半导体存储器设备(诸如EPROM、EEPROM)和基于闪速存储器的固态磁盘(SSD)以及磁光存储设备。
如本领域的技术人员将领会的,可以将本发明的各方面具体实现为系统、方法或计算机程序产品。因此,本发明的各方面可以采取完全硬件实施例、完全软件实施例(包括固件、驻留软件、微码等)或者组合在本文中可以全部通常被称为“电路”、“模块”或“系统”的软件和硬件方面的实施例的形式。
本发明的实施例可以包括诸如非暂时性计算机或处理器可读介质的物品,或者计算机或处理器非暂时性存储介质,诸如例如存储器、磁盘驱动器或USB闪速存储器,从而对指令(例如,计算机可执行指令)进行编码、包括或存储这些指令,所述指令当由处理器或控制器执行时,执行本文公开的方法。计算机可读存储介质可以为例如但不限于电子、磁、光学、电磁、红外或半导体系统、装置或设备,或者上述各项的任何适合的组合。计算机可读存储介质的更具体的示例(非详尽列表)将包括下列的:具有一条或多条电线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或闪速存储器)、光纤、便携式紧致只读存储器(CD-ROM)、光学存储设备、磁存储设备,或上述各项的任何适合的组合。在本文献的上下文中,计算机可读存储介质可以为任何有形介质,其可以包括或存储供指令执行系统、装置或设备使用或者连同指令执行系统、装置或设备一起使用的程序。
在计算机可读介质上具体实现的程序代码可以使用任何适当的介质来发送,所述介质包括但不限于无线、有线线路、光纤线缆、RF等,或者上述各项的任何适合的组合。用于执行针对本发明的各方面的操作的计算机程序代码可以用一种或更多种编程语言的任何组合加以编写,所述编程语言包括诸如Java、Smalltalk、C++等的面向对象编程语言以及常规的过程编程语言,诸如“C”编程语言或类似的编程语言。程序代码可以完全地在计算机上、部分地在计算机上、作为独立软件包、部分地在计算机上且部分地在远程计算机上或者完全地在远程计算机或服务器上执行。在后者情况下,远程计算机可以通过任何类型的网络(包括局域网(LAN)或广域网(WAN))连接到计算机,或者可以实现与外部计算机的连接(例如,使用因特网服务提供商通过因特网)。
在上面参考根据本发明的实施例的方法、装置(系统)和计算机程序产品的流程图图示和/或部分图描述了本发明的各方面。应理解的是,可通过计算机程序指令来实现流程图图示和/或部分图的每个部分以及流程图图示和/或部分图中的各部分的组合。可以将这些计算机程序指令提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器以产生机器,使得经由计算机或其他可编程数据处理装置的处理器执行的指令创建用于实现在一个或多个流程图和/或部分图部分中指定的功能/动作的手段。
还可以将计算机程序指令加载到计算机、其他可编程数据处理装置或其他设备上以使得在计算机、其他可编程装置或其他设备上执行一系列操作步骤以产生计算机实现的过程,使得在该计算机或其他可编程装置上执行的指令提供用于实现在一个或多个流程图和/或部分图部分中指定的功能/动作的过程。
前述流程图和图图示了根据本发明的各种实施例的系统、方法和计算机程序产品的可能的实施方案的架构、功能性和操作。在这方面,流程图或部分图中的每个部分可以表示代码的模块、段或部分,其包括用于实现所指定的逻辑功能的一个或更多个可执行指令。还应该注意的是,在一些替代实施方案中,在所述部分中指出的功能可以不按图中指出的顺序发生。例如,取决于所涉及的功能性,实际上可以基本上同时执行相继示出的两个部分,或者有时可以以相反的顺序执行这些部分。还应注意的是,可通过执行所指定的功能或动作的基于专用硬件的系统或专用硬件和计算机指令的组合来实现部分图和/或流程图图示的每个部分以及部分图和/或流程图图示的各部分的组合。
尽管可以在单个实施例的上下文中描述本发明的各种特征,但是也可以分别地或按照任何适合的组合提供这些特征。相反地,尽管为了清楚而可以在本文中在单独的实施例的上下文中描述本发明,然而也可以在单个实施例中实现本发明。
在说明书中对“一些实施例”、“实施例”、“一个实施例”或“其他实施例”的引用意味着连同这些实施例一起描述的特定特征、结构或特性被包括在本发明的至少一些实施例而不一定是所有实施例中。
虽然已经相对于有限数量的实施例描述了本发明,但是这些实施例不应该被解释为对本发明的范围构成限制,而是相反被解释为一些优选实施例的例证。其他可能的变化、修改和应用也在本发明的范围内。因此,本发明的范围不应该受到迄今为止已描述的内容限制,而应受到所附的权利要求及其合法等同物限制。

Claims (28)

1.一种用于改善传感器精度的方法,所述方法包括:
在由双精度传感器系统执行的训练阶段中:
通过相对低精度传感器系统和相对高精度传感器系统来分别记录基本上相同的训练场景的运动信号以生成相对低精度训练运动信号和相对高精度训练运动信号;
执行机器学习以生成将来自所述相对低精度训练运动信号的信息映射到来自所述相对高精度训练运动信号的信息的变换;在由运行时传感器系统执行的运行时阶段中:
通过精度显著地低于所述相对高精度传感器系统的精度的运行时传感器系统来记录运行时场景的运动信号以生成运行时运动信号;以及
使用所述变换来对所述运行时运动信号进行变换以生成精度显著地高于所述运行时传感器系统的精度的变换运行时运动信号。
2.根据权利要求1所述的方法,所述方法包括:根据所述变换运行时运动信号来在增强或虚拟现实眼镜中渲染虚拟对象。
3.根据权利要求1所述的方法,所述方法包括:训练输入成对的来自所述相对低精度训练运动信号和来自所述相对高精度训练运动信号的基本上相同的训练场景的对应信息的神经网络,以及通过将来自所述相对低精度训练运动信号的信息变换成被优化为与来自所述相对高精度训练运动信号的对应信息匹配的变换运动信号来生成所述变换。
4.根据权利要求1所述的方法,其中,所述相对低精度传感器系统和所述相对高精度传感器系统测量在空间中或使用不同坐标系的不同点的运动信号,并且包括训练用于将在空间或不同坐标系中的所述不同点的所述运动信号映射到在空间或公共坐标系中的公共点的运动信号的第二变换。
5.根据权利要求1所述的方法,其中,所述相对低精度传感器系统和所述相对高精度传感器系统被安装在与所记录的场景中被跟踪的目标对象相同的对象上,并且与所记录的场景中被跟踪的所述目标对象一起移动。
6.根据权利要求1所述的方法,其中,所述相对低精度传感器系统和所述相对高精度传感器系统被相对于所记录的场景中被跟踪的目标对象在外部安装,并且独立于所记录的场景中被跟踪的所述目标对象而移动。
7.根据权利要求1所述的方法,其中,所述相对低精度传感器系统和所述相对高精度传感器系统中的一个被安装在与所记录的场景中被跟踪的目标对象相同的对象上,并且与所记录的场景中被跟踪的所述目标对象一起移动,而所述相对低精度传感器系统和所述相对高精度传感器系统中的另一个被相对于所记录的场景中被跟踪的所述目标对象在外部安装,并且独立于所记录的场景中被跟踪的所述目标对象而移动。
8.根据权利要求1所述的方法,其中,所述相对低精度传感器系统或所述相对高精度传感器系统既包括被安装在与所记录的场景中被跟踪的目标对象相同的对象上并且与所记录的场景中被跟踪的所述目标对象一起移动的传感器,又包括被相对于所记录的场景中被跟踪的所述目标对象在外部安装并且独立于所记录的场景中被跟踪的所述目标对象而移动的传感器。
9.根据权利要求1所述的方法,其中,所述相对低精度传感器系统包括一个或更多个(M个)传感器,并且所述相对高精度传感器系统包括多个(N个)传感器,其中,数量N大于数量M,其中,所述多个(N个)传感器被配置为共同地操作以产生累积精度比通过所述一个或更多个(M个)传感器所产生的聚合运动信号的精度高的聚合运动信号。
10.根据权利要求1所述的方法,其中,所述相对低精度传感器系统和所述相对高精度传感器系统同时地记录基本上相同的目标对象的运动。
11.根据权利要求1所述的方法,其中,所述相对低精度传感器系统和所述相对高精度传感器系统在不同的时间或地点记录基本上相同的目标对象的运动的重复迭代。
12.根据权利要求1所述的方法,其中,所述相对低精度训练运动信号和所述相对高精度训练运动信号具有不同类型的运动信息,其中,所述机器学习生成将所述相对低精度训练运动信号的类型的信息映射到所述相对高精度训练运动信号的类型的信息的变换。
13.根据权利要求1所述的方法,其中,所述相对低精度训练运动信号和所述相对高精度训练运动信号中的每一个是通过一个或更多个传感器所测量的真实数据或者在计算机上模拟的合成数据。
14.一种双精度传感器系统,所述双精度传感器系统包括:
相对低精度传感器系统;
相对高精度传感器系统;以及
一个或更多个处理器,所述一个或更多个处理器被配置为训练精度改善变换:
其中,在训练阶段中:
所述相对低精度传感器系统和所述相对高精度传感器系统被配置为分别记录基本上相同的目标对象的运动信号以生成相对低精度训练运动信号和相对高精度训练运动信号;并且
所述一个或更多个处理器被配置为执行机器学习以生成将来自所述相对低精度训练运动信号的信息映射到来自所述相对高精度训练运动信号的信息的变换;
其中,当所述变换被应用于通过精度显著地低于所述相对高精度传感器系统的精度的运行时传感器系统所记录的运行时运动信号时,产生精度显著地高于所述运行时传感器系统的精度的变换运行时运动信号。
15.根据权利要求14所述的系统,其中,所述一个或更多个处理器被配置为通过以下操作来执行机器学习:训练输入成对的来自所述相对低精度训练运动信号和来自所述相对高精度训练运动信号的基本上相同的训练场景的对应信息的神经网络,以及通过将来自所述相对低精度训练运动信号的信息变换成被优化为与来自所述相对高精度训练运动信号的对应信息匹配的变换运动信号来生成所述变换。
16.根据权利要求14所述的系统,其中,所述相对低精度传感器系统和所述相对高精度传感器系统测量在空间中或使用不同坐标系的不同点的运动信号,并且其中,所述一个或更多个处理器被配置为训练用于将在空间或不同坐标系中的所述不同点的所述运动信号映射到在空间或公共坐标系中的公共点的运动信号的第二变换。
17.根据权利要求14所述的系统,其中,所述相对低精度训练运动信号和所述相对高精度训练运动信号具有不同类型的运动信息,其中,所述一个或更多个处理器被配置为通过生成将所述相对低精度训练运动信号的类型的信息映射到所述相对高精度训练运动信号的类型的信息的变换来执行机器学习。
18.一种传感器系统,所述传感器系统包括:
一个或更多个存储器单元,所述一个或更多个存储器单元被配置为存储将来自通过相对低精度传感器系统所记录的相对低精度训练运动信号的信息映射到来自通过相对高精度传感器系统所记录的相对高精度训练运动信号的信息的变换;
运行时传感器系统,所述运行时传感器系统被配置为记录运行时运动信号,其中,所述运行时传感器系统的精度显著地低于所述相对高精度传感器的精度;以及
一个或更多个处理器,所述一个或更多个处理器被配置为使用所存储的变换来对所述运行时运动信号进行变换以生成精度高于所述运行时传感器的精度的变换运行时运动信号。
19.根据权利要求14或18所述的系统,其中,每个传感器系统包括选自由以下各项构成的组中的一个或更多个传感器:图像捕获系统、惯性测量单元(IMU)、深度传感器和声传感器。
20.根据权利要求14或18所述的系统,所述系统包括增强或虚拟现实眼镜,所述增强或虚拟现实眼镜被配置为根据所述变换运行时运动信号来渲染虚拟对象。
21.根据权利要求14或18所述的系统,其中,所述相对低精度传感器系统和所述相对高精度传感器系统被安装在与所记录的场景中被跟踪的目标对象相同的对象上,并且与所记录的场景中被跟踪的所述目标对象一起移动。
22.根据权利要求14或18所述的系统,其中,所述相对低精度传感器系统和所述相对高精度传感器系统被相对于所记录的场景中被跟踪的目标对象在外部安装,并且独立于所记录的场景中被跟踪的所述目标对象而移动。
23.根据权利要求14或18所述的系统,其中,所述相对低精度传感器系统和所述相对高精度传感器系统中的一个被安装在与所记录的场景中被跟踪的目标对象相同的对象上,并且与所记录的场景中被跟踪的所述目标对象一起移动,而所述相对低精度传感器系统和所述相对高精度传感器系统中的另一个被相对于所记录的场景中被跟踪的所述目标对象在外部安装,并且独立于所记录的场景中被跟踪的所述目标对象而移动。
24.根据权利要求14或18所述的系统,其中,所述相对低精度传感器系统或所述相对高精度传感器系统包括既被安装在与所记录的场景中被跟踪的目标对象相同的对象上并且与所记录的场景中被跟踪的目标对象一起移动的传感器,又包括被相对于所记录的场景中被跟踪的所述目标对象在外部安装并且独立于所记录的场景中被跟踪的所述目标对象而移动的传感器。
25.根据权利要求14或18所述的系统,其中,所述相对低精度传感器系统包括一个或更多个(M个)传感器,并且所述相对高精度传感器系统包括多个(N个)传感器,其中,数量N大于数量M,其中,所述多个(N个)传感器被配置为共同地操作以产生累积精度比通过所述一个或更多个(M个)传感器所产生的聚合运动信号的精度高的聚合运动信号。
26.根据权利要求14或18所述的系统,其中,所述相对低精度传感器系统和所述相对高精度传感器系统同时地记录基本上相同的目标对象的运动。
27.根据权利要求14或18所述的系统,其中,所述相对低精度传感器系统和所述相对高精度传感器系统在不同的时间或地点记录基本上相同的目标对象的运动的重复迭代。
28.根据权利要求14或18所述的系统,其中,所述相对低精度训练运动信号和所述相对高精度训练运动信号中的每一个是通过一个或更多个传感器所测量的真实数据或者在计算机上模拟的合成数据。
CN201880068426.7A 2017-08-21 2018-08-20 在虚拟环境中使用高精度传感器数据来训练低精度传感器数据以进行对象定位的双精度传感器系统 Active CN111295714B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201762548249P 2017-08-21 2017-08-21
US62/548,249 2017-08-21
PCT/IL2018/050915 WO2019038757A2 (en) 2017-08-21 2018-08-20 DOUBLE ACCURACY SENSOR SYSTEM USING HIGH PRECISION SENSOR DATA FOR LEARNING ON LOW PRECISION SENSOR DATA FOR LOCATION OF OBJECTS IN A VIRTUAL ENVIRONMENT

Publications (2)

Publication Number Publication Date
CN111295714A true CN111295714A (zh) 2020-06-16
CN111295714B CN111295714B (zh) 2023-02-28

Family

ID=65438453

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201880068426.7A Active CN111295714B (zh) 2017-08-21 2018-08-20 在虚拟环境中使用高精度传感器数据来训练低精度传感器数据以进行对象定位的双精度传感器系统

Country Status (3)

Country Link
US (1) US11262837B2 (zh)
CN (1) CN111295714B (zh)
WO (1) WO2019038757A2 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112036073A (zh) * 2020-07-16 2020-12-04 成都飞机工业(集团)有限责任公司 一种3d打印零件测量结果矫正方法
CN116311595A (zh) * 2023-05-16 2023-06-23 江西五十铃汽车有限公司 车辆mos管监管方法、设备、介质和程序产品

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111272277A (zh) * 2020-01-21 2020-06-12 中国工程物理研究院激光聚变研究中心 一种基于神经网络的激光脉冲波形测量畸变校正方法及系统
US11435185B2 (en) 2020-02-21 2022-09-06 Microsoft Technology Licensing, Llc Systems and methods for deep learning-based pedestrian dead reckoning for exteroceptive sensor-enabled devices
EP4033727B1 (en) 2021-01-26 2023-01-04 Deutsche Telekom AG Method for providing adapted positioning information towards at least one consuming application regarding a plurality of objects comprising at least one specific object, system or telecommunications network for providing adapted positioning information, positioning information consuming application, program and computer-readable medium
US20220410487A1 (en) * 2021-06-28 2022-12-29 International Business Machines Corporation 3d printing with virtual reality integration
CN117998602A (zh) * 2022-11-04 2024-05-07 华为技术有限公司 信道状态信息确定方法、装置及可读存储介质
US20240169030A1 (en) * 2022-11-18 2024-05-23 X Development Llc High throughput characterization of aggregate particles

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1211198A (zh) * 1996-02-13 1999-03-17 麻省理工学院 虚拟环境中的人为轨迹学习系统
US20160032514A1 (en) * 2014-08-01 2016-02-04 Lg Electronics Inc. Laundry treatment apparatus
US20160260261A1 (en) * 2015-03-06 2016-09-08 Illinois Tool Works Inc. Sensor assisted head mounted displays for welding
US20170165832A1 (en) * 2013-06-11 2017-06-15 Somatis Sensor Solutions LLC Systems and methods for sensing objects

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8490462B2 (en) * 2011-10-26 2013-07-23 The United States Of America As Represented By The Secretary Of The Navy Auto-ranging for time domain inertial sensor
US9410979B2 (en) * 2014-09-23 2016-08-09 Fitbit, Inc. Hybrid angular motion sensors
US9747488B2 (en) * 2014-09-30 2017-08-29 Apple Inc. Active sensing element for acoustic imaging systems
US9690361B2 (en) * 2014-12-24 2017-06-27 Intel Corporation Low-power context-aware control for analog frontend
US10069439B2 (en) * 2015-12-22 2018-09-04 Renesas Electronics Corporation Power conversion system, power module, and semiconductor device with diode coupling
US10757328B2 (en) * 2016-12-23 2020-08-25 Microsoft Technology Licensing, Llc Eye tracking using video information and electrooculography information
US10650552B2 (en) * 2016-12-29 2020-05-12 Magic Leap, Inc. Systems and methods for augmented reality

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1211198A (zh) * 1996-02-13 1999-03-17 麻省理工学院 虚拟环境中的人为轨迹学习系统
US20170165832A1 (en) * 2013-06-11 2017-06-15 Somatis Sensor Solutions LLC Systems and methods for sensing objects
US20160032514A1 (en) * 2014-08-01 2016-02-04 Lg Electronics Inc. Laundry treatment apparatus
US20160260261A1 (en) * 2015-03-06 2016-09-08 Illinois Tool Works Inc. Sensor assisted head mounted displays for welding

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112036073A (zh) * 2020-07-16 2020-12-04 成都飞机工业(集团)有限责任公司 一种3d打印零件测量结果矫正方法
CN116311595A (zh) * 2023-05-16 2023-06-23 江西五十铃汽车有限公司 车辆mos管监管方法、设备、介质和程序产品

Also Published As

Publication number Publication date
CN111295714B (zh) 2023-02-28
WO2019038757A3 (en) 2020-03-26
US11262837B2 (en) 2022-03-01
US20210004075A1 (en) 2021-01-07
WO2019038757A2 (en) 2019-02-28

Similar Documents

Publication Publication Date Title
CN111295714B (zh) 在虚拟环境中使用高精度传感器数据来训练低精度传感器数据以进行对象定位的双精度传感器系统
Jinyu et al. Survey and evaluation of monocular visual-inertial SLAM algorithms for augmented reality
US10937191B2 (en) Predictive simultaneous localization and mapping system using prior user session positional information
JP2020526818A (ja) 畳み込み画像変換を使用して同時位置特定およびマッピングを実施する方法およびシステム
US20160260250A1 (en) Method and system for 3d capture based on structure from motion with pose detection tool
CN110880189A (zh) 联合标定方法及其联合标定装置和电子设备
US11062475B2 (en) Location estimating apparatus and method, learning apparatus and method, and computer program products
WO2016077703A1 (en) Gyroscope assisted scalable visual simultaneous localization and mapping
KR20190098003A (ko) 장치의 자세 추정 방법 및 그 장치
US11494987B2 (en) Providing augmented reality in a web browser
WO2015134795A2 (en) Method and system for 3d capture based on structure from motion with pose detection tool
JP2015513662A (ja) 深度カメラを使用した頭部姿勢トラッキング
TWI715903B (zh) 動作追蹤系統及方法
US20200226357A1 (en) Device, system and method for improving motion estimation using a human motion model
CN105324792B (zh) 用于估计移动元件相对于参考方向的角偏差的方法
CN108827341A (zh) 用于确定图像采集装置的惯性测量单元中的偏差的方法
Tomažič et al. Fusion of visual odometry and inertial navigation system on a smartphone
US11398048B2 (en) Estimating camera pose
WO2021016051A1 (en) Joint environmental reconstruction and camera calibration
WO2023140990A1 (en) Visual inertial odometry with machine learning depth
EP3392748B1 (en) System and method for position tracking in a virtual reality system
CN111522441B (zh) 空间定位方法、装置、电子设备及存储介质
CN111161357B (zh) 信息处理方法及装置、增强现实设备和可读存储介质
KR102225321B1 (ko) 복수 영상 센서로부터 취득한 영상 정보와 위치 정보 간 연계를 통한 도로 공간 정보 구축을 위한 시스템 및 방법
CN116576866B (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
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20230410

Address after: Room 516, floor 5, building 3, No. 969, Wenyi West Road, Wuchang Street, Yuhang District, Hangzhou City, Zhejiang Province

Patentee after: Alibaba Dharma Institute (Hangzhou) Technology Co.,Ltd.

Address before: 3 / F, No.20, galiarehapura, helzria, Israel

Patentee before: Alibaba (Israel) Technology Co.,Ltd.

TR01 Transfer of patent right