一种室内定位局部更新地图的方法与流程

    专利2025-04-10  21


    本发明涉及机器人重定位,具体涉及一种室内slam局部更新地图的方法。


    背景技术:

    1、在室内无人控制系统、移动机器人系统中,slam框架包括定位和构图,如果把两者分别进行,长期使用后会发生无法适应地图变化的问题,导致定位精度下降,使得slam失去本身的意义;本方法说明了一个适合长期运行的定位(slam)框架,实现在不同时段内,对已构建完成的地图进行任意局部区域再次更新的功能。

    2、现阶段主要流行的定位框架有两种,分别是基于滤波器的框架和基于优化的框架;基于滤波器框架的定位开源技术,比如有基于粒子滤波(ekf)的定位技术,基于优化的定位开源技术,比如有基于非线性优化(ceres、g2o等)的ros系统支持的2d和3d slam库(cartographer)框架。

    3、目前ros系统支持的2d和3d slam库是少有的基于优化的开源激光slam,因为通常的扫描到扫描(scan-to-scan)激光匹配方法会累计误差,所以它引入了子图(submap)这一概念,将原来的扫描到扫描匹配变成了扫描到地图(scan-to-map)匹配,就是激光先和子图(submap)进行匹配。

    4、每次得到一帧激光扫描(scan)数据之后,ros系统支持的2d和3d slam库将其与最近的子图去进行匹配,找到一个最优的位姿,将扫描插入到子图中,因为在一个较短的时间内,这个匹配过程不会累加什么误差;当子图完成之后,便不会再有任何激光数据插入其中,它就是一个独立的已经完成了子地图,它只参与闭环的匹配了;接下来的工作类似于拼图过程,我们通过调整每个子图的位姿,使所有的子图之间互相重叠的部分(即约束)误差最小,这个过程称为回环检测。

    5、原生ros系统支持的2d和3d slam库如果用于长期运行定位,由于存储的子图固定无变化,而实际场景随着时间推移肯定存在相应的变化,会存在如下几个问题:1.原地图会发生形变,导致原本部署的储位坐标相对应地发生改变,无法行驶到理想的目的地;2. 动态环境变化过大导致回环检测失败,更新的地图质量比原本的更差;3. 由于调用的算法库的非线性优化方法,在计算残差时会受到前一次结果的影响,在重新计算概率栅格时,会出现概率偏移,导致ros系统支持的2d和3d slam库无法保证新生成的子图是符合实际环境的。


    技术实现思路

    1、本发明的目的在于提供一种室内定位局部更新地图的方法,其可以有效解决背景技术中所提到的技术问题。

    2、为实现上述目的,本发明提供如下技术方案:

    3、一种室内定位局部更新地图的方法,包括以下步骤:

    4、s1、接收传感器传递的数据,进行局部定位,其中,传感器包括激光雷达、定位导航系统和里程计;

    5、s11、利用里程计和惯性导航系统进行轨迹推算,给出小车位姿估计值;

    6、s111、要对输入的传感器数据进行检测,令当前各传感器的时间戳进行时间同步,以惯性导航系统(imu数据)时间为主,同步里程计和激光雷达数据的时间戳,保证各传感器提供的数据在同一时间标准范围内;

    7、s112、要记录组合定位导航系统、里程计的变化值,通过变化值推演出当前时间戳的机器人位姿,对比上一时刻的位姿的相对估计位置;

    8、s12、将位姿估计值作为初值,首先得到初值后进行激光雷达数据的帧间匹配,然后将位姿估计初值与雷达对应地图输出的坐标进行非线性最小二乘法,并更新位姿估计器的值;

    9、s13、一帧帧数据经过运动滤波后,进行叠加,形成子图;

    10、经过位姿估计器的激光数据被不断累加存储,先存储至活动子图的对象中,然后直到满足数据上线条件后,结束子图构建,同时将当前子图与地图上保存下来的子图列表发送给后端全图定位部分;

    11、s2、全图定位

    12、在进行完局部定位给出一组完成状态的子图后,全图定位首先会获取加载地图内状态为冻结的子图列表和轨迹队列,利用回环检测,将当前活跃的子地图集合里面的完成子图对冻结的子图列表进行暴力搜索匹配,找到完成子图对应位置的冻结子图后,在后端优化时,栅格地图图优化的过程中,图优化在进行特征点匹配后进行迭代的优化最优变换位姿时,清除掉加载的建图轨迹信息保存与加载地图中的残差概率,重新调用经过位姿估计器的激光位姿,对完成子图进行地图扫描匹配过程,匹配结果概率大于55%,则判断执行当前活跃的子地图集合里面的完成子图,替换加载地图中的与之配对的冻结子图,实现新局部子图替换掉地图原有的旧局部子图的过程。

    13、优选的,在步骤s11中,控制机器人运动到相应位置,在运动过程中,机器人依靠自身安装于机器人底盘并且可以记录机器人车轮转动弧度的里程计来获取信息并进行位姿预测,同时其利用传感器数据来获取环境信息并进行相应的处理,并提取其特征值。

    14、优选的,在步骤s112中,推演出当前时间戳的机器人位姿的步骤包括:

    15、s1121、初始化:初始化机器人的位姿,通过外部定位系统提供的初始位姿来完成;

    16、s1122、时间戳同步:确保惯性导航系统(imu)和里程计的数据流具有相同的时间戳:

    17、s1123、数据预处理:对惯性导航系统(imu)和里程计的数据进行预处理,包括去除噪声、校正因传感器误差引起的漂移;

    18、s1124、 积分惯性导航系统(imu)数据:使用惯性导航系统(imu)的角速度和加速度数据,通过积分计算机器人在局部坐标系下的位姿变化;

    19、s1125、 积分里程计数据:使用里程计的里程计数据,通过积分计算机器人在全局坐标系下的位移;其中,里程计数据包括记录机器人在一段时间内的运动状态,是基于时间戳的数据帧,该数据帧包含机器人位置、姿态及运动速度、角速度;

    20、s1126、 融合位姿信息:将通过积分惯性导航系统(imu)积分得到的局部坐标系下的位姿和通过里程计积分得到的全局坐标系下的位姿进行融合;

    21、s1127、 更新位姿:根据融合后的位姿信息,更新机器人的当前位姿;

    22、s1128、 重复:不断重复上述步骤,随着时间推移,实时更新机器人的位姿。

    23、优选的,在s12中,进行激光雷达数据的帧间匹配需要满足以下条件:s121)坐标系的一致性:确保位姿估计值和雷达数据在同一坐标系中;s122)位姿估计的精度:位姿估计值的精度直接影响到初值对匹配过程的影响;s123) 动态环境的处理:位姿估计值应该尽量与动态物体的运动保持同步,以减小误差;s124) 数据的时间戳同步:确保位姿估计值和雷达数据具有相同的时间戳:s125)姿态的一致性:如果位姿估计值包含姿态信息,确保姿态的一致性;s126) 初始搜索空间的设置:在进行雷达数据匹配时,使用位姿估计值来设置初始搜索空间,以减小搜索的范围,提高匹配速度,同时要确保搜索空间足够大,以容纳可能的位置偏差;s127)匹配算法的选择;s128)实时性和稳定性的平衡:在选择匹配算法时,需要平衡实时性和稳定性;s129)误差处理。

    24、优选的,步骤s2包括:s21、更新之前进行加载地图;s22、进行暴力匹配搜索过程;s23、进行图优化过程;s24、优化完成后更新保存地图。

    25、优选的,在步骤s24中,将子图列表保存之前还需要删除所有以前为完成的子图,再次回环检测将冻结子图和当前活跃的子地图集合里面的完成子图配对,然后用新扫描的地图替换旧地图,替换完旧地图后,启动自动更新地图进行地图保存。

    26、优选的,在步骤s21中,加载地图包括:s211、文件读取:使用文件读取函数从地图数据文件中读取内容,将结果存储在变量列表中;s212、数据解析:使用数据解析函数将文本数据解析为计算机能够理解的数据结构,结果存储在变量图谱数据中;s213、数据结构定义:使用创建数组函数,根据解析后的数据结构定义,构建适当的数据结构,结果存储在变量函数中;s214、数值转换:使用数值转换函数,将文本中的字符或字符串转换为数值,更新函数;s215、异常处理:使用异常处理机制,尝试执行文件读取操作,捕获文件不存在的异常,并处理其他可能发生的异常。

    27、与现有技术相比,本发明的有益效果是:

    28、本发明的局部地图更新就是专门针对半动态物品目标在地图中的更新实时性提高: 通过局部地图的实时更新,系统能够更快地适应环境变化,提高对动态环境的实时感知能力;定位准确性提升:结合定位算法和传感器融合,机器人在环境中的定位精度得到提升,有助于室内导航和路径规划;环境适应性增强:通过对惯性导航系统(imu)数据和里程计数据的有效利用,系统能够更好地适应复杂室内环境,如楼梯、走廊等;降低传感器误差影响:通过融合多传感器数据,特别是对激光雷达等高精度传感器数据的有效利用,可以减小传感器误差的影响,提高地图的精度;提高机器人导航的稳定性:对局部地图的及时更新有助于提高机器人导航的稳定性,减小在复杂环境中的路径规划问题;本发明通过融合传感器测量数据,包括距离和方向信息,实现对局部地图的实时更新,从而提高地图的准确性和实时性。


    技术特征:

    1.一种室内定位局部更新地图的方法;其特征在于:包括以下步骤:

    2.根据权利要求1所述的室内定位局部更新地图的方法,其特征在于:在步骤s11中,控制机器人运动到相应位置,在运动过程中,机器人依靠自身安装于机器人底盘并且可以记录机器人车轮转动弧度的里程计来获取信息并进行位姿预测,同时其利用传感器数据来获取环境信息并进行相应的处理,并提取其特征值。

    3.根据权利要求1所述的室内定位局部更新地图的方法,其特征在于:在步骤s112中,推演出当前时间戳的机器人位姿的步骤包括:

    4.根据权利要求1所述的室内定位局部更新地图的方法,其特征在于:在s12中,进行激光雷达数据的帧间匹配需要满足以下条件:s121)坐标系的一致性:确保位姿估计值和雷达数据在同一坐标系中;s122)位姿估计的精度:位姿估计值的精度直接影响到初值对匹配过程的影响;s123) 动态环境的处理:位姿估计值应该尽量与动态物体的运动保持同步,以减小误差;s124) 数据的时间戳同步:确保位姿估计值和雷达数据具有相同的时间戳:s125)姿态的一致性:如果位姿估计值包含姿态信息,确保姿态的一致性;s126) 初始搜索空间的设置:在进行雷达数据匹配时,使用位姿估计值来设置初始搜索空间,以减小搜索的范围,提高匹配速度,同时要确保搜索空间足够大,以容纳可能的位置偏差;s127)匹配算法的选择;s128)实时性和稳定性的平衡:在选择匹配算法时,需要平衡实时性和稳定性;s129)误差处理。

    5.根据权利要求1所述的室内定位局部更新地图的方法,其特征在于:步骤s2包括:s21、更新之前进行加载地图;s22、进行暴力匹配搜索过程;s23、进行图优化过程;s24、优化完成后更新保存地图。

    6.根据权利要求5所述的室内定位局部更新地图的方法,其特征在于:在步骤s24中,将子图列表保存之前还需要删除所有以前为完成的子图,再次回环检测将冻结子图和当前活跃的子地图集合里面的完成子图配对,然后用新扫描的地图替换旧地图,替换完旧地图后,启动自动更新地图进行地图保存。

    7.根据权利要求1所述的室内定位局部更新地图的方法,其特征在于:在步骤s21中,加载地图包括:s211、文件读取:使用文件读取函数从地图数据文件中读取内容,将结果存储在变量列表中;s212、数据解析:使用数据解析函数将文本数据解析为计算机能够理解的数据结构,结果存储在变量图谱数据中;s213、数据结构定义:使用创建数组函数,根据解析后的数据结构定义,构建适当的数据结构,结果存储在变量函数中;s214、数值转换:使用数值转换函数,将文本中的字符或字符串转换为数值,更新函数;s215、异常处理:使用异常处理机制,尝试执行文件读取操作,捕获文件不存在的异常,并处理其他可能发生的异常。


    技术总结
    一种室内定位局部更新地图的方法,包括以下步骤:S1、接收传感器传递的数据,进行局部定位,其中,传感器包括激光雷达、定位导航系统和里程计;S11、利用里程计和惯性导航系统数据进行轨迹推算,给出小车位姿估计值;经过位姿估计器的激光数据被不断累加存储,先存储至活动子图的对象中,然后直到满足数据上线条件后,结束子图构建,同时将当前子图与地图上保存下来的子图列表发送给后端全图定位部分;S2、全图定位:在进行完局部定位给出一组完成状态的子图后,全图定位首先会获取加载地图内状态为冻结的子图列表和轨迹队列,利用回环检测。本发明有效实现对局部地图的实时更新,从而提高地图的准确性和实时性。

    技术研发人员:胡招华,方靖涛,沙伟,周小华,霍盈盈,柯章俊,童琪凯
    受保护的技术使用者:北京朴津智能科技有限公司
    技术研发日:
    技术公布日:2024/4/29
    转载请注明原文地址:https://wp.8miu.com/read-85311.html

    最新回复(0)