Python OpenCV返回黑色图像形式的外部相机

时间:2019-06-15 17:07:14

标签: python opencv webcam

我正在尝试将OpenCV的输入源更改为外部摄像机。它会打开一个对话框,要求我选择捕获源,当我选择外接USB摄像机(C170)时,它仅显示捕获的黑屏。

  1. 该代码与内置摄像头-cv2.VideoCapture(0)配合良好。
  2. 我检查了这台相机(31)是否可以正常工作,并且在从处理中调用时它工作良好。
  3. 整个代码在带有外部摄像头的Macbook上运行良好。

    class Camera:
        def __init__(self, src=31):
            self.stream = cv2.VideoCapture(31)
            self.grabbed, self.frame = self.stream.read()
            t = Thread(target=self.update, args=())
            t.daemon = True
            t.start()
    
        def update(self):
            while True:
                self.grabbed, frame = self.stream.read()
                self.frame = cv2.flip(frame, 1)
    
        def read(self):
            return self.frame
    
        def stop(self):
            self.stream.release()
    

我希望看到网络摄像头中的图像。 我没有看到任何错误消息,只有对话框和黑色的捕获屏幕。

1 个答案:

答案 0 :(得分:0)

去设备管理器并禁用我的内置摄像头就可以了。