VIO 初始化小结 - 10.17
最近几个月忙于博士毕业,找工作一直没有继续更新博客,希望以这一篇开始,每个月能够继续有几篇总结博客。
首先review一下比较著名的vio系统
- Tightly coupled
- EKF: mainly ETH ASL R.Siegwart work
- Tightly-coupled
- EKF:
- MSCKF->MSCKF2.0->SR-ISWR observability and consistency analysis
- ROVIO
- SR-ISWF
- Optimization:
- OKVIS
- VINS-Mono (more robust initialization compared with OKVIS and less sensitive towards noise and bias prior)
- Inertial ORB (no original open source, no metric scale estimation at the beginning, sudden change of Map when the scale is solved)
- EKF:
VIO系统的优点显而易见,难点在于如何将visual和inertial两个传感器的优缺点有效结合,达到快速初始化(最重要的是尺度和重力方向),稳定鲁邦估计,以及对噪声和传感器参数(相机IMU外参,IMU零偏)的高度容忍或者在线估计。
这篇博客主要比较集中优化方法的初始化过程,为了达到非线性优化问题的最优解,一个靠谱的初值可以让系统很快收敛,不仅可以提高优化速度,也可以达到optimal的状态估计。相反,初值估计错误不仅导致非线性优化问题陷入局部最小,而且使得参数估计完全错误,从而使得系统崩溃(俗称系统飞掉,特别是imu的bias参数估计错误)。
首先介绍OKVIS的初始化方法,OKVIS对IMU的参数非常敏感(相对于VINS-Mono使用商用级别commercial-grade的IMU即可,它需要使用工业级别industrial-grade的IMU来完成初始化操作),因为整个系统的状态propagation就是基于IMU,更严苛的是系统的初始化状态也完全依赖于初始(几十个或者几百个)IMU数据的propagation给出的姿态,如果是pure rotation运动,则使用2D-2D匹配进行跟踪,轨迹仅由IMU给出,当可以三角化出landmark时(有足够的2D-2D匹配内点,且内点可以恢复出3D点(使用Kneip的Opengv中算法)),初始化完成。后续同时使用3D-2D匹配和2D-2D匹配。因此,IMU给出的初始轨迹估计需要比较准确,才可以给出初始轨迹,并且确定何时可以初始化完成。
VIO 初始化小结 - 10.17的更多相关文章
- 背水一战 Windows 10 (17) - 动画: ThemeTransition(过渡效果)
[源码下载] 背水一战 Windows 10 (17) - 动画: ThemeTransition(过渡效果) 作者:webabcd 介绍背水一战 Windows 10 之 动画 ThemeTrans ...
- 发现struct proc_dir_entry内核3.10.17移到internal中去了,倒
struct proc_dir_entry 原:2.6.38.8 在#include <linux/proc_fs.h> 现:3.10.17 在fs/proc/internal.h:str ...
- Windows 8.1 正式版微软官方原版镜像下载(新增10/17新版下载)
中文版:中国区OEM预装版本,特定国家版,锁定语言,其它功能和核心版没有区别.简体中文单语言版:锁定语言,其它功能和核心版没有区别.专业版+核心版[零售版][推荐]:镜像内包含专业版(Professi ...
- Dell Technology Summit(2018.10.17)
时间:2018.10.17地点:北京国家会议中心
- 10.17 NOIP模拟赛
目录 2018.10.17 NOIP模拟赛 A 咒语curse B 神光light(二分 DP) C 迷宫maze(次短路) 考试代码 B 2018.10.17 NOIP模拟赛 时间:1h15min( ...
- WIN8.1 PRO RTM VOL.Enterprise.2013.10.17
Windows 8.1 Pro VL (x64) - DVD (Chinese-Simplified)ISO|Chinese - Simplified|发布日期: 2013/10/17文件名: cn_ ...
- 2020.10.17 JZOJ 提高B组T2 导弹拦截
2020.10.17 JZOJ 提高B组T2 导弹拦截 题目 Description 某国为了防御敌国的导弹袭击,发展出一种导弹拦截系统. 敌国的导弹形成了立体打击,每个导弹可以抽象成一个三维空间中的 ...
- 10.17小结:table.copy() 和 distinct 查询
1. 当datatable 已存在于一个dataset中时,可以使用 ds.tables.add(dt.copy()) 来向dataset 中添加datatable; 2. 当datarow已存在于一 ...
- 16.10.17学到的Java知识
1. 例:3-2.6==0.4的值是什么?可能乍一看,感觉是返回TRUE,因为3-2.6=0.4,0.4==0.4:所以返回TRUE. 然而,上面分析在JAVA中是错的. 由于浮点数的运算在JAVA中 ...
随机推荐
- openCV2马拉松第19圈——Harris角点检測(自己实现)
计算机视觉讨论群162501053 转载请注明:http://blog.csdn.net/abcd1992719g/article/details/26824529 收入囊中 使用OpenCV的con ...
- Linux CentOS6系统安装最新版本Node.js环境及相关文件配置
Node.js,当前应用非常广泛的Javascript运行环境,采用C++编写的,目前应用较多的用于WEB应用中,执行效率还是非常高的,虽然老左不从业程序的开发,但是有些时候在玩VPS的时候还是会遇到 ...
- docker-3-常用命令(中)
容器命令 1.有镜像才能创建容器,这是根本前提(下载一个CentOS镜像演示) docker pull centos 2.新建并启动容器 docker run [OPTIONS] IMAGE [COM ...
- 1.spring:helloword/注入/CDATA使用/其他Bean/null&级联/p命名空间
新建工程,导入jar,添加spring配置文件(配置文件xxxx.xml)! 1.Helloword实现 Helloword.java public class HelloWord { private ...
- shiro简单入门介绍
shiro是apache的一个java安全框架 可以完成认证,授权,加密,会话管理,基于web继承,缓存等 功能简介: 从外部来看: shiro架构 Subject:主体,代表了当前“用户”,这个用 ...
- Linux Shell 编程 文件转置问题
给定一个文件 file.txt,转置它的内容. 你可以假设每行列数相同,并且每个字段由 ' ' 分隔. 示例: 假设 file.txt 文件内容如下: name age alice 21 ryan 3 ...
- 浅谈sql之连接查询
SQL之连接查询 一.连接查询的分类 sql中将连接查询分成四类: 内链接 外连接 左外连接 右外连接 自然连接 交叉连接 二.连接查询的分类 数据库表如下: 1.学生表 2.老师表 3.班级表 表用 ...
- 【Node.Js】npm国内被墙的解决方法
移动网就是坑,有VPN也上不去,真操蛋~先吐槽一下@中国移动 折腾了一晚上,总是报连接错误,导致我npm安装不上,查了半天资料,找到个靠谱的,粘贴过来备用. 原文地址:http://snoopyxdy ...
- The Linux Kernel
- 如何在IAR工程中创建和使用模板
路径为:Edit -> Code Templates -> Edit Templates 如下图: #TEMPLATE "&FileDeclare>&Fi ...