NASTAVENÍ TISKU (tato tabulka nebude vytištěna) Zpět k článku | Vytiskni!
Komentáře [3x] - Skrýt | Nadstandardní komentář [2x] - Skrýt | Definice [0x]

Použité metody převzorkování

Metody převzorkování, které budou dále popsány, jsou tytéž, které se používají při zpracování statických obrázků - tj. při změně rozlišení obrazu (tj. zvětšení nebo zmenšení obrázku), při rotaci obrázku, deformaci obrazu a dalších úpravách, které běžné grafické editory nabízejí.

Při převzorkování filmu se postupuje stejně jako při převzorkování statického obrázku. Jen se musí převzorkovat na každou sekundu trvání filmu 25 obrázků.

Matematické algoritmy, které se pro převzorkování používají, je možné rozdělit do dvou základních kategorií:

1.     neadaptivní algoritmy - algoritmy, kterými se celý obraz zpracuje uživatelem vybranou metodou bez ohledu na samotný obsah obrazu (do této skupiny patří všechny dále popisované metody);

2.     adaptivní algoritmy - algoritmy zpracovávající obraz podle toho, co je na obrazu zobrazeno; tyto algoritmy tedy odlišují rozdílný charakter jednotlivých ploch obrazu (pozadí, popředí, hraniční linie zobrazených objektů, …) a podle toho volí jednotlivé metody interpolace; tyto adaptivní algoritmy ale nejsou vhodné pro použití v případě deformace obrazu nebo otáčení obrazu.

Je zřejmé, že i sebelepší interpolací nelze zvýšit informační hodnotu snímku. Žádné nové detaily nemohou být interpolací obnoveny nebo dopočítány. Každá interpolace vždy pouze na základě různých matematických metod zvyšuje datovou velikost obrazu (zvyšuje totiž rozlišení obrazu). Všechny interpolační metody přitom vytvářejí řadu nechtěných artefaktů (tj. nechtěné prvky, které vzniknou v obraze vlivem optických vad, nedokonalým snímacím senzorem nebo digitálním zpracováním obrazu). Mezi základní artefakty obrazu patří:

1.     rozostření obrazu;

2.     halo;

3.     aliasing;

4.     barevná vada;

5.     posterizace;

6.     blooming;

7.     odlesky;

8.     sférická vada;

9.     šum;

10.  vinětace obrazu;

11.  JPEG komprese;

12.  moaré.

Vhodná interpolace je taková, která produkuje obraz s rozumně potlačenými artefakty obrazu.

Při změně rozlišení obrazu je vždy nutné měnit počet pixelů, které původní obraz obsahuje. A to buď tak, že počet pixelů zvyšujeme (při převzorkování na vyšší rozlišení obrazu) nebo počet pixelů zmenšujeme (při převzorkování obrazu na nižší rozlišení obrazu).

Uvažme situaci, při které video na vstupu do určitého zobrazovacího panelu (např. televizní obrazovka, dataprojektor, …) má rozlišení obrazu 720  576 s obrazovou frekvencí 25 snímků za sekundu. Zobrazovací panel přitom pracuje v rozlišení 1920  1080 a s obrazovou frekvencí 50 snímků za sekundu. Do zobrazovacího panelu tedy každou sekundu pro tři základní barvy RGB modelu vstupuje  obrazových bodů. Digitální zařízení zobrazovacího panelu z těchto vstupních dat musí každou sekundu vypočítat celkem  obrazových bodů, tj. na výstupu musí být 10krát více hodnot než na vstupu. Vzhledem k tomu, že , tak na každé 3 řádky stávajícího signálu musí procesor dopočítat 5 nových řádků!

Nejjednodušší matematická metoda, která nevyžaduje pro výpočty žádné číslicové filtry nebo signálové procesory, je metoda použití hodnot pozičně nejbližšího vzorku - metoda nejbližšího souseda (nearest neighbor). Tato metoda spočívá v tom, že v obrazu se prostě zopakují jednotlivé řádky nebo sloupce nebo se řádky či sloupce vynechají - v závislosti na tom, zda se provádí převzorkování do vyššího rozlišení obrazu nebo do nižšího rozlišení obrazu. Prakticky má aplikace této metody tedy stejný efekt jako zvětšení (nebo zmenšení) plochy jednotlivých pixelů. Tato metoda zachovává ostrost vodorovných hran a svislých hran obrazu, ale má velmi velký aliasing (hrany a ostré linie jsou zubaté) - v obraze se tedy objevují jasné „kostičky“. Proto tato metoda není vhodná pro použití při zvětšování obrazu.

Další metodou, která je matematicky složitější, je bilineární interpolace (bilinear interpolation). Tato metoda využívá matici čtyř sousedních pixelů (matice o rozměrech 2  2 pixely) a vypočítá parametry nového pixelu (tj. jeho složení z jednotlivých základních barev RGB modelu) uprostřed mezi uvažovanými čtyřmi pixely (viz obr. 151, na kterém je nově počítaný pixel zobrazen červeně). Tato metoda má silný protialiasingový účinek a výsledek její aplikace je proto mnohem jemnější, než předchozí metoda. Ovšem vlivem výpočtu nových pixelů jako průměru okolních pixelů je obraz při velkém zvětšení silně rozostřen. Metoda omezuje kostičkování obrazu, způsobuje ale neostrost vodorovných hran a svislých hran.

Vzhledem k tomu, že se nově vypočítávaný pixel nachází upřed mezi těmi, pomocí nichž se počítá, je jeho hodnota daná obyčejným průměrem ze čtyř známých okolních pixelů. To dokumentuje obr. 152, na kterém čísla v černě orámovaných pixelech určují stupeň šedivé barvy a červeně orámovaný pixel má barvu danou průměrem barev ostatních pixelů.

Obr. 151Obr. 152

Další metodou, která je ještě lepší než bilineární interpolace, je polynomická interpolace. Z této obecné interpolace se v praxi používá konkrétně používá bikubická interpolace (bikubic interpolation).

Předpona bi znamená, že se interpolace provádí ve dvou navzájem kolmých směrech, tj. v případě interpolace obrazu po řádcích a pak po sloupcích.

Fakt, že se používá právě bikubická interpolace, tj. interpolace polynomem třetího stupně, vyplývá z matematických vlastností polynomu třetího stupně (má inflexní bod, graf této polynomické funkce nekontrolovatelně neosciluje, …); navíc metoda jako celek je v případě polynomu třetího stupně výpočetně nenáročná, ale přitom poskytuje dobré výsledky.

Pro určení nových parametrů pixelů využívá tato metoda matici o rozměrech 4  4 pixelů, tj. na základě 16ti pixelů se dopočítává jeden nový pixel (viz obr. 153). Výpočet je založen opět na aproximaci stávajících pixelů určitou funkcí - v tomto případě polynomickou funkcí třetího stupně. Funkční hodnota této funkce v místě nově dopočítávaného pixelu (na obr. 153 zobrazen červeně) je více ovlivněna těmi existujícími pixely, které jsou k počítanému pixelu blíže (na obr. 153 zobrazeny tmavší barvou), než pixely, které jsou od něj dále (v uvažované matici 4  4 pixely). Tato metoda je velmi odolná proti aliasingu a dokáže vytvořit i velmi jemné barevné přechody. Je vhodná pro zvětšování i zmenšování obrazu, ale při příliš velkém zvětšení je v obraze vidět rozostření. Obraz obecně může být více kostičkovaný, než u bilineární interpolace, ale zachová si ostrost hran.

Obr. 153

Kromě těchto základních metod se používá řada dalších metod, které jsou sice přesnější a obrazy jimi vytvořené mají méně artefaktů obrazu, ale zase jsou tyto metody náročnější na čas a technické vybavení.


© Převzato z http://fyzika.jreichl.com, úpravy a komerční distribuce jsou zakázány; Jaroslav Reichl, Martin Všetička