Mô-đun này cho phép chuyển đổi hai chiều các giá trị màu giữa các màu được thể hiện trong RGB (Xanh lục Đỏ) và các không gian màu khác. Ba không gian màu khác mà nó sử dụng là YIQ (Độ chói (Y) Cầu phương trong pha), HLS (Độ bão hòa ánh sáng Huế) và HSV (Giá trị độ bão hòa Huế). Tất cả các tọa độ có thể nằm trong khoảng từ 0 đến 1 ngoại trừ các giá trị I và Q trong không gian màu YIQ.
Các bảng dưới đây cho thấy các chức năng và mục đích của chúng.
Hàm | Mục đích | Giá trị Được phép |
---|---|---|
rgb_to_yiq | từ tọa độ RGB sang tọa độ YIQ | 0 đến 1 |
rgb_to_hls | từ tọa độ RGB sang tọa độ HLS | 0 đến 1 |
rgb_to_hsv | từ tọa độ RGB sang tọa độ HSV | 0 đến 1 |
yiq_to_rgb | từ tọa độ YIQ sang tọa độ RGB | - 1 đến 1 |
hls_to_rgb | từ tọa độ HLS sang tọa độ RGB | 0 đến 1 |
hsv_to_rgb | từ tọa độ HSV sang tọa độ RGB | 0 đến 1 |
Ví dụ
import colorsys as csys # "Electric Blue" r, g, b = 0.47, 0.91, 1.00 print("The RGB Values for Electric Blue: ", (r, g, b)) # y, i, q = csys.rgb_to_yiq(r, g, b) print("YIQ", (y, i, q), "becomes", csys.yiq_to_rgb(y, i, q)) h, s, v = csys.rgb_to_hsv(r, g, b) print("HSV", (h, s, v), "becomes", csys.hsv_to_rgb(h, s, v)) h, l, s = csys.rgb_to_hls(r, g, b) print("HLS", (h, l, s), "becomes", csys.hls_to_rgb(h, l, s))
Đầu ra
Chạy đoạn mã trên cho chúng ta kết quả sau:
The RGB Values for Electric Blue: (0.47, 0.91, 1.0) YIQ (0.7879, -0.292513, -0.06563100000000005) becomes (0.47, 0.9100000000000001, 1.0) HSV (0.5283018867924528, 0.53, 1.0) becomes (0.47, 0.9099999999999999, 1.0) HLS (0.5283018867924528, 0.735, 1.0) becomes (0.4700000000000001, 0.9099999999999998, 0.9999999999999999)