源码链接https://github.com/ethz-asl/okvis
1. 安装依赖项
sudo apt-get install cmake
sudo apt-get install libgoogle-glog-dev
sudo apt-get install libatlas-base-dev
sudo apt-get install libeigen3-dev
sudo apt-get install libsuitesparse-dev
sudo apt-get install libboost-dev libboost-filesystem-dev
2. 安装libvisensor 库
进入/opt目录下载安装(我的习惯,工具库软件等安装在opt下)
git clone https://github.com/ethz-asl/libvisensor.git
cd libvisensor
./install_libvisensor.sh
3.安装okvis
gitclone方式受网络影响,有时很慢,建议下载后解压,将挤压后的包放在/root目录下(我的用户习惯),打开命令窗口进入安装包运行
mkdir build && cd build
cmake -DCMAKE_BUILD_TYPE=Release ..
make -j8
若提示错误 ceres-solver链接无法连接,导致安装不成功,github 上给出的方法是https://github.com/ethz-asl/okvis/issues/6,但是按这个修改,安装ceres库,将CMkliststst的USE_SYSTEM_CERES参数改成ON之后,任然提示无法连接。
我的做法:将安装包CMklist.txt的151行链接修改为:GIT_REPOSITORY https://github.com/ceres-solver/ceres-solver.git 再次运行cmake -DCMAKE_BUILD_TYPE=Release ..和make -j8,编译成功。
如果任然编译不通过,或者编译后仍然出现关于ceres-solver相关的错误,建议按照http://ceres-solver.org/building.html
给出的ceres-solvera安装方式,安装ceres-solver的依赖项;我没出现这样的错误,这里只是给出一个可能的解决方法。
4.运行数据集
- 下载数据集(链接: https://pan.baidu.com/s/1i4W2is1 密码: 269k),注意是压缩包格式的那个,以下载的是MH_01_easy.zip,okvis安装目录为/root/Cmkeproject/okvis为例:
将下载好的数据集解压在安装目录中,在okvis/build目录中运行
./okvis_app_synchronous ~/Cmake\ project/okvis-master/config/config_fpga_p2_euroc.yaml ~/Cmake\ project/okvis-master/dataset/mav0/
命令第一个参数是相机和IMU的相关参数,第二个是加载数据集。