码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • [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 15−60Hz 居多)
      • 通过图像特征点或像素推断相机运动

    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 的信息,在整体层面来看不是最优的。
    • 紧耦合可以一次性建模所有的运动和测量信息,更容易达到最优。
  • 相关阅读:
    最新 Java 高频面试集锦,让你“金九银十”轻松斩获offer
    将conda环境打包成docker步骤
    公共经济学(期末复习资料)
    i7 11800h和i7 12800hx选哪个好
    浅尝KBQA中使用语义角色标注进行约束挂载
    MQ~消息队列能力、AMQP协议、现有选择(Kafka、RabbitMQ、RocketMQ 、Pulsar)
    马克 · 扎克伯格期望的元宇宙到底会是什么样子?
    物联网开发笔记(10)- 使用Wokwi仿真micropython on ESP32开发板实现舵机控制
    mysql 8.0 版本innodb 内存管理锁 buffer pool mutex 变化
    2022年全球市场锁相放大器模块总体规模、主要生产商、主要地区、产品和应用细分研究报告
  • 原文地址:https://blog.csdn.net/weixin_45860565/article/details/126694548
  • 最新文章
  • 沪漂五周年了:我越来越迷茫了
    Agentic Skill Routing 实战:别再把所有 Skill 塞进 AI Agent 上下文
    MySQL-Seconds_behind_master的精度误差
    [MAF预定义ChatClient中间件-03]CachingChatClient——利用缓存省钱省时间
    AI的至暗历史:从万众期待到被政府撤资,AI的两次死亡徘徊
    Agent OS :五种驯服不确定性的范式
    PortSwigger SQL注入LAB11
    数据库即时编译JIT
    [Begin]AI Learn Data Day 0
    深度学习进阶(二十七)现代 LLM 的核心架构设计其二:SwiGLU
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号