找不到网络摄像头(没有img流)cv2.error:...(-215)size.width> 0&&

时间:2017-08-02 09:24:55

标签: python-2.7 opencv computer-vision webcam

我知道,这个主题已经有几个主题,但我的情况似乎还没有解决。我只是不能让我的程序在笔记本电脑上使用我的网络摄像头(Logitech的B910)拍摄图像。 我在Ubuntu 16.04上运行程序,该程序正在使用我正在使用的相同网络摄像头的其他计算机上运行。为了方便起见,这里有最低版本:

import cv2
device = -1
def show_webcam(mirror=False):
    cam = cv2.VideoCapture(device)
    print cam.isOpened(), cam.read()
    while True:
        ret_val, img = cam.read()
        if mirror:
            img = cv2.flip(img, 1)
        cv2.imshow('my webcam', img)
        if cv2.waitKey(1) == 27:
            break  # esc to quit
    cv2.destroyAllWindows()

def main():
    show_webcam(mirror=True)

if __name__ == '__main__':
    main()

打印命令产生:False,(False,None) 从命令行运行奶酪,显示网络摄像头流,它也应该是相机内置工作。 所以我尝试了设备的-1,0,1,2和其他值,没有任何效果。我在cam = ...之后放了一个time.sleep(2),也没有结果。我对此没有更多的了解,有人可以帮忙吗?谢谢!

注意: cv2.__file__是' usr / local / lib / python2.7 / dist-packages / cv2 / cv2.so'

cv2.__version__是' 3.2.0'

cv2.getBuildInformation()这里有点长,可能有一些重要的信息吗?

1 个答案:

答案 0 :(得分:0)

删除设备并将代码更改为cam = cv2.VideoCapture(0),看看它是否有效? 通常,如果你的相机正在使用奶酪,驱动程序应该没问题。

cv2.videocapture(0)用于设备默认设置 你的计算机目前还有其他相机设备吗?