Obrazové problémy digitální fotografie IV. – Záznam barev - Grafika.cz - vše o počítačové grafice

Odběr fotomagazínu

Fotografický magazín "iZIN IDIF" každý týden ve Vašem e-mailu.
Co nového ve světě fotografie!

 

Zadejte Vaši e-mailovou adresu:

Kamarád fotí rád?

Přihlas ho k odběru fotomagazínu!

 

Zadejte e-mailovou adresu kamaráda:



Digitální fotografie

Obrazové problémy digitální fotografie IV. – Záznam barev

10. dubna 2009, 00.00 | Vidět svět barevně je něco zcela přirozeného. Tak přirozeného, že nám ani nepřijde, že s barevným "viděním" má digitální senzor celou řadu starostí. Proč tomu tak je najdete v tomto článku.

Důležité upozornění!
Tento článek bude plný problémů a potíží včetně řady konkrétních ukázek. Snadno tak lze podlehnout dojmu, že digitální fotografie je prakticky nepoužitelná. Opak je ale pravdou! Řada zde diskutovaných problémů se projeví jen při velkém zvětšení snímku, při vysokém ISO, při silné pod či přeexpozici či při silné a/nebo necitlivé editaci. Vyvarujete-li se těchto situací, tak nemáte prakticky šanci se s uvedenými problémy významně setkat.

Úvod k lidskému barevnému vidění
Rozhlédnete-li se kolem sebe, tak všude vidíte samé barvy. Nemáte ani problém je pojmenovat - červená, žlutá, modrá, nachová atd. Snadno tak podlehnete dojmu, že svět kolem nás je barevný a naše oči tuto objektivní realitu pouze vnímají.

Pravda je ale trochu složitější - svět kolem nás totiž žádné skutečné barvy nezná, zná jen spektrum světla. To co lidské oči vnímají barevně a kde rozeznávají miliony barev je však jen velmi malou částí celkového spektra, které "umí" světlo. Světlo se spektrem mimo tuto úzkou část je lidem neviditelné a lidské tělo jej ani nijak prakticky nevnímá.


Svět kolem nás je plný barev a tak je snadné podlehnout dojmu, že i záznam barev je snadný a přirozený. Opak je ale pravdou - věrný záznam a reprodukce barev je pořádná dřina a stále se na 100 % nedaří.

Barvu světelného zdroje určí tvar spektra, které tento zdroj vysílá ve viditelné oblasti. Co vysílá v neviditelné oblasti je pro vidění lhostejné, může ale například opalovat nebo hřát - vidět jej ale nelze. Barva předmětu je potom dána barvou (spektrem) světla, které na předmět dopadá plus jak se odrazem od předmětu barva (spektrum) světla změní.

Nejen že oko vidí jen velmi malou část spektra, oko dokonce nedokáže registrovat ani skutečný a úplný tvar viditelné části spektra. Sonduje jej pouze ve třech bodech a zjišťuje v něm při troše zjednodušení jen množství zelené, červené a modré složky světla. Existuje tak mnoho různých spekter ve viditelné části, které oko od sebe nedokáže rozlišit.


Barva ve fyzikálním slova smyslu neexistuje, jen tvar spektra (černá čára). Oko ale sonduje tento tvar spektra "jen" ve třech bodech hrubě odpovídající červené, zelené a modré.

Fotoaparát a digitální senzor není fyzikální zařízení pro záznam a studium světelného spektra, ale prostý simulátor očí. Od fotoaparátu nečekáme vědecké spektrální výsledky, ale záznam scény odpovídající tomu nejprostšímu lidskému vidění, a tedy simulaci a záznam našeho lidského barevného vidění světa.

Záznam barev
Pro pochopení způsobu jakým senzor zaznamenává barvy je třeba pochopit lidské vnímání barev a tzv. RGB barevný model. Lidské oko provede ve viditelné části spektra sondu ve třech místech zhruba odpovídající červené (Red), zelené (Green) a modré (Blue). Na základě vzájemného poměru těchto složek R : G : B si potom udělá představu o tvaru spektra a tedy o tom, čemu my lidé říkáme barva. A na základě celkové intenzity těchto tří složek R+G+B si udělá představu o celkové energii světla a tedy o jasu.


V lidském oku jsou tři druhy barvocitlivých buněk (čípků), které reagují na červenou, zelenou a modrou barvu (RGB). Jejich přímé změření je ale nemožné a proto se měří srovnávací metodou, kdy se na půlku obrazu promítne monochromatická barva a na druhé půlce se dosahuje subjektivní shody barvy pomocí regulace RGB světel.

Má-li digitální senzor simulovat oko, musí pracovat podobným způsobem a tedy v každém bodě scény (pixelu fotografie) změřit intenzitu červené složky spektra (Red), zelené (Green) a modré (Blue) a  tyto tři údaje uložit. Pro každý pixel fotografie tedy musí vzniknout tři čísla (RGB), které odpovídají lidskému vnímání daného bodu a stejně jako u oka lze prohlásit, že poměr R : G : B vyjadřuje barvu (odstín) a R+G+B vyjadřuje jas (celkovou intenzitu světla bez ohledu na barvu). To je i princip barevného modelu RGB, v kterém téměř bez výjimky pracují všechny digitální fotoaparáty a v principu zcela stejně pracoval i barevný film.


Pokud bychom všechny okem rozlišitelné barvy zobrazili do typické barevné podkovy, tak RGB model je schopen zaznamenat jen trojúhelníkový výsek z nich. I když to ale na první pohled vypadá poměrně špatně, tak subjektivní zkušenosti s RGB modelem jsou vynikající.

Posledním článkem řetězce je potom např. monitor, který na základě uložených tří čísel RGB provede rozsvícení tři mikroreflektorů s barvami červený, zelený a modrý a které posvítí do jednoho bodu (pixelu) na obrazovce . Tím obnoví barvu pixelu a v ideálním případě obnoví původní barevný i jasový vjem - nikoliv však skutečné a plnohodnotné původní spektrum.


RGB model si lze představit tak, že zezadu na stínítko vašeho monitoru svítí na každý pixel tři barevné mikroreflektory (červený, zelený a modrý) a mícháním jejich světla se vytváří ostatní barvy. Intenzita každého mikroreflektoru může být individuálně regulována od nuly do maxima a proto barva každého pixelu je sada tří RGB čísel.


Pomocí tří základních barev RGB je možné smíchat všechny ostatní barvy. Svítí-li všechny tři mikroreflektory na maximum, vytvoří čistě bílou.

Záznam barev senzorem
V prvním díle našeho seriálu věnovaného senzorům jsme bez ohledu na technologii CCD/CMOS hovořili o buňce zaznamenávající (měřící) světlo. Tato buňka je však vždy barvoslepá, což znamená, že buňka zaznamenává pouze jas a tedy intenzitu světla které na ní dopadne bez ohledu na jeho barvu (zaznamená tedy R+G+B). Jinými slovy je jí jedno, zda foton má vlnovou délku červeného světla či modrého, registruje pouze foton. Ještě jinak, samotný senzor by vytvořil černobílý obraz scény - buňky jsou tedy schopny rozlišovat intenzitu světla (jas), nikoliv však tvar spektra (barvu).


Samotný senzor bez dalších podpůrných obvodů by viděl jen jas a nebyl by schopen rozlišit barvu. Produkoval by tedy černobílé obrázky podobně jako černobílý film.

Barevná maska (Color filter array, CFA)
Aby senzor získal schopnost vidět barvy, je třeba mu trochu pomoci. Jeden pixel fotografie ale nemůže tvořit jedna buňka, nýbrž potřebné jsou tři a před tyto tři buňky se umístí červené, zelené a modré sklo - filtr. Tyto tři buňky potom společně vytvoří jeden pixel fotografie a protože každá buňka z trojice vidí jen správnou R,G nebo B barvu, tak vytvoří napodobeninu lidského způsobu vidění a vnímání barev. Této mozaice barevných skel (filtrů) se říká barevná maska (Color filter array, CFA) a logicky barvy v masce by měly být velmi blízké lidskému sondování spektra a tedy barevné citlivosti buněk (čípků) sítnice.


Na tři sousední buňky senzoru dopadá díky filtru před senzorem jen zelená, červená a modrá složka světla, čímž senzor provede stejnou sondu spektra jako lidské oko - vidí tedy barevně. Tím vzniknou i tři RGB čísla potřebná pro jeden barevný pixel fotografie.

Foveon
Takto skutečně pracují CMOS senzory typu Foveon X3, které vyvinula společnost Foveon, Inc a jenž používá ve svých DSLR společnost Sigma a v některých svých fotoaparátech i společnost Polaroid. Celý senzor se vlastně skládá ze tří senzorů uspořádaných do vrstev pod sebou, kde každá vrstva (senzor) měří jen světlo určité barvy. Vhodnou barevnou prostupností vrstev je potom zajištěno, že každá vrstva měří jen světlo modré, zelené a červené barvy podobně jako sítnice oka.


Senzor typu Foveon X3 jsou vlastně tři senzory pod sebou, kde každá vrstva měří jen světlo správné barvy. Díky tomu není třeba provádět žádnou interpolaci obrazu, jak uvidíme dále u běžných senzorů.

Bayerova maska (Bayer filter)
Mít pro každý pixel fotografie skutečné tři buňky senzoru buď vedle sebe nebo pod sebou (tak to má Foveon X3) je sice správné, ale technologicky náročné. Navíc se ukazuje, že je to v mnoha ohledech i zbytečné, protože rozlišovací schopnost oka v barvách je nižší než v jasu, což souvisí s různou hustotou jednotlivých druhů buněk (tyčinek a čípků) na sítnici lidského oka. Přišlo se tedy s trikem tzv. Bayerovy masky, která je dnes používána v drtivé většině digitálních fotoaparátů i kamer.

Princip je v tom, že před pixely senzoru jsou umístěny pravidelně se střídající barevné RGB filtry (Bayerova maska). Každý pixel fotografie potom není tvořen skutečnými třemi RGB buňkami, ale je vypočten ze čtyř sousedních buněk, které díky barvám v masce mají vždy úplnou RGB informaci. Úplná barevná informace je tedy pro každou buňku získána interpolací (výpočtem) na základě barev čtyř sousedních buněk.


Bayerova maska je typicky se střídající zelený, modrý a červený filtr před buňkami senzoru.

Výsledkem je, že každý pixel fotografie potřebuje jen jednu buňku (neklesá tedy zbytečně rozlišení senzoru na třetinu), každá buňka senzoru je ale použita vícekrát pro doplnění barevné informace svých sousedů.


Každý barvený RGB pixel fotografie není získán z buněk senzoru přímo, nýbrž interpolací (výpočtem) ze čtyř sousedů.


Následující pixel fotografie je vypočten ze čtyř sousedních buněk posunutých jen o jednu buňku a proto je každá buňka senzoru použita celkem pro čtyři pixely a tedy 4x.

Praktické provedení Bayerovy masky
Bayerova maska v praxi je barevný filtr umístěný před senzorem, který na jednotlivé buňky senzoru pouští jen červené, zelené či modré světlo. Tyto barvy se v masce pravidelně střídají a tím vytváří známou RGBG barevnou mozaiku. Zelená barva je navíc pro každý pixel fotografie v masce dvakrát častější než modrá a červená, čímž se simuluje vyšší citlivost oka na zelenou barvu. Snímek v zeleném kanále bude proto vždy nejméně zašuměn, protože celková plocha zelených buněk je dvakrát vyšší.


RGBG Bayerova maska vytvoří pro každý pixel fotografie přesně tento barevný vzorek. Zelená barva je vždy v masce pro jeden pixel dvakrát a proto je senzor na zelenou barvu nejcitlivější.

Pokud snímáte do RAW, tak v RAW datech jsou skutečně surová data ze senzoru a tedy data z jednotlivých buněk senzoru před interpolací. Výpočet barvy každého pixelu fotografie se tedy provede až v PC při vyvolávání RAWu.

Pokud snímáte do JPEG nebo TIFF, interpolace barev proběhne již ve fotoaparátu a výsledný JPEG/TIFF soubor již obsahuje skutečně tři čísla RGB pro každý pixel. To je i důvodem, proč RAW není o tolik větší než JPEG a dokonce menší než TIFF a to i přesto, že RAW je obvykle 12bitový či 14bitový. Důvodem je právě fakt, že v RAW ještě neproběhla interpolace a tedy barva je v RAW ještě "zhuštěná".

Sony RGBE maska
Sony si v roce 2003 patentovala mírně jinou variantu Bayerovy masky, a sice místo druhé zelené barvy použila barvu smaragdovou (Emerald). Podle firemních materiálů díky tomu dosahuje lepšího barevného podání a většího barevného gamutu. Pokud je nám ale známo, tak tento typ RGBE Bayerovy masky použila Sony jen u aparátu DSC-F828. Existují i další druhy Bayerových masek, například CYGM (Cyan, Yellow, Green, Magenta) či varianty s bílou barvou, klasický RGBG vzorek je ale drtivě nejrozšířenější.


Standardní Bayerova maska RGBG, varianta Sony RGBE a existují i jiné barevné vzorce, byť jejich použití je okrajové.

Bayerova maska a kanály fotografie
Podíváte-li se podrobněji na fotografii uloženou v RGB barevném modelu, tak ta je tvořena třemi RGB kanály (Channels), které se hrubě kryjí s barvami použitými v Bayerově masce. Hrubě proto, že fotografie je již po barevné interpolaci a dalším zpracování obrazu včetně převedení do standardního barevného RGB prostoru buď sRGB nebo Adobe RGB. Tím se může barevnost kanálů mírně lišit od barev použitých v Bayerově masce, tyto změny ale nemění nic na principu.


Fotografie uložená v RGB je tvořena třemi barevnými RGB kanály, které např. Photoshop umí zobrazit a na požádání i takto pěkně barevně označit. Barva RGB kanálů se hrubě kryje s barvou použitou v Bayerově masce.

Důsledky Bayerovy masky a následné interpolace
Uvedený trik s Bayerovou maskou šetří buňky senzoru a dá se díky němu z 12 Mpix černobílého senzoru vytvořit 12 Mpix barevná fotografie. Kdyby tomu tak nebylo a na každý pixel by byly potřeba tři buňky, tak by 12 Mpix černobílý senzor produkoval pouze 4 Mpix barevnou fotografii.

Pro pochopení problémů souvisejících s Bayerovou maskou je třeba si uvědomit, co skutečně vidí senzor. V žádném bodě scény nevidí skutečnou barvu, vidí vždy buď pouze barvu červenou nebo zelenou nebo modrou. Nikdy ne všechny současně. Rozlišení senzoru v červené a modré je jen čtvrtinové, díky dvojnásobnému zastoupení zelené barvy v masce je v zelené poloviční.


Simulace toho, co vidí z originálu senzor s Bayerovou maskou. Díky dvojnásobnému počtu zelených buněk v masce je zelený obraz nejjasnější a má nejvyšší rozlišení, tj. vidí nejvíce detailů.

Z toho je evidentní, že interpolace se neobejde bez následků, kterými jsou ztráta detailů v barvách, barevný šum, aliasing, rozostření, bludiště, halo efekt atd., kterým se budeme věnovat příště.

Tématické zařazení:

 » Rubriky  » VSE  

 » Rubriky  » Go verze  

 » Rubriky  » Digitální fotografie  

 

 

 

 

Přihlášení k mému účtu

Uživatelské jméno:

Heslo: