由于工程实践中需要对机器人地图进行概率化估计并表示,故引入OctoMap库。
本文将介绍如何在Ubuntu环境下安装OctoMap。
如果你安装了ROS,那么一下的安装过程很可能会出错。
首先应该检查ROS自带的octomap是什么版本的,然后安装相同的版本即可,不然会出现版本问题。
到以下目录检测ROS自带的octomap版本
/opt/ros/indigo/share/octomap/octomap-config-version.cmake
如果版本是 1.6.9
然后
git clone https://github.com/OctoMap/octomap/tree/v1.6-fixes;
最后
cmake &make.
另一种变态的方法:
sudo cmake .. sudo make
不知道为啥也通过了,但是这样就装了两个版本。
###############################################################################################################################
1 OctoMap的下载:
使用git从github下载OctoMap库。
git clone https://github.com/OctoMap/octomap
如果系统没有安装git则输入以下指令安装git:
sudo apt-get install git
如果使用git下载OctoMap连接不上,而使用ubuntu自带的浏览器速度又很慢,推荐使用chormium去官网直接下载。
输入如下指令安装chormium:
sudo add-apt-repository ppa:a-v-shkop/chromium
sudo apt-get update
sudo apt-get install chromium
2 编译环境的安装
由于初期调试的不顺利,尝试了多个版本的ubuntu。推荐使用ubuntu16.04 32bit版本 ,当然选用老版的也都可以,我选择的版本是ubuntu 16.04 32bit 和ubuntu 14.04 32bit。
OctoMap的编译依赖于以下几个库,输入如下指令对其进行安装。
sudo apt-get install build-essential cmake doxygen libqt4-dev
libqt4-opengl-dev libqglviewer-qt4-dev
若选择Ubuntu 16.04版本则将“libqglviewer-qt4-dev”换成“libqglviewer-dev-qt4”,若为Ubuntu 14.04版本则将“libqglviewer-qt4-dev”换成"libqglviewer-dev" 。
请对所有编译环境进行安装,尽管在部分库缺失的情况下编译也能够成功,但实际运行时程序将会报错,故老老实实的把所有库都给安装上去吧。
安装完依赖库之后进入OctoMap的文件夹中,输入如下指令对其进行编译。
cd octomap
mkdir build
cd build
cmake ..
make
3 OctoMap中Octovis的使用
编译完成接下来尝试一下OctoMap的图形显示功能,输入:
bin/octovis octomap/share/data/geb079.bt
可以看到一张基本的地图。如下是使用octovis用不同分辨率显示实验室环境的激光雷达数据。