我使用python的colorsys庫將RGB顏色值轉換爲HLS。爲了驗證,我嘗試轉換回RGB,並獲得了不同的值。由於精確度問題,我可以理解細微的差異,但這些值有顯着不同。將RGB轉換爲HLS並返回
這裏是我的代碼:
import colorsys
r=192
g=64
b=1
hlsval = colorsys.rgb_to_hls(r,g,b)
rgbval=colorsys.hls_to_rgb(hlsval[0],hlsval[1],hlsval[2])
print hlsval, rgbval
輸出:
(0.16666666666666666, 96.5, -1.0) (191.99999999999994, 192.0, 1.0)
綠色值是關閉的,每次都超過200%
我嘗試了一些其他的價值,以及組件之一已經有很大的數量了。我錯過了什麼嗎?
值? – 2013-03-15 21:27:50
@AshwiniChaudhary:很顯然,他在某處有相當於'a,b,c = r,g,b'的位置(或者他沒有忘記編輯他的代碼來使用'r,g,b'而不是'a,b,c'或者其他),因爲這些就是你用'a,b,c = 192,64,1'得到的值。 – abarnert 2013-03-15 21:35:58
對,對不起。我現在糾正了它。 – user2175594 2013-04-22 03:59:02