【语义地图】Ubuntu18.04 Suma++代码配置运行

自己的课题涉及到语义场景构建,最近配置运行了Suma++,结合Suma和RangeNet++,此项目基于RangeNet++代码的配置运行

Suma++源码地址:https://github.com/PRBonn/semantic_suma
论文地址:https://arxiv.org/pdf/2105.11320.pdf

此项目要在RangeNet++代码配置运行的基础上进行
RangeNet++配置请参考:https://blog.csdn.net/weixin_46118817/article/details/125155602?spm=1001.2014.3001.5501

目录

  • 1、依赖安装
    • 1.1 依赖库版本要求
    • 1.2 安装命令
  • 2、编译
    • 2.1 确保rangenet++编译成功
    • 2.2 在rangenet++工作空间的src目录下,克隆Suma++代码
    • 2.3 接着克隆glow依赖库到src目录下
    • 2.4 回到工作空间进行编译
    • 2.5 编译报错总结
    • 2.6 编译完成
  • 3、运行可视化展示

1、依赖安装

1.1 依赖库版本要求

【语义地图】Ubuntu18.04 Suma++代码配置运行_第1张图片

1.2 安装命令

#Ubuntu18.04中 libqt5libqgtk2 安装会失败,但不影响后面编译
sudo apt-get install build-essential cmake libgtest-dev libeigen3-dev libboost-all-dev qtbase5-dev libglew-dev libqt5libqgtk2 catkin
#安装catkin编译工具
sudo apt install python-pip
sudo pip install catkin_tools catkin_tools_fetch empy

其余的依赖如果在编译中缺失,根据报错安装即可,注意版本要求

2、编译

2.1 确保rangenet++编译成功

2.2 在rangenet++工作空间的src目录下,克隆Suma++代码

git clone https://github.com/PRBonn/semantic_suma.git

2.3 接着克隆glow依赖库到src目录下

git clone https://github.com/jbehley/glow.git

2.4 回到工作空间进行编译

catkin build --save-config -i --cmake-args -DCMAKE_BUILD_TYPE=Release -DOPENGL_VERSION=460 -DENABLE_NVIDIA_EXT=YES

编译命令解释:
注1:必须将 OPENGL_VERSION 设置为系统支持的 OpenGL 核心配置文件版本,可以按如下方式查询:

glxinfo | grep "version"
 #我的显示是4.6.0,所以命令中用460;如果不清楚可以用默认的330

【语义地图】Ubuntu18.04 Suma++代码配置运行_第2张图片
注2:在此设置步骤之后,可以使用 catkin build 进行构建,因为配置已保存到您当前的 Catkin 配置文件中(因此,需要 --save-config)

注3:笔者电脑搭载GTX1060,使用 -DENABLE_NVIDIA_EXT=YES 激活 NVIDIA 扩展,以获取有关程序当前 GPU 内存使用情况的信息。

2.5 编译报错总结

(1)未安装GLEW
【语义地图】Ubuntu18.04 Suma++代码配置运行_第3张图片
解决:安装即可

sudo apt install libglew-dev

(2)未配置gtsam
【语义地图】Ubuntu18.04 Suma++代码配置运行_第4张图片
解决:下载安装gtsam

# 第一步:安装依赖的功能包
sudo apt-get install libboost-all-dev
sudo apt-get install libparmetis-dev

# 第二步:检查环境版本对应情况
cmake --version  # 需要 CMake >= 2.6
gcc -v # 需要 gcc >= 4.7.3

# 第三步:下载gtsam
cd ~
git clone https://bitbucket.org/gtborg/gtsam.git

# 第四步:编译
cd ~/gtsam
mkdir build
cd build
cmake ..
sudo make install  # 花费时间较久,无报错显示100%即为安装完成

(3)Opencv版本错误,最后链接报错
【语义地图】Ubuntu18.04 Suma++代码配置运行_第5张图片
解决:我原先有Opencv3.2(anaconda中的)和Opencv4.5(另外源代码安装的)两个版本,报错是因为4.5对String定义不同于3.2,代码中是基于Opencv3写的,所以卸载或禁用Opencv4.5即可

2.6 编译完成

当显示如下界面时,编译完成
此时~/catkin_ws/src/semantic_suma/bin 目录下会有可执行程序visualizer
【语义地图】Ubuntu18.04 Suma++代码配置运行_第6张图片

3、运行可视化展示

(1)通过 ./visualizer 在源码 bin 目录中运行可视化工具;
【语义地图】Ubuntu18.04 Suma++代码配置运行_第7张图片
(2)从 KITTI 数据集中 打开 Velodyne 目录并选择“.bin”文件;
(3)通过 GUI 中的“播放按钮”开始处理扫描;
(4)运行效果如下:


视频展示:https://www.bilibili.com/video/BV19T411V761?spm_id_from=333.999.0.0

至此Suma++的代码配置运行就完成了,感谢阅读!

参考致谢:
https://blog.csdn.net/weixin_40247876/article/details/123735096
https://blog.csdn.net/zfjBIT/article/details/95501408

你可能感兴趣的:(语义场景构建,ubuntu,人工智能,c++)