DS-SLAM环境安装+运行成功

DS-SLAM环境配置

DS-SLAM是需要显卡的,虚拟机是不行的,所以我用的双系统。先列出我电脑的所有相关环境版本:
双系统 ubuntu18.04
显卡驱动:470
cuda: 10.1
cudnn: 7
pangolin: 0.5
eigen3.2.10
OpenCV:4.4.0
caffe-segnet-cudnn7
以上所有版本建议都和我一样(除了OpenCV可以尝试3系列的,但因为我OpenCV3.2编译了两次都报了根本解决不掉的错,换成OpenCV4.4之后就可以了),讲一下因为版本问题遇到的坑吧。
首先ds-slam所必须的segnet最新版本是cudnn7,所以我们的cudnn不能安装8以上的版本,根据cudnn和cuda对应的版本来看,也就是cuda不能上11,就意味着我们的搭配是cuda 10.x + cudnn 7.x
然后就会发现一件非常扯淡的事情:cuda10.x不支持ubuntu20.04,当我在ubuntu20.04+cuda11+cudnn8的电脑上编译caffe-segnet-cudnn7时发现这件事时差点气死。

所以必须是ubuntu18.04+cuda10.x+cudnn7.x.x,其他的版本不建议尝试。

参考两篇讲的比较全面的博客:

https://blog.youkuaiyun.com/m0_43398209/article/details/122279304
https://www.freesion.com/article/1103972480/#opencv__caffe_75

建议跟着第一篇,第二篇做补充。跟着这两篇博客走就没有问题,我罗列一下出现的问题:
问题一:
安装ros,有大佬(小鱼)写好了脚本,输一行命令就可以装好:

wget http://fishros.com/install -O fishros && sudo ./fishros

问题二
error: ‘CV_LOAD_IMAGE_COLOR’ was not declared in this scope
将这个头文件添加到你报错的c文件内,这个错是必报。

#include "opencv2/imgcodecs/legacy/constants_c.h"

还有很多错现在找不到了,基本都是网上找得到的,把一些报错后需要额外下载的东西放在链接里,看看说不定就是你在找的。
比如:ippicv_2020_lnx_intel64_20191018_general、boostdesc_bgm.i 等等

链接: https://pan.baidu.com/s/1XW2qqcXysmWwhHLRbEvzig?pwd=xi8c 提取码: xi8c
–来自百度网盘超级会员v3的分享
最后贴张图庆祝一下!
在这里插入图片描述

### 如何在 Ubuntu 18.04 上成功运行 DS-SLAM 要在 Ubuntu 18.04 上成功运行 DS-SLAM,需要仔细配置环境并解决可能的依赖问题。以下是详细的说明: #### 环境准备 为了确保 DS-SLAM 的正常运行,需按照特定版本的要求搭建开发环境。根据已有经验[^2],推荐如下配置: - **操作系统**: Ubuntu 18.04 LTS。 - **显卡驱动**: NVIDIA 驱动版本 470 或兼容版本。 - **CUDA 版本**: CUDA 10.1(注意:CUDA 10.x 不支持 Ubuntu 20.04)。 - **cuDNN 版本**: cuDNN 7.x(SegNet 所需版本)。 - **Pangolin 库**: Pangolin 0.5。 - **Eigen 库**: Eigen 3.2.10(高版本可能导致兼容性问题[^3])。 - **OpenCV**: 推荐 OpenCV 4.4.0;如果尝试使用 OpenCV 3.x,则可能会遇到难以解决的编译错误。 #### 安装必要的软件包 通过 `apt` 工具安装基础依赖项,并利用更强大的工具如 `aptitude` 来处理复杂的依赖关系[^4]。执行以下命令来安装所需的库文件: ```bash sudo apt update && sudo apt upgrade -y sudo apt install build-essential cmake git libopencv-dev \ libeigen3-dev libsuitesparse-dev libgoogle-glog-dev \ liblua5.1-dev libboost-all-dev python-pip python-numpy \ qtbase5-dev qtchooser qt5-qmake qtbase5-dev-tools \ libsnapppy-dev -y ``` 对于某些复杂场景下的依赖冲突,可改用 `aptitude` 替代默认的 `apt-get` 进行管理: ```bash sudo aptitude install prime-indicator ``` #### 编译和安装 Caffe-SegNet-CuDNN7 CaffeDS-SLAM 中用于语义分割的核心框架之一。由于 SegNet 要求 cuDNN 7 支持,因此必须严格匹配其版本号。具体操作步骤如下: 1. 下载官方发布的 Caffe 和 SegNet 源码; 2. 修改 Makefile.config 文件中的路径设置以及启用 GPU/CUDA/cuDNN 参数; 3. 使用以下脚本完成构建过程: ```bash make all -j$(nproc) make pycaffe ``` #### 构建 ORB_SLAM2_PointMap_SegNetM 功能包 此部分涉及 SLAM 主体算法及其扩展模块的集成工作。需要注意的是,在实际测试过程中曾有报告指出当采用较高版次的第三方组件(比如较新的 Eigen 库)时容易引发崩溃现象。“段错误 (Segmentation Fault)”通常暗示内存访问越界或者函数调用失败等问题存在。为此建议重新下载指定标签下稳定分支源代码后再依照文档指示逐步实施本地化调整直至最终部署完毕为止。 #### 测试与验证 最后一步是对整个系统进行全面的功能检验以确认无误后投入正式应用阶段前还需经历多轮迭代优化才能达到理想效果。
评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值