VIO主流SOTA算法介绍

这篇具有很好参考价值的文章主要介绍了VIO主流SOTA算法介绍。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1.概述

      VIO(Visual-Inertial Odometry视觉惯性里程计)即结合相机与惯性测量单元IMU实现局部状态如位置、姿态、速度、路标点的最优状态估计。完整的SLAM系统还包括闭环检测(位置识别和相对状态求解)、全局地图构建(位姿图或者全局BA)等,理论上说这些模块可以在不同的VIO算法中进行复用。VIO为整个SLAM系统提供持续的局部状态,是整个SLAM系统能够保持实时、稳定运行的基础。

2.算法分类

      把是否将数据放在一起进行联合优化可将VIO算法分类成松耦合和紧耦合,业界已证明紧耦合VIO从精度和鲁棒性上要好于松耦合,本文只对紧耦合VIO算法进行相关分析。

VIO主流SOTA算法介绍

3.开源SOTA算法介绍

3.1 OpenVINS [1]

(1)介绍

        基于特征点+EKF。通过多状态约束卡尔曼滤波(MSCKF),利用特征点在多个相机状态之 间构建几何约束,构建观测模型对状态进行更新。

(2)特点

        FEJ实现、零空间投影Nullspace Projection、观测压缩Measurement Compression、多种路标点的表示形式等。

(3)开源地址

https://github.com/rpng/open_vins

3.2 ORBSLAM3 [2]

(1)介绍

        基于特征点法+最小二乘(G2O库)。通过提取 ORB 特征,维护特征地图,构建局部 BA 和全局 BA,利用最小二乘进行最优估计。

(2)特点

        共视图、多地图数据关联、最大后验估计包含初始化阶段等。

(3)开源地址

GitHub - UZ-SLAMLab/ORB_SLAM3: ORB-SLAM3: An Accurate Open-Source Library for Visual, Visual-Inertial and Multi-Map SLAM

3.3 Basalt [3][4]

(1)介绍

        基于特征点法+最小二乘(L-M法,未使用第三方优化库)。设计了一种两级 SLAM 系统, vi-odometry 环节和 vi-mapping 环 节,并且在 vi-odometry 环节以边缘化的形式保存帧间运动信息, 在 vi-mapping 环节恢复这些信息并且应用到基于特征点的全局 BA 中。

(2)特点

        FEJ实现、基于QR的边缘化方法并行计算、不依赖第三方优化库等。

(3)开源地址

Vladyslav Usenko / basalt · GitLab

3.4 Kimera [5]

(1)介绍

        基于特征点法+贝叶斯网络(GTSAM库)。实现了基于关键帧的的最大后验视觉惯性估计器。

(2)特点

        后端优化基于贝叶斯网络实现、框架完整,实现了包含语义SLAM等应用。

(3)开源地址

GitHub - MIT-SPARK/Kimera-VIO: Visual Inertial Odometry with SLAM capabilities and 3D Mesh generation.

3.5 DM-VIO [6]

(1)介绍

        基于稀疏直接法+最小二乘(GTSAM库)。利用延迟边缘化和位姿图BA实现单目视觉惯性里程计。

(2)特点

        稀疏直接法、延迟边缘化策略、利用位姿图BA的IMU初始化

(3)开源地址

GitHub - lukasvst/dm-vio: Source code for the paper DM-VIO: Delayed Marginalization Visual-Inertial Odometry

4.比较

4.1分析

      参考相关论文中的实验以及自测数据,从精度和效率上进行比较(仅比较VIO)。

VIO主流SOTA算法介绍

注:来自OpenVINS论文,VIO的结果(EuRoC dataset)

 

VIO主流SOTA算法介绍

注:来自ORB-SLAM3论文,SLAM即带Loop的结果(EuRoC dataset)

VIO主流SOTA算法介绍

注:来自DM-VIO论文,VIO的结果(EuRoC dataset)

VIO主流SOTA算法介绍

注:来自DM-VIO论文,VIO的结果(4Seasons dataset)

4.2结论

VIO主流SOTA算法介绍

        从精度来看,ORBSLAM3和DM-VIO在大部分数据集上最优,其次是Basalt和OpenVINS;从效率来看,OpenVINS大部分情况最优,其次是Basalt,再之DM-VIO和ORBSLAM3(只考虑VIO情况)。

        注:效率为作者自测结果,ORBSLAM3测试效率仅为VIO的结果。

4.3说明

        (1) OpenVINS非最新版本,测试的版本为静态初始化,在一些数据集上会失败,其精度的评估不够充分,但由于采用滤波的方法,效率确实可以达到最优。

        (2)Basalt的效率明显高于其他非滤波的方法,原因是采用了基于QR分解的边缘化策略,利用该方法可以实现比较好的并行计算。其精度稍低的一个原因是初始化采用了静态初始化的方法,如果采用动态初始化的方法,理论上精度可以更高。

        (3)DM-VIO精度和效率都不错,该方法为稀疏直接法,对光照比较敏感,从测试的数据集上来看,整体效果不错。

        (4)ORBSLAM3由于带有闭环和全局BA模块,整体精度最优,且其VIO模块精度次优,但由于有ORB特征提取和Altas地图维护,整体效率偏低。

        注:高斯噪声下的最小均方误差MMSE(卡尔曼滤波)与最大后验估计MAP(最小二乘与贝叶斯网络)可认为等价,不同的是卡尔曼滤波无法像最小二乘等可多次线性化(观测一阶线性化),故两者可达到的精度理论相近,卡尔曼滤波会差一些。

参考文献:

[1] Geneva P, Eckenhoff K, Lee W, et al. Openvins: A research platform for visual-inertial estimation[C]//2020 IEEE International Conference on Robotics and Automation (ICRA). IEEE, 2020: 4666-4672.

[2] Campos C, Elvira R, Rodríguez J J G, et al. Orb-slam3: An accurate open-source library for visual, visual–inertial, and multimap slam[J]. IEEE Transactions on Robotics, 2021, 37(6): 1874-1890.

[3] Usenko V, Demmel N, Schubert D, et al. Visual-inertial mapping with non-linear factor recovery[J]. IEEE Robotics and Automation Letters, 2019, 5(2): 422-429.

[4] Demmel N, Sommer C, Cremers D, et al. Square root bundle adjustment for large-scale reconstruction[C]//Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. 2021: 11723-11732.

[5] Rosinol A, Abate M, Chang Y, et al. Kimera: an open-source library for real-time metric-semantic localization and mapping[C]//2020 IEEE International Conference on Robotics and Automation (ICRA). IEEE, 2020: 1689-1696.

[6] von Stumberg L, Cremers D. DM-VIO: Delayed Marginalization Visual-Inertial Odometry[J]. IEEE Robotics and Automation Letters, 2022, 7(2): 1408-1415.文章来源地址https://www.toymoban.com/news/detail-469487.html

到了这里,关于VIO主流SOTA算法介绍的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 主流开发语言与环境介绍

    随着计算机科学的不断发展,各种编程语言和开发环境层出不穷。选择一种适合自己的主流开发语言和环境是每个开发者都必须面临的问题。本文将为大家介绍几种目前最为流行的主流开发语言和环境,帮助读者选择合适的工具进行开发。 Python是一种高级、通用、解释型的编

    2024年03月13日
    浏览(40)
  • 主流的开源ETL工具介绍

            开源ETL(Extract, Transform, Load)工具为组织提供了一种经济高效的方法来集成来自不同源的数据,以便进行分析、报告和业务智能。这些工具通常具有灵活性、可扩展性和较低的总体拥有成本。以下是几种流行的开源ETL工具及其特点、安装步骤和应用场景的概述。

    2024年04月23日
    浏览(34)
  • 主流开发语言和开发环境介绍

    Tips:TIOBE排行榜是根据互联网上有经验的程序员、课程和第三方厂商的数量,并使用搜索引擎(如Google、Bing、Yahoo!)以及Wikipedia、Amazon、YouTube和Baidu(百度)统计出排名数据,只是反映某个编程语言的热门程度,并不能说明一门编程语言好不好,或者一门语言所编写的代码数

    2024年02月21日
    浏览(42)
  • 【Flutter】介绍和主流框架对比

    它是原生的,让我们体验更好,性能更好 完全开源,可以进行商用 1.FPS: 每秒传输帧数,可以简单理解为每秒画面数 使用GPU渲染,120FPS 电影电视:24FPS 液晶显示器:60HZ = 60FPS 游戏:80FPS 谷歌出品和推广 第三方组件发展 大公司使用:阿里、腾讯、京东

    2024年02月11日
    浏览(43)
  • 【AI作诗】主流平台介绍+自主搭建

    诗歌总是属于文人的浪漫,但随着技术的发展,理科生文艺起来,也就没文科生什么事了(开玩笑的)。通过本篇文章,笔者将给大家介绍主流的AI诗歌创作平台及如何自己搭建,以供大家学习参考。 技术的进步是为了更好的服务原有的创作,而非取代,毕竟AI诗歌是没有灵

    2024年02月04日
    浏览(42)
  • 主流编程语言的“介绍”与“选择”

    编程语言本身没有优劣之分,不同的语言适合不同的场景,文中说的建议,多是站在小白要就业的立场给出的建议。 我们看这张导图,这张图右侧是前端类的语言,左侧是服务端的语言:   我们先说右侧。 我强调下他和 Java 是没有关系的,只是名字类似。 他的用途是前端开

    2024年03月09日
    浏览(84)
  • Blend for Visual Studio 概述

    https://learn.microsoft.com/zh-cn/visualstudio/xaml-tools/creating-a-ui-by-using-blend-for-visual-studio?view=vs-2022 Blend for Visual Studio 可用于设计基于 XAML 的 Windows 和 Web 应用程序。 它提供了与 Visual studio 相同的基本 XAML 设计体验,并添加了可视化设计器,以用于高级任务,例如动画和行为。 有关

    2024年02月04日
    浏览(36)
  • Stable Diffusion主流UI详细介绍

    Stable Diffusion目前主流的操作界面有WebUI、ComfyUI以及Fooocus 这里webui和fooocus在人机交互上的逻辑是一样的,fooocus界面更加简洁。 comfyui是在人机交互上是采用流程节点的交互逻辑,和上面略有区别。 界面分别如下: WebUI界面如下 webUI一般推荐 秋葉aaaki 版本的一键安装包,部署

    2024年02月20日
    浏览(36)
  • .NET 主流 ORM 功能介绍 大全 最新

    ​ 下面是3款.NET 使用最多的ORM,来自公众号投票结果 ,数据比较真实可靠,也可去搜索公众号继续投票  2023年11月投票结果 测试项目 发布时间 微信公众号投票 (追逐时间光者) 使用难度 功能 性能 SqlSugar  orm 2014 26%  491票 适中 全 中高 EFCore   orm 2016 36%  663票 较难 全 中高

    2024年02月05日
    浏览(44)
  • [论文笔记] 大模型主流Benchmark测试集介绍

             自然语言处理(NLP)的进步往往通过在各种benchmark测试集上的表现来衡量。随着多语言和跨语言NLP研究的兴起,越来越多的多语言测试集被提出以评估模型在不同语言和文化背景下的泛化能力。在这篇文章中,我们将介绍几个主流的多语言NLP benchmark测试集,包括

    2024年02月22日
    浏览(100)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包