CN111750864A - 一种基于视觉地图的重定位方法和装置 - Google Patents
一种基于视觉地图的重定位方法和装置 Download PDFInfo
- Publication number
- CN111750864A CN111750864A CN202010620104.8A CN202010620104A CN111750864A CN 111750864 A CN111750864 A CN 111750864A CN 202010620104 A CN202010620104 A CN 202010620104A CN 111750864 A CN111750864 A CN 111750864A
- Authority
- CN
- China
- Prior art keywords
- map
- pose
- range
- matching
- current frame
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/20—Instruments for performing navigational calculations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/30—Determination of transform parameters for the alignment of images, i.e. image registration
- G06T7/33—Determination of transform parameters for the alignment of images, i.e. image registration using feature-based methods
-
- 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/10016—Video; Image sequence
Landscapes
- Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Theoretical Computer Science (AREA)
- Automation & Control Theory (AREA)
- Image Analysis (AREA)
Abstract
本申请公开了一种基于视觉地图的重定位方法,包括,将与当前帧最近的定位成功图像帧作为参考帧,根据参考帧到当前帧的帧间相对位姿,预测当前帧的位姿,得到当前帧的预测位姿,基于预测位姿,估计预测位姿范围,当预测位姿范围未超过设定的用于表征可成功重定位范围极限的阈值时,在预测位姿范围内,确定候选地图范围,将当前帧中的特征点与候选地图范围中的地图点进行匹配,得到匹配特征点,当匹配特征点满足用于当前帧位姿解算的条件时,根据匹配特征点计算当前帧的位姿,得到定位结果。本申请准确判断出当前帧能否计算出正确重定位的结果,避免了假阳性问题而导致计算资源的浪费,提高了重定位的成功概率。
Description
技术领域
本发明涉及视觉导航领域,特别地,涉及一种基于视觉地图的重定位方法。
背景技术
移动机器人在定位的过程中经常发生定位丢失的情况,如某区域未建图,里程计误差过大,场景变化均可能导致定位丢失。移动机器人的重定位是移动机器人在定位丢失的情况下,根据当前的传感器数据和地图重新确定移动机器人位置的过程。因此,移动机器人的重定位功能是移动机器人实现真正智能化和完全自主的关键技术,对移动机器人定位的鲁棒性至关重要。
目前移动机器人常用的传感器有视觉和激光两种,大部分的重定位方法也同时基于视觉传感器和激光传感器输入的数据进行,并不适用于基于视觉地图的重定位。
发明内容
本发明提供了一种基于视觉地图的重定位方法,以提高重定位成功的概率。
本发明提供的一种基于视觉地图的重定位方法,该方法包括,
将与当前帧最近的定位成功图像帧作为参考帧,根据参考帧到当前帧的帧间相对位姿,预测当前帧的位姿,得到当前帧的预测位姿,
基于预测位姿,估计预测位姿范围,
当预测位姿范围未超过设定的用于表征可成功重定位范围极限的阈值时,在预测位姿范围内,确定候选地图范围,
将当前帧中的特征点与候选地图范围中的地图点进行匹配,得到匹配特征点,
当匹配特征点满足用于当前帧位姿解算的条件时,根据匹配特征点计算当前帧的位姿,得到定位结果。
较佳地,所述阈值根据匹配耗时,位姿最大偏移误差、相同地图区域的尺寸之一或其任意组合确定;
所述在预测位姿范围内,确定候选地图范围,包括,
根据预测位姿范围、单次匹配范围、具有地图点信息的地图区域三者的交集,得到候选地图范围;
所述基于预测位姿,估计预测位姿范围,包括,
以预测位姿为中心,按照预测半径所形成的圆内区域,作为预测位姿范围,
其中,所述预测半径为定位失败产生的固定误差与里程计累积误差之和。
较佳地,所述固定误差根据引起定位失败的原因调整;所述里程计累积误差为根据里程计误差模型逐帧积累、直到重定位成功或者预测位姿范围超过阈值时的图像帧时所有图像帧的累积误差,
所述基于预测位姿,估计预测位姿范围之后,进一步包括,
判断预测位姿范围是否超过设定的用于表征可成功重定位范围极限的阈值,
如果是,则判定重定位失败,
所述根据匹配特征点计算当前帧的位姿,得到定位结果,进一步包括,
对计算得到当前帧的位姿采用基于滑动窗口的非线性优化;优化的变量为滑动窗口内各图像帧的位姿,该滑动窗口包括当前帧,优化的约束为当前帧特征点与上一关键帧特征点之间的帧间匹配约束、和/或当前帧特征点与地图中的地图点之间的地图匹配约束,
利用最小二乘法,最小化帧间匹配误差和/或地图匹配误差,得到优化后的当前帧位姿,作为定位结果;
其中,
地图匹配约束为:第一匹配地图点反投影到当前帧上的像素位置与当前帧中与该地图点匹配的第一匹配特征点的像素位置之间的误差,或者,当前帧中的第一匹配特征点投影至世界坐标系中的空间位置与该第一匹配特征点匹配的第一匹配地图点在世间坐标系中的空间位置之间的误差;所述第一匹配特征点为:当前帧中的特征点与地图中的地图点进行匹配所得到匹配成功的特征点;第一匹配地图点为:被第一匹配特征点匹配成功的地图点;
帧间匹配约束为:当前帧中的第一匹配特征点投影至世界坐标系中的空间位置与当前帧的上一关键帧中与该第一匹配特征点匹配的第二匹配特征点投影至世界坐标系中的空间位置之间的误差,或者,与第二匹配特征点匹配的第二匹配地图点反投影到当前帧的像素位置与该第二匹配地图点反投影到上一关键帧的像素位置之间的误差。
较佳地,所述根据引起定位失败的原因调整包括,对于里程计打滑而产生的定位丢失,则固定误差为第一固定误差;对于地图缺失导致的定位丢失,固定误差为第二固定误差;其中,第一固定误差大于第二固定误差;
所述判断预测位姿范围是否超过设定的用于表征可成功重定位范围极限的阈值,包括,
判断在当前预测位姿范围内的地图中的地图点是离散覆盖还是连续覆盖,
若是离散覆盖,则判断预测位姿范围是否超过设定的第一阈值;如果预测位姿范围未超过第一阈值,则基于离散覆盖地图,确定候选地图范围;
若是连续覆盖,则判断预测位姿范围是否超过设定的第二阈值,如果预测位姿范围未超过第二阈值,则基于连续覆盖地图,确定候选地图范围;
其中,第一阈值与第二阈值不相同;
所述利用最小二乘法,最小化帧间匹配误差和/或地图匹配误差,包括,
构建目标函数,该函数为:以第一权值加权当前滑动窗口中所有帧的所有第一匹配特征点的地图匹配误差之和所得到的第一结果,以及,以第二权值加权当前滑动窗口中各帧与其上一关键帧之间所有帧间的所有第二匹配地图点的帧间匹配误差之和所得到的第二结果,所累加的第一结果与第二结果之和;
以根据当前帧的位姿、第一匹配地图点的空间位置信息、相机内参、当前帧中的与第一匹配地图点匹配的第一匹配特征点的像素坐标所得到的地图匹配误差,作为地图匹配误差初始值,
以根据当前帧位姿、第二匹配地图点的空间位置信息、上一关键帧的位姿、相机内参矩阵所得到帧间匹配误差,作为帧间匹配误差初始值,
迭代求解使得目标函数取得最小值时当前帧的位姿;
所述得到优化后的当前帧位姿之后,进一步包括,
满足以下条件之一时,判定当前帧为关键帧:
当前帧中第一匹配特征点的数量小于第一数量阈值,
当前帧中第二匹配特征点的数量小于第二数量阈值;
若当前帧为非关键帧时,则在滑动窗口中删除该当前帧,
若当前帧为关键帧,则判断当前滑动窗口中帧数量是否达到设定的第一帧阈值,如果是,则删除滑动窗口中最早添加的关键帧,否则,则不删除滑动窗口中最早添加的关键帧。
较佳地,所述将与当前帧最近的定位成功图像帧作为参考帧,包括,
根据定位成功的历史帧,向前追溯历史帧中与当前帧最近的一图像帧作为参考帧;
所述根据参考帧到当前帧的帧间相对位姿,预测当前帧的位姿,得到当前帧的预测位姿,包括,
第一方式:通过轮式里程计或惯性测量元件获得上一帧到当前帧的帧间位姿变换,基于帧间位姿变换、以及上一帧的定位结果,求得当前帧的预测位姿;
或者
第二方式:通过视觉里程计获得上一帧到当前帧的帧间位姿变换,基于帧间位姿变换、以及上一帧的定位结果,求得当前帧的预测位姿;
或者
第三方式:根据已获得定位结果的历史帧,预测上一帧到当前帧的帧间位姿变换,基于帧间位姿变换、以及上一帧的定位结果,求得当前帧的预测位姿;
或者,
第四方式:至少采用第一方式、第二方式、第三方式中的两方式,分别求得当前帧的第一预测位姿,得到至少两个第一预测位姿;
采用卡尔曼滤波器对所述至少两个第一预测位姿进行滤波,得到滤波后的第二预测位姿,将第二预测位姿作为当前帧最终的预测位姿;或者,采用非线性优化的方法,基于所述至少两个第一预测位姿进行优化,得到优化后的第二预测位姿,将第二预测位姿作为当前帧最终的预测位姿;
其中,非线性优化的目标函数为根据各个方式所得到的各个误差项之和,将上一帧的位姿、不同方式所得到的当前帧j的第一预测位姿、以及帧间位姿变换作为初始值,代入目标函数,求解使得目标函数取得最小值时的位姿,作为第二预测位姿。
较佳地,所述地图为地图点离散覆盖地图,
所述根据预测位姿范围、单次匹配范围、具有地图点信息的地图区域三者的交集,得到候选地图范围,包括,
在预测位姿范围内,根据各个离散覆盖地图区域分别确定各单次匹配范围,分别根据单次匹配范围确定各第一候选地图范围,得到由各个第一候选地图范围构成的第一候选地图集合,所述各个第一候选地图范围无重叠。
较佳地,所述地图为地图点连续覆盖地图,
所述根据预测位姿范围、单次匹配范围、具有地图点信息的地图区域三者的交集,得到候选地图范围,包括,
在预测位姿范围内,根据地图中地图点分布分别确定各单次匹配范围,分别根据单次匹配范围确定各第二候选地图范围,得到由各个第二候选地图范围构成的第二候选地图集合;其中,各个第二候选地图范围重叠或不重叠,第二候选地图集合所确定的地图范围覆盖预测位姿范围内具有地图点的全部地图区域。
较佳地,所述基于离散覆盖地图,确定候选地图范围,包括,
在当前预测位姿范围内,根据各个离散覆盖地图区域分别确定各单次匹配范围,分别根据单次匹配范围确定各第三候选地图范围,得到由各个第三候选地图范围构成的第三候选地图集合,所述各个第三候选地图范围无重叠;
所述基于连续覆盖地图,确定候选地图范围,包括,
在预测位姿范围内,根据地图中地图点分布分别确定各单次匹配范围,分别根据单次匹配范围确定各第三候选地图范围,得到由各个第三候选地图范围构成的第三候选地图集合;其中,各个第三候选地图范围重叠或不重叠,第三候选地图集合所确定的地图范围覆盖预测位姿范围内具有地图点的全部地图区域。
较佳地,所述将当前帧中的特征点与候选地图范围中的地图点进行匹配,得到匹配特征点,包括,
对于候选地图集合中的每个候选地图范围,将当前帧中的特征点与该候选地图范围中的地图点进行匹配,得到该候选地图范围的匹配特征点,
所述得到匹配特征点之后,进一步包括,
基于该候选地图范围的匹配特征点,采用随机抽样一致性算法确定该候选地图范围的最佳匹配特征点集合,
反复执行,直至候选地图集合中的每个候选地图范围的最佳匹配特征点都被确定;
判断最佳匹配特征点集合是否满足用于位姿解算的条件,当匹配特征点不满足用于当前帧位姿解算的条件时,判定当前帧定位失败;
该方法进一步包括,
对当前帧进行图像预处理,基于预处理后的当前帧进行特征提取。
较佳地,所述基于该候选地图范围的匹配特征点,采用随机抽样一致性算法确定最佳匹配特征点集合,包括,
从该候选地图范围内的匹配特征点所构成的匹配特征点集合中,随机选择用于计算当前帧位姿估计的匹配特征点,得到当前匹配特征点子集;
基于匹配特征点子集中的匹配特征点所建立的空间位置信息与像素位置信息的映射,计算当前位姿,得到该匹配特征点子集的拟合位姿估计,
根据拟合位姿估计以及相机内参,获取当前帧中所有的特征点的空间位置,得到所有特征点的投影点空间位置;
对于匹配特征点集合中的每个匹配特征点,根据该匹配特征点的投影点空间位置,判断当前帧中该匹配特征点的投影点与地图中该匹配特征点的距离是否小于设定的第二距离阈值,如果是,则判定该匹配特征点为内点;反复执行所述判断当前帧中该匹配特征点的投影点与地图中该匹配特征点的距离是否小于设定的第二距离阈值的步骤,直至匹配特征点集合中所有匹配特征点都被进行了内点的判定;
统计当前内点数量,判断当前统计的内点数量是否为历次所统计内点数量中的最大,如果是,则将当前内点所构成的集合作为当前最佳匹配特征点集合;
判断是否达到结束条件,如果是,则将当前最佳匹配特征点集合作为最终的最佳匹配特征点集合,否则,返回所述从匹配特征点所构成的匹配特征点集合中随机选择用于计算当前帧位姿估计的匹配特征点的步骤;
所述判断最佳匹配特征点集合是否满足用于位姿解算的条件,包括,
根据匹配特征点的数量判断最佳匹配特征点集合是否满足用于位姿解算的条件;
或者,
对至少两个以上最佳匹配特征点集合分别赋予衡量当前帧与候选地图范围匹配程度的权值;所述权值根据最佳匹配特征点集合中的匹配特征点数量、当前帧特征点提取数量、特征点分布情况、匹配特征点初始数量与最佳匹配特征点集合中的匹配特征点数量之一或其任意组合确定,
根据设定的权值阈值和最大权值,判断最佳匹配特征点集合是否满足用于位姿解算的条件。
本发明提供的一种基于视觉地图的重定位装置,该装置包括,
预测位姿模块,将与当前帧最近的定位成功图像帧作为参考帧,根据参考帧到当前帧的帧间相对位姿,预测当前帧的位姿,得到当前帧的预测位姿,
预测位姿范围模块,基于预测位姿,估计预测位姿范围,
候选地图确定模块,当预测位姿范围未超过设定的用于表征可成功重定位范围极限的阈值时,在预测位姿范围内,确定候选地图范围,
定位模块,将当前帧中的特征点与候选地图范围中的地图点进行匹配,得到匹配特征点,
当匹配特征点满足用于当前帧位姿解算的条件时,根据匹配特征点计算当前帧的位姿,得到定位结果。
本发明还提供一种计算机可读存储介质,所述存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一所述基于视觉地图的重定位方法的步骤。
本发明提供的一种基于视觉地图的重定位方法,通过基于当前帧的预测位姿估计预测位姿范围,当预测位姿范围未超过设定的用于表征可成功重定位范围极限的阈值时,方确定候选地图范围,从而准确判断出当前帧能否计算出正确重定位的结果,保证了能够计算出的定位结果的正确性,避免了假阳性问题而导致计算资源的浪费,提高了重定位的成功概率,从而能够支持无地图、地图环境变化、里程计打滑等多种情形下的重定位。通过根据预测位姿范围、单次匹配范围、具有地图点信息的地图区域三者的交集,确定候选地图范围,使得候选地图更准确,有利于提高匹配效率,并提高了定位结果的精确性。
附图说明
图1a和图1b为基于离散覆盖的纹理地图进行重定位的一种流程示意图;
图2为特征点筛选示意图;
图3为位姿范围预测的一种示意图;
图4为重复纹理情形下预测位姿范围的一种示意图;
图5为基于离散纹理地图确定候选地图范围的一种示意图;
图6为基于连续覆盖的纹理地图进行重定位的一种流程示意图;
图7为基于连续纹理地图确定候选地图范围的一种示意图;
图8为基于连续纹理地图确定候选地图范围的另一种示意图;
图9为基于地图自适应地进行重定位的一种流程示意图;
图10为本申请一段重定位的轨迹示意图;
图11为本申请重定位装置的一种示意图;
图12为图像预处理模块的一种示意图;
图13为图像坐标系下地图匹配约束、帧间匹配约束的一种示意图;
图14为世界坐标系下地图匹配约束、帧间匹配约束的一种示意图。
具体实施方式
为了使本申请的目的、技术手段和优点更加清楚明白,以下结合附图对本申请做进一步详细说明。
本申请基于当前帧的预测位姿估计预测位姿范围,通过判断预测位姿范围是否超过设定的用于表征可成功重定位范围极限的阈值,来确定重定位成功的可能性,当重定位能够成功时,方在预测位姿范围确定候选地图范围,从而提高了重定位成功的概率。
以下将以基于视觉地图的视觉定位来进行说明,其中,视觉地图为已预先构建好的特征地图,该地图中具有三维空间信息的地图点,即,地图中保存有特征点的世界坐标和描述子信息。
为便于理解,实施例中,视觉地图为基于采集的地面纹理信息所构建的纹理地图,可以是二维或三维带有特征描述子的点云地图,该纹理地图覆盖范围可以是连续覆盖的,也可以是离散覆盖的。以下以三维点云地图为例。
下视纹理定位是移动机器人利用下视相机采集图像与纹理地图进行匹配得到移动机器人的全局定位结果的方法。在正常情况下,定位算法稳定运行,可以给出持续准确的定位结果。但在某些异常情况下,如某些区域未建图或地图发生改变,里程计发生打滑导致误差过大等情况,通常不能正常给出定位结果,导致定位丢失,这时就需要触发重定位来恢复机器人的全局位姿。
定位丢失可以是如下条件之一:
(1)当前帧与地图匹配失败,导致不能给出正确的定位结果;
(2)当前帧预测位姿范围内无纹理地图。
(3)上一帧定位结果为定位丢失,且重定位未成功。
(4)当前连续定位失败帧数超过设定的帧数阈值,
(5)当前帧与最近一次定位成功的位姿之间的距离超过设定的第一距离阈值;
需要说明的是,对定位丢失的判断方法可不局限于以上几种。
参见图1a和图1b所示,图1a和图1b为基于离散覆盖的纹理地图进行重定位的一种流程示意图。当重定位被触发时,执行如下步骤:
步骤101,对当前帧进行图像预处理,以使得图像中的纹理显著,包括且不限于,图像去畸变、图像滤波、图像增强等可选的处理。该步骤为基于图像质量的可选步骤。例如,根据当前帧是否去过畸变、纹理是否显著确定是否加入图像预处理。
较佳地,对当前帧进行图像预处理的一种流程示意图,包括如下步骤:
步骤1011,根据相机的畸变系数对当前帧进行去畸变处理,得到去畸变图像I(u,v),其中,u、v表示像素坐标。
步骤1012,判断去畸变图像中各个像素点的像素值是否大于设定的第一像素阈值,如果是,则将像素值大于第一像素阈值的像素点进行取反操作,然后对进行了取反操作后的去畸变图像进行滤波,否则,直接对去畸变图像I(u,v),进行图像滤波,得到背景图像Ib(u,v)。
步骤1013,用去畸变图像减去背景图像,得到前景图像If(u,v),其中,前景图像的数学式表达为:
If(u,v)=I(u,v)-Ib(u,v)
步骤1014,判断前景图像If(u,v)的像素值是否分布均匀,如果是,则将前景图像作为预处理后的当前帧,否则,则对前景图像进行拉伸,得到预处理后的当前帧;
其中,对前景图像进行拉伸处理可以为:
当前景图像像素值小于等于最小灰度值时,将该前景图像像素值取值为像素取值范围内的最小值,即像素值为0;
当前景图像像素值大于最小灰度值、且小于最大灰度值时,将增加该前景图像像素值的对比度;较佳地,按照与像素最大值成一定比例的像素值作为该前景图像像素值;较佳地,所述比例为:前景图像像素值与最小灰度值之差与最大灰度值与最小灰度值之差的比值。
当前景图像像素值大于等于最大灰度值时,将该前景图像像素值取值为像素取值范围内的最大值,例如,像素最大值为255。
用数学式表达为:
拉伸后的前景图像If'(u,v)表示为:
其中,Imin为最小灰度值,Im&x为最大灰度值,在上式中,像素取值范围为0~255。
步骤102,提取预处理后的当前帧中的图像特征点,并基于特征点计算描述子,得到当前帧的特征点和描述子,然后执行步骤205。其中,描述子形式与地图中地图点的描述子形式相同。可采用ORB(Oriented FAST and Rotated BRIEF)、尺度不变特征变换(SIFT)、SURF(Speeded Up Robust Features)等特征。例如,地图点的描述子为ORB(Oriented FASTand Rotated BRIEF)特征点,则当前帧的描述子也为ORB特征点。
较佳地,按照与所构建地图的特征点形成方式,提取预处理后的当前帧中的图像特征点。
在本实施例中,采用ORB特征点。
鉴于所采集的地面纹理图像通常尺度稳定,无需多尺度的特征进行构建,以增强特征的尺度不变性,故而可放弃金字塔图像的构建,而基于当前帧图像进行特征提取,以相当于基于源图像进行特征提取,从而减小特征提取需要的计算量,提高计算效率。
鉴于均匀而又显著的特征点能减少相机位姿计算时的定位误差,为了提高定位的性能和效率,可对提取的特征点进行筛选。图2为特征点筛选示意图。因此在提取FAST(Features from Accelerated Segment Test)特征后,可以将当前帧划分为一定数量的网格,每个网格筛选出Q个FAST响应值最高的特征点予以保留。其中,Q根据一帧目标图像中特征点的数量和所设特征点总数上限确定、以及该网格中的特征点总数确定,不同网格所保留的特征点数可以不同。例如,一帧目标图像帧中,特征点总数的上限设定为100个,当前帧特征点的数量为2000个,则该帧目标图像中每20个特征点选出一个,如果某网格有20个特征点,则该网格保留的特征点为1,即,Q=1即,Q=1。用数学式表达为:
为提高重定位的效率,在进行上述对当前帧进行处理的同时,可以并行地进行候选地图范围的确定。包括,
步骤201,根据定位成功的历史帧,追溯历史帧中最近的一帧作为参考帧,根据参考帧到当前帧的帧间运动信息,对当前帧进行位姿预测,得到预测位姿,以便利用该预测位姿确定第三候选地图范围,从而提高匹配的效率;
位姿预测的方法包括,
实施方式一,通过轮式里程计或惯性测量元件(IMU)获得参考帧到当前帧的帧间位姿变换,基于参考帧的定位结果、以及帧间位姿变换,求得当前帧的预测位姿。
实施方式二,通过视觉里程计(VO)获得参考帧到当前帧的帧间位姿变换,基于参考帧的定位结果、以及帧间位姿变换,求得当前帧的预测位姿。该实施方式仅需要图像信息,不需要额外的惯性信息。
实施方式三,根据若干已获得定位结果的历史帧,预测参考帧到当前帧的帧间位姿变换,基于参考帧的定位结果、以及帧间位姿变换,求得当前帧的预测位姿。该实施方式不依赖当前帧的任何信息。
实施方式四,至少采用实施方式一至三中的两实施方式,分别求得当前帧的第一预测位姿,得到至少两个第一预测位姿;采用卡尔曼滤波器对所述至少两个第一预测位姿进行滤波,得到滤波后的第二预测位姿,将第二预测位姿作为当前帧最终的预测位姿,或者,采用非线性优化的方法,基于所述至少两个第一预测位姿进行优化,得到优化后的第二预测位姿,将第二预测位姿作为当前帧最终的预测位姿;
例如,根据各个实施方式所得到的各个误差项,构建非线性优化的目标函数,数学表达式为:
其中,ei45表示采用实施方式s时的误差项,Ti表示参考帧i的位姿,即参考帧i的定位结果,Tj表示当前帧j的第一预测位姿,ΔTij表示上一帧i到当前帧j之间的帧间位姿变换,ξ4为当前帧预测位姿的李代数表示,S为所采用的实施方式的总数,符号‖‖表示范数。
将参考帧i的位姿Ti、不同实施方式所得到的当前帧j的第一预测位姿Tj以及帧间位姿变换ΔTij作为初始值代入目标函数,求解使得目标函数取得最小值时的位姿。
较佳地,根据定位丢失的情况不同,采取的位姿预测的方法也不同:
如可判断出轮式里程计未打滑,则可用实施方式之一中的轮式里程计或实施方式之二中的视觉里程计作为位姿的预测;
如无法判断轮式里程计是否打滑,则可用实施方式之二中的视觉里程计作为位姿的预测。
步骤202,由于在重定位情况下的位姿预测需基于参考帧、里程计累积的结果,不可避免的会有累积误差存在,因此要基于预测位姿,估计出移动机器人实际可能出现的位姿范围,从而得到预测位姿范围。
参见图3所示,图3为位姿范围预测的一种示意图。图中的点表示预测的位姿,虚线圈表示位姿实际可能范围,其以预测位姿为中心按照预测半径所形成的圆内区域。随着里程计累积的增加,位姿预测的不确定度越来越大,从而位姿实际可能的范围也越来越大。
位姿范围的预测半径估计可采取定位失败固定误差与里程计累积误差的累加。其中,定位失败固定误差是定位失败时产生的固定误差,可根据引起定位失败的原因来调整,例如,因里程计打滑而产生的定位丢失,可以设定为较大的第一固定误差,而如果是由于地图缺失导致的定位丢失,可以设定为较小的第二固定误差,第一固定误差大于第二固定误差;里程计累积误差则可以根据里程计误差模型逐帧积累,直到重定位成功,或者预测位姿范围超过阈值。用数学式可以表达为:
其中,ef为定位失败时产生的固定误差,ea(i)为图像帧i的里程计误差模型所对应的里程计误差,I等于重定位成功时的累计的总帧数,或者预测位姿范围超过阈值时累计的总帧数。
步骤203,判断预测位姿范围是否超过设定的第一阈值,如果是,则说明在该预测位姿范围已不能重定位成功,则判定重定位失败,否则,执行步骤204,以确定候选地图范围,
预测位姿范围判断主要是考量预测位姿范围是否超过能成功重定位范围的极限,通过设定的阈值来限定预测位姿范围,以避免后续的匹配计算,从而提高重定位的效率,增加重定位的鲁棒性。
第一阈值的设定可由多种因素综合设定,如匹配耗时,位姿最大偏移误差等。
针对纹理地图,由于纹理地图中出现重复纹理的情形较多,第一阈值可设定为重复纹理区域的尺寸,也就是说,预测位姿范围需小于重复纹理区域的尺寸。参见图4所示,图4为重复纹理情形下预测位姿范围的一种示意图,图中,4×4的网格中每一个网格的纹理都完全相同,实线圈为预测位姿范围。在左图中,预测位姿范围小于相同纹理区域的尺寸,而在右图中预测位姿范围超过了相同纹理区域的尺寸,导致实线圈内的两个虚线圈的纹理是完全相同的,利用此预测位姿范围中的纹理进行匹配,则有可能匹配出完全错误的结果。
步骤204,基于加载的地图,在预测位姿范围内根据单次匹配范围、以及具有地图点信息的地图区域,确定第一候选地图范围,得到至少包括一个第一候选地图范围的第一候选地图集合。
候选地图范围受预测位姿范围、单次匹配范围、纹理地图三个因素影响,其中,
预测位姿范围由步骤203所确定,是移动机器人位姿实际可能出现的范围;
单次匹配范围是指图像与地图匹配实际可匹配的范围,主要受匹配的准确度影响,而匹配的准确度又受到特征点描述子的选择、描述子位数、最佳匹配特征点(后文中的内点)筛选方法的影响。通常,当前帧图像与纹理地图中同样相机视野大小的地图进行匹配是没问题的,而如果选用的匹配方法的准确性较高,可以适当增大单次匹配的地图范围,但如果单次匹配地图范围过大,会对匹配的结果造成影响,使匹配准确性下降;各单次匹配范围可以不同;
纹理地图主要是确定地图中存在纹理的范围,因为位姿范围内并不是所有的位置都有纹理地图。
鉴于此,确定第一候选地图范围是:在预测位姿范围内,选取适当的单次匹配范围、且完全被预测位姿范围覆盖的纹理地图,换言之,第一候选地图范围是预测位姿范围、单次匹配范围、具有纹理信息(地图点)的地图三者的交集。
参见图5所示,图5为基于离散纹理地图确定候选地图范围的一种示意图,其中,灰色区域表示有纹理地图的区域,白色区域表示无纹理地图的区域,实线圈为预测位姿范围,虚线圈为将一离散纹理地图区域作为单次匹配范围;从而,在该预测位姿范围内共包含四个离散纹理地图区域,分别将该离散纹理地图区域作为第一候选地图范围,得到包括4个第一候选地图范围的第一候选地图集合。
步骤205,对于第一候选地图集合中的每个第一候选地图范围,将当前帧中的特征点与第一候选地图范围内的地图点进行匹配,当匹配成功时,得到当前帧的第一匹配特征点,与该第一匹配特征点匹配的地图点称为第一匹配地图点;然后执行步骤206,
在该步骤中,匹配的方式可以采用暴力匹配,以提高重定位的鲁棒性。
重复执行该步骤,直至当前帧的所有特征点都进行了匹配,得到由第一匹配特征点构成的第一匹配特征点集合。
步骤206,鉴于纯描述子匹配可能存在一些误匹配点,较佳地,可以采用一定的方法筛选最佳第一匹配特征点,以提高匹配特征点的准确性,从而提高当前帧的位姿的准确性。故而,在该步骤中,基于第一匹配特征点,采用随机抽样一致性(RANSAC)算法确定该第一候选地图范围的最佳匹配特征点集合,具体包括,
步骤2061,从步骤205所得到第一匹配特征点集合中,随机选择用于计算当前帧位姿估计的匹配特征点,得到当前匹配特征点子集;其中,随机选择的匹配特征点的数量根据所采用的位姿求解方法来确定,例如,当采用单应矩阵方法求解位姿时,至少随机选择4个匹配特征点。
步骤2062,基于匹配特征点子集中的匹配特征点与匹配地图点所建立的空间位置信息与像素位置信息的映射,计算当前位姿,从而获得该匹配特征点子集的拟合位姿估计;
该步骤中,计算当前位姿包括且不限于以下方法:透视N点定位PNP(2D-3D)方法,2维最邻近迭代2D-ICP(2D-2D),3维最邻近迭代3D-ICP(3D-3D),单应矩阵H(2D-2D)。
以通过单应矩阵计算位姿为例。
由于移动机器人是在平面中运动,空间位置坐标在同一平面z=0中,则单应矩阵与空间位置坐标矩阵的乘积对应为像素坐标矩阵,用数学式表达为:
其中单应矩阵的自由度为8,通过4个第一匹配特征点根据第一匹配地图点所确定的空间位置和该第一匹配特征点的像素位置的对应关系,可以求出单应矩阵中每一个元素的值。对单应矩阵进行奇异值(SVD)分解,可以求得相应的旋转矩阵R和平移向量t,得到拟合位姿估计。
步骤2063,由于拟合位姿估计是由子集中的匹配特征点得到的,为了考量第一匹配特征集合中的其他匹配特征点是否也符合当前计算出来的拟合位姿估计,因此,需要计算内点率。在该步骤中,根据拟合位姿估计以及相机内参,获取当前帧中所有的特征点的空间位置,得到投影点的空间位置。
利用相机投影模型,可以将二维像素坐标点映射到三维坐标点,在本文中,这种映射称之为投影;反之,由三维坐标点映射到二维坐标点,这种映射称之为反投影。
在该步骤中,将当前帧中的所有第一匹配特征点投影至三维空间位置,即,投影至地图中,作为投影点的空间位置。故而,对于当前帧中的任一第一匹配特征点i,可以求得其投影点的三维空间坐标。
数学式可以表达为:
pi=K(RiXi+ti)
其中,pi为当前帧中第一匹配特征点i的像素坐标,Ri、ti为当前拟合位姿估计,Xi为第一匹配特征点i投影至地图中的三维空间坐标,即投影点的三维空间坐标。
步骤2064,对于第一匹配特征点集合中的每个第一匹配特征点,判断当前帧中该第一匹配特征点的投影点与地图中与该第一匹配特征点匹配的第一匹配地图点的距离是否小于设定的第二距离阈值,如果是,则判定该第一匹配特征点为内点,
反复执行该步骤,直至所有第一匹配特征点都被进行了是否是内点的判定。
步骤2065,统计当前内点数量,将当前内点数量与第一匹配特征点数量的比值作为内点率;比值越大,内点率越高,则说明拟合程度越高,拟合位姿估计越佳,所随机选择的匹配特征点越佳。
步骤2066,判断当前统计的内点数量是否是历次迭代中的最大,如果是,则将当前内点所构成的集合作为当前最佳匹配特征点集合,然后执行步骤2067,否则,对当前最佳匹配特征点集合不进行更新,而直接执行步骤2067,
步骤2067,判断是否达到结束条件,如果是,则执行步骤207,以便为下一候选地图范围确定最佳匹配特征点集合,直至候选地图集合中的每个候选地图范围都分别确定了最佳匹配特征点集合,否则,返回步骤2061,以便重新随机选择匹配特征点子集来进行拟合位姿估计,从而进行估计-确认的循环;
其中,结束条件包括至少以下条件之一:
1)内点率满足预设的条件,
2)迭代次数满足预设的条件;为了在置信度η的条件下,在迭代循环过程中,至少有一次随机选择,使得选择的m个点均为内点,这样有利于在循环的过程中,至少有一次能取得拟合位姿估计的最佳值。因此,迭代次数α应该满足以下条件:
其中,m为子集的大小,即,子集中匹配特征点的数量;置信度一般设置在0.95~0.99的范围内。ε为内点率,在一般情况下,ε通常是未知的,因此可以取最坏条件下内点的比例,或者在初始状态下设置为最坏条件下的比例,然后随着迭代次数,不断更新为当前最大的内点率。
3)子集全部是内点的概率满足要求设定的置信度的要求,具体为,将选取的子集看作为“全部是内点”或“不全部是内点”这两种结果的二项分布,而前者的概率为p=1/εm。对于p足够小的情况下,可以将其看作为一种泊松分布,因此,在i次循环中,有θ个“子集全部是内点”的概率可以表达为:
其中,λ表示在i次循环中,“子集全都是内点”的选取次数的期望。
例如,希望在这i次迭代循环中所选子集“没有一个全是内点”的概率小于某个置信度,即:p(0,λ)=e-λ<1-η,以置信度为95%为例,λ约等于3,表示在95%置信度下,在i次循环中,平均可以选到3次“好”的子集。
步骤207,反复执行步骤206,直至候选地图集合中的每个候选地图范围都分别确定了最佳匹配特征点集合。
步骤208,判断最佳匹配特征点集合是否满足用于位姿解算的条件,
如果是,则说明重定位成功,进行当前帧的位姿计算,
否则,则当前帧定位失败,说明重定位失败。
在该步骤中,当由于多个候选地图范围使得最佳匹配特征点集合有多个时,需要通过确定唯一的最佳匹配特征点集合,以便基于当前帧与多个候选地图范围的匹配情况来判断是否有某一候选地图范围可以满足匹配成功的条件。具体是:
根据最佳匹配特征点集合中的匹配特征点数量,也就是根据内点数量,对各个最佳匹配特征点集合赋予衡量当前帧与候选地图范围匹配程度的权值;该权值还可以根据当前帧特征点提取数量,特征点分布情况,匹配特征点初始数量与最佳匹配特征点集合中的匹配特征点数量(筛选得到的内点数量)之一或其任意组合,来确定权值。
根据设定的权值阈值和最大权值,确定唯一最佳匹配特征点集合,从而判定最佳匹配特征点集合满足用于位姿解算的条件;例如,采用权值阈值与唯一最大权值相结合,即:筛选出最大权值大于权值阈值的最佳匹配特征点集合,然后按照最大权值与次大权值差异最大的原则,例如,最大权值与次大权值的差值最大,或者,最大权值与次大权值的比值最大,从筛选出的最佳匹配特征点集合中选择唯一的最佳匹配特征点集合。
在重定位成功计算当前帧位姿时,由于最佳匹配特征点集合是通过参考帧来确定的,存在较大误差的概率较高,较佳地,采用LM优化的方法来求解。
步骤209,对定位成功的当前帧位姿进行图优化,以对定位结果进行优化,提高定位的准确性。
定位优化的目的是使输出的定位结果更准确,平滑,提升整个系统的准确性和鲁棒性。较佳地,定位优化采用基于滑动窗口的非线性优化,优化的变量为滑动窗口内各图像帧的位姿,所述当前帧被增加至滑动窗口中,优化的约束为帧间匹配约束、和/或地图匹配约束,利用LM方法最小化帧间匹配误差和/或地图匹配误差,得到优化后的当前帧位姿。
其中,
地图匹配约束为:第一匹配地图点反投影到当前帧上的像素位置与当前帧中与该地图点匹配的第一匹配特征点的像素位置之间的误差,或者,当前帧中的第一匹配特征点投影至世界坐标系中的空间位置与该第一匹配特征点匹配的第一匹配地图点在世间坐标系中的空间位置之间的误差;所述第一匹配特征点为:当前帧中的特征点与地图中的地图点进行匹配所得到匹配成功的特征点;第一匹配地图点为:被第一匹配特征点匹配成功的地图点;
帧间匹配约束为:与第二匹配特征点匹配的第二匹配地图点反投影到当前帧的像素位置与该第二匹配地图点反投影到上一关键帧的像素位置之间的误差,或者,与第二匹配特征点匹配的第二匹配地图点反投影到当前帧的像素位置与该第二匹配地图点反投影到上一关键帧的像素位置之间的误差;所述第二匹配特征点为:当前帧第一匹配特征点中的特征点与上一关键帧中的特征点进行匹配所得到匹配成功的特征点。
参见图13所示,图13为图像坐标系下当前帧的地图匹配约束、帧间匹配约束的一种示意图。其中,第二匹配特征点是第一匹配特征点集合的子集,与第二匹配特征点匹配的第二匹配地图点是与第一匹配特征点匹配的第一匹配地图点集合的子集。第一匹配地图点反投影至当前帧的像素位置与该第一地图点匹配的第一匹配特征点的像素位置之间的误差构成地图匹配约束;第二匹配地图点反投影至当前帧的像素位置与该第二匹配地图点反投影当前帧的上一关键帧的像素位置之间的误差构成帧间匹配约束。
参见图14所示,图14为世界坐标系下当前帧的地图匹配约束、帧间匹配约束的一种示意图。其中,当前帧中的第一匹配特征点投影至世界坐标系中的空间位置与该第一匹配特征点匹配的第一匹配地图点在世间坐标系中的空间位置之间的误差构成地图匹配约束;当前帧中的第一匹配特征点投影至世界坐标系中的空间位置与当前帧的上一关键帧中与该第一匹配特征点匹配的第二匹配特征点投影至世界坐标系中的空间位置之间的误差构成帧间匹配约束。所述匹配特征点投影至世界坐标系中的空间位置按照相机模型,根据相机内参、匹配特征点的像素位置、匹配特征点所在的帧的位姿得到。
较佳地,所述第一匹配特征点为最佳匹配特征点集合中的。
在该步骤中,构建目标函数,该函数为:以当前滑动窗口中所有帧的所有第一匹配特征点的地图匹配误差之和所得到的第一结果,和/或,以当前滑动窗口中所有帧与其上一关键帧的所有第二匹配地图点的帧间匹配误差之和所得到的第二结果;
以优化的约束为帧间匹配约束和地图匹配约束为例,目标函数数学式表示为:
其中,
eik-map=pik-(K(RiXk+ti)),eijm-frame=(K(RiXm+ti))-(K(RjXm+tj))
eik-map为第一匹配地图点k反投影到当前帧i上的像素位置与当前帧i中与该地图点匹配的第一匹配特征点k的像素位置之间的误差地图匹配误差;pik为当前帧i中第一匹配特征点k的像素坐标,K为相机内参矩阵,Xk为地图中的第一匹配地图点k的三维坐标,Ri、ti为通过第一匹配特征点得到的当前帧i的位姿。
eijm-frame为第二匹配地图点m在当前帧i和上一关键帧j的反投影误差,Xm为当前帧i和上一关键帧j中的第二匹配特征点所匹配的第二匹配地图点m的三维坐标,Ri、ti为当前帧i的位姿,Rj、tj为上一关键帧j的位姿,可通过第二匹配特征点得到。
I为滑动窗口中帧的总数,K为当前帧内第一匹配特征点的总数,j为滑动窗口中各帧的上一关键帧,M为当前帧中所反投影的第二匹配地图点总数。
在目标函数中,
代入根据当前帧i的位姿、地图中的第一匹配地图点k的三维坐标、相机内参矩阵K、当前帧i中的第一匹配特征点k的像素坐标所得到的地图匹配约束,作为地图匹配约束初始值;
代入根据当前帧i的位姿、地图中第二匹配地图点m的三维坐标、上一关键帧的位姿、相机内参矩阵K所得到帧间匹配约束,作为帧间匹配约束初始值,
迭代求解使得目标函数取得最小值时的当前帧位姿,将该位姿作为当前定位结果。
进一步地,还可以赋以地图匹配约束和帧间匹配约束不同的权值,来构建所述目标函数,以进一步提高定位的准确性,该函数为:以第一权值加权当前滑动窗口中所有帧的所有第一匹配特征点的地图匹配误差之和所得到的第一结果,以及,以第二权值加权当前滑动窗口中各帧与其上一关键帧之间所有帧间的所有第二匹配地图点的帧间匹配误差之和所得到的第二结果,所累加的第一结果与第二结果之和;用数学式表示为:
其中,γ9、γ2为权值。
此外,在迭代求解当前帧位姿时,还可以将约束帧中所有各帧的位姿作为待优化的变量来进行优化。
在优化结束后,对当前滑动窗口进行优化,以进一步提高定位的准确性。具体为:
满足以下条件之一时,判定当前帧为关键帧:
当前帧中第一匹配特征点的数量小于第一数量阈值,
当前帧中第二匹配特征点的数量小于第二数量阈值;
若当前帧为非关键帧时,则在滑动窗口中删除该当前帧,
若当前帧为关键帧,则判断当前滑动窗口中帧数量是否达到设定的第一帧阈值,如果是,则删除滑动窗口中最早添加的关键帧,否则,则不删除滑动窗口中最早添加的关键帧。
本实施例基于离散地图确定候选地图范围,所候选地图范围之间无重叠,能够降低匹配计算量,根据预测位姿结合误差确定预测位姿范围,既提高了重定位的鲁棒性,又提高了重定位的效率;从多个候选地图范围中挑选出最佳匹配特征点集合,提高了当前帧的定位精度。
参见图6所示,图6为基于连续覆盖的纹理地图进行重定位的一种流程示意图。当重定位被触发时,执行如下步骤:
步骤601,根据定位成功的历史帧,追溯历史帧中最近的一帧作为参考帧,根据参考帧到当前帧的帧间运动信息,对当前帧进行位姿预测,得到预测位姿,以便利用该预测位姿确定第二候选地图范围,从而提高匹配的效率;该步骤可以与步骤201相同。
步骤602,基于预测位姿,估计出移动机器人实际可能出现的位姿范围,得到预测位姿范围。该步骤可以与步骤202相同。
步骤603,判断预测位姿范围是否超过设定的第二阈值,如果是,则说明在该预测位姿范围已不能重定位成功,则判定重定位失败,否则,执行步骤604,以确定候选地图范围,
其中,第二阈值根据匹配耗时,位姿最大偏移误差、相同纹理区域的尺寸之一或其任意组合确定。
步骤604,基于加载的地图,在预测位姿范围内根据单次匹配范围、以及具有地图点信息的地图区域,确定第二候选地图范围,得到至少包括一个第二候选地图范围的第二候选地图集合。
参见图7所示,图7为基于连续纹理地图确定候选地图范围的一种示意图,其中,灰色区域表示有纹理地图的区域,白色区域表示无纹理地图的区域,实线圈为预测位姿范围,虚线圈为单次匹配范围;在该预测位姿范围内包括两条连续纹理路径,在连续纹理路径上可以选取一单次匹配范围或多个单次匹配范围的组合作为第二候选地图范围,得到由第二候选地图范围构成的第二候选地图集合。
所应理解的是,在连续纹理路径上可以所选取的单次匹配范围的大小可以各不相同,例如图8所示,并且,各个单次匹配范围之间可以重叠,只要第二候选地图集合所确定的地图范围覆盖预测位姿范围内全部纹理地图区域即可。
步骤605,对当前帧进行图像预处理,该步骤与步骤101相同。
步骤606,提取预处理后的当前帧中的图像特征点,并基于特征点计算描述子,得到当前帧的特征点和描述子。该步骤与步骤102相同。
步骤607,对于第二候选地图集合中的每个第二候选地图范围,将当前帧中的特征点与第二候选地图范围内的地图点进行匹配,当匹配成功时,得到当前帧的第三匹配特征点,然后执行步骤608。
该步骤与步骤205相同。
步骤608,基于第三匹配特征点,采用随机抽样一致性(RANSAC)算法确定该第三匹配特征点的最佳匹配特征点集合。
该步骤与步骤206相同。
反复执行步骤608,直至候选地图集合中的每个候选地图范围都分别确定了最佳匹配特征点集合。
步骤609,判断最佳匹配特征点集合是否满足用于位姿解算的条件,
如果是,则说明重定位成功,进行当前帧的位姿计算,
否则,则当前帧定位失败,说明重定位失败。
该步骤与步骤208相同。
步骤610,对定位成功的当前帧位姿进行图优化,以对定位结果进行优化,提高定位的准确性。
该步骤与步骤209相同。
本实施例基于连续地图确定候选地图范围,所候选地图范围之间可重叠,各个候选地图范围大小不同,适应性佳,根据预测位姿结合误差确定预测位姿范围,既提高了重定位的鲁棒性,又提高了重定位的效率;从多个候选地图范围中挑选出最佳匹配特征点集合,提高了当前帧的定位精度。
在实际应用中,由于纹理地图在部分区域为离散的,在部分区域为连续的,因此,需要根据地图自适应地进行重定位。参见图9所示,图9为基于地图自适应地进行重定位的一种流程示意图。当重定位被触发时,执行如下步骤:
步骤901,根据定位成功的历史帧,追溯历史帧中最近的一帧作为参考帧,根据参考帧到当前帧的帧间运动信息,对当前帧进行位姿预测,得到预测位姿;该步骤可以与步骤601相同。
步骤902,基于预测位姿,估计出移动机器人实际可能出现的位姿范围,得到预测位姿范围。该步骤可以与步骤602相同。
步骤903,基于加载的地图,判断在当前预测位姿范围内的地图是离散覆盖的还是连续覆盖的,
若是离散覆盖的地图,则判断预测位姿范围是否超过设定的第一阈值,如果是,则说明在该预测位姿范围已不能重定位成功,则判定重定位失败,否则,在当前预测位姿范围内,根据各个离散纹理地图区域分别确定各单次匹配范围,分别根据单次匹配范围确定第三候选地图范围,得到第三候选地图集合,在该集合中,各个第三候选地图范围无重叠,但包括了当前预测位姿范围内全部纹理地图;
若是连续覆盖的地图,则判断预测位姿范围是否超过设定的第二阈值,如果是,则说明在该预测位姿范围已不能重定位成功,则判定重定位失败,否则,在当前预测位姿范围内,根据地图中地图点分布分别确定各单次匹配范围,分别根据单次匹配范围确定第三候选地图范围,在该集合中,各个第三候选地图范围可重叠,且第三候选地图集合所确定的地图范围覆盖预测位姿范围内全部纹理地图区域;
其中,第一阈值与第二阈值不同。
步骤904,对当前帧进行图像预处理,该步骤与步骤101相同;
步骤905,提取预处理后的当前帧中的图像特征点,并基于特征点计算描述子,得到当前帧的特征点和描述子。该步骤与步骤102相同。
步骤906,对于第三候选地图集合中的每个第三候选地图范围,将当前帧中的特征点与第三候选地图范围内的地图点进行匹配,当匹配成功时,得到第四匹配特征点,然后执行步骤907。
该步骤与步骤205相同。
步骤907,基于第四匹配特征点,采用随机抽样一致性(RANSAC)算法确定该第二候选地图范围的最佳匹配特征点集合。
该步骤与步骤206相同。
反复执行步骤907,直至候选地图集合中的每个候选地图范围都分别确定了最佳匹配特征点集合。
步骤908,判断最佳匹配特征点集合是否满足用于位姿解算的条件,
如果是,则说明重定位成功,进行当前帧的位姿计算,
否则,则当前帧定位失败,说明重定位失败。
该步骤与步骤208相同。
步骤909,对定位成功的当前帧位姿进行图优化,以对定位结果进行优化,提高定位的准确性。
该步骤与步骤209相同。
本实施例根据预测位姿范围内地图中地图点的覆盖情况,采用适应于当前地图的方式确定候选地图范围,进一步提高了重定位对地图的适应性,从而使得重定位的鲁棒性进一步提高。
参见图10所示,图10为本申请一段重定位的轨迹示意图。左图中灰色区域为纹理地图区域,白色区域为未建图区域,线条为移动机器人定位轨迹。右图展示了移动机器人在整个运行轨迹上的定位状态,粗实线代表定位丢失而进行重定位,细实线代表正常定位时的定位成功。
本申请重定位方法无需依赖外部的传感器设备,利用当前图像即可完重定位,相比于需要视觉与激光融合的融合方法,降低了成本和复杂度;并且,结合预测位姿、地图中地图点覆盖的情况、相同视觉地图的情况确定候选地图范围,使得该重定位方法支持局部相同纹理的情况(如地砖,地毯等)、局部无地图、地图环境变化、里程计打滑等多种情况定位失败下的重定位,并使得匹配范围准确且高效,保证了特征匹配与重定位位姿计算的精确和效率;通过预测位姿和视觉地图准确判断出当前帧能否计算出正确重定位的结果,保证能计算出的结果都是正确的,避免了假阳性的问题。
参见图11所示,图11为本申请重定位装置的一种示意图。该装置包括,
预测位姿模块,将与当前帧最近的定位成功图像帧作为参考帧,根据参考帧到当前帧的帧间相对位姿,预测当前帧的位姿,得到当前帧的预测位姿,
预测位姿范围模块,基于预测位姿,估计预测位姿范围,
候选地图确定模块,当预测位姿范围未超过设定的用于表征可成功重定位范围极限的阈值时,在预测位姿范围内,确定候选地图范围,当预测位姿范围超过设定的用于表征可成功重定位范围极限的阈值时,输出重定位失败,
定位模块,将当前帧中的特征点与候选地图范围中的地图点进行匹配,得到匹配特征点,
当匹配特征点满足用于当前帧位姿解算的条件时,根据匹配特征点计算当前帧的位姿,得到定位结果。
所述定位模块包括,
特征匹配子模块,将当前帧中的特征点与候选地图范围中的地图点进行匹配,得到匹配特征点,
最佳匹配特征点获取子模块,基于匹配特征点,采用随机抽样一致性算法确定最佳匹配特征点集合,
位姿计算子模块,基于最佳匹配特征点集合中的匹配特征点,采用LM优化的方法求解当前帧位姿;
位姿图优化子模块,对当前帧位姿进行图优化;
该装置还包括,
图像预处理模块,用于对图像进行预处理;
特征提取模块,基于当前帧,进行特征点提取,得到当前帧的特征点;
参见图12所示,图12为图像预处理模块的一种示意图。该图像预处理模块包括,
图像去畸变子模块,根据相机的畸变系数对源图像帧进行去畸变处理,得到去畸变图像,
图像滤波子模块,将去畸变图像进行图像滤波,得到背景图像,
图像差分子模块,用去畸变图像减去背景图像,得到前景图像,
图像拉伸子模块,对前景图像进行拉伸处理,得到目标图像帧。
其中,当视觉地图为纹理地图时,图像滤波子模块,图像差分子模块,图像拉伸子模块可用于增强图像纹理。
本发明还提供一种移动机器人,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器被配置执行所述计算机程序,以实现上述基于视觉地图的重定位方法的步骤。
存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
本发明实施例还提供了一种计算机可读存储介质,所述存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述基于视觉地图的重定位方法的步骤:
对于装置/网络侧设备/存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
需要说明的是,本发明所提供的数据模型训练方法的实施例,可不限于上述实施方式,数据模型可以不限于CNN模型,其他需要进行训练的数据模型均可采用。
在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
Claims (12)
1.一种基于视觉地图的重定位方法,其特征在于,该方法包括,
将与当前帧最近的定位成功图像帧作为参考帧,根据参考帧到当前帧的帧间相对位姿,预测当前帧的位姿,得到当前帧的预测位姿,
基于预测位姿,估计预测位姿范围,
当预测位姿范围未超过设定的用于表征可成功重定位范围极限的阈值时,在预测位姿范围内,确定候选地图范围,
将当前帧中的特征点与候选地图范围中的地图点进行匹配,得到匹配特征点,
当匹配特征点满足用于当前帧位姿解算的条件时,根据匹配特征点计算当前帧的位姿,得到定位结果。
2.如权利要求1所述的方法,其特征在于,所述阈值根据匹配耗时,位姿最大偏移误差、相同地图区域的尺寸之一或其任意组合确定;
所述在预测位姿范围内,确定候选地图范围,包括,
根据预测位姿范围、单次匹配范围、具有地图点信息的地图区域三者的交集,得到候选地图范围;
所述基于预测位姿,估计预测位姿范围,包括,
以预测位姿为中心,按照预测半径所形成的圆内区域,作为预测位姿范围,
其中,所述预测半径为定位失败产生的固定误差与里程计累积误差之和。
3.如权利要求2所述的方法,其特征在于,所述固定误差根据引起定位失败的原因调整;所述里程计累积误差为根据里程计误差模型逐帧积累、直到重定位成功或者预测位姿范围超过阈值时的图像帧时所有图像帧的累积误差,
所述基于预测位姿,估计预测位姿范围之后,进一步包括,
判断预测位姿范围是否超过设定的用于表征可成功重定位范围极限的阈值,
如果是,则判定重定位失败,
所述根据匹配特征点计算当前帧的位姿,得到定位结果,进一步包括,
对计算得到当前帧的位姿采用基于滑动窗口的非线性优化;优化的变量为滑动窗口内各图像帧的位姿,该滑动窗口包括当前帧,优化的约束为当前帧特征点与上一关键帧特征点之间的帧间匹配约束、和/或当前帧特征点与地图中的地图点之间的地图匹配约束,
利用最小二乘法,最小化帧间匹配误差和/或地图匹配误差,得到优化后的当前帧位姿,作为定位结果;
其中,
地图匹配约束为:第一匹配地图点反投影到当前帧上的像素位置与当前帧中与该地图点匹配的第一匹配特征点的像素位置之间的误差,或者,当前帧中的第一匹配特征点投影至世界坐标系中的空间位置与该第一匹配特征点匹配的第一匹配地图点在世间坐标系中的空间位置之间的误差;所述第一匹配特征点为:当前帧中的特征点与地图中的地图点进行匹配所得到匹配成功的特征点;第一匹配地图点为:被第一匹配特征点匹配成功的地图点;
帧间匹配约束为:当前帧中的第一匹配特征点投影至世界坐标系中的空间位置与当前帧的上一关键帧中与该第一匹配特征点匹配的第二匹配特征点投影至世界坐标系中的空间位置之间的误差,或者,与第二匹配特征点匹配的第二匹配地图点反投影到当前帧的像素位置与该第二匹配地图点反投影到上一关键帧的像素位置之间的误差。
4.如权利要求3所述的方法,其特征在于,所述根据引起定位失败的原因调整包括,对于里程计打滑而产生的定位丢失,则固定误差为第一固定误差;对于地图缺失导致的定位丢失,固定误差为第二固定误差;其中,第一固定误差大于第二固定误差;
所述判断预测位姿范围是否超过设定的用于表征可成功重定位范围极限的阈值,包括,
判断在当前预测位姿范围内的地图中的地图点是离散覆盖还是连续覆盖,
若是离散覆盖,则判断预测位姿范围是否超过设定的第一阈值;如果预测位姿范围未超过第一阈值,则基于离散覆盖地图,确定候选地图范围;
若是连续覆盖,则判断预测位姿范围是否超过设定的第二阈值,如果预测位姿范围未超过第二阈值,则基于连续覆盖地图,确定候选地图范围;
其中,第一阈值与第二阈值不相同;
所述利用最小二乘法,最小化帧间匹配误差和/或地图匹配误差,包括,
构建目标函数,该函数为:以第一权值加权当前滑动窗口中所有帧的所有第一匹配特征点的地图匹配误差之和所得到的第一结果,以及,以第二权值加权当前滑动窗口中各帧与其上一关键帧之间所有帧间的所有第二匹配地图点的帧间匹配误差之和所得到的第二结果,所累加的第一结果与第二结果之和;
以根据当前帧的位姿、第一匹配地图点的空间位置信息、相机内参、当前帧中的与第一匹配地图点匹配的第一匹配特征点的像素坐标所得到的地图匹配误差,作为地图匹配误差初始值,
以根据当前帧位姿、第二匹配地图点的空间位置信息、上一关键帧的位姿、相机内参矩阵所得到帧间匹配误差,作为帧间匹配误差初始值,
迭代求解使得目标函数取得最小值时当前帧的位姿;
所述得到优化后的当前帧位姿之后,进一步包括,
满足以下条件之一时,判定当前帧为关键帧:
当前帧中第一匹配特征点的数量小于第一数量阈值,
当前帧中第二匹配特征点的数量小于第二数量阈值;
若当前帧为非关键帧时,则在滑动窗口中删除该当前帧,
若当前帧为关键帧,则判断当前滑动窗口中帧数量是否达到设定的第一帧阈值,如果是,则删除滑动窗口中最早添加的关键帧,否则,则不删除滑动窗口中最早添加的关键帧。
5.如权利要求4所述的方法,其特征在于,所述将与当前帧最近的定位成功图像帧作为参考帧,包括,
根据定位成功的历史帧,向前追溯历史帧中与当前帧最近的一图像帧作为参考帧;
所述根据参考帧到当前帧的帧间相对位姿,预测当前帧的位姿,得到当前帧的预测位姿,包括,
第一方式:通过轮式里程计或惯性测量元件获得上一帧到当前帧的帧间位姿变换,基于帧间位姿变换、以及上一帧的定位结果,求得当前帧的预测位姿;
或者
第二方式:通过视觉里程计获得上一帧到当前帧的帧间位姿变换,基于帧间位姿变换、以及上一帧的定位结果,求得当前帧的预测位姿;
或者
第三方式:根据已获得定位结果的历史帧,预测上一帧到当前帧的帧间位姿变换,基于帧间位姿变换、以及上一帧的定位结果,求得当前帧的预测位姿;
或者,
第四方式:至少采用第一方式、第二方式、第三方式中的两方式,分别求得当前帧的第一预测位姿,得到至少两个第一预测位姿;
采用卡尔曼滤波器对所述至少两个第一预测位姿进行滤波,得到滤波后的第二预测位姿,将第二预测位姿作为当前帧最终的预测位姿;或者,采用非线性优化的方法,基于所述至少两个第一预测位姿进行优化,得到优化后的第二预测位姿,将第二预测位姿作为当前帧最终的预测位姿;
其中,非线性优化的目标函数为根据各个方式所得到的各个误差项之和,将上一帧的位姿、不同方式所得到的当前帧j的第一预测位姿、以及帧间位姿变换作为初始值,代入目标函数,求解使得目标函数取得最小值时的位姿,作为第二预测位姿。
6.如权利要求2所述的方法,其特征在于,所述地图为地图点离散覆盖地图,
所述根据预测位姿范围、单次匹配范围、具有地图点信息的地图区域三者的交集,得到候选地图范围,包括,
在预测位姿范围内,根据各个离散覆盖地图区域分别确定各单次匹配范围,分别根据单次匹配范围确定各第一候选地图范围,得到由各个第一候选地图范围构成的第一候选地图集合,所述各个第一候选地图范围无重叠。
7.如权利要求2所述的方法,其特征在于,所述地图为地图点连续覆盖地图,
所述根据预测位姿范围、单次匹配范围、具有地图点信息的地图区域三者的交集,得到候选地图范围,包括,
在预测位姿范围内,根据地图中地图点分布分别确定各单次匹配范围,分别根据单次匹配范围确定各第二候选地图范围,得到由各个第二候选地图范围构成的第二候选地图集合;其中,各个第二候选地图范围重叠或不重叠,第二候选地图集合所确定的地图范围覆盖预测位姿范围内具有地图点的全部地图区域。
8.如权利要求4所述的方法,其特征在于,所述基于离散覆盖地图,确定候选地图范围,包括,
在当前预测位姿范围内,根据各个离散覆盖地图区域分别确定各单次匹配范围,分别根据单次匹配范围确定各第三候选地图范围,得到由各个第三候选地图范围构成的第三候选地图集合,所述各个第三候选地图范围无重叠;
所述基于连续覆盖地图,确定候选地图范围,包括,
在预测位姿范围内,根据地图中地图点分布分别确定各单次匹配范围,分别根据单次匹配范围确定各第三候选地图范围,得到由各个第三候选地图范围构成的第三候选地图集合;其中,各个第三候选地图范围重叠或不重叠,第三候选地图集合所确定的地图范围覆盖预测位姿范围内具有地图点的全部地图区域。
9.如权利要求6至8任一所述的方法,其特征在于,所述将当前帧中的特征点与候选地图范围中的地图点进行匹配,得到匹配特征点,包括,
对于候选地图集合中的每个候选地图范围,将当前帧中的特征点与该候选地图范围中的地图点进行匹配,得到该候选地图范围的匹配特征点,
所述得到匹配特征点之后,进一步包括,
基于该候选地图范围的匹配特征点,采用随机抽样一致性算法确定该候选地图范围的最佳匹配特征点集合,
反复执行,直至候选地图集合中的每个候选地图范围的最佳匹配特征点都被确定;
判断最佳匹配特征点集合是否满足用于位姿解算的条件,当匹配特征点不满足用于当前帧位姿解算的条件时,判定当前帧定位失败;
该方法进一步包括,
对当前帧进行图像预处理,基于预处理后的当前帧进行特征提取。
10.如权利要求9所述的方法,其特征在于,所述基于该候选地图范围的匹配特征点,采用随机抽样一致性算法确定最佳匹配特征点集合,包括,
从该候选地图范围内的匹配特征点所构成的匹配特征点集合中,随机选择用于计算当前帧位姿估计的匹配特征点,得到当前匹配特征点子集;
基于匹配特征点子集中的匹配特征点所建立的空间位置信息与像素位置信息的映射,计算当前位姿,得到该匹配特征点子集的拟合位姿估计,
根据拟合位姿估计以及相机内参,获取当前帧中所有的特征点的空间位置,得到所有特征点的投影点空间位置;
对于匹配特征点集合中的每个匹配特征点,根据该匹配特征点的投影点空间位置,判断当前帧中该匹配特征点的投影点与地图中该匹配特征点的距离是否小于设定的第二距离阈值,如果是,则判定该匹配特征点为内点;反复执行所述判断当前帧中该匹配特征点的投影点与地图中该匹配特征点的距离是否小于设定的第二距离阈值的步骤,直至匹配特征点集合中所有匹配特征点都被进行了内点的判定;
统计当前内点数量,判断当前统计的内点数量是否为历次所统计内点数量中的最大,如果是,则将当前内点所构成的集合作为当前最佳匹配特征点集合;
判断是否达到结束条件,如果是,则将当前最佳匹配特征点集合作为最终的最佳匹配特征点集合,否则,返回所述从匹配特征点所构成的匹配特征点集合中随机选择用于计算当前帧位姿估计的匹配特征点的步骤;
所述判断最佳匹配特征点集合是否满足用于位姿解算的条件,包括,
根据匹配特征点的数量判断最佳匹配特征点集合是否满足用于位姿解算的条件;
或者,
对至少两个以上最佳匹配特征点集合分别赋予衡量当前帧与候选地图范围匹配程度的权值;所述权值根据最佳匹配特征点集合中的匹配特征点数量、当前帧特征点提取数量、特征点分布情况、匹配特征点初始数量与最佳匹配特征点集合中的匹配特征点数量之一或其任意组合确定,
根据设定的权值阈值和最大权值,判断最佳匹配特征点集合是否满足用于位姿解算的条件。
11.一种基于视觉地图的重定位装置,其特征在于,该装置包括,
预测位姿模块,将与当前帧最近的定位成功图像帧作为参考帧,根据参考帧到当前帧的帧间相对位姿,预测当前帧的位姿,得到当前帧的预测位姿,
预测位姿范围模块,基于预测位姿,估计预测位姿范围,
候选地图确定模块,当预测位姿范围未超过设定的用于表征可成功重定位范围极限的阈值时,在预测位姿范围内,确定候选地图范围,
定位模块,将当前帧中的特征点与候选地图范围中的地图点进行匹配,得到匹配特征点,
当匹配特征点满足用于当前帧位姿解算的条件时,根据匹配特征点计算当前帧的位姿,得到定位结果。
12.一种计算机可读存储介质,其特征在于,所述存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至10任一所述基于视觉地图的重定位方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010620104.8A CN111750864B (zh) | 2020-06-30 | 2020-06-30 | 一种基于视觉地图的重定位方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010620104.8A CN111750864B (zh) | 2020-06-30 | 2020-06-30 | 一种基于视觉地图的重定位方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111750864A true CN111750864A (zh) | 2020-10-09 |
CN111750864B CN111750864B (zh) | 2022-05-13 |
Family
ID=72678694
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010620104.8A Active CN111750864B (zh) | 2020-06-30 | 2020-06-30 | 一种基于视觉地图的重定位方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111750864B (zh) |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112258546A (zh) * | 2020-10-18 | 2021-01-22 | 东南大学 | 一种slam系统的关键帧选取方法 |
CN112710299A (zh) * | 2020-12-04 | 2021-04-27 | 深圳市优必选科技股份有限公司 | 一种重定位方法、装置、终端设备及存储介质 |
CN112734841A (zh) * | 2020-12-31 | 2021-04-30 | 华南理工大学 | 一种用轮式里程计-imu和单目相机实现定位的方法 |
CN112990003A (zh) * | 2021-03-11 | 2021-06-18 | 深圳市无限动力发展有限公司 | 图像序列重定位判断方法、装置和计算机设备 |
CN113239072A (zh) * | 2021-04-27 | 2021-08-10 | 华为技术有限公司 | 一种终端设备定位方法及其相关设备 |
CN113269831A (zh) * | 2021-05-19 | 2021-08-17 | 北京能创科技有限公司 | 基于场景坐标回归网络的视觉重定位方法、系统、装置 |
CN113409388A (zh) * | 2021-05-18 | 2021-09-17 | 深圳市乐纯动力机器人有限公司 | 扫地机位姿确定方法、装置、计算机设备和存储介质 |
CN113607160A (zh) * | 2021-08-24 | 2021-11-05 | 湖南国科微电子股份有限公司 | 视觉定位恢复方法、装置、机器人和可读存储介质 |
CN113740864A (zh) * | 2021-08-24 | 2021-12-03 | 上海宇航系统工程研究所 | 基于激光三维点云的探测器软着陆末段自主位姿估计方法 |
WO2022002039A1 (zh) * | 2020-06-30 | 2022-01-06 | 杭州海康机器人技术有限公司 | 一种基于视觉地图的视觉定位方法、装置 |
CN114623817A (zh) * | 2022-02-21 | 2022-06-14 | 武汉大学 | 基于关键帧滑窗滤波的含自标定的视觉惯性里程计方法 |
CN116258769A (zh) * | 2023-05-06 | 2023-06-13 | 亿咖通(湖北)技术有限公司 | 一种定位校验方法、装置、电子设备和存储介质 |
CN116704037A (zh) * | 2023-08-08 | 2023-09-05 | 南京遇简信息科技有限公司 | 一种基于图像处理技术的卫星失锁重定位方法及系统 |
CN117152245A (zh) * | 2023-01-31 | 2023-12-01 | 荣耀终端有限公司 | 位姿计算方法和装置 |
CN117671397A (zh) * | 2023-12-08 | 2024-03-08 | 广东技术师范大学 | 基于双任务学习和位姿图优化的视觉重定位方法及系统 |
CN117671397B (zh) * | 2023-12-08 | 2024-06-04 | 广东技术师范大学 | 基于双任务学习和位姿图优化的视觉重定位方法及系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105856230A (zh) * | 2016-05-06 | 2016-08-17 | 简燕梅 | 一种可提高机器人位姿一致性的orb关键帧闭环检测slam方法 |
US20180306587A1 (en) * | 2017-04-21 | 2018-10-25 | X Development Llc | Methods and Systems for Map Generation and Alignment |
CN110070580A (zh) * | 2019-03-29 | 2019-07-30 | 南京华捷艾米软件科技有限公司 | 基于局部关键帧匹配的slam快速重定位方法及图像处理装置 |
WO2020000395A1 (en) * | 2018-06-29 | 2020-01-02 | Baidu.Com Times Technology (Beijing) Co., Ltd. | Systems and methods for robust self-relocalization in pre-built visual map |
US20200005487A1 (en) * | 2018-06-28 | 2020-01-02 | Ubtech Robotics Corp Ltd | Positioning method and robot using the same |
CN111144349A (zh) * | 2019-12-30 | 2020-05-12 | 中国电子科技集团公司信息科学研究院 | 一种室内视觉重定位方法及系统 |
-
2020
- 2020-06-30 CN CN202010620104.8A patent/CN111750864B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105856230A (zh) * | 2016-05-06 | 2016-08-17 | 简燕梅 | 一种可提高机器人位姿一致性的orb关键帧闭环检测slam方法 |
US20180306587A1 (en) * | 2017-04-21 | 2018-10-25 | X Development Llc | Methods and Systems for Map Generation and Alignment |
US20200005487A1 (en) * | 2018-06-28 | 2020-01-02 | Ubtech Robotics Corp Ltd | Positioning method and robot using the same |
WO2020000395A1 (en) * | 2018-06-29 | 2020-01-02 | Baidu.Com Times Technology (Beijing) Co., Ltd. | Systems and methods for robust self-relocalization in pre-built visual map |
CN110070580A (zh) * | 2019-03-29 | 2019-07-30 | 南京华捷艾米软件科技有限公司 | 基于局部关键帧匹配的slam快速重定位方法及图像处理装置 |
CN111144349A (zh) * | 2019-12-30 | 2020-05-12 | 中国电子科技集团公司信息科学研究院 | 一种室内视觉重定位方法及系统 |
Non-Patent Citations (1)
Title |
---|
刘伟等: "基于随机蕨丛的3D-SLAM重定位方法", 《北京信息科技大学学报(自然科学版)》 * |
Cited By (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022002039A1 (zh) * | 2020-06-30 | 2022-01-06 | 杭州海康机器人技术有限公司 | 一种基于视觉地图的视觉定位方法、装置 |
CN112258546A (zh) * | 2020-10-18 | 2021-01-22 | 东南大学 | 一种slam系统的关键帧选取方法 |
CN112710299A (zh) * | 2020-12-04 | 2021-04-27 | 深圳市优必选科技股份有限公司 | 一种重定位方法、装置、终端设备及存储介质 |
CN112710299B (zh) * | 2020-12-04 | 2024-05-17 | 深圳市优必选科技股份有限公司 | 一种重定位方法、装置、终端设备及存储介质 |
CN112734841A (zh) * | 2020-12-31 | 2021-04-30 | 华南理工大学 | 一种用轮式里程计-imu和单目相机实现定位的方法 |
CN112990003A (zh) * | 2021-03-11 | 2021-06-18 | 深圳市无限动力发展有限公司 | 图像序列重定位判断方法、装置和计算机设备 |
CN112990003B (zh) * | 2021-03-11 | 2023-05-19 | 深圳市无限动力发展有限公司 | 图像序列重定位判断方法、装置和计算机设备 |
CN113239072A (zh) * | 2021-04-27 | 2021-08-10 | 华为技术有限公司 | 一种终端设备定位方法及其相关设备 |
CN113409388A (zh) * | 2021-05-18 | 2021-09-17 | 深圳市乐纯动力机器人有限公司 | 扫地机位姿确定方法、装置、计算机设备和存储介质 |
CN113269831A (zh) * | 2021-05-19 | 2021-08-17 | 北京能创科技有限公司 | 基于场景坐标回归网络的视觉重定位方法、系统、装置 |
CN113269831B (zh) * | 2021-05-19 | 2021-11-16 | 北京能创科技有限公司 | 基于场景坐标回归网络的视觉重定位方法、系统、装置 |
CN113607160B (zh) * | 2021-08-24 | 2023-10-31 | 湖南国科微电子股份有限公司 | 视觉定位恢复方法、装置、机器人和可读存储介质 |
CN113740864B (zh) * | 2021-08-24 | 2023-06-09 | 上海宇航系统工程研究所 | 基于激光三维点云的探测器软着陆末段自主位姿估计方法 |
CN113740864A (zh) * | 2021-08-24 | 2021-12-03 | 上海宇航系统工程研究所 | 基于激光三维点云的探测器软着陆末段自主位姿估计方法 |
CN113607160A (zh) * | 2021-08-24 | 2021-11-05 | 湖南国科微电子股份有限公司 | 视觉定位恢复方法、装置、机器人和可读存储介质 |
CN114623817A (zh) * | 2022-02-21 | 2022-06-14 | 武汉大学 | 基于关键帧滑窗滤波的含自标定的视觉惯性里程计方法 |
CN114623817B (zh) * | 2022-02-21 | 2024-04-26 | 武汉大学 | 基于关键帧滑窗滤波的含自标定的视觉惯性里程计方法 |
CN117152245A (zh) * | 2023-01-31 | 2023-12-01 | 荣耀终端有限公司 | 位姿计算方法和装置 |
CN116258769A (zh) * | 2023-05-06 | 2023-06-13 | 亿咖通(湖北)技术有限公司 | 一种定位校验方法、装置、电子设备和存储介质 |
CN116704037A (zh) * | 2023-08-08 | 2023-09-05 | 南京遇简信息科技有限公司 | 一种基于图像处理技术的卫星失锁重定位方法及系统 |
CN116704037B (zh) * | 2023-08-08 | 2024-01-05 | 南京遇简信息科技有限公司 | 一种基于图像处理技术的卫星失锁重定位方法及系统 |
CN117671397A (zh) * | 2023-12-08 | 2024-03-08 | 广东技术师范大学 | 基于双任务学习和位姿图优化的视觉重定位方法及系统 |
CN117671397B (zh) * | 2023-12-08 | 2024-06-04 | 广东技术师范大学 | 基于双任务学习和位姿图优化的视觉重定位方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN111750864B (zh) | 2022-05-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111750864B (zh) | 一种基于视觉地图的重定位方法和装置 | |
CN111780763B (zh) | 一种基于视觉地图的视觉定位方法、装置 | |
CN111780764B (zh) | 一种基于视觉地图的视觉定位方法、装置 | |
CN106940704B (zh) | 一种基于栅格地图的定位方法及装置 | |
JP4974975B2 (ja) | 画像において物体の位置を特定する方法及びシステム | |
CN111161349B (zh) | 物体姿态估计方法、装置与设备 | |
US20190026943A1 (en) | Dense visual slam with probabilistic surfel map | |
US11941831B2 (en) | Depth estimation | |
CN109934847B (zh) | 弱纹理三维物体姿态估计的方法和装置 | |
US20090190798A1 (en) | System and method for real-time object recognition and pose estimation using in-situ monitoring | |
JP2006260527A (ja) | 画像マッチング方法およびこれを用いた画像補間方法 | |
CN109919971B (zh) | 图像处理方法、装置、电子设备及计算机可读存储介质 | |
JP2010238226A (ja) | 物体を追跡するための方法及びシステム | |
JPWO2011086889A1 (ja) | 特徴点選択システム、特徴点選択方法および特徴点選択プログラム | |
CN110838122B (zh) | 点云的分割方法、装置及计算机存储介质 | |
KR20220062324A (ko) | 이미지 처리를 사용하는 장면 표현 | |
JP5674550B2 (ja) | 状態追跡装置、方法、及びプログラム | |
CN113673400A (zh) | 基于深度学习的实景三维语义重建方法、装置及存储介质 | |
CN113052907A (zh) | 一种动态环境移动机器人的定位方法 | |
CN111531546B (zh) | 一种机器人位姿估计方法、装置、设备及存储介质 | |
CN117726747A (zh) | 补全弱纹理场景的三维重建方法、装置、存储介质和设备 | |
JP5978996B2 (ja) | 物体領域抽出装置、方法、及び、プログラム | |
CN113658274B (zh) | 用于灵长类动物种群行为分析的个体间距自动计算方法 | |
US11915449B2 (en) | Method and apparatus for estimating user pose using three-dimensional virtual space model | |
CN117136382A (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 | ||
CP01 | Change in the name or title of a patent holder |
Address after: 310051 room 304, B / F, building 2, 399 Danfeng Road, Binjiang District, Hangzhou City, Zhejiang Province Patentee after: Hangzhou Hikvision Robot Co.,Ltd. Address before: 310051 room 304, B / F, building 2, 399 Danfeng Road, Binjiang District, Hangzhou City, Zhejiang Province Patentee before: HANGZHOU HIKROBOT TECHNOLOGY Co.,Ltd. |
|
CP01 | Change in the name or title of a patent holder |