目录

前言

系统版本

下载高翔视觉SLAM十四讲第二版的源代码

一、安装 Vim

二、安装 g++

三、安装 KDevelop 以及汉化

1.安装

2.汉化

四、安装 Eigen 库

五、安装 Pangolin 库

六、安装 Sophus 库

七、安装 OpenCV 库

1.安装依赖项

2.下载 OpenCV 源码

八、安装 Ceres 库

九、安装 g2o 库

十、安装 Meshlab 软件

十一、安装 DBoW 库

十二、安装一个依赖项

十三、安装 PCL 库

十四、安装 octomap 库

十五、安装gflags

十六、安装glog

1.下载源码

2.安装依赖项

3.编译 安装

报错

继续执行 3.编译 安装

十七、安装gtest


前言

自己不小心把Ununtu系统搞崩了,只好重装Ununtu系统,写一篇博客记录一下高翔视觉SLAM十四讲(第二版)各种库的安装以及报错解决方法。本篇博客写于2022年4月7日,安装顺序按照在书中出现的顺序。下面每个库都会介绍在书中出现的地方,以及库的来源。下面安装的依赖项,如果书上有都是来源于书上,如果书上版本低了,则做出了相应的改动;如果书上没有则来自于其他博客。

系统版本

Ununtu18.04

下载高翔视觉SLAM十四讲第二版的源代码

有些小型的库存放在 slambook2/3rdparty 文件夹中,源码下载地址,https://github.com/gaoxiang12/slambook2。注意,后面有个2才是第二版的源码,没有2的是第一版的源码。

打开终端输入

git clone http://github.com/gaoxiang12/slambook2

下载后可能发现 slambook2/3rdpartyPangolinSophus 等文件夹是空的

参考此篇博客

原来是书中高翔的3rdparty里的Pangolin等库就是链接的别人的库,在网页端能点开,但是下载的时候,由于这些库是链接的,所以没法正常下载。解决方法,手动点进去下载。例如:


一、安装 Vim

出现在P9(第 1 讲 )

打开终端输入

sudo apt install vim

二、安装 g++

出现在P30(第 2 讲)

打开终端输入

sudo apt-get install g++

三、安装 KDevelop 以及汉化

参考此篇博客

出现在P35(第 2 讲)

1.安装

安装有两种方法

1.软件中心安装

打开 Ubuntu软件中心 -> 开发工具 -> 按照名称排序 -> KDevelop -> 安装

2.命令行安装

打开终端输入

sudo apt-get install kdevelop

2.汉化

不需要自己下载汉化包,Kdevelop安装后,打开终端输入

aptitude search kdevelop

可能会提示未安装 aptitude ,则自己安装一下,打开终端输入

sudo apt-get install aptitude

然后再次打开终端输入

aptitude search kdevelop

弹出如下内容

选择中间的 kdevelop-l10n 进行安装,在终端里输入

sudo apt-get install kdevelop-l10n

此时,启动软件就是汉化后的了


四、安装 Eigen 库

Eigen官方主页

出现在P47(第 3 讲)

打开终端输入

sudo apt-get install libeigen3-dev

五、安装 Pangolin 库

出现在P66(第 3 讲)

slambook2/3rdparty 文件夹中 Pangolin 库安装失败(之前的安装命令错了导致安装失败,只用了 cmake .. )

参考此篇博客

1.安装git工具

sudo apt-get install git

2.安装依赖项

sudo apt-get install libglew-dev
sudo apt-get install libboost-dev
sudo apt-get install libboost-thread-dev
sudo apt-get install libboost-filesystem-dev

3.下载源码

我下载到了 slambook2/3rdparty/ 文件夹下

切换到 slambook2/3rdparty/ 文件夹下,打开终端输入

git clone https://github.com/stevenlovegrove/Pangolin.git

(从源码下载安装,给后续调试 ORB-SLAM2 挖了一个坑,源码下载的 pangolin 版本为0.6,而调试 ORB-SLAM2 pangolin 版本要求为0.5)

3.切换到 slambook2/3rdparty 文件夹下

4.编译安装

cd Pangolin
mkdir build && cd build
cmake -DCPP11_NO_BOOST=1 ..
make -j4
sudo make install

六、安装 Sophus 库

Sophus in github

出现在P87(第 4 讲)

切换到 slambook2/3rdparty/Sophus 文件夹下,打开终端输入

mkdir build && cd build
cmake ..
make
sudo make install

七、安装 OpenCV 库

OpenCV官网

出现在P108(第 5 讲)

书上安装的3.1.0我安装失败了,安装的3.4.15版本。

1.安装依赖项

打开终端输入

sudo apt-get install build-essential
sudo apt-get install libgtk2.0-dev
sudo apt-get install libvtk6-dev
sudo apt-get install libjpeg-dev
sudo apt-get install libtiff5-dev
sudo apt-get install libjasper-dev

此处报错

errorE: unable to locate libjasper-dev

参考此篇博客

打开终端输入

sudo add-apt-repository "deb http://security.ubuntu.com/ubuntu xenial-security main"
sudo apt update
sudo apt install libjasper1 libjasper-dev

成功的解决了问题,其中libjasper1是libjasper-dev的依赖包

下面继续安装依赖项,打开终端输入

sudo apt-get install libopenexr-dev
sudo apt-get install libtbb-dev

2.下载 OpenCV 源码

1.下载链接 https://opencv.org/releases/

我下载的是 OpenCV-3.4.15 ,点击 Sources 进行下载,得到 opencv-3.4.15.zip 压缩文件

2.解压

打开 opencv-3.4.15.zip 所在的文件夹,打开终端输入

unzip opencv-3.4.15.zip

解压成功得到 opencv-3.4.15 文件夹,将它放到合适的地方,我这里放在了 slambook2/3rdparty/

3.编译 安装

cd opencv-3.4.15
mkdir build && cd build
cmake ..
make -j4
sudo make install

八、安装 Ceres 库

Ceres官网    Ceres in github

出现在P137(第 6 讲)

1.安装依赖项

打开终端输入

sudo apt-get install liblapack-dev
sudo apt-get install libsuitesparse-dev
sudo apt-get install libcxsparse3
sudo apt-get install libgflags-dev
sudo apt-get install libgoogle-glog-dev
sudo apt-get install libgtest-dev

2.编译 安装

切换到 slambook2/3rdparty/ceres-solver 文件夹下,打开终端输入

mkdir build && cd build
cmake ..
make -j4
sudo make install

九、安装 g2o 库

G2O in github

出现在P142(第 6 讲)

1.安装依赖项

打开终端输入

sudo apt-get install qt5-qmake
sudo apt-get install qt5-default
sudo apt-get install libqglviewer-dev-qt5
sudo apt-get install libsuitesparse-dev
sudo apt-get install libcxsparse3
sudo apt-get install libcholmod3

2.编译 安装

切换到 slambook2/3rdparty/g2o 文件夹下,打开终端输入

mkdir build && cd build
cmake ..
make -j4
sudo make install

十、安装 Meshlab 软件

参考此篇博客

出现在P253(第 9 讲)

有两种安装方法

1.命令行安装

打开终端输入

sudo add-apt-repository ppa:zarquon42/meshlab
sudo apt-get install meshlab

2.软件中心安装

打开 Ubuntu软件中心 -> 图像与摄影 -> 按照名称排序 -> MeshLab -> 安装


十一、安装 DBoW 库

出现在P293(第 11 讲)

切换到 slambook2/3rdparty/DBoW3 文件夹下,打开终端输入

mkdir build && cd build
cmake ..
make -j4
sudo make install

十二、安装一个依赖项

出现在P315(第 12 讲)

执行12.3实践报错

Failed to load module "canberra-gtk-module"

参考此篇博客

解决方法:安装一个依赖项

打开终端输入

sudo apt-get install libcanberra-gtk-module

十三、安装 PCL 库

PCL官网

出现在P331(第 12 讲)

打开终端输入

sudo apt-get install libpcl-dev
sudo apt-get install pcl-tools

十四、安装 octomap 库

出现在P338(第 12 讲)

打开终端输入

sudo apt-get install liboctomap-dev
sudo apt-get install octovis

在第 13 讲 实践:设计 SLAM 系统中还需要安装 gflags,glog,gtest 这3个包。参考此篇博客

十五、安装gflags

采用源码安装的方式

1.下载源码

我将这个包下载到 slambook2/3rdparty/ 文件夹下

打开终端输入

git clone https://ghproxy.com/https://github.com/gflags/gflags.git gflags_stable

2.编译 安装

cd gflags_stable
mkdir build && cd build
cmake .. -DGFLAGS_NAMESPACE=google -DCMAKE_CXX_FLAGS=-fPIC ..

注:之后使用了 cmake .. -DCMAKE_CXX_FLAGS=-fPIC 命令重装了此库

make
sudo make install

十六、安装glog

采用源码安装的方式

1.下载源码

我将这个包下载到 slambook2/3rdparty/ 文件夹下

打开终端输入

git clone https://ghproxy.com/https://github.com/google/glog

2.安装依赖项

sudo apt-get install autoconf automake libtool

3.编译 安装

cd glog
mkdir build && cd build
cmake ..

报错

CMake 3.8 or higher is required. You are running version 3.5.1

需下载cmake更高版本进行安装,参考此篇博客

1.查看当前版本

打开终端输入

cmake --version

2.卸载cmake(安装ros时可跳过)

sudo apt remove cmake

注:在此步骤中,如果安装了ros系统,提示会卸载许多与ros相关的cmake文件,可能会导致ros无法使用,所以跳过此步。

3.下载cmake
下载更高版本cmake,cmake官网地址。 我下载的是 cmake-3.21.6.tar.gz 。(写此篇博客时 cmake-3.21.6.tar.gz 已经不在首页了)

4.安装cmake
 (1)将 cmake-3.21.6.tar.gz 解压

在 cmake-3.21.6.tar.gz 文件夹下打开终端输入

tar -zxvf cmake-3.21.6.tar.gz

注:该命令为解压 .tar.gz 文件的命令,详见 这篇博客

我将解压后的 cmake-3.21.6 文件夹放到了 slambook2/3rdparty/ 文件夹下

(2)将原来版本的cmake执行文件删除

打开终端输入

cd /usr/bin/
sudo rm cmake

(3)安装 cmake-3.21.6

切换到 slambook2/3rdparty/cmake-3.21.6 文件夹下,打开终端输入

./configure
make
sudo make install

5.再次查看当前版本

打开终端输入

cmake --version

安装成功

继续执行 3.编译 安装

切换到 slambook2/3rdparty/glog/build 文件夹下 ,打开终端输入

cmake ..
make
sudo make install

十七、安装gtest

切换到 slambook2/3rdparty/googletest 文件夹下 ,打开终端输入

mkdir build && cd build
cmake ..
make
sudo make install

高翔视觉SLAM十四讲(第二版)各种软件、库安装的以及报错解决方法相关推荐

  1. 视觉SLAM十四讲第二版踩坑总结

    寒假花了点时间把slam第二版过了一遍,安装库文件实在太麻烦,我又总是因为内存问题把ubuntu系统搞坏,前前后后安了三四次.在此,记录第二版安装踩坑,如果未来不幸又要重装,留个参考. 视觉SLAM十 ...

  2. 《视觉SLAM十四讲 第二版》笔记及课后习题(第一讲)

    前言 之所以想要写这个系列的博客,是因为想要总结一下高博的<SLAM视觉十四讲第二版>的各章内容以及自己对书后习题的一些做法,也算是对自己学习过程的一个总结和回顾.博客分为两个大部分,即读 ...

  3. 《视觉SLAM十四讲 第二版》课后习题

    本文为<视觉SLAM十四讲>(第二版)的课后习题解答,为本人学习时参考着网上的资源所写的答案,可能有所纰漏,希望大家指出. 文章目录 第1讲 预备知识 第2讲 初始SLAM 第3讲 三维空 ...

  4. 《视觉SLAM十四讲 第二版》笔记及课后习题(第七讲)

    读书笔记:视觉里程计1 之前的内容,介绍了运动方程和观测方程的具体形式,并讲解了以非线性优化为主的求解方法.从本讲开始,我们结束了基础知识的铺垫,开始步入正题:按照第二讲的内容,分别介绍视觉里程计.优 ...

  5. 《视觉SLAM十四讲 第二版》笔记及课后习题(第三讲)

    读书笔记:三维空间刚体运动 本讲介绍视觉 SLAM 的基本问题之一:一个刚体在三维空间中的运动是如何描述的.我们当然知道这由一次旋转加一次平移组成.平移确实没有太大问题,但旋转的处理是件麻烦事.我们将 ...

  6. 《视觉SLAM十四讲 第二版》笔记及课后习题(第十二讲)

    读书笔记:建图 本讲我们开始介绍建图部分的算法.在前端和后端中,我们重点关注同时估计相机运动轨迹与特征点空间位置的问题.然而,在实际使用SLAM 时,除了对相机本体进行定位之外,还存在许多其他的需求. ...

  7. 视觉SLAM十四讲第二版[第2讲]

    目录 前言 一.2.1-2.2内容 二.2.3内容 1.运动和观测概念 2.观测方程 三.2.4内容 总结 前言 兄弟,本章没什么难理解的东西,就是后面如果你对ubuntu不了解的话就会像我每天跟个弱 ...

  8. slam十四讲第二版 pdf_聊聊这两年学习slam啃过的书

    作者:Amber 来源:微信公众号|3D视觉工坊(系投稿) 「3D视觉工坊」技术交流群已经成立,目前大约有8000人,方向主要涉及3D视觉.CV&深度学习.SLAM.三维重建.点云后处理.自动 ...

  9. 【slam十四讲第二版】【课本例题代码向】【第七讲~视觉里程计Ⅱ】【使用LK光流(cv)】【高斯牛顿法实现单层光流和多层光流】【实现单层直接法和多层直接法】

    [slam十四讲第二版][课本例题代码向][第七讲~视觉里程计Ⅱ][使用LK光流(cv)][高斯牛顿法实现单层光流和多层光流][实现单层直接法和多层直接法] 0 前言 1 使用LK光流(cv) 1.1 ...

最新文章

  1. 【Udacity】异常值检测/删除
  2. git pull 默认拉取远端其他分支 问题解决
  3. 8953n的user获取权限以及remount
  4. CMake入门(二)
  5. 基于HBase+ ElasticSearch的海量交通数据实时存取方案设计
  6. 起步 - 安装 Git
  7. class ts 扩展方法_一个class文件到底包含了哪些东西?
  8. 关于C/C++程序的一些规范(2005-5-10)
  9. Python 常用函数Logging
  10. umijs 下载文件
  11. 统计学:从数据到结论(吴喜之)-- 读书笔记
  12. element ui 前台模板_element-ui 菜单模板封装(递归)
  13. electron 剪贴板 截图_利用 Electron 开发快速截图工具(二)
  14. HTML5制作斑马线表格,HTML_CSS,JavaScript和MooTools制作斑马纹表格,简单的斑马纹表格,如果页面 - phpStudy...
  15. Matlab画六边形蜂窝网络点(任意个数)
  16. 旗舰手机的拍照芯片(上)
  17. 回归方法(一):用线性回归探究生育率
  18. RealView MDK
  19. Z 字形变换(C语言)
  20. os.rename和os.renames区别

热门文章

  1. Alpine中文字体
  2. 华硕主板开机提示按F1怎么办?华硕主板开机提示按F1的解决方法
  3. 如何利用微信答题小程序实现盈利呢
  4. CSS calc无效
  5. 用友u9一些常用sql分享
  6. Camera2 YUV420_888
  7. 解决“试图加载格式不正确的程序”问题
  8. 图像模式识别 (五)
  9. 移动硬盘数据丢失如何快速恢复?
  10. 如何批量调整图片尺寸?