使用Python 的 OpenCV文档中的代码将 RGB 调色板的绿色转换为 HSV
import cv2 as cv
import numpy as np
green = np.uint8([[[0,255,0 ]]])
hsv_green = cv.cvtColor(green,cv.COLOR_BGR2HSV)
print(hsv_green)
我得到了输出,就像在文档中一样。但是当您尝试在不使用 OpenCV 工具的情况下将此颜色转换回 RGB 表时,它会变成黄色。
有没有人遇到过同样的问题?是否有任何第三方实用程序可让您选择正确的范围以在 OpenCV 中按颜色突出显示对象?
关键是要转换一系列值。
HSV 模型中的色调值
H
有一个0..360
度数范围,这样的数字将不适合 OpenCV 字节格式,因此将其分成两半,如提供的链接所示:绿色对应 8 位 OpenCV 格式的 120 度或 60 个单位。
要使用在需要 360 度范围的 OpenCV 中获得的值,请将值乘以 2。
请注意,亮度和饱和度也可能出现类似的问题 - 使用范围的
0.0..1.0
某处,某处0..255
或0..100%
。您链接中的数字显示 255% - 显然,您需要在此处输入绿色120 градусов, 100%, 100%