Úprava RAW fotek z digitálních zrcadlovek v Linuxu — RawTherapee #4

raw-rawtherapee-logoV našem linuxovém putování digitální fotografií s formátem RAW jsme již  u čtvrté zastávky – programu RawTherapee. V minulých třech zastaveních jsme si postupně opravili expozici fotografie, jejich barevné vyznění, případně převedli do šedé škály. Dnes se podíváme na to, jak RawTherapee doostřuje fotografie a jak se umí poprat se šumem na fotografiích.

Doostření

Dnes začnu odzadu. Doostření je totiž to poslední, co byste měli s obrázkem udělat předtím, než jej dáte do tisku/nahrajete na web či obecně publikujete. Přesto mi snad vážení čtenáři odpustí, že to nebude to poslední, co v tomto seriálu uvedu. O důvodech doostření se napsalo mnoho článků, mimo jinými například i známý DigiNeff. Doostření, jak jsem již napsal, by mělo proběhnout jako poslední krok před publikováním. Každá změna například barev v obrázku jej lehce rozostří, nemluvě například o změně velikosti.

Vlevo ukázka nedoostřeného snímku, vpravo je snímek doostřen.

Vlevo ukázka nedoostřeného snímku, vpravo je snímek doostřen.

Vzhledem k výše uvedenému doporučuji, abyste si nakonec fotku uložili NEdoostřenou do některého bezztrátového formátu (png/tiff), případně abyste nemazali profily upravených fotografií. Při případném publikování jen změníte rozměr z tohoto velkého snímku a až následnou zmenšeninu doostříte. Je krajně nevhodné doostřit, zmenšit, opět doostřit a tak pořád dokola.

RawTherapee poskytuje dva přístupy k doostření, resp. dvě metody. Obě mají své klady i zápory.

Doostření — Maskovat rozostření

Maskovat rozostření, tzv. unsharp masking, je výchozí volba pro doostřování. Je rychlá, leč je třeba u ní nastavit více parametrů, aby výsledek byl skutečně dobrý. Tím dává větší tvůrčí prostor pro práci, na druhou stranu vyžaduje více úsilí — musíte věnovat dost času, abyste přišli na správné hodnoty všech parametrů. Ale i nyní se vám pokusím trochu napovědět. Jak filtr pracuje? Obrázek se prvně lehce rozostří a vypočte rozdíl oproti původnímu obrázku. Rozdíl se vynásobí malou hodnotou (nazvěme ji mírou) a nakonec přičte k původnímu obrázku, čímž vyniknou velké rozdíly a obrázek tak vypadá ostřejší.

Poloměr určuje velikost (šířku) oblasti, se kterou bude systém pracovat a doostřovat. Prakticky se to projeví tak, že při větších hodnotách budou doostřovány jen výraznější linie. Pokud máte na obrázku detailní kresbu, obecně je dobré použít nižší hodnotu. Hodnota poloměru je spojená s hodnotou míry. Ta naopak určuje, jak moc se doostření projeví.

Aby se zabránilo doostřování šumu (ten logicky chceme potlačit), je zde poslední hodnota s názvem Práh. Vzhledem k tomu, že šum se pohybuje v malých odchylkách od hodnoty ‘průměrného barevného středu’, tak se nedoostřují ty odchylky, které jsou menší než zvolený práh. Neboli aby byly dva sousedící pixely doostřovány, musí být hodnoty jednotlivých barevných kanálů rozdílné aspoň o hodnotu prahu.

Mám zrcadlovku s menším snímačem osmi megapixelů (už má pár let a pár desítek tisíc fotek za sebou). Pro ty, kteří mají velikost snímače stejnou, doporučuji měnit hodnotu poloměru v rozmezí 0.8 až 1.3. Hodnota míry, jak jsem již psal, závisí na zvoleném poloměru, ale aby byly snímky doostřené a nepřeostřené, držel bych se v intervalu 100–200. Hodnota prahu závisí na množství šumu ve snímku, takže obecnou radu dát nemůžu. Pro větší snímače budou hodnoty poloměru o něco výše, řekl bych mezi 1–1,5.

Doostřit pouze okraje

Název “doostřit pouze okraje” je značně nešťastný překlad. Spíše by mělo být ‘Doostřit pouze hrany‘. Při zapnutí této funkce bude tedy samozřejmě doostřován celý snímek, nejen jeho okraje.

S touto funkcí se RawTherapee pokusí doostřit pouze hrany, nikoli šum. Jak se mu to daří, se podívejte na následující dvojici fotek, kde jedna je bez této funkce, druhá je s doostřením hran. Dvě hodnoty, které máte k nastavení, jsou Poloměr a Tolerance okrajů (lepší překlad je samozřejmě tolerance hran). Poloměr je hodnota k rozlišení šumu. S nižším šumem to může být nižší poloměr a naopak. Čím vyšší hodnota poloměru bude, tím více času si zpracování vyžádá. Tolerance okrajů určuje, jak moc se pixely musí lišit od ostatních, aby byly považovány za hranu.

Moc pěkné pojednání o tom, co jsou hrany v obrázcích (a pár informací navíc), je ve článku na serveru samples.cz.

Rozdíl mezi doostřeným snímkem a snímkem, kde jsou doostřeny jen hrany. Je vidět, že šum se potlačil, ale čáry zůstaly výrazné.

Rozdíl mezi doostřeným snímkem a snímkem, kde jsou doostřeny jen hrany. Je vidět, že šum se potlačil, ale čáry zůstaly výrazné.

Hodnotu nastavení Poloměru budete muset vyzkoušet a najít pro každý snímek sami. Tolerance okrajů pro citlivost ISO 400 (adekvátní) je hodnota do 1000 naprosto dostačující. S nižší hodnotou ISO samozřejmě je možné toleranci snížit. Při vysokém ISO (1600) naopak klidně použijte i hodnotu 2500–3000.

Omezení halo artefaktů

Někdy při silnějším ostření se vám stane (a jde to snadno), že se kolem některých objektů vytvoří tzv. halo efekt — aura. Obvykle je to na prudkých přechodech kontrastu (větvička proti obloze atd). Zatržením volby Omezení halo artefaktů snížíte doostření v místech, kde by takového halo vzniklo.

Vlevo je holub s bílou aurou okolo. Není svatý, jen bylo použité moc silné doostření, které s volbou Omezení halo artefaktů zmizelo (pravý obrázek)

Vlevo je holub s bílou aurou okolo. Není svatý, jen bylo použité moc silné doostření, které s volbou Omezení halo artefaktů zmizelo (pravý obrázek)

Doostření — RL dekonvoluce

RL dekonvoluce je naprosto jiný přístup, který je sice náročnější na výpočet (trvá déle), ale dává lepší výsledky než Zamaskování rozostření. Dekonvoluce obecně je matematická metoda, která odstraňuje nežádoucí prvky v obraze. Při RL dekonvoluci se předpokládá gaussovské (normální) rozdělení neostrostí (gaussovské rozostření), které jsou matematicky odstraněny (dekonvolovány).

Upřímně doufám, že se vážený čtenář spokojí s tímto prostým popsáním metody. Ve své diplomové práci se mimo jiné zabývám právě dekonvolutivními metodami doostřování astronomických snímků a vím, že každý hlubší popis metody by si vyžádal značnou úroveň znalostí matematiky, což je silně nad rámec článku.

Popišme si nyní jednotlivé parametry. Hodnota Poloměr stejně, jako v Maskování rozšíření, určuje oblast, ve které se bude doostřování provádět, resp. kde se bude odebírat ono gaussovské rozostření. Příliš vysoká hodnota poloměru opět vede k halo efektům, zatímco nízká hodnota snímek nedoostří. Pokud nastavíte hodnotu Míry na 100, poté bude odstraněn všechno rozpoznané gaussovské rozostření. Pamatujte ovšem, že se jedná jen a pouze o matematickou metodu (jakkoli složitou), která určuje, co je neostrost a co není. A třetí táhlo Útlum se používá, aby nebyl ostřen šum.

Obecně není možné, aby dekonvoluce proběhla jen jednou a bylo hotovo. Dekonvoluce je iterační metoda, tedy postupnými kroky se přibližujeme k výsledku. Počet opakování nastavíte posledním táhlem.

Zde je třeba opět napsat, že je nutné zde získat zkušenosti s nastavením jednotlivých parametrů. Vysoká hodnota libovolného táhla spolu v velkým počtem iterací může vytvořit ony halo efekty jako v případě Zamaskování rozostření. Dle mých zkušeností jsou předdefinované hodnoty na onom zlatém středu — je lepší se s více malými krůčky  (vyšší počet iterací s nižšími hodnotami) blížit k výsledku, než pár skoků (málo iterací s velkými hodnotami), kde hrozí nebezpečí přeskočení ideální hodnoty. Každopádně doporučuji průběh doostřování sledovat na detailu.

Redukce šumu v jasech

Šum je dán několika faktory, přičemž mezi nejzásadnější patří tepelný šum, nedokonalost snímačů a pak mnohé další. V RawTherapee jsou dvě cesty k odstranění šumu. Klasický šum, jak jej známe a vidíme na digitálních fotografiích, je šumem v jasech. Odstranění šumu se v podstatě velmi podobá maskování rozostření. Pomocí  Poloměru nastavíte velikost počítané oblasti. Čím více šumu, tím je vhodnější mít vyšší hodnotu poloměru. Tolerance okrajů je opět nešťastným překladem, jedná se o toleranci hran, která je obdobou waveletové funkce, jak jsme si ji popsali ve článku Úprava RAW fotek z digitálních zrcadlovek v Linuxu — UFRaw #1. Pokud se vám líbila metoda s odstraněním šumu pomocí temného snímku, tak vás musím zklamat — toto RawTherapee zatím neumí (tato metoda je stejně použitelná pouze na dlouhých expozicích nad několik  sekund). Na následujícím obrázku se můžete podívat na detail letícího ptáka proti obloze s redukcí šumu a následně bez ní.

Dvojice fotografií letícího ptáka proti zatažené obloze. Na levé nebyla použita redukce šumu, zatímco na pravé fotografii byl šum odstraněn

Dvojice fotografií letícího ptáka proti zatažené obloze. Na levé nebyla použita redukce šumu, zatímco na pravé fotografii byl šum odstraněn

Redukce barevného šumu

Přiznám se, že vliv této redukční opravné funkce jsem hledal dlouho a nemohl jsem jej nikde objevit. Spíše náhodou jsem pak přišel na několik pixelů při zpracování fotek hvězdné oblohy, kdy se při použití této funkce měnily barvy jednotlivých hvězd. Funkce ořezala barevnost, pokud byla hvězda v pixelu přeexponována. Na následující dvojici fotek se můžete přesvědčit o tom, jak vypadá hvězda bez úpravy a s úpravou. Jiný význam jsem bohužel neobjevil.

Odstranění barevného šumu okolo jedné hvězdy

Odstranění barevného šumu okolo jedné hvězdy

V tomto díle jsme se podívali na koncové úpravy obrázku, tj. odstranění šumu a doostření. Až do této chvíle jsme spolu prošli zpracování každé fotografie. V příštím a nejspíše posledním díle se podíváme na opravy způsobené nedokonalostí fotografa, který nenafotí “rovnou” (proběhneme možnosti výřezů ze snímku)  a nedokonalostmi fotografické techniky (slibovaná vinětace či chromatická (barevná) vada a možná pár dalších).

3 komentáře

  1. úprava fotek v raw | 16.11.2009 | 14:20 | Odpovědět

    Musím říci, že seriál se mi moc líbí a hodně se z něho dovídám o funkcích RawTherapee.
    Díky za něj
    Ira

  2. Peťoš Šafařík | 17.11.2009 | 19:57 | Odpovědět

    Po vydání tohoto článku (v průběhu přípravy dalšího dílu) jsem konečně přišel na onu tajemnou funkci Redukce barevného šumu. Pokusím se ji popsat hned v úvodu dílu příštího, který opět připravuji na nejbližší pondělí.

  3. Viktor | 17.11.2009 | 20:55 | Odpovědět

    Dobrý seriál k dobrému programu… 🙂

Leave a comment

Sorry, you must be logged in to post a comment. Login