Gazebo生成world某一高度的截面图

Gazebo生成world某一高度的截面图

    • Gazebo插件collision_map_creator
    • 演示代码下载
    • 代码编译
    • 代码运行

Gazebo插件collision_map_creator

Gazebo为用户提供了丰富的插件,本文介绍一种用于生成环境二维截面图的插件libcollision_map_creator.so。本文只分享插件的用法,对代码不做解释,对代码感兴趣的同学可以参考如下链接。
链接: link.

演示代码下载

代码位于github上,可以使用如下命令下载:

git clone https://github.com/osrf/collision_map_creator_plugin

代码编译

编译代码前需利用如下命令安装依赖:

sudo apt-get install protobuf-compiler

接下来利用如下命令编译(本文假定代码位于~/collision_map_creator_plugin路径下,如不同,请调整:

cd ~/collision_map_creator_plugin
mkdir build
cd build
cmake ../
make

之后将编译好的插件添加到gazebo插件路径下:

export GAZEBO_PLUGIN_PATH=$GAZEBO_PLUGIN_PATH:collision_map_creator_plugin/build

采用上述方法添加路径仅对当前终端有效。如果要对每个终端都有效,请将上述命令添加到~/.bashrc文件中。

代码运行

运行环境:

gazebo ~/collision_map_creator_plugin/map_creator.world

结果如下图所示:
Gazebo生成world某一高度的截面图_第1张图片重新打开一个终端输入如下代码:

~/collision_map_creator_plugin/build/request_publisher "(-10,10)(10,10)(10,-10)(-10,-10)" 10 0.01 ~/map.png

(-10,10)(10,10)(10,-10)(-10,-10)代表选取截图的四边形的四个顶点。接下来的10为高度,0.01为分辨率。 ~/map.png为图片存储位置和文件名。
结果如下所示:
Gazebo生成world某一高度的截面图_第2张图片

你可能感兴趣的:(Gazebo)