您的位置:首页 > 大数据 > 人工智能

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

2017-07-16 12:16 246 查看
环境: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



4000
出结果如下,至少同时包含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下驱动安装成功。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  kinect ubuntu ros cuda