IMU
(1)用IMU来进行预测
读入一个10/20帧的数据集,通过IMU来初步预测出位姿以及显示其路径。
(2)通过光度差或者什么来作为更新部分,通过相机的观测方程算出增益,随后进行更新。

A. Filter Initialization
误差状态的运动方程
2.1连续时间的IMU系统动态方程
这里涉及到真实值(true-),标称值(nominal-),和误差状态值(error-state)三个量,真实值是有标称值和误差值组合而来。标称值是有非线性方程而来的"大信号",误差值的线性方程而来满足线性高斯滤波的“小信号”。
2.1.1相关变量
- 这里的相关变量中,输入值是IMU的测量值,以及当地重力加速度。其他真值值变量的值都是由他们而来。其中normal值是一个抽象变量,表示理想值,是无法估计的,在融合中我们使用估计的真实值做为标称值来预测。
- 标称值是完全理想值,我们把各种因素产生的真实值和标称值的不确定性归于变量表示。
- 这里采用Hamilton 四元数的表述方法
- 这里的角速率使用的是locally的表述,这样可以直接使用机体系b下的传感器测量值
- 这里的角度误差使用的也是locally的表述,这是很多文献和算法采用的经典方式,不过有证明说采用globally的方式定义的角度误差有更好的性质。
- 这里的加速度定义的是globally,我的理解是,方便计算导航系下的速度和位置。

2.1.2真实状态运动方程(true-state kinematics equations )
- true-state 变量表示的运动方程.IMU bias的噪声定义为随机游走。
由于初始状态姿态未知,这种不确定即重力加速度向量的不确定,但是实际工程中我们是制定初始状态的,即重力加速度不确定不再存在,这里的方程也认为其为恒定值。

.IMU误差来源分为两种,内部bias
这里的IMU真实值是没有bias和测量噪声的值,IMU加速度计测量加速度不包含重力加速度,即如果自由落体运动,不考虑噪声加速度计的读数是0。

利用IMU测量代替真实值的系统真实状态运动方程,该方程状态为,由IMU的含噪声测量值驱动,并受高斯白噪声干扰.



IMU的更多相关文章
- oracle的IMU和ora-01555
IMU: 01555: 按照上图找啊找,已经提交事物的undo块找不到了,就产生01555错误,解决这样问题:1. 确保undo表空间数据的保留时间至少大于最长sql语句的时间 2. 增大undo表空 ...
- ROS实时采集Android的图像和IMU数据
前言 临近毕业,整理一下之前做的东西.这篇博客来自于博主在2016年3月份投的一篇会议论文(论文主要介绍了一个基于手机摄像头和IMU的简单VIO系统,用于AR的Tracking部分,本博文 ...
- 【浅析】IMU代码
IMU的代码的引自https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/imumargalgo ...
- [转]A Guide To using IMU (Accelerometer and Gyroscope Devices) in Embedded Applications.
原文地址http://www.starlino.com/imu_guide.html Introduction There’s now a FRENCH translation of this art ...
- SLAM+语音机器人DIY系列:(三)感知与大脑——2.带自校准九轴数据融合IMU惯性传感器
摘要 在我的想象中机器人首先应该能自由的走来走去,然后应该能流利的与主人对话.朝着这个理想,我准备设计一个能自由行走,并且可以与人语音对话的机器人.实现的关键是让机器人能通过传感器感知周围环境,并通过 ...
- 转载泡泡机器人——IMU预积分总结与公式推导2
本文为IMU预积分总结与公式推导系列技术报告的第二篇. 承接第一篇的内容,本篇将推导IMU预积分的测量值,并分析其测量误差的分布形式. 传统捷联惯性导航的递推算法,以初始状态为基础,利用IMU测量得到 ...
- 转载泡泡机器人——IMU预积分总结与公式推导1
IMU预积分技术最早由T Lupton于12年提出[1],C Forster于15年[2][3][4]将其进一步拓展到李代数上,形成了一套优雅的理论体系.Forster将IMU预积分在开源因子图优化库 ...
- 适合高要求应用的高性能MEMS IMU解决方案
对于复杂且高动态惯性配置的MEMS IMU应用,评估功能时需要考虑许多属性.在设计周期早期评估这些属性优于追逐开放性成果,从而实现“尽可能精确”.ADI近期举行的在线研讨会[适合高要求应用的高性能ME ...
- vins-mono中的imu参数设置
na:加速度计的测量噪声 nw:陀螺仪的测量噪声 nba: randow walk noise随机游走噪声 nbw:randow walk noise随机游走噪声 ba:加速度计的偏差 bw:陀螺仪的 ...
- IMU 标定 | 工业界和学术界有什么不同?
点击"计算机视觉life"关注,置顶更快接收消息! 由于格式问题最好在公众号上观看<IMU 标定-工业界和学术界有什么不同?> 本文主要介绍了IMU基本结构原理和误差的 ...
随机推荐
- 聊聊Java happens-before原则
无论处理器.JVM.编译器都会都保证程序正确的前提下尽可能的对指令执行效率进行优化,进行指令重排等操作.而要保证程序的执行结果的正确,则必须要遵循JMM中规定的happens-before原则. 在J ...
- Hystrix 学习使用
说明: 每次调用创建一个新的HystrixCommand,把依赖调用封装在run()方法中 执行execute()/queue做同步或异步调用 请求接收后,会先看是否存在缓存数据,如果存在,则不会继续 ...
- [JAVA]JAVA多线程实现方法之——实现Runnable接口
public class MultiThread { public static void main(String[] args) { Thread t1 = new Thread(new Threa ...
- spring找不到bean
有时候明明有bean,spring找不到bean,这时候需要mvn clean下,有时候xml文件不会每次都编译,改了不clean可能不会生效.
- Unity Shader Graph(二)Dissolve Effect
此篇文章记录Dissolve Effect(溶解特效)的制作过程 软件环境 Unity 2018.1.2f1 Packages: Lightweight Render Pipeline 1.1.11 ...
- 【亲测】502 Bad Gateway 怎么解决?
502 Bad Gateway 怎么解决? 1.什么是502 badgateway 报错 简单来说 502 是报错类型代码,bad gateway 错误的网关. 2.产生错误的原因 连接超时 具体原因 ...
- pyton unittest
在说unittest之前,先说几个概念: TestCase 也就是测试用例 TestSuite 多个测试用例集合在一起,就是TestSuite TestLoader是用来加载TestCase到Test ...
- Variables多种表达
Variables:TF基础数据之一,常用于变量的训练...重要性刚学TF就知道了 1.tf.Variable() tf.Variable(initial_value=None, trainable= ...
- HashMap的实现原理,以及在JDK1.7和1.8的区别
1.JDK1.7 HashMap是Java中大家最常用的一个map实现类,其为键值对也就是key-value的形式.他的数据结构则是采用的位桶和链表相结合的形式完成了,即拉链法.具体如下图所示: Ha ...
- python基础之从认识python到python的使用
python的历史: python的创始人是吉多·范罗苏姆(Guido van Rossum),人称“龟叔”,1989年圣诞节期间,Guido开始写Python语言的编译器.他希望这个叫做Python ...