目录
前言
几个高频面试题目
视觉SLAM与激光SLAM有什么区别?
1.成本
2.应用场景
3.地图精度
4.易用性
算法原理
视觉 SLAM
激光雷达 SLAM
SLAM 面临的常见挑战
1) 定位误差累积,导致与实际值产生偏差
2) 定位失败,地图上的位置丢失
3) 图像处理、点云处理和优化带来高计算成本
算法思想
激光数据
里程计数据
地标
地标提取
数据关联
EKF
SLAM关键设备
SLAM过程
视觉SLAM框架解读
视觉SLAM的分类
单目
双目(多目)
RGBD相机
传统slam局限性
SLAM主要算法
EKF 的 SLAM 算法
FAST SLAM
基于深度学习的分割方法
基于多视图几何的方法
基于光流/场景流的方法
基于残差的方法
自动驾驶中的SLAM
自动驾驶SLAM的评估标准
视觉SLAM技术
1. 激光雷达定位
2. 视觉SLAM技术
3. 多传感器融合
SLAM在NVIDIA Isaac中的机器人应用
传感器数据校准
运动估计
传感器数据配准
用于实时计算的GPU
用于定位的视觉里程计
用于定位的地图构建
占用网格(用于激光雷达的SLAM)
应用场景
1. AR/VR设备
2. 室内机器人
3. 无人车
4. 室内定位(基于视觉)
5.建图相关应用
6.定位相关应用
代码实现
使用 MATLAB 实现 SLAM
SLAM 前端的传感器信号和图像处理
SLAM 后端的二维/三维位姿图
使用 SLAM 地图生成器生成占据栅格
使用来自 SLAM 算法的输出地图进行路径规划和控制
前言
SLAM是simultaneous localization and mapping的简写,中文直译为同时定位与建图,其中又以定位更为核心,建图实际上是在定位的基础上,将观测数据进行融合的过程。关于定位,我们或许听过很多相关的术语,GPS(全球定位系统),基站定位,WIFI定位,陀螺仪等等;但以上定位方案无论是适用场景,还是精度,抑或是价格,对于常见的SLAM应用都不能满足需求,因此需要寻求更好的定位解决方案。
定位本质上可以定义为一个估计问题,通过传感器的观测数据(存在不同程度的噪声)来估计位置;也可以定义为一个优化问题,通过多种观测数据之间的约束关系,对位置进行优化。逻辑上,噪声越低的传感器能够获得更好的定位精度,但需要在价格和精度上寻求balance;目前行业中使用的传感器有:激光雷达(单线、多线,能够获得对应点的深度信息),深度摄像头(TOF,结构光,双目;三种方案各有优缺点,能够获取彩色和深度图像),IMU(惯导单元,能够获得高频的位移信号),彩色摄像头(单目,鱼眼,或者是经过特殊的设计获得更大的FOV),码盘(记录累积里程,累积误差大)。
SLAM
的实现方式有很多种,也有大量的硬件平台可供选择,比如思岚科技的SLAMWARE
,整套硬件平台嵌入SLAM
技术