ubuntu18.0.4 配置slam环境

目录

  • 1. git,g++,CMake,KDevelop 安装
  • 2. Eigen
  • 3. Sophus
  • 4. OpenCV & OpenCV_contrib
  • 5. pcl
  • 6. Pangolin
  • 7. Ceres
  • 8. g2o
  • 9. gtsam
  • 10. DBoW3
  • 11. octmap
  • 主要参考

最近跟着高翔学习slam十四讲,顺便记录一下slam环境配置及问题。
虚拟机VM15 pro,下运行ubuntu18.0.4。

1. git,g++,CMake,KDevelop 安装

最基本的c++编译环境,和IDE

git安装
sudo apt-get install git

g++安装
sudo apt-get install g++
 
CMake安装
sudo apt-get install cmake

IDE KDevelop安装
sudo apt-get update
sudo apt-get install kdevelop
sudo apt install konsole

2. Eigen

Eigen——线性代数
安装g2o的时候需要Eigen支持,

sudo apt install libeigen3-dev

3. Sophus

Sophus——李代数
Sophus的安装存在两个问题,一个是Sophus模板类和非模板类的区别,为了新手方便使用高博在十四讲中推荐的是非模板类的Sophus,需要将git到的Sophus回滚到a621ff版本;另一个就是由于编译器版本的不同,出现非模板类Sophus编译不过。
Sophus只需要编译不需要安装。
注意命令后面的点号,代表本目录

git clone https://github.com/strasdat/Sophus.git

cd Sophus
git checkout a621ff
mkdir build
cd build

cmake ..
make -j12

在ubuntu18.04下会出现“unit_complex_.real() = 1.; unit_complex_.imag() = 0. ;"的错误
解决方法:在sophus/so2.cpp文件中,将
unit_complex_.real() = 1. ;
unit_complex_.imag() = 0. ;
改为
unit_complex_.real(1.) ;
unit_complex_.imag(0.) ;
然后重新编译

4. OpenCV & OpenCV_contrib

OpenCV 安装需要自己下载和创建,详见3。
OpenCV下载地址:
https://opencv.org/releases.html
OpenCV-Contrib下载地址:
https://github.com/opencv/opencv_contrib/releases
具体安装过程如下:
首先,从官网下载后,提取opencv到主目录(我的安装目录),再将opencv_contrib提取出来,并移动到opencv目录里边。
然后,执行下面命令。

sudo apt-get install build-essential libgtk2.0-dev libvtk6-dev libjpeg-dev libopenexr-dev libtbb-dev
sudo apt-get install libtiff4-dev
 
mkdir build
cd build 

cmake -D CMAKE_BUILD_TYPE=Release \ -D OPENCV_EXTRA_MODULES_PATH=/home/melodic/package/opencv-4.1.0/opencv_contrib-4.1.0/modules/ \ -D CMAKE_INSTALL_PREFIX=/usr/local -D OPENCV_GENERATE_PKGCONFIG=YES ..
make -j12
sudo make install
 
 
查看版本
pkg-config --modversion opencv

5. pcl

pcl——点云库

sudo apt-get install libpcl-dev pcl-tools

6. Pangolin

Pangolin——可视化显示库

安装依赖项
sudo apt-get install libglew-dev  libboost-dev libboost-thread-dev libboost-filesystem-dev
 
git clone https://github.com/stevenlovegrove/Pangolin.git
 
cd Pangolin
mkdir build
cd build

cmake -DCPP11_NO_BOOST= 1 ..
make -j12
sudo make install

7. Ceres

Ceres——最小二乘优化

sudo apt-get install liblapack-dev libsuitesparse-dev libgflags-dev libgoogle-glog-dev libgtest-dev libcxsparse3
 
git clone https://github.com/ceres-solver/ceres-solver.git
 
cd ceres-solver
mkdir build
cd build

cmake ..
make -j12
sudo make install

8. g2o

g2o——图优化
安装g2o的时候需要Eigen支持

sudo apt-get install libsuitesparse-dev qtdeclarative5-dev qt5-qmake libqglviewer-headers
 
git clone https://github.com/RainerKuemmerle/g2o
 
cd g2o
mkdir build
cd build

cmake ..
make -j4
sudo make install


完成之后需要安装
sudo apt-get install libsuitesparse-dev

9. gtsam

gtsam——因子图

git clone https://bitbucket.org/gtborg/gtsam.git

安装依赖项
sudo apt install libtbb-dev

编译安装
cd gstam
mkdir build
cd build

cmake ..
make -j4
sudo make install

10. DBoW3

DBoW3——词袋模型
安装DBoW2的时候需要OpenCV支持

git clone https://github.com/rmsalinas/DBow3.git

cd DBow3
mkdir build
cd build

cmake ..
make
sudo make install

11. octmap

octomap——八叉树

安装依赖项
sudo apt-get install doxygen
    
下载源码
git clone https://github.com/OctoMap/octomap
    
编译
cd octomap
mkdir build
cd build

cmake ..
make

安装
sudo make install


安装完成之后
sudo apt-get install libqglviewer-headers

主要参考

  1. https://www.codetd.com/article/2740272
  2. https://blog.csdn.net/qq_38373843/article/details/88667866
  3. https://blog.csdn.net/qq_41261757/article/details/88925267

你可能感兴趣的:(slam)