pcd 地图转 栅格地图

前言

最近在弄地图,所以把正在做的东西记录下来
本篇方法使用到了
autoware (软件)(可以替代)
octomap (库)

下篇:栅格地图保存与再发布

安装octomap

大佬的安装链接

安装完后 在终端输入*** roslaunch octo*** + tab键 会自动补全octomap一系列的东西代表安装成功

有了octomap之后就可以通过pcd地图转换成栅格地图了
接下来就是怎么将pcd地图发布出去让octomap接收并转换了

自己发布pcd地图

别的教程

使用autowre发布pcd地图

打开autoware 找到 map 选项,然后第一行的ref寻找需要发布的pcd文件,然后点左边的发布
如果没有装autoware就不要单独装autoware,用上面的方法
我用这方法是因为电脑有autoware
autoware发布之后会有个points raw 的话题,frame id 是map

pcd 转换成栅格地图

写个launch文件,roslaunch 一下就好

如果是自己发布的话题,需要注意:

  1. frame id 需要修改为对应的发布的话题的frame id
  2. remap from 同理
  3. pointcloud max/min z 是需要转换成栅格地图的z轴区间,根据需要修改
<launch>
  <node pkg="octomap_server" type="octomap_server_node" name="octomap_server">

    <!-- resolution in meters per pixel -->
    <param name="resolution" value="0.05" />

    <!-- name of the fixed frame, needs to be "/map" for SLAM -->
    <param name="frame_id" type="string" value="map" />

    <!-- max range / depth resolution of the kinect in meter -->
    <param name="sensor_model/max_range" value="100.0" />
    <param name="latch" value="true" />

    <!-- max/min height for occupancy map, should be in meters -->
    <param name="pointcloud_max_z" value="2" />
    <param name="pointcloud_min_z" value="0" />

    <!-- topic from where pointcloud2 messages are subscribed -->
    <remap from="/cloud_in" to="/points_map" />
 
  </node>
</launch>

运行完后有如下提示

rviz查看

rviz查看需要安装插件

sudo apt-get install ros-kinetic-octomap-rviz-plugins


左下角add添加topic
在by display type中选择occupancygrid
topic选择/octomap——full
然后等一会就好了

地图解析,保存后的地图中yaml各项参数含义解释

  • 2
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值