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

来自菜鸟教程
Python/docs/3.6/library/colorsys
跳转至:导航、​搜索

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

源代码: :source:`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[ X166X]。


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)