python - OpenCV(4.5.4-dev) 错误: (-215:Assertion failed) !_src.empty() in function 'cv::cvtColor'
问题描述
我正在尝试使用 haarcascades 从汽车视频中检测汽车,并且我有一个输出。但是错误在那里分裂:
文件“D:\Documents\KY7\Oracle\baocao\car_detector_haarcascades\car.py”,第 10 行,灰色 = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) cv2.error: OpenCV(4.5.4-dev) D: \a\opencv-python\opencv-python\opencv\modules\imgproc\src\color.cpp:182: 错误: (-215:Assertion failed) !_src.empty() in function 'cv::cvtColor'
这是代码:
import numpy as np
import cv2
car_cascade = cv2.CascadeClassifier('haarcascade_car.xml')
cap = cv2.VideoCapture(r"D:\Documents\KY7\Oracle\baocao\car_detector_haarcascades\cars.mp4")
while cap.isOpened():
ret, img = cap.read()
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
cars = car_cascade.detectMultiScale(gray, 1.3, 5)
for (x,y,w,h) in cars:
cv2.rectangle(img,(x,y),(x+w+5,y+h+5),(0,0,255),3)
cv2.imshow('Car Detector',img)
k = cv2.waitKey(30) & 0xff
if k == 27:
break
cap.release()
cv2.destroyAllWindows()
我不知道要修复这个错误
解决方案
你的错误是 img is empty
可能您需要检查捕获是否成功,例如
if not ret:
break
推荐阅读
- python - 使用 Python 在 Instagram 中自动执行以下操作
- flutter - 如何让 Listview.builder 在 Flutter 中从当天开始
- python-3.x - 将图像转换为 RGB 值列表
- java - 从 EditText 中删除文本后搜索显示结果
- android - Kotlin 中的密封类,不兼容类型错误无法返回父类型
- javascript - 我正在构建一个 Slack Bot 但出现错误
- android - 如何获取数组中的所有英文单词以进行自动完成?
- javascript - 如何将图像上传到 Firebase 存储并等待 URL 返回,然后再继续
- python-3.x - 在命令窗口上显示 python 3.9.1 的 python 2.7.12?
- javascript - 反应 useState 不使用 new Date() 作为初始值