OpenCV Python错误断言失败(scn==3 | | scn==4)

OpenCV Python错误断言失败(scn==3 | | scn==4),python,opencv,Python,Opencv,我刚开始在Python中使用OpenCV,遇到了一个断言错误。我从a复制了以下代码,但它对我不起作用 import numpy as np import cv2 as cv cap = cv.VideoCapture(0) # use first webcam if not cap.isOpened(): cap.open() while True: # capture frame-by-frame ret, frame = cap.read() # our operat

我刚开始在Python中使用
OpenCV
,遇到了一个断言错误。我从a复制了以下代码,但它对我不起作用

import numpy as np
import cv2 as cv

cap = cv.VideoCapture(0) # use first webcam
if not cap.isOpened(): cap.open()

while True:
   # capture frame-by-frame
   ret, frame = cap.read()

   # our operations on the frame come here
   gray = cv.cvtColor(frame,cv.COLOR_BGR2GRAY)

# display the resulting frame
cv.imshow('frame', gray)
if cv.waitKey(1) & 0xFF == ord('q'):
    break
# when everything is done, release the capture
cap.release()
cv.destroyAllWindows()
运行时,我在cv::cvtColor中得到
OpenCV错误:断言失败(scn==3 | | scn==4)

当从上面打印变量
ret
frame
时,我得到
(False,None)
,因此它甚至无法正确捕获帧

到底是什么问题,我如何解决?
谢谢。

ret之后,frame=cap.read()
,如果没有ret,则添加
:继续

某些cam驱动器返回无效的第一帧