目的:利用点云,生成概率栅格地图,并保存成 pgm 图片格式
主要的函数有三个:
void GetGridMap(); 注册地图
SaveMap 可以保存成 pgm图片 或者 pcd 格式(3D点云)--pcl库
publishMap 发布地图
问题:
1. TraceLine 函数是干啥的?
cartographer中对于射线经过的格子做了free 处理吗?在 CastRays 函数中,有一个选项 insert_free_space 来决定,是否更新射线经过的格子。
cartographer中,correspondence_cost_cells_ 保存unit16格式的值,代表每个cell的概率值。0 代表unknown, 这个变量不会进行初始化,所以,默认都是 0 unknown。 问题是,如果 insert_free_space 不进行free 区域的状态更新 , 可以吗?岂不是很多free 区域都是 unknown的?
正常的,cell初始概率值是多少?0.5
2. grid_map[id] += _Lfree - _L0;// ???
- 这个是从反演模型推导来的,_L0 是 log-odd初始值,通常认为每个cell的初始值---占据的概率为0.5,则_L0初始值为0.
- _Lfree 根据传感器模型得到,固定值
上图即反演模型推导结果,绿色部分即 _Lfree - _L0 或者 _Locc - _L0
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)