一种基于视觉特征联合激光SLAM的重定位方法与流程

文档序号:19933234发布日期:2020-02-14 22:15阅读:2032来源:国知局
一种基于视觉特征联合激光SLAM的重定位方法与流程

本发明涉及一种基于视觉特征联合激光slam的重定位方法。



背景技术:

随着slam技术以及工业技术的快速发展,伴随着扫地机器人,服务机器人等以激光slam技术为基础的产品的面世,激光slam技术开始走向我们的生活。与之而来的是商用激光slam技术的一些缺陷的暴露,在构建地图后,激光slam再次加载已知地图,并重新定位当前位姿的能力弱。先市面上大多商家利用固定桩点的方法,使机器人每次关机之前回到同一位置,保证下次开机时机器人处于桩点位置,避开激光slam的重定位能力弱的情况。因此需要提出一种基于视觉特征联合激光slam的重定位方法,从而实现机器人已知地图的任何位置启动都能快速确定自身的位姿。

现在有激光slam难以在已知地图中实现初始定位使得机器人每次必须在同一桩点开机以保证获得正确的初始位姿。



技术实现要素:

本发明为了克服现有技术的上述缺点,提供一种基于视觉特征联合激光slam的重定位方法。

本发明解决其技术问题所采用的技术方案是:

一种基于视觉特征联合激光slam的重定位方法,包括如下步骤:

s1:使用单目相机对周围环境进行拍摄,获得大数量不同的图像,组成数据集。提取数据集中的图像的orb特征点:

提取帧图上的fast角点,针对原始fast角点,分别计算harris响应值,然后选取前n个具有最大响应值的角点。构建图像金字塔,在每层检测角点,消除其尺度不变性,计算每个角点的灰度质心,使其具有方向性。

在上述提取的fast角点中,结合灰度质心,对每个点进行计算其brief描述子,作为orb的描述子。

用k-meams++聚类算法将orb特征点分类组建成k叉树结构的字典。

s2:将激光雷达和单目相机装在同一移动机器人上,联合标定,获取相机内参,获取相机-lidar外参,获得激光雷达与单目相机的位姿的变换矩阵[r,t]。

s3:初始化构建地图,使得机器人运动,激光雷达用传统slam方法构建环境地图并计算出机器人运动轨迹∑xa,推算单目相机的运动轨迹为∑xb=[r,t]∑xa

s4:单目相机在机器人运动过程中采集图像,并筛选其中的关键帧,然后用dbow算法对关键帧进行orb特征点提取,将其加入并更新字典,同时融入位姿信息。

筛选规则如下:

(1)当前处于定位模式下,不增加关键帧;

(2)距离上一次关键帧不得设定的最小帧数;

(3)特征点超过设定的最小阈值;

(4)与上一帧关键帧共视点小于相应比例;

s5:机器人开机后相机开始采集图像,将采集到的图像提取特征点,利用已构建的字典与s4中采集的关键帧进行相似度计算,若一时无法找到回环,机器人自动旋转一个角度重新开始s5,根据相似度确定回环后,两帧进行sim3变换,从历史帧的位姿中推算当前位姿,将计算所得位姿作为初始位姿提供给激光slam作为其轨迹的初值。

与现有技术相比,本发明的有益效果表现为:

本发明一种基于视觉特征联合激光slam的重定位方法,可以有效提供装载有激光slam系统的机器人在已知地图中的初始位姿,解决了现有技术必须返回起初设定好的桩点才能正确找到位姿的缺点。当机器人遭遇定位绑架时,也可以用此方法快速进行重定位,找到机器人在已知地图中的位姿。

附图说明

图1是本发明方法的流程图;

图2是本发明自主构建的室内与相邻走廊的地图。

具体实施方式

为了使本项发明的目的、技术方案以及优点更加明确,以下结合附图,对本次发明进一步详细说明。应当理解,此次所描述实施例子仅用以解释本发明,并不用于限定本发明。

一种基于视觉特征联合激光slam的重定位方法,包括如下步骤:

s1:本次实施例使用之前拍摄的一个数据集,大约有2,900张图像,提取数据集中的图像的orb特征点:

提取帧图上的fast角点,针对原始fast角点,分别计算harris响应值,然后选取前n个具有最大响应值的角点。构建图像金字塔,在每层检测角点,消除其尺度不变性,计算每个角点的灰度质心,使其具有方向性。

在上述提取的fast角点中,结合灰度质心,对每个点进行计算其brief描述子,作为orb的描述子。

用k-meams++聚类算法将orb特征点分类组建成k叉树结构的字典,字典长度为10,深度为5。

s2:将激光雷达和单目相机装在同一移动机器人上,联合标定,获取相机内参,获取相机-lidar外参,获得激光雷达与单目相机的位姿的变换矩阵[r,t]。

s3:初始化构建地图,使得机器人运动,激光雷达用传统slam方法构建环境地图并计算出机器人运动轨迹∑xa,推算单目相机的运动轨迹为∑xb=[r,t]∑xa,构建的地图如图2所示。

s4:单目相机在机器人运动过程中采集图像,并筛选其中的关键帧,然后用dbow算法对关键帧进行orb特征点提取,将其加入并更新字典,同时融入位姿信息。

筛选规则如下:

(1)当前处于定位模式下,不增加关键帧;

(2)距离上一次关键帧不得设定的最小帧数;

(3)特征点超过设定的最小阈值;

(4)与上一帧关键帧共视点小于相应比例;

s5:机器人开机后相机开始采集图像,将采集到的图像提取特征点,利用已构建的字典与s4中采集的关键帧进行相似度计算,若一时无法找到回环,机器人自动旋转一个角度重新开始s5,确定回环后,两帧进行sim3变换,从历史帧的位姿中推算当前位姿,将计算所得位姿作为初始位姿提供给激光slam作为其轨迹的初值。

我们尝试将机器人方式在之前构建的地图中不同的位置(9.780,2.360)、(9.580,-14.160)、(1.540,-2.280)关机后开机,查看机器人是否能成功找到自身的位姿,结果均表明机器人能成功找到当前位姿,然后开始在已知地图上开始正常工作。

本说明书实施例所述的内容仅仅是对发明构思的实现形式的列举,本发明的保护范围不应当被视为仅限于实施例所陈述的具体形式,本发明的保护范围也及于本领域技术人员根据本发明构思所能够想到的等同技术手段。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1