高翔【自动驾驶与机器人中的SLAM技术】学习笔记(二)——带着问题的学习;一刷感受;环境搭建

按照作者在读者寄语中的说法:我们得榨干这本书的知识。

带着问题

为了更好的学习,我们最好带着问题去探索。

第一:核心问题与基础知识

如上图:这本书介绍了SLAM相关的核心问题和基础知识。王谷博士给我们做了梳理:

  • ESKF
  • 预积分
  • 卡尔曼滤波器
  • 因子图优化
  • 松耦合/紧耦合
  • 激光SLAM
  • 高精定位
  • ......
  • 点云处理

第二:复现与实践

这本书的另一个意义:我们直接读SLAM相关的论文,可能知道大概意思,但是工程实践很难。复现难,但是这本书提供了一个从论文到实现的指引。哪怕我们没有原论文源码,也可以基于其原理,写出自己的SLAM实现。这对大部分人是非常有价值和帮助的。

第三:带着问题去探索:

  • 如何利用IMU产品手册设置IMU运动方程噪声参数
  • NDT有什么高效直接的实现方法
  • 松耦合/紧耦合的LIO

第四:不只自动驾驶,还可VR、AR

做VR或者AR也要用到SLAM。同样要用:卡尔曼滤波、预积分、子地图、回环检测等技术。



一刷的感受:

一:不会,不懂

我说一下读第一遍的感受:好多东西根本不懂。

这时候的做法:分为两个流派:

  • 一个流派:按部就班,就按照这个流程,循序渐进。一点点走上去。
  • 一个流派:直捣黄龙,逢山开路,遇水搭桥。

1、先说第一个流派的:

  • 好处是一步一个脚印,而且每一步都有额外的收获,每一步的收获,都会在以后无限有用。因为技术是一种层层堆叠的东西。你如果就是做技术的,那么静下心来踏踏实实的走上去,非常好。因为代表了无限的可能。因为你基础牢固,内功扎实。你修的是内功。以后想创新想突破都容易。碰到问题,知道如何完善,甚至优化。
  • 问题是慢,而且容易走偏。这里说最优化和矩阵论,是研究生课程,你如果是研究生,修过这个心法,正好,不是事。如果你是本科生,如何自处。重新学习一遍这两门课最少也得两三周。你是学生还好,你如果是工作的人。如何处理。
  • 这两门课其实是非常基础和实用的课程,如果走第一个流派,真心应该研究一下。

2、另一个流派:

  • 碰到不会的再学。他说最优化和矩阵论,那么当碰到读不懂的地方时,直接借助方便的搜索引擎去学习,明确你的学习目标,他说最优化的什么东西。知道专业名词 ,然后弄明白这个专业名词 做什么,找一文读懂 专业名词,借助B站这类网站去找课程学习。
    • (我记得有人分享过:如何快速学习一个行业 :找20个这个行业最高频的专业词汇,无论是与人沟通还是搜索,还是看视频课,弄懂他们之后,这个行业你就入门了)
  • 逢山开路,遇水搭桥,碰到不会的再去学,这样有目的的去学习,把有限的精力,集中在你的目标上。
  • 不足就是创新不足,后劲不足。但也要看你具体要做啥。你的目标大小。目标就是搞懂,就别整其他没用的。

我一刷,只看我能看懂的。

学习源码。看看这本书,到底都是什么内容,哪些工作中可以直接拿来用。哪些是你不会,但是后面你也不用的。哪些是你不会,后面搞不定的,这些是二刷必须要弄会的。这个是广度。

我二刷,要把看不懂的,弄懂。

这种提高,是深度的。

二、ROS

ROS是做SLAM必须要会的,这本书不要求,但是你真心要会。我是跟赵虚左和古月居学的。

三、PCL

他虽然没提,但是你也要会。可以不专精,但是翻译官网的那本书过一遍是有意义的。

四、C++

你可以在本书学习中跟着高翔的源码一起学。特别是一些C++的新特性。多读读他的源码很有价值。高翔不仅书有营养,代码也写的相当好。



环境搭建

  • 操作系统:Ubuntu20.04
  • C++标准:C++17
  • 硬盘空间:如果是虚拟机,请考虑笔记本单独有个400G左右的空间。因为rosbag的包都比较大。数据集有270GB。而且虚拟机也越来越大,注意记得清理
  • 清理虚拟机办法:


相关推荐
宝绿特塑业再生科技5 小时前
改性HDPE再生颗粒在户外家具挤出发泡板材中的色差控制与高品质价值重构
经验分享·科技·学习·生活·1024程序员节·户外家具
todoitbo7 小时前
在 Ubuntu ARM64 上运行 Q1 V3.0 MuJoCo 模型:加载、步进和单执行器响应
linux·运维·ubuntu·ai·机器人·仿真教程·启元
andrsted7 小时前
练题簿在线免费刷题:让整理过的资料,变成能反复练习的题库
学习·微信小程序·小程序·学习方法·刷题·1024程序员节
dghongcheng7 小时前
喷涂机器人品牌推荐:六轴 vs 协作机器人怎么选
机器人·喷涂·喷漆设备·自动喷涂线·自动喷涂
Alsn868 小时前
Windows 安装 Ollama 及本地模型部署
学习·1024程序员节
todoitbo9 小时前
Q1 MuJoCo 模型里的 49 项传感器定义与 60 维数据:一次关节和 IMU 输出核验
人工智能·ai·机器人·1024程序员节·启元机器人
欣欣之王来了9 小时前
原始HTML插值:v-html指令的使用与安全风险
前端·学习·架构·项目·vue3教程
知识分享小能手11 小时前
C学习教程,从入门到精通,C语言学生信息管理系统 — 知识点详解(18)
c语言·学习·1024程序员节
破芽12 小时前
learn-claude-code-s05-s11-学习笔记
笔记·学习
pipixia2003312 小时前
C++ 面试高频:namespace 的 6 个知识点,从 using 到匿名命名空间
c语言·学习·算法·嵌入式·命名空间·c++面试·匿名命名空间