(十三)ORBSLAM3子地图融合优化


前言

  距离上一次博客更新已经过去了N年。。。

  ORB-SLAM2继续更新,这真的是有生之年系列。

  ORB-SLAM3在2的基础上,引进了IMU的初始化和融合估计,以及子地图功能。笔者目前 IMU 相关的知识相对比较薄弱,因此准备在第十四讲的时候再为大家介绍VI-ORBSLAM相关的内容。本讲主要关心的是纯视觉的子地图融合功能。


ORB-SLAM子地图简介

  ORB-SLAM3使用子地图的原因是:当我们在跟踪丢失的情况下,不至于在唯一的一张地图中疯狂重定位。因为重定位的结果只有两个,一个是马上重定位成功,那么这是最理想的情况,我们可以继续进行环境探索;另一种就比较吃亏了,我们一直无法重定位成功,最终的结果就是系统判断当前跟踪状态为跟踪丢失,系统会直接将之前所重建的环境信息全部清除!重新生成一张地图。

  这意味着什么?这就好比我们辛辛苦苦在word里面写了成千上万字的文档,word一个bug直接把你所有的数据清空了,你还找不回,只能从头写那么头疼!

  那么解决的策略是啥?ORB-SLAM3就提出用子地图的方案!那么子地图好在哪里?我们还是以word为例:

  当我们写了成千上万字的word文档被bug卡没以后,这部分的文字会自动存储到某个位置(历史子地图),新增的文字会写在另一个word文档中(当前子地图),当缘分来临的时候(回环检测),这两个word文档就有机会合并到一起(子地图合并),形成统一的一个word文档!oh man,想想就觉得激动人心。

  ps:笔者无意针对word文档,只是因为前不久有个同事刚好因为word把文档内容卡没了,所以笔者才以此为例,xxxxxxx。。。


 ORB-SLAM子地图算法

  在介绍子地图功能之前,我们有几个问题需要着重关心一下:

  1. 子地图功能和ORB-SLAM2中使用的单一地图的方法有什么异同?

  2. 存在多个子地图的情况下,回环检测怎么做?这个方法与ORB-SLAM2中的回环检测有何区别?

  3. 两个子地图怎么进行合并?

  4. 合并的过程中,前端tracking到的新帧要怎么处理,此处必然会存在一个异步问题。

OK,那么我们逐个问题来回答!

  • 3
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值