多传感器融合SLAM22 --- VINS-FUSION单目 + IMU + 在线估计IMU相机外参IMU偏移 SFM部分---GlobalSFM::construct代码解析

本文详细解析了多传感器融合SLAM中的VINS-FUSION算法,重点介绍了如何通过C++实现单目相机与IMU的联合校准,包括PnP问题的解决、特征点三角化以及使用Ceres库进行全局优化,以估计IMU相机外参和IMU偏移。
摘要由CSDN通过智能技术生成

目录

1 这个函数的作用是什么、传入传出参数是什么

2 代码解析 

2.1 初始化向量

2.2 处理第l帧到第frame_num - 1帧之间的所有帧

2.2.1 GlobalSFM::solveFrameByPnP函数解析

2.2.2 GlobalSFM::triangulateTwoFrames函数解析

2.2.3 GlobalSFM::triangulatePoint函数解析

2.3 三角化第l帧到第frame_num - 1帧的所有帧 

2.4 第l帧开始,向前遍历到第0帧。对于每一帧,它首先解决了PnP问题,然后执行三角测量来估计特征点的三维位置。

2.5 对所有特征点进行三角化 

2.6 建立ceres求解问题 

2.6.1 添加旋转平移 并固定帧

2.6.2 添加优化因子 

2.7 将优化结果返回 


1 这个函数的作用是什么、传入传出参数是什么

        计算窗口内的相机的位姿,保存在Quaterniond* q, Vector3d* T内,大小为frame_num +1

        frame_count + 1:frame_count保存是第几帧

        relative_R:l帧到第WINDOW_SIZE的帧的旋转

        relative_T:l帧到第WINDOW_SIZE的帧的平移

        Q:输入参数 Quaterniond Q[frame_count + 1];

        T :输入参数Vector3d T[frame_count + 1];

        sfm_tracked_points : 输入参数 map<int, Vector3d> sfm_tracked_points

        sfm_f:如下数

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

APS2023

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值