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

結束。

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