UNIVERSITY POLITEHNICA of BUCHAREST DEPARTMENT OF COMPUTER SCIENCE
UNIVERSITY POLITEHNICA of BUCHAREST DEPARTMENT OF COMPUTER SCIENCE Transmisia datelor multimedia in retele de calculatoare Compresia bazata pe fractali Conf. Dr. Ing. Costin-Anton Boiangiu <Costin. Boiangiu@CS. PUB. RO>
Compresia bazata pe fractali �Ce sunt fractalii? �Termenul fractal provine din latinescul fractus, care înseamnă "spart“, "fracturat“ si a fost introdus de Benoît Mandelbrot, în 1975 �Un fractal este un obiect matematic care o structură detaliată la orice scara; in structura unui fractal, fiecare parte este asemănătoare cu fractalul întreg (este autosimilar) 2
Exemple de fractali �Curba lui Koch perimetrul = 3 perimetrul = 4 perimetrul = 5. 33 perimetrul = 7. 11 �Continuând, perimetrul = infinit, pentru această figură geometrică inclusă într-o mulţime cu aria finită 3
Exemple de fractali �Curba lui Hilbert este un exemplu de curbă continuă, de lungime infinită, fără autointersecţii, care “umple” un pătrat 4
Exemple de fractali �Buretele lui Menger 5
Fractalii si codarea imaginilor �Interpolare fractală (codarea imaginii) � Ştiţi câte ecuaţii liniare (y=ax+b) sunt necesare pentru a descrie complet această imagine fractală, adică pentru a o memora şi a o reconstrui? �Raspuns: DOAR 4!!! 6
Istoric �Fractalii sunt o ramură elegantă, distinctă a matematicii pure care fac posibilă generarea unor structuri extrem de complexe folosind doar ecuaţii foarte simple �Compresia imaginilor pe baza fractalilor era până de curând întâmpinată cu scepticism, ea părând foarte avantgardistă şi irealizabilă �In februarie 1992 principalul comerciant al acestei tehnologii Iterated Systems Inc. , a vândut licenţa Microsoft-ului şi astfel a căpătat credibilitate “peste noapte” 7
Principiul compresiei � Să considerăm o ipoteză simplificatoare, aceea a unei maşini de copiat care reduce imaginea şi o multiplică de trei ori: � Să ne închipuim ca introducem de fiecare dată ieşirea maşinii la intrarea acesteia => un şir de transformări "contractive" ce stabilizează imaginea � O transformare f, "contractivă" este o transformare ce micşorează distanţele: � Adică există S < 1 astfel încât pentru orice combinaţie de vectori x, y 8 ecuaţia este satisfăcută.
Exemplu �Efectul masinii copiator in functie de intrare 9
Exemplu �Imagini de pornire, tranformările aplicate la un pas, atractorul şi un "zoom" al atractorului 10
Codificarea �În continuare transformările vor fi descrise ca fiind aplicate asupra imaginilor uni-componentă ("Gray. Scale"). �Imaginile vor fi gândite ca un câmp de înalţime ("Height. Field") sau ca un graf de conectare între pixelii adiacenţi imaginii, fiecare nod fiind caracterizat de o înălţime dată de intensitatea culorii în acel punct: 11
Codificarea �În primul rând se porneşte de la o partiţionare a imaginii în blocuri pătrate de dimensiuni 2 Bx 2 B numite blocuri domeniu ("domain blocks") �Ele sunt utilizate ca blocuri de construcţie pentru alte blocuri pătrate de dimensiuni mai mici Bx. B numite blocuri interval ("range blocks") �Problema este pentru fiecare bloc domeniu de a gasi un bloc interval care să-l identifice cel mai bine fiindu-i aplicat un set de transformări 12
Compresia �O colecţie de blocuri domeniu D ("domain pool") este definită ca fiind compusă din toate blocurile imaginii de dimensiuni 2 Bx 2 B care pot fi extrase din imagine iar o colecţie de transformări T este definită ca mulţimea tuturor transformărilor masice aplicabile blocurilor din D �Ca atare problema este de a găsi perechea optimă Dix. Ti din Dx. T care asigură distorsiuni minime!!! 13
Algoritmul de compresie �Dacă blocul interval este clasificat ca bloc masic transformarea este doar o "transformare de masă" (absorbţie la nivel gri G, toţi pixelii iau valoarea G şi nu e nevoie de nici o căutare în D) �Dacă blocul interval nu este clasificat ca bloc masic transformarea este constituită din două părţi: �Transformare geometrică: scalare de la 2 Bx 2 B la Bx. B şi deplasament în spaţiul imaginii �Transformare de masă: cuprinde două aspecte: Contrast/Luminanţă care manipulează nivelele de gri din bloc � Transformare izometrică care amestecă pixelii din interiorul unui bloc � �Găsirea blocurilor ce se pot combina cât mai bine din punct de vedere al SNR nu este deloc un pas trivial, din contră este cel care asigură o rată de compresie bună şi un 14
Exemplu �Blocuri "similare" din punct de vedere al transformărilor geometrice şi de masă ce pot fi aplicate 15
Operaţiile posibile în cadrul transformării de masă � Scalarea contrastului cu <ALPHA>: � Shiftarea luminozităţii cu <BETA>: � Izometrie cu <GAMMA>: � Izometria constă în una din cele 8 transformări definite în tabelul următor: GAMMA 1 2 3 4 5 6 7 8 Acţiune efectuată Identitate Reflexie după axa Ox la mijloc Reflexie după axa Oy la mijloc Reflexie după prima diagonală Reflexie după a doua diagonală Rotaţie cu +90° Rotaţie cu +180° Rotaţie cu -90° 16
Algoritmul de compresie �O transformare domeniu-interval constă din aplicarea succesivă a celor 3 transformări descrise anterior în ordinea exactă a definirii lor: �Procesul de decodificare constă în iterări succesive asupra unei imagini iniţiale arbitrare; iteraţie după iteraţie imaginea se stabilizează (procesul converge către o imagine stabilă) �Alegerea unei imagini "bune" ca start poate grăbi procesul de convergenţă la o imagine stabilă (se va avea în vedere nivelul diferenţelor de contrast şi luminozitate dintre cele două imagini 17
Exemplu codificare � Blocul interval din coltul stanga sus este foarte asemanator cu blocul domeniu din coltul dreata � Se folosesc un numar foarte mari de comparatii si calcule � 256 x 256 dimensiunea imaginii originale � 16 x 16 dimensiunea blocurilor parinte � 241*241 = 58, 081 comparatii intre blocuri
Exemplu decodificare �Imaginea initiala �Imaginea de inceput pentru decodificare
Exemplu decodificare �Prima iteratie �A doua iteratie
Exemplu decodificare �A 5 -a iteratie �A 10 -a iteratie
Alte exemple �Şirul de iteraţii pentru deducerea pozei "Lenna" pornind de la o imagine neagră; rezultatul obţinut este caracterizat de o rată de compresie de 11. 31 şi de un raport semnalzgomot de 25. 95 d. B 22
Alte exemple �Comparatia dintre un "zoom 4 X" realizat pe imaginea decompresată folosind tehnica iterativă a fractalilor (stânga) şi pe imaginea iniţială (dreapta) 23
Alte exemple �Şirul de iteraţii pentru deducerea pozei "San Francisco" pornind de la o imagine fără nici o legatură cu poza de decodificat "Orc“; rezultatul obţinut este caracterizat de o rată de compresie de 7. 34 şi de un raport semnal-zgomot de 21. 18 d. B 24
Statistici �Efectul variatiei numărului de blocuri domeniu comparate cu blocuri interval în timpul codificării 25
Statistici �Convergenţa la o imagine stabilă în funcţie de numărul de iteraţii 26
Statistici �Convergenţa la o imagine stabilă în funcţie de numărul de iteraţii 27
Statistici Imaginea originală (184, 320 bytes) JPEG-maximă calitate (32, 072 bytes) raţia de compresie: 5. 75: 1 Compresie fractală (30, 368 bytes) raţia de compresie 6. 07: 1 28
Statistici �Calitate contra factor de compresie între compresie "Fractal” şi JPEG 29
Concluzii �Susţinătorii compresiei Fractal indică trei performanţe distincte faţă de Transformarea Cosinus Discretă („Discrete Cosine Transform” - DCT), tehnica de bază găsită în JPEG: �eficienţă ridicată a compresiei �independenţa rezoluţiei �decompresia software �Avantaje: �Valorifica similaritatile din interiorul imaginilor �Rata de compresie teoretica este foarte mare �Decompresie foarte rapida �Interpolare avansata a detaliilor 30
Concluzii �Procesul de transformare bazată pe fractali al unei imagini este clar asimetric (compresia este mare consumatoare de timp făcând metoda greu de utilizat practic, în timp ce decompresia este foarte rapidă necesitând doar executia unui set de iteraţii) �Avantajul abordării compresiei folosind tehnica este păstrarea detaliilor în imagine şi reproducerea acestora chiar la anumite nivele de zoom �Procesul de decodificare (dat fiind că au fost implicate numai trasformări geometrice elementare) nu ţine cont de dimensiunile imaginii iniţiale, putându-se obţine detalii chiar la nivele mari de "zoom" după o serie de iteraţii 31 suficiente
Concluzii �În termenii eficienţei compresiei, ISI declară rate de până la 75 -la-1, reducând o imagine color de 768 k. B la nesemnificativii 10 k. B �Oricum, acest lucru poate fi realizat de către tehnicile DCT; totuşi, marele avantaj este că rezoluţia este crescută la fiecare iteraţie a software-ului de decompresie �In concluzie, este posibil să negociem timpul de decompresie faţă de rezoluţia de afişare �O reprezentare Fractal a unei imagini este, deci, total independentă de rezoluţia ecranului, permiţând imaginilor să fie scalate cu uşurinţă 32
- Slides: 32