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. 然后安装依赖项如下,最好事先编译安装 ...
随机推荐
- SSL Virtual Servers
SSL Virtual Servers 来源 https://www.carlstalhood.com/ssl-virtual-servers-netscaler-12/ SSL Virtual Se ...
- Unity NavMesh 格式 解析 分析 对比 Recast Navigation
工具软件 Excel Nodepad++ Sublime Unity 5.4 / 5.6 VS RecastDemo CodeBlocks 分析过程以Unity项目-Demo13为例 一. 创建测试模 ...
- CAS单点登录相关配置
一.CAS单点登录服务端的部署 部署 把CAS所对应的war包部署到tomcat中 4.品优购资源V1.3\配套软件\配套软件\CAS\cas.war 配置 更改tomcat的端口号 <Conn ...
- 利用PL/SQL从Oracle数据库导出和导入数据
转自:https://www.jb51.net/article/109768.htm 本文实例为大家分享了使用PL/SQL从Oracle数据库导出和导入数据的方法,供大家参考,具体内容如下 1.导出数 ...
- flask 反向解析示例
1 静态网页 和动态网页 1 静态网页:无法与服务器做动态交互的网页 2 动态网页:允许与服务器做动态加护的 2 WEB 与 服务器 1 WEB :网页(HTML,css,JS) 3 服务器的作用: ...
- linux同步onedrive文件
定时任务 # 开机自启动 @reboot /root/system/start.sh # 从零点开始每小时执行一次任务 0 0 0/1 * * ? nohup rclone sync onedrive ...
- CLR ATL
前段时间,帮人改了个项目,里面明明感觉是MFC,但是却调用C#的类函数,用的都是gcnew指针,凭借着对C#的熟悉,一点一点的实验,终于帮人把程序改好了,但是却不知道到底是什么东西,C#和MFC的混合 ...
- 云服务器搭建Jupyter-主要部分为配置服务器安全组
最近在腾讯上租了一个服务器,在CSDN上看到了一个在服务器上搭建Jupyter的帖子,就跟着介绍做了一下. 参考CSDN帖子链接:https://blog.csdn.net/ds19991999/ar ...
- Java abstract类的基本使用 和 [abstract类实现]打印1000以内的所有素数并输出时间
笔记: /** 关键字abstract ,实现抽象类,相当于给出类的大纲,子类只管继承,但抽象类不可被实例化! * 1.抽象方法只保留方法的功能,而具体的执行,交给继承抽象类的子类,由子类重写所有的抽 ...
- Java并发包--ArrayBlockingQueue
转载请注明出处:http://www.cnblogs.com/skywang12345/p/3498652.html ArrayBlockingQueue介绍 ArrayBlockingQueue是数 ...