ROS indigo下Kinect v1的驱动安装与调试
ROS indigo下Kinect v1的驱动安装与调试
本文简要叙述了在ROS indigo版本下Kinect v1的驱动安装与调试过程。
1. 实验环境
(1)硬件: 台式机和Kinect v1。
台式机配置:
Intel(R)Core(TM)i5-6500 CPU @ 3.20GHz 3.20GHz;
RAM: 16.0GB;
GPU: NVIDIA GeForce GTX 1060 6GB。
(2)软件:Ubuntu 14.04 + ROS indigo。
2. 安装ROS软件包
以下2种方式,任选一种安装,或者全部安装,选择一种运行也可。
(1)openni_launch
sudo apt-get install ros-indigo-openni-camera
sudo apt-get install ros-indigo-openni-launch
rosstack profile
rospack profile
(2)freenect_launch
sudo apt-get install ros-indigo-freenect-camera ros-indigo-freenect-stack ros-indigo-freenect-launch
或者直接一条命令将两种方式同时安装:
sudo apt-get install ros-indigo-openni-* ros-indigo-openni2-* ros-indigo-freenect-*
3. 测试Kinect v1设备
方式1:
终端1:
roslaunch openni_launch openni.launch
yuanlibin@yuanlibin:~$ roslaunch openni_launch openni.launch
... logging to /home/yuanlibin/.ros/log/7e08363e-2be5-11e8-b5a2-1c1b0d61bf22/roslaunch-yuanlibin-.log
Checking log directory for disk usage. This may take awhile.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB. started roslaunch server http://yuanlibin:37483/ SUMMARY
======== PARAMETERS
* /camera/camera_nodelet_manager/num_worker_threads:
* /camera/depth_rectify_depth/interpolation:
* /camera/depth_registered_rectify_depth/interpolation:
* /camera/disparity_depth/max_range: 4.0
* /camera/disparity_depth/min_range: 0.5
* /camera/disparity_registered_hw/max_range: 4.0
* /camera/disparity_registered_hw/min_range: 0.5
* /camera/disparity_registered_sw/max_range: 4.0
* /camera/disparity_registered_sw/min_range: 0.5
* /camera/driver/depth_camera_info_url:
* /camera/driver/depth_frame_id: camera_depth_opti...
* /camera/driver/depth_registration: False
* /camera/driver/device_id: #
* /camera/driver/rgb_camera_info_url:
* /camera/driver/rgb_frame_id: camera_rgb_optica...
* /rosdistro: indigo
* /rosversion: 1.11. NODES
/camera/
camera_nodelet_manager (nodelet/nodelet)
depth_metric (nodelet/nodelet)
depth_metric_rect (nodelet/nodelet)
depth_points (nodelet/nodelet)
depth_rectify_depth (nodelet/nodelet)
depth_registered_hw_metric_rect (nodelet/nodelet)
depth_registered_metric (nodelet/nodelet)
depth_registered_rectify_depth (nodelet/nodelet)
depth_registered_sw_metric_rect (nodelet/nodelet)
disparity_depth (nodelet/nodelet)
disparity_registered_hw (nodelet/nodelet)
disparity_registered_sw (nodelet/nodelet)
driver (nodelet/nodelet)
ir_rectify_ir (nodelet/nodelet)
points_xyzrgb_hw_registered (nodelet/nodelet)
points_xyzrgb_sw_registered (nodelet/nodelet)
register_depth_rgb (nodelet/nodelet)
rgb_debayer (nodelet/nodelet)
rgb_rectify_color (nodelet/nodelet)
rgb_rectify_mono (nodelet/nodelet)
/
camera_base_link (tf/static_transform_publisher)
camera_base_link1 (tf/static_transform_publisher)
camera_base_link2 (tf/static_transform_publisher)
camera_base_link3 (tf/static_transform_publisher) auto-starting new master
process[master]: started with pid []
ROS_MASTER_URI=http://localhost:11311 setting /run_id to 7e08363e-2be5-11e8-b5a2-1c1b0d61bf22
process[rosout-]: started with pid []
started core service [/rosout]
process[camera/camera_nodelet_manager-]: started with pid []
process[camera/driver-]: started with pid []
process[camera/rgb_debayer-]: started with pid []
process[camera/rgb_rectify_mono-]: started with pid []
process[camera/rgb_rectify_color-]: started with pid []
process[camera/ir_rectify_ir-]: started with pid []
process[camera/depth_rectify_depth-]: started with pid []
process[camera/depth_metric_rect-]: started with pid []
process[camera/depth_metric-]: started with pid []
process[camera/depth_points-]: started with pid []
process[camera/register_depth_rgb-]: started with pid []
process[camera/points_xyzrgb_sw_registered-]: started with pid []
process[camera/depth_registered_sw_metric_rect-]: started with pid []
process[camera/depth_registered_rectify_depth-]: started with pid []
[ INFO] [1521512530.084412228]: Initializing nodelet with worker threads.
process[camera/points_xyzrgb_hw_registered-]: started with pid []
process[camera/depth_registered_hw_metric_rect-]: started with pid []
process[camera/depth_registered_metric-]: started with pid []
process[camera/disparity_depth-]: started with pid []
process[camera/disparity_registered_sw-]: started with pid []
process[camera/disparity_registered_hw-]: started with pid []
process[camera_base_link-]: started with pid []
process[camera_base_link1-]: started with pid []
process[camera_base_link2-]: started with pid []
process[camera_base_link3-]: started with pid []
Warning: USB events thread - failed to set priority. This might cause loss of data...
Warning: USB events thread - failed to set priority. This might cause loss of data...
[ INFO] [1521512530.991225346]: Number devices connected:
[ INFO] [1521512530.991443026]: . device on bus : is a SensorKinect (2ae) from PrimeSense (45e) with serial id ''
[ INFO] [1521512530.993391990]: Searching for device with index =
[ INFO] [1521512532.075612809]: Opened 'SensorKinect' on bus : with serial number ''
[ INFO] [1521512532.160335981]: rgb_frame_id = 'camera_rgb_optical_frame'
[ INFO] [1521512532.160547264]: depth_frame_id = 'camera_depth_optical_frame'
[ WARN] [1521512532.167038548]: Camera calibration file /home/yuanlibin/.ros/camera_info/rgb_0000000000000000.yaml not found.
[ WARN] [1521512532.167074136]: Using default parameters for RGB camera calibration.
[ WARN] [1521512532.167101562]: Camera calibration file /home/yuanlibin/.ros/camera_info/depth_0000000000000000.yaml not found.
[ WARN] [1521512532.167119680]: Using default parameters for IR camera calibration.
终端2:
rosrun rqt_image_view rqt_image_view
如下图所示:

方式2:
终端1:
roslaunch freenect_launch freenect-registered-xyzrgb.launch
yuanlibin@yuanlibin:~$ roslaunch freenect_launch freenect-registered-xyzrgb.launch
... logging to /home/yuanlibin/.ros/log/4f23a262-2be6-11e8-90ab-1c1b0d61bf22/roslaunch-yuanlibin-.log
Checking log directory for disk usage. This may take awhile.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB. started roslaunch server http://yuanlibin:38951/ SUMMARY
======== PARAMETERS
* /camera/camera_nodelet_manager/num_worker_threads:
* /camera/depth_registered_rectify_depth/interpolation:
* /camera/driver/data_skip:
* /camera/driver/debug: False
* /camera/driver/depth_camera_info_url:
* /camera/driver/depth_frame_id: camera_depth_opti...
* /camera/driver/depth_registration: True
* /camera/driver/device_id: #
* /camera/driver/diagnostics_max_frequency: 30.0
* /camera/driver/diagnostics_min_frequency: 30.0
* /camera/driver/diagnostics_tolerance: 0.05
* /camera/driver/diagnostics_window_time: 5.0
* /camera/driver/enable_depth_diagnostics: False
* /camera/driver/enable_ir_diagnostics: False
* /camera/driver/enable_rgb_diagnostics: False
* /camera/driver/rgb_camera_info_url:
* /camera/driver/rgb_frame_id: camera_rgb_optica...
* /rosdistro: indigo
* /rosversion: 1.11. NODES
/camera/
camera_nodelet_manager (nodelet/nodelet)
depth_registered_hw_metric_rect (nodelet/nodelet)
depth_registered_metric (nodelet/nodelet)
depth_registered_rectify_depth (nodelet/nodelet)
driver (nodelet/nodelet)
points_xyzrgb_hw_registered (nodelet/nodelet)
rgb_debayer (nodelet/nodelet)
rgb_rectify_color (nodelet/nodelet)
rgb_rectify_mono (nodelet/nodelet)
/
camera_base_link (tf/static_transform_publisher)
camera_base_link1 (tf/static_transform_publisher)
camera_base_link2 (tf/static_transform_publisher)
camera_base_link3 (tf/static_transform_publisher) auto-starting new master
process[master]: started with pid []
ROS_MASTER_URI=http://localhost:11311 setting /run_id to 4f23a262-2be6-11e8-90ab-1c1b0d61bf22
process[rosout-]: started with pid []
started core service [/rosout]
process[camera/camera_nodelet_manager-]: started with pid []
process[camera/driver-]: started with pid []
process[camera/rgb_debayer-]: started with pid []
process[camera/rgb_rectify_mono-]: started with pid []
process[camera/rgb_rectify_color-]: started with pid []
process[camera/depth_registered_rectify_depth-]: started with pid []
process[camera/points_xyzrgb_hw_registered-]: started with pid []
process[camera/depth_registered_hw_metric_rect-]: started with pid []
process[camera/depth_registered_metric-]: started with pid []
process[camera_base_link-]: started with pid []
process[camera_base_link1-]: started with pid []
process[camera_base_link2-]: started with pid []
process[camera_base_link3-]: started with pid []
[ INFO] [1521512880.894225759]: Initializing nodelet with worker threads.
[ INFO] [1521512881.035164983]: Number devices connected:
[ INFO] [1521512881.035200471]: . device on bus : is a Xbox NUI Camera (2ae) from Microsoft (45e) with serial id 'B70773103929441B'
[ INFO] [1521512881.035586547]: Searching for device with index =
[ INFO] [1521512886.486004198]: Starting a 3s RGB and Depth stream flush.
[ INFO] [1521512886.486190837]: Opened 'Xbox NUI Camera' on bus : with serial number 'B70773103929441B'
[ WARN] [1521512886.495869607]: Could not find any compatible image output mode for . Falling back to default image output mode .
[ WARN] [1521512886.495915261]: Could not find any compatible depth output mode for . Falling back to default depth output mode .
[ INFO] [1521512886.503091540]: rgb_frame_id = 'camera_rgb_optical_frame'
[ INFO] [1521512886.503133073]: depth_frame_id = 'camera_depth_optical_frame'
[ WARN] [1521512886.516610578]: Camera calibration file /home/yuanlibin/.ros/camera_info/rgb_B70773103929441B.yaml not found.
[ WARN] [1521512886.516673295]: Using default parameters for RGB camera calibration.
[ WARN] [1521512886.516711780]: Camera calibration file /home/yuanlibin/.ros/camera_info/depth_B70773103929441B.yaml not found.
[ WARN] [1521512886.516746978]: Using default parameters for IR camera calibration.
[ INFO] [1521512889.945930001]: Stopping device RGB and Depth stream flush.
终端2:
rosrun rqt_image_view rqt_image_view
如下图所示:

终端2或者用命令(=后面是发布的主题,可以用rostopic list命令查看)
rosrun image_view image_view image:=/camera/rgb/image_color
查看彩色图像如下图所示:

rosrun image_view image_view image:=/camera/depth_regisred/image
查看深度图像如下图所示:

终端2或者用命令
rosrun rviz rviz
点击add,选择类型camera。添加成功后选择camera菜单下的Iamge Topic选项,选择主题/camera/rgb/image_color或者/camera/depth_registered/image查看彩色图像和深度图像。
彩色图像如下图所示:

还可以查看点云:点击add添加PointCloud2类型,修改“topic”,如下图所示:

ubuntu系统下虽然都可以查看彩色图像和深度图像,但是无法保存其成对的原始数据,关于Kinect v1彩色和深度图像对的采集步骤详见:
Kinect v1 (Microsoft Kinect for Windows v1 )彩色和深度图像对的采集步骤
参考文献:http://blog.csdn.net/x_r_su/article/details/52904113
ROS indigo下Kinect v1的驱动安装与调试的更多相关文章
- ROS indigo下Kinect v2的驱动安装与调试
ROS indigo下Kinect v2的驱动安装与调试 一.libfreenect2源码安装与测试 github地址:https://github.com/OpenKinect/libfreenec ...
- 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: ...
- 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 ...
- Kinect v1 (Microsoft Kinect for Windows v1 )彩色和深度图像对的采集步骤
Kinect v1 (Microsoft Kinect for Windows v1 )彩色和深度图像对的采集步骤 一.在ubuntu下尝试 1. 在虚拟机VWware Workstation 12. ...
- ARM驱动:SEC S3C2410X Test B/D USB驱动 安装
s3c2410x驱动是一款非常好用的usb驱动程序,win7 64位下mini2440 USB下载驱动安装,解决win7下安装SEC S3C2410X Test B/D 驱动出现叹号的问题.如果你开始 ...
- ubuntu14.04下 Kinect V2+Ros接口安装
1. 首先git下载代码,放到主文件夹下面 git clone https://github.com/OpenKinect/libfreenect2.git 2. 然后安装依赖项如下,最好事先编译安装 ...
随机推荐
- Html 中scroll offset client 总结
HTML精确定位:scrollLeft,scrollWidth,clientWidth,offsetWidth scrollHeight: 获取对象的滚动高度. scrollLeft:设置或获取位于对 ...
- java调用.net的webservice接口
要调用webservice,首先得有接口,用已经写好的接口地址在myEclipse的目标project中,右键->new web service client-> 选择JAX-WS方式,点 ...
- 关于Vue中,在方法中使用(操作)子组件获取到的数据
已知,子组件通过props获取父组件传过来的数据,而这个数据是无法在created.mounted生命周期中使用的,只能在beforeUpdated或者updated获取到: 但是如果我们要使用这个数 ...
- 关于Vue中页面(父组件)下拉,页面中的子组件加载更多数据的实现方法
一个项目中存在很多这种情况:父组件(页面)中的子组件需要做下拉加载更多的需求,但是这个下拉到底部的动作只能通过监控页面(父组件)来完成 这就需要父子组件之间的通信,代码如下: 1. 建立一个用于父子组 ...
- pandas行转列、列转行、以及一行生成多行
楔子 笔者曾经碰到过两种格式的数据,当时确实把我难住了,最后虽然解决了,但是方法不够优雅,而且效率也不高,如果想高效率,那么就必须使用pandas提供的方法.而pandas作为很强的一个库,一定可以优 ...
- iptables网络防火墙和SNAT原理实战
网络防火墙 iptables/netfilter网络防火墙: (1) 充当网关 (2) 使用filter表的FORWARD链 注意的问题: (1) 请求-响应报文均会经由FORWARD链,要注意规则的 ...
- Django中使用xadmin作为后台管理页面
xadmin后台管理 安装:luffy虚拟环境下 # >: pip install https://codeload.github.com/sshwsfc/xadmin/zip/django2 ...
- dl pthread m库的含义
dl:dlopen dlerror dlclose dlsym等函数的库 m:math.h中声明的库函数,比如log10等 pthread:线程建立函数 参考: Linux 编译C程序遇到依赖libm ...
- linux下setsockopt函数的使用
1.closesocket(一般不会立即关闭而经历TIME_WAIT的过程)后想继续重用该socket:BOOL bReuseaddr=TRUE;setsockopt(s,SOL_SOCKET ,SO ...
- Autodesk Maya 2019 安装
为什么我接触到建模了呢,我也不知道.只会弄点桌椅板凳简单动画,希望有时间更进一步学习,毕竟我还有一个开发游戏的梦想. 步骤:下载-安装-激活 Maya吧各版本合集下载 地址:https://pan.b ...