新系统安装Elasticfusion

记住,Pangolin一定是最后安装

电脑配置是:ubuntu14.04(64位)+GTX1070+CPU(i7)

按照之前博客安装Nvidia驱动、cuda、cudnn、opencv3、caffe、caffe-ssd后,

git clone https://github.com/mp3guy/Elasticfusion.git  

1、安装cmake
直接在ubuntu软件中心下载安装,但是配置Elastic Fusion需要升级到3.2,否则自带的是2.8
参考:http://askubuntu.com/questions/610291/how-to-install-cmake-3-2-on-ubuntu-14-04

[plain] view plain copy
  1. sudo apt-get install build-essential  
  2. wget http://www.cmake.org/files/v3.2/cmake-3.2.2.tar.gz  
  3. tar xf cmake-3.2.2.tar.gz  
  4. cd cmake-3.2.2  
  5. ./configure  
  6. make  
  7. sudo make install  
运行cmake --version查看版本

如果提示找不到bin/cmake,那么sudo apt-get upgrade就可以了


2、安装OpenNI2

git clone https://github.com/occipital/OpenNI2.git
然后从https://github.com/occipital/OpenNI2/tree/kinect2/Source/Drivers/Kinect2找到Kinect2文件夹拷贝到OpenNI2/Source/Drivers里面

如果在安装依赖库时找不到库,那么换源在进行。执行最后一步的时候failed,跳过,没所谓

    •   sudo apt-get install g++
      
    •   sudo apt-get install python
      
        •   sudo apt-get install libusb-1.0-0-dev
          
          •   sudo apt-get install libudev-dev
            
                •   sudo apt-get install openjdk-6-jdk
                  
                    •   sudo apt-get install freeglut3-dev
                      
                        •   sudo apt-get install doxygen
                          
                            •   sudo apt-get install graphviz
                              
                            •   cd OpenNI-master;make

3、安装Pangolin

同样按照链接里给出的,成功.pangolin是岁OpenGL输入输出和视频显示的库,可用于3D视觉和3D导航的视觉图。百度搜索"pangolin学习”有这方面的资料

sudo apt-get install libglew-dev


git clone https://github.com/stevenlovegrove/Pangolin.git
cd Pangolin
mkdir build
cd build
cmake ..
make -j

4、安装依赖项

[html]  view plain  copy
  1. sudo apt-get install -y cmake-qt-gui git build-essential libusb-1.0-0-dev libudev-dev openjdk-7-jdk freeglut3-dev libglew-dev libsuitesparse-dev libeigen3-dev zlib1g-dev libjpeg-dev  
  2. 安装pcl:
    [plain]  view plain  copy
    1. sudo add-apt-repository ppa:v-launchpad-jochen-sprickerhof-de/pcl  
    2. sudo apt-get update  
    3. sudo apt-get install libpcl-all 
    安装opengl:
    [plain]  view plain  copy
    1. sudo apt-get install build-essential  
    2. sudo apt-get install libgl1-mesa-dev  
    3. sudo apt-get install libgl1-mesa-dev  
    4. sudo apt-get install libglu1-mesa-dev  
    5. sudo apt-get install freeglut3-dev  

5、配置kinect环境

之前在cuda、caffe等都有的系统里配置用的kinect1没有问题,但重装系统后,运行配置完的./Elasticfusion会出现找不到设备的问题,查看github里的issues-Works with Microsoft Kinect?这一问题,决定用Kinect2

6、安装libfreenect2

    https://github.com/OpenKinect/libfreenect2,按照readme编译

cd depends
./download_debs_trusty.sh //运行这个非常慢,以后每次配置都用以前下好的debs包放到depends/debs里面
sudo apt-get install build-essential cmake pkg-config
sudo apt-add-repository ppa:floe/libusb
sudo apt-get update
sudo apt-get install libusb-1.0-0-dev
sudo apt-get install libturbojpeg libjpeg-turbo8-dev
sudo dpkg -i debs/libglfw3*deb; sudo apt-get install -f; sudo apt-get install libgl1-mesa-dri-lts-vivid freeglut3-dev libxrandr-dev libxi-dev//会出现问题,先不用理会

接着安装Opencl:

sudo apt-get install nvidia-modprobe opencl-headers ocl-icd-dev
  • 1

7、安装openni2

sudo apt-add-repository ppa:deb-rob/ros-trusty && sudo apt-get update
 apt-get install libopenni2-dev
 sudo apt-get install openni2-utils  sudo make install-openni2 NiViewer2//有依赖不满足时,直接删除sudo apt-get purge xxx

8、编译libfreenect2

cd ..
mkdir build && cd build
cmake .. -DCMAKE_INSTALL_PREFIX=$HOME/freenect2
make
sudo make install

9、获得设备udev权限

sudo cp ../platform/linux/udev/90-kinect2.rules /etc/udev/rules.d/

10、测试驱动是否安装好

sudo chmod +x ./bin/Protonect  
./bin/Protonect cpu
./bin/Protonect gl
./bin/Protonect cl

测试Openni2: 
运行:

Niviewer2//必须保证这个可以成功!

11、编译

注意源码里有三个项目,Core、GPUTest和GUI

如果要使用作者的程序,则需要把三个项目安装顺序依次配置成功


[html]  view plain  copy
  1. cd ../Core    
  2. mkdir build    
  3. cd build    
  4. cmake -D CUDA_TOOLKIT_ROOT_DIR=/usr/local/cuda-7.5 ../src    
  5. make -j8    
  6. cd ../../GPUTest    
  7. mkdir build    
  8. cd build    
  9. cmake -D CUDA_TOOLKIT_ROOT_DIR=/usr/local/cuda-7.5 ../src    
  10. make -j8    
  11. cd ../../GUI    
  12. mkdir build    
  13. cd build    
  14. cmake -D CUDA_TOOLKIT_ROOT_DIR=/usr/local/cuda-7.5 ../src    
  15. make -j8    
之后就能在GUI/build中看到可执行项ElasticFusion。直接调用以下命令,默认从kinect2中获取图像并开始三位重建
./ElasticFusion    
这时出现错误:

[html]  view plain  copy
  1. error: GLSL 3.30 is not supported. Supported versions are: 1.00 ES, 1.10, 1.20, and 1.30  

这是一个关于显卡驱动支持的错误.

解决办法:

.查看一些参数
sudo dpkg --list | grep nvidia  不显示NVIDIA的版本,说明有问题
lspci | grep -i nvidia   设备里的确有nvidia显卡

选择在终端重装nvidia驱动,而不是手动

[html]  view plain  copy
  1. sudo apt-get remove --purge nvidia-*  
  2. (***提示cmake-qt-gui依赖cmake 2.8出错,卸载cmake-qt-gui。卸载后cmake命令没出错,其他情况会不会出错有待观察)  
  3. sudo add-apt-repository ppa:xorg-edgers/ppa -y  
  4. sudo apt-get update  
  5. sudo apt-get install nvidia-367  
查看安装的版本
sudo dpkg --list | grep nvidia 这时就有nvidia的版本信息了



sudo modprobe nvidia-384 (这里nvidia-384是Tab键补全而来的) 手动启用nvidia显卡

然后再次运行

[html]  view plain  copy
  1. ./ElasticFusion    

如果出现这个问题:


那么修改MainController.cpp 37行  (640,480)改为(512,424)

换了不同设备这个值可能不一样

成功!!!










  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值