Sunteți pe pagina 1din 215

Constantin VERTAN

Mihai CIUC

TEHNICI FUNDAMENTALE DE
PRELUCRAREA S
I ANALIZA
IMAGINILOR

Editura MatrixROM
2007

Cuprins
1 Introducere

1.1

Ce este (si mai ales ce nu este) prelucrarea si analiza imaginilor . . . . . .

1.2

Aplicatii si sisteme tipice . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1.3

Imaginea si elementele sale . . . . . . . . . . . . . . . . . . . . . . . . . . .

1.4

Structura cartii . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

1.5

Lista principalelor simboluri si conventii de notatie folosite . . . . . . . . . 11

Prelucrarea imaginilor

13

2 Imbun
at
atirea imaginilor
2.1

17

Operatii punctuale de mbunatatire . . . . . . . . . . . . . . . . . . . . . . 18


2.1.1

Modificarea liniara a contrastului . . . . . . . . . . . . . . . . . . . 18

2.1.2

Modificarea neliniara a contrastului . . . . . . . . . . . . . . . . . . 20

2.2

Egalizarea de histograma . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

2.3

Specificarea de histograma . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

2.4

Concluzii . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

3 Operatii de vecin
atate
3.1

3.2

35

Filtrarea liniara . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
3.1.1

Filtrarea liniara de netezire . . . . . . . . . . . . . . . . . . . . . . 37

3.1.2

Filtrarea liniara de accentuare . . . . . . . . . . . . . . . . . . . . . 40

Filtrarea neliniara . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
3.2.1

Filtrul median . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

3.2.2

Filtre de ordine de domeniu . . . . . . . . . . . . . . . . . . . . . . 44


1

3.2.3
3.3

3.4

3.5

L-filtre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

Filtrarea adaptiva . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
3.3.1

Adaptarea formei vecinatatii . . . . . . . . . . . . . . . . . . . . . . 49

3.3.2

Adaptarea ponderilor - filtrul LLMMSE . . . . . . . . . . . . . . . 49

3.3.3

Adaptarea ponderilor - filtrul bilateral . . . . . . . . . . . . . . . . 53

Filtrarea morfologica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
3.4.1

Operatii morfologice de baza: erodare, dilatare . . . . . . . . . . . . 55

3.4.2

Deschiderea si nchiderea . . . . . . . . . . . . . . . . . . . . . . . . 62

3.4.3

Transformarea Hit or Miss . . . . . . . . . . . . . . . . . . . . . . 66

3.4.4

Morfologie matematica discreta . . . . . . . . . . . . . . . . . . . . 67

3.4.5

Extinderea operatiilor mofologice la functii . . . . . . . . . . . . . . 67

Concluzii . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69

4 Transformate unitare
4.1

Introducere . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71

4.2

Cazul unidimensional . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71

4.3

Cazul bidimensional

4.4

Proprietati ale transformatelor unitare . . . . . . . . . . . . . . . . . . . . 76

4.5

Transformata Fourier discreta . . . . . . . . . . . . . . . . . . . . . . . . . 77

4.6

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74

4.5.1

Semnificatia transformatei Fourier bidimensionale . . . . . . . . . . 78

4.5.2

Proprietatile transformatei Fourier discrete . . . . . . . . . . . . . . 78

Transformata cosinus discreta . . . . . . . . . . . . . . . . . . . . . . . . . 88


4.6.1

II

71

Transformata sinus discreta . . . . . . . . . . . . . . . . . . . . . . 90

Analiza imaginilor

91

5 Segmentarea orientat
a pe regiuni
5.1

5.2

95

Segmentarea n suportul imaginii . . . . . . . . . . . . . . . . . . . . . . . 96


5.1.1

Cresterea regiunilor . . . . . . . . . . . . . . . . . . . . . . . . . . . 97

5.1.2

Etichetarea imaginilor binare . . . . . . . . . . . . . . . . . . . . . 100

Segmentarea n spatiul caracteristicilor . . . . . . . . . . . . . . . . . . . . 102


2

5.3

5.2.1

Segmentarea pe histograma . . . . . . . . . . . . . . . . . . . . . . 103

5.2.2

Segmentarea prin tehnici de clustering . . . . . . . . . . . . . . . . 115

Concluzii . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122

6 Segmentarea orientat
a pe contururi
6.1

123

Extragerea contururilor n domeniul spatial: tehnici derivative . . . . . . . 123


6.1.1

Folosirea derivatei de ordinul unu . . . . . . . . . . . . . . . . . . . 124

6.1.2

Folosirea derivatei de ordinul doi . . . . . . . . . . . . . . . . . . . 133

6.2

Extragerea contururilor n domeniul spectral . . . . . . . . . . . . . . . . . 135

6.3

Concluzii . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135

7 Caracterizarea texturilor
7.1

139

Caracterizarea n domeniul spatial . . . . . . . . . . . . . . . . . . . . . . . 141


7.1.1

Statistici de ordinul unu . . . . . . . . . . . . . . . . . . . . . . . . 141

7.1.2

Statistici de ordinul doi . . . . . . . . . . . . . . . . . . . . . . . . . 141

7.2

Caracterizarea n domeniul spectral . . . . . . . . . . . . . . . . . . . . . . 147

7.3

Modelarea texturilor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149

7.4

7.3.1

Modele statistice . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150

7.3.2

Modele fractale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151

Concluzii . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156

8 Caracterizarea formelor si contururilor plane


8.1

8.2

8.3

157

Simplificarea formelor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158


8.1.1

Anvelopa convexa . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158

8.1.2

Aproximarea poligonala . . . . . . . . . . . . . . . . . . . . . . . . 159

8.1.3

Skeletoane . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160

Functii asociate formelor plane . . . . . . . . . . . . . . . . . . . . . . . . . 164


8.2.1

Semnatura formei . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164

8.2.2

Curbe granulometrice . . . . . . . . . . . . . . . . . . . . . . . . . . 166

Parametri de forma scalari . . . . . . . . . . . . . . . . . . . . . . . . . . . 167


8.3.1

Parametri geometrici (rapoarte de aspect) . . . . . . . . . . . . . . 167

8.3.2

Momente statistice si invarianti . . . . . . . . . . . . . . . . . . . . 168


3

8.3.3

III

Descriptori Fourier de contur . . . . . . . . . . . . . . . . . . . . . 170

Reprezentarea si prelucrarea imaginilor color

173

9 Descrierea culorilor si modele de prelucrare a imaginilor color

175

9.1

9.2

9.3

Fundamentele colorimetriei . . . . . . . . . . . . . . . . . . . . . . . . . . . 175


9.1.1

Potrivirea culorilor . . . . . . . . . . . . . . . . . . . . . . . . . . . 177

9.1.2

Reproducerea culorilor . . . . . . . . . . . . . . . . . . . . . . . . . 178

9.1.3

Perceptia culorilor . . . . . . . . . . . . . . . . . . . . . . . . . . . 179

9.1.4

Teoria culorilor opuse . . . . . . . . . . . . . . . . . . . . . . . . . . 179

Sisteme colorimetrice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181


9.2.1

Sisteme primare de reprezentare . . . . . . . . . . . . . . . . . . . . 181

9.2.2

Sisteme de reprezentare derivate . . . . . . . . . . . . . . . . . . . . 183

9.2.3

Sisteme de reprezentare perceptuala . . . . . . . . . . . . . . . . . . 185

9.2.4

Sisteme de reprezentare cu cromaticitate uniforma . . . . . . . . . . 188

Modele de prelucrare si analiza a imaginilor color . . . . . . . . . . . . . . 191

10 Compresia imaginilor

195

10.1 Tehnici de compresie fara pierderi . . . . . . . . . . . . . . . . . . . . . . . 196


10.1.1 Codarea entropica (Huffman) . . . . . . . . . . . . . . . . . . . . . 196
10.1.2 Codarea pe flux de biti . . . . . . . . . . . . . . . . . . . . . . . . . 198
10.2 Tehnici de compresie cu pierderi a imaginilor . . . . . . . . . . . . . . . . . 201
10.2.1 Codarea predictiva . . . . . . . . . . . . . . . . . . . . . . . . . . . 201
10.2.2 Compresia imaginilor cu transformate . . . . . . . . . . . . . . . . . 202
10.2.3 Codarea cu arbori cuaternari

. . . . . . . . . . . . . . . . . . . . . 203

10.2.4 Cuantizarea vectoriala . . . . . . . . . . . . . . . . . . . . . . . . . 205


Bibliografie

209

Capitolul 1
Introducere
Motto: Prelucrarea imaginilor detine posibilitatea de dezvoltare a masinii totale ce ar
putea realiza functiile vizuale ale tuturor fiintelor vii.(Anil K. Jain [33])

1.1

Ce este (si mai ales ce nu este) prelucrarea si


analiza imaginilor

Prezenta si vizibilitatea cotidiana a filmelor continand spectaculoase efecte speciale, a


jocurilor (evident, pe calculator), posibilitatea de a transmite si stoca ieftin si rapid imagini sau filme conduc de cele mai multe ori la aprecierea ca prelucrarea imaginilor se
refera la absolut tot ceea ce este legat de imagini, de la televiziune si cinematograf pana
la transmiterea fotografiilor digitale realizate cu telefonul mobil. La o analiza mai atenta
putem remarca patru domenii relativ distincte, ntre care exista suprapuneri semnificative: achizitia si vizualizarea imaginilor, grafica computerizata, multimedia si prelucrarea
propriu-zisa a imaginilor. Prelucrarea imaginilor foloseste imagini care sunt proiectii
ale unor marimi fizice preluate din scena reala de senzori specializati (achizitie); ca si
n vizualizare (sau n grafica), prelucrarea imaginilor necesita afisarea imaginilor pentru
interactiunea cu utilizatorul, dar fara ca aceasta sa constituie un scop n sine; ca si n
grafica computerizata, prelucrarea imaginilor foloseste transformari geometrice si interpolari (de culori sau de pozitii); tehnicile de compresie utilizate n multimedia pentru
imaginile statice si secventele de imagini au fost dezvoltate n cadrul domeniului de prelucrare a imaginilor; n acelasi timp nsa, problemele legate de codarea pentru transmisia
pe canale cu perturbatii si distribuirea continutului vizual pe canale de comunicatii nu
mai sunt incluse n prelucrarea imaginilor.
Ne aflam deci la confluenta dintre prelucrarea digitala a semnalelor si informatica aplicata,
cu un suport de geometrie discreta, algebra superioara, electronica si fizica.
In mod simplist, problema fundamentala din spatele domeniului de prelucrarea si analiza
a imaginilor poate fi redusa la educarea calculatorului pentru a ntelege si a putea
interactiona cu mediul nconjurator. Aceasta nseamna n primul rand realizarea unor
dispozitive prin care diferite caracteristici ale mediului nconjurator sa fie masurate si
traduse ntr-o forma accesibila calculatorului, deci o succesiune de simboluri de 0 si 1.
5

Aceasta este achizitia.


Informatia astfel obtinuta, careia i se impune o organizare si o semnificatie nativa (intrinseca) este transformata si analizata printr-o succesiune de operatii aritmetice si logice,
grupate n algoritmi, ce se mbina n blocuri constitutive ale unui lant de prelucrare.
Rezultatul acestui proces este tot o succesiune de simboluri 0 si 1, avand pentru calculator semnificatia unor decizii sau actiuni.
Ceea ce este definitoriu si individualizeaza conceptul de imagine ca modalitate de descriere
a mediului este faptul ca masuratorile caracteristicilor fizice sunt realizate [simultan] n
mai multe puncte de masura (pozitii nvecinate spatial), a caror organizare spatiala corespunde la mai mult de o dimensiune (deci nu este o organizare liniara, dupa o dreapta,
ci o dispunere dupa un plan sau un volum).
Prin analogie cu informatia uzuala preluata de sistemul vizual uman din mediul
nconjurator, putem considera ca imaginea contine o informatie de natura vizuala. Putem
rezuma toate acestea prin urmatoarea [tentativa] de definitie:
Prelucrarea si analiza imaginilor reprezinta un anasamblu de metode de transformare si
interpretare a informatiei vizuale, reprezentate n forma digitala.
Trebuie remarcat ca terminologia anglo-saxona (originala), numeste disciplina ca Digital
Image Processing, deci prelucrarea digitala a imaginilor. Termenul cheie este cuvantul
digital, nlocuit adesea n mod eronat n multe traduceri romanesti cu termenul de numeric.
Dupa cum o arata dictionarul limbii romane moderne, definitia cuvantului numeric este
aceea de care apartine numerelor, privitor la numere, exprimat prin numere. Forma
digitala este deci reprezentarea oricarui numar printr-o succesiune finita de simbluri de 0
si 1 si este specifica tehnicii de calcul (si calculatoarelor moderne). Reprezentarea digitala
este un caz particular al reprezentarii numerice: rezultatul oricarui calcul efectuat cu
numere este numeric, dar nu orice calcul este realizat digital (folosind o reprezentare
limitata si simplificata).
Prelucrarea si analiza imaginilor nu exista deci independent de calculator (sau orice alta
masina similara, capabila sa foloseasca sau sa modifice informatia digitala prin operatii
aritmetice si logice) si dispozitivul de achizitie. Din punct de vedere fizic sau material,
orice sistem de prelucrare si analiza a imaginilor va fi format din aceste doua componente:
de achizitie si de prelucrare. Achizitia este transformarea caracteristicilor fizice de interes
din mediu n semnale electrice, semnale ce sunt apoi transformate n succesiuni de numere,
fiecare numar fiind apoi transformat ntr-o succesiune de simboluri digitale (de 0 si 1).
Un exemplu foarte simplu este acum clasicul sistem de webcam sau videoconferinta: imaginea [vizibila] a mediului nconjurator este preluata de o mica camera de luat vederi, conectata la un calculator. Camera de luat vederi este responsabila cu preluarea
informatiei semnificative din mediul real tridimensional; acesta este deci dispozitivul de
achizitie. Marimea fizica masurata este intensitatea radiatiei electromagnetice din spectrul vizibil reflectata de componentele scenei, care este transformata n semnal electric
si apoi n simboluri binare, nainte de a fi preluata n forma digitala de catre calculator. Transformarile uzuale sunt cele legate de afisarea imaginii pe un monitor/ ecran de
vizualizare si compresia imaginii (pentru stocare sau transmisie).
In toate aceste sisteme este evidenta diversitatea caracteristicilor fizice preluate din mediul
6

nconjurator; n toate cazurile, sistemul de achizitie este constituit din cateva componente
de baza: sistemul de focalizare, convertorul/ traductorul ce transforma marimea fizica
preluata n semnal electric si convertorul de semnal (sau blocul de easantionare si cuantizare) ce transformar semnalul electric n reprezentare digitala sau informatie cu caracter
discret.

1.2

Aplicatii si sisteme tipice

Acceptand principiul general de definitie a unui sistem de prelucrarea si analiza imaginilor


enuntat, o ntrebare fireasca este legata de existenta unor aplicatii concrete (am putea
sa le numim chiar palpabile) ale unui asemenea tip de sistem. Cartile de specialitate
[33], [21], [8], [68] prezinta un numar spectaculos de aplicatii posibile, din cele mai variate
domenii, mergand de la utilizarea imaginilor preluate de satelitii de observatie pentru
scopuri militare sau civile si pana la utilizarea casnica a fotografiilor personale de vacanta
(trecand prin aplicatiile industrale, medicale, culturale ...). Nicaieri nu este nsa prezentata o abordare mai pragmatica de clasificare a aplicatiilor, dupa masura si fiabilitatea
implementarilor practice functionale. O asemenea clasificare, legata, desigur, de o fereastra de analiza temporala pentru urmatorii (sa zicem) cinci ani, ar cuprinde categoriile:
sisteme functionale, sisteme realizabile si sisteme utopice.
Sistemele functionale se regasesc n mod uzual: filmele stocate pe DVD, fotografiile preluate si transmise pe telefoanele portabile, sistemele de videoconferinta, imagistica medicala tridimensionala (tomografie computerizata, rezonanta magnetica nucleara), controlul
industrial de calitate (defectoscopie nedistructiva automata la scara mare). Sistemele realizabile sunt sisteme ce ar deveni functionale cu un efort suplimentar de cercetare si n
conditiile n care componentele ar deveni mai ieftine, calculatoarele ar deveni mai puternice si rapide, problema ar fi circumscrisa si deci simplificata. Exemple de asemenea
sisteme sunt: identificarea personala biomorfologica dupa amprente, iris ocular, figura;
aparate foto/video inteligente care preiau numai imagini de calitate, protezarea vizuala
si relizarea unei retine artificiale, gestiunea/ cautarea complexa a imaginilor si filmelor.
Consideram ca exemple de sisteme utopice copia sistemului vizual uman (motto), navigatie
vizuala autonoma fara constrangeri, ntelegerea imaginilor de tip general.
Scopul final al acestui material de prezentare a conceptelor fundamentale de prelucrarea
si analiza imaginilor este stabilirea unor baze dupa care sa se poata evalua realizabilitatea
unei aplicatii specifice.
De cele mai multe ori, prelucrarea si analiza imaginilor este restransa la folosirea imaginilor
deja disponibile n forma digitala pe calculator. Aceasta este, desigur, o simplificare, de
cele mai multe ori nefericita, atata vreme cat nu se iau n considerare caracteristicile
particulare de achizitie.
Un sistem tipic de prelucrare si analiza a imaginilor poate fi descompus n componente
din nivelul fizic (hardware) si din nivelul logic (software).
Din punct de vedere hardware, sistemul de analiza si prelucrarea a imaginilor se compune
din senzor, sistemul de digitizare si sistem de calcul. Senzorul grupeaza sistemul de formare a imaginii (de exemplu sistemul de lentile al camerelor de luat vederi), ce strange
7

marimea fizica de interes (de exemplu radiatia electromagnetica a obiectului studiat) pentru a forma imaginea trasaturilor de interes si convertorul, ce transforma marimea fizica
din planul imaginii ntr-un semnal electric. Sistemul de digitizare converteste semnalul
electric al senzorului ntr-o imagine digitala, realizand deci o dubla discretizare: atat a
suportului imaginii (esantionare), cat si a valorilor sale (cuantizare). Sistemul de calcul
realizeaza exploatarea efectiva a datelor digitale culese din scena si poate fi un calculator
de uz general sau dedicat, o placa specializata sau un procesor video sau de semnal.
Sistemul software specializat responsabil cu realizarea efectiva a unei sarcini concrete
(care practic da viata sistemului de calcul) poate fi descompus n mai multe module,
nu neaparat bine separate si nu neaparat prezente mpreuna: mbunatatirea, restaurarea,
compresia, segmentarea si analiza.
Blocul de mbunatatire a imaginilor are ca scop accentuarea anumitor trasaturi [ale
obiectelor continute n imagine] pentru usurarea unor sarcini ulterioare de analiza automata sau interpretare prin afisare. Asemenea metode pot fi utile la extragerea
trasaturilor caracteristice ale obiectelor, eliminarea zgomotelor suprapuse imaginii,
marirea confortului vizual. Acesti algoritmi nu maresc continutul informational al imaginii si sunt n general interactivi si puternic dependenti de aplicatie.
Restaurarea imaginilor se refera la eliminarea sau minimizarea efectelor unor perturbatii
si a unor degradari. Perturbatiile reprezinta n general zgomotele (modelate ca procese
aleatoare) ce se suprapun n cursul achizitiei imaginii (din cauza senzorului si a lantului
de transmisiune si captare); degradarile sunt cauzate de imperfectiunile si limitarile deterministe ale senzorului (efecte de apertura, timp de expunere, deficiente geometrice ale
sistemului de lentile, ...).
Compresia imaginilor se refera la reducerea volumului de date (numarului de biti) cu
care este reprezentata imaginea, printr-o transformare reversibila - imaginea trebuie sa
poata sa fie recuperata integral (sau cu diferente foarte mici, controlabile) din versiunea
sa comprimata.
Segmentarea este procesul de descompunere a unei imagini (sau scene) n elementele
(obiectele) sale constituente. Adeseori, segmentarea este strans legata de algoritmii de
analiza, al caror scop este de a realiza masuratori cantitative sau evaluari calitative asupra
unor anumite categorii de obiecte, prezente n imaginea data.

1.3

Imaginea si elementele sale

Sa ne reamintim, imaginea este un ansamblu de valori plasate dupa o forma spatiala de


dimensiune supra-unitara (plan, volum, ... dar nu o dreapta). Fiecare asemenea valoare
preluata din mediu de catre sistemul de achizitie corespunde valorilor caracteristicilor fizice masurate ntr-o vecinatate spatiala a punctului efectiv de masura. In cazul cel mai
simplu, punctele de masura sunt asezate ntr-un plan si valorile corespunzatoare sunt
organizate ntr-o structura bidimensionala, plana. Imaginea este formata ca un mozaic
prin plasarea unor pietricele sau celule, purtand fiecare cate o valoare a marimii fizice
masurate, n pozitia corespunzatoare punctului de masura. Aceste celule, sau pietricele ce compun imaginea sunt numite elemente de imagine, sau pixeli (la singular pixel,
8

provenind din contragerea denumirii originale de picture element) si sunt caracterizate de


valoare, pozitie, forma si dimensiune.
Dupa cum pixelii au sau nu aceeasi forma si dimensiune vom vorbi despre imagini
esantionate regulat (ca n cazul mozaicului de hexagoane sau patrate) sau neregulat.
In practica se folosesc doar imagini esantionate regulat, cu pixeli patrati (sau, mai rar,
pixeli hexagonali)1 .
In cazul clasic al unei imagini compuse din pixeli patrati este pusa n evidenta o structura
de randuri si coloane (structura de matrice/ tablou). Pozitia (coordonatele) fiecarui pixel
este masurata n raport cu un sistem de coordonate cartezian, atasat imaginii, a carui
origine este plasata, n mod conventional, n coltul din stanga sus al imaginii, coordonatele
crescand de la stanga la dreapta (coordonata de coloana) si de sus n jos (coordonata de
linie).
Dimensiunea caracteristica a pixelului este legata de suprafata din lumea reala n care a
fost efectuata masuratoarea la care se refera valoarea stocata n pixel. Cu cat dimensiunea
pixelului este mai mica, cu atat mai bine sunt preluate diferitele detalii ale scenei. Conceptul de dimensiune a pixelului este direct legat de conceptul de rezolutie a imaginilor
o imagine de rezolutie mare este formata din pixeli de dimensiune mica, rezultand astfel
un numar mare de elemente de imagine care sa reprezinte scena. Dimensiunea pixelului
este inversul rezolutiei; spre exemplu, rezolutia de 100 dpi (dots per inch) a unui scaner,
semnifica preluarea informatiei n 100 de puncte (dots) pentru fiecare inch al suportului
fizic al imaginii; atunci dimensiunea elementului de baza este de 1/100 inch.
Dupa tipul valorilor asociate fiecarui pixel din structura bidimensionala, imaginile pot fi
mpartite n imagini scalare si imagini vectoriale. La imaginile scalare, fiecare componenta este un scalar (un unic numar); ca exemple de astfel de imagini se pot da imaginile
monocrome (n care punctele au doar doua valori posibile, ce corespund unui continut
binar al imaginii, n general alb-negru) si imaginile cu nivele de gri (de tipul imaginii
de luminanta de pe ecranele televizoarelor alb-negru). La imaginile vectoriale, fiecare
componenta este un vector de numere; cazul particular cel mai de interes este acela al
imaginilor color, n care vectorul are trei elemente (ce corespund celor trei constituente de
baza ale oricarei culori); n general, pentru imaginile multicomponenta, vectorul asociat
fiecarui punct din imagine are mai multe elemente (caz ce corespunde imaginilor preluate
n mai multe benzi de frecventa, asa cum sunt imaginile de teledetectie ale satelitilor,
imaginile de termodetectie n benzile de infrarosu,...). Tot n categoria imaginilor vectoriale intra nsa si imaginile stereo (o pereche de imagini ale aceleiasi scene, luate din
unghiuri diferite) si secventele de imagini.
La randul lor, imaginile scalare pot fi clasificate dupa semnificatia ce se da valorii numerice
a pixelilor. Vom distinge astfel imagini de intensitate si imagini indexate. O imagine de
intensitate este o imagine n care valoarea fiecarui pixel este o masura directa a intensitatii
luminoase sau a marimii fizice preluate de senzor, ca de exemplu n imaginile cu nivele
de gri. Pixelii unei imagini de intensitate pot avea orice fel de valori: reale sau naturale
1

Aceasta este problema de acoperire a planului cu poligoane de forma regulata, avand aceeasi lungime
a laturii si avand varfuri comune. Acoperirile regulate (cu un acelasi, unic, tip de poligoane) se numesc
platonice si se pot obtine numai prin folosirea unor poligoane de baza de tip triunghi, patrat sau hexagon.
Acoperirile neregulate (compuse din poligoane de mai multe tipuri) se numesc aristotelice si prezint
ao
mai mare variabilitate.

(depinzand de faptul ca imaginea este sau nu cuantizata).


O imagine indexata este acea imagine n care valoarea fiecarui pixel este un indice (adresa)
prin care se regaseste informatia de valoare asociata pixelului respectiv. Deci, pentru
afisarea sau reprezentarea unei imagini indexate este necesara o informatie suplimentara,
de asociere ntre indici si valori, realizata de tabela de valori. n cazul unei imagini
color indexate, tabela se numeste tabela de culoare, si este o matrice n care fiecare linie
contine descrierea unei culori (deci cele trei componente ce definesc culoarea - n mod
tipic intensitatile relative de rosu, verde si albastru ce compun culoarea data printr-un
amestec aditiv). Deci tabela de culoare are trei coloane; numarul de linii al tabelei de
culoare este egal cu numarul de culori din imaginea reprezentata si este n mod tipic o
putere a lui doi (16, 256, ...). Indicele (valoarea pixelului) va fi numarul de ordine al
liniei din tabela de culoare pe care se gaseste descrierea culorii. Este evident ca valorile
pixelilor unei imagini indexate nu pot fi decat numere naturale (deoarece sunt indici ntr-o
matrice). Pentru o imagine cu nivele de gri, componentele de rosu, verde si albastru ale
fiecarei culori din paleta de culoare sunt identice. Daca specificarea componentelor de
culoare se face prin numere de 8 biti (deci ntre 0 si 255, adica cazul cel mai des folosit),
tabela de culoare va avea 256 de culori (tonuri de gri) diferite. Specificarea acestora se va
face cu indecsi ntre 0 si 255, alocati conform conventiei 0 - negru, 255 - alb. In acest fel,
pentru o imagine indexata cu nivele de gri, nu mai este necesara specificarea tabelei de
culoare; culorii reprezentate de indexul i i corespunde nivelul de gri i, adica tripletul RGB
(i, i, i). Modelul imagini indexate este un caz particular de folosire a tehnicii dictionar
(sau tehnicii tabelului de echivalenta - Look Up Table - LUT): o tehnica de regasire a unei
informatii de dimensiune mare folosind asocierea unei chei de cautare mult mai mici.

1.4

Structura c
artii

Cartea este structurata pe trei parti ce grupeaza noua capitole, a caror sucesiune
urmareste structura logica (software) tipica a unui sistem de prelucrare si analiza a imaginilor.
Partea ntai a lucrarii trateaza principiile de baza ale prelucrarii imaginilor - prelucrarile
punctuale (de modificare a contrastului capitolul 2), prelucrarile de vecinatate, liniare
si neliniare (filtrarea de eliminare a zgomotului n domeniul spatial al imaginii capitolul
3) si prelucrarile integrale (filtrarea si reprezentarea imaginilor n domeniul frecventelor
capitolul 4).
Partea a doua a lucrarii descrie tehnicile de analiza a imaginilor: segmentare orientata pe
regiuni (capitolul 5), segmentare orientata pe contururi (capitolul6), descriere a texturilor
(capitolul 7) si descriere a formelor plane (capitolul 8).
Ultima parte a lucrarii (capitolele 9 si 10) trateaza modul de descriere si reprezentare a culorilor, precum si tehnici de baza de compresie a imaginilor (alb-negru sau color), regasite
n formate standard de fisiere imagine (BMP, JPG, GIF) atat din categoria tehnicilor de
compresie fara pierderi, cat si din categoria tehnicilor de compresie cu pierderi.
10

1.5

Lista principalelor simboluri si conventii de


notatie folosite

Imagine originala (nedegradata, ideala): f0


Imaginea zgomotului (imaginea de zgomot): z
Imaginea curenta (disponibila): f ; n general: f = Compunere(f0 , z)
Imagine obtinuta dupa o prelucrare: g
Derivata imaginii curente: f 0
Derivata imaginii dupa directia r: fr
Numar de linii din imagine: L
Numar de coloane din imagine: C (uneori L = C si vorbim numai de dimensiunea imaginii,
N)
Coordonata de linie a pixelului: l (coordonata discreta)
Coordonata de coloana a pixelului: c (coordonata discreta)
Coordonata de linie a pixelului: y (coordonata continua)
Coordonata de coloana a pixelului: x (coordonata continua)
Functia de transformare: T
Histograma imaginii: h
Histograma cumulativa a imaginii: H
Numar de nivele de cuantizare din imagine: M , numerotate de la 0 la M 1
Vecinatate spatiala: V
Vecinatatea spatiala a pixelului (l, c): V(l,c)
Coordonate relative n vecinatate: (m, n)
Nucleul filtrului liniar: w(m, n) sau wmn
Statistica de ordine de ordin i: x(i)
Coordonatele frecventelor spatiale: (u, v)
Nucleul transformarii unitare: K(l, c, u, v)
Operatia de convolutie: *

11

12

Partea I
Prelucrarea imaginilor

13

Prelucrarea imaginilor poate fi descrisa n mod simplificat ca o colectie de metode si algoritmi al caror scop este transformarea informatiei vizuale reprezentate n forma digitala
n imagini, prin modificarea aspectul perceptual, dar fara modificarea continutului sau
reprezentarii. Din punct de vedere functional, un bloc de prelucrare a imaginilor are ca
intrare o imagine si produce la iesire o imagine ce are aceleasi caracteristici vizuale ca si
imaginea de intrare (ceea ce poate fi numit n engleza un bloc de tip Image In, Image
Out).
Din punctul de vedere al metodelor utilizate, n functie de complexitatea operatiilor,
distingem mai multe tipuri de operatii de prelucrare:
operatii punctuale, prin care se realizeaza o corespondenta de tip unu la unu ntre
valoarea initiala a unui nivel de gri si noua valoare a acestuia, pentru fiecare pixel
al imaginii. Tot n aceasta categorie se pot include si operatiile de pseudocolorare,
care se refera la afisarea imaginii folosind o paleta de culoare modificata.
operatii locale (sau de vecinatate), prin care noua valoare a nivelului de gri ntr-un
pixel este obtinuta din valoarea initiala a pixelului repectiv si din valorile unor pixeli
vecini pixelului considerat;
operatii integrale, n care noua valoare a unui pixel este dependenta de valorile
tuturor pixelilor imaginii.
Din punctul de vedere al efectelor induse n imagine, operatiile de prelucrare pot realiza:
compensarea sau corectarea degradarilor de natura perceptuala subiectiva (mbunatatirea
prin operatii punctuale sau contrastarea bazata pe operatii de vecinatate), compensarea sau corectarea degradarilor de natura aleatoare (filtrarea de netezire, realizata prin
operatii de vecinatate) si compensarea sau corectarea degradarilor deterministe (restaurarea imaginilor, realizata prin operatii de tip integral).
Aceasta prima parte a lucrarii trateaza principiile de baza ale prelucrarii imaginilor: prelucrarile punctuale (de modificare a contrastului capitolul 2), prelucrarile de vecinatate,
liniare si neliniare (filtrarea de eliminare a zgomotului n domeniul spatial al imaginii
capitolul 3) si prelucrarile integrale (filtrarea si reprezentarea imaginilor n domeniul
frecventelor capitolul 4).

15

16

Capitolul 2
Imbun
at
atirea imaginilor
Imbunatatirea imaginilor este o sintagma generala ce se refera la o clasa larga de operatii
de prelucrare al caror scop este marirea vizibilitatii imaginii n anasamblul ei, sau a
componentelor (sau partilor) sale, n sensul perceptiei vizuale umane. Ca urmare, criteriile
de evaluare a calitatii unei imagini vor fi subiective (depinzand de utilizatorul imaginii)
si specifice aplicatiei din care provine imaginea. Se poate face analogia operatiilor de
mbunatatire a imaginilor cu reglajul tonalitatii muzicii ascultate [71]: astfel dupa cum n
cazul melodiilor, n functie de ascultator, se pot favoriza componentele nalte sau joase,
sau nici unele, si n cazul imaginilor se pot accentua sau inhiba anumite componente. In
principiu, mbunatatirea imaginilor se poate face fara a lua n considerare nici o informatie
asupra imaginii originale sau asupra procesului de degradare care a facut ca imaginea data
sa necesite o mbunatatire. Conform acestui punct de vedere chiar si o imagine originala
nedegradata poate fi mbunatatita, obtinand o imagine falsificata (n sensul diferentelor
fata de original), dar subiectiv preferabila (avand un contrast mai mare, muchii si frontiere
mai accentuate, regiuni uniforme mai netede).
Prin mbunatatire, unei imagini nu i se adauga nici o informatie noua fata de cea existenta
initial, continutul original fiind nsa prezentat diferit. Desi la o examinare superficiala
afirmatia este corecta, putem gasi macar doua obiectii (sau contraexemple) la aceasta
formulare:

din punctul de vedere al utilizatorului, informatia, chiar daca exista, nu poate fi


folosita, deci este asimilabil nula. Acesta este cazul imaginilor obtinute n conditii
extreme de iluminare, ce prezinta un contrast foarte slab (imagini subexpuse sau
supraexpuse);

din punctul de vedere al teoriei informatiei, informatia din imagine poate fi asimilata
entropiei procesului aleator ale carui realizari particulare sunt valorile de gri ale
pixelilor; entropia se modifica nsa la orice transformare ce afecteaza distributia
nivelelor de gri din imagine.
17

2.1

Operatii punctuale de mbun


at
atire

Operatiile punctuale de modificare a contrastului (numite si transformari ale nivelului de


gri) sunt asocieri (mapping, n engleza) ce leaga nivelul de gri original u de noua sa valoare
v. O asemenea asociere nu este altceva decat o functie:
v = T (u), u [0, M 1].

(2.1)

In [21] se stabilesc ca necesare conditiile ca transformarea T sa pastreze gama admisibila


de valori ale imaginii (daca nivelele de gri au fost reprezentate pe M nivele de cuantizare,
atunci 0 6 T (u) 6 M 1, u [0; M 1]) si ca transformarea T sa fie monoton crescatoare
1
(sau descrescatoare2 ) pentru a pastra ordinea ntre nivelele de gri (componentele nchise
din imagine sa ramana nchise si dupa transformare).
Vizibilitatea componentelor scenei este determinata n general de contrastul zonei din
imagine; contrastul este o masura proportionala cu diferenta dintre luminozitatea (intensitatea, nivelul de gri) unor pixeli selectati din componente vecine. Pentru a putea
prevedea deci efectele unei operatii de mbunatatire de tipul prezentat asupra contrastului este deci suficienta studierea diferentelor de nivele de gri ale unei aceleiasi perechi de
pixeli nainte si dupa efectuarea transformarii. La limita, este posibil ca pixelii perechii
considerate sa aiba nivelul de gri original diferit cu doar o unitate (cuanta minima), si
atunci modificarea contrastului va fi data de diferenta valorilor transformate, adica de
derivata functiei de transformare:
C=

2.1.1

v
T (u2 ) T (u1 )
dT (u)
=
=
= T 0 (u).
u
u2 u 1
du

(2.2)

Modificarea liniar
a a contrastului

Tehnica de modificare liniara a contrastului cea mai des folosita este o transformare liniara
pe portiuni, data de:

T1 u, 0 u < T1
(u T1 ) , T1 u < T2
+ T
(2.3)
v=
2 T1

M 1
+ M 1T2 (u T2 ) , T2 u < M
In formula anterioara, parametrii de control sunt T1 , T2 , si ; acestia sunt grupati
cate doi, definind punctele (T1 , ) si (T2 , ). Aceste doua puncte de control, mpreuna
cu punctele fixe (0, 0) si (M 1, M 1) vor defini cele trei segmente de dreapta ce
apar n formula (2.3). Un exemplu de astfel de transforare este prezentat n figura 2.1
b). Rezultatul aplicarii unei asemenea operatii punctuale se obtine modificand valoarea
1

Exist
a operatii punctuale care nu sunt monotone [33]. Asa sunt reprezentarea planelor de bit (pentru
fiecare pixel al imaginii, fiecare bit al reprezentarii binare a nivelului de gri este considerat ca valoarea
unui pixel al unei imagini binare), transformarea de lipire clipping (care pastreaza nemodificate nivelele
de gri dintr-un anumit interval si le anuleaza pe celelalte - imaginea rezultata continand obiectele de
interes pe fond negru) si transformarea de taiere slicing (care transforma nivelele de gri dintr-un interval
fixat n alb si tot restul n negru, si deci nu este altceva decat un alt tip de binarizare).
2
Singura transformare punctuala monoton descrescatoare utilizata este negativarea imaginii [21], [33],
caracterizata de v = M 1 u.

18

(nivelul de gri) fiecarui pixel al imaginii initiale, u, conform (2.3), obtinand noul nivel de
gri v.
Pentru functia liniara pe portiuni este evident ca derivata va fi constanta pe aceleasi
intervale, avand valoarea egala cu panta segmentului de dreapta.

C=

, daca u [0; T1 ]
T1

,daca u [T1 ; T2 ]
T2 T1
M 1
, daca u [T2 ; M
L1T2

(2.4)
1]

Daca pe un interval aceasta panta este subunitara, atunci diferenta ntre nivelele alaturate
de gri se micsoreaza si deci contrastul scade; daca din contra, panta dreptei este supraunitara, diferenta dintre nivelele de gri alaturate se mareste si contrastul va creste.
v
250

200

150

100

50

0
0

50

100

150

T1

a)

200

250
u

T2

b)
C
2
1.8
1.6
1.4
1.2
1
0.8
0.6
0.4
0.2
0
0

c)

50

100

150

200

250

d)

Figura 2.1: Rezultatul modific


arii liniare pe portiuni a contrastului: a) imagine original
a; c) imagine prelucrat
a dupa transformarea din (2.3) cu (T1 , ) = (100, 30) si
(T2 , ) = (200, 230); b) functia de transformare a nivelelor de gri; d) functia de modificare a contrastului.
Dintre multiplele moduri de alegere a unor combinatii (T1 , ) si (T2 , ), unele variante
sunt de interes particular. Daca se alege = 0 si = M 1, transformarea (2.3)
se numeste transformarea de ntindere maxima a contrastului n intervalul [T1 , T2 ]. O
19

varianta automata a acestei transformari se poate obtine prin alegerea pragurilor T1 si T2


astfel ca n imagine sa existe mai putin de K% pixeli ce au nivelul de gri mai mic decat T1
si respectiv mai mare ca T2 . Daca pentru transformarea (2.3) se alege = 0, = M 1 si
T1 = T2 , transformarea se numeste binarizare si produce o imagine ce contine doar pixeli
albi si negri (avand astfel un contrast maxim). Figura 2.2 exemplifica utilizarea acestor
functii de transformare.

2.1.2

Modificarea neliniar
a a contrastului

Principalul dezavantaj al tehnicii liniare pe portiuni prezentate este faptul ca modificarea


contrastului este aceeasi pe un ntreg interval de nivele de gri, si nu este posibila o modificare neuniforma a contrastului pe ntregul interval de nivele de gri sau n jurul unui
anume nivel de gri. Tehnicile neliniare au aceste proprietati.
O prima varianta este compandarea domeniului [33], definita de o curba logaritmica si cu
punctele fixe (0, 0) si (M 1, M 1):
v = T (u) =

M 1
lg(1 + u)
lg M

(2.5)

Contrastul va varia neuniform de-a lungul scalei de gri, marindu-se la capatul inferior
(negru) si micsorandu-se la capatul superior (alb). In mod reciproc se poate defini expandarea domeniului, ca transformare inversa celei de compandare, si deci avand o alura
exponentiala:
u
v = T (u) = M M 1
(2.6)
Contrastul va varia neuniform de-a lungul scalei de gri, marindu-se la capatul superior
(alb) si micsorandu-se la capatul inferior (negru). Termenii de compandare si de expandare
au fost dati prin asemanare cu transformarile folosite n teoria codarii si cuantizarii (ce
intervin n metodele de cuantizare a semnalului vocal pentru telefonia digitala, cunoscute
sub numele de legea A n Europa si legea n America). Trebuie nsa subliniat ca n
prelucrarea imaginilor aceste transformari nu afecteaza domeniul de valori, care ramane
[0, M 1].
Alte transformari neliniare pot fi obtinute prin folosirea unor functii de tip putere; si
acestea au nivelele de gri extreme ca puncte fixe ((0, 0) si (M 1, M 1)). O prima
varianta este functia putere:

r
u
(2.7)
v = T (u) = (L 1)
L1
Dupa valorile parametrului-putere r se pot obtine doua comportari diferite: pentru r < 1
comportarea este de acelasi tip cu al functiei de compandare logaritmice, iar pentru r > 1
comportarea este de tipul functiei de expandare. Trebuie remarcat ca legile de variatie
ale contrastului vor fi nsa diferite.
Exista si o varianta a transformarii de tip putere la care se mai adauga un punct fix (T, T ),
functia devenind cu doua intervale de definitie:
r

T Tu , daca u [0; T ]
v = T (u) =
(2.8)
M 1u r
M 1 (M 1 T ) M
, daca u [T, M 1]
1T
20

250

200

150

100

50

0
0

50

100

150

200

a)

250
u

T2

T1

b)
v

250

200

150

100

50

0
0

50

100

150

200

T1

c)

250
T2

d)
v

250

200

150

100

50

0
0

50

100

150
T1=T2

e)

200

250
u

f)

Figura 2.2: Rezultatul modific


arii liniare pe portiuni a contrastului, dupa (2.3), pena cu (T1 , ) = (50, 0) si (T2 , ) =
tru imaginea din figura 2.1 a): a) imagine prelucrat
(150, 255) si b) functia de prelucrare corespunzatoare; c) imagine n care s-a aplicat
ntinderea automata maxima de contrast cu K = 5% si d) functia de prelucrare corespunz
atoare; e) binarizare cu un prag T1 = T2 = 150 si f ) functia de prelucrare corespunz
atoare.

21

v
250

200

150

100

50

0
0

50

100

150

200

250
u

a)

b)
v
250

200

150

100

50

0
0

50

100

150

200

250
u

c)

d)
v
250

200

150

100

50

0
0

50

100

150

200

250
u

e)

f)

Figura 2.3: Rezultatul modific


arii neliniare a contrastului pentru imaginea din figura 2.1
a): a) imagine prelucrat
a cu transformare logaritmic
a si b) functia de prelucrare corespunz
atoare; c) imagine prelucrat
a cu functie putere cu punct fix (r = 3, T = 150) si d)
functia de prelucrare corespunz
atoare; e) imagine prelucrat
a cu functie putere cu r = 3 si
f ) functia de prelucrare corespunz
atoare.

2.2

Egalizarea de histogram
a

Dupa cum am vazut n sectiunea precedenta, exista o varietate de transformari punctuale


ce pot modifica contrastul (si respectiv perceptia vizuala) a imaginilor cu nivele de gri. Cu
22

exceptia ntinderii maxime de contrast, nici o metoda de mbunatatire nu este automata si


adaptiva, n sensul determinarii tipului de transformare sau al parametrilor caracteristici
ai acesteia pe baza continutului imaginii de prelucrat. Necesitatea reglarii automate a
parametrilor si a alegerii tipului de transformare este nsa evidenta. Realizarea unei
asemenea operatii automate de mbunatatire a aspectului perceptual al imaginilor necesita
stabilirea a doua modele: modelul de caracterizare a continutului imaginii si modelul
de determinare a transformarii de aplicat, ca va folosi valori derivate din modelul de
caracterizare al continutului imaginii.
Egalizarea de histograma este o tehnica de mbunatatire a imaginilor prin cresterea contrastului. Transformarea este adaptiva si automata, n sensul definitiei anterioare, descrierea continutului imaginii fiind realizat prin histograma imaginii, iar mbunatatirea
propriu-zisa fiind rezultatul operatiei de egalizare (sau uniformizare) a acestei histograme.
Histograma unei imagini cu M nivele de gri este o functie definita de:
L1 C1
Ni
1 XX
h(i) =
=
(f (l, c) i))
LC
L C l=0 c=0

i = 0, 1, . . . , M 1,

(2.9)

unde Ni este numarul de pixeli din imagine ce au nivelul de gri i, L si C reprezinta numarul
de linii si de coloane ale imaginii, iar este functia indicator. Valorile histogramei imaginii
sunt probabilitatile de aparitie n imagine a diferitelor nivele de gri din intervalul posibil
de valori ([0, M 1]). Histograma imaginii este functia de densitate de probabilitate de
ordinul unu, determinata experimental, a variabilei aleatoare cu valori discrete nivel de
gri 3 . In figura 2.4 sunt prezentate histogramele unor imagini cu nivele de gri.
Histograma cumulativa este functia de repartitie a variabilei aleatoare ce reprezinta nivelul
de gri al pixelilor imaginii, si reprezinta deci probabilitatea ca un pixel din imagine sa
aiba nivelul de gri mai mic ca un prag fixat:
H(j) =

j
X

h(i), j = 0, 1, . . . , M 1.

(2.10)

i=1

Dupa cum se poate remarca si din exemplele prezentate n figura 2.4, majoritatea imaginilor prezinta o distributie neuniforma a nivelelor de gri n orice imagine exista nivele de gri
predominante si exista nivele de gri putin prezente sau absente. Operatiile de mbunatatire
a imaginilor (pentru mbunatatirea perceptiei vizuale) au ca scop redistribuirea nivelelor
de gri din imagine, astfel ncat acestea sa ocupe ntreaga gama de valori disponibile
[0, M 1]. Daca se impune conditia ca noua distributie a nivelelor de gri sa fie uniforma,
operatia ce realizeaza aceasta cerinta se numeste egalizare de histograma.
Scopul egalizarii de histograma este deci obtinerea unei distributii uniforme a nivelelor
de gri; imaginea rezultata va prezenta cea mai mare mbunatatire a contrastului, contrast distribuit regulat n ntreaga gama de valori posibile a nivelelor de gri. Din punct de
3

Dupa cum se arata si n [11], datorita discretizarii valorilor pixelilor din imagine, densitatea de probabilitate cautata este nula peste tot cu exceptia punctelor ce corespund valorilor cuantizate ale pixelilor,
{0, 1, . . . , M 1}. In aceste puncte, functia de densitate de probabilitate acumuleaza probabilitatile de
aparitie ale valorilor corespunzatoare, probabilitati ce trebuie estimate conform primei parti a ecuatiei
(2.9). In ipoteza ca valorile pixelilor dintr-o imagine sunt independente statistic, atunci respectivele
probabilitati pot fi estimate folosind valorile pixelilor din imagine, dupa modelul partii a doua a ecuatiei
(2.9).

23

a)

b)

h(i)

h(i)

0.05

0.02

0.045

0.018

0.04

0.016

0.035

0.014

0.03

0.012

0.025

0.01

0.02

0.008

0.015

0.006

0.01

0.004

0.005

0.002

0
0

50

100

150

200

250

0
0

c)

50

100

150

200

250

d)

Figura 2.4: Imagini cu 256 nivele de gri si histogramele lor. Abscisele i ale graficelor
reprezint
a nivelul de gri, iar ordonatele h(i) sunt probabilit
atile de aparitie a nivelelor de
gri i. Graficele au fost reprezentate presupun
and variatia continu
a a nivelelor de gri.
vedere matematic, egalizarea de histograma nseamna transformarea unei distributii oarecari (descrisa de histograma imaginii initiale) ntr-o distributie uniforma. Implementarea
egalizarii de histograma presupune deci determinarea acestei functii scalare de o variabila
(care modifica valorile nivelelor de gri).
Un rezultat clasic, usor de demonstrat, din domeniul variabilelor aleatoare este acela ca,
pentru orice variabila aleatoare (avand deci orice distributie) functia sa de repartitie o
transforma ntr-o variabila aleatoare distribuita uniform n intervalul [0, 1] [11], [67].
In ceea ce priveste functia de repartitie de ordinul unu al imaginii, aceasta este histograma
cumulativa a imaginii, definita n (2.10). Astfel, egalizarea de histograma se obtine
modificand valoarea fiecarui pixel din imagine printr-o functie ce se obtine rescaland
valorile histogramei cumulative a imaginii (2.10) din intervalul [0, 1] n toata gama de
nivele de gri a imaginii, [0, M 1]. Rezumand, putem scrie expresia functiei de realocare
a nivelelor de gri F (i) cu care se implementeaza operatia de egalizare de histograma ca:

H(i) H(0)
F (i) =
(M 1) ,
i = 0, 1, ...M 1.
(2.11)
1 H(0)
unde cu bc am notat operatorul de rotunjire la cel mai apropiat ntreg. Figura 2.6
24

a)

b)

h(i)

h(i)

0.015

0.03
0.025

0.01

0.02
0.015

0.005
0.01
0.0050

0
0

50

100

150

200

250

0.0
0

50

100

c)

150

200

250

150

200

250

d)

H(i)
H(i)

0.9

0.9

0.8

0.8

0.7

0.7

0.6

0.6

0.5

0.5

0.4

0.4

0.3

0.3

0.2

0.2

0.1

0.1

0
0

50

100

150

200

250

0
0

e)

50

100

f)

Figura 2.5: Histogramele si histogramele cumulative ale unor imagini cu nivele de gri: a),
b) imagini cu nivele de gri; c), d) histogramele imaginilor din a) si b); e), f ) histogramele
cumulative ale imaginilor din a) si b). Abscisele i ale graficelor reprezint
a nivelul de gri.
Graficele au fost reprezentate presupun
and variatia continu
a a nivelelor de gri.

prezinta efectul egalizarii de histograma pentru imagini cu nivele de gri ce nu prezinta


degradari perceptuale vizibile. Figura 2.7 prezinta rezultatele egalizarii de histograma
pentru o imagine cu contrast scazut (determinat de continutul imaginii), iar figurile 2.8 si
2.9 prezinta rezultatele egalizarii de histograma pentru doua imagini puternic degradate
25

(rezultat al fotografierii cu timpi de expunere necorespunzatori).

a)

b)

c)

d)

e)

f)

Figura 2.6: Imagini cu nivele de gri n forma originala (coloana din stanga) si rezultatul
egaliz
arii de histogram
a (coloana din dreapta).
Dupa cum se poate remarca din exemplele prezentate, egalizarea de histograma reuseste
mbunatatirea automata a constrastului global al imaginilor, indiferent de aparenta lor
vizuala initiala (si deci indiferent de natura degradarilor pe care imaginea originala le-a
suferit: subexpunere, supraexpunere sau chiar nici o degradare). In general, rezultatele
egalizarii de histograma sunt satisfacatoare pentru clase largi de imagini. Totusi, o analiza
mai atenta, poate pune n evidenta probleme ale acestei tehnici de mbunatatire, probleme
ce pot fi usor constatate prin inspectia figurilor 2.7 - 2.9. Este evident faptul ca histograma
26

a)

b)

h(i)

h(i)

0.04

0.04

0.035

0.035

0.03

0.03

0.025

0.025

0.02

0.02

0.015

0.015

0.01

0.01

0.005

0.005

0
0

50

100

150

200

250

0
0

c)

50

100

150

200

250

d)

Figura 2.7: Rezultatul egaliz


arii de histogram
a pentru o imagine cu contrast scazut: a)
imagine originala; b) egalizarea de histogram
a aplicat
a imaginii din a); c) histograma
imaginii originale din a); d) histograma imaginii din b) obtinute dupa egalizarea de histogram
a a imaginii originale. Imaginea initial
a are 171 nivele de gri diferite, cuprinse n
intervalul [14; 166]; dupa egalizarea de histogram
a, imaginea are numai 44 de nivele de gri
diferite, cuprinse n intervalul [0; 255].

imaginii obtinute ca urmare a egalizarii de histograma nu este uniforma si nici nu ocupa


ntreg intervalul de nivele de gri (exista foarte multe nivele de gri nefolosite, care dau
aspectul caracteristic n pieptene al histogramei obtinute prin tehnica de egalizare). De
asemenea, dupa cum este prezentat si n legenda figurilor, numarul de nivele de gri diferite
prezente n imaginile obtinute prin egalizare este ntotdeauna mai mic decat numarul de
nivele de gri diferite prezente n imaginea initiala. Putem astfel spune ca, de fapt, tehnica
de egalizare de histograma creaza nivele de gri lipsa, pe care le repartizeaza uniform n
ntreg intervalul de nivele de gri posibile (adica [0, M 1]).
Acest comportament al egalizarii de histgrama este normal, avand n vedere faptul ca
implementarea sa se bazeaza pe o transformare a nivelelor de gri printr-o functie scalara,
asa cum este descrisa de (2.1). Aceasta nseamna ca, pe de o parte, toti pixelii din imaginea
initiala ce au acelasi nivel de gri vor capata n urma egalizarii de histograma un acelasi
27

a)

b)

h(i)

h(i)

0.1

0.1

0.09

0.09

0.08

0.08

0.07

0.07

0.06

0.06

0.05

0.05

0.04

0.04

0.03

0.03

0.02

0.02

0.01

0.01

0
0

50

100

150

200

250

0
0

c)

50

100

150

200

250

d)

Figura 2.8: Rezultatul egaliz


arii de histogram
a pentru o imagine subexpus
a: a) imagine
original
a; b) egalizarea de histogram
a aplicat
a imaginii din a); c) histograma imaginii
subexpuse din a); d) histograma imaginii din b) obtinute dupa egalizarea de histograma a
imaginii subexpuse. Imaginea initial
a are 96 nivele de gri diferite, cuprinse n intervalul
[0; 95]; dupa egalizarea de histogram
a, imaginea are numai 45 de nivele de gri diferite,
cuprinse n intervalul [0; 255].

nou nivel de gri, iar pe de alta parte, avand n vedere ca functia de transformare nu este
n general bijectiva (histograma cumulativa a unei imagini nu este de obicei bijectiva),
este de asteptat ca un acelasi nivel de gri din imaginea de iesire sa provina din nivele de
gri diferite (totusi similare, alaturate) din imaginea initiala. Aceste constatari explica, pe
de o parte, reducerea numarului de nivele de gri diferite din imagine, si, pe de alta parte,
ne-egalizarea perfecta a histogramei.
Folosirea unei transformari punctuale pentru transformarea nivelelor de gri va constitui
ntotdeauna limitarea esentiala n realizarea unei egalizari corespunzatoare a histogramei.
Solutiile propuse n mod uzual pentru compensarea acestor probleme se refera de obicei
la ajustarea bijectivitatii functiei de transformare (care este histograma cumulativa a
imaginii) prin modificarea histogramei imaginii. Aceasta se poate realiza n principal n
28

a)

b)

h(i)

h(i)

0.1

0.1

0.09

0.09

0.08

0.08

0.07

0.07

0.06

0.06

0.05

0.05

0.04

0.04

0.03

0.03

0.02

0.02

0.01

0.01

0
0

50

100

150

200

250

0
0

c)

50

100

150

200

250

d)

Figura 2.9: Rezultatul egaliz


arii de histogram
a pentru o imagine supraexpus
a: a) imagine
original
a; b) egalizarea de histogram
a aplicat
a imaginii din a); c) histograma imaginii
supraexpuse din a); d) histograma imaginii din b) obtinute dupa egalizarea de histogram
a
a imaginii supraexpuse. Imaginea initial
a are 131 nivele de gri diferite, cuprinse n intervalul [123; 255]; dupa egalizarea de histogram
a, imaginea are numai 53 de nivele de gri
diferite, cuprinse n intervalul [0; 255].

doua feluri.
O varianta de implementare este adaptarea tehnicii de egalizare a histogramei. Astfel,
suportul spatial al imaginii va fi descompus n zone n care egalizarea de histograma va
fi aplicata independent. Aceasta este echivalent cu adaptarea functiei de transformare
a nivelelor de gri, valoarea fiecarui pixel din imagine fiind modificata dupa o functie
dependenta de pozitia pixelului n imagine [47], [31]. La limita, functia de egalizare de
histograma poate fi determinata pentru fiecare pixel din imagine (evident, n functie de
valorile pixelilor selectati ntr-o vecinatate de forma si dimensiune impusa n jurul pixelului
respectiv) si va fi aplicata numai acelui pixel. Aceasta tehnica de adaptare a egalizarii de
histograma va produce o marire semnificativa (maxima) a constrastului n jurul fiecarui
pixel; de cele mai multe ori nsa, aceasta constituie un dezavantaj, dupa cum se poate
29

remarca si din imaginea 2.10 a).


O a doua varianta de modificare a tehnicii de baza de egalizare a histogramei este numita
egalizarea histogramei cu limitare a contrastului si se bazeaza pe reducerea ne-bijectivitatii
histogramei cumulative a imaginii. Histograma cumulativa a imaginii nu este bijectiva
din cauza portiunilor pe care are o valoare constanta; aceste portiuni sunt determinate
de intervalele de nivele de gri absente din imaginea initiala, intervale (si puncte) n care
histograma are valori nule. Corectia evidenta este de a umple valorile nule din histograma
prin redistribuirea uniforma pe acestea a probabilitatilor n exces, adica a valorilor din
histograma ce depasesc un prag maxim fixat [47], [71]. Egalizarea de histograma este
realizata apoi pe baza functiei histograma astfel modificata. Rezultatul aplicarii unei
asemenea abordari este prezentat n imaginea 2.10 b).
Algoritmul CLAHE (Constrast Limited Adaptive Histogram Equalization) [47], implementat si n Matlab 7 este o combinatie a celor doua tehnici prezentate anterior. Rezultatul
aplicarii unei asemenea abordari este prezentat n imaginea 2.10 e).
Nici una dintre variantele anterior prezentate nu aduce o solutie definitiva la problema
egalizarii imperfecte a histogramei. Pentru a realiza o egalizare perfecta a histogramei
este necesara folosirea, pentru fiecare pixel, de informatii suplimentare ce pot diferentia
pixeli ce au un acelasi nivel de gri, creand astfel posibilitatea ca aceleasi nivele de gri
din imaginea initiala sa produca, dupa transformare, n functie de contextul local, nivele
de gri diferite. In mod evident, functia de transformare nu mai este punctuala, ci este
cu mai multe variabile: nivelul de gri initial al fiecarui pixel si valorile suplimentare ce
caracterizeaza contextul local.
Astfel, fiecarui pixel (i, j) din imaginea initiala f i se asociaza un vector de parametri
(sau de trasaturi) g(i, j), format ca:
g(i, j) = [g1 (i, j), g2 (i, j), g3 (i, j), . . . ]

(2.12)

unde g1 (i, j) este valoarea initiala a pixelului iar gk (i, j), cu k > 1, sunt parametri
(trasaturi) calculate n vecinatati ale pixelului (i, j).
Pentru multimea de vectori g(i, j) putem defini relatia de ordonare lexicografica : doi
vectori verifica relatia de ordine g(i1 , j1 ) g(i2 , j2 ) daca si numai daca:

gl (i1 , j1 ) = gl (i2 , j2 ), 1 l < k


k,
(2.13)
gk (i1 , j1 ) < gk (i2 , j2 ).
Astfel, multimea celor L C pixeli din imagine este aranjata ntr-un sir ordonat.
Daca alegem trasaturile suplimentare g2 (i, j), g3 (i, j), . . . asociate pixelilor ca fiind valori
medii ale nivelului de gri n vecinatati de dimensiune din ce n ce mai mare, ordonarea
pixelilor n sir va urmari perceptia intensitatii luminoase a acestora: un pixel e cu atat
mai ntunecat cu cat nivelul sau de gri este mai mic si este situat ntr-o zona n care vecinii
sai sunt ntunecati, si vecinii vecinilor sai sunt ntunecati, si asa mai departe. Astfel, ntre
doi pixeli ce au acelasi nivel de gri, pixelul cel mai ntunecat este cel ce are o vecinatate
mai ntunecata. Principiul de pastrare a ordinii relative a nivelelor de gri (pe care trebuie
sa l verifice orice transformare punctuala de modificare a contrastului imaginilor) implica
faptul ca dupa asocierea noilor nivele de gri (care vor ncepe cu 0 si se vor termina cu
M 1, avand n vedere faptul ca se doreste o egalizare a histogramei) pixelii vor capata
30

a)

b)

h(i)

h(i)

0.01

0.04

0.009

0.035

0.008
0.03
0.007
0.025

0.006
0.005

0.02

0.004

0.015

0.003
0.01
0.002
0.005

0.001
0
0

50

100

150

200

250

0
0

50

100

c)

150

200

250

150

200

250

d)
h(i)
0.02
0.018
0.016
0.014
0.012
0.01
0.008
0.006
0.004
0.002
0
0

e)

50

100

f)

Figura 2.10: Modific


ari ale tehnicii de egalizare a histogramei, aplicate imaginii cu contrast slab din figura figura 2.7 a): a) Egalizarea adaptiva a histogramei: pentru fiecare
pixel din imagine functia de transformare a nivelului sau de gri este calculat
a ca egalizare
a histogramei ntr-o vecin
atate centrat
a n pixelul respectiv, patrat
a, de dimensiune 3333
pixeli. b) Egalizarea histogramei cu limitarea constrastului: aceeasi transformare este aplicat
a tuturor pixelilor, dar transformarea este calculat
a dintr-o histogram
a n care valorile
maxime sunt limitate la 0.02 (excesul fiind redistribuit uniform n ntreg intervalul de
nivele de gri). e) Imagine obtinut
a prin tehnica CLAHE. c), d), f ) Histogramele imaginilor din a), b) si respectiv e).

31

nivele de gri cu atat mai mici cu cat acestia sunt situati mai la nceputul sirului ordonat
de pixeli. Mai precis, primii L C/M 1 pixeli din sirul ordonat vor capata nivelul de gri
0, urmatorii L C/M 1 pixeli din sirul ordonat vor capata nivelul de gri 1, urmatorii
L C/M 1 pixeli din sirul ordonat vor capata nivelul de gri 2, ..., ultimii L C/M 1
pixeli din sirul ordonat vor capata nivelul de gri M 1. Astfel, noul nivel de gri al unui
pixel nu mai depinde n mod explicit de nivelul sau de gri initial, ci de pozitia sa n sirul
ordonat de pixeli.
Alegerea aceluiasi numar de pixeli pentru alocarea fiecarui nivel de gri din intervalul
[0, M 1] n imaginea prelucrata garanteaza obtinerea unei histograme perfect uniforme.
Tehnica functioneaza cu atat mai bine cu cat numarul de trasaturi suplimentare alese
pentru caracterizarea fiecarui pixel este mai mare, astfel ncat sa fie cat mai putin probabil
ca mai multi pixeli sa fie descrisi de un acelasi vector de trasaturi. Aceasta tehnica a fost
introdusa n [13], [14].

2.3

Specificarea de histogram
a

Specificarea histogramei este o generalizare a tehnicii de egalizare de histograma. Histograma dorita pentru imaginea mbunatatita este precizata si poate avea orice forma
(nu numai uniforma, asa cum era cazul egalizarii). Problema este atunci de gasire a
functiei scalare care modifica nivelele de gri din imaginea initiala, astfel ncat histograma
(masurabila) din imaginea initiala sa fie transformata n histograma specificata.
In [21] si n [8] se remarca faptul ca aceasta problema poate fi rezolvata folosind egalizarea
de histograma. Fie T1 transformarea care egalizeaza histograma imaginii initiale f si T2
transformarea care egalizeaza histograma imaginii prelucrate dorite, g. Atunci putem
scrie T1 (f ) = T2 (g), de unde rezulta:
g = T21 (T1 (f ))

(2.14)

Aceasta abordarea functioneaza daca functia de egalizare de histograma este inversabila


(si deci bijectiva) si daca atat de la imaginea initiala a scenei date, cat si de la imaginea cu
histograma impusa a scenei date se ajunge prin egalizare de histograma la aceeasi imagine.
Cum prima presupunere este de cele mai multe ori neadevarata (dupa cum s-a discutat
n sectiunea legata de tehnica de egalizare de histograma), iar a doua presupunere, desi
aparent evidenta, nu poate fi demonstrata riguros, implementarea tehnicii de specificare
a histogramei dupa relatia 2.14 este problematica.
Specificarea histogramei se poate rezolva nsa elegant folosind tehnica de ordonare a pixelilor imaginii descrisa n sectiunea precedenta si propusa n [14]. Daca histograma dorita
pentru imaginea mbunatatita este hd , transformarea cautata se obtine, pornind de la
sirul ordonat al pixelilor imaginii, astfel: primii L C hd (0) pixeli din sirul ordonat vor
capata nivelul de gri 0, urmatorii L C hd (1) pixeli din sirul ordonat vor capata nivelul
de gri 1, urmatorii L C hd (2) pixeli din sirul ordonat vor capata nivelul de gri 2, ...,
ultimii L C hd (M 1) pixeli din sirul ordonat vor capata nivelul de gri M 1.
32

h(i)
0.04
0.035
0.03
0.025
0.02
0.015
0.01
0.005
0
0

50

100

a)

150

200

250

150

200

250

b)
h(i)
0.01
0.009
0.008
0.007
0.006
0.005
0.004
0.003
0.002
0.001
0
0

c)

50

100

d)

Figura 2.11: Specificarea histogramei implementata prin tehnica de ordonare a pixelilor


imaginii: a) imagine initial
a; b) histograma imaginii initiale; c) imagine transformat
a;
d) histograma specificat
a pentru imaginea transformat
a.

2.4

Concluzii

Operatiile punctuale de mbunatatire a imaginilor permit modificarea caracteristicilor de


vizibilitate a imaginii (n ntregul ei sau pe portiuni), prin redistribuirea valorilor pixelilor
n intervalul de valori cuantizate avute la dispozitie. De cele mai multe ori, transformarile
de interes sunt cele automate, care permit obtinerea unei imagini modificate de calitate
suficient de buna fara interventia unui observator.
Limitarea fundamentala a operatiilor punctuale este aceea ca nu este posibila crearea unui
numar mai mare de valori diferite n imaginea rezultat fata de imaginea initiala; de altfel,
aceasta limitare a condus la folosirea unor caracteristici locale a pixelilor (deci bazate pe
conceptul de vecinatate) pentru realizarea unor transformari.

33

34

Capitolul 3
Operatii de vecin
atate
Operatiile de vecinatate sunt caracterizate prin aceea ca valoare unui pixel din imaginea
prelucrata rezulta din combinarea valorilor unui numar oarecare de pixeli din imaginea
initiala, situati n vecinatatea spatiala a pixelului curent prelucrat. Astfel, pentru un pixel
situat n pozitia (l, c) (deci pe linia l si pe coloana c a imaginii), valoarea g(l, c) rezultata
prin prelucrare este:

g(l, c) = T f V(l,c) .
(3.1)
Aceasta noua valoare rezulta prin folosirea functiei de combinare T a valorilor pixelilor
din imaginea originala f , pixeli selectati n jurul pixelului curent prelucrat (de coordonate
(l, c)) de vecinatatea V . Vecinatatea este o forma plana, deci o multime de puncte din
suportul spatial al imaginii, precizate prin coordonatele lor carteziene fata de o origine
oarecare, precizata, ce este asociata acestei multimi (originea vecinatatii nu este originea
sistemului de coordonate atasat imaginii). Asadar punctele din vecinatate sunt precizate
prin coordonate relative (deci n alt sistem de coordonate decat sistemul de coordonate
al imaginii) fata de propria origine a vecinatatii. In mod curent, vecinatatea mai este
denumita si fereastra de filtrare sau fereastra de prelucrare.
Operatiile de prelucrare de vecinatate (numite n mod uzual filtre) se clasifica dupa caracteristicile functiei de combinare T : operatii (sau filtre) liniare si respectiv operatii (sau
filtre) neliniare.

3.1

Filtrarea liniar
a

Operatia de prelucrare liniara de vecinatate a imaginilor (sau filtrare liniara a imaginilor)


are o unica forma, transformarea T fiind combinatia liniara ponderata a valorilor selectate
de vecinatatea utilizata.
X
g(l, c) =
wmn f (l m, c n), cu wmn R.
(3.2)
(m,n)V

Vecinatatea V (deci multimea de puncte din plan definite de coordonatele (m, n) fata de
originea ce le este atasata), mpreuna cu multimea de ponderi wmn asociate punctelor
din vecinatate formeaza masca de filtrare (sau nucleul, sau functia pondere a filtrului).
Scalarii individuali wmn poarta numele de coeficienti ai filtrului.
35

Prima observatie ce se poate face cu privire la forma de definire a operatiei de filtrare


liniara din (3.2) este ca folosirea unor ponderi wmn nule este echivalenta cu eliminarea
din vecinatatea folosita a punctelor ce le corespund. In mod echivalent, putem modifica
n mod arbitrar forma vecinatatii prin adaugarea unor puncte carora le alocam pondere
nula, fara a modifica n vreun fel rezultatul filtrarii. Aceasta conduce la suficienta considerarii n practica a unor forme regulate (patrate centrate) pentru vecinatate (fereastra
de filtrare). Orice masca poate fi extinsa cu puncte ce auatasat un coeficient
nul, pentru
!
1/2 1/6
a rezulta o masca patrata centrata; de exemplu, masca
poate fi scrisa si
1/6 1/6

0
0
0
ca 0 1/2 1/6 .
0 1/6 1/6
Din punctul de vedere al calculelor, formula de definitie (3.2) este suma produselor punct
cu punct dintre coeficientii wmn atasati punctelor vecinatatii reflectate si valorile pixelilor
din imaginea originala f din zona de imagine peste care a fost suprapusa vecinatatea.
Aceasta suma de produse se calculeaza pentru fiecare punct al imaginii, deplasand masca.
Deplasarea vecinatatii (ferestrei de filtrare) a condus la adoptarea denumirii de tehnica a
ferestrei glisante. Tehnica ferestrei glisante nseamna plasarea originii ferestrei de filtrare
(vecinatatii), pe rand, n fiecare pixel al imaginii si selectarea punctelor imaginii situate
n interiorul acesteia (ne putem imagina fereastra de filtrare ca fiind o apertura ntr-o
placa opaca; ntr-o anumita pozitie a acesteia valorile selectate din imagine sunt valorile
punctelor ce se vad prin apertura); pentru fiecare pozitie (l, c) a ferestrei glisante se
calculeaza noua valoare a pixelului, g(l, c), conform (3.2). Descrierea algoritmului nu
este nsa altceva decat descrierea (poate destul de plastica) a unei operatii de convolutie
bidimensionala, n care, prin conventie, masca de filtrare este considerata nucleul de
convolutie.
Din punctul de vedere al implementarii practice a filtrelor liniare trebuie luate n considerare doua aspecte: complexitatea de calcul a operatiei de filtrare liniara si problema
aparitiei efectelor de margine.
Pentru o imagine de dimensiune L C si o masca de filtrare avand K puncte (deci cu
Card(V ) = K), numarul de operatii necesare unei filtrari liniare este de LCK nmultiri si
LC(K 1) adunari, adica complexitatea de calcul este O[N 2 ], atat fata de dimensiunile
imaginii cat si fata de dimensiunile ferestrei
de filtrare (considerand ca fereastra de filtrare

ar fi patrata, avand dimensiunea K). Aceasta duce la constrangerea practica de a


folosi ferestre de filtrare cat mai mici, si de a ncerca descompunerea ferestrelor mari de
filtrare ntr-o succesiune de ferestre mai mici (descompunere bazata pe proprietatea de
asociativitate a operatiei de convolutie, prin care se realizeaza filtrarea liniara). Spre
exemplu o filtrare cu un nucleu de 5 5, care ar necesita 25 de operatii (de nmultire)
pentru fiecare pixel, poate fi echivalata cu doua filtrari succesive cu nuclee de 3 3 pixeli,
cu coeficienti alesi convenabil, filtrari succesive ce necesita numai 18 operatii (de nmultire)
pentru fiecare pixel.
Efectele de margine sunt caracteristice pixelilor marginali ai imaginii, n care, fereastra
de filtrare, plasata cu originea n unul dintre acestia, debordeaza n afara imaginii,
adica, pentru anumite pozitii (l, c) de plasament al originii vecinatatii, unele pozitii din
vecinatatea astfel deplasata nu au corespondent n suportul fizic al imaginii. Pentru
36

compensarea acestor efecte de margine sunt disponibile doua solutii: n primul rand,
pentru pixelii n care apar aceste probleme de margine, noua valoare (rezultatul filtrarii
liniare) nu mai este evaluata, urmand ca n imaginea rezultat al prelucrarii acestia sa si
pastreze valoarea din imaginea initiala; aceasta varianta (desi cea mai simpla si rapida) are
un dezavantaj evident n cazul filtrarilor ce folosesc vecinatati de dimensiune importanta.
O a doua solutie este completarea suportului spatial al imaginii de prelucrat cu un numar
suficient de linii si coloane, astfel ca efectul de margine sa nu mai apara. Liniile si coloanele
nou adaugate sunt completate cu valori convenabile - de cele mai multe ori valori identice
cu cele ale liniilor/ coloanelor marginale din imaginea originala.

3.1.1

Filtrarea liniar
a de netezire

Netezirea unei imagini are ca scop reducerea variatiei nivelelor de gri din imagine si, implicit, cresterea uniformitatii. Aceasta nseamna ca regiunile din imagine vor capata un
caracter mai constant, apropiindu-se astfel de idealul unei regiuni n care toti pixelii ce o
compun au aceeasi valoare. Variatiile prezente n imagine pot fi considerate ca fiind de
doua tipuri: variatii reale, puternice ale intensitatii luminoase (corespunzand contururilor
obiectelor din imagine) si variatii relativ mici, parazite, datorate n principal zgomotului
suprapus imaginii si neuniformitatii intrinseci a obiectelor din scena. O filtrare de netezire
va reduce toate aceste categorii de variatii, avand ca efect secundar ncetosarea contururilor si pierderea detaliilor (efect numit bluring). Figura 3.1 prezinta efectul aplicarii
unui filtru liniar de netezire simplu (media aritmetica a valorilor selectate de fereastra de
filtrare) cu vecinatati de dimensiune diferita; se poate remarca cresterea uniformitatii (si
uniformizarii) imaginii odata cu cresterea dimensiunii ferestrei de filtrare.
Ponderile wmn care definesc un filtru liniar de netezire deriva dintr-o conditie simpla de
normare. Sa consideram cazul particular al unei regiuni absolut uniforme din imagine,
regiune n care toti pixelii au o aceeasi valoare J. Desigur, uniformitatea acestei regiuni
nu mai poate fi mbunatatita, dar operatia de filtrare de netezire trebuie sa nu modifice
valoarea constanta a pixelilor regiunii. Din exprimarea acestei conditii rezulta relatia de
normare a filtrelor liniare de netezire. Daca se particularizeaza formula de definitie a
filtrarii liniare (3.2) pentru cazul valorilor identice ale pixelilor selectati de fereastra de
filtrare (f (l m, c n) = J), vom obtine ca valoarea ce rezulta prin filtrare este:
X
X
g(l, c) =
wmn f (l m, c n) = J
wmn = J.
(m,n)V

adica:

(m,n)V

wmn = 1, cu wmn 0.

(3.3)

(m,n)V

Aceasta conditie (suma coeficientilor mastii de filtrare sa fie unitara) se numeste conditia
de normare a nucleelor de filtrare de netezire si defineste un astfel de nucleu.
Teoria proceselor aleatoare [11] arata ca, pentru o combinatie liniara de realizari particK
P
ulare ale unei variabile aleatoare ,
ai i = , varianta noii variabile aleatoare obtinute
i=1

este proportionala cu varianta variabilei aleatoare din care au provenit realizarile parK
P
a2i 2 . Deci, prin medierea a K realizari particulare ale unei variabile
ticulare: 2 =
i=1

37

a)

b)

c)

d)

e)

g)

Figura 3.1: a) Imagine originala; b) Rezultatul filtrarii imaginii din a) cu un filtru liniar
de netezire cu fereastr
a de filtrare (vecin
atate) de 55 pixeli (SNR=19.9 dB); c) Rezultatul
filtr
arii imaginii din a) cu un filtru liniar de netezire cu fereastr
a de filtrare (vecin
atate)
de 11 11 pixeli (SNR=16.6 dB); d) Imagine degradat
a cu zgomot alb, gaussian, aditiv
de medie 0 si dispersie 25 (SNR=15.7 dB); e) Rezultatul filtrarii imaginii din d) cu un
filtru liniar de netezire cu fereastr
a de filtrare (vecin
atate) de 5 5 pixeli (SNR=22.5 dB);
f ) Rezultatul filtrarii imaginii din d) cu un filtru liniar de netezire cu fereastr
a de filtrare
(vecin
atate) de 11 11 pixeli (SNR=19.7 dB).
aleatoare, varianta este redusa de K ori (ai =
2

1
).
K

2
wmn
= f2inal .

(3.4)

(m,n)W

Proiectarea filtrului de netezire (n sensul determinarii coeficientilor wmn ) ce asigura


o reducere
maxima a puterii de zgomot nsemna gasirea valorilor wmn ce maximeaza
P
2
, n conditiile respectarii constragerilor din (3.3). Se poate astfel demonstra
wmn
(m,n)W

ca filtrul de mediere aritmetica (wmn = 1/Card(V ) = 1/K) introduce o atenuare maxima


a zgomotului alb, aditiv, gaussian suprapus imaginii.
Din punct de vedere obiectiv, la nivelul semnalului de imagine, gradul de reducere a
zgomotului poate fi masurat prin rapoarte de calitate. Notand cu f versiunea degradata
a imaginii originale f0 (degradata fie ca efect al suprapunerii zgomotului, fie ca efect al
unei prelucrari), ambele avand dimensiunea de LC pixeli, putem defini cateva masuri de
calitate ale imaginii f fata de originalul f0 , obtinute prin extinderea n cazul bidimensional
a masurilor de calitate a semnalelor: eroarea patratica medie, eroarea absoluta medie,
38

raportul semnal/ zgomot, raportul semnal de varf/ zgomot.


C
L
1 XX
M SE =
(f (l, c) f0 (l, c))2
LC l=1 c=1

(3.5)

L
C
1 XX
M AE =
|f (l, c) f0 (l, c)|
LC l=1 c=1

(3.6)

C
L P
P

SN R = 10 log

f 2 (l, c)

l=1 c=1
L P
C
P

dB

(3.7)

(f (l, c) f0 (l, c))

l=1 c=1

2
LC max f0 (l, c)
P SN R = 10 log

l,c

L P
C
P

(f (l, c) f0 (l, c))

dB

(3.8)

l=1 c=1

Conditia de normare a filtrelor de netezire (3.3) nu limiteaza mastile (nucleele) de filtrare


folosite la doar nucleele ce realizeaza media aritmetica ntr-o vecinatate patrata, centrata
n punctul considerat. Filtrele de netezire realizeaza o mediere ponderata definita de ponderi wmn cu valori diferite. Modul de variatie a valorilor ponderilor respecta n principiu
doua reguli: originea vecinatatii are asociata o pondere maxima, si ponderile descresc cu
distanta n suportul imaginii dintre punctul caruia i sunt asociate si originea vecinatatii.
Aceste principii reflecta cerinta uzuala de a considera ca valoarea din pixelul curent prelucrat trebuie sa conteze cel mai mult n determinarea noii valori a pixelului respectiv, iar
valorile pixelilor vecini pixelului curent prelucrat trebuie sa contribuie ntr-o masura mai
mica, cu atat mai mica cu cat sunt situati mai departe (n suportul spatial al imaginii) de
pixelul curent prelucrat. Netezirea (si respectiv si ncetosarea) introdusa n imagine de o
filtrare de mediere ponderata este ntotdeauna mai mica decat cea introdusa de o filtrare
de mediere aritmetica realizata cu aceeasi vecinatate.

0
1/5
0

1/5
1/5
1/5


0
0
1/5 , 1/8
0
0

1/8
1/4
1/8


0
0.075
1/8 , 0.124
0.075
0

0.124
0.204
0.124

0.075
0.124 .
0.075

(3.9)

Un filtru de mediere ponderata des utilizat este filtrul gaussian de netezire, ale carui
ponderi variaza dupa o lege gaussiana de medie nula si dispersie impusa n domeniul
coordonatelor spatiale ale punctelor ce formeaza vecinatatea. Ecuatia (3.10) prezinta
forma generala a functiei ce genereaza ponderile unui filtru gaussian de netezire.

1
gmn
m2 + n2
, gmn = exp
wmn = P
(3.10)
gkl
2 2
2
(k,l)V

Ultima masca de filtrare prezentata n ecuatia (3.9) este o masca gaussiana cu dispersie
1.
39

3.1.2

Filtrarea liniar
a de accentuare

Contrastarea unei imagini are ca obiectiv mbunatatirea perceperii vizuale a contururilor


obiectelor (mbunatatirea detectabilitatii componentelor scenei de-a lungul frontierelor
acestora). In principiu, acest deziderat se poate realiza prin modificarea valorilor pixelilor
aflati de o parte si de alta a unei frontiere comune, prin masurare si marirea diferentelor de
valoare dintre pixelii vecini. La baza, o asemenea tehnica va folosi o operatie de derivare.
Pentru deducerea conditiei de definitie a unui operator liniar de derivare, sa consideram
cazul particular al unei regiuni absolut uniforme din imagine, regiune n care toti pixelii
au o aceeasi valoare J. Desigur, contrastul n aceasta regiune nu poate fi mbunatatit
(ntrucat nu exista nici o diferenta ntre valorile pixelilor), iar operatia de filtrare derivativa
realizata dupa (3.2) nu poate decat sa aiba un rezultat nul. Din exprimarea acestei conditii
rezulta relatia de normare a filtrelor liniare de derivare. Daca se particularizeaza formula
de definitie a filtrarii liniare (3.2) pentru cazul valorilor identice ale pixelilor selectati de
fereastra de filtrare (f (l m, c n) = J), vom obtine ca valoarea ce rezulta prin filtrare
este:
X
X
g(l, c) =
wmn f (l m, c n) = J
wmn = 0.
(m,n)V

adica:

(m,n)V

wmn = 0

(3.11)

(m,n)V

Aceasta conditie (suma coeficientilor mastii de filtrare sa fie nula) se numeste conditia de
normare a nucleelor de filtrare de derivare si defineste un astfel de nucleu.
O experienta de perceptie vizuala subiectiva (benzile lui Mach) a pus n evidenta faptul
ca sistemul vizual uman are tendinta de a adanci profilul zonelor de tranzitie dintre
regiuni uniforme. Studiul fiziologiei sistemului vizual a demonstrat ca acesta se realizeaza
prin prelucrari de tip derivativ ce apar n diferitele etape pe care le parcurge informatia
vizuala; efectul global poate fi descris ca scaderea din semnalul original a unei derivate
secunde a acestuia, ponderata corespunzator (asa cum prezinta figura 3.2, pentru cazul
unidimensional - sectiunea unei frontiere ntre regiunile imaginii).
Implementarea unei derivate secunde pentru cazul discret va trebui sa ia n considerare
existenta a doua directii de derivare de baza si modul de definire a derivatei n cazul discret
(de exemplu prima derivata pe directia orizontala poate fi f 0 (m, n) = f (m, n+1)f (m, n)
sau f 0 (m, n) = f (m, n) f (m, n 1) sau f 0 (m, n) = f (m, n + 1) f (m, n 1)). Masti
obisnuite de implementare a unei derivate secunde bidirectionale (operator Laplacian)
sunt prezentate n ecuatia (3.12) [33], [68], [21]:

0 1/4 0
1/4 1/2 1/4
1/8 1/8 1/8
1/4 -1 1/4 , 1/2
-1
1/2 , 1/8 -1 1/8 .
0 1/4 0
1/4 1/2 1/4
1/8 1/8 1/8

(3.12)

Figura 3.3 prezinta folosirea tehnicii de mbunatatire a contrastului unei imagini prin
scaderea laplacianului.
40

a)

b)

c)

d)
Figura 3.2: a) Profil de tranzitie putin abrupt; b) Prima derivata a functiei din a), maximul acesteia este larg si nu permite identificarea precis
a a mijlocului tranzitiei; c) derivata
a doua a functiei din a) trece prin zero n centrul tranzitiei; d) functia originala din a)
(reprezentat
a cu linie punctata) din care s-a scazut o versiune scalat
a a derivatei a doua
c), obtin
and efectul de adancire a tranzitiei.
41

a)

b)

Figura 3.3: a) Imagine initial


a neclar
a (provine din filtrarea de mediere aritmetica a unei
imagini de calitate); b) Rezultatul filtrarii imaginii din a) cu un filtru liniar de contrastare
(imagine - laplacianul imaginii) (SNR=22.86 dB, PSNR=26.44 dB). Laplacianul folosit
a fost implementat dupa masca din ecuatia (3.12) a).

3.2

Filtrarea neliniar
a

Operatiile de filtrare studiate pana n prezent au fost caracterizate esential (din punct
de vedere matematic) de catre principiul liniaritatii (sau superpozitiei). O buna parte
a aplicatiilor curente de prelucrare a imaginilor probabil ca se pot rezolva suficient de
precis folosind doar operatii liniare. Limitarile operatiilor liniare de filtrare apar nsa n
momentul n care se considera zgomote ce nu au distributie normala, si, mai mult, nu mai
sunt aditive.
Exemplul cel mai simplu de astfel de zgomot este zgomotul impulsiv, caracterizat de impulsuri pozitive si negative de amplitudine maxim posibila (relativ la numarul de nivele de
cuantizare ale imaginii) care afecteaza prin nlocuire o parte din pixelii imaginii. Aceasta
nseamna ca imaginea va fi uniform acoperita de puncte foarte nchise (negre) si foarte
deschise (albe), rezultatul fiind ceea ce se numeste zgomot de tip sare si piper (vezi figura
3.4). Asemenea erori apar n portiunile de achizitie si transmisiune ale sistemului de prelucrarea si analiza imaginilor (din cauza erorilor n convertorul analog-digital, din cauza
erorilor de nregistrare pe mediile magnetice de stocare sau de pe canalul de transmisiune);
este posibil ca asemenea valori sa apara si ca urmare a unui zgomot aditiv caracterizat de
o distributie cu coada lunga - deci care asigura probabilitati nenule de aparitie a unor
valori mult diferite de medie. Aceste valori aberante (mult mai mari sau mai mici decat
valorile normale ale regiunii n care apar) sunt numite outlier : valori extreme sau erori
grosiere. Daca o asemena imagine ar fi filtrata liniar (cu un filtru de mediere sau poate
cu un filtru de reliefare) rezultatul ar fi o accentuare a punctelor de zgomot si o corupere
a punctelor cu valori corecte din jurul lor.
Zgomotul impulsiv nu este singurul model de degradare neliniara: exista zgomote dependente de valoarea imaginii din pixelul afectat, precum si compuneri neaditive ale zgomotului cu imaginea originala (multiplicativa, convolutiva) [33].
Este deci evident ca se impune considerarea si a altor metode de filtrare, care nu mai respecta principiul superpozitiei, si sunt deci neliniare. O clasa esentiala de astfel de metode
42

a)

b)

Figura 3.4: a) Imagine degradat


a cu zgomot de tip sare si piper n proportie de 5%; b)
rezultatul filtrarii cu un filtru de mediere aritmetica cu fereastr
a de 3 3 pixeli; manjirea
imaginii n jurul punctelor de zgomot este evidenta.
de filtrare sunt cele bazate pe ordonare rank order filtering [46]. Ideea esentiala este
aceea ca operatia de ordonare plaseaza valorile aberante (extremale) la capetele sirului de
valori (deci ntr-o zona bine definita), permitand astfel identificarea si eliminarea acestora.
Filtrele de ordine sunt operatori locali: filtrul este definit de o fereastra (masca), care
selecteaza din imaginea de prelucrat un numar de vecini ai pixelului curent (se respecta deci acelasi model de prelucrare al ferestrei glisante, ntalnit si la filtrarile liniare n
domeniul spatial). Valorile selectate de fereastra de filtrare sunt apoi ordonate crescator;
daca valorile selectate de o fereastra cu K pozitii sunt {x1 , x2 , ..., xK }, atunci acelasi set
de valori, ordonate crescator, este {x(1) , x(2) , ..., x(K) }. Valorile x(i) se numesc statistici de
ordine de ordinul i si au proprietatea
x(1) 6 x(2) 6 ... 6 x(K)

(3.13)

In mod evident statistica de ordinul 1, x(1) , este valoarea minima, iar statistica de ordinul
K, x(K) , este valoarea maxima.
Iesirea filtrului de ordine de ordin k este statistica de ordinul k, cu k [1; K]:
rankk {x1 , x2 , ..., xK } = x(k)

(3.14)

In acest fel, iesirea unui filtru de ordine este una dintre valorile selectate de fereastra de
filtrare, si deci nu se creaza la iesire valori noi (asa cum se ntampla la filtrarea liniara);
acesta este un avantaj atat n ceea ce priveste pastrarea valorilor originale din imagine,
cat si din punctul de vedere al simplificarii calculelor (nu mai sunt necesare operatii cu
numere reale, ce trebuie apoi rotunjite sau truncheate la numere naturale).
Filtrele de ordine nu sunt liniare din cauza operatiei de ordonare (ce nu respecta principiul
superpozitiei); n general putem scrie:
rankk {x1 +y1 , x2 +y2 , ..., xK +yK } 6= rankk {x1 , x2 , ..., xK }+rankk {y1 , y2 , ..., yK } (3.15)
Filtrele de ordine comuta nsa cu operatiile de modificare liniara a valorilor:
rankk {x1 + , x2 + , ..., xK + } = rankk {x1 , x2 , ..., xK } +
43

(3.16)

Proprietatile deterministe ale filtrelor de ordine se refera la comportamentul acestora


n zonele tipice ale unei imagini: portiuni netede si contururi. Filtrele de ordine nu
afecteaza contururile (zonele de panta abrupta) si pasteaza valoarea zonelor uniforme.
Aceste comportari au fost extinse la investigarea clasei mai generale de semnale radacina
semnale ce nu sunt modificate prin filtrare. Orice secventa {xi } monotona (crescatoare
sau descrescatoare) de lungime cel putin K este un semnal radacina pentru un filtru de
ordine definit ntr-o vecinatate de K puncte. In plus, filtrele de ordine comuta cu orice
functie monotona g:
rankk (g(xi )) = g(rankk (xi ))

3.2.1

Filtrul median

Filtrul median este un filtru de ordine a carui iesire este statistica de ordine de ordin
central a setului de valori selectate de fereastra de filtrare.
(
x( K+1 ) daca K este impar
2
(3.17)
median{x1 , x2 , ..., xK } =
1
+ 12 x( K +1) daca K este par
x
2 (K )
2

Iesirea filtrului median este deci valoarea din centrul secventei ordonate; n cazul
secventelor (ferestrelor de filtrare) de dimensiune para, aceasta pozitie centrala nu exista, si atunci este definita ca media aritmetica a valorilor vecine centrului imaginar. In
practica, filtrul median se foloseste doar cu ferestre de filtrare de dimensiune impara, ceea
ce conduce la posibilitatea de a scrie:
median{x1 , x2 , ..., xK } = rank K+1 {x1 , x2 , ..., xK }
2

(3.18)

Aceasta nseamna ca daca fereastra de filtrare are 3 puncte, medianul este statistica de
ordinul 2, pentru o fereastra filtrare cu 9 puncte, medianul este statistica de ordinul 5,
iar pentru o fereastra de filtrare de 25 de puncte, medianul este statistica de ordinul 13.
Figura 3.5 prezinta rezultatul filtrarii cu un filtru median cu fereastra patrata de 3 3
puncte a imaginii degradate cu zgomot impulsiv din figura 3.4.
Efectele de filtrare a zgomotului impulsiv (de tip sare si piper) sunt evidente; valorile
punctelor de zgomot sunt 0 sau 255 si deci, dupa ordonare, se vor afla la capetele
sirului de valori; iesirea filtrului median, fiind statistica de ordin central, este situata
departe de valorile extreme. In imaginea filtrata median (figura 3.5) se observa totusi
existenta unor puncte albe si negre (puncte de zgomot) ce nu au putut fi eliminate prin
filtrare; spunem ca n acele pozitii filtrul a fost strapuns de impulsuri (care deci au ajuns
la iesirea filtrului). Probabilitatea de strapungere a unui filtru median este dependenta de
procentul de puncte de zgomot din imagine si de dimensiunea ferestrei de filtrare folosite.
Strapungerea filtrului median se produce atunci cand n fereastra de filtrare avem mai
mult de (K + 1)/2 impulsuri de zgomot de acelasi fel.

3.2.2

Filtre de ordine de domeniu

Filtrele de ordine de domeniu (filtre LUM Lower-Upper-Middle [26]) introduc o posibilitate de reglare a filtrelor de ordine si adaptare a acestora pentru cele doua operatii de
baza de prelucrare a imaginilor: netezirea si respectiv contrastarea.
44

a)

b)

Figura 3.5: Rezultatul filtrarii imaginii degradate cu zgomot impulsiv din figura 3.4 cu: a)
un filtru median cu fereastr
a de 3 3 pixeli; b) un filtru de ordine de rang 2 cu fereastr
a
de 3 3 pixeli.
Pentru un filtru LUM de netezire, valoarea nou calculata pentru fiecare pixel din imaginea
prelucrata g(l, c) = y este definita ca:

x(k) , daca x < x(k)


x(Kk+1) , daca x > x(Kk+1)
y=
(3.19)

x , n rest
unde x este valoarea ce corespunde originii ferestrei de filtrare cu K pozitii (deci este
valoarea originala pixelului curent prelucrat, f (l, c) = x ), iar k este parametrul de reglaj
al filtrului. Valoarea k este un ntreg din intervalul [0; K+1
]; daca k = 0 filtrul de comporta
2
ca un filtru trece tot (y = x ), iar daca k = K+1
,
filtrul
este
un filtru median (y = x( K+1 ) ).
2
2

Pentru un filtru LUM de contrastare, valoarea nou calculata pentru fiecare pixel din
imaginea prelucrata g(l, c) = y este definita ca:

x(l) +x(Kk+1)
x(k) , daca x(l) < x <
2
x +x
y=
x(Kk+1) , daca (k) (Kk+1)
< x < x(Kk+1)
2

x , n rest

(3.20)

unde x este valoarea ce corespunde originii ferestrei de filtrare cu K pozitii (deci este
valoarea originala pixelului curent prelucrat, f (l, c) = x ), iar k este parametrul de reglaj
]; daca k = 0 filtrul de comporta
al filtrului. Valoarea k este un ntreg din intervalul [0; K+1
2
K+1
ca un filtru de reliefare extrema, iar daca k = 2 , filtrul este un filtru trece tot (y = x ).
Figura 3.6 prezinta rezultatele aplicarii filtrelor LUM de netezire si respectiv de constrastare.

3.2.3

L-filtre

L-filtrele [46] au fost introduse din dorinta de a oferi o mai mare flexibilitate operatiilor
de filtrare neliniara bazate pe ordonare; pasul firesc de dezvoltare a fost combinarea
45

a)

b)

Figura 3.6: a) Rezultatul filtrarii imaginii degradate cu zgomot impulsiv din figura 3.4 a)
cu un filtru LUM de netezire cu fereastr
a de 3 3 pixeli si factor de reglaj 3 (ntre filtrul
trece-tot si filtrul median); b) Rezultatul filtrarii imaginii far
a contrast din figura 3.3 a) cu
un filtru LUM de contrastare cu fereastr
a de 3 3 pixeli si factor de reglaj 1 (contrastarea
maxim
a).
tuturor statisticilor de ordine n valoarea de la iesirea filtrului. Iesirea unui L-filtru este o
combinatie liniara a statisticilor de ordine:
L({x1 , x2 , ..., xn }) =

K
X

wi x(i)

(3.21)

i=1

Este evident ca prin varierea coeficientilor wi se pot obtine diferite filtre, inclusiv filtrele
de ordine (un singur coeficient egal cu 1, iar restul coeficientilor nuli). Coeficientii celor
mai uzuale L-filtre sunt prezentati n tabelul 3.1
Filtru
Filtru de ordine de ordin k, rankk
k [1, K]
Filtru de mediere aritmetica
Filtru de mijloc
Filtru de cvasi-mijloc
k [1, K]
Medie -reglabila
(0, 1/2)

Coeficienti
ak = 1, ai = 0, i 6= k
ai = 1/n
a1 = aK = 0.5, ai = 0, i
/ {1, K}
ak = aK+1k = 0.5, ai = 0, i
/ {k, K + 1 k}
ai = 1/[2K 1], i [ K+1
K + 1; K+1
+ K]
2
2
K+1
ai = 0, i
/ [ K+1

K
+
1;
+
K]
2
2

Tabela 3.1: Coeficientii celor mai uzuale L-filtre.

Se poate demonstra cu usurinta ca, coeficientii L-filtrelor trebuie sa ndeplineasca aceleasi conditii de normare ca si coeficientii filtrelor liniare: sa aiba suma 1 pentru un filtru
de netezire (similar cu conditia (3.3)) si suma 0 pentru un filtru de reliefare (similar cu
conditia (3.11)). Toate filtrele prezentate n tabelul 3.1 sunt deci filtre de netezire, al
46

caror scop este marirea uniformitatii regiunilor imaginii prin eliminarea diferitelor zgomote suprapuse acesteia. Tabelul 3.2 prezinta filtrele cele mai potrivite pentru eliminarea
diferitelor tipuri de zgomote.
Tip zgomot
impulsiv (sare si piper)
gaussian
impulsiv + gaussian
uniform

Filtru
filtru de
filtru de
filtru de
filtru de

ordine (median, maxim, minim)


mediere aritmetica
tip medie -reglabila
mijloc

Tabela 3.2: L-filtre utilizate pentru reducerea diferitelor tipuri de zgomote.

Un exemplu simplu de filtru de reliefare este gradientul morfologic diferenta dintre


valoarea maxima si minima din fereastra de filtrare curenta:
grad{x1 , x2 , ..., xK } = x(K) x(1)
Figura 3.7 prezinta rezultatele aplicarii unor L-filtre de netezire, si, respectiv, de contrastare.

3.3

Filtrarea adaptiv
a

Termenul de adaptiv se refera la capacitatea filtrului de a-si ajusta comportarea (care este
determinata de caracteristicile sale de definitie) n functie de anumite cerinte ce definesc
conceptul de calitate a imaginii filtrate (de exemplu n sensul apropierii ei de imaginea
nedegradata din care provine). In mod uzual, la prelucrarea semnalelor unidimensionale,
masurile de calitate utilizate sunt eroarea patratica medie (sau raportul semnal/ zgomot).
Aceleasi masuri se pot folosi si n cazul imaginilor, acestora putandu-li-se adauga masuri
subiective de tipul confortului vizual al unui observator, pentru care imaginea data arata
bine, sau mai bine decat o alta.
Prin procesul de adaptare, n fiecare nou punct prelucrat structura filtrului este alta,
luand n considerare caracteristicile locale pixelului curent prelucrat. Atata timp cat (cel
putin teoretic) n fiecare punct al imaginii operatia este diferita (deoarece se face cu un
filtru diferit), filtrarea globala nu mai este liniara, chiar daca structura filtrului se bazeaza
n fiecare punct pe o combinatie liniara a valorilor selectate de fereastra de filtrare.
In cazul folosirii structurii de filtru liniar ca structura de baza a unui filtru adaptiv,
adaptarea nu poate urmari decat doua variante: modificarea formei ferestrei de filtrare 1 ,
sau modificarea coeficientilor unei ferestre de filtrare de forma fixata.
1

Dupa cum aratat si n sectiunea 3.1, la pagina 35, introducerea de coeficienti de ponderare nuli are
ca efect modifcarea forma ferestrei de filtrare, fara modificarea rezultatelor filtrarii. Din acest punct
de vedere am putea considera ca este suficienta considerarea cazului de adaptare doar a coeficientilor
filtrului.

47

a)

b)

c)

d)

e)

f)

Figura 3.7: Rezultatul filtrarii imaginii degradate cu zgomot mixt (impulsiv si gaussian)
din figura a) cu: b) un filtru median cu fereastr
a de 3 3 pixeli, c) un L-filtru de netezire
de tip -median cu fereastr
a de 3 3 pixeli si = 0.25. Rezultatul filtrarii imaginii
din a) cu L-filtre de tip derivativ: d) gradient morfologic (x(9) x(1) ); e) x(6) x(4) ; f )
4
8
P
P
x(i) x(i) . Reprezentarea valorilor este facut
a dupa o scar
a inversata: valorile mari
i=6

i=2

sunt reprezentate cu nuante nchise, valorile mici sunt reprezentate cu nuante deschise;
se observ
a c
a filtrele derivative marcheaz
a frontierele obiectelor din imagine.

48

3.3.1

Adaptarea formei vecin


at
atii

Filtrarea de netezire este evaluata prin diferentele introduse fata de imaginea care se filtreaza; daca diferentele dintre imaginea filtrata si cea dinainte de filtrare sunt prea mari
este posibil ca filtrul de netezire sa fi ncetosat contururi din imagine. Presupunerea colaterala este ca zgomotul este mai slab decat contururile imaginii si ca variatiile datorate zgomotului sunt mai mici decat variatiile dintre valorile regiunilor alaturate. Implementarea
acestei categorii de filtre foloseste un comutator ntre mai multe valori posibile de dupa
filtrare, corespunzand unor praguri de acceptare a variatiilor.
Ideea de a accepta valoarea produsa de medierea valorilor selectate de fereastra filtrului
numai daca acesta valoare este suficient de apropiata de valoarea originala se poate aplica
si pentru filtrarea de netezire cu fereastra si coeficienti ficsi [21]. In acest caz rezultatul
netezirii ntr-un punct va fi acceptat doar daca diferenta fata de valoarea originala este
mai mica decat un prag impus:

P
wmn f (l m, c n) < T
wmn f (l m, c n), daca f (l, c)
g(l, c) =

(m,n)W
(m,n)W

f (l, c), n rest


Adaptarea presupune deci comutarea ntre un filtru de mediere [aritmetica] si un filtru
trece-tot.
Exemplul cel mai folosit de modificare a formei ferestrei de filtrare este filtrul de netezire
directionala adaptiva [33]. Termenul de filtrare directionala se refera la forma puternic
orientata a ferestrei de filtrare (deci fereastra de filtrare nu mai este patrata, ci va avea
o forma liniara, orientata dupa o anumita directie). Pentru fiecare punct al imaginii
se pot considera mai multe orientari (deci mai multe directii) posibile pentru masca de
mediere. Pentru fiecare dintre directiile alese se obtine n urma filtrarii o valoare. In mod
ideal, dorim ca valoarea obtinuta prin filtrare sa nu difere n mod semnificativ de valoarea
initiala din pixelul considerat. O diferenta semnificativa poate nsemna ca punctul curent
este situat pe un contur, si acceptarea acestei valori mult diferite de cea initiala produce
efectul de ncetosare a imaginii (caracteristic oricarei filtrari de netezire). Solutia adusa
de filtrul adaptiv este de a alege din setul de valori obtinute pentru diferitele ferestre de
filtrare pe aceea care este cea mai apropiata de valoarea initiala din punctul curent. Daca
notam cu Wi mastile asociate diferitelor orientari si cu gi (l, c) rezultatul filtrarii imaginii
zgomotoase f n punctul (l, c) cu masca Wi , putem scrie atunci ca:
g(l, c) = gk (l, c), unde k = arg min {kgi (l, c) f (l, c)k}

(3.22)

Figura 3.8 prezinta rezultatul filtrarii unei imagini zgomotoase cu filtre ce si adapteaza
forma vecinatatii.

3.3.2

Adaptarea ponderilor - filtrul LLMMSE

O varianta clasica de filtrare liniara adaptiva, realizata prin recalcularea coeficientilor


mastii de filtrare n fiecare punct al imaginii este prezentata n [71]. Acest filtru este
49

a)

b)

c)

d)

e)

f)

Figura 3.8: a) Imagine degradat


a cu zgomot alb, aditiv, gaussian. b) Rezultatul filtrarii
imaginii din a) cu un filtru de medie aritmetica cu fereastr
a de 33 pixeli (SNR=20.7 dB).
c) Rezultatul filtrarii imaginii din a) cu un filtru adaptiv fereastr
a de 33 pixeli descris de
(3.3.1) (SNR=17.35 dB). Numai 52% dintre pixelii imaginii sunt prelucrati prin mediere
aritmetic
a, introduc
and diferente mai mici de 15 fat
a de imaginea zgomotoas
a initial
a. d)
Rezultatul filtrarii imaginii din a) cu un filtru adaptiv fereastr
a de 3 3 pixeli descris de
at
atilor alese de filtrul descris de
(3.22) (SNR=19.46 dB). e) Imagine a orientarii vecin
(3.22) din d); f ) Detaliu din e) din coltul stanga sus al imaginii: se pot observa n jurul
conturului circular al biscuitelui zonele n care sunt alese vecin
at
ati cu diferite orientari,
urm
arind conturul obiectului.

50

o combinatie liniara convexa a imaginii zgomotoase si a imaginii obtinute din aceasta


printr-o filtrare liniara de mediere (cu fereastra constanta), adica:
g(l, c) = f (l, c) + (1 (l, c))f (l, c)

(3.23)

Acronimul LLMMSE provine de la denumirea engleza Locally Linear Minimal Mean


Squared Error, adica filtru local liniar ce minimizeaza eroarea patratica medie. Dupa
cum se poate remarca din ecuatia (3.23), coeficientul de mixare a imaginii zgomotoase
f si a variantei sale filtrate f va trebui determinat n fiecare punct (l, c) al imaginii. In
cele ce urmeaza vom omite din ecuatii scrierea explicita a coordonatelor punctului curent
de prelucrat, (l, c).
Imaginea zgomotoasa f provine dintr-o imagine corecta f0 , la care s-a adaugat un zgomot
alb, aditiv (f = f0 + z), de medie nula z (z = 0) si necorelat cu imaginea (zf = zf = 0).
Atunci ecuatia (3.23) devine:
g = (f0 + z) + (1 )(f0 + z) = f0 + z + (1 )f0

(3.24)

Ceea ce defineste filtrul adaptiv este coeficientul ; acesta este calculat local impunand
optimizarea unei masuri de calitate obiective - eroarea patratica medie dintre imaginea
originala f0 si rezultatul filtrarii g.

2
2 = (g f0 )2 = z + ( 1)(f0 f0 ) = 2 z 2 +2(1)zf0 2(1)zf0 +(1)2 (f0 f0 )2
2 = 2 z 2 + 2( 1)zf0 2( 1)zf0 + ( 1)2 (f0 f0 )2 = 2 z 2 +(1)2 (f0 f0 )2
2 = 2 z2 + ( 1)2 f20

(3.25)

Formula (3.25) arata ca eroarea patratica medie este suma ponderata dintre varianta
(puterea) zgomotului z2 si varianta imaginii originale f20 . Gasirea coeficientului optim
nseamna gasirea minimului lui 2 , deci anularea derivatei acestuia.
d2
= 2z2 + 2( 1)f20 = 0
d
=

f20
z2
=
1

f20 + z2
f2

De aici rezulta expresia finala a filtrului:

g=

2
1 z2
f

!
f+

z2
f
f2

(3.26)

(3.27)

Se observa ca trebuie cunoscute puterea de zgomot si varianta locala (n fiecare punct) a


imaginii zgomotoase. Adaptarea se face ntre doua cazuri limita: daca puterea de zgomot
este mult mai mare decat varianta valorilor imaginii originale (z2 f20 ) atunci, din
prima parte a formulei (3.26) rezulta = 0 si deci filtrul optim este un simplu filtru de
mediere; daca varianta valorilor din imagine este mult mai mare decat puterea de zgomot
(f2 z2 , deci este de presupus ca punctul curent considerat este situat pe un contur)
atunci = 1 si filtrul optim este un filtru identitate (trece tot). Acest comportament
poate fi interpretat si prin aceea ca este o masura a variatiei locale de intensitate din
imagine, si deci este un indicator al contururilor din imagine (dupa cum se poate observa
si din figura 3.9).
51

a)

b)

c)

d)

Figura 3.9: a) Imagine degradat


a cu zgomot alb, aditiv, gaussian. b) Rezultatul filtrarii
imaginii din a) cu un filtru de medie aritmetica cu fereastr
a de 3 3 pixeli (SNR=24
dB). c) Coeficientul de mixare din filtrarea LLMMSE calculat pentru imaginea din
figura a). Reprezentarea valorilor este facut
a dupa o scar
a inversata: valorile mari sunt
reprezentate cu nuante nchise, valorile mici sunt reprezentate cu nuante deschise. d)
Rezultatul filtrarii imaginii din a) cu un filtru LLMMSE cu fereastr
a de 3 3 pixeli
(SNR=27.4 dB).

52

3.3.3

Adaptarea ponderilor - filtrul bilateral

Filtrul bilateral a fost propus recent [61] ca un mod de a realiza o filtrare de netezire
adaptiva, ce pastreaza contururile din imagine si care grupeaza local valorile selectate
de fereastra de filtrare ntr-o combinatie liniara. Ponderile combinatiei liniare sunt nsa
calculate n fiecare pixel, pe baza unei duble ponderari gaussiene: n functie de pozitia
spatiala fiecarui pixel n fereastra de filtrare si n functie de similaritatea valorii fiecarui
pixel cu valoarea pixelului curent prelucrat (centrul ferestrei de filtrare). In cazul folosirii
unei ferestre de filtrare V de forma fixata, putem scrie urmatoarele:
X
g(l, c) =
wmn (l, c)f (l m, c n), cu wmn (l, c) R.
(3.28)
(m,n)V

wmn (l, c) = wpos,mn (l, c) wval,mn (l, c)/

wpos,ij (l, c) wval,ij (l, c);

(3.29)

(i,j)V

wpos,mn (l, c) =

m2 + n2
exp
2
2pos
2

;
pos

1
(f (l m, c n) f (l, c))2
exp
wval,mn (l, c) =
;
2
2val
val 2

(3.30)
(3.31)

Figura 3.10 prezinta rezultatul aplicarii filtrului bilateral, cu diferiti parametri, pentru
netezirea unei imagini degradate de zgomot alb, aditiv, gaussian. Se poate remarca faptul
ca imaginea este cu atat mai clara cu cat parametrii de dispersie a functiilor gaussiene
ce genereaza ponderile de similaritate a valorilor si de apropiere cu centrul ferestrei de
filtrare sunt mai mici. In acelasi timp, performanta filtrului bilateral este superioara
filtrului de mediere aritmetica realizat n aceeasi fereastra de filtrare, atat din punctul de
vedere a calitatii perceptuale a imaginii obtinute, cat si din punctul de vedere al raportului
semnal-zgomot.
Principiul pe care se bazeaza functionarea filtrului bilateral este de a folosi pentru calculul
noii valori a unui pixel doar acele valori din vecinatatea acestuia care au valori suficient
de apropiate cu valoarea sa (pastrarea valorilor apropiate fiind realizata prin coeficientii
de ponderare dati de (3.31)); astfel se evita medierea valorilor situate de o parte si alta a
contururilor.

3.4

Filtrarea morfologic
a

Operatorii morfologici au fost construiti pornind de la un punct de vedere deosebit de cel


adoptat pana n momentul de fata; anume, se va modifica modelul matematic al imaginii
de la o functie definita pe un domeniu D din R2 sau din Z2 la o multime. In particular,
cum o imagine binara este o functie cu doua valori, (de exemplu 0 si 1), ea poate fi privita
drept functia caracteristica a unei submultimi din D. Astfel ajungem sa identificam o
imagine binara cu o submultime, iar prelucrarile imaginilor binare se pot exprima, n
mod natural, prin operatii asupra multimilor (operatii ansambliste). Un obiect dintr-o
imagine binara este o multime conexa, care l defineste implicit si ca forma; operatiile
asupra multimilor modifica formele de unde denumirea de operatori morfologici, iar
53

a)

b)

c)

d)

e)

f)

Figura 3.10: a) Imagine degradat


a cu zgomot alb, aditiv, gaussian (SNR=18.80 dB). b)
Imaginea din a) netezita cu un filtru de mediere aritmetica cu fereastr
a de 7 7 pixeli
(SNR=20.22 dB). c) Imaginea din a) netezita cu un filtru bilateral cu fereastr
a de 7 7
pixeli si parametri pos = 1, val = 50(SNR=24.91 dB). d) Imaginea din a) netezita cu un
filtru bilateral cu fereastr
a de 7 7 pixeli si parametri pos = 1, val = 200(SNR=24.90
dB). e) Imaginea din a) netezita cu un filtru bilateral cu fereastr
a de 7 7 pixeli si
parametri pos = 1, val = 100(SNR=25.15 dB). f ) Imaginea din a) netezita cu un filtru
bilateral cu fereastr
a de 7 7 pixeli si parametri pos = 2, val = 100(SNR=24.28 dB).
corpus-ul de cunostinte obtinut din dezvoltarea acestui punct de vedere denumirea de
morfologie matematica. Pentru extinderea acestui punct de vedere la imagini cu nivele
54

de gri, se poate nsa observa ca valoarea functiei imagine poate fi utilizata ca o a treia
coordonata: imaginile cu nivele de gri pot fi reprezentate prin multimi de puncte n R3
(respectiv Z3 ), mai precis, functiei f : D R2 R prin care definim o imagine cu
tonuri de gri i se asociaza n mod biunivoc umbra sau subgraful ei definit prin:
U (f ) = {(x1 , x2 , x3 ) R3 |(x1 , x2 ) D si x3 f (x1 , x2 )}

(3.32)

In cazul functiilor de o variabila subgraful (umbra) este o multime din R2 , dupa cum
este exemplificat si n figura 3.11. Este evident ca subgrafurile sunt multimi semideschise
spre . Dupa cum operatiilor de prelucrare a imaginilor reprezentate prin functii le
corespund operatori care transforma o functie n alta, operatiilor de prelucrare a imaginilor (semnalelor) reprezentate prin multimi le corespund operatori care transforma o
multime n alta. Acesti operatori sunt construiti plecand de la operatii simple cu multimi,
iar ca principiu, prelucrarea si analiza morfologica nlocuieste descompunerea functiei ce
reprezinta imaginea ntr-o suma de termeni n raport cu o baza (deci reprezentarea ca
element ntr-un spatiu vectorial) cu descompunerea multimii ce reprezinta imaginea n
raport cu o familie de multimi de forme mai simple, numite elemente structurante [55].
In cele ce urmeaza, pentru definirea conceptelor de baza ale morfologiei matematice, vom

Figura 3.11: Subgraful unei functii si subgraful unei suprafete.


considera multimi formate cu elemente din spatiul Rn (sau Zn ), n care fiecare element
x este un vector n-dimensional, x = (x1 , x2 , ..., xn )T . Elementului x i se poate asocia
~
punctul X din spatiul Rn , punct definit de coordonatele (x1 , x2 , ..., xn ), sau vectorul OX,
avand ca origine chiar originea spatiului si varful n punctul X.

3.4.1

Operatii morfologice de baz


a: erodare, dilatare

Operatiile morfologice de baza constituie fundamentul transformarilor orientate pe


forma; utilizarea acestor operatii conduce la caracterizarea formei (multimii ce se prelucreaza) ntr-un cadru determinist. Caracterizarea formei este rezultatul comparatiei
(aplicarii de relatii) ntre forma necunoscuta si elementul structurant. Elementul structurant este o multime geometrica, arbitrara, impusa, cunoscuta. Forma elementului structurant determina proprietatile testate asupra formei necunoscute. Relatiile aplicate au
55

fost restranse la operatorii standard ansamblisti (deci la operatiile clasice pe multimi).


T
inand cont ca operatiile pe multimi pot fi obtinute prin combinatii de operatii de reuniune (sau intersectie) si complementare, relatiile luate n considerare pot fi restranse la
aceste operatii de baza.
Dilatarea morfologica a multimii A cu elementul structurant B se defineste ca multimea
punctelor (elementelor) cu care se poate translata elementul structurant astfel ncat acesta
sa aiba puncte comune cu multimea de prelucrat A:
A B = {x|Bx A 6= }.

(3.33)

Relatia de definitie (3.33) mai poate fi exprimata si ca:


A B = {x|Bx A 6= } = {x|b B, a A astfel ncat b + x = a} =
[
[
= {x|b B, a A astfel ncat x = a b} =
Ab =
Ab
bB

bB S

Figura 3.12 exemplifica operatia de dilatare pentru multimi continue.

Figura 3.12: Exemplificarea operatie de dilatare: dilatarea unei multimi A (dreptunghi)


cu un element structurant B (cerc), centrat n origine si dilatarea unei multimi A (cerc)
cu un element structurant B (segment de dreapt
a), necentrat n origine.
Erodarea morfologica a multimii A prin elementul structurant B se defineste ca multimea
punctelor (elementelor) cu care se poate translata elementul structurant astfel ncat acesta
sa fie inclus n multimea de prelucrat A:
A B = {x|Bx A}

(3.34)

Relatia de definitie a erodarii (3.34) se mai poate exprima si ca:


A B = {x|Bx A} = {x|b B, a A astfel ncat b + x = a} =
\
\
= {x|b B, a A astfel ncat x = a b} =
Ab =
Ab
bB

bB S

Figura 3.13 exemplifica operatia de dilatare pentru multimi continue.


Se observa ca, n general, efectul operatiei de dilatare este de a mari obiectul; acesta creste,
se umfla, corespunzator formei si dimensiunii elementului structurant. Efectul erodarii
56

Figura 3.13: Exemplificarea operatie de erodare: erodarea unei multimi A (dreptunghi) cu


un element structurant B (cerc), centrat n origine si erodarea unei multimi A (patrat) cu
un element structurant B (segment de dreapt
a), necentrat n origine.
este, dupa cum am vazut, o micsorare a obiectului. Modificarea dimensiunii obiectului
este strict determinata de forma elementului structurant: un element structurant simetric
(disc, segment de dreapta centrat n origine) provoaca o modificare simetrica a dimensiunilor; daca elementul structurant nu este simetric, efectele se vor manifesta asupra
obiectului pe directia elementului structurant si n sens contrar acestuia. Un caz particular ce poate apare este acela al elementelor structurante ce nu contin originea. Folosind
un asemenea element structurant rezultatele operatiilor morfologice vor fi translatate
fata de pozitia la care ar fi fost de asteptat sa apara. Efectele acestor doua operatii fundamentale vor fi discutate n continuare, pe baza proprietatilor matematice ale acestora.
Proprietatea fundamentala a dilatarii si erodarii este aceea ca sunt operatii duale una
alteia n raport cu complementarea multimilor. Aceasta nseamna ca:
(A B)C = AC B si (A B)C = AC B

(3.35)

Demonstratia este imediata:


(AC B)C = {x|Bx AC 6= }C = {x|Bx AC = } = {x|Bx A} = A B
si
(AC B)C = {x|Bx AC }C = {x|Bx * AC } = {x|Bx A 6= } = A B
Se poate considera corecta interpretarea dualitatii ca obtinerea acelorasi efecte asupra
unor multimi complementare: daca dilatarea mareste obiectul (multimea), aceasta
nseamna ca se micsoreaza n acelasi timp fundalul (complementara multimii), deci
operatia este echivalenta cu o erodare a fundalului. Daca erodarea micsoreaza obiectul
(multimea), aceasta nseamna realizarea unei mariri simultane a fundalului (complementara multimii), deci o dilatare a acestuia, dupa cum este exemplificat si n figura 3.14.
Legatura ntre translatia elementului structurant (faptul ca acesta nu contine originea
poate fi interpretat ca o deplasare) sau a multimii (obiectului) care se prelucreaza si
deplasarea rezultatului operatiilor morfologice este data de proprietatile de invarianta la
57

Figura 3.14: Exemplificarea propriet


atii de dualitate a operatiilor de dilatare si erodare.
translatie:
At B = (A B)t si At B = (A B)t
A Bt = (A B)t si A Bt = (A B)t

(3.36a)
(3.36b)

Aceste proprietati de invarianta la translatie (translatia obiectului si translatia elementului structurant) pot avea mai multe interpretari. In primul rand, invarianta la translatie
asigura faptul ca forma rezultata prin dilatarea sau erodarea unei multimi este aceeasi,
indiferent de pozitia multimii prelucrate. In al doilea rand, relatiile enuntate asigura
suficienta considerarii doar a elementelor structurante ce contin originea; un element structurant ce nu contine originea poate fi obtinut prin translatie dintr-un element structurant
ce contine originea; multimea (forma) rezultata n urma prelucrarii va trebui translatata
n sens opus elementului structurant, dupa cum este exemplificat si n figura 3.15.
In acelasi grup de proprietati de invarianta a operatiilor morfologice se ncadreaza si
invarianta la scalare (omotetie). Daca este parametrul nenul de scalare, atunci:
1
1
1
1
(A B) = A B si (A B) = A B.
(3.37)

Relatiile de invarianta la scalare afirma ca rezultatul unei transformari morfologice aplicate unei versiuni scalate a formei A este identic cu aceeasi scalare aplicata rezultatului
transformarii morfologice a formei A prin acelasi element structurant scalat invers.
58

Figura 3.15: Exemplificarea propriet


atii de translatie a operatiei de dilatare.
Proprietatile de monotonie a unei transformari nu pot fi neglijate la descrierea acesteia.
Atat dilatarea cat si erodarea sunt crescatoare fata de multimea ce se prelucreaza (forma).
Daca A1 A2 , atunci:
A1 B A2 B si A1 B A2 B.

(3.38)

Monotonia fata de elementul structurant folosit este diferita: dilatarea este crescatoare,
iar erodarea este descrescatoare; daca B1 B2 , atunci:
A B1 A B2 si A B2 A B1 .

(3.39)

Aceste proprietati subliniaza corectitudinea interpretarii dilatarii ca o adaugare, ca o


ngrosare, iar a erodarii ca o subtiere; grosimea stratului adaugat sau ndepartat este
data de elementul structurant. Deci cu cat elementul structurant este mai mare, cu atat
corpul se va mari mai mult n urma dilatarii sau se va micsora mai mult n urma erodarii.
In general, dilatarea este extensiva, adica:
A A B.

(3.40)

O conditie suficienta pentru ca aceasta proprietate sa fie adevarata este ca elementul


structurant sa contina originea, {0n } B. Atunci
[
[
AB =
Ab = A (
Ab ) A
(3.41)
bB S

bB S {0n }

Conditia ca elementul structurant sa contina originea nu este nsa si o conditie necesara,


asa cum se poate arata prin exemplul ilustrat n figura 3.16.
In general erodarea este antiextensiva, adica:
AB A

(3.42)

O conditie suficienta pentru ca aceasta proprietate sa fie adevarata este ca elementul


structurant sa contina originea, {0n } B. Atunci
\
\
AB =
Ab = A (
Ab ) A
(3.43)
bB S

bB S {0n }

59

Conditia ca elementul structurant sa contina originea nu este nsa si o conditie necesara,


asa cum se poate arata prin exemplul ilustrat n figura 3.16.

Figura 3.16: Exemplificare a cazurilor particulare pentru proprietatea de extensivitate


a operatiilor de dilatare si erodare: desi elementul structurant simetric B nu contine
originea, multimea A ce se dilata este inclusa n rezultatul dilatarii, iar rezultatul erod
arii
este inclus n multimea A ce se erodeaz
a.
Dilatarea este pseudocomutativa, proprietate ce se exprima ca
A B = (B A)S .

(3.44)

Proprietatea de asociativitate a dilatarii se scrie ca


A (B C) = (A B) C S .

(3.45)

Erodarea nu este nici comutativa (sau pseudocomutativa) si nici asociativa. Mai mult,
asociativitatea erodarii se scrie ca:
(A B) C = A (B C)

(3.46)

Proprietatile de asociativitate ale dilatarii si erodarii pot fi interpretate si ca o descompunere a elementului structurant; daca un element structurant poate fi considerat ca
descompus prin dilatare ca X = B C, atunci operatia morfologica efectuata prin elementul structurant respectiv este echivalenta cu operatiile morfologice prin partile
descompunerii elementului structurant, efectuate succesiv, adica:
A X = (A B) C S si A X = (A B) C.

(3.47)

Dilatarea si erodarea sunt transformari (operatii) ce nu pastreaza numarul de conexitati


(numarul de obiecte), dupa cum este exemplificat n figura 3.17. Rezultatul unei erodari
poate fi o multime vida (daca elementul structurant nu poate fi inclus n forma pentru nici o pozitie) sau mai multe forme (componente conexe). Rezultatul dilatarii unei
multimi formate din mai multe componente conexe poate fi o singura componenta conexa;
gaurile continute ntr-o forma pot fi umplute. Aceste proprietati ale erodarii si dilatarii
sunt fundamentul folosirii practice a acestora: prin erodare se pot elimina dintr-o multime
componentele conexe ce sunt mai mici decat elementul structurant folosit (sau sunt mult
60

diferite de acesta din punctul de vedere al formei) - aplicatiile ce ar putea folosi o asemenea
comportare sunt separarea obiectelor dupa forma si dimensiune si eliminarea zgomotului suprapus scenei. Prin dilatare se pot grupa ntr-o singura entitate obiecte apropiate
si se pot umple golurile nglobate n obiecte. O consecinta foarte importanta a acestei
comportari este aceea ca dilatarea si erodarea nu sunt operatii inversabile (nu admit o
transformare inversa). Cu atat mai mult, dilatarea nu este inversa erodarii si erodarea nu
este inversa dilatarii.
(A B) B 6= A si (A B) B 6= A

Figura 3.17: Exemplificare a propriet


atilor de modificare a conexit
atii a operatiilor de
dilatare si erodare.
O alta categorie de proprietati se refera la distributivitatea operatiilor morfologice fata
de operatiile cu multimi. Pentru dilatare avem:
(A B) C = (A C) (B C)
A (B C) = (A B) (A C)

(3.48)
(3.49)

Aceasta din urma relatie poate fi interpretata si ca o descompunere prin reuniune a


elementului structurant X = B C, caz n care operatia morfologica efectuata prin
elementul structurant respectiv este echivalenta cu operatiile morfologice prin partile
descompunerii elementului structurant, efectuate succesiv, adica:
A X = (A B) (A C).
61

(3.50)

Erodarea are proprietati asemanatoare fata de intersectia multimilor:


A (B C) = (A B) (A C)
(A B) C = (A C) (B C)

(3.51)
(3.52)

Aceasta ultima proprietate mai este cunoscuta si ca proprietatea de cunoastere locala


si este considerata n [55] ca una dintre proprietatile fundamentale ale trasformarilor
morfologice, legata de observarea universului problemei printr-o fereastra de dimensiune
finita (elementul structurant).
Inrudite cu proprietatile de distributivitate deja enuntate, exista o serie de inegalitati
(relatii de incluziune) de aceeasi natura:
A (B C) (A B) (A C) si (B C) A (B A) (C A)
A (B C) (A B) (A C) si (B C) A (B A) (C A).

3.4.2

(3.53)
(3.54)

Deschiderea si nchiderea

Dupa cum s-a aratat, erodarea si dilatarea nu sunt transformari inverse una alteia (deci
alternarea lor va produce un rezultat diferit de multimea originala ce a fost prelucrata).
Aceasta observatie conduce la ideea utilizarii unor iterari ale operatiilor morfologice de
baza, obtinand astfel operatii mai complexe, ale caror proprietati le fac mai adecvate
utilizarii n scopuri practice.
Deschiderea morfologica a multimii A prin elementul structurant B se defineste ca erodarea multimii cu elementul structurant respectiv, urmata de dilatarea cu elementul structurant simetrizat:
A B = (A B) B S .
(3.55)
Inchiderea morfologica a multimii A prin elementul structurant B se defineste ca dilatarea
multimii cu elementul structurant respectiv, urmata de erodarea cu elementul structurant
simetrizat:
A B = (A B) B S .
(3.56)
Proprietatea de baza a deschiderii si nchiderii morfologice este aceea ca sunt transformari
duale una alteia (proprietate ce deriva din dualitatea blocurilor constituente de baza,
dilatarea si erodarea). Aceasta proprietate permite interpretarea rezultatelor unei operatii
si deducerea proprietatilor acesteia pe baza caracteristicilor dualei sale.
(A B)C = AC B si (A B)C = AC B

(3.57)

Demonstratia acestor proprietati este imediata:


(AC B)C = ((AC B) B S )C = ((A B)C B S )C = (A B) B S = A B;
(3.58)
(AC B)C = ((AC B) B S )C = ((A B)C B S )C = (A B) B S = A B.
(3.59)
62

In mod evident, rezultatul unei deschideri sau al unei nchideri este diferit de multimea
ce a fost prelucrata. Relatia dintre rezultatul prelucrarii si multimea initiala este data de
proprietatile de extensivitate ale transformarilor. Deschiderea morfologica este antiextensiva:
AB A
A B = (A B) B S =

(A B)t =

tB

Ab )t =

tB bB S

S T

Ab+t

tB bB S

O conditie suficienta pentru ca deschiderea sa fie antiextensiva este ca:


t B,

T
bB S

Ab+t A. Dar: t B, t = b B S , si deci Ab+t = A{On } = A. Atunci


T

Ab+t = A (

bB S

Ab+t ) A

bB S ,b6=t

Inchiderea morfologica este extensiva:


AAB
A B = (A B) B S =

(A B)t =

tB

Ab )t =

tB bB S

T S

Ab+t

tB bB S

O conditie suficienta pentru ca nchiderea sa fie extensiva este ca:


t B, A

Ab+t . Dar:

bB S

t B, t = b B S , si deci Ab+t = A{On } = A. Atunci


S
S
Ab+t = A (
Ab+t ) A
bB S

bB S ,b6=t

Deci, pentru a sintetiza, putem afirma ca:


AB AAB

(3.60)

Relatiile pot fi interpretate ca o modificare sigura a multimii: prin deschidere se va elimina


o parte dintre elementele multimii ce se prelucreaza, iar prin nchidere se adauga elemente
noi multimii, dupa cum se poate observa si din exemplele prezentate n figura 3.18.
Proprietatea de idempotenta a operatiilor introduce o limitare a modificarilor: multimea
obtinuta dupa o deschidere sau nchidere este invarianta la repetarea operatiei:
(A B) B = A B si (A B) B = A B

(3.61)

Relatiile se demonstreaza folosind proprietatile deja enuntate ale deschiderii si nchiderii


(extensivitate) si proprietatile de monotonie ale operatiilor morfologice de baza.
63

Figura 3.18: Exemplificarea operatiilor de deschidere (randul de sus) si nchidere (randul


de jos).

(A B) B A B (prin proprietatea de antiextensivitate a deschiderii)


(AB)B = (((AB)B S )B)B S = [((AB)B S )B]B S = ((AB)B)B S
(A B) B S = A B
(prin proprietatea de extensivitate a nchiderii si prin faptul ca dilatarea este crescatoare
fata de multimea ce se prelucreaza)
(A B) B A B (prin proprietatea de extensivitate a nchiderii)
(AB)B = (((AB)B S )B)B S = [((AB)B S )B]B S = ((AB)B)B S
(A B) B S = A B
(prin proprietatea de antiextensivitate a deschiderii si prin faptul ca erodarea este
crescatoare fata de multimea ce se prelucreaza)
Inchiderea si deschiderea mostenesc o parte dintre proprietatile operatiilor morfologice de
baza: invarianta la translatie si la scalare, monotonia fata de multimea prelucrata si fata
de elementul structurant folosit. Din punctul de vedere al acestor proprietati, deschiderea
se comporta analog erodarii iar nchiderea are o comportare analoga dilatarii.
64

At B = (A B)t si At B = (A B)t
1
(A

B) = A 1 B si 1 (A B) = A 1 B

Daca A1 A2 : A1 B A2 B si A1 B A2 B.
Daca B1 B2 : A B2 A B1 si A B1 A B2
In ceea ce priveste proprietatile legate de comportarea fata de translatie a operatorilor
de deschidere si nchidere, merita subliniat faptul ca proprietatea este identica cu cea
a erodarii si dilatarii doar la translatia multimii prelucrate (rezultatul unei deschideri
sau nchideri a unei multimi este acelasi, indiferent de pozitia spatiala a multimii). In
cazul translatarii elementului structurant, rezultatul operatiei este acelasi, invariant la
translatie (ca rezultat a iterarii erodarii si dilatarii cu elemente structurante simetrice).
Pentru realizarea efectiva a operatiilor de deschidere si nchidere este importanta exprimarea acestora ca operatii la nivelul elementelor multimilor ce se prelucreaza (si nu ca o
iterare de operatii morfologice de baza).
Deschiderea poate fi exprimata ca multimea elementelor structurante translatate ce sunt
incluse n multimea de prelucrat:
S

AB =

Bx

Bx A

Intr-adevar, A B = (A B) B S = S (A B)b . Pentru x A B, S xb = Bx


bB
bB
S
A B; dar x A B Bx A, si deci A B =
(A B)b
bB

Inchiderea poate fi exprimata ca multimea punctelor pentru care toate elementele structurante translatate ce le contin au puncte comune cu multimea de prelucrat:
T

AB =

Bx

Bx A6=

Intr-adevar, A B = (A B) B S = T (A B)b Pentru x A B Bx A 6= ,


T bB
T
Bx
si deci A B =
(A B)b =
bB

Bx A6=

Pe baza acestor exprimari se pot deduce si efectele practice ale deschiderii si nchiderii
asupra formelor (multimilor). Prin deschidere, formele mai mici ca elementul structurant folosit vor fi eliminate, se largesc golurile nglobate n obiecte, contururile sunt
netezite prin tesirea convexitatilor iar obiectele unite prin istmuri sunt separate. Datorita proprietatii de dualitate, nchiderea va avea aceleasi efecte asupra fundalului (complementarei obiectelor) pe care le are deschiderea asupra multimilor. Inchiderea umple
golurile nglobate n obiecte (daca aceste gauri sunt mai mici decat elementul structurant
folosit), netezeste contururile formelor prin umplerea concavitatilor si uneste obiectele
foarte apropiate (umple stramtorile).
Efectele operatiilor de deschidere si nchidere pot fi considerate ca analoge efectelor unei
filtrari de netezire a formelor si eliminare a zgomotului (zgomot interpretat ca obiecte si
65

gauri de mici dimensiuni). In [55], n cadrul teoriei algebrice a morfologiei matematice, un


filtru este definit ca o operatie crescatoare si idempotenta. Trebuie facuta deci distinctia
ntre filtrul algebric si filtrul obisnuit, n sensul teoriei prelucrarii semnalelor.

3.4.3

Transformarea Hit or Miss

Transformarea Hit or Miss (numita si transformare n totul sau nimic) a fost introdusa n
[55] ca baza a definirii operatiilor morfologice, n cadrul formalizarii algebrice a morfologiei
matematice. Transformarea Hit or Miss se poate defini pe baza operatiilor de dilatare si
erodare ca:
A ~ B = (A B1 ) (A B2 )
(3.62)
cu B1 si B2 formand o partitie a elementului structurant B: B = B1 B2 si B1 B2 =
Expresia de definitie poate fi rescrisa ca:
A ~ B = (A B1) (A B2) = (A B1 ) (A B2 )C = (A B1 ) (AC B2 ) =
= {x|(B1 )x A} {x|(B2 )x AC }
Rezultatul aplicarii acestei transformari este identificarea elementelor a caror vecinatate
este identica cu configuratia elementului structurant B. Astfel, transformarea Hit or
Miss reprezinta poate cea mai primara si evidenta exemplificare a conceptului de studiu
al formei, nefiind altceva decat o potrivire de masti (pattern matching), asa cum este
exemplificat n figura 3.19.

Figura 3.19: Exemplificarea operatiei Hit or Miss.


Se poate observa ca aceasta transformare produce ca rezultat o multime de puncte ce
satisfac concomitent un set de conditii de tipul (Bi )x Ai , unde {Ai } formeaza o partitie
a spatiului. Este evident ca {A, AC } formeaza o partitie, dar aceasta nu este singura posibila. Anumite aplicatii practice pot impune nsa situatii mai complexe, a caror rezolvare
66

depaseste cadrul morfologiei binare [55]. Astfel se pot cita asa numitele cazuri: cazul
petrografic (provenit din analiza hidrocarburilor si a mineralelor), n care p componente
mpart exact spatiul (fara a lasa locuri libere) si cazul geografic, n care p componente nu
ocupa ntreg spatiul si se pot ntrepatrunde (cazul zonelor de padure cu diferite specii de
copaci).

3.4.4

Morfologie matematic
a discret
a

Pana acum, operatiile prezentate s-au referit la cadrul continuu (Euclidian). In practica,
imaginile cu care se lucreaza sunt digitale - esantionate (sau discretizate, digitalizate), si
deci nu mai au un suport continuu. Suportul discret este dat de reteaua de esantionare
(grila, raster), iar elementele elementare ale imaginii (puncte) vor fi descrise prin coordonate ntregi. In aceste conditii structura de spatiu vectorial este pastrata, deci operatiile
ansambliste de baza (reuniune, intersectie, translatie), prin care se definesc operatiile morfologice, nu se modifica. Aceasta nseamna ca operatiile morfologice au aceleasi definitii,
efecte si proprietati ca si n cazul continuu. O exceptie notabila este proprietatea de
scalare, care nu mai este adevarata: operatorul de scalare nu este discretizabil.
Vom relua notiunea de operator digitizabil, asa cum este prezentat n [54]. Daca < este
rasterul pe care sunt definite imaginile digitale, atunci, pentru orice multime compacta
X, digitizarea sa este multimea:
D(X) = X <
Reciproc, daca X < este o multime digitala, acesteia i se poate asocia o multime
continua, numita prelungire, P (X), care, pentru cazul plan, este reuniunea tuturor triunghiurilor elementare a caror trei varfuri sunt n X, a tuturor segmentelor elementare a
caror extremitati sunt n X si a tuturor punctelor din X.
O transformare se zice digitizabila daca verifica relatia:
X <, D((P (X))) = (X)
In acest sens, dilatarea, erodarea, deschiderea si nchiderea sunt digitizabile. Scalarea nu
este nsa digitizabila, nici macar pentru factori de scala ntregi.

3.4.5

Extinderea operatiilor mofologice la functii

Pana n acest moment s-au prezentat operatiile morfologice clasice, adica aplicate asupra
unor seturi (multimi). Acestea prezinta limitarea implicita n aplicarea numai asupra unei
categorii particulare de imagini, si anume acelea a caror structura poate fi usor si imediat
asociata unor multimi, adica imaginile binare. Pentru extinderea operatiilor morfologice la
functii se vor construi transformari ce permit trecerea de la o reprezentare de tip functie la
o reprezentare de tip multime; o asemenea transformare a fost deja definita n introducere
ca umbra a unei multimi (3.32). Vom extinde acesta definitie la cazul general al unor
multimi de puncte din spatiul n-dimensional.
67

Figura 3.20: Exemplificarea transform


arii varf al multimii.
Fie A Rn o multime ale carei elemente (puncte) sunt definite de vectorul n-dimensional
de coordonate x = (x1 , x2 , ..., xn )T . Ordinea coordonatelor este arbitrara.
Vom numi primele n1 coordonate ale unui punct x domeniu spatial al multimii si cea de-a
n-a coordonata, suprafata multimii. Vom nota aceste parti ale multimii A cu A(1,n1) si
respectiv A(n,n) . Putem avea n moduri diferite de a alege aceste partitii ale coordonatelor
(corespunzand modului n care se poate alege o coordonata dintr-un total de n). Varful
(top) sau suprafata de varf a unei multimi A este functia T (A) : A(1,n1) A(n,n)
definita de:
T (A)(z) = max{y | (z, y) A, z A(1,n1) }
(3.63)
In acest mod se introduce o functie, pornind de la o multime; functia este cu valori
ntregi (functie scalara) de argument vectorial n 1-dimensional. Pentru exemplificare
consideram cazul n care n = 2, deci fiecare punct al multimii A este un vector bidimensional, x = (i, j). Consideram coordonata i ca fiind domeniul spatial si coordonata j ca
fiind suprafata multimii. Atunci, prin transformarea varf, asociem multimii A o functie
definita pe domeniul sau spatial si cu valori n suprafata sa, asa cum este esemplificat
n figura 3.20. In mod evident, vom avea urmatoarele relatii ntre cele transformarile
multime-functie (varful si umbra):
T (U (F )) = f si A U (T (A))

(3.64)

Operatiile morfologice pentru functii se definesc prin intermediul transformarii acestora


n multimi (reducand astfel operatiile pe functii la operatii pe multimi, asa cum au fost
prezentate la morfologia binara):
f g = T (U (f ) U (g)) si f g = T (U (f ) U (g))

(3.65)

Ca si n cazul morfologiei pe multimi, g se numeste element structurant (functie structuranta). Se numeste element structurant flat, elementul structurant pentru care g(y) =
0, y Supp(g). Aceste elemente structurante de tip flat sunt echivalente cu cele folosite
n morfologia clasica pe multimi.
Forma echivalenta a definitiilor erodarii si dilatarii (folosite n mod efectiv n practica)
este, pentru x Supp(f ) :
f g =

min

ySupp(g)

{f (x y) g(y)} , f g =
68

max {f (x y) + g(y)}

ySupp(g)

(3.66)

Daca se utilizeaza elemente structurante plate (deci caracterizate doar de forma suportului, si nu si de valori asociate acestora), cele doua relatii de definitie devin identice cu
filtrarile de ordine de rang minim si respectiv maxim:
f g =

3.5

min

ySupp(g)

{f (x y)} , f g =

max {f (x y)}

ySupp(g)

(3.67)

Concluzii

Tehnicile de prelucrare a imaginilor bazate pe operatori de vecinatate au la baza combinarea (liniara sau neliniara) mai multor valori extrase din imagine din jurul pozitiei curent
prelucrate. Astfel, n fapt, se creaza o populatie statistica ce permite estimarea valorii
corecte din pozitia curent prelucrata, reducand efectul perturbatiilor de natura aleatoare
(zgomot) ce au afectat imaginea.
Fiecarui tip de perturbatie (distributie a valorilor de zgomot, interactiune a acestora cu
imaginea) i va corespunde un mod optimal de filtare. Nu exista filtre universale, care sa
se comporte la fel de bine n prezenta mai multor tipuri de zgomot.
Adaptarea filtrelor permite luarea n considerare si a caracteristicilor locale ale imaginii
(detalii, conturi) ce se doresc pastrate. Deducerea parametrilor caracteristici ai filtrului
este facuta n fiecare pixel al imaginii prelucrate, pe baza optimizarii unei masuri de
calitate a imaginii rezultat.

69

a)

b)

c)

d)

e)

f)

Figura 3.21: a) Imagine degradat


a cu impulsiv sare si piper 5% (SNR=14.50 dB). b)
Imaginea din a) netezita cu un filtru de mediere aritmetica cu fereastr
a de 3 3 pixeli
(SNR=21.15 dB). c) Imaginea din a) erodat
a cu un element structurant V8 . d) Imaginea
din a) dilatata cu un element structurant V8 . e) Imaginea din a) deschisa cu un element
structurant V8 (SNR= 14.70 dB). f ) Imaginea din a) nchis
a cu un element structurant
V8 (SNR= 18.17 dB).

70

Capitolul 4
Transformate unitare
4.1

Introducere

Termenul de tranformata unitara se refera la o clasa de matrici unitare folosite pentru


reprezentarea imaginilor. O matrice patratica avand componente complexe A CN N se
numeste unitara daca:
A1 = AT ,
(4.1)
unde prin () am notat operatorul de conjugare complexa.
Sa precizam, de la bun nceput, faptul ca o transformata unitara este un operator de
tip integral, caracterizat de faptul ca valoarea fiec
arui pixel din imaginea finala (transformata) depinde de valorile tuturor pixelilor din imaginea originala. De asemenea, sa
facem urmatoarea precizare: desi scopul nostru este prezentarea transformatelor unitare
n cazul imaginilor (deci a semnalelor cu suport bidimensional) consideram ca o ntelegere
adecvata a problemei necesita ntai o prezentare a cazului semnalelor cu suport unidimensional (de exemplu, temporal). Vom ncepe, deci, cu definirea notiunii de transformata
unitara unidimensionala, si apoi vom prezenta cazul bidimensional ca fiind o extindere
directa a celui unidimensional.

4.2

Cazul unidimensional

Fie u(n) cu n = 0, 1, 2, . . . un semnal aleator reprezentat n timp discret si fie matricea A =


{a(k, n)}k,n=0,...,N 1 unitara. Cu valorile semnalului u(n) se formeaza vectorul coloana

T
u = u(0) u(1) u(N 1) . Se defineste transformata lui u ca fiind vectorul

T
coloana v = v(0) v(1) v(N 1)
obtinut ca:
v = Au.

(4.2)

Considerand elementele matricii A, relatia (4.2) se poate scrie:


v(k) =

N
1
X

a(k, n)u(n), k = 0, 1, . . . , N 1.

n=0

71

(4.3)

Transformata inversa, care permite recuperarea vectorului original u din cel transformat
v se scrie, tinand cont de (4.1):
u = AT v,
(4.4)
sau, element cu element:
u(n) =

N
1
X

a (k, n)v(k), n = 0, 1, . . . , N 1.

(4.5)

k=0

Semnificatia unei transformate unitare poate fi nteleasa punand n evidenta coloanele


matricii AT , mai precis, scriind-o pe aceasta sub forma:

AT = a0 a1 aN 1 ,
(4.6)
unde ak sunt vectorii coloana:

a (k, 0)
a (k, 1)
..
.

ak =

(4.7)

a (k, N 1)
Cu aceste notatii, relatiile care dau transformata directa (4.3), respectiv pe cea inversa (4.4), pot fi scrise sub forma:
v(k) = aT
k u = hak , ui k = 0, 1, . . . , N 1,

(4.8)

respectiv:
u=

N
1
X

v(k)ak ,

(4.9)

k=0

unde cu hw1 , w2 i a fost notat produsul scalar ntre vectorii coloana w1 , w2 CN 1 , definit
ca:
N
1
X

T
hw1 , w2 i = w1 w2 =
w1 (i)w2 (i).
(4.10)
i=0

Calculul lui u din relatia (4.9) se interpreteaza ca o descompunere a acestuia ntr-o alta
baza a lui CN , si anume cea formata din coloanele matricii AT : {a0 , a1 , . . . , aN 1 }.
Coeficientii dezvoltarii lui u n aceasta baza sunt chiar componentele v(k) ale vectorului
transformat v. Conform (4.8), acestia se obtin prin produs scalar ntre vectorul dezvoltat
u si axa ak , care nu reprezinta altceva decat proiectia lui u pe ak .
In plus, noua baza n care se reprezinta semnalul este ortonormala, fapt asigurat de
conditia (4.1) de unitaritate impusa matricii A. Intr-adevar, (4.1) se poate rescrie ca:
AAT = IN ,
ceea ce, scris explicit n functie de vectorii ak , devine:

aT
0
aT

1
.. a0 a1 aN 1 =

.
T
aN 1
72

(4.11)

0 0
1 0

.. . . .. .
. .
.
0 0 1
1
0
..
.

(4.12)

Din relatia de mai sus, rezulta ca:

aT
i aj

= hai , aj i =

1 daca i = j
,
0 n rest

(4.13)

ceea ce este echivalent cu a spune ca baza {ak }k=0,...,N 1 pe care se descompune vectorul
original u este ortonormala, ntrucat fiecare doi vectori din set sunt perpendiculari, iar
norma fiecaruia este unu!
Pentru fixarea notiunilor, sa consideram un exemplu pentru care avem o reprezentare geometrica, respectiv N = 2. Fie vectorul u = [5, 2]T din figura 4.1. Cele doua componente
ale vectorului u reprezinta
coeficientii dezvoltarii vectorului n baza canonica ex = [1, 0]T , ey = [0, 1]T aleasa din oficiu pentru
reprezentarea oricarui vector din R2 . Cu alte cuvinte, u = [5, 2]T este echivalent cu:
u = 5ex + 2ey ,
cu
hex , ui = 5
hey , ui = 2

u
2
ey

ey
ex
5

ex

Figura 4.1: Exemplu de schimbare de baza.

Insa {ex , ey } nu este singura baza a lui R2 . Sa consideram, spre exemplu, baza e0x , e0y obtinuta printr-o
rotatie a bazei canonice cu un unghi astfel ales ncat versorul e0x sa devina coliniar cu vectorul considerat
u. Un calcul geometric simplu ne conduce la:
"
e0x

5
29
2
29

"
, e0y

In noua baza e0x , e0y , componentele lui u devin:

he0x , ui = 29
0
ey , u = 0

73

229
5
29

#
.

iar acesta poate fi scris ca:


u=

29e0x

0e0y

e0x

e0y

29
0

"

5
29
2
29

{z

29
5
29

AT

#
}|

29
.
0
{z }
v

Deci, vectorul transformat v = [ 29, 0]T este noua reprezentare a lui u n baza considerata.

4.3

Cazul bidimensional

Fie U = {u(m, n)}m,n=0,...N 1 un semnal cu suport bidimensional (o imagine). Am putea


trata cazul transformatei unitare a lui U prin reducere la cazul unidimensional, considerand ca date de pornire un vector coloana avand ca elemente cele N 2 valori ale matricii U. Totusi, o astfel de abordare, desi valabila matematic, eludeaza natura intrinsec
bidimensionala a semnalelor, fiind, deci, saraca din punct de vedere al posibilitatii de a
interpreta rezultatele. In consecinta, vom pastra n cele ce urmeaza reprezentarea bidimensionala a imaginilor, dar, n acelasi timp, nu vom uita ca toate relatiile ce le vom
defini n continuare au un echivalent n reprezentarea unidimensionala a transformatelor
unitare, mai exact n relatiile (4.2) si (4.4).
O prima consecinta a echivalentei cu cazul unidimensional prezentat n paragraful anterior este faptul ca o transformata unitara a unei imagini reprezinta scrierea imaginii
respective ntr-o alta baza, ca o combinatie liniara a unor vectori/imagini de baza. O
a doua consecinta a acestei echivalente este faptul ca transformata unitara a imaginii
U necesita specificarea a N 4 elemente (cat ar cuprinde o matrice unitara de dimensiuni
N 2 N 2 ). Pentru a pastra, nsa, reprezentarea bidimensionala a imaginilor, vom considera cele N 4 elemente organizate sub forma a N 2 matrici de dimensiune N N fiecare,
pe care le vom nota1 cu Akl = {akl (m, n)}m,n=0,1,...,N 1 pentru k, l = 0, 1, . . . , N 1.
Echivalentul unidimensional al unei matrici Akl este un vector coloana ak definit n (4.7).
Astfel, transformata unitara a imaginii U poate fi acum definta ca fiind imaginea
V = {v(k, l)}k,l=0,1,...,N 1 ale carei elemente (prin analogie directa cu (4.8)) pot fi scrise
ca:
v(k, l) = hAkl , Ui =

N
1 N
1
X
X

akl (m, n)u(m, n)

k, l = 0, 1, . . . N 1.

(4.14)

m=0 n=0

Prin analogie cu relatia (4.9), transformata inversa, prin care se recupereaza imaginea originala din cea transformata, este data de combinatia liniara a matricilor Akl cu coeficientii
scalari v(k, l):

U=

N
1 N
1
X
X

v(k, l)Akl .

(4.15)

k=0 l=0
1

Unicul motiv al notarii, aparent nenecesare, sub forma conjugata a elementelor matricilor Akl este
pastrarea n proportie de 100% a compatibilitatii cu relatiile ce caracterizeaza cazul unidimensional.

74

Scrisa pentru fiecare element al matricii U, relatia (4.15) devine:


u(m, n) =

N
1 N
1
X
X

v(k, l)akl (m, n),

m, n = 0, 1, . . . , N 1.

(4.16)

k=0 l=0

In plus, pentru ca transformata sa fie unitara, este necesar ca noua baza de reprezentare
a imaginii, formata din cele N 2 matrici Akl , sa fie ortonormata, cu alte cuvinte, trebuie
sa existe relatia :

N
1 N
1
X
X
1 daca i = k si j = l

,
(4.17)
hAkl , Aij i =
akl (m, n)aij (m, n) =
0 n rest
m=0 n=0

care este un echivalent direct al (4.13).


In practica, nsa, din cauza numarului foarte mare de calcule necesitat complexitatea
algoritmului de calcul al transformatei unitare a unei imagini N N este O (N 4 ) transformatele unitare sunt rareori folosite conform cu (4.14) si (4.15). Ce se foloseste este o
forma particulara de transformate unitare, si anume asa-numitele transformate separabile,
care sunt de complexitate O (N 3 ). Prin definitie, o transformata unitara bidimensionala
se numeste separabila, daca cele N 4 elemente care o definesc, akl (m, n), pot fi calculate
pornind de la elementele unei singure matrici A = {a(k, l)}k,l=0,1,...,N 1 dupa:
akl (m, n) = a(k, m)a(l, n)

k, l, m, n = 0, 1, . . . , N 1.

(4.18)

Se poate arata direct ca, pentru ca ortonormalitatea bazei formate din matricile Akl sa
fie respectata si n cazul separabil, este necesar si suficient ca matricea A sa fie ea nsasi
unitara.
Introducand constrangerea (4.18) n definitiile unei transformate unitare oarecare (4.14)
si (4.16), obtinem relatiile de calcul ale unei transformate separabile directe:

v(k, l) =

N
1 N
1
X
X

a(k, m)u(m, n)a(l, n),

k, l = 0, 1, . . . , N 1,

(4.19)

a(k, m) v(k, l)a (l, n),

m, n = 0, 1, . . . , N 1,

(4.20)

m=0 n=0

respectiv inverse:
u(m, n) =

1
N
1 N
X
X
k=0 l=0

relatii ce pot fi rescrise sub forma matriciala ca:


V = AUAT ,

(4.21)

U = AT VA .

(4.22)

respectiv
Sa facem n continuare urmatoarea observatie importanta, care justifica apelativul de
separabil atasat acestui tip de transformata: folosind relatia conform careia, pentru doua
matrici oarecare avem (AB)T = BT AT , putem rescrie relatia (4.21) sub forma

T
V = A (AU)T ,
(4.23)
75

ceea ce revine la calculul transformatei unei imagini prin succesiunea de operatii:


1. nmultire la stanga a matricii imagine cu matricea unitara A;
2. transpunerea rezultatului;
3. nmultire la stanga a matricii rezultate cu matricea unitara A;
4. transpunerea rezultatului.
Pentru interpretarea semnificatiei pasilor din succesiunea de mai sus, sa notam cu uk
coloanele matricii U:

U = u0 u1 uN 1 .
(4.24)
Cu aceasta notatie, putem scrie coloanele matricii AU sub forma:

AU = Au0 Au1 AuN 1 .

(4.25)

Cu alte cuvinte, putem afirma, aducandu-ne aminte de (4.2), ca fiecare coloana a matricii
AU rezultata dupa pasul 1 reprezinta transformata unidimensionala a coloanei
respective a matricii U.
Apoi, n pasul 2, matricea AU este transpusa, ceea ce face ca liniile sa devina coloane si
viceversa. Conform celor de mai sus, nmultirea din nou la stanga cu matricea A din
pasul 3 corespunde aplicarii nca o data a transformatei unitare unidimensionale definite
de A coloanelor lui (AU)T , adica liniilor lui AU. Transpunerea din pasul 4 face ca liniile
sa redevina linii si coloanele, coloane.
In rezumat, putem afirma ca o transformata unitara bidimensionala separabila se reduce
la aplicarea transformatei unitare unidimensionale respective, mai ntai pe fiecare coloana
a imaginii, iar apoi, pe fiecare linie.
O ultima observatie generala referitoare la transformatele bidimensionale este legata de
cazul n care suportul imaginii originale nu este patrat, cum s-a considerat pana n prezent.
In cazul n care dimensiunile imaginii originale U sunt M N , cu M 6= N , este nevoie
de doua matrici unitare, AM CM M , respectiv, AN CN N , cu ajutorul carora se
calculeaza imaginea transformata V CM N conform cu:
V = AM UATN ,

(4.26)

U = AT
M VAN .

(4.27)

transformata inversa fiind data de:

4.4

Propriet
ati ale transformatelor unitare

Una dintre cele mai importante aplicatii ale transformatelor este compresia de date, care
este posibila datorita proprietatii transformatelor utilizate n practica de a compacta energia ntr-un numar redus de coeficienti n spatiul transformatei. Sa precizam pentru
76

nceput ca o transformata unitara conserva energia semnalului. Intr-adevar2 :


T
T
2
Ev = kvk2 = vT v = (Au)T Au = uT A
| {zA}u = u u = kuk = Eu .

(4.28)

IN

Desi energia totala se conserva, pentru majoritatea transformatelor utilizate n practica,


aceasta tinde sa fie distribuita inegal ntre coeficientii v(k) ai spatiului transformat. Cu
alte cuvinte, energia este concentrata ntr-un numar redus de coeficienti ai transformarii,
restul putand fi neglijati, pierderea de informatie indusa fiind extrem de mica. Se poate
arata ca, n acelasi timp cu compactarea energiei ntr-un numar redus de coeficienti, se
reduce gradul de corelatie ntre coeficientii din spatiul transformatei.
Transformata optima, care compacteaza maximum de energie ntr-un numar dat de
coeficienti si care, n acelasi timp, decoreleaza complet coeficientii, se numeste transformata KarhunenLo`eve si este caracterizata de faptul ca vectorii coloana ai matricii
unitare ce defineste transformata sunt vectorii proprii ai matricii de covariatie a semnalului original (pentru mai multe detalii n aceasta directie, poate fi consultata lucrarea
[11]).
Tranformata KarhunenLo`eve se foloseste rareori ca atare n practica. Unul dintre motive
este acela ca transformata nu este aceeasi pentru orice semnal, ci depinde de statistica
semnalului respectiv. Matricea transformatei trebuie, deci, calculata pentru fiecare clasa
de semnale n parte. Un alt motiv, si mai important, este acela ca transformata n cazul
imaginilor este neseparabila, deci de complexitate O (N 4 ). In practica se folosesc diverse
aproximari ale transformatei, suboptimale, dar cu posibilitati de implementare eficienta,
dintre care cea mai utilizata este transformata cosinus discreta, care va fi prezentata n
detaliu n paragraful 4.6.

4.5

Transformata Fourier discret


a

Fie U = {u(m, n)}m,n=0,1,...,N 1 o imagine de dimensiuni N N . Se defineste transformata


Fourier bidimensionala a imaginii U ca fiind matricea V = {v(k, l)}k,l=0,1,...,N 1 ale carei
elemente sunt calculate dupa:

2j(km + ln)
u(m, n) exp
v(k, l) =
,
N
m=0 n=0
1
N
1 N
X
X

k, l = 0, 1, . . . , N 1.

(4.29)

m, n = 0, 1, . . . , N 1.

(4.30)

Transformata inversa este data de:

N 1 N 1
1 XX
2j(km + ln)
u(m, n) = 2
,
v(k, l) exp
N k=0 l=0
N

Din cauza factorului de scalare N12 ce apare numai n transformarea inversa, definitia
transformatei Fourier discrete de mai sus nu se potriveste perfect cu cadrul general al
2

Proprietatea ramane valabila si pentru semnale bidimensionale.

77

transformatelor unitare prezentat n paragraful 4.3. Pentru o potrivire perfecta, se poate


defini transformata Fourier discreta unitar
a dupa relatiile:

N 1 N 1
1 XX
2j(km + ln)
v(k, l) =
u(m, n) exp
, k, l = 0, 1, . . . , N 1, (4.31)
N m=0 n=0
N
respectiv

N 1 N 1
1 XX
2j(km + ln)
u(m, n) =
v(k, l) exp
,
N k=0 l=0
N

m, n = 0, 1, . . . , N 1,

(4.32)

relatii ce pot fi scrise sub forma matriciala ca:


V = FUF,
U = F VF ,
unde F = {f (k, n)}k,n=0,1,...,N 1 este matricea cu elementele date de:

2jkn
1
f (k, n) = exp
.
N
N

(4.33)
(4.34)

(4.35)

Evident, diferenta ntre cele doua definitii ale transformatei Fourier discrete (cea neunitara
si cea unitara) este strict cantitativa, la nivel de factor de scalare. In continuare, vom
considera cazul unitar, neuitand nsa ca absolut toate concluziile pe care le tragem sunt
valabile si pentru transformata Fourier neunitara.

4.5.1

Semnificatia transformatei Fourier bidimensionale

Semnificatia transformatei Fourier unidimensionale este de descompunere a unui semnal


(cu desfasurare n timp) ntr-o suma de semnale cosinusoidale pure. In mod similar,
transformata Fourier bidimensionala ne da descompunerea unui
bidimensional
2ksemnal

2l
(imagine) ca o suma de cosinusoide spatiale de tip f (m, n) = cos N m + N n cu k, l Z.
Forma unei astfel de functii plane seamana cu o tabla ondulata, dupa cum este ilustrat
n figura 4.2.
Rezulta, deci, ca descompunerea Fourier ne da o scriere a imaginilor noastre, care sunt
niste functii bidimensionale,
ca o sum
2k
a (suprapunere) de astfel de table ondulate dupa
2l
toate frecventele spatiale N , N posibile (n figura 4.3 sunt prezentate cateva dintre
aceste functii de baza). Din (4.32), rezulta ca valoarea complexa v(k, l) contine toate
informatiile referitoare la ponderea cosinusoidei respective. Astfel, modulul |v(k, l)| ne da
v(k,l)
reprezinta faza (adica deplasarea spatial
a)
amplitudinea cosinusoidei, n timp ce faza |v(k,l)|
cosinusoidei.

4.5.2

Propriet
atile transformatei Fourier discrete

Transformata Fourier continua are un numar de proprietati (deplasare n spectru, derivare,


simetrie etc.) care raman valabile si pentru cazul discret. In continuare, vom discuta
numai acele proprietati care sunt specifice cazului discret, sau care necesita o discutie
separata n cazul trecerii din continuu n discret.
78

1.5

0.5

0.5

1.5

50

100

150

200

(a)
1.5

0.5

0.5

0.5

0.5

50

100

150

200

250

300

350

400

450

500

(b)

1.5

1.5

250

300

350

400

450

1.5

500

(c)

100

200

300

400

500

(d)

Figura 4.2: (a) O cosinusoida spatiala f (m, n) = cos 2k


m + 2l
n vazuta sub forma
N
N
de imagine: valorilor mari le corespund nivele de gri nalte (alb) iar valorilor mici nivele
scazute (negru). (b) Semnalul unidimensional de-a lungul dreptei A, care este o cosinusoida de frecventa k/N . (c) Semnalul unidimensional de-a lungul dreptei B: o cosinusoida
de frecvent
a l/N . (c) Semnalul unidimensional de-a lungul dreptei C: o cosinusoida de
2
2
frecventa kN+l .
Algoritmi rapizi
Transformata Fourier beneficiaza de existenta unor algoritmi rapizi (de tip FFT Fast
Fourier Transform) cu ajutorul carora complexitatea calculului scade de la O(N 3 ) la
O(N 2 log N ). Pentru N = 500, de exemplu, aceasta nseamna o crestere a vitezei de
calcul de peste 50 ori.
Elemente complex conjugate
Daca imaginea de start are valori reale (u(m, n) R, m,
elementele din spec Nn) Natunci

trul Fourier localizate simetric fata de punctul din mijloc 2 , 2 sunt complex conjugate.
Aceasta poate fi exprimat matematic ca:
v(N k, N l) = v (k, l),

k, l = 0, 1, . . . , N 1.

(4.36)

Demonstratia afirmatiei de mai sus se face calculand v(N k, N l) din (4.31) si folosind
79

k=3;l=3

k=3;l=2

k=3;l=1

k=3;l=0

k=3;l=1

k=3;l=2

k=3;l=3

k=2;l=3

k=2;l=2

k=2;l=1

k=2;l=0

k=2;l=1

k=2;l=2

k=2;l=3

k=1;l=3

k=1;l=2

k=1;l=1

k=1;l=0

k=1;l=1

k=1;l=2

k=1;l=3

k=0;l=3

k=0;l=2

k=0;l=1

k=0;l=0

k=0;l=1

k=0;l=2

k=0;l=3

k=1;l=3

k=1;l=2

k=1;l=1

k=1;l=0

k=1;l=1

k=1;l=2

k=1;l=3

k=2;l=3

k=2;l=2

k=2;l=1

k=2;l=0

k=2;l=1

k=2;l=2

k=2;l=3

k=3;l=3

k=3;l=2

k=3;l=1

k=3;l=0

k=3;l=1

k=3;l=2

k=3;l=3

Figura 4.3: Cosinsoidele spatiale corespunzatoare diverselor frecvente k si l.


faptul ca exp(2jk) = 1, k Z, respectiv exp(j) = (exp(j)) .
O prima consecinta a acestei proprietati, cu o importanta mai mult de ordin
computational, este ca pentru stocarea spectrului unei imagini cu N 2 elemente reale,
este nevoie tot de N 2 elemente, si nu de 2N 2 , cum ar fi parut la o prima vedere.
O a doua interpretare nlesnita de aceasta proprietate va fi discutata n paragraful
urmator.

Periodizare n frecvent
a
Conform (4.31), transformata Fourier discreta a unei imagini de dimensiune N N este si
ea de dimensiune N N , adica este definita numai pentru k, l = 0, 1, . . . , N 1. Daca ne
punem problema extinderii spectrului Fourier discret n afara domeniului {0, . . . , N 1}
{0, . . . , N 1}, cu alte cuvinte, daca vrem sa calculam valoarea n orice punct (k, l) Z2
a spectrului Fourier care corespunde imaginii noastre originale, atunci aceasta trebuie
80

facuta prin periodizare cu perioada N pe fiecare directie, adica este valabila relatia:
v(k + N, l + N ) = v(k, l),

k, l Z.

(4.37)

Demonstratia relatiei de mai sus se face simplu, calculand v(k + N, l + N ) din (4.31) si
folosind faptul ca exp(2jk) = 1, k Z.
O consecinta directa a acestei proprietati este urmatoarea: daca reprezentam spectrul
Fourier al unei imagini obtinut conform (4.31), vom avea frecventa (0, 0) n coltul din
stanga sus al matricii (vezi patratul delimitat de linia punctata din Figura 4.4).

0
0

N1

N1

Figura 4.4: Ilustrare a reprezentarii spectrului Fourier discret al unei imagini.


Reprezentarile spectrale cu care suntem obisnuiti, nsa, sunt cele cu frecventa 0 la mijloc. Folosind extinderea prin periodizare n Z2 a spectrului, putem obtine o astfel de
reprezentare, considerand, n figura 4.4, aria delimitata de linia continua n locul celei
cu linie ntrerupta. Din punct de vedere computational, operatiunea consta n a interschimba (swap) sferturile de matrice A si D, respectiv B si C. In figura 4.5 este ilustrata
amplitudinea spectrului Fourier al unei imagini nainte si dupa schimbarea reprezentarii.
De mentionat ca, n noua reprezentare (cu frecventa (0, 0) la mijloc), proprietatea descrisa
n paragraful anterior poate fi re-enuntata astfel: elementele spectrului Fourier situate
simetric fata de punctul (0, 0) sunt complex conjugate, fapt deja cunoscut de la studiul
proprietatilor transformatei Fourier continue unidimensionale.
Periodizare n spatiu
Reluand rationamentul din paragraful anterior, dar judecand de aceasta data n spatiu,
ne punem ntrebarea cum arata imaginea originala n afara intervalului de definitie
{0, . . . , N 1} {0, . . . , N 1} careia i corespunde spectrul Fourier V. Raspunsul este
ca extinderea imaginii originale n afara domeniului de definitie se face de asemenea prin
periodizare. Altfel spus, avem relatia:
u(m + N, n + N ) = u(m, n) m, n Z,
ce poate fi demonstrata imediat pornind de la expresia (4.32).
81

(4.38)

(a)

(b)

(c)

Figura 4.5: (a) Imagine cu nivele de gri. (b) Amplitudinea spectrului Fourier bidimensional original al imaginii (a). (c) Amplitudinea spectrului Fourier bidimensional al imaginii (a) dupa rearanjarea frecventelor cu frecventa (0, 0) la miloc.
Se impune din capul locului observatia ca aceasta periodizare a imaginii nu este o
abstractizare nenecesara, ci este o realitate: pur si simplu, din perspectiva spectrului
V, imaginea noastra extinsa n Z2 se obtine prin periodizarea la infinit a imaginii originale
definite n {0, . . . , N 1} {0, . . . , N 1}. Evident, daca ne uitam numai n interiorul
intervalului {0, . . . , N 1} {0, . . . , N 1}, atunci cele doua imagini cea originala si
cea extinsa coincid.
Consecinta directa cea mai deranjanta a acestei situatii poate fi explicata prin exemplul
urmator. Sa consideram imaginea unei cosinusoide spatiale din figura 4.6.a. Spectrul
imaginii respective, prezentat n figura 4.6.b, difera destul de mult de asteptarile noastre3 prezentand, pe langa cele doua maxime pronuntate la care ne asteptam, numeroase
componente parazite.
Prezenta acestor componente poate fi explicata exact prin faptul ca spectrul a fost calculat
3

Stim ca spectrul unui semnal continuu cosinusoidal pur de frecventa 0 este format din doua impulsuri
Dirac, pe frecventele 0 si 0 . Prin extindere directa, ne asteptam ca spectrul unui semnal cosinusoidal
bidimensional de frecvente (x , y ) sa fie si el format din doua impulsuri Dirac pe frecventele (x , y ),
respectiv (x , y ).

82

(a)

(b)

Figura 4.6: O cosinusoida trunchiata la intervalul {0, . . . , N 1} {0, . . . , N 1} si


amplitudinea spectrului ei Fourier.
nu pe baza unei cosinusoide pure definite pe Z2 , ci numai pe baza limitarii spatiale (ferestruirii) a acestei cosinusoide n intervalul {0, . . . , N 1} {0, . . . , N 1}. Din punctul
de vedere al spectrului, imaginea din Z2 careia el i corespunde este periodizarea imaginii
noastre, prezentata n figura 4.7, care, dupa cum se observa, din cauza nepotrivirii la
margini, difera sensibil de o cosinusoida spatiala pura.

Figura 4.7: Extinderea prin periodizare n Z2 a imaginii din figura 4.6.a.


Sa precizam ca, desi ilustrata pe un exemplu particular, aceeasi situatie se regaseste si
n cazurile imaginilor naturale: faptul ca, n general, partea din stanga a imaginii nu se
potriveste cu cea din dreapta, respectiv partea de sus cu cea de jos, creeaza false frontiere
n imaginea periodizata, aceasta traducandu-se n aparitia de componente parazite n
spectrul Fourier discret al imaginii respective (termenul anglofon pentru acest fenomen
este spectral leakage).
O solutie posibila pentru atenuarea acestui efect (n cazul n care este deranjant) este
ferestruirea spatiala a imaginii cu o fereastra bidimensionala de tip Hamming nainte
de calculul spectrului. Aceasta ferestruire are ca efect atenuarea intensitatii pixelilor
83

situati pe oricare din marginile imaginii, si, deci, reducerea frontierelor false din semnalul
periodizat. Evident, efectul negativ este pierderea de informatie implicata de ferestruire
(practic, se scade ponderea informatiei continute pe marginile imaginii n detrimentul celei
din centru). In figura 4.8 sunt prezentate cosinusoida din figura 4.6.a dupa ferestruire,
precum si spectrul sau. Comparand spectrele din 4.6.b si 4.8.b, se poate observa efectul
ferestruirii, de reducere a componentelor parazite.

(a)

(b)

Figura 4.8: (a) Imaginea din figura 4.6 dupa ferestruire cu o fereastra Hamming bidimensionala si amplitudinea spectrului ei.

Proprietatea convolutiei
Proprietatea convolutiei transformatei Fourier afirma ca o convolutie ntre doua semnale n domeniul original (temporal sau spatial) este echivalenta cu produsul punctual
(frecventa cu frecventa) al spectrelor Fourier ale celor doua semnale. Aceasta proprietate
este esentiala pentru notorietatea de care se bucura transformata Fourier, ntrucat are
aplicatie directa la studiul sistemelor liniare, invariante n timp, a caror iesire este data
de convolutia ntre semnalul de intrare si o functie proprie a sistemului (numita functie
pondere).
In cazul semnalelor bidimensionale cu suport discret, se defineste convolutia ntre semnalele f1 si f2 ca:

g(l, c) = f1 (l, c) ? ?f2 (l, c) =

f1 (m, n)f2 (l m, c n),

l, c Z.

(4.39)

m= n=

Prin compararea definitiei (4.39) cu ecuatia (3.2), ce descrie actiunea unui filtru liniar
asupra unei imagini, se observa ca filtrarea liniara a unei imagini nu este altceva decat o
convolutie bidimensionala ntre imaginea originala si masca de filtrare (ambele prelungite
n Z2 prin adaugare de zerouri).
84

Rezulta ca o filtrare liniara (3.2) poate fi interpretata ca produsul spectrelor Fourier


al imaginii, respectiv al nucleului de filtrare. Se impune, nsa, o discutie referitoare la
dimensiunea imaginilor carora li se calculeaza spectrul.
Sa presupunem o convolutie ntre o imagine f de dimensiuni N1 N2 cu un nucleu de
filtrare w de dimensiuni M1 M2 . Conform (4.39), se poate arata cu usurinta ca suportul
imaginii rezultat g (numarul de puncte n care aceasta are componente nenule) este de
dimensiune (M1 + N1 1) (M2 + N2 1). Evident, ncercarea de a calcula spectrul
Fourier al lui g ca fiind produsul punct cu punct ntre spectrul Fourier al imaginii f si cel
al nucleului w nu poate avea sanse de reusita, ntrucat dimensiunile cele trei spectre sunt
diferite.
Rezulta, deci, ca pentru a adapta proprietatea convolutiei, specifica reprezentarii n continuu, la cazul reprezentarii n discret, va trebui sa aducem cele trei imagini la o aceeasi
dimensiune nainte de a le calcula spectrele. Acest lucru se poate face prin bordare cu
zero a imaginilor pana la dimensiunea respectiva (sa nu uitam ca o convolutie adevarata
presupune semnale de suport infinit, care se obtin prin extinderea cu zerouri n Z2 atat a
semnalelor convolvate, cat si a rezultatului convolutiei).
Se demonstreaza [33] ca atat imaginea f , de dimensiune N1 N2 , cat si nucleul w, de dimensiune M1 M2 trebuie bordate cu zerouri pana ajung, ambele, la o dimensiune minima
de (M1 + N1 1) (M2 + N2 1), nainte de a le fi calculate spectrele Fourier, pentru
ca prin produsul acestora sa se obtina rezultate identice cu convolutia n spatiu (4.39).
Rezumand, proprietatea convolutiei transformatei Fourier discrete bidimensionale poate
fi enuntata dupa cum urmeaza: fie imaginea f de dimensiune N1 N2 si fie nucleul de
convolutie w de dimensiune M1 M2 . Se efectueaza urmatoarea succesiune de pasi:
Se alege N max(M1 + N1 1, M2 + N2 1).
Se creeaza semnalele
f si w
de dimensiune N N prin bordare cu zer
f (m, n) daca 0 m N1 1 si 0 n N2 1
, respectiv
ouri: f(m, n) =
0
n rest

w(m, n) daca (m, n) V


w(m,

n) =
(unde V este vecinatatea de dimensiuni
0
n rest
M1 M2 specifica nucleului de filtrare respectiv).
Se calculeaza transformatele Fourier discrete bidimensionale n N N puncte ale
(k, l), conform cu (4.31).
celor doua imagini, F (k, l) si W
Se calculeaza produsul punctual al celor doua spectre Fourier:
l) = F (k, l)W
(k, l),
G(k,

k, l = 0, 1, . . . , N 1.

(4.40)

l) n N N puncte,
Se calculeaza g(m, n), transformata Fourier inversa a lui G(k,
dupa (4.32).
Atunci, n primele (N1 + M1 1) (N2 + M2 1) puncte, semnalul rezultat g(m, n)
coincide cu rezultatul convolutiei spatiale g(m, n) = f (m, n) ? ?w(m, n):
g(m, n) = g(m, n),

(m, n) {0, 1, . . . , M1 + N1 2} {0, 1, . . . , M2 + N2 2}.


(4.41)
85

Fara a avea pretentia de demonstratie, putem justifica necesitatea bordarii cu zerouri


atat a imaginii cat si a nucleului (astfel ncat sa ajunga, ambele, la cel putin dimensiunea
convolutiei lor) astfel:
1. orice convolutie, chiar daca este calculata numai n zona n care semnalele au valori
nenule, este de fapt o operatiune desfasurata n Z2 (vezi definitia (4.39))
2. din punctul de vedere al spectrului Fourier al imaginii, semnalul extins n Z2 se
obtine prin periodizarea imaginii.
In aceste conditii, produsul spectrelor Fourier a doua imagini corespunde spatial unei
convolutii n Z2 a semnalelor obtinute prin periodizarea celor doua imagini! Daca cele
doua imagini nu sunt bordate cu zerouri n mod corespunzator4 atunci se va ntampla ca
valorile situate la una dintre marginile imaginii sa contribuie la calculul valorii situate n
partea cealalta (valorile de sus le vor afecta pe cele de jos, cele din stanga pe cele din
dreapta, etc.) ceea ce nu corespunde unei convolutii adevarate (4.39).

(a)

(b)

(c)

Figura 4.9: Echivalentul spatial al unei filtrari liniare trecejos n planul Fourier prin bordarea nucleului cu zerouri pana la dimensiunea imaginii (gresit!): (a) Imaginea originala
periodizata, (b) Nucleul de filtrare bordat si periodizat (c) Rezultatul convolutiei spatiale
dintre imaginile (a) si (b).
Situatia este ilustrata n figurile 4.9 si 4.10. In figura 4.9 este prezentat cazul n care se
bordeaza numai nucleul (imaginea de dimensiuni mai mici) pana la dimensiunea imaginii
mai mari, si se face produsul spectrelor Fourier ale imaginii (nebordate) si al nucleului
bordat la aceasta dimensiune. Se observa interferenta ntre valorile situate pe laturile
extreme (susjos, stangadreapta), care nu are echivalent n convolutia curata efectuata
n domeniul spatial.
In figura 4.10 este prezentat cazul (corect) n care se bordeaza atat imaginea, cat si nucleul.
Prin introducerea bordurii de zerouri imaginii, interferenta descrisa mai sus nu mai are
loc, si, deci, rezultatul corespunde ntru totul unei convolutii spatiale reale.
Importanta proprietatii convolutiei este atat de natura teoretica, cat si practica. Din
punct de vedere teoretic, este interesant a analiza nucleele de convolutie din punctul de
4

Adica fiecare imagine sa fie bordata cu cel putin atatea linii si coloane de zerouri cate linii si coloane
are cealalta imagine!

86

Figura 4.10: Rezultatul implementarii unei filtrari liniare trecejos n planul Fourier prin
bordarea corespunzatoare atat a imaginii cat si a nucleului.

vedere al distributiei lor spectrale. Astfel putem distinge, ca si n cazul semnalelor, nuclee
trecejos (de netezire) care elimina (atenueaza) componentele pe frecvente nalte, precum
si nuclee trecesus (de tip laplacian) care, dimpotriva, elimina componentele de frecventa
joasa. In figura 4.11 sunt prezentate amplitudinile spectrelor a doua nuclee de filtrare: un
nucleu de mediere 3 3, cu un comportament frecvential de tip trecejos, respectiv un
nucleu laplacian, de tip trecesus.

(a)

(b)

Figura 4.11: Amplitudinile spectrelor Fourier (calculate n 256 256 puncte), ale unui
nucleu de mediere 3 3 (a), respectiv ale unui nucleu laplacian (b)

Din punct de vedere practic, se poate ntampla ca implementarea convolutiei n domeniul


spectral sa fie mai rapida decat n domeniul spatial, si anume n cazul n care dimensiunea
nucleului de filtrare devine prea mare5 .
5

Cu titlu informativ, implementarea n frecventa a convolutiei ntre o imagine 256 256 si un nucleu
28 28 este de aproximativ doua ori mai rapida decat implementarea n timp.

87

4.6

Transformata cosinus discret


a

Transformata cosinus discreta este definita de matricea unitara C = {c(k, n)}k,n=0,...,N 1


avand elementele date de:
(
c(k, n) =

1
N
2
cos (2n+1)k
N
2N

daca k = 0
daca k 6= 0

(4.42)

Intrucat elementele matricii C sunt reale, rezulta ca transformata cosinus discreta a unei
imagini U de dimensiune N N poate fi scrisa matricial ca:
V = CUCT ,

(4.43)

n timp ce transformata inversa este data de:


U = CT VC.

(4.44)

Element cu element, relatiile de mai sus pot fi scrise ca:

N 1 N 1
(2m + 1)k
(2n + 1)l
(k)(l) X X
v(k, l) =
u(m, n) cos
cos
, k, l = 0, 1, . . . , N 1,
N
2N
2N
m=0 n=0
(4.45)
respectiv,

N
1 N
1
X
X
(k)(l)
(2m + 1)k
(2n + 1)l
u(m, n) =
v(k, l) cos
cos
, m, n = 0, 1, . . . , N 1,
N
2N
2N
k=0 l=0
(4.46)

1
dac
a
k
=
0
unde (k) =
.
2 daca k 6= 0
Se poate demonstra (vezi [33]) ca transformata cosinus discreta poate fi si ea implementata
printr-un algoritm rapid, de complexitate O{N 2 log N } (de altfel, se poate demonstra
ca valorile transformatei cosinus discrete a unei imagini pot fi calculati pornind de la
coeficientii transformatei Fourier discrete a imaginii respective). De asemenea, se poate
demonstra [33, 11] ca matricea C din (4.42) este foarte apropiata de matricea transformarii
optimale KarhunenLo`eve pentru semnale Markov de ordinul unu puternic corelate.
O alta proprietate extrem importanta a transformatei cosinus discrete, care justifica din
alt unghi de vedere performantele excelente ale acesteia de compactare a energiei, este
faptul ca extensia imaginii n afara domeniului {0, . . . , N 1} {0, . . . , N 1}, conform
relatiei (4.46), nu se face prin periodizare (ca n cazul transformatei Fourier) ci prin
oglindire, atat pe axa stanga-dreapta, cat si susjos. In figura 4.12 este ilustrat modul
n care se face extinderea imaginii n Z2 .
Extinderea prin oglindire face ca spectrul TCD sa corespunda unui semnal cu mai putine
tranzitii bruste, ntrucat sunt eliminate falsele tranzitii dreaptastanga, respectiv jos
sus aferente unei extinderi prin periodizare (a se compara, spre exemplu, imaginile din
figurile 4.12.(b) si 4.9.(a)). Prin urmare, ne asteptam ca numarul componentelor importante din domeniul transformatei sa fie mai redus decat la o transformata care implica o
88

(a)

(b)

Figura 4.12: Extinderea n Z2 a unei imagini vazuta prin prisma spectrului sau calculat
cu transformata cosinus discreta: (a) Imagine originala. (b) Imagine extinsa.

extensie prin periodizare. In figura 4.6 este prezentat spectrul de amplitudini n planul
transformatei cosinus discrete al imaginii din figura 4.12.(a): se poate observa numarul
extrem de crescut de componente de valoare redusa, componente a caror eliminare ar
implica pierderi minimale pentru imaginea reconstruita.

Figura 4.13: Spectrul de amplitudini n planul transformatei cosinus discrete al imaginii


din figura 4.12.(a).

Toate aceste proprietati fac ca transformata cosinus discreta sa fie folosita n standardul
de compresie de imagini JPEG. Mai multe detalii despre acest subiect vor fi prezentate
n capitolul 10.
89

4.6.1

Transformata sinus discret


a

Transformata sinus discreta este data de matricea unitara S = {s(k, n)}k,n=0,...,N 1 , avand
elementele date de:
r
(k + 1)(n + 1)
2
s(k, n) =
sin
.
(4.47)
N +1
N +1
Avand n vedere ca matrices S este atat reala cat si simetrica, rezulta ca transformata
sinus discreta a imaginii U se scrie:
V = SUS,

(4.48)

n timp ce transformata inversa este data de:


U = SVS.

(4.49)

La randul ei, si transformata sinus discreta bidimensionala poate fi implementata prin


algoritmi rapizi, de complexitate O(N 2 log N ).
La fel ca si n cazul transformatei cosinus, se poate arata [33] ca transformata sinus
discreta reprezinta o buna aproximare a transformatei optimale KarhunenLo`eve pentru
semnale aleatoare slab corelate. Cum, nsa, imaginile sunt, n general, puternic corelate,
transformata sinus discreta este rareori folosita n compresia de imagini.

90

Partea II
Analiza imaginilor

91

Analiza imaginilor poate fi descrisa pe scurt ca o colectie de metode (algoritmi) al caror


scop este producerea unei descrieri a datelor de tip vizual existente n imagini; din punct
de vedere functional, un bloc de analiza a imaginilor are ca intrare o imagine si produce
la iesire o descriere asociata imaginii de intrare (Image In, Description Out). Analiza
imaginilor are ca scop separarea unor componente esentiale din imagini, identificarea acestora si, eventual, a relatiilor dintre ele si construirea unui model al continutului imaginii,
pe baza caruia sa se poata lua decizii de nivel nalt.
Analiza imaginilor grupeaza doua categorii de tehnici: tehnicile de segmentare a imaginilor al caror scop este separarea obiectelor individuale din imagine (obiecte descrise fie
prin multimi de puncte compacte regiuni, fie prin contur) si tehnicile de caracterizare
a obiectelor - al caror scop este generarea unor vectori numerici de trasaturi caracteristice pentru obiectele din imagine. Fiecare dintre tehnicile de segmentare amintite
segmentarea orientata pe regiuni si segmentarea orientata pe contururi sunt dezvoltate
n capitole separate. Descrierea componentelor extrase din imagini este la randul ei tratata
n doua capitole separate - descrierea obiectelor compacte si a frontierelor acestora (adica
ceea ce se numeste n mod curent forma plana) si respectiv descrierea texturilor regiuni
compacte din imagini pentru care interiorul nu este uniform din punctul de vedere al
nivelelor de gri, dar nici nu poate fi separat n alte componente mai mici.

93

94

Capitolul 5
Segmentarea orientat
a pe regiuni
Segmentarea se refera la descompunerea unei scene (imagini) n partile sale constituente
(componente, elemente) [33], [68], [8] sau extragerea din scena a componentei de interes
pentru aplicatie. Segmentarea este n general o problema ambigua, atata timp cat exista
mai multe solutii corecte de segmentare ale aceleiasi imagini (cu exceptia unor aplicatii
specifice din domenii precis delimitate, precum defectoscopia sau recunoasterea optica
a caracterelor tiparite OCR (Optical Character Recognition)). Din punct de vedere
matematic putem exprima segmentarea unei imagini f ca o partitionare a suportului
spatial al acesteia ntr-un ansamblu de K multimi fi disjuncte, nevide, ce satisfac individual un anume criteriu de definitie {, criteriu ce nu mai este respectat de orice pereche
de multimi (fi , fj ):
f=
fi

K
[

fi , fi 6= , i

(5.1a)

i=1

fj = , i 6= j

{ (fi ) = ADEVARAT,
i
[
{ fi fj = FALS, i 6= j

(5.1b)
(5.1c)
(5.1d)

In general, criteriul { de definitie a multimilor (regiunilor) ce se doresc identificate prin


segmentare impune ca acestea sa fie conexe si sa fie uniforme din punctul de vedere al
unui set de parametri caracteristici (chiar valoarea pixelului sau caracteristici derivate
din valorile pixelilor). In covarsitoarea majoritate a aplicatiilor, criteriul de definitie
al regiunilor este un criteriu de uniformitate relativ doar la valorile pixelilor ce compun
regiunea; astfel, obiectele (regiunile) ce se doresc identificate sunt caracterizate de intervale
nguste de variatie a nivelelor de gri. Dupa cum criteriul de definitie { impune sau nu
conexitatea multimilor fi rezultate, numarul de multimi K va reprezenta numarul de
obiecte individuale, respectiv numarul de tipuri de obiecte din imagine.
In lipsa unor criterii impuse de aplicatii particulare, calitatea segmentarii poate fi apreciata
n mod generic prin compararea numarului de obiecte rezultate n urma segmentarii cu
numarul real de obiecte din imagine. Dupa cum numarul real de obiecte este mai mare,
respectiv mai mic decat numarul de obiecte rezultate prin segmentare, vom vorbi de erori
95

de suprasegmentare, respectiv de subsegmentare. Presupunand ca marginile obiectelor


sunt identificate relativ corect, suprasegmentarea nseamna ca un obiect a fost descompus
(separat, spart) n mod artificial si eronat n mai multe componente. Subsegmentarea
nseamna ca obiecte reale, diferite, dar nvecinate spatial au fost reunite n mod eronat
prin segmentare ntr-o singura componenta.
Este greu de introdus un indice numeric obiectiv universal de apreciere a calitatii segmentarii; formulele propuse recent de Liu [36] (5.2) si Borsotti [6] (5.3) sunt deduse n
ipoteza ca regiunile sunt caracterizate de uniformitatea nivelului de gri si ca este mai
importanta identificarea corecta a regiunilor mari. Indicii de calitate propusi au forma:
K

1 X i2
K

1000N
ni
i=1

2 !
K
1 X
N b(ni ))
i2
+
.
Q=
K
1000N
log
n
n
i
i
i=1

Q=

(5.2)
(5.3)

In expresiile de mai sus, N este numarul de pixeli din imagine, K este numarul de regiuni
obtinute prin segmentare, i2 este varianta nivelelor de gri a celor ni pixeli din regiunea
fi , iar N b(ni ) este numarul de regiuni ce au acelasi numar de pixeli, ni .
Principala distinctie ntre diferitele tehnici de segmentare orientata pe regiuni se refera
la domeniul primar de cautare (adica domeniul n care se ncearca separarea pixelilor din
imagine dupa tipurile de obiecte cautate): domeniul spatial si domeniul valorilor.
Segmentarea n domeniul spatial foloseste initial (n mod fundamental) informatia de
pozitie a pixelilor. Obiectele (regiunile) identificate prin segmentare sunt fundamental
conexe, ndeplinirea criteriului de definitie actionand ca un criteriu de limitare. Cresterea
regiunilor si etichetarea imaginilor binare sunt asemenea metode de segmentare. In cazul
etichetarii imaginilor binare, uniformitatea valorilor este evidenta pentru orice componenta, mai trebuind a fi asigurata conexitatea.
Segmentarea n domeniul (spatiul) valorilor foloseste numai informatia de valoare a pixelilor, fara a considera si distributia spatiala a acestor valori. Ca rezultat al acestei
partitionari bazate numai pe valoare, multimile-obiect identificate nu sunt conexe (ceea
ce poate fi exprimat prin aceea ca, la nivelul multimilor identificate prin segmentare,
criteriul de definitie { nu include ipoteza de conexitate). Intotdeauna este necesar ca
segmentarea n domeniul valorilor sa fie urmata de o etichetare a imaginilor binare ce
corespund regiunilor de interes.

5.1

Segmentarea n suportul imaginii

Esenta algoritmilor de segmentare n suportul imaginii este identificarea pixelilor ce


formeaza un acelasi obiect prin detectia adiacentelor dintre acestia si asocierea unei
etichete unice tuturor punctelor aceluiasi obiect. Adiacenta (vecinatatea) este deci conceptul fundamental pe baza caruia sunt identificate obiectele. Adiacenta este determinata
de tipul de conexitate adoptat; n cazul imaginilor esantionate pe o retea patrata sunt
uzuale modelele de conexitate de tip V4 sau de tip V8 . Pentru o conexitate de tip V4 fiecare
96

pixel al imaginii are patru vecini (ce formeaza ceea ce se numeste vecinatatea imediata a
punctului). Vecinatatea imediata a punctului de coordonate (l, c) este multimea V4 (l, c) =
{(l 1, c), (l + 1, c), (l, c 1), (l, c + 1)} si este reprezentata n figura 5.1 a). Pentru o
conexitate de tip V8 fiecare pixel al imaginii are opt vecini (ce formeaza ceea ce se numeste
vecinatatea extinsa a punctului).
S Vecinatatea extinsa a punctului de coordonate (l, c) este
multimea V8 (l, c) = V4 (l, c) {(l 1, c 1), (l + 1, c 1), (l 1, c + 1), (l + 1, c + 1)} si
este reprezentata n figura 5.1 b). Un drum ntre doua puncte ale imaginii este o secventa

a)

b)

Figura 5.1: a) Vecin


atatea imediat
a (V4 ) si b) vecin
atatea extinsa (V8 ) a unui pixel.
ordonata de puncte ale imaginii, vecine doua cate doua (relativ la un anumit tip de
conexitate, V4 sau V8 ), care are drept capete punctele considerate.

5.1.1

Cresterea regiunilor

Principiul pe care se bazeaza cresterea regiunilor este simplu: se aleg n imagine puncte
reprezentative pentru fiecare obiect individual si/sau categorie de obiecte, n jurul carora
are loc un proces de aglomerare a pixelilor vecini, ce au aceleasi proprietati (n particular
acelasi nivel de gri sau aceeasi culoare). In urma acestui proces de aglomerare (adaugare de
puncte) se obtin zone (regiuni) de pixeli cu aceleasi caracteristici, deci obiecte individuale.
Procesul se opreste n momentul n care toate punctele imaginii au fost alocate cate unei
regiuni. Evident, metoda astfel descrisa pe scurt, are doua etape esentiale: alegerea
punctelor de start (puncte initiale), numite germeni sau seminte, si cresterea propriu-zisa
a regiunilor [68], [8].
Alegerea germenilor
Este evident ca numarul final de regiuni rezultate este egal cu numarul de germeni initiali.
In principiu, este de dorit ca fiecare obiect individual aflat n imagine sa fie marcat de cate
un germene unic. Daca n interiorul unui aceluiasi obiect se gasesc mai multi germeni,
pentru fiecare dintre ei va fi crescuta o regiune, ceea ce face ca obiectul initial sa fie mpartit
artificial prin segmentare n mai multe regiuni. Partial, acest neajuns se poate corecta
printr-o etapa ce urmeaza cresterii regiunilor, si anume fuziunea regiunilor adiacente ce
au proprietati asemanatoare. Daca n interiorul unui obiect nu este ales nici un germene,
obiectul respectiv va fi nglobat de regiunile ce cresc pornind de la germeni din vecinatatea
sa spatiala; astfel, respectivul obiect nu apare ca o regiune distincta si este pierdut,
rezultand o eroare grava de segmentare.
97

Pentru a preveni efectul unor neuniformitati de iluminare pe suprafata imaginii, aceasta


este mpartita n ferestre nesuprapuse; n fiecare astfel de fereastra se alege un numar
de germeni, al caror plasament spatial este aleator (germenii se distribuie uniform pe
suprafata ferestrelor si a imaginii). Germenii se aleg astfel ncat nivelul lor de gri sa fie
reprezentativ pentru obiectele prezente local (deci nivelul de gri al germenilor trebuie sa
corespunda unor maxime ale histogramei locale) si plasamentul lor spatial sa se faca n
interiorul regiunilor si nu pe frontiera acestora (verificarea se poate face pe baza calculului
unui operator derivativ local, ca de exemplu laplacianul (definit n 3.1 sau n (6.24)).
O verificare suplimentara ncearca sa previna o eventuala suprasegmentare (deci
mpartirea artificiala a unui acelasi obiect n mai multe regiuni), eliminand germenii plasati
n interiorul aceluiasi obiect. Verificarea se face pe baza calculului variatiei nivelelor de gri
de-a lungul drumurilor arbitrare ce unesc perechi de germeni. Daca exista macar o cale ce
uneste doi germeni de-a lungul careia nivelul de gri nu variaza semnificativ, se considera
ca cei doi germeni sunt plasati n interiorul unei zone de nivele de gri uniforme, deci n
interiorul unui aceluiasi obiect. In aceste conditii unul dintre cei doi germeni ai perechii
este eliminat, deoarece este redundant. Daca de-a lungul tuturor cailor ce unesc perechea
de germeni nivelul de gri variaza semnificativ, se considera ca cei doi germeni sunt plasati
n interiorul unor obiecte diferite (deoarece caile ce unesc germenii traverseaza regiuni de
frontiera). In practica, examinarea tuturor drumurilor (cailor) ce unesc perechi de germeni este costisitoare din punctul de vedere al timpului de calcul, de aceea se verifica doar
caile formate din segmente verticale si orizontale de lungime maxima, si eventual, calea
reprezentata de segmentul dreapta ce uneste cele doua puncte, dupa cum este exemplificat
si n figura 5.2.
4

5
3
1

6
2

Figura 5.2: Reducerea numarului de germeni: germenii 1 si 2 sunt uniti de o cale cu


segmente paralele cu orizontala si verticala de intensitate constant
a, deci sunt redundanti;
germenii 3 si 4 sunt uniti de o cale dreapt
a de aceesi intensitate, deci sunt redundanti;
orice cale ce uneste germenii 1 si 3 are o diferent
a mare de intensitate. Desi germenii 5
si 6 sunt redundanti, verificarea simplificat
a a drumurilor ce i unesc conduce la pastrarea
(fals
a) a ambilor germeni, ceea ce va duce la mpartirea obiectului n doua regiuni.

Reprezentarea numerica a conceptelor de variatie semnificativa a nivelelor de gri de-a


lungul unei cai sau n jurul unui punct necesita definirea unor praguri de comparatie,
a caror alegere se face pe baza conditiilor particulare din imagine si a experientei utilizatorului. Alternativa la acest proces complicat de plasare automata a germenilor este
plasarea manuala, ntr-un proces de segmentare interactiva.
98

Cresterea propriu-zis
a
Pornind de la germenii alesi, regiunile sunt obtinute printr-un proces de crestere aproape
simultana, nceputa de la acestia, pana cand toti pixelii imaginii sunt repartizati unei
regiuni. Cvasi-simultaneitatea cresterii poate fi realizata cu un algoritm serial, prin alocarea pixelilor ce sunt adiacenti (vecini) zonelor deja segmentate. Aceasta alocare trebuie
sa tina seama de criteriul ca regiunile crescute sa fie uniforme: nivelul de gri al pixelului
ce se adauga nu trebuie sa difere cu mai mult de un prag prestabilit fata de nivelul de gri
al germenului regiunii la care se aloca. In acelasi timp, la o singura trecere, numarul de
puncte ce se adauga unei regiuni nu poate depasi un numar prestabilit (conditie ce ncearca
sa asigure cresterea relativ uniforma si izotropa a tuturor regiunilor). Daca adaugarea de
noi pixeli se blocheaza (criteriul de uniformitate nu mai este respectat), diferenta maxim
admisa pentru nivelul de gri poate fi crescuta n etape, pana la alocarea tuturor pixelilor
imaginii.
Alegerea pragului (a diferentei maxim admise de nivele de gri) dintre pixelii ce se adauga
unei regiuni si germene este o problema ce nu are o solutie universala: diferenta maxim
admisa poate varia de la o imagine la alta, si chiar ar putea fi diferita de la o regiune la
alta a aceleiasi imagini. Rezultatul cresterii regiunilor depinde n mod esential de alegerea
corespunzatoare a acestui parametru, dupa cum arata si exemplul din figura 5.3.
Avantajele pe care le are tehnica de crestere a regiunilor sunt acelea ca nu mai este necesara nici o informatie privind continutul imaginii, regiunile crescute sunt conexe, nu exista puncte neetichetate (nealocate vreunei regiuni) si pozitia frontierelor dintre diferitele
regiuni corespunde pozitiei frontierelor percepute subiectiv n imagine. Figura 5.3 prezinta
un exemplu de segmentare a unui obiect dintr-o imagine prin cresterea regiunilor.

Figura 5.3: Exemplu de cresterea regiunilor: n imaginea initial


a (din stanga) a fost
crescut
a o regiune pornind de la germenele situat n pozitia (185,270) avand nivelul de
gri 189 (marcat n imagine cu o cruce neagr
a). Toleranta maxim admisa a pixelilor din
regiune fat
a de germene este de 10. Regiunea crescut
a (reprezentat
a n alb pe imaginea
central
a) se compune din 387 de pixeli si corespunde destul de bine (cu exceptia unor mici
puncte) cu obiectul din imagine ce s-a dorit extras. Relaxarea parametrului de tolerant
a
la 15 conduce la cresterea unei regiuni de 8536 pixeli (reprezentat
a n alb pe imaginea din
dreapta), ce depaseste frontierele obiectului cautat.

99

5.1.2

Etichetarea imaginilor binare

Imaginile binare sunt definite de doar doua valori posibile pe care le pot lua punctele
acestora: 0 si 1. In mod conventional se considera ca valoarea 1 corespunde punctelorobiect (puncte de interes) din imagine, n timp ce valoarea 0 defineste punctele fundalului
(sau fondului imaginii). Etichetarea imaginilor binare are ca obiectiv identificarea si
separarea obiectelor individuale din imagine, deci marcarea tuturor punctelor ce apartin
unui anumit obiect cu o eticheta unica, diferita de etichetele celorlalte obiecte prezente.
Fiecare obiect individual este o componenta conexa distincta.
Etichetarea secvential
a iterativ
a
Etichetarea secventiala iterativa [12] este cea mai simpla metoda de etichetare. Aceasta
metoda se compune din mai multe perechi de baleiaje succesive ale imaginii, care se ncheie
n momentul stabilirii etichetelor definitive ale obiectelor. Fiecare pereche de baleiaje se
compune dintr-un baleiaj direct (n ordinea normala de parcurgere a unei imagini, deci pe
linii, de la stanga la dreapta si de sus n jos) si un baleiaj invers (pornind din coltul din
dreapta jos al imaginii, o parcurgere pe linii de la dreapta la stanga si de jos n sus). La
fiecare trecere prin imagine (baleiaj), pentru punctele de tip obiect, se executa o aceeasi
structura algoritmica simpla: daca punctul curent are predecesori (n ordinea de baleiaj
curenta) deja etichetati, atunci punctul curent capata o eticheta identica cu eticheta
minima 1 a predecesorilor sai; daca nu are predecesori deja etichetati, atunci i se atribuie
o noua eticheta (daca baleiajul curent este primul baleiaj direct executat) sau eticheta sa
ramane neschimbata (daca baleiajul curent nu este primul baleiaj executat). Etichetele noi
se obtin prin incrementarea cu 1 a etichetei maxime existente. Prima eticheta are valoarea
1. Algoritmul se ncheie atunci cand dupa o pereche de baleiaje (direct si invers), etichetele
nu se mai modifica. Un pseudocod ce implementeaza algoritmul descris este prezentat n
tabelul 5.1.
Predecesorii unui punct sunt pixelii imaginii, din vecinatatea extinsa sau imediata a
punctului considerat, ce au fost deja parcursi (vizitati) n baleiajul curent. Astfel, pentru baleiajul direct, predecesorii punctului de coordonate (l, c), n conexitate
V4 sunt (vezi figura 5.4 a)) AntV4 (l, c) = {(l 1, c), (l, c 1)}, iar n conexitate V8
sunt AntV8 (l, c) = {(l 1, c 1), (l 1, c), (l 1, c + 1), (l, c 1)}. Pentru baleiajul invers, predecesorii punctului de coordonate (l, c), n conexitate V4 sunt AntV4 (l, c) =
{(l + 1, c), (l, c + 1)}, iar n conexitate V8 sunt (vezi figura 5.4 b)) AntV8 (l, c) =
{(l + 1, c + 1), (l + 1, c), (l + 1, c 1), (l, c + 1)}.

Numarul de iteratii necesar pentru etichetarea unei imagini este variabil si depinde de
continutul acesteia. In cazul n care toate obiectele din imagine sunt convexe, o singura pereche de baleiaje este suficienta pentru a eticheta corespunzator imaginea. Daca
1

Acesta presupune faptul ca etichetele sunt numerice, cel putin pentru executia algoritmului. Etichete
oarecari (siruri de simboluri) se pot obtine transformand, printr-un tabel de corespondenta, etichetele
numerice din imaginea deja etichetata.

100

a)

b)

Figura 5.4: Predecesorii unui pixel, n baleiaj invers, cu vecin


atate V4 b) Predecesorii unui
pixel, n baleiaj direct, cu vecin
atate V8 .
repet
a
baleiaj direct:
dac
a punctul curent este punct de obiect, atunci
dac
a punctul curent are predecesori etichetati, atunci
punctul curent ia eticheta minima a predecesorilor
altfel
dac
a acesta este primul baleiaj direct, atunci
punctul curent ia o eticheta noua
baleiaj invers:
dac
a punctul curent este punct de obiect, atunci
dac
a punctul curent are predecesori etichetati, atunci
punctul curent ia eticheta minima a predecesorilor
p
an
a c
and etichetele nu se mai modifica
Tabela 5.1: Pseudocodul corespunz
ator algoritmului de etichetare secvential
a iterativ
a.
imaginea contine obiecte concave (obiecte cu gauri, concavitati de frontiera), numarul de
treceri prin imagine pana la stabilizarea etichetelor nu mai poate fi prezis si creste odata
cu cresterea complexitatii obiectelor.
Etichetarea cu tabel de corespondent
a ntre etichete
Algoritmul anterior, pur secvential, nu necesita ca variabile de intrare sau de lucru decat
imaginea binara initiala. Aparenta simplitate este nsa umbrita de timpul de rulare dependent de continutul imaginii etichetate. Algoritmul de etichetare cu corespondenta ntre
etichete foloseste o informatie ce apare n timpul baleiajului secvential, si anume eventualele corespondente dintre etichete, detectate de algoritmul de etichetare secventiala
iterativa n momentul testarii etichetelor predecesorilor punctului curent. Eticheta punctului curent si modifica valoarea (ia valoarea etichetei unui vecin) daca punctul curent
este un punct ce face conexiunea ntre doua regiuni ale unui acelasi obiect, etichetate nsa
diferit. In mod normal, modificarea valorii unei etichete duce la reetichetarea tuturor
punctelor imaginii, dar aceasta informatie poate fi nscrisa ntr-un tabel de corespondente
a carui utilizare va reduce numarul de baleiaje necesar la numai doua (un baleiaj direct pentru initializarea etichetelor si scrierea tabelului de corespondenta si un al doilea
baleiaj direct pentru calcularea etichetelor finale din tabelul de corespondenta), indiferent
de continutul imaginii [12].
101

Fie T tabelul de corespondenta ntre etichete; la pornirea algoritmului, fiecare intrare a


tabelului este initializata cu valoarea indicelui acesteia (T (j) = j). Actualizarea tabelului
se face n doua situatii:
- daca punctul curent nu are nici un predecesor punct de obiect, atunci acesta trebuie sa
primeasca o noua eticheta, care se adauga la coada tabelului de echivalenta ca T (jmax ) =
jmax ;
- daca punctul curent are toti predecesorii etichetati si va primi eticheta minima a acestora,
atunci n tabelul de corespondenta trebuie nscris faptul ca tuturor etichetelor punctelor ce
au intervenit n calcul (predecesorii punctului curent) le va corespunde o aceeasi eticheta,
si anume eticheta de valoare minima a acestora. Daca punctul curent are predecesorii
P1 , P2 , P3 , P4 (cel mult patru predecesori, n cazul folosirii conexitatii V8 ), atunci fie m
valoarea minima a etichetelor acestora, m = min(Pi ). Varianta pseudocod a prelucrarii
este prezentata n tabelul 5.2.
pentru toti predecesorii Pi
c
at timp T (P i) 6= m execut
a
temp = T (Pi )
T (Pi ) = m
Pi = temp
Tabela 5.2: Pseudocodul corespunz
ator etichetarii cu tabel de corespondent
a ntre etichete:
actualizarea tabelului de corespondet
a ntre etichete.

Dupa primul baleiaj al imaginii, tabelul de corespondenta este actualizat astfel ncat
fiecarui indice sa i corespunda eticheta finala a obiectului; etichetele atribuite obiectelor
nu vor fi neaparat n ordine. Pseudocodul corespunzator acestei prelucrari este dat n
tabelul 5.3. Finalul algoritmului (deci dupa actualizarea tabelului de corespondente) construieste imaginea de etichete finala prin nlocuirea n imaginea intermediara de etichete
a fiecarei valori j cu T (j).
pentru j de la 1 la jmax
k=j
c
at timp T (k) 6= k execut
a
k = T (k)
T (j) = k
Tabela 5.3: Pseudocodul corespunz
ator actualizarii tabelei de corespondente ntre etichete.

5.2

Segmentarea n spatiul caracteristicilor

Algoritmii de segmentare orientata pe regiuni n spatiul caracteristicilor se bazeaza pe


reprezentarea pixelilor din imagine, din domeniul spatial initial, ntr-un spatiu alternativ,
102

definit de valorile caracteristice pixelilor respectivi. In acest spatiu al caracteristicilor se


presupune ca separarea dintre elementele ce apartin unor obiecte de tip diferit este usor
de realizat, ntrucat caracteristicile folosite pentru reprezentare sunt discriminante pentru
tipurile de obiecte cautate.

5.2.1

Segmentarea pe histogram
a

Cel mai simplu si evident parametru de caracterizare este chiar nivelul de gri al pixelilor, ce
corespunde n scena unei proprietati fizice ce este preluata de senzorul de imagine. In acest
caz, histograma imaginii reflecta distributia n scena a proprietatii fizice nregistrate. Daca
nivelul de gri (respectiv proprietatea fizica pe care acesta o reprezinta) caracterizeaza n
mod suficient obiectele din scena, histograma imaginii va prezenta o structura de moduri
dominante intervale disjuncte de nivele de gri ce apar cu probabilitate mai mare. Fiecare
asemenea mod (maxim al histogramei) va reprezenta o anumita categorie de obiecte si
vom numi clasa intervalul de nivele de gri alocat unui anume tip de obiect (vezi figura
5.5). Dupa cum am aratat si n sectiunea 2.2, histograma unei imagini cu M nivele de gri
este data de:
L1 C1
Ni
1 XX
(f (l, c) i))
h(i) =
=
LC
L C l=0 c=0

i = 0, 1, . . . , M 1,

(5.4)

unde Ni este numarul de pixeli din imagine ce au nivelul de gri i, L si C reprezinta


numarul de linii si de coloane ale imaginii, iar este funtia indicator.
h(i)

0.03
0.025
0.02
0.015
0.01
0.0050
0.0
0

50

100

150

200

250

Figura 5.5: Exemplu de imagine cu nivele de gri avand o histogram


a trimodal
a, cu moduri
bine separate: primul mod (corespunz
and tonurilor de gri celor mai ntunecate) corespunde obiectelor nchise, modul central, maxim, corespunde fundalului si obiectelor gri, iar
ultimul mod corespunde regiunilor celor mai luminoase din imagine obiectele rotunde.
Histograma conduce la segmentarea imaginii n 3 clase.
Segmentarea pe histograma (numita si praguire sau thresholding) urmareste determinarea
unor nivele de gri ce separa modurile histogramei, numite praguri de segmentare. Tuturor
punctelor din imagine al caror nivel de gri corespunde aceluiasi mod (deci care au un nivel
de gri situat n intervalul dintre doua praguri succesive), li se asociaza o eticheta comuna,
a carei semnificatie este de apartenenta a punctului la obiectul respectiv. Segmentarea
103

imaginii originale f dupa setul de praguri {Tk } produce imaginea etichetata g, descrisa
de:
g(l, c) = Ek

daca Tk f (l, c) < Tk+1

(5.5)

unde T0 = 0 , TK = M si k = 0, 1, ..., K 1. Pragurile Tk pot fi alese manual, prin


inspectia histogramei, n minimele locale ale acesteia.
Cazul cel mai simplu de segmentare pe histograma este acela n care histograma imaginii
este bimodala, corespunzand unei imagini n care regasim obiecte de interes si fundal
(precum imaginea prezentata n figura 5.6). In acest caz, segmentarea revine la mpartirea
pixelilor imaginii n obiecte/fundal, operatie ce necesita determinarea unui singur nivel
de gri de separatie T . Acest prag de segmentare poate fi ales pe minimul histogramei ce
separa modurile acesteia (daca separatia este evidenta). Astfel, pornind de la imaginea
initiala f , imaginea etichetata g va fi data de:

g(l, c) =

E0 daca 0 f (l, c) < T


E1 daca T f (l, c) < M

(5.6)

Imaginea etichetata g rezultatul transformarii va fi descrisa de cele doua etichete:


eticheta E0 pentru punctele al caror nivel de gri este mai mic decat pragul T si eticheta
E1 pentru punctele al caror nivel de gri este mai mare decat pragul T . Etichetele E0 si
E1 pot fi valori numerice (0 si 1, sau 0 si 255) sau pot fi siruri de simboluri. Acest tip de
segmentare se numeste binarizare, ntrucat imaginea rezultat este caracterizata de numai
doua valori.
h(i)
0.015

0.01

0.005

0
0

50

100

150

200

250

Figura 5.6: Exemplu de imagine cu nivele de gri avand o histogram


a bimodal
a, cu moduri
bine separate: primul mod (corespunz
and tonurilor de gri celor mai ntunecate) corespunde
obiectelor nchise iar al doilea mod corespunde fundalului; nici unul dinte moduri nu este
normal (gaussian).

Una din cerintele de baza n majoritatea aplicatiilor de analiza a imaginilor este ca aceste
aplicatii sa necesite o interventie umana minima, deci sa lucreze n mod automat. Se
pune, deci, problema alegerii automate a pragului (sau pragurilor) de segmentare Tk , pe
baza analizei automate a histogramei imaginii si a eventualelor cunostinte a priori asupra
continutului imaginii.
104

Metoda Bhattacharya
Metoda Bhattacharya este o metoda automata de segmentare pe histograma, ce nu necesita precizarea numarului de clase de obiecte din imagine (si implicit a numarului de
praguri de segmentare cautate), ce se bazeaza pe descompunerea histogramei n moduri
individuale normale (gaussiene) [12], [66]. Se presupune deci ca histograma imaginii poate
fi exprimata ca o mixtura (suma ponderata) de functii de densitate de probabilitate de tip
normal, fiecare dintre acestea corespunzand unui mod al histogramei. Se considera deci
ca histograma h a imaginii este compusa prin superpozitia aditiva a K moduri gaussiene
N (k , k ), adica:
h(i) =

K
X

wk N (k , k )(i), i = 0, ..., M 1, cu

k=1

K
X

wk = 1.

(5.7)

k=1

Modelarea modurilor histogramei imaginilor prin distributii normale este o presupunere ce


se ntalneste n multe tehnici de prelucrare si analiza si pare a fi justificata de considerarea
extrem de simplificata a imaginii ca provenind dintr-o imagine ideala, n care fiecare tip
de obiect este reprezentat de un unic nivel de gri, peste care s-a suprapus un zgomot
alb, aditiv, gaussian. In acest fel, mediile modurilor din histograma corespund nivelelor
de gri ce caracterizeaza obiectele scenei, iar variantele acestor moduri sunt determinate
de zgomotul suprapus imaginii (care nu este obligatoriu sa afecteze n acelasi mod toate
nivelele de gri).
Fundamentul metodei Bhattacharya [5] este determinarea parametrilor caracteristici (medie, varianta) ai unei distributii normale. Pentru distributia normala N (k , k ) derivata
logaritmului este:

d
d
1
(x k )2
x
k
ln N (k , k )(x) =
ln p
exp
= 2 + 2 = mk x + nk . (5.8)
2
2
dx
dx
2k
k k
2k
Prin examinarea expresiei (5.8) se observa ca derivata logaritmului distributiei normale
este o dreapta de panta negativa, din ai carei parametri se pot deduce media si varianta
distributiei prin (5.9):
s
1
nk
k =
si k =
.
(5.9)
|mk |
|mk |
Daca se presupune ca distributiile normale individuale ce compun histograma sunt suficient de bine separate pentru ca sa existe, pentru fiecare componenta, o regiune suficient
de mare n care influenta tuturor celorlalte componente sa fie neglijabila, acelasi principiu
de identificare poate fi aplicat pentru ntreaga histograma [5]. Pentru aplicarea metodei
Bhattacharya la segmentarea pe histograma a imaginilor, se va studia comportamentul
derivatei logaritmului histogramei, adica a functiei discriminant z(i):
z(i) = ln

h(i)
, i = 1, ..., M 1.
h(i 1)

(5.10)

Pentru functia astfel construita, se determina intervalele pe care acesta este descrescatoare
(vezi Figura 5.7); limitele superioare ale acestor intervale sunt pragurile Tk de segmentare
105

h(i)

hG(i)

0.03

0.03

0.025

0.025

0.02

0.02

0.015

0.015

0.01

0.01

0.0050

0.0050

0.0
0

50

100

150

200

250

0.0
0

50

100

a)

200

250

150

200

250

b)

z(i)

zG(i)

0.4

0.4

0.3

0.3

0.2

0.2

0.1

0.1

0.1

0.1

0.2

0.2

0.3

0.3

0.4

0.4

0.5

0.5

0.6

0.6

150

50

100

150

200

250

c)

50

100

d)

Figura 5.7: Aplicarea metodei Bhattacharyya pentru o histogram


a trimodal
a: pragurile
de segmentare Tk sunt limitele superioare ale intervalelor pe care functia discriminant
(derivata logaritmului histogramei) este descresc
atoare. a) Histogram
a trimodal
a (a imaginii din figura 5.5) si c) functia discriminant z(i) asociat
a. b) Aproximarea histogramei
din a) printr-o mixtura de moduri normale (h = 0.23N (129, 15) + 0.68N (178, 9) +
0.09N (213, 5)) si d) functia discriminant asociat
a. Se observa ca identificarea pragurilor
de segmentare (155, 202) prin functia indicator este simpla n cazul histogramei ideale b)
si mai dificila n cazul histogramei reale a).
pe histograma. Pe fiecare dintre aceste intervale se poate face o aproximare liniara a
punctelor si pe baza parametrilor dedusi pentru dreapta de aproximare se pot calcula,
conform (5.9), parametrii statistici locali. Principalele inconveniente ale metodei deriva
din faptul ca presupunerea alcatuirii histogramei imaginii numai din moduri gaussiene nu
este ntotdeauna adevarata. Ca rezultat, metoda Bhattacharrya va identifica un numar
mai mare de praguri decat este necesar, producand fenomenul de suprasegmentare. Acest
comportament poate fi nsa reconsiderat din punctul de vedere al cuantizarii nivelelor
de gri. Putem considera cuantizarea (aproximarea) valorilor cuprinse n fiecare interval
corespunzator unui mod gaussian identificat prin media acestuia. In acest caz, eroarea
de cuantizare este cu atat mai mica cu cat sunt mai multe moduri gaussiene n mixtura
ce aproximeaza histograma imaginii. Controlul acestei erori de cuantizare (si implicit al
fenomenului de suprasegmentare)poate fi realizat prin impunerea unei lungimi minime a
intervalelor de descrestere a functiei discriminant z (5.10) [66]. Un exemplu de cuantizare
a nivelelor de gri realizata dupa aceasta metoda este prezentat n figura 5.9.
106

h(i)
0.015

0.01

0.005

0
0

50

100

a)

150

200

250

200

250

b)
z(i)

0.2

0.15
0.1
0.05
0
0.05
0.1
0.15
0.2
0

c)

50

100

150

d)

Figura 5.8: Aplicarea metodei Bhattacharyya pentru segmentarea unei imagini cu histogram
a bimodal
a: a) imaginea originala; b) histograma imaginii de segmentat (histograma este mixtura h = 0.25N (100, 25) + 0.75N (180, 25)); c) imaginea binarizata
folosind pragul T = 132 obtinut prin aplicarea metodei Bhattacharya; d) functia discriminant z.
Metoda Otsu
Metoda Otsu de determinare automata a pragurilor de segmentare este legata de utilizarea principiului de cuantizare optimala a nivelelor de gri, cuantizare ce va asigura (ca
si n cazul metodei Bhattacharya, prezentate n paragraful anterior) determinarea unor
intervale de nivele de gri n care modurile histogramei imaginii sa fie nguste si care, n
consecinta, sa induca o variabilitate mica a valorilor initiale fata de media fiecarui mod
determinat (medie ce este folosita ca valoare de cuantizare). Pragurile de segmentare
determinate de metoda Otsu sunt chiar capetele intervalelor de cuantizare optimala a
nivelelor de gri din imagine cu un numar de cuante egal cu numarul de clase de segmentare.
Dupa cum se stie (se poate revedea de exemplu capitolul 11 din [11]), cuantizarea unei
multimi de valori implica nlocuirea valorilor respective cu cea mai apropiata valoare dintro multime finita de valori (multimea valorilor cuantizate). Operatia de cuantizare este
o aproximare a valorilor initiale prin valorile cuantizate, mai exact, aproximarea tuturor
valorilor cuprinse ntr-un interval (xi , xi+1 ] cu o valoare cuantizata yi . In cuantizarea
107

h(i)

h(i)

0.03

h(i)
0.12

0.30

0.10

0.25

0.08

0.20

0.06

0.15

0.04

0.10

0.02

0.05

0.025
0.02
0.015
0.01
0.0050
0.0
0

50

100

150

200

250

0.0
0

50

100

150

200

250

0.0
0

50

100

150

200

250

Figura 5.9: Exemplu de cuantizare a nivelelor de gri prin metoda Bhattacharya: pe randul
de sus sunt prezentate imaginea originala cu 212 nivele de gri diferite (stanga) si variantele cuantizate cu 39 de nivele de gri diferite (mijloc, RSZ = 41, 18dB) si respectiv
10 nivele de gri diferite (dreapta, RSZ = 23, 11dB); pe randul de jos sunt prezen cazul re-cuantiz
tate histogramele corespunz
atoare fiec
arei imagini. In
arii uniforme a
nivelelor de gri la 39, respectiv 10, raportul semnal zgomot al imaginiilor rezultate ar
fi RSZ = 33, 26dB, respectiv RSZ = 21, 25dB; re-cuantizarea bazat
a pe metoda Bhattacharya este deci mult mai eficienta.

optimala Lloyd-Max (prezentata pe larg n [11], [33]) valorile cuantizate si intervalele de


cuantizare sunt determinate astfel ncat media patratica a erorii induse de aproximarea
valorilor initiale cu cele cuantizate sa fie minima pentru un numar de nivele de cuantizare
dat.
Se poate demonstra ca valorile cuantizate care minimizeaza eroarea patratica medie de
aproximare sunt mediile statistice ale valorilor din intervalul de cuantizare respectiv.
Altfel spus, cuantizarea optimala nseamna alegerea intervalelor de cuantizare astfel ncat
valorile din fiecare interval sa fie cat mai apropiate de media lor, adica varianta valorilor
din fiecare interval de cuantizare sa fie minima. Eroarea de cuantizare va fi atunci varianta
medie corespunzatoare tuturor intervalelor de cuantizare alese. Intr-adevar, putem scrie
eroarea patratica medie de cuantizare a valorilor realizarilor particulare ale unei variabile
108

aleatoare , distribuita dupa functia de densitate de probabilitate w ca:


=

x
K Zi+1
X

x |{xi xi+1 }

i=1 x
i
x
K Zi+1
X

w (z)dz

i=1 x
i

{z

xi+1
Z

w (x)dx =

x |{xi xi+1 }

w (x)
xR
i+1

xi
xi

P (xi xi+1 )

w (z)dz
{z
}

(5.11)

w|{xi xi+1 }

{z

dx.

2
|{x

i xi+1 }

K
X

2
=
P (xi xi+1 )|{x
i xi+1 }

i=1

K
X

Pi i2 .

i=1

Pentru simplitate, am folosit notatiile:


not

(5.12)

not

(5.13)

Pi = P (xi xi+1 )
i = |{xi xi+1 }

In cazul binarizarii, problema (care fusese initial formulata doar ca alegere a pragului de
segmentare T care separa modurile histogramei ce corespund celor doua tipuri de obiecte
din imagine) poate fi reformulata n sensul cuantizarii: dorim cuantizarea optimala a valorilor pixelilor imaginii cu K = 2 nivele, ceea ce revine la determinarea pragului T astfel
ncat prin mpartirea gamei de nivele de gri disponibile [0, M 1] n doua subintervale,
[0, T ] si [T, M 1], si prin aproximarea fiecarui pixel dintr-un subinterval cu media acestuia, eroarea patratica medie sa fie minima. Astfel, conform (5.11), pragul T cu care
facem binarizarea trebuie sa minimizeze expresia:
= P0 02 + P1 12 ,

(5.14)

unde P0 si P1 sunt probabilitatile ca nivelul de gri al unui pixel sa apartina intervalelor


[0, T 1], respectiv [T, M 1]:
P0 =
P1 =

T 1
X

h(i),

i=0
M
1
X

(5.15a)

h(i) = 1 P0 ,

(5.15b)

i=T

iar 02 si 12 sunt variantele nivelelor de gri corespunzatoare acelorasi intervale:


T 1
2
TP
1
P
2
i h(i)
ih(i)
i=0
i=0
2

,
0 = T 1
T 1

P
P
h(i)
h(i)
i=0
i=0
2

M
1
M
1
P 2
P
i h(i)
ih(i)

i=T
i=T
2
1 = M 1
M 1
.
P

P
h(i)
h(i)
i=T

i=T

109

(5.16a)

(5.16b)

Dupa cum s-a aratat [11], pragul cautat T este media aritmetica a mediilor statistice ale
valorilor de cuantizat din cele doua intervale de cuantizare alese (notate cu 0 si 1 );
tinand seama ca nivele de gri din imagine sunt (deja) valori discrete, expresia pragului T
se poate scrie ca:

TP

M
1
1
P

ih(i)
ih(i)

1
i=0

i=T
T = T 1
+ M
.
1
P

2 P

h(i)
h(i)
i=0

i=T
| {z } | {z }
0

(5.17)

Aceasta ecuatie nu se poate rezolva analitic. Putem gasi totusi valoarea T cautata, care
minimizeaza pe (5.14) calculand valorile unei forme modificate ale functiei (5.14) pentru
toate valorile posibile ale lui T {0, 1, . . . , M 1}. Pentru aceasta, (5.14) se poate rescrie
ca:
M
1
X

=
i2 h(i) P0 20 + P1 21 .
(5.18)
i=0

Minimizarea lui (5.14) revine la maximizarea lui P0 20 + P1 21 . O simplificare a calculului


se poate obtine prin considerarea relatiilor iterative prin care mediile si probabilitatile de
aparitie pe intervale, calculate pentru pragul T + 1 depind de aceleasi marimi calculate
pentru pragul imediat anterior, T . De exemplu avem:
P0 (T + 1) = P0 (T ) + h(T + 1)
P0 (T )0 (T ) + (T + 1)h(T + 1)
0 (T + 1) =
.
P0 (T + 1)

(5.19)
(5.20)

Relatii analoage exista pentru marimile P1 si 1 .


O formulare echivalenta a criteriului de determinare a pragurilor de segmentare se
regaseste si n metoda Fisher [12], n care varianta medie corespunzatoare intervalelor
de cuantizare este adusa sub forma:
=

M
1
X

i2 h(i) P0 P1 (1 0 )2 .

(5.21)

i=0

Segmentarea cu prag optim


Binarizarea unei imagini cu nivele de gri poate fi interpretata si ca o problema de decizie
trebuie hotarata clasa (tipul de obiect) careia i apartine fiecare punct din imagine.
Decizia se reduce, desigur, la calculul pragului de segmentare T , cu care se compara
nivelele de gri ale pixelilor din imagine, astfel ncat clasificarea pixelilor n clase sa fie cat
mai corecta din punctul de vedere al unui criteriu de eroare. Pragul astfel determinat
va fi optim n sensul criteriului de eroare folosit, segmentarea numindu-se segmentare cu
prag optim.
In cazul binarizarii trebuie determinat deci un unic prag T ce separa modurile din histograma ce corespund celor doua obiecte din imagine: obiecte O0 , caracterizate de nivele
de gri mai mici decat pragul T , si obiecte O1 , ale caror nivele de gri sunt mai mari decat
110

pragul T . Binarizarea se poate formula ntr-un cadru specific proceselor de decizie, considerand ca pentru fiecare pixel al imaginii se ia decizia D0 (respectiv se decide ca pixelul
apartine unui obiect O0 ) daca nivelul sau de gri este mai mic decat pragul T , sau decizia
D1 (pixelul apartine unui obiect O1 ) daca nivelul de gri al pixelului este mai mare decat
pragul T . Dupa cum se poate remarca, observatia pe baza careia luam decizia este un
scalar, si anume nivelul de gri al pixelului respectiv.
Criteriul ce se urmareste optimizat este minimizarea probabilitatii de clasificare eronata
a punctelor din imagine. Presupunand cunoscute functiile de densitate de probabilitate a
nivelelor de gri ce descriu fiecare dintre cele doua tipuri de componente din imagine, p0 (i)
si p1 (i) si probabilitatile lor de aparitie n imagine, P0 si P1 , putem exprima probabilitatea
de clasificare eronata ca:
Z+
ZT
(T ) = P0 P (D1 |O0 ) + P1 P (D0 |O1 ) = P0
p0 (x)dx + P1
p1 (x)dx.
(5.22)

In mod evident se presupune ca cele doua tipuri de obiecte ocupa complet imaginea
(P0 + P1 = 1). Histograma imaginii (adica distributia nivelelor de gri la nivelul ntregii
imagini) este evident mixtura distributiilor individuale ale celor doua tipuri de obiecte si
se poate scrie ca:
h(i) = P0 p0 (i) + P1 p1 (i),

i = 0, 1, . . . , M 1.

(5.23)

Figura 5.10 prezinta o ilustrare grafica a erorii.


0.015

0.01

h(i)

p1(i)

0.005

p0(i)

0
0

50

a)

100

150

200

250

b)

Figura 5.10: a) Imagine bimodal


a si b) reprezentarea erorii de clasificare corespunz
atoare
separ
arii celor doua moduri (gaussiene) prin pragul T prin aria de subgrafic hasurat
a.
a pe grafic cu linie punctata.
Histograma imaginii corespunde ecuatiei (5.23) si este figurat
Pragul optim va minimiza eroarea de segmentare a pixelilor. Minimizarea erorii (5.22)
conduce la rezolvarea ecuatiei n necunoscuta T :
(T )
= 0,
T
111

(5.24)

ceea ce conduce la relatia:


P0 p0 (T ) + P1 p1 (T ) = 0,

(5.25)

p1 (T )
P0
=
.
p0 (T )
P1

(5.26)

ce poate fi rescrisa ca:

Forma (5.26) se poate compara cu forma clasica finala a criteriului de decizie Bayes (se
poate urmari de exemplu prezentarea din [11]); constatam astfel ca ne aflam ntr-un cadru
de alegere simetrica a costurilor de decizie (ambele erori de decizie au acelasi cost, ambele
decizii corecte au acelasi cost), astfel ncat pragul testului Bayes este dat de raportul
probabilitatilor a priori de aparitie a celor doua tipuri de obiecte.
Presupunerea ca distributia nivelelor de gri a diferitelor tipuri de obiecte este de tip normal
(gaussian) este relativ des ntalnita. In aceste conditii, distributiile p0 (x) si p1 (x) sunt
distributii normale, N (0 , 0 ) si N (1 , 1 ), iar ecuatia (5.26) devine:

(T 1 )2
1

exp

2
21
P
1 2

= 0
(5.27)
2
1
P1

exp (T 20 )
20

0 2

Prin logaritmare, se obtine o ecuatie de gradul doi prin a carei rezolvare se determina
pragul necunoscut T :

1
0 1
0 21
1
P0 1
2
T
2 2T
2 +
2 2 ln
= 0.
(5.28)
2
2
2
0
1
0 1
0
1
P1 0
Pentru cazul particular 0 = 1 = , ecuatia (5.28) devine o ecuatie de gradul unu, a
carei solutie este:
0 + 1
2
P0
T =

ln
(5.29)
2
0 1 P 1
In cazul imaginii reprezentate n figura 5.10 a), parametrii statistici sunt 0 = 100, 1 =
180, 0 = 1 = = 25, P0 = 0.25; pragul optim de segmentare, calculat conform (5.29)
este T = 131. Rezultatul segmentarii cu prag optim este reprezentat n figura 5.11.
Metoda de segmentare cu prag optim se poate extinde si pentru imagini ce contin mai
mult de doua tipuri de obiecte; n acest caz este nsa necesara o presupunere suplimentara
de localizare a modurilor, astfel ncat sa se poata considera ca influenta fiecarui mod este
limitata la intervale nesuprapuse de nivele de gri si deci eroarea de clasificare a pixelilor
imaginii se va referi doar la perechi de moduri vecine.
Segmentarea pe histograma ponderat
a
Metodele de segmentare pe histograma pot fi rafinate prin luarea n considerare la determinarea pragurilor de segmentare nu numai a proprietatilor globale (ale ntregii imagini),
asa cum este histograma (5.4), ci si a unor marimi caracteristice fiecarui pixel, determinate
de vecinatatea acestuia. Altfel spus, pragurile de segmentare, care n mod clasic se aleg
112

a)

b)

Figura 5.11: a) Imagine bimodal


a cu nivele de gri si b) rezultatul binarizarii acesteia prin
segmentare cu prag optim (T = 131). Eroarea de segmentare este, n cazul segment
arii cu
prag optim prezentate, de 5.5%; n cazul folosirii unui prag T = 140 (mijlocul intervalului dintre mediile modurilor histogramei), eroarea de segmentare este de 6.29%; n cazul
folosirii pragului T = 132 determinat prin metoda Bhattacharya, eroarea de segmentare
este de 5.57%.
pe minimele histogramei, se vor alege n punctele de extrem ale unei histograme modificate, ce ncorporeaza informatia rezultata din structura de vecinatate a pixelilor. Aceasta
tehnica este numita segmentare pe histograma ponderata n [68] sau segmentare cu prag
selectiv n [33]. Construirea histogramei ponderate are ca scop accentuarea minimelor
din histograma clasica, pentru o alegere mai usoara a pragurilor de segmentare (valorile
de separatie inter-mod). Histograma ponderata este construita prin definirea unei functii
de ponderare w(), care transforma o anumita proprietate locala p(l, c), conform relatiei
(5.30):
L1 C1
1 XX
w (p(l, c)) (i f (l, c)), i = 0, 1, . . . , M 1.
hw (i) =
L C l=0 c=0

(5.30)

In aceasta histograma ponderata, spre deosebire de histograma clasica (5.4), contributia


pixelilor nu mai este unitara, ci dependenta de proprietatile vecinatatii acestora. Proprietatea locala cea mai des utilizata este aceea de neuniformitate (de variatie a nivelelor de
gri n vecinatatea fiecarui pixel), masurata prin laplacianul local (l, c). Pixelii care se
afla n zonele de tranzitie (frontierele obiectelor din imagine) au o vecinatate neuniforma,
si deci un laplacian semnificativ diferit de zero, iar pixelii care se afla n interiorul unor
regiuni uniforme (interiorul obiectelor) au o vecinatate mai uniforma si deci un laplacian
apropiat de valoarea nula. Pentru a accentua pe histograma zonele de separatie inter-mod
este necesar ca pixelii ce se afla n interiorul unor regiuni uniforme (obiecte) sa aiba o
contributie mai importanta decat contributia pixelilor aflati n zonele de frontiera. In
aceste conditii, functia de ponderare trebuie sa fie invers proportionala cu laplacianul
local; forma generala a functiei de ponderare este data de relatia (5.31):
w (p(l, c)) =

1
1 + |(l, c)|k

(5.31)

Exponentul k reprezinta un factor suplimentar de reglaj, permitand obtinerea de diferite


grade de reliefare a minimelor histogramei (cu cat k este mai mare, cu atat minimele
113

sunt mai bine puse n evidenta). Laplacianul local se poate evalua cu una dintre mastile
(nucleele) de convolutie clasice, precum cele din (6.24).
In [68] se propune un mod de segmentare alternativa, folosind maximele unei histograme
ponderate. In acest caz este necesar ca functia de ponderare w() sa transforme minimele
histogramei normale n maxime ale histogramei ponderate. Daca se foloseste n continuare laplacianul ca proprietate locala si o functie de ponderare proportionala cu acesta,
de exemplu (5.32), histograma ponderata va lua n calcul doar pixelii din imagine a caror
vecinatate prezinta variatii puternice ale nivelelor de gri, n timp ce pixelii aflati n interiorul unor regiuni omogene nu vor avea nici o contributie. Histograma ponderata astfel
construita va prezenta maxime pe nivelele de gri ce corespund zonelor de tranzitie ntre
modurile histogramei normale.
w (p(l, c)) = |(l, c)|

(5.32)

O exemplificare a efectelor utilizarii acestor ponderari este prezentata n figura 5.12.


Desigur, o alta modalitate de obtinere a unei tehnici locale de segmentare este mpartirea
imaginii n zone (ce se pot suprapune sau nu) n interiorul carora se determina praguri
de segmentare prin folosirea unei histograme locale (si nu a histogramei ntregii imagini).
Pragurile astfel determinate sunt folosite apoi la etichetarea punctelor din zona respectiva.
La limita, daca pragurile de segmentare astfel determinate sunt folosite pentru etichetarea
unui unic pixel, segmentarea capata un caracter dinamic (adaptiv).
Segmentarea pe histograma cumulativ
a
Dupa cum am aratat si n sectiunea 2.2, histograma cumulativa este functia de repartitie
a variabilei aleatoare ce reprezinta nivelul de gri al pixelilor imaginii, si reprezinta deci
probabilitatea ca un pixel din imagine sa aiba nivelul de gri mai mic decat un prag fixat:
H(j) =

j
X

h(i), j = 0, 1, . . . , M 1.

(5.33)

i=1

Fiind o functie de repartitie, histograma cumulativa este o functie crescatoare si H(M


1) = 1. Exemplul clasic de folosire a tehnicii de segmentare utilizand histograma cumulativa este acela de binarizare a unei imagini ce contine obiecte de interes si fundal. In
general se considera ca obiectele de interes sunt caracterizate de un nivel de gri mai mic
ca al fundalului, si ca obiectele ocupa un procent P , cunoscut, din suprafata imaginii
(masurata prin numarul de pixeli) (figura 5.13 prezinta un astfel de exemplu). In aceste
conditii, pragul de segmentare T se va alege astfel ncat:
H(T )=P.
e

(5.34)

In cazul n care obiectele de interes au un nivel de gri mai mare decat nivelul de gri al
fundalului (si deci sunt definite de modul situat la capatul superior al histogramei), relatia
de definitie a pragului (5.34) se va modifica n:
H(T )=1
e P
114

(5.35)

0.03

hw1(i)

0.025

0.02

0.015

0.01

0.005

0
0

50

100

a)

150

200

250

150

200

250

c)

h(i)
0.015

0.01

hw2(i)

0.009
0.008
0.007

0.01

0.006
0.005
0.004
0.005

0.003
0.002
0.001

0
0

50

100

150

200

250

0
0

50

100

b)

d)

Figura 5.12: Marirea separatiei dintre moduri prin folosirea histogramelor ponderate: a)
imagine originala; b) histograma imaginii din a); c) histograma ponderat
a cu inversul
a ponlaplacianului (adancirea separatiei dintre moduri), conform (5.31); d) histogram
derat
a cu patratul laplacianului (maxime pe separatiile dintre moduri), conform (5.32).
Histograma originala este h = 0.25N (100, 25) + 0.75N (180, 25). Pe ambele histograme
ponderate pragul de segmentare T =140
e
poate fi determinat foarte usor.
Metoda de segmentare pe histograma cumulativa se poate extinde si n cazul segmentarii
unor imagini ce contin mai multe tipuri de obiecte, cu conditia cunoasterii probabilitatilor
de aparitie a pixelilor corespunzatori fiecarui tip de obiecte. Trebuie remarcat ca metoda
nu necesita cunoasterea tipului de distributie ce caracterizeaza nivelul de gri al fiecarui
tip de obiect.

5.2.2

Segmentarea prin tehnici de clustering

Tehnicile de segmentare pe histograma prezentate n sectiunea anterioara se bazeaza implicit pe presupunerea ca nivelul de gri (valoarea pixelului) este o caracteristica suficient
de discriminativa pentru separarea tipurilor de obiecte din imagine. Desi adevarata n cele
mai multe cazuri, aceasta presupunere devine n mod evident eronata pentru o imagine
de tipul celei din figura 5.12 a), n care atat obiectul, cat si fundalul, contin pixeli avand
115

h(i)
0.015

H(i)

0.75

0.01

0.5

0.005

P=
0.25

0
0

50

100

150

200

250

0
0

50

100

150

200

250

Figura 5.13: Histograma cumulativa H(i) este functia de repartitie asociat


a functiei de
densitate de probabilitate a variabilei aleatoare nivel de gri i (histograma imaginii), h(i).
Pentru extragerea obiectelor ntunecate din imagine prin segmentare pe histograma cumulativ
a trebuie impus (cunoscut) procentul P (pentru imaginea corespunz
atare exemplului,
P = 0.25) din suprafata imaginii ocupat de obiectele de interes. Pragul de segmentare
c
autat T se obtine pe baza graficului histogramei cumulative astfel nc
at sa fie ndeplinit
a
relatia (5.34).
acelasi nivel de gri (situatie ce se poate observa si din suprapunerea evidenta a celor doua
moduri ce apar n histograma imaginii, prezentata n figura 5.12 b)). Rezolvarea unor
asemenea situatii se poate face prin luarea n calcul, pentru fiecare pixel, a unor caracteristici suplimentare. In acest caz nsa, spatiul caracteristicilor devine multi-dimensional si
problema de segmentare cu prag (pe histograma) trebuie reformulata. Spre exemplu, n
figura 5.14 se prezinta cazul n care fiecare pixel al imaginii este caracterizat de nivelul de
gri si nivelul de gri mediu din vecinatate, spatiul caracteristicilor fiind deci bidimensional.
Un spatiu al caracteristicilor cel putin tridimensional apare n mod natural n cazul considerarii imaginilor color, n care fiecare pixel este descris de trei valori (componentele de
culoare).
Tehnicile de clustering (sau de auto-organizare a datelor multidimensionale) sunt metode
algoritmice prin care se atribuie fiecarui vector de date din multimea considerata o eticheta
de apartenenta la una dintre clasele ce rezulta prin gruparea vectorilor similari. Toti
vectorii de date ce au valori asemanatoare vor capata o aceeasi eticheta de apartenenta,
formand un grup. Rezulta astfel o partitionarea completa a setului de vectori de trasaturi
asociati pixelilor imaginii, ceea ce induce partitionarea completa a suportului spatial al
imaginii, si deci segmentarea acesteia (respectand conditiile (5.1a) si (5.1b)). Asemanarea
cu procesul de segmentare orientata pe regiuni este evidenta. Suplimentar, pentru fiecare
grup, este posibila determinarea unui reprezentant tipic care sa aproximeze vectorii de date
din grupul respectiv, aceasta abordare fiind fundamentul cuantizarii vectoriale, tehnica
discutata n cadrul compresiei imaginilor, n sectiunea 10.2.4.

Clustering net
Metodele de clustering iterativ distribuie obiectele (vectorii) ntr-un numar predefinit de
clase, repetand testarea unor conditii pentru fiecare obiect al multimii; n functie de
116

250

200

150

100

50

0
0

50

100

150

a)

b)

c)

d)

e)

f)

200

250

Figura 5.14: Construirea unui spatiu al caracteristicilor multi-dimensional: a) imagine


original
a; b) imagine obtinut
a ca urmare a unei filtrari de mediere local
a; c) reprezentarea
pixelilor din imagine n spatiul caracteristicilor (nivel de gri, nivel de gri mediu) se
observ
a ca n acest spatiu bidimensional al caracteristicilor apare o evidenta separare
a doua grupuri de pixeli, ce corespund obiectului de interes si respectiv fundalului; d)
rezultatul binarizarii imaginii originale din a) n spatiul caracteristicilor din c) cu un
algoritm de clustering ISODATA; e) imaginea gradului fuzzy de apartenent
a a pixelilor la
clasa fundal; f ) rezultatul binarizarii imaginii originale din a) n spatiul caracteristicilor
din c) cu un algoritm de clustering Fuzzy ISODATA (FCM), cu grade de apartenent
a
defuzificate pe baza regulii de apartenent
a maxima (eroarea de segmentare este de 1, 83%).

ndeplinirea sau nu a respectivelor conditii, partitia existenta la un moment dat este


declarata corespunzatoare sau, n urma modificarii alocarii unor unitati, procedeul de
verificare se reia. Se poate considera ca algoritmii iterativi fac mai multe treceri prin setul
de obiecte de partitionat, pana la obtinerea stabilizarii (convergentei) valorii criteriului
ce caracterizeaza calitatea partitiei.
Calitatea partitiei (a clasificarii) este masurata de suma variantelor claselor j (adica
suma distantelor de la fiecare vector la centrul clasei n care apartine, ceea ce poate fi
interpretat si ca o eroare de aproximare a vectorilor din clase prin centrul respectivei
clase). Deci functia criteriu ce trebuie minimizata este

J=

C
X
j=1

Jj =

C X
X

kxi j k =

j=1 xi j

C X
N
X
j=1 i=1

117

uij kxi j k2

(5.36)

In urma minimizarii lui J trebuie determinate valorile j (centrele claselor) si valorile


binare uij , coeficientii de apartenenta ai vectorilor i la clasele j, definiti de:

1, daca xi j
(5.37)
uij =
0, daca xi
/ j
Determinarea centrelor claselor se poate face simplu, prin anularea derivatei functiei criteriu J n raport cu j :
N
X
J
=2
uij (j xi ) = 0
(5.38)
j
i=1
de unde rezulta ca centrele claselor sunt mediile vectorilor ce apartin acestora:
N
P

j =

uij xi

i=1
N
P

(5.39)
uij

i=1

Determinarea coeficientilor de apartenenta uij este nsa o problema de optimizare combinatoriala, care nu poate fi rezolvata analitic. Pentru rezolvarea acestei probleme sunt
necesare metode iterative. Metoda imediata urmareste sa determine, pentru fiecare vector al setului, daca acesta poate fi mutat dintr-o clasa n alta, astfel ca suma variantelor
claselor sa scada. Dupa fiecare asemenea mutare, este necesara actualizarea mediilor
claselor ntre care s-a facut schimbul. Iteratiile se repeta pana cand nici un vector nu mai
poate fi mutat. Algoritmul este descris de urmatoarele etape:
1. se alege o partitie aleatoare a setului de obiecte (vectori)
2. pentru fiecare vector xi din set, daca nu este unic n clasa sa j , se calculeaza costul
mutarii n alta clasa, k , k 6= j; acest cost este
nk
nj
ck =
kxi k k2
kxi j k2
(5.40)
nk + 1
nj 1
3. vectorul xi este mutat n clasa pentru care costul ck este minim; se recalculeaza
mediile claselor implicate n schimbare (j si k )
4. daca cel putin un vector a fost mutat ntre doua clase, algoritmul se reia de la pasul
2.
Principalul dezavantaj al acestei abordari este faptul ca mediile claselor sunt recalculate
dupa fiecare schimbare ce implica fiecare vector al multimii considerate, ceea ce are ca
efect un volum mare de calcule. O simplificare a metodei provine din observatia intuitiva
ca este normal ca un obiect sa fie alocat (sa apartina) clasei de care este cel mai apropiat
(n sensul distantei la media acesteia). Folosind acesta observatie, realocarea se poate
face pentru toate obiectele considerate fara a fi nevoie de recalcularea mediilor claselor
pentru fiecare obiect; recalcularea mediilor se va face dupa fiecare parcurgere completa a
multimii de obiecte de partitionat. Acest algoritm este numit Basic ISODATA (de la
Iterative Self Organizing Data Analysis Technique - tehnica iterativa cu auto-organizare
de analiza a datelor, aparut prin 1965), cunoscut si sub numele de k-means sau C-means
cele k (sau C) medii). Algoritmul este descris de urmatoarele etape:
118

1. se alege o partitie aleatoare a setului de obiecte (vectori)


2. pentru fiecare vector xi din set, se caluleaza distantele sale la mediile tuturor claselor,
dk = kxi k k2

(5.41)

3. n iteratia urmatoare, vectorul xi va fi mutat n clasa la care distanta dk este minima


4. dupa parcurgerea completa a setului de vectori, se reactualizeaza mediile claselor
5. daca (fata de iteratia anterioara) nici un vector nu a fost mutat n alta clasa (sau
media nici unei clase nu s-a modificat), algoritmul se ncheie; daca nu, se reia algoritmul de la pasul 2.
Figura 5.14 d) prezinta rezultatul unei binarizari realizate prin clustering ISODATA.
Clustering fuzzy probabilist
O presupunere fundamentala ce a fost utilizata de toti algoritmii de segmentare pe regiuni
prezentati anterior (cresterea regiunilor si diferitele variante de segmentare pe histograma)
este aceea ca regiunile extrase formeaza o partitie completa a suportului spatial al imaginii.
Aceasta, conform conditiilor (5.1a) si (5.1b), nseamna ca regiunile sunt mutual disjuncte,
deci nici un punct al imaginii nu poate apartine simultan la doua regiuni. Privita din
perspectiva descrierii pixelilor ce formeaza o regiune oarecare, problema este binara: un
pixel apartine sau nu apartine regiunii. Aceasta abordare nu permite luarea n considerare
a unor puncte din imagine ale caror proprietati nu sunt perfect consistente cu proprietatile
impuse regiunii, fie pentru ca valorile caracteristice pixelilor respectivi sunt incerte, fie
pentru ca respectivele valori situeaza pixelii respectivi, n spatiul caracteristicilor, ntre
grupurile compacte de puncte ce formeaza clasele.
Incertitudinea asociata valorilor ce caracterizeaza punctele imaginii poate avea cauze multiple: cuantizarea valorilor reale ale marimilor fizice masurate n scena, prezenta zgomotului sau imposibilitatea observatorilor de a deosebi nivele de gri foarte apropiate (de
exemplu, n cazul unei cuantizari cu M = 256 nivele de gri, diferenta dintre nivelele de
gri 100 si 101 nu este sesizabila perceptual). Posibilitatea ca anumite puncte ale imaginii
sa se situeze simultan n mai multe clase (sau la frontiera acestora) este un caz frecvent
ntalnit n imagistica medicala (unde contururile organelor sunt relativ incerte, ca urmare a miscarilor involuntare ale subiectului n timpul preluarii imaginii) sau n imaginile
satelitare (unde un teren pe care exista palcuri de copaci nu poate fi declarat nici padure si
nici camp agricol). Solutia pentru aceste cazuri este relaxarea conditiei de nesuprapunere
a regiunilor si deci acceptarea faptului ca un punct al imaginii poate apartine unei regiuni
ntr-o masura mai mare sau mai mica. Aceasta conduce la definirea functiei caracteristice
a unei regiuni ca o functie Lukasiewicz, cu valori n intervalul [0, 1], functie ce exprima
gradul n care un pixel apartine regiunii (sau gradul de apartenenta a pixelului la regiune)
si la modelarea regiunilor din imagine ca multimi nuantate sau vagi (fuzzy).
Multimile vagi, introduse de Zadeh n anii 60 se revendica din teoria logicii nuantate
a lui Lukasiewicz, n care propozitiile nu sunt pe de-a ntregul adevarate sau pe dea ntregul false. La modul simplist de interpretare, logica vaga presupune nlocuirea
119

functiilor caracteristice binare de descriere a multimilor cu functii ce iau valori n domeniul


[0, 1]. In aceste conditii, metodele de clustering deja prezentate (asa cum este metoda
ISODATA) capata noi forme.
Fiecarui vector de trasaturi xj atasat unui pixel i se asociaza multimea de grade de
apartenenta la cele K clase ale partitiei: u1j , u2j , . . . , uKj , cu uij [0, 1]. Criteriul
cantitativ ce exprima calitatea partitiei si care trebuie optimizat este calitatea aproximarii
vectorilor de trasaturi xj prin centroizii claselor i , calitate masurata ca o eroare patratica.
J=

C X
N
X

2
um
ij kxj i k .

(5.42)

i=1 j=1

Optimizarea criteriului de calitate a partitiei se face sub constrangerea ca suma gradelor


de apartenenta a unui punct la toate clasele partitiei sa fie 1 (si deci punctul sa fie partajat
ntre cele K clase ale partitiei), deci:
K
X

uij = 1, j = 1, . . . , N.

(5.43)

i=1

Aceasta forma matematica a constrangerii, care aminteste de conditia de normare a unui


camp de probabilitati, impune numele de clustering probabilist; trebuie totusi avut n
vedere ca nimic altceva n afara acestei asemanari nu face apel la teoria probabilitatilor.
Cele N constrangeri din (5.43) se vor ncorpora prin metoda multiplicatorilor lui Lagrange
n necunoscutele uij si i :
criteriului J (5.42) de optimizat, rezultand o noua functie, J,
J =

K X
N
X

2
um
ij kxj i k

i=1 j=1

N
X

K
X

j=1

!
uij 1 .

(5.44)

i=1

dupa necunoscutele s si ust oarecari, dar fixate, sunt:


Derivatele partiale ale functiei J,
N
X
J
=2
um
ij (xj s ) = 0
s
j=1

(5.45)

J
= mum1
(xj s )2 t = 0.
st
ust

(5.46)

Ecuatia (5.45) permite determinarea centroizilor (prototipurilor, centrelor) claselor ca:


N
P

i =

j=1

um
ij xj

N
P
j=1

(5.47)

um
ij

Ecuatia (5.46) conduce la exprimarea gradelor de apartenenta ust a vectorilor la clase ca:

ust =

t
m(xt s )2
120

1
m1

(5.48)

Inlocuind expresiile gradelor de apartenenta din (5.48) n ecuatia ce exprima constrangerea


probabilista (5.43), se poate obtine o expresie pentru multiplicatorii Langrage, t :

t
m

1
m1

K
P

i=1

1
1
(xt i )2

.
1
m1

(5.49)

In fine, nlocuind valorile multiplicatorilor Lagrange dati de (5.49) n expresia initiala a


gradelor de apartenenta (5.46), obtinem expresia finala de calcul a acestora:

uij =

1
(xt i )2

K
P
s=1

1
m1

1
(xt s )2

.
1
m1

(5.50)

Solutia finala cautata (centroizii celor K clase si gradele de apartenenta a vectorilor de


trasaturi la acestea) este deci formata din sistemul de ecuatii (5.47) si (5.50). Rezolvarea
acestui sistem este iterativa, solutiile nefiind analitice. Algoritmul de clustering astfel
obtinut este Fuzzy ISODATA (sau Fuzzy C-Means, FCM) si a fost propus de Bezdeck
la nceputul anilor 80. Etapele acestui algoritm sunt:
1. Se initializeaza centroizii claselor i cu valori aleatoare, sau, n ipoteza existentei
unor cunostinte apriorice care sa permita o asemenea initializare, cu valori relativ
apropiate de valorile corecte.
2. Se calculeaza gradele de apartenenta ale vectorilor la clase, prin (5.50).
3. Se recalculeaza centrele claselor prin (5.47).
4. Se repeta pasii 2 si 3 atata timp cat modificarile ce intervin n valorile centroizilor
sau ale gradelor de apartenenta sunt importante.
Parametrul m poarta numele de grad de fuzificare al partitiei (n mod clasic valoarea
sa este m = 2) si controleaza distributia gradelor de apartenenta a vectorilor de date
ntre cele K clase ale partitiei. Daca m , termenul cel mai important al sumei de
la numitorul expresiei din (5.50) va fi cel ce va corespunde clasei al carei centroid este
cel mai apropiat de vectorul xj dat. Deci se obtine practic o partitionare neta (de tip
ISODATA), n care vectorul xj va avea grad de apartenenta aproape unitar la clasa de
care este cel mai apropiat, si grade de apartenenta aproape nule la celelalte clase ale
partitiei. Daca m = 2, se obtine cazul cel mai vag, pentru care vectorii xj sunt maxim
partajati ntre toate clasele. Complexitatea de calcul a algoritmului FCM este mult mai
mare decat cea a variantei sale nete si, n general, numarul de iteratii necesare pentru
atingerea convergentei este mai mare.
Folosirea unui algoritm de clustering FCM garanteaza obtinerea unor centroizi (prototipuri) mult mai credibile pentru clasele partitiei si permite identificare vectorilor de
date a caror apartenenta este incerta (caracterizati de lipsa unei valori uij dominante),
caracteristica ce poate fi utila n determinarea unor regiuni segmentate uniforme. Dupa
cum se observa din figura 5.14 e), rezultatul primar al algoritmului de clustering este o
121

imagine n care fiecarui pixel i este atasat gradul de apartenenta la una dintre cele K
clase ale partitiei. Imaginea clasei corespunzatoare se obtine printr-o etapa suplimentara
numita de defuzificare a partitiei create prin clustering: fiecare vector xj se considera ca
facand parte din regiunea ce corespunde clasei la care are gradul de apartenenta maxim.

5.3

Concluzii

Segmentarea (si etichetarea imaginilor binare) sunt componente esentiale ale oricarui sistem de analiza a imaginilor. Calitatea segmentarii este determinanta pentru performanta
ntregului sistem.
Metodele prezentate n acest capitol sunt cu adevarat fundamentale, regasindu-se n forme
modificate n orice tehnica de segmentare alternativa.
Se mai pot avea n vedere probleme ce nu au fost discutate, precum compensarea zgomotului ca parte a algoritmilor de segmentare, post-filtrarea imaginilor segmentate (de
etichete), ncorporarea constrangerilor spatiale n algoritmii de segmentare n spatiul caracteristicilor.

122

Capitolul 6
Segmentarea orientat
a pe contururi
6.1

Extragerea contururilor n domeniul spatial:


tehnici derivative

Contururile (muchiile) sunt frontierele obiectelor din imagine si sunt determinate de


adiacenta regiunilor uniforme; pixelii de tip contur sunt deci caracterizati de schimbari importante ale nivelelor de gri n vecinatatea lor spatiala (corespunzand n scena modificarii
valorilor proprietatii fizice preluate de senzorul de imagine). Schimbarea valorilor imaginii
este evaluata prin doua marimi: diferenta de valori si marimea suportului spatial pe care
are loc tranzitia. Astfel, ceea ce este important pentru caracterizarea contururilor este
rata de variatie a nivelelor de gri, deci derivata functiei imagine (figure 6.1 prezinta un
exemplu ilustrativ pentru importanta derivatei ca trasatura caracteristica a contururilor).

Figura 6.1: Importanta derivatei ca tras


atur
a caracteristic
a a contururilor: jumatatea superioar
a a imaginii prezint
a separatia neta dintre doua regiuni uniforme, avand diferenta
de nivel de gri de 100; jumatatea inferioar
a a figurii prezint
a o tranzitie lenta ntre aceleasi
dou
a regiuni uniforme, tranzitie ce nu poate fi asimilata unui contur.

123

6.1.1

Folosirea derivatei de ordinul unu

Sa consideram pentru nceput ca imaginea este modelata printr-o functie de doua variabile (coordonatele spatiale) cu variatie continua f (x, y) (imaginea digitala propriu-zisa
se obtine n mod evident prin esantionarea functiei f ). Variatiile de valoare a functiei
imagine pe o directie oarecare sunt masurate de operatorul gradient. Pentru o directie
oarecare, data de versorul ~r, de orientare fata de orizontala, gradientul functiei imagine
f n punctul de coordonate (x, y) este dat de:
f~r =

f (x, y)
f (x, y) x f (x, y) y
=
+
= fx (x, y) cos + fy (x, y) sin
~r
x ~r
y ~r

(6.1)

Dupa cum se observa, calculul gradientului dupa orice directie ~r se poate reduce la calculul derivatelor pe orizontala fx (x, y) si verticala fy (x, y) ale functiei imagine n punctul
curent (x, y). Ceea ce intereseaza nsa cel mai mult din perspectiva identificarii contururilor (si deci a tranzitiilor abrupte ale functiei imagine) este marimea (valoarea absoluta,
magnitudinea, modulul) gradientului. Dintre toate orientarile posibile ~r ce corespund
unei pozitii spatiale date (x, y), exista o unica directie pentru care gradientul va fi cel
mai important. Aceasta valoare maxima a gradientului f~r este obtinuta pentru o orientare particulara 0 , ce se poate calcula considerand gradientul din (6.1) ca o functie
de orientarea . Atunci, maximizarea gradientului revine la determinarea orientarii ce
anuleaza derivata expresiei din (6.1):

f (x, y)
=0
(6.2)

~r
Rezolvarea ecuatiei (6.2) conduce imediat la fx cos +fy sin = 0, si deci la determinarea
directiei de variatie maxima a functiei imagine n punctul curent (x, y):
0 (x, y) = arctan

fx (x, y)
fy (x, y)

Pe directia astfel determinata, modulul gradientului va fi dat de:

q
f (x, y)
= fx2 (x, y) + fy2 (x, y).
r
max

(6.3)

(6.4)

Ecuatiile (6.4) si (6.3) constituie cele doua elemente esentiale pe baza carora se pot identifica contururile din imagini: contururile sunt determinate de intensitatea de tranzitie si
de orientare.
Operatorul de gradient
Extragerea punctelor de contur este imediata: este suficient a calcula pentru fiecare punct
al imaginii valoarea maxima a gradientului, ce va fi apoi comparata cu un prag fixat. Daca
valoarea maxima a gradientului dintr-un punct este suficient de importanta si depaseste
valoarea pragului, atunci punctul respectiv este declarat punct de contur. Toate metodele
bazate pe estimarea gradientului se ncadreaza n aceasta schema. Ceea ce diferentiaza
metodele este modalitatea de calcul a variatiei maxime a valorilor imaginii (nivelelor de
gri) ntr-un punct.
124

Pentru determinarea variatiei maxime a imaginii este deci necesara determinarea


derivatelor pe directiile orizontala si verticala. Realizarea derivatelor partiale dupa aceste
directii implica trecerea n discret a derivatelor fx (x, y) si fy (x, y) (incluzand si modificarea notatiilor coordonatelor, l fiind versiunea discreta a lui x si c fiind versiunea discreta
a lui y):
f (x, y)
f (l, c)
fx (x, y) =
=
x
l
f (x, y)
f (l, c)
=
fy (x, y) =
y
c
Aceste derivate partiale discrete pot avea mai multe implementari:
fx = f (l, c) f (l + 1, c) , fy = f (l, c) f (l, c + 1);
fx = f (l 1, c) f (l, c) , fy = f (l, c 1) f (l, c);
fx = f (l 1, c) f (l + 1, c) , fy = f (l, c 1) f (l, c + 1).

(6.5)
(6.6)
(6.7)

Toate expresiile date de (6.5), (6.6), (6.7) sunt combinatii liniare ale valorilor unor pixeli
din imagine, situati n vecinatatea pixelului curent din pozitia (l, c), deci toate aceste
operatii se pot realiza prin filtrari liniare cu masti alese corespunzator: (6.8) pentru (6.5),
(6.9) pentru (6.6), (6.10) pentru (6.7):

1
Wx = 1 1 , Wy =
(6.8)
1

Wx =

Wx =

-1

, Wy =

1
-1

1 , Wy = 0
1

(6.9)

(6.10)

Este interesant de remarcat faptul ca descompunerea gradientului f~r de directie ~r oarecare (din (6.1)) se poate face dupa oricare doua directii ortogonale de referinta, nu numai
orizontala si verticala [12]. Considerand ca aceste directii de referinta ar fi diagonalele
principale ale sistemului de coordonate (deci directii orientate la /4 si 3/4 fata de orizontala), vor trebui determinate forme discrete pentru derivarea imaginii dupa diagonale.
Asemenea derivate sunt realizate de mastile de filtrare Roberts:

0 1
1
0
W/4 =
, W3/4 =
(6.11)
1 0
0 1
De asemenea, se remarca faptul ca toate mastile de filtrare liniara prezentate, ce implementeaza operatii derivative, verifica conditia de normare a filtrelor liniare derivative, si
anume, suma coeficientilor de ponderare din masca sa fie nula (3.11).
Schema de implementare a operatiei de extragere a punctelor de contur din imagini prin
calculul gradientului dupa doua directii ortogonale este prezentata n figura 6.2. Se observa existenta a trei rezultate de interes: harta de intensitati de tranzitie g(l, c), care este
o imagine ce contine, pentru fiecare pixel, valoarea maxima a gradientului pentru pozitia
respectiva, harta de contururi e(l, c) care este o imagine binara n care punctele marcate
125

fx
f

Wx

Wy

(fx2+fy2)1/2
g

fy

atan(fy/fx)

comparator

Figura 6.2: Schema bloc a extractorului de contururi bazat pe metoda de calcul a gradientului prin doua derivate dupa directii ortogonale.
(punctele-obiect) corespund pozitiei punctelor de contur (puncte al caror gradient maxim
depaseste pragul fixat) si harta de orientari 0 (l, c) care este o imagine ce contine, pentru
fiecare pixel, orientarea gradientului de modul maxim n punctul respectiv, si este folosita
n general la prelucrarea suplimentara a contururilor (conectarea contururilor, extragerea
directionala a contururilor). O simplificare uzuala practicata este nlocuirea normei L2
din calculul modulului maxim al gradientului (6.4) cu norma L1, ceea ce conduce la
aproximarea:

f (x, y)
|fx (x, y)| + |fy (x, y)|
r
max
Unul dintre principalele dezavantaje legate de folosirea mastilor derivative simple, ce
implementeaza direct operatia de derivare directionala discreta, este sensibilitatea importanta la zgomot. In urma derivarii dupa oricare dintre mastile (6.5)-(6.7), un zgomot
alb aditiv este amplificat de doua ori. O metoda evidenta de compensare a acestei probleme este realizarea unei operatii de reducere a zgomotului (netezire) naintea derivarii,
urmarind simultan pastrarea profilurilor abrupte de tranzitie (si deci introducerea unor
efecte minime de ncetosare). Pentru ca profilul tranzitiei pe directia ~r sa nu fie afectat, filtrarea de netezire va trebui deci aplicata pe directia perpendiculara lui ~r. Atunci,
derivarea orizontala va trebui precedata de o filtrare de netezire cu o masca verticala,
iar derivarea verticala va trebui precedata de o filtrare de netezire cu o masca orizontala. Operatiile de filtrare liniara fiind realizate prin convolutii, sunt asociative, deci este
posibila determinarea unei masti unice de filtrare, care sa grupeze efectele de netezire si
derivare dupa cele doua directii perpendiculare. Considerand o netezire de tip mediere
central ponderata cu coeficientul c R+ si operatiile de derivare descrise de mastile din
(6.10), obtinem mastile echivalente de filtrare:

1 0 1
1

1
1
c 1 0 1 =
Wx =
(6.12a)
c 0 c
c+2
c+2
1
1 0 1

1
1
c
1

1
1
1 c 1 0 =
Wy =
(6.12b)
0
0
0
c+2
c+2
1
1 c 1
Prin particularizari convenabile ale coeficientului de ponderare c folosit la filtrarea de
126

a)

b)

c)

d)

Figura 6.3: Folosirea operatorului gradient cu masti Sobel (6.13c) pentru extragerea contururilor conform schemei din figura 6.2: a) imagine originala; b) harta de intensitati
de tranzitie g (conventia de afisare este de a reprezenta intensitatile maxime cu tonuri
de negru); c) harta binara de contururi orizontale extrase prin praguirea hartii de intensit
ati de tranzitie orizontale; d) harta binara de contururi extrase prin praguirea hartii de
intensit
ati de tranzitie din b).
netezire se pot obtine diferite
familii clasice de operatori de derivare cu netezire: Prewitt
(c = 1, (6.13a)), Izotrop (c = 2, (6.13b)), Sobel (c = 2, (6.13c)) [33]. Se remarca faptul
ca constanta de ponderare globala a mastii de filtare este neesentiala, ntrucat conditia
de normare ce trebuie ndeplinita este cea pentru filtre de contrastare (derivare) (3.11):
suma coeficientilor mastii sa fie nula.

1 0 1
1
1
1
Wx = 1 0 1 , Wy = 0
(6.13a)
0
0 ;
1 0 1
1 1 1

1
0
1
2
1
1

Wx = 2 0 2 , W y = 0
(6.13b)
0
0 ;

1
0
1
1 2 1

1 0 1
1
2
1
Wx = 2 0 2 , Wy = 0
(6.13c)
0
0 .
1 0 1
1 2 1
Limitele de variatie ale parametrului c din forma generala a unei masti de derivare cu
127

netezire (6.12) pot fi determinate cu usurinta din verificarea conditiei de reducere a puterii
de zgomot aditiv suprapus semnalului de imagine, dupa modelul de calcul prezentat n
(3.4). Astfel, rezulta cu usurinta ca pentru oricare dintre mastile de derivare cu netezire
din (6.12) puterea zgomotului este redusa de (c + 2)2 /2(c2 + 2) ori. Pentru ca aceasta sa
reprezinte cu adevarat o reducere este necesar ca c [0, 4]. De asemenea se poate verifica
ca cea mai eficienta reducere a zgomotului (de 1.5 ori) apare pentru c = 1.
Operatorul compas
Informatia de orientare este n general folosita n etape ce urmeaza extragerii punctelor de
contur; unghiurile determinate dupa (6.3) ofera un unghi exact al directiei conturului n
punctul curent, calculat cu un efort semnificativ de calcul (mpartire si calcul de arctangenta). In practica, aceasta informatie este prea precisa: pe grila patrata de esantionare
nu se pot reprezenta cu usurinta drepte continue dupa orice directie, n schimb exista
cateva directii favorizate si usor de utilizat (verticala, orizontala, cele doua diagonale). In
acest caz se poate calcula modulul gradientului dupa aceste cateva directii importante,
si apoi se poate alege directia dupa care acest modul este maxim. Acesta este principul
operatorilor compas.
Un operator compas calculeaza derivate ale imaginii dupa un set de N directii (N >
2). Gradientul maxim al functiei imagine din fiecare punct este determinat ca maximul
valorilor derivatelor directionale, iar pentru decizia ulterioara se selecteaza doar informatia
corespunzatoare directiei pe care derivata a fost maxima. Daca N = 2 si cele doua directii
sunt ortogonale, schema de prelucrare obtinuta este similara cu cea a unui extractor de
contururi bazat pe gradient n care estimarea gradientului maxim se face printr-o metrica
de tip L (max). Schema bloc generala a unui operator compas este prezentata n figura
6.4; fiecare dintre mastile Wk realizeaza calculul unei derivate, pe directia k .

f0
W0

W1

max{fk}
g

comparator

f1
argmax{fk}
0

W7
f7
Figura 6.4: Schema bloc a extractorului de contururi bazat pe metoda de calcul a gradientului prin derivate dupa 8 directii.
128

Operatorul compas uzual are N = 8 masti de filtrare, fiecare dintre ele realizand o derivare
dupa o directie multiplu de /4; sunt astfel acoperite directiile principale (verticala, orizontala, cele doua diagonale), fiecare dintre ele n cele doua sensuri. Cele N = 8 masti
folosite provin dintr-o unica masca de baza (ce implementeaza de obicei o derivare orizontala) prin rotiri succesive ale acesteia cu unghiuri ce corespund diferentelor de directie
a derivatelor folosite. Pentru operatorul compas uzual cu N = 8, mastile de derivare
folosite sunt 3 x 3, si mastile corespunzatoare directiilor succesive difera printr-o rotatie
de /4. Aceasta rotatie de /4 este echivalenta cu o deplasare circulara a valorilor de pe
marginea mastii, exemplificata n :

a b c
b c d
W0 = h i d ; W/4 = a i e
(6.14)
g f e
h g f
Masca initiala ce corespunde directiei orizontale poate fi oricare dintre mastile de derivare
cu netezire pe orizontala Wx prezentate anterior, ca de exemplu Prewitt (6.13a) sau Sobel
(6.13c). Exista nsa si masti speciale, precum mastile Kirsch; cele 8 masti folosite de
operatorul compas Kirsch (indexate dupa numele orientarilor punctelor cardinale corespunzatoare) sunt:

5 3 3
3 3 3
3 3 3
WE = 5 0 3 , WN E = 5
0 3 , WN = 3 0 3 ,
5 3 3
5
5 3
5
5
5

3 3 5
3 5
5
3 3 3
WN V = 3 0
5 , WV = 3 0 5 , WSV = 3 0
5 ,
3 5
5
3 3 5
3 3 3

5
5
5
5
5 3

(6.15)
WS =
3 0 3 , WSE =
5
0 3 .
3 3 3
3 3 3
Se poate remarca cu usurinta ca exista o legatura ntre precizia unghiulara a operatorului compas (deci diferenta dintre directiile alaturate dupa care se calculeaza derivatele
directionale) si dimensiunea mastilor de filtrare folosite; pentru o masca patrata de dimensiune D D, precizia unghiulara este de /2(D 1) si numarul de masti utilizate de
operatorul compas este de N = 4(D 1).
Operatorul optimal de extragere a contururilor
Problema detectiei contururilor dintr-o imagine pe baza praguirii unei harti de intensitati
de tranzitie obtinuta prin filtrarea liniara a imaginii de analizat poate fi exprimata ca o
problema de proiectare a unui filtru (liniar) al carui raspuns sa marcheze cu maxime bine
definite pozitiile tranzitiilor din semnalul de imagine de intrare. Filtrul dorit va fi optimal
n sensul de a oferi cea mai buna performanta medie de detectie a contururilor (pentru orice
pozitie si intensitate a tranzitiei ce defineste conturul si orice putere a zgomotului suprapus
acestuia), performanta reprezentata de o serie de caracteristici ce masoara capacitatea de
detectie a contururilor fara raspunsuri false, buna localizare a contururilor detectate si
probabilitatea de detectie falsa cauzata de zgomotul suprapus semnalului util. Aceasta
abordare a fost propusa de Canny n [7], pornind de la cazul simplificat al unui semnal
129

treapta unidimensional degradat cu zgomot alb, gaussian, aditiv. Asadar, semnalul de


intrare f (x) este compus dintr-o treapta ideala u0 (x) de amplitudine U0 si zgomotul n(x),
de medie nula si putere N02 :
f (x) = U0 u0 (x) + n(x).
(6.16)
Filtrul cautat are functia pondere h(x), iar semnalul de la iesirea filtrului (raspunsul
filtrului) este dat de:
Z
g(x) = f (x)h(x) =

Z
f (t)h(xt)dt = U0

Z
u0 (t)h(xt)dt+

n(t)h(xt)dt. (6.17)

Cum tranzitia apare pentru x = 0, functia pondere a filtrului h(x) trebuie determinata
astfel ncat raspunsul filtrului la x = 0, g(0), sa fie maxim si sa respecte constrangerile
enuntate (buna detectie, buna localizare, evitare a maximelor multiple). In functie de
tipul de filtru ce se doreste (cu raspuns finit la impuls FIR, sau cu raspuns infinit
la impuls IIR), sunt posibile doua abordari: Canny si Deriche. In cele ce urmeaza
vom prezenta abordarea Canny, de sinteza a unui filtru FIR, cu suport finit, pe care
l vom presupune limitat la intervalul [M, M ] (ceea ce nseamna ca h(x) = 0 pentru
x (, M ) (M, +)).
Cum filtrul dorit este un filtru de tip derivativ (ntrucat trebuie sa masoare variatiile din
semnal), constrangerea (3.11) de normare a coeficientilor trebuie sa fie ndeplinita, deci:
ZM
h(x)dx = 0.
M

In cazul n care filtrul dorit este discret, constrangerea de mai sus devine:
M
X

h(k) = 0.

k=M

Proprietatea de bun
a detectie
Detectia tranzitiei este exprimata prin radicalul raportului semnal/ zgomot n pozitia
reala a tranzitiei (adica raportul dintre raspunsul filtrului n pozitia reala, corecta, a
tranzitiei si radicalul puterii de zgomot de la iesirea filtrului). T
inand cont ca filtrul este
discret, tranzitia este de tip treapta unitate si apare n pozitia x = 0, detectia definita
anterior poate fi exprimata ca:
M
P
U0
h(k)
U0
k=0
s
.
DET =
=
N0
M
P
N0
h2 (k)

(6.18)

k=M

Filtrul optim presupune maximizarea detectiei, deci maximizarea expresiei din (6.18).
Rezulta conditia ca:
M
X
h2 (k) = 1.
(6.19)
k=M

130

Proprietatea de bun
a localizare
Localizarea este definita ca eroarea patratica medie de aproximare a pozitiei reale a
tranzitiei (x = 0) cu cel mai apropiat maxim (x ) din raspunsul filtrului la un semnal de
intrare f (x) afectat de zgomot.
s
M
P
h2 (k)
p
k=M
N0
N0
LOC = E [x2 ] =
=
.
(6.20)
0
U0
|h (0)|
U0
Filtrul optim presupune minimizarea localizarii (6.20).
Se poate remarca de asemenea ca produsul detectie-localizare nu mai depinde nici de
amplitudinea tranzitiei, nici de puterea de zgomot (DET LOC = ). Se poate de
asemenea demonstra ca acest produs este invariant la o schimbare de scala. Canny [7] a
aratat prin tehnici de optimizare numerica ca filtrul optim este caracterizat de = 1.12.
Proprietatea de evitare a maximelor multiple
Conditia de evitare a maximelor multiple datorate zgomotului impune ca numarul de
maxime locale detectate ca raspuns la un unic contur sa fie limitat, ceea ce poate fi
exprimat printr-o densitate redusa a trecerilor prin zero a raspunsului filtrului datorat
numai zgomotului, sau o distanta suficient de mare de separatie ntre maximele succesive
din raspunsul filtrului. Se poate demonstra [7] ca distanta maxima dintre doua maxime
succesive datorate unui zgomot de tip gaussian suprapus semnalului util va fi data de:
v
u M
u P 02
u
h (k)
u
k=M
u
xmax = u M
.
(6.21)
2 t P 2
h (k)
k=M

Conditia practica impusa de Canny este ca distanta dintre maximele succesive ale
raspunsului filtrului sa fie o fractiune K < 1 din suportul nucleului filtrului M (xmax
KM ).
Filtrul Canny
Filtrul FIR derivativ usor de implementat, caracterizat de un produs detectie-localizare
cat mai apropiat de valoarea optima de 1.12 este, conform [7], derivata de gaussiana
(operatorul DOG), obtinut n conditiile n care distanta dintre doua maxime succesive
ale raspunsului filtrului este mai mare decat 0.5M . Acest criteriu de evitare a maximelor
multiple (6.21) stabileste si parametrul de proiectare al filtrului: dispersia gaussienei de
baza din care provine filtrul optim. Cu cat dispersia creste, cu atat detectia DET (6.18)
va fi mai buna si localizarea LOC (6.20) va deveni mai putin precisa.
Daca nucleul gaussian de baza este N (0, )(x), operatorul DOG va fi:

d
x2
x
x2
1
d

N (0, )(x) =
exp 2 =
exp 2 .
dx
dx 2 2
2
2
2 2
Aspecte de implementare ale filtrului Canny
131

(6.22)

Filtrul Canny bidimensional este implementat pe baza schemei simple de gradient din
figura 6.2, folosind ca masti de derivare pe verticala si orizontala operatori DOG obtinuti
dintr-un nucleu gaussian bidimensional. Fata de schema prezentata mai apar nsa doua
modificari: eliminarea valorilor non-maxime din harta de intensitati de tranzitie pe
directia normalei la contur si praguirea cu histerezis a hartii de intensitati de tranzitie.
Procedura de eliminarea a valorilor non-maxime din harta de intensitati de tranzitie se
aplica punctelor de contur selectate pe baza praguirii prin histerezis si urmareste obtinerea
unor contururi subtiri. Un contur gros este format din puncte alaturate, caracterizate de
valori suficient de importante ale intensitatii de tranzitie; numai un singur punct nsa
si anume punctul situat n centrul conturului va fi caracterizat de valoarea maxima a
intensitatii de tranzitie. Procedura de eliminare se bazeaza pe verificarea pentru fiecare
punct potential de contur a maximalitatii valorii sale de intensitate de tranzitiei n raport
cu valorile de intensitate de tranzitie n punctele ce i sunt vecine, de-a lungul directiei
perpendiculare pe contur. Daca punctul verificat nu are o valoare maxima a intensitatii
de tranzitie, este eliminat din harta binara de contururi. Principiul de verificare este
exemplificat n figura 6.5.

Q2

contur


Q1

normala la contur
Figura 6.5: Eliminarea non-maximelor din harta de intensitati de tranzitie n cadrul implement
arii filtrarii Canny: reprezinta pozitiile pixelilor n harta de intensitati de tranzitie,
P este punctul curent verificat a carui intensitate de tranzitie este comparat
a cu intensit
atile de tranzitie din punctele Q1 si Q2 (marcate cu ), situate la intersectia normalei la
conturul ce trece prin P cu liniile de imagine vecine punctului P . Valorile intensitatilor
de tranzitie din punctele Q1 si Q2 (ce pot sa nu aiba coordonate ntregi) se obtin prin
interpolare din valorile intensitatilor de tranzitie cunoscute pentru punctele apropiate de
coordonate ntregi.
Praguirea cu histerezis se aplica n locul operatiei simple de comparare cu prag pentru
extragerea punctelor din imagine a caror gradient este sufient de mare pentru a putea
reprezenta un punct de contur. Praguirea cu histerezis nseamna folosirea a doua praguri
pentru extragerea punctelor de contur: un prag de valoare mare cu care se selecteaza pixelii
132

caracterizati de valori maxime n harta de intensitati de tranzitie si un prag de valoare mai


mica, cu care se selecteaza (ntr-o maniera recursiva) punctele din vecinatatea spatiala a
punctelor de contur deja selectate (prin aplicarea anterioara a ambelor praguri).

6.1.2

Folosirea derivatei de ordinul doi

Extragerea punctelor de contur pe baza primei derivate (si deci a gradientului, indiferent
de modul de estimare a acestuia) este potrivita n cazul tranzitiilor relativ abrupte a
nivelelor de gri, deci pentru frontiere bine conturate. Cu cat regiunea de tranzitie devine
mai larga (si deci panta profilului de tranzitie mai slaba) centrul acestei tranzitii, detectat
prin maximul gradientului, devine mai greu de determinat cu precizie. Astfel, contururile
detectate vor groase, fiind formate din mai multi pixeli, si nu neaparat situate pe centrul
regiunii de tranzitie. Gasirea centrului tranzitiei poate fi realizata prin folosirea derivatelor
de ordinul doi a functiei imagine, grupate n operatorul laplacian:
2 f =

2 f (x, y) 2 f (x, y)
+
.
x2
y 2

Principalele masti utilizate pentru calculul laplacianului sunt:

1 1 1
0 1 0
1 2 1
W = 2 4 2 , W = 1 8 1 , W = 1 4 1
1 2 1
1 1 1
0 1 0

(6.23)

(6.24)

.
Operatorul laplacian nu permite detectarea directiilor de tranzitie, deoarece informatia
de orientare a tranzitiei este pierduta. Determinarea punctelor de contur ca puncte de
extrem ale laplacianului (maxime si minime, sau maxime ale valorii absolute a laplacianului) produce muchii duble n harta de contururi, deoarece aceste puncte de extrem sunt
situate de o parte si de alta a regiunii de tranzitie, marcand limitele acesteia. Mijlocul
tranzitiei este marcat de trecerea (tranzitia) prin zero a laplacianului: pe acest comportament al laplacianului se bazeaza modelul de detector zero-crossing introdus de Marr
si Hildreth. De altfel, acest tip de comportament a mai fost discutat n contextul definirii
filtrelor liniare de accentuare. Se poate urmari deci din perspectiva extragerii punctelor
de contur exemplul prezentat n figura 3.2: graficul din figura 3.2 a) prezinta o tranzitie
(unidimensionala) lenta. Derivata ntai (prezentata n figura 3.2 b)) prezinta un maxim
larg pe centrul tranzitiei, dar derivata a doua (prezentata n figura 3.2 c)) trece prin zero
exact n punctul ce corespunde centrului tranzitiei. In cazul tranzitiilor cu suport bidimensional (deci pentru extragerea practica a contururilor din imagini), problema esentiala
este identificarea trecerilor prin zero ale laplacianului. In mod uzual se considera ca laplacianul trece prin zero ntr-un punct din imagine daca n vecinatatea imediata a acestui
punct, exista doua valori medii de semne diferite ale laplacianului calculate pe cuadrante
de cate 4 pixeli. Astfel, daca ne referim la o vecinatate de 3 3 pixeli, centrata pe pixelul
curent prelucrat, cu valorile notate conform mastii W0 din (6.14), valorile medii din cele 4
cuadrante vor fi (a+b+h+i)/4, (b+c+i+d)/4, (i+d+f +e)/4, (h+i+g+f )/4. Existenta
trecerii prin zero este definita de existenta unui minim negativ si a unui maxim pozitiv
printre cele patru valori medii. Suplimentar, n practica se foloseste si constrangerea ca
diferenta dintre valoarea maxima si cea minima sa fie semnificativa.
133

a)

b)

Figura 6.6: Extragerea contururilor din imaginea originala prezentat


a n figura 6.3 a)
prin: a) praguirea valorii absolute a laplacianului; b) aplicarea operatorului zero-crossing.
Sensibilitatea la zgomot a laplacianului este mai mare decat a operatorilor de gradient,
ceea ce a dus la introducerea unor operatori de derivata secunda, combinati cu netezire.
Unul dintre acesti operatori este LOG, laplacian de gaussiana. Sa consideram un nucleu
de netezire gaussian separabil dat de:

K
m2 + n2
N (m, n) =
exp
.
(6.25)
2 2
2 2
Derivatele secunde ale acestuia sunt:

2 N (m, n)
m
K
m2 + n2
=
exp
1 ,
m2
2 4
2 2
2

2
2 N (m, n)
K
m2 + n2
n
=
exp
1 .
n2
2 4
2 2
2

(6.26)
(6.27)

Rezulta deci ca pentru operatorul LOG, coeficientii nucleului de filtrare sunt dati de
ecuatia:
2

m + n2
m2 + n2
h(m, n) = K
2 exp
(6.28)
2
2 2
Scalarul K din (6.25) este determinat din conditia de normalizare a coeficientilor mastii
de filtrare liniara. Parametrul 2 controleaza gradul de netezire al operatorului (deci
gradul de reducere al zgomotului suprapus imaginii) si implicit, importanta contururilor
extrase. O varianta separabila a acestui operator (deci care combina filtrari numai pe linii
si numai pe coloane) a fost propusa de Huertas si Medioni [12]:
h = h1 (m)hn (y) + h2 (m)h1 (n)
unde cele doua nuclee liniare h1 si h2 sunt date de:
r
r

K
m2
K
n2
m2
h1 (m) =
exp 2
1 2 exp 2 , h2 (n) =
2

2
2
2

(6.29)

(6.30)

Forma separabila a operatorului LOG pune n evidenta n mod clar operatiile de derivata
secunda unidirectionala a unei gaussiene (h1 ) si de netezire pe directia ortogonala derivarii,
134

dupa un nucleu gaussian (h2 ). Avantajul formei separabile este posibilitatea implementarii
cu un numar redus de operatii.
Derivata secunda unidimensionala a nucleului gaussian poate fi pusa de asemenea si sub
forma unei diferente de gaussiene cu dispersii diferite [12], [50]:
2 G (x)
= G (x) G+d (x)
x2

(6.31)

6.2

Extragerea contururilor n domeniul spectral

Este bine cunoscut faptul ca reprezentarea spectrala a imaginilor (n domeniul transformat


de frecvente spatiale, folosind transformata Fourier) este o reprezentare echivalenta ce
poarta aceeasi informatie ca si n domeniul spatial. Informatia de contur, care corespunde
unor variatii importante ale semnalului de imagine, va trebui deci sa se regaseasca n zona
frecventelor nalte. Extragerea contururilor n domeniul de frecventa se va realiza deci
prin aplicarea unor filtre de tip trece-sus sau trece-banda (acestea din urma prezentand
avantajul de a reduce zgomotul de nalta frecventa suprapus imaginii). Figura 6.8 prezinta
un exemplu de extragere a hartii de intensitati de tranzitie prin filtrare n domeniul
spectral. Trebuie de asemenea remarcat ca informatia de contur este reprezentata n mod
esential de catre componenta de faza din spectrul Fourier al imaginii. Intensitatile de
tranzitie asociate contururilor pot fi extrase din spectrul de faza chiar n lipsa oricarei
informatii de modul (valoare absoluta), dupa cum este prezentat n figura 6.7.

a)

b)

Figura 6.7: Extragerea contururilor n domeniul spectral folosind componenta de faza


pentru imaginea originala din figura 6.3 a): a) componenta de faza a spectrului Fourier;
b) imaginea de intensitati de tranzitie obtinut
a prin transformarea Fourier inversa aplicat
a
numai componentei de faza.

6.3

Concluzii

Tehnicile de extragere a contururilor prezentate n acest capitol sunt metode fundamentale


de marcare n imagini a punctelor de frontiera, bazate pe folosirea informatiei de variatie
135

a)

b)

c)

d)

e)

f)

Figura 6.8: Extragerea contururilor n domeniul spectral pentru imaginea originala din
figura 6.3 a): a) modulul spectrului Fourier al imaginii (reprezentare la scar
a logaritmic
a); b) modulul spectrului Fourier din a) obtinut n urma filtrarii cu un filtru trece-sus
ideal c) imaginea reconstruit
a din spectrul Fourier din figura b), reprezentat
a cu scara
uzual
a de 256 nivele de gri (n imagine exista valori pozitive si negative, ntruc
at eliminarea componentei continue prin filtrarea FTS ideal
a face ca valoarea medie a valorilor
imaginii sa fie nula); d) modulul valorilor din imaginea din figura c), reprezentat cu 256
nivele de gri (se observa ca aceast
a imagine are caracteristicile unei harti de intensitati de
tranzitie); e) reprezentarea modulului functiei de transfer a unui nucleu de derivare Sobel
pe vertical
a; f ) reprezentarea modulului functiei de transfer a unui nucleu de laplacian.

136

a functiei (semnalului) imagine, calculata prin derivate de ordinul unu si doi. Folosirea
acestor metode nu garanteaza obtinerea unor contururi nchise ale obiectelor din imagini
si nici a unor contururi cu grosimea de un pixel (nici macar n cazul utilizarii filtrarii
optimale Canny), astfel ncat este n general necesara o etapa suplimentara de analiza si
prelucrare a hartii binare de contururi [33].
De asemenea, prezenta zgomotului constituie ntotdeauna un factor perturbator, favorizand abordarile de derivare cu netezire.

137

138

Capitolul 7
Caracterizarea texturilor
Termenul de textura este legat de perceptia (vizuala si tactila) a unui material (cel mai
adesea de tip tesatura). Intr-un cadru mai larg, putem considera textura ca o proprietate
a obiectelor sau materialelor, ce caracterizeaza structura lor fizica din punctul de vedere
al dimensiunii, formei, orientarii, aranjamentului si proportiei partilor constituente ale
acesteia [15]. Aceasta caracteristica se refera la configuratia structurala a unei largi categorii de obiecte si materiale: materiale textile urzite sau tesute, aliaje, roci, sol, piele
si tesuturi organice, vegetatie, aglomerari de granule. Textura este descrisa n termeni
lingvistici prin cuvinte ca rugozitate, contrast, finete, regularitate, etc., termeni a caror
exprimare matematica nu este clara [12]. Dificultatea de a defini textura conduce uneori
chiar la pseudo-definitii recursive, ca n [41] 1 . Cateva exemple de texturi (naturale si
artificiale) sunt prezentate n figura 7.1; colectii de texturi sunt disponibile fie n albume,
precum clasica colectie Brodatz , fie n arhive electronice, precum baza de texturi Vistex
[1].
Dupa cum se remarca si din imaginile prezentate n figura 7.1, o textura nu poate fi definita
nici ca o regiune uniforma (din punctul de vedere al valorilor pixelilor ce o compun) si nici
doar prin prezenta frontierelor. La o scara data, orice textura are acelasi aspect, indiferent
de alegerea subregiunii de analiza. Aceste observatii conduc la necesitatea caracterizarii
texturilor prin alte marimi decat simpla valoare a pixelilor sau variatia locala (n sens
derivativ) a acestor valori. Vom considera ca textura poate fi definita prin uniformitatea
(spatiala) a unor caracteristici specifice, calculate de cele mai multe ori pe baza unor
considerente statistice. Corespunzand diferitelor teorii privitoare la perceptia vizuala a
texturii, au fost propuse doua modele principale de descriere a texturilor:
- abordarea determinista, ce se refera la repetarea spatiala a unui motiv de baza, pe
diferite directii. Acesta abordare corespunde unei viziuni macroscopice, ntalnita de altfel
n cazul tesaturilor, fragmentelor de piele de reptila si a modelelor de tip mozaic (mozaicul
de pe pardoseala, parchetul). Elementul repetitiv de baza porta numele de texon sau texel
(element de textura texture element, prin similaritate cu denumirea de pixel picture
element).
- abordarea probabilista (statistica), ce se refera la caracterizarea atributelor anarhice si
omogene n acelasi timp, care nu tin nici de un element de baza localizabil (motiv), nici
1

Textura este acel obiect pentru care algoritmii de extragere a texturilor dau rezultate concludente.

139

a)

b)

c)

d)

e)

f)

Figura 7.1: Exemple de texturi: a) tes


atur
a de lan
a; b) tes
atur
a de bumbac; c) jaluzele
verticale din plastic; d) pavaj; e) flori de liliac; f ) aglomerare de pietre de rau.

de o frecventa principala de repetitie.


Referindu-ne n continuare la abordarea cea mai generala, abordarea statistica, vom considera deci ca textura este o realizare particulara a unui proces aleator, care, pentru
simplificare, este considerat stationar. Ipoteza de stationaritate presupune ca statisticile
calculate pentru o regiune oarecare a texturii sunt independente de pozitionarea regiunii
n campul de observatie (ntreaga textura); practica infirma nsa de destule ori aceasta
presupunere. O problema suplimentara legata de calculul marimilor statistice este determinata de faptul ca natura statistica a acestora impune calculul pentru o infinitate de
realizari ale procesului aleator considerat (si deci o infinitate de texturi de acelasi fel).
Cum aceasta infinitate de realizari particulare nu este disponibila, n practica se face
implicit ipoteza suplimentara de ergodicitate2 a procesului aleator, astfel ncat o singura
realizare (deci o singura textura) sa permita calculul marimilor statistice ca medii spatiale.
Acest tip de caracterizare este realizata n domeniul spatial (n domeniul valorilor imaginii/texturii). Este nsa posibila si o caracterizare a texturii n domeniul spectral, n urma
folosirii transformatei Fourier, caz n care se vor masura distributii spectrale de energie.

Un proces aleator se cheama ergodic daca mediile sale statistice sunt egale cu mediile sale temporale;
pentru o definire mai completa a conceptelor de stationaritate si ergodicitate se poate consulta [11]

140

7.1

Caracterizarea n domeniul spatial

Caracterizarea texturilor n domeniul spatial este bazata pe calculul functiilor de densitate


de probabilitate (de diferite ordine) ale valorilor pixelilor din regiuni de interes decupate
din textura. In cele ce urmeaza vom considera ca estimarea marimilor statistice se face
pentru o regiune R din textura f , regiune de forma oarecare (desi n practica se foloseste
n covarsitoarea majoritate a cazurilor forma patrata), formata din Nreg pixeli. Fiecare
pixel este identificat de vectorul coordonatelor sale (coordonata de linie, coordonata de
coloana), grupate n vectorul de pozitie x.

7.1.1

Statistici de ordinul unu

Functia de densitate de ordinul unu asociata valorilor din regiunea R este chiar histograma
nivelelor de gri din regiune si masoara probabilitatea de aparitie n interiorul regiunii considerate a diferitelor nivele de gri posibile (2.9). Dupa cum s-a aratat n sectiunea 2.2,
histograma h caracterizeaza continutul regiunii din punctul de vedere al proportiei de
amestec a diferitelor valori ale nivelelor de gri si deci poate fi folosita pentru identificarea
texturilor. De asemenea, se pot folosi pentru caracterizare momente statistice necentrate,
centrate (se poate urmari n [11] o prezentare mai detaliata a semnificatiei momentelor
statistice ale unei variabile aleatoare) sau absolute, calculate pe baza histogramei h.
(k)

m
M

(k)

M
X
1 X
k
=
f (x) =
ik h(i);
Nreg xR
i=0

(7.1)

M
X
1 X
k
=
(f (x) m1 ) =
(i m1 )k h(i);
Nreg xR
i=0

(7.2)

c(k) =
M

M
X
1 X
|f (x) m1 |k =
|i m1 |k h(i), k impar.
Nreg xR
i=0

(7.3)

Caracterizarea texturilor prin momente nu este suficient de precisa; au fost sintetizate


texturi (perceptual diferite) ale caror momente statistice sunt identice pana la ordinul 4
sau 5 [12]. De asemenea, trebuie remarcat faptul ca atat folosirea momentelor, cat si a
histogramei, nu poate sa surprinda informatia de plasament spatial a valorilor, ntrucat
histograma nu ia n considerare pozitia pixelilor n interiorul regiunii, fiind deci posibile
texturi vizual diferite dar avand aproape acceasi histograma, asa cum este prezentat si n
exemplul din figura 7.2.

7.1.2

Statistici de ordinul doi

Functiile de densitate de probabilitate de ordin superior (doi si mai mare decat doi) iau
n considerare informatia de pozitie spatiala a diferitelor valori posibile, prin impunerea
unei legaturi de plasament spatial al setului de pixeli a carui probabilitate de aparitie este
masurata n regiunea R.
141

h(i)
0.01

0.005

0
0

50

a)

100

150

200

250

b)

Figura 7.2: Insuficienta histogramei (densitate de probabilitate de ordinul unu) pentru discriminarea texturilor: a) mozaic format din doua texturi: n partea superioar
a imaginii
este o imagine a unei tes
aturi (textura din 7.1 a)), n partea inferioar
a a imaginii este
un fragment dintr-un ornament de plafon (castelul Versailles, Franta), b) histogramele
texturilor din figura a): pentru partea de sus a imaginii (linie punctata) si, respectiv,
pentru partea de jos a imaginii (linie continu
a) diferentele dintre cele doua histograme
sunt minimale (10%), desi texturile pentru care au fost calculate sunt foarte diferite.
Matricea de coocurent
a
Matricea de coocurenta [25], [12], [33] este functia de densitate de probabilitate de ordinul
doi corespunzatoare valorilor din regiunea studiata, avand ca elemente probabilitatile de
aparitie n regiunea considerata a unor perechi de valori de nivele de gri. Pentru regiunea
R a texturii studiate si pentru un vector de translatie spatiala t dat (ce defineste separatia
spatiala dintre cele doua elemente ale perechii de pixeli a caror probabilitate de aparitie se
masoara), componentele matricii de coocurenta se definesc pentru toate perechile posibile
de nivele de gri (a, b), ca (7.4):
Mt (a, b) = Card {(x, x + t) R R | f (x) = a si f (x + t) = b} /Card {(x, x + t) R R} .
(7.4)
Deci Mt (a, b) este probabilitatea de aparitie n regiunea R a perechii de pixeli separati de
vectorul de translatie t, care au respectiv valorile nivelelor de gri a si b. Se remarca faptul
ca matricea de coocurenta astfel definita verifica conditia de normare a unei densitati de
probabilitate de ordinul doi:
XX
Mt (a, b) = 1.
(7.5)
a

Pentru o imagine cu M nivele de gri, matricea de coocurenta va fi o matrice patrata de


dimensiune M M . In practica, pentru reducerea calculelor, numarul de nivele de gri
este redus la 8 sau la 16, printr-o tehnica convenabila (n general este suficienta eliminarea
ultimilor biti din cuvantul de reprezentare binara a nivelului de gri). In concluzie, pentru
o aceeasi textura, matricea de coocurenta depinde de regiunea considerata, vectorul de
142

translatie si modalitatea de reducere a nivelelor de gri. Figura 7.3 prezinta un exemplu


de calcul a matricii de coocurenta pentru o regiune extrasa dintr-o textura.
4
4
4
4
3
3
3
3
0
0
0
0
0
0
0

0
0
0
0
0
0
0

0
0
3
72
4
72

0
0
0

a)
0 0
0 0
5
0
72

16
72
8
72
1
72

0
c)

8
72
6
72
4
72
2
72

0
0
0
1
72
5
72
3
72
1
72

0
0
0
0

3
4
4
4
4
4
3
3
0
0
0
0
0
0
0

1
72
2
72
2
72

3
4
4
4
5
5
4
4
0
0
0
0
0
0
0

4
4
4
4
5
5
5
5

4
4
4
4
4
5
6
6

0
0

b)
0 0
0 0
2
0
70

6
70
3
70

0
0
0

25
70
3
70

5
5
4
4
4
5
6
7

7
6
6
5
5
5
6
7

4
70
12
70
2
70

0
0 0
d)

7
7
6
6
6
5
5
6
0
0
0
0
4
70
4
70
2
70

5
5
5
5
5
4
4
4

4
4
4
4
4
3
3
3

0
0
0
0
0
2
70
1
70

Figura 7.3: Exemplu de calcul a matricii de coocurent


a: a) regiune dintr-o textura, recuantizat
a pe 7 nivele de gri prin truncherea reprezent
arii binare a nivelelor de gri; b) valorile
re-cuantizate ale nivelelor de gri pentru regiunea a); c) matricea de coocurent
a calculat
a
pentru vectorul de translatie t = (0, 1); d) matricea de coocurent
a calculat
a pentru vectorul
de translatie t = (1, 0). .
Avand n vedere influenta importanta a alegerii vectorului de translatie asupra matricii
de coocurenta, unii autori au propus utilizarea unei matrici de coocurenta compozite,
care sa integreze influenta translatiilor dupa mai multe directii. Astfel, n [25] matricea
de coocurenta utilizata efectiv pentru caracterizarea texturii este media aritmetica a matricilor de coocurenta calculate pentru vectorii de translatie unitari, orientati pe directiile
verticala si orizontala:

M (a, b) = 0.25 M(0,1) (a, b) + M1,0 (a, b) + M(1,0) (a, b) + M(0,1) (a, b) .
(7.6)
Distinctia ntre texturi diferite poate fi facuta n primul rand prin inspectia (examinarea
de ansamblu) a matricii de coocurenta, printr-o vizualizare tridimensionala a matricii (de
exemplu, pentru o zona R uniforma, matricea de coocurenta are o singura componenta
nenula, indiferent de vectorul de translatie ales). Pentru o comparatie numerica au fost
definiti [25] mai multi indici de natura statistica (omogenitate, uniformitate, entropie,
contrast, etc.) ce caracterizeaza distributia componentelor matricii de coocurenta.
Parametrul de uniformitate (sau energie) [25] (numit omogenitate n [12]) este definit ca:
XX
U=
Mt2 (a, b).
(7.7)
a

Cum matricea de coocurenta este o densitate de probabilitate de ordinul doi, verificand ca


urmare conditia de normare a unei distributii de probabilitate (7.5), expresia uniformitatii
143

U va fi maxima pentru o distributie uniforma a probabilitatilor de aparitie a diferitelor


perechi de nivele de gri (a, b); cu cat anumite perechi de nivele de gri sunt mai prezente
n regiunea de textura considerata, cu atat mai mica va fi valoare parametrului U din
(7.7). Deci parametrul U va avea valori cu atat mai mici cu cat prezenta n textura a unei
perechi de nivele de gri este mai pregnanta si textura prezinta o uniformitate a nivelelor
de gri sau o repetitie a nivelelor de gri pe directia translatiei t.
Parametrul de entropie este definit de:
XX
H=
Mt (a, b) log (Mt (a, b) + (Mt (a, b))) .
a

(7.8)

Entropia este mare daca o aceeasi pereche de pixeli apare de multe ori si este mica daca
toate perechile de nivele de gri sunt uniform si slab reprezentate. Entropia H este deci
un indicator al dezordinii ce caracterizeaza textura.
Parametrul de corelatie este definit ca o covariatie statistica normalizata:
B=

1 XX
(a a )(b b )Mt (a, b)
a b a b

(7.9)

In expresia (7.9) a si b sunt valorile medii pe regiunea R considerata a nivelelor de gri


ce corespund pixelilor situati pe prima pozitie si respectiv a doua pozitie a perechii, iar
a si b sunt dispersiile corespunzatoare In principiu, pentru un vector de deplasare mic,
valorile mediilor si dispersiilor nivelelor de gri sunt extrem de similare, putandu-se face
aproximarea a = b = si a = b = .
Parametrul de contrast [25] este definit ca:
C=

XX
a

(a b)2 Mt2 (a, b).

(7.10)

Dupa cum se remarca n expresia de definitie (7.10), fiecare termen al matricii de


coocurenta este ponderat cu distanta la diagonala (deci cu o cantitate direct proportionala
cu diferenta dintre cele doua nivele de gri ce compun perechea). Astfel se obtine un indice
ce corespunde interpretarii uzuale a contrastului si anume, are o valoare mare atunci cand
termenii departati de diagonala principala a matricii au valori mari (adica atunci cand
n regiunea de textura considerata exista numeroase treceri de la pixeli luminosi la pixeli
ntunecati).
Parametrul de omogenitate locala [12] (numit moment invers al diferentei n [25]) este
definit de:
XX
1
Mt (a, b)2 .
(7.11)
O=
2
1
+
(a

b)
a
b
Acest parametru are o actiune inversa contrastului C din (7.10), ntrucat sunt favorizate
contributiile valorilor apropiate de diagonala principala a matricii de coocurenta. Aceasta
nseamna ca parametrul O va avea valori mari pentru texturile ce prezinta o variatie mica
a nivelelor de gri n sensul translatiei t. Acest parametru este asemanator cu ceea ce este
definit n [12] sub numele de uniformitate (7.12) sau directivitate (7.13) (parametri ce au
valori cu atat mai importante cu cat un acelasi nivel de gri apare de mai multe ori pe
144

4
4
4
4
3
3
3
3

3
4
4
4
4
4
3
3

3
4
4
4
5
5
4
4

4
4
4
4
5
5
5
5

4
4
4
4
4
5
6
6

5
5
4
4
4
5
6
7

7
6
6
5
5
5
6
7

7
7
6
6
6
5
5
6

5
5
5
5
5
4
4
4

4
4
4
4
4
3
3
3

0
0
5
13
12
5
1

a)

0
0
3
2
1
1
2

0 0 0 0
0 0 0 0
0 0 0 0
0 0 1 2
0 0 0 1
1 0 0 0
0 0 0 0
b)

0
0
2
0
2
3
3

0
0
1
1
3
2
1

0
0
1
3
1
1
0
c)

0
0
1
2
1
0
0

0
0
0
3
1
0
0

Figura 7.4: Exemplu de calcul a matricii de izosegmente pentru regiunea de textura prezentat
a n figura 7.3 b): a) valorile din regiunea texturat
a; b) matricea de izosegmente orizontale; c) matricea de izosegmente verticale.
directia de translatie):
U2 =

Mt2 (a, a);

(7.12)

Mt (a, a).

(7.13)

D=

X
a

Matricea de izosegmente
Un izosegment de nivele de gri [19] (numit uneori si plaja sau runlength) este o multime
liniara, de lungime maxima, formata din pixeli consecutivi ce au acelasi nivel de gri,
orientata pe o anumita directie. Lungimea unui izosegment este numarul de pixeli ce
formeaza respectiva multime. Pentru o orientare (directie) fixata , se poate determina
o matrice de izosegmente, ale carei elemente M (a, b) reprezinta numarul de izosegmente
de lungime b data, formate din pixeli de un nivel de gri a dat si orientate pe directia .
Matricea rezultata are M linii (egal cu numarul de nivele de gri din imagine) si un numar
de coloane N , egal cu lungimea maxima a izosegmentelor pe directia considerata. Figura
7.4 prezinta un exemplu de calcul a matricilor de izosegmente.
La nivel global, caracteristicile regiunii R sunt numarul de izosegmente prezente n
regiune, Niz , si numarul de pixeli din regiune, Nreg .
Niz =
Nreg =

n
M
1 X
X
a=0 b=1
n
M
1 X
X

M (a, b);

(7.14)

bM (a, b).

(7.15)

a=0 b=1

Matricea de izosegmente reprezinta functia de densitate de probabilitate a setului de


variabile aleatoare valoare a izosegmentelor lungime a izosegmentelor, probabilitatea
de aparitie a unui izosegment avand o valoare a si o lungime b impuse fiind data de:
P (a, b) =

M (a, b)
.
Niz

145

(7.16)

Aspectul matricii de izosegmente este caracteristic unui anumit tip de textura; ca si pentru
matricea de coocurenta se pot defini diferite marimi caracteristice. Descriptorii de baza
ai matricii de izosegmente au fost definiti n [19] si sunt prezentati n ecuatiile (7.17):
RF 1 proportia izosegmentelor scurte, RF 2 proportia izosegmentelor lungi, RF 3
heterogenitatea (non-uniformitatea) valorilor, RF 4 heterogenitatea (non-uniformitatea)
lungimilor, RF 5 proportia izosegmentelor.

M 1 n
1 XX
M (a, b)
RF 1 =
;
Niz a=0 b=1
b2
M 1 n
1 XX
RF 2 =
b2 M (a, b);
Niz a=0 b=1
n
!2
M 1

1 X X
RF 3 =
M (a, b) ;
Niz a=0 b=1
M 1
!2
n
X
1 X
RF 4 =
M (a, b) ;
Niz b=1 a=0

RF 5 =

Niz
.
Nreg

(7.17a)
(7.17b)
(7.17c)

(7.17d)
(7.17e)

O prima extensie a setului de parametri Galloway prezentati n (7.17) a fost propusa n


[10] prin adaugarea a doi parametri de masura a proportiei de valori mici si respectiv,
importante, definiti n (7.18): proportia nivelelor de gri mici LGRE (Low Gray-level
Run Emphasis) si proportia nivelelor de gri importante HGRE (High Gray-level Run
Emphasis). Este evident ca acesti parametri provin din simetrizarea parametrilor RF 1
(7.17a) si RF 2 (7.17b) definiti pentru lungimea izosegmentelor.

M 1 n
1 XX
M (a, b)
LGRE =
;
Niz a=0 b=1
a2
M 1 n
1 XX
HGRE =
a2 M (a, b).
Niz a=0 b=1

(7.18a)
(7.18b)

De altfel, principiul dupa care au fost introdusi parametrii RF1, RF2, LGRE si HGRE
este ponderarea numarului de izosegmente de o anumita valoare si lungime, M (a, b),
printr-un factor ce depinde direct (respectiv invers) proportional de patratul masurii de
interes (lungime a izosegmentului sau valoare a izosegmentului).
O noua extensie a multimii de parametri este propusa de [17], prin ponderarea atat
a lungimilor izosegmentelor cat si a valorilor izosegmentelor. Cei patru noi parametri
146

propusi sunt definiti de:


M 1 n
1 XX
a2 b2 M (a, b);
LRHGE =
Niz a=0 b=1

(7.19a)

M 1 n
1 XX
b2
LRLGE =
M (a, b);
Niz a=0 b=1 a2

(7.19b)

M 1 n
1 XX
SRHGE =
b2 a2 M (a, b);
Niz a=0 b=1

(7.19c)

M 1 n
1 XX
1
SRSGE =
M (a, b).
2
Niz a=0 b=1 a b2

(7.19d)

Semnificatia acestor parametri este de proportie a izosegmentelor lungi, cu valoare importanta LRHGE (Large Run, High Gray-level Run Emphasis), proportie a izosegmentelor
lungi cu valoare mica LRLGE (Large Run, Low Gray-level Run Emphasis), proportie
a izosegmentelor scurte cu valori importante SRHGE (Small Run High Gray-level Run
Emphasis) si proportie a izosegmentelor scurte cu valori mici, SRLGE (Small Run Low
Gray-level Run Emphasis).
Corelograma
Corelograma, definita n [30], [29], este o alta masura a aranjamentului spatial a valorilor
pixelilor dintr-o regiune. Corelograma masoara probabilitatile de aparitie a diferitelor
perechi de valori de nivele de gri (a, b) pentru toate perechile de pixeli din regiunea R ce
sunt situati la o distanta d impusa.
Cd (a, b) = Card {(x1 , x2 ) R R | dist(x1 , x2 ) = d, f (x1 ) = a si f (x2 ) = b} /
(7.20)
Card {(x1 , x2 ) R R | dist(x1 , x2 ) = d} .
Evident, corelograma depinde n mod fundamental de alegerea metricii dupa care se calculeaza distanta. Dimensiunea corelogramei este aceeasi cu a matricei de coocurenta;
corelograma este o matrice patrata cu numar de linii egal cu numarul de nivele de cuantizare a nivelelor de gri din imagine. In practica, corelograma este calculata pentru un set
de mai multe distante.
Autocorelograma este un caz particular al corelogramei, n care se masoara probabilitatea
de aparitie a perechilor de pixeli de aceeasi valoare, separati de o distanta d impusa. Autocorelograma este un vector, al carui numar de elemente este numarul de nivele de
cuantizare a nivelelor de gri din imagine:
Cd (a) = Card {(x1 , x2 ) R R | dist(x1 , x2 ) = d, f (x1 ) = a si f (x2 ) = a} /
Card {(x1 , x2 ) R R | dist(x1 , x2 ) = d} .

7.2

(7.21)

Caracterizarea n domeniul spectral

Caracterizarea texturilor n domeniul spectral se bazeaza pe proprietatea transformarilor


(integrale) unitare de a transpune, fara pierderi, informatia vizuala continuta n dome147

niul spatial al imaginilor ntr-un alt domeniu, echivalent, numit domeniu al frecventelor
spatiale (sau domeniu spectral), dupa cum s-a discutat si n capitolul ??. Caracteristicile
de variatie a valorilor n domeniul spatial se regasesc, ntr-o forma modificata (depinzand
de tipul transformarii unitare utilizate) n domeniul spectral. De exemplu, daca este sa
ne referim numai la spectrul rezultat n urma aplicari transformatei Fourier, frecventele
(spatiale) nalte pot fi folosite pentru detectia contururilor, frecventele ce concentreaza
energie corespund unor structuri periodice n domeniul spatial, iar aranjarea liniara a unor
maxime energetice poate sa indice o anumita directie predominanta dupa care sunt orientate componente din imagine [64], [33]. Astfel se structureaza zone de interes n domeniul
spectral, n care este posibila identificarea unor caracteristici de variatie spatiala a valorilor din textura prin masurarea energiei spectrale corespunzatoare. Zonele de interes
din spectru sunt extrase cu ajutorul unor seturi de masti (aperturi) definite convenabil.
Dar aceasta operatie nu este nsa altceva decat filtrarea liniara a texturii dupa un set de
filtre liniare a caror functie de transfer corespunde mastilor de frecventa dorite, ceea ce
nseamna ca descrierea unei texturi n domeniul spectral se realizeaza echivalent prin filtrarea acesteia cu un banc de filtre liniare si masurarea unei energii a raspunsului acestora
[49].
Mastile de baza folosite pentru masurarea caracteristicilor energetice ce definesc textura
sunt de doua feluri (reprezentate n figura 7.5) [33]: masti inelare simetrice, de tip trece
banda, a caror parametri de definitie sunt largimea inelului (benzii de trecere) si raza
inelului (pozitionarea frecventei centrale de trecere), masti ce masoara concentratia de
energie pe diferite zone ale spectrului si masti orientate, de forma unor sectoare circulare,
ai caror parametri de definitie sunt orientarea si largimea sectorului circular, masti ce
masoara caracteristicile de orientare din textura si identifica directiile predominante. In
mod clasic, texturile se caracterizeaza prin folosirea a 7 masti inelare si 4 masti de tip
sector (setul complet de masti este reprezentat n [49]).

a)

b)

c)

d)

Figura 7.5: M
asti de caracterizare a texturilor n domeniul spectral: a), b) masti de tip
inel avand diferite raze (frecvente centrale ale benzii de trecere); c) d) masti de tip sector,
av
and orientarile 0 si /4. Profilul sectiunii mastilor este gaussian.

Ideea de a masura atat repartitia unghiulara cat si cea de frecventa a energiei texturii se
regaseste si n metoda de caracterizare a texturilor prin filtrare cu un banc de filtre Gabor
[49], inclusa si ca unul dintre descriptorii texturali n standardul MPEG-7 [2], Filtrul
Gabor este un filtru trece banda, a carui functie de transfer este de tip gaussian; functia
sa pondere este tot o gaussiana, modulata cu o componenta cosinusoidala ce corespunde
148

frecventei centrale (f0 ) a benzii de trecere.

h(k, l) = cos(2f0 k) exp

k2
l2
+
x2 y2

(7.22)

Modificarea frecventei centrale f0 face ca filtrul sa selecteze din spectrul texturii o zona
corespunzatoare unor frecvente mai joase (f0 mic) sau mai ridicate (f0 mare), ceea ce
corespunde evaluarii n textura a unor trasaturi mai grosiere, respectiv detalii mai fine,
ceea ce este echivalent cu analiza unor versiuni scalate ale texturii considerate. Toate
filtrele Gabor ce sunt definite cu o aceeasi frecventa centrala f0 analizeaza informatia din
textura la o aceeasi scala.

a)

b)

c)

Figura 7.6: Masti Gabor (functii de transfer) de caracterizare a texturilor n domeniul


spectral: a) filtru cu 1 scal
a si 1 orientare; b) banc de filtre cu 3 scale si 4 orientari; c)
banc de filtre cu 5 scale si 2 orientari
O alta metoda clasica de analiza energetica a texturilor se bazeaza pe calculul unui vector
caracteristic al entropiilor energetice pentru benzi de frecventa de tip trece jos, cu banda
de trecere din ce n ce mai mare. Pentru fiecare banda de frecventa energiile spectrale
se normeaza la suma acestora, si se calculeaza entropia valorilor rezultate; la randul ei,
acesta entropie se normeaza la entropia maxim posibila pentru o zona spectrala de energie
uniforma.

7.3

Modelarea texturilor

Termenul de model [27] se foloseste pentru orice ipoteza ce se poate aplica pentru a
explica sau a descrie legile ascunse (necunoscute) ce se presupune ca guverneaza sau
constrang generarea unor date de interes. Aceasta nseamna ca se presupune adevarat si
cunoscut un sistem de ecuatii (dependente de parametri) ce caracterizeaza desfasurarea
fenomenului fizic studiat si se ncearca gasirea unui set de parametri particulari care duc la
aproximarea optima a datelor reale prin cele generate de ecuatiile sistemului. Parametrii
astfel determinati vor constitui un mod de reprezentare comprimat si aproximativ al
desfasurarii fenomenului fizic studiat, putand fi utilizati fie pentru generarea unei forme
aproximative a acestuia, fie pentru compararea sa cu alte procese caracterizate ntr-un
149

mod similar. In cazul particular al texturilor, modelarea nseamna a presupune ca valorile


functiei imagine, ntr-o regiune R oarecare, pot fi generate pe baza unui model, parametrii
modelului urmand a caracteriza textura.
In cele ce urmeaza vom prezenta notiunile de baza legate de doua tipuri de modele des
folosite n analiza si prelucrarea imaginilor: modelele statistice (de tip autoregresiv) si
modelele de tip fractal.

7.3.1

Modele statistice

Folosirea modelelor statistice (stochastice) provine din ideea fundamentala a lui Yule,
potrivit careia o serie de timp (deci valorile unei realizari particulare ale unui proces
aleator de timp discret) cu observatii puternic corelate poate fi generata aplicand unui
filtru liniar o serie de esantioane statistic independente (ce provin, de cele mai multe ori,
dintr-un proces de zgomot alb, gaussian) [27]. In domeniul suportului valorilor procesului
aleator relatia dintre intrarea si iesirea filtrului liniar se poate exprima n modul cel mai
general prin aceea ca iesirea la un moment dat este suma dintre o combinatie liniara
a valorii curente si a unor valori anterioare ale intrarii (procesului de zgomot alb) si o
combinatie liniara a valorilor anterioare ale iesirii. In functie de alegerea combinatiilor
liniare, sunt posibile trei tipuri de modele [27], [11]: autoregresiv (AR), medie glisanta
(MA) si combinat (ARMA). Ordinul modelului este determinat de numarul de termeni
utilizati n cele doua combinatii liniare de valori anterioare de la intrare (Nin ) si respectiv
iesire (Nout ).
In cele ce urmeaza ne vom interesa n mod particular de modelele autoregresive (AR),
pentru care Nin = 0 (deci nu se folosesc valori anterioare ale intrarii) si Nout 1 (deci
se foloseste cel putin o valoare anterioara de la iesire). Daca notam cu y(n) valorile de
la iesirea filtrului liniar (modelului) si cu (n) valorile procesului de zgomot alb de la
intrarea modelului, ecuatia ce descrie modelul AR de ordin Nout = K este:

y(n) = (n) +

K
X

wi y(n i) cu wi R.

(7.23)

i=1

Se observa deci ca valoarea curenta a iesirii modelului, y(n) depinde de o combinatie liniara
de valori ale iesirii modelului, adica y este regresat peste el nsusi (autoregresat), de unde
si numele modelului. Ecuatia (7.23) de definitie a modelului AR poate fi nsa interpretata
si prin posibilitatea de a realiza o descriere compacta (dar aproximativa) a desfasurarii
valorilor y(n) pe baza doar a coeficientilor wi . Aceasta interpretare a modelului statistic
descris de ecuatia (7.23) este numita analiza.
Pentru analiza AR a unui semnal dat (pentru care valorile y(n) sunt cunoscute), din
ecuatia (7.23) trebuie calculate cele K necunoscute wi . O varianta posibila de rezolvare
este folosirea ecuatiilor Yule-Walker (a caror prezentare detaliata poate fi regasita n [27]
sau [11]). Ecuatiile Yule-Walker se bazeaza pe utilizarea valorilor functiei de autocorelatie
a semnalului y, Ry (k), care se presupun posibil de masurat (evaluat experimental). Mai
150

x
x
x
x
x
x
x
x
x
x
x
x

x
x
x
x
x
x
x
x
x
x
x
x

x x x x
TRECUT
x x x x
x x x x
x x x x
x x x x
x x x x
x x x x
x x x x
x x x x
x x x x
x x x x

x x x
x x
x x x
x x x
x x x
x x x
x x x
x x x
x x x
x x x
VIITOR
x x x

x
x
x
x
x
x
x
x
x
x

x
x
x
x
x
x
x
x
x
x
x
x x

x
x
x
x
x
x
x
x
x
x
x
x

Figura 7.7: Ordonarea pixelilor dintr-o regiune prin baleiajul uzual: pixelii predecesori
(trecutul semnalului de imagine) si pixelii urm
atori (viitorul semnalului de imagine)
unui pixel oarecare.
precis, avem:
Ry (k) +
Ry (0) +

K
X
i=1
K
X

wi Ry (k i) = 0, cu k = 1 . . . M

(7.24a)

wi Ry (i) = 2 .

(7.24b)

i=1

Pentru texturi, ca si pentru imagini n general, corelatia existenta ntre valorile pixelilor
nvecinati este semnificativa, ceea ce justifica ideea de a utiliza un model Ar pentru
caracterizare. Diferenta esentiala fata de cele discutate anterior provine din faptul ca
semnalul de imagine este un semnal bidimensional si aplicarea imediata a relatiilor (7.24)
nu este posibila. Exista, desigur, posibilitatea de a rescrie ecuatiile modelului AR si
ecuatiile Yule-Walker pentru cazul unui semnal cu suport bidimensional dar, cel mai
simplu (din punctul de vedere al implementarii) este de a transforma (local) semnalul
de imagine ntr-un semnal unidimensional. Aceasta transformare este echivalenta cu a
introduce o ordonare a valorilor din imagine, pentru fiecare pozitie (pixel) definindu-se
un trecut si un viitor (aceste nume fiind asociate prin analogie cu suportul temporal
al semnalului unidimensional), adica pozitiile din suportul spatial al imaginii ce sunt
considerate anterioare, si respectiv ulterioare pozitiei curente. De fapt, aceasta ordonare
nu face altceva decat sa precizeze modul de baleiere a regiunii R din imagine n care se
face analiza; daca baleierea este uzuala (pe linii de la stanga la dreapta si de sus n jos),
structura de pixeli predecesori si respectiv de pixeli urmatori ai unui pixel este prezentata
n figura 7.7.

7.3.2

Modele fractale

Notiunea de multime fractala (si conceptul asociat de geometrie fractala) ofera cadrul matematic pentru studiul a numeroase forme complexe si neregulate ce apar n natura. Mandelbrot [37] a demonstrat ca multe suprafete fractale sunt generalizari ale miscarii browniene (si deci procese statistice) si deci rezulta ca un caz limita al proceselor ce modifica
151

forma local, n mod aleator. Pentland [45] a aratat apoi ca majoritatea suprafetelor
naturale sunt fractali spatiali izotropi si ca imaginile vizuale de intensitate ale acestor
suprafete sunt de asemenea fractali. Rezulta astfel posibilitatea de a caracteriza o textura
prin atributele sale de geometrie fractala [45], [12].
Caracteristica fundamentala a unui fractal (considerat ca o multime marginita din spatiul
n-dimensional Rn ) este autosimilaritatea. O multime A se numeste autosimilara daca
poate fi reprezentata prin reuniunea a N copii ale ei nsasi, distincte (eventual suprapuse)
si scalate omogen cu un factor r . Dimensiunea fractala a multimii A (numita uneori
si dimensiune de similaritate), D, este definita de raportul logaritmilor numarului de
submultimi si a factorului de scala:
D=

log N
sau, echivalent, N rD = 1.
log r

(7.25)

Aceasta caracteristica de compunere/descompunere a unui fractal poate fi exemplificata


evident prin fractali generati n mod artificial, precum curba Koch (fulgul de zapada
Koch) sau triunghiul Sierpinski, prezentate n figura 7.8. Curba Koch se obtine prin
transformarea unui segment de dreapta ntr-o linie franta prin nlocuirea treimii sale
centrale cu doua segmente de dreapta ce sunt laturile triunghiului echilateral construit
avand treimea centrala lipsa ca baza, procedura repetandu-se pentru fiecare segment
de dreapta nou construit. Triunghiul Sierpinski se obtine prin decuparea dintr-o placa
triunghiulara plana a triunghiului determinat de centrele laturilor, procedura repetanduse pentru fiecare triunghi nou rezultat.
Dimensiunea fractala a unei multimi autosimilare este ntotdeauna diferita de dimensiunea
sa topologica (1 n cazul curbei Koch sau 2 n cazul triunghiului Sierpinski). Suprafetele
fractale naturale nu prezinta n general aceasta autosimilaritate simpla, determinista, ci
sunt caracterizate de o autosimilaritate statistica, patile scalate fiind similare multimii A
n sens statistic.
Desi definitia dimensiunii fractale este simpla si imediata, n practica este adesea dificila
estimarea acesteia n mod direct, folosindu-se de cele mai multe ori o aproximare numita
box dimension, obtinuta printr-un algoritm (numit box counting) ce copiaza procedeul de masurare a unei dimensiuni cu o unitate de masura de dimensiune fixa, impusa.
Esenta unei asemenea masuratori este de a stabili de cate ori elementul de masura este
inclus (fara suprapuneri) n multimea ce se masoara, sau, echivalent, de cate elemente
este nevoie pentru a acoperi complet multimea de masurat. Sa presupunem ca multimea
initiala 3 A Rn este acoperita cu un hiper-paralelipiped n-dimensional a carui dimensiune maxima este Kmax . Deci, pentru o unitate de masura de dimensiune Kmax , numarul
de cutii este 1. Daca se foloseste o unitate de masura mai mica (deci mai precisa), de
dimensiune K (care este o fractiune r din Kmax , K = rKmax ), vor fi necesare N (K) unitati
(sau cutii) pentru acoperirea multimii A. Dar, daca A este un fractal si are proprietatea
de autosimilaritate, legatura dintre factorul de scala si numarul de elemente de masura
necesare pentru acoperire este stabilit de dimensiunea fractala D prin relatia (7.25), cu
N = N (K). Atunci, r se cunoaste (ca alegere a factorului de scalare a unitatii de masura
K), iar N (K) se masoara (prin numarare, de unde provine si denumirea algoritmului de
3

In cazul unei imagini cu nivele de gri, multimea A va fi o multime n spatiul tridimensional (doua
coordonate spatiale si a treia coordonata nivelul de gri), formata din puncte de coordonate discrete.

152

a)

b)

Figura 7.8: Exemple de construire a unor fractali n plan: a) curba Koch (N = 4, r = 1/3,
D = 1.262); b) Triunghiul Sierpinski (N = 3, r = 1/2, D = 1.585).
numarare a cutiilor).
log N (L) = D log r = D log Kmax D log K.

(7.26)

Calculand valoarea N (K) pentru mai multe valori ale lui K, dimensiunea fractala cautata
D poate fi determinata ca panta aproximarii liniare optimale a lui log K n functie de
log N (K). Modul cel mai simplu de a estima D este deci de a diviza spatiul n-dimensional
ntr-o retea de hiper-paralelipipede de dimensiune maxima K si de a determina numarul
de asemenea hiper-paralelipipede nevide (care contin deci puncte din multimea A).
Varianta de algoritm prezentata anterior este extrem de simpla si de la ea se poate dezvolta
o varianta de algoritm mai precis. Sa notam cu PK (i) probabilitatea de a avea i puncte din
multimea A ntr-un hiper-paralelipiped de dimensiune maxima K, centrat ntr-un punct
oarecare al spatiului. Pentru o dimensiune K fixata, probabilitatile PK (i) corespund unui
153

camp complet de evenimente, drept pentru care avem:


3

K
X

PK (i) = 1.

(7.27)

i=1

Daca ntreaga multime A (care n cazul texturilor corespunde ntregii imagini cu nivele
de gri avand N pixeli) este acoperita cu hiper-paralelipipede de dimensiune maxima
K, atunci numarul de hiper-paralelipipede ce contin n interior cate i puncte este N/i.
Numarul mediu de hiper-paralelipipede necesare pentru acoperirea imaginii va fi atunci:
3

N (K) =

K
X
N
i=1

PK (i) = N

K
X
1
i=1

PK (i)
= K D

(7.28)

Folosind acest mod de calcul, pentru o imagine de L C pixeli reprezentati pe M nivele


de gri, pseudocodul corespunzator acestui algoritm de determinare a dimensiunii fractale
este dat n tabelul 7.1.

pentru toate dimensiunile K considerate


pentru toate valorile i = 1, . . . K 3
PK (i) = 0
pentru toate pozitiile din suportul imaginii (l, c)
pentru toate dimensiunile K considerate
centreaza cubul de latura K n punctul (l, c, f (l, c))
numara punctele din R3 situate n interiorul cubului, i
actualizeaza PK (i) = PK (i) + 1/ ((L Kmax )(C Kmax ))
pentru toate dimensiunile K considerate
K3
P
PK (i)/i
N (K) =
i=1

estimeaz
a D din panta aproximarii liniare a lui log N (K) n functie de log K
Tabela 7.1: Pseudocodul corespunzator algoritmului de determinare a dimensiunii fractale
a unei texturi cu nivele de gri prin metoda cutiilor.

Numai dimensiunea fractala D este de obicei insuficienta pentru caracterizarea eficienta a


unei texturi [45], ntrucat exista texturi ce sunt vizual diferite, desi au aceeasi dimensiune
fractala. Parametrul de lacunaritate a fost introdus pentru a caracteriza masura n care
textura (sau multimea fractala) este densa sau rara. Pentru modelul prezentat anterior de
caracterizare a fractalilor prin acoperirea cu hiper-paralelipipede (cutii), lacunaritatea
se poate defini ca patratul raportului dintre dispersia si media variabilei aleatoare discrete
numar de puncte n interiorul cutiei de dimensiune K, caracterizata de probabilitatile
154

PK (i).
2

=
, cu

(7.29)

K
X

iPK (i),

i=1
3

K
X

i2 PK (i) 2 .

i=1

Pentru anumite clase particulare de fractali, dimensiunea fractala D si dimensiunea


topologica E sunt legate printr-un parametru numit coeficient Hurst, H, definit de
H = E + 1 D [45] (deci n cazul unei texturi cu nivele de gri modelata printr-o multime
fractala E = 3 si H = 4 D). Coeficientul Hurst masoara scaderea puterii semnalului cu
frecventa, n spectrul Fourier de putere, presupunand un spectru cu simetrie circulara si
cadere exponentiala. Astfel:
F(R)(f, ) ' f 2H .

(7.30)

In practica, estimarea dimensiunii fractale pe baza ecuatiei (7.30) este simpla: spectrul
Fourier de energie al regiunii R considerate este reprezentat n coordonate polare (f, )
si este masurata variatia energiei medii (mediata dupa un numar suficient de mare de
directii convenabil alese) cu frecventa f . Panta dreptei de aproximare a logaritmului
energiei dupa logaritmul frecventei polare este un estimat al dublului valorii coeficientului
Hurst.
log E

log f

a)

b)

Figura 7.9: a) Spectrul de energie Fourier al texturii reprezentate n figura 7.1 a); b)
reprezentarea la scar
a dublu logaritmic
a a energiei n functie de frecventa polar
a (linie
continu
a) si dreapta de aproximarea a acesteia (linie ntrerupt
a). Coeficientul Hurst este
H = 1.465, iar dimensiunea fractal
a este D = 2.535.

155

7.4

Concluzii

Tehnicile de descriere a texturilor ce au fost prezentate n acest capitol se bazeaza n


cea mai mare parte pe caracterizarea statistica. Fundamentul metodelor statistice este
extragerea din procesul studiat a unui numar suficient de mare de valori astfel ca sa se
realizeze un esantion statistic semnificativ pentru fenomenul studiat. Aceasta nseamna
deci ca exista o limita inferioara a numarului de pixeli din regiunea R caracterizata, sub
care marimile statistice nu mai sunt credibile (sau de ncredere). Aceeasi problema apare
si n cazul descrierii texturilor n domeniul spectral. In aceste conditii, segmentarea bazata
pe caracterizarea fiecarui pixel dintr-o imagine printr-un vector de trasaturi deduse din
parametri statistici estimati ntr-o vecinatate a pixelului, nu poate delimita corect zonele
situate la marginea regiunilor cu texturi diferite. De-a lundul acestor frontiere apar zone
de incertitudine, a caror grosime este determinata de jumatatea regiunii de analiza R.
De cele mai multe ori, caracterizarile statistice sau prin modele nu sunt suficient de eficiente din punctul de vedere al complexitatii de calcul, preferandu-se descrierea texturilor
n domeniul spectral, prin bancuri de filtre liniare.

156

Capitolul 8
Caracterizarea formelor si
contururilor plane
In mod general termenul de forma se refera la aspectul (sau nfatisarea, conturul, silueta)
unei figuri, n care nu se tine seama de dimensiunea ei [15]. Forma desemneaza structura
interna si externa a unui continut sau modul de organizare a elementelor din care se
compune un obiect. In analiza imaginilor ntelegem prin forma plana o multime de puncte
(pixeli) din suportul spatial al imaginii, reprezentand o singura componenta conexa (ceea
ce presupune n mod implicit binarizarea imaginii initiale si etichetarea acesteia). Functia
caracteristica a multimii binare ce este forma este chiar functia imagine: valoarea oricarui
punct al formei este 1, valoarea celorlalte puncte din suportul spatial al imaginii este 0.
Forma poate fi vazuta deci ca o functie binara de doua variabile (ce sunt coordonatele
spatiale), cu suport compact si conex f (x, y) : A R2 (sau Z2 ) {0, 1}.
Problema ce se doreste rezolvata este descrierea (sau caracterizarea) unei forme, adica
asocierea unei multimi de valori care sa o identifice si individualizeze (deci sa permita
deosebirea ei de alte forme). Multimea de valori cu care se realizeaza caracterizarea unei
forme se numeste multime a parametrilor de forma, sau, din perspectiva domeniului de recunoastere a formelor, trasaturi. Un parametru este o marime ale carei valori permit sa se
deosebeasca ntre ele elementele unei multimi [15] (n cazul nostru este vorba de multimea
formelor plane) si este o marime proprie caracteristica formei. Forme asemanatoare sunt
caracterizate de parametri de forma de valori apropiate; formele diferite prezinta diferente
mari ntre parametrii de forma asociati. Parametrii de forma compun un fel de fisa de
identitate a formei respective, pe baza careia aceasta forma poate fi recunoscuta n mod
unic.
Parametrii de forma (setul de numere prin care se doreste identificarea acesteia) sunt
definiti (dedusi) astfel ncat sa se asigure respectarea principiilor de invarianta la transformari geometrice afine uzuale (translatie, scalare, rotatie) si toleranta la zgomot (mici
variatii ale formei). Aceasta nseamna ca parametrii ce sunt asociati unei forme trebuie
sa nu se modifice, chiar daca forma este deplasata n plan, rotita, si schimba dimensiunea
sau este afectata de zgomot (puncte lipsa sau adaugate formei). In general, parametrii de
forma sunt scalari sau functii, dar sunt posibile si caracterizari ale formei prin simplificari
ale structurii acesteia.

157

Principiul dupa care vom realiza prezentarea si clasificarea diferitilor parametri de forma
este complexitatea (sau dimensionalitatea) acestora. Vom distinge astfel, n ordine descrescatoare a complexitatii, forme simplificate, functii (reale, de o variabila) si parametri
scalari.

8.1
8.1.1

Simplificarea formelor
Anvelopa convex
a

Pentru o forma plana A, anvelopa convexa (convex hull ) CH(A) este cea mai mica forma
plana convexa ce include forma data: A CH(A), cu CH(A) multime convexa. Putem
deci spune ca anvelopa convexa este forma cea mai asemanatoare formei initiale A, n care
concavitatile conturului initial au fost eliminate (sau umplute, pentru a folosi un cuvant
mai apropiat fenomenului). Anvelopa convexa a oricarei forme discrete este un poligon ale
carui varfuri sunt o parte dintre punctele situate pe frontiera formei. Metodele clasice de
determinare a acestor puncte sunt cunoscute sub numele de marsul Jarvis (Jarvis march)
si respectiv baleierea Graham (Graham scan) [43].
Pentru un set oarecare de puncte (care nu compun neaparat o forma plana, n sensul
definitiei), metodele amintite se bazeaza pe gasirea urmatorului punct de pe anvelopa
convexa ordonand toate punctele ramase n multime (dupa eliminarea punctelor ce au fost
deja plasate pe anvelopa convexa) dupa unghiurile pe care le fac segmentele de dreapta
ce le unesc cu punctul curent de pe anvelopa convexa. Unghiurile sunt calculate fata
de directia dreptei determinate de ultimele doua puncte de pe anvelopa convexa deja
determinata; urmatorul punct de pe anvelopa convexa va avea un unghi minim fata de
directia de referinta. Algoritmul este initializat ntr-un punct extrem al multimii, ce
apartine cu siguranta anvelopei sale convexe, de exemplu un punct pentru care una dintre
coordonatele de linie sau coloana are o valoare extrema (minima sau maxima); de obicei
algoritmul se initializeaza n primul punct al multimii ce este ntalnit prin baleiajul uzual
(de la stanga la dreapta si de sus n jos al imaginii). In cazul unei forme plane, multimea
de puncte pentru care se calculeaza anvelopa convexa se poate reduce doar la punctele
situate pe conturul formei.
O metoda aproximativa de construire a anvelopei convexe se bazeaza pe folosirea
operatiilor de morfologie matematica (deci operatii orientate pe forma), mai precis pe
utilizarea nchiderii morfologice (3.56). Dupa cum s-a aratat si n sectiunea 3.4, nchiderea
morfologica are proprietatea de a umple concavitatile de pe conturul multimii de prelucrat
(forma A initiala, n cazul nostru), daca aceste concavitati sunt mai mici decat elementul
structurant folosit. Este evident atunci ca prin cresterea dimensiunii elementului structurant folosit pentru nchidere se va asigura, la un moment dat, umplerea (deci eliminarea)
tuturor concavitatilor si obtinerea unei forme convexe, forma ce este o aproximare a anvelopei convexe a multimii A initiale. Elementul structurant folosit este un disc de raza
n, B(n). Putem scrie atunci ca:
CH(A) = lim (A B(n)) .
n

O exemplificare a functionarii acestei metode este prezentata n figura 8.2.


158

(8.1)

a)

b)

c)

Figura 8.1: Conturul anvelopei convexe a unor forme, suprapus peste formele originale.

a)

b)

c)

Figura 8.2: Exemplu de calcul aproximativ a anvelopei convexe a unei forme prin
nchidere: a) forma originala si contrul anvelopei convexe corecte; b) nchiderea morfologic
a a formei originale cu un element structurant disc dupa 17 iteratii; c) stabilizarea
nchiderii morfologice a formei originale cu un element structurant disc dupa 51 iteratii
anvelopa convex
a nu este corect calculat
a desi o parte din concavit
atile formei au fost
eliminate.

8.1.2

Aproximarea poligonal
a

Operatia de aproximare poligonala (poligonalizare) a contururilor este utila n vederea


interpretarii formelor. Un algoritm posibil de aproximare poligonala a unei curbe AB
este urmatorul (prezentat si n figura 8.3): pentru fiecare punct D al curbei se calculeaza
159

distanta la segmentul de dreapta AB. Se determina astfel punctul C caracterizat de


distanta la segmentul AB maxima. Fie dC aceasta distanta. Daca dC < T , unde T este
un prag ales de utilizator, atunci punctul C este retinut si se repeta procedura pentru cele
doua segmente rezultate AC si CB. In caz contrar, curba se nlocuieste cu segmentul AB.
Pragul T controleaza eroarea indusa de aproximarea poligonala. Alegandu-se un prag T
mare, contururile vor fi aproximate cu un numar redus de segmente, deci aproximarea
este mai brutala. Pentru un prag T mic, va rezulta un numar ridicat de segmente, dupa
cum se observa si din exemplul prezentat n figura 8.4.

C
B
dC

A
Figura 8.3: Exemplu de aproximare poligonal
a a unei curbe.

a)

b)

c)

d)

Figura 8.4: Exemplu de aproximare poligonal


a a conturului unei forme (frunza din figura
8.1 a)): a) aproximare poligonal
a cu 14 varfuri, generat
a de un prag de distant
a 15; b)
aproximare poligonal
a cu 20 de varfuri, generat
a de un prag de distant
a 10; c) aproximare
poligonal
a cu 22 de varfuri, generata de un prag de distant
a 5; d) aproximare poligonal
a
cu 53 de varfuri, generat
a de un prag de distant
a 2.

8.1.3

Skeletoane

Skeletonul (sau axa mediana) este o reprezentare bidimensionala simplificata, echivalenta,


a unei forme plane. In literatura de specialitate s-a propus un model intuitiv de descriere
160

a skeletonului (axei mediane), model care ofera si o sugestie de implementare a procedurii


de generare a acestuia: modelul focului din preerie [21]. Sa ne imaginam o suprafata de
preerie, acoperita omogen si izotrop cu iarba uscata. Intr-o zi fara vant, focul izbucneste
simultan din fiecare punct de pe marginea suprafetei de preerie; cum materialul inflamabil
(iarba uscata) se gaseste numai n interiorul regiunii, frontul de flacara se propaga spre
interiorul regiunii, consumand iarba uscata. La un moment dat, fronturile de flacara,
naintand din puncte opuse ale frontierei cu acceasi viteza, se ntanesc si focul se stinge,
nemaiavand material de combustie. Punctele de ntalnire a fronturilor de flacara (si
respectiv punctele de stingere a focului) se gasesc pe axa mediana (skeletonul) regiunii.
Construirea skeletonului unei forme plane implica deci generarea setului de puncte aflate
la distanta egala fata de punctele de pe frontierele cele mai apropiate ale regiunii.
Definirea matematica a skeletonului necesita definirea notiunii de disc maximal ntr-o
forma. Pentru o forma plana oarecare A, discul maximal se defineste ca discul de centru
x si raza r, Bx (r) ce este inclus n forma (8.2), fara a fi inclus de nici un alt disc inclus
formei (8.3).
Bx (r) A

(8.2)

Bx (r) Bx0 (r ) A

r = r0
x = x0

(8.3)

O forma poate avea mai multe discuri maximale, de dimensiuni diferite. Skeletonul unei
forme este multimea centrelor discurilor maximale ale acelei formei. Ca exemple simple,
skeletonul unui disc este centrul sau, skeletonul unui patrat este reuniunea diagonalelor
sale.

Skeletonul morfologic
Calculul skeletonului unei forme reprezentate n spatiul discret se poate face prin formula
Lantuejoul [54]; skeletonul formei A, SK(A), este format din reuniunea unui numar finit de
multimi de puncte (corespunzand centrelor discurilor maximale cu o aceeasi dimensiune),
numite seturi skeleton:
N[
max
SK(A) =
Sn (A)
(8.4)
n=0

Sn (A) = (A nB) (A nB) B

(8.5)

Ordinul Nmax corespunde momentului n care toate seturile skeleton succesive devin nule,
moment marcat de A Nmax B = ; elementul structurant nB fiind iterarea de n ori a
elementului structurant B, nB = B ... B (de n ori). Elementul structurant folosit
este n general un disc unitar (deci element structurant V4 sau V8 ). Figura 8.5 prezinta
skeletonul morfologic extras dupa formula (8.4) pentru cateva forme binare.
Skeletonul este invariant la translatie, nu este conex (chiar daca forma A este conexa),
nu este comutativ cu operatia de reuniune a formelor. Transformarea skeleton este idempotenta (SK(SK(A)) = SK(A)) si antiextensiva (SK(A) A). Seturile skeleton sunt
disjuncte doua cate doua (Si (A) Sj (A) = , i 6= j).
161

a)

b)

c)

Figura 8.5: Exemplu de skeleton a unor forme: a) patrat, (reprezentat n figura 8.9 a))
calculat cu element structurant V4 ; b) frunza de tei (reprezentat
a n figura 8.1 b)) calculat
cu element structurant V8 ; c) frunza de stejar (reprezentat
a n figura 8.9 c)) calculat cu
element structurant V4 .
Reconstructia formei din skeleton se face dupa formula
A=

N[
max

(Sn (A) nB)

(8.6)

n=0

Se pot realiza si reconstructii partiale (aproximari ale multimii A) prin neglijarea seturilor
skeleton ce reprezinta detaliile (acestea sunt seturile skeleton de ordin mic); aproximarea
de ordin k a formei nseamna deci ignorarea primelor k seturi skeleton din reconstructie:
fk =
A

N[
max

(Sn (A) nB)

(8.7)

n=k

Folosirea skeletonului morfologic pentru recunoasterea fomelor este restrictionata de puternica sa sensibilitate la zgomote (o mica schimbare a formei duce la o modificare semnificativa a skeletonului1 ), si de variatia la rotatia si scalarea obiectelor (pentru reprezentari
n spatiul discret). In acelasi timp, folosirea elementului structurant de tip disc unitar
aduce o puternica dependenta de metrica folosita n definirea sa (sa nu uitam ca ntr-un
spatiu discret, metrica Euclidiana nu este cea mai favorabila) si produce elemente structurante patrate (V8 ) sau n cruce (V4 ), ce pot fi cu greu interpretate ca discuri. Acestea
au condus la folosirea unei clase de elemente structurante care sa nu provina din notiunea
de metrica - elementele structurante generalizate [69].
1

Exemplul clasic este de a considera un disc fara centru; n acest caz skeletonul este o coroana circulara
situata la jumatatea razei.

162

a)

b)

c)

d)

Figura 8.6: Exemplu de reconstructii partiale (aproxim


ari) ale unei forme din skeletonul
morfologic reprezentat n figura 8.5 c): reconstructia de ordin: a) 20, b) 10, c) 1 d) 0
(reconstructie perfect
a a formei).
Skeletonul generalizat
Fie {Gi } un set de multimi, numit set generator. Elementele structurante generalizate
sunt definite recurent prin:
Bi = Bi1 Gi , i = 1, 2, ...

(8.8)

B0 = 0 n
In general se folosesc seturi generatoare avand o anumita periodicitate T (Gi+kT =
Gi , i, k Z). De exemplu, figura 8.7 prezinta constructia setului de elemente structurante generalizate rezultat dintr-un set generator cu perioada 1 (deci compus dintr-o
singura multime), E1 = {(1, 1), (1, 0), (0, 1), (0, 0)}.

Figura 8.7: Constructia unui set de elemente structurante generalizate.


Fiecarui punct al formei A i se va asocia ordinul (indicele) elementului structurant generalizat maximal centrat cu originea n punctul respectiv, construind astfel o harta de
distante (a se vedea si figura 8.8):

0, daca x
/A
D(x) =
(8.9)
n, daca (Bn1 )x A si (Bn )x * A
163

Figura 8.8: Harta de distante a unui obiect construit


a pe baza setului de elemente structurante generalizate prezentat anterior si skeletonul generalizat corespunz
ator.
Skeletonul generalizat [69] al unei forme este multimea originilor elementelor structurante
generalizate maximale n forma 2 :
n
o

GSK(A) = x A| BD(x)1 x * BD(y)1 y , x 6= y


(8.10)
Folosind harta de distanta anterioara, skeletonul generalizat obtinut este prezentat n
figura 8.8.

8.2
8.2.1

Functii asociate formelor plane


Semn
atura formei

Semnatura unei forme este o functie scalara de o variabila, asociata unei forme plane
ce este definita de distanta de la un punct de referinta fixat x0 (n general centrul de
greutate al formei) la fiecare punct de pe conturul (frontiera) formei. Aceasta distanta este
exprimata (sau masurata) n functie de unghiul la centru realizat de punctul curent de pe
contur cu axa orizontala de referinta, dx0 () sau n functie de abscisa curbilinie (lungimea
conturului cuprins ntre punctul curent si punctul n care axa de referinta intersecteaza
conturul), dx0 (). Semnatura formei este o reprezentare reversibila (cunoscand semnatura
se poate reconstrui conturul obiectului). Figura 8.9 prezinta semnaturile unor forme plane.
Este posibil ca, pentru formele concave, semnatura n functie de unghiul la centru sa nu
poata fi calculata, deoarece, pentru anumite unghiuri , intersectia dreptei de directie
cu conturul sa fie formata din mai multe puncte. Aceasta problema nu apare n cazul
semnaturii n functie de abscisa curbilinie. Ca o restrictie generala, n cazul folosirii
semnaturii bazate pe unghi, trebuie ca punctul de referinta x0 sa apartina nucleului
formei. Nucleul formei K, Ker(K) este definit prin:
Ker(K) = {x|y K, [xy] K}

(8.11)

unde [xy] semnifica segmentul de dreapta definit de punctele x si y. In cazul formelor


concave, nucleul formei este o multime vida.
2

Se poate remarca similitudinea cu definitia skeletonului, n care s-au nlocuit notiunile: centru al
discului cu origine a elementului structurant, disc cu element structurant generalizat, raza a discului cu
indice (ordin) al elementului structurant generalizat.

164

d()/dmax

0.95

0.9

0.85

0.8

0.75

0.7

0.65

0.1

0.2

0.3

0.4

a)

0.5

0.6

0.7

0.8

0.9

0.7

0.8

0.9

b)
d()/dmax

0.9

0.8

0.7

0.6

0.5

0.4

0.3

0.2

0.1

0.1

0.2

0.3

0.4

c)

0.5

0.6

d)

Figura 8.9: Exemple de semnaturi ale unor forme: a), b) semnatura unui patrat ca functie
de unghiul la centru; punctul de referint
a este centrul de greutate, axa de referint
a este
orizontala; c), d) semnatura unei forme oarecari (frunza) n functie de abscisa curbilinie;
punctul de referinta este centrul de greutate, axa de referint
a este orizontala .
Pentru compararea semnaturilor provenind de la forme diferite, suportul functiei
semnatura (calculata n functie de abscisa curbilinie) precum si domeniul de valori trebuie normalizate (aceasta nseamna ca suportul functiei semnatura se normalizeaza la 2
n cazul semnaturii calculate dupa unghiul la centru sau la perimetrul formei n cazul
semnaturii calculate dupa abscisa curbilinie iar domeniul de valori se normalizeaza la valoarea maxima a distantei de punctele de contur la punctul de referinta ales). In acest
fel, functia semnatura va avea atat domeniul, cat si codomeniul intervalul [0, 1].
Folosind semnatura formei, se pot defini parametri de forma scalari de tip geometric. Un
raport de simetrie poate fi definit ca:
dx ()
xK [0;] dx ( + )

Y (K) = sup inf

(8.12)

Se observa ca nu s-a facut nici o presupunere privind convexitatea formei K, dar unicitatea
165

distantelor dx () si dx ( + ) implica calcularea raportului de simetrie dupa punctele ce


apartin nucleului formei. Un raport de circularitate poate fi definit ca:
C(K) =

sup (dx0 () + dx0 ( + ))


inf (dx0 () + dx0 ( + ))

(8.13)

Functia hK () = dx0 () + dx0 ( + ) se numeste suportul formei, si este diametrul formei


pe directia .
In [21] este prezentata o aplicatie de recunoastere si simplificare a formelor plane bazata
pe coeficientii dezvoltarii n serie Fourier a semnaturii formei. De asemenea, este posibila marcarea unor puncte de extremitate de pe frontiera formei (care sunt printre
varfurile aproximarii poligonale ale acesteia) prin identificarea punctelor de inflexiune
ale semnaturii unghiulare.

8.2.2

Curbe granulometrice

Curbele granulometrice asociate unei forme plane sunt functii de o variabila reala, bazate
pe masurarea prin arie a rezultatelor unor transfomari morfologice convenabil alese aplicate formei. Variabila reala care indexeaza curba granulometrica (deci functia ce va caracteriza forma) este legata de dimensiunea elementului structurant folosit n transformarea
morfologica folosita. Constructia unei curbe granulometrice are mai multe etape: generarea granulometriei asociate formei, masurarea prin arie a elementelor granulometriei si
normalizarea rezultatelor.
Granulometria asociata unei forme A este secventa de multimi (A ())R+ , n care A ()
este rezultatul prelucrarii formei A cu transformarea morfologica aleasa de element structurant de dimensiune . Transformarea morfologica se alege astfel ncat sa fie ndeplinite
urmatoarele conditii: transformarea sa fie crescatoare fata de multimea prelucrata (adica,
pentru un parametru R+ fixat si doua forme plane A1 , A2 , daca A1 A2 atunci
A1 () A2 ()), antiextensiva (adica, pentru un parametru R+ fixat, A () A)
si sa verifice relatia , R+ , A () () = A () () = A (max(, )). Ultima conditie
implica idempotenta transformarii morfologice (care se obtine pentru = ).
Cea mai simpla transformare morfologica ce respecta conditiile de a fi crescatoare, antiextensiva si cel putin idempotenta este deschiderea (3.55), ceea ce duce la definirea granulometriei ca:
A () = A B = (A B) B S .
(8.14)
De obicei elementul structurant folosit B este un disc unitar (deci, n implementare discreta, un element structurant V4 sau V8 ).
Normalizarea valorilor ariilor elementelor ce formeaza granulometria se face la aria celei
mai mari nchideri morfologice a formei plane A, adica la aria lui lim (A nB). Atunci
n

functia curba granulometrica asociata formei plane A este definita ca A : R+ [0, 1]:
A () =

Aria(A ())

Aria lim (A nB)


n

166

(8.15)

Dupa cum rezulta din definitia curbei granolometrice (8.15), aceasta este invarianta la
translatie si rotatie (prin proprietatile transformailor morfologice de nchidere si deschidere), si invarianta la scalare (prin normarea la aria celei mai mari nchideri), este
descrescatoare, iar valoarea n origine este indicele de concavitate a formei (8.19) (n
conditiile n care anvelopa convexa a formei poate fi aproximata prin nchiderea maxima
a acesteia, dupa cum s-a discutat si n sectiunea 8.1.1, (8.1)). Figura 8.10 prezinta curbele
granulometrice prin deschidere a trei forme simple (un patrat si doua tipuri de frunze);
dupa cum se poate remarca cu usurinta, aspectul acestor curbe este foarte particular,
modul de descrestere fiind specific fiecarei forme plane.

0.8

0.6

0.4

0.2

0
0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

Figura 8.10: Exemple de curbe granulometrice ale unor forme: un patrat (reprezentat si
n figura 8.9 a)) linie continu
a, o frunza de stejar (reprezentat
a si n figura 8.9 c))
linie punctat
a si o frunza de tei linie cu simboluri x.
Din graficele reprezentate n figura 8.10 se poate remarca ca suportul curbelor granulometrice asociate formelor luate ca exemplu a fost si el normalizat la intervalul [0, 1].
Aceasta normalizare se realizeaza prin re-esantionarea curbei granulometrice initiale, cu
un numar impus de esantioane si normarea intervalului de variatie a parametrului la
valoarea sa maxima.

8.3
8.3.1

Parametri de form
a scalari
Parametri geometrici (rapoarte de aspect)

Aceasta categorie de parametri se bazeaza pe masurarea unor atribute geometrice simple: aria sau suprafata S, perimetrul P , numarul de gauri, numarul lui Euler (diferenta
dintre numarul de regiuni conexe si numarul de gauri), dimensiunile maxime ale formei
pe directie orizontala sau verticala, dimensiunile cercurilor nscrise si circumscrise formei.
Este evident ca aria, perimetrul si dimensiunile maxime si ale cercurilor nu sunt parametri
167

invarianti la scalare, dar, pe baza lor se pot construi scalari care sa aiba aceste proprietati
de invarianta. Rapoartele sunt astfel definite ncat valorile lor sa fie restranse la intervalul
[0, 1].
Raportul de compacitate (numit uneori si factor de forma) este definit ca raportul dintre
patratul perimetrului si suprafata formei:
=

4S
.
P2

(8.16)

Pentru o forma circulara raportul este unitar; cu cat numarul este mai apropiat de
aceasta valoare, cu atat mai mult forma seamana cu un disc (patratul are un raport de
compacitate = 0.785).
Excentricitatea sau circularitatea formei (masura n care forma data se deosebeste de disc)
este definita a raport al razelor cercurilor circumscrise (R) si nscrise (r) formei:
c=

r
R

(8.17)

Acest raport este evident unitar n cazul discului; pentru patrat valoarea sa este de c =
0.707. Caracteristici similare sunt masurate si de rapoartele de simetrie si circularitate
definite pe baza semnaturii formei n (8.13) si (8.13).
Raportul de alungire este definit de raportul dimensiunilor maxime ale formei dupa
directiile verticala (Dv ) si orizontala (Dh ). Raportul de alungire astfel definit este dependent de orientarea formei, nefiind invariant la rotatia plana.
c = min{

Dv Dh
,
}.
Dh Dv

(8.18)

Raportul de convexitate n suprafata este definit de raportul ariilor formei si a anvelopei


convexe a acesteia; raportul este evident 1 pentru formele convexe si cu atat mai mic cu
cat forma este mai concava.
Arie(A)
c=
.
(8.19)
Arie(CH(A))
patrat
compacitate (8.16)
alungire (8.18)
convexitate (8.19)
simetrie (8.12)
circularitate (8.13)

0.826
1.000
1.000
1.000
0.716

frunza stejar
(figura 8.9 c))
0.161
0.506
0.541
0.009
0.108

frunza tei
(figura 8.1 b))
0.642
0.961
0.929
0.695
0.794

biscuit
(figura 5.6)
0.603
0.957
1.000
0.952
0.917

Tabela 8.1: Rapoarte de aspect pentru cateva forme simple.

8.3.2

Momente statistice si invarianti

Interpretand functia caracteristica a formei ca pe o functie de densitate de probabilitate


bidimensionala, putem defini momentele statistice asociate celor doua variabile aleatoare
168

(ce sunt coordonatele punctelor formei):


ZZ
mpq =
f (x, y)xp y q dxdy, p, q = 0, 1, 2, ...

(8.20)

Scalarul mpq (momentul de ordin p, q sau p + q) este proiectia functiei f (x, y) pe polinoamele xp si y q ale bazei complete de polinoame. Teorema reprezentarii cu momente
afirma ca multimea infinita de momente mpq determina n mod unic f (x, y) si reciproc.
In cazul imaginilor binare, coordonatele sunt discrete si functia este o functie caracteristica; formula momentelor (8.20) devine
X X
mpq =
xp y q
(8.21)
f (x,y)6=0

Cum caracterizarea unei forme printr-o serie infinita de numere (asa cum cere teorema
reprezentarii cu momente) nu este posibila, n practica se folosesc serii de momente
truncheate pana la un ordin maxim fixat N (p + q 6 N ). Acestea nsa caracterizeaza
o alta functie, g(x, y), o aproximare a lui f (x, y). Aceasta aproximare este data de o
combinatie liniara a polinoamelor bazei, ponderate cu scalarii necunoascuti gpq :
X X
g(x, y) =
gpq xp y q
(8.22)
p+q6N

Gasirea acestor scalari se face prin egalarea momentelor cunoscute ale lui f (x, y) cu momentele lui g(x, y) data de expresia (8.22). Rezolvand sistemul de ecuatii cuplate ce se
formeaza, se pot obtine relatiile cautate; calculul trebuie nsa refacut, din cauza cuplarii
ecuatiilor, ori de cate ori se doreste trecerea la o aproximare mai buna a formei f , marind
valoarea lui N . Aceasta cuplare provine din cauza folosirii unei baze neortogonale (asa
cum este familia de polinoame xp y q ) pentru calculul momentelor; problema a fost rezolvata
prin folosirea proiectiilor pe baza de polinoame Legendre.
Trebuie nsa remarcat ca folosirea momentelor statistice pentru caracterizarea unei forme
nu asigura ndeplinirea a nici unuia dintre principiile de invarianta cautate; de aceea au
fost introduse momente statistice invariante. Momentele statistice invariante la translatie
sunt momentele statistice centrate:
X X
pq =
(x x)p (y y)q
(8.23)
f (x,y)6=0

Momentele statistice invariante la translatie si scalare sunt definite de:


pq =

pq
p+q
, = 1+
00
2

(8.24)

Invariantii la translatie, scalare si rotatie ai unei forme, obtinuti n conditiile folosirii unor
momente statistice de ordin cel mult 3 (N = 3), sunt n numar de 7 si sunt exprimati de:
1 = 20 + 02

(8.25)

2
2 = (20 02 )2 + 411

(8.26)

169

3 = (30 312 )2 + (03 321 )2


4 = (30 + 12 )2 + (03 + 21 )2

5 = (30 312 )(30 + 12 ) (30 + 12 )2 3(03 + 21 )2 +

+(03 321 )(03 + 21 ) (03 + 21 )2 3(30 + 12 )2

6 = (20 02 ) (30 + 12 )2 (03 + 21 )2 + 411 (30 + 12 )(03 + 21 )

7 = (30 321 )(03 + 21 ) (03 + 21 )2 3(30 + 12 )2

(03 321 )(30 + 12 ) (30 + 12 )2 3(03 + 21 )2

(8.27)
(8.28)
(8.29)

(8.30)
(8.31)

Initial (mijlocul anilor 60) acesti invarianti au fost folositi pentru recunoasterea caracterelor mari de tipar, cu rezultate modeste. Eficienta lor consta nsa n modul rapid de
calcul si posibilitatea de a le utiliza cu succes pentru recunoasterea formelor geometrice
convexe.
Folosind momentele invariante, se mai pot deduce alte atribute: excentricitatea suprafetei
(8.32), care masoara gradul de uniformitate al distributiei punctelor formei n jurul centrului de greutate si orientarea suprafetei, caracterizata de unghiul fata de orizontala al
axei fata de care momentul inertie al formei este minim (8.33).
2
00

(8.32)

1
211
arctan
2
20 02

(8.33)

=
=

8.3.3

Descriptori Fourier de contur

Frontiera unui obiect, odata ce a fost determinata, poate fi vazuta ca o pereche de semnale
unidimensionale x(t) si y(t) n functie de abscisa curbilinie pe contur t. Astfel, frontiera
respectiva poate fi reprezentata folosind tehnici uzuale pentru semnale unidimensionale.
Pentru un contur discret, se poate defini semnalul complex:
u(n) = x(n) + jy(n),

n = 0, 1, ..., N 1

care, pentru un contur nchis, este un semnal periodic de perioada N . Semnalul u(n)
poate fi caracterizat prin transformata sa Fourier discreta a(k), definita ca:

2jkn
a(k) =
u(n) exp
N
n=0
N
1
X

Coeficientii complecsi a(k) se numesc descriptorii Fourier ai frontierei considerate. Descriptorii Fourier ai unui contur prezinta anumite proprietati de invarianta la operatii
geometrice de baza (scalare, rotatie, translatie) care i fac sa fie extrem de atractivi pentru
recunoasterea de forme. In cele ce urmeaza sunt prezentate cateva dintre proprietatile cele
mai importante ale descriptorilor Fourier, ale caror demonstratii sunt lasate ca exercitiu.
170

Translatie
Fie u(n) semnalul complex asociat unei frontiere, si fie a(k) descriptorii Fourier ai acesteia.
Fie u(n) semnalul asociat frontierei obiectului translatat cu (x0 , y0 ). Putem scrie u(n) =
u(n) + u0 , cu u0 = x0 + jy0 . Atunci, descriptorii Fourier ai obiectului translatat a
(k) se
obtin n functie de cei ai obiectului original astfel:
a
(k) = a(k) + u0 (k).
Cu alte cuvinte, efectul unei translatii asupra descriptorilor Fourier ai unui obiect este
modificarea coeficientului de curent continuu.
Scalare
Fie u(n) semnalul asociat frontierei obiectului scalat cu parametrul : u(n) = u(n).
Atunci,
a
(k) = a(k).
Altfel spus, o scalare a obiectului conduce la o scalare a descriptorilor sai Fourier.
Rotatie
Fie u(n) semnalul asociat frontierei obiectului rotit cu unghiul 0 : u(n) = u(n) exp(j0 ).
Descriptorii Fourier ai obiectului rotit devin:
a
(k) = a(k) exp(j0 ).
O rotatie a obiectului induce, deci, o deviatie constanta n faza descriptorilor sai Fourier.
Schimbarea originii
In cazul n care se schimba originea obiectului, semnalul care i va descrie frontiera va fi
u(n) = u(n n0 ) cu n0 constant, iar descriptorii sai Fourier pot fi scrisi:

2jno k
a
(k) = a(k) exp
,
N
deci o schimbare a originii conduce la o modulatie indusa n faza descriptorilor sai Fourier.

171

172

Partea III
Reprezentarea si prelucrarea
imaginilor color

173

Capitolul 9
Descrierea culorilor si modele de
prelucrare a imaginilor color
Aceast capitol ncearca realizarea unui studiu asupra culorii. In prima parte (paragraful
9.1) vom discuta despre notiunile fundamentale din colorimetrie. Vom defini principiul
tricromaticitatii, conform caruia orice culoare monocromatica poate fi sintetizata prin
amestecul aditiv a trei stimuli independenti de culoare, principiu bazat pe caracteristicile
ochiului uman, care contine trei tipuri de receptori de culoare (conuri). Apoi, vom discuta
despre chestiuni legate de potrivirea, reproducerea si perceptia culorilor. In finalul partii
ntai, vom aborda chestiuni legate de perceptie a culorilor la un alt nivel al caii vizuale.
Astfel, vom discuta despre teoria culorilor opuse, care sta la baza dezvoltarii spatiilor
perceptuale de reprezentare a culorii.

9.1

Fundamentele colorimetriei

Inainte de Newton, natura luminii si a culorilor era destul de putin nteleasa. Experimentele clasice ale lui Newton, bazate pe trecerea luminii solare printr-o prisma de cristal,
au condus la formarea ideilor privind dependenta culorii de compozitia spectrala a luminii.
Desi aceste experimente au constituit bazele fizice pentru descrierea culorilor, ele erau nca
departe de a fundamenta un sistem colorimetric.
Pentru a putea dezvolta sisteme de masurare si specificare a culorilor au fost nsa necesare
si studii privind natura mecanismului de percepere a culorilor de catre ochiul uman. De
abia n a doua jumatate a secolului XIX, Young [70], Grassmann [22] si Maxwell [39] au
descoperit faptul ca orice culoare poate fi exprimata matematic n functie de trei variabile
independente. Grassmann a dedus experimental legile potrivirii culorilor, iar Maxwell a
demonstrat ca orice amestec aditiv de culori poate fi echivalat cu un amestec n proportii
specifice a trei stimuli primari (principiul de tricromaticitate). Teoria tricromaticitatii a
adus astfel puternice dovezi indirecte n sprijinul teoriei ca ochiul uman are trei feluri de
receptori color (fapt confirmat mai tarziu de studiile de anatomie si fiziologie).
In ochiul uman, orice imagine se formeaza pe baza luminii focalizate pe retina de lentila
oculara. Cele trei tipuri de conuri reponsabile pentru formarea senzatiei de culoare sunt
175

nglobate n retina, si contin pigmenti fotosensibili ce au absorbtii spectrale diferite. Acesti


receptori sunt cunoscuti drept conuri S, M si L (sensibile la lungimile de unda mici (Short),
medii (Medium) si mari (Long) ale luminii incidente) si sensibilitatea lor spectrala a fost
masurata prin tehnici microspectrofotometrice si prin experimente psihofizice.
Daca distributia spectrala a luminii incidente pe retina este data de f () (unde este
lungimea de unda), atunci raspunsul celor trei categorii de conuri din retina (senzatia de
culoare) poate fi modelat ca un vector cu trei componente date de:

Zmax

s()f ()d

cs =

(9.1)

min

Zmax

m()f ()d

cm =

(9.2)

min

Zmax

cl =

l()f ()d

(9.3)

min

Marimile s(), m() si l() ce intervin n relatiile (9.1)(9.3) si care sunt ilustrate n
figura 9.1, reprezinta sensibilitatile spectrale ale conurilor n intervalul de lungimi de
unda cuprinse ntre min si max ; n afara acestui interval sensibilitatile sunt nule. In
general, n aer (si n vid), regiunea vizibila a spectrului electromagnetic este considerata
a fi cuprinsa ntre min = 360 nm si max = 830 nm [56] (sau min = 380 nm si max = 780
nm, dupa [33]).
Din punct de vedere matematic, expresiile (9.1)(9.3) corespund produsului scalar definit
peste spatiul Hilbert al functiilor de patrat integrabil n intervalul [min ; max ], adica
2 ([min ; max ]). Aceasta nseamna ca mecanismul de raspuns al conurilor este echivalent
proiectiei spectrului luminii incidente pe spatiul generat de functiile de sensibilitate spectrala ale conurilor din retina, si (). Acest spatiu este numit subspatiul vizual uman, sau
HVSS (Human Visual SubSpace).
Fundamentul colorimetriei consta n considerarea celor trei raspunsuri ci ca o specificare
a senzatiei de culoare (sau ca o ecuatie de reprezentare a culorilor).
In practica, marimile spectrale ce intervin n (9.1)(9.3) se nlocuiesc cu versiuni
esantionate la un interval de esantionare de 10 nm (absolut suficient pentru marea majoritate a aplicatiilor [56]). In acest caz se va obtine suma ca aproximare numerica a
integralei. Daca sunt folosite N esantioane (uniform distribuite n ntregul spectru vizibil
[min ; max ]) relatiile (9.1)(9.3) se pot rescrie compact ca:
c = ST f

(9.4)

unde c = [cs , cm , cl ]T si S este o matrice ale carei coloane contin versiunile esantionate ale
sensibilitatilor spectrale.
Pentru observatorii umani normali, sensibilitatile spectrale ale conurilor sunt liniar independente (desi prezinta suprapuneri semnificative) si, n plus, prezinta diferente mici de
la un observator la altul (diferente ce se datoreaza n principal diferentelor de transmisivitate spectrala a lentilei oculare si a mediului optic din fata retinei). Daca se defineste
176

0.9

l ()

0.8

m()
0.7

s()
0.6

0.5

0.4

0.3

0.2

0.1

0
350

400

450

500

550

600

650

700

750

800

850

Lungime de unda [nm]

Figura 9.1: Sensibilitatile spectrale relative ale conurilor.


un set standard de raspunsuri ale conurilor, orice culoare poate fi definita unic printr-un
vector cu trei componente, numit vector tristimulus.
Pe baza vectorului tristimulus de reprezentare a culorilor se pot modela o serie de probleme esentiale: potrivirea culorilor, reproducerea culorilor si perceptia culorilor, ce vor
fi discutate n continuare.

9.1.1

Potrivirea culorilor

Doua spectre esantionate f si g produc acelasi raspuns al conurilor retinei, si deci


reprezinta aceeasi culoare, daca:
ST f = ST g
(9.5)
Daca luam n considerare trei culori primare (surse luminoase colorimetric independente
- cu alte cuvinte culoarea oricarei surse nu poate fi potrivita vizual cu nici o combinatie
liniara a celorlalte) p1 , p2 si p3 , vectorii ST pi sunt liniari independenti, si deci matricea
ST P, unde
P = [p1 p2 p3 ]
(9.6)
va fi nesingulara. Atunci, pentru orice spectru vizibil f , vectorul definit ca:
a(f ) = (ST P)1 ST f
177

(9.7)

satisface relatia de potrivire a culorilor (9.5), si atunci:


ST f = ST Pa(f )

(9.8)

Deci, pentru orice spectru vizibil, exista o combinatie Pa(f ) a culorilor primare care se
potriveste colorimetric cu f ; acesta este principiul tricromaticitatii (9.8).
Din punct de vedere matematic este posibil ca vectorul de ponderi ale culorilor primare
a(f ) sa aiba componente negative (de fapt, pentru orice set de culori fizice primare, exista
culori vizibile pentru care apare o asemenea comportare). Deoarece nu pot fi produse
fizic intensitati negative ale culorilor primare, spectrul Pa(f ) nu este direct realizabil n
acest caz cu culorile primare date. Realizarea fizica a ecuatiei de tricromaticitate (9.8)
este totusi posibila prin rearanjarea termenilor din ecuatie, scazand culorile primare ce au
ponderi negative din culoarea necunoscuta de spectru f (ceea ce corespunde din punctul de
vedere al implementarii cu adunarea la spectrul f a culorilor primare n cauza, ponderate
pozitiv).

9.1.2

Reproducerea culorilor

Liniaritatea expresiei (9.5) de potrivire a culorilor implica posibilitatea deducerii valorilor


tristimulus pentru orice combinatie liniara a unor spectre de baza pentru care valorile
tristimulus sunt cunoscute. Spectrele monocromatice unitare ei formeaza o astfel de baza
ortonormala prin care se poate descompune orice alt spectru:
ei (m) = (m i)

(9.9)

Atunci proprietatile de potrivire a culorilor (fata de un set de culori primare) se pot


specifica n functie de proprietatile de potrivire a culorilor pentru spectrele monocromatice
(9.9).
Fie ai intensitatile celor trei culori primare necesare pentru a reproduce culoarea (spectrul)
ei :
ai = a(ei )
(9.10)
Atunci reproducerea tuturor spectrelor monocromatice poate fi exprimata ca:
ST ei = ST Pai , cu i = 1, 2, ..., N

(9.11)

Combinand aceste N ecuatii, se poate rescrie (9.11) ca:


ST I = ST PAT

(9.12)

unde A este matricea corespunzatoare reprezentarii spectrelor monocromatice dupa culorile primare alese P. Componentele de pe coloana k a matricii A corespund ponderii
relative a culorii primare pk necesare pentru a reproduce pe ei . Din (9.12) putem exprima:
A = S(PT S)1

(9.13)

si deci functiile de potrivire a culorilor (coloanele matricii A) formeaza o transformare


liniara nesingulara a sensibilitatilor spectrale ale celor trei tipuri de conuri din retina.
178

Atunci culoarea unui spectru vizibil se poate exprima si n functie de valorile tristimulus
AT f n loc de ST f . De asemenea, rezulta ca pentru cazul a doua spectre f si g culorile se
potrivesc doar daca
AT f = AT g
(9.14)
Un calcul detaliat al coeficientilor de potrivire n cazul modelarii continue a etaloanelor
spectrale monocromatice este prezentat n [33].
Aceasta ecuatie de potrivire si
reprezentare a culorilor (9.14) are o aplicabilitate mai usoara, deoarece necesita calculul matricii de potrivire a culorilor monocromatice A, care se determina (experimental)
mai usor decat matricea de sensibilitate a conurilor S.

9.1.3

Perceptia culorilor

Dupa cum a fost impus de ecuatiile de potrivire a culorilor (9.5) sau (9.14), spectrele
de N esantioane f si g se potivesc colorimetric daca ST f = ST g, respectiv AT f = AT g.
Deoarece matricile S si A sunt matrici N 3, cu N > 3, este clar ca exista mai multe
spectre care apar unui observator ca o singura culoare. Aceste spectre distincte, dar cu
aparenta colorimetrica identica, se spune ca formeaza o potrivire metamerica (distincta
fata de potrivirea spectrala).
Metamerismul poate fi vazut si ca o problema, dar si ca o simplificare a aplicatiilor. Este
nsa evident ca realizarea unei potriviri metamerice pentru un model de iluminare dat este
insuficienta pentru ca potrivirea sa se pastreze si n alte conditii de iluminare; exemplul
uzual este potrivirea culorii unor stofe ntr-o anumita lumina (cea din magazin), potrivire
ce dispare imediat dupa modificarea conditiilor de iluminare (lumina naturala de exterior).

9.1.4

Teoria culorilor opuse

Conform teoriei tricromaticitatii, daca doua spectre de lumina produc aceleasi raspunsuri
ale conurilor, atunci ele au aceeasi culoare. Ce se ntampla, nsa, daca doua culori produc
raspunsuri diferite. Evident, ele arata, diferit, dar cat de diferit? O alta ntrebare este:
ce culoare au spectrele respective? Culorile reale sunt atribute ca rosu, verde, albastru
etc., si nu vectori [cs , cm , cl ]T ale absorbtiilor conurilor. Pentru a putea raspunde acestor
ntrebari, avem nevoie de o alta abordare a teoriei culorilor decat cea data de teoria
tricromaticitatii.
Teoria culorilor opuse a fost creata de Hering n 1920 [28] si este bazata pe observatia
ca anumite culori sunt mai similare decat altele. Daca unui om i s-ar cere sa aranjeze
niste esantioane colorate astfel ncat culorile apropiate sa fie alaturate, rezultatul final ar
fi aproape ntotdeauna un cerc. Hering a observat ca respectivele culori pot fi aranjate
astfel ncat toate culorile dintr-o jumatate de cerc sa contina rosu, iar celelalte, din cealalta
jumatate, sa contina verde. De asemenea, n mod independent de prima aranjare, culorile
pot fi aranjate astfel ncat jumatate de cerc sa contina galben, iar cealalta sa contina
albastru (vezi figura 9.2).
Aceasta aranjare a culorilor pune n evidenta doua fenomene. Primul este ca orice culoare
poate fi descrisa ca rosiatica sau verzuie, dar niciodata si rosiatica si verzuie: rezulta
179

Rosu

Galben

Alb

Albastru

Verde

Figura 9.2: Cercul culorilor opuse: semicercul superior contine culorile rosii, cel inferior
culorile verzi; semicercul din stanga contine culorile galbene, cel din dreapta culorile
albastre.

ca rosu si verde sunt doua senzatii de culoare exclusive. In mod similar, albastrul si
galbenul sunt si ele culori exclusive: niciodata o culoare nu va fi descrisa ca fiind n
acelasi timp albastruie si galbuie. Al doilea fenomen este ca nu mai exista nici o alta
pereche de culori exclusive n afara de rosuverde si galbenalbastru. Astfel, descrierea
unei culori pe de-o parte ca rosiatica sau verzuie, iar pe de alta parte ca galbuie sau
albastruie este completa.
Teoria culorilor opuse sustine ca senzatia de culoare este organizata de-a lungul a doua
axe. Prima axa codeaza cantitatea de rosu sau verde din culoarea respectiva, iar cea
de-a doua, perpendiculara pe prima, codeaza cantitatea de galben sau albastru continuta
n culoare. Senzatia completa de culoare este data de coordonatele culorii respective pe
cele doua axe. Uneori, se adauga si o a treia axa, ce descrie componenta acromatica de
luminanta.
Teoria culorilor opuse este validata de numeroase experimente. Daca fixam insistent cu
privirea un anumit obiect, dupa care privim nspre un perete alb, vom vedea o post
imagine a obiectului respectiv. Daca obiectul este rosu aprins, postimaginea va fi verde
si vice-versa. Daca obiectul este galben aprins, postimaginea va fi albastra si vice-versa.
Imperecherea stricta a culorilor obiectului si a postimaginii sale vine n sprijinul ideii
ca rosul si verdele sunt asociate (n acest caz, fiind opuse) la fel cum sunt si galbenul
si albastrul. Asocierea rosu/verde si galben/albastru este de asemenea demonstrata de
urmatorul experiment: o linie subtire, gri (fara culoare) pe un fond rosu apare verzuie, n
timp ce pe un fond albastru apare galbuie.
Tricromaticitatea si teoria proceselor opuse descriu senzatia de culoare n diverse puncte
de pe calea vizuala, ntre ochi si creier. Tricromaticitatea este un model al retinei. Teoria
culorilor opuse este un model al unui mecanism central din creier.
180

9.2

Sisteme colorimetrice

Dupa cum am aratat anterior, culoarea oricarui spectru vizibil poate fi specificata pe baza
valorilor tristimulus AT f , unde A este o matrice ale carei coloane sunt functii de potrivire
a culorilor. Pentru ca diferitele masuratori sa fie consecvente, a trebuit definit un set
standard de asemenea functii de potrivire a culorilor, fata de care sa se calculeze valorile
tristimulus.
Prima standardizare a terminologiei si masuratorilor colorimetrice a fost realizata de CIE
(Commission Internationale de lEclairage) n 1931; aceasta standardizare continua sa
stea la baza colorimetriei moderne. Recomandarea CIE 1931 defineste observatorul colorimetric standard prin doua seturi echivalente de functii de potrivire a culorilor.

9.2.1

Sisteme primare de reprezentare

Primul sistem propus este sistemul RGB (Red Green Blue) n care functiile de potrivire
a culorilor R(), G(), B() sunt asociate cu culori primare monocromatice de lungimi
de unda de 700 nm, 546.1 nm si 435.8 nm si ale caror intensitati radiante sunt astfel alese
ncat valorile tristimulus asociate unui spectru de energie constanta (lumina alba) sa fie
egale. In figura 9.3 sunt prezentate cele trei curbe R(), G() si B().
3.5

r ()

v ()
2.5

b ()
2

1.5

0.5

0.5

400

450

500

550

600

650

700

Lungime de unda (nm)

Figura 9.3: Cele trei functii de corespondent


a a culorilor n functie de cele trei culori
primare (dupa [58]). Se poate observa ca anumite culori nu pot fi sintetizate dec
at ca
o combinatie substractiva ntre cele trei culori primare, ceea ce nseamn
a ca respectivele
culori nu pot fi create.
Al doilea sistem definit este XY Z, ale carui functii de potrivire a culorilor, X(), Y (),
Z() sunt transformari liniare ale componentelor sistemului RGB [33].Transformarea de
181

la RGB la XY Z (9.15) a fost astfel aleasa ncat toate valorile tristimulus rezultante sa
fie pozitive, la toate lungimile de unda. Curbele X(), Y () si Z() sunt prezentate n
figura 9.4.

X
0.49 0.31 0.02
R
Y = 0.177 0.813 0.011 G
(9.15)
Z
0
0.01 0.99
B

2.5

x()
y()
z()

1.5

0.5

0
350

400

450

500

550

600

650

700

750

800

850

Lungime de unda [nm]

Figura 9.4: Corespondenta culorilor n functie de coordonatele XY Z.


Cerinta de pozitivitate a valorilor tristimulus se pare [56] ca provine din epoca n care
calculele se faceau manual, cu calculatoare de birou, astfel ncat adunarile si scaderile
repetate constituiau o nesfarsita sursa de erori. Alegerea particulara a transformarii (9.15)
din infinitatea de transfomari posibile a tinut seama si de alti factori, cei mai importanti
fiind aceia ca, pentru orice culoare, componenta Y sa coincida cu functia de eficienta
luminoasa1 si ca cele trei functii de potrivire a culorilor sa produca valori tristimulus
egale n cazul unui spectru constant.
Trebuie nsa remarcat ca nici un set de culori fizic realizabile nu poate produce functii de
potrivire a culorilor pozitive n ntreg spectrul.
Descrierea culorilor prin vectori cu trei componente (valorile tristimulus) ridica nsa probleme de reprezentare grafica (culorile sunt puncte ntr-un spatiu tridimensional) si deci
dificil de reprodus n sectiuni bidimensionale. O reprezentare redusa (bidimensionala)
de interes se poate obtine prin normalizarea valorilor tristimulus astfel ncat acestea sa
1

Functia de eficienta luminoasa este sensibilitatea relativa a ochiului la energia de pe fiecare lungime
de unda. In mod curent este numita luminanta.

182

apartina planului unitar (planul Maxwell) de ecuatie:


x1 + x2 + x3 = 1

(9.16)

Normalizarea fiecarei componente ti a tripletului tristimulus (T1 , T2 , T3 ) asociat unei culori


va fi dat de:
Ti
ti =
, cu i = 1, 2, 3
(9.17)
T1 + T2 + T3
O asemenea normalizare este convenabila ntrucat informatia de directie asupra vectorului
de culoare ramane nemodificata, ceea ce se pierde prin trecerea la cele trei componente
dependente normate liniar fiind doar informatia de amplitudine. Reducerea dimensiunii
vectorului de reprezentare este determinata tocmai de dependenta liniara a valorilor ti
date de (9.17), ceea ce duce la posibilitatea reprezentarii punctelor ntr-un spatiu bidimensional, avand drept coordonatele doua valori tristimulus normate (numite coordonate
de cromaticitate). Pentru sistemul XY Z, diagrama de cromaticitate se reprezinta dupa
valorile x, y, z obtinute ca:
X
x=
(9.18)
X +Y +Z
Y
y=
(9.19)
X +Y +Z
Z
z=
(9.20)
X +Y +Z

9.2.2

Sisteme de reprezentare derivate

Aplicatiile practice ale colorimetriei au condus nsa la utilizarea de facto a altor surse
primare decat cele standardizate de CIE. In acest caz, valorile pentru functiile de potrivire
a culorilor sunt diferite de cele standard, iar legatura dintre ele este data de o transformare
liniara a functiilor de sensibilitate spectrala a conurilor din retina umana:
BT = (AT Q)1 AT

(9.21)

Una dintre aceste aplicatii practice a fost televiziunea color. Aparitia acesteia a condus
(cel putin n etapa initiala) la utilizarea a doua noi sisteme de reprezentare: pe de o parte
sistemul de culori primare legat de afisarea imaginilor color pe ecranele televizoarelor
(culori primare legate de caracteristicile de electroluminiscenta ale triadelor de luminofori
din tuburile cinescop) si pe de alta parte sistemul de reprezentare a culorilor folosit n
transmisia de televiziune. Sistemele de culori folosite la afisare au fost, cel putin la
nceput, de o mare diversitate, dictata de fiecare dintre fabricantii de tuburi cinescop,
ce foloseau tipuri diferite de fosfor. Variabilitatea de reprezentare pe ecrane diferite a
unei aceleiasi culori transmise a dus la standizarea tipurilor de fosfor (norma C) de catre
SMPTE (Society of Motion Picture and Television Engineers) [56]; norma de reprezentare
rezultata este asa numitul sistem NTSC al receptorului [33]:

0.842
0.156
0.091
Rr
R
Gr = 0.129 1.319 0.203 G
(9.22)
Br
0.008 0.069 0.897
B
183

Spatiile de reprezentare a culorilor utilizate pentru transmisia de televiziune au fost standardizate rapid, la ora actuala existand doua sisteme fundamentale: NTSC si PAL. Transformarile de la spatiul primar RGB la spatiile de transmisiune sunt descrise de ecuatiile
(9.23) [33] pentru NTSC si respectiv (9.24) [20] pentru PAL:

Y
0.3 0.59
0.11
R
I = 0.6 0.28 0.32 G
(9.23)
Q
0.21 0.52 0.31
B

Y
0.3
0.59
0.11
R
U = 0.148 0.291 0.483 G
(9.24)
V
0.526 0.518 0.096
B
Alegerea acestor transformari, prin care orice culoare este reprezentata printr-o componenta de luminanta (Y ) si doua componente de crominanta, s-a realizat prin impunerea
unor constrangeri: folosirea canalelor de transmisiune monocrome si compatibilitatea cu
receptoarele alb-negru (ceea ce a dus la alegerea luminantei ca una dintre componentele
de culoare) si determinarea unor componente de crominanta a caror largime de banda
sa fie relativ mica. Aceste caracteristici sunt exploatate de majoritatea sistemelor de codare si compresie, n care prima operatie efectuata este subesantionarea componentelor
de crominanta (I si Q, respectiv U si V ) [9], [34], [33].
In aceeasi categorie putem include si spatiul de culoare al lui Ohta [42], ale carui componente I1 I2 I3 sunt date de:
1 1 1

I1
R
3
3
3
I2 = 1 0 1 G
(9.25)
2
2
1
1
1
I3
4 2 4
B
Componenta I1 contine informatia de luminanta, n timp ce componentele I2 si I3
reprezinta informatia cromatica. Coeficientii transformarii (9.25) au fost dedusi astfel
ncat componentele de culoare din spatiul rezultat sa fie decorelate, n acest sens folosinduse un set important de imagini ca multime reprezentativa. Astfel, matricea transformarii
(9.25) reprezinta o buna aproximare a matricii transformarii KarhunenLo`eve, transformarea optimala ce decoreleaza complet componentele.
Un alt spatiu de reprezentare a culorilor de tip luminantacrominanta este spatiul
PhotoY CC dezvoltat de compania Kodak [44] si folosit pentru stocarea imaginilor pe
FotoCD-uri. Spatiul PhotoY CC si are radacinile n televiziunea color, si permite o compresie eficienta a imaginii. Valorile PhotoY CC sunt rezultatul unei transformari n trei
pasi din valorile originale RGB, si anume:
1. corectie gamma.
2. transformare liniara;
3. cuantizare a componentelor Y CC pe 8 biti.
Corectia gamma este necesara datorita caracteristicii neliniare a dispozitivelor de afisare
(n conditiile n care dispozitivele de achizitie scannerele au un comportament aproximativ liniar) si consta n aplicarea fiecareia din componentele primare RGB (normalizate
184

n [0, 1]) a functiei:

daca x 0, 018
1, 099x0,45 0, 099
4, 5x
daca 0, 018 < x < 0, 018
x0 =

0,45
1, 099|x|
+ 0, 099 daca x 0, 018
Apoi, componentele de culoare corectate gamma sunt transformate liniar dupa:
0
0
Y
0, 299
0, 587
0, 114
R
C10 = 0, 299 0, 587 0, 886 G0
C20
0, 701 0, 587 0, 114
B0

(9.26)

(9.27)

In final, noile componente de culoare sunt cuantizate liniar pe 8 biti, rezultand, astfel,
valorile finale Y CC:
Y
C1
C2

255 0
Y
1, 402
= 111, 40C10 + 156
= 135, 64C20 + 137
=

(9.28)
(9.29)
(9.30)

Transformarea din coordonate PhotoY CC n RGB nu este exact inversa transformarii


directe. Initial, se calculeaza:
Y 0 = 1, 3584Y
C10 = 2, 2179(C1 156)
C20 = 1, 8215(C2 137)
dupa care se calculeaza componentele RGB ce urmeaza a fi afisate precum:
0

Y
1
0
1
Rdisplay
Gdisplay = 1 0, 194 0, 509 C10
1
1
0
C20
Bdisplay

9.2.3

(9.31)
(9.32)
(9.33)

(9.34)

Sisteme de reprezentare perceptual


a

In functie de modul n care observatorii umani descriu culorile (deci pornind de la


observatii empirice) Munsell a introdus un sistem de specificare a culorilor bazat pe
notiunile de luminozitate, nuanta si saturatie. Luminozitatea este o masura a luminantei
percepute. Nuanta se refera la fiecare dintre varietatile unei culori, determinata de
compozitia sa cromatica - deci cat de rosie sau cat de verde este culoarea data. Saturatia
este aspectul perceptual influentat de cantitatea de lumina (culoare) alba adaugata aditiv
unei lumini (culori) monocromatice.
Aceste trei atribute ortogonale [59, 56] formeaza un sistem de reprezentare perceptuala a
culorilor, derivat n mod esential ca o rotatie a spatiului RGB a culorilor, urmata de o
transformare n coordonate cilindrice sau polare [8], [23], [18]. Acest sistem este cunoscut
sub forma mai multor variante asemanatoare: HSV (Hue Saturation Value), HSI (Hue
185

Saturation Intensity), HV C (Hue Value Chroma), HSL (Hue Saturation Luminance),


LCH (Lightness Chroma Hue). In toate aceste variante de reprezentare, atributul de
luminanta (sau intensitate, valoare, stralucire) este asociat unei axe verticale de simetrie
rotationala a noului spatiu de culoare, iar atributul de nuanta, masurat ca un unghi
polar (unghi la centru), delimiteaza pe anvelopa spatiului de culori zone corespunzatoare
culorilor pure.
Rafinarea sistemului Munsell continua [32]; LV D (Logical Visual Display) produce o
cuantizare vizuala aproximativ uniforma prin sinteza (pentru fiecare imagine) a unei noi
palete de culori de afisare. Spatiul de culori astfel obtinut este de forma cilindrica [23],
ca un dublu con [16] ca o piramida cu baza hexagonala [16], sau ca un cilindru prelungit
pe ambele baze cu conuri [18].
Componentele de luminanta, saturatie si nuanta sunt calculate cu ajutorul unor formule
ce exprima n mod aproximativ sensul psihofizic al acestor notiuni. In literatura de
specialitate sunt prezentate diverse formule, n mod special pentru componenta de nuanta
H, ideea de baza fiind realizarea unui compromis ntre acuratete si simplitate de calcul.
Formula originala pentru nuanta a fost cea a lui Tenenbaum et al. [60]:

H=

arccos 0.5[(RG)(RB)]
2

daca B > G

360 arccos

daca G B

(RG) +(RB)(GB)
0.5[(RG)(RB)]
(RG)2 +(RB)(GB)

(9.35)

unde H este exprimat n grade. Demonstratia relatiei (9.35) este data n [21]. Kender
[35] propune o versiune de calcul aproximativ al nuantei ce permite o implementare mai
rapida, reducand numarul de nmultiri necesare si evitand extragerea radacinii patrate:

nedefinit

3(GR)

3 + arctan G+R2B

H=
3(BG)

+
arctan

G+B2R

5 + arctan 3(RB)
3
B+R2G

daca R = G = B
daca min(R, G, B) = B
daca min(R, G, B) = R

(9.36)

daca min(R, G, B) = G

Modul de calcul al componentelor HSI propus de Bajon et al. [3], prezentate n relatia
(9.37), permite obtinerea unor rezultate usor diferite de cele clasice, dar care sunt extrem
de rapide, datorita simplificarii matematice (nu mai e nevoie de functii trigonometrice).

nedefinit

GB

H=

3(G+R2B)
BR
3(G+B2R)
RG
3(B+R2G)

daca
daca
daca
daca

R=G=B
min(R, G, B) = B
min(R, G, B) = R
min(R, G, B) = G

(9.37)

Cat despre componenta de saturatie S, n afara de cele doua formulari echivalente:


S = 1 3 min(r, g, b)
min(R, G, B)
S = 13
R+G+B
186

(9.38)
(9.39)

mai exista cateva variante de calcul, al caror scop este scaderea instabilitatii acesteia n
jurul punctului de negru absolut (0, 0, 0):
(
R,Imax G,Imax B)
Imax 3 min(Imax3(R+G+B)
daca I Imax
3
S=
(9.40)
Imax
Imax 3 min(R,G,B)
dac
a
I
>
R+G+B
3
unde Imax reprezinta valoarea maxim posibila a componentei de luminanta.
Cat despre componenta de intensitate I, cel mai des folosite relatii sunt:
R+G+B
3
I = R+G+B
I =

(9.41)
(9.42)
V
Alb

Galben

Verde

Turcoaz

Rosu

Galben

Verde

Alb

Turcoaz

Albastru

Rosu

Albastru

Violet

Violet

Negru

Negru

(a)

(b)

Figura 9.5: Spatiile de culoare HSV (a) si HLS (b).


Alte doua sisteme de reprezentare perceptuala, HSV si HLS sunt cel mai des folosite n
computer vision. Structura lor este prezentata n figura 9.5, iar relatiile de calcul sunt
date de:
V

= max(r, g, b)
(
0
S =
max(r,g,b)min(r,g,b)
max(r,g,b)

187

(9.43)
daca r = g = b = 0
n rest

(9.44)

max(r, g, b) + min(r, g, b)
2

0
daca r = g = b

max(r,g,b)min(r,g,b)
daca L 0, 5
S =
max(r,g,b)+min(r,g,b)

max(r,g,b)min(r,g,b) daca L > 0, 5


2max(r,g,b)min(r,g,b)

L =

(9.45)
(9.46)

Aceste modele demonstreaza ca saturatia unei culori scade pe masura ce intensitatea se


apropie de nivelul ei maxim (sau minim). Totusi, nu toate aceste fenomene perceptuale
sunt implementate n modelele respective. De exemplu, culorile cu saturatie maxima si
nuante diferite au acelasi nivel de intensitate (V = 1 n cazul sistemului HSV , L =
0, 5 pentru HSL). Aceasta, nsa, nu corespunde ntotdeauna cu perceptia umana, un
contraexemplu n acest sens fiind faptul ca un galben saturat este ntotdeauna mai luminos
decat un albastru saturat.
Avantajele importante ale spatiilor perceptuale de tip HSI n raport cu celelalte tipuri
de reprezentari posibile sunt:
compatibilitate cu intuitia umana;
separarea componentelor cromatice de cele acromatice;
posibilitatea de a folosi componentele n mod independent pentru diverse sarcini;
de exemplu, componenta de nuanta H poate fi folosita pentru segmentare, cea de
intensitate pentru operatii de mbunatatire de contrast etc.
Totusi, trebuie mentionate si dezavantajele sistemelor perceptuale, dintre care cele mai
importante sunt:
existenta unor singularitati n transformarea RGB HSI (H nu e definit pentru
culorile acromatice nivelele de gri n timp ce saturatia S nu este definita pentru
alb sau negru pur);
sensibilitate crescuta la deviatii mici ale componentelor RBG n jurul singularitatilor;
neuniformitate perceptuala, n ciuda orientarii perceptuale;
probleme legate de operatii pe valorile unghiulare ale nuantei, cum ar medierea.

9.2.4

Sisteme de reprezentare cu cromaticitate uniform


a

Toate modelele de reprezentare descrise pana n acest punct au fost introduse ca metode
de specificare a culorilor conform unor valori tristimulus (ce reprezinta n mod unic un
punct n spatiul tridimensional al culorilor). Manipularea (prelucrarea) culorilor implica
nsa si necesitatea determinarii unor grade de asemanare ntre culori, bazate pe pozitiile
lor relative din spatiul tridimensional de reprezentare, si deci, implicit, pe distanta. Dar,
n mod natural, distanta dintre culori este determinata de termenii legati de perceptia
acestora.
188

Cuantificarea obiectiva a evaluarilor facute de diferiti observatori umani pentru marimea


unei diferente de culoare este o problema, cu atat mai mult cu cat n general, n practica este mai utila evaluarea diferentelor dintre culori asemanatoare decat dintre culori
mult diferite. Atunci notiunea de diferenta abia perceptibila ntre culori sau JND (Just
Noticeable Difference) a aparut implicit ca o unitate de masura.
Distributia diferentei abia perceptibile dintre culori n sistemele de reprezentare primare
(RGB, XY Z, xy) este extrem de neregulata. De exemplu, n spatiul de cromaticitate
xy, masurarea JND a dus la definirea elipselor MacAdams: regiuni eliptice pentru care
culorile continute n interior nu pot fi diferentiate vizual [33], [24]. Marimea, orientarea
si excentricitatea acestor elipse variaza puternic dupa pozitia centrului lor (de exemplu,
excentricitatea variaza ntre 1 si 20 [33]). Aceasta conduce la numirea acestor spatii de
culoare ca perceptual neuniforme, n sensul ca diferentele perceptual egale dintre culori
nu corespund unor distante egale n spatiul valorilor tristimulus. Cum o asemenea caracteristica de JND este extrem de dezirabila (mai ales n definirea si masurarea tolerantei
sistemelor de reproducere a culorilor), s-a ncercat definirea unor spatii de cromaticitate
uniforma.
Construirea unui spatiu de culoare uniform se face n principiu n doua etape [56], [48]: se
determina o scara de iluminare uniforma si apoi se determina o diagrama de cromaticitate
uniforma pentru stimuli de culoare ce au aceeasi luminozitate. Cele doua solutii sunt combinate prin scalarea cu factori convenabili pe fiecare coordonata (scala de cromaticitate
si scala de luminanta), astfel ca unitatile sa corespunda unei aceleiasi proportii de JND.
Sistemul U CS (Uniform Chromaticity Scale) produce o diagrama de cromaticitate n care
culorile ce difera abia perceptibil sunt aproape echidistante (si atunci elipsele MacAdams
devin forme aproape circulare, cu excentricitati cuprinse ntre 1 si 2 si de dimensiuni
aproape egale). Transformarea care leaga spatiul de cromaticitate U CS de spatiul primar
XY Z este neliniara, exprimata ca:
u=

4X
X + 15Y + 3Z

(9.47)

v=

6Y
X + 15Y + 3Z

(9.48)

Din aceste valori a coeficientilor de cromaticitate (valori tristimulus normate conform


(9.17)) se pot deduce transformarile valorilor tristimulus, adaugand conditia suplimentara
de pastrare a coordonatei de luminanta, V = Y :

U
0 0
X
3
V = 0 1 0 Y
W
21 32 12
Z

(9.49)

Insa nici acest spatiu nu ofera o proportionalitate directa ntre diferenta perceptuala
a culorilor si distanta euclidiana ntre tripletele corespunzatoare de valori tristimulus.
Primul spatiu de culoare ce respecta aceasta cerinta a fost propus de CIE n 1960 ca spatiu
de cromaticitate uniforma modificat (UCS modificat), sau U V W (9.50). Originea
acestui spatiu a fost translatata n punctul corespunzator culorii albe de referinta, de
189

coordonate cromatice (u0 ; v0 ); coordonata W este o radacina cubica a luminantei (si a


fost introdusa ca stralucirea, sau contrastul, unei pete uniforme de culoare).
1

W = 116V 3 17

(9.50)

V = 13W (v v0 )

(9.51)

U = 13W (u u0 )

(9.52)

In prezent, diferenta ntre culori este masurata dupa propunerile CIE 1976, care definesc
doua noi spatii de culoare, Luv si Lab. Ambele spatii folosesc aceeasi scara de luminanta
L, dependenta de luminanta perceputa (valoarea tristimulus Y ) printr-o transformare
aproape identica cu cea introdusa n (9.50):

Y
L = 116f
16
(9.53)
Y0
1
t 3 , daca t > 0.00886
(9.54)
f (t) =
16
, n rest
7.787t + 116
Scarile de crominanta corespunzatoare celor doua sisteme sunt date de (9.55) si (9.56)
pentru Luv, respectiv de (9.57) si (9.58) pentru Lab:
u = 13L(u u0 )
v = 13L(v v0 )



X
Y
= 500 f
f
X
Y
0
0
Z
Y
f
= 200 f
Y0
Z0

(9.55)
(9.56)

(9.57)
(9.58)

Spatiile Lab si Luv permit de asemenea reprezentarea unei culori n forma perceptuala
(conform figurii 9.6) prin schimbarea coordonatelor carteziene n coordonate polare n
spatiul componentelor de culoare. Saturatia si nuanta culorii (n spatiul Lab) sunt date
de:

b
1
Hab = tan
(9.59)
a
p
Cab =
(9.60)
a 2 + b 2
In mod echivalent se pot calcula aceleasi marimi si n spatiul Luv. Distanta ntre doua
culori poate fi calculata fie ca distanta euclidiana nte vectorii Lab asociati:
p
(9.61)
Eab = L2 + a 2 + b 2
fie, n coordonate polare, ca:
q
Eab =

2
2
L2 + Cab
+ Hab

190

(9.62)

L
Alb
Galben(+)

b*

Cab
Verde()

Hab

Rosu(+)

a*

Albastru()
Negru

Figura 9.6: Reprezentarea spatiului Lab n coordonate polare


unde

p
Hab = p 2 (Cab1 Cab2 a1 b2 a1 b2 )

iar

p=

1 daca
a1 b2 > a2 b1
.
1
n rest

(9.63)
(9.64)

O diferenta abia perceptibila JND corespunde unei distante euclidiene n spatiul Lab
de aproximativ 2.3 [56]. Coordonatele de cromaticitate a si b corespund continutului
culorii n gama rosu-verde si respectiv galben-albastru (realizand n acest fel o reprezentare
colorimetrica analoaga celei din sistemul vizual uman [23], [38]).

9.3

Modele de prelucrare si analiz


a a imaginilor color

Pentru prelucrarea imaginilor color sunt folosite n mod uzual doua modele: modelele
de prelucrare bazate pe extensia directa a tehnicilor scalare (de la imagini cu nivele de
gri) si modelele de prelucrare bazate pe considerarea simultana a tuturor componentelor
de culoare (tehnici vectoriale). Tehnicile de prelucrare vectoriale dau de cele mai multe
rezultate de calitate superioara, dar sunt de o complexitate crescuta. Tehnicile bazate pe
extensia directa a tehnicilor scalare sunt rapide si, aplicate corespunzator, pot produce
rezultate corespunzatoare. Putem distinge urmatoarele modele de prelucrare:
prelucrarea marginala (RGB), mai putin aplicata n ale sisteme de reprezentare a
culorilor, n care fiecare componenta de culoare este prelucrata identic si independent.
transformare liniara fixa a reprezentarii RGB n reprezentare luminanta
crominante; prelucrarea luminantei (mai rar si a crominantelor); se revine la RGB
191

prin transformarea inversa.


transformare liniara adaptiva a reprezentarii RGB n reprezentare cu componente
decorelate (prima ar trebui sa fie totusi luminanta); prelucrarea tuturor componentelor sau numai a celor mai importante (una sau doua); se revine la RGB prin
transformarea inversa.
transformare neliniara fixa a reprezentarii RGB n reprezentare luminanta
crominante; prelucrarea luminantei (mai rar si a crominantelor); se revine la RGB
prin transformarea inversa.
Segmentarea orientata pe regiuni a imaginilor color este relativ simpla, putandu-se folosi
instante ale algoritmilor de clustering sau de crestere si fuziune a regiunilor. Segmentarea
orientata pe contur a imaginilor color se poate realiza fie n domeniul spatial, prin intermediul unei harti de intensitati de tranzitie, fie n domeniul de frecventa.
Calculul hartii de intensitati de tranzitie se bazeaza pe determinarea neuniformitatii locale
de culoare si deci pe determinarea culorilor ce sunt extremele distributiei locale de culoare.
Definirea unei culori extreme n raport cu o multime data de culori implica nsa introducerea unei relatii de ordonare n spatiul culorilor, indiferent daca distanta dintre culori este
sau nu utilizata la determinarea ordonarii. Dupa cum a fost demonstrat de catre Barnett
[4], n spatii cu mai multe dimensiuni nu exista o extindere simpla si directa a conceptului
de ordonare. Singura relatie completa de ordine este ordonarea lexicografica (sau ordinea
de dictionar) care, n general, nu respecta topologia spatiului de culoare. Pentru a evita
aceste inconveniente, n implementarile practice se prefera relatiile de pre-ordonare [4]:
ordonarea marginala, ordonarea conditionala si ordonarea redusa.
Ordonarea marginala foloseste un model al vectorilor de tip stiva de scalari; ordonarea
este realizata individual pe fiecare componenta. In mod evident, prin acest tip de prelucrare nu se ia n considere corelatia ce exista ntre componentele vectorilor de culoare
si statisticile de ordine pot fi diferite de vectorii initiali ce au fost ordonati. Primele
detectoare de contur au fost asemenea extensii ale detectoarelor de contururi din imaginile cu nivele de gri. Nevatia [40] a propus folosirea unor operatori de contur de tip
Hueckel [68], identificand n mod independent contururile n diferite plane de culoare
(de intensitate, componente normalizate, luminanta-crominanta). Robinson [51] a extins operatorii compas bazati pe masti Kirsch [33] la reprezentari compuse ale culorii
(luminanta sau stralucire, de exemplu). Scharkanski si Venetsanopoulos [53] au propus
o abordare similara, prin extinderea mastilor Prewitt [33] si a operatorului LOG [12]
(Laplacian de Gaussiana) si agregarea raspunsurilor acestora provenite din componentele
de rosu, verde si albastru ale imaginilor. Metoda de ordonare redusa a fost foarte utilizata
pentru implementarea filtrelor vectoriale bazate pe rang; principiul acestei metode este
de a asocia fiecarui vector (fiecarei culori) cate un scalar, calculat pe baza componentelor sale. Ordonarea scalarilor induce o ordine a vectorilor corespunzatori. Trahanias si
Venetsanopoulos [63], [62] au propus mai multe tipuri de detectoare de contururi bazate
pe conceptul de prelucrare directionala a vectorilor de culoare diferenta dintre culori
fiind masurata de unghiul dintre cei doi vectori, iar vectorii de culoare fiind ordonati dupa
suma agregata a unghiurilor dintre vectori.
Mai recent a fost propusa folosirea numerelor hipercomplexe [52] (similare cu un numar
complex cu trei parti imaginare) pentru reprezentarea culorilor. Aceasta reprezentare
192

deschide perspectiva utilizarii tehnicilor frecventiale de prelucrare a imaginilor [33], [68].


Sangwine a demonstrat ca este posibila definirea unei extensii a transformatei Fourier
pentru numere hipercomplexe si deci este posibila obtinerea unui spectru color al imaginii color. Acest spectru are aceleasi proprietati ca orice spectru obisnuit (complex) al
unei imagini si deci permite extragerea contururilor prin operatii de filtrare de tip trece
sus si trece banda. Intr-o abordare similara de utilizare a spectrului Fourier a unei imagini
pentru identificarea informatiei de contur, s-a propus utilizarea unei reprezentari normalizate pur cromatice a culorilor [65], folosind deci numai numere complexe si transformata
Fourier uzuala.

193

194

Capitolul 10
Compresia imaginilor
Termenul de compresie a imaginilor (uneori numit si codare a imaginilor) se refera la o
clasa larga de tehnici si metode al caror scop este reprezentarea unui imagini date cu
un numar cat mai mic de biti (mai mic decat numarul de biti al reprezentarii initiale).
Necesitatea reducerii cantitatii de informatie necesara reprezentarii este evidenta daca
consideram cazul memorarii imaginilor radiografice (4000 x 2500 pixeli, cu 4096 nivele
de gri, deci 14,3 MB) sau al transmisiei de televizune alb-negru (625 x 625 pixeli cu 256
nivele de gri, de 50 de ori pe secunda, deci un flux de 18.6 MB/ secunda) [33]. Procesul de
recompunere a imaginii initiale din reprezentarea restransa se numeste decompresie sau
decodare; este evident ca prin decodare trebuie sa se obtina o imagine cat mai apropiata de
imaginea orginala. Exista doua categorii fundamentale de tehnici de compresie (codare):
codarea fara pierderi (n care imaginea decodata este identica cu imaginea initiala) si codarea cu pierderi, n care se admit mici diferente fata de original. Calitatea unui procedeu
de compresie (pentru o imagine data) se masoara prin factorul de calitate (raportul semnal
zgomot (3.7) dintre imaginea originala f si imaginea decodata g ) si factorul (raportul) de
compresie. Factorul de compresie C este raportul dintre cantitatea de informatie necesara
reprezentarii imaginii initiale si cantitatea de informatie necesara reprezentarii imaginii
codate; evident compresia are loc daca factorul de compresie este supraunitar (C > 1).
Uneori, factorului de compresie i se asociaza (sau este nlocuit de) rata de compresie:
cantitatea de informatie necesara reprezentarii comprimate a fiecarui pixel al imaginii;
rata de compresie se masoara n biti per pixel (bpp).
O alta clasificare posibila a tehnicilor de compresie se poate face dupa tipul imaginii
careia i se aplica: vom face astfel distinctia ntre compresia imaginilor binare si compresia
imaginilor cu nivele de gri si respectiv color. Se impune totusi o observatie: metodele
de codare ce se vor prezenta n cadrul tehnicilor speifice imaginilor binare pot fi folosite
pentru compresia oricarei succesiuni de valori binare, indiferent de semnificatia acestora
(ceea ce nseamna ca ar putea fi folosite si pentru compresia imaginilor cu nivele de gri
sau color) si sunt metode de compresie fara pierderi.

195

10.1

Tehnici de compresie f
ar
a pierderi

Putem considera ca singura categorie de imagini binare de interes sunt imaginile n albnegru (sau monocrome); valorile punctelor acestora sunt fie 0 (reprezentand fundalul de
culoare alba), fie 1 (reprezentand punctele de interes, de culoare neagra)1 . Cele doua clase
de metode de codare pe care le avem n vedere sunt codarea entropica (metoda de codare
Huffman) si metodele de codare on-line (pe flux de biti); deosebirea dintre aceste metode
(la un nivel al implementarii) este ca pentru codarea entropica este necesara parcurgerea
si stocarea intermediara a ntregii imagini.

10.1.1

Codarea entropic
a (Huffman)

Codarea entropica (Huffman) este metoda optimala de codare a unei surse de informatie.
Codarea sursei de informatie S ale carei mesaje sunt {s1 , s2 , ..., sN }, de probabilitati
{p(s1 ), p(s2 ), ..., p(sN )} prin alfabetul X cu D simboluri nseamna a asocia fiecarui mesaj
si al sursei primare de informatie un sir de simboluri din alfabetul codului. Lungimea
medie a cuvintelor de cod este data de raportul dintre entropia sursei primare si entropia
alfabetului codului:
H(S)
l=
(10.1)
H(X)
Se doreste obtinerea unei lungimi medii minime a cuvintelor de cod, si deci, echivalent, marirea entropiei alfabetului codului; la limita, lungimea media minima posibila de
obtinut este:
H(S)
lmin =
(10.2)
log D
Procedeul practic prin care se realizeaza alocarea simbolurilor din alfabetul codului astfel
ncat entropia acestuia sa fie maximizata (metoda Huffman) se bazeaza pe reducerea
iterativa a numarului de simboluri ale sursei de codat si construirea unei surse restranse.
La fiecare etapa cele D simboluri cele mai putin probabile ale sursei de informatie sunt
reunite ntr-un nou simbol; procedeul de restrangere continua pana cand se obtine o
sursa redusa cu exact D simboluri. Apoi, pentru fiecare reunire de simboluri, fiecare
mesaj individual va primi codul cuvantului reunit ca prefix, urmat de cate un simbol din
alfabetul codului. Vom considera urmatorul exemplu.
O sursa S genereaz
a 6 simboluri, de probabilit
ati descrise de vectorul P =
[0.3; 0.25; 0.2; 0.1; 0.1; 0.05]. Sursa este codat
a optimal, simbol cu simbol, cu cuvinte
de cod generate cu simboluri dintr-un alfabet ternar. Sa se calculeze cuvintele de cod,
arborele de codare si eficienta cod
arii.
Codarea optimala a unei surse se realizeaza conform algoritmului Huffman. Se stie ca
num
N Darul de simboluri ale sursei ce se codeaza trebuie sa ndeplineasca o anume relatie
N ; n acest caz, N = 6, D = 3 si deci
D1
63
3
N D
=
=
/N
D1
31
2
1

Deci conventia de reprezentare prin culori este modificata fata de conventia generala utilizata 0 nu
mai este negru, ci alb.

196

Completarea se face adaugand sursei simboluri de probabilitate nula; n acest caz, cu un


singur astfel de simbol adaugat obtinem N = 7 si
N D
73
4
=
= N
D1
31
2
Entropia sursei extinse S este data de:
H(S) =

7
X

p(si ) log p(si ) = (0.3 log 0.3 + 0.25 log 0.25 + 0.2 log 0.2 + 2 0.1 log 0.1)

i=1

0.05 log 0.05 0 log 0 = 2.366 bit/simbol


Atunci, conform (10.2), lungimea medie minima a unui cuvant de cod este:
lmin =

H(S)
2.366
=
= 1.493 bit
log D
log 3

Codarea Huffman este realizata conform tabelului 10.1.


Sursa
primara

p(si )

s1
s2
s3

0.3
0.25
0.2

s4
s5
s6
s7

0.1
0.1
0.05
0

Cod

Sursa
p(rji ) Cod
restransa
r11
r12
r13
r14
r15

0.3
0.25
0.2
0.15
0.1

Sursa
restransa
r21
r22
r23

p(rji ) Cod
0.45
0.3
0.25

0
1
2

00
01
02

010
011
012
Tabela 10.1: Codare Huffman

Cuvintele de cod sunt grupate n tabelul 10.2; pe baza lor putem calcula lungimea medie
a cuvintelor de cod:
l=

7
X

li p(si ) = 1 0.3 + 1 0.25 + 2 0.2 + 2 0.1 + 3 0.1 + 3 0.05 + 3 0 = 1.6

i=1

In cazul imaginilor (sau al sirurilor binare) mesajele sursei primare sunt formate din
grupuri de cate B biti succesivi (astfel, sursa primara are 2B mesaje, ale caror probabilitati
de aparitie sunt specifice imaginii considerate). Cu cat B este mai mare, cu atat mai
mare va fi eficienta codarii. Tabelul de codare (echivalenta ntre mesajele sursei primare
si sirurile de simboluri de cod) este specific fiecarei imagini si trebuie sa nsoteasca codul.
Codarea clasica este binara (D = 2, X = {0, 1}).
197

Sursa
primara
s1
s2
s3
s4
s5
s6
s7

p(si ) Cod
0.3
0.25
0.2
0.1
0.1
0.05
0

1
2
00
02
010
011
012

Lungime
1
1
2
2
3
3
3

Tabela 10.2: Coduri asociate simbolurilor sursei si lungimile lor

10.1.2

Codarea pe flux de biti

Metodele de codare pe flux de biti (on-line) se regasesc la primul nivel de codare al


transmisiilor de fax (RLE, WBS) sau ca tehnici generale de compresie a datelor, nglobate
atat n formate de fisiere grafice (TIFF) cat si n arhivatoare uzuale (ZIP) metoda ZivLempel. Aplicarea codarii la imagini presupune n primul rand transformarea imaginii
(structurii de matrice a acesteia) ntr-un vector (sir) prin concatenarea liniilor acesteia.
Codarea RLE
Principiul codarii RLE (Run Length Encoding) este acela de a memora numarul de simboluri succesive ale sirului binar ce au aceeasi valoare. Odata ce o secventa de simboluri
succesive de aceeasi valoare (run length) se ncheie, simbolul urmator nu poate avea decat
valoarea complementara celei initiale, prin alternanta. Sirul codat trebuie sa nceapa cu
valoarea primului simbol.
Conform acestei codari, sirul de valori binare 0, 1, 1, 1, 1, 0, 0, 0, 1, 0, 1, 1, 1, 0, 1, 1, 1 este codat RLE ca 0, 4, 3, 1, 1, 3, 1, 3, iar sirul binar 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0 este codat RLE
ca 1, 7, 1, 1, 5. Sirul cuvintelor de cod trebuie deci sa fie compus din codurile ce corespund lungimilor secventelor de valori identice succesive; aceasta nseamna ca numarul
de biti al reprezentarii binare al cuvintelor de cod trebuie sa permita reprezentarea
lungimii celei mai mari secvente. Cum determinarea de fiecare data a acestei lungimi
maximale si varierea lungimii cuvantului de cod nu este o solutie corespunzatoare, se
prefera fixarea unei lungimi maximale admise a secventelor. Orice secventa mai lunga
decat secventa maxima este despartita prin intercalarea fictiva a unor simboluri complementare. Sa consideram o codare RLE cu lungimea cuvantului de cod de 2 biti; aceasta
nseamna ca lungimea secventei maxime este 3 (codul 0 trebui rezervat pentru secventa
de lungime nula). Daca sirul binar este 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0 atunci sirul codat
va fi 1, 3, 0, 3, 0, 1, 1, 1, 3, 0, 2 (unde fiecare cifra va fi reprezentata pe 2 biti).
O codare mai buna se obtine daca lungimile secventelor de simboluri identice succesive
sunt codate (ntr-o faza ulterioara) entropic, cu un algoritm de tip Huffman. Standardul CCITT de transmisie fax recomanda folosirea unor codari Huffman truncheate: astfel, daca o lungime de secventa este mai mica decat 64 este codata direct, cuvantul de
cod respectiv numindu-se terminator; daca o lungime de secventa este cuprinsa n gama
[64;1791] se codeaza separat numarul de pixeli ce formeaza un multiplu de 64 (formand
198

un cod masca, make-up code) si restul mpartirii lungimii secventei la 64, cu un cod terminator. In plus, exista un cod special de sfarsit de linie (EOL). Tabelele de codare sunt
standardizate (se pot gasi de exemplu n [33, pp. 544-545]). Pe langa transmisia de fax,
codarea RLE mai este utilizata n diferite formate de fisiere imagine (BMP, PCX, TGA).
Codarea WBS
Prima etapa a codarii WBS (White Block Skipping) presupune mpartirea sirului binar
n grupe de cate D simboluri succesive. Principiul codarii este simplu: un bloc nul
este nlocuit cu un singur simbol de 0, un bloc nenul este prefixat de un simbol de 1
si copiat. Conform acestei codari (cu grupe de D = 3 simboluri), sirul de valori binare
0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0 este mpartit n grupele (0, 0, 0), (0, 1, 0), (0, 0, 1), (1, 1, 0),
(0, 0, 0) si codat ca (0), (1, 0, 1, 0), (1, 0, 0, 1), (1, 1, 1, 0), (0), transformandu-se n sirul
0, 1, 0, 1, 0, 1, 0, 0, 1, 1, 1, 1, 0, 0.
Daca sirul dat binar de n grupe de simboluri contine n0 grupe nule, n urma compresiei
mai raman (n n0 )(D + 1) + n0 simboluri si factorul de compresie este atunci:
C=

nD
(n n0 )(D + 1) + n0

(10.3)

Pentru ca sa existe compresie trebuie ca C > 1 si deci atunci


n0 D > n

n0
1
>
n
D

(10.4)

adica proportia de grupe nule din sir trebuie sa fie mai mare decat inversul numarului de
simboluri dintr-o grupa.
Pentru o larga categorie de imagini, lungimea blocului de codare D = 10 poate fi folosita
cu rezultate bune [33]. O mbunatatire a performantei se poate obtine daca se introduce
o adaptare a codarii, prin detectia liniilor albe (reprezentate doar cu valori 0) si codarea
unei linii ntregi cu un singur 0 (desigur ca n acest caz la codurile tuturor blocurilor
se mai adauga un prefix de valoare 1). O alta varianta a metodei exploateaza structura
bidimensionala a imaginii, codand blocuri patrate din imagine (deci imaginea nu mai este
vectorizata).
Codarea Ziv-Lempel
Codarea Ziv-Lempel nu are ca origine ideea explicita de a mari entropia alfabetului codului (precum codarea Huffman) ci se bazeaza pe tehnica dictionar LUT (folosita si la
reprezentarea imaginilor indexate): cuvintele de cod asociate unor siruri de simboluri
ale sursei de intrare sunt indicii (numerele de ordine) pozitiilor la care se gasesc respectivele siruri de simboluri n dictionarul codului (tabela de codare). Tabela de codare
(dictionarul) este creata pe masura parcurgerii sirului de simboluri de intrare, si, pentru
decodare, tabela se creaza din cuvintele de cod deja transmise (ceea ce nseamna ca nu
este necesara memorarea sau transmiterea explicita a tabelului de codare2 ).
2

Aceast
a caracteristica este probabil unica codului Ziv-Lempel; pentru toate celelalte aplicari ale
tehnicii LUT, tabela de codare este transmisa sau memorata mpreuna cu cuvintele de cod sau se pre-

199

Dictionarul initial are doua cuvinte: cuvantul 0, avand indicele 0 si cuvantul 1, avand
indicele 1. Din sirul de intrare (presupus binar) se extrage cate un bit si se verifica daca
sirul de biti deja extras se regaseste sau nu n dictionar. Daca sirul se regaseste n dictionar,
se mai adauga un bit din sirul de intrare. Daca sirul nu se regaseste n dictionar, atunci
sirul este trecut n dictionar, n sirul codat se scrie codul (indicele) prefixului sirului nou
adaugat (deci pozitia la care se gaseste n dictionar cuvantul la care adaugand ultimul
bit al sirului de intrare se obtine un cuvant nou) si ultimul bit din sir devine primul bit
al urmatorului sir de intrare. Procedeul continua pana cand sirul de intrare nu mai are
simboluri necodate. Daca, naintea terminarii simbolurilor din sirul de codat, tabela de
codare (cu numar fixat de intrari) se umple, exista doua variante de continuare: fie restul
sirului de intrare se codeaza conform tabelei de codare existente prin cautarea celor mai
lungi cuvinte de cod, fie tabela de codare este golita si se continua cu procedeul initial.
Sa consideram sirul de intrare 1, 0, 0, 0, 0, 1, 0, 1, 1, 1; dictionarul cuvintelor de cod
contine cuvantul 0 (cu indice 0) si cuvantul 1 cu indice 1. Simbolul curent este 1 (pe
prima pozitie a sirului de intrare) si formeaza sirul de biti extras; acest sir se regaseste n
dictionar (cu indicele 1) si atunci se mai extrage un bit din sir; sirul de biti extrasi devine
10. Cuvantul 10 nu exista n dictionar, si atunci: n sirul de iesire se scrie indicele celui
mai lung cuvant din dictionar la care adaugand un bit obtinem noul cuvant (noul cuvant
este 10, cuvantul prefix este 1, iar indicele scris la iesire este 1), n dictionar se adauga
cuvantul 10 (care va avea indicele 2), iar noua pozitie curenta din sirul de intrare este
ultimul bit al sirului deja extras, deci pozitia 2, bitul 0. Simbolul curent este 0; acest sir
se regaseste n dictionar (cu indicele 0) si atunci se mai extrage un bit din sir; sirul de
biti extrasi devine 00. Cuvantul 00 nu exista n dictionar, si atunci: n sirul de iesire se
scrie indicele prefixului noului cuvant (deci 0), n dictionar se adauga cuvantul 00 (care va
avea indicele 2), iar noua pozitie curenta din sirul de intrare este ultimul bit al sirului deja
extras, deci pozitia 3, bitul 0. Simbolul curent este 0; acest sir se regaseste n dictionar
(cu indicele 0) si atunci se mai extrage un bit din sir; sirul de biti extrasi devine 00. Sirul
00 se regaseste n dictionar (indicele 3) si atunci se mai extrage un bit din sir; sirul de
biti extrasi devine 000. Cuvantul 000 nu exista n dictionar, si atunci: n sirul de iesire se
scrie indicele prefixului noului cuvant (deci 3), n dictionar se adauga cuvantul 000 (care
va avea indicele 4), iar noua pozitie curenta din sirul de intrare este ultimul bit al sirului
deja extras, deci pozitia 5, bitul 0. Procedeul continua n mod analog.
Pentru decodare, fiecare nou cuvant de cod implica scrierea unei noi intrari n tabelul
de codare (dictionar) n care sirul de simboluri este format din prefix (sirul de simboluri
care se gaseste n dictionar la intrarea precizata de cuvantul de cod) si o terminatie de 1
bit, a carei valoare rezulta la primirea cuvantului de cod urmator (sa nu uitam ca sirurile
succesive de simboluri ce se codeaza au n comun ultimul, respectiv primul bit).
Metoda Ziv-Lempel a pus bazele unei clase mai largi de metode de compresie, incluzand
printre altele si varianta LZW (Lempel-Ziv-Walsh) folosita de utilitarul de compresie ZIP.

supune existenta unei tabele de codare implicite, cunoscute (ca de exemplu tabela de culoare cu nivele
de gri).

200

10.2

Tehnici de compresie cu pierderi a imaginilor

Cea mai imediata metoda de codare a unei imagini cu nivele de gri este aceea de a o
considera ca pe un sir de biti si de aplica metodele de codare pentru imagini binare: fie
pentru fiecare plan de bit al reprezentarii binare a nivelor de gri, fie pentru succesiunea
de biti a reprezentarilor nivelelor de gri. Asemenea abordari produc codari fara pierderi a
imaginilor si nu produc ntotdeauna rezultate spectaculoase. O mult mai mare amploare
a capatat clasa de metode de compresie cu pierderi controlabile.

10.2.1

Codarea predictiv
a

Codarea predictiva se bazeaza pe existenta unei importante corelatii spatiale ntre valorile
pixelilor unei imagini (deci valorile pixelilor vecini sunt asemanatoare). Aceasta corelatie
poate implica, de exemplu, ca valoarea unui pixel poate fi aproximata cu o combinatie
a valorilor unora dintre vecinii sai. Daca se stabileste o ordine de parcurgere a pixelilor
ce formeaza imaginea (deci daca se stabileste o ordine de baleiere a imaginii) si pentru
aproximarea valorii pixelului curent se folosesc pixeli vecini spatial lui, parcursi anterior,
spunem ca prezicem valoarea pixelului curent. Predictia se realizeaza printr-o functie care,
cunoscuta la nivelul ntregii imagini permite determinarea unei variante aproximative
a imaginii date cunoscand doar un numar mic de pixeli de start. Pentru a avea o
codare cat mai precisa, se folosesc si erorile dintre valorile prezise si cele reale; codarea
asociata imaginii initiale va contine deci functia de predictie, valorile de start si erorile
de aproximare ale fiecarui punct. Daca predictorul este determinat n mod corect, atunci
eroarea de predictie e(n) este mica si reprezentarea ei necesita mult mai putini biti decat
reprezentarea valorii originale u(n). Schema de codare cu predictie este reprezentata n
figura 10.1.
e(n)

intarziere

codor

canal de
comunicatie

u(n)

predictor cu
intarziere

up(n)

Figura 10.1: Codarea cu predictie.


Ecuatiile ce descriu procesul sunt ecuatia erorii (10.5) (care exprima eroarea de aproximare e(n) ca diferenta ntre valoarea corecta u(n) si valoarea prezisa up (n)) si ecuatia de
predictie (10.6) (ce exprima modul n care se determina valoarea aproximativa up (n) din
valorile anterioare u(n k1 ), u(n k2 ), ... pe baza predictorului pred):
e(n) = u(n) up (n)

(10.5)

up (n) = pred (u(n k1 ), u(n k2 ), ...)

(10.6)

201

Procesul de decodare este reprezentat schematic n figura 10.2. Eroarea de predictie eq (n)
(cuantizata) este adunata la valoarea aproximativa u0p (n), determinata cu acelasi predictor
pred din valorile u0 (n) deja calculate.
eq(n)
canal de
comunicatie

u(n)
+

decodor

predictor cu
intarziere
up(n)

Figura 10.2: Decodarea cu predictie.


Predictorii cei mai simpli sunt liniari si sunt invarianti la schimbarea punctului curent.
Predictorii pe linii sau coloana calculeaza aproximarea n punctul curent u(m, n) al imaginii ca valoarea anterioara de pe aceeasi linie u
b(m, n) = u(m, n 1) sau de pe aceeasi
coloana u
b(m, n) = u(m 1, n) (daca ordinea de baleiaj este cea uzuala). Se mai pot folosi
predictori de tip valoare medie:
u
b(m, n) =
u
b(m, n) =

1
(u(m 1, n) + u(m, n 1))
2

1
(u(m 1, n) + u(m, n 1) + u(m 1, n 1) + u(m 1, n + 1))
4

(10.7)
(10.8)

Un caz particular de codare cu predictie este modulatia delta, caracterizata de cuantizarea


erorii de predictie (aproximare) e(n) cu un singur bit (bit de semn).

10.2.2

Compresia imaginilor cu transformate

Principiul compresiei cu transformate a imaginilor se bazeaza pe proprietatile de compactare a energiei si decorelare a componentelor spectrale pe care le prezinta majoritatea
transformarilor integrale unitare (discutate n capitolul 4). Atata vreme cat cea mai mare
parte a energiei este distribuita n cateva componente spectrale (de joasa frecventa), toate
celelalte pot fi ignorate; astfel memoria necesara reprezentarii este mult mai mica. Este
evident ca o asemenea metoda de compresie este cu pierderi.
Aplicarea practica a compresiei cu transformate trebuie sa aiba n vedere trei aspecte:
alegerea transformatei, stabilirea frecventei limita de la care ncepe ignorarea valorilor si,
n fine, cuantizarea componentelor spectrale pastrate.
Transformarea optimala trebuie sa decoreleze complet componentele spectrale (asigurand
astfel si compactarea maxima a energiei si cea mai buna eroare de aproximare prin
trunchierea frecventelor nalte). Decorelarea completa este dependenta de proprietatile
statistice ale imaginii (matrice de covariatie) deci, teoretic, pentru fiecare imagine n
parte, trebuie gasita transformarea optimala. Aceasta transformare este transformata
Karhunen-Loeve: transformare integrala unitara a carei matrice de transformare are pe
202

coloane vectorii proprii normati ai matricii de covariatie a imaginii. Cum aceasta transformare este evident unica pentru o clasa de imagini, n practica se ncearca gasirea unei
aproximatii. In conditiile n care majoritatea imaginilor naturale pot fi aproximate printrun model Markov puternic corelat (exprimand dependenta puternica a valorii pixelilor de
valorile vecinilor lor imediati), transformata cosinus s-a dovedit o foarte buna alegere.
Cuantizarea componentelor spectrale poate integra si selectia componentelor celor mai
importante: componentele de frecventa joasa sunt cuantizate cu o precizie mai mare, iar
componentele de frecventa nalta sunt cuantizate grosier (echivalent chiar cu eliminarea
acestora). Numarul de nivele de cuantizare si distributia acestora (diferentele dintre
nivelele vecine) este adaptate statisticii semnalului (cuantizarea optima este cuantizarea
LloydMax [33], [57]).
Exemplul cel mai des folosit de compresie cu transformate este standardul de compresie
JPEG (fisiere imagine cu extensia .jpg). Imaginea este divizata n blocuri de 8 x 8 pixeli,
care nu se suprapun. Fiecarui bloc i se aplica o transformata cosinus bidimensionala,
iar cei 64 de coeficienti ai transformarii sunt copiati ntr-un vector prin baleierea pe diagonala a blocului de 8 x 8 pixeli. Coeficientii sunt cuantizati n conformitate cu un
numar prestabilit de nivele de cuantizare (stabilit prin standard, si proportional cu factorul de calitate dorit pentru imaginea refacuta). Coeficientii corespunzand frecventelor
nule (valorile medii ale blocurilor) sunt codate predictiv printr-o tehnica de tip DPCM
(Differential Pulse Code Modulation). Valorile celorlalti coeficienti sunt codati entropic
(Huffman). Factorii de compresie ce rezulta sunt cuprinsi n mod tipic ntre 10 si 100.
Aspectul de compresie cu pierderi (diferentele fata de imaginea originala) se manifesta
prin efectul de blocking: sublinierea frontierelor de separatie a blocurilor de baza (efect
observabil si n figura 10.3).

a)

b)

Figura 10.3: Imagini comprimate JPEG cu rat


a mare de compresie (si factor mic de
calitate); efectul de blocking este evident.)

10.2.3

Codarea cu arbori cuaternari

Un arbore cuaternar (numit n engleza quadtree) este un arbore n care fiecare nod neterminal are exact patru descendenti.
203

Orice imagine patrata, de dimensiune putere a lui 2 (N = 2K ) poate fi reprezentata


(ntr-o reprezentare de tip ierarhic) pe o structura de arbore cuaternar. Nodurile de pe
fiecare nivel al arborelui corespund unei mpartiri a unei zone patrate din imagine n patru
sferturi. Radacina arborelui este asociata ntregii imagini (imaginii initiale), nodurile
de pe primul nivel al arborelui corespund celor patru sferturi ale imaginii, nodurile de
pe nivelul doi corespund sferturilor fiecarui sfert anterior determinat al imaginii si asa
mai departe. Impartirea imaginii poate continua pana cand nodurile nivelului curent al
arborelui corespund unor zone patrate a caror dimensiune este de un pixel. Adancimea
arborelui astfel obtinut este K, si fiecare pixel al imagini va corespunde unui nod terminal
(frunza) de pe ultimul nivel al arborelui. Fiecare nod terminal contine informatia de
valoare a pixelului la care este asociat.
Structura arborelui anterior poate fi simplificata prin introducerea n etapa de constructie
a unui test de uniformitate a regiunilor reprezentate de fiecare nod: daca regiunea patrata
considerata nu este uniforma, atunci aceasta va fi descompusa prin taiere n patru parti
egale si nodul corespunzator va deveni neterminal (va capata cei patru descendenti).
Daca regiunea patrata considerata este uniforma (deci este compusa din pixeli de acelasi
fel), nodul respectiv devine un nod frunza (terminal) al arborelui (deci nu mai are
descendenti). Fiecare nod terminal contine informatia de valoare a zonei de imagine
la care este asociat. O zona este considerata uniforma daca diferenta maxima de nivel de
gri a pixelilor ce o formeaza nu depaseste un anumit prag impus; valoarea zonei uniforme
este media nivelelor de gri a pixelilor ce o compun.
Pentru refacerea imaginii intiale din reprezentarea arborescenta este suficienta alegerea
nodurilor terminale a caror valoare corespunde pixelilor de obiect. Adancimea la care este
plasata n arbore o frunza contine informatia de dimensiune a zonei patrate corespunzatoare din imagine (o frunza situata la adancimea h corespunde unei zone patrate de latura
2Kh pixeli). Pozitia frunzei fata de nodurile de pe acelasi nivel ce au acelasi predecesor
este direct determinata de regula de alocare a sferturilor unei zone la nodurile descendente
ale arborelui (regula de alocare trebuie sa se pastreze pentru ntregul arbore). Codarea
imaginii (sau a arborelui cuaternar asociat) se face prin memorarea pozitiei n arbore a
nodurilor terminale si a valorilor acestora. Pozitia n arbore a unui nod se specifica prin
descrierea caii prin care se ajunge la acesta, pornind de la radacina arborelui; aceasta
cale va contine codurile de alocare a descendentilor ce corespund avansului n adancime
n arbore.
Principalul inconvenient al metodei de etichetare folosind arborele cuaternar este legat
de complexitatea construirii acestuia prin abordarea ierarhica top-down (de sus n jos)
prezentata; n particular, testul de uniformitate la nivelul fiecarui bloc presupune testarea
valorilor tuturor pixelilor care compun blocul. Pe ansamblu, aceasta duce la parcurgerea
fiecarui pixel din imagine de un numar de ori egal cu adancimea n arborele cuaternar
al blocului patrat din care face parte. Pentru a nlatura acest incovenient este suficient
ca pixelii imaginii sa nu mai fie parcursi n ordinea traditionala de baleiaj (pe linii, de la
stanga la dreapta si de sus n jos), ci ntr-o alta ordine care sa i prearanjaze pe grupuri
ce corespund patratelor de diviziune a imaginii. Un asemenea baleiaj este reprezentat
de o curba de umplere a spatiului: un parcurs ce trece o singura data prin fiecare pixel
al imaginii, nu se autointersecteaza si n care oricare doi pixeli parcursi consecutiv sunt
vecini spatial n imagine (ntr-o vecinatate de tip V4 sau V8 ). Curbele de umplere a
spatiului sunt structuri fractale, definite prin repetarea la diferite nivele ierarhice a unei
204

a)

b)

c)

d)

Figura 10.4: Compresia cu arbori cuaternari a unor imagini cu nivele de gri folosind
un prag de uniformitate de a) 50 (4705 noduri terminale, SNR=21.6 dB), b) 130 (2005
noduri terminale, SNR=19.9 dB), c) 10 (1212 noduri terminale, SNR=28 dB), d) 30
(6069 noduri terminale, SNR=27 dB).)
aceleiasi structuri. Pentru baleiajul imaginilor s-au retinut doua astfel de curbe: curba
Peano-Hilbert (numita si curba Peano n U, dupa forma celulei sale de baza) (vezi figura
10.2.3 a)) si curba Morton (sau curba Peano n Z) (vezi figura 10.2.3 b)).
Dispunand de o astfel de ordine de baleiere este evident ca daca se parcurge imaginea n
acesta ordine, zonele patrate uniforme (cu pixelii de aceeasi valoare) sunt detectate ntr-o
singura trecere si astfel arborele cuaternar poate fi creat direct prin nodurile sale terminale.
Pentru o implementare eficienta este nsa necesara si deducerea rapida a indicelui pe curba
de baleiere a pixelilor, pornind de la coordonatele lor n imagine. Doar curba Peano n
Z are o asemenea relatie rapida de calcul, prin ntreteserea bitilor ce dau coordonatele
n imagine a punctului. Cuvantul binar ce exprima indicele pe curba a oricarui punct
este format din bitii din coordonata verticala, ce vor ocupa pozitiile de ordin par si din
bitii din coordonata orizontala ce vor ocupa pozitiile de ordin impar (pastrandu-si aceeasi
ordine de rang).

10.2.4

Cuantizarea vectorial
a

Cuantizarea vectoriala este un algoritm de compresie a imaginilor ce se aplica asupra


unor date vectoriale si nu scalare, putand fi interpretat ca o extensie a conceptului de
205

1 14

0
0

15
12

3
2 13
4

8
11

6 9

10

1 4

a)

8
2

12

13

11 14

15

3
10

b)

Figura 10.5: Modele de baleiaj a imaginilor: a) curba Peano si b) curba Z.


cuantizare scalara. Cuantizarea scalara asociaza unei multimi mari de valori numere dintro multime mai mica (n mod tipic acestea din urma fiind numere naturale); asocierea
include (chiar daca nu explicit) operatii de tipul rotunjirii la cel mai apropiat ntreg.
Cuantizarea vectoriala aproximeaza (sau rotunjeste) un grup de numere deodata, nu doar
unul singur. Asadar, pentru a realiza o cuantizare vectoriala sunt necesare un set de
vectori de aproximare (inclusiv metoda prin care acestea pot fi deduse) si o regula de
asociere a vectorilor de intrare cu vectorii de aproximare.
Sa notam cu xi al i-lea vector de intrare si cu j al j-lea vector de aproximare. Operatia
de cuantizare presupune nlocuirea vectorilor de intrare xi cu vectori de aproximare j ,
introducand deci erori; pentru ca erorile (masurate de eroarea patratica medie) sa fie
cat mai mici, este necesar ca pentru fiecare vector de intrare, aproximarea sa se faca cu
vectorul de aproximare cel mai apropiat (n sensul distantei euclidiene). Aceasta este
regula de asociere. Daca exista n vectori de aproximare ce pot fi folositi, acestia se pot
grupa ntr-un tabel de codare (existent si la codare si la decodare), iar fiecare vector de
aproximare j va fi reprezentat doar prin indicele j (deci o alta aplicare a tehnicii LUT).
Daca vectorii de intrare au p componente, codate fiecare cu cate b biti, iar numarul de
vectori de aproximare poate fi reprezentat pe nb biti, atunci factorul de compresie realizat
de cuantizarea vectoriala este dat de3 :
C=

pb
nb

(10.9)

Pentru cazul imaginilor, vectorii de intrare se aleg ca blocuri patrate, nesuprapuse ntre
ele, din imagine. Dimensiuni uzuale ale acestor blocuri sunt 4 x 4 si 8 x 8 (rezultand deci
vectori de intrare cu 16, respectiv 64 de componente). Daca consideram cazul imaginilor
cu nivele de gri uzuale, reprezentate cu 256 nivele de gri (b = 8) si dimensiuni ale tabelei
3

Acest mod de calcul al raportului de compresie nu tine seama de necesitatea transmiterii sau
memorarii si a tabelului de codare, de dimensiune npb biti.

206

Figura 10.6: Tabel de cuantizare cu 8 blocuri de 10 10 pixeli sintetizat din imaginea din
figura 10.7 a).
de codare n = 256 (256 vectori de aproximare), atunci raportul de compresie este de 16,
respectiv 64.
Construirea tabelei de codare (determinarea vectorilor de aproximare) se realizeaza n
mod clasic prin algoritmi de clustering.

207

a)

b)

c)

d)

e)

f)

Figura 10.7: a), b) Imaginii originale cu nivele de gri (8bpp); c), d) Imaginile obtinute
prin compresia vectorial
a a imaginilor din a) si b) dupa tabelul de codare format din 8
blocuri de 10 10 pixeli, sintetizat din imaginea din a); compresia este de 800/3; e),
f ) Imaginile obtinute prin compresia vectorial
a a imaginilor din a) si b) dupa tabelul de
codare format din 8 blocuri de 4 4 pixeli, sintetizat din imaginea din a); compresia este
de 128/3;

208

Bibliografie
[1] Vistex Texture Database. MIT, http://www.media.mit.edu/vismod.
[2] ISO/IEC 15938-1. Multimedia Content Description Interface part I: Systems,
2002.
[3] J. Bajon, M. Cattoen, si L. Liang. Identification of multicoloured objects using a
vision module. In Proc. of the 6th RoViSeC, pp. 2130, 1985.
[4] V. Barnett. The Ordering of Multivariate Data.
139(3):318354, 1976.

J. of. Royal Stat. Soc. A,

[5] C. G. Bhattacharya. A simple method of resolution of a distribution into gaussian


components. Biometrics, 23:115135, 1967.
[6] M. Borsotti, P. Campadelli, si R. Schettini. Quantitative Evaluation of Color Image
Segmentation Results. Pattern Recognition Letters, 19:741747, 1998.
[7] J. Canny. A Computational Approach to Edge Detection. IEEE Trans. on PAMI,
8(6):679698, 1986.
[8] K. R. Castleman. Digital Image Processing. Prentice Hall, Englewood Cliffs NJ,
1996.
[9] R. J. Chen si B. C. Chieu. Three-dimensional morphological pyramid and its application to color image sequence coding. Signal Processing, 44:163180, 1995.
[10] A. Chu, C. M. Sehgal, si J. F. Greenleaf. Use of Gray Level Distribution of Run
Lengths for Texture Analysis. Pattern Recognition Letters, 11:415420, 1990.
[11] M. Ciuc si C. Vertan. Prelucrarea statistica a semnalelor. MatrixROM, Bucuresti,
2005.
[12] J. P. Cocquerez si S. Philipp, editors. Analyse dimages: filtrage et segmentation.
Masson, Paris, 1995.
[13] D. Coltuc si Ph. Bolon. Strict Ordering on Discrete Images and Applications. In
Proc. of IEEE International Conference on Image Processing, vol. 3, pp. 150153,
Kobe, Japan, Oct. 1999.
[14] D. Coltuc, Ph. Bolon, si J. M. Chassery. Exact Histogram Specification. IEEE
Trans. on Image Processing, 15(5):11431152, 2006.
209

[15] Colectiv. Dictionarul Explicativ al Limbii Rom


ane. Ed. Univers Enciclopedic, Bucuresti, 1996.
[16] J. C. Dalton. Visually Optimized Color Image Enhancement. Proc. SPIE: Perceiving, Measuring and Using Color, 1250:177188, 1990.
[17] B. R. Dasarathy si E. B. Holder. Image Characterization based on Joint Gray-level
Run-length Distributions. Pattern Recognition Letters, 12:497502, 1991.
[18] J. M. Fuentes, M. Lucene, N. Perez de la Blance, si J. F. Valvidia. A new method
to segmenting color images. In Proc. of the 8th National Symposium on Pattern
Recognition and Image Analysis, pp. 233238, Barcelona, Spain, 23-25 Apr. 1997.
[19] M. M. Galloway. Texture Analysis using Graylevel Runlengths. Computer, Graphics and Image Processing, 4:172179, 1975.
[20] C. Gazdaru si C. Constantinescu. Indrumar pentru electronisti. Radio si televiziune.
Ed. Tehnica, Bucuresti, 1986.
[21] R. C. Gonzales si R. E. Woods. Digital Image Processing. Addison Wesley, Reading
MA, 1992.
[22] H. Grassmann. On the theory of compound colors. Philosophical Magazine, Serial
4, 7:254264, 1854.
[23] M. Gross. Visual Computing. Springer Verlag, Berlin, 1994.
[24] S. L. Guth. Unified model for human color perception and visual adaption. Proc.
SPIE: Human Vision, Visual Processing and Digital Display, 1077:370390, 1989.
[25] R. M. Haralick. Statistical and Structural Approaches to Texture. Proc. of IEEE,
67(5):786804, May 1979.
[26] R. C. Hardie si C. G. Boncelet. LUM Filters: a class of rank order based filters
for snoothing and sharpening. IEEE Tran. on Signal Processing, 41(3):10611076,
1993.
[27] S. Haykin. Adaptive Filter Theory. Prentice-Hall, Inc., Englewood Cliffs, NJ, 1991.
[28] E. Hering. Outlines of a theory of the light sense. Harvard University Press, Cambridge MA, 1964. Tradusa de L. M. Hurvich si D. Jameson. Publicata n original n
1920.
[29] J. Huang, S. R. Kumar, M. Mitra, si W.-J. Zhu. Spatial Color Indexing and Applications. In IEEE International Conference on Computer Vision ICCV 98, Bombay,
India, 4-7 Jan. 1998.
[30] J. Huang, S. R. Kumar, M. Mitra, W.-J. Zhu, si R. Zabih. Image Indexing using
Correlograms. In Computer Vision and Pattern Recognition CVPR 97, San Juan,
Puerto Rico, 17-19 Jun. 1997.
[31] M. Hummel. Image Enhancement by Histogram Transformation. Computer Vision,
Graphics and Image Processing, 6:184195, 1977.
210

[32] N. Jacobson si W. Bender. Strategies for selecting a fixed palette of colors. Proc.
SPIE: Human Vision, Visual Processing and Digital Display, 1077:333342, 1989.
[33] A.K. Jain. Fundamentals of Digital Image Processing. Prentice Hall Intl., Englewood
Cliffs NJ, 1989.
[34] L. Karam si C. Podilchuk. Chroma Coding for Video at Very Low Bit Rates.
In Proc. of IEEE Conference on Image Processing ICIP 95, vol. 1, pp. 562565,
Washington D.C., USA, 23-26 Oct. 1995.
[35] J. R. Kender. Saturation, hue, and normalized color; calculation, digitalization
effects, and use. Technical report, Carnegie-Mellon University, 1976.
[36] J. Lin si Y. H. Yang. Multiresolution Color Image Segmentation. IEEE Tran. on
PAMI, 16(7):689700, 1994.
[37] B. B. Mandelbrot. The Fractal Geometry of Nature. Freeman Publ., San Francisco
CA, 1983.
[38] E. Martinez-Urlegas. Spatiotemporal Multiplexing of Chromatic and Achromatic
Information in Human Vision. Proc. SPIE: Human Vision and Electronic Imaging:
Models, Methods and Applications, 1249:178198, 1990.
[39] J. C. Maxwell. On the theory of three primary colors, pp. 445450. Science Papers
1. Cambridge University Press, 1890.
[40] R. Nevatia. A Color Edge Detector and its Use in Scene Segmentation. IEEE
Trans. on Syst., Man and Cyb., 7(11):820826, Nov. 1977.
[41] M. Nixon si A. Aguado. Feature Extraction and Image Processing. Newnes, Oxford,
UK, 2002.
[42] Y. Ohta, T. Kanade, si T. Sakai. Color information for region segmentation.
Computer Graphics and Image Processing, 13:222241, 1980.
[43] J. ORourke. Computational Geometry in C. Cambridge University Press, Cambridge, 1995.
[44] H. Palus. Representation of colour images in different colour spaces. In S. J.
Sangwine si R. E. N. Horne, editors, The Colour image processing handbook, pp.
6790, London, UK, 1998. Chapman and Hall.
[45] A. Pentland. Fractal-based Description of Natural Scenes. IEEE Trans. on Pattern
Analysis and Machine Intelligence, 6(6):661674, 1984.
[46] I. Pitas si A. N. Venetsanopoulos. Nonlinear Digital Filters - Principles and Applications. Kluwer Academic Publ., Norwell MA, 1990.
[47] S. M. Pizer, E. P. Amburn, J. D. Austin, R. Cromartie, A. Geselowitz, T. Greer, B. ter
Haar Romeny, B. Zimmerman, si K. Zuiderveld. Adaptive Histogram Equaliztion
and its variations. Computer Vision, Graphics and Image Processing, 39:355368,
1987.
211

[48] C. A. Poynton. A guided tour of color space. In New Foundations for Video Technology: Proc. of the SMPTE Advanced Television and Electronic Imaging Conference,
pp. 167180, San Francisco, USA, Feb. 1995.
[49] T. Randen si J. H. Husoy. Filtering for texture classification: a comparative study.
IEEE Trans. on Pattern Analysis and Machine Intelligence, 21(4):291310, Apr.
1999.
[50] R. M. Rangayyan. Biomedical Image Analysis. CRC Press, Boca Raton, FL, 2005.
[51] G. S. Robinson.
Sept./Oct. 1977.

Color Edge Detection.

Optical Engineering, pp. 525530,

[52] S. J. Sangwine si R. E. N. Horne, editors. The Colour image processing handbook.


Chapman and Hall, London, UK, 1998.
[53] J. Scharcanski si A. N. Venetsanopoulos. Color Image Edge Detection Using Directional Operators. In Proc. of the IEEE Workshop on Nonlinear Signal and Image
Processing, vol. 2, pp. 511514, Neos Marmaras, Greece, Jun. 1995.
[54] M. Schmitt si J. Matiolli. Morphologie Mathematique. Masson, Paris, 1994.
[55] J. Serra. Image Analysis and Mathematical Morphology. Academic Press, London,
1982.
[56] G. Sharma si H. J. Trusell. Digital Color Imaging. IEEE Trans. on Image Processing, 6(7):901932, Jul. 1997.
[57] A. Spataru. Teoria Transmisiunii Informatiei. Ed. Didactica si Pedagogica, Bucuresti, 1983.
[58] W. S. Stiles si J. M. Burch. NPL colourmatching investigation: final report.
Optica Acta, 6:126, 1959.
[59] J. M. Taylor. Color Spaces: Language and Framework for Color. In Proc. of IST
and SID Color Imaging Conference: Transforms and Transportability of Color, pp.
611, USA, 1993.
[60] J. M. Tenenbaum, T. D. Garvey, S. Weyl, si H. C. Wolf. An interactive facility
for scene analysis research. Technical Report 87, Stanford Research Institute, AI
Center, 1974.
[61] C. Tomasi si R. Manduchi. Bilateral Filtering for Gray and Color Images. In Proc.
of IEEE International Conference on Computer Vision, pp. 18, Bombay, India,
1998.
[62] P. E. Trahanias, D. Karakos, si A. N. Venetsanopoulos. Directional processing of
color images: Theory and experimental results. IEEE Trans. on Image Processing,
5(6):868880, Jun. 1996.
[63] P. E. Trahanias si A. N. Venetsanopoulos. Color Edge Detection Using Vector
Statistics. IEEE Trans. on Image Processing, 2(2):259264, Apr. 1993.
212

[64] M. Tuceryan si A. K. Jain. Texture Analysis. In C. H. Chen, L. F. Pau, si P. S. P.


Wang, editors, Handbook Pattern Recognition and Computer Vision, pp. 235276,
Singapore, 1993. World Scientific.
[65] C. Vertan si N. Boujemaa. Color Texture Classification by Normalized Color Space
Representation. In Proc. of ICPR 2000, vol. 3, pp. 584587, Barcelona, Spain, 3-8
Sept. 2000.
[66] C. Vertan, M. Ciuc, si V. Buzuloiu. Color Approximation by the Multivariate Bhattacharya Method. In Proc. of the International Conference on Systems, Circuits and
Signals SCS 1999, pp. 159162, Iasi, Romania, 2-4 Jul. 1999.
[67] C. Vertan, I. Gavat, si R. Stoian. Variabile si procese aleatoare: Principii si Aplicatii.
Ed. Printech, Bucuresti, 1999.
[68] F. M. Wahl. Digital Image Signal Processing. Artech House, Boston, 1987.
[69] X. Wang si G. Bertrand. Some Sequential Algorithms for a Generalized Distance
Transformation Based on Minkowski Operations. IEEE Trans. on Pattern Analysis
and Machine Intelligence, 14(11):11141121, 1992.
[70] T. Young. On the theory of light and colors. Philosophical Transactions of the
Royal Society of London, 92:2071, 1802.
[71] P. Zamperoni. Image Enhancement. Advances in Imaging and Electron Physics,
92:177, 1995.

213

S-ar putea să vă placă și