W związku z tym, że temat zarządzania kolorami w procsie obróbki jak i oglądania zdjęć staje się coraz ważniejszy – jest coraz więcej monitorów, których gamut zancznie przekracza sRGB a jednocześnie systemy Windows zaczynją w miarę poprawnie pracować z zarządzaniem koloru – postanowiłem zrobić któtkie podsumowanie dla początkujących użytkowników.

Zacznijmy zupełnie od początku i przyjrzyjmy się w jaki sposób obrazy zapisywane są w komputerze oraz w jaki sposób wyświetlane są na monitorze. W większości wypadków pracujemy w przestrzeni RGB – co oznacza, że każdy piksel naszego obrazka posiada 3 parametry. R – czyli jasność czerwieni, G – jasność zielni oraz B – jasność koloru niebieskiego. Zakaładamy również, że każdy kanał zapisujemy na 8 bitach, czyli może przyjąć on wartość od 0 do 255. I tak „każdy” kolor zapisujemy miksem odpowiednich wartości RGB.

Aby zrozumieć, po co potrzebne jest zarządzanie kolorem, przyjrzyjmy się konstrukcji monitora. Posiada on piksele składające się z trzech elementów świecąych (pomijamy tu szczegóły technologiczne) odpowiednio w kolorze czerwonym, zielonym i niebieskim. Załóżmy, że wyświetlamy na naszym monitorze piksel o kolorze [255,0,0]. Co to oznaczna – oznacza to że monitor ma wyświetlić „najbardziej” czerwony piksel jaki potrafi (można powiedzieć, że również najjaśniejszy czerwony oraz czerwony o najwiekszym nasyceniu – są to pojęcia tożsame w naszej prostej analizie). I tutaj zaczynają się schody – co to znaczy „najbardziej czerwony”. Dla każdgo montora kolor „najbardziej” czerwony, zielony i niebieski oznacza co innego. Związane jest to z zastosowaną techinolgią i tym jak bardzo nasycone są poszczrgólne barwniki (lub diody OLED). Szybko dochodzimy do wniosku, że piksel 255,0,0 na każdym monitorze będzie wyglądać inaczej – bo każdy monitor ma inne parametry podstawowych barwników RGB.

I tutaj pojwia się profil koloru. Będziemy go tutaj rozpatrywać w dwóch kontekstach (choć fizycznie jest to dokłdnie taki sam profil). Pierwszy kontekst to profil monitora a drugi kontekst to profil pliku graficznego (lub przestrzeń robocza programu graficznego).

W bardzo dużym uproszczeniu (ale zupełnie wystarczającym w naszych rozważaniach) przyjmijmy, że profil koloru zawiera trzy podstawowe parametry – chromatyczność kanału czerwonego, zielonego i niebieskiego. Co to znaczy – znaczy to tyle, że profil zawiera mapowanie wartości maksymalnej każdego kanału (w naszym wypadku 255) na konkretny „kolor” w przestrzeni uniwersalnej – bez wnikania w szczegóły – przyjmijmy, że po prostu opisuje daną wartość odpowiednią długością fali. Czyli… teraz, jeżeli uwzględnimy profil koloru to wiemy, że piksel o wartości [255,0,0] na monitorze opisanym konkretym profilem będzie miał konkrenty kolor opisany w sposób uniwersalny – czyl długością fali.

Dokładnie to samo robimy z plikiem – czyli pracujemy „w konkretnej” przestrzeni koloru. Dzięki temu „wiemy” a w zasadzie to nasz komputer wie, że wartość zapisana w postaci [255,0,0] reprezenuje pewną długość fali czyli konkretny kolor. I teraz dochodzimy do bardzo ważnego kroku a w zasadzie wniosku. Nasz piksel o wartości [255,0,0] w jednym profilu reprezentuje inny kolor „fizyczny” niż ta sama wartośc w innym profilu. I co z tym zrobić? Właśnie tutaj pojawia się zarządzanie kolorem. Jak to działa….

Bardzo prosto: nasz program graficzny, przeglądarka zdjęć lub po prostu przeglądarka WWW (o ile każdy z tych elementów jest wyposażony w zarządzanie kolorem) wykonuje następujące czynności (dla ułatwienia zakładam, że nasz plik składa się tylko z jednego piksela – oczywiście operacja taka jest wykonywana dla każdego): wartość piksela – przyjmijmy, że jest to nasze [255,0,0] jest konwertowana do „długości fali” na podstawie profilu pliku – czyli jednoznacznej reprezentacji koloru. Następnie na podstawie profilu monitora odnajdywana jest (profil koloru jest macierzą odwracalną) wartość RGB w tej nowej przestrzeni, która reprezenuje tą samą długość fali – powiedzmy, że w naszy wypadku jest to [240,0,0]. Jak widzimy nasz monitor potrafi wyświetlić bardziej czerwony kolor niż maksymalnie nasycona czerwień w pliku – dlatego wartość kanału R jest niższa. Oczywście sytuacja może wyglądać odwrotnie – nasz monitor może nie potrafić wyświetlić tak mocno nasyconej czerwieni, wtedy silnik zarządzania kolorem po prostu „obcina” tą czerwień i wyświetla taką czerwień jaką monitor wyświetlić potrafi. Dodatkowo, trzeba pamiętać, że ta czerwień może nie być „idealna” dlatego wartośc piksela na monitorze może na przykład wyglądać tak: [255,12,5] – czyli nie dość że wyświetlamy maks czerwieni to jeszcze dokładamy trochę zieleni i niebieskiego.

Oczywiście w takim procesie istnieje wariant bardzo prosty – jeżeli w programie graficzym i w pliku pracujemy na profilu koloru naszgo monitora – to nie potrzbna jest żadna konwersja – ale tylko na naszym monitorze. Moniotry innych oglądających mają inne przestrzenie. Rozwiązaniem jest zastosowanie uniwersalnej przestrzeni sRGB – która przez długi czas stanowiła pewien standard. Jeżeli nasz monitor posiada natywną przestrzeń koloru sRGB – to praca na plikach w przestrzeni sRGB nie wymaga zarządzania kolorem. Ważne aby wygenerowany przez nas plik zawierał informację, że jest w przestrzni sRGB.

Podsumowując potrzebujemy dwóch przestrzeni pracy – przestrzeni „pliku” – czyli przestrzeni w której pracujemy (i tutaj jest to najcześciej przestrzeń standaryzowana – sRGB, AdobeRGB, DisplayP3) oraz przestrzeni naszego monitora – kótra jest indywidualna. Jest oczywiste, że przestrzeń robocza powinna być nie węższa niż przestrzeń monitora – inaczej nie wykorzystamy go w pełni.

Na koniec kilka przykładów. W związku z tym, że na codzień pracuję w przestrzeni Display P3, która coraz cześciej dostępna jest na monitorach komputerowych ale również na telewizorach i wyświetlaczach HDR przygotowałem kilka przykładów z nią związanych. Przestrzeń DisplayP3 w porównaniu z sRGB ma znacznie bardziej nasycone czerwienie i zielenie – za to kanał niebieski ma bardzo podobną chromatyczność, stąd skupiłem się na dwóch pierwszych.

Zanim jednak zaczniemy testy – musisz upewnić się, że Twoja przeglądarka i system osbługuje zarządzanie kolorem. Popatrz na obrazek poniżej. Czy cieżarówka jest czerowona. Nie? Oznacza to, że Twoja przeglądarka nie obsługuje zarządzania kolorem i dalsze przykłady nie będą widoczne poprawnie. Jeżeli cieżarówka jest czerwona to zapraszam dalej…

Poniżej dwa prostokąty składające się z dwóch kolorów – na zewnątrz maksimum nasycenia w przestrzeni DisplayP3 a wewnątrz maksimum nasycenia w przestrzeni sRGB. Oczywiście obrazki są w przestrzeni DisplayP3.

Widzisz wewnętrze prostokąty? Świetnie – oznacza to, że twoja przeglądaka obsługuje Color Management i posiadasz monitor o przestrzeni koloru szerszej niż sRGB.
Jeżeli nie widzisz wewnętrznego prostokąta na powyższych obrazkach to znaczy, że Twój monitor obsługuje co najwyżej przestrzeń sRGB.

Poniżej te same obrazki, ale zapisane w przestrzeni sRGB:

Jeżeli twój monitor obsługuje nie więcej niż sRGB to będą one zapewne wyglądać tak samo jak te powyżej. Jeżeli masz monitor o szerokim zakresie zobaczsz, że prostokąty te nie są tak nasycone jak zewnętrzne części tych powyżej – w przestrzeni sRGB nie da się pokazać tak nasyconych kolorów. Konwertując do przestrzeni sRGB straciliśmy cześć kolorów – kolor wewnętrzny i zewnętrzny są takie same.

Na koniec prosty test jak bardzo Twój monitor jest blisko przestrzeni sRGB:

Jeżeli na powyższych obrazkach widzisz prostokąty wewnętrzne i zewnętrzne oznacza to, że Twój monitor jest blisko przestrzeni sRGB – jeżeli nie, to znaczy, że raczej nie nadaje się do oglądania a przede wszystkim obróbki zdjęc. Uwaga! Test ten działa poprawnie pod warunkiem, że posiadasz w systemie prawdziwy profil swojego monitora. W innym wpadku widzialność wewnętrznych prostokątów wcale nie gwarantuje „jakości” monitora.

Na koniec bardzo ważna sprawa – aby to wszystko dobrze działało w systemie powinien być zainstalowany profil koloru Twojeo monitora. Jeżeli go nie posiadasz, to może Twój monitor ma możliwość ustawienia konkretnej przestrzeni kolorów – najcześciej sRGB. Jeżeli taka opca jest to zdecydowanie należy z niej skorzystać. W wypadku sRGB nie trzeba instalować profilu, bo systemu operacyjne w wypadku jego braku zakładają właśnie taki profil. Jeżeli w monitorze wybraliśmy inna przestrzeń (na przykład P3 lub AdobeRGB) to należy w systemie zainstalować odpowiedni profil.

Jeżeli masz w miarę nowoczesny telefon (a przede wszystkim iPhone’a lub iPad’a) to polecam obejrzeć tą stronę na tym urządzeniu. Nowoczesne platformy mobilne posiadają lepsze wyświetlacze niż większośc domowych monitorów.

Zainteresowanych głębszą lekturą zapraszam do fantastycznego wpisu na ten temat, który jakiś czas temu znalazłem w sieci.


Pytania i odpowiedzi

  • Czy ustawiając profil monitora mogę polepszyć jego parametry
    Nie. Ustawiając profil monitora nie polepszysz jego parametrów, ale uzyskasz wierniejsze odwzorowanie barw zgodnie z zamysłem autora
  • W jakim profilu przygotowywać zdjęcia
    Przygotowuj zdjęcia w profilu, który „mieści” się w możliwościach Twojego monitora. Jeżeli zrobisz to inaczej to najczęściej zdjęcie na monitorach o szerszej palecie kolorów niż Twój będzie wyglądać inaczej niż zamierzałeś
  • Czy do obróbki potrzebuję dobrego monitora
    Tak. Tak. Tak.
  • Jeżeli mój monitor ma przestrzeń znacząco inną niż sRGB – czy muszę używać profilu
    Jeżeli w monitorze nie wybrałeś symulacji przestrzeni sRGB to absolutnie koniecznie musisz używać odpowiedniego profilu monitora w systemie oraz programie od obróbki zdjęć
  • Jak sprawdzić gamut (zakres barw) mojego monitora
    Oczywiście najprostszą metodą jest wykonanie kalibracji specjalnym urządzniem. Jednakże można także sprawdzić na stronie producenta – niektórzy publikują parametry takie jak % pokrycia przestrzeni. Jeżeli Twój monitor nie pokrywa co najmniej 90-95% przestrzeni sRGB to nie powinieneś na nim obrabiać zdjęć (oglądać, w zasadzie, też nie)

Jedna odpowiedź do “Zarządzanie kolorem po prostu”

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *