前一段重装系统,今天又安装kinect 2发现出了很多错误,记录一下。
首先下载kinect2的sdk。https://github.com/OpenKinect/libfreenect2
具体操作按照上面的网页中进行安装,libfreenect2如下载失败使用windows系统下载或在采用某种科学的方法。
坑1:
打包下载如果解压后名字带master把master去掉。
坑2:
注意此处要先安装一系列依赖以及opencl(想用ros必须),cuda(navida特有,可选guu加速,可大幅提升性能)等。
首先关注一下系统显卡驱动:
nvidia-384版本的nvidia对应的cuda9版本,下载10版本会导致不匹配!!!!!!!!!!!!后续会出现
[Error] [DepthPacketStreamParser] Packet buffer is NULL等各种问题
cuda各版本下载地址:https://developer.nvidia.com/cuda-toolkit-archive
安装完注意要配置一下~/bashrc
export PATH=/usr/local/cuda-9.0/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-9.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
都安装完打开libfreenect2文件夹,右键在终端打开。
之后
mkdir build && cd build
cmake .. -DCMAKE_INSTALL_PREFIX=$HOME/freenect2
make
make install
之后
sudo cp ../platform/linux/udev/90-kinect2.rules /etc/udev/rules.d/
再插上摄像头就好啦
测试sdk:
cd 到libfrenect2文件夹
运行 ./bin/Protonect
出现图像说明成功
之后开始配置kinect2大佬写的ros包。
https://github.com/code-iai/iai_kinect2
坑3:
在rosdep那步出现这个问题:
Cannot locate rosdep definition for [kinect2_bridge] or [kinect2_registration]
是没关系的,不影响。
在catkin_make之后测试:
roslaunch kinect2_bridge kinect2_bridge.launch 这一步看看有没有错误
之后 rosrun kinect2_viewer kinect2_viewer 就可以看到点云图像啦