从零手写VIO学习记录——系列三:【基于优化的IMU和视觉信息融合】(学习记录 | 作业 | 代码)

本文深入探讨了视觉惯性里程计(VIO)中的残差构建,包括视觉重投影误差、IMU预积分误差及先验误差。并通过雅可比推导,实现了基于LM算法的优化过程,特别关注于阻尼因子策略的修改。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本系列主要根据深蓝学院《视觉SLAM进阶:从零开始手写VIO》。博客主要以本人在课程学习过程中的作业和修改的代码为主。如需详细视频及PPT,请联系深蓝学院相关人员。

代码已上传github: https://github.com/why-freedom/VIOLearning_Note_Code.git(有用话给个star >_<)

本节主要是VIO的残差构建及其雅可比推导,主要是VINS-Mono那一套,(其实本课程也都是基于VINS-Mono的)
视觉SLAM的BA:
  • 状态量:特征点三维坐标、相机位姿
  • 测量值:特征点在不同图像上的图像坐标
  • 通过构建重投影误差,然后构建最小二乘最小化误差得到最优估计。
最小二乘求解:
  • 最速下降法:梯度的负方向为最速下降方向。缺点:最优值附近震荡,收敛慢。适用于迭代开始阶段。
  • 牛顿法:在局部最有点 x ∗ x^* x附近,如果 x + Δ x x+\Delta{x} x+Δx是最优解,则损失函数对 Δ x \Delta{x} Δx的导数等于0。缺点:二阶导矩阵计算复杂。适用于最优值附近。
  • 高斯牛顿法:
    在这里插入图片描述
  • Levenberg和Marquardt先后对高斯牛顿法改进,求解过程引入阻尼因子:
    在这里插入图片描述

    • μ > 0 \mu>0 μ>0,保证 ( J T J + μ I ) (\mathbf{J}^T\mathbf{J}+\mu\mathbf{I}) JTJ+μI正定,迭代朝着下降方向进行。
    • μ \mu μ非常大,则接近最速下降法。
    • μ \mu μ非常小,则接近高斯牛顿法。
    • 阻尼因子策略一般是( τ \tau τ [ 1 0 − 8 , 1 ] [10^{-8},1] [108,1]):
      在这里插入图片描述
    • 阻尼因子更新策略:参考:https://blog.youkuaiyun.com/boksic/article/details/79177055
  • 最小二乘中遇到outlier怎么处理?引入鲁棒核函数,参考:https://zhuanlan.zhihu.com/p/62175983

VIO残差构建
  • 视觉重投影误差:一个特征点在归一化相机坐标系下的估计值与观测值的差。
  • IMU测量预积分误差:一段时间内IMU构建的预积分量作为测量值,对两时刻之间的状态两进行约束。参考:https://zhuanlan.zhihu.com/p/38009126
  • 先验误差:主要是滑窗丢弃之前信息保留的状态约束。
  • 雅可比推导:参照崔神的解析:https://github.com/StevenCui/VIO-Doc
本节作业主要是实现LM算法,并修改阻尼因子策略。推到两项雅可比。以及证明题:

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值