El módulo colorsys en Python define conversiones bidireccionales de valores de color entre el color RGB (Rojo, Verde, Azul) y otras tres coordenadas YIQ (Cuadratura en fase de luminancia (Y), HLS (Saturación de luminosidad de matiz) y HSV (Valor de saturación de matiz).
El módulo colorsys define las siguientes funciones:
- colorsys.rgb_to_yiq(r, g, b) : Convierte el color de las coordenadas RGB a las coordenadas YIQ.
- colorsys.yiq_to_rgb(y, i, q) : Convierte el color de las coordenadas YIQ a las coordenadas RGB.
- colorsys.rgb_to_hls(r, g, b) : Convierte el color de las coordenadas RGB a las coordenadas HLS.
- colorsys.hls_to_rgb(h, l, s) : Convierte el color de las coordenadas HLS a las coordenadas RGB.
- colorsys.rgb_to_hsv(r, g, b) : Convierte el color de las coordenadas RGB a las coordenadas HSV.
- colorsys.hsv_to_rgb(h, s, v) : Convierte el color de las coordenadas HSV a las coordenadas RGB.
Todas las funciones anteriores, excepto que colorsys.yiq_to_rgb()
aceptan valores de punto flotante que tienen un rango entre 0 y 1 como su parámetro. En la función , el parámetro y es un valor flotante en el rango entre 0 y 1 y el parámetro i y q también acepta un valor flotante en el rango entre 0 y 1 pero puede ser positivo o negativo. colorsys.yiq_to_rgb(y, i, q)
Todas las funciones anteriores devuelven una tupla que representa la coordenada resultante.
Código #1:
Convierta el color de las coordenadas RGB a las coordenadas YIQ.
# Python program to explain colorsys.rgb_to_yiq() method # importing colorsys module import colorsys # Define RGB coordinates r = 0.2 g = 0.4 b = 0.4 # Convert the color from RGB # coordinates to YIQ coordinates yiq = colorsys.rgb_to_yiq(r, g, b) # Print the yiq coordinates print(yiq)
(0.33999999999999997, -0.11979999999999999, -0.04259999999999996)
Código #2: Convierte el color de las coordenadas YIQ a las coordenadas RGB.
# Python program to explain colorsys.yiq_to_rgb() method # importing colorsys module import colorsys # Define YIQ coordinates y = 0.34 i = -0.12 q = -0.04 # Convert the color from RGB # coordinates to YIQ coordinates rgb = colorsys.yiq_to_rgb(y, i, q) # Print the RGB coordinates print(rgb)
(0.20143187066974597, 0.3984021607233726, 0.40466512702078516)
Código #3: Convierte el color de las coordenadas RGB a las coordenadas HLS.
# Python program to explain colorsys.rgb_to_hls() method # importing colorsys module import colorsys # Define RGB coordinates r = 0.2 g = 0.4 b = 0.4 # Convert the color from RGB # coordinates to HLS coordinates hls = colorsys.rgb_to_hls(r, g, b) # Print the HLS coordinates print(hls)
(0.5, 0.30000000000000004, 0.3333333333333333)
Código #4: Convierte el color de las coordenadas HLS a las coordenadas RGB.
# Python program to explain colorsys.hls_to_rgb() method # importing colorsys module import colorsys # Define HLS coordinates h = 0.2 l = 0.7 s = 0.5 # Convert the color from HLS # coordinates to RGB coordinates rgb = colorsys.hls_to_rgb(h, l, s) # Print the RGB coordinates print(rgb)
(0.7899999999999999, 0.85, 0.5499999999999999)
Código #5: Convierte el color de las coordenadas RGB a las coordenadas HSV.
# Python program to explain colorsys.rgb_to_hsv() method # importing colorsys module import colorsys # Define RGB coordinates r = 0.2 g = 0.4 b = 0.4 # Convert the color from RGB # coordinates to HSV coordinates hsv = colorsys.rgb_to_hsv(r, g, b) # Print the HSV coordinates print(hsv)
(0.5, 0.5, 0.4)
Código #6: Convierte el color de las coordenadas HSV a las coordenadas RGB.
# Python program to explain colorsys.hsv_to_rgb() method # importing colorsys module import colorsys # Define HSV coordinates h = 0.5 s = 0.5 v = 0.4 # Convert the color from HSV # coordinates to RGB coordinates rgb = colorsys.hsv_to_rgb(h, s, v) # Print the RGB coordinates print(rgb)
(0.2, 0.4, 0.4)