colorsys — Conversions between color systems

Source code:Lib/colorsys.py


Thecolorsys module defines bidirectional conversions of color valuesbetween colors expressed in the RGB (Red Green Blue) color space used incomputer monitors and three other coordinate systems: YIQ, HLS (Hue LightnessSaturation) and HSV (Hue Saturation Value). Coordinates in all of these colorspaces are floating-point values. In the YIQ space, the Y coordinate is between0 and 1, but the I and Q coordinates can be positive or negative. In all otherspaces, the coordinates are all between 0 and 1.

See also

More information about color spaces can be found athttps://poynton.ca/ColorFAQ.html andhttps://www.cambridgeincolour.com/tutorials/color-spaces.htm.

Thecolorsys module defines the following functions:

colorsys.rgb_to_yiq(r,g,b)

Convert the color from RGB coordinates to YIQ coordinates.

colorsys.yiq_to_rgb(y,i,q)

Convert the color from YIQ coordinates to RGB coordinates.

colorsys.rgb_to_hls(r,g,b)

Convert the color from RGB coordinates to HLS coordinates.

colorsys.hls_to_rgb(h,l,s)

Convert the color from HLS coordinates to RGB coordinates.

colorsys.rgb_to_hsv(r,g,b)

Convert the color from RGB coordinates to HSV coordinates.

colorsys.hsv_to_rgb(h,s,v)

Convert the color from HSV coordinates to RGB coordinates.

Example:

>>>importcolorsys>>>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)