Kinect + 网络摄像头 - 带宽问题

Kinect + 网络摄像头 - 带宽问题

我正在使用 Microsoft Kinect 传感器和罗技网络摄像头在 Ubuntu 12.04 和 ROS Fuerte(机器人操作系统)上制作应用程序。两者独立运行都很好。作为参考,我使用 Kinect 的 OpenNI 驱动程序。问题出现在同时使用 Kinect 和网络摄像头时,在这种情况下只有网络摄像头可以工作。尝试了所有可能的 USB 端口配置都无济于事。

现在我有一些关于我的问题的更多信息。这是 lsusb 报告。

总线 001 设备 001:ID 1d6b:0002 Linux Foundation 2.0 根集线器

总线 002 设备 001:ID 1d6b:0001 Linux Foundation 1.1 根集线器

总线 003 设备 001:ID 1d6b:0001 Linux Foundation 1.1 根集线器

总线 004 设备 001:ID 1d6b:0001 Linux Foundation 1.1 根集线器

总线 005 设备 001:ID 1d6b:0001 Linux Foundation 1.1 根集线器

总线 001 设备 002:ID 18e8:6229 Qcom RT2573

总线 001 设备 003:ID 0409:005a NEC 公司高速集线器

总线 001 设备 004:ID 1a40:0101 Terminus Technology Inc. 4 端口 HUB

总线 001 设备 005:ID 058f:6254 Alcor Micro Corp. USB 集线器

总线 001 设备 006:ID 045e:02b0 Microsoft Corp. Xbox NUI 电机

总线 001 设备 007:ID 046d:c518 Logitech, Inc. MX610 激光无线鼠标

总线 001 设备 008:ID 05ac:1002 Apple, Inc. 扩展键盘集线器 [Mitsumi]

总线 001 设备 009:ID 067b:2303 Prolific Technology, Inc. PL2303 串行端口

总线 001 设备 010:ID 046d:082c Logitech, Inc.

总线 001 设备 011:ID 0451:2077 德州仪器公司 TUSB2077 集线器

总线 001 设备 012:ID 05ac:0204 Apple, Inc.

总线 001 设备 013:ID 045e:02ad Microsoft Corp. Xbox NUI 音频

总线 001 设备 014:ID 06c2:0033 Phidg​​ets Inc.(以前称为 GLAB)

总线 001 设备 015:ID 06c2:0059 Phidg​​ets Inc.(以前称为 GLAB)

总线 001 设备 016:ID 06c2:004f Phidg​​ets Inc.(原为 GLAB)

总线 001 设备 017:ID 06c2:0045 Phidg​​ets Inc.(原 GLAB)Phidg​​etInterface Kit 8-8-8

总线 001 设备 018:ID 045e:02ae Microsoft Corp. Xbox NUI 摄像头

我知道最简单的方法是更换硬件。但我知道同样的设置在 Windows 上也能正常工作。现在我有几个问题:

  1. 看来我只有一个 usb 2.0 总线和几个 usb 1.1 总线,这很常见吗?还是说操作系统无法识别其他 usb 2.0 总线?

  2. 我已经确认 Microsoft Windows Kinect 驱动程序为 Kinect 保留了 60% 的 USB 带宽,OpenNI 驱动程序是否也这样做?

  3. 我尝试通过要求网络摄像头发送 mjpeg 流而不是 rgb 图像来降低网络摄像头带宽。这应该会大大减少网络摄像头的带宽,但结果是一样的,当摄像头打开时 Kinect 无法工作。你们知道 Ubuntu 上的 USB 带宽管理是如何工作的吗?是 USB 驱动程序、网络摄像头驱动程序还是 Ubuntu 保留了 USB 带宽?

  4. 如何减少为网络摄像头预留的带宽?我已经设置为 mjpeg 流,分辨率为 640x480,帧率为 15 fps... 这已经很低了!

非常感谢您的帮助,如果您需要其他信息,请告诉我。

相关内容