ROS视觉和图像-Kinect V2使用

http://blog.csdn.net/x_r_su/article/details/52911772

 

 微软的Kinect V2设备建议在ROS的indigo版本使用(文档较多),不要在Kinect版本使用(可能因为opencv版本是3.X出现使用问题),以下安装针对Ubuntu 14.04 indigo ROS。

1 所需软件包

1)libfreenect2(https://github.com/OpenKinect/libfreenect2.git

这个包主要是Kinect2的驱动相关东西。 注意此包不对Kinect V1进行任何支持,硬件需要USB3.0对于USB 2.0不支持。

2)iai_kinect2(https://github.com/code-iai/iai_kinect2.git)

这个包内容大致有:相机标定工具;深度数据配准工具;libfreenect2和ROS之间的桥接工具,这样我们就可以借助ROS上的工具对数据流进行处理;查看数据流的工具

补充一个参考链接:http://www.ros.org/news/2014/09/microsoft-kinect-v2-driver-released.html

 

2  安装软件包

 如果有问题,可以参考https://github.com/code-iai/iai_kinect2.git的install部分,获取更细节解释。此外建议先行安装opencv包。

1)下载libfreenect2

 

[plain] view plain copy
 print?
  1. git clone https://github.com/OpenKinect/libfreenect2.git  
  2. cd libfreenect2  

 

cd depends; ./download_debs_trusty.sh

2)安装必要基础包

 

 

[plain] view plain copy
 print?
  1. sudo apt-get install build-essential cmake pkg-config libturbojpeg libjpeg-turbo8-dev  

3)安装libusb

 

 

[plain] view plain copy
 print?
  1. sudo dpkg -i debs/libusb*deb  

4)安装OpenGL

 

 

[plain] view plain copy
 print?
  1. sudo dpkg -i debs/libglfw3*deb; sudo apt-get install -f  

5)安装OpenCL(可选,如果没有GPU不需要,或者不需要加速也不需要安装)

 

本人不需要,此处省略。

6)安装CUDA(可选,针对Nvidi)

本人不需要

7)安装VAAPI(可选,intel only)

8)安装OpenNI2(可选)

9)编译libfreenect2

 

[plain] view plain copy
 print?
  1. mkdir build && cd build  
  2. cmake .. -DENABLE_CXX11=ON  
  3. make  
  4. sudo make install  

 

10)验证libfreenect2安装情况

 

[plain] view plain copy
 print?
  1. ./Protonect gl to test OpenGL support.  
  2. ./Protonect cl to test OpenCL support.  
  3. ./Protonect cpu to test CPU support.  

如果提示failed to open Kinect V2 Access denied,请把libfreenect2文件夹下面的rules里面的一个90开头的文件复制到/etc/udev/rules.d/。

 

 

11)安装iai_kinect2

[plain] view plain copy
 print?
  1. cd ~/catkin_ws/src/  
  2. git clone https://github.com/code-iai/iai_kinect2.git  
  3. cd iai_kinect2  
  4. rosdep install -r --from-paths .  
  5. cd ~/catkin_ws  
  6. catkin_make -DCMAKE_BUILD_TYPE="Release"  

注意:如果安装libfreenect2在非标准目录/usr/local,你必须制定路径-Dfreenect2_DIR=path_to_freenect2/lib/cmake/freenect2,否则编译会失败

 

3 测试图像显示

 

[plain] view plain copy
 print?
  1. roslaunch kinect2_bridge kinect2_bridge.launch  
  2. rosrun kinect2_viewer kinect2_viewer  

 

 

4 校准相机(https://github.com/code-iai/iai_kinect2/tree/master/kinect2_calibration#calibrating-the-kinect-one)

  完成校准后拷贝校准文件到kinect2_bridge/data/<serialnumber>

5 重新测试(显示RGB或者点云图)

 

[plain] view plain copy
 print?
  1. rosrun kinect2_viewer kinect2_viewer sd image 或者 rosrun kinect2_viewer kinect2_viewer sd cloud  

posted on 2017-10-11 13:50  三炮儿  阅读(1087)  评论(0)    收藏  举报

导航