通过虚拟机(VMware)的Kinect/Primesense(Xtion)ROS Ubuntu [英] Kinect / Primesense (Xtion) ROS Ubuntu through Virtual Machine (VMware)

查看:485
本文介绍了通过虚拟机(VMware)的Kinect/Primesense(Xtion)ROS Ubuntu的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

由于花了我很多时间来弄清楚如何使Xtion(Primesense)在VMware上运行,所以我想在这里与您分享. (使用Kinect,即使VMware已成功连接ROS,我仍然有一个问题让ROS看到它).

Since it took me quite some time to figure out how to get Xtion (Primesense) to work on VMware I thought to share it here with you. (with Kinect I have a problem to let ROS see the device even though VMware has successfully connected it).

roslaunch openni2_launch openni2.launch 

运行上面的命令给了我错误:

Running the above command gave me the error:

Warning: USB events thread - failed to set priority. This might cause loss of data...

运行"rviz"并添加->图片->图片主题->/camera/rgb/image_raw

I either got a single frame or no frame when running "rviz" and Add --> Image --> Image topic --> /camera/rgb/image_raw

那么在使用虚拟机(VMware)时如何从Primesense设备中获得视频帧?

So how do I get video frames in Ubuntu from a Primesense device while using a Virtual Machine (VMware)?

  • 运行VMware 10.0.4 build-2249910的Windows 7
  • Ubuntu 12.04.5在VMware中精确
  • ROS Hydro

推荐答案

以下问题为我指明了正确的方向:

The following question pointed me in the right direction: http://answers.ros.org/question/77651/asus-xtion-on-usb-30-ros-hydro-ubuntu-1210/?answer=143206#post-id-143206

在blizzardroi的答案(未选择答案)中,他/她提到USBInterface应该为0.我认为由于我的主计算机是Windows,因此我应该将UsbInterface设置为1,这确实可以解决它.

In the answer of blizzardroi (not selected answer) he/she mentions that USBInterface should be 0. I reasoned that since my main Machine is Windows, I should set UsbInterface to 1, which indeed solved it.

转到/etc/openni2/(从系统文件夹而不是Home),然后以管理员权限打开PS1080.ini(例如sudo gedit PS1080.ini).搜索UsbInterface,删除;并将其值更改为1.它应该如下所示:

Go to /etc/openni2/ (from system folder, not Home) and open PS1080.ini with administrator rights (e.g. sudo gedit PS1080.ini). Search for UsbInterface, remove the ; and change the value to 1. It should look like below:

; USB interface to be used. 0 - FW Default, 1 - ISO endpoints (default on Windows), 2 - BULK endpoints (default on Linux/Mac/Android machines)
UsbInterface=1

其他

根据以前的经验,您的Windows系统可能也需要kinect驱动程序也可能与此有关.如果上述方法不起作用,请尝试安装以下内容:

Additional

From previous experience it may also be related that your Windows system may need the kinect drivers as well. If the above not works, try to install the following:

  • (Kinect SDK) https://www.microsoft.com/en-us/download/details.aspx?id=34808
  • (OpenNI2 Windows) http://structure.io/openni

p.s.不要忘记您的Ubuntu驱动程序(将ROS版本替换为Hydro)

p.s. Don't forget your drivers for Ubuntu (replace hydro with your ROS version)

sudo apt-get install ros-hydro-openni*

重要

它不能解决以下错误,但是rviz返回视频,这意味着我们可以读取Primesense设备发布的数据!

Important

It doesn't solve the error below, but rviz returns video, which means that we can read the data the Primesense device publishes!

Warning: USB events thread - failed to set priority. This might cause loss of data...

这篇关于通过虚拟机(VMware)的Kinect/Primesense(Xtion)ROS Ubuntu的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆