colorsys — 不同颜色体系间的转换

源代码: Lib/colorsys.py


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

参见

有关色彩空间的更多信息,请访问 https://poynton.ca/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)