Kompresní algoritmy grafiky. Jan Janoušek F11125



Podobné dokumenty
Kosinová transformace 36ACS

Komprese dat Obsah. Komprese videa. Radim Farana. Podklady pro výuku. Komprese videa a zvuku. Komprese MPEG. Komprese MP3.

13 Barvy a úpravy rastrového

KOMPRIMACE. aneb Aby to zabralo méně místa

Webové stránky. 16. Obrázky na webových stránkách, optimalizace GIF. Datum vytvoření: str ánk y. Vytvořil: Petr Lerch.

Identifikátor materiálu: ICT-1-19

KOMPRESE OBRAZŮ. Václav Hlaváč, Jan Kybic. Fakulta elektrotechnická ČVUT v Praze katedra kybernetiky, Centrum strojového vnímání.

aneb jak se to tam všechno vejde?

Rastrový obraz, grafické formáty

Druhy grafických formátů a jejich komprese

Počítačová grafika a vizualizace I

STRUKTURA RASTROVÝCH DAT

Komprese multimédií. Ing. Jan Přichystal, Ph.D. 7. října PEF MZLU v Brně

25. DIGITÁLNÍ TELEVIZNÍ SIGNÁL A KABELOVÁ TELEVIZE

Konverze grafických rastrových formátů

1 Komprese obrazových signálů

1. Formáty grafických dat

Formáty obrazu. David Bařina. 22. března David Bařina Formáty obrazu 22. března / 49

Počítačová grafika a vizualizace volné 3D modelování. Maxon CINEMA 4D. Mgr. David Frýbert, 2012

Maturitní téma: Počítačová grafika (rastrová a vektorová grafika, grafické programy, formáty)

ZÁPADOČESKÁ UNIVERZITA V PLZNI

Semestrální práce z předmětu KIV/MHS. Komprese statického obrazu pomocí MDCT


Moderní multimediální elektronika (U3V)

Informační systémy ve zdravotnictví

Grafika na počítači. Bc. Veronika Tomsová

BPC2E_C09 Model komunikačního systému v Matlabu

Komprese dat (Komprimace dat)

KOMPRESE OBRAZŮ. Václav Hlaváč. Fakulta elektrotechnická ČVUT v Praze katedra kybernetiky, Centrum strojového vnímání. hlavac@fel.cvut.

JPEG Formát pro archivaci a zpřístupnění.

Datové formáty videa a jejich využití. Tomáš Kvapil, Filip Le Manažerská informatika Multimédia

DIGITÁLNÍ VIDEO. pokus o poodhalení jeho neskutečné obludnosti (bez jednosměrné jízdenky do blázince)

Ing. Jan Buriánek. Katedra softwarového inženýrství Fakulta informačních technologií České vysoké učení technické v Praze Jan Buriánek, 2010

TECHNICKÁ UNIVERZITA V LIBERCI

GRAFICKÉ FORMÁTY V BITMAPOVÉ GRAFICE

Rastrová grafika. Grafický objekt je zaznamenán jednotlivými souřadnicemi bodů v mřížce. pixel ( picture element ) s definovanou barvou

Počítačová grafika SZŠ A VOŠZ MERHAUTOVA 15, BRNO

12 Metody snižování barevného prostoru

Rastrové grafické formáty. Václav Krajíček KSVI MFF UK, 2007

Komprese dat (KOD) Semestrální projekt Implementace RLE, BWT a LZW

Kompresní techniky. David Bařina. 15. února David Bařina Kompresní techniky 15. února / 37

Multimediální systémy. 03 Počítačová 2d grafika

Reprezentace bodu, zobrazení

Práce s obrazovým materiálem CENTRUM MEDIÁLNÍHO VZDĚLÁVÁNÍ. Akreditované středisko dalšího vzdělávání pedagogických pracovníků

III/ 2 Inovace a zkvalitnění výuky prostřednictvím ICT

Téma: Barevné modely, formáty souborů

Vodoznačení video obsahu

VIDEO DATOVÉ FORMÁTY, JEJICH SPECIFIKACE A MOŽNOSTI VYUŽITÍ SMOLOVÁ BÁRA

Registrační číslo projektu: CZ.1.07/1.5.00/ Elektronická podpora zkvalitnění výuky CZ.1.07 Vzděláním pro konkurenceschopnost

Počítačová grafika. OBSAH Grafické formy: Vektorová grafika Bitmapová (rastrová grafika) Barevné modely

UNIVERZITA JANA EVANGELISTY PURKYNĚ V ÚSTÍ NAD LABEM FAKULTA ŽIVOTNÍHO PROSTŘEDÍ. Katedra informatiky a geoinformatiky

Webové stránky. 6. Grafické formáty pro web. Datum vytvoření: str ánk y. Vytvořil: Petr Lerch.

Kurz digitální fotografie. blok 1 data/úpravy fotografií

MULTIMEDIÁLNÍ A HYPERMEDIÁLNÍ SYSTÉMY. 8. Uložení a komprese statického bitmapového obrazu

Algoritmizace prostorových úloh

Komprese obrazu. Úvod. Rozdělení metod komprese obrazů. Verze: 1.5, ze dne: 1. června Václav Hlaváč a Tomáš Svoboda

Komprese obrazu. Verze: 1.5, ze dne: 1. června Václav Hlaváč a Tomáš Svoboda

Obraz jako data. Biofyzikální ústav Lékařské fakulty Masarykovy univerzity Brno. prezentace je součástí projektu FRVŠ č.2487/2011

OSNOVA. 1. Definice zvuku a popis jeho šíření. 2. Rozdělení zvukových záznamů (komprese) 3. Vlastnosti jednotlivých formátů

ZPRACOVÁNÍ OBRAZU přednáška 4

Digitální magnetický záznam obrazového signálu

Vliv šumu na kompresi videa

Multimediální systémy

ztrátová odstraňuje zbytečné informace z obrazu. Různé druhy ztrátových kompresních metod se liší podle druhu odstraněných zbytečných informací.

Rastrová grafika. body uspořádané do pravidelné matice

Základy informatiky. 10 Počítačová grafika

Technická kybernetika. Obsah. Principy zobrazení, sběru a uchování dat. Měřicí řetězec. Principy zobrazení, sběru a uchování dat

Porovnání komprimačních metod grafických formátů z hlediska míry kvality obrazu

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY

VYUŽITÍ POČÍTAČOVÉ GRAFIKY

Inovace výuky prostřednictvím ICT v SPŠ Zlín, CZ.1.07/1.5.00/ Vzdělávání v informačních a komunikačních technologií

Pokročilé neparametrické metody. Klára Kubošová

IVT. Rastrová grafika. 8. ročník

Archivační a komprimační programy

Rastrový obraz Barevný prostor a paleta Zmenšení barevného prostoru Základní rastrové formáty

Středoškolská technika Algoritmus pro bezztrátovou kompresi dat

Psaní na mokrý papír. Andrew Kozlik KA MFF UK

Omezení barevného prostoru

Adobe Photoshop 18. Ukládání dokumentu formáty

PV156 Digitální fotografie Formáty souborů Tomáš Slavíček / Vít Kovalčík FI MU, podzim 2012

Komprese obrazů. Václav Hlaváč. České vysoké učení technické v Praze

Škola: Gymnázium, Brno, Slovanské náměstí 7 III/2 Inovace a zkvalitnění výuky prostřednictvím ICT Název projektu: Inovace výuky na GSN

Katedra radioelektroniky K13137, FEL ČVUT Praha. zakódování dané informace. Tento trend postihl i oblast záznamu a přenosu širokopásmových

Název práce: Komprimace dat prezentace

Charakteristiky zvuk. záznamů

Digitální učební materiál

Obrazovkový monitor. Antonín Daněk. semestrální práce předmětu Elektrotechnika pro informatiky. Téma č. 7: princip, blokově základní obvody

Barvy v digitální fotografii. Jaroslav Svoboda

CAD II přednáška č. 5. Grafické formáty PCX GIF TIFF BMP

DIPLOMOVÁ PRÁCE. Jan Ondruš Bezztrátová komprese JPEG grafiky

Binární data. Číslicový systém. Binární data. Klávesnice Snímače polohy, dotykové displeje, myš Digitalizovaná data odvozená z analogového signálu

Digitální audio zde se vysvětluje princip digitalizace zvukového záznamu, způsoby komprese uložení ztrátové a bezztrátové, obvyklé formáty atd.

Barvy a barevné modely. Počítačová grafika

1. ZÁKLADNÍ POJMY POČÍTAČOVÉ GRAFIKY

Analýza a zpracování digitálního obrazu

Zpracování obrazů. Honza Černocký, ÚPGM

Fungování předmětu. 12 vyučovacích hodin ve 3 blocích Evidence docházky Zápočtový test Aktuální informace a materiály na smetana.filmovka.

Zadání druhého zápočtového projektu Základy algoritmizace, 2005

Hodnocení metod komprese pro zpracování statických barevných fotografií

Hammingovy kódy. dekódování H.kódů. konstrukce. šifrování. Fanova rovina charakteristický vektor. princip generující a prověrková matice

Transkript:

Kompresní algoritmy grafiky Jan Janoušek F11125

K čemu je komprese dobrá? Pokud je třeba skladovat datově náročné soubory. Např. pro záznam obrazu, hudby a hlavně videa je třeba skladovat překvapivě mnoho dat. Při přenosu dat po síti. Zmenšením datové náročnosti se minimalizuje čas potřebný k přenosu.

Základní pojmy Data Jakékoliv fyzicky (materiálně) zaznamenané znalosti (vědomosti), poznatky, zkušenosti nebo výsledky pozorování procesů, projevů, činností a prvků reálného světa (reality). Surovina, z níž se tvoří informace. Zdroj: http://cs.wikipedia.org/wiki/data Informace Data která dávají smysl.

Základní pojmy Kompresní algoritmus Postup, který minimalizuje množství dat potřebné k popsání dané informace. Entropie Míra množství informace Všechny kompresní algoritmy využívají faktu, že data často obsahují řadu nadbytečných informací. S odstraňováním těchto redundantních informací se zvyšuje entropie dat.

Základní pojmy Kompresní poměr k Jedná se o poměr mezi velikostí dat po a před kompresí nebo o poměr zkomprimovaného datového toku k nezkomprimovanému. Kompresní zisk z Kompresní zisk je dán vztahem z=1-k a určuje tedy, kolik dat bylo kompresí ušetřeno. V případě, že kompresní algoritmus zvětší objem dat (kompresní poměr je větší, než jedna), je kompresní zisk záporný.

Základní pojmy Bezztrátový kompresní algoritmus Z komprimovaných dat lze získat původní data bez jakékoliv ztráty kvality. Obvykle méně účinná, než ztrátová komprese. Ztrátový kompresní algoritmus Z komprimovaných dat nelze zrekonstruovat původní data, protože při komprimaci dochází k určitému zkreslení. Při komprimaci grafiky se využívá znalostí psychovizuálního model.

Výhody/nevýhody Ztrátové Z komprimovaných dat nelze zrekonstruovat původní data Pro obrázky s vysokým počtem barev (fotky) lepší kompresní poměr Bezztrátové Nehodí se pro fotky a spol. Z komprimovaných dat lze zrekonstruovat původní data U obrázků z nízkým počtem barev obvykle lepší kompresní poměr i kvalita.

Bezztrátové kompresní algoritmy Slovníkové metody komprese Komprimovaná data jsou ukládána do slovníku. Při opakování dat, která jsou už ve slovníku obsažena, se místo dat samotných uvede odkaz na pozici ve slovníku Statistické metody komprese Statistické metody komprese jsou založeny na tom, že pro nejčastěji se vyskytující znaky jsou vytvářeny nejkratší odkazy. Ostatní metody komprese

Ostatní metody komprese RLE Vstup: wwwwwbwwwbbbbwbbbbbb Výstup: 5w1b3w4b1w6b Kompresní poměr (v tomto případě): 12 20 = 0,6 Vlastnosti RLE Velmi záleží na typu obrázku Záleží i na orientaci obrázku V některých případech může být i záporný kompresní zisk

Slovníkové metody komprese LZ77 Podle principu je nazývána metodou posuvného okna. Pro lepší vysvětlení předpokládejme, že budou data reprezentována řetězcem. Posuvné okno (sliding window) je rozděleno na část, kde už jsou zakódovaná data, a na část, kde jsou ta nezakódovaná. Kódování začíná nastavením sliding window na řetězec, který má být zakódován, tak, že část pro již zakódovaná data je prázdná a druhá část je naplněna řetězcem (netřeba celým). Hledá se shoda co nejdelšího řetězce (počínajíce rozmezím) z nezakódované části s řetězcem v zakódované části. V případě shody je nový podřetězec zakódován uspořádanou dvojicí (p, n), kde p je pozice prvního znaku v zakódované části, a n je délka shodného podřetězce. Zdroj: Foltýnek, Tomáš a Přichystal, Jan. Komprimace a šifrování.

Slovníkové metody komprese LZ77 Příklad: Vstupní text: leze leze po železe Výstupní text: leze l(2,3) po že(5,4) Zdroj: Foltýnek, Tomáš a Přichystal, Jan. Komprimace a šifrování. Zdroj: Večerka, Arnošt. Komprese dat

Slovníkové metody komprese LZW84 Použití: Gif, tiff, zip Na 20 let byl chráněn patentem Zdroj: Foltýnek, Tomáš a Přichystal, Jan. Komprimace a šifrování.

Statistické metody komprese Huffmanovo kódování Konvertuje znaky vstupního souboru do bitových řetězců různé délky. Znaky, které se ve vstupním souboru vyskytují nejčastěji, jsou konvertovány do bitových řetězců s nejkratší délkou (nejfrekventovanější znak tak může být konvertován do jediného bitu), znaky, které se vyskytují velmi zřídka, jsou konvertovány do delších řetězců (mohou být i delší než 8 bitů). Nejjednodušší metoda komprese touto metodou probíhá ve dvou fázích. První projde soubor a vytvoří statistiku četností každého znaku. Ve druhé fázi se využije této statistiky pro vytvoření binárního stromu a k následné kompresi vstupních dat. Zdroj: http://cs.wikipedia.org/wiki/huffmanovo_k%c3%b3dov%c3%a1n%c3%ad

Ztrátové kompresní algoritmy Ztrátové kompresní algoritmy se používají tam, kde nevadí určité zkreslení informací (obraz, audio, video). Psychovizuálním model pro obrazová data Psychoakustický model pro zvuková data

Psychoakustický model Klíčové znalosti pro ztrátovou kompresi obrazu: Lidské oko je mnohem citlivější na jas barvy, než na její odstín. Lidské oko má větší citlivost na nízké frekvence, než na vysoké. Při ztrátové kompresi jsou tedy přednostně komprimovány (a tedy zkreslovány) právě tyto informace.

Kompresní algoritmus JPEG Pro velké obrázky z mnoha barvami se bezztrátové komprimační algoritmy nehodí. Algoritmus využívá tzv. diskrétní kosinová transformace (DCT)

Kompresní algoritmus JPEG Metoda je vhodná především pro kódování fotografií, u nichž sousední pixely mají sice odlišné, ale přesto blízké barvy. Snižování kvality se projevuje potlačováním rozdílů v blízkých barvách. U metody DCT je kompresní poměr řízen požadavkem na výši kvality dekomprimovaného obrazu. V praxi se ukazuje, že snížení kvality na 75 % je pro většinu uživatelů nepozorovatelné, přitom kompresní poměr v takovém případě může být až 25:1. Zdroj: Foltýnek, Tomáš a Přichystal, Jan. Komprimace a šifrování.

Postup kompresního algoritmu 1. Transformace barev z barevného prostoru RGB do YCBCR kvůli aplikaci komprese využívající psychovizuálního modelu (barevné složky budou ve výsledku více zkreslené, než složky jasové) 2. Podvzorkování barevných složek redukce objemu dat zprůměrováním barevných složek sousedních pixelů

Postup kompresního algoritmu 3. Rozdělení obrazu na čtverce 8 8 4. Aplikace dopředné diskrétní kosinové transformace na prvky čtvercové matice vzniklé v minulém kroku

Postup kompresního algoritmu 5. Kvantování koeficientů matice v tomto kroku se určuje stupeň komprese obrazu) 6. Zkomprimování kvantovaných koeficientů pomocí Huffmanova kompresního algoritmu po předchozím kroku má mnoho prvků matice nulovou hodnotu

Transformace barev Transformace z barevného prostoru RGB do barevného prostoru YC B C R je přesně definována ve specifikaci JFIF, ve které jsou uvedeny jak rovnice pro převod z barevného prostoru RGB do YC B C R, tak rovnice pro převod inverzní.

Transformace barev Specifikace předpokládá, že složky RGB a YC B C R jsou reprezentovány jako celá čísla v rozsahu 0 až 255. Ačkoliv tato transformace je v principu bezztrátová, tyto samotné převody jsou do určité míry ztrátové, protože dochází k zaokrouhlování výsledků na celá čísla.

YC B C R Jasová složka barvy Y (luma) Na tuto složku je lidské oko nejvíce citlivé a podléhá tedy nejmenší kompresi. Y = 0,299R + 0,587G + 0,114B Barevné složky C B a C R (chroma) Barevné složky pro modrou a červenou barvu. C B = 0,1687R 0,3313G + 0,5B + 128 C R = 0,5R 0,4187G + 0,0813B + 128 Barevná složka pro zelenou se neuvádí, protože je jí možno z Y, C B a C R dopočítat.

Zpětný převod R = Y + 1,402 C R 128 G = Y 0,34414 C B 128 0,71414 C R 128 B = Y + 1,772 C B 128

Podvzorkování barevných složek Protože lidské oko je mnohem méně citlivé na barvy, než na jas, využívá se podvzorkování (nebo také redukce) barvonosných složek pro zvýšení efektivity kompresního algoritmu. Jedná se o první významněji ztrátový převod, protože informace o barvách v tomto procesu zanikají.

Podvzorkování barevných složek Podvzorkování funguje tak, že z hodnot barevných složek sousedních pixelů je spočítána průměrná hodnota. Jsou přípustné dvě možnosti:

Podvzorkování barevných složek Průměrování hodnot dvou sousedních pixelů na řádku. Úspora dat ze 6 bytů na 4, kompresní poměr tedy asi 67%. Průměrování hodnot pixelů tvořící čtverec 2 2 Úspora dat ze 12 bytů na 6, kompresní poměr tedy 50%.

Rozdělení obrazu na čtverce 8 8 Obrázek je rozdělen na čtvercové bloky o rozměrech 8 8 pixelů. Tohoto rozdělení lze později využít pro rychle generování náhledového obrázku.

Rozdělení obrazu na čtverce 8 8 Pokud není výška nebo šířka obrázku dělitelná osmi, je nutné tyto okrajové bloky vhodně doplnit do požadovaného rozměru 8 8 pixelů. Způsob doplnění je ponechán na konkrétním software, který obrázek zpracovává. Obvykle se používá zrcadlení již existujících pixelů.

Aplikace dopředné diskrétní kosinové transformace Nyní máme matici 8 8 pixelů, kde každý prvek této matice obsahuje informaci o jasu (složka Y) a o barvě (složky CB a CR). Od všech jednotlivých složek se odečte hodnota 128, čímž se přetransformuje jejich rozsah do intervalu -128 až 127

Aplikace dopředné diskrétní kosinové transformace Jednotlivé složky se budou nyní dopřednou DCT zpracovávat samostatně. DCT je nutno provést celkem třikrát: jednou pro jasovou složku Y a dvakrát pro barevné složky C B a C R. Účelem DCT je přetransformovat tuto matici do matice nové, ve které budou, z hlediska lidského vnímání, nejdůležitější prvky uvedeny v levém horním rohu a směrem k rohu levému bude jejich důležitost klesat.

Aplikace dopředné diskrétní kosinové transformace Transformace se pro jednotlivé prvky provádí pomocí rovnice: C i, C j N Funkce, pro které platí: C 0 = 1 a C i = C j = 1 pro i, j 0 2 Rozměr matice. V tomto případě tedy platí N = 8. f m, n Hodnota matice v bodě m, n.

Aplikace dopředné diskrétní kosinové transformace Výsledkem transformace je matice, která v levém horním rohu obsahuje tzv. stejnosměrný koeficient (DC), u něhož jsou hodnoty Y, C B a C R průměrné celého bloku matice.

Aplikace dopředné diskrétní kosinové transformace Výsledkem transformace je matice, která v levém horním rohu obsahuje tzv. stejnosměrný koeficient (DC), u něhož jsou hodnoty Y, C B a C R průměrné celého bloku matice.

Aplikace dopředné diskrétní kosinové transformace Ostatní koeficienty jsou tzv. střídavé (AC). Čím vyšší frekvenci tyto koeficienty mají, tím je jejich důležitost nižší a mohou se v následujícím kroku více zkomprimovat (a tedy více zkreslit jejich hodnota).

Kvantování koeficientů matice Až na proces podvzorkování barvonosných složek dosud algoritmus dosud neprováděl žádnou kompresi. Ta nejdůležitější část komprese kvantování koeficientů tabulky se provádí právě zde.

Kvantování koeficientů matice Z předchozího kroku je připravena matice, která má v určité části důležité koeficienty a v jiné méně důležité až téměř nevýznamné. Každý prvek této matice se celočíselně vydělí hodnotami z tzv. kvantizační tabulky.

Kvantování koeficientů matice Kvantizační tabulky obsahují nízké hodnoty u důležitých členů (nízkofrekvenčních) a vysoké hodnoty u důležitých členů (vysokofrekvenčních). Po tomto procesu tedy vzniknou u vysokofrekvenčních prvků převážně nuly. Zdroj: http://www.root.cz/clanky/p rogramujeme-jpegkvantizace-dct-koeficientu/

Kvantování koeficientů matice Výsledná kvalita závisí převážně na použité kvantizační tabulce. Proto obvykle existují pro různé stupně komprese různé tabulky. Kvantizační tabulky nejsou dány normou, a proto každý výrobce softwaru může zvolit vlastní sadu kvantizačních tabulek.

Kvantování koeficientů matice Často aplikace neobsahuje pro každý stupeň komprese specifickou kvantizační tabulku. Tento problém se řeší pomocí lineární interpolace ze známých příslušných hodnot ostatních kvantizačních tabulek.

Kvantování koeficientů matice Zdroj: http://www.root.cz/clanky/programujeme-jpeg-kvantizace-dctkoeficientu/

Zkomprimování kvantovaných koeficientů V aktuálním stavu obsahuje kvantovaný blok 8 8 pixelů mnoho pixelů v části vysokofrekvenčních členů. Tento blok nyní stačí už pouze zkomprimovat pomocí Huffmanova kompresního algoritmu.

Zkomprimování kvantovaných koeficientů Matice je komprimována postupně cik-cak od členu s nejnižší frekvencí (stejnosměrný člen DC) po člen s nejvyšší frekvencí. Tímto postupem Huffmanovo kódování dosáhne nejvyšší účinnosti díky opakování mnoha nul po sobě. Zdroj: http://www.root.cz/clan ky/programujeme-jpegkvantizace-dctkoeficientu/

Zkomprimování kvantovaných koeficientů Tímto krokem je samotná komprimace dokončena. Nyní zbývá už jen data uložit v podobě dle specifikace, přidat hlavičku a ostatní metadata (EXIF, IPTC apod.).

Zdroje 1. Foltýnek, Tomáš a Přichystal, Jan. Komprimace a šifrování. *Online+ *Citace: 6. 4 2012.] https://akela.mendelu.cz/~foltynek/kas/elearning/kas_pdf.pdf. 2. Večerka, Arnošt. Komprese dat. *Online+ 2008. *Citace: 6. 4 2012.+ phoenix.inf.upol.cz/esf/ucebni/komprese.pd. 3. Tišnovský, Pavel. Programujeme JPEG: diskrétní kosinová transformace (DCT). Root.cz. [Online] 4. 1 2007. [Citace: 6. 4 2012.] http://www.root.cz/clanky/programujeme-jpeg-diskretni-kosinova-transformacedct/. 4.. Programujeme JPEG: Kvantizace DCT koeficientů. Root.cz. *Online+ 11. 1 2007. [Citace: 6. 4 2012.] http://www.root.cz/clanky/programujeme-jpeg-kvantizacedct-koeficientu/. 5. Bařina, David. Ztrátová komprese obrazu. FIT VUT Brno. *Online+ 2007. *Citace: 6. 4 2012.] www.fit.vutbr.cz/study/dp/rpfile.php?id=5779. 6. Data compression ratio. Wikipedia. [Online] [Citace: 6. 4 2012.] http://en.wikipedia.org/wiki/data_compression_ratio. 7. Komprese Dat. Wikipedia. [Online] [Citace: 1. 4 2012.] http://cs.wikipedia.org/wiki/komprese_dat.