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



我刚开始在Python中使用OpenCV并遇到断言错误。我从教程中复制了下面的代码,但它不适合我。

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()

运行时,我得到OpenCV Error: Assertion failed (scn == 3 || scn == 4) in cv::cvtColor

当从上面打印变量retframe时,我得到(False,None),所以它甚至没有正确捕获帧。

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

ret, frame = cap.read()之后添加if not ret: continue

一些cam-drivers返回无效的第一帧。

相关内容

  • 没有找到相关文章

最新更新