Vins-mono是香港科技大学开源的一个VIO算法,https://github.com/HKUST-Aerial-Robotics/VINS-Mono,是用紧耦合方法实现的,通过单目+IMU恢复出尺度,效果非常棒。 感谢他们开源,我从中学到了非常多的知识。源码总共有15000多行,我在通读完程序之后,结合参考文献,把程序背后的算法理论都推导了一遍,总结成了本文,与各位...
2.3 VINS-MONO中的图像去畸变 三.VINS的代码学习 一些废话 最近在看VINS-MONO的代码,网上有很多相关的代码解读,关于畸变理论感觉说法众多,但或多或少有些错误,或解说有些绕,甚至在SLAM 14讲中,畸变坐标前后说明也不一致,故写一篇有关去畸变的文章。给后续再度观看代码降低学习成本。算力和精度是个SLAM学习者值得...
VINS-Mono是港科大开源的一个视觉惯性里程计项目,可以说是视觉与IMU融合方面的经典算法。VINS-Mono是一种具有鲁棒性和通用性的单目视觉惯性里程计,它主要分为五大模块:1)预处理:图像光流跟踪与特征提取,IMU预积分;2)初始化:纯视觉SFM,SFM与IMU积分耦合;3)基于滑动窗口的非线性优化;4)回环检测加重定位;5)四自由...
目录1VINS-mono论文解读(IMU预积分+Marg边缘化...参数四、结语 本系列将主要介绍VIO(视觉惯性里程计)的主要应用,带你从头开始研读VIO中的代表作——VINS-Mono的论文和代码。我相信经过一系列文章的学习之后,我们将 ROS中的package.xml的使用 文章目录package.xml作用 package.xml写法(来自VINS-mono中vins_estimator...
VINS论文解读与代码详解目录 Vins-mono是香港科技大学开源的一个VIO算法,用紧耦合的方法,通过单目+IMU恢复出尺度,效果非常棒。VINS的功能模块可包括五个部分:数据预处理、初始化、后端非线性优化、闭环检测及闭环优化。代码中主要开启了四个线程,分别是:前端图像跟踪、后端非线性优化(其中初始化和IMU预积分在这个线程...
VINS-mono 论文解读(IMU预积分+Marg边缘化) 前面,我们已经对接下来的VIO系列主要内容有所介绍(感兴趣的可以关注:视觉与惯性传感器如何融合?),本文是VIO系列的第一节内容:VINS-mono论文解读(IMU预积分+Marg边缘化)。 论文《VINS-Mono: A Robust and Versatile ...
代码解读 VINSMono中相机模型对应代码在/VINS-Mono/cameramodel/src/camera_models/CataCamera.cc文件**liftSphere**()函数中,该函数是将$2d$ 投影到$3d$ 点(单位球面上),首先对$2d$去畸变,然后再投影到单位球面上。 去畸变过程代码如下: 代码语言:javascript 代码运行次数:0 运行 AI代码解释 //去畸变过程 ...
VINSMono中IMU预积分残差、雅克比和协方差以及processIMU函数的解读:IMU预积分残差:定义:预积分残差是指通过预积分模型计算得到的PVQ与通过优化得到的PVQ之间的差值。作用:残差用于衡量预积分结果与优化结果之间的一致性,是优化过程中的重要指标。雅克比:定义:雅克比矩阵描述了预积分残差对状态量的敏感...
VINSMono紧耦合非线性优化理论详细解读:1. 紧耦合非线性优化概述: 核心:将视觉约束、IMU约束、闭环约束整合在一个大目标函数中,实现滑动窗口内所有帧的PVQ、bias等参数的非线性优化。 过程:包括残差函数构建、视觉约束、IMU约束及基于舒尔补的边缘化操作。 工具:使用Google开源的Ceres solver进行求解...