一、SLAM的误差来源
传感器观测误差与机器人控制误差的积累使得建图算法得到的环境模型总是和实际模型存在不一致并难以消除。
二、SLAM的数据优化
视觉数据优化的过程就是在观测的数据中筛选出更为有效的数据,从而降低计算量以及减小误差。
三、SLAM的状态估计
SLAM算法本质上是一类状态估计问题,但它需要同时估计连续量状态和离散量状态:
- 连续状态,为机器人位姿和环境中特征的位姿;
- 离散状态量,为在当前观察数据中检测到的物体和已检测物体之间的对应关系。
四、“在线SLAM”和“全SLAM”
SLAM问题可以分为在线SLAM问题和全SLAM问题:
- 在线SLAM问题:仅包括当前时刻的位姿,不需要一直保存之前所有时刻的观察数据和控制指令;
- 全SLAM问题:需要计算机器人的整个轨迹和地图路标的所有数据。
五、“激光SLAM”与“视觉SLAM”
SLAM按照传感器来分,分为视觉SLAM(VSLAM)和激光SLAM,视觉SLAM基于摄像头返回的图像信息,激光SLAM基于激光雷达返回的点云信息。
优点/缺点 | 激光SLAM | 视觉SLAM |
优点 | 可靠性高,实时性高,技术成熟 | 结构简单,安装方式多元化 |
建图直观,精度高,不存在累计误差 | 无传感器距离限制成本低 | |
地图可用于路径规划 | 可提取语义信息 | |
缺点 | 受Lidar探测范围限制 | 环境光影响大,暗处(无纹理)区域无法工作 |
安装有结构要求 | 运算负荷大,构建的地图本身难以直接用于路径规划与导航 | |
地图缺乏语义信息 | 传感器动态性能还需提高,地图构建时存在累计误差 |
六、SLAM领域主要涉及到的五个关键问题
SLAM领域主要涉及到的五个关键问题:
- 地图的表示方法;
- 不确定信息处理;
- 数据的关联;
- 机器人的自定位;
- 探索规划。
针对SLAM问题,前人提出了很多解决方法,其中基于概率的SLAM方法得到了广泛的应用,它主要包括马尔可夫定位法、蒙特卡洛定位法(粒子滤波法)、稀疏扩展滤波算法、卡尔曼滤波法。
马尔可夫定位法:可以在初始位姿不确定的情况下确定机器人的位置,解决机器人的“绑架”问题。计算量非常大、实时性差,不能用于大规模的位置环境。
粒子滤波算法:可以应用在非线性和非高斯的系统中,而且精度很高,但同时也存在着粒子退化耗尽的问题。
卡尔曼滤波法:解决离散数据线性滤波的方法。