建图
当我们已知了机器人的正确的位姿了之后,就可以进行建图了。
地图分类
尺度地图:栅格地图就是一个尺度地图。如果场景太大的话不太合适
拓扑地图:机器人领域用的多,
若两点之间有连续,就链接一条边,在超大环境里面路径规划的效果
语义地图:赋予图上的点意味着什么,有更为抽象的信息来处理整个地图
覆盖栅格建图算法(经典的算法)
- 环境分解一个个小的栅格
- 每一个栅格有两个状态:占用,空闲
- 非参模型
- 天然可通行区域,适合轨迹规划。
- 随着地图增大,内存需求急剧增加(2d还行,影响不大)
目的:
在给定机器人位姿和一一对应的传感器观测数据的时候,即
估计出最可能的地图
m表示地图。就是一个极大似然估计
假设
栅格地图中的每一个值都是二值的随机变量,只能取两个值。占用或者空闲
- $p(m_i)=1$表示此栅格被占用py
- $p(m_i)=0$表示此栅格为空闲
考虑建图的过程中 环境和不会发生改变的情况,假设地图中的每一个栅格都是独立的,因此数学表达式可以表达为:
因此只要对每一个栅格进行计算就可以得到全局的地图
一束激光导出,经过的栅格地区是free, 达到的栅格块是障碍物
计数建图算法Count Model
对于每一个栅格统计两个两,misses(i) 和 hits(i)
- misses(i)表示栅格i被激光束通过的次数,就是被标位free的次数
- hits(i)表示栅格i被激光击中的次数,即被标位occupied的次数
p(mi) = hits(i)/(miss(i) + hits(i))超过阈值就认为是Occupied
hits(i)/(miss(i) + hits(i))即表示为栅格i的极大似然估计
TSDF建图算法
这个可以保证建立出来的墙面栅格不会厚
多次观测的融合更新方法,加权最小二乘法
Comments