【发布时间】:2020-06-30 14:00:02
【问题描述】:
我刚刚开始学习使用 opencv 进行颜色过滤。我已经了解了大部分基础知识,但仍然坚持一件事。
import cv2
import numpy as np
img = cv2.imread("Circles.png")
hsv = cv2.cvtColor(img, cv2.COLOR_BGR2HSV)
lower_range = np.array([169,100,100])
upper_range = np.array([189,255,255])
mask = cv2.inRange(hsv, lower_range, upper_range)
cv2.imshow("Image", img)
cv2.imshow("Mask",mask)
cv2.waitKey(0)
cv2.destroyAllWindows()
在哪里可以找到要过滤的颜色范围?
谢谢
【问题讨论】:
-
将 bgr 颜色的上下范围转换为 hsv 颜色。采用任何颜色,将 +- 值添加到 bgr 值,使用 cvtColor 转换为 HSV。将这些用于 HSV 中的上限值和下限值。您可能需要使用一些外部工具来获取主要的 bgr 颜色,例如 GIMP 或 Photoshop。还有一些方法可以使用 OpenCV 来测量颜色。