Virtual machine Kinect/Primesense(Xtion)通过虚拟机(VMware)访问Ubuntu
因为我花了很长时间才弄明白如何让Xtion(Primesense)在VMware上工作,所以我想在这里与大家分享一下。(使用Kinect时,即使VMware已成功连接,我也无法让ROS看到该设备) 运行上述命令时出现错误:Virtual machine Kinect/Primesense(Xtion)通过虚拟机(VMware)访问Ubuntu,virtual-machine,kinect,vmware,ros,primesense,Virtual Machine,Kinect,Vmware,Ros,Primesense,因为我花了很长时间才弄明白如何让Xtion(Primesense)在VMware上工作,所以我想在这里与大家分享一下。(使用Kinect时,即使VMware已成功连接,我也无法让ROS看到该设备) 运行上述命令时出现错误: Warning: USB events thread - failed to set priority. This might cause loss of data... 运行“rviz”并添加-->图像-->图像主题-->/camera/rgb/Image\u raw时,
Warning: USB events thread - failed to set priority. This might cause loss of data...
运行“rviz”并添加-->图像-->图像主题-->/camera/rgb/Image\u raw时,我得到了一帧或没有帧
那么,在使用虚拟机(VMware)时,如何从Primesense设备获取Ubuntu中的视频帧呢
我的规格
- 运行VMware 10.0.4 build-2249910的Windows 7
- Ubuntu 12.04.5在VMware中的精确版本
- ROS Hydro
- 以下问题为我指明了正确的方向:
在暴雪投资回报的回答中(非选定答案),他/她提到USBInterface应为0。我推断,由于我的主计算机是Windows,我应该将UsbInterface设置为1,这确实解决了这个问题
解决方案
转到/etc/openni2/(从系统文件夹,而不是主文件夹)并使用管理员权限打开PS1080.ini(例如sudo gedit PS1080.ini)。搜索USB接口,删除;并将该值更改为1。它应该如下所示:
; 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驱动程序。如果上述操作不起作用,请尝试安装以下组件:
- (Kinect SDK)
- (OpenNI2窗口)
Warning: USB events thread - failed to set priority. This might cause loss of data...
从opennni(一开始由位于Tools/PSLinkConsole的二进制文件发出)和另一个传感器收到相同的警告 通过将进程启动为sudo来解决-我猜:要设置USB事件线程的优先级,您需要根访问权限。:)
sudo apt-get install ros-hydro-openni*
Warning: USB events thread - failed to set priority. This might cause loss of data...