SLAM14讲-Sophus库安装使用及实例代码运行演示
1 Sophus库的下载及构建编译
1.1 Sophus库的下载
首先通过github进行库的下载,通过Git指令下载即可。
git clone https://github.com/strasdat/Sophus.git
由于我在实测时这个操作会出现问题,导致下载失败,大家可以去我的CSDN资源里免费下载十四讲所有的库文件,这里是链接,下载以后解压,直接替换原来的文件夹即可。
1.2 Sophus库的构建编译
由于Sophus模板库是依赖于fmt库的,因此得先安装fmt库:
通过以下指令,我们进行fmt库的构建编译和安装
git clone https://github.com/fmtlib/fmt.git
cd fmt
mkdir build && cd build
cmake ..
make
sudo make install
若库文件下载失败,可以去我上传的资源里下载,这里是地址。
下面进行实操:
通过以下指令,我们进行Sophus库的构建编译和安装
cd Sophus
mkdir build && cd build
cmake ..
make
sudo make instal 必须要安装,不安装后面会出错
下面进行实操演示:
安装成功,接下来我们进行程序的构建和编译运行
2 Sophus库的使用及示例代码运行
找到目录ch4
,通过指令code .
用VScode打开文件夹
下面双击打开useSophus.cpp
文件,这时会遇到头文件#include "sophus/se3.hpp"
抛异常现象,我们可以在c_cpp_properties.json
文件下添加Sophus
的路径,也可以把光标放在抛异常的头文件处,选择快速修复,然后选择第一项添加到路径即可(第一次打开文件就有这样的提示),下面进行实操(由于我打开过文件,这里需要手动添加路径)
下面我们进行程序的运行操作,首先演示useSophus.cpp
文件,在VScode下按快捷键Ctrl + ` 新建一个终端,然后输入以下指令进行程序的编译和运行:
mkdir build && cd build
cmake ..
make
ls
./useSophus
下面进行实操演示:
在编译trajectoryError.cpp
程序之前,为了避免数据文件路径报错
我们需要修改代码的两处内容,首先鼠标右击example
文件夹,选择复制路径,然后将下面两行代码
string groundtruth_file = "./example/groundtruth.txt";
string estimated_file = "./example/estimated.txt";
替换为:
string groundtruth_file = "复制的路径/groundtruth.txt";
string estimated_file = "复制的路径/estimated.txt";
这样就不会报错了
下面进行trajectoryError.cpp
程序的编译和运行:
cd example
mkdir build && cd build
cmake ..
make
ls
./
下面进行实操:
至此,Sophus库安装使用及实例代码运行演示完毕!