精品课

视觉SLAM进阶:从零开始手写VIO

系统讲解Visual与IMU的多传感器信息融合

手写只基于Eigen的优化器,不借助Ceres和g2o

全局把控VIO框架与思想,详细推导VIO预积分

  • 讲师:贺一家
  • 讲师:高翔

 对课程有疑问? 点击视频立即观看课程介绍!

课程服务

至少3个月

作业批改

助教1v1批改

课程有效期

365天

课程时长

19.2 h

¥999.00

更多信息添加客服咨询,请备注【VIO】
请确认
X
视觉SLAM进阶:从零开始手写VIO 您已经是《视觉SLAM进阶:从零开始手写VIO》-学员,是否购买最新一期?

i提示:

1. 您的《视觉SLAM进阶:从零开始手写VIO》-暂未到期,可直接学习

2. 针对以上信息如有问题,您可联系工作人员进行咨询

购买最新一期
课程介绍 课程大纲 学习服务 售前疑问
¥999.00
本课程包括:
3个月群内答疑,讲师助教及时解答
课程有效期为1年,建议合理规划学习
课程配有作业练习,助教一对一批改
班主任带班,严格督学,告别拖延
根据学习情况颁发结业证书、优秀学员证书

贺一家

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

高翔

慕尼黑工业大学博士后,清华大学自动化系博士,长期从事SLAM的研究,主要包括机器人中的视觉SLAM技术、机器学习与SLAM的结合,主编畅销书《视觉SLAM十四讲:从理论到实践》,《机器人学中的状态估计》译者之一。

以往后端作为一个黑盒子,调用开源库如ceres,g2o等,对于初学者快速上手确实非常方便。但是我们通常不知道系统内发生了什么,出了问题也不知道如何下手。更重要的是对一些计算能力有限的平台,我们甚至都无法知道如何对后端优化进一步加速;通过课程我们对后端庖丁解牛,你就能看到后端求解矩阵是如何构建的,我们如何对他进一步加速,鲁棒核函数怎么实现的等等一系列问题。另外,学习了后端,你会发现VINS-mono后端可能有问题DSO代码竟然不再难读,它会打通你SLAM的任督二脉。

课程目标

掌握VIO-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批改作业,定期针对作业中的“通病”进行点评

  • 结业证书 本课程将根据作业完成情况评选结业学员及优秀学员,颁发证书

  • 实时答疑 讲师微信群答疑,及时解决大家遇到的问题

  • 班班督学 班主任全程带班,不定时“关照”未交作业的同学,克服拖延

课程相关问题请咨询客服

添加时请备注【VIO】

点击查看
课程大纲
点击了解
学习服务
  • 1-1:课程上课操作说明
  • 1-2:【资料】课程预习资料
  • 1-3:【资料】VIO课程环境搭建说明
  • 第1章: 概述与课程介绍 4节课程1篇阅读材料·1次作业·1小时16分钟

    本节课带学生了解VIO-SLAM的应用领域以及算法优势,同时对SLAM的基础和数学公式进行回顾,方便后续几章的学习。

  • 第1节: 课程介绍

  • 2-1:【课件】概述与课程介绍
  • 17分钟 2-2:【视频】课程与内容提要
  • 第2节: VIO概述

  • 28分钟 3:【视频】vio概述
  • 第3节: 数学基础知识回顾

  • 31分钟 4:【视频】预备知识回顾
  • 第4节: 作业

  • 5-1:【作业】第一章
  • 5-2:【图文】第一章作业思路提示
  • 第2章: IMU传感器 6节课程1篇阅读材料·1次作业·1小时59分钟

    从VIO-SLAM最重要的传感器——IMU出发,详细讲解IMU的原理、标定以及应用。老师会带领学生一步一步完成大量公式的推导,做到不仅懂应用还要懂原理,带领学生举一反三。让学生不再惧怕公式,熟练掌握IMU的原理。

  • 第1节: 旋转运动学

  • 6-1:【课件】IMU传感器
  • 24分钟 6-2:【视频】旋转运动学
  • 第2节: IMU 测量模型及运动模型:MEMS 加速度计&MEMS 陀螺工作原理

  • 17分钟 7:【视频】IMU 测量模型及运动模型
  • 第3节: IMU 误差模型:确定性误差、随机误差&IMU 数学模型

  • 46分钟 8:【视频】 IMU 误差模型
  • 第4节: 运动模型离散时间处理:欧拉法&中值法

  • 9分钟 9:【视频】运动模型离散时间处理
  • 第5节: IMU 数据仿真

  • 17分钟 10-1:【视频】IMU 数据仿真
  • 5分钟 10-2:【视频】仿真代码讲解
  • 第6节: 作业

  • 11-1:【作业】第二章
  • 11-2:【图文】第二章作业思路提示
  • 第3章: 基于优化的 IMU 与视觉信息融合 5节课程1篇阅读材料·1次作业·3小时1分钟

    本章节带领学生巩固SLAM基础——非线性优化的同时,对非线性优化进行扩展,教给学生不同的优化方法。并讲解针对VIO-SLAM的优化方法。循序渐进,由浅入深的带领学生理解整个算法框架的优化过程。

  • 第1节: 基于Bundle Adjustment的VIO融合

  • 12-1:【课件】L3BundleAdjustment
  • 14分钟 12-2:【视频】基于Bundle Adjustment的VIO融合
  • 第2节: 最小二乘问题的求解

  • 59分钟 13:【视频】最小二乘问题求解
  • 第3节: VIO 残差函数的构建

  • 1小时16分钟 14:【视频】VIO残差函数的构建
  • 第4节: 误差Jacobian推导:视觉重投影残差的Jacobian&IMU 预积分残差的雅克比

  • 31分钟 15:【视频】误差Jacobian推导
  • 第5节: 作业

  • 16-1:【作业】第三章
  • 16-2:【图文】第三章作业思路提示
  • 第4章: 基于滑动窗口算法的VIO 系统:可观性和一致性 5节课程1篇阅读材料·1次作业·2小时28分钟

    本章节老师将讲述VIO-SLAM的进阶知识,从必要性入手到举例讲解再到广泛应用。加强学生对难点部分的理解。是深耕SLAM领域必经荆棘之路,老师带领学生共同度过难关。

  • 17:【课件】SlidingWindow
  • 第1节: 从高斯分布到信息矩阵

  • 32分钟 18:【视频】从高斯分布到信息矩阵
  • 第2节: 舒尔补应用:边际概率, 条件概率

  • 19分钟 19:【视频】舒尔补应用:边际概率, 条件概率
  • 第3节: 滑动窗口算法: 图优化基础、 基于边际概率的滑动窗口算法

  • 20分钟 20:【视频】 滑动窗口算法: 图优化基础、 基于边际概率的滑动窗口算法
  • 第4节: 滑动窗口中的FEJ 算法

  • 1小时1分钟 21:【视频】滑动窗口中的FEJ 算法
  • 第5节: 作业:第四章

  • 22-1:【作业】第四章
  • 13分钟 22-2:【视频】第四章作业讲解
  • 22-3:【图文】第四章作业思路提示
  • 第5章: 后端优化实践:逐行手写求解器 5节课程1篇阅读材料·1次作业·1小时58分钟

    因VIO-SLAM的IMU传感器特殊性,公式推导要复杂于纯视觉SLAM算法。本章节老师将带领学生完成非线性优化的公式推导。包括雅可比矩阵的求解、状态量的设置等。巩固了前面所授知识,并让学生对整个算法框架能够有清晰的认识。

  • 第1节: 非线性最小二乘求解

  • 23-1:【课件】滑动窗口算法实践
  • 41分钟 23-2:【视频】非线性最小二乘求解
  • 第2节: 代码讲解之单目BA求解

  • 21分钟 24:【视频】代码讲解之单目BA求解
  • 第3节: 滑动窗口算法

  • 12分钟 25:【视频】滑动窗口算法
  • 第4节: 代码讲解之Vins-Mono滑动窗口算法

  • 16分钟 26:【视频】代码讲解之Vins-Mono滑动窗口算法
  • 第5节: 作业

  • 27-1:【作业】第五章
  • 25分钟 27-2:【视频】第五章作业讲解
  • 27-3:【图文】第五章作业思路提示
  • 第6章: 视觉前端 4节课程1篇阅读材料·1次作业·1小时55分钟

    本章节巩固了SLAM基础中的特征点的提取跟踪与匹配。从理论基础到自行实现,再到参数调整,并结合代码,让同学切身实地的体会生成和优化地图点的过程,让整个算法不再“黑盒”。

  • 28:【课件】视觉前端
  • 第1节: 前端的工作

  • 37分钟 29:【视频】前端的工作
  • 第2节: 特征点提取、匹配和光流

  • 30分钟 30:【视频】特征点提取、匹配和光流
  • 第3节: 关键帧与三角化

  • 28分钟 31:【视频】关键帧与三角化
  • 第4节: 实践作业

  • 32-1:【作业】第六章
  • 18分钟 32-2:【视频】第六章作业讲解
  • 32-3:【图文】第六章作业思路提示
  • 第7章: VINS系统构建 3节课程·1次作业·2小时43分钟

    本章是同学们毕其功于一役,羽化成蝶的章节。老师只在关键的地方做提示,同学们需要结合前面全部所学,自行搭建VINS的框架,实现建图与优化。将理论和代码结合,再次巩固理论加强理解。

  • 第1节: VINS初始化:初始化状态量和原理、VINS-mono初始化公式推导、其他标定或者初始化方法推荐及介绍

  • 33-1:【课件】第七章
  • 1小时3分钟 33-2:【视频】part1
  • 45分钟 33-3:【视频】part2
  • 第2节: 实践:代码讲解

  • 31分钟 34:【视频】代码讲解
  • 第3节: 实践:作业

  • 35-1:【作业】第七章
  • 24分钟 35-2:【视频】第七章作业讲解
  • 第8章: 相机和IMU时间戳同步 4节课程·1次作业·1小时10分钟

    时间戳同步与运动模型是实际工程中很棘手的问题,并不被初学者所关注。本章节将对这两大实际工程问题进行详解。学生在学习后能够解决相应的问题,快速定位算法bug,工作能力大大提升。

  • 第1节: 基于视觉特征匀速运动模型的时间戳标定算法

  • 36-1:【课件】相机与IMU时间戳同步
  • 10分钟 36-2:【视频】 sec1 时间戳同步问题及意义
  • 第2节: 基于相机轨迹匀速运动模型的时间戳标定算法

  • 26分钟 37:【视频】sec2 时间戳延迟估计方法
  • 第3节: 算法对比总结

  • 11分钟 38:【视频】sec3 时间戳同步算法扩展
  • 第4节: 作业

  • 39-1:【作业】第八章
  • 21分钟 39-2:【视频】第八章作业讲解
  • 第9章: 课程总结 2节课程·48分钟

    本章节老师将结合自己多年工作经验,为学生们指明道路。对课程所受内容进行扩充讲解,指明行业现状、发展方向和不同算法的优势。根据不同的算法领域提供不同的资料供大家进行深一步的学习。

  • 第1节: 多传感器融合展望与资料推荐

  • 40-1:【课件】总结与展望
  • 20分钟 40-2:【视频】课程简单回顾
  • 第2节: VIO和其他传感器融合

  • 28分钟 41:【视频】vio和其他传感器融合
  • 第10章: Project: Square Root Bundle Adjustment for Large-Scale Reconstruction 1节课程·1次作业·1小时48分钟

    大作业要求学生将所选论文部署到VIO-SLAM框架中,老师将带领学生阅读论文和代码。让学生学会从更专业的角度读论文,实现论文中的公式推导并部署算法。锻炼学生从论文阅读到论文实现的能力,这将对今后的工作科研有极大的帮助。

  • 第1节: 原理与代码

  • 42-1:【论文】Square Root Bundle Adjustment.pdf
  • 58分钟 42-2:【视频】论文解读
  • 22分钟 42-3:【视频】代码框架讲解
  • 42-4:【作业】大作业
  • 42-5:【代码】Project BASolver.zip
  • 28分钟 43:【视频】大作业讲解

课程讨论区

已累计讨论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、作业会提供参考答案吗?

不提供参考答案。当每章作业截止提交后,会解锁作业思路讲解。我们希望引导大家培养独立思考的习惯和敢于动手实践的勇气,以便尽快适应实际工作中解决问题的模式。做作业过程中,如果有任何困惑和问题,可以在课程讨论区和交流群内提问解决。

X

课程预览

视觉SLAM进阶:从零开始手写VIO