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
然后创建一个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