Tvorba barevného profilu pro display

Ke kalibraci a vytvoření profilu jsem použil nástroje z balíku argyllcms. Postup zahrnuje:

  • Nastavení monitoru do požadovaného stavu pomocí ovládacích tlačítek a OSD menu a jeho kalibrace změnou hodnot LUT tabulky.
  • Vytvoření profilu pro aplikace, které podporují správu barev.
  • Načtení kalibračních hodnot monitoru.


Použitý hardware a ovladače

  • CRT monitor ADI G900 19″
  • LCD monitor EIZO M1700 17″
  • nVidia GeForce 6600
  • X.org verze 7.2 s ovladačem nvidia verze 1.0.9631, v režimu Xinerama.
  • kalibrační sonda GretagMacbeth Eye One Display 2 (usb připojení)
  • operační systém linux – Kubuntu Feisty.

Nastavení monitoru do požadovaného stavu

Kalibrace monitoru probíhá ve dvou krocích: nejprve se pokusíme hw tlačítky či pomocí OSD menu monitoru nastavit požadované výchozí hodnoty, následně pak dispcal vytvoří soubor s kalibračními údaji, který bude použit ke změně LUT tabulky grafické karty.

V ideálním případě by stačilo kalibrovat monitor hardwarově – množství tlačítek jednotlivých monitorů se však liší, takže „nedoladěné“ parametry se pak nastavují změnou LUT tabulky.

$ sudo dispcal -v -d1 -yc -p 0.15,0.15,1 -K -g2.2 -t5000 display_1
-d1 budeme kalibrovat první monitor, -d2 by bylo pro druhý monitor.
-yc budeme kalibrovat CRT monitor, -yl se použije pro LCD
-p 0.15,0.15,1 umístí okno pro kalibraci do levého horního rohu monitoru (protože doprostřed se zobrazuje OSD při nastavování monitoru hw tlačítky)
-K pokusí se o kalibraci sondy
-g 2.2 nastavení cílové gamma monitoru
-t 5500 nastaví cílovou teplotu chromatičnosti bílého bodu na 5500° K
Vytvoří se soubor display_1.cal a display_1.ti1.

Dispcal pracuje interaktivně, postupně lze nastavit jas černého bodu (pomocí hw ovládání jasu), RGB složky (pomocí OSD menu monitoru), jas bílého bodu (pomocí hw ovládání kontrastu), pokračujeme volbou menu 6 k samotné kalibraci. Ideální je samozřejmě nastavit černý bod co nejčernější a jas a teplotu chromatičnosti bílého bodu s ohledem na okolní osvětlení.

V prostředí linuxu (stejně jako MS Windows) je výhodné kalibrovat monitor na gamma 2.2 – stejně jako sRGB prostor (prostor používaný jako výchozí většinou digitálních fotoaparátů). Snímky v sRGB prostoru se pak budou zobrazovat obdobně (alespoň z pohledu jasu) v aplikacích podporujících správu barev i v těch bez podpory.

1) Black level (CRT: Brightness)
2) White point (Color temperature, R,G,B, Gain)
3) White level (CRT: Contrast, LCD: Brightness)
4) Black point (R,G,B, Offset)
5) Check all
6) Continue on to calibration
7) Exit

Vzhledem k tomu, že změna jasu či kontrastu může vést ke změně teploty bílého bodu, je nutné kroky opakovat zejména krok 2. Ověřit hodnoty nastavení monitoru je možné následovně:

$ sudo dispcal -v -d1 -yc -r -p0.15,0.15,1
Current calibration response:
Black level = 0.09 cd/m^2
White level = 70.98 cd/m^2
Aprox. gamma = 2.43
Contrast ratio = 793:1
White chromaticity coordinates 0.3457, 0.3591
White Correlated Color Temperature = 5002K, DE to locus = 5.1
White Correlated Daylight Temperature = 5003K, DE to locus = 0.5
White Visual Color Temperature = 4896K, DE to locus = 4.9
White Visual Daylight Temperature = 4994K, DE to locus = 0.5

Nevýhodou kalibrace monitoru na teplotu chromatičnosti 5000° K je ztráta maximálního jasu monitoru – obvyklejší hodnoty by byly mezi 80 – 110 cd/m^2. Toho lze docílit při nastavení vyšší teploty, osobně však preferuji hodnotu blízkou dennímu světlu (používám osvětlení s teplotou 5000° K).

Výše uvedená kontrolní tabulka ukazuje stávající gamma 2.43 – po dokončení kalibrace a načtení vcgt hodnot z profilu dojde k jeho úpravě na požadovaných 2.2.

Vytvoření profilu pro aplikace, které podporují správu barev

V této části nejprve vytvoříme soubor s informací, jaké barevné vzorky se budou měřit pro výpočet profilu.

$ targen -v -d3 -f600 display_1
-d3 – budeme měřit RGB kolorant (neb to je barevný model monitorů)
-f600 – vytvoříme 600 vzorků k měření
Vytvoří se soubor display_1.ti3.

Dále pokračujeme samotným měřením:
$ sudo dispread -v -d1 -yc -p0.15,0.15,1 -kdisplay_1.cal display_1
Parametry jsou shodné jako u dispcal, dodatečný je -k udávají jméno souboru s kalibračními hodnotami vytvořeného pomocí dispcal v předchozím kroku (tzn. dojde k nastavení LUT tabulky před samotným měřením – totéž provádí dispwin dle vcgt dat z profilu).

Nakonec vytvoříme samotný profil

$ profile -v -D"ADI G900 @ min brightness, max contrast, 5000K, 2007-05-20" -qh -as display_1
-D – popis profilu
-qh – vysoká kvalita profilu
-as – algoritmus pro tvorbu profilu „shaper+matrix“
Vytvoří soubor display_1.icc.

Načtení kalibračních hodnot monitoru

K uvedení monitoru do kalibrovaného stavu používám program dispwin (součást argyllcms):

$ dispwin -d1 display_1.icc

Příkaz jsem umístil do adresáře ${HOME}/.kde/Autostart – spustí se po přihlášení do KDE.

Nakonec je třeba nastavit tento profil pro zobrazovaní v aplikacích podporujících správu barev (cinepaint, krita, gimp, scribus). Profil lze používat i v MS Windows aplikacích spouštěných pomocí WINE nebo VMware serveru.

Testování výsledku

Nejprve uvedeme monitor do kalibrovaného stavu, poté zobrazíme testovací čtverec:

$ dispwin -d1 display_1.icc
$ dispwin -d1 -m

Zobrazí se bílý čtverec. V novém terminálovém okně spustíme:


$ spotread -yc -a

Parametr „-a“ zobrazí i barevnou teplotu v Kelvinech. Více viz dokumentace.

Odkazy

Argyll CMS (odkaz na stažení beta verze lze nalézt až na konci stránky s informacemi o downloadu). Informace o jednotlivých beta verzích lze nalézt v mailing listu.

Display i1 kalibrační sonda. Gretagmacbeth nepodporuje linux.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *

Tato stránka používá Akismet k omezení spamu. Podívejte se, jak vaše data z komentářů zpracováváme..