从零入门激光SLAM(十五)——IMU在SLAM中的用处

从这节开始,进入到LIO章节,LIO具有更高的鲁棒性、精度、实时性、环境适应性和成本效益,快来学习一下吧

一、IMU能干什么

惯性测量单元(Inertial measurement unit,IMU),是测量物体三轴姿态角以及加速度的装置。IMU通常包含陀螺仪 (Gyroscope)、加速度计 (Accelermeters),有的还包含磁力计(Magnetometers)。陀螺仪用来测量三轴的角度/角速度,加速度计用来测量三轴的加速度,磁力计提供磁场朝向信息。IMU在手机、VR,航空航天领域都有着广泛应用。比如手机的记步功能就是利用IMU的算法达成;VR中IMU可实现随头部姿态变化而切换场景;Apollo登月中依赖IMU实现位置追踪和朝向确认。在自动驾驶领域,IMU同样是重要的导航和定位组件。它们内部可以根据受力或者时间等其他物理量来推算角速度和加速度。IMU在SLAM系统中的作用是提供设备的姿态、运动和加速度信息,从而帮助系统理解设备的运动轨迹

  1. 姿态估计:IMU可以提供关于设备在空间中的方向和角度的信息,这对于定位和导航至关重要。通过测量加速度计和陀螺仪的输出,可以估计设备的姿态。
  2. 运动估计:IMU可以提供设备的线性加速度和角速度的信息,这对于估计设备的运动非常有用。结合时间积分,可以得到设备在空间中的位置和速度的估计,从而帮助SLAM系统跟踪设备的运动轨迹。
  3. 辅助传感器:IMU通常与其他传感器(如摄像头、激光雷达等)一起使用,为它们提供补充信息。通过将IMU的数据与其他传感器的数据融合,可以提高SLAM系统对环境的理解和对设备位置的估计的准确性和鲁棒性。
  4. 点云去畸变:IMU可以用作惯性里程计,用于估计设备在短时间内的运动。虽然IMU在长时间使用中会积累误差,但在短时间内,它提供了对设备运动的相对准确的估计,可用于位姿初始值来对点云去畸变
  • 优点
  1. 相对位置的推演不存在任何外部依赖,是一个完备的系统。相比之下,如 GNSS依赖于卫星的覆盖,Lidar,Camera则依赖于对外部的感知,存在一定的不稳定性。
  2. IMU几乎不受外来信号干扰。除了强烈的机械冲击之外,电磁干扰,强光,特殊天气,地形条件等会对其他传感器造成扰动的因素对于IMU通通不起作用。
  3. IMU对角速度和加速度的测量值之间本就具有一定的冗余性,再加上汽车的轮速计和方向盘转角等冗余信息,使IMU的输出的“短时间内的相对位置变化”拥有极高的置信度。
  • 缺点
  1. IMU只能提供相对位置和姿态的推演,但却无法从全局角度提供绝对位置信息;
  2. IMU在使用过程中,一般需要对陀螺仪、加速度计的输出对时间积分才能得到位姿信息,而在积分的过程中,随着时间积累,误差也会持续累积,最终使得朝向发生较大的偏移(Drift)。 如不能由外部引入绝对位置信息加以校正,漂移会越来越大,输出结果与真实值的差距越来越大,从而失去使用价值。

    二、IMU的运动学

    2.1 IMU输出

  • 加速度计输出(a):加速度计通常测量设备在三个轴(通常是x、y和z轴)上的加速度。这些加速度通常以重力加速度(9.8米/秒²在地球表面)为基准,因此在静止时,加速度计的输出将是(0, 0, 9.8)或其等效值。
  • 陀螺仪输出(w):陀螺仪通常测量设备绕三个轴(通常是x、y和z轴)的角速度。角速度表示单位时间内角度的变化率,通常以弧度/秒为单位。
    实际的车辆、机器人都在地球表面运行。这些系统受到重力g的影响,所以应该把重力写在系统方程中。在绝大多数 IMU 系统中,可以忽略地球自转的干扰,从而把 IMU 测量值写为

  • 注意点:
  • 如果考虑的是字宙中的IMU,就要移除这个测量方程中的重力。或者某地的重力大小与其他地区的不一样,就应该改变g的取值。
  • 如果不把IMU 放在车辆中心,那么当车辆发生旋转和移动时,IMU 还应该测量到由车辆旋转导致的离心力、科氏力和角加速度,最后体现在加速度计的读数上。

2.2 IMU噪声

IMU的噪声一般由两部分组成测量噪声(Measurement Noise)与零偏(Bias )。即使在车辆静止时,IMU 的角速度和加速度输出也不一定形成均值为0的白噪声,而是带有一定的偏移。这个偏移量是由 IMU 内部的机电测量装置导致的,有些 IMU 的偏移较小,也有的会比较大。记陀螺仪和加速度计的测量噪声分别为η_g,η_a,同时记零偏为b_g,b_a,那么这几个参数在测量方程中体现为

详情请见...

从零入门激光SLAM(十五)——IMU在SLAM中的用处 - 古月居 (guyuehome.com)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/1425048.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

DDNS配置详解

正文共:1111 字 8 图,预估阅读时间:1 分钟 前面配置了DDNS(拨号有公网IP地址了,肯定要通过DDNS用起来啊!),有不少小伙伴咨询具体的配置问题。为了方便大家深入理解DDNS的技术原理&am…

IDEA 每次启动都显示选择项目页面

IDEA版本:2021.3.3 打开 Settings > Appearance & Behavior > System Settings 取消勾选 Reopen projects on startup 然后下次启动 IDEA 会显示选择项目页面

记录计全支付切换到RabbitMQ时启动报错的问题

记录计全支付切换到RabbitMQ时启动报错的问题 首先在application.yml中切换到RabbitMQ配置安装RabbitMQ、Erlang、延时插件 rabbitmq_delayed_message_exchange,延迟插件必装 首先在application.yml中切换到RabbitMQ配置 # 第一处rabbitmq:addresses: 127.0.0.1:56…

减肥健身个人总结

个人一直没有健身运动的习惯,工作久了体重超标,体检报告各种指标也不太“美丽”,开始学习一些减肥健身知识,持续更新。目标是每周减1~2斤,用几个月时间持续到体重恢复正常。 文章目录 一、减脂原理---制造热量缺口控制…

停车场车位引导管理系统工作原理是什么,由哪些软硬件设备组成?

在现代城市中,随着汽车保有量的持续增长,停车难成为了许多城市面临的共同问题。有效管理停车场资源,提高车位利用率,减少寻找停车位的时间,对于缓解交通拥堵、提高城市运行效率具有重要意义。车位引导管理系统正是为了…

【全开源】国际版JAVA多商户运营版商城系统源码地摊兄源码多商户源码社交电商源码支持Android+IOS+H5

国际版多商户运营版商城系统:打造全球电商新生态 随着全球化趋势的深入发展,跨境电商已成为推动世界经济增长的重要力量。为了满足不同国家、地区商户的多样化需求,我们隆重推出“国际版多商户运营版商城系统”,旨在为全球商户搭…

请问空三前启动引擎,提示这个错误是什么情况?

答:在AppData-Local-GEngine目录下找到G3DEngineConfig.ini,检查ServerCheckCMD后面是否存在路径 ,正常是为空,异常是为存在路径,需要清空该路径,然后重新启动引擎即可 重建大师是一款专为超大规模实景三维…

JUnit5参数化用例(二)

junit5MethodSource参数化: 通过MethodSource注解引用方法作为参数化的数据源信息在MethodSource注解的参数必须是静态的工厂方法,除非测试类被注释为TestInstance(Lifecycle.PER_CLASS)静态工厂方法的放回值需要和测试方法的参数…

Dalsa windows10下安装流程及部分问题分析

文章目录 安装及依赖库说明切换驱动模式流程问题:通过Dalsa SDK开发后找不到相机?问题:找不到采集卡? 安装及依赖库说明 官网(https://www.teledynedalsa.com/en/support/downloads-center/)下载的最新文件(20240515&…

邮件接口实现自动化邮件发送的步骤和技巧?

邮件接口的安全性如何保障?怎么配置和测试邮件接口? 通过合理利用邮件接口,我们可以轻松实现邮件的批量发送、个性化定制以及跟踪反馈,为企业或个人带来诸多便利。接下来,就让AokSend来探讨邮件接口实现自动化邮件发送…

C语言简要(一)

总得让她开心吧 helloworld #include <stdio.h>int main() {printf("hello world!\n");return 0; } 程序框架 #include <stdio.h> int main {return 0; }输出 printf("hello world!\n"); "里面的内容叫做“字符串”&#xff0c;prin…

指标体系建设方案(36页PPT)

一、资料介绍 《指标体系建设方案》这份36页的PPT资料包&#xff0c;是针对当前组织发展需求而精心设计的一套全面、系统的指标构建方案。本资料包从理论到实践&#xff0c;深入浅出地阐述了指标体系建设的必要性、原则、步骤及实施要点&#xff0c;旨在帮助组织建立起科学、合…

人工智能到底是什么玩意儿?

说实话&#xff0c;每次听到“人工智能”这个词&#xff0c;我都感觉像是在听天书一样。它似乎总是被包裹在一堆高大上的术语和概念里&#xff0c;让人摸不着头脑。但今天&#xff0c;我决定挑战一下自己&#xff0c;把这个问题搞个明白&#xff01; 首先&#xff0c;我得承认&…

selenium发展史

Selenium Core 2004 年&#xff0c;Thoughtworks 的工程师 Jason Huggins 正在负责一个 Web 应用的测试工作&#xff0c;由于这个项目需要频繁回归&#xff0c;这导致他不得不每天做着重复且低效的工作。为了解决这个困境&#xff0c;Jason 开发了一个运行在 JavaScript 沙箱中…

Dockerfile中yum install 无法使用的问题

记录一次开发中使用Dockerfile进行centos7容器自定义的时候发现yum install无法使用 1. 查看主机是否能够联网 ping www.baidu.com主机能够联网 2. 查看进行Dockerfile进行打包的时候新容器是否联网 在Dockerfile中添加 RUN ping www.baidu.com 发现无法ping通 解决办法 …

节点电位与电路电压的研究

实验目的&#xff1a; 1. 验证电路中电位与电压的关系&#xff1b; 2. 掌握电路电位图的绘制方法&#xff1b; 3. 学会对简单的电路故障进行分析与排除。 实验内容及步骤&#xff1a; 1. 从“线性电路研究模块”实验板上选取元器件&#xff0c;结合实验箱提供的电源&#xff…

位拆分与运算

描述 题目描述&#xff1a; 现在输入了一个压缩的16位数据&#xff0c;其实际上包含了四个数据[3:0][7:4][11:8][15:12], 现在请按照sel选择输出四个数据的相加结果,并输出valid_out信号&#xff08;在不输出时候拉低&#xff09; 0: 不输出且只有此时的输入有…

EasyClick常见拓展函数及应用

十天学会从入门到实战游戏脚本开发教程--EassyClick入门教程&#xff1a;2024 十天学会EasyClick从入门到实战&#xff0c;自动化脚本&#xff0c;游戏脚本开发系列教程_哔哩哔哩_bilibili2024 十天学会EasyClick从入门到实战&#xff0c;自动化脚本&#xff0c;游戏脚本开发系…

Redis-Redis事务

Redis事务 Redis事务简介 Redis事务是一组命令的集合&#xff0c;一个事务中的所有命令都将被序列化&#xff0c;按照一次性、顺序性、排他 性的执行队列系列的命令。Redis单条命令保证原子性&#xff0c;但是事务不保证原子性&#xff0c;且没有回滚。事务中任意命令执行失败…

DBeaver如何csv导入数据

简言之先要创建任务&#xff0c;任务还需要去执行&#xff0c;只有执行之后才是执行真的导入了 那个保存任务真的很误导人啊 1.首先点击你要被导入的表&#xff0c;右键选择导入数据然后选择直接点击下一步,这个地方需要修改格式&#xff0c;否则会乱码 如果你导入的没有标题…