Advertisement

Ubuntu14.04安装libfreenect2使用kinect2

阅读量:

kinect2出来时OpenNI已被水果公司收购,第三方的驱动支持只剩下libfreenect2了。
这里有个通过修改OpenNI实现kinect2支持的实现,没做测试。
当然libfreenect2也支持windows平台,但我按教程安装一直不成功,应该是环境变量的问题。windows还是用微软官方的SDK吧(仅支持windows 8及以上)


安装libfreenect2

参考官方维护的github
1)下载libfreenect2源码、升级包

复制代码
    git clone https://github.com/OpenKinect/libfreenect2.git
    cd libfreenect2/depends
    ./download_debs_trusty.sh

2)安装build工具

复制代码
    sudo apt-get install build-essential cmake pkg-config

3)安装 libusb、TurboJPEG、OpenGL

复制代码
    sudo dpkg -i debs/libusb*deb
    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

4)[可选项]安装OpenCL、CUDA、VAAPI、OpenNI2
安装方法见官网,我这里仅安装了CUDA
5)build工程

复制代码
    cd ..
    mkdir build && cd build
    cmake .. -DCMAKE_INSTALL_PREFIX=$HOME/freenect2
    make
    make install

./bin/Protonect 打开测试程序,应该就能看到图像了


使用libfreenect2

参考官方的API手册
该库支持 1)RGB图像
2)红外IR、深度图像
3)校准后的RGB+深度图像
4)GPU加速
目前存在的问题 1)话筒阵列可访问,但不支持directional audio
2)USB连接不稳定

libfreenect2的使用可以参考examples下的protonect工程
其使用OpenGL实现图像的渲染
在这里我使用OpenCV来处理图像,需要看手册里Frame类对图像数据的定义。

使用该Cmakelists.txt

复制代码
    CMAKE_MINIMUM_REQUIRED(VERSION 2.8.12.1)
    PROJECT(kinect2)
    
    SET(CMAKE_CXX_FLAGS "-std=c++11")
    SET(CMAKE_PREFIX_PATH ${CMAKE_PREFIX_PATH} $ENV{HOME}/freenect2/lib/cmake/freenect2)
    
    SET(CMAKE_BUILD_TYPE DEBUG)
    SET(CMAKE_C_FLAGS_DEBUG "-g -Wall")
    
    FIND_PACKAGE(freenect2 REQUIRED)
    INCLUDE_DIRECTORIES("/usr/include/libusb-1.0")
    INCLUDE_DIRECTORIES(${freenect2_INCLUDE_DIR})
    
    FIND_PACKAGE(OpenCV REQUIRED)
    INCLUDE_DIRECTORIES(${OpenCV_INCLUDE_DIRS})
    
    SET(KINECTCLASS src/kinect.cpp src/kinect.h)
    
    ADD_EXECUTABLE(kinect2 ./main.cpp ${KINECTCLASS})
    
    TARGET_LINK_LIBRARIES(kinect2 ${freenect2_LIBRARIES})
    
    TARGET_LINK_LIBRARIES(kinect2 ${OpenCV_LIBS})

用QT打开即可
其中

复制代码
    SET(CMAKE_BUILD_TYPE DEBUG)
    SET(CMAKE_C_FLAGS_DEBUG "-g -Wall")

是为了编译为debug版本便于调试


全部评论 (0)

还没有任何评论哟~