视觉SLAM进阶:从零开始手写VIO
系统讲解Visual与IMU的多传感器信息融合
手写只基于Eigen的优化器,不借助Ceres和g2o
全局把控VIO框架与思想,详细推导VIO预积分
- 本课程包括:
- 3个月群内答疑,讲师助教及时解答
- 课程有效期为1年,建议合理规划学习
- 课程配有作业练习,助教一对一批改
- 班主任带班,严格督学,告别拖延
- 根据学习情况颁发结业证书、优秀学员证书

贺一家
中科院自动化所博士,“白巧克力亦唯心”博主,研究方向包括视觉SLAM、多传感器信息融合。CSDN博客专家(累计访问174万+),发表SCI和EI论文数篇。

高翔
慕尼黑工业大学博士后,清华大学自动化系博士,长期从事SLAM的研究,主要包括机器人中的视觉SLAM技术、机器学习与SLAM的结合,主编畅销书《视觉SLAM十四讲:从理论到实践》,《机器人学中的状态估计》译者之一。
以往后端作为一个黑盒子,调用开源库如ceres,g2o等,对于初学者快速上手确实非常方便。但是我们通常不知道系统内发生了什么,出了问题也不知道如何下手。更重要的是对一些计算能力有限的平台,我们甚至都无法知道如何对后端优化进一步加速;通过课程我们对后端庖丁解牛,你就能看到后端求解矩阵是如何构建的,我们如何对他进一步加速,鲁棒核函数怎么实现的等等一系列问题。另外,学习了后端,你会发现VINS-mono后端可能有问题DSO代码竟然不再难读,它会打通你SLAM的任督二脉。
课程目标
目标O1巩固算法与编程基础
理解环境搭建的原理,学会运用debug等实用工具,将SLAM算法基础熟练部署到工程中。
目标O2VIO-SLAM公式细节与部署
熟练掌握VIO-SLAM算法中的细节,学会从公式推导到算法实现的过程。在公式的推导、工程和部署等多方面得到全方位提升。
目标O3算法应用 项目实战
基于所受理论基础,自行搭建VIO-SLAM框架,实现建图等功能。
课程脉络
-
巩固基础
首先对SLAM中的基础知识进行一系列的巩固,包括旋转矩阵、四元数、非线性优化等。之后将基础知识适配到VIO-SLAM算法上,让大家能够巩固基础的同时还能由浅入深的理解这门课。
-
公式推导、模块部署
随后将深入探讨VIO-SLAM算法中独有的技术细节,例如IMU传感器、滑动窗口等。从理论讲解到公式推导再到作业部署,带领大家实现算法从“0”到“1”的过程,循序渐进的拨开VIO-SLAM算法中的迷雾。
-
整合演练
课程最后的大作业是基于之前所学内容自行搭建VIO-SLAM框架,并根据所选论文实现其中的理论。自行实现从公式推导到算法部署,巩固VIO-SLAM的算法框架和实现细节,并锻炼自行写出算法的能力,可谓全方位的得到提升。
课程大纲
-
第1章:概述与课程介绍
本节课带学生了解VIO-SLAM的应用领域以及算法优势,同时对SLAM的基础和数学公式进行回顾,方便后续几章的学习。
-
第2章:IMU传感器
从VIO-SLAM最重要的传感器——IMU出发,详细讲解IMU的原理、标定以及应用。老师会带领学生一步一步完成大量公式的推导,做到不仅懂应用还要懂原理,带领学生举一反三。让学生不再惧怕公式,熟练掌握IMU的原理。
-
第3章:基于优化的 IMU 与视觉信息融合
本章节带领学生巩固SLAM基础——非线性优化的同时,对非线性优化进行扩展,教给学生不同的优化方法。并讲解针对VIO-SLAM的优化方法。循序渐进,由浅入深的带领学生理解整个算法框架的优化过程。
-
第4章:基于滑动窗口算法的 VIO 系统:可观性和一致性
本章节老师将讲述VIO-SLAM的进阶知识,从必要性入手到举例讲解再到广泛应用。加强学生对难点部分的理解。是深耕SLAM领域必经荆棘之路,老师带领学生共同度过难关。
项目实践
-
实践一:IMU仿真实践
设置IMU仿真代码中的不同噪声参数,然后运行imu_utils生成Allan方差标定曲线的结果,并比较欧拉积分和中值积分的效果。
-
实践二:使用LM算法估计曲线参数
根据LM算法估计曲线 y=e^{(ax^2+bx+c)} 参数的程序绘制LM阻尼因子μ随着迭代变化的曲线图,将曲线函数改成 y=ax^2+bx+c,修改代码中残差计算,雅克比计算等函数,完成曲线参数估计。
-
实践三:绘制信息矩阵
某时刻,SLAM系统中相机和路标点的观测关系如下图所示,其中 ξ 表示相机姿态, L 表示观测到的路标点。当路标点 L 表示在世界坐标系下时,第 k 个路标被第 i 时刻的相机观测到,重投影误差 r ( ξ ,L ) 。另外,相邻相机之间存在运动约束,如IMU或者轮速计等约束。绘制出信息矩阵及请绘制相机 ξ 被marg以后的信息矩阵。
-
实践四:VINS系统构建
搭建一个最简单的VINS系统,包括三个部分:
前端数据处理:特征提取匹配,IMU预积分;
初始化:系统初始状态变量(重力方向,速度,尺度等等);
后端:滑动窗口优化,手写LM/DogLeg算法。 -
实践五:将IMU仿真数据接入到VINS系统中
将IMU仿真数据接入到VINS代码中,生成无噪声和有噪声情况的两种运行轨迹;对比不同后端优化算法下的精度和效率;对比串行/并行算法对系统效率的影响。
学习收获
- 1学习过程中一步一步推导公式,打下扎实的数学基础
- 2通过学习视觉和IMU的信息融合,掌握基于图优化的多传感器信息融合框架
- 3通过手写后端优化器,理清SLAM后端的每个细节,加深对优化的理解,为以后工作中移植,加速或改进自有的SLAM系统提供技术支持
- 课程适合谁学习
-
vSLAM初级算法工程师/已入门的研究者
渴望进一步学习多传感器融合原理这一主流方法
-
SLAM算法工程师
不满足于日常调库、调参,渴望理解算法本身的原理
-
原创SLAM系统的研究者
通过手写后端系统,透彻理解根本原理,拓宽设计思路
- 课程所需的基础知识
- 学习本门课程需要有一定的视觉SLAM基础
- 希望你已经认真学习过《视觉SLAM十四讲》、深蓝学院『视觉SLAM理论与实践』线上课程
- 系统阅读过主流开源代码(如ORB-SLAM、SVO、DSO等)
以上三个条件,满足一项即可
全方位的学习服务
个性化增值服务,学习有保障更高效
-
作业批改 助教1V1批改作业,定期针对作业中的“通病”进行点评
-
结业证书 本课程将根据作业完成情况评选结业学员及优秀学员,颁发证书
-
实时答疑 讲师微信群答疑,及时解决大家遇到的问题
-
班班督学 班主任全程带班,不定时“关照”未交作业的同学,克服拖延
-
第1节: 课前资料
- 1-1:22222
- 1-2:综述论文.zip
- 1-3:ROS安装参考资料.zip
- 2:【视频】10月16号直播答疑
- 3:【课件】L2 Vehicle Longitudinal Control
- 第1章: 车辆轨迹追踪的优化控制 57分钟
- 4:【视频】What's Autonomous Vehicle ?
- 5:【课件】L1 Introduction.pdf
- 6:【视频】Modern Control Theory Background
相关讲师
课程讨论区
已累计讨论26495个问题
课程配备专属讨论区,不仅有讲师、助教全程答疑,更能与同学们交流讨论,在思维碰撞中加深理解
在课程中随想随问,同学们的问题也可能启发到你

在课程讨论区,和684位同学一起探讨更多问题···
作业批改
已累计批改4951份作业
助教一对一批改作业,定期针对作业中的问题进行评讲

结业证书
课程根据作业完成情况评选结业学员及优秀学员,颁发证书
优秀学员更能获得额外购课优惠

班班督学
班班、助教、讲师全程带班,日常答疑解惑

FAQ
1、课程可以试听吗?
可以,您可以联系客服领取试听内容,根据试听的效果决定是否报名。
2、报名课程后,如果不满意,可以退款吗?
我们承诺: 报名后7天内且学习进度停留在第一章节的内容可以无条件全额退款,若您的学习进度超过第一章或报名时间超过7天将不再支持退款哦。课好不好,学了就知道了!
3、报名课程的费用可以开发票吗?
深蓝学院所有课程都可以开具发票。您可以登录深蓝学院官网(https://www.shenlanxueyuan.com),进入个人“账户中心”,在线申请。
4、报名后怎么开始学习呢?
PC端:登录深蓝学院官网(https://www.shenlanxueyuan.com),进入“个人中心”或“我的课程” 的课程即可开始学习。课程中包含讲师讲解的视频、课件、代码、作业及其它学习资料。建议在PC端学习体验更好。
如果想缓存视频,可下载深蓝学院APP。
5、可以跟讲师直接交流吗?
报名课程后添加课程对应的班主任微信,由其邀请加入微信答疑群。在答疑群内,您可以直接跟讲师和其他同学讨论交流。
报名后在对应的课程详情页,可查看对应的班主任微信。
6、学习形式和学习周期是怎样的?
为保证学习质量方便同学们反复观看,本课程采用录播形式。建议同学们登录深蓝学院PC端官网体验更佳。
7、课程有有效期吗?
为了督促同学们学习,保证学习效率,学院的课程有效期均为一年,当课程有效期截止后将不再支持观看视频、下载课件等课程服务及操作。若同学们依旧想观看视频和下载课件,建议可选择续费本课程。需要提醒大家的是,课程答疑、作业批改&讲评等课程相关服务期从报名加入课程后开始计算至少保证三个月。
8、作业会提供参考答案吗?
不提供参考答案。当每章作业截止提交后,会解锁作业思路讲解。我们希望引导大家培养独立思考的习惯和敢于动手实践的勇气,以便尽快适应实际工作中解决问题的模式。做作业过程中,如果有任何困惑和问题,可以在课程讨论区和交流群内提问解决。
课程预览
视觉SLAM进阶:从零开始手写VIO
