首页 > 代码库 > Cartographer系列之四——地图文件导出
Cartographer系列之四——地图文件导出
个人能力有限,若有错误请批评指正!
转载请标明出处:http://www.cnblogs.com/wenhust/
一、目的
Cartographer是google的开源2D Laser-based SLAM方案,可以直接在ROS上运行并建图(可参考之前的文章)。不过到目前为止,还没有提供可以直接保存导出已完成的地图文件的功能,但一些如路径规划等后续工作有赖于地图文件得以进行,因此在这里提供一个简便方法可以将cartographer的地图文件保存出来。
二、方法
在cartographer_ros的源码中已经存在map_writer.h、map_writer.cc的文件,我的方法是直接在occupancy_grid.cc中,增加对map_writer的使用,使其直接将occupancy_grid作为地图文件保存出来,其具体增加代码如下:
- 增加头文件包含
#include "cartographer_ros/map_writer.h"
- 将occupancy_grid作为地图文件保存
在occupancy_grid数据完成后,即occupancy_grid.cc的最后for循环之后增加cartographer_ros::WriteOccupancyGridToPgmAndYaml(*occupancy_grid,"/tmp/test");
重新编译文件成功后,运行程序,便可以在tmp目录下看到test.pgm和test.yaml文件了,其中test.pgm是地图文件、test.yaml是地图信息文件。
Cartographer系列之四——地图文件导出
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。