Skip to main content

22.6. colorsys —颜色系统之间的转换

源代码: Lib/colorsys.py


colorsys 模块定义在计算机监视器中使用的RGB(红绿蓝)色彩空间中表示的颜色与三个其它坐标系统之间的色值的双向转换:YIQ,HLS(色相亮度饱和度)和HSV(色相饱和度值)。所有这些颜色空间中的坐标是浮点值。在YIQ空间中,Y坐标在0和1之间,但I和Q坐标可以是正或负。在所有其他空格中,坐标都在0和1之间。

参见

有关颜色空间的更多信息可以在 http://www.poynton.com/ColorFAQ.htmlhttps://www.cambridgeincolour.com/tutorials/color-spaces.htm 找到。

colorsys 模块定义以下功能:

colorsys.rgb_to_yiq(r, g, b)

将颜色从RGB坐标转换为YIQ坐标。

colorsys.yiq_to_rgb(y, i, q)

将颜色从YIQ坐标转换为RGB坐标。

colorsys.rgb_to_hls(r, g, b)

将颜色从RGB坐标转换为HLS坐标。

colorsys.hls_to_rgb(h, l, s)

将颜色从HLS坐标转换为RGB坐标。

colorsys.rgb_to_hsv(r, g, b)

将颜色从RGB坐标转换为HSV坐标。

colorsys.hsv_to_rgb(h, s, v)

将颜色从HSV坐标转换为RGB坐标。

例:

>>> import colorsys
>>> colorsys.rgb_to_hsv(0.2, 0.4, 0.4)
(0.5, 0.5, 0.4)
>>> colorsys.hsv_to_rgb(0.5, 0.5, 0.4)
(0.2, 0.4, 0.4)