编译semantic_slam_nav_ros-master

编译问题收录

1.添加Vocabulary

在ros包的下新建Vocabulary文件夹,添加ORBvoc.txt词典。使用ORBSLAM2的词典文件即可。

2.安装腾讯ncnn库

cd Thirdparty/ncnn
mkdir build&&cd build
cmake ..
make
sudo make install
sudo cp Thirdparty/ncnn/build/install/lib/libncnn.a /usr/lib

问题1:ncnn要求cmake的版本最低是3.10,因此需要升级。
解决:参考这篇博客

问题2

[  2%] Built target mxnet2ncnn
Makefile:129: recipe for target 'all' failed
make: *** [all] Error 2

[ 89%] Built target ncnnoptimize
tools/caffe/CMakeFiles/caffe2ncnn.dir/build.make:61: *** target pattern contains no '%'。 停止。
CMakeFiles/Makefile2:330: recipe for target 'tools/caffe/CMakeFiles/caffe2ncnn.dir/all' failed
make[1]: *** [tools/caffe/CMakeFiles/caffe2ncnn.dir/all] Error 2
Makefile:129: recipe for target 'all' failed
make: *** [all] Error 2

解决:安装protoc sudo apt install protobuf-compiler

[ 98%] Linking CXX executable ncnnoptimize
[ 98%] Built target ncnnoptimize
[100%] Linking CXX executable caffe2ncnn
[100%] Built target caffe2ncnn

编译通过

3.编译问题

在src目录下catkin_make:
问题1未安装cv_bridge
解决:安装cv_bridge,源码
问题2

CMake Error at /usr/local/share/cmake-3.10/Modules/FindBoost.cmake:1928 (message):
  Unable to find the requested Boost libraries.
  Boost version: 1.58.0
  Boost include path: /usr/include
  Could not find the following Boost libraries: boost_python37

解决:安装boost1.58.0

The Boost C++ Libraries were successfully built!

查看cv_bridge的CmakeList.txt

if(PYTHONLIBS_VERSION_STRING VERSION_LESS "3.8")
    # Debian Buster
    find_package(Boost REQUIRED python37)
  else()
    # Ubuntu Focal
    find_package(Boost REQUIRED python)

下载3.8的python
修改默认python版本
未完待续

Semantic SLAM是一种基于语义分割技术的同时定位与建图方法。它结合了ORB-SLAM2和八叉树地图,并通过使用语义分割技术来增强SLAM系统的感知能力。Semantic SLAM的GitHub地址是https://github.com/floatlazer/semantic_slam 。 在开始使用semantic_slam包之前,您需要先安装一些依赖项。根据引用提供的信息,安装过程中可能会出现一个错误,提示无法解析rosdep定义。这意味着可能需要检查您的系统中是否安装了catkin,因为semantic_slam依赖于catkin。确保您已正确安装catkin后,您可以继续安装semantic_slam包。 安装完依赖项后,您可以启动semantic_mapping.launch文件来启动Semantic SLAM系统。根据引用提供的信息,您可以使用以下命令启动launch文件:roslaunch semantic_slam semantic_mapping.launch。 启动后,semantic_mapping.launch文件将开始执行Semantic SLAM算法,同时定位与建图,并将语义信息与地图进行关联,从而提高系统的感知能力。 总结起来,Semantic SLAM是一种基于语义分割的同时定位与建图方法,它结合了ORB-SLAM2和八叉树地图。您可以从GitHub地址https://github.com/floatlazer/semantic_slam获取该方法的实现代码。在使用semantic_slam包之前,您需要安装catkin作为依赖项,并确保已成功安装并配置相关的依赖项后,您可以使用roslaunch命令启动semantic_mapping.launch文件来启动Semantic SLAM系统。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值