【发布时间】:2021-10-29 13:56:09
【问题描述】:
我正在尝试过滤图像中的红色,但出现错误: cv2.error: OpenCV(4.5.2) C:\Users\runneradmin\AppData\Local\Temp\pip-req-build-ttbyx0jz\opencv\modules\imgproc\src\color.cpp:182: 错误: (-215 :断言失败。 我不知道如何解决这个问题。这是我的代码
import cv2
import numpy as np
path = "C:\\Users\\MERYEM\\OneDrive\\Masaüstü\\scan\\Img_Data\\Chosen\\frame3802.jpg"
image = cv2.imread(path)
hsv = cv2.cvtColor(image, cv2.COLOR_BGR2HSV)
lower_red = np.array([178,179,0])
upper_red = np.array([255,255,255])
mask = cv2.inRange(hsv,lower_red, upper_red)
cv2.imshow('Original Image',image)
cv2.imshow('Detection', hsv)
cv2.waitKey(0)
cv2.destroyAllWindows()
我需要你的帮助,在此先感谢。顺便说一句,如果重要的话,我正在使用 PyCharm
【问题讨论】:
-
您的代码对我来说很好用。您确定您使用的是 RGB 图像,而不是 YUV 或灰度图像?您真的确定这些是合法的 HSV 值吗?
-
错误信息说图片没有被读取。确保您输入了正确的图像路径。此错误消息没有其他原因。
-
顺便说一下,opencv 的 HSV 范围是 (0-180, 0-255, 0-255)。
-
@TimRoberts 嘿。我从一个 youtube 频道获取了这段代码,我只是编辑了路径。我确定路径是正确的,但它不起作用。蒂姆,你用哪个编辑器?也许这是一个编辑器问题,idk
-
这很难想象。 [255,255,255] 不是有效的 HSV。您是否采取了最简单的调试步骤来在创建每个值后打印它,以缩小范围?
标签: python numpy opencv pycharm cv2