自动驾驶与机器人中的SLAM技术
从底层原理出发逐步实现自动驾驶激光SLAM、惯性导航、组合导航的核心算法
通过极简化的数学推导,让您了解算法本质
使用更简洁的C++编程方式及并发编程思想

对课程有疑问? 立刻查看课程介绍了解详情!
- 本课程包括:
- 3个月群内答疑,讲师助教及时解答
- 课程有效期为1年,建议合理规划学习
- 课程配有作业练习,助教一对一批改
- 班主任带班,严格督学,告别拖延
- 根据学习情况颁发结业证书、优秀学员证书

高翔
慕尼黑工业大学博后,清华大学博士,长期从事SLAM的研究,主要包括机器人的中的视觉SLAM技术、机器学习与SLAM的结合。主要著译作包括《视觉SLAM十四讲:从理论到实践》、《机器人学中的状态估计》、《自动驾驶与机器人中的SLAM技术:从理论到实践》,在ICRA、IROS、RA-Letters、Transactions on Mechatronics、Robotics and Autonomous Systems、Autonomous Robots等国际知名期刊、会议有多篇论文发表。
课程目标
O1点云最近邻和点云配准算法的原理与应用
深入理解K-d树、八叉树、栅格与体素等多种点云最近邻算法的原理与优劣;掌握ICP类、NDT等点云配准算法的原理与实现过程,并将上述算法熟练应用到2D/3D激光SLAM中。
O2组合导航系统与LIO系统的公式细节与实现
熟悉IMU、激光雷达、GPS等传感器的数学观测模型,掌握IMU预积分/ESKF/IEKF的公式推导,学会在滤波和图优化两种框架下实现多传感器融合的位姿估计。
O3建图与定位项目实践
根据所学理论,最终完成一整个基于多传感器融合的建图系统,并实现基于地图的融合定位,且具备改进整个系统性能的能力。
课程脉络
-
首先对SLAM中的数学基础复习,讲解SLAM在自动驾驶与机器人中的应用。随后引入自动驾驶与机器人中最重要的传感器之一——IMU,从原理出发和数学推导对IMU进行系统且深入的讲解。最后分别引入滤波方法和图优化方法,将IMU与卫星导航和轮速计进行多传感器融合,实现组合导航。
01 -
02
激光雷达成为近几年自动驾驶与机器人中高精度的传感器,本课程对激光SLAM进行着重讲解。从激光雷达的原理出发,详细推导了点云相关算法,如最近邻、ICP等,讲解2D、3D激光SLAM涉及的算法。然后使用C++对所学进行部署,并对比出各类算法的优劣。
-
课程最后我们将结合IMU和激光雷达的知识,实现二者的融合定位,分别实现LIO系统的紧耦合和松耦合形式。同时我们将学习激光建图,熟悉从公式推导到算法部署的开发流程,对SLAM技术全方位掌握。
03
课程大纲
-
第1章:自动驾驶概述、基础数学知识回顾
第一章带领学生了解SLAM在自动驾驶领域中的应用,主要包括定位和建图。随后复习SLAM中的基础知识,如运动学、优化方法等,便于对后续深入内容的讲解打下基础。
-
第2章:惯性导航与组合导航
自动驾驶领域中一个非常重要的传感器就是IMU。第二章从IMU的底层出发,由浅入深讲解了IMU的原理与使用,其中对IMU如何得到角速度和位移做了详细的解答与数学推导。本章也讲解了IMU关系最为密切的ESKF滤波器,依然是从数学公式推导出发,得到最终形式。最终将用C++实践上述原理,并利用我们所学的IMU的原理和ESKF滤波器,结合卫星导航数据进行多传感器融合导航。
-
第3章:预积分原理
本章节主要讲解了IMU中的预积分系统,该系统是IMU作为紧耦合融合定位方法中必不可少的一环,与IMU密不可分。同上一章,我们从数学公式推导出发,深入讲解预积分系统,以及如何将预积分系统加入到图优化中实现紧耦合框架。最后我们同样结合卫星导航,实现基于预积分系统的组合导航。
-
第4章:基础点云处理
项目实践
-
实践一:平抛运动轨迹仿真
通过右乘模型,实现平抛运动的状态估计和轨迹生成。
-
实践二:基于多传感器融合的平滑轨迹估计
构建包括IMU预积分约束、轮速计约束、RTK约束等在内的图优化问题,并使用g2o优化器进行求解,获取更平滑的车辆轨迹。
-
实践三:不同最近邻搜索策略的实现与对比
在基于3D体素的最近邻方法中实现Nearby6,Nearby14等不同的查询策略,并完成测试程序来对比暴力方法、体素方法、K-d树方法等不同最近邻方法在不同配置下的准召率、性能。
-
实践四:单线激光雷达退化场景检测
了解2D激光雷达的基本原理,并重点关注在挑战场景中,如长廊等环境下的退化场景检测算法。
-
实践五:在ICP和NDT算法中实现鲁棒核函数并应用在LO中
通过手写鲁棒核函数,抑制外点对点云配准结果的负面影响,提高点云配准的精度,并应用在LO中进行测试。
-
实践六:实现基于点面ICP的IEKF LIO系统
推导基于点面约束的IEKF观测方程,最终实现基于点面约束的紧耦合IEKF LIO系统。
学习收获
- 1了解与自动驾驶SLAM系统相关的底层算法原理并亲自动手实现
- 2循序渐进地实现整个SLAM系统中的各种模块,例如第四章实现的K-d树会在第五章中使用,第三章实现的ESKF滤波器可以在第七、八章使用
- 3培养良好的代码习惯和测试意识,保证每一步的正确性后再拓展应用
课程适合谁学习
自动驾驶及机器人领域融合定位/SLAM的工程师
融合定位领域的研究生及高年级本科生
课程所需的基础知识
C++编程基础
熟悉Linux操作系统
有线性代数、矩阵论、概率论等基础知识
熟悉三维空间刚体运动的表示、李群与李代数、非线性优化
全方位的学习服务
个性化增值服务,学习有保障更高效
-
作业批改 助教1V1批改作业,定期针对作业中的“通病”进行点评
-
结业证书 本课程将根据作业完成情况评选结业学员及优秀学员,颁发证书
-
实时答疑 讲师微信群答疑,及时解决大家遇到的问题
-
班班督学 班主任全程带班,不定时“关照”未交作业的同学,克服拖延
课程讨论区
已累计讨论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技术
