ros 环境中如何自定义空白地图

如果在未知环境(未建立地图的情况下),机器人该如何运动呢?
我们可以给它设置一张空白地图,地图的尺寸可以自定义的。

在ROS中,代价地图(costmap)由两个文件组成:xx.pgm和xx.yaml。

pgm文件我们通过Gimp创建pgm文件

 

一  安装gimp     

GIMP是一款免费开源的Photoshop替代工具。虽然它缺少Adobe的一些比较花哨的功能,但是GIMP在常用功能方面与Adobe不相上下,有些方面甚至更胜一筹!

1. 添加 GIMP PPA

sudo add-apt-repository ppa:otto-kesselgulasch/gimp

2. 安装或升级编辑器

sudo apt-get update

sudo apt-get install gimp
二  通过gimp生成空白地图

  启动gimp,在“File”->"New"选择参数如下,创建一个20m×20m,分辨率是0.01pix/m的地图

“fill with”选择“White”    然后在“file”->"Export"保存为pgm格式文件,比如my_map.pgm

  ros 环境中如何自定义空白地图

然后创建一个my_map.yaml文件

image: my_map.pgm
resolution: 0.01
origin: [-10, -10, 0]
occupied_thresh: 0.65
free_thresh: 0.196 # Taken from the Willow Garage map in the turtlebot_navigation package
negate: 0