slam14讲-第二版-安装包

slam14讲 源码介绍

slam14讲第二版源码:slambook2
注意:slam14讲有两个版本,也有两个源码。第二版是目前最新。

slambook2---->3rdparty------>ceres-solver
					  ------>DBoW3
					  ------>g2o
					  ............后面文件省略
		 ----->ch2
		 ----->ch3
		 ............后面文件省略

注意:在3rdparty文件夹下的各个文件夹内是没有东西的。例如ceres-solver打开是空的。

集成开发环境

CLion,kDevelop
我使用的是CLion,高翔老师的视频使用的是kDevelop
CLion介绍
使用CLion打开代码文件,默认生成cmake-build-debug,编译后的可执行文件存放在cmake-build-debug中。而kDevelop中默认生成是build文件存放可执行文件。
如果没有生成cmake-build-debug文件夹,可以在file的setting的下面界面中Build directory中添加cmake-build-debug。
在这里插入图片描述

ch3—eigen、Pangolin

安装包说明:除了eigen库,其他包采用从源代码安装的方式。
源代码安装方式:下载安装包。
所有安装包可以放在一个自己设定的文件夹中,例如program文件夹。
在主目录下新建一个文件夹program

mkdir program
  1. 安装eigen
    sudo apt-get install libeigen3-dev

  2. 安装pangolin

    cd program#进入设定的文件夹
    git clone https://github.com/stevenlovegrove/Pangolin.git#下载安装包
    cd Pangolin#进入Pangolin文件夹
    #编译安装
    mkdir build
    cd build
    cmake ..
    make
    sudo make install
    

    克隆源代码,使用cmake安装。

  3. 使用CLion打开ch3代码,编译。成功运行

ch4—fmt、Sophus

  1. 安装fmt

    cd program#进入设定的文件夹
    git clone  https://github.com/fmtlib/fmt.git#下载安装包
    cd fmt#进入fmt文件夹
    #编译安装
    mkdir build
    cd build
    cmake ..
    make
    sudo make install
    
  2. 安装Sophus
    进入文件夹 slambook2/3rdparty

    cd program#进入设定的文件夹
    git clone https://github.com/strasdat/Sophus.git
    cd Sophus/
    
    mkdir build
    cd build
    cmake ..
    make
    sudo make install
    

    如果不顺利参考链接:sophus安装踩坑
    ch4代码运行:代码修改后才能运行成功

ch5—opencv

安装依赖:slam书的108页。

sudo apt-get install build-essential libgtk2.0-dev libvtk5-dev libjpeg-dev libtiff4-dev libjasper-dev libopenexr-dev libtbb-dev

opencv下载地址
我的Ubuntu是20.04.
opencv下载的是source版本的3.4.12
我是在电脑里下载,解压,得到把文件夹opencv-3.4.12。复制到虚拟机Ubuntu的program文件夹下。
注意:我的电脑的windows系统,使用的虚拟机

cd program#进入设定的文件夹
cd opencv-3.4.12
#编译安装
mkdir build
cd build
cmake ..
make 
sudo make install

ch5代码运行

  1. ch5—>rgbd—>CMakeLists.txt修改
    完整内容如下

    find_package(Sophus REQUIRED)
    include_directories(${Sophus_INCLUDE_DIRS})
    find_package(Pangolin REQUIRED)
    add_executable(joinMap joinMap.cpp)
    target_link_libraries(joinMap ${OpenCV_LIBS} ${Pangolin_LIBRARIES} fmt)
    
  2. 文件里有两处路径改成绝对路径,防止路径问题出错

    ch5—>stereo—> stereoVision.cpp

    string left_file = "/home/yu/slam_learn/slambook2-master/ch5/stereo/left.png";
    string right_file = "/home/yu/slam_learn/slambook2-master/ch5/stereo/right.png";
    

    ch5—>imageBasics—>undistortImage.cpp

    string image_file = "/home/yu/slam_learn/slambook2-master/ch5/imageBasics/distorted.png";
    
  3. 编译成功

  4. 运行代码
    cmake-build-debug存放了可执行文件
    第一个
    终端路径在ch5
    在终端输入cmake-build-debug/imageBasics/imageBasics imageBasics/ubuntu.png

    ch5$ cmake-build-debug/imageBasics/imageBasics imageBasics/ubuntu.png
    图像宽为1200,高为674,通道数为3
    遍历图像用时:3.1e-08 秒。
    

    第二个:终端路径在ch5
    在终端输入cmake-build-debug/imageBasics/undistortImage

    第三个:终端路径在ch5
    在终端输入cmake-build-debug/stereo/stereoVision

    第四个:终端路径在ch5

    cd rgbd#进入rgbd文件夹
    ../cmake-build-debug/rgbd/joinMap#运行可执行文件joinMap

ch6—ceres、g2o

第一种方法:

安装ceres
安装依赖

# CMake
sudo apt-get install cmake
# google-glog + gflags
sudo apt-get install libgoogle-glog-dev libgflags-dev
# BLAS & LAPACK
sudo apt-get install libatlas-base-dev
# Eigen3
sudo apt-get install libeigen3-dev
# SuiteSparse and CXSparse (optional)
sudo apt-get install libsuitesparse-dev

ceres下载
在windows电脑下载解压,得到ceres-solver-facb199f3eda902360f9e1d5271372b7e54febe1文件夹,文件夹名字太长,重命名为ceres-solver。复制放入虚拟机的program文件夹内

cd program
cd ceres-solver
mkdir build
cd build
cmake ..
make
sudo make install

补充Ubuntu中解压文件
在这里插入图片描述

安装g2o

g2o下载
解压后,进入文件夹,安装。同ceres

mkdir build
cd build
cmake ..
make
sudo make install

亲测这个方式安装的ceres和g2o能够编译成功ch6

第二种方法:

使用高老师提供的链接
在slambook2的GitHub源码中,提供了链接给我们。
链接
Pangolin、Sophus、ceres、g2o都提供了链接。
Pangolin、Sophus都使用了链接里安装包。
ceres、g2o也可以通过这个链接安装。

安装ceres依赖

cd program
git clone https://github.com/ceres-solver/ceres-solver.git
cd ceres-solver
mkdir build
cd build
cmake ..
make
sudo make install

cd program
git clone https://github.com/RainerKuemmerle/g2o.git
cd g2o
mkdir build
cd build
cmake ..
make
sudo make install

没试过,这个方法g2o的安装包好像还是有问题。

  • 3
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
SLAM14第二版PDF》是一本关于SLAM(Simultaneous Localization and Mapping,即同时定位与地图构建)的学术义。SLAM是一种重要的机器人技术,旨在使机器人在未知环境中通过自主感知和决策,实现自主定位和地图构建。 《SLAM14第二版PDF》作为该领域的重要参考资料,主要介绍了SLAM算法的理论和实践。全书共分为14,系统地解了从传统基础算法到最新研究进展的内容。通过深入浅出的解和详实的案例分析,读者可以全面了解SLAM技术的原理和应用。 这本PDF义包含了SLAM的关键概念和方法,如传感器模型、地图表示、滤波器、优化算法等。同时,它还详细介绍了SLAM在不同环境和场景中的应用,如室内导航、自动驾驶等。通过学习这本义,读者可以获得实践SLAM算法所需的基本知识和技能。 《SLAM14第二版PDF》在SLAM研究领域具有很高的权威性和参考价值。不仅适合作为大学相关专业的教材,也适用于从事SLAM研究和工程实践的专业人士。通过阅读这本PDF义,读者可以掌握SLAM技术的核心思想和实现方法,为相关领域的研究和开发工作提供指导和参考。 总之,《SLAM14第二版PDF》是一本全面介绍SLAM算法的重要资料,对于学习和应用SLAM技术的人士来说至关重要。它的出现填补了SLAM领域教材的空白,为SLAM技术的普及和发展做出了积极贡献。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值