1

我有一个深度相机(XTION2)。我可以通过以下代码成功获取图像流:

roslaunch openni2_launch openni2.launch
rosrun image_view image_view image:=/camera/depth/image_raw

但是当我尝试通过以下代码输出我的 rgb 图像流时

roslaunch openni2_launch openni2.launch
rosrun image_view image_view image:=/camera/rgb/image_raw

我收到一条错误消息:

VIDIOC_STREAMON error 28, No space left on device

我尝试了一些常见的解决方案来解决这个问题,例如:

sudo rmmod uvcvideo
sudo modprobe uvcvideo quirks=640

或者

sudo rmmod uvcvideo
sudo modprobe uvcvideo quirks=128

但它仍然不起作用。

我的 ubuntu 版本是“16.04” 这是“lsusb”的输出

Bus 002 Device 032: ID 0b05:182c ASUSTek Computer, Inc. 
Bus 002 Device 031: ID 0b05:182d ASUSTek Computer, Inc. 
Bus 002 Device 030: ID 0bda:0401 Realtek Semiconductor Corp. 
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 005: ID 0cf3:e007 Atheros Communications, Inc. 
Bus 001 Device 004: ID 0bda:0129 Realtek Semiconductor Corp. RTS5129 Card Reader Controller
Bus 001 Device 003: ID 0bda:5769 Realtek Semiconductor Corp. 
Bus 001 Device 011: ID 046d:c52f Logitech, Inc. Unifying Receiver
Bus 001 Device 016: ID 0bda:5401 Realtek Semiconductor Corp. RTL 8153 USB 3.0 hub with gigabit ethernet
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

这是我插入 xtion2 相机时“lsusb -t”的输出

/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/6p, 5000M
    |__ Port 1: Dev 30, If 0, Class=Hub, Driver=hub/4p, 5000M
        |__ Port 1: Dev 31, If 0, Class=Video, Driver=uvcvideo, 5000M
        |__ Port 1: Dev 31, If 1, Class=Video, Driver=uvcvideo, 5000M
        |__ Port 1: Dev 31, If 2, Class=Audio, Driver=snd-usb-audio, 5000M
        |__ Port 1: Dev 31, If 3, Class=Audio, Driver=snd-usb-audio, 5000M
        |__ Port 2: Dev 32, If 0, Class=Video, Driver=uvcvideo, 5000M
        |__ Port 2: Dev 32, If 1, Class=Video, Driver=uvcvideo, 5000M
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/12p, 480M
    |__ Port 1: Dev 16, If 0, Class=Hub, Driver=hub/4p, 480M
    |__ Port 3: Dev 11, If 0, Class=Human Interface Device, Driver=usbhid, 12M
    |__ Port 3: Dev 11, If 1, Class=Human Interface Device, Driver=usbhid, 12M
    |__ Port 5: Dev 3, If 0, Class=Video, Driver=uvcvideo, 480M
    |__ Port 5: Dev 3, If 1, Class=Video, Driver=uvcvideo, 480M
    |__ Port 6: Dev 4, If 0, Class=Vendor Specific Class, Driver=rtsx_usb, 480M
    |__ Port 7: Dev 5, If 0, Class=Wireless, Driver=btusb, 12M
    |__ Port 7: Dev 5, If 1, Class=Wireless, Driver=btusb, 12M

谁能帮我解决这个问题?请帮助我,非常感谢!

4

1 回答 1

0

我偶尔会解决这个问题。运行以下代码后

sudo rmmod uvcvideo
sudo modprobe uvcvideo quirks=640

我通过usb 3端口的usb2.0端口将我的xtion2设备插入我的计算机,它突然工作了。我不知道为什么。

于 2018-02-28T01:26:17.033 回答