• [1]-VIO概述


    VIO 概述

    1.0 VIO 引出

    • VIO: (Visual-Inertial Odometry)

      以视觉与 IMU 融合实现里程计。

    • IMU(Inertial Measurement Unit),惯性测量单元

      • 典型 6 轴 IMU 以较高频率(≥ 100Hz)返回被测量物体的角速度与加速度

      • 受自身温度、零偏、振动等因素干扰,积分得到的平移和旋转容易漂移

      • 同时 IMU 随着精度和使用场景的不同价格也会出现极大的变化。如下图所示:

        在这里插入图片描述

    • 视觉里程计 Visual Odometry

      • 以图像形式记录数据,频率较低( 15 − 60 H z 15 − 60Hz 1560Hz 居多)
      • 通过图像特征点或像素推断相机运动

    2.0 IMU 与视觉定位优势劣势对比

    方案IMU视觉
    优势快速响应
    不受成像质量影响
    角速度普遍比较准确
    可估计绝对尺度
    不产生漂移
    直接测量旋转与平移
    劣势存在零偏
    低精度 IMU 积分位姿发散
    高精度价格昂贵
    受图像遮挡、运动物体干扰
    单目视觉无法测量尺度
    单目纯旋转运动无法估计
    快速运动时易丢失$

    \quad 整体上,视觉和 IMU 定位方案存在一定互补性质:

    • IMU 适合计算短时间、快速的运动。
    • 视觉适合计算长时间、慢速的运动。

    \quad 同时,可利用视觉定位信息来估计 IMU 的零偏,减少 IMU 由零偏导致的发散和累积误差;反之,IMU 可以为视觉提供快速运动时的定位。

    3.0 融合方案

    \quad IMU 数据可与多种定位方案融合

    • 自动驾驶中通常用 IMU+GPS/差分 GPS/RTK 的融合定位方案,形成 GNSS-INS 组合导航系统,达到厘米组定位精度;
    • 头戴式 AR/VR 头盔则多使用视觉 +IMU 的 VIO 定位系统,形成高帧率定位方案。

    3.1 松耦合

    \quad 将 IMU 定位与视觉/GNSS 的位姿直接进行融合,融合过程对二者本身不产生影响,作为后处理方式输出。典型方案为卡尔曼滤波器。整体的框架如下图所示:

    在这里插入图片描述

    3.2 紧耦合

    \quad 融合过程本身会影响视觉和 IMU 中的参数(如 IMU 的零偏和视觉的尺度)。典型方案为 MSCKF 和非线性优化。整体框架如下图所示:

    在这里插入图片描述

    3.3 对比分析

    为什么要使用紧耦合?

    • 单纯凭(单目)视觉或 IMU 都不具备估计 Pose 的能力:视觉存在尺度不确定性、IMU 存在零偏导致漂移;
    • 松耦合中,视觉内部 BA 没有 IMU 的信息,在整体层面来看不是最优的。
    • 紧耦合可以一次性建模所有的运动和测量信息,更容易达到最优。
  • 相关阅读:
    C++:STL之Vector实现
    vue3:11、provide和inject
    洛谷C++简单题小练习day12—寻找最小值小程序
    前端绘制地铁路线图
    vim——“Linux”
    虚拟机搭建负载均衡,mysql主从复制和读写分离(二、克隆虚拟机)
    Redis6.0使用了多线程还能保证线程安全么?-Redis6.0 多线程精讲
    python二级题库 第四套 附刷题软件
    简单线性回归(Simple Linear Regression)
    Docker0网络及原理探究
  • 原文地址:https://blog.csdn.net/weixin_45860565/article/details/126694548