《ORB-SLAM3》IMU初始化

前言:

        刚接触了IMU传感器,除了IMU预积分的相关知识外,关于IMU的另一个重要知识点就是IMU的初始化。

IMU为什么需要初始化?

        IMU初始化是为了获得重力方向和IMU零偏的初始值。有了正确的重力方向才能消除IMU预积分中加速度计关于重力的影响,得到的IMU预积分数据才能保证准确。

ORB-SLAM3中的IMU初始化

1.ORB-SLAM3刚开始运行时,IMU还没有进行初始化,此时系统运行的纯视觉模式,地图初始化也是在这个阶段完成的,但是此时的地图坐标系(世界坐标系)缺乏重力信息

2.当带有IMU预积分数据的关键帧超过一定数量时,开始进行IMU初始化。通过前面积累的关键帧IMU预积分数据可以求得重力在世界坐标系中的方向,进而求得重力坐标系到世界坐标系的旋转矩阵的初值

3.当得到世界坐标系到重力坐标系的旋转矩阵之后,就可以将世界坐标系的Z轴与重力方向进行对其了。随后将每个关键帧的位姿进行矫正,同时矫正地图点的位姿和IMU预积分的结果。

    if (!mpCurrentKeyFrame->GetMap()->isImuInitialized())
    {
        Eigen::Matrix3f Rwg;
        Eigen::Vector3f dirG;
        dirG.setZero
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

Jiqiang_z

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

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

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

打赏作者

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

抵扣说明:

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

余额充值