168 uzay

Renk uzayları

’den , , –.
CSS, gölgelendirici, WASM ve renk dönüşüm tablosu (LUT) desteği.

Ekran ve web19

Web varsayılanından daha geniş ekran gamutlarına kadar çalışma ve teslim RGB uzayları.

HP & Microsoft, 1996
Apple, 2015
ITU-R, 2012
HP & Microsoft, 1996
ITU-R, 1990
Kodak, 1999
Adobe Systems, 1998
DCI, 2005
Apple, 2015
ITU-R, 2012
Adobe Systems, 1998
Kodak, 1999
IEC, 2003
Kodak, 2000
CIE, 1931
FCC, 1953–87
Walter Bruch / Telefunken, 1967
Apple Computer, 1987–96
SMPTE, 1988–90

RGB türevleri9

RGB üzerine kurulu renk tonu, doygunluk ve parlaklık kontrolleri. Eşit adımlar eşit görünmeyebilir.

Joblove & Greenberg, 1978
Alvy Ray Smith, 1978
Alvy Ray Smith, 1996
John R. Kender, 1976
community convention, 2011
Ian Taylor, 2012
Darel Rex Finley, 2006
Kuzma Shapran, 2012
Bianconi et al., 2009

Algısal48

Renkleri karşılaştırmak, palet oluşturmak ve görünümü tahmin etmek için koordinatlar.

Björn Ottosson, 2020
CIE, 1976
Li et al., 2017
Björn Ottosson, 2020
Google, 2021
Björn Ottosson, 2021
Björn Ottosson, 2021
Björn Ottosson, 2021
Björn Ottosson, 2021
Björn Ottosson, 2021
Jan Behrens, 2009
Konovalenko et al., 2021
Li & Luo, 2024
Hensley & Fairchild, 2020
Safdar et al., 2017
Safdar et al., 2017
Fritz Ebner & Mark Fairchild, 1998
Safdar et al., 2017
Mark Fairchild & Garrett Wyble, 2010
CIE, 1976
CIE, 1976
Alexei Boronine, 2012
CIE, 1976
CIE, 1976
CIE, 1976
Alexei Boronine, 2012
DIN, 2018
DIN, 2018
Cui et al., 2002
Richard S. Hunter, 1948
David MacAdam / CIE, 1960–76
Günther Wyszecki / CIE, 1964–76
Elliot Q. Adams, 1942–76
Mark Fairchild & Garrett Wyble, 2010–16
CIE, 2002–17
Li et al., 2017
Safdar et al., 2021
Luo et al., 2006–17
Li et al., 2017
Li et al., 2017
Luo et al., 2006–17
Luo et al., 2006–17
Luke Hellwig & Mark Fairchild, 2022
Mark Fairchild, 1996
Luo et al., 1996
Yoshinobu Nayatani, 1995
Robert W. G. Hunt, 1994
Sherman Lee Guth, 1995

Kolorimetri ve araştırma22

Ölçümün temelleri, göz ve özel araştırma koordinatları.

CIE, 1931
CIE, 1931
Estévez et al., 1979
ICC, 1994
CIE, 1976
Yoshi Ohno / ANSI, 2014
Raymond Davis; CIE, 1931
James Clerk Maxwell, 1860
CIE, 1931
ITU-R, 2016
Donald MacLeod & Robert Boynton, 1979
Derrington et al., 1984
CIE, 1931
Hermann von Helmholtz, 1860
James Clerk Maxwell, 1860
Richard Kirk, 2019
Jyrki Alakuijala et al., 2019
OSA committee, 1974
Terrillon & Akamatsu, 2000
Xerox, 1989
Ohta et al., 1980
Ruderman et al., 1998

Video ve yayın20

Yayın, sıkıştırma ve HDR teslimi için parlaklığı renkten ayırır.

ITU-R, 1990
Dolby, 2016
ITU-R, 2012
ITU-R, 1982
ITU-R, 1982
ITU-R, 1982
Walter Bruch / Telefunken, 1967
NTSC, 1953–82
ITU-R, 1982
Malvar & Sullivan, 2003
Eric Hamilton / C-Cube Microsystems, 1992
Henri de France, 1967
ITU-R, 2012
Sony / IEC, 2006
SMPTE, 1987
Kodak, 1992
Dolby / ITU-R, 2016
BBC & NHK / ITU-R, 2016
ITU-R, 2016
Julian Fröhlich, 2017

Film ve kamera43

Işığı yakalamak ve renk düzenlemek için kamera log kodlamaları ve çalışma uzayları.

Academy, 2014
ARRI, 2010–22
Academy, 2014
Sony, 2014
Sony, 2014
Academy, 2012
Academy, 2016
ARRI, 2022
Kodak, 1992
Blackmagic Design, 2020
Sony, 2012–14
Panasonic, 2014
RED Digital Cinema, 2017
Canon, 2011–15
Canon, 2015
Canon, 2016
Fujifilm, 2016
Fujifilm, 2022
Fujifilm, 2024
Nikon, 2018
Apple, 2023
Apple, 2025
Blackmagic Design, 2020
DJI, 2017
FilmLight, 2013
Kinefinity, 2025
SMPTE/DCI, 2006
Sony, 2008–12
Academy, 2013
Kodak, 2000
Leica, 2020
GoPro, 2012
GoPro, 2026
Insta360, 2026
Xiaomi, 2024
OPPO, 2025
Samsung, 2025
RED Digital Cinema, 2007–08
RED Digital Cinema, 2008–17
RED Digital Cinema, 2016–17
Panavision / Sony, 2005
Thomson Grass Valley, 2002
FiLMiC Inc., 2017

Baskı ve boya7

Mürekkep, boya ve yüzey renklerinin ölçülü düzeni.

Eagle Printing Ink Co., 1906
Albert H. Munsell, 1905
Johannes Itten, 1961
Louis Ducos du Hauron, 1868–1906
RAL gGmbH, 1993
Antal Nemcsics, 1980
Wilhelm Ostwald, 1917

Kullanın

Renk dönüşümleri için JavaScript paketi. Tek bir uzay 1,5 kB’tan küçüktür; tümünü içe aktararak herhangi iki uzay arasında dönüşüm yapabilirsiniz. Aynı dönüşümler WASM ile tüm görüntüyü işleyebilir, GLSL veya WGSL gölgelendiricilerinde çalışabilir ve LUT tabloları ya da ICC profilleri olarak dışa aktarılabilir. Ajanlar MCP sunucusu üzerinden çağrı yapabilir.

  • Referanslarla doğrulandıher renk uzayı test edildi
  • İki yöndeherhangi bir uzaydan diğerine
  • Minicikuzay başına 0,4–1,5 kB
  • Kamu malıCC0
import space from 'color-space'

space.rgb.oklch(255, 128, 0)      // → [0.732, 0.186, 53]
space.oklch.rgb(0.65, 0.25, 180)  // any of 168 × 167 pairs

space.oklch.name    // 'oklch'
space.oklch.range   // [[0,1], [0,0.4], [0,360]]

// one space only – tree-shaken, 0.4-1.5 kB
import oklch from 'color-space/oklch.js'
oklch.rgb(0.65, 0.25, 180)
Renk uzayı nedir?

Renk için bir koordinat sistemi: eksenler, aralıklar ve sayıları ölçülebilir ışığa bağlayan bir kural. Aynı turuncu rgb(255 128 0), oklch(0.732 0.186 53) ve XYZ [49, 36.7, 4.5] olarak yazılır – aynı renk, üç farklı biçimde. Bir palet, seçilmiş bir avuç renktir; bir uzay ise herhangi bir rengi yazıya dökmenin bir yoludur.

Renk modeli mi, renk uzayı mı – farkı ne?

Renk modeli, rengi hangi bileşenlerle tanımlayacağımızı belirler: RGB’de üç ana renk, HSL’de renk tonu, doygunluk ve açıklık, CMYK’da dört mürekkep. Renk uzayı ise ana renkleri, beyaz noktayı ve kodlama eğrisini belirler. Böylece her değer kümesi ölçülebilir bir renge karşılık gelir. Bu nedenle rgb(255 0 0), sRGB, Display P3 ve Adobe RGB içinde farklı kırmızıları tanımlar: aynı model, üç farklı uzay.

Günlük kullanımda her ikisine de renk uzayı denir. CSS’teki color-mix(in hsl, …) ifadesinde ve bu katalogda da aynı kullanım vardır. Bir model, mevcut bir renk uzayını referans alabilir: burada HSL ve HSV, CSS’te olduğu gibi sRGB’yi temel alır.

Gerçekte hangi uzayı kullanmalıyım?

Göreve bağlı:

  • görüntü saklamak ve paylaşmak – web’in varsayılanı sRGB;
  • palet ve gradyan tasarlamak – eşit adımların eşit göründüğü OKLCH;
  • ışık üzerinde matematik (karıştırma, bulanıklaştırma, 3D) – doğrusal ışık RGB;
  • video çekmek ve renk düzenlemek – kameranızın log uzayı; teslim Rec. 709 ya da Rec. 2100 ile;
  • iki rengin ne kadar farklı göründüğünü ölçmek – CIELAB ya da DIN99o.

Kataloğu amaç ölçütüne göre gruplamak, uzayları bu kullanım alanlarına göre sıralar.

HSL yerine ne kullanmalıyım?

OKLCH. Aynı üç kontrolü korur – renk tonu, kroma, açıklık – ama açıklığına güvenilebilir: HSL içinde L=50’deki sarı, L=50’deki maviden yaklaşık 13 kat fazla ışık yayar; yani eşit L eşit parlaklık demek değildir. OKLCH ise bunu sağlar. CSS, oklch() fonksiyonunu yerel olarak destekler.

Gradyanlarım neden ortada çamurlaşıyor?

Çünkü gama kodlu sRGB’de hesaplanırlar; orada iki rengin sayılarının ortalamasını almak, ışıklarını gerçekten karıştırmanın vereceğinden daha koyu ve daha donuk bir ışık üretir. OKLab içinde enterpolasyon yapmak bunu önler. Her uzay dosyasındaki enterpolasyon satırı aynı karışımı iki uzaydan yan yana geçirerek çizer; böylece seçmeden önce farkı görebilirsiniz.

“Gamut dışı” ne demek?

Bir uzayın tanımlayabildiği ama bir diğerinin – ya da ekranınızın – gösteremediği bir renk. Canlı bir Display P3 yeşili sRGB’de basitçe yoktur: dönüştürdüğünüzde sayılar geçerli aralığın dışına düşer. Atlas bunu görünür tutar: geçerli rengin yanındaki etiket, onu içine alan en dar standart gamutu adlandırır; aralık dışı bölümler ise dama tahtası bir zeminin üzerinde soluk görünür.

Baskı neden ekrandan daha soluk görünür?

Ekran ışık yayar; kâğıt, mürekkeplerinin soğurmadığını yansıtır. Kâğıttaki mürekkep daha az canlı renge ulaşır – doygun RGB maviler, yeşiller ve kırmızılar onun gamut'unun dışında kalır – bu yüzden daha soluk basılırlar. Baskı öncesi hazırlık, renkleri baskı makinesi ve kâğıt için yapılmış bir ICC profiliyle dönüştürür; Avrupa kuşe kâğıdı için FOGRA39, ABD'de GRACoL gibi. Bu katalogdaki CMYK, CSS'in profil olmadan device-cmyk() için kullandığı yalın formüldür: sayılar için doğru, baskının provası değil.

Dönüşümler kesin mi? Gidiş-dönüşlerde veri kaybolur mu?

Dönüşümler tablo yaklaşıklamaları değil, kapalı formüllerdir ve gidiş-dönüşler kayan nokta gürültüsü sınırları içinde geri döner. Az sayıdaki istisna, ortaya çıktıkları yerde belgelenmiştir: OSA-UCS için kapalı biçimli bir ters dönüşüm yoktur, Munsell gibi atlas sistemleri yayımlanmış kademeler arasında enterpolasyon yapar ve rgb çıktısı sRGB gamutuna kırpılır – bunun dışında kalan değerlere ihtiyacınız olduğunda XYZ ya da doğrusal RGB üzerinden geçin.

Üstelik doğrulanmışlardır: her uzay uyguladığı makaleye ya da spesifikasyona bağlantı verir, değerler ikisinin örtüştüğü her yerde colorjs.io ile, kamera log'ları ise Akademi'nin resmî ACES dönüşümleriyle sınanır. formula-verification.md neyin neyle karşılaştırıldığını kaydeder – yayımlanmış makalelerin kendisinin hatalı çıktığı birkaç yer dahil.

Sayılar başka bir kütüphaneninkinden farklıysa aralıkları karşılaştırın: bu kütüphane her uzayın alışılmış aralıklarını korur – RGB 0–255, Lab açıklığı 0–100, renk tonu 0–360 – oysa birçoğu her şeyi 0–1'e indirger. Her kart kendi aralıklarını gösterir; kodda bunlar space.oklch.range.

Bunlardan hangilerini CSS yazabilir?

Yerel olarak rgb(), hsl(), hwb(), lab(), lch(), oklab(), oklch(); ayrıca Display P3, Adobe RGB, ProPhoto, doğrusal sRGB ve XYZ (D65 ve D50) için color(). CSS rec2020 uzayı saf bir 2.4 gamadır, bu katalogdaki Rec. 2020 uzayının BT.2020 eğrisi değil – aynı sayılar farklı bir rengi adlandırır. Her uzay dosyasının css sekmesi geçerli rengi kopyalanabilir biçimde yazar; CSS tarafından desteklenmeyen uzaylar ise bunun yerine ICC profili ya da LUT olarak sunulur.

Pantone, NCS, RAL nerede?

Bunlar lisanslı ürünlerdir: renkleri yayımlanmış formüllerle değil, sahiplerinin sattığı verilerle tanımlanır – bu yüzden uygulanacak açık bir matematik yoktur ve tablolarını yeniden dağıtmak yasal olmaz. Matematiği kamuya açık yakın akrabaları burada: Munsell (1943 Renotation verisi kamuya açıktır) ve RAL Design (doğrudan CIELAB’da tanımlanır). Pratik kural: matematiği bir kez bile yayımlanmışsa, koleksiyonda yeri vardır.

Kopyalandı