激光slam课程学习笔记--第1课:激光slam的发展和应用
Posted 鸿_H
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了激光slam课程学习笔记--第1课:激光slam的发展和应用相关的知识,希望对你有一定的参考价值。
前言:这系列笔记是学习曾书格老师的激光slam课程所得,这里分享只是个人理解,有误之处,望大佬们赐教。这节课介绍的是激光slam的发展和应用。
1. slam是什么
1.1 slam的定义
localization:在给定地图的情况下,估计机器人的位姿
mapping:在给定机器人位姿的情况下,估计环境地图
slam:同时估计机器人的位姿和环境地图
1.2 slam解决的问题
机器人在环境中的位姿
导航过程中需要的环境地图
2. slam的分类
部分术语解析:
metrical map: 尺度地图
topological map:拓扑地图,适用于环境比较大
hybrid map:混合地图
bayesian filters:贝叶斯滤波器
graph-based:基于图形化
2.1 基于图优化的slam
使用图grap来表示slam的过程,node表示机器人的位姿,edge表示节点之间的空间约束关系
[上图,x表示机器人位姿节点]
graph construction(front-end):前端,表示构图过程
graph optimization(back-end):后端,表示优化过程,目的将累计误差降到0
2.2 基于滤波器的slam
基于滤波器的slam,只是考虑当前时刻位姿,不用计算之前位姿,从而使得计算量比较少;但是,这会导致一个致命的问题,由于在slam过程中,不可避免产生累计误差,而对于之前产生的累计误差,基于滤波器slam是无法修复该误差的.
典型的基于滤波器slam的算法,gmapping.
滤波器slam的流程跟贝叶斯估计过程一致,大概可分为六步:状态预测,测量预测,进行测量,数据关联,状态更新,地图更新
3. slam的框架
特点:
传感器:惯性测量单元(imu)[一般用于计算角度],轮式里程计(wheel odometry)[一般用于计算距离],激光雷达(lidar)[前面两者搭配此,组成激光slam]
地图类型:覆盖栅格地图(occupany grid map)[应用更广泛,由于其对环境做了鲜明的区分],点云地图
4. 激光slam
4.1 激光slam帧间匹配算法
1)icp(iterative closest point)[点对点迭代最近匹配,匹配时有可能产生误差,由于激光的不连续造成]
2)pi-icp(point-to-line iterative closest point)[点对线迭代最近匹配,实际使用效果比1)的好]
3)ndt(normal distribution transfomation)[把地图视为很多高斯分布集合,利用高斯分布的方法来做匹配,应用比较少]
4)csm(correlation scan match)[相关匹配,注意csm也可认为是2)的匹配方法的称呼,但是这里特指相关匹配方法,其原理为暴力搜索,所以导致计算量比较大]
4.2 激光slam回环检测
1)scan-to-scan[这种方法基本淘汰了,由于激光的信息量过少,采用该方法容易出错]
2)scan-to-map[应用比较广泛,其利用当前帧信息对比历史数据进行检测]
3)map-to-map[利用当前最近的n帧激光信息组成的子图,将子图和过去的地图进行匹配][老师推荐这种方法,由于激光的信息量比较少,导致前面两者方法容易出错]
#####################
图片版权归原作者所有
致谢曾老师的付出
不积硅步,无以至千里
好记性不如烂笔头
感觉有点收获的话,麻烦大大们点赞收藏哈
以上是关于激光slam课程学习笔记--第1课:激光slam的发展和应用的主要内容,如果未能解决你的问题,请参考以下文章