Advertisement

完整安装kinect2驱动libfreenect2和ros包iai_kinect2

阅读量:

环境:ubuntu16.04+Ros(kinetic)+cuda+kinect2

1.安装ros,按照官网一般很顺利。 http://wiki.ros.org/kinetic/Installation/Ubuntu

2.安装显卡驱动

Ubuntu系统下

系统设置——软件与更新——附加驱动——选相应显卡驱动——更新——重新启动

3.安装cuda (这步是错误的,请看错误解决)

sudo apt-get install nvidia-cuda-toolkit

4.安装libfreenect2 链接 https://github.com/OpenKinect/libfreenect2

硬件要求:

(1)只支持usb3.0

(2)显卡最好能支持OpenGL3.1,否则示例程序跑不了。

错误出现和解决

(1) make

运行make出错,因为cuda只安装了toolkit包,找不到helper.math.h

后来按照官网https://developer.nvidia.com/cuda-downloads,安装如下

cd /home/cbc/下载

复制代码
    sudo sh cuda_8.0.61_375.26_linux.run 
    

其中命令行提示,选择yes,no,参考http://www.linuxidc.com/Linux/2016-11/137561.htm

进行环境配置

复制代码
    gedit ~/.bashrc 
    

添加如下:

复制代码
    export PATH=/usr/local/cuda-8.0/bin${PATH:+:${PATH}}
    
复制代码
    export LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib\ ${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}} 
    
复制代码
    source ~/.bashrc 
    

可以通过如下命令检查路径:

复制代码
    echo $PATH
    

输出结果如下,至少同时包含cuda路径和ros路径

复制代码
    /opt/ros/kinetic/bin:/usr/local/cuda-8.0/bin
    
复制代码
    echo $LD_LIBRARY_PATH 
    

输出结果如下,至少同时包含cuda路径和ros路径

复制代码
    /usr/local/cuda-8.0/lib :/home/cbc/catkin_ws/devel/lib:/opt/ros/kinetic/lib
    

还是不能make,具体的还是同一个.o文件生成出错,猜测是make之前一步cmake的的结果没有覆盖安装完整cuda前的结果。删掉build文件夹内的所有内容,再次cmake,再次make,成功。

复制代码
    ./bin/Protonect
    

可以运行。

5.安装iai_kinect2 链接 https://github.com/code-iai/iai_kinect2
安装步骤:

复制代码
 cd ~/catkin_ws/src

    
 git clone https://github.com/code-iai/iai_kinect2.git 
    
 cd iai_kinect2 
    
 rosdep install –r –from-path . 
    
 cd ~/catkin_ws 
    
 catkin_make –DCMAKE_BUILD_TYPE="Release" 
    
    
    
    

catkin_make出错,报错信息如下:

/opt/ros/kinetic/include/opencv-3.2.0-dev/opencv2/flann/saving.h:113:63: error: exception handling disabled, use -fexceptions to enable throw FLANNException("Invalid index file, cannot read");

问题出在kinect_registration,在kinect_registration的package里,找到CmakeLists.txt,添加如下

复制代码
    add_definitions( -fexceptions ) 
    

再次cmake,成功。

然后:

复制代码
    roslaunch kinect2_bridge kinect2_bridge.launch 
    
复制代码
    roslaunch kinect2_viewer kinect2_viewer
    


kinect2在ros下驱动安装成功。

全部评论 (0)

还没有任何评论哟~