okvis odometry的安装与运行
OKVIS是一种视觉惯性里程计(Visual Inertial Odometry),是一种视觉融合了IMU的Odometry。它既可以在ROS环境下运行,也可以不使用ROS直接在 linux 下运行,从github上下载的两个版本,安装运行过程中遇到的问题都是相似的,下面讲一下运行在非ROS版本下的问题,以及解决方式。
源码网站: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 库,可放在自定义的某个文件夹下,博主安装在主文件夹下。
git clone https://github.com/ethz-asl/libvisensor.git
cd libvisensor
./install_libvisensor.sh
3、 安装okvis
同样在主文件夹下执行以下命令,下载okvis包并解压:
wget https://www.doc.ic.ac.uk/~sleutene/software/okvis-1.1.3.zip
unzip okvis-1.1.3.zip && rm okvis-1.1.3.zip
然后打开okvis,安装(问题最有可能出现的地方):
cd okvis
mkdir build && cd build
cmake -DCMAKE_BUILD_TYPE=Release ..
make -j8
可能出现的问题:
①在执行 make -j8 的时候,提示错误 ceres-solver链接无法连接,导致安装不成功,github 上给出的方法是https://github.com/ethz-asl/okvis/issues/6,按这个修改,安装ceres库,将CMkliststst的USE_SYSTEM_CERES参数改成ON之后,仍然提示无法连接。
②将安装包CMklist.txt(使用sublime打开,显示行数)的151行链接修改为:GIT_REPOSITORY https://github.com/ceres-solver/ceres-solver.git 再次运行cmake -DCMAKE_BUILD_TYPE=Release ..和make -j8,编译成功。若不成功,则继续往下看。
③仍然打开CMakeLists.txt 第151行,GIT_REPOSITORY https://github.com/ceres-solver/ceres-solver.git中的https更换为http,去掉s。继续执行 make -j8 ,编译顺利成功,(这也是博主的解决之道)。
ROS版本遇到同样的问题,仍然使用上述解决方式,很轻易的就解决了问题。大家也可以尝试直接从第③步解决,直接就可以成功。少走弯路。
贴出运行效果图: