ubuntu16.04 安装OpenNI并运行kinnectfusion

因为OpenNI是ubuntu12.04之前使用的驱动kinnect的库,如今用起来有不少的不便,用心的系统运行旧的设备,有诸多问题。现总结流程以下:python

环境:Ubuntu16.04 64bitgit

   Kinect V1 XBOX 360ubuntu

1.安装OpenNI并试运行python2.7

https://sigmaoctantis.wordpress.com/2015/07/07/kinect-installation-in-ubuntu-14-10/wordpress

基本流程参照以上连接,有几个地方须要注意:ui

1).NITE1.5 下载不到了,能够手动搜索NITE-Bin-Dev-Linux-x64-v1.5.2.21并下载,我在这里下载的v1.5.2.23版本,亲测可使用。google

2).若是没有在python用到OpenNI,那Copy it your python version library中sudo cp ./lib/openni.so /usr/lib/pymodules/python2.7/这一步不用执行。spa

2.安装相关依赖项和库code

1)一块儿写到这里,先都装了吧,迟早都要用。orm

 

sudo apt-get install build-essential libgtk2.0-dev libjpeg-dev libtiff5-dev libjasper-dev libopenexr-dev cmake python-dev python-numpy python-tk libtbb-dev libeigen2-dev yasm libfaac-dev libopencore-amrnb-dev libopencore-amrwb-dev libtheora-dev libvorbis-dev libxvidcore-dev libx264-dev libqt4-dev libqt4-opengl-dev sphinx-common texlive-latex-extra libv4l-dev libdc1394-22-dev libavcodec-dev libavformat-dev libswscale-dev

sudo apt-get install build-essential cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev sudo add-apt-repository ppa:openjdk-r/ppa //新的版本没有这个库了 本身加载 sudo apt-get update 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 libboost1.58-dev libboost1.58-all-dev libeigen3-dev libflann-dev libvtk5-dev libqhull-dev
sudo apt-get install libopenni-dev libopenni2-dev //主要用于环境配置16.04以前不能直接装

 

2)安装opencv3.2.0,从官网下下来,cmake make make install安装便可,注意前面的库都要装上,否则有的模块opencv默认就不安装了。 

3.kinfu运行

kinfu_remake git 下载 进入程序路径:

mkdir build 
cd build
ccmake ..

按t进入高级配置窗口,OpenNI的lib路径不要选根目录那个(默认是这个),改为咱们本身装的那个libopenni.so

或者执行 cmake -DCMAKE_BUILD_TYPE=Debug -DOPENNI_LIBRARY=/home/lsp/kinect/OpenNI/Platform/Linux/Bin/x64-Release/libOpenNI.so ..

而后 

make -j8
bin/demo

能够运行了。

我的理解:

为何要这么作呢,由于新的Ubuntu版本,能够直接install libopenni。可是libopenni.so没有连接到libFreenectDriver.so Kinect相机驱动,因此须要用已链接好的驱动。

相关文章
相关标签/搜索