ROS mapserver制作静态地图
ROS mapserver制作静态地图
静态地图构建
1、获取一个PNG地图,二值化
2、基于PNG地图,生成PGM地图,可以通过一些网站在线生成,例如Convertio
文件配置
1、将文件放置于/package/map
路径下。
2、编写yaml文件,如下
image: your_map.pgm
resolution: 0.5 # 地图分辨率,单位为米/像素
origin: [0.0, 0.0, 0.0] # 地图的左上角在世界坐标系中的位置,格式为[x, y, yaw(弧度)]
negate: 0 # 是否反转黑白,0为不反转,1为反转
occupied_thresh: 0.65 # 认为某个区域为占用(障碍物)的阈值
free_thresh: 0.196 # 认为某个区域为空闲(可通行)的阈值
3、配置launch文件
<launch><!-- 设置地图的配置文件 --><arg name="map" default="your_map.yaml" /><!-- 运行地图服务器,并且加载设置的地图--><node name="map_server" pkg="map_server" type="map_server" args="$(find your_package)/map/$(arg map)"><!-- <param name="frame_id" value="map" /> --></node><node name="rviz" pkg="rviz" type="rviz" />
</launch>
RVIZ设置