1/25 KOMPRESE OBRAZŮ Václav Hlaváč, Jan Kybic Fakulta elektrotechnická ČVUT v Praze katedra kybernetiky, Centrum strojového vnímání hlavac@fel.cvut.cz http://cmp.felk.cvut.cz/ hlavac
KOMPRESE OBRAZŮ, ÚVOD 2/25 Cíl spočívá v redukci 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 obrazů od komprese 1D dat?
ROZDĚLENÍ METOD KOMPRESE OBRAZŮ 1. Segmentace objektů v obraze. 3/25 Je potřebná interpretace obrazu. Metody jsou závislé na datech. Dosahuje se nejvyšších kompresních poměrů. Není možná zpětná rekonstrukce výchozího obrazu. 2. Odstranění redundandní informace. Data se neinterpretují. Lze použít na libovolná obrazová data. Využívá se statistických závislostí v obraze (sekvenci obrazů).
ODSTRANĚNÍ REDUNDANTNÍ INFORMACE 4/25 Dvě velké třídy používaných postupů: 1. Bezeztrátové metody. Umožňují úplnou rekonstrukci výchozího signálu. 2. Ztrátové metody. Umožňují pouze částečnou rekonstrukci výchozího signálu.
KÓDOVÁNÍ SEGMENTOVANÝCH DAT (1) Kódování hranic oblastí 5/25 Polygonální aproximace hranice
KÓDOVÁNÍ SEGMENTOVANÝCH DAT (2) Kódování hranic oblastí 6/25 Řetězový (též Freemanův) kód, 4-okolí 1 2 0 3 Řetězový kód: 3, 0, 0, 3, 0, 1, 1, 2, 1, 2, 3, 2. Derivace kódu: 1, 0, 3, 1, 1, 0, 1, 3, 1, 1, 3, 1.
KÓDOVÁNÍ SEGMENTOVANÝCH DAT (3) Kódování hranic oblastí 7/25 Řetězový (též Freemanův) kód, 8-okolí 3 2 1 4 0 5 6 7 Kód: 00077665555556600000006444444442221111112234445652211
KÓDOVÁNÍ SEGMENTOVANÝCH DAT (4) Kódování oblastí 8/25 Kódování úseky řádků (angl. Run Length Encoding, RLE) 0 1 2 3 4 5 6 0 1 2 3 4 5 6 Kódem je seznam seznamů. Každý seznam popisuje situaci v jednom řádku. Používá FAX (CCITT Group 3). ((11144)(214)(52355))
KOMPRESE OBRAZU A JEHO REKONSTRUKCE 9/25 Original image Data redundancy reduction Coding Transmission, Archiving Reconstructed image Reconstruction Decoding
POSTUPY ODSTRAŇOVÁNÍ REDUNDANCE V DATECH 10/25 Pomocí lineárních integrálních transformací obrazu, např. Fourierou transformací, DCT, wavelets Prediktivní komprese statického obrázku. Predikce pohybu (kódování videa, MPEG). Hybridní metody.
KÓDOVÁNÍ Obvykle optimální kódování, tj. nejkratším kódem. 11/25 Abeceda Ω = {1,..., N} s relativními četnostmi p i. Každému symbolu přiřadíme binární kód s i s délkou l i, minimalizujeme E ( i l ip i ). Kódy pevné délky (Huffmanovo kódování) abecedu Ω rozdělíme na Ω 0, Ω 1, tak aby i Ω 0 p i i Ω 1 p i Ω 0 podstrom kódovaný 0, podobně pro Ω 1. Iterujeme Kódy proměnné délky (aritmetické kódování). f i = i j=1 p i Kód pro i je desetinná část nejkratšího binárního čísla, reprezentujícího f i.
TEORIE INFORMACE A REDUNDANCE 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 Claudius. 12/25 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 PRO ŠEDOTÓNOVÝ OBRAZ 13/25 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 14/25 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 k ˆP (k) log 2 ˆP (k) [bitů] Poznámka: odhad entropie je příliš optimistický, protože mezi jasy obrazu existují závislosti.
TŘI DEFINICE KOMPRESNÍHO POMĚRU 15/25 Kompresní poměr počítaný 1. Na základě redundance K = bĥe 2. Na základě úspory paměti κ = délka zprávy po kompresi délka zprávy před kompresí 3. Na základě úspory paměti (v doplňkovém tvaru) 1 κ
PREDIKTIVNÍ KOMPRESE MYŠLENKA 16/25 Najít matematický model, který dokáže predikovat na základě předchozích hodnot další hodnotu. Přenášet pouze rozdíl mezi skutečnou a predikovanou hodnotou. Ke kompresi dochází, protože rozdílová data mají menší statistickou variaci (např. 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) 17/25 Mějme obraz f (i, j), odhad jeho statistických vlastností pomocí autokorelační funkce R(i, j, k, l) = E(f (i, j)f (k, l)) = f f T. Hledáme matematický model prediktoru Rozdíl d(i, j) = ˆ f (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..
DIGITÁLNÍ PULSNĚ KÓDOVÁ MODULACE (2) 18/25 Jak se odhadnou parametry prediktivního modelu a 1, a 2, a 3? Vyřešením statistické optimalizační úlohy. Předpokládá se stacionární náhodný proces f a nulová střední hodnota. minimalizovat 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 19/25 Po rekonstrukci K = 3.8. Rozdílový snímek.
DPCM PŘÍKLAD, K = 6.2 20/25 Po rekonstrukci K = 6.2. Rozdílový snímek.
JPEG Transformace RGB HSL 21/25 Kvantizace složek S,L Rozdělení do bloků DCT Váhování DCT koeficientů Huffmanovo / aritmetické kódování
JPEG PŘÍKLAD, K = 3.8 22/25 Po rekonstrukci K = 3.8. Rozdílový snímek.
JPEG PŘÍKLAD, K = 4.2 23/25 Po rekonstrukci K = 4.2. Rozdílový snímek.
JPEG PŘÍKLAD, K = 5.6 24/25 Po rekonstrukci K = 5.6. Rozdílový snímek.
JPEG PŘÍKLAD, K = 10.2 25/25 Po rekonstrukci K = 10.2. Rozdílový snímek.