FastFusion安装编译

FastFusion是一个只用于SLAM建模的算法,输入depth图像,rgb图像与pose可以在CPU下实时建模。具体介绍见github

编译环境:ubuntu 16.04

编译流程:

1.安装编译OpenCV2.4.13:参照http://www.cnblogs.com/MnsterLu/p/5858557.html

2.安装git:

>sudo apt-get install git

如果报错说有什么软件安装不了:

>sudo apt-get update
>sudo apt-get update

3.安装qt4:

>sudo apt-get install qt4-dev-tools qt4-doc qt4-qtconfig qt4-demos qt4-designer

4.安装Doxygen:

>sudo apt-get install doxygen  

5.安装boost:

>sudo apt-get install libboost-dev

6.安装eigen:


>sudo apt-get install libeigen3-dev

7.安装libqlviewer:

>sudo apt-get install libqglviewer2 libqglviewer-dev libqglviewer-doc

8.安装libglew1.5:

>sudo apt-get install libglew1.5

安装GLUT:

>sudo apt-get install build-essential
>sudo apt-get install libgl1-mesa-dev
>sudo apt-get install libglu1-mesa-dev
>sudo apt-get install libglut-dev  or  sudo apt-get install freeglut3-dev

9.这些依赖项安装的差不多了,从github上下载fastfusion并编译:

>git clone https://github.com/tum-vision/fastfusion.git
>cd fastfusion
>cmake .

若此时报错找不到OpenCV_DIR,这样cmake:

>cmake -D OpenCV_DIR=/home/name/opencv-2.4.13/build .

如果还报缺少什么依赖项的错,那就缺什么装什么,基本上apt-get都能解决

再cmake会报这个错:invalid use of incomplete type ‘struct qglviewer::ManipulatedFrame’
解决办法:在onlinefusionviewer.cpp 中加入#include<QGLViewer/manipulatedFrame.h>
方法来自这里

再cmake报错: 找不到/usr/bin/ld: cannot find -lGL,-lboost_thread,-lboost_system
解决办法:http://blog.csdn.net/rev_fycd/article/details/6856300
安装一下libboost_thread和libboost_system
libGL.so.1系统里有改下名字

再cmake,就成功了~~~

然后:

>make

程序就编译好了。

10.按照github上的步骤制作二进制文件

11.最后运行时报错:Error in `./bin/onlinefusion’: realloc(): invalid pointer: 0x00007f541ff83840
这是因为ubuntu16.04的qt5与qt4冲突什么的
解决办法参考https://github.com/tum-vision/fastfusion/issues/9
https://github.com/tum-vision/lsd_slam/issues/222
我用的这个人的方法:
先卸载qt5

>sudo apt-get purge --auto-remove qt5-default

再重新安装qglviewer:
qglviewer, decompress and cd into the folder, then qmake & make & sudo make install

结束。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章