Menurut dua sumber yang saya temukan, dalam ruang warna CIELAB LAB nilai L * = 0 sesuai dengan hitam. Mengutip Wikipedia :
Tiga koordinat CIELAB mewakili kecerahan warna (L * = 0 menghasilkan hitam dan L * = 100 menunjukkan putih difus ...)
dan mengutip Phil Cruse :
Sumbu L * mewakili Lightness. Ini vertikal; dari 0, yang tidak memiliki cahaya (yaitu hitam absolut) ...
Namun, ini tampaknya tidak terjadi. Misalnya, menggunakan L * = 0, a * = 127, b * = 0 yang diperoleh dalam Mathematica:
FullForm[ColorConvert[LABColor[0, 1.27, 0], "RGB"]]
(*RGBColor[0.46364605275068677, 0., 0.052627307663056185]*)
... yang bukan hitam.
Tampaknya ini bukan bug Mathematica, seperti juga direproduksi (setidaknya beberapa ara, setidaknya) di Julia menggunakan Color.jl
paket:
convert(RGB, LAB(0,127,0))
# RGB{Float64}(0.46778684693714695,0.0,0.04112312700274846)
Demikian juga, memvisualisasikan kubus warna LAB Colorspace ada di Neat Examples
bagian halaman dokumentasi Mathematica LABColor
. Ini dia, dengan L * = 0 permukaan menunjuk ke kamera:
Dengan pengecualian kubus di sudut, mayoritas kubus jelas tidak hitam. Jadi pertanyaan saya adalah:
- Mengapa pengaturan L * = 0 tidak harus sesuai dengan hitam dalam ruang warna CIELAB? Bukankah L * seharusnya sesuai dengan persepsi luminositas? Jika demikian, lalu mengapa beberapa bagian dari subruang L * = 0 tampak jauh lebih terang daripada hitam?
LAB(0,127,0)
tidak ada dalam ruang RGB, dan karenanya konversi menghasilkan kesalahan numerik yang menyebabkannya tampak non-hitam?
Manipulate[ ArrayPlot@ Table[LABColor[l, a, b], {a, -1, 1, .05}, {b, -1, 1, .05}], {{l, 0}, -1, 2} ]