SLAM回环及优化

缺乏、安全感 2022-09-05 12:52 269阅读 0赞

0. 前言

随着路径的不断延伸,机器人的建图过程会存在不断地累计误差。而传统的以gmapping为代表的使用粒子滤波进行定位的slam建图方式。以及ORB-SLAM为代表包含的局部优化和全局优化来调整外。但是这些处理方式只能减缓误差累计的程度,无法消除,而现在最为常用消除累计误差的方法就是利用回环检测来优化位姿。

当新的关键帧加入到优化模型时,在关键帧附近进行一次局部优化
在这里插入图片描述
全局优化中,所有的关键帧(除了第一帧)和三维点都参与优化。
在这里插入图片描述

1. 回环检测

回环检测作为近年来slam行业必备的部分,是指机器人识别曾到达某场景,使得地图闭环的能力。
在这里插入图片描述
回环检测之所以能成为一个难点,是因为:如果回环检测成功,可以显著地减小累积误差,帮助机器人更精准、快速的进行避障导航工作。而错误的检测结果可能使地图变得很糟糕。因此,回环检测在大面积、大场景地图构建上是非常有必要的 。

词袋模型(bag of words,BoW)早期是一种文本表征方法,后引入到计算机视觉领域,逐渐成为一种很有效的图像特征建模方法。它通过提取图像特征,再将特征进行分类构建视觉字典,然后采用视觉字典中的单词集合可以表征任一幅图像。换句话说,通过BOW可以把一张图片表示成一个向量。这对判断图像间的关联很有帮助,所以目前比较流行的回环解决方案都是采用的BoW及其基础上衍生的算法IAB-MAPFAB-MAP是在滤波框架下计算回环概率,RTAB-MAP采用关键帧比较相似性,DLoopDetector(在DBoW2基础上开发的回环检测库)采用连续帧的相似性检测判断是否存在回环。回环检测主要由BoW模块、算法模块、验证模块三部分组成

词袋模型(BoW模块)

每一帧都可以用单词来描述,也就是这一帧中有哪些单词,这里只关心了有没有,而不必关心具体在哪里。只有两帧中单词种类相近才可能构成回环。

(a)图像预处理,假设训练集有 M M M幅图像,将图像标准化为 p a t c h patch patch,统一格式和规格;
(b)特征提取,假设 M M M幅图像,对每一幅图像提取特征,共提取出 N N N个SIFT特征;
(c)特征聚类,采用K-means算法把 N N N个对象分为 K K K个簇 (视觉单词表),使簇内具有较高的相似度,而簇间相似度较低;
在这里插入图片描述
(d)统计得到图像的码本,每幅图像以单词表为规范对该幅图像的每一个SIFT特征点计算它与单词表中每个单词的距 离,最近的加1,便得到该幅图像的码本;还需要码本矢量归一化,因为每一幅图像的SIFT特征个数不定,所以需要归一化。
在这里插入图片描述

…详情请参照古月居

发表评论

表情:
评论列表 (有 0 条评论,269人围观)

还没有评论,来说两句吧...

相关阅读

    相关 串口测试(本地

    不借助应用程序,仅使用系统命令,对串口收发功能进行测试。 1. 将开发板对应的rx和tx回环短接 2. devs查看系统中识别到的串口号 3. 如果识别查看设备名称,例

    相关 整理汇总

    1,内环和外环 报文数据发向某设备模块的就是表示该设备模块内环 报文数据从该设备发出就是表示该设备模块外环, 2,芯片环回和光模块环回 芯片环回表示测试报文从芯片发出或

    相关 SLAM优化

    0. 前言 随着路径的不断延伸,机器人的建图过程会存在不断地累计误差。而传统的以gmapping为代表的使用粒子滤波进行定位的slam建图方式。以及ORB-SLAM为代表

    相关 设备

    你有没有想过在Linux的文件管理系统中再创建一个文件系统,就像在Windows中创建一个新的磁盘分区那样(但其实并不必非得直接那么做)。这时你就需要用到回环设备(loop d