历史上的今天
返回首页

历史上的今天

今天是:2025年03月06日(星期四)

正在发生

2019年03月06日 | SLAM大法之回环检测

2019-03-06 来源:SLAMTEC

随着路径的不断延伸,机器人在建图过程中会存在一些累计误差,除了利用局部优化、全局优化等来调整之外,还可以利用回环检测来优化位姿。

什么是回环检测?

回环检测,又称闭环检测,是指机器人识别曾到达某场景,使得地图闭环的能力。说的简单点,就是机器人在左转一下,右转一下建图的时候能意识到某个地方是“我”曾经来过的,然后把此刻生成的地图与刚刚生成的地图做匹配。

回环检测成功

回环检测之所以能成为一个难点,是因为:如果回环检测成功,可以显著地减小累积误差,帮助机器人更精准、快速的进行避障导航工作。而错误的检测结果可能使地图变得很糟糕。因此,回环检测在大面积、大场景地图构建上是非常有必要的 。

回环检测失败

如何提升机器人回环检测能力?

那么,怎么才能让机器人的回环检测能力得到一个质的提升呢?首先要有一个算法上的优化。

1、基于图优化的SLAM算法

基于图优化的SLAM 3.0 算是提升机器人回环检测能力的一大突破。

SLAM 3.0采用图优化的方式进行建图,进行了图片集成与优化处理,当机器人运动到已经探索过的原环境时, SLAM 3.0可依赖内部的拓扑图进行主动式的闭环检测。当发现了新的闭环信息后,SLAM 3.0使用Bundle Adjuestment(BA)等算法对原先的位姿拓扑地图进行修正(即进行图优化),从而能有效的进行闭环后地图的修正,实现更加可靠的环境建图。

SLAM 3.0闭环检测

SLAM 3.0环路闭合逻辑:先小闭环,后大闭环 ;选择特征丰富的点作为闭环点;多走重合之路,完善闭环细节。即使在超大场景下建图,也不慌。

超大场景下建图完整闭合过程

2、词袋模型

除了SLAM算法的升级和优化之外,现在还有很多系统采用成熟的词袋模型方法来帮助机器人完成闭环,说的简单点就是把帧与帧之间进行特征比配。

1、从每幅图像中提取特征点和特征描述,特征描述一般是一个多维向量,因此可以计算两个特征描述之间的距离;

2、将这些特征描述进行聚类(比如k-means),类别的个数就是词典的单词数,比如1000;也可以用Beyes、SVM等;

3、将这些词典组织成树的形式,方便搜索。

利用这个树,就可以将时间复杂度降低到对数级别,大大加速了特征匹配。

3、相似度计算

这种做法是从外观上根据两幅图像的相似性确定回环检测关系,那么,如何确定两个地图之间的相关性呢?

比如对于图像A和图像B,我们要计算它们之间的相似性评分:s(A,B)。如果单单用两幅图像相减然后取范数,即为: s(A,B)=||A?B||s(A,B)=||A?B||。但是由于一幅图像在不同角度或者不同光线下其结果会相差很多,所以不使用这个函数。而是使用相似度计算公式。

这里,我们提供一种方法叫TF-IDF。

TF的意思是:某特征在一幅图像中经常出现,它的区分度就越高。另一方面,IDF的思想是,某特征在字典中出现的频率越低,则分类图像时的区分度越高。

对于IDF部分,假设所有特征数量为n,某个节点的Wi所含的数量特征为Ni,那么该单词的IDF为:

TF是指某个特征在单副图像中出现的频率。假设图像A中单词Wi出现了N次,而一共出现的单词次数是n,那么TF为:

于是Wi的权重等于TF乘IDF之积,即

考虑权重以后,对于某副图像,我们可以得到许多个单词,得到BOW:

(A表示某幅地图)

如何计算俩副图像相似度,这里使用了L1范数形式:

4、深度学习及其他

除了上面的几种方式之外,回环检测也可以建成一个模型识别问题,利用深度学习的方法帮助机器人完成回环检测。比如:决策树、SVM等。

……

最后,当回环出现以后,也不要急着就让机器人停止运动,要继续保持运动,多走重合的路,在已经完成闭合的路径上,进一步扫图完善细节

继续走重合之路,完善闭环细节

推荐阅读

史海拾趣

CDE [ CORNELL DUBILIER ELECTRONICS ]公司的发展小趣事

经过近百年的发展,CDE公司始终坚守品质至上的原则,为全球客户提供高品质的电容器产品。公司通过不断的技术研发和产品升级,逐步在全球市场上树立了良好的口碑。如今,CDE的电容器产品已广泛应用于电源、电机、驱动器、航空电子、电力和军用电子设备等多个领域,赢得了全球客户的信赖。

Daniels Manufacturing公司的发展小趣事

随着全球电子行业的快速发展,DMC意识到必须走向国际市场,以寻求更大的发展空间。在20世纪90年代,DMC开始实施国际化战略,通过设立海外分支机构、与当地企业合作等方式,逐步拓展国际市场。同时,DMC还积极参与国际展览和技术交流,提高品牌知名度和影响力。这些努力使得DMC在国际市场上逐渐崭露头角,产品出口量持续增长。

Bussmann (Eaton)公司的发展小趣事

随着电子技术的快速发展,对电路保护的要求也越来越高。为了满足市场需求,Bussmann于1992年开始研发芯片保险丝。这款新型保险丝将可熔性材料沉降到陶瓷基底上,具有体积小、安装方便等优点,能够广泛应用于印刷电路板等电子设备中。芯片保险丝的推出不仅进一步提升了Bussmann的技术实力,也为其在电子行业打开了新的市场空间。

安国国际(ALCOR)公司的发展小趣事

近年来,安国国际将发展重心放在U盘控制IC的开发上。随着USB技术的不断升级和SSD市场的蓬勃发展,安国积极抢占USB 3.0、USB 3.1及SSD控制IC的市场先机。公司的U盘控制IC不仅支持新一代3D NAND技术,还具备高性能、低功耗等优点,深受市场欢迎。通过持续的技术创新和市场拓展,安国在U盘控制IC领域取得了显著成绩。

Bals Elektrotechnik GmbH & Co KG公司的发展小趣事

进入21世纪,Bals Elektrotechnik继续致力于技术创新和产品升级。1998年,公司推出了具有革命性的CEE插头和插座无螺纹连接技术。这一技术不仅提高了连接的安全性和效率,还为用户节省了大量时间。Bals因此成为第一家提供这种创新技术的公司,进一步巩固了其在电气行业的领先地位。

这些故事虽然基于假设和现有信息,但尽量保持了客观性和事实性。它们展示了Bals Elektrotechnik GmbH & Co. KG公司在电子行业发展的不同阶段和关键事件,从一个运输公司成功转型为电气行业的领军企业。这些故事不仅反映了公司的成长历程,也体现了其不断创新、追求卓越的精神。

B&F Fastener Supply公司的发展小趣事

凭借优质的产品和服务,B&F Fastener Supply公司逐渐赢得了大型电子厂商的青睐。多家知名电子企业选择与B&F建立长期合作关系,将其作为紧固件和电子元器件的主要供应商。这不仅为B&F带来了稳定的订单和收入来源,还进一步提升了公司在电子行业的地位和影响力。

问答坊 | AI 解惑

【申精】精品嵌入式资料导航

因为资料较多,先整理这一部分,后续还会完善并相继推出ARM11 6410专区,以便大家学习交流。     如果这个帖子对您有帮助,烦请各位顶贴,小弟先谢谢了O(∩_∩)O (一)2440专区: 优秀论坛专区: 第一:http://bbs.2@1ic.com/ ...…

查看全部问答>

一个简单的模拟串行通信程序 有点问题 麻烦各位看看

#include\"reg52.h\" void send_bit(unsigned char i) {         if(i) TXD=1;         else TXD=0;         TR0=1;         while(!TF0);   &nb ...…

查看全部问答>

无线技术群

无线技术群号码:36775412…

查看全部问答>

大型设备上的232通讯问题

实验室的一台大型设备(价值近一千万RMB),有一个RS—232接口,用于和计算机通讯,仪器说明上说仪器是作为一个DTE,请问是否需要将连线(自备的),跳线? 原文说明如下: 9 COMPUTER INTERFACE 9.1 GENERAL The various computer interfaces ...…

查看全部问答>

读取通话记录的问题

我用下面的代码实现读取通话记录,程序执行下来没有错误,也能返回所有的通话条数,但是hr=PhoneGetCallLogEntry(h,&pCall);方法把每一条数据放在pCall中时,我通过监视发现pCall中的数据都是空的。但下面hr=PhoneSeekCallLog(h,CALLLOGSEEK_END,0, ...…

查看全部问答>

寻找windows底层驱动专家

有个键盘驱动的活外包,有兴趣的专家请联络我: sandydata@hotmail.com…

查看全部问答>

怎么理解ADC的规则转换和注入转换啊?

                                 怎么理解ADC的规则转换和注入转换啊?…

查看全部问答>

at91SAM6300i 的时钟频率选择问题!

在移植uCOS-ii的时候,目标板是SAM6300i,MCU是AT91sam9263,现在想写一个测试程序,但是不知道怎么选择时钟频率,哪位高手用过可以指点一下!有时钟设置源码就更好了,谢谢!我的QQ邮箱:759343175@qq.com,谢谢了!急用!…

查看全部问答>

TMS28035的ad管脚 不管有没有模拟量输入,都输出高电平(2V)电压?

TMS28035的AD管脚  不管有没有模拟量输入,都输出高电平(2V)电压?这种情况的后果是当外部有模拟量输入时,TMS28035不能正常工作,唯有掉电,再上电 重新下载程序才能正常工作。请各位大虾指教?具体点谢谢。…

查看全部问答>

16*16点阵程序问题

pic16f877a芯片用两个74hc595和一个74hc154芯片设计16*16点阵。请问怎样显示汉字啊。 我用74hc154行扫描,显示的汉字乱作一团,不该亮的点都亮了,请问我应该怎样做啊?! 程序如下:#include<pic.h>#define uint unsigned int#define uchar ...…

查看全部问答>