!_函数“cv::cvtColor”imgproc\src\color.cpp:182中的src.empty()

2024-10-01 13:43:00 发布

您现在位置:Python中文网/ 问答频道 /正文

PyCharm中的相机出错。在这种情况下我能做什么

import cv2
import numpy as np
frameWidth = 640
frameHeight = 480
cap = cv2.VideoCapture(1)
cap.set(3, frameWidth)
cap.set(4, frameHeight)
cap.set(10,150)
while True:
    success, img = cap.read()
    cv2.imshow("Result", img)
    if cv2.waitKey(1) and 0xFF == ord('q'):
     break
C:\Users\user\PycharmProjects\OpenCvPython\venv\Scripts\python.exe C:/Users/user/PycharmProjects/OpenCvPython/chapter7.py
[ WARN:0] global C:\Users\runneradmin\AppData\Local\Temp\pip-req-build-ep71p_ws\opencv\modules\videoio\src\cap_msmf.cpp (438) `anonymous-namespace'::SourceReaderCB::~SourceReaderCB terminating async callback
Traceback (most recent call last):
  File "C:/Users/user/PycharmProjects/OpenCvPython/chapter7.py", line 11, in <module>
    cv2.imshow("Result", img)
cv2.error: OpenCV(4.5.3) C:\Users\runneradmin\AppData\Local\Temp\pip-req-build-ep71p_ws\opencv\modules\imgproc\src\color.cpp:182: error: (-215:Assertion failed) !_src.empty() in function 'cv::cvtColor'


Process finished with exit code 1

Tags: importsrcimgresultcv2userscapset
1条回答
网友
1楼 · 发布于 2024-10-01 13:43:00

检查是否首先成功检索视频捕获帧,例如:

import cv2
import numpy as np
frameWidth = 640
frameHeight = 480
cap = cv2.VideoCapture(1)
cap.set(3, frameWidth)
cap.set(4, frameHeight)
cap.set(10,150)
while True:
    success, img = cap.read()

    if not success:
      print('error retrieving frame')
      continue

    cv2.imshow("Result", img)
    if cv2.waitKey(1) and 0xFF == ord('q'):
     break

相关问题 更多 >