2

我已经购买了两个Genius facecam 1000x相机并尝试设置立体相机,相机的v4l2-ctl输出如下:

ioctl: VIDIOC_ENUM_FMT
    Index       : 0
    Type        : Video Capture
    Pixel Format: 'YUYV'
    Name        : YUYV 4:2:2

    Index       : 1
    Type        : Video Capture
    Pixel Format: 'MJPG' (compressed)
    Name        : Motion-JPEG

正如您所看到的,支持像素格式 MJPG,并且需要这种像素格式,但是当我尝试从两个网络摄像头捕获视频时,第二个摄像头仍然发生错误,我只能获得 320x240 分辨率的立体视频!我尝试了以下两个但对我不起作用:VIDIOC_STREAMON: No space left on device

  1. v4l2-ctl --set-fmt-video=width=640,height=480,pixelformat=1 
    
  2. 设置FOURCC为 MJPG 会导致以下错误:

    HIGHGUI ERROR: V4L: Property <unknown property string>(6) not supported by device
    

    # setting the `FOURCC` will cause the 
    # `HIGHGUI ERROR: V4L: Property <unknown property string>(6) not supported by device`
    for p in ports:
        self.caps.append(cv2.VideoCapture(p))
        self.caps[-1].set(cv2.cv.CV_CAP_PROP_FOURCC('M','J','P','G'));
    

我应该怎么做才能以相对好的分辨率让它正确?

PS:我所有的 USB 端口都连接到一个控制器!

4

0 回答 0