SLAM十四讲 第1-2讲 前言和初识SLAM

想象一下,你是一个小机器人,置身于一个完全陌生的房间里,你不知道自己在房间的哪个位置,也不知道房间的结构和布局是怎样的。你的目标是能够自主地在这个房间里行走,找到出口,并且把房间的地图画出来。SLAM就是帮助你完成这个任务的技术。它可以让你同时做两件事情:第一,实时地知道自己当前在房间里的具体位置,就像你知道自己在房间里的哪个角落;第二,边行走边把房间的地图画出来,就像你在走的时候慢慢描绘整个房间的布局。

在这之前,我们研究一下三个问题:

为什么需要SLAM

当机器人、自动驾驶车辆或其他智能系统在未知的环境中行动时,就像一个陌生的地方你不知道路在哪里,SLAM 就像是它们的“眼睛”和“脑子”。

SLAM 可以帮助它们实时地了解自己的位置,就像你在地图上知道自己所处的位置一样。同时,它也能帮助它们建立地图,就像你画地图标记周围的街道和建筑物一样。

有了 SLAM,这些智能系统就能在未知的环境中自主导航,避开障碍物,找到目标位置,就像你有地图指引你一样。这样,它们就能更加智能地完成任务,安全地穿行在未知的世界里。

什么是SLAM

SLAM 是 Simultaneous Localization and Mapping 的缩写,中文译作“同时定位与地图构建”。它是指搭载特定传感器的主体,在没有环境先验信息的情况下,于运动过 程中建立环境的模型,同时估计自己的运动 。

如何用SLAM

  1. 自动驾驶汽车:SLAM技术在自动驾驶汽车中起到关键作用。通过激光雷达、摄像头等传感器数据,汽车可以实时地定位自身位置,并构建出周围环境的地图,从而实现自主驾驶和避障功能。
  2. 无人机导航:SLAM技术可以用于无人机的自主导航和航迹规划。通过搭载激光雷达或视觉传感器,无人机可以实时感知周围环境,并建立地图,从而能够自主飞行和执行任务。
  3. 机器人导航:在机器人导航领域,SLAM技术可以使机器人能够在未知环境中自主移动和完成任务。机器人通过感知和地图构建,可以规划路径、避障和定位自身位置。
  4. 增强现实:在增强现实应用中,SLAM技术可以通过激光雷达或摄像头等传感器获取环境信息,并将虚拟内容与真实世界进行融合,使得虚拟内容与现实场景相匹配。
  5. 室内定位与导航:SLAM技术可以用于室内环境的定位和导航,如在大型商场、医院、工厂等室内场所中实现人员或物品的定位和导航。
  6. 虚拟现实游戏:在虚拟现实游戏中,SLAM技术可以用于将虚拟内容与真实环境进行交互,使玩家能够在现实世界中体验虚拟游戏内容。

基础知识

学习SLAM时,会接触Eigen、OpenCV、PCL、g2o、cere等库,要掌握它们在Linux操作系统中的使用方法。