转载泡泡机器人——IMU预积分总结与公式推导1
IMU预积分技术最早由T Lupton于12年提出[1],C Forster于15年[2][3][4]将其进一步拓展到李代数上,形成了一套优雅的理论体系。Forster将IMU预积分在开源因子图优化库GTSAM中进行了实现,并完成了和其另一大作SVO的组合。这套理论目前已经被广泛的应用在基于Bundle Adjustment优化框架的Visual Inertial Odometry中。其中包括VI-ORBSLAM,港科大VINS,浙大ICE-BA等。
本报告对Foster的paper[3][4]中的公式进行了详尽的推导,试图将这套优雅的理论详细地展现在读者面前,使读者对IMU预积分理论有更加完备的认识。
为了更好的理解本系列报告,推荐另外三本参考书幕[5][6][7]。
本系列报告中公式较为繁多,因此篇幅较长,将分为四篇进行推送。这是本系列的第一篇。公式中各种上下标较多,笔者已尽量做到没有错误,但难免仍有疏漏,如有任何疑问、建议或需进行探讨,请联系笔者,邮箱地址附于文末。












本期首先介绍了一些李代数知识,然后介绍了IMU预积分理论采用的IMU测量模型。这些知识将在后面的推导中被频繁的运用。
转载泡泡机器人——IMU预积分总结与公式推导1的更多相关文章
- 转载泡泡机器人——IMU预积分总结与公式推导2
		
本文为IMU预积分总结与公式推导系列技术报告的第二篇. 承接第一篇的内容,本篇将推导IMU预积分的测量值,并分析其测量误差的分布形式. 传统捷联惯性导航的递推算法,以初始状态为基础,利用IMU测量得到 ...
 - IMU 预积分推导
		
给 StereoDSO 加 IMU,想直接用 OKVIS 的代码,但是有点看不懂.知乎上郑帆写的文章<四元数矩阵与 so(3) 左右雅可比>提到 OKVIS 的预积分是使用四元数,而预积分 ...
 - VINS(七)estimator_node 数据对齐 imu预积分 vision
		
首先通过vins_estimator mode监听几个Topic(频率2000Hz),将imu数据,feature数据,raw_image数据(用于回环检测)通过各自的回调函数封装起来 ros::Su ...
 - VINS(三)IMU预积分
		
IMU的数据频率一般远高于视觉,在视觉两帧k,k+1之间通常会有>10组IMU数据.IMU的数据通过积分,可以获取当前位姿(p位置,q四元数表达的姿态).瞬时速度等参数. 在VIO中,如果参考世 ...
 - IMU预积分
		
https://www.sohu.com/a/242760307_715754 http://www.sohu.com/a/243155537_715754 https://www.sohu.com/ ...
 - [转载]在线文档预览方案-Office Web Apps
		
最近在做项目时,要在手机端实现在线文档预览的功能.于是百度了一下实现方案,大致是将文档转换成pdf,然后在通过插件实现预览.这些方案没有具体实现代码,也没有在线预览的地址,再加上项目时间紧迫.只能考虑 ...
 - 泡泡机器人SLAM 2019
		
LDSO:具有回环检测的直接稀疏里程计:LDSO:Direct Sparse Odometry with Loop Closure Abstract—In this paper we present ...
 - 分享| 语义SLAM的未来与思考(泡泡机器人)
		
相比典型的点云地图,语义地图能够很好的表示出机器人到的地方是什么,机器人“看”到的东西是什么.比如进入到一个房间,点云地图中,机器人并不能识别显示出来的一块块的点云到底是什么,但是语义地图的构建可以分 ...
 - 【转载】C/C++预处理器
		
转自:http://www.cnblogs.com/lidabo/archive/2012/08/27/2658909.html C/C++编译系统编译程序的过程为预处理.编译.链接.预处理器是在程序 ...
 
随机推荐
- spring-boot-2.0.3源码篇 - @Configuration、Condition与@Conditional
			
前言 开心一刻 一名劫匪慌忙中窜上了一辆车的后座,上车后发现主驾和副驾的一男一女疑惑地回头看着他,他立即拔出枪威胁到:“赶快开车,甩掉后面的警车,否则老子一枪崩了你!”,于是副驾上的男人转过脸对那女的 ...
 - nginx优化之配置文件优化一常用参数
			
#定义nginx运行的用户和用户组 user www www; #启动进程,通常设置成和cpu的数量相等 worker_processes 8 ; #为每个进程分配CPU,上面京8个进程分配到 ...
 - 改行了,学C#
			
C#数组: 定义方法 ]; ,]; //这个是二维数组 只有这一种定义方法,不像java有多种定义方法.等号前面在栈中初始化类型为一维数组类型(int[])或二维数组类型(int[,])的存储堆中地址 ...
 - 使用VC建立网络连接并访问网络资源
			
目录 1. 提出问题 2. 解决方案 1. 提出问题 在windows下可以通过系统操作,将局域网的资源映射到本地,从而实现像本地数据一样访问网络资源.实际上这些步骤也可通过代码调用win32函数实现 ...
 - Windows有点腻了?不如试试Ubuntu.
			
最近在接触Python. 因为担心环境会向Java一样,很容易影响当前的工作电脑. 所以准备搭建一台虚拟机,不过Windows的尺寸是在太大了.所以,选择安装Ubuntu. Ubuntu官方网站地址: ...
 - vmware完整克隆(linux)
			
vmware中的完整克隆是基于指定的虚拟机克隆出相同的一份出来,不必再安装 但是我们要保证三个地方不能一样,一个是主机名称(hostname),一个是虚拟网卡设备mac地址,还有一个是ip地址 所以我 ...
 - SQL Server(1)数据库基础
			
一.数据库能够做什么 1.存储大量的数据. 2.保持数据信息的一致.完整. 3.共享和安全. 4.通过组合分析,产生新的有用信息. 二.数据库的基本概念 1.数据库就是“数据”的“仓库”. 2.数据库 ...
 - SimpleDateFormat日期格式化总结
			
1.new一个java.util.Date对象,调用它的setYear.setMonth等等方法,设置你要的年月日.不过这种做法不推荐,因为setYear等方法已经过时了.2.new一个java.ut ...
 - Linux学习之路(三)Shell脚本初探
			
本文参考链接:http://www.runoob.com/linux/linux-shell.html 基本说明 Shell脚本(shell script)是一种为shell编写的脚本程序.其中she ...
 - Jquery消息提示插件toastr使用详解
			
toastr是一个基于jQuery简单.漂亮的消息提示插件,使用简单.方便,可以根据设置的超时时间自动消失. 1.使用很简单,首选引入toastr的js.css文件 html <script s ...