vslam --- 从零开始写VIO系统 (第 1 天 )(一)

vslam --- 从零开始写VIO系统 (第 1 天)(一)

1. 概要说明

vslam中的 VIO 涉及的基本算法以及流程,大体上都清楚,只是你问我具体的,我会吞吞吐吐,抓不住重点,也没法清楚简明的说出来,所以这次希望能自己手写一个vio系统,把前端跟踪,后端优化,回环检测,局部地图以及全局地图优化完成,做一个完整完善的vio系统;

之前对 vins框架比较熟悉,orb-slam2也算了解,以及高博十四讲第13章的vo框架也熟悉,但看别人的框架 总有点儿走马观花,不能彻底明白理论知识点,以及具体的实现细节,这也是我想做这样自己手写系统的原因;

我平时也比较喜欢玩,毕竟学习也难,但是呢,不吃学习上的苦,生活的苦会更难!!!

在此,我将根据系统进展,每天更新文章,以便自己记录,也算是自我监督!!!

希望能在一个月以内完成,尽量越早吧 ,两周更好

2. 目标

完整的vio系统,前端基于光流的特征点法,后端使用非线性的图优化;

  1. 先做单目+imu的vio;
  2. 初始化需要估计尺度等,具体细节要写代码,看vin-mono代码才知道;
  3. 后续再加上 双目,毕竟双目在初始化方面会比较轻松,直接能得出尺度;具体是怎样的,见后续吧,因为我现在也说不清楚 (尴尬);
  4. 前端跟踪过程应该会比较轻松,就是光流+fast特征点 使用三角化,pnp计算帧间位姿,同时创建map点,关键帧等
  5. 后端优化部分,则有局部优化,和全局优化; 局部优化通过维护一个10帧的滑动窗口,进行BA优化(路标点+位姿),使用g2o实现吧;全局优化则是在有回环检测的时候进行 位姿图优化,不包含路标点优化,其实这个具体看后续的情况吧,若是计算时间允许,其实也做全局的BA也可以;
  6. 基于特征点vslam 在纹理信息不丰富,以及场景很相似的场景下,会出现跟踪失败或者是回环检测误匹配的情况,后续再添加线面特征,提升系统的鲁棒性,面特征的则主要面向室内;目前也有优秀的框架,见后续文章吧;
  7. 整个系统也会使用ros系统毕竟比较方便演示,我本人也很喜欢orb-slam的显示部分,所以整个系统的slam部分我会主要参照 vin-mono,显示部分会加 orb-slam中的显示部分;

接下来就真正开始吧

3. 思路

思路在上面目标部分,写了一些,但是目前水平受限,所以先缓一缓,后续再补

4. 框架

这张图是之前我画的,暂时用上;先干吧,鲁代码,啃公式 !!!
在这里插入图片描述

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值