ROS地图的实际距离测量

ROS中通过gmapping/hector/cartographer建图后得到的地图上,如何知道两点对应的实际距离值?

ROS地图文件

通常,建图保存后得到.pmg和.yaml两个文件。


其中.pgm是地图的灰度图像, .yaml是参数文件。


ROS地图的实际距离测量_第1张图片
test_map.pgm

test_map.yaml

image: test_map.pgm
resolution: 0.050000
origin: [-13.800000,-12.200000,0.000000]
negate: 0
occupied_thresh: 0.9
free_thresh: 0.196

这里与地图大小有关的参数是resolution, 代表每个像素对应的实际距离 (0.05 m/pixel)。

根据这个分辨率,我们只要知道两点的像素距离,有可以算出对应的实际距离。

GIMP测量

可以用图片编辑软件打开.pgm来测量,ubuntu下推荐使用GIMP。https://www.gimp.org/

GIMP是一款GNU图片编辑软件,ubuntu下可以通过apt安装。

~$: sudo apt-get install gimp

安装后用终端输入gimp运行

~$: gimp

打开.pgm


ROS地图的实际距离测量_第2张图片

点击左侧Toolbox中的MeasureTool, 勾选Tool Options中的Use info window, 在图片上按住shift拖动测量两点的像素距离。


ROS地图的实际距离测量_第3张图片

例如这里测得像素距离是42.0,则实际的距离是
42.0*0.05 = 2.1m

你可能感兴趣的:(ROS地图的实际距离测量)