• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1:mod:`colorsys` --- Conversions between color systems
2=====================================================
3
4.. module:: colorsys
5   :synopsis: Conversion functions between RGB and other color systems.
6
7.. sectionauthor:: David Ascher <da@python.net>
8
9**Source code:** :source:`Lib/colorsys.py`
10
11--------------
12
13The :mod:`colorsys` module defines bidirectional conversions of color values
14between colors expressed in the RGB (Red Green Blue) color space used in
15computer monitors and three other coordinate systems: YIQ, HLS (Hue Lightness
16Saturation) and HSV (Hue Saturation Value).  Coordinates in all of these color
17spaces are floating point values.  In the YIQ space, the Y coordinate is between
180 and 1, but the I and Q coordinates can be positive or negative.  In all other
19spaces, the coordinates are all between 0 and 1.
20
21.. seealso::
22
23   More information about color spaces can be found at
24   https://poynton.ca/ColorFAQ.html and
25   https://www.cambridgeincolour.com/tutorials/color-spaces.htm.
26
27The :mod:`colorsys` module defines the following functions:
28
29
30.. function:: rgb_to_yiq(r, g, b)
31
32   Convert the color from RGB coordinates to YIQ coordinates.
33
34
35.. function:: yiq_to_rgb(y, i, q)
36
37   Convert the color from YIQ coordinates to RGB coordinates.
38
39
40.. function:: rgb_to_hls(r, g, b)
41
42   Convert the color from RGB coordinates to HLS coordinates.
43
44
45.. function:: hls_to_rgb(h, l, s)
46
47   Convert the color from HLS coordinates to RGB coordinates.
48
49
50.. function:: rgb_to_hsv(r, g, b)
51
52   Convert the color from RGB coordinates to HSV coordinates.
53
54
55.. function:: hsv_to_rgb(h, s, v)
56
57   Convert the color from HSV coordinates to RGB coordinates.
58
59Example::
60
61   >>> import colorsys
62   >>> colorsys.rgb_to_hsv(0.2, 0.4, 0.4)
63   (0.5, 0.5, 0.4)
64   >>> colorsys.hsv_to_rgb(0.5, 0.5, 0.4)
65   (0.2, 0.4, 0.4)
66