Semua nilai RGB harus unik dan dapat dibedakan, artinya benar-benar ada 256 * 256 * 256 warna.
Namun, dalam HSL, jika L = 0 maka H dan S dapat berupa apa saja, tetapi Anda masih mendapatkan warna yang sama (hitam). Demikian pula, jika S = 0 maka H tidak masalah, karena Anda akan mendapatkan warna abu-abu murni. Jadi sepertinya model HSL menawarkan 256 * 256 * 256 - 256 * 256 - 256 warna terbaik, atau ~ 0,4% lebih sedikit warna. Apakah ini benar?
color
rgb
color-conversion
hsb
1279343
sumber
sumber
Jawaban:
Iya dan tidak.
Iya:
Ini menawarkan rentang warna yang lebih kecil dengan asumsi bahwa bilangan bulat diperlukan untuk setiap nilai . Photoshop, misalnya, membutuhkan nilai HSB menjadi bilangan bulat dan akan berteriak pada Anda jika Anda mencoba sebaliknya:
Namun, matematika Anda tampaknya tidak aktif. Anda berada di jalur yang benar dengan RGB: setiap nilai dapat berupa bilangan bulat dari 0-255, sehingga gamut RGB terdiri dari 256³ atau 16.581.375 warna.
Untuk HSL, batasan nilainya berbeda. H bisa 0-359, S bisa 0-100, dan B bisa 0-100. Jadi jumlah kembar tiga HSL yang unik adalah 360 * 101 * 101, atau 3.672.360. Ini belum memperhitungkan warna duplikat akun dan kami sudah jauh lebih kecil dari RGB.
Saya tidak cukup baik dalam statistik untuk menghitung jumlah nilai unik untuk HSL berbasis integer, jadi saya bahkan tidak akan mencoba
Akibatnya, akan terjadi tabrakan warna. Anda dapat mencobanya sendiri dengan memeriksa nilai dua nilai RGB yang sangat dekat. Misalnya,
#00AAAA
dan#00AAAB
keduanya dikonversi ke 180 °, 100%, 67% di Photoshop:Tidak:
Ilustrator sedikit lebih santai. Sangat senang dan bersedia menerima nilai desimal untuk HSB:
CSS3 juga menerima nilai desimal untuk
hsl()
danhsla()
. Implementasi ini membuat cara yang lebih rinci dari RGB, yang seharusnya tidak pernah menerima nilai-nilai desimal.sumber
HSL (hue, saturation, lightness ) dan HSB adalah model warna turunan dari model warna RGB. Mereka mencakup kisaran warna yang sama (seperti dalam gamut) dengan jumlah titik "khas" yang lebih kecil di antaranya.
Model RGB mendefinisikan 256 ^ 3 atau 16.777.216 poin
dan HSL / HSB mendefinisikan 360 * 101 * 101 atau 3.672.360 poin.
Anda harus mencari tahu secara terprogram berapa banyak titik dari peta HSL ke titik unik RGB. Tidak hanya titik ekstrim yang Anda sebutkan peta ke satu set nilai RGB. Misalnya, ada juga banyak publikasi yang memiliki nilai saturasi 1% (dalam HSL) seperti yang dapat Anda periksa di sini .
Itulah teorinya. Dalam praktiknya masih sebagian besar perangkat tidak mampu memproses / menyajikan 16.777.216 warna "unik dan dapat dibedakan" dan mata manusia tidak bisa juga. Jadi dalam praktiknya perbedaan jumlah nilai "khas" sering (tidak selalu) tidak masalah.
sumber