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. 然后安装依赖项如下,最好事先编译安装 ...
随机推荐
- 转录组测序(RNA-seq)技术
转录组是某个物种或者特定细胞类型产生的所有转录本的集合.转录组研究能够从整体水 平研究基因功能以及基因结构,揭示特定生物学过程以及疾病发生过程中的分子机理,已广泛应 用于基础研究.临床诊断和药 ...
- ThinkPHP5.0.*远程代码执行漏洞预警
安全公告 Thinkphp5.0.*存在远程代码执行漏洞. 漏洞描述 Thinkphp5.0.*存在远程代码执行漏洞.攻击者可以利用漏洞实现任意代码执行等高危操作. 目前官方已经出了补丁: https ...
- jQuery事件绑定和委托实例
本文实例讲述了jQuery事件绑定和委托.分享给大家供大家参考.具体方法如下: jQuery事件的绑定和委托可以用多种方法实现,on() . bind() . live() . delegate ...
- 超详细的Java面试题总结之JavaWeb基础知识总结
ervlet总结: 在Java Web程序中,Servlet主要负责接收用户请求HttpServletRequest,在doGet(),doPost()中做相应的处理,并将回应HttpServletR ...
- Sliverlight/WPF 样式使用方法
1,UserControl 页面级样式: UserControl.Resources style setter Property value. TargetType为应用的类型 <UserCon ...
- json —— pickle 的序列化和反序列化
前言json的序列化和反序列化 1, json 只能序列化简单的数据类型,如,列表,字典,字符串,等简单的类型,不能序列化复杂的类型. 2, json 是支持所有的语言的,多以我们跨语言的时候都是用j ...
- mongodb的基本操作之数据删除
删除操作使用remove进行,数据的删除与查询类似,接受一个参数,与查询不同的是,为了防止误操作,删除操作不允许不传参数 比如 db.test_collection.remove() 会报错 Erro ...
- Ubuntu系统---系统驱动丢失、Kernel内核卸载、禁止更新
Ubuntu系统---系统驱动丢失.Kernel内核卸载.禁止更新 一早开机发现,ubuntu字体异常,字体很大,直接反应是驱动坏了.一查,确实丢失英伟达驱动,为什么呢?莫名的消失.想知道:1.英伟达 ...
- 大数据之路week04--day05(java 正则表达式)
1.1 正则表达式 1.2 简介 Regular Expression 正则表达式 常简称为: regex.正则 正则表达式是一整套约束字符串的语法规则,独立于任何编程语言 正则表达式 方便.灵 ...
- Vue-cli中的proxyTable解决开发环境的跨域问题
https://blog.csdn.net/u012149969/article/details/80288126 https://vuejs-templates.github.io/webpack/ ...