我正在尝试将我的rgb图像转换为hsv。我能够找到值和饱和度,但在处理色调时遇到了问题。我搜索了找到色调值的公式,并在这里得到了一个。
How do you get the hue of a #xxxxxx colour?
但是这里接受的答案也只讨论了3个选项。
(所以这是不重复的问题)
但是其他案例如
呢R >= G > B or
B >= G > R or
G >= B > R etc
显然,这里没有一个值是最大值。因此,为了清除我的疑问,我搜索了谷歌并找到了以下页面:
https://en.wikipedia.org/wiki/Hue
这里给出了用于查找色调值的表,并且还给出了6种可能的情况。我的问题是
为什么只有6例可能(如表所示)?
怎么样?G > B >= R or G >= B >= R or B >= R > G or B >= R >= G etc.
答案 0 :(得分:0)
您可以让ImageMagick(安装在大多数Linux发行版上,可用于OSX和Windows)通过创建单个像素RGB图像并转换为HSL颜色空间来告诉您答案:
convert xc:"#ffffff" -colorspace hsl -format "%[pixel:p{0,0}]" info:
hsl(0%,0%,100%)
或
convert xc:"rgb(127,34,56)" -colorspace hsl -depth 8 txt:
# ImageMagick pixel enumeration: 1,1,255,hsl
0,0: (96.0784%,57.6471%,31.7647%) #F59351 hsl(96.0784%,57.6471%,31.7647%)