Hlavní navigace

Praktická správa barev v Linuxu a kalibrace monitoru

Martin Sivák

V dnešní době digitálních fotoaparátů a domácích fototiskáren si jistě nejeden uživatel klade otázku: Jak zařídit, aby moje výtisky barevně odpovídaly tomu, co vidím na monitoru? Za posledních několik let se situace kolem správy barev v Linuxu naštěstí značně zlepšila.

Nejprve bych krátce popsal, co je zdrojem všech potíží s barvami. Mnoho z vás jistě tuší, že aplikace obvykle pracují s barvou zakódovanou do trojice červená/zelená/mo­drá (RGB). Tyto hodnoty pak posílá na displej, ukládá do souboru nebo předává tiskovému ovladači. A zde je jádro problému: 255/0/0 je nějaká červená, ale jaká přesně? A jak zařídit, že to bude stejná červená i na kolegově displeji od jiného výrobce?

Dříve bylo nutné mít převodník pro každé dvě zařízení, které přišly s dokumentem do styku. To už naštěstí neplatí, dnes máme univerzální ICC profily. ICC profil je soubor, který popisuje jakou přesně barvu reprezentují jednotlivé kombinace složek RGB (nebo třeba CMYK). Dělá to tak, že obsahuje mapu pro převod mezi popisovaným barevným prostorem (RGB, CMYK, ..) a univerzálním barevným prostorem CIE LAB, který byl speciálně navržen právě pro tyto účely.

Ve chvíli, kdy potom máte obrázek + profil popisující význam barev v něm a přijdete ke kolegovi, který má profil pro svůj monitor, tak knihovna pro správu barev porovná tyto dva profily (mapy barev) a zařídí, že na výstup se pošlou takové hodnoty RGB, jaké mají na kolegově zařízení stejný vzhled jako na vašem.

Podpora v Linuxu

Většina aplikací podporujících správu barev vyžaduje knihovnu starající se o práci s profily a barevnými prostory. Tato knihovna může být součástí operačního systému (například ICM v MS Windows nebo ColorSync na Mac OS X) nebo existovat samostatně. V Linuxu je za správu barev obvykle zodpovědná samostatná knihovna littlecms.

Seznam linuxových aplikací, které správu barev podporují naleznete například na Wikipedii. Jediný mně známý www prohlížeč s její podporou je Firefox 3, ale nastavení je ukryté v about:config. Jednoduchým způsobem, jak ho měnit, je například plugin Color Management.

Další součást systému, která musí správu podporovat je X server. Naštěstí nejvíce rozšířený server xorg vše potřebné podporuje, problém nastává pouze občas s požadavkem zavedení různých profilů pro více displejů. Mám vyzkoušené ovladače intel (naprosto bez problémů) a NVidia (je třeba nepoužít twinview, ale rozdělení na dva displeje a xineramu).

Pokud nemáte profil, bude vás ještě zajímat balík Argyll. Je to sada programů (nejen) pro vytváření profilů. Umožňuje též profily zavádět do systému, prohlížet a další operace. Podporuje většinu dnes prodávaných sond, kolorimetrů a spektrometrů. K dispozici je i GUI rozhraní pro Argyll. Existuje také konkurenční projekt LProf, který neumí profilovat tiskárny, ale zase nedávno přidal grafické rozhraní.

Kalibrace displeje

První a nejdůležitější podmínkou pro jakoukoliv rozumnou práci s barvami je samozřejmě mít seřízený displej. V běžné situaci, kdy máme pouze jeden LCD displej, sestává jeho seřízení ze tří kroků.

  1. Seřídíme si monitor, aby se choval co nejlépe i bez kalibrace
  2. Kalibrací doladíme zbývající detaily…
  3. … a pomocí profilu popíšeme schopnost reprodukovat konkrétní barvy.

K tomuto slouží program dispcal z již zmíněného balíku argyll. Má několik parametrů, na které se vyplatí upozornit:

-d ...... v připadě, že máte více displejů, tímto parametrem určíte který chcete kalibrovat
-y c .... CRT obrazovka
-y l .... LCD obrazovka
-t ...... teplota bílé, v DTP je standardní hodnota 5000K, ale často se doporučuje pro displej zvolit teplotu 6500K
-g 2.2 .. cílová gamma, 2.2 je doporučovaná vždy, když nejde o čistě MAC prostředí, pak se používá 1.8
-p ...... změna umístění barevného čtverce pro kalibraci na obrazovce, aby nepřekrýval OSD
-o ...... pokud chceme jen jednoduchý maticový profil
$ dispcal -y l -t 6500 -g 2.2 -p 1.0,0.5,1,0 mujdisplej

spustí se kalibrace sondy a následně nám je zobrazeno menu:

  1) Black level (CRT: Brightness)
  2) White point (Color temperature, R,G,B, Gain/Contrast)
  3) White level (CRT: Gain/Contrast, LCD: Brightness/Backlight)
  4) Black point (R,G,B, Offset/Brightness)
  5) Check all
  6) Measure and set ambient for viewing condition adjustment
  7) Continue on to calibration
  8) Exit
Monitor kalibrace

Přiložíme sondu na barevný čtverec na obrazovce a postupně použijeme tyto volby:

  • 2) úpravou barevných kanálů v OSD monitoru se pokusíme dosáhnout co nejmenšího čísla dE, stavový řádek nám napovídá, který kanál máme posunout kterým směrem.
  • 3) upravíme si jas, aby nám vyhovoval. Obvykle se budeme snažit dosáhnout hodnot mezi 80 a 100.
  • 5) na výpisu si můžeme zkontrolovat, že se displej chová rozumně.
  • 6) touto volbou si můžeme zkontrolovat světelné podmínky v místnosti. Ideálně by mělo osvětlení mít 5000K, v domácích podmínkách je to ovšem těžké, proto zkuste zajistit alespoň minimum odlesků na displeji a neutrální barvu stěn.
  • 7) a spustíme kalibraci…

Po úpravě chování monitoru můžeme přikročit k tvorbě barevného profilu (tedy mapy toho, čeho je monitor schopen). Pro tuto úlohu potřebujeme vypočítat barvu kalibračních vzorků, přečíst jeji skutečnou hodnotu a všechny tyto informace proměnit v cílový profil.

$ targen -v  -d3 -f1024 mujdisplej
$ dispread -v -k mujdisplej.cal mujdisplej
$ colprof -v -D"Popis meho displeje a jeho nastaveni v dobe kalibrace" -qm -S /usr/share/color/icc/sRGB.icm -cpp -dmt mujdisplej

Výstupem je soubor mujdisplej.icc, který obsahuje informace pro grafickou kartu (vylepšení přesnosti zobrazeni) a barevnou mapu pro tento displej v aktuálním nastavení. Jakákoliv změna nastavení jasu, kontrastu, nebo barev právě vyrobený profil znehodnotí.

Nakonec zavedeme profil do X serveru… (měli byste zřetelně vidět efekt způsobený kalibrací)

$ dispwin -L mujdisplej.icc

… a oznámíme aplikacím, že mají používat správu barev na tomto monitoru a s využitím tohoto profilu. Vhodné je si také příkaz pro zavedení profilu do X serveru zapsat do konfigurace vašeho prostředí, aby se spustil při každém přihlášení.

V tuto chvíli tedy máme připravené pracovní prostředí a můžeme začít připravovat fotografie pro tisk. V příští části se podíváme na to jak zařídit, aby i po vytištění pořád vypadaly barevně správně. Také se podíváme na několik dalších užitečných nástrojů pro zjištění barevné „mapy“ z profilu a ruční převod obrázků mezi barevnými prostory.

Odkazy

Našli jste v článku chybu?

25. 6. 2009 1:12

Lael Ophir (neregistrovaný)

Cílový profil je profil daného zařízení (sRGB pokud není dáno jinak). Zdrojový profil je daný aplikací (například je embedded v zobrazném obrázku); pokud profil není určen, je to sRGB. Má to tři důsledky: 1) Aplikace i bez jakékoliv explicitní práce s barevnými profily má zajištěn převod barev do barevného prostoru monitoru a tiskárny. Proto například barevný tisk ve Windows funguje se slušnými barvami z každé nativní aplikace. 2) Pokud aplikace udá profil (například ho načte embededded v obráz…

24. 6. 2009 22:42

Nedela.. to by me zajimalo, kde by vzal informaci o zdrojovem a cilovem profilu, kdyby to tak bylo. On to _podporuje_, ale nedela to bez vyzadani. Tyto informace musi totiz vzdy dodat aplikace, ktera jedina zna format dat se kterymi pracuje. V Mac OS X 10.5 se o to sice system snazi, ale pulku profilu hada a u neotagovanych dat stejne prirazuje Generic RGB.

Podnikatel.cz: K EET. Štamgast už peníze na stole nenechá

K EET. Štamgast už peníze na stole nenechá

DigiZone.cz: Recenze Westworld: zavraždit a...

Recenze Westworld: zavraždit a...

Měšec.cz: Kdy vám stát dá na stěhování 50 000 Kč?

Kdy vám stát dá na stěhování 50 000 Kč?

DigiZone.cz: Je tu první sportovní přenos přes mobily

Je tu první sportovní přenos přes mobily

Podnikatel.cz: V restauraci bez cigaret? Sněmovna kývla

V restauraci bez cigaret? Sněmovna kývla

120na80.cz: Pánové, pečujte o svoje přirození a prostatu

Pánové, pečujte o svoje přirození a prostatu

120na80.cz: Na ucho teplý, nebo studený obklad?

Na ucho teplý, nebo studený obklad?

Podnikatel.cz: Udávání kvůli EET začalo

Udávání kvůli EET začalo

120na80.cz: Jmelí je více léčivé než jedovaté

Jmelí je více léčivé než jedovaté

Vitalia.cz: Láska na vozíku: Přitažliví jsme pro tzv. pečovatelky

Láska na vozíku: Přitažliví jsme pro tzv. pečovatelky

Měšec.cz: Air Bank zruší TOP3 garanci a zdražuje kurzy

Air Bank zruší TOP3 garanci a zdražuje kurzy

Podnikatel.cz: Chaos u EET pokračuje. Jsou tu další návrhy

Chaos u EET pokračuje. Jsou tu další návrhy

Podnikatel.cz: Podnikatelům dorazí varování od BSA

Podnikatelům dorazí varování od BSA

Vitalia.cz: Paštiky plné masa ho zatím neuživí

Paštiky plné masa ho zatím neuživí

Měšec.cz: mBank cenzuruje, zrušila mFórum

mBank cenzuruje, zrušila mFórum

Měšec.cz: Zdravotní a sociální pojištění 2017: Připlatíte

Zdravotní a sociální pojištění 2017: Připlatíte

Vitalia.cz: Mondelez stahuje rizikovou čokoládu Milka

Mondelez stahuje rizikovou čokoládu Milka

Lupa.cz: Insolvenční řízení kvůli cookies? Vítejte v ČR

Insolvenční řízení kvůli cookies? Vítejte v ČR

Vitalia.cz: Jsou čajové sáčky toxické?

Jsou čajové sáčky toxické?

Vitalia.cz: Nejlepší obranou při nachlazení je útok

Nejlepší obranou při nachlazení je útok