gpt4 book ai didi

python - OpenCV:寻找颜色强度

转载 作者:太空宇宙 更新时间:2023-11-03 22:51:12 24 4
gpt4 key购买 nike

我想编写一个程序来查看红色颜色强度是否是主色。如果棕色强度大于阈值。然后程序会打印出“Detected”。

enter image description here

例如,照片中的红色是主色,所以程序应该打印出“Detected”!

我写过这样的东西:

lower_red = np.array([110, 50, 50], dtype=np.uint8)
upper_red = np.array([130,255,255], dtype=np.uint8)
mask = cv2.inRange(hsv, lower_red, upper_red)
res = cv2.bitwise_and(frame,frame, mask= mask)

然而,它只转换图像的颜色,而不是给出强度。如何获取图像是否偏红的 bool 值?

最佳答案

您应该将图像转换为 HSV 颜色空间。在该空间中分离红色很简单:红色的色相接近 [0-10] 和 [160-180]。然后你可以检查红色的比例是否大于阈值。

(pseudocode)

fun isRedColorGreaterThanThreshold(image, threshold)
imageHSV = convertToHSV(image)
channels = split(imageHSV)
Hue = channels[0]
ratio = countNonZero((0 < Hue < 10) or (160 < Hue < 180)) / image.total()

return ratio > threshold

关于python - OpenCV:寻找颜色强度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37317942/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com