Transformari de imagini
This presentation is the property of its rightful owner.
Sponsored Links
1 / 70

TRANSFORMARI DE IMAGINI PowerPoint PPT Presentation


  • 79 Views
  • Uploaded on
  • Presentation posted in: General

TRANSFORMARI DE IMAGINI. Cuprins Formulare generala Transformarea Walsh Transformarea Hadamard Transformarea Haar Wavelets Transformarea cosinus Transformarea sinus Tranformarea Hartley. FORMULARE GENERALA

Download Presentation

TRANSFORMARI DE IMAGINI

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Transformari de imagini

TRANSFORMARI DE IMAGINI


Transformari de imagini

Cuprins

Formulare generala

Transformarea Walsh

Transformarea Hadamard

Transformarea Haar

Wavelets

Transformarea cosinus

Transformarea sinus

Tranformarea Hartley


Transformari de imagini

FORMULARE GENERALA

Desi transformarea Fourier este cea mai utilizata in prelucrari de imagini, exista o serie de alte transformari care de asemenea prezinta un interes deosebit.

Transformarea Fourier poate fi exprimata printr-o relatie generala sub forma:

unde T(u) este transformata lui f(x), g(x,u) este nucleul transformarii directe, iar u=0,1,...,N-1. Pentru transformata inversa exista relatia:

unde h(x,u) este nucleul transformarii inverse si x ia valori in domeniul 0,1,...,N-1. Natura transformarii este data de proprietatile nucleului.


Transformari de imagini

In cazul imaginilor, in general a ariilor bidimensionale, transformarile directe si inverse sunt date de ecuatiile:

si

unde g si h sunt nucleele de transformare directa si inversa.


Transformari de imagini

Definitie. Nucleul de transformare directa este separabil daca:

g(x,y,u,v) = g1(x,u)g2(y,v)

Definitie. Nucleul de transformare directa este simetric daca g1 este egal cu g2, deci acesta poate fi exprimat sub forma:

g(x,y,u,v) = g1(x,u)g1(y,v)

Pentru nucleul de transformare inversa se pot enunta definitii asemanatoare.


Transformari de imagini

Transformarea Fourier bidimensionala este un caz particular al transformarii generale, in care nucleul este:

g(x,y,u,v) = 1/N e-i2π(ux+vy)/N

care este separabil si simetric

g(x,y,u,v) = g1(x,u)g1(y,v) =

Asemanator, se poate arata ca nucleul transformarii Fourier inverse este separabil si simetric.


Transformari de imagini

Consecinta cea mai importanta: o transformare cu un nucleu separabil poate fi calculata in doi pasi, fiecare necesitand cate o transformare unidimensionala. Astfel, se aplica transformarea unidimensionala functiei f(x,y), de-a lungul fiecarui rand, obtinand:

pentru x=0,1,...,N-1. Apoi transformarea unidimensionala este considerata pe fiecare coloana in parte, obtinand:

pentru u,v = 0,1,...,N-1.

Aceeasi metoda poate fi aplicata si pentru transformarea inversa daca nucleul h(x,y,u,v) este separabil.


Transformari de imagini

Daca nucleul transformarii directe g(x,y,u,v) este separabil si simetric, ecuatia de transformare se poate exprima si sub forma matriciala:

T = AFA

unde F este matricea de imagine cu N*N pixeli, A este o matrice de transformare simetrica N*N cu elemente aij = g1(i,j), iar T este transformata rezultata N*N pentru valori ale lui u,v in domeniul 0,1,2,...,N-1. Prin inmultirea relatiei precedente in ambii membrii la stanga si la dreapta cu matricea de transformare inversa B se obtine:

BTB = BAFAB

F = BTB

unde s-a tinut cont ca B = A-1 => o imagine digitala F poate fi refacuta complet din transformata sa T. In cazul in care B nu este identic cu A-1, ecuatia furnizeaza o aproximatie a imaginii initiale:

F' = BAFAB


Transformari de imagini

O proprietate importanta a matricilor de transformare: pot fi descompuse in produse de matrici cu mai multe zerouri decat matricea originala => reduce redundanta si in consecinta numarul de operatii necesare implementarii transformarii bidimensionale.

Mai general, se considera o imagine de dimensiune MxN, reprezentata prin matricea:


Transformari de imagini

Transformarea generala se poate exprima prin relatia:

F = p f q

unde

pentru u = 0,1,…,M-1 si v = 0,1,…,N-1. Daca p si q sunt matrici nesingulare (cu determinanti nenuli), atunci exista matricile lor inverse si

f = p-1 F q-1

Daca p si q sunt simetrice ( p = pT ), reale si ortogonale ( pTp = I ), atunci

F = p f qsif = p F q

iar transformarea este o transformare ortogonala.


Transformari de imagini

Transformarea Walsh

Transformarile Walsh, Hadamard si Haar utilizeaza ca functii de baza un set de functii nesinusoidale.

Pentru N=2n, transformarea Walsh discreta a unei functii f(x), notata cu W(u), se obtine inlocuind nucleul transformarii:

in ecuatia transformarii generale, obtinindu-se relatia:

unde bk(z) este bitul k in reprezentarea binara a lui z.


Transformari de imagini

Valorile pentru g(x,u), exceptand factorul constant 1/N, sunt reprezentate in tabel, pentru N=8.

x

│ 0 1 2 3 4 5 6 7

──┼─────────────────

0 │ + + + + + + + +

1 │ + + + + - - - -

2 │ + + - - + + - -

u 3 │ + + - - - - + +

4 │ + - + - + - + -

5 │ + - + - - + - +

6 │ + - - + + - - +

7 │ + - - + - + + -

 matrice simetrica, ale carei coloane si randuri sunt ortogonale.


Transformari de imagini

Aceste proprietati, conduc la un nucleu al transformarii inverse identic cu cel al transformarii directe, exceptand un factor constant 1/N, deci:

deci transformarea Walsh inversa este data de relatia:

=> orice algoritm pentru calculul transformarii directe poate fi utilizat si pentru calculul transformarii inverse, inmultind rezultatul cu N.


Transformari de imagini

In cazul imaginilor bidimensionale, mai general al functiilor de doua variabile, nucleele de transformare directa si inversa sunt date de relatiile:


Transformari de imagini

Rezulta de asemenea ca transformarile Walsh directe si inversa sunt identice ca forma:

si


Transformari de imagini

La fel ca in cazul unidimensional, orice algoritm de calcul al transformatei directe bidimensionale, se poate utiliza si pentru calcularea transformarii inverse.

Nucleele transformarilor Walsh sunt separabile si simetrice caci:

g(x,y,u,v) = g1(x,u)g1(y,v) =h1(x,u)h2(y,v)

Rezulta ca W(u,v) si inversa sa se pot calcula prin aplicarea succesiva a transformarii Walsh unidimensionale (tehnica de calculare este asemanatoare cu cea prezentata pentru transformarea Fourier).


Transformari de imagini

Se poate aplica si o metoda de calculare rapida a transformatei Walsh (FWT), asemanatoare metodei FFT, cu dublare succesiva, pentru care:

W(u) = 1/2 {Wpar(u)+Wimpar(u)}

si

W(u+M) = 1/2 {Wpar(u)-Wimpar(u)}

unde M=N/2, u=0,1,...,M-1, W(u) denota transformarea Walsh unidimensionala, iar


Transformari de imagini

Algoritm de calcul al transformatei Walsh directe, care utilizeaza aceste relatii.

Parametrii de intrare:

-vectorul F, continand valorile esantionate ale semnalului;

-LN = log2N (cu N lungimea vectorului F, putere a lui 2).

Rezultatul:

-vectorul F, care la revenirea din procedura contine valorile transformatei Walsh a vectorului de intrare.

De remarcat: transformata Walsh este reala => necesita o cantitate mai mica de memorie decat transformata Fourier.


Transformari de imagini

Transformarea Hadamard

Au fost studiate transformarile Fourier si Walsh. Transformarea Fourier consta in esenta dintr-o proiectie pe un set de forme de unda sinusoidale. Coeficientii Fourier se numesc componentele de frecventa si formele de unda sunt ordonate dupa frecvente.

Transformarea Hadamard consta dintr-o proiectie pe un set de forme de unda dreptunghiulare numite functii Walsh. Coeficientii transformarii Hadamard se numesc componentele de secventa, iar functiile Walsh sunt ordonate dupa numarul de treceri prin zero. Functiile Walsh sunt reale si iau numai valorile 1 sau –1. Nucleul transformarii Hadamard:

unde suma de la exponent este realizata modulo 2, iar bk(z) este bitul k din reprezentarea binara a lui z.


Transformari de imagini

Transformarea Hadamard unidimensionala:

unde N=2n, iar u=0,1,2,...,N-1.

Nucleul formeaza o matrice ale carei randuri si coloane sunt ortogonale => nucleu al transformarii inverse egal cu cel al transformarii directe (cu exceptia unui factor 1/N):

rezultand relatia pentru transformarea inversa:

pentru x=0,1,2,...,N-1.


Transformari de imagini

In cazul bidimensional nucleele transformarilor:


Transformari de imagini

Observatie: in cazul bidimensional nucleele transformarilor directa si inversa sunt identice. Ecuatiile transformarilor:

=> pentru transformarile Hadamard se poate utiliza acelasi algoritm.


Transformari de imagini

Nucleele Hadamard sunt separabile si simetrice:

g(x,y,u,v) = g1(x,u)g1(y,v) = h1(x,u)h1(y,v) =

Cu exceptia factorului 1/N, g1 si h1 sunt identici expresiei nucleului transformarii unidimensionale. Deoarece nucleele de transformare Hadamard bidimensionale sunt separabile => perechea de transformari bidimensionale se poate obtine prin aplicarea succesiva a algoritmului Hadamard unidimensional. Modificarea algoritmului de transformare Walsh rapida => transformata Hadamard rapida (FHT). O alta solutie: calcularea transformatei Walsh si reordonarea rezultatului (elementelor vectorului de iesire).


Transformari de imagini

Se poate stabili o relatie recursiva simpla pentru obtinerea matricilor de transformare generala. O matrice Hadamard de ordinul N, cu NxN elemente, este simetrica avand numai elemente 1 si –1. Matricea Hadamard de cel mai mic ordin (N=2) este:

Considerand HN matrice de ordin N, relatia recursiva este:

cu N=2n (exista si matrici Hadamard de dimensiuni care nu sunt puteri ale lui 2, dar se utilizeaza mai putin in prelucrarile de imagini).


Transformari de imagini

Matricea de transformare generala din T = AFAse scrie sub forma:

Se poate calcula usor matricea Hadamard inversa cu relatia:

Transformarile Hadamard directa si inversa sunt date de relatiile:

Se poate observa ca pentru calcularea transformarilor Hadamard sunt necesare operatii de inmultire de matrici, care insa se reduc numai la operatii de adunare/scadere. Transformarea Hadamard se mai numeste uneori transformarea Walsh-Hadamard, caci baza transformarii o constituie functiile Walsh.


Transformari de imagini

Harmuth (H. F. Harmuth, Transmission of Information by Orthogonal Functions, Springer-Verlag, New York, 1969) a dat o interpretare in frecventa pentru matricea Hadamard, luand in considerare numarul de schimbari de semn pe fiecare linie a matricii, obtinand astfel un set de functii de baza ale transformarii. Exemplu pentru o matrice 16x16:


Transformari de imagini

Aceste functii se mai numesc si functii Walsh. Astfel, matricea Hadamard realizeaza descompunerea unui semnal printr-un set de forme de unda rectangulare , spre deosebire de transformarea Fourier care realizeaza o descompunere pe baza unor forme de unda sinus-cosinus.


Transformari de imagini

Pentru o imagine de test este este furnizata reprezentarea grafica a transformarii Hadamard:


Transformari de imagini

Transformarea Haar

Transformarea Haar se obtine din matricile Haar. Astfel, matricile Haar 4×4 si 8×8 sunt:


Transformari de imagini

Reprezentarea grafica a functiilor de baza Haar pentru N=16:

Numarul undei u

→ x


Transformari de imagini

Transformarea Haar poate fi calculata recursiv utilizand matricea N×N:

unde VN este matricea de scalare N/2×N:


Transformari de imagini

iar WN este matricea wavelet N/2×N:

Elementele liniilor din VN reprezinta semnalele de scalare de nivel intai, iar elementele liniilor din WN se numesc waveleturi Haar de nivel intai.


Transformari de imagini

Transformarea Haar de nivel intai a unui vector coloana f cu N×1 este:

unde:

(concatenare pe coloana). Vectorul a1 reprezinta trendul elementelor lui f (media dinamica), iar d1 fluctuatia dinamica a elementelor lui f. Pasul urmator este calcularea transformarii Haar de nivel doi din componenta de trend a transformarii de nivel intai si concatenarea cu vectorul de fluctuatie de nivel intai.

unde:

sunt vectori N/4×1.


Transformari de imagini

Procesul continua pana cand se obtine transformarea completa (N=2n):

In aplicatiile de prelucrare a imaginilor transformarea Haar furnizeaza un domeniu in care un tip de energie diferentiala este concentrata in regiuni localizate.

Imagine intuitiva a procesului iterativ:


Transformari de imagini

Pentru o imagine de test este furnizata reprezentarea grafica a transformarii Haar:


Transformari de imagini

Wavelets

Wavelet-urile reprezinta o alta abordare de descompunere a unor semnale complexe in sume de functii de baza. Functiile Fourier sunt localizate in frecventa, dar nu si in domeniul spatial (in timp); determina valorile de frecventa, dar nu si aparitiile acestora. Modificari minore de frecventa produc modificari majore in domeniul spatial.

Wavelet-urile sunt locale atat in frecventa (prin dilatari “dilations”) cat si in timp (prin translatari). Anumite zgomote sau discontinuitati intr-o imagine necesita mai putine functii de baza wavelet, decat ar necesita functii de baza sinus si cosinus. Astfel de imagini au o reprezentare mai compacta utilizand wavelet-uri, decat utilizand functii sinus si cosinus.

Exista multe tipuri de wavelet-uri, utile in diferite scopuri. Asa cum functiile sinus si cosinus sunt utilizate in analiza Fourier, wavelet-urile sunt utilizate ca functii de baza in reprezentarea altor functii. Wavelet-urile sunt derivate dintr-o functie de baza numita functia “mother wavelet” sau wavelet de analiza. Cea mai simpla astfel de functie este functia “Haar Mother Wavelet”


Transformari de imagini

Functia Haar Mother:


Transformari de imagini

Functia wavelet de baza fiind fixata Φ(x), se formeaza translatari si dilatari ale acesteia

unde se considera valori speciale pentru a si b: a=2-j , b=k·2-j .


Transformari de imagini

Coeficientii Haar wavelet. Coeficientii din coltul stanga sus corespund imaginii de rezolutie scazuta, iar celelalte cadre corespund unor caracteristici de rezolutie mare.

Wavelet-urile sunt utilizate pentru compresia de imaginilor, suprimarea zgomotelor, vederea cu ajutorul calculatorului, dar si in alte domenii cum sunt radar, predictia cutremurelor, etc.


Transformari de imagini

TRANSFORMARILE COSINUS, SINUS SI HARTLEY

Transformarile cosinus, sinus si Hartley sunt transformari unitare care utilizeaza functii de baza sinusoidale, la fel ca transformarea Fourier. Transformarile cosinus si sinus nu reprezinta partile cosinus si sinus din transformarea Fourier (care nu sunt functii ortogonale). Transformarea Hartley utilizeaza functii de baza sinus si cosinus, dar coeficientii acestora sunt numere reale, spre deosebire de transformarea Fourier care are in general coeficienti complecsi.


Transformari de imagini

Transformarea cosinus discreta

Transformarea cosinus a fost introdusa de Ahmed (N. Ahmed, T. Natarajan and K. R. Rao, “On Image Processing and a Discrete Cosine Transform,” IEEE Trans. Computers, C-23, 1, January 1974, 90–93) si are largi aplicatii in codificarea si compresia imaginilor (standardul JPEG pentru poze si MPEG pentru video).


Transformari de imagini

Teoria Fourier specifica faptul ca orice semnal periodic poate fi reprezentat ca o suma infinita de unde sinusoidale simle cu frecvente si amplitudini variabile. Se va considera semnalul corespunzator unei linii de pixeli dintr-o imagine, deci un semnal unidimensional, pentru care :

f(x) este o functie periodica pe domeniul spatial, unde ω=2πf,f fiind frecventa fundamentala a undei. Pe masura ce n varieaza, sunt considerate componentele de frecventa, an este amplitudinea componentei a n-a de frecventa.


Transformari de imagini

Un exemplu in care o unda este o suma de trei unde sinusoidale, toate celelalte componente de frecventa fiind de amplitudine zero.


Transformari de imagini

Se considera o linie de pixeli dintr-o imagine, 8 pixeli.

Fiecare linie de M pixeli se poate reprezenta ca o suma de M functii cosinus ponderate evalate in puncte discrete, exprimate prin ecuatia :

pentru 0≤r<M, unde

pentru u=0, altfel C(u)=1.

Pentru pixelii din exemplu avem valorile [0, 0, 0, 153, 255, 255, 220, 220]. F(u) este un vector de coeficienti.


Transformari de imagini

Fiecare functie

este numita o functie de baza, fiind vazuta ca o componenta de frecventa. Coeficientii F(u) indica ponderea componentelor de frecventa din suma care produce valorile pixelilor.

Pentru M=8 functiile de baza sunt date in continuare, sub forma unor functii cosinus continue. Pe masura ce valorile functiilor cosinus descresc, pixelii devin mai intunecati, deoarece 1 reprezinta alb si -1 reprezinta negru.


Transformari de imagini

Functia de baza 0 :

Functia de baza 1 :


Transformari de imagini

Functia de baza 2 :

Functia de baza 3:


Transformari de imagini

Functia de baza 4 :

Functia de baza 5 :


Transformari de imagini

Functia de baza 6 :

Functia de baza 7 :


Transformari de imagini

In fiecare caz se evalueaza functia de baza in punctul x pentru 0≤r≤7 de la stanga la dreapta. Fiecare valoare rezultata corespunde unui pixel din linia de pixeli situate la dreapta functiei de baza (valorile corespund intervalului -1 negru la +1 alb). Astfel componenta de frecventa

(functia de baza 1) corespunde unei secvente de 8 pixeli de la alb la negru.

Ecuatia precedenta specifica faptul ca exista coeficientii F(u), dar calculul acestora este data de transformarea cosinus discreta (DCT), care in cazul unidimensional este :

pentru 0≤u<M, unde

daca u=0, altfel C(u)=1. Aceasta ecuatie indica modul in care se transforma o imagine din domeniul spatial (in care sunt date valori de culoare sau niveluri de gri) in domeniul frecventa (care furnizeaza coeficientii cu care sunt multiplicate componentele de frecventa).


Transformari de imagini

Daca se considera cei 8 pixeli cu valorile de niveluri de gri [0, 0, 0, 153, 255, 255, 220, 220], acest vector reprezinta imaginea in domeniul spatial. Calculand F(u) pentru 0≤u<M se obtine vectorul [389.97, -280.12, -93.54, 83.38, 54.09, -20.51, -19.80, -16.34], reprezentand pixelii in domeniul frecventa.

Interpretare : linia de pixeli este o combinatie liniara de componente de frecventa, adica functii de baza multiplicate cu coeficientii din F si o constanta, adunate impreuna :


Transformari de imagini

O reprezentare vizuala :

pixeli rezultati


Transformari de imagini

Un coeficient negativ pentru o componenta de frecventa este echivalent cu adunarea componentei inversate :

coeficient negativpentru :

~ coeficient pozitiv pentru :

Primul element F(0) este componenta continua (DC). Pentru o functie periodica reprezentata in domeniul frecventa componenta continua este o valoare medie scalata a formei de unda. Se poate constata in cazul unidimensional :

Toate celelalte componente F(1) la F(M-1) se numesc componente AC (analogie cu domeniul electric).


Transformari de imagini

In cazul bidimensional, pentru o imagine oarecare MxN DCT se defineste :

fie f(r,s) valoarea de pixel de pe randul r si coloana s din imagine. F(u,v) este coeficientul componentei de frecventa (u,v), unde 0≤r,u≤M-1 si 0≤s,v≤N-1

cu

Matricile sunt parcurse pe linii.


Transformari de imagini

Transformarea poate fi vazuta astfel : se ia o imagine f(r,s) matrice de valori de pixeli si se obtine o matrice de coeficienti F(u,v) reprezentand amplitudinile componentelor de frecventa.

Presupunem aplicarea DCT unui bloc dintr-o imagine de 8x8 (cazul compresiei JPEG) :


Transformari de imagini

Amplitudinile coponentelor de frecventa calculate sunt :


Transformari de imagini

Transformarea inversa este data de ecuatia :

unde

ceea ce inseamna ca imaginea bitmap este o suma de MxN componente de frecventa ponderate.


Transformari de imagini

Functiile de baza DCT pentru o imagine 8x8 sunt :


Transformari de imagini

fiecare bloc din pozitia (u,v) a matricii este un grafic al functiei

in puncte discrete r=[0..7] si s=[0..7]. Componenta DC este in coltul stanga sus.


Transformari de imagini

Exista patru definitii pentru transformarea cosinus discreta, numite DCT-I, DCT-II, DCT-III, and DCT-IV, cea mai utilizata fiind DCT-II. Matricea de transformare pentru o imagine patrata este definita:

si conform ecuatiilor de transformare generala pentru o imagine patrata de NxN pixeli:


Transformari de imagini

Varianta normalizata a transformarii cosinus directe (DCT-II) pentru o imagine patrata este reprezentata prin relatia:

pentru u = 0, 1, …, N-1 si v = 0, 1, …, N-1, unde

iar transformarea cosinus inversa este data de relatia:

pentru x = 0, 1, …, N-1 si y = 0, 1, …, N-1.


Transformari de imagini

Functiile de baza ale transformarii cosinus sunt de fapt o clasa a polinoamelor Chebyshev. In figura urmatoare sunt reprezentate functiile de baza ale transformarii cosinus pentru N=16

Numarul undei u

→ x


Transformari de imagini

Pentru o imagine de test este furnizata reprezentarea grafica a transformarii cosinus:

Originea este plasata in coltul stanga sus. Energia imaginii tinde sa se concentreze spre frecventele spatiale mai mici.

Transformarea cosinus a unei imagini NxN se poate calcula prin reflectarea imaginii dupa granitele sale pentru a obtine un tablou 2Nx2N, calcularea transformarii Fourier si preluarea partilor reale ale transformarii Fourier.


Transformari de imagini

Transformarea sinus discreta

Transformarea sinus a fost introdusa de Jain (A. K. Jain, “A Fast Karhunen–Loeve Transform for Finite Discrete Images,” Proc. National Electronics Conference, Chicago, October 1974, 323–328) ca un substitut algoritmic rapid pentru transformarea Karhunen-Loeve a unui proces Markov. Pentru o singura dimensiune, functia de baza este:

pentru u,x = 0, 1, 2, ... , N-1.


Transformari de imagini

Reprezentarea functiilor de baza ale transformarii:

Numarul undei u

→ x


Transformari de imagini

Transformarea sinus bidimensionala este data de relatia:

Transformarea sinus inversa este identica ca forma:


Transformari de imagini

Pentru o imagine de test este furnizata reprezentarea grafica a transformarii sinus:

De asemenea transformarea sinus poate fi calculata din transformarea Fourier sau direct utilizand ecuatiile de definitie.


Transformari de imagini

Tranformarea Hartley

Transformarea Hartley a fost propusa de Bracewell (R. M. Bracewell, “The Discrete Hartley Transform,” J. Optical Society of America, 73, 12, December 1983, 1832–1835), fiind o transformare unitara cu valori reale, ca o varianta a transformarii Fourier intr-o serie de aplicatii de filtrare. Perechea de transformari Hartley bidimensionale:

Se utilizeaza si notatia cosθ+sinθ=casθ (este functie ortogonala).


Transformari de imagini

Reprezentarea transformarii Hartley pentru o imagine de test:

De asemenea exista algoritmi de transformare Hartley asemanatori algoritmilor FFT.


  • Login