ROS indigo下Kinect v2的驱动安装与调试
ROS indigo下Kinect v2的驱动安装与调试
一、libfreenect2源码安装与测试
github地址:https://github.com/OpenKinect/libfreenect2
最终测试终端显示如下:
yuanlibin@yuanlibin:~/libfreenect2/build$ ./bin/Protonect
Version: 0.2.
Environment variables: LOGFILE=<protonect.log>
Usage: ./bin/Protonect [-gpu=<id>] [gl | cl | clkde | cuda | cudakde | cpu] [<device serial>]
[-noviewer] [-norgb | -nodepth] [-help] [-version]
[-frames <number of frames to process>]
To pause and unpause: pkill -USR1 Protonect
[Info] [Freenect2Impl] enumerating devices...
[Info] [Freenect2Impl] usb devices connected
[Error] [Freenect2Impl] failed to open Kinect v2: @: LIBUSB_ERROR_ACCESS Access denied (insufficient permissions)
[Info] [Freenect2Impl] found devices
no device connected!
yuanlibin@yuanlibin:~/libfreenect2/build$ sudo ./bin/Protonect
Version: 0.2.
Environment variables: LOGFILE=<protonect.log>
Usage: ./bin/Protonect [-gpu=<id>] [gl | cl | clkde | cuda | cudakde | cpu] [<device serial>]
[-noviewer] [-norgb | -nodepth] [-help] [-version]
[-frames <number of frames to process>]
To pause and unpause: pkill -USR1 Protonect
[Info] [Freenect2Impl] enumerating devices...
[Info] [Freenect2Impl] usb devices connected
[Info] [Freenect2Impl] found valid Kinect v2 @: with serial
[Info] [Freenect2Impl] found devices
[Info] [Freenect2DeviceImpl] opening...
[Info] [Freenect2DeviceImpl] transfer pool sizes rgb: * ir: **
[Info] [Freenect2DeviceImpl] opened
[Info] [Freenect2DeviceImpl] starting...
[Debug] [Freenect2DeviceImpl] status 0x090000:
[Debug] [Freenect2DeviceImpl] status 0x090000:
[Info] [Freenect2DeviceImpl] submitting rgb transfers...
[Info] [Freenect2DeviceImpl] submitting depth transfers...
[Info] [Freenect2DeviceImpl] started
device serial:
device firmware: 2.3.3913.0
[Debug] [DepthPacketStreamParser] not all subsequences received
[Debug] [DepthPacketStreamParser] skipping depth packet
[Debug] [DepthPacketStreamParser] skipping depth packet
[Debug] [DepthPacketStreamParser] skipping depth packet
[Debug] [DepthPacketStreamParser] skipping depth packet
[Debug] [RgbPacketStreamParser] skipping rgb packet!
[Info] [DepthPacketStreamParser] packets were lost
[Info] [OpenGLDepthPacketProcessor] avg. time: .45557ms -> ~.905Hz
[Info] [TurboJpegRgbPacketProcessor] avg. time: .7065ms -> ~.9972Hz
[Debug] [DepthPacketStreamParser] skipping depth packet
[Info] [DepthPacketStreamParser] packets were lost
[Info] [OpenGLDepthPacketProcessor] avg. time: .00361ms -> ~.783Hz
[Info] [TurboJpegRgbPacketProcessor] avg. time: .0946ms -> ~.9491Hz
[Debug] [DepthPacketStreamParser] skipping depth packet
[Info] [DepthPacketStreamParser] packets were lost
[Info] [OpenGLDepthPacketProcessor] avg. time: .18776ms -> ~.609Hz
[Info] [TurboJpegRgbPacketProcessor] avg. time: .1463ms -> ~.6897Hz
[Info] [OpenGLDepthPacketProcessor] avg. time: .06018ms -> ~.621Hz
[Info] [TurboJpegRgbPacketProcessor] avg. time: .4458ms -> ~.2242Hz
[Info] [OpenGLDepthPacketProcessor] avg. time: .03082ms -> ~.775Hz
[Info] [TurboJpegRgbPacketProcessor] avg. time: .595ms -> ~.5168Hz
[Info] [OpenGLDepthPacketProcessor] avg. time: .10736ms -> ~.796Hz
[Info] [TurboJpegRgbPacketProcessor] avg. time: .1131ms -> ~.1676Hz
[Info] [OpenGLDepthPacketProcessor] avg. time: .05573ms -> ~.795Hz
[Info] [TurboJpegRgbPacketProcessor] avg. time: .2058ms -> ~.3937Hz
[Info] [OpenGLDepthPacketProcessor] avg. time: .19326ms -> ~.557Hz
[Info] [TurboJpegRgbPacketProcessor] avg. time: .9728ms -> ~.5675Hz
[Info] [OpenGLDepthPacketProcessor] avg. time: .41113ms -> ~.804Hz
[Info] [TurboJpegRgbPacketProcessor] avg. time: .4546ms -> ~.1822Hz
[Info] [OpenGLDepthPacketProcessor] avg. time: .85608ms -> ~.763Hz
[Info] [TurboJpegRgbPacketProcessor] avg. time: .8185ms -> ~.4832Hz
[Info] [OpenGLDepthPacketProcessor] avg. time: .48623ms -> ~.173Hz
[Info] [TurboJpegRgbPacketProcessor] avg. time: .9838ms -> ~.7385Hz
[Info] [OpenGLDepthPacketProcessor] avg. time: .83449ms -> ~.683Hz
[Info] [TurboJpegRgbPacketProcessor] avg. time: .2176ms -> ~.7133Hz
[Info] [OpenGLDepthPacketProcessor] avg. time: .5814ms -> ~.3453Hz
[Info] [TurboJpegRgbPacketProcessor] avg. time: .1936ms -> ~.817Hz
[Info] [OpenGLDepthPacketProcessor] avg. time: .2376ms -> ~.9869Hz
[Info] [TurboJpegRgbPacketProcessor] avg. time: .3206ms -> ~.2715Hz
[Info] [OpenGLDepthPacketProcessor] avg. time: .45ms -> ~.6942Hz
[Info] [TurboJpegRgbPacketProcessor] avg. time: .2756ms -> ~.4638Hz
[Info] [OpenGLDepthPacketProcessor] avg. time: .9264ms -> ~.741Hz
[Info] [TurboJpegRgbPacketProcessor] avg. time: .1589ms -> ~.9679Hz
[Info] [OpenGLDepthPacketProcessor] avg. time: .85152ms -> ~.507Hz
[Info] [TurboJpegRgbPacketProcessor] avg. time: .096ms -> ~.2426Hz
[Info] [OpenGLDepthPacketProcessor] avg. time: .81726ms -> ~.861Hz
[Info] [TurboJpegRgbPacketProcessor] avg. time: .9504ms -> ~.8881Hz
[Info] [OpenGLDepthPacketProcessor] avg. time: .81506ms -> ~.884Hz
[Info] [TurboJpegRgbPacketProcessor] avg. time: .9432ms -> ~.9201Hz
[Info] [OpenGLDepthPacketProcessor] avg. time: .83013ms -> ~.728Hz
[Info] [TurboJpegRgbPacketProcessor] avg. time: .9232ms -> ~.0098Hz
[Info] [OpenGLDepthPacketProcessor] avg. time: .37377ms -> ~.616Hz
[Info] [TurboJpegRgbPacketProcessor] avg. time: .6522ms -> ~.2493Hz
[Info] [OpenGLDepthPacketProcessor] avg. time: .17901ms -> ~.295Hz
[Info] [TurboJpegRgbPacketProcessor] avg. time: .5835ms -> ~.5707Hz
[Info] [OpenGLDepthPacketProcessor] avg. time: .17929ms -> ~.289Hz
[Info] [TurboJpegRgbPacketProcessor] avg. time: .2584ms -> ~.5379Hz
[Info] [Freenect2DeviceImpl] stopping...
[Info] [Freenect2DeviceImpl] canceling rgb transfers...
[Info] [Freenect2DeviceImpl] canceling depth transfers...
[Info] [Freenect2DeviceImpl] stopped
[Info] [Freenect2DeviceImpl] closing...
[Info] [Freenect2DeviceImpl] releasing usb interfaces...
[Info] [Freenect2DeviceImpl] deallocating usb transfer pools...
[Info] [Freenect2DeviceImpl] closing usb device...
[Info] [Freenect2DeviceImpl] closed
[Info] [Freenect2DeviceImpl] closing...
[Info] [Freenect2DeviceImpl] already closed, doing nothing
二、iai-kinect2源码安装与测试
github地址:https://github.com/code-iai/iai_kinect2
说明:
在安装依赖项中需要opencv2.4.*,不能用opencv3.*。
测试过程中先默认路径安装了opencv2.4.9,然后安装iai-kinect2,可以正常运行。但是指定路径安装了opencv3.1.0就无法运行了。
但是在默认路径安装了opencv2.4.9后,先指定路径安装了opencv3.1.0,最后安装iai-kinect2,是可以正常运行的。
1. 新建一个catkin_ws工作空间,编译安装iai-kinect2
mkdir catkin_ws
cd catkin_ws
mkdir src
cd src
git clone https://github.com/code-iai/iai_kinect2.git
cd iai_kinect2
rosdep install -r --from-paths .
cd ~/catkin_ws
catkin_make -DCMAKE_BUILD_TYPE="Release"
rospack profile
2. 测试是否安装成功
roslaunch kinect2_bridge kinect2_bridge.launch
若出现以下错误:
[FATAL] [1479522843.484561710]: Failed to load nodelet '/kinect2_points_xyzrgb_qhd` of type `depth_image_proc/point_cloud_xyzrgb` to manager `kinect2'
[FATAL] [1479522843.485011986]: Failed to load nodelet '/kinect2_points_xyzrgb_sd` of type `depth_image_proc/point_cloud_xyzrgb` to manager `kinect2'
[FATAL] [1479522843.485174496]: Failed to load nodelet '/kinect2_bridge` of type `kinect2_bridge/kinect2_bridge_nodelet` to manager `kinect2'
[kinect2-] process has died [pid , exit code -, cmd /opt/ros/indigo/lib/nodelet/nodelet manager __name:=kinect2 __log:=/home/yuanlibin/.ros/log/a0154834-ae00-11e6--1c1b0d61bf22/kinect2-.log].
log file: /home/yuanlibin/.ros/log/a0154834-ae00-11e6--1c1b0d61bf22/kinect2-*.log
[kinect2_bridge-] process has died [pid , exit code , cmd /opt/ros/indigo/lib/nodelet/nodelet load kinect2_bridge/kinect2_bridge_nodelet kinect2 __name:=kinect2_bridge __log:=/home/yuanlibin/.ros/log/a0154834-ae00-11e6--1c1b0d61bf22/kinect2_bridge-.log].
log file: /home/yuanlibin/.ros/log/a0154834-ae00-11e6--1c1b0d61bf22/kinect2_bridge-*.log
[kinect2_bridge-] restarting process
process[kinect2_bridge-]: started with pid []
[ INFO] [1479522843.775811528]: Loading nodelet /kinect2_bridge of type kinect2_bridge/kinect2_bridge_nodelet to manager kinect2 with the following remappings:
[ INFO] [1479522843.777704976]: waitForService: Service [/kinect2/load_nodelet] could not connect to host [yuanlibin:], waiting...
[kinect2_points_xyzrgb_sd-] process has died [pid , exit code , cmd /opt/ros/indigo/lib/nodelet/nodelet load depth_image_proc/point_cloud_xyzrgb kinect2 rgb/camera_info:=kinect2/sd/camera_info rgb/image_rect_color:=kinect2/sd/image_color_rect depth_registered/image_rect:=kinect2/sd/image_depth_rect depth_registered/points:=kinect2/sd/points __name:=kinect2_points_xyzrgb_sd __log:=/home/yuanlibin/.ros/log/a0154834-ae00-11e6--1c1b0d61bf22/kinect2_points_xyzrgb_sd-.log].
log file: /home/yuanlibin/.ros/log/a0154834-ae00-11e6--1c1b0d61bf22/kinect2_points_xyzrgb_sd-*.log
[kinect2_points_xyzrgb_qhd-] process has died [pid , exit code , cmd /opt/ros/indigo/lib/nodelet/nodelet load depth_image_proc/point_cloud_xyzrgb kinect2 rgb/camera_info:=kinect2/qhd/camera_info rgb/image_rect_color:=kinect2/qhd/image_color_rect depth_registered/image_rect:=kinect2/qhd/image_depth_rect depth_registered/points:=kinect2/qhd/points __name:=kinect2_points_xyzrgb_qhd __log:=/home/yuanlibin/.ros/log/a0154834-ae00-11e6--1c1b0d61bf22/kinect2_points_xyzrgb_qhd-.log].
log file: /home/yuanlibin/.ros/log/a0154834-ae00-11e6--1c1b0d61bf22/kinect2_points_xyzrgb_qhd-*.log
[kinect2_points_xyzrgb_sd-] restarting process
process[kinect2_points_xyzrgb_sd-]: started with pid []
[kinect2_points_xyzrgb_qhd-] restarting process
process[kinect2_points_xyzrgb_qhd-]: started with pid []
[kinect2_points_xyzrgb_hd-] process has finished cleanly
log file: /home/yuanlibin/.ros/log/a0154834-ae00-11e6--1c1b0d61bf22/kinect2_points_xyzrgb_hd-*.log
[kinect2_points_xyzrgb_hd-] restarting process
process[kinect2_points_xyzrgb_hd-]: started with pid []
是因为在.bashrc文件中要添加如下代码,并且要注释掉原来的rgbdslam_catkin_ws的那行代码
#source /home/yuanlibin/rgbdslam_catkin_ws/devel/setup.bash
source /home/yuanlibin/catkin_ws/devel/setup.bash
最后测试
终端1
roslaunch kinect2_bridge kinect2_bridge.launch
终端2
rosrun kinect2_viewer kinect2_viewer
测试成功。
此时,可以按空格或者s键单张采集彩色图、深度图及其对应的点云图图像。
如果要连续采集图像,请参考博文:http://blog.csdn.net/sunbibei/article/details/51594824
ROS indigo下Kinect v2的驱动安装与调试的更多相关文章
- ROS indigo下Kinect v1的驱动安装与调试
ROS indigo下Kinect v1的驱动安装与调试 本文简要叙述了在ROS indigo版本下Kinect v1的驱动安装与调试过程. 1. 实验环境 (1)硬件: 台式机和Kinect v1 ...
- ubuntu14.04 and ros indigo install kinect driver--16
摘要: 原创博客:转载请表明出处:http://www.cnblogs.com/zxouxuewei/ 今日多次测设ros indigo install kinect driver ,提示各种失败,然 ...
- ubuntu14.04下nodejs + npm + bower的安装、调试和部署
1. 简介 本文介绍ubuntu14.04下nodejs+npm+bower的安装.调试和部署 参考文档 https://docs.npmjs.com/getting-started https: ...
- ubuntu14.04下 Kinect V2+Ros接口安装
1. 首先git下载代码,放到主文件夹下面 git clone https://github.com/OpenKinect/libfreenect2.git 2. 然后安装依赖项如下,最好事先编译安装 ...
- win7下Arduino Mega 2560驱动安装失败解决办法
因为玩四轴用的apm的飞控板,而其需要安装此驱动,曾经在win8使用其,但是因为win8有相对应的数字证书保护措施(应该是这样的,因为好久了记不清楚了),以至于我每次都需要长按shift重启电脑关闭此 ...
- 机器人操作系统ROS Indigo 入门学习(1)——安装ROS Indigo【转】
转自:http://blog.csdn.net/bobsweetie/article/details/43638761 Ubuntu14.04安装ROS Indigo 一.安装ROS 1.1配置Ubu ...
- 腾达Tenda W311MA无线网卡Linux下驱动安装
菜鸟看这里https://help.ubuntu.com/community/WifiD ... enda_W311M 最近也买了颗Tenda W311M网卡,简单说一下驱动的安装和hostapd做S ...
- ARM驱动:SEC S3C2410X Test B/D USB驱动 安装
s3c2410x驱动是一款非常好用的usb驱动程序,win7 64位下mini2440 USB下载驱动安装,解决win7下安装SEC S3C2410X Test B/D 驱动出现叹号的问题.如果你开始 ...
- Ubuntu 16.04 安装Kinect V2驱动
1.下载源代码 git clone https://github.com/OpenKinect/libfreenect2.git 2.依赖项安装 sudo apt-get install build- ...
随机推荐
- SIFT算法研究
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://underthehood.blog.51cto.com/2531780/65835 ...
- mysql 添加省市编码表
省表格: --省级 Provincial create table Provincial(pid int,Provincial varchar(50),primary key (pid)) inser ...
- Java数据结构总述
array list map set 链表..array 和list类似,增删慢,读取快,list长度可变,array长度固定, 链表增删快的list set 是一个没有重复数据的集合 map 是一个 ...
- VBA宏注释(四)
注释用于记录程序逻辑和用户信息,其他程序员将来可以阅读并理解相同的代码无缝工作. 它包括由开发者,修改者以及还可以包括合并逻辑的信息. 解释器在执行时忽略注释. VBA中的注释用两种方法表示,它们分别 ...
- vulnhub攻略
https://www.vulnhub.com/entry/21ltr-scene-1,3/ 这个靶机国内https://www.cnblogs.com/hack404/p/11423228.html ...
- SAP Marketing Cloud的Contact导入配置和数据合并原理
SAP很多系统的主数据都支持从外部系统导入,SAP Marketing Cloud也是如此,contact主数据可以来自Hybris Commerce,CRM,ERP或者Twitter,Faceboo ...
- Eclipse中如何创建一个完整的Maven-Web项目
Maven Web项目搭建 1.首先确保本地开发环境搭建完毕(jdk,maven). 2.打开Eclipse,新建Maven项目.选择Maven Project选项. 3.将第一项:Create a ...
- Linux——CentOS7安装gcc编译器详解 查看内核版本
[root@localhost ~]# uname -a Linux localhost.localdomain 3.10.0-957.el7.x86_64 #1 SMP Thu Nov 8 23:3 ...
- VMware Workstation中虚拟机与windows10共享文件夹
设置共享文件夹之前需要确定已经安装VMware Tools 1.在windows桌面新建一个名为share_folder的文件夹用来共享 2.右键点击虚拟机的名字,在弹出的菜单中选择设置 弹出对话框 ...
- PHP获取当前页面地址
#测试网址: http://localhost/blog/testurl.php?id=5 //获取域名或主机地址 echo $_SERVER['HTTP_HOST']."< ...