用于移动设备的定位系统和方法
文献发布时间:2024-01-17 01:28:27
技术领域
本发明涉及一种用于移动设备的定位系统和定位方法。
背景技术
目前,许多基于视觉的定位技术都依赖于相对运动信息。例如,导航系统中的视觉SLAM系统通过以下方式来工作:跟踪检测到的关键点通过连续的相机帧(图像)来使这些关键点的3D位置三角化,同时使用该信息来近似相机姿态。基本上,这些系统的目标是相对于其自己的位置映射绘制其周围的地图以进行导航。然而,虽然因此可以通过3D环境获得关于相对运动的信息,但是不能基于相对运动信息来确定运动的绝对尺度(例如,多少米、度量距离)。虽然可以通过立体相机或RGB-D相机设置来估计尺度,但通过使用立体相机或RGB-D相机获得的估计同样容易出现误差。例如,在相对帧间自运动估计中,相机姿态近似会出现误差。由于这种自运动估计是迭代的,这些误差将随着时间的推移而累积,这可能导致所得到的轨迹的漂移。尤其是在跨越数百米的大范围环境中,漂移可能是相当大的。如果一个移动设备或代理的任务是在环境中执行循环以返回到先前的起点,由于误差累积,定位系统不能准确地闭合循环。
依赖于激光雷达(LiDAR)或昂贵相机的一些现有的定位技术的成本相对较高,并且难以得到广泛应用。
一些现有的定位技术利用超宽带(UWB)系统。UWB系统使用双向飞行时间(TW-TOF)测距方法,该双向飞行时间(TW-TOF)测距方法可以用于检测对象的绝对位置,并且具有高穿透性、低功耗、良好的抗多径效果、低复杂度等优点。然而,UWB系统无法实现足够稳定和准确的定位,尤其是在标签和锚之间的某些非视距(non-line-of-sight)情况下,或在要求精确定位的应用场景中。事实上,在很多应用场景中,UWB系统的定位还不够稳定和准确。而且,UWB系统的定位与上述其他定位技术相比不那么准确,且受非视距情况的影响。
发明内容
本发明的目的是提供一种用于移动设备的定位系统和定位方法,以便克服现有技术中上述缺陷中的至少一个。
本公开的一个方面提供了一种用于移动设备的定位系统,包括:成像单元,其被配置为捕获环境的图像;第一检测单元,其被配置为检测关于移动设备相对于环境的相对运动信息;第二检测单元,其被配置为检测关于移动设备的第一绝对位置信息;以及数据处理单元,其被配置为基于图像、相对运动信息和第一绝对位置信息来生成与环境中的移动设备相关联的第二绝对位置信息和轨迹信息中的至少一个。
本公开的另一方面提供了一种用于移动设备的定位方法,包括:捕获环境的图像;检测关于移动设备相对于环境的相对运动信息;检测关于移动设备的第一绝对位置信息;以及基于图像、相对运动信息和第一绝对位置信息来生成与环境中的移动设备相关联的第二绝对位置信息和轨迹信息中的至少一个。
本公开的另一方面提供了一种移动设备,包括:定位系统,其被配置为基于传感器数据来生成与移动设备相关联的第二绝对位置信息和轨迹信息中的至少一个;其中,传感器数据包括捕获的环境图像、关于移动设备的相对运动信息和第一绝对位置信息。
本公开的另一方面提供了一种计算机程序产品,包括可执行指令,其中,该指令在由处理器执行时,实现用于移动设备的定位方法。
将结合附图进一步描述本发明的实施例。
附图说明
图1示出了根据本发明的实施例的定位系统的结构框图;以及
图2示出了根据本发明的实施例的定位方法的流程图。
具体实施方式
在下面的详细描述中,阐述了许多具体细节以提供对所要求保护的主题的透彻理解。然而,可以在没有这些具体细节的情况下实践所要求保护的主题。在一些实例中,没有详细描述本领域技术人员已知的方法、装置或系统,以免模糊所要求保护的主题。
图1示意性地示出了根据本发明的实施例的定位系统的结构框图。如图1所示,定位系统100包括:成像单元110,其被配置为捕获环境的图像;第一检测单元120,其被配置为检测关于移动设备相对于环境的相对运动信息;第二检测单元130,其被配置为检测关于移动设备的第一绝对位置信息;以及数据处理单元140,其被配置为基于图像、相对运动信息和第一绝对位置信息来生成与环境中的移动设备相关联的第二绝对位置信息和轨迹信息中的至少一个。
在实施例中,成像单元110、第一检测单元120、第二检测单元130和数据处理单元140可以安装在移动设备上,并且可以在移动设备移动期间操作。由成像单元110捕获的图像数据以及由第一检测单元120和第二检测单元130检测的信息被发送到数据处理单元140。移动设备可以是车辆、移动机器人、叉车等。环境可能是室内环境或者室外环境。关于移动设备的第一绝对位置信息和与环境中的移动设备相关联的第二绝对位置信息可以包括移动设备的绝对坐标;并且与环境中的移动设备相关联的轨迹信息可以包括随时间累积的与移动设备的绝对坐标连接的轨迹线。注意,关于移动设备的第一绝对位置信息由第二检测单元130检测,并且可能不是准确和稳定的,这取决于第二检测单元130和环境;并且第二绝对位置信息是通过处理包括捕获的图像数据、相对运动信息和第一绝对位置信息的数据集而生成的,因此可以更加精确和稳定。
根据实施例,通过使用与环境中的移动设备相关联的所生成的第二绝对位置信息和轨迹信息,可以自主地且精确地定位移动设备。此外,由于可以基于捕获的图像、检测到的相对运动信息和第一绝对位置信息来生成与环境中的移动设备相关联的第二绝对位置信息和轨迹信息,因此可以在降低硬件成本的情况下改进定位的稳定性和准确度。
在一些实施例中,数据处理单元140还被配置为基于图像、相对运动信息和第一绝对位置信息中的至少一个,来生成对象的尺度和/或对象在环境中的运动、移动设备的移动距离和环境的点云图中的至少一个。例如,数据处理单元140可以基于图像、相对运动信息和第一绝对位置信息来生成移动对象的正确运动尺度。这意味着如果移动对象移动例如1m的距离,则数据处理单元140可以确定轨迹的近似正确的度量距离和对象的相对运动量。
在一些实施例中,成像单元110包括深度相机,该深度相机被配置为获得关于环境中的对象的位置和定向的图像流数据。对象可以是移动设备附近的任何移动或静止的人、动物、物品或其他车辆。深度相机可以是RGB-D相机,例如,Intel Realsense D435i。
在一些实施例中,定位系统100还包括视觉同时定位和映射(SLAM)系统,该SLAM系统被配置为基于图像流数据来生成移动设备的姿态数据和关于环境的视觉里程计(visualodometry)信息。SLAM系统可以是安装在数据处理单元140上的软件系统。通常,SLAM是一种用于自主车辆或机器人以建立地图并同时在该地图中定位车辆或机器人的方法。SLAM算法允许车辆或机器人绘制未知环境的地图。
在一些实施例中,数据处理单元140还被配置为通过对至少关于移动设备的姿态数据、视觉里程计信息、相对运动信息和第一绝对位置信息执行数据融合,来生成第二绝对位置信息、轨迹信息、对象的尺度和/或对象在环境中的运动、移动设备的移动距离和环境的点云图中的至少一个。
通常,数据融合是这样的一种数据处理技术:其使用计算机对从不同数据源顺序收集的数据集进行自动过滤、分析,将数据集按时间次序级联并合成,以完成要求的决策和估计任务。此外,数据融合涉及许多主题和新技术,包括检测技术、信号处理、通信技术、模式识别、决策理论、估计理论、优化理论、计算机科学、人工智能、神经网络等。数据融合可以实现协调优化和集成处理,以生成比从单个检测单元或传感器收集的数据更好(如更稳定和更精确)的融合结果信息。多源数据融合可以改进多源信息的可靠性和对象的可检测性、改进检测性能和自适应容错调整能力,以便改进整个系统的数据处理性能。
在示例中,使用SLAM算法对由RGB-D相机在SLAM过程期间记录的3D点进行累积,推断3D位置,同时执行数据融合以改进定位,然后将连续记录的3D点“缝合”成环境的3D地图,从而构建3D点云图。
在一些实施例中,通过使用图优化算法来执行数据融合;在数据融合中,由关于移动设备的姿态数据、视觉里程计信息、相对运动信息和第一绝对位置信息表示的状态被表示为图的顶点;状态之间的关系被转换为成本函数;以及通过使成本函数最小化来获得每种状态的最优估计,以通过使用最优估计来生成第二绝对位置信息、轨迹信息、对象的尺度和/或对象在环境中的运动、移动设备的移动距离和环境的点云图中的至少一个。
在一些实施例中,通过使用基于滤波器的数据融合算法来执行数据融合,其中至少使用Kalman滤波器来针对关于移动设备的姿态数据、视觉里程计信息、相对运动信息和第一绝对位置信息进行数据融合。在示例中,使用分布式Kalman滤波器和集中式Kalman滤波器进行数据融合;分布式Kalman滤波器可以对来自多个数据源的数据进行实时过滤,改进系统的容错能力并减少计算量;而集中式Kalman滤波器可以执行全局数据融合处理。
在示例中,在SLAM中,假设移动设备沿着由随机变量的序列x1:T={x1,……,xT}组成的轨迹移动。当移动设备正在移动时,获取里程计或位置测量的序列u1:T={u1,……,uT}以及环境的感知z1:T={z1,……,zT}。然后,可以例如通过使用基于图的表示,或同等地使用基于过滤器的定位方法,来执行用于定位的传感器数据融合。
在基于图的SLAM中,构建图,图的节点表示移动设备或地标的姿态,其中两个节点之间的边表示传感器测量。传感器测量约束了连接的姿态。诸如RTABMAP之类的RGB-D SLAM前端可用于接收视觉里程计信息,IMU前端和UWB前端用于接收具有固有约束的传感器测量(例如,IMU数据、UWB测量)。来自三个传感器前端的所有这些观察(“原始测量”)被组合以构建图。一旦图被构建,就使用误差最小化方法(例如,非线性最小二乘误差最小化)来确定与测量最一致的节点配置。
此外,在基于图的SLAM中,移动设备的姿态由图中的节点建模,并且被标记有其在环境中的位置。在从观察或里程计测量得出的空间约束被编码在节点之间的边中。更详细地,基于图的SLAM算法从原始传感器测量中构造图。图中的每个节点表示移动设备的位置和在该位置处获取的测量。两个节点之间的边表示与两个设备姿态相关的空间约束。约束在于两个姿态之间相对变换的概率分布。这些变换要么是在顺序设备位置之间的里程计测量,要么是通过对齐在两个设备位置处获取的观察来确定的。一旦图被构造,就将找到最好地满足约束的设备姿势的配置。因此,在基于图的SLAM中,图是根据原始测量构造的,即,在前端构造图;并且在给定图的边的情况下确定姿态最可能的配置,即,在后端优化图。
上述的图优化算法和基于滤波器的数据融合算法只是说明性的,而不是限制性的;其他算法或其组合也可以用于执行数据融合。
在一些实施例中,第一检测单元120包括惯性测量单元(IMU),该IIMU被配置为检测关于移动设备的陀螺仪数据、加速度数据和角速度数据。在示例中,IMU可以集成在深度相机中,但也可以是单独的设备(如果必要的话)。
在一些实施例中,第二检测单元130包括安装在移动设备上的至少一个超宽带(UWB)标签,并且该UWB标签被配置为将UWB信号发送到布置在环境中的多个UWB锚(132、134、136),以及从服务器(未示出)接收关于UWB标签的绝对位置信息;服务器被配置为基于从发送UWB信号到由多个UWB锚接收UWB信号的时间长度来确定关于UWB标签的绝对位置信息。图1中所示的三个UWB锚是说明性的,并且UWB锚的数量不限于三个。
包括UWB标签和UWB锚的UWB系统可以提供关于UWB标签的绝对度量位置信息,使得通过将该绝对度量位置信息集成到数据融合中,可以有利地平衡视觉里程计和IMU的尺度问题,以改进定位精度。在示例中,UWB标签向安装在环境中的多个(例如,至少四个)附近的UWB锚发送UWB信号。通过到达时间差方法(TDoA)或飞行时间(ToF)方法,不同的锚在不同的时间点从UWB标签接收UWB信号,这取决于它们的距离。基于该时间差,(例如,经由以太网)连接到UWB锚的服务器PC计算UWB标签在由UWB锚所包围的区域内的3D位置。该3D位置例如以10Hz的频率被发送回UWB标签。
在一些实施例中,第二检测单元130包括安装在移动设备上的至少一个超宽带(UWB)标签,并且该UWB标签被配置为将UWB信号发送到被布置在环境中的多个UWB锚(132、134、136),以及基于从发送UWB信号到由多个UWB锚(132、134、136)接收UWB信号的时间长度来确定关于UWB标签的绝对位置信息;关于时间长度的信息是从服务器接收的。例如,服务器可以收集关于UWB信号的原始测量,包括飞行时间、到达时间差等,并将这些原始测量发送到UWB标签。
在示例中,考虑到电池和大小限制,可以使用小型便携式计算机(例如,安装有Linux系统的便携式个人计算机(PC))作为数据处理单元140。UWB标签、RGB-D相机和IMU经由USB连接到便携式Linux PC。UWB标签递送其3D位置数据;并且RGB-D相机递送关于环境中对象的3D位置和定向数据。UWB标签可以附接到移动设备的顶部,使得UWB信号不会被阻挡。UWB锚可以安装在升高的位置处(例如,安装在环境的杆上或墙壁上),以使锚与移动设备上的跟踪标签之间的非视距最小化。
在一些实施例中,数据处理单元140包括用于处理图像数据和传感器数据(包括UWB数据和IMU数据)的软件系统。在示例中,安装在数据处理单元140上的软件系统包括以下C++软件:
(1)RGB-D SLAM系统软件(例如,基于实时外观的映射(RTAB映射)),其根据RGB和深度图像流数据来计算6DOF姿态;
(2)定位和传感器融合软件,其例如通过使用现有框架对RGB-D SLAM姿态、UWB标签位置和IMU读数执行传感器数据融合,以至少实时地输出移动设备的稳定且尺度校正的3D轨迹;并且通过指定要定位的移动设备(例如,车辆、机器人或叉车)的运动模型来添加针对估计的轨迹的约束。
(3)RGB-D/IMU/UWB坐标系协同配准,其通过读取UWB标签的当前位置,将来自RGB-DSLAM系统的6DOF姿态配准到UWB系统的绝对坐标系;并将IMU数据配准到UWB坐标帧;
(4)UWB数据过滤,其对关于UWB信号的测量数据进行过滤,以移除故障数据;
(5)环境重构软件,其基于融合的6DOF数据来重构3D环境,和/或基于稳定且尺度校正的3D轨迹信息来构造环境地图;以及
(6)到其他应用的应用程序接口(API),通过该接口可以共享由定位系统100获得的定位和轨迹信息。
根据本发明的实施例,定位系统100可以由便携式Linux PC、小型UWB标签和具有IMU的低成本RGB-D相机(例如,Intel Realsense D435)组成,可以降低整个系统的硬件成本。
在使用单个定位系统的现有技术中,这些现有技术中的每一种都有其固有的缺点。例如,在仅使用UWB的定位系统中,定位锚经常出现非视距,降低了定位稳定性;使用RGB-D SLAM的定位系统存在误差累积和尺度问题;而使用IMU的定位系统具有漂移、误差累积和尺度问题。相比之下,根据本发明的实施例,通过使用在UWB、RGB-D SLAM和IMU数据之间的数据融合,可以改进定位的稳定性和准确度。如果数据源(例如,成像单元、检测单元)中的任何一个在某些时间给出不准确的数据,则可以通过使用来自其他数据源的数据来使定位准确度稳定。
图2示出了根据本发明的实施例的定位方法的流程图。定位方法200包括:捕获环境的图像(步骤210);检测关于移动设备相对于环境的相对运动信息(步骤220);检测关于移动设备的第一绝对位置信息(步骤230);以及基于图像、相对运动信息和位置信息来生成与环境中的移动设备相关联的第二绝对位置信息和轨迹信息中的至少一个(步骤240)。
在一些实施例中,定位方法200还包括:基于图像、相对运动信息和第一绝对位置信息中的至少一项,来生成对象的尺度和/或对象在环境中的运动、移动设备的移动距离和环境的点云图中的至少一个。
在一些实施例中,捕获环境的图像(步骤210)包括使用深度相机来获得关于环境中的对象的位置和定向的图像流数据。
在一些实施例中,定位方法200还包括:使用视觉同时定位和映射(SLAM)系统,基于图像流数据来生成移动设备的姿态数据和关于环境的视觉里程计信息。
在一些实施例中,定位方法200还包括:通过对关于移动设备的至少姿态数据、视觉里程计信息、相对运动信息和第一绝对位置信息执行数据融合,来生成第二绝对位置信息、轨迹信息、对象的尺度和/或对象在环境中的运动、移动设备的移动距离和环境的点云图中的至少一个。
在一些实施例中,数据融合至少部分地基于图优化算法;其中,由关于移动设备的姿态数据、视觉里程计信息、相对运动信息和第一绝对位置信息表示的状态被表示为图的顶点;状态之间的关系被转换为成本函数;以及通过使成本函数最小化来获得每种状态的最优估计,以通过使用最优估计来生成第二绝对位置信息、轨迹信息、对象的尺度和/或对象在环境中的运动、移动设备的移动距离和环境的点云图中的至少一个。
在一些实施例中,检测关于移动设备的第一绝对位置信息(步骤230)包括:使用至少一个超宽带(UWB)标签,以将UWB信号发送到被布置在环境中的多个UWB锚,以及从服务器接收关于UWB标签的绝对位置信息;其中,服务器被配置为基于从发送UWB信号到由多个UWB锚接收UWB信号的时间长度来确定关于UWB标签的绝对位置信息。
在一些实施例中,检测关于移动设备的第一绝对位置信息(步骤230)包括使用至少一个超宽带(UWB)标签,以将UWB信号发送到被布置在环境中的多个UWB锚,以及基于从发送UWB信号到由多个UWB锚接收UWB信号的时间长度来确定关于UWB标签的绝对位置信息;其中,关于时间长度的信息是从服务器接收的。
在一些实施例中,提供了一种移动设备。该移动设备包括:如上述实施例中所述的定位系统,其被配置为基于传感器数据来生成与移动设备相关联的第二绝对位置信息和轨迹信息中的至少一个;传感器数据包括捕获的环境图像、关于移动设备的相对运动信息和第一绝对位置信息。
在一些实施例中,提供了一种计算机程序产品。该计算机程序产品包括可执行指令,其中,该指令在由处理器执行时,实现如上述实施例中所述的定位方法。
本发明的实施例可以用于多种应用场景,以实现改进的性能。在一些示例中,实施例可以改进移动机器人或自主车辆在室内环境(例如,房屋、工厂、仓库等)中的定位,以便实时跟踪机器人的位置来进行分析和可视化。在一些示例中,实施例可以改进人类的定位(例如,佩戴头盔或佩戴腰带的传感器融合套件),以便实时跟踪人类的位置来进行分析和可视化。在一些示例中,实施例可以使用机器人的实时定位用于实时机器人控制;并且与使用激光或LiDAR传感器的解决方案相比,这种解决方案的硬件成本要显著更低。在一些示例中,实施例可以用于UWB系统可用的室外场景,以改进自主车辆的定位和控制。
上述实施例和示例是说明性的而不限于本发明。应当理解,可以对上述实施例和示例进行许多变化和修改。所有这些变化和修改都旨在包含于在本公开的范围内,并受以下权利要求保护。
- 轨道移动设备精确定位系统及定位方法
- 一种用于LED景观照明系统的移动设备互动控制方法
- 用于孩童定位的便携式定位装置及定位系统、方法
- 一种焊缝定位方法及应用于焊缝定位的系统
- 用于移动设备的摄像机系统、用于定位一个摄像机的方法、以及用于定位多个摄像机的方法
- 定位移动设备的方法、移动设备和定位系统