VINS 基本介绍

VINS-Mono 和 VINS-Mobile 是香港科技大学沈劭劼老师开源的单目视觉惯导 SLAM 方案。2017年发表于《IEEE Transactions on Robotics》。另外,VINS 的最新一篇论文获得了 iROS 2018 最佳学生论文奖。它是基于优化和滑动窗口的 VIO ,使用 IMU 预积分构建紧耦合框架,同时还有自动初始化,在线外参标定,重定位,闭环检测,以及全局位姿图优化功能。

VINS-Mono 是基于单目视觉惯性系统的实时 SLAM 框架, 是目前非常先进的单目 VIO 算法,更是视觉与 IMU 的融合中的经典之作,其定位精度可以媲美 OKVIS,而且具有比 OKVIS 更加完善和鲁棒的初始化以及闭环检测过程,代码在 Linux 上运行,并与 ROS 完全集成。VINS-Mono 主要用于自主无人机的状态估计和反馈控制,但它也能够为 AR 应用提供精确的定位。VINS-Mobile 可以运行在 iOS 系统,值得一提的是,沈劭劼老师开源了 ROS 和 iOS 版本,前端写的很简洁,代码非常清晰,值得大家学习,链接:https://arxiv.org/pdf/1708.03852.pdf。

VINS 的整体系统框架图

前端基于 KLT 跟踪算法, 后端基于滑动窗口的优化(采用 ceres 库), 基于 DBoW 的回环检测。

整体框架分为五部分,如上图所示:

1. Measuremen Preprocessing :观测值数据预处理,包含图像数据跟踪IMU数据预积分;

2. Initialization:初始化,包含单纯的视觉初始化和视觉惯性联合初始化;

3. Local Visual-Inertia BA and Relocalization:局部 BA 联合优化和重定位,包含一个基于滑动窗口的 BA 优化模型;

4. Global Pose Graph Optimization:全局图优化,只对全局的位姿进行优化;

5. Loop detection:回环检测。

VINS 为什么采用「视觉 + IMU」 融合?

单一的传感器不能适用所有的场景,比如视觉传感器在大多数纹理丰富的场景中效果很好,但是如果遇到玻璃,白墙等特征较少的场景,基本上无法工作,而通过多个传感器的融合可以达到理想的定位效果。

小觅双目摄像头采用了「双目+惯导+结构光」的融合方案

虽然 IMU 长时间使用有非常大的累积误差,但是在短时间内,其相对位移数据又有很高的精度,所以当视觉传感器失效时,融合 IMU 数据,能够提高其定位的精度。与此同时,视觉和惯性测量的互补特性, 使它们特别适合融合, 而鲁棒性和准确的定位与地图绘制是任何移动机器人都需要解决的主要需求。此外, 这两种传感器在大多数智能手机中都有,融合可以有效解决移动手机上的视觉-惯性同时定位与制图。

卜小乂 总结道:视觉与 IMU 的融合可以借助 IMU 较高的采样频率,进而提高系统的输出频率。

视觉与 IMU 的融合可以提高视觉的鲁棒性,如视觉 SLAM 因为某些运动或场景出现的错误结果。

视觉与 IMU 的融合可以有效的消除 IMU 的积分漂移。

视觉与 IMU 的融合能够校正 IMU 的 Bias。

单目与 IMU 的融合可以有效解决单目尺度不可观测的问题。

小觅双目摄像头标准版跑 VINS 实测:https://www.zhihu.com/video/1043202090050527232

VINS 相较 OKVIS 方案搭建很快,CPU 占用率低,更适合朋友们快速上手。

VINS-Fusion

最近港科大开源的 VINS-Fusion 赢得了很多知友的关注,非常荣幸推荐我们的相机呀~

VINS-Fusion 是一种基于优化的多传感器状态估计器,可实现自主应用(无人机,汽车和 AR / VR)的精确自定位。 VINS-Fusion 是 VINS-Mono 的扩展,支持多种视觉惯性传感器类型(单目摄像机+ IMU,双目摄像机+ IMU,甚至仅限双目摄像机)。开源项目组还展示了将 VINS 与 GPS 融合的模组示例。

特征如下:

多传感器支持(立体摄像机/单声道摄像机+ IMU /立体摄像机+ IMU)

在线空间校准(相机和 IMU 之间的转换)

在线时间校准(相机和 IMU 之间的时间偏移)

视觉循环闭合

小觅双目摄像头标准版跑 VINS-Fusion 实测:https://www.zhihu.com/video/1072073493293854720

VINS 未来方向

相机和 IMU 的天然互补性和智能手机的普及,使得视觉惯性里程计 VIO 近几年很流行,苹果的 ARKit 和谷歌的 ARCore 都是 VIO 的典型应用。VIO 为将来 SLAM 的小型化与低成本化提供了一个有效的方向,而且结合稀疏直接法,有望在低端硬件上取得良好的 SLAM 或 VO 效果,是非常有未来前景的。

文章内容部分出自小觅智能 & 深蓝学院举办的公开课:小觅智能 | 如何进行 VSLAM 技术选型​www.shenlanxueyuan.com

感兴趣的朋友可以前往观看完整内容。(网站需要注册登陆查看)

更多 SLAM 学习资源:小觅智能 | 视觉里程计(VO)学习笔记​zhuanlan.zhihu.com小觅智能 | ORB-SLAM 学习笔记​zhuanlan.zhihu.com小觅智能 | 学习 SLAM 该如何入门?​zhuanlan.zhihu.com小觅智能:小觅智能 | OKVIS 学习笔记​zhuanlan.zhihu.com

欢迎大家点赞呀~ 点赞的人儿最美丽~

想购买的朋友可以点这里 :https://xiaomishuma.tmall.com?BIZ=ECOMMERCE​xiaomishuma.tmall.com?BIZ=ECOMMERCE

PS:最近我们即将推出小觅双目摄像头深度高精版,欢迎扫码预约,有 300 元限定优惠券哟~

vins中imu融合_小觅智能 | VINS 学习笔记(持续更新中)相关推荐

  1. 小觅智能 | OKVIS 学习笔记

    上一期的视觉里程计,让我们想到了 OKVIS ,知乎上的讨论也比较少,小觅智能来分享一下. OKVIS 基本介绍 它是由 Stefan Leutenegge 等人提出的基于双目+惯导的视觉里程计,属于 ...

  2. 小觅智能 | VINS-kidnap 学习笔记

    最近沈劭劼老师实验室又新出了一篇论文,提出了一种多世界坐标系统的相对计算和处理的全功能系统,能够减少测距漂移,从复杂的 kidnap 场景(相机被遮挡)和随机的测距故障中恢复.感谢沈老师开源,项目地址 ...

  3. Python学习小甲鱼视频做的笔记(持续更新中)

    Python BIF :Built-in functions(内建函数) Python与大多数其他计算机语言的做法稍有不同,他并不是把值存储在变量中,而更像是把名字贴在值的上边. 在使用变量之前,必须 ...

  4. 专升本 计算机 公共课学习笔记(持续更新中...)

    计算机公共课学习笔记 第一章 计算机基础知识(30分) 1.计算机概述 计算机(Computer)的起源与发展 计算机(Computer)也称"电脑",是一种具有计算功能.记忆功能 ...

  5. JS逆向学习笔记 - 持续更新中

    JS逆向学习笔记 寻找深圳爬虫工作,微信:cjh-18888 文章目录 JS逆向学习笔记 一. JS Hook 1. JS HOOK 原理和作用 原理:替换原来的方法. (好像写了句废话) 作用: 可 ...

  6. Docker快速入门学习笔记-持续更新中

    Docker安装 #1.卸载旧的版本 yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker ...

  7. typescript-----javascript的超集,typescript学习笔记持续更新中......

    Typescript,冲! Typescript 不是一门全新的语言,Typescript是 JavaScript 的超集,它对 JavaScript进行了一些规范和补充.使代码更加严谨. 一个特别好 ...

  8. Java学习笔记(持续更新中)

    文章目录 项目实战 mall项目(SpringBoot项目) 1. 添加Swagger-UI配置,修改MyBatis Generator注释的生成规则 2. redis基础配置 3. SpringSe ...

  9. 小觅智能 | VINS 学习笔记

    摘自:https://zhuanlan.zhihu.com/p/48728586 小觅智能 | VINS 学习笔记(持续更新中) 小觅智能 专注立体视觉技术整体解决方案,网站 http://mynta ...

最新文章

  1. java 裁剪 pdf_Java PDF 切割、截取、合并工具类、转图片等
  2. eclipse+tomcat 启动已有工程时卡在starting状态
  3. lombok链式调用_记一次使用 Lombok 翻车造成的事故!
  4. json spr路驾驶技术视频api_每天弄个小爬取之Python爬取批量爬取B站小视频
  5. java反射 初始化bean_通用javabean初始化(反射机制)
  6. Bootstrap框架系列 - 初识
  7. 权限管理-SpringSecurity介绍
  8. linux系统支持uefi,支持UEFI启动的 Puppy Linux 7.5发布,Linux 4.4和4.9 LTS内核
  9. 怎么用cmd关闭系统弹窗_Win10家庭版系统也能使用组策略啦!终于关闭系统自动更新了...
  10. LeetCode 599. 两个列表的最小索引总和(哈希map)
  11. 6大设计原则之单一职责原则
  12. nginx忽略文件名大小写
  13. JS-面向对象---属性的特性 / 修改属性的特性
  14. python cnn代码详解 keras_python – CNN返回相同的分类结果(keras)
  15. frobenius范数_非负矩阵之Perron-Frobenius定理
  16. ResNeXt结构(code)
  17. eclipse使用git合并_IntelliJ IDEA完整使用教学:从小白到大牛的必经之路!
  18. 《CLR via C#》读书笔记 之 计算限制的异步操作
  19. C++ 标准模板库STL
  20. C语言实现贪吃蛇小游戏

热门文章

  1. django后台运行runserver
  2. AI测肤:不再止步于”表面美颜”
  3. SpringBoot Rabbitmq3.9 DLX方式实现延迟队列
  4. 光纤收发器的LFP和EFE
  5. unity打包微信小游戏,配置CDN全流程
  6. .net mysql transactionscope_使用Transaction访问数据库(C#,TransactionScope,.NET 2.0)
  7. 深度学习从入门到精通——Opencv模板匹配完成信用卡识别
  8. CSS---引入CSS代码的四种方式
  9. iOS开发-支付宝手势解锁实现展示
  10. 学习整理在php中使用KindEditor富文本编辑器