Computer >> Máy Tính >  >> Lập trình >> Python

mô-đun colorys bằng Python

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)