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

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

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

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

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

Kompresní metody první generace

1. Vlastnosti diskretních a číslicových metod zpracování signálů... 15

Informační systémy ve zdravotnictví

Kosinová transformace 36ACS

Jasové transformace. Karel Horák. Rozvrh přednášky:

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

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

Komprese dat. Jan Outrata KATEDRA INFORMATIKY UNIVERZITA PALACKÉHO V OLOMOUCI. přednášky

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


Kompresní algoritmy grafiky. Jan Janoušek F11125

Restaurace (obnovení) obrazu při známé degradaci

Komprese dat (Komprimace dat)

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

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

Obraz matematický objekt. Spojitý obraz f c : (Ω c R 2 ) R

NOVÉ METODY HODNOCENÍ OBRAZOVÉ KVALITY

STRUKTURA RASTROVÝCH DAT

Algoritmy komprese dat

Omezení barevného prostoru

Úvod do teorie informace

Základní principy přeměny analogového signálu na digitální

Geometrické transformace

ZÁPADOČESKÁ UNIVERZITA V PLZNI

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

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

Operace s obrazem. Biofyzikální ústav LF MU. Projekt FRVŠ 911/2013

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

Filtrace obrazu ve frekvenční oblasti

Multimediální systémy

DETEKCE HRAN V BIOMEDICÍNSKÝCH OBRAZECH

Metodické listy pro kombinované studium předmětu. B_PPG Principy počítačové grafiky

Úvod do zpracování signálů

Kybernetika a umělá inteligence, cvičení 10/11

13 Barvy a úpravy rastrového

Komprese dat s použitím wavelet transformace

Tajemství skalárního součinu

Popis objektů. Karel Horák. Rozvrh přednášky:

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

UČENÍ BEZ UČITELE. Václav Hlaváč

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

[1] samoopravné kódy: terminologie, princip

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

Circular Harmonics. Tomáš Zámečník

Jan Kaiser ČVUT, Fakulta elektrotechnická, katedra Radioelektroniky Technická 2, Praha 6

1. Základy teorie přenosu informací

Lineární a adaptivní zpracování dat. 1. ÚVOD: SIGNÁLY a SYSTÉMY

Jasové a geometrické transformace

Teorie informace: řešené příklady 2014 Tomáš Kroupa

1 Základní funkce pro zpracování obrazových dat

Kvantové algoritmy a bezpečnost. Václav Potoček

Transformace obrazu Josef Pelikán KSVI MFF UK Praha

MKI Funkce f(z) má singularitu v bodě 0. a) Stanovte oblast, ve které konverguje hlavní část Laurentova rozvoje funkce f(z) v bodě 0.

Analýza textury. Radim Šára Centrum strojového vnímání FEL ČVUT. DZO, R. Šára

Informace v počítači. Výpočetní technika I. Ing. Pavel Haluza ústav informatiky PEF MENDELU v Brně haluza@mendelu.cz

Klasifikace a rozpoznávání. Extrakce příznaků

Metody zvýrazňování obrazu III. Vícepásmová zvýraznění. Spektrální příznaky. Příznakový prostor. Podstata vícepásmových zvýraznění

Jana Dannhoferová Ústav informatiky, PEF MZLU

11MAMY LS 2017/2018. Úvod do Matlabu. 21. února Skupina 01. reseni2.m a tak dále + M souborem zadané funkce z příkladu 3 + souborem skupina.

Komprese obrazu. Multimedia Technology Group, K13137, FEE CTU 0

MATICE. a 11 a 12 a 1n a 21 a 22 a 2n A = = [a ij]

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

Neparametrické odhady hustoty pravděpodobnosti

Datové struktury 2: Rozptylovací tabulky

Teorie informace a kódování (KMI/TIK) Reed-Mullerovy kódy

Jak v Javě primitivní datové typy a jejich reprezentace. BD6B36PJV 002 Fakulta elektrotechnická České vysoké učení technické

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

Osnova přednášky. Informace v počítači. Interpretace dat. Údaje, data. Úvod do teorie informace. Výpočetní technika I. Ochrana dat

Konverze grafických rastrových formátů

UNIVERZITA PARDUBICE. 4.4 Aproximace křivek a vyhlazování křivek

Základy a aplikace digitálních. Katedra radioelektroniky (13137), blok B2, místnost 722

1. Přednáška: Obecné Inf. + Signály a jejich reprezentace

Úloha - rozpoznávání číslic

Informatika Kódování. Obsah. Kód. Radim Farana Podklady předmětu Informatika pro akademický rok 2007/2008

Strukturální regresní modely. určitý nadhled nad rozličnými typy modelů

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

Komprese dat. Jan Outrata KATEDRA INFORMATIKY UNIVERZITA PALACKÉHO V OLOMOUCI. přednášky

Odhad stavu matematického modelu křižovatek

PRINCIPY POČÍTAČOVÉ GRAFIKY

Motivace příklad použití lokace radarového echa Význam korelace Popis náhodných signálů číselné charakteristiky

Zpracování digitalizovaného obrazu (ZDO) - Popisy III

Kde a jak může být lineární algebra užitečná v praxi.

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

Multimediální systémy

Lineární a adaptivní zpracování dat. 2. SYSTÉMY a jejich popis v časové doméně a frekvenční doméně

MĚŘENÍ A ANALÝZA ELEKTROAKUSTICKÝCH SOUSTAV NA MODELECH. Petr Kopecký ČVUT, Fakulta elektrotechnická, Katedra Radioelektroniky

Úvod do informatiky. Miroslav Kolařík. Zpracováno dle učebního textu R. Bělohlávka: Úvod do informatiky, KMI UPOL, Olomouc 2008.

Matematická morfologie

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í.

Lineární a adaptivní zpracování dat. 2. SYSTÉMY a jejich popis v časové doméně a frekvenční doméně

Základy teorie pravděpodobnosti

Lineární a adaptivní zpracování dat. 1. ÚVOD: SIGNÁLY, ČASOVÉ ŘADY a SYSTÉMY

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

KTE/TEVS - Rychlá Fourierova transformace. Pavel Karban. Katedra teoretické elektrotechniky Fakulta elektrotechnická Západočeská univerzita v Plzni

Vektory a matice. Obsah. Aplikovaná matematika I. Carl Friedrich Gauss. Základní pojmy a operace

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

Transkript:

Komprese obrazů Václav Hlaváč České vysoké učení technické v Praze Český institut informatiky, robotiky a kybernetiky 166 36 Praha 6, Jugoslávských partyzánů 1580/3 http://people.ciirc.cvut.cz/hlavac, vaclav.hlavac@cvut.cz také z Centra strojového vnímání, http://cmp.felk.cvut.cz Poděkování: Tomáš Svoboda, Jan Kybic Osnova přednášky: Ztrátová komprese v prostoru obrazů. Redundance a irelevance; 1D a 2D. Kroky komprese obrazu. Entropie a komprese. Optimální kódování. Vypouštění pixelů a náhrada. Prediktivní komprese, např. DCPM. Komprese v transformovaném prostoru. Např. JPEG, Wavelets komprese.

Komprese obrazů, úvod 2/59 Cíl: Zmenšení množství dat potřebných k reprezentaci obrazu. Spotřebované množství paměti se měří například v bitech. Použití: Pro přenos a uchování dat. Proč se liší komprese 2D obrazů od komprese 1D dat? Digitalizovaný obraz se chápe jako dvojrozměrná struktura (matice) náhodných vzorků. Matematicky řečeno: Cílem je převést matici jasů (nebo 3 matice s barevnými složkami) do jiné reprezentace, v níž jsou obrazová data méně statisticky závislá (zhruba řečeno, méně korelovaná).

Proč je možná komprese obrazů? 3/59 Obrazy nejsou náhodné. Nejsou většinou pouze náhodným šumem. V obrazech je nadbytečnost (redundance). Hodnotu obrazové funkce lze z hodnot v okolí předpovídat. Hodnoty obrazové funkce nejsou rozděleny rovnoměrně. Mezi hodnotami obrazové jsou plošné závislosti (korelace), velmi často se projevují lokálně, někdy i globálně (např. u některých textur). U barevných obrazů jsou mezi jejich jednotlivými barevnými kanály statistické závislosti. Ne všechny detaily jsou obrazech potřebné, když je bude pozorovat člověk. Vizuální subsystém člověka mnohé detaily není schopen vnímat.

Možné čtení 4/59 Anil Jain: Fundamentals of Digital Image Processing, 1989. M. Sonka, V. Hlaváč, R. Boyle R.: Image Processing, Analysis, and Machine Vision, 2015, 4th edition. T. Svoboda, J. Kybic, V. Hlaváč: Image Processing, Analysis, and Machine Vision, A MATLAB Companion, 2007. http://visionbook.felk.cvut.cz

Podvzorkování, motivace pro kompresi obrázků 5/59 Snížení prostorového rozlišení obrazu. Jednoduchá, ztrátová metoda komprese, která se obvykle hodí pro web nebo zobrazování na monitoru s omezeným prostorovým rozlišením. Lze vylepšit pokročilejší interpolací, např. pomocí B-splajnů.

Snížení rozlišení, příklad (1) 6/59 Original size, 3456 5184, 859 kb (stored as JPEG with quality 75).

Snížení rozlišení, příklad (2) 7/59 Downsampled 2, 1728 2592, 237 kb.

Snížení rozlišení, příklad (3) 8/59 Downsampled 4, 864 1296, 75 kb.

Snížení rozlišení, příklad (4) 9/59 Downsampled 8, 432 648, 27 kb.

Snížení rozlišení, příklad (5) 10/59 Downsampled 16, 216 324, 10 kb.

Snížení rozlišení, příklad (6) 11/59 Downsampled 16, 216 324, 10 kb, bicubic interpolation.

Snížení rozlišení, příklad (7) 12/59 Downsampled 32, 108 162, 4.2 kb.

Snížení rozlišení, příklad (8) 13/59 Downsampled 32, 108 162, 4.2 kb, bicubic interpolation.

Redundance v kódování Redundance, irelevance Základní princip: častěji se opakující symbol se kóduje kratším kódovým slovem než řídčeji se opakující symbol. Optimální kódování: Huffmanovo a aritmetické kódování. Redundance mezi pixely, modeluje se a jen residuum vůči modelu se kóduje, protože má menší rozptyl. Různé modely, např.: Lineární integrální transformace obrazu, např. Fourierova, kosinová či vlnková. Prediktivní modely, např. lineární kombinace několika předchozích vzorků. Úsporné algoritmy generování obrazu, např. fraktální. Irelevance z hlediska vnímání člověkem Nezobrazit např. všechny jasové úrovně, barvy nebo frekvence (obvykle vysoké). 14/59

Rozdělení metod komprese obrazů 15/59 1. Založené na interpretaci dat je potřebná segmentace obrazu. Metody jsou závislé na sémantice dat. Dosahuje se nejvyšších kompresních poměrů. Dekomprese nezíská původní obraz zcela. 2. Bez interpretace dat odstranění redundantní a irelevantní informace. Lze použít na libovolný obraz, a to bez ohledu na jeho sémantiku. Využívá se statistických nadbytečností v obraze a (případně) irelevance některé informace pro lidské vnímání.

Dvě třídy metod bez interpretace ztrátové a bezeztrátové 16/59 Dvě velké třídy používaných postupů: 1. Bezeztrátové metody, odstraňují redundanci. Odstraňují pouze statistickou nadbytečnost. Umožňují úplnou rekonstrukci výchozího signálu/obrazu. 2. Ztrátové metody, odstraňují irelevantní informaci. Nevratně odstraňují část informace, která má v daném kontextu malý význam (např. vysoké frekvence, jasové detaily nepostřehnutelné lidským okem). Umožňují pouze částečnou rekonstrukci výchozího signálu/obrazu.

Komprese obrazu a jeho zpětná rekonstrukce 17/59 obraz x transformace y=t( x) vzorky y kvantování q =Q( y) kódování c =C( q) indexy q posloupnost bitů c dekódování q =C ( ) -1 c indexy q odstranění kvantování y ^ -1 =Q ( q) vzorky y^ inverzní transformace x ^ -1 =T ( y^ ) rekonstruovaný obraz x^ Transformace T odstraňuje redundanci a je obvykle invertovatelná. Např.: kosínová transformace, kódování úseky řádků (RLE). Kvantování Q odstraňuje irelevanci a není invertovatelné. Např.: Zanedbání koeficientů kosínové transformace odpovídajících vysokým frekvencím. Kódování C a dekódování C 1 je invertovatelné a bezeztrátové.

Teorie informace a redundance 18/59 Entropie ve fyzice je měrou energie soustavy, která není k dispozici k vykonání práce. Jelikož práci lze získat z řádu soustavy, je entropie měrou neuspořádanosti soustavy. Souvisí s druhou termodynamickou větou. Pojem zavedl v roce 1850 německý fyzik Rudolf Clausius (1822-1888, jeden ze zakladatelů termodynamiky). Entropie v teorii informace, Claude Shannon, 1948 H e = i p i log 2 p i [bitů], kde p i je pravděpodobnost i-tého symbolu ve zprávě.

Entropie, dva příklady Nechť jsou ve zprávě jen dva znaky a, b. 19/59 Příklad 1 p(a) = p(b) = 1 2 H = ( 1 2 log 2 1 2 + 1 2 log 2 ) 1 2 = ( 1 2 1 + 1 ) 2 1 = 1 Příklad 2 p(a) = 0, 99; p(b) = 0, 01 H = (0, 99 log 2 0, 99 + 0, 01 log 2 0, 01) = (0.99 ( 0, 0145) + 0, 01 ( 6, 6439)) = 0, 0144 + 0, 0664 = 0, 0808

Entropie pro šedotónový obraz 20/59 Nechť obraz má G jasových úrovní, k = 0... G 1 s pravděpodobnostmi P (k). Entropie H e = k P (k) log 2 P (k) [bitů], Nechť b je nejmenší počet bitů, kterým lze reprezentovat počet kvantizačních úrovní. Informační redundance r = b H e.

Odhad entropie z histogramu obrazu 21/59 Nechť h(k), 0 k 2 b 1 a M, N jsou rozměry obrazu. Odhad pravděpodobnosti ˆP = h(k) M N. Odhad entropie Ĥ e = 2 b 1 ˆP (k) log 2 ˆP (k) [bitů] k Poznámka: Odhad entropie je příliš optimistický. Ve skutečnosti je entropie nižší, protože mezi jasy jednotlivých pixelů obrazu existují statistické závislosti (redundance).

Ilustrace redundance mezi pixely 22/59 Histogram Normalizovaná autokorelace

Tři definice kompresního poměru 23/59 1. Na základě redundance (měřené entropií) K = b Ĥ e 2. Na základě úspory paměti κ = n 1 n 2 = délka zprávy před kompresí délka zprávy po kompresi 3. Relativní úspora paměti R = 1 1 κ Příklad 1: n 1 = n 2 κ = 1, R = 0. Příklad 2: n 1 : n 2 = 10 : 1 κ = 10, R = 0, 9 = 90%.

Ohodnocování věrnosti komprese 24/59 f(x,y) komprese komprimovaný obrázek dekomprese f(x,y) Rekonstruovaný obraz (odhad) ˆf(x, y) = f(x, y) + e(x, y), kde f(x, y) je výchozí obrázek a e(x, y) je chyba rekonstrukce (také residuum) po kompresi. Zde se zkoumá otázka: Jak blízko jsou si f(x, y) a ˆf(x, y)? Kritéria pro ohodnocování věrnosti komprese: Subjektivní: závisí na lidském pozorovateli, používané v televizi; snadná a prakticky používaná metoda je diferenční obrázek. Objektivní: počítají se matematicky. Snaha nahradit subjektivní metody.

Měření ztrátovosti komprese 25/59 Nechť u 1,..., u n je výchozí posloupnost a u 1,..., u n ztrátově komprimovaná posloupnost Středně kvadratická chyba (Mean Square Error, MSE) MSE = 1 n n i=1 ( ) u i u 2 i Poměr signálu k šumu (Signal to Noise Ratio, SNR) SNR = 10 log 10 P 2 kde P je interval hodnot vstupní posloupnosti, P = max{u 1,..., u n } - min{u 1,..., u n }. MSE 2 [db],

Měření ztrátovosti komprese (2) 26/59 Špičkový poměr signálu k šumu (Peak-Signal to Noise Ratio, PSNR) PSNR = 10 log 10 M 2 MSE 2, kde M je maximální interval hodnot vstupní posloupnosti, tj. 256 pro osmibitový vstup a 65356 pro šestnáctibitový vstup. V praxi se používá zejména SNR a PSNR. Výraz MSE slouží jako pomocný pro definici SNR a PSNR.

Huffmanovo kódování, z roku 1952 27/59 Vstup: symboly s pravděpodobností jejich výskytu; zpráva. Výstup: optimálně zakódovaná zpráva. Prefixový kód, tj. žádné kódové slovo nemůže být prefixem žádného jiného kódového slova. Umožňuje dekódování, aniž by se znala délka jednotlivých slov. Postup: podle pravděpodobností výskytu symbolů se zdola nahoru se vytváří binární (Huffmanův) strom. Tento strom potom slouží ke generování zakódované zprávy. Celočíselný počet bitů na symbol. Nechť b je průměrný počet bitů na symbol. Potom průměrná délka kódového slova je L, H(b) L H(b) + 1

Huffmanovo kódování, příklad 28/59 Vstup: zprávy obsahují osm symbolů s pravděpodobnostmi výskytu s 0 s 1 s 2 s 3 s 4 s 5 s 6 s 7 0.12 0.26 0.3 0.15 0.1 0.03 0.02 0.02 s = 2 2 s = 1 1 s = 3 3 s = 0 0 s = 4 4 s = 5 5 s = 6 6 s = 7 7 0.3 0.26 0.15 0.12 0.1 0.03 0.02 0.02

Huffmanovo kódování, příklad 29/59 Vstup: zprávy obsahují osm symbolů s pravděpodobnostmi výskytu s 0 s 1 s 2 s 3 s 4 s 5 s 6 s 7 0.12 0.26 0.3 0.15 0.1 0.03 0.02 0.02 s = 2 2 s = 1 1 s = 3 3 s = 0 0 s = 4 4 s = 5 5 s = 6 6 s = 7 7 0.3 0.26 0.15 0.12 0.1 0.03 0.02 0.02 0.04

Huffmanovo kódování, příklad 30/59 Vstup: zprávy obsahují osm symbolů s pravděpodobnostmi výskytu s 0 s 1 s 2 s 3 s 4 s 5 s 6 s 7 0.12 0.26 0.3 0.15 0.1 0.03 0.02 0.02 s = 2 2 s = 1 1 s = 3 3 s = 0 0 s = 4 4 s = 5 5 s = 6 6 s = 7 7 0.3 0.26 0.15 0.12 0.1 0.03 0.02 0.02 0.04 0.07

Huffmanovo kódování, příklad 31/59 Vstup: zprávy obsahují osm symbolů s pravděpodobnostmi výskytu s 0 s 1 s 2 s 3 s 4 s 5 s 6 s 7 0.12 0.26 0.3 0.15 0.1 0.03 0.02 0.02 s = 2 2 s = 1 1 s = 3 3 s = 0 0 s = 4 4 s = 5 5 s = 6 6 s = 7 7 0.3 0.26 0.15 0.12 0.1 0.03 0.02 0.02 0.04 0.07 0.17

Huffmanovo kódování, příklad 32/59 Vstup: zprávy obsahují osm symbolů s pravděpodobnostmi výskytu s 0 s 1 s 2 s 3 s 4 s 5 s 6 s 7 0.12 0.26 0.3 0.15 0.1 0.03 0.02 0.02 s = 2 2 s = 1 1 s = 3 3 s = 0 0 s = 4 4 s = 5 5 s = 6 6 s = 7 7 0.3 0.26 0.15 0.12 0.1 0.03 0.02 0.02 0.27 0.04 0.07 0.17

Huffmanovo kódování, příklad 33/59 Vstup: zprávy obsahují osm symbolů s pravděpodobnostmi výskytu s 0 s 1 s 2 s 3 s 4 s 5 s 6 s 7 0.12 0.26 0.3 0.15 0.1 0.03 0.02 0.02 s = 2 2 s = 1 1 s = 3 3 s = 0 0 s = 4 4 s = 5 5 s = 6 6 s = 7 7 0.3 0.26 0.15 0.12 0.1 0.03 0.02 0.02 0.27 0.04 0.07 0.17 0.43

Huffmanovo kódování, příklad 34/59 Vstup: zprávy obsahují osm symbolů s pravděpodobnostmi výskytu s 0 s 1 s 2 s 3 s 4 s 5 s 6 s 7 0.12 0.26 0.3 0.15 0.1 0.03 0.02 0.02 s = 2 2 s = 1 1 s = 3 3 s = 0 0 s = 4 4 s = 5 5 s = 6 6 s = 7 7 0.3 0.26 0.15 0.12 0.1 0.03 0.02 0.02 0.27 0.04 0.07 0.17 0.57 0.43

Huffmanovo kódování, příklad 35/59 Vstup: zprávy obsahují osm symbolů s pravděpodobnostmi výskytu s 0 s 1 s 2 s 3 s 4 s 5 s 6 s 7 0.12 0.26 0.3 0.15 0.1 0.03 0.02 0.02 s = 2 2 s = 1 1 s = 3 3 s = 0 0 s = 4 4 s = 5 5 s = 6 6 s = 7 7 0.3 0.26 0.15 0.12 0.1 0.03 0.02 0.02 0.27 0.04 0.07 0.17 0.57 0.43 1.0

Huffmanovo kódování, příklad přeuspořádání stromu 36/59 Důvod: aby se větve stromu nekřížily. Kódování: u větvení stromu 0, 1. Coding/decoding 110000011010 { { { { { 4 0 2 1 1

Komprese segmentovaných (interpretovaných) obrazových dat 37/59 Tytéž metody se používají pro binární obrazy, protože je lze chápat jako výsledek segmentace. Jedničky v obraze odpovídají objektům a nuly pozadí (nebo opačně). Rozdělení metod: Reprezentace hranice oblasti řetězovým kódem, zvláštní případ polygonální aproximace hranice (bezeztrátová komprese). Aproximace hranice oblasti polygonální křivkou, také nazýváno vektorizace hranice nebo křivky (ztrátová komprese). Kódování oblasti úseky řádků of regions (bezeztrátová komprese). Koutková komprese (bezeztrátová), dovoluje realizovat množinové operace a několik dalších přímo v komprimovaném tvaru. Navrhl M.I. Schlesinger v 1986, V. Hlaváč má o metodě samostatnou přednášku.

Řetězový kód hranice oblasti Řetězový kód (H. Freeman 1961) je zvláštní případ náhrady hranice oblasti polygonem. Jednotlivé úsečky odpovídající 4, 8, 6-sousedům mají délku 1. Je zadán počáteční bod hranice, např. levý horní pixel. Předpokládá se směr obcházení hranice proti směru hodinových ručiček. Rychlá implementace: vyjádří se 3 3 okolí okamžitého pixelu a řetězový kód se najde ve vyhledávací tabulce. Nevýhoda: řetězový kód závisí na zvoleném počátečním bodě. 4-okolí 8-okolí 38/59 direction start direction start 1 3 2 1 2 0 4 0 3 Řetězový kód: 3 2 3 0 0 3 0 1 1 2 1 2 5 7 6 Řetězový kód: 5 6 0 7 0 2 2 3 4

Derivace dd řetězového kódu 39/59 Derivace dd (také první diference) řetězového kódu je invariantní vůči pootočení o 90 o pro 4-okolí nebo o 45 o pro 8-okolí. Derivace dd = počtu kroků pootočení proti směru hodinových ručiček pro natočení z předchozího směru d old do nového směru d new. 4-okolí 1 8-okolí 3 2 1 direction 2 0 direction 4 0 if d new d old then dd = d new d old 3 5 6 7 if d new < d old then dd = 4 + d new d old if d new d old then dd = d new d old if d new < d old then dd = 8 + d new d old

Derivace řetězového kódu dd, příklad 40/59 4-okolí 8-okolí direction start direction start 1 3 2 1 2 0 4 0 3 5 6 7 if d new d old then dd = d new d old if d new < d old then dd = 4 + d new d old if d new d old then dd = d new d old if d new < d old then dd = 8 + d new d old Řetězový kód: 3 2 3 0 0 3 0 1 1 2 1 2 Derivace dd: 3 1 1 0 3 1 1 0 1 3 1 1 Řetězový kód: 5 6 0 7 0 2 2 3 4 Derivace dd: 1 2 7 1 2 0 1 1 1

Aproximace hranice oblasti polygonální křivkou 41/59 Douglas-Peuckerův rekursivní algoritmus

Kódování oblastí úseky řádků 42/59 Angl. Run Length Encoding, RLE. Kódem je seznam seznamů. Vnější seznam obsahuje několik vnitřních seznamů. Každý z nich popisuje jeden řádek obrazu obsahující černé pixely. 0 1 2 0 1 Příklad: 2 3 4 5 6 Každý vnitřní seznam popisuje jeden řádek, ale jen ty obsahující černé pixely. První prvek v seznamu je číslo řádku (v našem příkladě je modré). 3 4 5 6 Zbývající prvky vnitřního seznamu jsou dvojice čísel. První číslo dvojice je číslo sloupce, v němž začíná spojitý úsek pixelů. Druhé číslo ve dvojici je číslo sloupce, v němž spojitý úsek končí. Kódování RLE: ((11144)(214)(52355)) RLE používá FAX (norma CCITT Group 3).

Ztrátová komprese, rozdělení přístupů 43/59 Tři hlavní přístupy ke ztrátové kompresi obrazů: 1. Komprese dat v prostoru obrazů, tj. odstranění mnoha pixelů v obraze a vyplňování vzniklých děr pomocí doplňování angl. inpainting. 2. Použití prediktoru, který aproximuje hodnotu pixelu z několika minulých vzorků pixelů. Metoda bude bezeztrátová, když se s obrazem ukládá/přenáší celé reziduum ê. Když se celé reziduum neuchovává nebo nepřenáší. Komprese je ztrátová. Příklad: Digitální pulsně kódová modulace. 3. Komprese dat v po transformaci, např. diskrétní kosínová transformace nebo vlnková (wavelet) transformace. Data zbývající po kompresi se použijí pro rekonstrukci výchozího obrazu.

Prediktivní komprese myšlenka 44/59 Myšlenkou je najít matematický model dovolující predikovat hodnotu pixelu na základě několika pixelů v malém okolí. Ukládán/přenášen je pouze rozdíl mezi skutečnou a predikovanou hodnotou (predikční chyba) pro každý pixel a parametry modelu pro celý obrázek. Ke kompresi dochází, protože rozdílová data mají menší statistický rozptyl než původní data. f(i,j) + - Quantizer d(i,j) d(i,j) + + f(i,j) Predictor + Predictor (a) + (b)

Digitální pulsně kódová modulace (1) Mějme obraz f(i, j). Odhadněme statistické závislosti v obraze pomocí autokorelační funkce R(i, j, k, l) = E(f(i, j) f(k, l)) = f f. 45/59 Hledáme matematický model prediktoru ˆf(i, j). Rozdíl d(i, j) = ˆf(i, j) f(i, j). Předpokládejme např. lineární prediktor 3. řádu ˆf(i, j) = a 1 f(i, j 1) + a 2 f(i 1, j 1) + a 3 f(i 1, j), kde a 1, a 2, a 3 jsou parametry prediktivního modelu. f(i,j-1) f(i,j) f(i-1,j-1) f(i-1,j)

Digitální pulsně kódová modulace (2) 46/59 Jak se odhadnou parametry prediktivního modelu a1, a2, a3? Vyřešením statistické optimalizační úlohy. Předpokládá se stacionární náhodný proces f s nulovou střední hodnotou. a prediktor třetího řádu e = E ( [ f(i, j) f(i, j)] 2). a 1 R(0, 0) + a 2 R(0, 1) + a 3 R(1, 1) = R(1, 0) a 1 R(0, 1) + a 2 R(0, 0) + a 3 R(1, 0) = R(1, 1) a 1 R(1, 1) + a 2 R(1, 0) + a 3 R(0, 0) = R(0, 1) kde R(m, n) je autokorelační funkce speciálního tvaru R(α, β) = R(0, 0) exp( c 1 α c 2 β).

DPCM Příklad, K = 3.8 47/59 Po rekonstrukci K = 3.8. Rozdílový snímek.

DPCM Příklad, K = 6.2 48/59 Po rekonstrukci K = 6.2. Rozdílový snímek.

JPEG, úvod 49/59 Joint Photographic Expert Group. Standartizováno v roce 1992. Používá se na šedotónové i barevné obrázky. Barevné se nejdříve převedou z barevného prostoru RGB do prostoru YUV, kde lze matice U, V reprezentovat v polovičním rozlišení než matici Y ( intenzita). Existuje jako ztrátová i bezeztrátová komprese. První generace (.jpg) z 1992 používá DCT (diskrétní kosínovou transformaci) pro odstranění redundance a irelevance. Pro optimální kódování se použije převod koeficientů DCT do 1D vektoru, kódování úseky řádků a symboly kóduje Huffmanovým kódováním. Druhá generace JPEG2000 (.jp2) z roku 2000 odstraňuje redundanci a irelevanci pomocí vlnkové transformace. Potom kóduje v jednotlivých bitových rovinách a symboly kóduje aritmetickým kódováním.

Proč bylo DCT zvoleno pro JPEG? 50/59 DCT je implicitně periodická. Nejsou takové problémy s nespojitostí. DCT dobře aproximuje PCA (metoda hlavních směrů, Principal Component Analysis, Karhunen-Loeve rozvoj), která je optimální z hlediska středněkvadratické chyby (energie). Na rozdíl od PCA, DCT má pevně zvolené bázové funkce. Aby se ušetřil výpočetní čas, je obraz rozdělen na bloky 8 8, které jsou komprimovány nezávisle na sobě.

DCT, bázové funkce 51/59 Pevně zvolených 64 bázových funkcí. Každý blok obrazu 8 8 lze vyjádřit jako lineární kombinaci bázových funkcí. DCT2 base for [8x8] block Při DCT kompresi se najde pro každý blok 64 vah lineární kombinace. Váhy jsou prahovány. Velikost prahu ovlivňuje míru komprese, tj. volí se požadovaná irelevance.

Příklad, kameraman 52/59 image block image intensities 1 2 3 4 5 6 7 8 185 187 184 183 189 186 185 186 185 184 186 190 187 186 189 191 186 187 187 188 190 185 189 191 186 189 189 189 193 193 193 195 185 190 188 193 199 198 189 184 191 187 162 156 116 30 15 14 168 102 49 22 15 11 10 10 25 19 19 26 17 11 10 10 1 2 3 4 5 6 7 8

Příklad, kameraman, DCT 53/59 image intensities coefficients of the DCT2 1 185 187 184 183 189 186 185 186 1 1117 114 10 7 19 2 7 2 2 185 184 186 190 187 186 189 191 2 459 119 20 11 16 4 3 0 3 186 187 187 188 190 185 189 191 3 267 3 24 8 1 6 4 1 4 186 189 189 189 193 193 193 195 4 50 107 9 1 11 6 7 3 5 185 190 188 193 199 198 189 184 5 52 111 22 2 16 2 5 3 6 191 187 162 156 116 30 15 14 6 38 39 46 19 2 0 4 3 7 168 102 49 22 15 11 10 10 7 17 39 46 26 8 5 10 2 8 25 19 19 26 17 11 10 10 8 30 46 28 22 9 2 7 1 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8

Příklad, kameraman, 100 % a 50 % 54/59 100 % of most significant DCT2 coeffs 50 % of most significant DCT2 coeffs

Příklad, kameraman, 20 % a 5 % 55/59 20 % of most significant DCT2 coeffs 5 % of most significant DCT2 coeffs

JPEG příklad, K = 3.8 56/59 Po rekonstrukci K = 3.8. Rozdílový snímek.

JPEG příklad, K = 4.2 57/59 Po rekonstrukci K = 4.2. Rozdílový snímek.

JPEG Příklad, K = 5.6 58/59 Po rekonstrukci K = 5.6. Rozdílový snímek.

JPEG příklad, K = 10.2 59/59 Po rekonstrukci K = 10.2. Rozdílový snímek.