Prezentace se nahrává, počkejte prosím

Prezentace se nahrává, počkejte prosím

RASTROVÝ OBRAZ JANA ŠTANCLOVÁ Obrázky (popř. slajdy) převzaty od RNDr. Josef Pelikán, CSc., KSVI MFF UK.

Podobné prezentace


Prezentace na téma: "RASTROVÝ OBRAZ JANA ŠTANCLOVÁ Obrázky (popř. slajdy) převzaty od RNDr. Josef Pelikán, CSc., KSVI MFF UK."— Transkript prezentace:

1 RASTROVÝ OBRAZ JANA ŠTANCLOVÁ jana.stanclova@ruk.cuni.cz Obrázky (popř. slajdy) převzaty od RNDr. Josef Pelikán, CSc., KSVI MFF UK

2 reprezentace rastrového obrazu –matice –kvadrantový strom komprese rastrového obrázku –RLE –Huffmanovo kódování –JPEG komprese –FIF komprese Obsah 2/52 Jana Štanclová, jana.stanclova@ruk.cuni.cz

3 Reprezentace rastrového obrazu REPREZENTACE RASTROVÉHO OBRAZU 3/52 Jana Štanclová, jana.stanclova@ruk.cuni.cz

4 Matice 4/52 Jana Štanclová, jana.stanclova@ruk.cuni.cz nejčastější datová struktura dvojrozměrná matice pixelů –pixel = hodnota podle typu obrazu (např. jas) výhody –úplná reprezentace obrazu nezávislá na obsahu obrazových dat nevýhody –??

5 nejčastější datová struktura dvojrozměrná matice pixelů –pixel = hodnota podle typu obrazu (např. jas) výhody –úplná reprezentace obrazu nezávislá na obsahu obrazových dat nevýhody –není úsporná –nezachycuje relace mezi objekty –nezohledňuje fakt, že se v obraze mohou nacházet velké stejně barevné plochy Matice 5/52 Jana Štanclová, jana.stanclova@ruk.cuni.cz

6 kvadrantový strom –obraz rozdělen na 4 kvadranty (čtverce) –test pokrytí stejnou barvou kvadrant pokryt pixely stejné barvy → konec dělení kvadrant není pokryt pixely stejné barvy → kvadrant rozdělen Kvadrantový strom 6/52 Jana Štanclová, jana.stanclova@ruk.cuni.cz

7 rozdělený obrázek kvadrantový strom - barvy v listech Kvadrantový strom 7/52 Jana Štanclová, jana.stanclova@ruk.cuni.cz

8 Kvadrantový strom - algoritmus vytvoření kvadrantového stromu kvadrant_strom(obraz) { ??? } 8/52 Jana Štanclová, jana.stanclova@ruk.cuni.cz

9 vytvoření kvadrantového stromu kvadrant_strom(obraz) { if (obraz má pixely jen jedné barvy) { zapsat barvu; } else { rozdělit obraz na čtverce 0, 1, 2 a 3; kvadrant_strom(čtverec 0); kvadrant_strom(čtverec 1); kvadrant_strom(čtverec 2); kvadrant_strom(čtverec 3); } Kvadrantový strom - algoritmus 9/52 Jana Štanclová, jana.stanclova@ruk.cuni.cz

10 ? Lineární zápis kvadrantového stromu lineární zápis 10/52 Jana Štanclová, jana.stanclova@ruk.cuni.cz lineární zápis kvadrantového stromu –dělený uzel nahrazen závorkami kvadrantový strom

11 lineární zápis kvadrantového stromu –dělený uzel nahrazen závorkami kvadrantový strom lineární zápis 1. (Č * B Č) 2. (Č (B Č * B) B Č) 3. (Č (B Č (Č B B Č) B) B Č) Lineární zápis kvadrantového stromu 11/52 Jana Štanclová, jana.stanclova@ruk.cuni.cz

12 Příklad - I 12/52 Jana Štanclová, jana.stanclova@ruk.cuni.cz 1. příklad –vytvořit kvadrantový strom a zapsat jej lineárním kódem

13 1. příklad –vytvořit kvadrantový strom a zapsat jej lineárním kódem 1. (* * B Č) 2. ( (*ČČB) (BBČ*) B Č) 3. ( ((ČČBB)ČČB) (BBČ(ČBČB)) B Č) Příklad - I 13/52 Jana Štanclová, jana.stanclova@ruk.cuni.cz

14 Příklad - II 14/52 Jana Štanclová, jana.stanclova@ruk.cuni.cz 2. příklad –nakreslit obrázek zadaný kódem ((ČČČ(BBBČ))(ČČ(BBČB)Č)(Č(BČBB)ČČ)((ČBBB)ČČČ))

15 2. příklad –nakreslit obrázek zadaný kódem ((ČČČ(BBBČ))(ČČ(BBČB)Č)(Č(BČBB)ČČ)((ČBBB)ČČČ)) Příklad - II 15/52 Jana Štanclová, jana.stanclova@ruk.cuni.cz

16 Komprese rastrového obrazu KOMPRESE RASTROVÉHO OBRAZU 16/52 Jana Štanclová, jana.stanclova@ruk.cuni.cz

17 rastrové obrazy –paměťově náročné → komprese kompresní metody –spjaty s grafickým formátem –často využívají charakteristické rysy daného obrazu Komprese rastrového obrazu 17/52 Jana Štanclová, jana.stanclova@ruk.cuni.cz

18 mnoho grafických formátů –historické důvody odráží technický vývoj zejména grafických karet –vazba na program druh aplikace → daný formát –úschova skic a kreseb... PCX –černobílé dokumenty... TIFF –přenos barevných fotografií... GIF, JPEG –technické důvody ohled na rozlišení scannerů různé rozlišení na osách uspořádání bytů v 16-bitovém slově - little endian (Intel) - big endian (Motorola, Sparc, MIPS) –použitá metoda komprese Komprese rastrového obrazu 18/52 Jana Štanclová, jana.stanclova@ruk.cuni.cz

19 komprese –bezztrátová (lossless) komprese datových souborů žádná data nesmí být ztracena –ztrátová (lossy) vhodná u rastrových obrazů změna barvy pixelů → zhoršení výsledného obrazu → lepší kompresní poměr Komprese rastrového obrazu 19/52 Jana Štanclová, jana.stanclova@ruk.cuni.cz

20 bezztrátová komprese předpoklad –v rastrovém obrázku (skica, kresba) se opakují barvy sousedních pixelů (v řádku) kódování –kodování v rámci jedné řádky –do souboru: počet opakujících se totožných barev hodnota barvy Run Length Encoding (RLE) 20/52 Jana Štanclová, jana.stanclova@ruk.cuni.cz

21 Run Length Encoding (RLE) 21/52 Jana Štanclová, jana.stanclova@ruk.cuni.cz příklad –zakódovat obrázek pomocí RLE

22 příklad –zakódovat obrázek pomocí RLE Run Length Encoding (RLE) → (3,Č), (2,B) → (1,B), (3,Č), (1,B) → (2,B), (2,Č), (1,B) → (5,B) → (2,B), (3,Č) 22/52 Jana Štanclová, jana.stanclova@ruk.cuni.cz

23 Run Length Encoding (RLE) pro jaké obrázky RLE výhodné? –?? pro jaké obrázky RLE neefektivní? –?? 23/52 Jana Štanclová, jana.stanclova@ruk.cuni.cz

24 pro jaké obrázky RLE výhodné? –obrázek s mnoha vodorovnými čarami pro jaké obrázky RLE neefektivní? –obrázek se svislými čarami → žádná komprese –obrázek, kde se neopakují hodnoty sousedních pixelů (např. šachovnice) → záporná komprese → zvětšení výsledného souboru praxe –RLE vhodné pro obrázky kreslené „od ruky“ –RLE vhodné tzv. cartoons ilustrace s většími stejnobarevnými plochami Run Length Encoding (RLE) 24/52 Jana Štanclová, jana.stanclova@ruk.cuni.cz

25 Algoritmus RLE 25/52 Jana Štanclová, jana.stanclova@ruk.cuni.cz schéma algoritmu RLE

26 1.Čítač = 1 2.BarvaA = barva prvního pixelu 3.Dokud na vstupu pixely, opakovat: BarvaB = hodnota dalšího pixelu pokud (BarvaA == BarvaB) Čítač ++ jinak Zapsat do souboru Čítač a BarvaA BarvaA = BarvaB Čítač = 1 4.Zapsat do souboru Čítač a BarvaA Algoritmus RLE 26/52 Jana Štanclová, jana.stanclova@ruk.cuni.cz

27 ztrátová varianta RLE –málo častá –1. test sousedních (barevných) pixelů –2. sousední pixely velmi podobné → nahrazení jedinou barvou Ztrátová varianta RLE 27/52 Jana Štanclová, jana.stanclova@ruk.cuni.cz

28 RLE ve formátu PCX –firma ZSoft (1988) –struktura formátu PCX hlavička –verze –počet bitů na pixel –rozměry obrazovky –... obrazová data paleta,... –RLE komprese v PCX N-krát se opakují data 11... začátek čísla „kolikrát se opakuje“ XX ≠ 11... začátek dat 11 N XX data RLE a formát PCX 28/52 Jana Štanclová, jana.stanclova@ruk.cuni.cz

29 bezztrátová komprese navrženo pro přenos B/W dokumentů faxem –myšlenka z roku 1952 od Davida Huffmana různě dlouhé bitové kódy pro symboly s různou frekvencí –často používané symboly → kratší kódy –frekvence není stanovena individuálně pro každý dokument → v tabulkách vzniklých statistickým zpracováním mnoha typických dokumentů vysoký stupeň komprese –omezené použití na černobílé (typicky kancelářské) textové dokumenty Huffmanovo kódování 29/52 Jana Štanclová, jana.stanclova@ruk.cuni.cz

30 varianty kódování –G31D kompresní poměr 5:1 odolné vůči poruchám –G32D kompresní poměr 8:1 citlivé na poruchy –G42D kompresní poměr 15:1 (bezchybný) zápis na disk → vysoký stupeň komprese (+) → omezené použití na kancelářské/textové dokumenty (–) Varianty Huffmanova kódování 30/52 Jana Štanclová, jana.stanclova@ruk.cuni.cz

31 varianta G31D –úseky opakujících se bílých, resp. černých pixelů na jednom řádku zakódovány metodou RLE –opakovače nahrazeny Huffmanovými kódy –zvláštní kódy pro úseky bílých pixelů konce řádků (EOL) vyplnění všech pixelů stejnou barvou až do konce řádku (FILL) → snadná rekonstrukce obrazu i při ztrátě dat při přenosu → výhodné pro faxové přenosy G31D Huffmanovo kódování 31/52 Jana Štanclová, jana.stanclova@ruk.cuni.cz

32 varianta G32D –uvažován dvojrozměrný charakter obrazových dat –zapisování pozic pixelů, kde dochází ke změně barvy (nejen v aktuálním řádku, ale vzhledem k předchozímu) –změna barvy z černé na bílou a naopak zapisována relativně vůči předchozí pozici → výrazná deformace obrazu při ztrátě dat → řešení: každý čtvrtý řádek kódován bezpečnou variantou G31D varianta G42D –pro zápis na disk nepředpokládána ztráta dat při přenosu → není nutné dodávat synchronizační informace –G42G odvozena z G32D odebráním nepotřebných kódů –použita ve formátu TIFF G32D Huffmanovo kódování 32/52 Jana Štanclová, jana.stanclova@ruk.cuni.cz

33 Kompresní metoda JPEG JPEG... Joint Photographic Experts Group –komprese barevných obrázků idea –kvalitní obrázky mají jen málokteré sousední pixely stejné barvy –ale sousední pixely mívají podobné barvy 33/52 Jana Štanclová, jana.stanclova@ruk.cuni.cz

34 JPEG... Joint Photographic Experts Group –komprese barevných obrázků idea –kvalitní obrázky mají jen málokteré sousední pixely stejné barvy –ale sousední pixely mívají podobné barvy princip komprese –potlačování rozdílu v blízkých barvách → snižování kvality obrazu –praxe snížení kvality na 75% → pro člověka nepozorovatelné → komprese až 20:1 až 25:1 nevhodné pro obrazy s nízkým barevným rozlišením –optimálně: pixel = 24b Kompresní metoda JPEG 34/52 Jana Štanclová, jana.stanclova@ruk.cuni.cz

35 transformace barev redukce barev dopředná DCT kvantování koeficientů kódování soubor obraz kvalita Q Kompresní metoda JPEG 35/52 Jana Štanclová, jana.stanclova@ruk.cuni.cz

36 1. transformace barev –barvy RGB nebo CMY → model YC B C R se třemi byty na 1 pixel –model YC B C R použit pro přenos televizních signálů v normě SECAM Y.... jas (!ne žlutá barva!) číslo z intervalu Y = 0,299*R + 0,587*G + 0,114*B C B.... číslo z intervalu C B = 0.5643(B - Y) C R.... číslo z intervalu C R = 0.7133(R - Y) –v dalším zpracování se jednotlivé složky zpracovávají odděleně 1. Transformace barev 36/52 Jana Štanclová, jana.stanclova@ruk.cuni.cz

37 2. redukce barev –snížení objemu dat: zprůměrování barevných složek C B a C R několika sousedních pixelů → nahrazení jedinou hodnotou zprůměrování 2 sousedních „barev“ zprůměrování 4 sousedních „barev“ –lidské oko citlivé na rozdíly v úrovni Y (= jas) → tato složka se neprůměruje –v této fázi nedochází ke zhoršení kvality obrazu až při kvantování koeficientů (fáze 4) cc cc cc 2. Redukce barev 37/52 Jana Štanclová, jana.stanclova@ruk.cuni.cz

38 3. diskrétní kosinová transformace (DCT) –rozdělení obrazu na čtverce velikosti 8×8 –každý čtverec podroben DCT → čtverec velikosti 8×8 koeficientů F(u,v) 3. Dopředná DCT 38/42 Jana Štanclová, jana.stanclova@ruk.cuni.cz

39 3. diskrétní kosinová transformace (DCT) –rozdělení obrazu na čtverce velikosti 8×8 –každý čtverec podroben DCT → čtverec velikosti 8×8 koeficientů F(u,v) –získané koeficienty F(u,v) neceločíselné zaokrouhleny až v další fázi 3. Dopředná DCT 39/52 Jana Štanclová, jana.stanclova@ruk.cuni.cz

40 po provedení DCT –čtverec 8×8 koeficientů F(u,v) –koeficient F(0,0)... levý horní roh čtverce DC-člen největší vliv na veškerá data ve čtverci 8×8 velikost DC-členu → osminásobek průměrné hodnoty ve vstupním čtverci (před DCT) –ostatní koeficienty... zbylé pixely čtverce AC-členy vliv na vyšší frekvence obrázku → změny mezi jednotlivými pixely vliv AC-členů klesá s jejich vzdáleností od DC-členu Po provedení DCT 40/52 Jana Štanclová, jana.stanclova@ruk.cuni.cz

41 4. kvantování koeficientů DCT –stanovení kvality → stupeň komprese –koeficienty F(u,v) vyděleny kvantizačním činitelem a zaokrouhleny kvantizační činitelé –stanoveny komisí JPEG → v tabulkách pro jednotlivé složky Y, C B a C R –stanoveny pro průměrnou kvalitu obrazu (cca 75%) koeficient kvality Q –zadává uživatel –rozsah 1 - 100 –koeficientem kvality Q upravena kvantizační tabulka → každý koeficient F(u,v) ve čtverci vydělen příslušným kvantizačním činitelem –kvantizační činitelé stejné pro celý obrázek –kvantizační činitelé uloženy do výstupního souboru pro zpětnou rekonstrukci obrazu –po kvantizaci: ?? 4. Kvantování koeficientů DCT 41/52 Jana Štanclová, jana.stanclova@ruk.cuni.cz

42 4. kvantování koeficientů DCT –stanovení kvality → stupeň komprese –koeficienty F(u,v) vyděleny kvantizačním činitelem a zaokrouhleny kvantizační činitelé –stanoveny komisí JPEG → v tabulkách pro jednotlivé složky Y, C B a C R –stanoveny pro průměrnou kvalitu obrazu (cca 75%) koeficient kvality Q –zadává uživatel –rozsah 1 - 100 –koeficientem kvality Q upravena kvantizační tabulka → každý koeficient F(u,v) ve čtverci vydělen příslušným kvantizačním činitelem –kvantizační činitelé stejné pro celý obrázek –kvantizační činitelé uloženy do výstupního souboru pro zpětnou rekonstrukci obrazu –po kvantizaci: čtverec 8×8 řídká matice s dominantním levým horním rohem 4. Kvantování koeficientů DCT 42/52 Jana Štanclová, jana.stanclova@ruk.cuni.cz

43 kvantizační činitelé 4. Kvantování koeficientů DCT 43/52 Jana Štanclová, jana.stanclova@ruk.cuni.cz

44 příklad –postupná změna hodnot kódování oblasti 8×8 pixelů –data = jasová složka Y 4. Kvantování koeficientů DCT 44/52 Jana Štanclová, jana.stanclova@ruk.cuni.cz

45 5. kódování –předchozí fáze: úprava matice 8×8, aby byla řídká s dominantním levým horním rohem (0,0) –fáze kódování: zakódování matice a zápis do výstupního souboru při kódování využit fakt, že většina koeficientů vpravo dole jsou 0 matice čísel převedena do posloupnosti posloupnost zakódována Huffmanovým kódem 5. Kódování 45/52 Jana Štanclová, jana.stanclova@ruk.cuni.cz

46 5. kódování –předchozí fáze: úprava matice 8×8, aby byla řídká s dominantním levým horním rohem (0,0) –fáze kódování: zakódování matice a zápis do výstupního souboru při kódování využit fakt, že většina koeficientů vpravo dole jsou 0 matice čísel převedena do posloupnosti posloupnost zakódována Huffmanovým kódem členy DC zapsány do výstupního souboru samostatně nejprve sdruženy DC členy z celého obrázku a poté kódovány jejich rozdílové hodnoty 5. Kódování 46/52 Jana Štanclová, jana.stanclova@ruk.cuni.cz

47 Komprese JPEG – příklad 47/52 Jana Štanclová, jana.stanclova@ruk.cuni.cz

48 výhody –vysoký stupeň komprese –možnost velmi rychlého náhledu (preview) na zakódovaný obrázek složky Y, C B, C R kódovány samostatně DC členy sdruženy do skupin a ukládány samostatně → preview: v souboru se najde sekce DC členů složky Y tyto DC členy se zobrazí jako odstíny šedi Kódování JPEG 48/52 Jana Štanclová, jana.stanclova@ruk.cuni.cz

49 Fraktální komprese fraktální komprese –moderní, rozvíjející se metoda –Michael F. Barnsley, 1993 –nesymetrická metoda čas_komprese >> čas_dekomprese princip metody –vyhledávání podobností (tvarových, barevných) v různě velkých částech obrazu = motivy podobnost → otočení, zmenšení/zvětšení, posun nalezeného motivu –motiv popsán 6 koeficienty –soubor ve formátu FIF (Fractal Image Format) zápis koeficientů podobnosti v komprimovaném tvaru 49/52 Jana Štanclová, jana.stanclova@ruk.cuni.cz

50 Algoritmus FIF klíčový problém metody –nacházení podobných oblastí (motivů) –reálné obrazy i počítačem generované oblasti → mnoho opakujících se detailů algoritmus FIF –rozdělování obrazu na menší různě velké části = domény –z nich pomocí různých transformací skládán celý obraz –velikost komprimovaného obrazu nepřímo úměrná velikosti domén 50/52 Jana Štanclová, jana.stanclova@ruk.cuni.cz

51 Výhody a nevýhody algoritmu FIF nevýhody –velmi dlouhá doba komprese minuty až desítky minut –závisí na požadovaném stupni komprese a kvalitě obrazu výhody –dekomprese: fraktální charakter dat umožňuje vytvořit obrázek s libovolně většími rozměry –příklad komprese najde úsečku y = ax +b iteračním postupem ji lze „rozvinout“ do libovolné přesnosti a bodového rozlišení 51/52 Jana Štanclová, jana.stanclova@ruk.cuni.cz

52 Srovnání algoritmů FIF a JPEG algoritmus FIF +lepší kvalita výsledných obrázků +krátká doba dekomprese –velmi dlouhá analýza obrazu před vlastní kompresí algoritmus JPEG +rozumně dlouhá doba komprese (v porovnání s FIF) –někdy horší kvalita výsledných obrázků optické zvýrazněné dělení obrázku na čtverce 8×8 52/52 Jana Štanclová, jana.stanclova@ruk.cuni.cz


Stáhnout ppt "RASTROVÝ OBRAZ JANA ŠTANCLOVÁ Obrázky (popř. slajdy) převzaty od RNDr. Josef Pelikán, CSc., KSVI MFF UK."

Podobné prezentace


Reklamy Google