octomap_sever安装及demo、自己的pcd点云数据测试

基于八叉树的三维的栅格地图构建

文章开头先贴一下:高博关于八叉树的博客

1.编译octomap

新建一个目录用于拷贝octomap代码。 如果没有git请安装git,然后拷贝代码:

sudo apt-get install git

git clone https://github.com/OctoMap/octomap

上述的git会把代码拷贝到当前目录/octomap下。进入该目录,参照README.md进行安装。编译方式和普通的cmake程序一样:

  mkdir build
  cd build
  cmake ..
  make 

octomap的代码主要含两个模块:本身的octomap和可视化工具octovis。octovis依赖于qt4和qglviewer,所以如果你没有装这两个依赖,请安装它们:

sudo apt-get install libqt4-dev qt4-qmake libqglviewer-dev

2、使用octovis查看示例地图

在下载的代码中有一个demo地图,我们可以一起看一下,在octomap下打开终端:

bin/octovis octomap/share/data/geb079.bt

octovis会打开这个地图并显示,可以在图上放大缩小,旋转,右面的数字可以调整分辨率的大小。它的UI是长这样的,应该能看出这是一层楼的扫描图。会有如图点结果:
在这里插入图片描述
demo结束。

3、建立自己的pcd的地图,octovis显示:

下载高博源码:

https://github.com/gaoxiang12/octomap_tutor

在data目录下将sample.pcd 删掉,把自己的pcd文件改名字为sample.pcd防止到这里来代替它。
在下载的octomap_tutor文件下(也可能是octomap_tutor——master)编译:

  mkdir build
  cd build
  cmake ..
  make 

在编译之后,它会产生一个可执行文件,叫做pcd2octomap,放在代码根目录的bin/文件夹下。你可以在代码根目录下这样调:

bin/pcd2octomap data/sample.pcd data/sample.bt
//不会直接出现地图,需要调用,继续往下看

这句命令的意思是将data/sample.pcd转化为data/sample.bt地图,在data下可能会生成一个.bt 或者是.ot文件,也可能都有。
你可以采用下面点命令比较下pcd点云与octomap的区别:

pcl_viewer data/sample.pcd
//使用PCL原始点云的可视化
octovis data/sample.bt
//使用octovis实现构建的sample.ot(.bt)地图的可视化。

pcl_viewer data/sample.pcd结果:
在这里插入图片描述
octovis data/sample.bt结果:
在这里插入图片描述

至此,成功!如果还需要加入颜色玩花活,可以跟着高博继续操作下去!
欢迎关注私信一起学习,加油!

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐