1 Inalpha.imag.pub.ro/ro/cursuri/paic/doc/cbir.pdf · autare a imaginilor p e baza similarit at ii...

140

Transcript of 1 Inalpha.imag.pub.ro/ro/cursuri/paic/doc/cbir.pdf · autare a imaginilor p e baza similarit at ii...

Constantin VERTAN Mihai CIUC

C�autarea imaginilor prin similaritatea

cont�inutului: o introducere

Editura Printech

2002

Cuvant �nainte

Caracteristica de�nitorie a ultimilor ani a fost, f�ar�a �ndoial�a, dezvoltarea exploziv�a a tehnologiei

informat�iei, sub diferitele sale aspecte; comunicat�iile mobile �si globalizarea ret�elei Internet au

dus la multiplicarea cantit�at�ii de informat�ii disponibile, distribuite peste un spat�iu virtual ce

acoper�a �ntreg globul. Datele �si informat�iile vehiculate sunt din ce �n ce mai frecvent de tip

multimedia, �ncapsuland text, sunet, imagini statice, gra�c�a �si secvent�e de imagini. Adaptarea

la aceast�a nou�a realitate impune dezvoltarea sust�inut�a a dou�a direct�ii de cercetare: �n primul

rand tehnicile de c�autare a informat�iei { �si mai ales a imaginilor { diferite de cea textual�a �si

apoi modul de acces �si accesibilitate pentru formularea unei cereri de informat�ii de c�atre un

utilizator.

In momentul de fat��a, atat mecanismele de gestiune a bazelor de date clasice cat �si motoarele de

c�autare Internet sunt �n mod esent�ial orientate c�atre utilizarea exclusiv�a a informat�iei textuale

(sau textualizate prin utilizarea unei anot�ari manuale sau a unei informat�ii auxiliare obt�inute

�n mod automat). Tendint�a actual�a a cercet�arii este de a investiga posibilit�at�ile de organizare

a bazelor de imagini dup�a criterii de similaritate vizual�a a cont�inutului imaginilor. Aceast�a

direct�ie de cercetare se va situa deci la con uent�a model�arii statistice �si matematice, a analizei

imaginilor, a tehnologiei multimedia, Internet �si bazelor de date.

Pe scurt, paradigma de c�autare a imaginilor pe baza similarit�at�ii vizuale a cont�inutului acestora

are patru componente esent�iale:

� alegerea modelului c�autat (imaginea exemplu sau o descriere a acesteia);

� evaluarea cont�inutului vizual al exemplului �si a tuturor imaginilor din baza de imagini �n

care se face c�autarea;

� evaluarea similarit�at�ii dintre imaginea exemplu �si celelalte imagini din baza de imagini;

� ordonarea imaginilor din baza de imagini �n ordine descresc�atoare a similarit�at�ii cu exem-

plul �si prezentarea acestora utilizatorului.

Aceast�a lucrare se dore�ste a � o prim�a parte, introductiv�a, �n domeniul fascinant al c�aut�arii

imaginilor dup�a similaritatea cont�inutului vizual. Astfel, vor � abordate diferite solut�ii existente

pe plan mondial pentru implementarea unor astfel de sisteme, precum �si modalit�at�ile esent�iale

de descriere a cont�inutului imaginilor, conform modelului culoare{textur�a{form�a. In �nal, este

prezentat prototipul unui sistem deschis pentru indexarea �si c�autarea imaginilor, realizat de

autori.

Tip�arirea acestei lucr�ari este �nant�at�a prin Grantul de cercetare num�arul 101/ 2001 al CNCSIS

(Consiliul Nat�ional al Cercet�arii S�tiint�i�ce din Inv�at��amantul Superior), intituluat \Sistem de

c�autare a imaginilor prin similaritate vizual�a a cont�inutului".

1

Cuprins

1 Introducere �si vedere de ansamblu 7

1.1 Punerea problemei . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

1.2 Structura sistemelor de indexare �si reg�asire a imaginilor . . . . . . . . . . . . . . 9

1.2.1 Tehnici de descriere a imaginilor . . . . . . . . . . . . . . . . . . . . . . . 9

1.2.2 Tehnici de partit�ionare a imaginilor . . . . . . . . . . . . . . . . . . . . . 12

1.3 Organizarea lucr�arii . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

2 Sisteme de indexare �si c�autare a imaginilor 15

2.1 Sisteme comerciale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

2.1.1 Excalibur Visual RetrievalWare SDK . . . . . . . . . . . . . . . . . . . . 15

2.1.2 ImageFinder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

2.1.3 IMatch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

2.1.4 QBIC Development Kit . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

2.1.5 Virage VIR Image Engine SDK . . . . . . . . . . . . . . . . . . . . . . . 20

2.2 Sisteme necomerciale (academice) . . . . . . . . . . . . . . . . . . . . . . . . . . 21

2.2.1 BlobWorld . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

2.2.2 CANDID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

2.2.3 FIDS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

2.2.4 ImageRover . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

2.2.5 Photobook . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

2

2.2.6 SurfImage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

3 Reprezentarea culorilor 27

3.1 Fundamentele colorimetriei . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

3.1.1 Potrivirea culorilor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

3.1.2 Reproducerea culorilor . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

3.1.3 Percept�ia culorilor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

3.1.4 Teoria culorilor opuse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

3.2 Sisteme colorimetrice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

3.2.1 Sisteme primare de reprezentare . . . . . . . . . . . . . . . . . . . . . . . 34

3.2.2 Sisteme de reprezentare derivate . . . . . . . . . . . . . . . . . . . . . . . 36

3.2.3 Sisteme de reprezentare perceptual�a . . . . . . . . . . . . . . . . . . . . . 39

3.2.4 Sisteme de reprezentare cu cromaticitate uniform�a . . . . . . . . . . . . . 43

3.3 Aplicat�ii directe ale reprezent�arilor �ntr-un spat�iu de culoare . . . . . . . . . . . 46

4 Descrierea culorilor din imagini 50

5 Descrierea texturilor 55

5.1 Caracterizarea texturilor prin momente statistice . . . . . . . . . . . . . . . . . 57

5.2 Caracterizarea texturilor prin matrici de

coocurent��a . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

5.3 Caracterizarea texturilor prin izosegmente . . . . . . . . . . . . . . . . . . . . . 61

5.4 Caracterizarea spectral�a a texturilor . . . . . . . . . . . . . . . . . . . . . . . . . 65

5.5 Caracterizarea texturilor prin tehnici fractale . . . . . . . . . . . . . . . . . . . . 67

5.5.1 Calculul dimensiunii fractale . . . . . . . . . . . . . . . . . . . . . . . . . 68

5.5.2 Lacunaritatea . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69

5.6 Incheiere . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69

3

6 Descrierea primitivelor vizuale �si a formelor 71

6.1 Descrierea global�a a primitivelor vizuale . . . . . . . . . . . . . . . . . . . . . . 71

6.1.1 Extragerea contururilor �n imagini scalare . . . . . . . . . . . . . . . . . 72

6.1.2 Extragerea contururilor �n imagini color . . . . . . . . . . . . . . . . . . 74

6.1.3 Descrierea contururilor din imagini . . . . . . . . . . . . . . . . . . . . . 75

6.2 Descrierea formelor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76

6.2.1 Segmentarea obiectelor de interes . . . . . . . . . . . . . . . . . . . . . . 76

6.2.2 Parametri de form�a . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82

7 M�asurarea performant�ei sistemelor de indexare a imaginilor 87

8 IRIS - Sistem prototip de indexare �si c�autare a imaginilor color 92

8.1 Ce este IRIS ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92

8.2 Utilizarea uzual�a a sistemului IRIS: trei pa�si de baz�a . . . . . . . . . . . . . . . 92

8.2.1 Stabilirea bazei de imagini . . . . . . . . . . . . . . . . . . . . . . . . . . 92

8.2.2 Indexarea bazei de imagini . . . . . . . . . . . . . . . . . . . . . . . . . . 93

8.2.3 C�autarea imaginilor �n baza indexat�a . . . . . . . . . . . . . . . . . . . . 94

8.3 Utilizarea avansat�a a sistemului IRIS . . . . . . . . . . . . . . . . . . . . . . . . 97

8.3.1 Crearea de baze de imagini de evaluare . . . . . . . . . . . . . . . . . . . 97

8.3.2 Evaluarea performant�elor . . . . . . . . . . . . . . . . . . . . . . . . . . 98

8.4 Utilizarea expert�a a sistemului IRIS . . . . . . . . . . . . . . . . . . . . . . . . . 99

8.4.1 Structura ��sierului descriptorilor bazei de imagini (IDD) . . . . . . . . . 99

8.4.2 Structura ��sierului de cont�inut al bazei de imagini (IDC) . . . . . . . . . 99

8.4.3 Ad�augarea unui nou descriptor de imagini . . . . . . . . . . . . . . . . . 100

8.4.4 Ad�augarea unei noi metrici . . . . . . . . . . . . . . . . . . . . . . . . . . 100

8.5 Funct�iile sistemului IRIS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100

4

8.5.1 iris . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100

8.5.2 iris distance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101

8.5.3 iris do samples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101

8.5.4 iris eval . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102

8.5.5 iris get txtdata . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102

8.5.6 iris index database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103

8.5.7 iris index image . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103

8.5.8 iris ldp matrix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104

8.5.9 iris ldp param . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104

8.5.10 iris paschos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104

8.5.11 iris probe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105

8.5.12 iris symindex . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105

A Codurile funct�iilor sistemului IRIS 108

A.1 iris . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108

A.2 iris distance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112

A.3 iris do samples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113

A.4 iris eval . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115

A.5 iris get txtdata . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116

A.6 iris index database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117

A.7 iris index image . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118

A.8 iris ldp matrix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120

A.9 iris ldp param . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122

A.10 iris paschos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124

A.11 iris symindex . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125

5

B Mic dict�ionar de acronime 127

Bibliogra�e 129

6

Capitolul 1

Introducere �si vedere de ansamblu

1.1 Punerea problemei

Evolut�ia tehnologiei electronice a f�acut ca achizit�ia imaginilor �n format digital, stocate direct

pe medii magneto-optice (ca orice alte programe sau date informatice) s�a devin�a din ce �n ce

mai accesibil�a utilizatorului mediu. Aceste imagini \de consum" reprezint�a �n prezent mai mult

de 95% din imaginile accesibile �n mod uzual. In �ecare secund�a sunt realizate mai mult de

2700 de fotogra�i digitale (ceea ce produce un total de 85 de miliarde de imagini anual) [28].

O bun�a parte din aceste imagini sunt disponibile �n mod continuu (prin Internet, de exemplu

PhotoWorks g�azduie�ste cateva zeci de milioane de imagini pe situl s�au web). La imaginile

\de consum" se adaug�a imaginile cu utilizare profesional�a sau specializat�a (precum imaginile

medicale { tomogra�i, radiogra�i, ecogra�i �si altele asem�an�atoare) estimate la mai bine de 2

miliarde anual. Prognozele indic�a o cre�stere a acestui num�ar de imagini, datorat�a migrat�iei

spre digital a industriei divertismentului vizual (cinema �si televiziune), cu posibilitatea ca totul

s�a devin�a accesibil oricui, oricand. Product�ia mondial�a de informat�ie pentru anul 2000 este

estimat�a la 109 GB (deci 250 MB pentru �ecare locuitor al planetei, indiferent de nivelul s�au

de dezvoltare tehnologic�a). Desigur �ns�a c�a simpla cantitate de informat�ie vizual�a produs�a nu

este un indice al utilit�at�ii acesteia sau al dezvolt�arii tehnologice a produc�atorului.

Intrebarea normal�a care se ridic�a ar � aceea de estimare a posibilit�at�ii de a g�asi imaginea c�autat�a

(acul) �n aceast�a mare de informat�ie vizual�a (carul cu fan). Problemelor ridicate de dimensiu-

nea spat�iului de c�autare li se adaug�a �ns�a �si problema di�cult�at�ii de descriere a informat�iei

c�autate (�n general utilizatorul mediu nu poate explica precis ceea ce caut�a). Limitele c�aut�arii

prin cuvinte cheie (caracteristica obi�snuit�a a motoarelor de c�autare pe Internet) sunt atinse

�n momentul folosirii cuvintelor cu �nt�elesuri multiple (kiwi - fructul sau kiwi - pas�area din

Noua Zeeland�a, toc - de scris sau toc - de u�s�a, zmeu - juc�aria zbur�atoare sau zmeu - dragonul

basmelor populare romane�sti), la trecerea de la o limb�a la alta sau, pur �si simplu, la alegerea

7

cuvintelor potrivite pentru descrierea cont�inutului imaginii 1.

Toate aceste probleme par s�a sugereze concluzia c�a se impune abordarea procesului de c�autare a

imaginilor prin speci�cul s�au: descrierea automat�a a cont�inutului vizual al acestora (problem�a

totu�si mai put�in complex�a decat procesul de �nt�elegere a imaginilor).

Ce este un sistem de indexare �si reg�asire a imaginilor ? F�ar�a �ndoial�a ceva mai put�in decat

un sistem de recunoa�stere a imaginilor (�n sensul strict al termenului), dar �n mod sigur mult

mai mult decat un banal navigator (browser) printr-o baz�a de imagini. Un asemenea sistem

poate rezolva nenum�arate probleme, de la cele mai simple pan�a la cele mai complicate, atat de

complicate �ncat chiar descrierea lor prin cuvinte este extrem de complex�a.

Pentru un nou a��s publicitar am nevoie de o imagine cu mult verde, cu culori pastelate �si cu

zone de culoare ale c�aror margini s�a �e foarte clar delimitate - oare ce exist�a deja �n portofoliul

agent�iei de publicitate ?

Care sunt simbolurile �si logo-urile comerciale cu care ar putea � confundat logo-ul companiei

mele (forme similare sau culori similare)?

Cravata pe care vreau s�a o cump�ar de pe situl de comert� electronic nu exist�a cumva �si �n alt

set de culori, dar cu acela�si model (sau poate cu acelea�si culori, dar alt model) ?

A�s dori s�a �mi plachez sufrageria cu pl�aci de gresie similare cu materialul pe care l-am v�azut �n

interiorul fotogra�at �n revista de arhitectur�a - care este gresia cea mai potrivit�a pe care pot

s�a o g�asesc la produc�atori ?

Ce alt�a textur�a natural�a (sau arti�cial�a) ar putea sem�ana cu �mpletitura rogojinei din fat�a u�sii

vecinului, �si de unde a�s putea s�a o cump�ar?

Unele probleme sau �ntreb�ari pot p�area rizibile, dar comert�ul electronic �si magazinele virtuale

exist�a, iar client�ii au din ce �n ce mai put�in timp. Agent�iile de publicitate �si posturile de

televiziune (gestionare ale unor mari arhive de imagini) trebuie s�a fac�a fat��a unor cereri de

c�autare de imagini �n care descrierea prin cuvinte cheie nu este evident�a. Polit�ia este potent�ial

interesat�a de compararea �si punerea �n relat�ie a imaginilor de factur�a ilegal�a provenite din

diferite surse.

S�a continu�am ? IBM a instalat sistemul s�au QBIC pe situl web al Muzeului Ermitaj; LookTha-

tUp a instalat un sistem de c�autare a imaginilor pe baza similarit�at�ii vizuale pe situl de licitat�ie

electronic�a eBazar; Virage Inc. a furnizat sisteme de arhivare �si indexare ret�elelor majore de

televiziune (ABC, NBC, BBC, CNN ...).

1S-a spus adeseori c�a o imagine face cat o mie de cuvinte; aceasta �nseamn�a oare c�a trebuiesc folosite o mie

de cuvinte cheie pentru decrierea acesteia ?

8

1.2 Structura sistemelor de indexare �si reg�asire a imagi-

nilor

Clasi�carea imaginilor �si reg�asirea imaginilor sunt domenii �nrudite, ambele bazandu-se pe

existent�a unei descrieri relevante, de nivel �nalt, a imaginii. In cazul clasi�c�arii, descrierea

imaginii este folosit�a pentru a eticheta o imagine de origine necunoscut�a ca apart�inand uneia

dintre clasele unei partit�ii pre-de�nite a mult�imii imaginilor considerate. In contextul reg�asirii

imaginilor, descrierea este utilizat�a pentru a realiza o c�autare �ntr-o baz�a de imagini a imaginilor

similare din punct de vedere vizual cu imaginea dat�a. Descrierea imaginii implic�a extragerea

din imagine a unor caracteristici corespunz�atoare (reprezentate prin vectori cu componente

numerice), pentru care se pot de�ni distant�e matematice ce corespund unor distant�e (sau

similarit�at�i) vizuale �ntre imagini.

O schem�a general�a de funct�ionare a unui sistem de indexare �si reg�asire a imaginilor �n baze de

imagini este prezentat �n �gura 1.1.

Scopul unei scheme de descriere a imaginilor este de a produce un vector compact de tr�as�aturi ce

grupeaz�a majoritatea indicilor vizuali caracteristici pentru imagine: culoare, textur�a, structur�a.

Cei mai buni descriptori de imagine iau �n considerare atat proport�ia culorilor, cat �si distribut�ia

lor spat�ial�a, folosind eventual mai multe nivele de rezolut�ie. Tehnicile de decriere a imaginilor

pot � interpretate ca avand dou�a componente: descrierea propriu-zis�a (care sunt tr�as�aturile

relevante ale imaginii �si cum sunt extrase acestea) �si port�iunile (sau regiunile) din imagine pe

care se aplic�a aceste descrieri.

1.2.1 Tehnici de descriere a imaginilor

Majoritatea sistemelor de uz general de indexare �si reg�asire a imaginilor se bazeaz�a �n descri-

erea imaginilor pe o schem�a descriptiv�a de tip culoare{textur�a{form�a. Atributele de culoare

(momente ale distribut�iei de culori, distribut�ia de culori, saturat�ia culorilor, combinat�ia culo-

rilor, etc.) re ect�a percept�ia de ansamblu a imaginii, care, conform studiilor recente [77], este

cel mai important criteriu uman de clasi�care. Descrierea texturii, care �nc�a nu a primit o

de�nit�ie riguroas�a, se bazeaz�a pe transpunerea �n formule a unor termeni lingvistici precum ru-

gozitate, �net�e, regularitate, orientare, contrast. Descrierea formei se bazeaz�a �e pe calcularea

distribut�iei unor caracteristici structurale (a�sa precum orientarea �si intensitatea contururilor,

colt�urilor sau altor primitive de form�a), �e pe calcularea unor descriptori de form�a particulari,

ce urmeaz�a unei etape de segmentare a imaginii sau de identi�care a regiunii de interes. Se

poate considera �ns�a c�a informat�ia de form�a poate � acoperit�a part�ial de o descriere cores-

punz�atoare a texturii �si part�ial se bazeaz�a pe o abordare foarte speci�c�a �ec�arei aplicat�ii sau

probleme.

9

Baz�ade imagini

Select�iedescriptori

����������

AAAAAAAAU

INDEXATOR 1

INDEXATOR 2

Descriere

Imaginede interogare

�-

?

COMPARATOR

XXXXXz

�������

?Rezultate

Cont�inut baz�a

Descriptori baz�a

-

Fig. 1.1: Schema bloc a unui sistem de indexare �si reg�asire a imaginilor. Utilizatorul poate

decide care sunt descriptorii ce vor � utilizat�i pentru descrierea imaginilor, atat cele din baza

de imagini, cat �si imaginile de interogare care nu se a �a �n baza de imagini. Modulul de inde-

xare INDEXATOR1 este responsabil cu calculul descriptorilor ale�si pentru toate imaginile din

baza de imagini, producand o structur�a de descriere a bazei de date, format�a dintr-un catalog al

cont�inutului bazei de imagini �si o mult�ime a descriptorilor calculat�i pentru imaginile individu-

ale. Modulul INDEXATOR1 poate lucra o�-line. Pentru orice imagine de interogare, modulul

INDEXATOR2 (�n principiu realizand acealea�si funct�ii ca �si INDEXATOR1, dar trebuind s�a

funct�ioneze on-line) calculeaz�a aceia�si descriptori. Modulul COMPARATOR selecteaz�a din baz�a

imaginile ai c�aror descriptori sunt su�cient de similari cu descriptorul imaginii de interogare.

Descrierea culorilor

Incepand cu cercet�arile realizate de Swain [109], distribut�ia statistic�a de ordinul �ntai a culorilor

(histograma normalizat�a a culorilor) a devenit descriptorul de referint��a cel mai frecvent utilizat

pentru caracterizarea cont�inutului imaginilor. Folosirea alternativ�a a funct�iei de repartit�ie aso-

ciate acestei distribut�ii [107] a dovedit o robustet�e sporit�a fat��a de micile variat�ii ale cont�inutului

de culoare.

Descrierea cont�inutului de culoare al imaginii prin momente statistice se dovede�ste mai simpl�a

�si mai compact�a. De obicei sunt calculate cateva momente statistice centrate �si necentrate

(medie, dispersie, kurtosis) marginale �n raport cu �ecare component�a de culoare, �e pe baza

distribut�iei de culoare [107], [74], �e pe baza unei distribut�ii de cromaticitate (�n spat�iul xy de

exemplu [88]). Alte abord�ari se bazeaz�a pe compresia culorii (sau a cromaticit�at�ii) [8] printr-o

10

decorelare part�ial�a (realizat�a cu o transformare cosinus discret�a) sau total�a (realizat�a printr-o

analiz�a a componentelor principale).

Folosirea tehnicilor de descriere a culorii implic�a o alegere anterioar�a a unei reprezent�ari a

spat�iului de culoare �si a unei proceduri de cuantizare a culorilor [34]. Spat�iul de culoare este

ales conform unuia dintre cele trei modele uzuale [27]:

� RGB sau luminant��a �mpreun�a cu dou�a componente diferent�iale de crominant��a (obt�inute

printr-o transformare liniar�a din RGB, ce include reprezentarea prin culori opuse, moti-

vat�a biologic, �si reprezentarea bazat�a pe o analiz�a a componentelor prinicipale, realizat�a

de Ohta),

� un spat�iu de cromaticitate uniform�a, Lab sau Luv (care ofer�a distant�e �ntre culori com-

patibile cu percept�ia vizual�a a diferent�elor cromatice),

� un spat�iu de reprezentare perceptual�a (nuant��a, saturat�ie, valoare), precum HSV sau una

dintre multiplele sale variante.

Cuantizarea de culoare poate s�a �e �x�a (de la 11 la 16 culori care \nu sunt niciodat�a confundate"

[9], [63]), uniform�a (�ecare component�a de culoare �ind cuantizat�a �n mod independent, nu

neap�arat cu acela�si num�ar de nivele de cuantizare) sau adaptiv�a (generand imaginile cu tabele de

culoare adaptive). In cazul folosirii cuantiz�arii adaptive, funct�ia de distant��a dintre descriptorii

imaginii trebuie s�a includ�a �si compararea tabelelor de culoare [40].

Oricum, destul de devreme a devenit evident c�a distribut�ia de ordinul �ntai a culorilor �si mo-

mentele derivate din aceasta prezint�a limitarea intrinsec�a de a nu lua �n considerare nici o

informat�ie privind plasarea spat�ial�a a culorilor �n imagine [44].

Descrierea texturilor

Textura nu are �nc�a o de�nit�ie riguroas�a. Textura poate � descris�a �e ca o replicare spat�ial�a

aproape regulat�a a unor motive de baz�a (numite texoni sau texeli), �e ca o distribut�ie aleatoare

de valori ale pixelilor imaginii. Conform modelului ales (determinist sau aleator), atributele de

textur�a deriv�a din calculul indiciilor vizuale caracteristice (periodicitate, orientare, axe prin-

cipale, axe de simetrie) sau din funct�iile de densitate de probabilitate ale valorilor pixelilor,

densit�at�ile spectrale de energie sau alte m�asuri statistice.

M�asurile de ordin spat�ial cel mai uzual folosite pentru discriminarea �si descrierea texturilor

sunt matricile de coocurent��a �si de izosegmente [23], ce descriu relat�iile spat�iale dintre valorile

pixelilor ce formeaz�a textura. Din aceste matrici se pot calcula parametri, precum entropie,

contrast, omogenitate, energie, tendint��a de grupare [41]. Asemenea descriptori texturali au fost

folosit�i �n sistemul QBIC [85].

11

O alt�a abordare este de a calcula spectrul de putere (sau energie) al imaginii, printr-o transfor-

mat�a Fourier. Energiile din diferite port�iuni ale spectrului (corespunzand unor m�a�sti spectrale

de diferite tipuri - sectoare circulare sau discuri diadice concentrice) formeaz�a un vector de

descriere al caracterului texturat [96].

Texturile au fost descrise �si prin determinarea modelelor statistice (autoregresive, Markov,

etc.) care li se potrivesc; similaritatea �ntre dou�a texturi este atunci evaluat�a prin compararea

parametrilor modelelor.

Descrierea primitivelor vizuale

Primitivele vizuale importante, precum colt�urile �si contururile, pot � luate �n considerare �e

implicit, �e explicit. Distribut�ia orient�arilor contururilor, distribut�ia intensit�at�ii contururilor

�si distribut�ia lungimii contururilor sunt folosite �mpreun�a cu descriptorii de culoare pentru

obt�inerea unei performant�e sporite �n reg�asirea imaginilor �n baze de imagini generaliste [27],

[83].

Intensitatea contururilor este folosit�a �n mod implicit �n tehnicile de ra�nare a histogramelor de

culoare, precum vectorii de coerent��a de culoare (CCV - Color Coherence Vectors) [89]. Un pixel

coerent este de�nt de uniformitatea vecin�at�at�ii sale, �n timp ce pixelii de contur (�ind situat�i

la separat�ia dintre regiuni diferite ale imaginii) sunt caracterizat�i de vecin�at�at�i neuniforme.

Descriptorul CCV este format prin contabilizarea separat�a a pixelilor coerent�i �si necoerent�i, �n

dou�a histograme de culoare.

Descrierea formelor

Majoritatea metodelor de descriere a formelor se bazeaz�a pe extragerea diferitelor tr�as�aturi

ce caracterizeaz�a forma: parametri interni, caracteristici pentru regiuni (atribute geometrice -

arie, dreptunghi sau elips�a de �ncadrare, compactitudine, elongat�ie, atribute statistice - centru

de greutate, momente normalizate) �si parametri externi, caracteristici contururilor (distribut�ia

caracteristicilor frontierei, coe�cient�i ai unor transform�ari unitare aplicate punctelor de contur,

modelare autoregresiv�a a frontierei). Alte clase de tehnici de descriere a formelor se bazeaz�a pe

folosirea unor modele deformabile (caracterizate de seturi de parametri si ecuat�ii matematice

de generare a formei), care sunt adaptate (prin modi�carea parametrilor caracteristici) pentru

a se potrivi (sau a aproxima) cat mai bine cu forma particular�a [27].

1.2.2 Tehnici de partit�ionare a imaginilor

G�asirea p�art�ilor importante �si semni�cative ale unei imagini este o problem�a prost de�nit�a

�si este echivalent�a �ntr-o oarecare m�asur�a cu segmentarea imaginilor. Partit�ionarea imaginii

12

poate � util�a �n ra�narea interog�arii, dar, �n mod uzual, aceasta implic�a o important�a cre�stere

a complexit�at�ii calculelor.

Cea mai simpl�a abordare este folosirea �ntregii imagini ca regiune de interogare. Parametrii

de form�a sunt relevant�i �ntr-o mic�a m�asur�a, �ntrucat pot exprima doar raportul de aspect al

matricii de pixeli. O abordare superioar�a const�a �n considerarea unei piramide de imagini -

�ntreaga imagine la diferite nivele de rezolut�ie (construite de exemplu prin netezire gaussian�a

sau reprezentare wavelet) - ca mijloc de a lua �n considerare efectele dependent�ei de distant��a a

percept�iei vizuale.

Descompunerea imaginii �n partit�ii �xe este relativ simpl�a din punctul de vedere al calcule-

lor. Deoarece majoritatea informat�iei vizuale percepute de privitor este concentrat�a �n centrul

imaginilor, Stricker [106] a propus descompunerea imaginii �ntr-o regiune eliptic�a central�a �si

patru regiuni de colt� part�ial suprapuse cu regiunea central�a (suprapunere modelat�a fuzzy).

Alte abord�ari consider�a descompuneri ale imaginii dup�a regiuni dreptunghiulare de dimensiu-

ne dependent�a de nivelul de rezolut�ie; �ecare astfel de regiune poate � folosit�a ca un obiect

individual de interogare, permit�and deci interog�ari part�iale [70].

Segmentarea imaginilor este prima etap�a �n analiza imaginilor; scopul s�au principal este iden-

ti�carea zonelor din imagine ce sunt uniforme �n raport cu un anumit criteriu. De�si au fost

dezvoltate foarte multe tehnici de segmentare, nici una dintre ele nu este su�cient de robust�a.

Principalul dezavantaj al aplic�arii unei asemenea tehnici este timpul important de calcul �si ne-

cunoa�sterea a priori a num�arului de regiuni de interes din imagini. Unele solut�ii se bazeaz�a pe

algoritmi ce ajusteaz�a dinamic num�arul de clase de segmentare (�n general pornind cu o supra-

segmentare �si apoi reunind clasele similare), precum aglomerarea competitiv�a [29], h�art�ile de

distribut�ii diferent�iale de tr�as�aturi (Di�erential Feature Distribution Maps DFDM) [129] sau

modelarea statistic�a prin aproximarea distribut�iei experimentale a pixelilor (precum Blobworld

[13]).

1.3 Organizarea lucr�arii

Continuarea aceastei lucr�ari prezint�a, pe capitole:

� o sistematizare a principalelor solut�ii de sisteme de indexare �si c�autare a imaginilor �n

baze de imagini, existente la acest moment pe plan mondial;

� principalele tehnici de descriere a culorilor (reprezentarea culorilor �si descrierea cont�inu-

tului de culoare a imaginilor);

� principalele tehnici de descriere a texturilor;

� principalele tehnici de descriere a formelor;

13

� metode de evaluare a performant�ei sistemelor de c�autare �si indexare a imaginilor;

� sistemul IRIS de indexare �si reg�asire a imaginilor color �n baze de imagini, realizat de

autori;

� sursele sistemului IRIS (Matlab 5.3);

� o list�a a acronimelor folosite �n lucrare;

� o bibliogra�e important�a, cont�inand principalele lucr�ari relevante domeniului.

14

Capitolul 2

Sisteme de indexare �si c�autare a

imaginilor

Sistemele de indexare �si c�autare ale imaginilor ce sunt prezentate pe scurt �n acest capitol nu

formeaz�a o list�a exhaustiv�a a sistemelor existente pe plan mondial. Exist�a, de exemplu, mult

mai multe sisteme de indexare dezvoltate �n universit�at�i. Scopul acestei prezent�ari nu este

�ns�a nici furnizarea unor manuale de utilizare a acestor sisteme �si nici un inventar complet

al acestora. O list�a mai complet�a (�si o �ncercare de comparare sintetic�a a diferitelor sisteme)

poate � g�asit�a de exemplu �n raportul realizat de Manchester Visualization Centre �si Institute

for Image Data Research (http://www.mcc.ac.uk) sau �n [53].

2.1 Sisteme comerciale

2.1.1 Excalibur Visual RetrievalWare SDK

Excalibur Visual RetrievalWare Software Developers Kit (SDK) este un mediu deschis de

dezvoltare a aplicat�iilor, produs �si distribuit de Excalibur Corp (http://www.excalib.com).

Mediul de dezoltare pentru aplicat�ii (SDK) ofer�a o serie de accesorii software ce implementeaz�a

primitivele de baz�a necesare program�arii unor aplicat�ii imagistice bazate pe cont�inutul imagi-

nilor. Acest mediu de dezvoltare ofer�a trei interfet�e utilizator de programare (�n C, C++ �si

Java), un interpretor Tcl/Tk, documentat�ie �si coduri surs�a, precum �si programe demonstrative,

ce pot � folosite ca baz�a pentru construirea unor aplicat�ii mai importante.

Tehnologia pe care se bazeaz�a programul Visual RetrievalWare a fost numit�a APRP (Adaptive

Pattern Recognition Processing { Prelucrare Adaptiv�a pentru Recunoa�sterea Formelor), �si este

un sistem cu auto-organizare ce indexeaz�a �n mod automat secvent�ele binare ce apar �n datele

digitale �si creeaz�a o memorie auto-optimizat�a, adaptat�a la structura intrinsec�a a datelor utiliza-

te. Sistemul APRP este proiectat pornind de la modul de prelucrare a informat�iei �n sistemele

15

neurale naturale. Ultimele versiuni ale mediului de dezvoltare ofer�a suport pentru programare

Java, pentru utilizarea formatelor video MPEG-1 �si MPEG-2, descriptori �mbun�at�at�it�i pentru

cont�inutul de culoare, textur�a �si forme ce se reg�asesc �n imagini, precum �si posibiltatea unor

c�aut�ari cu �re de execut�ie multiple (threads) �n calculatoarele cu mai multe procesoare.

Mediul de dezvoltare permite crearea �si gestionarea unei baze de descriptori de tip generic, ceea

ce permite unui utilizator folosirea unor descrieri adaptate domeniului propriu de utilizare. Pen-

tru �ecare imagine sunt calculat�i trei descriptori generici: culoare, textur�a �si form�a (urm�arind

modelul general de reprezentare a imaginilor folosit �n covar�sitoarea majoritate a sistemelor de

indexare �si c�autare a imaginilor). Funct�ia de descriere a culorii analizeaz�a distribut�ia global�a de

culoare din �ntrega imagine pentru a obt�ine culoarea dominant�a �si variat�ia culorii �n imagine,

�n mod independent de localizarea spat�ial�a a culorilor. Funct�ia de descriere a formei m�asoar�a

orient�arile relative, curburile �si contrastul liniilor (�si frontierelor) din imagine, f�ar�a a lua �n

considerare culoarea, pozit�ia �si orinetarea absolut�a a acestora. Funct�ia de descriere a texturii

analizeaz�a zone din imagine pentru a stabili atribute de periodicitate, aleatorism �si rugozitate

a texturilor, f�ar�a a lua �n considerare culoarea �si pozit�ia acestor zone.

Vectorii de descriere sunt stocat�i �n form�a digital�a, iar imaginile sunt comparate pe baza com-

par�arii decriptorilor asociat�i. Forma digital�a de stocare a vectorilor de tr�as�aturi este optimizat�a

�n sensul minimiz�arii timpului de c�autare. Sistemul Excalibur Visual RetrievalWare este pre-

zentat �si printr-un demonstrator Internet (http://www.vrw.excalib.com:8015/cst).

Programele demonstrative incluse �n pachetul SDK, cont�in, printre altele:

� CST (Colour, Shape, Texture { Culoare, Form�a, Textur�a): o aplicat�ie ce permite extra-

gerea unor caracteristici de culoare, form�a �si textur�a, pe baza c�arora imaginile dintr-o

baz�a de imagini pot � indexate, c�autate �si reg�asite.

� Kanji: un program demonstrativ de recunoa�stere a caracterelor Kanji.

� Show Image: o interfat��a de gestiune a unei baze de imagini, ce permite accesul la indexarea

imaginilor pe baza cont�inutului lor �si la alte funct�ii de prelucrare �si analiz�a a imaginilor.

Imaginile sunt acceptate �n form�a color sau cu nivele de gri, �n mai multe formate standard de

��siere gra�ce: BMP, DDIF, GIF, JFIF, PNG, PPM, TIFF. Distribut�ia curent�a cont�ine executa-

bile pentru majoritatea sistemelor de operare (HP-Unix, IRIX, DEC OSF1, Solaris, Windows).

Pret�ul de distribut�ie al pachetului Excalibur Visual RetrievalWare Software Developers Kit

este �n jur de 70.000$ (f�ar�a modulele de extensie). Un asemenea modul de extensie este Ex-

calibur Image DataBlade, ce extinde posibilit�at�ile de interogare �n bazele de imagini pentru

Informix Internet Foundation 2000 Server, permit�and, de exemplu, folosirea declarat�iilor SQL

�n contextul imaginilor.

16

2.1.2 ImageFinder

ImageFinder este un program realizat de �rma Attrasoft (http://www.attrasoft.com), ca

prototip de sistemWindows de reg�asire a imaginilor conform cont�inutului acestora. Tehnologia

de descriere �si recunoa�stere a imaginilor este folosit�a ca baz�a pentru trei platforme cu interfet�e

cu utilizatorul diferite: ImageFinder, Internet ImageFinder �si ImageHunt. Tehnologia care st�a

la baza sistemului de recunoa�stere �si potrivire a imaginilor este PolyNet, o variant�a a progra-

mului de simulare a ret�elelor neurale dezvoltat de Attrasoft. PolyNet simuleaz�a dou�a tipuri de

ret�ele neurale ce optimizeaz�a performant�a de reamintire a sistemului: ret�ea Hop�eld �si ret�ea

Boltzmann. Antrenarea ret�elelor este de tip supervizat, folosind date de antrenare furnizate

de utilizator prin imagini-cheie sau segmente-cheie de imagine (segmentele cheie sunt regiuni

de imagine ce prezint�a un interes particular pentru aplicat�ia dat�a). Dup�a terminarea procesu-

lui de �nv�at�are a ret�elei, aceasta poate � folosit�a ca o memorie asociativ�a pentru realizarea a

dou�a sarcini similare: clasi�carea imaginilor �si recunoa�sterea imaginilor. Clasi�carea se refer�a

la g�asirea �si alocarea claselor de forme. Recunoa�sterea formelor se refer�a la indenti�carea unei

forme pentru care se �stie clasa din care provine. Potrivirea formelor poate � complet�a sau

incomplet�a.

Pentru identi�carea obiectelor din imagini, sistemul ImageFinder simuleaz�a mecanismul de ve-

dere uman�a, prin focalizarea analizei numai asupra prim-planului imaginii (�si implicit a obiec-

telor de interes), ignorand fundalul. Ignorarea fundalului se realizeaz�a prin folosirea unor �ltre

de fundal, ce sunt calibrate pentru rejectarea unei anumite distribut�ii globale de culoare. Sis-

temul de demonstrat�ie prezentat pe situl Web al �rmei ofer�a posibilitatea alegerii �ntre �ltre

de fundal de culoare neagr�a, alb�a sau cateva alte culori uzuale. Rezultatele compar�arilor de

imagini sunt returnate �ntr-un format interpretabil de un navigator Internet standard, �si includ,

pe lang�a imaginile folosite, �si informat�ii privind numele, pozit�ia acestora �n baza de imagini �si

scorul de potrivire cu imaginea de interogare folosit�a. Spre deosebire de sistemele uzuale de

c�autare a imaginilor, imaginile reg�asite nu sunt sortate �n ordinea descresc�atoare a similarit�at�ii.

In principiu, timpul de c�autare este constant pentru orice imagine, dac�a baza de imagini �n care

se face c�autare nu este mai mare de 1000 de imagini.

Imaginile sunt acceptate �n form�a color sau cu nivele de gri, �n mai multe formate standard de

��siere gra�ce: BMP, GIF �si JPEG. Versiunea uzual�a a programului, f�ar�a facilit�at�i suplimentare

de interfat�are, cost�a �n jur de 1000 $.

2.1.3 IMatch

Sistemul IMatch a fost dezvoltat de Mario M. Westphal (MW Labs http://www.mwlabs.de),

�si este un program shareware ce permite realizarea unei multitudini de tehnici de indexare �si

c�autare a imaginilor, prin folosirea unor baze de date multiple asociate unei colect�ii de imagini.

Bazele de date create de program cont�in vectorii de caracteristici ai imaginilor (descriptorii),

precum �si alte informat�ii relevante asupra imaginilor (ca de exemplu numele ��sierelor ce cont�in

17

imaginile �si pozit�iile lor). Fiecare baz�a de date este stocat�a �n dou�a ��siere, cu extensiile .imd

pentru baza de date principal�a (cont�inand descrierile imaginilor) �si .imi pentru vectorii de

date ce corespund potrivirii ap�arute �n procesul de interogare. Pentru u�surint�a navig�arii �n

baza de imagini, este posibil�a �si crearea unui ��sier de imagini de dimensiune redus�a, asociate

imaginilor originale din baza de imagini. Dimensiunea bazei de imagini ce poate � indexat�a

nu este limitat�a �n mod explicit; performant�ele de reg�asire a imaginilor, precum �si rapiditatea

r�aspunsului sistemului la o interogare se degradeaz�a rapid dimensiuni ale bazei de imaginii mai

mari de 10000 de imagini.

Sistemul IMatch ofer�a patru variante de baz�a de descriere a cont�inutului imaginilor �si implicit,

de determinare a similarit�at�ii �ntre imagini; descrierea atributelor de culoare este esent�ial�a

pentru �ecare dintre acestea.

� Similaritatea de culoare se bazeaz�a pe distribut�ia global�a de culoare din imagine (histo-

grama de culoare).

� Descrierea de culoare �si form�a (Quick) descrie cont�inutul imaginilor prin folosirea unor

parametri de form�a, distribut�ii de form�a �si distribut�ii de culoare.

� Descrierea de culoare �si form�a (Fuzzy) este o variant�a mai complex�a a descrierii \Quick"

de culoare �si form�a. De�si de cele mai multe ori imaginile reg�asite prin aceast�a tehnic�a sunt

foarte relevante pentru interogarea realizat�a, este posibil�a aparit�ia de rezultate bizare �si

nea�steptate (sugerand o insu�cient�a stabilitate a descriptorului).

� Descrierea proport�iei �si distribut�iei de culoare permite realizarea unor interog�ari bazate

pe speci�carea unei distribut�ii de culoare, supuse sau nu unor constrangeri spat�iale.

O facilitate suplimentar�a de c�autare se refer�a la identi�carea imaginilor identice, ce pot ap�area

ca rezultat al multiplic�arii ��sierelor de imagine, scan�arilor multiple �si a redenumirii imaginilor.

Dublurile sunt identi�cate prin compararea formei binare stocate �n ��siere pe baza sumelor de

control CRC �si identi�carea numelor de ��siere extrem de asem�an�atoare prin tehnici de clasi�care

fuzzy. Identi�carea imaginilor multiplu scanate urm�are�ste identi�carea imaginilor repetate, dar

care au fost stocate �n ��siere cu formate diferite, sau au suferit operat�ii geometrice (decupare,

scalare).

Imaginile sunt acceptate �n form�a color sau cu nivele de gri, �n mai multe formate uzuale

de ��siere gra�ce: BMP, EMF, JPEG, PCT, PNG, TGA, TIFF, etc. Programul este realizat

pentru calculatoare personale folosind variante ale sistemului Windows. Versiunea de evaluare

http://www.mwlabs.de/download.htm este gratuit�a �si este valabil�a 30 de zile; costul unei

licent�e este de 50 $.

18

2.1.4 QBIC Development Kit

Sistemul QBIC (Query By Image Content) [85], dezvoltat la Centrul de Cercetare Almaden

al IBM, este un cadru deschis de dezvoltare a aplicat�iilor de c�autare �si reg�asire a imagini-

lor (http://wwwqbic.almaden.ibm.com). Realizarea sistemului a �nceput �n 1992, proiectul

suferind numeroase actualiz�ari. Sistemul QBIC este comercializat sub forma unui set de dezvol-

tare software, ce include biblioteci C++, module executabile, un program de demonstrat�ie �si

un mini-server web pentru aplicat�ii vizuale. Tehnologia QBIC se reg�ase�ste �si �n alte produse

software ale IBM, ca de exemplu IBM DB2 Image Extender and Digital Library. Funct�iile de

interfat��a din sistemul QBIC realizeaz�a calculul, stocarea �si reg�asirea datelor �si �nregistr�arilor

dintr-o baz�a de date (de tip Oracle sau orice alt tip de baz�a de date DBMS). Funct�ionalit�at�ile

QBIC pot � accesate �n dou�a moduri: �e prin executabile �n linie de comand�a, �e prin utilizarea

claselor C++ abstracte de interfat��a.

Principiul de funct�ionare a sistemuluiQBIC este de a permite utilizatorului de�nirea �si ra�narea

gra�c�a a interog�arilor, conform unor multiple propriet�at�i ale primitivelor vizuale. QBIC permite

trei moduri de realizare a interog�arilor: interogare simpl�a, interogare complex�a �si interogare

multi-caracteristic�a. O interogare simpl�a se refer�a la o caracteristic�a unic�a extras�a din imagine

(ca de exemplu distribut�ia culorilor sau culoarea dominant�a). O interogare complex�a folose�ste

mai mult de o singur�a caracteristic�a (ca de exemplu culoarea �si textura). Diferitele caracteristici

folosite la interogare au coe�cient�i de important��a egali, �si c�autarea este realizat�a simultan �si

independent pentru �ecare tip de tr�as�atur�a folosit�a. Interogarea multi-caracteristic�a �n etape

folose�ste rezultatul unei c�aut�ari dup�a un atribut ca spat�iu de c�autare dup�a atributele urm�atoare.

Utilizatorul poate stabili ponderi de important��a a diferitelor caracteristici utilizate.

Sistemul QBIC ofer�a mai multe tipuri de descriere a cont�inutului imaginilor, bazate pe acelea�si

primitive de baz�a: culoare, form�a �si textur�a.

� Culoarea global�a (culoarea medie din imagine, reprezentat�a ca triplet RGB, �si dispersia

acesteia) sunt folosite ca descriere rapid�a, dar put�in precis�a a imaginilor; �n general aceast�a

opt�iune este folosit�a pentru pre-�ltrarea bazei de imagini.

� Culoarea local�a calculeaz�a o distribut�ie de culoare �si culoarea dominant�a conform unei

cuantiz�ari adaptive de culoare �n 256 de culori.

� Funct�iile de analiz�a a formelor se bazeaz�a pe descrierea prin arie, circularitate, excentri-

citate, orientare principal�a a formelor planare nesuprapuse prezente �n imagini �si de�nite

conform unor m�a�sti binare.

� Atributele globale de textur�a (granularitate, contrast, direct�ionalitate) sunt m�asurate la

nivel de regiune.

Imaginile sunt acceptate �n form�a color sau cu nivele de gri, �n mai multe formate uzuale

de ��siere gra�ce: BMP, GIF, JPEG, PGM, PPM, TIFF �si TGA. Programul este disponibil

19

pentru diferite sisteme de operare (Windows, MacOS, Linux, Solaris). Versiunea de evaluare

http://www6.software.ibm.com/dl/qbic/qbicn-p este gratuit�a �si este valabil�a 90 de zile.

Sistemul QBIC este folosit ca sistem de c�autare a imaginilor �si navigare �n baza de imagini

disponibile pe situl Internet a muzeului Ermitaj din St. Petersburg (Leningrad) (http://www.

hermitagemuseum.org). Pe situl de prezentare al sistemului QBIC de la IBM

(http://wwwqbic.almaden.ibm.com) este disponibil�a o demonstrat�ie de c�autare de imagini

�ntr-o baz�a de date cont�inand timbre po�stale.

2.1.5 Virage VIR Image Engine SDK

Sistemul VIR Engine (�si extensia sa Image Read/Write Toolkit) au fost dezvoltate de Virage Inc

(http://www.virage.com). Sistemul VIR Image Engine este un set de libr�arii, disponibile �n

variant�a static�a sau dinamic�a pentru diferite platforme, ce ofer�a un set de funct�ii cu interfat��a

ANSI C pentru dezvoltarea de aplicat�ii. Sistemul VIR Image Engine analizeaz�a �si compar�a

vectori de caracteristici �si calculeaz�a un scor global de potrivire (asem�anare) �ntre ace�stia.

Extensia Image Read/Write Toolkit este o interfat��a C de aplicat�ie pentru lucrul cu ��siere de

imagini �n diferite formate standard, pentru crearea de versiuni scalate ale imaginilor �si pentru

conversia spat�iilor de reprezentare a culorilor �si atributelor de format.

Ideea de proiectare a sistemului VIR Image Engine este de a oferi mijloace de dezvoltare �si

extindere a aplicat�iilor cu funct�ii de reg�asire a informat�iei, pentru luarea �n calcul a atributelor

caracteristice informat�iei vizuale. Funct�iile oferite de sistem pot � folosite �ntr-o mare gam�a de

aplicat�ii, f�ar�a a folosi vreo informat�ie a priori asupra sistemului de ��siere, interfet�elor bazelor

de date, interfet�elor utilizator sau interfet�elor de ret�ea. Funct�ionalit�at�ile oferite de VIR Image

Engine sunt de tip pur algoritmic, �si pot � utilizate �si adaptate dup�a speci�cul �ec�arei aplicat�ii.

Caracterizarea imaginilor este realizat�a pe baza determin�arii unor primitive vizuale clasice:

culoare, textur�a �si structur�a. Vectorul de tr�as�aturi asociat unei imagini are o m�arime de

aproximativ 1kB. Cont�inutul imaginilor este descris de un set de patru primitive vizuale:

� Culoarea global�a este descris�a prin distribut�ia neconstrans�a spat�ial a culorilor �si variat�iei

culorilor din imagine.

� Descrierea prin culoare local�a se bazeaz�a pe m�asurarea distribut�iei de culoare prin loca-

lizarea culorilor �si potivirea culorilor �ntre dou�a imagini.

� Funct�ia de determinare a structurii este folosit�a pentru caracterizarea formelor de dimen-

siune important�a ce pot apare �n imagini. Aceast�a descriere se bazeaz�a pe parametri

standard de form�a �si mai put�in pe segmentarea local�a a imaginii.

� Descrierea texturii este realizat�a prin m�asurarea variat�iei caracteristicilor de �nalt�a frec-

vent��a din imagine; m�asurile rezultate sunt de tipul periodicit�at�ii, gradului de aleatorism

�si a granularit�at�ii.

20

Imaginile sunt acceptate �n form�a color sau cu nivele de gri, �n mai multe formate uzuale de

��siere gra�ce: BMP (OS/2, Windows), GIF, JPEG, MAC, PCD, PCX, PICT, PNG, PSD,

RLE, SGI, SCT, TGA, TIFF. Programul este disponibil pentru diferite sisteme de operare

(Windows, Solaris, IRIX, HP-Unix). Sistemul VIR Visual Information Retrieval (VIR) Engine

SDK cost�a 30.000 $ �si implic�a costuri suplimentare de instalare de pan�a la 10.000 $ pentru

�ecare instalare.

Sistemul VIR Visual Information Retrieval (VIR) Engine este folosit pentru motorul de c�autare

de imagini oferit de Altavista (http://www.altavista.com).

2.2 Sisteme necomerciale (academice)

2.2.1 BlobWorld

Sistemul BlobWorld a fost dezvoltat la University of California, Berkeley (http://galaxy.cs.

berkeley.edu/photos/blobworld/) [13]. Imaginile �si regiunile din imagini sunt descrise pe

baza unor caracteristici de tip culoare, form�a, atribute de textur�a �si plasare �n spat�iu. Sistemul

realizeaz�a o segmentare automat�a a imaginilor din bazele de imagini �n regiuni (\blobs") ce

corespund aproximativ obiectelor sau p�art�ilor de imagine semni�cative din punct de vedere vi-

zual. Interog�arile pot � f�acute atat printr-o imagine exemplu (interogare global�a) cat �si printr-o

regiune de imagine (interogare part�ial�a, ca �n exemplul prezentat �n �gura 2.1). Utilizatorul

poate vizualiza imaginea segmentat�a �si poate speci�ca important�a relativ�a a diferitelor com-

ponente (\blobs") ale acesteia. Interog�arile pot � complexe, prin combinarea conjunctiv�a sau

disjunctiv�a a mai multor regiuni �si prin speci�carea unor relat�ii spat�iale �ntre acestea.

Sistemul BlobWorld este o parte a proiectului Berkley Digital Library. Un demonstrator WWW

al sistemului BlobWorld pote � g�asit la adresa http://elib.cs.berkeley.edu/photos/

blobworld. Bibliogra�e suplimentar�a relativ�a la proiect se poate g�asi on-line, la adresa

http://www.cs.berkeley.edu/carson/research/publications.html.

2.2.2 CANDID

Sistemul CANDID (Comparison Algorithm for Navigating Digital Image Database) a fost

dezvolat la Los Alamos National Laboratory (SUA). Interogarea bazei de imagini este rea-

lizat�a �e prin precizarea unei imagini, considerat�a ca interogare global�a, �e prin precizarea unei

regiuni de interes dintr-o imagine. Caracterizarea zonei alese ca exemplu (�e imagine �ntreag�a,

�e regiune) este realizat�a printr-un vector de caracteristici global, ce �nglobeaz�a atribute de

textur�a, form�a �si culoare, descrise, la randul lor, prin funct�ii de densitate de probabilitate de

ordinul �ntai. Funct�ia de densitate de probabilitate multidimensional�a a diferitelor atribute

utilizate este aproximat�a printr-o combinat�ie liniar�a ponderat�a de moduri gaussiene. Fieca-

21

Fig. 2.1: Exemplu de c�autare a unor imagini ce cont�in regiuni similare cu regiunea de interes

(\blob") din imaginea exemplu prezentat�a de utilizator; regiunile de interes sunt identi�cate �n

mod automat, printr-un algoritm de segmentare.

22

re mod gaussian este descris de medie �si matrice de covariat�ie, parametri ce rezult�a �n urma

aplic�arii unui algoritm de clustering asupra valorilor init�iale ale funct�iei de densitate de proba-

bilitate. Compararea dintre variantele aproximate ale funct�iilor de densitate de probabilitate

ale atributelor diferitelor imagini este realizat�a �e prin distant�e din familia Lp, �e prin m�asuri

de tip corelat�ie. O variant�a a comparat�iei folose�ste normalizarea caracteristicilor din vectorul

de descriere a imaginilor, ca mijloc de eliminare a informat�iilor neesent�iale de fundal.

Sistemul CANDID a fost testat pentru c�autarea unor imagini specializate de tomogra�e com-

puterizat�a pentru pl�amani �si pentru imagini satelitare multispectrale �n benzile vizibile.

2.2.3 FIDS

Sistemul FIDS (Sistem exibil pentru baze de imagini - Flexible Image Database System) a fost

dezvoltat la universitatea Washington State de echipa Prof. Linda Shapiro http://www.cs.

washington.edu/homes/shapiro �si http://www.cs.washington.edu/research/

imagedatabase/demo/fids. Sistemul permite descrierea imaginilor prin combinat�ii complexe

a mai multe tipuri de primitive vizuale de baz�a: culoare (distribut�ia de culoare �n spat�iul RGB,

cuantizat liniar uniform), culoare �si textur�a (coe�cient�ii wavelet ai descompunerii multirezolut�ie

a imaginii), textur�a (descrierea prin partit�ii binare locale, LBP), form�a (descrierea contururilor

extrase printr-un operator Sobel), culoare �si form�a (indicele de prezent��a a tonurilor de piele

uman�a) (reprezentate �si �n �gura 2.2).

Diferitele modele de descriere a imaginilor pot � considerate �n diferite combinat�ii �si cu diferite

ponder�ari ale important�ei, rezultand multiple metrici de comparare a imaginilor. Mecanismul

de indexare creeaz�a o structur�a special�a de date (arbore triunghiular) �n care se stocheaz�a

descriptorii imaginilor individuale. Aceast�a structur�a de date permite, prin folosirea propri-

et�at�ii de inegalitate triunghiular�a a metricilor, reg�asirea imaginilor c�autate din baza de imagini

printr-un num�ar redus de comparat�ii (imaginea de interogare �ind comparat�a cu o mic�a parte

a bazei de imagini). Timpul de reg�asire a imaginilor similare cu imaginea de interogare este

mai mic de o secund�a, pentru baze de imagini cu pan�a la 100.000 de imagini.

2.2.4 ImageRover

Sistemul ImageRover (http://www.cs.bu.edu/groups/ivc/ImageRover) a fost dezvolat la

Universitatea Boston de echipa Prof. Stan Sclaro�. Image Rover este un sistem de c�autare

a imaginilor pe Internet (World Wide Web), ce combin�a �n descrierea imaginilor atribute de

descriere a cont�inutului vizual �si cuvinte-cheie (atribute textuale) generate automat.

Descriptorii cont�inutului vizual al imaginii se bazeaz�a pe descrierea distribut�iei de culoare

(prin calculul funct�iei de densitate de probabilitate de ordinul �ntai al culorilor reprezentate �n

sistemul Luv) �si pe descrierea orient�arilor principale din imagine la diferite scale (descriere care

23

Fig. 2.2: Exemplu de c�autare cu sistemul FIDS a unor imagini similare cu imaginea exemplu

prezentat�a de utilizator; se pot alege mai multe metode de descriere a cont�inutului imaginii.

�nglobeaz�a atat atribute texturale cat �si atribute caracteristice primitivelor vizuale).

Cuvintele-cheie �si ponderilor lor, ce formeaz�a descrierea textual�a a imaginii, sunt generate

pornind de la informat�ia reg�asit�a �n codurile HTML ale paginilor WWW �n care sunt plasate

imaginile. Fiecare cuvant dintr-o pagin�a pagin�a WWW, ce apare �n contextul unei imagini,

este ponderat corespunz�ator plasamentului (titlu de pagin�a, descriere sau form�a prescurtat�a a

imaginii, titlul de imagine, situare �n pagin�a lang�a o imagine) �si contribuie la calculul unei funct�ii

de distribut�ie statistic�a caracteristice documentului din care provine imaginea. In plus, �ecare

cuvant cap�at�a un indice unic ce �l individualizeaz�a �n contextul semantic al documentului dat,

indice generat conform schemei de indexare semantic�a latent�a LSI (Latent Semantic Indexing).

C�autarea imaginilor este realizt�a �n dou�a etape: �n prima etap�a sunt speci�cate cuvinte-cheie ce

descriu cont�inutul semnatic al imaginii c�autate; �n imaginile reg�asite �n acela�si context semantic

(pe baza cuvintelor-cheie �si a indicelul LSI) se realizeaz�a o a doua etap�a de c�autare bazat�a numai

pe similaritate vizual�a. Mecanismul de c�autare bazat pe similaritate vizual�a implic�a selectarea

de c�atre utilizator a unui num�ar oarecare de imagini exemplu corespunzand rezultatelor pozitive

�si respectiv rezultatelor negative, �ntr-un proces interactiv �si iterativ numit bucl�a de relevant��a

(relevance feed-back), prin care sistemul \�nvat��a" din exemple descrierea care se potrive�ste cel

mai bine interog�arii.

Implementarea sistemului se bazeaz�a pe module separate ce realizeaz�a analiza de culoare, ana-

24

liza de orientare �si analiza sintactic�a. M�asurarea performant�elor sistemului a fost realizat�a �n

cadrul unor experimente cu evaluare semiautomat�a.

2.2.5 Photobook

Sistemul Photobook a fost dezvoltat la Media Laboratory, Massachusetts Institute of Techno-

logy (MIT) (http://whitechapel.media.mit.edu/vismod/demos/photobook/index.html).

Descrierea cont�inutului vizual al imaginilor este realizat�a prin atribute de culoare, form�a �si

textur�a.

Contribut�iile esent�iale ale sistemului sunt �n domeniul consider�arii unei interact�iuni mai realiste

cu utilizatorul: acesta nu este fort�at s�a aleag�a atributele pe baza c�arora dore�ste descrierea

imaginilor (alegere adeseori di�cil�a, mai ales cand se refer�a la utilizatori care nu sunt expert�i �n

analiza imaginilor) ci folose�ste totalitatea atributelor descriptive ale imaginilor pe care le are

la dispozit�ie pentru a �nv�at�a din interact�iunea cu utlizatorul organizarea dorit�a pentru date.

Acest principiu este ilustrat cu prec�adere �n multitudinea de tehnici utilizate pentru descrierea

texturilor (naturale sau arti�ciale) color. Texturile sunt astfel descrise prin modele de difuzie,

modele Markov, modele Wold, modele auto-regresive �si parametri caracteristici distribut�iilor

statistice uzuale. Baza de texturi utilizat�a �n experimente a devenit o referint��a pentru comuni-

tatea �stiint�i�c�a (http://vismod.www.media.mit.edu/vismod/imagery/VisionTexture/).

Comparat�ia dintre descrierile imaginilor este realizat�a printr-o multitudine de distant�e: Maha-

lanobis, distant�e calculate prin deformarea unor modele ale imaginilor �si distant�e �ntre com-

ponentele decorelate (Karhunen-Loeve) ale imaginii precum �n aplicat�iile de recunoa�stere a

�gurilor umane (eigenfaces) sau ale vectorilor de caracteristici.

Alte publicat�ii relevante pentru descrierea sistemului pot � g�asite la adresa http://www-white.

media.mit.edu/cgi-bin/tr pagemaker.

2.2.6 SurfImage

Sistemul SurfImage a fost dezvoltat de echipa IMEDIA de la Institutul Nat�ional de Cercet�ari �n

Informatic�a �si Automatic�a (INRIA) din Frant�a (http://www-rocq.imedia.fr/imedia) [83],

[70] (interfat�a Sur�mage este reprezentat�a �n �gura 2.3).

Sistemul folose�ste descrieri ale imaginilor din baza de imagini dup�a o multitudine de caracteris-

tici de culoare, textur�a, form�a sau combinate. Atributele de culoare sunt descrise de histograme

de culoare (densit�at�i de probabilitate de ordinul �ntai) pentru diferite modele de reprezenta-

re a culorilor; descrierea de culoare este combinat�a cu descrierea de textur�a �n caracteristici

mixte, a�sa ca vectorul de coerent��a de culoare sau histogramele ponderate. Caracteristicile de

form�a sunt m�asurate de distribut�iile unor primitive vizuale (intensitate a tranzit�iilor, orientare

25

Fig. 2.3: Exemplu de c�autare cu sistemul SurfImage a unor imagini similare cu imaginea exem-

plu prezentat�a de utilizator.

a tranzit�iilor, lungime a contururilor).

Utilizatorul poate realiza o ra�nare a procesului de c�autare prin gruparea imaginilor returnate

de sistem �n clasele de \imagini relevante" �si \imagini irelevante" pentru c�autarea curent�a,

sistemul \�nv�at�and" din aceast�a interact�iune (relevance feed-back). O variant�a a sistemului

permite realizarea de interog�ari part�iale, prin speci�carea numai a unei port�iuni de imagine

de interes. Aceste port�iuni de imagine sunt obt�inute prin descompunerea �x�a a imaginii �n

port�iuni egale, la diferite nivele de rezolut�ie.

Sistemul a fost preluat de �rma LookThatUp (http://www.lookthatup.com) �si a fost dezvoltat

�si adaptat pentru aplicat�ii de comert� electronic.

26

Capitolul 3

Reprezentarea culorilor

Aceast capitol �ncearc�a realizarea unui studiu asupra culorii. In prima parte (paragraful 3.1)

vom discuta despre not�iunile fundamentale din colorimetrie. Vom de�ni principiul tricromati-

cit�at�ii, conform c�aruia orice culoare monocromatic�a poate � sintetizat�a prin amestecul aditiv

a trei stimuli independent�i de culoare, principiu bazat pe caracteristicile ochiului uman, care

cont�ine trei tipuri de receptori de culoare (conuri). Apoi, vom discuta despre chestiuni legate

de potrivirea, reproducerea �si percept�ia culorilor. In �nalul p�art�ii �ntai, vom aborda chestiuni

legate de percept�ie a culorilor la un alt nivel al c�aii vizuale. Astfel, vom discuta despre teoria

culorilor opuse, care st�a la baza dezvolt�arii spat�iilor perceptuale de reprezentare a culorii.

Partea a doua a capitolului (paragraful 3.2) este dedicat�a sistemelor de reprezentare a culo-

rii. La �nceput, vom prezenta sistemul primar de reprezentare RGB, folosit de majoritatea

dispozitivelor de achizit�ie �si a��sare electronic�a a imaginilor. Apoi, vom discuta sistemele de-

rivate de reprezentare, obt�inute prin transformarea liniar�a a componentelor primare. Acestea,

reprezentand culoarea sub form�a de luminant��a �si crominant��a, sunt folosite �e �n sistemele de te-

leviziune color, �e pentru stocarea/transmisiunea e�cient�a a imaginii. Paragraful 3.2.3 prezint�a

spat�iile perceptuale de reprezentare, care permit speci�carea culorii �ntr-o form�a u�sor manipu-

labil�a de c�atre oameni. Astfel, culoarea este reprezentat�a printr-o component�a de nuant��a, una

de saturat�ie (sau puritate) �si una de intensitate (sau luminozitate), atribute ce se potrivesc

modului psihologic uman de percept�ie a culorii. In sfar�sit, �n paragraful 3.2.4, vom prezenta

spat�iile de culoare perceptual uniforme, concepute �n scopul de a respecta diferent�ele �ntre culori

a�sa cum sunt ele percepute de observatorul uman.

Finalul capitolului (paragraful 3.3) prezint�a pe scurt cateva aplicat�ii ale reprezent�arii culorilor

�n diversele sisteme prezentate anterior. Sunt discutate modurile de calcul al diferent�ei �ntre

imagini prin m�asuri globale de tip eroare medie, �si diverse alte aplicat�ii prticulare pentru care

o anume reprezentare de culoare a fost dovedit�a mai potrivit�a decat altele.

27

3.1 Fundamentele colorimetriei

Inainte de Newton, natura luminii �si a culorilor era destul de put�in �nt�eleas�a. Experimentele

clasice ale lui Newton, bazate pe trecerea luminii solare printr-o prism�a de cristal, au condus

la formarea ideilor privind dependent�a culorii de compozit�ia spectral�a a luminii. De�si aceste

experimente au constituit bazele �zice pentru descrierea culorilor, ele erau �nc�a departe de a

fundamenta un sistem colorimetric.

Pentru a putea dezvolta sisteme de m�asurare �si speci�care a culorilor au fost �ns�a necesare �si

studii privind natura mecanismului de percepere a culorilor de c�atre ochiul uman. De abia �n

a doua jum�atate a secolului XIX, Young [132], Grassmann [37] �si Maxwell [72] au descoperit

faptul c�a orice culoare poate � exprimat�a matematic �n funct�ie de trei variabile independente.

Grassmann a dedus experimental legile potrivirii culorilor, iar Maxwell a demonstrat c�a orice

amestec aditiv de culori poate � echivalat cu un amestec �n proport�ii speci�ce a trei stimuli

primari (principiul de tricromaticitate). Teoria tricromaticit�at�ii a adus astfel puternice dovezi

indirecte �n sprijinul teoriei c�a ochiul uman are trei feluri de receptori color (fapt con�rmat mai

tarziu de studiile de anatomie �si �ziologie).

In ochiul uman, orice imagine se formeaz�a pe baza luminii focalizate pe retin�a de lentila ocular�a.

Cele trei tipuri de conuri reponsabile pentru formarea senzat�iei de culoare sunt �nglobate �n

retin�a, �si cont�in pigment�i fotosensibili ce au absorbt�ii spectrale diferite. Ace�sti receptori sunt

cunoscut�i drept conuri S, M �si L (sensibile la lungimile de und�a mici (Short), medii (Medium)

�si mari (Long) ale luminii incidente) �si sensibilitatea lor spectral�a a fost m�asurat�a prin tehnici

microspectrofotometrice �si prin experimente psiho�zice.

Dac�a distribut�ia spectral�a a luminii incidente pe retin�a este dat�a de f(�) (unde � este lungimea

de und�a), atunci r�aspunsul celor trei categorii de conuri din retin�a (senzat�ia de culoare) poate

� modelat ca un vector cu trei componente date de:

cs =

�maxZ�min

s(�)f(�)d� (3.1)

cm =

�maxZ�min

m(�)f(�)d� (3.2)

cl =

�maxZ�min

l(�)f(�)d� (3.3)

M�arimile s(�), m(�) �si l(�) ce intervin �n relat�iile (3.1){(3.3) �si care sunt ilustrate �n �gura 3.1,

reprezint�a sensibilit�at�ile spectrale ale conurilor �n intervalul de lungimi de und�a cuprinse �ntre

�min �si �max; �n afara acestui interval sensibilit�at�ile sunt nule. In general, �n aer (�si �n vid),

regiunea vizibil�a a spectrului electromagnetic este considerat�a a � cuprins�a �ntre �min = 360

nm �si �max = 830 nm [103] (sau �min = 380 nm �si �max = 780 nm, dup�a [49]).

Din punct de vedere matematic, expresiile (3.1){(3.3) corespund produsului scalar de�nit peste

28

350 400 450 500 550 600 650 700 750 800 8500

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

Lungime de unda [nm]

l

m

s

(λ)

(λ)

(λ)

Fig. 3.1: Sensibilit�at�ile spectrale relative ale conurilor.

spat�iul Hilbert al funct�iilor de p�atrat integrabil �n intervalul [�min;�max], adic�a $2 ([�min;�max]).

Aceasta �nseamn�a c�a mecanismul de r�aspuns al conurilor este echivalent proiect�iei spectrului

luminii incidente pe spat�iul generat de funct�iile de sensibilitate spectral�a ale conurilor din retin�a,

si(�). Acest spat�iu este numit subspat�iul vizual uman, sau HVSS (Human Visual SubSpace).

Fundamentul colorimetriei const�a �n considerarea celor trei r�aspunsuri ci ca o speci�care a

senzat�iei de culoare (sau ca o ecuat�ie de reprezentare a culorilor).

In practic�a, m�arimile spectrale ce intervin �n (3.1){(3.3) se �nlocuiesc cu versiuni e�santionate la

un interval de e�santionare de 10 nm (absolut su�cient pentru marea majoritate a aplicat�iilor

[103]). In acest caz se va obt�ine suma ca aproximare numeric�a a integralei. Dac�a sunt folosite

N e�santioane (uniform distribuite �n �ntregul spectru vizibil [�min;�max]) relat�iile (3.1){(3.3) se

pot rescrie compact ca:

c = ST f (3.4)

unde c = [cs; cm; cl]T �si S este o matrice ale c�arei coloane cont�in versiunile e�santionate ale

sensibilit�at�ilor spectrale.

Pentru observatorii umani normali, sensibilit�at�ile spectrale ale conurilor sunt liniar indepen-

dente (de�si prezint�a suprapuneri semni�cative) �si, �n plus, prezint�a diferent�e mici de la un

29

observator la altul (diferent�e ce se datoreaz�a �n principal diferent�elor de transmisivitate spec-

tral�a a lentilei oculare �si a mediului optic din fat�a retinei). Dac�a se de�ne�ste un set standard de

r�aspunsuri ale conurilor, orice culoare poate � de�nit�a 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

esent�iale: potrivirea culorilor, reproducerea culorilor �si percept�ia culorilor, ce vor � discutate

�n continuare.

3.1.1 Potrivirea culorilor

Dou�a spectre e�santionate f �si g produc acela�si r�aspuns al conurilor retinei, �si deci reprezint�a

aceea�si culoare, dac�a:

ST f = STg (3.5)

Dac�a lu�am �n considerare trei culori primare (surse luminoase colorimetric independente - cu

alte cuvinte culoarea oric�arei surse nu poate � potrivit�a vizual cu nici o combinat�ie liniar�a a

celorlalte) p1, p2 �si p3, vectorii STpi sunt liniari independent�i, �si deci matricea STP, unde

P = [p1 p2 p3] (3.6)

va � nesingular�a. Atunci, pentru orice spectru vizibil f , vectorul de�nit ca:

a(f) = (STP)�1ST f (3.7)

satisface relat�ia de potrivire a culorilor (3.5), �si atunci:

ST f = STPa(f) (3.8)

Deci, pentru orice spectru vizibil, exist�a o combinat�ie Pa(f) a culorilor primare care se potri-

ve�ste colorimetric cu f ; acesta este principiul tricromaticit�at�ii (3.8).

Din punct de vedere matematic este posibil ca vectorul de ponderi ale culorilor primare a(f) s�a

aib�a componente negative (de fapt, pentru orice set de culori �zice primare, exist�a culori vizibile

pentru care apare o asemenea comportare). Deoarece nu pot � produse �zic intensit�at�i negative

ale culorilor primare, spectrul Pa(f) nu este direct realizabil �n acest caz cu culorile primare

date. Realizarea �zic�a a ecuat�iei de tricromaticitate (3.8) este totu�si posibil�a prin rearanjarea

termenilor din ecuat�ie, sc�azand culorile primare ce au ponderi negative din culoarea necunoscut�a

de spectru f (ceea ce corespunde din punctul de vedere al implement�arii cu adunarea la spectrul

f a culorilor primare �n cauz�a, ponderate pozitiv).

30

3.1.2 Reproducerea culorilor

Liniaritatea expresiei (3.5) de potrivire a culorilor implic�a posibilitatea deducerii valorilor tri-

stimulus pentru orice combinat�ie liniar�a a unor spectre de baz�a pentru care valorile tristimulus

sunt cunoscute. Spectrele monocromatice unitare ei formeaz�a o astfel de baz�a ortonormal�a prin

care se poate descompune orice alt spectru:

ei(m) = �(m� i) (3.9)

Atunci propriet�at�ile de potrivire a culorilor (fat��a de un set de culori primare) se pot speci�ca

�n funct�ie de propriet�at�ile de potrivire a culorilor pentru spectrele monocromatice (3.9).

Fie ai intensit�at�ile celor trei culori primare necesare pentru a reproduce culoarea (spectrul) ei:

ai = a(ei) (3.10)

Atunci reproducerea tuturor spectrelor monocromatice poate � exprimat�a ca:

STei = STPai, cu i = 1; 2; :::; N (3.11)

Combinand aceste N ecuat�ii, se poate rescrie (3.11) ca:

ST I = STPAT (3.12)

unde A este matricea corespunz�atoare reprezent�arii spectrelor monocromatice dup�a 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 (3.12) putem exprima:

A = S(PTS)�1 (3.13)

�si deci funct�iile de potrivire a culorilor (coloanele matricii A) formeaz�a o transformare liniar�a

nesingular�a a sensibilit�at�ilor spectrale ale celor trei tipuri de conuri din retin�a. Atunci culoarea

unui spectru vizibil se poate exprima �si �n funct�ie de valorile tristimulusAT f �n loc de ST f . De

asemenea, rezult�a c�a pentru cazul a dou�a spectre f �si g culorile se potrivesc doar dac�a

AT f = ATg (3.14)

Un calcul detaliat al coe�cient�ilor de potrivire �n cazul model�arii continue a etaloanelor spectrale

monocromatice este prezentat �n [49]. Aceast�a ecuat�ie de potrivire �si reprezentare a culorilor

(3.14) are o aplicabilitate mai u�soar�a, deoarece necesit�a calculul matricii de potrivire a culorilor

monocromatice A, care se determin�a (experimental) mai u�sor decat matricea de sensibilitate a

conurilor S.

31

3.1.3 Percept�ia culorilor

Dup�a cum a fost impus de ecuat�iile de potrivire a culorilor (3.5) sau (3.14), spectrele de N

e�santioane f �si g se potivesc colorimetric dac�a ST f = STg, respectiv AT f = A

Tg. Deoarece

matricile S �si A sunt matrici N � 3, cu N > 3, este clar c�a exist�a mai multe spectre care apar

unui observator ca o singur�a culoare. Aceste spectre distincte, dar cu aparent��a colorimetric�a

identic�a, se spune c�a formeaz�a o potrivire metameric�a (distinct�a fat��a de potrivirea spectral�a).

Metamerismul poate � v�azut �si ca o problem�a, dar �si ca o simpli�care a aplicat�iilor. Este

�ns�a evident c�a realizarea unei potriviri metamerice pentru un model de iluminare dat este

insu�cient�a pentru ca potrivirea s�a se p�astreze �si �n alte condit�ii de iluminare; exemplul uzual

este potrivirea culorii unor stofe �ntr-o anumit�a lumin�a (cea din magazin), potrivire ce dispare

imediat dup�a modi�carea condit�iilor de iluminare (lumina natural�a de exterior).

3.1.4 Teoria culorilor opuse

Conform teoriei tricromaticit�at�ii, dac�a dou�a spectre de lumin�a produc acelea�si r�aspunsuri ale

conurilor, atunci ele au aceea�si culoare. Ce se �ntampl�a, �ns�a, dac�a dou�a culori produc r�aspunsuri

diferite. Evident, ele arat�a, diferit, dar cat de diferit? O alt�a �ntrebare este: ce culoare au

spectrele respective? Culorile reale sunt atribute ca ro�su, verde, albastru etc., �si nu vectori

[cs; cm; cl]T ale absorbt�iilor conurilor. Pentru a putea r�aspunde acestor �ntreb�ari, avem nevoie

de o alt�a abordare a teoriei culorilor decat cea dat�a de teoria tricromaticit�at�ii.

Teoria culorilor opuse a fost creat�a de Hering �n 1920 [43] �si este bazat�a pe observat�ia c�a

anumite culori sunt mai similare decat altele. Dac�a unui om i s-ar cere s�a aranjeze ni�ste

e�santioane colorate astfel �ncat culorile apropiate s�a �e al�aturate, rezultatul �nal ar � aproape

�ntotdeauna un cerc. Hering a observat c�a respectivele culori pot � aranjate astfel �ncat toate

culorile dintr-o jumatate de cerc s�a cont�in�a ro�su, iar celelalte, din cealalt�a jum�atate, s�a cont�in�a

verde. De asemenea, �n mod independent de prima aranjare, culorile pot � aranjate astfel �ncat

jum�atate de cerc s�a cont�in�a galben, iar cealalt�a s�a cont�in�a albastru (vezi �gura 3.2).

Aceast�a aranjare a culorilor pune �n evident��a dou�a fenomene. Primul este c�a orice culoare

poate � descris�a ca \ro�siatic�a" sau \verzuie", dar niciodat�a �si ro�siatic�a �si verzuie: rezult�a c�a

ro�su �si verde sunt dou�a senzat�ii de culoare exclusive. In mod similar, albastrul �si galbenul sunt

�si ele culori exclusive: niciodat�a o culoare nu va � descris�a ca �ind �n acela�si timp \alb�astruie"

�si \g�albuie". Al doilea fenomen este c�a nu mai exist�a nici o alt�a pereche de culori exclusive �n

afar�a de ro�su{verde �si galben{albastru. Astfel, descrierea unei culori pe de-o parte ca ro�siatic�a

sau verzuie, iar pe de alta parte ca g�albuie sau alb�astruie este complet�a.

Teoria culorilor opuse sust�ine c�a senzat�ia de culoare este organizat�a de-a lungul a dou�a axe.

Prima ax�a codeaz�a cantitatea de ro�su sau verde din culoarea respectiv�a, iar cea de-a doua, per-

pendicular�a pe prima, codeaz�a cantitatea de galben sau albastru cont�inut�a �n culoare. Senzat�ia

32

Rosu

Verde

AlbastruAlb

Galben

Fig. 3.2: Cercul culorilor opuse: semicercul superior cont�ine culorile \ro�sii", cel inferior culorile

\verzi"; semicercul din stanga cont�ine culorile \galbene", cel din dreapta culorile \albastre".

complet�a de culoare este dat�a de coordonatele culorii respective pe cele dou�a axe. Uneori, se

adaug�a �si o a treia ax�a, ce descrie componenta acromatic�a de luminant��a.

Teoria culorilor opuse este validat�a de numeroase experimente. Dac�a �x�am insistent cu privirea

un anumit obiect, dup�a care privim �nspre un perete alb, vom vedea o post{imagine a obiectului

respectiv. Dac�a obiectul este ro�su aprins, post{imaginea va � verde �si vice-versa. Dac�a obiectul

este galben aprins, post{imaginea va � albastr�a �si vice-versa. Imperecherea strict�a a culorilor

obiectului �si a post{imaginii sale vine �n sprijinul ideii c�a ro�sul �si verdele sunt asociate (�n acest

caz, �ind opuse) la fel cum sunt �si galbenul �si albastrul. Asocierea ro�su/verde �si galben/albastru

este de asemenea demonstrat�a de urm�atorul experiment: o linie subt�ire, gri (f�ar�a culoare) pe

un fond ro�su apare verzuie, �n timp ce pe un fond albastru apare g�albuie.

Rosu / Verde

Albastru / Galben

L

M

S

+

Fig. 3.3: Diagrama contribut�iilor conurilor la procesele opuse: Semnalele provenind de la conu-

rile de tip L �si M sunt sc�azute pentru a se obt�ine semnalul ro�su/verde. Semnalul de la conurile

de tip S este sc�azut din suma semnalelor de tip L �si M pentru a crea semnalul galben/albastru.

Tricromaticitatea �si teoria proceselor opuse descriu senzat�ia de culoare �n diverse puncte de pe

calea vizual�a, �ntre ochi �si creier. Tricromaticitatea este un model al retinei. Teoria culorilor

opuse este un model al unui mecanism central din creier. Procesele opuse rezult�a dintr-o

transformare a r�aspunsurilor conurilor, transformare reprezentat�a �n �gura 3.3 �si modelat�a �n

[54]. Astfel, semnalul ro�su/verde SRV rezult�a dintr-o diferent��a �ntre semnalele date de conurile

33

de tip L �si M :

SRV = �(cl � cm) (3.15)

unde � este o constant�a arbitrar�a. Semnalul galben/albastru SGA rezult�a din diferent�a dintre

r�aspunsul conurilor de tip S �si o sum�a ponderat�a a r�aspunsului conurilor L �si M :

SGA = �(cs � (�cl + (1 � �)cm)) (3.16)

unde � � 0; 7 iar � este o alt�a constant�a de scalare arbitrar�a. In sfar�sit, semnalul SAN pe

cea de-a treia ax�a | axa �ntunecat/luminos | este modelat �n general ca o combinat�ie �ntre

r�aspunsurile conurilor L �si M :

SAN = cl + (1� )cm (3.17)

cu � 0; 66.

3.2 Sisteme colorimetrice

Dup�a cum am ar�atat anterior, culoarea oric�arui spectru vizibil poate � speci�cat�a pe baza

valorilor tristimulus AT f , unde A este o matrice ale c�arei coloane sunt funct�ii de potrivire a

culorilor. Pentru ca diferitele m�asur�atori s�a �e consecvente, a trebuit de�nit un set standard

de asemenea funct�ii de potrivire a culorilor, fat��a de care s�a se calculeze valorile tristimulus.

Prima standardizare a terminologiei �si m�asur�atorilor colorimetrice a fost realizat�a de CIE (Co-

mmission Internationale de l'Eclairage) �n 1931; aceast�a standardizare continu�a s�a stea la baza

colorimetriei moderne. Recomandarea CIE 1931 de�ne�ste observatorul colorimetric standard

prin dou�a seturi echivalente de funct�ii de potrivire a culorilor.

3.2.1 Sisteme primare de reprezentare

Primul sistem propus este sistemul RGB (Red Green Blue) �n care funct�iile de potrivire a

culorilor R(�), G(�), B(�) sunt asociate cu culori primare monocromatice de lungimi de und�a

de 700 nm, 546.1 nm �si 435.8 nm �si ale c�aror intensit�at�i radiante sunt astfel alese �ncat valorile

tristimulus asociate unui spectru de energie constant�a (lumin�a alb�a) s�a �e egale. In �gura 3.4

sunt prezentate cele trei curbe R(�), G(�) �si B(�).

Al doilea sistem de�nit este XY Z, ale c�arui funct�ii de potrivire a culorilor, X(�), Y (�), Z(�)

sunt transform�ari liniare ale componentelor sistemului RGB [49].Transformarea de la RGB la

XY Z (3.18) a fost astfel aleas�a �ncat toate valorile tristimulus rezultante s�a �e pozitive, la

toate lungimile de und�a. Curbele X(�), Y (�) �si Z(�) sunt prezentate �n �gura 3.5.0BB@X

Y

Z

1CCA =

0BB@0:49 0:31 0:02

0:177 0:813 0:011

0 0:01 0:99

1CCA0BB@

R

G

B

1CCA (3.18)

34

400 450 500 550 600 650 700−0.5

0

0.5

1

1.5

2

2.5

3

3.5

r

v

b (λ)

(λ)

(λ)

Lungime de unda (nm)

Fig. 3.4: Cele trei funct�ii de corespondent��a a culorilor �n funct�ie de cele trei culori primare

(dup�a [104]). Se poate observa c�a anumite culori nu pot � sintetizate decat ca o combinat�ie

substractiv�a �ntre cele trei culori primare, ceea ce �nseamn�a c�a respectivele culori nu pot �

\create".

Cerint�a de pozitivitate a valorilor tristimulus se pare [103] c�a provine din epoca �n care cal-

culele se f�aceau manual, cu calculatoare de birou, astfel �ncat adun�arile �si sc�aderile repetate

constituiau o nesfar�sit�a surs�a de erori. Alegerea particular�a a transform�arii (3.18) din in�ni-

tatea de transfom�ari posibile a t�inut seama �si de alt�i factori, cei mai important�i �ind aceia ca

componenta Y s�a coincid�a cu funct�ia de e�cient��a luminoas�a1 �si ca cele trei funct�ii de potrivire

a culorilor s�a produc�a valori tristimulus egale �n cazul unui spectru constant.

Trebuie �ns�a remarcat c�a nici un set de culori �zic realizabile nu poate produce funct�ii de

potrivire a culorilor pozitive �n �ntreg spectrul.

Descrierea culorilor prin vectori cu trei componente (valorile tristimulus) ridic�a �ns�a probleme

de reprezentare gra�c�a (culorile sunt puncte �ntr-un spat�iu tridimensional) �si deci di�cil de

reprodus �n sect�iuni bidimensionale. O reprezentare redus�a (bidimensional�a) de interes se poate

obt�ine prin normalizarea valorilor tristimulus astfel �ncat acestea s�a apart�in�a planului unitar

(planul Maxwell) de ecuat�ie:

x1 + x2 + x3 = 1 (3.19)

Normalizarea �ec�arei componente ti a tripletului tristimulus (T1; T2; T3) asociat unei culori va

� dat de:

ti =Ti

T1 + T2 + T3

, cu i = 1; 2; 3 (3.20)

1Funct�ia de e�cient��a luminoas�a este sensibilitatea relativ�a a ochiului la energia de pe �ecare lungime de

und�a. In mod curent este numit�a luminant��a.

35

350 400 450 500 550 600 650 700 750 800 8500

0.5

1

1.5

2

2.5

Lungime de unda [nm]

x (λ)

(λ)

(λ)

y

z

Fig. 3.5: Corespondent�a culorilor �n funct�ie de coordonatele XY Z.

O asemenea normalizare este convenabil�a �ntrucat informat�ia de direct�ie asupra vectorului de

culoare r�amane nemodi�cat�a, ceea ce se pierde prin trecerea la cele trei componente depen-

dente normate liniar �ind doar informat�ia de amplitudine. Reducerea dimensiunii vectorului

de reprezentare este determinat�a tocmai de dependent�a liniar�a a valorilor ti date de (3.20),

ceea ce duce la posibilitatea reprezent�arii punctelor �ntr-un spat�iu bidimensional, avand drept

coordonatele dou�a valori tristimulus normate (numite coordonate de cromaticitate). Pentru

sistemul XY Z, diagrama de cromaticitate se reprezint�a dup�a valorile x, y, z obt�inute ca:

x =X

X + Y + Z(3.21)

y =Y

X + Y + Z(3.22)

z =Z

X + Y + Z(3.23)

3.2.2 Sisteme de reprezentare derivate

Aplicat�iile practice ale colorimetriei au condus �ns�a la utilizarea de facto a altor surse primare

decat cele standardizate de CIE. In acest caz, valorile pentru funct�iile de potrivire a culorilor

sunt diferite de cele standard, iar leg�atura dintre ele este dat�a de o transformare liniar�a a

funct�iilor de sensibilitate spectral�a a conurilor din retina uman�a:

BT = (ATQ)�1AT (3.24)

36

Una dintre aceste aplicat�ii practice a fost televiziunea color. Aparit�ia acesteia a condus (cel

put�in �n etapa init�ial�a) la utilizarea a dou�a noi sisteme de reprezentare: pe de o parte sistemul

de culori primare legat de a��sarea imaginilor color pe ecranele televizoarelor (culori primare

legate de caracteristicile de electroluminiscent��a ale triadelor de luminofori din tuburile cinescop)

�si sistemul de reprezentare a culorilor folosit �n transmisia de televiziune. Sistemele de culori

folosite la a��sare au fost, cel put�in la �nceput, de o mare diversitate, dictat�a de �ecare dintre

fabricant�ii de tuburi cinescop, ce foloseau tipuri diferite de fosfor. Variabilitatea de reprezentare

pe ecrane diferite a unei aceleia�si culori transmise a dus la standizarea tipurilor de fosfor (norma

C) de c�atre SMPTE (Society of Motion Picture and Television Engineers) [103]; norma de

reprezentare rezultat�a este a�sa numitul sistem NTSC al receptorului [49]:0BB@Rr

Gr

Br

1CCA =

0BB@0:842 0:156 0:091

�0:129 1:319 �0:2030:008 �0:069 0:897

1CCA0BB@

R

G

B

1CCA (3.25)

Spat�iile de reprezentare a culorilor utilizate pentru transmisia de televiziune au fost standardi-

zate rapid, la ora actual�a existand dou�a sisteme fundamentale: NTSC �si PAL. Transform�arile

de la spat�iul primarRGB la spat�iile de transmisiune sunt descrise de ecuat�iile (3.26) [49] pentru

NTSC �si respectiv (3.27) [33] pentru PAL:0BB@Y

I

Q

1CCA =

0BB@0:3 0:59 0:11

0:6 �0:28 �0:320:21 �0:52 0:31

1CCA0BB@

R

G

B

1CCA (3.26)

0BB@Y

U

V

1CCA =

0BB@0:3 0:59 0:11

�0:148 �0:291 0:483

0:526 �0:518 0:096

1CCA0BB@

R

G

B

1CCA (3.27)

Alegerea acestor transform�ari, prin care orice culoare este reprezentat�a printr-o component�a

de luminant��a (Y ) �si dou�a componente de crominant��a, s-a realizat prin impunerea unor con-

strangeri: folosirea canalelor de transmisiune monocrome �si compatibilitatea cu receptoarele

alb-negru (ceea ce a dus la alegerea luminant�ei ca una dintre componentele de culoare) �si deter-

minarea unor componente de crominant��a a c�aror l�argime de band�a s�a �e relativ mic�a. Aceste

caracteristici sunt exploatate de majoritatea sistemelor de codare �si compresie, �n care prima

operat�ie efectuat�a este sube�santionarea componentelor de crominant��a (I �si Q, respectiv U �si

V ) [19], [57], [49].

In aceea�si categorie putem include �si spat�iul de culoare al lui Ohta [86], ale c�arui componente

I1I2I3 sunt date de: 0BB@I1

I2

I3

1CCA =

0BB@13

13

13

12

0 �12

�14

12�1

4

1CCA0BB@

R

G

B

1CCA (3.28)

Componenta I1 cont�ine informat�ia de luminant��a, �n timp ce componentele I2 �si I3 reprezint�a

informat�ia \cromatic�a". Coe�cient�ii transform�arii (3.28) au fost dedu�si astfel �ncat componen-

37

tele de culoare din spat�iul rezultat s�a �e decorelate, �n acest sens folosindu-se un set important

de imagini ca mult�ime reprezentativ�a. Astfel, matricea transform�arii (3.28) reprezint�a o bun�a

aproximare a matricii transform�arii Karhunen{Lo�eve, transformarea optimal�a ce decoreleaz�a

complet componentele. Spat�iul de culoare al lui Ohta a fost folosit �n aplicat�ii de segmentare

[67] �si compresie [26].

Un alt spat�iu de reprezentare a culorilor de tip luminant��a{crominant��a este spat�iul PhotoY CC

dezvoltat de compania Kodak [87] �si folosit pentru stocarea imaginilor pe FotoCD-uri. Spat�iul

PhotoY CC ��si are r�ad�acinile �n televiziunea color, �si permite o compresie e�cient�a a imaginii.

Valorile PhotoY CC sunt rezultatul unei transform�ari �n trei pa�si din valorile originale RGB,

�si anume:

1. corect�ie gamma.

2. transformare liniar�a;

3. cuantizare a componentelor Y CC pe 8 bit�i.

Corect�ia gamma este necesar�a datorit�a caracteristicii neliniare a dispozitivelor de a��sare (�n

condit�iile �n care dispozitivele de achizit�ie | scannerele | au un comportament aproximativ

liniar) �si const�a �n aplicarea �ec�areia din componentele primare RGB (normalizate �n [0; 1]) a

funct�iei:

x0 =

8>><>>:1; 099x0;45 � 0; 099 dac�a x � 0; 018

4; 5x dac�a �0; 018 < x < 0; 018

�1; 099jxj0;45 + 0; 099 dac�a x � �0; 018(3.29)

Apoi, componentele de culoare corectate gamma sunt transformate liniar dup�a:0BB@Y0

C01

C02

1CCA =

0BB@0; 299 0; 587 0; 114

�0; 299 �0; 587 0; 886

0; 701 �0; 587 �0; 114

1CCA0BB@

R0

G0

B0

1CCA (3.30)

In �nal, noile componente de culoare sunt cuantizate liniar pe 8 bit�i, rezultand, astfel, valorile

�nale Y CC:

Y =255

1; 402Y0 (3.31)

C1 = 111; 40C 01 + 156 (3.32)

C2 = 135; 64C 02 + 137 (3.33)

Transformarea din coordonate PhotoY CC �n RGB nu este exact inversa transform�arii directe.

Init�ial, se calculeaz�a:

Y0 = 1; 3584Y (3.34)

C01 = 2; 2179(C1 � 156) (3.35)

C02 = 1; 8215(C2 � 137) (3.36)

38

dup�a care se calculeaz�a componentele RGB ce urmeaz�a a � a��sate precum:0BB@Rdisplay

Gdisplay

Bdisplay

1CCA =

0BB@1 0 1

1 �0; 194 �0; 5091 1 0

1CCA0BB@

Y0

C01

C02

1CCA (3.37)

3.2.3 Sisteme de reprezentare perceptual�a

In funct�ie de modul �n care observatorii umani descriu culorile (deci pornind de la observat�ii

empirice) Munsell a introdus un sistem de speci�care a culorilor bazat pe not�iunile de lumi-

nozitate, nuant��a �si saturat�ie. Luminozitatea este o m�asur�a a luminant�ei percepute. Nuant�a

se refer�a la �ecare dintre variet�at�ile unei culori, determinat�a de compozit�ia sa cromatic�a - deci

cat de ro�sie sau cat de verde este culoarea dat�a. Saturat�ia este aspectul perceptual in uent�at

de cantitatea de lumin�a (culoare) alb�a ad�augat�a aditiv unei lumini (culori) monocromatice.

Spat�iul Munsell este prezentat �n �gura 3.6.

(a) (b) (c)

Fig. 3.6: Spat�iul de culoare al lui Munsell: (a) Hue. (b) Value. (c) Chroma.

Aceste trei atribute ortogonale [111, 103] formeaz�a un sistem de reprezentare perceptual�a a

culorilor, derivat �n mod esent�ial ca o rotat�ie a spat�iului RGB a culorilor, urmat�a de o trans-

formare �n coordonate cilindrice sau polare [14], [38], [30]. Acest sistem este cunoscut sub

forma mai multor variante asem�an�atoare: HSV (Hue Saturation Value), HSI (Hue Saturation

Intensity), HV C (Hue Value Chroma), HSL (Hue Saturation Luminance), LCH (Lightness

Chroma Hue). In toate aceste variante de reprezentare, atributul de luminant��a (sau intensita-

te, valoare, str�alucire) este asociat unei axe verticale de simetrie rotat�ional�a a noului spat�iu de

culoare, iar atributul de nuant��a, m�asurat ca un unghi polar (unghi la centru), delimiteaz�a pe

anvelopa spat�iului de culori zone corespunz�atoare culorilor pure.

Ra�narea sistemului Munsell continu�a [47]; LV D (Logical Visual Display) produce o cuantizare

vizual�a aproximativ uniform�a prin sinteza (pentru �ecare imagine) a unei noi palete de culori

de a��sare. Spat�iul de culori astfel obt�inut este de form�a cilindric�a [38], ca un dublu con [24]

39

(vezi �gura 3.7), ca o piramid�a cu baz�a hexagonal�a [24], sau ca un cilindru prelungit pe ambele

baze cu conuri [30].

Fig. 3.7: Spat�iul de culoare HSI: Hue{Saturation{Intensity (Nuant��a{ Saturat�ie{Intensitate).

Componentele de luminant��a, saturat�ie �si nuant��a sunt calculate cu ajutorul unor formule ce

exprim�a �n mod aproximativ sensul psiho{�zic al acestor not�iuni. In literatura de specialitate

sunt prezentate diverse formule, �n mod special pentru componenta de nuant��a H, ideea de baz�a

�ind realizarea unui compromis �ntre acuratet�e �si simplitate de calcul. Formula original�a pentru

nuant��a a fost cea a lui Tenenbaum et al. [112]:

H =

8><>:arccos 0:5[(R�G)�(R�B)]p

(R�G)2+(R�B)(G�B)dac�a B > G

360 � arccos 0:5[(R�G)�(R�B)]p(R�G)2+(R�B)(G�B)

dac�a G � B(3.38)

unde H este exprimat �n grade. Demonstrat�ia relat�iei (3.38) este dat�a �n [36]. Kender [59]

propune o versiune de calcul aproximativ al nuant�ei ce permite o implementare mai rapid�a,

reducand num�arul de �nmult�iri necesare �si evitand extragerea r�ad�acinii p�atrate:

H =

8>>>>>><>>>>>>:

nede�nit dac�a R = G = B

3+ arctan

�p3(G�R)

G+R�2B

�dac�a min(R;G;B) = B

� + arctan�p

3(B�G)G+B�2R

�dac�a min(R;G;B) = R

5�3+ arctan

�p3(R�B)

B+R�2G

�dac�a min(R;G;B) = G

(3.39)

Modul de calcul al componentelor HSI propus de Bajon et al. [4], prezentate �n relat�ia (3.40),

permite obt�inerea unor rezultate u�sor diferite de cele clasice, dar care sunt extrem de rapide,

datorit�a simpli�c�arii matematice (nu mai e nevoie de funct�ii trigonometrice).

H =

8>>>>><>>>>>:

nede�nit dac�a R = G = B

G�B3(G+R�2B)

dac�a min(R;G;B) = B

B�R3(G+B�2R) dac�a min(R;G;B) = R

R�G3(B+R�2G) dac�a min(R;G;B) = G

(3.40)

40

Cat despre componenta de saturat�ie S, �n afar�a de cele dou�a formul�ari echivalente:

S = 1� 3min(r; g; b) (3.41)

S = 1� 3min(R;G;B)

R+G +B(3.42)

mai exist�a cateva variante de calcul, al c�aror scop este sc�aderea instabilit�at�ii acesteia �n jurul

punctului de negru absolut (0; 0; 0):

S =

8<: Imax � 3min(Imax�R;Imax�G;Imax�B)

3�(R+G+B)dac�a I � Imax

3

Imax � 3min(R;G;B)

R+G+Bdac�a I >

Imax

3

(3.43)

unde Imax reprezint�a valoarea maxim posibil�a a componentei de luminant��a.

Cat despre componenta de intensitate I, cel mai des folosite relat�ii sunt:

I =R +G+B

3(3.44)

I = R +G+B (3.45)

Albastru

Turcoaz

Verde Galben

Rosu

Violet

Alb

NegruH

V

S

Albastru

Turcoaz

Verde Galben

Rosu

Violet

NegruH

AlbV

S

(a) (b)

Fig. 3.8: Spat�iile de culoare HSV (a) �si HLS (b).

41

Alte dou�a sisteme de reprezentare perceptual�a, HSV �si HLS sunt cel mai des folosite �n

computer vision. Structura lor este prezentat�a �n �gura 3.8, iar relat�iile de calcul sunt date de:

V = max(r; g; b) (3.46)

S =

8<: 0 dac�a r = g = b = 0max(r;g;b)�min(r;g;b)

max(r;g;b)�n rest

(3.47)

L =max(r; g; b) + min(r; g; b)

2(3.48)

S =

8>><>>:0 dac�a r = g = b

max(r;g;b)�min(r;g;b)

max(r;g;b)+min(r;g;b)dac�a L � 0; 5

max(r;g;b)�min(r;g;b)

2�max(r;g;b)�min(r;g;b)dac�a L > 0; 5

(3.49)

Aceste modele demonstreaz�a c�a saturat�ia unei culori scade pe m�asur�a ce intensitatea se apropie

de nivelul ei maxim (sau minim). Totu�si, nu toate aceste fenomene perceptuale sunt imple-

mentate �n modelele respective. De exemplu, culorile cu saturat�ie maxim�a �si nuant�e diferite au

acela�si nivel de intensitate (V = 1 �n cazul sistemului HSV , L = 0; 5 pentru HSL). Aceasta,

�ns�a, nu corespunde �ntotdeauna cu percept�ia uman�a, un contraexemplu �n acest sens �ind

faptul c�a un galben saturat este �ntotdeauna mai luminos decat un albastru saturat.

Avantajele importante ale spat�iilor perceptuale de tip HSI �n raport cu celelalte tipuri de

reprezent�ari posibile sunt:

� compatibilitate cu intuit�ia uman�a;

� separarea componentelor cromatice de cele acromatice;

� posibilitatea de a folosi componentele �n mod independent pentru diverse sarcini; de

exemplu, componenta de nuant��a H poate � folosit�a pentru segmentare, cea de intensitate

pentru operat�ii de �mbun�at�at�ire de contrast etc.

Totu�si, trebuie ment�ionate �si dezavantajele sistemelor perceptuale, dintre care cele mai impor-

tante sunt:

� existent�a unor singularit�at�i �n transformarea RGB ! HSI (H nu e de�nit pentru

culorile acromatice | nivelele de gri | �n timp ce saturat�ia S nu este de�nit�a pentru alb

| sau negru | pur);

� sensibilitate crescut�a la deviat�ii mici ale componentelor RBG �n jurul singularit�at�ilor;

� neuniformitate perceptual�a, �n ciuda \orient�arii" perceptuale;

� probleme legate de operat�ii pe valorile unghiulare ale nuant�ei, cum ar medierea.

42

In [9] se arat�a c�a o culoare este un mod de speci�care a unei entit�at�i ce pare a � o proprietate

absolut�a a unei suprafet�e, care �i �mbun�at�at�e�ste detectabilitatea �si permite o separabilitate

�si clasi�care mai bun�a a elementelor din campul vizual. Sistemul de reprezentare a culorilor

propus se bazeaz�a pe 11 culori ce nu sunt niciodat�a confundate: alb, gri, negru, ro�su, verde,

galben, albastru, roz, maro, portocaliu, purpuriu. Ace�sti termeni colorimetrici de baz�a au

fost determinat�i pe baza catorva criterii psiho-vizuale: sunt monolexici (denumiri de un sigur

cuvant), sunt primii termeni enunt�at�i de o persoan�a atunci cand aceasta trebuie s�a prezinte

termeni coloristici, sunt primele culori �nv�at�ate de copii, sunt generici �si nu se refer�a la obiecte

particulare, iar utilizarea lor este consensual�a pentru majoritatea observatorilor.

3.2.4 Sisteme de reprezentare cu cromaticitate uniform�a

Toate modelele de reprezentare descrise pan�a �n acest punct au fost introduse ca metode de

speci�care a culorilor conform unor valori tristimulus (ce reprezint�a �n mod unic un punct

�n spat�iul tridimensional al culorilor). Manipularea (prelucrarea) culorilor implic�a �ns�a �si ne-

cesitatea determin�arii unor grade de asem�anare �ntre culori, bazate pe pozit�iile lor relative

din spat�iul tridimensional de reprezentare, �si deci, implicit, pe distant��a. Dar �n mod natural,

distant�a dintre culori este determinat�a de termenii legat�i de percept�ia acestora.

Cuanti�carea obiectiv�a a evalu�arilor f�acute de diferit�i observatori umani pentru m�arimea unei

diferent�e de culoare este o problem�a, cu atat mai mult cu cat, �n general, �n practic�a este mai

util�a evaluarea diferent�elor dintre culori asem�an�atoare decat dintre culori mult diferite. Atunci

not�iunea de diferent��a abia perceptibil�a �ntre culori sau JND (Just Noticeable Di�erence) a

ap�arut implicit ca o unitate de m�asur�a.

Distribut�ia diferent�ei abia perceptibile dintre culori �n sistemele de reprezentare primare (RGB,

XY Z, xy) este extrem de neregulat�a. De exemplu, �n spat�iul de cromaticitate xy, m�asurarea

JND a dus la de�nirea elipselor MacAdams: regiuni eliptice pentru care culorile cont�inute �n

interior nu pot � diferent�iate vizual [49], [39]. M�arimea, orientarea �si excentricitatea acestor

elipse variaz�a puternic dup�a pozit�ia centrului lor (de exemplu, excentricitatea variaz�a �ntre 1

�si 20 [49]). Aceasta conduce la numirea acestor spat�ii de culoare ca perceptual neuniforme, �n

sensul c�a diferent�ele perceptual egale dintre culori nu corespund unor distant�e egale �n spat�iul

valorilor tristimulus. Cum o asemenea caracteristic�a de JND este extrem de dezirabil�a (mai ales

�n de�nirea �si m�asurarea tolerant�ei sistemelor de reproducere a culorilor), s-a �ncercat de�nirea

unor spat�ii de cromaticitate uniform�a.

Construirea unui spat�iu de culoare uniform se face �n principiu �n dou�a etape [103], [95]: se

determin�a o scar�a de iluminare uniform�a �si apoi se determin�a o diagram�a de cromaticitate

uniform�a pentru stimuli de culoare ce au aceea�si luminozitate. Cele dou�a solut�ii sunt combinate

prin scalarea cu factori convenabili pe �ecare coordonat�a (scal�a de cromaticitate �si scal�a de

luminant��a), astfel ca unit�at�ile s�a corespund�a unei aceleia�si proport�ii de JND.

43

Sistemul UCS (Uniform Chromaticity Scale) produce o diagram�a de cromaticitate �n care

culorile ce difer�a abia perceptibil sunt aproape echidistante (�si atunci elipsele MacAdams devin

forme aproape circulare, cu excentricit�at�i cuprinse �ntre 1 �si 2 �si de dimensiuni aproape egale).

Transformarea care leag�a spat�iul de cromaticitate UCS de spat�iul primar XY Z este neliniar�a,

exprimat�a ca:

u =4X

X + 15Y + 3Z(3.50)

v =6Y

X + 15Y + 3Z(3.51)

Din aceste valori a coe�cient�ilor de cromaticitate (valori tristimulus normate conform (3.20))

se pot deduce transform�arile valorilor tristimulus, ad�augand condit�ia suplimentar�a de p�astrare

a coordonatei de luminant��a, V = Y :0BB@U

V

W

1CCA =

0BB@23

0 0

0 1 0

�12

32

12

1CCA0BB@X

Y

Z

1CCA (3.52)

Ins�a nici acest spat�iu nu ofer�a o proport�ionalitate direct�a �ntre diferent�a perceptual�a a culori-

lor �si distant�a euclidian�a �ntre tripletele corespunz�atoare de valori tristimulus. Primul spat�iu

de culoare ce respect�a aceast�a cerint��a a fost propus de CIE �n 1960 ca spat�iu de cromatici-

tate uniform�a modi�cat (UCS modi�cat), sau U�V�W

� (3.53). Originea acestui spat�iu a fost

translatat�a �n punctul corespunz�ator culorii albe de referint��a, de coordonate cromatice (u0; v0);

coordonata W� este o r�ad�acin�a cubic�a a luminant�ei (�si a fost introdus�a ca str�alucirea, sau

contrastul, unei pete uniforme de culoare).

W� = 116V

1

3 � 17 (3.53)

V� = 13W �(v � v0) (3.54)

U� = 13W �(u� u0) (3.55)

In prezent, diferent�a �ntre culori este m�asurat�a dup�a propunerile CIE 1976, care de�nesc

dou�a noi spat�ii de culoare, Luv �si Lab. Ambele spat�ii folosesc aceea�si scar�a de luminant��a L,

dependent�a de luminant�a perceput�a (valoarea tristimulus Y ) printr-o transformare aproape

identic�a cu cea introdus�a �n (3.53):

L = 116f�Y

Y0

�� 16 (3.56)

f(t) =

8<: t1

3 , dac�a t > 0:00886

7:787t + 16116

, �n rest(3.57)

Sc�arile de crominant��a corespunz�atoare celor dou�a sisteme sunt date de (3.58) �si (3.59) pentru

Luv, respectiv de (3.60) �si (3.61) pentru Lab:

u� = 13L(u � u0) (3.58)

v� = 13L(v � v0) (3.59)

44

a� = 500

�f

�X

X0

�� f

�Y

Y0

��(3.60)

b� = 200

�f

�Y

Y0

�� f

�Z

Z0

��(3.61)

Spat�iile Lab �si Luv permit de asemenea reprezentarea unei culori �n form�a perceptual�a (conform

�gurii 3.9) prin schimbarea coordonatelor carteziene �n coordonate polare �n spat�iul componen-

telor de culoare. Saturat�ia �si nuant�a culorii (�n spat�iul Lab) sunt date de:

Hab = tan�1 b�

a�

!(3.62)

Cab =

qa�2 + b�

2 (3.63)

a

b

L

Hab

Cab

*

*

Albastru(−)

Galben(+)

Verde(−)

Alb

Rosu(+)

Negru

Fig. 3.9: Reprezentarea spat�iului Lab �n coordonate polare

In mod echivalent se pot calcula acelea�si m�arimi �si �n spat�iul Luv. Distant�a �ntre dou�a culori

poate � calculat�a �e ca distant��a euclidian�a �nte vectorii Lab asociat�i:

�Eab =

q�L2 +�a�2 +�b�2 (3.64)

�e, �n coordonate polare, ca:

�Eab =q�L2 +�C2

ab+�H2

ab(3.65)

unde

�Hab = p

q2 (Cab1

Cab2� a

�1b

�2 � a

�1b

�2) (3.66)

iar

p =

8<: �1 dac�a a�1b

�2 > a

�2b

�1

1 �n rest: (3.67)

45

O diferent��a abia perceptibil�a JND corespunde unei distant�e euclidiene �n spat�iul Lab de apro-

ximativ 2.3 [103]. Coordonatele de cromaticitate a �si b corespund cont�inutului culorii �n gama

ro�su-verde �si respectiv galben-albastru (realizand �n acest fel o reprezentare colorimetric�a ana-

loag�a celei din sistemul vizual uman [38], [71]).

3.3 Aplicat�ii directe ale reprezent�arilor �ntr-un spat�iu de

culoare

Dup�a cum s-a discutat anterior, este clar c�a spat�iile de culoare perceptual uniforme ar trebui

favorizate pentru rezolvarea problemelor �n care se urm�are�ste imitarea performant�elor vizuale

umane (mai ales �n aplicat�ii industriale de control de calitate [90] �n care se a�steapt�a ca sis-

temul de prelucrare a imaginilor s�a preia sarcinile unui expert uman). Pe de alt�a parte �ns�a,

covar�sitoarea majoritate a senzorilor CCD folosit�i sunt senzori RGB; chiar camerele ce se pre-

tind Y UV se bazeaz�a pe senzori RGB urmat�i de circuite interne de conversie a spat�iului de

culoare (conversie a spat�iilor de culoare ce devine o problem�a din ce �n ce mai pretent�ioas�a din

punctul de vedere al constrangerilor temporale [58]).

Abordarea aproape unanim acceptat�a este de a folosi spat�iile de culoare cu cromaticitate uni-

form�a pentru m�asurarea diferent�elor de culoare (realizand o caracterizare numeric�a obiectiv�a a

acuratet�ii colorimetrice a unei prelucr�ari). O astfel de m�asur�a recent introdus�a pentru carac-

terizarea rezultatelor �ltr�arii imaginilor color este diferent�a normalizat�a de cromaticitate NCD

(Normalized Chromaticity Di�erence) [94], [93], [92], de�nit�a ca o eroare p�atratic�a normalizat�a

�n spat�iul de culoare Lab, respectand recomand�arile CIE de asociere a unei distant�e euclidiene

pentru distant�a �ntre culori:

NCD =

MPm=1

NPn=1k�Eab(m;n)k

MPm=1

NPn=1kEab(m;n)k

(3.68)

cu

kEab(m;n)k = L2(m;n) + a

2(m;n) + b2(m;n) (3.69)

k�Eab(m;n)k = �L2(m;n) + �a2(m;n) + �b2(m;n) (3.70)

O aceea�si m�asur�a, dar nenormat�a, este folosit�a �n [130] pentru optimizarea unui �ltru ce m�asoar�a

culoarea suprafet�elor (a c�arui ie�sire sunt vectorii valorilor tristimulus corespunzand spat�iului

XY Z).

S-a ar�atat, �ns�a, [68] c�a formulele recomandate de CIE pentru calculul diferent�ei �ntre culori �n

spat�iul Lab date de relat�iile (3.64) �si (3.65) nu sunt capabile s�a cuanti�ce �n mod corespunz�ator

diferent�ele �ntre culori apropiate. Astfel, au fost dezvoltate formule mai complicate pentru a

evalua diferent�ele �ntre culori.

46

Pe baza testelor efectuate de McDonalds [73] Comitetul de M�asurare a Culorii (CMC) a derivat

formulele CMC(l : c) care au devenit un standard internat�ional �n industria textil�a. Diferent�a

�ntre culori este exprimat�a ca:

�E =

vuut��LlSL

�2

+

��Cab

cSC

�2+

��Hab

SH

�2(3.71)

unde

SL =

8<: 0; 040975 L1

1+0;01765L1dac�a L1 � 16

0; 511 dac�a L1 < 16(3.72)

SC = 0; 0638Cab1

1 + 0; 0131Cab1

+ 0; 638 (3.73)

SH = SC(Tf + 1� f) (3.74)

M�arimile f �si T ce intervin �n ecuat�ia (3.74) sunt date de:

f =

vuut C4ab1

C4ab1

+ 1900(3.75)

T =

8<: 0; 56 + j0; 2 cos (Hab1+ 168)j dac�a 164� � Hab1

� 345�

0; 36 + j0; 4 cos (Hab1+ 35)j �n rest

(3.76)

M�arimile L1, Cab1�si Hab1

ce intervin �n ecuat�iile (3.71){(3.74) sunt ni�ste m�arimi standard, �n

timp ce ponderile l �si c din ecuat�ia (3.71) trebuie luate �e 2 �si 1, �e ambele egale cu 1, �n funct�ie

de scopul dorit (acceptabilitatea sau perceptibilitatea diferent�ei �ntre culori).

Alte standarde de evaluare a diferent�ei �ntre culori sunt BDF (l : c) [69] �si CIE94, ale c�aror

formule pot � g�asite �n [68].

O alt�a m�asur�a direct�a a diferent�ei de culoare este eroarea medie de cromaticitate MCRE (Mean

Chromaticity Error), de�nit�a [115] ca o eroare p�atratic�a medie �n triunghiul Maxwell [14], [103]

((3.19), (3.20)) �si NCRE (Normalized Chromaticity Error) [94]:

MCRE =

MPm=1

NPn=1k�Ergb(m;n)k

MN(3.77)

NCRE =

MPm=1

NPn=1k�Ergb(m;n)k

MPm=1

NPn=1kErgb(m;n)k

(3.78)

unde

kErgbk =�

R

R +G +B

�2

+

�G

R +G+B

�2+

�B

R+G +B

�2

(3.79)

Deoarece punctul de intersect�ie al unui vector asociat unei culori RGB cu planul Maxwell

(planul coe�cient�ilor RGB normalizat�i) serve�ste caracteriz�arii cromaticit�at�ii unei culori, NCRE

�si MCRE dau o indicat�ie a erorii de nuant��a. In acela�si timp �ns�a, k�Ergbk nu trebuie considerat�a

47

eroarea exact�a de cromaticitate, deoarece planul Maxwell nu este un spat�iu �n care diferent�e

egale de culoare produc distant�e euclidiene egale. Norma k�Ergbk a diferent�ei m�asoar�a distant�a

exact�a, care poate � interpretat�a cantitativ ca o eroare de cromaticitate.

O ultim�a m�asur�a obiectiv�a a diferent�ei de culoare �ntre dou�a imagini este eroarea p�atratic�a

normalizat�a �n spat�iul primar RGB, NMSE (Normalized Mean Square Error) [115].

NMSE =

MPm=1

NPn=1k�ERGB(m;n)k

MPm=1

NPn=1kERGB(m;n)k

(3.80)

cu

kERGB(m;n)k = R2(m;n) +G

2(m;n) +B2(m;n) (3.81)

O alt�a modalitate de utilizare direct�a a informat�iei cont�inute de una dintre coordonatele

spat�iului de reprezentare a culorilor corespunde cazului �n care spat�iul de reprezentare a fost

ales pentru a implementa m�arimi �zice de interes; acesta este cazul spat�iilor de transmisiune

pentru imaginile color de televiziune (NTSC (3.26) �si PAL (3.27)). Alte utiliz�ari ale acelo-

ra�si reprezent�ari (bazate pe separarea unei componente de luminant��a �si a dou�a componente de

crominant��a, cu semni�cat�ie perceptual�a mai redus�a) au fost propuse �n segmentarea imagini-

lor color, �e prin metode de extragere a contururilor [84], [98], �e prin metode de segmentare

orientate pe regiuni [46].

Tot o transformare liniar�a a spat�iului RGB primar de reprezentare a fost aleas�a �n [10] pentru

a construi un spat�iu de reprezentare a culorilor, optim din punctul de vedere al performant�elor

de aproximare a acestora: 0BB@H1

H2

H3

1CCA =

0BB@1 1 0

1 �1 0

�12�1

21

1CCA0BB@

R

G

B

1CCA (3.82)

In [78] se propune folosirea reprezent�arii culorilor �n spat�iul Lab pentru a descrie particularit�at�ile

coloristice ale diferitelor tipuri de fructe (portocale, l�amai, mere) �si gradul lor de coacere prin

tr�as�aturi derivate ca a

Lb, a

b, arctan a

b.

In [79] s-a studiat in uent�a reprezent�arii culorilor �n diferite spat�ii de culoare asupra calit�at�ii �si

performat�ei compresiei JPEG a imaginilor. Caracterizarea rezultatelor (prin m�arimi obiective

de calitate �si aprecieri subiective) a condus la concluzia c�a cele mai potrivite spat�ii sunt Lab

�si Luv, iar cele mai put�in potrivite RGB �si XY Z. Motivele acestei comport�ari sunt neliniari-

tatea componentei L (care p�astreaz�a regiunile �ntunecate din imagini �ntr-o manier�a mult mai

apropiat�a de cea perceptual�a) �si neliniaritatea global�a a spat�iilor de reprezentare (care reduc

semni�cativ redundant�a canalelor).

In [123], s-a propus prelucrarea spectrului de crominant��a al imaginii, obt�inut prin transformarea

Fourier a imaginii complexe I = U + jV , U �si V �ind componentele de culoare ale spat�iului

48

Y UV (obt�inute prin relat�ia (3.27)) aplicat�iile �ind �n indexarea imaginilor �si �n extragerea

contururilor.

In multe aplicat�ii de prelucrare �si analiz�a a imaginilor color este folosit �ns�a intensiv spat�iul de

reprezentare perceptual HSI (sau variantele sale). Segmentarea orientat�a pe regiuni a imagini-

lor color [11], [12], [21], [99], [6]2, [30] folose�ste propriet�at�ile spat�iuluiHSI (�n imaginile naturale

saturat�ia este relativ mic�a, saturat�ia m�asoar�a pertinent�a nuant�ei �si zgomotul captorului, �n ge-

neral necorelat sau slab corelat cu imaginea, este mult redus �n componentele de luminant��a �si

de saturat�ie). Aceste abord�ari pun �ns�a accentul pe echivalent�a direct�a �ntre modul uman de

percepere a culorilor (�si implicit a problemei de rezolvat) �si exprimarea matematic�a a acesteia.

Sp�atiul primarRGB este folosit �n majoritatea cazurilor pentru aplicat�ii de �ltrare a zgomotului

�n imagini, datorit�a faptului c�a procesul de achizit�ie a imaginii este legat de aceast�a reprezentare

�si, deci, modelarea matematic�a a zgomotului de achizit�ie este u�soar�a numai �n coordonate

RGB.

2In plus, nuant�a �si saturat�ia sunt folosite sub forma unor coordonate carteziene, C1 =b

r+g+b�si C2 =

1

2

2r+br+g+b

49

Capitolul 4

Descrierea culorilor din imagini

Pentru descrierea cont�inutului de culoare a imaginilor sunt necesare trei etape: alegerea unui

spat�iu potrivit de reprezentare a culorilor, cuantizarea (de cele mai multe ori grosier�a) a compo-

nentelor de culoare �si apoi descrierea propriu-zis�a a culorilor cuantizate. Presupunerea uzual�a

este c�a, pentru �ecare pixel, culoarea este o realizare a unui proces aleator, independent fat��a de

plasarea spat�ial�a a pixelilor �n imagine �si metodele de descriere a cont�inutului de culoare provin

din caracterizarea statistic�a a valorilor variabilelor �si proceselor aleatoare: momente statistice

�si funct�ii de densitate de probabilitate de diferite ordine.

In [108], [109] Swain a propus pentru prima dat�a folosirea histogramei de culoare (4.1), �n

reprezentarea RGB sau �n spat�iul culorilor opuse pentru relizarea descrierii cont�inutului de

culoare a imaginilor.

~h(c) =1

MN

M�1Xi=0

N�1Xj=0

�(f(i; j)� c); 8c 2 C: (4.1)

Observat�iile esent�iale sunt c�a histograma (funct�ia de densitate de probabilitate de ordinul �ntai)

culorilor imaginii este relativ invariant�a la mici translat�ii, scal�ari �si rotat�ii ale scenei. De aseme-

nea, histograma este relativ robust�a la mici modi�c�ari ale ilumin�arii (de altfel, a fost propus�a

�si eventuala normalizare a culorilor prin proiect�ia vectorilor de culoare pe triunghiul Maxwell).

Pentru compararea histogramelor de culoare, �n [108] s-a introdus o distant��a (intersct�ia histo-

gramelor) care �n cazul histogramelor normate este echivalent�a cu metrica L1; distant�a dintre

dou�a histograme de culoare hA �si hB este de�nit�a ca:

d (hA; hB) =

Pc2Cmin(hA(c); hB(c))

2P

c2C hA(c)=Xc2CjhA(c)� hB(c)j: (4.2)

Este evident c�a mai multe imagini diferite pot avea histograme de culoare identice sau foarte

similare. In [105] se estimeaz�a num�arul maxim de imagini dintr-o baz�a de imagini ce pot �

deosebite prin folosirea histogramei de culoare corespunz�atoare unei cuantiz�ari date �si unui

prag de asem�anare �xat (de exemplu 25000 de imagini ce pot � deosebite folosind o cuantizare

cu 64 culori). Totu�si, Lai [63], [64] utilizeaz�a o cuantizare cu 16 culori �xe a imaginilor �si

50

ierarhizeaz�a imaginile din baza de imagini secvent�ial, �n ordinea dat�a de speci�carea culorilor �si

ponderea acestora �n imagine. Structura de navigare �n baza de imagini seam�an�a cu structura

de parcurgere a arborescent�elor de ��sere �n Microsoft Windows Explorer.

Destul de repede a devenit evident c�a descrierea imaginilor numai printr-o densitate de proba-

bilitate de ordinul �ntai sau momente derivate, nu este su�cient�a: pe de o parte deoarece nu

sunt luate �n considerare informat�iile privind distribut�ia spat�ial�a a culorilor, �si pe de alt�a parte

deoarece histogramele sunt foarte sensibile la deplas�ari ale culorilor (corespunz�atoare chiar la

foarte mici modi�c�ari de nuant��a). In [107] s-a propus folosirea histogramei cumulative (4.3)

(echivalent�a funct�iei de repartit�ie) pentru o robustet�e sporit�a la aceste mici schimb�ari �n culoare.

H(c) =Xc

0�ch(c0): (4.3)

In [128], [7], [133] se face o comparat�ie a e�cient�ei diferitelor spat�ii de culoare (RGB, YUV, HSV,

etc.) pentru indexarea dup�a histograma de culoare �si/sau alte momente de culoare. In [18] se

propune utilizarea unei cuantiz�ari diferite a componentelor de culoare (�n reprezent�ari YUV sau

HSV). 1 In [8] se realizeaz�a descrierea distribut�iilor de culoare �n spat�ii cu componente decorelate

printr-o transformare Karhunen-Loeve. Oricate critici se pot aduce descrierilor realizate prin

histogramele obi�snuite de culoare, acestea r�aman universal folosite, de la primele sisteme de

indexare (QBIC [85], [27]), pan�a la sistemele cele mai noi (SurfImage [83], [27]).

In [74], [55] s-a propus indexarea imaginilor dup�a culoarea medie, �e pentru o cuantizare dup�a

cateva culori �xe (pentru logo-uri comerciale), �e pentru o cuantizare adaptiv�a. Appas [3]

folose�ste pentru descrierea cont�inutului imaginilor momente centrate de ordin 2 (M2) �si 3 (M3)

�si necentrate de ordin 1 (m1) pentru �ecare component�a de culoare HSV. Momentele sunt

combinate �ntr-o m�asur�a global�a unic�a prin m1M3=M2.

Alte tipuri de momente statistice sunt calculate pentru reprezent�ari ale distribut�iei de culoare

�n spat�iul de reprezentare original. Paschos [88] propune caracterizarea distribut�iei de culoare

prin momente statistice ale norului de puncte ale proiect�iei culorilor din imagine �n spat�iul

normalizat xy. Celenk [15] folose�ste culoare medie din imagine �si invariant�ii Hu de form�a

(descri�si �n (6.26)-(6.32)) ai norului de puncte reprezentate de proiect�ia culorilor RGB din

imagine pe planul primilor doi vectori proprii. In [60] se calculeaz�a m�asuri entropice (entropie

informat�ional�a, valoarea maxim�a) bazate pe histogramele de culoare, considerate la mai multe

nivele de rezolut�ie pentru reprezentarea simpli�cat�a a distribut�iei de culoare.

Observat�ia c�a reprezentarea culorilor din imagini prin cuantiz�ari �xe nu asigur�a o calitate

su�cient de bun�a, �si ar � de dorit utilizarea unei cuantiz�ari adaptive a culorilor, generand

deci imagini indexate �si palete de culoare, nu a �ntarziat s�a apar�a. Problema de comparat�ie

a histogramelor cap�at�a o dimensiune suplimentar�a, legat�a de compararea paletelor de culoare

diferite ale imaginilor. In [101], [40] este studiat�a folosirea distant�elor euclidiene ponderate �ntre

1Abordarea uzual�a este de a folosi reprezentarea RGB cuantizat�a linaiar uniform cu 6 nivele pentru �ecare

component�a de culoare, folosind astfel 216 culori de reprezentare.

51

Fig. 4.1: Cele dou�a imagini au acelea�si histograme pentru c�a au acelea�si culori �n acelea�si

proport�ii.

histograme de culoare; ponderile utilizate sunt corespunz�atoare similarit�at�ii dintre culorile din

paletele de culoare folosite. Ponderile introduse nu reprezint�a �ns�a decat grade de similaritate

�ntre perechile de culori din cele dou�a palete de culoare. Aceea�si idee se reg�ase�ste �n [55],

unde se propune realizarea unei corespondent�e �ntre culorile din paletele de culoare diferite

care se potrivesc cel mai bine. Acceptarea unui grad de similaritate �ntre culorile folosite

pentru cuantizare nu este o presupunere exagerat�a; mai mult, acest model poate � utilizat �si

pentru cuantiz�arile �xe, folosind asem�anarea dintre o culoare de cuantizat�a �si culorile cuantizate

�nvecinate. Fie c�a aceast�a asem�anare se modeleaz�a ca o netezire a histogramei [18] (rezultand

o histogram�a \soft"), �e c�a se �ncorporeaz�a un model fuzzy al culorilor [52], [120], histograma

echivalent�a poate � utilizat�a precum histograma uzual�a (de�si nu se mai garanteaz�a �ndeplinirea

condit�iei de normalizare probabilist�a).

O alt�a problem�a observat�a, este variabilitatea caracteristicilor de descriere a culorilor cu ilumi-

narea. Aceea�si scen�a, observat�a �n condit�ii de iluminare diferite (de exemplu �n lumin�a de zi sau

la as�nt�itul soarelui), este caracterizat�a de distribut�ii de culoare foarte diferite. Solut�ia ar � cal-

culul unor invariant�i de culoare - numere care s�a individualizeze culorile, indiferent de condit�iile

de iluminare. Funt [31] a propus realizarea invariant�ei la iluminare prin calculul laplacianului

logaritmului planelor de culoare (bazandu-se pe principiul c�a diferent�a dintre logaritmul valo-

rilor componentelor de culoare a doi pixeli vecini nu se modi�c�a cu iluminarea). Gevers [34],

[35] folose�ste invariant�i de culoare pentru indexare robust�a la variat�iile de iluminare; invariant�ii

introdu�si sunt de tip raport de diferent�e de componente de culoare.

Limitarea esent�ial�a a distribut�iei de culoare de ordinul �ntai (histogram�a �si momentele derivate)

provine �ns�a din faptul c�a nu se ia �n considerare nici o informat�ie privind distribut�ia spat�ial�a

a culorilor �n planul imaginii. Figura 4.1 prezint�a un exemplu simplu: dou�a imagini ce cont�in

acela�si culori, �n acelea�si proport�ii, dar cu distribut�ii spat�iale diferite. Imaginile sunt diferite, dar

histogramele lor sunt identice. Corect�ia evident�a a acestei limit�ari este folosirea unei informat�ii

spat�iale suplimentare pe lang�a informat�ia de culoare. Incorporarea informat�iei spat�iale poate �

realizate �n trei moduri esent�iale: completarea histogramei de culoare cu m�asuri t�inand numai de

52

distribut�ia spat�ial�a, extinderea histogramei prin folosirea unei informat�ii de distribut�ie spat�ial�a

�si, �n �ne, folosirea unor distribut�ii de culoare de ordin superior (cel put�in doi).

In [20] se folose�ste principiul de ad�augare a unor caracteristici de �mpr�a�stiere a pixelilor cu

acee�si culoare; pentru �ecare intrare (bin) al histogramei de culoare se adaug�a informat�ia de

distant��a medie, variant��a a distant�elor �si entropie a distribut�iei de distant�e medii (�ntre pixelii

avand culoarea respectiv�a).

In [89] a fost introdus�a not�iunea de vector de culoare coerent�a CCV, prin �mp�art�irea pixelilor �n

coerent�i (�n zone uniforme) �si ne-coerent�i (pe contururi); �ecare categorie de pixeli este descris�a

prin propria histogram�a de culoare. Ideea de partit�ionare a pixelilor din imagine �n mai multe

clase dup�a o anume proprietate legat�a de structurarea spat�ial�a a informat�iei vizuale aduce o

�mbun�at�at�ire important�a capacit�at�ii de descriere a cont�inutului imaginilor prin distribut�ii de

ordinul �ntai. Totu�si, tehnica CCV prezent�a cateva limit�ari: �n interiorul �ec�arei dintre clasele

partit�iei pixelii sunt considerat�i de important��a egal�a �si identi�cat�i numai prin culoare; de�nirea

partit�iei presupune de�nirea unor praguri, a c�aror valoare va trebui dedus�a adaptiv; �n �ne,

lungimea vectorului de descriere cre�ste direct proport�ional cu num�arul de clase de partit�ionare

a pixelilor �si deci cu calitatea descrierii.

In [122] am propus utilizarea unei histograme de culoare ponderate, de�nite de:

~h(c) =1

MN

M�1Xi=0

N�1Xj=0

w(i; j)�(f(i; j)� c); 8c 2 C: (4.4)

Ponderea cu care �ecare pixel de culoare c contribuie la hitogram�a este dependent�a de scalarul

w(i; j), ce caracterizeaz�a caracteristicile locale (de vecin�atate) ale pixelului respectiv. In [122],

[121], [124] au fost propuse mai multe tipuri de ponderare a aportului pixelilor.

Cum informat�ia de contur este foarte relevant�a pentru percept�ia cont�inutului imaginii, putem

pondera contribut�ia �ec�arei culori cu p�atratul Laplacianului s�au (modul de calcul al Laplacia-

nului �si a altor m�asuri de intensitate a tranzit�iei de culoare �n zonele de contur este prezentat

�n sect�iunea 6.1.1):

w(i; j) = �2(i; j): (4.5)

Intrucat factorul esent�ial �n evaluarea activit�at�ii locale de culoare este variabilitatea culorii

�ntr-o vecin�atate a pixelului curent, aceasta ar putea � estimat�a prin probabilitatea de aparit�ie

a culorii pixelului curent c = f(i; j) �n vecin�atatea sa. Dac�a aceast�a probabilitate este mare,

vecin�atatea considerat�a include o suprafat��a uniform�a semni�cativ�a de culoare c = f(i; j); atunci

contribut�ia pixelului curent la histogram�a trebuie s�a �e mic�a. Dac�a probabilitatea de aparit�ie

a culorii c �n vecin�atatea sa este mic�a, �nseamn�a c�a aceasta este o culoare relativ singular�a

(colt�, contur, punct izolat) �si atunci contribut�ia sa la histograma ponderat�a trebuie crescut�a.

Coe�cientul de ponderare este atunci invers proport�ional cu num�arul de pixeli Nij(c) ce au

asceea�si culoare c �n vecin�atatea p�atrat�a de dimensiune D, centrat�a �n pixelul curent (i; j) (cu

53

c = f(i; j)). De�nim Nij(c) ca:

Nij(c) =D=2X

m=�D=2

D=2Xn=�D=2

�(f(i+m; j + n)� f(i; j)): (4.6)

Coe�cientul de ponderare devine:

w(i; j) =1

Nij(c): (4.7)

Ponderarea probabilist�a de�nit�a de (4.7) m�asoar�a neuniformitatea local�a relativ la culoarea

pixelului curent considerat. O m�asur�a global�a trebuie s�a ia �n considerare �si probabilit�at�ile

de aparit�ie ale celorlalte culori din vecin�atatea pixelului curent. Entropia este o astfel de

m�asur�a, �si poate � utilizat�a pentru estimarea disimilarit�at�ii culorilor la nivelul vecin�at�at�ii.

Cum entropia este maxim�a cand probabilit�at�ile sunt egale (�si deci nu sunt multe culori identice

�n vecin�atate) �si este nul�a dac�a vecin�atatea este absolut uniform�a, coe�cientul poate � ales ca

e�cient�a informat�ional�a (entropia normat�a) a vecin�at�at�ii:

w(i; j) = 1 �P

c02CNij(c

0) logNij(c0)

2D2 logD: (4.8)

In �ne, distribut�ii de ordinul doi ale culorii au fost folosite de Huang [45], [44]: corelograma

�si auto-corelograma. Acestea m�asoar�a probabilit�at�ile de aparit�ie ale unor perechi de pixeli

cu culori date �ntr-o anumit�a con�gurat�ie spat�ial�a (situat�i la o distant��a impus�a unul fat��a de

cel�alalt). Corelograma t�ine mai mult de o descriere a caracterului de textur�a a imaginii, �si este

studiat�a mai am�anunt�it �n capitolul urm�ator.

54

Capitolul 5

Descrierea texturilor

Dict�ionarele lingvistice de�nesc textura ca o proprietate a constitut�iei generale a unui corp

solid (sau constitut�ia unei roci sau a unui aliaj din punctul de vedere al orient�arii �n spat�iu a

p�art�ilor componente) sau ca un atribut caracteristic al unei stofe (sau material textil) care este

urzit sau t�esut. Textura este observat�a �n con�gurat�ia structural�a a obiectelor, a lemnului, a

nisipului, a vegetat�iei, aglomer�arilor de granule [49]. Textura este descris�a �n termeni lingvistici

prin rugozitate, contrast, �net�e, regularitate, termeni a c�aror traducere matematic�a nu este

clar�a [23]. Cateva exemple de texturi sunt prezentate �n Figura 5.1.

Fig. 5.1: Mozaic format cu mai multe modele de texturi

Studiile psihovizuale �si cercet�arile recente de percept�ie a texturilor color ([75],[77],[76]) au

ar�atat c�a pentru observatorii umani descrierea texturilor color se poate separa �ntr-o descri-

ere a cont�inutului de culoare (f�acand deci abstract�ie de \modelul" texturii) �si de o descriere

a texturii �ns�a�si (independent�a de culori). Ierarhia stabilit�a pentru principalele caracteristici

este:

� culoarea (medie sau predominant�a) a texturii;

� orientarea �si direct�ionalitatea;

55

� regularitatea;

� puritatea culorii texturii (saturat�ia medie);

� complexitatea.

Concluzia esent�ial�a a acestui studiu este aceea c�a o textur�a color poate � caracterizat�a printr-o

descriere a culorilor ce o compun (descriere independent�a de localizarea spat�ial�a a acestora) �si

printr-o descriere a modelului spat�ial de aranjare a culorilor, evaluat pe o imagine echivalent�a

de scalari. Imaginea echivalent�a de scalari poate � o imagine de luminant��a determinat�a din

imaginea color init�ial�a sau poate � determinat�a prin orice fel de asociere a unor scalari vectorilor

de culoare init�iali. Descrierea texturilor color se reduce deci la descrierea texturilor reprezentate

�n imagini cu nivele de gri.

La o scar�a dat�a, orice textur�a are acela�si aspect, indiferent de zona observat�a. In aceste condit�ii,

textura se poate interpreta ca realizarea unui proces aleator stat�ionar (�n care statisticile cal-

culate sunt independente de pozit�ia observat�iei �n campul de observat�ie). O parte dintre aceste

m�arimi statistice sunt �ns�a statistici de ansamblu care ar trebui calculate pe o in�nitate de

realiz�ari ale procesului aleator considerat (�si deci o in�nitate de texturi de acela�si fel). De ace-

ea se face �si ipoteza suplimentar�a de ergodicitate 1 a procesului aleator, astfel �ncat o singur�a

realizare (deci o singur�a textur�a) s�a permit�a calculul acestor m�asuri statistice ca medii spat�iale.

Corespunzand diferitelor teorii privitoare la percept�ia vizual�a a texturii, au fost propuse dou�a

modele principale de descriere a texturilor:

� abordarea determinist�a se refer�a la repetarea spat�ial�a a unui motiv de baz�a, pe diferite

direct�ii. Acest�a abordare corespunde unei viziuni macroscopice, �ntalnit�a de altfel �n cazul

t�es�aturilor, fragmentelor de piele de reptil�a �si a modelelor de tip mozaic (mozaicul de pe

pardoseal�a, parchetul). Elementul repetitiv de baz�a port�a numele de texon sau texel {

\texture element" { (prin similaritate cu denumirea de pixel { \picture element").

� abordarea probabilist�a (statistic�a) se refer�a la caracterizarea atributelor anarhice �si omo-

gene �n acela�si timp, care nu t�in nici de un element de baz�a localizabil (motiv), nici de o

frecvent��a principal�a de repetit�ie.

In mod evident, mai exist�a �si o abordare mixt�a, care consider�a textura ca o structur�a spat�ial�a

constituit�a din mai multe motive de baz�a, dipuse �n mod aleator (�n spat�iu �si �n valoare).

In cele ce urmeaz�a vom aborda doar metodele de caracterizare a texturilor ce se bazez�a pe

presupunerea caracterului predominant aleator al acestora; vom prezenta astfel caracterizarea

texturilor prin momente statistice, prin matrici de coocurent��a, prin izosegmente, prin modelare

statistic�a �si prin tehnici frecvent�iale.

1Un proces aleator se cheam�a ergodic dac�a mediile sale statistice sunt egale cu mediile sale temporale.

56

5.1 Caracterizarea texturilor prin momente statistice

Considerand textura (reprezentat�a ca o imagine scalar�a (cu nivele de gri) f()) un proces aleator,

pentru o regiune R (format�a din Nreg pixeli) se pot de�ni mai multe momente (centrate �si

necentrate). Aceste momente pot � de�nite pentru �ecare punct al imaginii, reprezentat de un

vector �n plan2, x.

Se de�nesc astfel momentele de ordin k, necentrate, centrate �si centrate absolute prin 3:

mk =1

Nreg

Xx2R

f(x)k (5.1)

�mk =1

Nreg

Xx2R

(f(x)�m1)k

(5.2)

cmk =1

Nreg

Xx2Rjf(x)�m1jk (5.3)

La acestea se adaug�a momentele statistice calculate pentru grupuri de dimensiune k de puncte

din textur�a (interpretate ca realiz�ari ale unor variabile aleatoare diferite), situate �n pozit�ii

prede�nite (descrise de vectorii de translat�ie ti) de�nite ca:

Bk =1

Nk

Xx2Rx+t12R

(f(x)�m1) (f(x+ t1)�m1) ::: (f(x+ tk�1)�m1) (5.4)

Nk este num�arul de grupuri de dimensiune k, (x;x+ t1; :::;x+ tk�1) din regiunea R. Un caz

particular este autocovariat�ia, de�nit�a pentru perechi de puncte din textur�a ca:

B2 =1

Nk

Xx2Rx+t12R

(f(x)�m1) (f(x+ t1) �m1) : (5.5)

Caracterizarea texturilor prin momente nu este su�cient de precis�a; au fost sintetizate texturi

(perceptual diferite) ale c�aror momente statistice sunt identice pan�a la ordinul 4 sau 5 [23].

5.2 Caracterizarea texturilor prin matrici de

coocurent��a

Matricea de coocurent��a are ca elemente mediile spat�iale de ordinul doi (deci probabilit�at�i de

aparit�ie �n textur�a a unor perechi de nivele de gri). Pentru o regiune R a texturii studiate �si

2Cele dou�a componente ale vectorului sunt chiar coordonatele punctului �n imagine.3Dup�a cum se �stie, media este momentul de ordinul 1, energia medie este momentul de ordinul 2, variant�a

este momentul centrat de ordinul 2, skewness este momentul centrat de ordiunul 3, kurtosis-ul este momentul

centrat de ordinul 4 �si dispersia este momentul centrat absolut de ordin 1.

57

pentru un vector de translat�ie spat�ial�a t dat, componentele matricii de coocurent��a se de�nesc

pentru toate perechile posibile de nivele de gri (a; b) ca (5.6):

Mt(a; b) = Card f(x;x+ t) 2 R�R j f(x) = a �si f(x+ t) = bg (5.6)

DeciMt(a; b) este num�arul de perechi de pixeli din regiuneaR, separate de vectorul de translat�ie

t, care au respectiv valorile nivelelor de gri a �si b. Pentru o imagine cu L nivele de gri, matricea

de coocurent��a va � o matrice p�atrat�a de dimensiune L � L. In practic�a, pentru reducerea

calculelor, num�arul de nivele de gri este redus la 8 sau la 16, printr-o tehnic�a convenabil�a 4. In

concluzie, pentru o aceea�si textur�a, matricea de coocurent��a depinde de regiunea considerat�a,

vectorul de translat�ie �si gradul (�si modul) de reducere a nivelelor de gri. Spre exemplu, pentru

regiunea reprezentat�a pe 6 nivele de gri �n tabelul 5.1 a), matricea de coocurent��a obt�inut�a

pentru vectorul de translat�ie t = (0; 1) (deci o pereche de pixeli situat�i la distant��a de un

pixel pe vertical�a) este M(0;1) (5.1 b)), iar matricea de coocurent��a obt�inut�a pentru vectorul de

translat�ie t = (1; 0) (deci o pereche de pixeli situat�i la distant��a de un pixel pe orizontal�a),cu o

reducere suplimentar�a a nivelelor de gri la 4, este M(1;0), (5.1 c)).

1 2 1 3 4

2 3 1 2 4

3 3 2 1 1

M(0;1) =

0BBBBBBBBBB@

0 0 0 0 0 0

0 1 2 0 0 0

0 1 0 2 0 0

0 0 1 1 0 0

0 1 0 0 1 0

0 0 0 0 0 0

1CCCCCCCCCCAM(0;1) =

0BBBBB@1 2 1 0

2 0 1 1

1 1 1 1

0 0 0 0

1CCCCCAa) b) c)

Tabel 5.1: Exemplu de calcul a matricilor de coocurent��a.

Distinct�ia �ntre texturi diferite poate � f�acut�a �n primul rand prin inspect�ia (examinarea de

ansamblu) a matricii de coocurent��a, printr-o vizualizare tridimensional�a a matricii 5. In plus,

se pot de�ni o serie de indici de natur�a statistic�a ce caracterizeaz�a distribut�ia componentelor

matricii de coocurent��a. Aceste m�arimi sunt:

� Omogenitatea, de�nit�a de:

O =1

Nnz

Xa

Xb

(Mt(a; b))2 (5.7)

Nnz este num�arul de pozit�ii nenule din matricea de coocurent��a (deci num�arul de perechi

diferite de nivele de gri, a�sezate la un deplasament t, ce se reg�asesc �n regiunea con-

siderat�a). Acest indice (5.7) este cu atat mai mare cu cat se reg�ase�ste de mai multe

ori o pereche de nivele de gri (deci unele pozit�ii ale matricii au valori mult mai mari

decat celelalte), ceea ce se �ntampl�a �n general atunci cand exist�a o periodicitate �n sensul

translat�iei.

4In general este su�cient�a eliminarea ultimilor bit�i din cuvantul de reprezentare binar�a a nivelului de gri.5Pentru o zon�a uniform�a, matricea de coocurent��a are o singur�a component�a nenul�a (�si poate � modelat�a ca

un impuls), indiferent de vectorul de translat�ie ales.

58

� Omogenitatea local�a, de�nit�a de:

Oloc =1

Nnz

Xa

Xb

1

1 + (a� b)2Mt(a; b) (5.8)

� Contrastul, de�nit de:

C =1

Nnz(L� 1)2

L�1Xk=0

Xja�bj=k

Mt(a; b) (5.9)

In acest�a m�asur�a �ecare termen al matricii de coocurent��a este ponderat cu distant�a la

diagonal�a. Astfel se obt�ine un indice (5.9) ce corespunde interpret�arii uzuale a contrastu-

lui, �si anume are o valoare mare atunci cand termenii dep�artat�i de diagonala principal�a a

matricii au valori mari (adic�a atunci cand exist�a numeroase treceri de la pixeli lumino�si

la pixeli �ntunecat�i).

� Entropia, de�nit�a de:

H = 1 � 1

Nnz logNnz

Xa

Xb

Mt(a; b) logMt(a; b)� (Mt(a; b)) (5.10)

Entropia este mic�a dac�a o aceea�si pereche de pixeli apare de multe ori �si este mare dac�a

toate perechile de nivele de gri sunt slab reprezentate. Aceasta este un indicator al

dezordinii ce caracterizeaz�a textura.

� Uniformitatea este de�nit�a de:

U =1

N2nz

Xa

M2t(a; a) (5.11)

� Directivitatea este de�nit�a de:

U =1

Nnz

Xa

Mt(a; a) (5.12)

Uniformitatea �si directivitatea sunt cu atat mai importante cu cat un unic nivel de gri

apare de mai multe ori pe direct�ia de translat�ie.

� Corelat�ia este de�nit�a de:

B =1

Nnz�x�y

Xa

Xb

(a� �x)(b� �y)Mt(a; b) (5.13)

In expresia (5.13) �x �si �y sunt mediile pe linii �si respectiv pe coloane ale componentelor

matricii de coocurent��a, iar �x �si �y sunt dispersiile corespunz�atoare (pe linii �si pe coloane).

Dintre m�arimile de�nite, se consider�a [23] c�a cele mai importante pentru caracterizarea texturii

sunt omogenitatea (5.7), entropia (5.10), contrastul (5.9) �si corelat�ia (5.13).

Not�iunea de coocurent��a poate � extins�a la studiul distribut�iilor spat�iale �si ale altor primitive

caracteristice (a�sa cum sunt liniile sau contururile), nu numai nivelul de gri. Astfel se introduce

not�iunea de matrice de coocurent��a generalizat�a. Pentru de�nirea unei matrici de coocurent��a

generalizat�a este necesar s�a se precizeze:

59

� o primitiv�a P ;

� un atribut (o caracteristic�a, o tr�as�atur�a) p al acestei primitive;

� un predicat spat�ial Pred care leag�a perechi de primitive �si are valoare binar�a (adev�arat

/ fals), ceea ce este echivalent cu �ndeplinirea unei relat�ii (�n principiu spat�iale) �ntre

primitivele selectate.

Pentru dou�a valori oarecare a �si b ale atributului p, termenul G(a; b) al matricii se exprim�a ca:

G(a; b) =Card f(P1; P2) j p(P1) = a; p(P2) = b; P red(P1; P2) = TRUEg

Card f(P1; P2) j Pred(P1; P2) = TRUEg (5.14)

Deci, un element al matricii de coocurent��a generalizate este dat de raportul dintre num�arul

de perechi de primitive ce satisfac predicatul spat�ial �si atributul speci�cat �si num�arul total de

perechi de primitive ce satisfac predicatul spat�ial. Pentru cazul �n care primitiva este pixelul,

atributul primitivei este nivelul s�au de gri �si predicatul spat�ial este translat�ia cu un vector

speci�cat, din de�nit�ia (5.14) a matricii generalizate de coocurent��a se reg�ase�ste matricea de

coocurent��a (5.6). Un alt caz particular de interes este acela �n care primitivele sunt pixeli de

contur, iar atributele ce �i caracterizeaz�a pot � orientarea local�a a conturului, contrastul local

sau pozit�ia �n imagine. In aceste condit�ii, predicatele spat�iale ce pot � veri�cate pot � unul

dintre:

� distant�a �ntre pixelii de contur considerat�i s�a �e mai mic�a ca un prag �xat

� unul dintre puncte apart�ine sectorului de unghi � �si adancime k ce are ca ax�a de simetrie

vectorul tangent conturului �n cel�alalt punct

� unul dintre puncte apart�ine sectorului de unghi � �si adancime k ce are ca ax�a de simetrie

direct�ia perpendicular�a conturului �n cel�alalt punct.

S�i pentru descrierea matricii generalizate de coocurent��a se pot folosi m�asurile statistice intro-

duse la matricea de coocurent��a.

Un caz particular al matricii de coocurent��a generalizate este �si corelograma, de�nit�a �n [45, 44],

�si utilizat�a mai mult pentru descrierea distribut�iei de culoare �n imagini de tip general. Corelo-

grama utilizeaz�a ca primitiv�a pixelul, a c�arui tr�as�atur�a este culoarea (sau valoarea nivelului de

gri). Relat�ia (predicatul spat�ial) dintre cele dou�a primitive este situarea la o distant��a impus�a

una fat��a de cealalt�a, astfel �ncat corelograma m�asoar�a probabilit�at�ile de aparit�ie a perechilor

de culori, situate spat�ial la o aceea�si distant��a d dat�a.

Cd(a; b) = Card f(x;xd) 2 R�R j f(x) = a �si f(xd) = bg (5.15)

In ecuat�ia anterioar�a, xd semni�c�a mult�imea de pixeli (pozit�ii spat�iale din regiunea caracte-

rizat�a) situat�i la distant�a d fat��a de pixelul de la pozit�ia x. Evident, corelograma depinde �n

60

mod fundamental de alegerea metricii dup�a care se calculeaz�a distant�a. Dimensiunea corelo-

gramei este aceea�si ca pentru matricea de coocurent��a: matrice p�atrat�a cu num�ar de linii egal

cu num�arul de nivele de cuantizare a nivelelor de gri din imagine sau cu num�arul de culori

diferite. In practic�a, corelograma este calculat�a pentru un set de mai multe distant�e.

Autocorelograma este un caz particular al corelogramei, �n care se m�asoar�a probabilitatea de

aparit�ie a perechilor de pixeli de aceea�si culoare (valoare), separat�i de o aceea�si distant��a d

dat�a. Autocorelograma este un vector, al c�arui num�ar de elemente este num�arul de nivele de

cuantizare a nivelelor de gri din imagine sau cu num�arul de culori diferite:

Cd(a) = Card f(x;xd) 2 R �R j f(x) = a �si f(xd) = ag (5.16)

5.3 Caracterizarea texturilor prin izosegmente

Un izosegment de nivele de gri (numit uneori �si plaj�a sau \runlength") este o mult�ime liniar�a

de pixeli consecutivi, avand acela�si nivel de gri, orientat�a pe o anumit�a direct�ie. Lungimea unui

izosegment (a unei plaje) este num�arul de pixeli ce formeaz�a respectiva mult�ime.

Pentru o orientare (direct�ie) �xat�a �, se poate determina o matrice de izosegmente, ale c�arei

elementeM�(a; b) reprezint�a num�arul de izosegmente de lungime b dat�a, formate din pixeli de

un nivel de gri a dat �si orientate pe direct�ia �. Matricea rezultat�a are L linii (egal cu num�arul

de nivele de gri din imagine) �si un num�ar de coloane egal cu lungimea maxim�a a izosegmentelor

pe direct�ia dat�a (N�). Spre exemplu, pentru regiunea reprezentat�a pe 8 nivele de gri �n tabelul

5.2 a), pe direct�ia vertical�a matricea de izosegmente este M�=2 (5.2 b)), iar pe direct�ia primei

diagonale, matricea de izosegmente este M�=4 (5.2 c)).

1 2 1 3 3 4

1 2 1 2 3 1

2 1 1 3 2 1

4 3 3 2 1 1

M�=2 =

0BBBBB@2 1 2

4 1 0

4 1 0

2 0 0

1CCCCCA M�=4 =

0BBBBB@6 2 0

2 2 0

3 0 1

2 0 0

1CCCCCAa) b) c)

Tabel 5.2: Exemplu de calcul a matricilor de izosegmente.

Aspectul acestei matrici este caracteristic unui anumit tip de textur�a; �n plus, ca �si pentru

matricea de coocurent��a se pot de�ni diferite m�arimi caracteristice. Dac�a vom nota cu Niz

num�arul total de izosegmente din regiunea ce se dore�ste caracterizat�a (de�nit �n ecuat�ia (5.17))

�si cu Nreg num�arul total de pixeli din regiunea de imagine analizat�a, descriptorii de baz�a ai

matricii de izosegmente sunt RF1 { RF5, de�nit�i �n ecuat�iile (5.18) { (5.22) (RF1 { proport�ia

izosegmentelor scurte, RF2 { proport�ia izosegmentelor lungi, RF3 { heterogenitatea culorilor,

RF4 { heterogenitatea lungimilor, RF5 { proport�i izosegmentelor) �si introdu�si �n [32]: [32]:

Niz =L�1Xa=0

n�Xb=1

M�(a; b) (5.17)

61

RF1 =1

Niz

L�1Xa=0

n�Xb=1

M�(a; b)

b2(5.18)

RF2 =1

Niz

L�1Xa=0

n�Xb=1

b2M�(a; b) (5.19)

RF3 =1

Niz

L�1Xa=0

n�Xb=1

M�(a; b)

!2

(5.20)

RF4 =1

Niz

n�Xb=1

L�1Xa=0

M�(a; b)

!2

(5.21)

RF5 =Niz

Nreg

(5.22)

O prim�a extensie a setului de parametri Galloway a fost propus de Chu et al. [22] prin ad�augarea

a doi parametri de m�asur�a a proport�iei de valori mici �si respectiv, importante (LGRE { Low

Gray-level Run Emphasis, proport�ia nivelelor de gri mici, de�nit�a �n (5.23) �si HGRE { Hi-

gh Gray-level Run Emphasis, proport�ia nivelelor de gri importante, de�nit�a �n (5.24)). Este

evident c�a ace�sti parametri provin din simetrizarea parametrilor de�nit�i pentru lungimea izo-

segmentelor, RF1 �si RF2.

LGRE =1

Niz

L�1Xa=0

n�Xb=1

M�(a; b)

a2(5.23)

HGRE =1

Niz

L�1Xa=0

n�Xb=1

a2M�(a; b) (5.24)

De altfel, principiul dup�a care au fost introdu�si parametrii RF1, RF2, LGRE �si HGRE este

ponderarea num�arului de izosegmente de o anumit�a valoare �si lungime, M�(a; b), printr-un

factor ce depinde direct (respectiv invers) proport�ional de p�atratul m�asurii de interes (lungime

a izosegmentului sau valoare a izosegmentului).

O nou�a extensie a mult�imii de parametri este propus�a de Dasarathy �si Holder [25], prin ponde-

rarea lungimilor izosegmentelor �si a valorilor izosegmentelor. Cei patru noi parametri propu�si

sunt de�nit�i de:

LRHGE =1

Niz

L�1Xa=0

n�Xb=1

a2b2M�(a; b) (5.25)

LRLGE =1

Niz

L�1Xa=0

n�Xb=1

b2

a2M�(a; b) (5.26)

SRHGE =1

Niz

L�1Xa=0

n�Xb=1

b2a2M�(a; b) (5.27)

SRSGE =1

Niz

L�1Xa=0

n�Xb=1

1

a2b2M�(a; b) (5.28)

Ace�sti parametri exprim�a deci LRHGE { Large Run, High Gray-level Run Emphasis (proport�ia

izosegmentelor lungi cu valoare important�a), LRLGE - Large Run, Low Gray-level Run Em-

phasis (proport�ia izosegmentelor lungi cu valoare mic�a), SRHGE { Small Run High Gray-level

62

Run Emphasis (proport�ia izosegmentelor scurte cu valori importante) �si SRLGE { Small Run

Low Gray-level Run Emphasis (proport�ia izosegmentelor scurte cu valori mici).

De�si descrierea zonelor de imagine prin parametrii prezentat�i anterior (ecuat�iile (5.18)-(5.28))

provine dintr-o abordare statistic�a, forma de prezentare a matricii de izosegmente �si a parame-

trilor derivat�i nu este similar�a unor statistici discrete.

La �nceput, campul aleator \regiune a imaginii" este format de pixeli (ce pot � interpretat�i ca

izosegmente neagregate, de lungime unitar�a), caracterizat�i de valoarea lor, ce este o variabil�a

aleatoare. Constrangerea spat�ial�a de de�nire a unui izosegment duce la caracterizarea acelu-

ia�si camp aleator printr-o pereche de variabile aleatoare: valoarea izosegmentelor �si lungimea

izosegmentelor. Matricea de izosegmente va cont�ine deci funct�ia de densitate de probabilitate

a setului de variabile aleatoare valoare - lungime a izosegmentelor. Probabilitatea de aparit�ie

a unui izosegment avand o valoare a �si o lungime b impuse, este dat�a de:

P�(a; b) =M�(a; b)

Niz

(5.29)

Funct�ia de densitate de probabilitate marginal�a a �ec�arei dintre cele dou�a variabile aleatoare

se deduce cu u�surint��a prin:

P�(b) =L�1Xa=0

P�(a; b) (5.30)

P�(a) =n�Xb=1

P�(a; b) (5.31)

Expresiile parametrilor deja de�nit�i pot � rescrise folosind expresia probabilit�at�ilor de�nite �n

(5.29); de exemplu, expresia parametrului RF2 devine:

RF2 =L�1Xa=0

n�Xb=1

b2P�(a; b) = b2 (5.32)

Astfel se poate recunoa�ste cu u�surint��a forma momentului statistic de ordinul doi (media

p�atratic�a) a distribut�iei marginale a lungimilor izosegmentelor. In mod analog, parametrul

HGRE (5.24) este media p�atratic�a a distribut�iei marginale a valorilor izosegmentelor. Atunci,

parametrii RF1 (5.18) �si LGRE (5.23) ar � momente statistice de ordinul -2, care, de altfel, nu

pot proveni dintr-o funct�ie generatoare a momentelor unei distribut�ii. De asemenea, se poatre

ar�ata cu u�surint��a c�a parametrul RF5 (5.22) este inversul lungimii medii a izosegmentelor:

RF5 =1

b(5.33)

Parametrii propu�si de Dasarthy �si Holder [25] (5.25){(5.28) sunt m�asuri ale interact�iunii dintre

variabilele aleatoare de valoare �si lungime a izosegmentelor, exprimate prin momente de ordinele

2 �si -2 ale distribut�iei de ordin doi a perechii de variabile aleatoare (generalizand mai curand

RF1, RF2, HGRE �si LGRE).

63

In �ne, parametrii RF3 �si RF4, ce m�asoar�a �n teorie \dispersia valorilor fat��a de izosegmente"

�si respectiv \dispersia lungimilor izosegmentelor fat��a de valori" sunt coe�cient�i de neuniformi-

tate a distribut�iilor marginale de valori �si de lungimi (m�asurand diferent�a dintre distribut�ia

real�a a acestora �si o distribut�ie uniform�a). Intr-adev�ar, este evident c�aPn�

b=1 P�(b) = 1 �siPL�1a=0 P�((a)) = 1, deci RF3 �si RF4 sunt minimale atunci cand toate valorile izosegmentelor �si

toate lungimile izosegmentelor sunt egal probabile.

Lista de parametri statistici ce caracterizeaz�a matricea de izosegmente este aproape exhaustiv�a;

de altfel, aceia�si parametri sunt prezentat�i de Tang �n [110], iar �n manualul de aplicat�ii ale

vederii asistate de calculator [48] sunt prezentat�i chiar mai put�ini. Ceea ce rezult�a cu claritate

din enumerarea anterioar�a este c�a aceast�a mult�ime de parametri a fost dedus�a �n mod experi-

mental, f�ar�a un real suport statistic. Desigur, nu exist�a reguli clare care s�a permit�a alegerea

unui bun parametru statistic care s�a descrie matricea de izosegmente (de altfel, acesta este �si

motivul pentru care Tang [110] a propus extragerea parametrilor de caracterizare a matricii

de izosegmente direct din elementele matricii, printr-o analiz�a a componentelor principale ale

acesteia).

Majoritatea parametrilor introdu�si nu sunt normalizat�i (cu except�ia lui RF5, proport�ia pla-

jelor). Deci, normalizarea trebuie realizat�a �n momentul calculului efectiv al distant�elor �si

similarit�at�ilor dintre diferitele regiuni ale imaginii ce au fost astfel descrise. Normalizarea im-

plic�a de�nirea unei structuri de clase pentru mult�imea imaginilor din baza de imagini, �si deci

este dependent�a de datele particulare. Pentru o alt�a �mp�art�ire �n clase, sau pentru o imagine

necunoscut�a, �ntreaga normalizare a parametrilor bazei de imagini trebuie ref�acut�a.

In mod principal, matricea de izosegmente �si parametrii extra�si din aceasta sunt folosit�i pentru

descrierea texturilor. Percept�ia texturilor este separat�a de percept�ia culorilor (sau a nivelelor

de gri), ceea ce implic�a necesitatea de a avea parametri de descriere a texturilor care s�a �e

invariant�i fat��a de modi�carea anumitor condit�ii de percept�ie (mai ales modi�carea ilumin�arii).

O asemenea invariant��a nu poate � obt�inut�a decat prin folosirea unor momente statistice cen-

trate, precum variant�a. In plus, trebuie avut�a �n vedere observat�ia f�acut�a de Mojsilovic et al

[75], [77], [76]: �n cazul unei texturi color, atributele de textur�a trebuie calculate pornind de la

o imagine de scalari asociat�i culorilor init�iale. Nu este necesar ca scalarii ce se asociaz�a culorilor

s�a reprezinte luminant�a acestora, sau o alt�a caracteristic�a �zic�a relevant�a. Observat�ia impune

o constrangere de invariant��a a parametrilor de descriere a texturii fat��a de o permutare oarecare

a valorilor pixelilor imaginii de scalari asociat�i culorilor (�si deci implicit fat��a de valoarea a a

plajelor).

Se poate g�asi un num�ar minimal de parametri statistici provenit�i din matricea de izosegmente

care s�a aib�a propriet�at�ile dorite de suport statistic, normalizare intrinsec�a �si invariant��a. Putem

folosi pentru descrierea distribut�iei marginale de lungimi ale izosegmentelor proport�ia izoseg-

mentelor RF5 (inversul lungimii medii a izosegmentelor) �si dispersia �b a lungimilor plajelor,

normalizat�a la valoarea maxim posibil�a a izosegmentelor pe direct�ia impus�a. Distribut�ia mar-

ginal�a a valorilor izosegmentelor poate � descris�a de dispersia �a a valorilor, normalizat�a la

64

valoarea maxim posibil�a L a valorilor distribut�iei de lungimi. Perechea de variabile aleatoa-

re lungimea izosegmentelor { valoarea izosegmentelor poate � caracterizat�a de coe�cientul de

corelat�ie dintre cele dou�a variabile aleatoare, �ab (moment statistic centrat, normalizat prin

dispersiile variabilelor aleatoare).

O m�asur�a cu un puternic cont�inut statistic �si informat�ional este entropia. Pentru un camp com-

plet de evenimente, entropia exprim�a informat�ia (sau incertitudinea) medie ce �i este asociat�a.

Plecand de la matricea de izosegmente se pot considera trei campuri complete de evenimente,

ale c�aror evenimente elementare sunt reprezentate de aparit�ia �n imagine a unui izosegment

de o anumit�a lungime, de o anumit�a valoare, respectiv de o anumit�a valoare �si lungime. Vor

exista deci trei entropii normalizate (e�cient�e informat�ionale): entropia campurilor reunite de

de valori �si lungimi, Hab (5.34), entropia campului de lungimi Hb (5.35) �si entropia campului

de valori Ha (5.36).

Hab = �L�1Xa=0

n�Xb=1

P�(a; b) log P�(a; b) (5.34)

Hb = �n�Xb=1

P�(b) logP�(b) (5.35)

Ha = �L�1Xa=0

P�(a) log P�(a) (5.36)

Constrangerea spat�ial�a de conexitate a pixelilor de o aceea�si valoare ce formeaz�a un izosegment

este cea care modi�c�a distribut�ia valorilor unit�at�ilor de baz�a ale imaginii (pixeli sau izosegmen-

te). Procesul de formare a izosegmentelor poate � v�azut ca o deformare a distribut�iei init�iale

de valori a imaginii (m�asurat�a de histograma imaginii) �n distribut�ia marginal�a de valori a izo-

segmentelor. Diferent�a �ntre cele dou�a distribut�ii (sau puterea deformat�iei) poate � m�asurat�a

dup�a diferite principii; ansamblul de m�asuri de diferent��a pot � considerate ca un vector de

caracterizare a distribut�iei valorilor izosegmentelor. Dac�a not�am cu h(a) probabilitatea de

aparit�ie a valorii a �n imagine (m�asurat�a de histograma valorilor imaginii, cuP

L�1a

h(a) = 1)

�si cu H entropia campului de evenimente aleatoare asociate (deci, H = �PL�1a

h(a) log h(a)),

diferent�a dintre distribut�ii poate � m�asurat�a �si prin diferent�a �ntre entropiile acestora (5.37).

D = H �Ha (5.37)

5.4 Caracterizarea spectral�a a texturilor

Transform�arile (integrale) ale imaginilor ofer�a descrierea informat�iei acestora transpus�a �ntr-un

domeniu spectral. Zonele de inters din spectru sunt apoi extrase cu ajutorul a diferite m�a�sti

(aperturi). Zonele de interes astfel extrase pun �n evident��a diferite caracteristici: frecvent�ele

spat�iale) �nalte pot � folosite pentru detect�ia contururilor, frecvent�ele ce concentreaz�a de energie

corespund unor structuri periodice �n domeniul spat�ial �si aranjarea liniar�a a unor maxime

65

energetice poate s�a indice o anumit�a direct�ie predominant�a dup�a care sunt orientate componente

din imagine [66].

Pentru texturi, se urm�are�ste �n principal distribut�ia spectral�a a energiei. Spectrul de energie

S(u; v) (5.39) este modulul p�atrat al spectrului Fourier6 F (u; v) (5.38).

F (u; v) =1

MN

M�1Xm=0

N�1Xn=0

f(m;n)e�j2�(umM

+ vnN ); u = 0;M � 1 �si v = 0; N � 1 (5.38)

S(u; v) = jF (u; v)j (5.39)

Caracteristicile energetice se pot m�asura cu mai multe tipuri de m�a�sti [49] (vezi �gura 5.2):

� m�a�sti unghiulare (orientate), utile pentru detect�ia caracteristicilor de orientare �si deter-

minarea direct�iilor predominante;

� m�a�sti simetrice, de tip trece jos sau trece band�a, ce m�asoar�a energia �n benzi de fercvent��a.

Una dintre metodele clasice de analiz�a energetic�a a texturilor calculeaz�a un vector caracteristic

al entropiilor energetice pentru benzi de frecvent��a de tip trece jos, cu band�a de trecere din

ce �n ce mai mare. Pentru �ecare band�a de frecvent��a energiile spectrale se normeaz�a la suma

acestora, �si se calculeaz�a entropia valorilor rezultate; la randul ei, acest�a entropie se normeaz�a

la entropia maxim posibil�a pentru o zon�a spectral�a de energie uniform�a.

Fig. 5.2: Diferite tipuri de m�a�sti (aperturi) folosite pentru analiza spectrului energetic al tex-

turilor: simetrice (circulare, rectangulare), orientate, �n band�a de frecvent�e

Analiza texturilor prin folosirea de m�a�sti �n spectrul energetic este o metod�a valabil�a �ns�a

numai �n cazul �n care textura ocup�a o suprafat��a mare (deci presupunand c�a �ntreaga imagine

este o textur�a). In practic�a, se dore�ste caracterizarea �ec�arui pixel (de natur�a necunoscut�a)

al imaginii �si �ncadrarea sa �ntr-un anume tip de clas�a textural�a. Pentru aceasta se calculeaz�a

doar spectrul unor vecin�at�at�i spat�iale centrate �n pixelul de interes (deci ferestre de analiz�a de

dimensiune impar�a) �si acest spectru este caracterizat de diferite m�arimi statistice (momente de

diferite ordine, centrate sau necentrate, amplitudini maxime / minime, variat�ie a amplitudinii,

etc.).

6Transformata Fourier face trecerea din domeniul spat�ial (reprezentat de coordonatele spat�iale (m;n)) �n

domeniul frecvent�ial (reprezentat de coordonatele de frecvent�e spat�iale (u; v)).

66

5.5 Caracterizarea texturilor prin tehnici fractale

Geometria fractal�a a fost introdus�a de Mandelbrot �si a avut un impact puternic �n modelare �si

analiz�a, �n �stiint�ele naturii �si �n �zic�a. Fractalii ofer�a cadrul matematic pentru studiul formelor

complexe �si neregulate ce apar �n natur�a. Mandelbrot a demonstrat c�a multe suprafet�e fractale

sunt generaliz�ari ale mi�sc�arii browniene (�si deci procese statistice) �si deci rezult�a ca un caz limit�a

al proceselor ce modi�c�a forma local, �n mod aleator. Pentland a ar�atat apoi c�a majoritatea

suprafet�elor naturale sunt fractali spat�iali izotropi �si c�a imaginile (de intensitate) ale acestor

suprafet�e sunt de asemenea fractali.

Fie o mult�ime m�arginit�a A � Rn. Multimea A se cheam�a autosimilar�a (self similar) dac�a este

reuniunea a N copii distincte (eventual nesuprapuse) ale ei �ns�a�si, �ecare dintre aceste copii

scalate omogen (mic�sorate) cu un factor r. Dimensiunea fractal�a a mult�imiiA (sau dimensiunea

de similaritate) este D �si este dat�a de ecuat�ia

D = � logNlog r

(5.40)

Evident, aceast�a relat�ie este echivalent�a cu a scrie

NrD = 1 (5.41)

ceea ce este acceptat ca o de�nit�ie echivalent�a.

Suprafet�ele fractale naturale nu au �n general aceast�a autosimilaritate determinist�a, ci prezint�a o

autosimilaritate statistic�a: ele sunt compuse din N submult�imi distincte, �ecare scalat�a omogen

cu factorul r, �ecare submult�ime �ind identic�a din punct de vedere statistic cu originalul scalat

cu acela�si factor.

Cele mai cunoscute exemple de fractali sunt curba Koch (caracterizat�a de N = 4, r = 1=3,

D = 1:262) �si triunghiul Sierpinski (caracterizat de N = 9, r = 1=2, D = 1:585), prezentate �n

�gura 5.3.

a) b)

Fig. 5.3: Exemple de fractali �n plan: a) Curba Koch �si b) Triunghiul Sierpinski.

67

5.5.1 Calculul dimensiunii fractale

De�si de�nit�ia dimensiunii fractale este imediat�a, adesea este di�cil�a estimarea aceteia �n mod

direct dintr-o imagine. In practic�a este utilizat�a o aproximare a acestei dimensiuni, numit�a

\box dimension". S�a presupunem c�a mult�imea init�ial�a A � Rn este acoperit�a cu un hiper-

paralelipiped n-dimensional a c�arui dimensiune maxim�a este Lmax. Dac�a mult�imea A este

scalat�a omogen cu factorul de scalare r, vor exista N = r�D submult�imi �si deci num�arul

de hiper-paralelipipede de dimensiune maxim�a L = rLmax necesare pentru a acoperi �ntreg

ansamblul este:

N(L) = r�D =

�Lmax

L

�D(5.42)

Calculand valoarea N(L) pentru mai multe valori ale lui L, dimensiunea fractal�a c�autat�a D

poate � determinat�a ca panta aproxim�arii liniare optimale a lui log L� logN(L) (�ntr-adev�ar,

din (5.42) se obt�ine logN(L) = D log Lmax � D log L). Modul cel mai simplu de a estima D

este deci de a diviza spat�iul n-dimensional �ntr-o ret�ea de hiper-paralelipipede de dimensiune

maxim�a L �si de a determina num�arul de asemenea hiper-paralelipipede nevide (care cont�in deci

puncte din reuniunea variantelor scalate ale mult�imii A).

In cazul unei imagini texturate cu nivele de gri, mult�imea A va � o mult�ime �n spat�iul tridi-

mensional (dou�a coordonate spat�iale �si a treia coordonat�a nivelul de gri), format�a din puncte

de coordonate discrete. Dac�a not�am cu PL(m) probabilitatea de a avea m puncte �n cutia de

dimensiune maxim�a L; centrat�a �ntr-un punct oarecare al spat�iului, atunci, pentru orice valoare

L avem:MXm=1

PL(m) = 1 (5.43)

Dac�a �ntreaga mult�ime A (corespunzand imaginii cu N pixeli) este acoperit�a cu hiper-

paralelipipede de dimensiune maxim�a L, atunci num�arul de hiper-paralelipipede ce cont�in �n

interior catem puncte este NPL(m)=m, �si atunci num�arul total de hiper-paralelipipede necesare

pentru acoperirea imaginii va �:

N(L) =MXm=1

N

mPL(m) = N

MXm=1

1

mPL(m) �= L

�D (5.44)

Folosind acest mod de calcul, pentru o imagine de DIMX x DIMY pixeli, �si folosind cuburi

�n loc de paralelipipede generale, pseudocodul corespunz�ator este:

� init�ializare:

for L = 1; Lmax cu pas 2

for m = 1; L3

PL(m) = 0

end

end

68

� calcul hiper-paralelipipedelor de acoperire:

for i = (Lmax � 1)=2; DIMY � (Lmax � 1)=2

for j = (Lmax � 1)=2; DIMX � (Lmax � 1)=2

for L = 1; Lmax cu pas 2

centreaz�a cubul de latur�a L �n punctul curent de coordonate (i; j; f(i; j))

num�ar�a pixelii din interiorul acestui cub, m

PL(m) = PL(m) + 1= ((DIMX � Lmax + 1) (DIMY � Lmax + 1))

end

end

end

for L = 1; Lmax cu pasul 2

N(L) =L3P

m=1

1mPL(m)

end

� estimare dimensiune fractal�a

D este estimat�a ca panta aproxim�arii liniare a lui logL� logN(L).

5.5.2 Lacunaritatea

Lacunaritatea [56], [66] este un scalar real ce m�asoar�a gradul �n care o textur�a este �n�a sau

grosier�a. Relat�ia (5.43) asigur�a faptul c�a evenimentele \existent��a a unui hiper-paralelipiped de

dimensiune maxim�a L ce cont�ine m pixeli" formeaz�a, pentru o dimensiune �xat�a L, un camp

complet de evenimente. Atunci putem calcula media, media p�atratic�a �si variant�a variabilei

aleatoare \num�ar de pixeli �n interiorul hiper-paralelipipedului de dimensiune maxim�a L":

m(L) =MXm=1

mPL(m) (5.45)

m2(L) =MXm=1

m2PL(m) (5.46)

�2m(L) = m2(L)�m

2(L) (5.47)

Lacunaritatea este raportul dintre variant�a �si p�atratul mediei variabilei aleatoare \num�ar de

pixeli �n interiorul hiper-paralelipipedului de dimensiune maxim�a L":

�(L) =�2m(L)

m2(L)(5.48)

5.6 Incheiere

Prin toate tehnicile de segmentare a texturilor prezentate, se realizeaz�a de fapt etichetarea unor

puncte sau regiuni din imagine ca apart�inand unui anumit tip de textur�a sau ca �ind diferit

69

de un punct al unei zone uniforme sau al unei zone de frontier�a. Caracterizarea texturii prin

diferitelem�asuri prezentate (statistice, matrici de coocurent��a, spectrale) este de fapt doar prima

etap�a a procesului de segmentare; o a doua etap�a trebuie s�a compare vectorul de caracteristici

ce descriu �ecare punct al imaginii cu vectorii de caracteristici ai unor modele de texturi, zone

uniforme sau zone de frontier�a. Rezultatul acestei comparat�ii este eticheta atribuit�a punctului.

Din acest punct de vedere, segmentarea texturilor poate � interpretat�a �si ca o recunoa�stere �si

clasi�care a texturii - acelea�si m�asuri �ind folosite �si pentru aceste procese.

70

Capitolul 6

Descrierea primitivelor vizuale �si a

formelor

Procesul de percept�ie �si �nt�elegere a cont�inutului informat�iei vizuale �nc�a nu este pe deplin

�nt�eles. Studiile realizate �n ultima jum�atate de secol au pus �ns�a �n evident��a unele caracteris-

tici fundamentale ale acestui proces. Printre aceste caracteristici fundamentale se num�ar�a �si

punerea �n evident��a a unor primitive vizuale - p�art�i ale imaginii esent�iale pentru �nt�elegerea

cont�inutului acestora. Principalele primitive vizuale sunt colt�urile �si frontierele obiectelor ce

compun scena; acestea poart�a majoritatea informat�iei asociate unui obiecte, �si deci au un rol

extrem de important �n descrierea cont�inutului imaginilor.

Descrierea caracteristicilor de form�a a imaginilor (�nt�elegand prin aceasta descrierea formelor

componentelor individuale din imagini) se poate face la dou�a nivele de reprezentare: la nivelul

global al �ntregii imagini, �si la nivelul �ec�arei componente. Descrierea global�a este realizat�a

�n general prin m�asurarea caracteristicilor statistice ale primitivelor vizuale; descrierea �ec�arei

componente presupune o etap�a de identi�care a acestor componente �si apoi caracterizarea lor

prin parametri de form�a.

6.1 Descrierea global�a a primitivelor vizuale

Pentru descrierea global�a a primitivelor vizuale sunt necesare dou�a etape: �n primul rand o

etap�a de extragere a contururilor din imagini, �si apoi o etap�a de caracterizare a parametrilor

acestor contururi (intensitate, orientare, lungime). Aceste etape vor � urm�arite �n paragrafele

urm�atoare.

71

6.1.1 Extragerea contururilor �n imagini scalare

Metoda de gradient

Principiul acestei metode const�a �n de�nirea punctelor de contur ca �ind acei pixeli ai imaginii

�n care apar schimb�ari importante (abrupte) ale nivelului de gri. Deci, m�asurarea acestei variat�ii

se va face prin operatori derivativi de tip gradient. Pentru o imagine cu suport spat�ial continuu,

pe direct�ia unei muchii, derivata va � maxim�a. Derivata imaginii pe direct�ia r, ce face unghiul

� cu orizontala, este dat�a de combinat�ia liniar�a a derivatelor part�iale pe direct�iile orizontal�a �si

vertical�a (6.1):@f

@r=@f

@x

@x

@r+@f

@y

@y

@r=@f

@xcos � +

@f

@ysin �

@f

@r= fx cos � + fy sin � (6.1)

Valoarea maxim�a a acestei derivate, calculate dup�a unghiul � este dat�a de ecuat�ia

@

@�

@f

@r

!= �fx sin � + fy cos � = 0

ce are solut�ia evident�a:

�0 = arctan

fy

fx

!(6.2)

Pe aceast�a direct�ie, modulul gradientului este: @f

@r

!max

=qf2x+ f2

y(6.3)

Din punct de vedere practic, implementarea acestei metode impune calcularea, pentru �ecare

punct al imaginii, a derivatelor part�iale fx �si fy, calcularea modulului gradientului maxim (6.3)

�si a direct�iei acestuia (6.2). Pentru implementarea unor operatori de derivare orizontal�a �si

vertical�a mai rezistent�i la zgomot, se folosesc m�a�stile de �ltrarea liniar�a:

Wx =

0BB@1 0 �1c 0 �c1 0 �1

1CCA ; Wy =

0BB@1 c 1

0 0 0

�1 �c �1

1CCA (6.4)

Prin particularizarea valorilor constantei de ponderare c se pot obt�ine diferite tipuri de operatori

de extragere de contur clasici: Prewitt (c = 1), Izotrop (c =p2), Sobel (c = 2).

Valoarea gradientului maxim din �ecare punct al imaginii este apoi comparat�a cu un prag

�xat: dac�a pragul este dep�a�sit (deci gradientul maxim �n pixelul respectiv este su�cient de

important) atunci pixelul testat este pixel de contur. Harta de orient�ari este o imagine care

cont�ine, pentru �ecare pixel, orientarea gradientului de modul maxim �n punctul respectiv,

�si este �n general folosit�a la prelucrarea suplimentar�a a contururilor (conectare de contururi,

extragere direct�ional�a de contururi). Harta de contururi este o imagine binar�a �n care punctele

marcate (puncte-obiect) corespund pozit�iei punctelor de contur (puncte cu gradient de modul

mare). O simpli�care uzual�a practicat�a este �nlocuirea normei L2 din calculul modulului maxim

al gradientului (6.3) cu norma L1.

72

Operatorii compas

Informat�ia de orientare este �n general folosit�a �n etape urm�atoare ale prelucr�arii; unghiurile

determinate dup�a (6.2) ofer�a un unghi \exact" al direct�iei conturului �n punctul curent, calcu-

lat cu un efort semni�cativ de calcul (�mp�art�ire �si calcul de arctangent�a). In practic�a, aceast�a

informat�ie este prea exact�a: pe grila p�atrat�a de e�santionare nu se pot reprezenta cu u�surint��a

drepte continue dup�a orice direct�ie; cateva direct�ii sunt favorizate �si u�sor de utilizat (vertical,

orizontal, cele dou�a diagonale). In acest caz se poate m�asura �n �ecare punct modulul gra-

dientului dup�a aceste cateva direct�ii importante, �si apoi se poate alege direct�ia dup�a care acest

modul este maxim. Acesta este principul operatorilor compas.

Un operator compas este de�nit de un num�ar de m�a�sti de derivare (corespunz�atoare �n conti-

nuare unor �ltr�ari liniare) pe direct�iile principale (vertical, orizontal, cele dou�a diagonale), �n

cele dou�a sensuri. Compasul clasic are D = 8 m�a�sti de �ltrare (identice dou�a cate dou�a, mai

put�in semnul), �ecare dintre ele realizand o derivare dup�a o direct�ie multiplu de 45�. Odat�a de-

terminat�a valoarea maxim�a a modulului gradientului �n pixelul curent (m;n), obt�inerea h�art�ii

de contururi se face ca �si la un operator de gradient clasic. Un exemplu de m�a�sti de derivare

direct�ional�a sunt m�a�stile urm�atoare (indexate dup�a direct�ia geogra�c�a pe care calculeaz�a de-

rivata): WN =

0BB@�1 �1 �10 0 0

1 1 1

1CCA ; WNV =

0BB@�1 �1 0

�1 0 1

0 1 1

1CCA, WV =

0BB@�1 0 1

�1 0 1

�1 0 1

1CCA, WSV =

0BB@0 1 1

�1 0 1

�1 �1 0

1CCA, WS =

0BB@1 1 1

0 0 0

�1 �1 �1

1CCA, WSE =

0BB@1 1 0

1 0 �10 �1 �1

1CCA, WE =

0BB@1 0 �11 0 �11 0 �1

1CCA,

WNE =

0BB@0 �1 �11 0 �11 1 0

1CCA. Dup�a cum se remarc�a, familia de m�a�sti se poate genera pornind

de la una dintre m�a�stile Prewitt, prin translat�ii circulare cu o pozit�ie a frontierei m�a�stii �n

jurul centrului ei; �n mod analog se pot obt�ine operatori compas bazat�i pe masca Sobel sau pe

gradientul izotrop sau pe masca Kirsch

0BB@5 5 5

�3 0 �3�3 �3 �3

1CCA. Precizia unghiular�a a operatorilor

compas este deci determinat�a de num�arul de orient�ari diferite pe care se calculeaz�a derivate-

le, �si deci de num�arul de translat�ii ale frontierei m�a�stii; pentru o masc�a p�atrat�a de baz�a de

dimensiune N , precizia unghiular�a a operatorului compas este de 90�=(N � 1).

Operatori Laplacieni

Unul dintre principalele dezavantaje ale metodelor de gradient este precizia slab�a de localizare

a conturului (a centrului tranzit�iei) �n condit�iile unei pante put�in abrupte a acestuia (tranzit�ii

slabe, graduale). Derivata a doua poate � �ns�a folosit�a pentru a determina capetele tranzit�iei

(cele dou�a extreme), sau pentru a marca centrul tranzit�iei (trecerea sa prin zero). Operatorul

73

bazat pe trecerea prin zero a derivatei secunde este operatorul \zero-crossing". In cazul ima-

ginilor (semnale cu suport bidimensional) trebuie luat�a �n considerare derivata secund�a dup�a

ambele direct�ii, combinate �n laplacian:

�f =@2f

@x2+@2f

@y2

In cazul discret, m�a�sti uzuale ce implementeaz�a laplacianul sunt m�a�stile WL1 �WL2:

WL1 =

0BB@0 �1=4 0

�1=4 1 �1=40 �1=4 0

1CCA, WL2 =

0BB@1=4 �1=2 1=4

�1=2 1 �1=21=4 �1=2 1=4

1CCA.

6.1.2 Extragerea contururilor �n imagini color

Pentru o imagine color, calculul h�art�ii de intensit�at�i de tranzit�ie se bazeaz�a pe determinarea

neuniformit�at�ii locale de culoare, �si deci pe determinarea culorilor ce sunt extremele distribut�iei

locale de culoare. De�nirea unei culori extreme �n raport cu o mult�ime dat�a de culori implic�a

�ns�a introducerea unei relat�ii de ordonare �n spat�iul culorilor, indiferent dac�a distant�a dintre

culori este sau nu utilizat�a la determinarea ordon�arii. Dup�a cum a fost demonstrat de c�atre

Barnett [5], �n spat�ii cu mai multe dimensiuni nu exist�a o extindere simpl�a �si direct�a a concep-

tului de ordonare. Singura relat�ie complet�a de ordine este ordonarea lexicogra�c�a (sau ordinea

de dict�ionar), �si varianta sa de ordonare prin curbe de umplere a spat�iului [97], [126], care,

�n general, nu respect�a topologia spat�iului de culoare. Pentru a evita aceste inconveniente, �n

implement�arile practice se prefer�a relat�iile de pre-ordonare [91], [5]: ordonarea marginal�a, ordo-

narea redus�a, ordonarea condit�ional�a �si ordonarea part�ial�a (aceasta din urm�a f�ar�a o posibilitate

evident�a de utilizare pentru determinarea contururilor).

Ordonarea marginal�a folose�ste un model al vectorilor de tip \stiv�a de scalari"; ordonarea este

realizat�a individual pe �ecare component�a. In mod evident, prin acest tip de prelucrare nu

se ia �n considere corelat�ia ce exist�a �ntre componentele vectorilor de culoare �si statisticile de

ordine pot � diferite de vectorii init�iali ce au fost ordonat�i. Primele detectoare de contur au fost

asemenea extensii ale detectoarelor de contururi din imaginile cu nivele de gri. Nevatia [84] a

propus folosirea unor operatori de contur de tip Hueckel [127], identi�cand �n mod independent

contururile �n diferite plane de culoare (de intensitate, componente normalizate, luminant��a-

crominant��a). Robinson [98] a extins operatorii compas [49], [117] bazat�i pe m�a�sti Kirsch [49]

la reprezent�ari compuse ale culorii (luminant��a sau str�alucire, de exemplu). Scharkanski �si

Venetsanopoulos [102] a propus o abordare similar�a, prin extinderea m�a�stilor Prewitt [49] �si a

operatorului LOG [23] (Laplacian de Gaussian�a) �si agregarea r�aspunsurilor acestora provenite

din componentele de ro�su, verde �si albastru ale imaginilor.

Metoda de ordonare redus�a a fost foarte utilizat�a pentru implementarea �ltrelor vectoriale

bazate pe rang; principiul acestei metode este de asocia �ec�arui vector (�ec�arei culori) cate un

scalar, calculat pe baza componentelor sale. Ordonarea scalarilor induce o ordine a vectorilor

corespunz�atori. Trahanias and Venetsanopoulos [114], [115], [116], [113] au propus mai multe

74

tipuri de detectoare de contururi bazate pe conceptul de prelucrare direct�ional�a a vectorilor de

culoare { diferent�a dintre culori �ind m�asurat�a de unghiul dintre cei doi vectori iar vectorii de

culoare �ind ordonat�i dup�a suma agregat�a a unghiurilor dintre vectori.

Mai recent a fost propus�a folosirea numerelor hipercomplexe [100] (similare cu un num�ar com-

plex cu trei p�art�i imaginare) pentru reprezentarea culorilor. Aceast�a reprezentare deschide

perspectiva utiliz�arii tehnicilor frecvent�iale de prelucrare a imaginilor [49], [127]. Sangwine a

demonstrat c�a este posibil�a de�nirea unei extensii a transformatei Fourier pentru numere hiper-

complexe �si deci este posibil�a obt�inerea unui spectru \color" al imaginii color. Acest spectru are

acelea�si propriet�at�i ca orice spectru obi�snuit (complex) al unei imagini, �si deci permite extrage-

rea contururilor prin operat�ii de �ltrare de tip trece sus �si trece band�a. Intr-o abordare similar�a

de utilizare a spectrului Fourier a unei imagini pentru identi�carea informat�iei de contur, s-a

propus utilizarea unei reprezent�ari normalizate pur cromatice a culorilor [123], [119], folosind

deci numai numere complexe �si transformata Fourier uzual�a.

6.1.3 Descrierea contururilor din imagini

O utilizare indirect�a a m�arimilor legate de contururi este vectorul de coerent��a de culoare CCV

(Color Coherence Vector) [89]. Dup�a cum am ar�atat �si �n capitolul 4, informat�ia de intensitate

a tranzit�iei din �ecare punct al imaginii este utilizat�a pentru a clasi�ca pixelii din imagine �n

pixeli coerent�i (situat�i �n regiuni uniforme, �n care intensitatea de tranzit�ie este mic�a) �si pixeli

necoerent�i, situat�i pe contururi (pentru care intensitatea de tranzit�ie este important�a). Fiecare

clas�a de pixeli este descris�a de o histogram�a de culoare, producand o descriere de dimensiune

dubl�a fat��a de descrierea numai a cont�inutului de culoare.

Dup�a cum de asemenea am precizat �n 4, aceast�a abordare a fost extins�a �n [122] prin folosirea

histogramelor ponderate, de�nite �n (4.4). Dac�a parametrul scalar de ponderare a aportului

�ec�arui pixel din imagine este proport�ional cu intensitatea de tranzit�ie din pixelul respectiv,

atunci se poate da o important��a sporit�a m�asur�arii detaliilor din imagine (puncte de pe contururi

[121].

In [1], [2] s-a propus utilizare unei transformate wavelet pentru reprezentarea multirezolut�ie

a imaginii �si identi�carea detaliilor (colt�uri, contururi) semni�cative pentru diferite sc�ari �si

orient�ari. Blocurile de coe�cient�i wavelet cont�inand o energie important�a �n toate cele trei sub-

benzi de frecvent��a �nalt�a ale descompunerii wavelet sunt folosite ca descriptori ai contururilor

din imagine. Imaginea este descris�a la nivel global printr-o histogram�a (funct�ie de densitate

de probabilitate de ordinul �ntai) a energiei cont�inute �n blocurile compuse ale coe�cient�ilor

wavelet.

In [16] se utilizeaz�a netezirea la diferite nivele de rezolut�ie (detaliu) a contururilor din imagine

pentru a identi�ca punctele de curbur�a nul�a. CSS - Curvature Scale Space este reprezentarea

sub forma de graf, �n funct�ie de parametrul de scar�a de rezolut�ie �si de abscisa curbilinie, a acestor

75

puncte de curbur�a nul�a, caracteristice aspectului frontierelor din imagine. O idee asem�an�atoare

apare �si �n [82], sub forma spectrului de form�a al imaginii - Image Shape Spectrum (ISS), bazat

pe toate valorile curburilor pro�lului de luminant��a al imaginilor (interpretat ca o suprafat��a

�ntr-un spat�iu tridimensional).

Sistemul Sur�mage [83] utilizeaz�a mai mult�i descriptori pentru contururile din imagini: histo-

grama (funct�ia de densitate de probabilitate de ordinul �ntai) �si autocorelograma (o funct�ie de

densitate de probabilitate de ordinul doi, cu constrangeri spat�iale) de intensit�at�i de tranzit�ie,

de orient�ari ale contururilor �si de lungimi ale segmentelor semni�cative de contur.

6.2 Descrierea formelor

Descrierea formelor este o tehnic�a frecvent utilizat�a �n analiza imaginilor �si problemele de

recunoa�stere. In cazul particular al imaginilor ce fac parte din baze de imagini, pentru care nu se

poate identi�ca un domeniu speci�c, not�iunea de form�a se refer�a la regiuni (zone, port�iuni) din

imagini, semni�cative din punct de vedere vizual. O zon�a este semni�cativ�a din punct de vedere

vizual dac�a ocup�a o suprafat��a su�cient de mare din imagine sau �n cazul �n care corespunde

unui obiect distinct din imagine. Cele dou�a variante de de�nire a zonelor semni�cative din

imagini conduc la dou�a tipuri de partit�ionare ale imaginii: partit�ionarea �x�a, �n zone de forme

�si dimensiuni prede�nite �si partit�ionarea adaptiv�a (segmentarea propriu-zis�a a imaginilor).

Descompunerea imaginii �n partit�ii �xe este relativ simpl�a din punctul de vedere al calculelor.

Cele mai des utilizate partit�ion�ari sunt �n zone dreptunghiulare de aceea�si dimensiune, �si pot

� repetate la mai multe rezolut�ii ale imaginii [70], [17]. O alt�a variant�a de descompunere a

imaginii se bazeaz�a pe observat�ia c�a majoritatea informat�iei vizuale percepute de privitor este

concentrat�a �n centrul imaginii; Stricker [106] a propus descompunerea imaginii �ntr-o regiune

eliptic�a central�a �si patru regiuni de colt� part�ial suprapuse cu regiunea central�a (suprapunere

modelat�a fuzzy). O versiune u�sor modi�cat�a de partit�ionare a imaginii (regiune central�a drept-

unghiular�a) a fost folosit�a �si �n [3]. Este evident c�a asemenea partit�ion�ari �xe nu pot s�a se

portriveasc�a cu obiectele individuale particulare ce se g�asesc �n imagini. Pentru identi�carea

acestora trebuiesc folosite tehnici de segmentare, iar pentru descrierea acestora trebuie calculat�i

parametri de form�a.

6.2.1 Segmentarea obiectelor de interes

Segmentarea (descompunerea unei imagini �n componentele sale [49]) este �n mod tipic o pro-

blem�a prost de�nit�a; pentru imagini generice (f�ar�a un domeniu de aplicat�ie �si un cont�inut bine

de�nite) num�arul de regiuni de partit�ionare este necunoscut, iar criteriile dup�a care ar trebui

de�nit�a calitatea segment�arii nu exist�a sau sunt foarte di�cil de exprimat �ntr-o form�a obiectiv�a.

76

O component�a distinct�a a imaginii este caracterizat�a de uniformitatea unor caracteristici ale

pixelilor (culoare, pentru a considera cazul cel mai simplu) precum �si de coeziunea lor spat�ial�a.

A�sadar se impune caracterizarea pixelilor imaginii cu un vector de tr�as�aturi; pe baza acestor

vectori de tr�as�aturi se poate apoi efectua o grupare a pixelilor dup�a criterii de similaritate. In

acest fel se pot grupa toate punctele din imagine ce au acelea�si tr�as�aturi, acestea formand apoi

o zon�a ocupat�a de un unic tip de entitate.

In [127] se propune o de�nit�ie a procesului de segmentare a unei imagini f ca partit�ionarea

complet�a a imaginii f (6.5) �ntr-un ansamblu de mult�imi disjuncte, nevide �si conexe (6.6), ce

satisfac �ecare un anumit criteriu C (6.7), criteriu ce nu mai este respectat pentru reuniunea

oric�aror dou�a elemente ale partit�iei.

f =C[i=1

fi; fi conexe (6.5)

fi

\fj = ;; 8i 6= j (6.6)

C (fi) = ADEV�ARAT; 8i; si C�fi

[fj

�= FALS; 8i 6= j: (6.7)

Gruparea unor obiecte (caracterizate de vectori de tr�as�aturi) �n zone de similaritate poart�a

numele de clustering [50], [51]. In original (adic�a �n limba englez�a) termenul de \cluster"

de�ne�ste un grup, ciorchine, snop. In [50], [42], [51] clusterul se de�ne�ste ca un grup omogen de

unit�at�i \asem�an�atoare". Asem�anarea unit�at�ilor este determinat�a �n mod uzual prin asociere,

similaritate sau distant��a �ntre tr�as�aturile m�asurate ce caracterizeaz�a unit�at�ile. Algoritmul de

clustering este procesul prin care unei mult�imi de unit�at�i (entit�at�i) i se asociaz�a, element cu

element, o informat�ie de apartenent��a la un anumit grup. Mai general, putem interpreta procesul

de clustering ca un proces de partit�ionare a unui set de unit�at�i �ntr-un num�ar de submult�imi

(numite clase sau clustere), pe baza unui anumit criteriu. Indiferent de criteriul folosit, se

dore�ste obt�inerea unor clustere distincte, omogene �si bine separate. Num�arul de clustere �n

care se face �mp�art�irea setului de unit�at�i nu este �n mod obligatoriu cunoscut a priori.

Pentru aplicat�iile speci�ce de segmentare a imaginilor, utilizarea oric�arui algoritm de clustering

urm�are�ste urm�atoarele etape [50], [117], [118]:

� �ec�arui punct al imaginii i se asociaz�a un vector de tr�as�aturi caracteristice (aceste tr�as�aturi

sunt, �n mod general, nivelul de gri al pixelului, coordonatele sale �n imagine, m�asuri de

contrast �si de uniformitate local�a - dac�a se urm�are�ste obt�inerea unor regiuni uniforme - sau

orice vector de tr�as�aturi corespunz�ator descrierii unei structuri texturale, de tipul celor

prezentate la capitolul referitor la segmentarea texturilor - dac�a se urm�are�ste identi�carea

zonelor ocupate de diferite tipuri de texturi);

� mult�imea de vectori astfel obt�inut�i (num�arul lor este evident egal cu num�arul de puncte

din imagine) este partit�ionat�a cu ajutorul unui algoritm oarecare de clustering;

77

� �ec�arui cluster (�ec�arei clase) i se atribuie o anumit�a etichet�a �si toate punctele imagi-

nii al c�aror vector de tr�as�aturi apart�ine aceluia�si cluster vor c�ap�ata eticheta clusterului

respectiv.

Trebuie f�acute dou�a observat�ii importante legate de aplicarea acestei metode; �n primul rand

este vorba de stabilirea num�arului de clustere �n care se face partit�ionarea. Dac�a este utilizat

un algoritm iterativ, num�arul de clustere trebuie �xat de la init�ierea algoritmului; dac�a se

folose�ste un algoritm ierarhic, trebuie stabilit un criteriu de evaluare a num�arului optim de

clase, criteriu ce va � aplicat pentru �ecare nivel al ierarhiei de clase de partit�ionare. In cele

ce urmeaz�a vom prezenta �nsa un algoritm capabil de a determina automat num�arul de clase

de segmentare (�si deci num�arul de obiecte/ componente importante din imagine). In al doilea

rand, depinzand de tr�as�aturile utilizate pentru descrierea punctelor imaginii, zonele din imagine

cu aceea�si etichet�a pot s�a nu �e conexe �si deci orice segmentare prin clustering va � urmat�a

de etichetarea imaginii segmentate, pentru identi�carea obiectelor individuale (�gura 6.1 a)

prezint�a o astfel de marcare a obiectelor individuale semni�cative din imaginui, prin marcarea

contururilor acestora).

Varierea num�arului de clase (�e prin reunirea unor clase al�aturate similare, �e prin partit�ionarea

claselor rare�ate sau prost de�nite) implic�a veri�carea unor criterii de calitate a partit�iei reali-

zate: compactitudinea, densitatea �si forma claselor, distant�a dinter centrele claselor . . . . Exist�a,

desigur, varianta realiz�arii unor segment�ari cu C1; C2; : : : ; C� clase �si apoi p�astrarea acelei seg-

ment�ari care respect�a cel mai bine criteriile de calitate [131]. Acest�a abordarea este �ns�a extrem

de costisitoare din punctul de vedere al timpului de calcul; din cele � segment�ari realizate se

p�astreaz�a numai una. Alternativa este, evident, de a varia num�arul de clase al segment�arii pe

parcursul desf�a�sur�arii algoritmului - aceast�a idee a condus la dezvlotarea metodei de aglomerare

competitiv�a CA (competitive agglomeration) [29].

Mult�imile vagi, introduse de Zadeh �n anii '60 se revendic�a din teoria logicii nuant�ate a lui

Lukasiewicz, �n care propozit�iile nu sunt pe de-a �ntregul adev�arate sau pe de-a �ntregul false.

La modul simplist de interpretare, logica vag�a presupune �nlocuirea funct�iilor caracteristice

binare de descriere a mult�imilor cu funct�ii ce iau valori �n domeniul [0; 1]. Fiec�arui vector de

tr�as�aturi xj ata�sat unui pixel i se asociaz�a mult�imea de grade de apartenent��a fuzzy la cele C

clase ale partit�iei, u1j; u2j; : : : ; uCj , cu uij 2 [0; 1]. Optimizarea criteriului de calitate a partit�iei

se face sub constrangerea ca suma gradelor de apartenent��a a unui punct la toate clasele partit�iei

s�a �e 1 (�si deci punctul \s�a se �mpart�a" �ntre cele C clase ale partit�iei), deci:

CXi=1

uij = 1; 8j = 1; : : : ; N: (6.8)

Algoritmul CA minimizeaz�a o funct�ie obiectiv ce combin�a condit�ia de bun�a aproximare a clase-

lor prin prototipul lor (ca la algoritmul clasic FCM [50], [51], [117]) cu o condit�ie de favorizare

a gradelor de apartenent��a cat mai mari (apropiat�a de abordarea posibilist�a introdus�a de algo-

ritmii de tip PCM [62]). Algoritmul CA porne�ste cu un num�ar relativ important de clase care,

78

pe parcursul iterat�iilor, vor intra �n competit�ie pentru a atrage cat mai mult�i vectori de date.

Astfel, clasele prost plasate pierd competit�ia �si devin s�ar�acite, golite de cont�inut, astfel c�a pot

� eliminate (diminuand progresiv num�arul de clase). Partit�ia �nal�a va avea un num�ar optim de

clase (conform funct�iei obiectiv) care este un compromis �ntre dou�a cerint�e contrare: num�arul

de clase s�a �e cat mai mare (pentru a minimiza eroarea de aproximare) �si num�arul de clase s�a

�e cat mai mic, pentru minimizarea termenului de calcul al cardinalit�at�ii claselor. Funct�ia de

minimizat este deci:

J =CXi=1

NXj=1

u2ijkxj � �ik2 � �

CXi=1

0@ NXj=1

uij

1A2

: (6.9)

Combinarea �n funct�ia criteriu a erorii p�atratice (termenul FCM) �si a sumei p�atratelor cardi-

nalit�at�ii claselor conduce la minimizarea global�a a distant�elor intra-cluster, �n acela�si timp cu

partit�ionarea setului de date �n cel mai mic num�ar de clase posibil. La ecuat�ia (6.9) se adaug�a

setul de N constrangeri probabiliste (6.8). Rezolvarea probelmei de clustering (determinarea

centroizilor claselor �i �si a gradelor de apartenent��a uij) se face deci prin metoda multiplicatorilor

Lagrange, integrand constrangerile �n funct�ia de minimizat.

~J =CXi=1

NXj=1

u2ijkxj � �ik2 � �

CXi=1

0@ NXj=1

uij

1A2

�NXj=1

�t

CXi=1

uij � 1

!: (6.10)

Pentru o clas�a s �si un vector t �xate, avem:

� ~J

�ust= 2ustkxj � �ik2 � 2�

NXj=1

usj � �t = 0: (6.11)

Termenul Ns =P

N

s=1 usj este cardinalitatea clasei s (suma gradelor de apartenent��a ale tuturor

vectorilor de date la clasa s). O presupunere simpli�catoare esent�ial�a este aceea c�a aceast�a

cardinalitate variaz�a put�in de la o iterat�ie la alta, ceea ce conduce la:

ust =2�Ns + �t

2kxj � �sk2: (6.12)

Aplicarea constrangerii probabiliste (6.8) asupra setului de vectori de date xt (P

C

k=1 ukt = 1)

conduce la:CXk=1

2�Nk + �t

2kxj � �kk2= �

CXk=1

Nk

kxj � �kk2+�t

2

CXk=1

1

kxj � �kk2= 1: (6.13)

Din ecuat�ia anterioar�a se poate deci deduce valoarea multiplicatorului Lagrange:

�t =1� �

PC

k=1Nk

kxj��kk2PC

k=11

kxj��kk2: (6.14)

In �nal putem deci exprima valoarea gradului de apartenent��a c�autat �n (6.12) ca:

ust = �Ns

kxt � �sk2+1� �

PC

k=1Nk

kxt��kk2PC

k=1kxt��sk2kxt��kk2

: (6.15)

79

Din expresia anterioar�a se poate separa gradul de apartenent��a ce ar � rezultat doar din aplicarea

metodei FCM (minimizare eroare p�atratic�a de aproximare �si constrangere probabilist�a) �si un

termen suplimentar de ajustare:

ust =1P

C

k=1kxt��sk2kxt��kk2

+�

kxt � �sk2

0@Ns �P

C

k=1Nk

kxt��kk2PC

k=11

kxt��kk2

1A = uFCM

st+�ust: (6.16)

Termenul de ajustare uFCMst

depinde de diferent�a dintre cardinalitatea clasei s, Ns �si o medie

ponderat�a a cardinalit�at�ii tuturor claselor partit�iei, din punctul de vedere al vectorului de date

xt. Pentru clase cu multe puncte, bine reprezentate, cardinalitatea Ns este mai mare decat

cardinalitatea medie a partit�iei ceea ce face ca �ust > 0 �si deci ca gradul de apartenent��a

al vectorului s�a creasc�a. Astfel, clasele reprezentative (care au deja su�ciente puncte) sunt

favorizate, devenind �si mai bine reprezentate. Pentru clasele depopulate, cu cardinalitate mic�a,

termenul de ajustare este negativ (�ust < 0), gradul de apartenent��a a vectorilor de date �ind

diminuat suplimentar.

Trebuie de asemenea remarcat faptul c�a termenul de ajustare depinde, invers proport�ional, de

distant�a dintre vectorul de date xt �si prototipul clasei, �s, ceea ce face ca termenul de ajustare

s�a �e ampli�cat corespunz�ator pozit�iei relative a vectorilor xt �si �s. Aceast�a comportare duce

la \golirea" claselor atipice �si slab reprezentate. Atunci cand cardinalitatea unei clase scade

sub o limit�a impus�a, clasa respectiv�a este eliminat�a �s num�arul total de clase este diminuat cu 1.

La �nceput, partit�ia este init�ializat�a cu un num�ar su�cient de mare de clase pentru a produce

o supra-segmentare. Pe parcursul iterat�iilor, al doilea termen al funct�ie criteriu provoac�a ex-

pansiunea claselor, pentru a include cat mai multe puncte, iar cosntrangerea probabilist�a face

ca clasele vecine s�a intre �n competit�ie pentru atragerea vectorilor de date.

Centrele claselor se obt�in, deloc surprinz�ator, ca �si la FCM sau PCM, din criteriul de bun�a

aproximare a vectorilor prin prototipurile claselor, ca:

�i =

PN

j=1 u2ijxjP

N

j=1 u2ij

: (6.17)

Figura 6.1 b) prezint�a un rezultat al aplic�arii algotritmului CA pentru determinarea automat�a

a componentelor vizual semni�cative dintr-o imagine.

Alegerea parametrului � din ecuat�ia funct�iei criteriu CA (6.9) este extrem de important�a,

deoarece asigur�a echilibrarea important�ei celor doi termeni de natur�a diferit�a: dac�a � este prea

mic, al doilea termen va � neglijat �si nu va avea loc nici o reucere a num�arului de clase. Dac�a

� este prea mare, se va produce neglijarea termenului de bun�a aproximare a vectorilor de date

�si toate punctele vor � repartizate unei clase unice. Deci � trebuie ales astfel ca cei doi termeni

s�a aib�a acela�si ordin de m�arime. Dac�a dimensiunea (num�arul de componente) al vectorilor de

date cre�ste, primul termen devine mai mare, deoarece orice distant��a va � compus�a din mai

mult�i termeni. O metod�a de a face algoritmul independent de dimensiunea vectorilor de date

80

a) b)

Fig. 6.1: Exemple de segmentare a componentelor vizual importante: a) marcarea contururilor

regiunilor de interes; b) determinarea automat�a a regiunilor semni�cative prin algoritmul CA.

este de a alege � proport�ional cu raportul celor doi termeni:

� = k

PC

i=1

PN

j=1 u2ijkxj � �ik2P

C

i=1

�PN

j=1 uij

�2 : (6.18)

Intuitiv, �nceperea algoritmului ar trebui f�acut�a cu un � mare, astfel ca al doilea termen al

funct�iei criteriu s�a �e dominant, avand ca rezultat sc�aderea rapid�a a num�arului de clase. Va-

loarea lui � poate � sc�azut�a �n �ecare iterat�ie astfel �ncat, pe m�asura parcurgerii iterat�iilor,

important�a primului termen s�a creasc�a �si prototipurile c�a aproximeze mai bine clasele. O

posibil�a variant�a este alegerea lui � ca:

�(t) = �(t)

PC

i=1

PN

j=1 u2ijkxj � �ik2P

C

i=1

�PN

j=1 uij

�2 ; cu

�(t) = �0e� t�0 ; cu �0 = 5; �0 = 10::

O abordare similar�a este adoptat�a de Carson et al [13] �n sistemul Blobworld (vezi �si exemplul

din �gura 2.1). Segmentarea se bazeaz�a �ns�a pe estim�ari neparametrice ale distribut�iei statistice

de culori din imagine.

81

6.2.2 Parametri de form�a

Prin parametri de form�a �nt�elegem �n general orice scalar sau funct�ie (cu suport unidimensional

sau bidimensional) asociate unei forme plane pe care o caracterizeaz�a; formele asem�an�atoare

sunt caracterizate de parametri de form�a de valori apropiate; formele diferite prezint�a diferent�e

mari �ntre parametrii de form�a ce le sunt asociat�i. Parametrii de form�a compun un fel de ��s�a

de identitate a formei respective, pe baza c�areia aceasta ar putea � recunoscut�a �n mod unic. In

mod ideal, parametrii trebuie s�a �e invariant�i la translat�ie, rotat�ie �si scalare. In cele ce urmeaza

vom prezenta cat�iva dintre parametri de form�a cei mai uzuali - simplu de calculat, su�cient de

�abili �si formand un vector de caracteristici de dimensiune redus�a.

Parametri geometrici

Aceast�a categorie de parametri se bazeaz�a pe m�asura unor atribute geometrice simple: arie (S),

perimetru (P ), num�ar de g�auri, num�arul lui Euler (diferen�a dintre num�arul de regiuni conexe

�si num�arul de g�auri) [49], [117]. Cum nu toate aceste numere sunt invariante �si caracteristice

�n mod unic unei anume forme, au ap�arut combinat�ii de tip raport.

Raportul de compacitate (numit uneori �si factor de form�a) este raportul dintre p�atratul peri-

metrului �si suprafat�a formei:

� =P

2

4�S: (6.19)

Pentru o form�a circular�a raportul este unitar; cu cat num�arul � este mai apropiat de aceast�a

valoare, cu atat mai mult forma seam�an�a cu un disc (p�atratul are un raport de compacitate

� = 1:273).

Excentricitatea sau circularitatea formei (m�asura �n care forma dat�a se deosebe�ste de disc)

poate � de�nit�a �si ca un raport al razelor cercurilor circumscrise (R) �si �nscrise (r) formei:

c =R

r: (6.20)

Acest raport este evident unitar �n cazul discului; pentru p�atrat valoarea sa este de c = 1:412.

Momente statistice �si invariant�i de form�a

Interpretand funct�ia caracteristic�a a formei ca pe o funct�ie de densitate de probabilitate bidi-

mensional�a, putem de�ni momentele statistice asociate celor dou�a variabile aleatoare (ce sunt

coordonatele punctelor formei):

mpq =ZK

f(x; y)xpyqdxdy; p; q = 0; 1; 2; ::: (6.21)

Scalarul mpq (momentul de ordin p; q sau p+q) este proiect�ia funct�iei f(x; y) pe polinoamele xp

�si yq ale bazei complete de polinoame. Teorema reprezent�arii cu momente a�rm�a c�a mult�imea

in�nit�a de momente mpq determin�a �n mod unic f(x; y) �si reciproc.

82

In cazul imaginilor binare, coordonatele sunt discrete �si funct�ia este o funct�ie caracteristic�a

(f(x; y) 6= 0 pentru punctele formei �si f(x; y) = 0 pentru punctele ce nu apart�in formei);

formula momentelor (6.21) devine:

mpq =Xx

Xy

f(x; y) � xpyq: (6.22)

Cum caracterizarea unei forme printr-o serie in�nit�a de numere (a�sa cum cere teorema repre-

zent�arii cu momente) nu este posibil�a, �n practic�a se folosesc serii de momente truncheate pan�a

la un ordin maxim �xat N (p + q � N). Acestea �ns�a caracterizeaz�a o alt�a funct�ie, g(x; y), o

aproximare a lui f(x; y). Aceast�a aproximare este dat�a de o combinat�ie liniar�a a polinoamelor

bazei, ponderate cu scalarii necunoascut�i gpq [49]:

g(x; y) =X X

p+q�Ngpqx

pyq: (6.23)

G�asirea acestor scalari se face prin egalarea momentelor cunoscute ale lui f(x; y) cu momentele

lui g(x; y) dat�a de expresia (6.23). Rezolvand sistemul de ecuat�ii cuplate ce se formeaz�a, se pot

obt�ine relat�iile c�autate; calculul trebuie �ns�a ref�acut, din cauza cupl�arii ecuat�iilor, ori de cate

ori se dore�ste trecerea la o aproximare mai bun�a a formei f , m�arind valoarea lui N . Aceast�a

cuplare provine din cauza folosirii unei baze neortogonale (a�sa cum este familia de polinoame

xpyq) pentru calculul momentelor; problema a fost rezolvat�a prin folosirea proiect�iilor pe baza

de polinoame Legendre.

Trebuie �ns�a remarcat c�a folosirea momentelor statistice pentru caracterizarea unei forme nu

asigur�a �ndeplinirea a nici unuia dintre principiile de invariant��a c�autate; de aceea au fost in-

troduse momente statistice invariante [127], [117]. Momentele statistice invariante la translat�ie

sunt momentele statistice centrate:

�pq =Xx

Xy

f(x; y) � (x� x)p(y � y)q: (6.24)

Momentele statistice invariante la translat�ie �si scalare sunt de�nite de:

�pq =�pq

00

; = 1 +p+ q

2: (6.25)

Invariant�ii la translat�ie, scalare �si rotat�ie ai unei forme, obt�inut�i �n condit�iile folosirii unor

momente statistice de ordin cel mult 3 (N = 3), sunt �n num�ar de 7 �si sunt exprimat�i de:

�1 = �20 + �02 (6.26)

�2 = (�20 � �02)2 + 4�211 (6.27)

�3 = (�30 � 3�12)2 + (�03 � 3�21)

2 (6.28)

�4 = (�30 + �12)2 + (�03 + �21)

2 (6.29)

�5 = (�30 � 3�12)(�30 + �12)h(�30 + �12)

2 � 3(�03 + �21)2i+ (6.30)

83

+(�03 � 3�21)(�03 + �21)h(�03 + �21)

2 � 3(�30 + �12)2i

�6 = (�20 � �02)h(�30 + �12)

2 � (�03 + �21)2i+ 4�11(�30 + �12)(�03 + �21) (6.31)

�7 = (�30 � 3�21)(�03 + �21)h(�03 + �21)

2 � 3(�30 + �12)2i� (6.32)

�(�03 � 3�21)(�30 + �12)h(�30 + �12)

2 � 3(�03 + �21)2i

Init�ial (mijlocul anilor '60) ace�sti invariant�i au fost folosit�i pentru recunoa�sterea caracterelor

mari de tipar, cu rezultate modeste. E�cient�a lor const�a �ns�a �n modul rapid de calcul �si

posibilitatea de a le utiliza cu succes pentru recunoa�sterea formelor geometrice convexe.

Descriptori Fourier de contur

Frontiera unui obiect, odat�a ce a fost determinat�a, poate � v�azut�a ca o pereche de semnale

unidimensionale x(t) �si y(t) �n funct�ie de abscisa curbilinie pe contur t (a se vedea �gura

6.2). Astfel, frontiera respectiv�a poate � reprezentat�a folosind tehnici uzuale pentru semnale

unidimensionale [49], [125]. Pentru un contur discret, se poate de�ni semnalul complex u(n) =

x(n) + jy(n); n = 0; 1; :::; N � 1, care, pentru un contur �nchis, este un semnal periodic

de perioad�a N . Semnalul u(n) poate � caracterizat prin transformata sa Fourier discret�a a(k),

de�nit�a ca:

a(k) =N�1Xn=0

u(n) exp

�2�jkn

N

!: (6.33)

Fig. 6.2: Generarea descriptorilor Fourier ai frontierei unui obiect: de�nirea formei complexe

a conturului.

Coe�cient�ii complec�si a(k) se numesc descriptorii Fourier ai frontierei considerate. In �gura

6.3 este prezentat un exemplu de descriptori Fourier ai unui contur.

Descriptorii Fourier ai unui contur prezint�a anumite propriet�at�i de invariant��a la operat�ii ge-

ometrice de baz�a (scalare, rotat�ie, translat�ie) care �i fac s�a �e extrem de atractivi pentru

84

Fig. 6.3: Exemplu de descriptori Fourier: obiect original, funct�ia contur �si primii zece descrip-

tori Fourier

recunoa�sterea de forme. In cele ce urmeaz�a sunt prezentate cateva dintre propriet�at�ile cele mai

importante ale descriptorilor Fourier.

Fie u(n) semnalul complex asociat unei frontiere, �si �e 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 obt�in �n funct�ie

de cei ai obiectului original prin: ~a(k) = a(k) + u0�(k). Cu alte cuvinte, efectul unei translat�ii

asupra descriptorilor Fourier este modi�carea coe�cientului de curent continuu.

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 s�ai Fourier.

Fie ~u(n) semnalul asociat frontierei obiectului rotit cu unghiul �0: ~u(n) = u(n) exp(j�0). Des-

criptorii Fourier ai obiectului rotit devin:

~a(k) = a(k) exp(j�0):

O rotat�ie a obiectului induce, deci, o deviat�ie constant�a �n faza descriptorilor s�ai Fourier.

In cazul in care se schimb�a originea obiectului, semnalul care �i va descrie frontiera va � ~u(n) =

u(n� n0) cu n0 constant, iar descriptorii s�ai Fourier pot � scri�si ca:

~a(k) = a(k) exp

�2�jnok

N

!:

O schimbare a originii conduce deci la o modulat�ie introdus�a �n faza descriptorilor s�ai Fourier.

Poligonalizarea contururilor

Operat�ia de poligonalizare a contururilor este util�a �n vederea interpret�arii formelor. Un algo-

ritm posibil de aproximare poligonal�a a unei curbe AB este urm�atorul (v. �gura 6.4): pentru

85

�ecare punct D al curbei se calculeaz�a distant�a la segmentul de dreapt�a AB. Se determin�a

astfel punctul C caracterizat de distant�a la segmentul AB maxim�a. Fie dC aceast�a distant��a.

Dac�a dC > T , unde T este un prag ales de utilizator, atunci punctul C este ret�inut �si se repet�a

procedura pentru cele dou�a segmente rezultate AC �si CB. In caz contrar, curba se �nlocuie�ste

cu segmentul AB. Pragul T controleaz�a eroarea indus�a de aproximarea poligonal�a. Alegandu-

se un T mare, contururile vor � aproximate cu un num�ar redus de segmente, deci aproximarea

este mai brutal�a. Pentru T mic, va rezulta un num�ar ridicat de segmente.

Fig. 6.4: Exemplu de aproximare poligonal�a a unei curbe.

86

Capitolul 7

M�asurarea performant�ei sistemelor de

indexare a imaginilor

C�autarea informat�iei vizuale este diferit�a de c�autarea informat�iei textuale �n sisteme de baze

de date convent�ionale din mai multe puncte de vedere [65]:

� Sistemele de baze de date clasice cont�in informat�ie foarte bine structurat�a, avand o or-

donare bine de�nit�a a componentelor, spre deosebire de obiectele din imagini, ce nu sunt

indexabile �n mod direct.

� Orice camp dintr-o baz�a de date clasic�a admite doar un num�ar �nit de variante de comple-

tare (valori diferite); avand su�cient de mult timp la dispozit�ie, o c�autare de tip exhaustiv

(algoritm bazat pe \fort�a brut�a") va reg�asi �ntotdeauna elementele c�autate. Pentru o ima-

gine de rezolut�ie dat�a, de�si num�arul de variante este tot �nit (determinat de num�arul de

pixeli din imagine �si de num�arul de culori posibile), de�si mult mai mare decat �n cazul ele-

mentelor de tip textual, nu este posibil�a identi�carea imaginilor cont�inand obiectele date,

indiferent de timpul de calcul alocat. Acest comportament este determinat de limit�arile

algoritmilor actuali de recunoa�stere a obiectelor �si segmentare a imaginilor.

� O baz�a de date normalizate cont�ine numai �nregistr�ari ce au acela�si num�ar de campuri

de descriere. O imagine poate � compus�a dintr-un num�ar nedeterminat de obiecte, de

dimensiuni diferite, ce pot � part�ial acoperite sau incluse �n fundal. Un obiect oarecare

dintr-o imagine poate � la randul lui descompus �n alte obiecte relevante de interes.

� In cazul bazelor de date clasice, accentul principal este pus pe reg�asirea informat�iei �si

nu pe descoperirea informat�iei. Intr-o interogare bazat�a pe o imagine exemplu nu putem

avea nici o informat�ie a priori asupra aspectului imaginilor c�autate �si eventual reg�asite,

a num�arului imaginilor reg�asite precum �si a num�arului imaginilor pierdute.

� Pentru orice obiect dat dintr-o imagine exist�a o multitudine de moduri de prezentare

�si descriere, astfel �ncat este imposibil�a o precizare exact�a a interog�arii care s�a conduc�a

87

la r�aspunsuri precise. Astfel este inevitabil�a intervent�ia manual�a a utilizatorului dup�a

speci�carea interog�arii, pentru a ra�na rezultatele.

Necesitatea de�nirii unor m�asuri standard de m�asurare a performant�ei sistemelor de indexare

�si c�autare a imaginilor este evident�a: astfel se vor putea compara abord�ari diferite �si stabili cu

certitudine direct�iile corecte de urm�arit. Cateva caracteristici esent�iale sunt necesare pentru

aceste teste �si m�asuri:

� Testele trebuie s�a poat�a � adaptate prin varierea unor parametri (de exemplu un astfel

de parametru trebuie s�a �e dimensiunea bazei de imagini de test).

� Testele trebuie s�a acopere o gam�a cat mai larg�a de aplicat�ii speci�ce; astfel, modul de

generare a diferitelor tipuri de informat�ie vizual�a implic�a anumite caractersitici particulare

ale acestora (fotogra�i spre deosebire de gra�ce, spre exemplu).

� Pe lang�a speci�carea bazei de imagini de testare trebuie speci�cate �si imaginile de inte-

rogare (pentru o comparare uniform�a a performant�elor �si pentru identi�carea diferitelor

puncte forte sau sl�abiciuni ale sistemelor testate).

� Testele trebuie s�a se bazeze numai pe evaluarea cont�inutului imaginilor, f�ar�a folosirea

suplimentar�a de informat�ie (de tip metadata); de cele mai multe ori, informat�ia de tip

metadata disponibil�a (autorul imaginii, proprietarul imaginii, data de achizit�ie, etc.) este

absolut irelevant�a pentru cont�inutul imaginii.

� Viteza de r�aspuns a sistemului nu trebuie s�a �e unul dintre elementele esent�iale de studiu

(desigur, considerand timpul de r�aspuns al sistemului �ntre limite rezonabile)

� Trebuie de�nite m�asuri de e�cient��a standardizate (extinzand not�iunile de precizie �si rea-

mintire de la sistemele de reg�asire a informat�iei textuale), care trebuie aplicate pe seturi

de imagini pre-de�nite ca r�aspunsuri corecte ale interog�arilor (desigur, de�nirea acestora

implic�a realizarea manual�a a acestor seturi de imagini).

Principala clas�a de imagini, �n sensul obi�snuit al termenului, sunt imaginile vizuale (de

luminant��a) [14], [117] - imagini statice corespunzand de cele mai multe ori unor fotogra�i.

Din punct de vedere al cont�inutului acestor imagini, putem distinge �ntre imagini primare �si

imagini complexe. Imaginile primare au un cont�inut semantic limitat �si pot � reduse la ele-

mente primare ce constituie imaginea (de exemplu culoarea) sau la primitive vizuale (colt�uri,

contururi) eventual extrase automat, ce formeaz�a p�art�i ale obiectului din imagine, f�ar�a a-l de-

�ni totu�si complet. Imaginile complexe au o descriere semantic�a bogat�a, au un cont�inut bazat

pe obiecte (�e un obiect unic, �e grupuri de obiecte ce pot forma descrieri de nivel �nalt). In

mod normal, un cont�inut complex nu poate � �nc�a reg�asit prin tehnici automate de descriere a

imaginilor.

O baz�a tipic�a de testare include cam N = 1000 de imagini [65], indexate manual pentru a

determina r�aspunsurile corecte la interog�ari. Imaginile trebuie s�a cont�in�a mai multe obiecte,

88

avand diferite relat�ii �ntre ele, ce pot � descrise prin mai multe tipuri de atribute (minge ro�sie,

minge verde { culori diferite, minge mare, minge mic�a { dimensiuni diferite, minge cu buline,

minge de fotbal { texturi diferite). Interog�arile alese trebuie s�a �e rezonabil de precise �si cu o

ambiguitate minim�a; setul de imagini r�aspuns potent�iale ce trebuie vizualizate nu trebuie s�a �e

mai mare de 50 de imagini (relativ la o baz�a de 1000 de imagini), iar interog�arile trebuie s�a �e

semni�cative din punctul de vedere al percept�iei umane a cont�inutului complex al imaginilor.

Trebuie folosite cel put�in 20 de interog�ari de evaluare pentru care r�aspunsurile corecte s�a �e

cunoscute [65].

Dac�a not�am cu Rk mult�imea imaginilor reg�asite de sistem �n urma interog�arii k, cuNk mult�imea

imaginilor corecte (relevante) pentru interogarea dat�a din �nteaga baz�a de imagini, iar cu Ck

mult�imea imaginilor corecte (relevante) reg�asite (Ck � Rk, Ck � Nk), atunci se de�nesc �n mod

uzual dou�a m�arimi de caracterizare a e�cient�ei sistemului de indexare �si reg�asire a imaginilor:

precizia �si reamintirea [81]. Precizia unei interog�ari (\precision") pk este proport�ia de imagini

corecte reg�asite de sistem (�n totalul imaginilor reg�asite) (7.1). Reamintirea unei interog�ari

(\recall") rk este proport�ia de imagini corecte reg�asite de sistem din totalul imaginilor corecte

din baza de imagini (7.2).

pk =CardfCkgCardfRkg

; (7.1)

rk =CardfCkgCardfNkg

: (7.2)

Pentru caracterizarea global�a a comport�arii sistemului testat, precizia �si reamintirea se mediaz�a

la nivelul �ntregului set de K imagini de interogare:

p =1

K

KXk=1

pk; (7.3)

r =1

K

KXk=1

rk: (7.4)

Dac�a num�arul de imagini reg�asite de sistem CardfRkg este variat, se pot obt�ine pentru �ecare

dintre valorile precizie sau reamintire toate valorile dintre 0 �si 1. Reprezentarea gra�c�a plan�a a

setului de puncte ce corespund perechilor de valori (precizie, reamintire) obt�inute prin varierea

lui CardfRkg se nume�ste curb�a precizie{reamintire.

Curba precizie{reamintire se construie�ste deci prin m�asurarea perechilor de valori precizie �si

reamintire pentru toate valorile posibile impuse preciziei sau reamintirii. Exist�a deci dou�a vari-

ante de construire a acestei curbe. S�a consider�am cazul simpli�cat al existent�ei unei partit�ion�ari

prealabile a bazei de imagini �n clase ce cont�in �ecare C imagini (Nk = C; 8k).

� Reamintirea rk este impus�a, rk = i=C, cu i = 0; 1; 2; : : : C (deci se dore�ste reg�asirea

printre primele imagini returnate de sistem a i imagini din clasa k dat�a). Pentru calculul

preciziei se vor considera primele Nki = CardfRkg imagini declarate similare de c�atre

sistem, astfel �ncat printre ele s�a se g�aseasca cele i imagini din clasa considerat�a; precizia

este pk = i=Nki.

89

0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

Fuzzy index RGB histogram RGB histo + Fourier disks RGB histo + runlength descriptors

precision %

recall %

Fig. 7.1: Curbe tipice precizie{reamintire (\precision{recall"): cu cat o curb�a este mai \sus" �si

mai apropiat�a ca form�a de o treapt�a, cu atat mai bun�a este respectiva descriere a imaginilor.

� Precizia pk este impus�a, considerand pe rand primele i = 0; 1; 2; : : : imagini returnate de

sistem, printre care se a �a nki = CardfSkig imagini din aceea�si clas�a cu imaginea c�autata.

Precizia va � pk = nki=i, iar reamintirea rk = nki=C.

Indiferent de modul de construire a curbei precizie{reamintire �si indiferent de sistemul testat,

exist�a unele caracteristici comune. Precizia este unitar�a la o reaminitire nul�a, iar pentru o

reamintire unitar�a, precizia va avea valori mici (la limit�a nule). La o reamintire nul�a, precizia

m�asoar�a probabilitatea ca prima imagine returnat�a de sistem �si declarat�a similar�a cu imaginea

c�autat�a s�a fac�a parte din aceea�si clas�a cu aceasta. La o reaminitre unitar�a, precizia va determina

num�arul de imagini necesar a � returnate de sistem pentru ca printre ele s�a se a e (indiferent

de rang) toate imaginile clasei din care face parte imaginea c�autat�a. Figura 7.1 prezint�a forma

tipic�a a unor curbe precizie{reamintire.

M�asuri asem�an�atoare sunt �si rata de eroare �si e�cient�a de reg�asire [81]. Rata de eroare RE este

de�nit�a ca num�arul de imagini incorecte reg�asite raportat la num�arul total de imagini reg�asite:

RE = 1� p: (7.5)

E�cient�a de reg�asire ER este identic�a cu precizia, dac�a num�arul de imagini reg�asite este mai

mic sau egal cu num�arul total de imagini corecte din baza de imagini (CardfRkg � CardfNkg),sau este identic�a cu reamintirea, dac�a num�arul de imagini reg�asite de sistem este mai mare

decat num�arul total de imagini corecte existente.

90

O alt�a m�asur�a a e�cient�ei de reg�asire a imaginilor este rangul primei imagini corecte (relevante)

reg�asite: prima pozit�ie pe care se a �a, printre cele CardfRkg imagini reg�asite, o imagine corect�a

relativ�a la interogarea k. In urm�a medierii rezultatelor pentru toate cele K interog�ari se obt�ine

rangul mediu al primului r�aspuns corect (\average �rst-hit rank").

In [61] este folosit�a not�iunea de rang de reg�asire modi�cat (normalized modi�ed retrieval rank

- NMRR), m�asur�a utilizat�a �n procesul de standardizare MPEG-7 [80]. Se noteaz�a Nmax =

maxkfNkg �si Kk = minf4CardfNkg; 2Nmaxg. Se alege CardfRkg = Kk �si se calculeaz�a rangul

�ec�arei imagini corecte printre primeleKk; toate imaginile corecte care nu se a �a printre primele

Kk imagini reg�asite primesc implicit rangul Kk + 1. Atunci, pentru interogarea k, rangul de

reg�asire modi�cat este:

MRRk =CardfNkgX

i=1

rang(i)

CardfNkg� CardfNkg+ 1

2: (7.6)

NMRRk =2MRRk

2Kk + 1 �CardfNkg: (7.7)

Rangul de reg�asire modi�cat mediu este calculat prin medierea valorilor NMRR corespunz�atoare

tuturor interog�arilor folosite.

In [81] se propune m�asura numit�a rang mediu normalizat RMN.

RMN =1

NCardfNkg

0@CardfNkgXi=1

rang(i)� CardfNkg(CardfNkg � 1)

2

1A : (7.8)

Pentru o performant��a perfect�a aceast�a m�asur�a este 0 �si tinde la 1 pe m�asur�a ce performant�a

de reg�asire a sistemului se degradeaz�a. Pentru o funct�ionare aleatoare rangul mediu normalizat

este �n jur de 0.5.

91

Capitolul 8

IRIS - Sistem prototip de indexare �si

c�autare a imaginilor color

8.1 Ce este IRIS ?

IRIS este un prototip pentru un sistem de indexare, c�autare �si reg�asire a imaginilor color

cont�inute �ntr-o baz�a de imagini. Sistemul IRIS este format dintr-un ansamblu de funct�ii

Matlab, ce permit realizarea de experimente �si demonstrat�ii pentru tehnicile uzuale de indexare

a bazelor de imagini, de formulare a unor interog�ari prin imagini exemplu �si de reg�asire a

imaginilor similare din punct de vedere vizual cu imaginea exemplu. Imaginea exemplu folosit�a

la interogarea bazei de imagini indexate poate s�a fac�a parte sau nu din respectiva baz�a de

imagini. Pentru a folosi �n bune condit�ii sistemul IRIS, este necesar un calculator echipat cu

cel put�in 128 MB memorie RAM �si un sistem Matlab de versiune 5.2 sau ulterioar�a.

8.2 Utilizarea uzual�a a sistemului IRIS: trei pa�si de baz�a

8.2.1 Stabilirea bazei de imagini

Imaginile (color sau nu) ce compun baza de imagini de lucru trebuie s�a �e plasate �ntr-un unic

director; nu se admit baze de imagini repartizate �n mai multe directoare sau �n directoare cu

subarborescent�e (subdirectoare). Imaginile sunt stocate �n ��siere al c�aror format trebuie s�a �e

recunoascut de Matlab (pentru o utilizare de baz�a sunt recunoscute ��sirele de tip JPEG (.jpg),

Windows Bitmap (.bmp), TIFF (.tif), PCX (.pcx), PNG (.png). In directorul ce cont�ine baza

de imagini nu trebuie s�a se mai g�aseasc�a �si alte ��siere �n afara celor cont�inand imaginile bazei.

Num�arul maxim de imagini din baza de imagini este limitat la aproximativ 2000 (depinzand

de performant�ele calculatorului utilizat, a dimensiunii descriptorilor utilizat�i �si a accept�iunii

92

utilizatorului asupra not�iunii de r�aspuns rapid a sistemului). Cont�inutul speci�c al imaginilor

nu este important.

In cele ce urmeaz�a vom presupune c�a baza de imagini folosit�a se g�ase�ste �n directorul d:nimagini

nvacanta.

8.2.2 Indexarea bazei de imagini

Dup�a cum am ar�atat �n introducerea teoretic�a, procesul de indexare const�a �n calcularea, pentru

�ecare imagine din baza de imagini selectat�a, a unuia sau a mai multor descriptori, caracteristici

pentru cont�inutul imaginii. Mult�imea descriptorilor calculat�i pentru toate imaginile bazei de

imagini formeaz�a indexul bazei de imagini.

Din punctul de vedere al implement�arii, �n urma procesului de indexare a bazei de imagini

sunt constituite dou�a ��siere de date de tip Matlab (.mat): lista numelor ��sierelor cont�inand

imagini (format�a din �siruri de caractere, reprezentand numele complet al ��sierelor corespunzand

imaginilor din baz�a, grupate pe liniile unei matrici), numit�a �n continuare \cont�inut al bazei de

imagini" (Image Database Content, IDC) �si descriptorii imaginilor din baz�a (cate un vector de

numere reale pentru �ecare imagine a bazei, grupat�i pe liniile unei matrici), numit�i �n continuare

\descriptori ai bazei de imagini" (Image Database Descriptors, IDD). Numele complet al acestor

dou�a ��siere (IDC �si IDD) trebuie furnizat de c�atre utilizator �n momentul apelului funct�iei de

indexare, sub forma unor �siruri de caractere (deci �ncadrate de simboluri ', conform sintaxei

Matlab). Pentru o utilizare minimal�a a sistemului IRIS se vor folosi doar descriptorii deja

integrat�i �n sistem (vezi �gura 8.1), f�ar�a opt�iuni particulare sau suplimentare.

De exemplu, vom considera c�a ��sierul de cont�inut al bazei de imagini (IDC) va � numit

c:nbazedatenfoto vacanta iar ��sierul de descriptori ai bazei de imaginii (IDD) va � numit

c:ndescriptorinvacanta 1. Aceasta presupune, desigur, c�a directoarele c:nbazedate �sic:ndescriptori exist�a �si scrierea de noi ��siere �n aceste directoare este permis�a. Atunci indexarea

bazei de imagini va � lansat�a prin comanda:

iris_index_database('c:\bazedate\foto_vacanta','c:\descriptori\vacanta_1')

Dup�a lansarea acestei funct�ii, pe ecran va apare o fereastr�a intitulat�a meniu (MENU), cont�inand

mai multe butoane, ce permit alegerea tipului de descriptor ce va � folosit pentru descrierea

cont�inutului imaginilor din baz�a (vezi �gura 8.1).

Dup�a alegerea descriptorului prin ap�asarea pe butonul corespuz�ator, pe ecran va ap�area o

alt�a fereastr�a de dialog, intitulat�a \alegerea bazei de imagini" (Choose Image Database) (vezi

�gura 8.2), prin care se va speci�ca un ��sier oarecare din baza de imagini ce se dore�ste indexat�a

(de exemplu d:nimagininvacantanxxx003.jpg). Dup�a alegerea bazei de imagini, pe ecran vor �

93

Fig. 8.1: Fereastr�a de tip meniu (MENU) permit�and alegerea unor descriptori standard pentru

indexarea bazei de imagini. Tipurile de descriptori standard oferit�i sunt: Mean RGB - Culoarea

medie din imagine, �n reprezentare RGB, normalizat�a �n intervalul [0,1]; RGB Histo - Histo-

grama culorilor din imagine, �n reprezentare RGB, cuantizate liniar�a uniform�a �n 6 intervale

pe component�a de culoare, cu normalizare probabilist�a; Gray Histo - Histograma nivelelor de

gri din imagine, cuantizate liniar uniform �n 16 intervale, cu normalizare probabilist�a; Mean

Saturation - Saturat�ia medie a culorilor din imagine, normalizat�a �n intervalul [0,1]; Paschos

color moments - Momente statistice ale distribut�iei de culoare �n spat�iul cromatic normalizat

xy; Runlength matrix param - Parametri ai matricilor de izosegmente verticale �si orizontale.

a��sate, pe rand, numele ��sierelor cont�inand imaginile din baza aleas�a, urmate de un scurt mesaj

de OK la terminarea calculului descriptorului pentru respectiva imagine.

8.2.3 C�autarea imaginilor �n baza indexat�a

Inainte de prima utilizare a interfet�ei de navigare �si c�autare �n baze de imagini trebuie init�ializat�i

unii parametri (dependent�i de diferitele versiuni de Matlab utilizate) utilizat�i de sistem. Aceast�a

operat�ie este realizat�a prin rularea funct�iei iris probe:

iris_probe

Funct�ia va deschide o fereast�a gra�c�a �n care sunt a��sate �sase imagini, organizate �ntr-o matrice

cu dou�a linii �si trei coloane. Pe �ecare dintre cele �sase imagini trebuie realizat un click cu butonul

stanga al mouse-ului, respectand ordinea imaginilor: de la stanga la dreapta pe linii �si de sus

�n jos pe coloane. Dup�a �ecare click, imaginea pe care s-a realizat acest marcaj se modi�c�a.

Dac�a ordinea de parcurgere a imaginilor din �gur�a nu este respectat�a, imaginile modi�cate nu

apar pe aceea�si pozit�ie cu imaginea pe care s-a realizat marcarea. De asemenea, dac�a ordinea

94

Fig. 8.2: Fereastr�a de select�ie a bazei de imagini de indexat, prin alegerea unei imagini oarecare

cont�inut�a �n aceasta.

nu este respectat�a, funct�ia va tip�ari un mesaj de avertizare. Continuand cu un set de parametri

determinat�i incorect, interfat�a IRIS poate funct�iona aberant.

Interfat�a de navigare �si c�autare �n bazele de imagini este lansat�a din Matlab prin comanda:

iris

Dup�a �nchiderea automat�a a ferestrei de prezentare, utilizatorul va select�iona, �n ferestre de

tipul celei prezentate �n �gura 8.2 numele ��sierului de cont�inut al bazei de imagini (IDC - �n

exemplul nostru c:nbazedatenfoto vacanta.mat) �si numele ��sierului de descriptori ai bazei de

imagini (IDD - �n exemplul nostru c:ndescriptorinvacanta 1.mat).

Sistemul va �nc�arca �n memorie lista numelor de ��siere din baza de imagini �si matricea de

descriptori ai imaginilor, urmand ca apoi s�a deschid�a dou�a ferestre: o fereastr�a de comand�a

meniu (What U wanna do ?) �si o fereastr�a de a��sare. In fereastra de a��sare sunt prezentate

primele opt imagini din baza de imagini, �n ordinea alfabetic�a a numelui ��sierelor acestora, �n

ordinea normal�a (pe randuri de la stanga la dreapta, �si apoi de sus �n jos).

Fereastra de comand�a (What U wanna do ?) cont�ine dou�a categorii de comenzi: comenzi de

navigat�ie (\Reset", \Shu�e @", \Next >>", \Previous <<", \Image info", \Bye !") �si co-

menzi de interogare sau c�autare (\Query", \External Query"). Comanda \Shu�e @" permite

a��sarea unei select�ii aleatoare de opt imagini din baza de imagini (vezi �gura 8.3). Comanda

\Reset" permite revenirea la ordonarea alfabetic�a init�ial�a (din momentul pornirii sistemului).

Comenzile \Next >>" �si \Previous <<" permit a��sarea urm�atoarelor (respectiv a preceden-

telor) opt imagini, �n ordinea existent�a �n momentul comenzii (ordinea alfabetic�a - la lansarea

sistemului sau dup�a o comand�a \Reset", ordine aleatoare - dup�a o select�ie aleatoare sau ordine

de similaritate - dup�a o operat�ie de c�autare). Comanda \Image Info" produce aparit�ia unui

cursor �n form�a de cruce; pozit�ionarea acestui cursor pe una dintre imaginile a��sate �n fereas-

tra de a��sare �si select�ionarea acesteia (click de buton stanga de mouse) produce aparit�ia unei

ferestre de dialog (IRIS Info) (vezi �gura 8.4) �n care este a��sat numele imaginii. Fereastra de

95

informat�ii este modal�a, �si deci trebuie �nchis�a �naintea continu�arii sesiunii de lucru. Comanda

\Bye !" este comanda de �nchidere a sistemului IRIS.

Fig. 8.3: Select�ie aleatoare de opt imagini din baza de imagini .

Fig. 8.4: Fereastr�a de informat�ii ce a��seaz�a numele complet al ��sierului �n care este stocat�a

imaginea selectat�a; pentru �nchiderea ferestrei �si continuarea utiliz�arii sistemului IRIS este

necesar�a ap�asarea butonului OK.

Comanda de interogare \Query" are ca efect c�autarea �n baza de imagini �si reg�asirea imaginilor

similare (din punctul de vedere al descriptorului �si metricii folosite) cu imaginea exemplu aleas�a.

Imaginea exemplu de c�autat este select�ionat�a dintre imaginile prezentate �n fereastra de a��sare

prin pozit�ionarea cursorului �n cruce �n interiorul respectivei imagini �si click de buton stanga de

mouse; select�ia imaginii este con�rmat�a de modi�carea culorilor de a��sare a respectivei imagini

(aceasta este a��sat�a cu culori inversate). Imaginile reg�asite �n urma c�aut�arii sunt prezentate

�n fereastra de a��sare, �n ordine descresc�atoare a similarit�at�ii cu imaginea exemplu aleas�a (pe

randuri, de la stanga la dreapta �si de sus �n jos; vezi �gura 8.5). Comanda de interogare

\External Query" permite speci�carea imaginii exemplu folosit�a la interogare prin alegerea

acesteia �n afara bazei de imagini indexate �n care se caut�a. Imaginea este aleas�a prin select�ia

numelui ��sierului ce o cont�ine �ntr-o fereastr�a similar�a celei din �gura 8.2. C�autarea �n baza

de imagini cu o imagine exemplu extern�a este posibil�a numai dac�a pentru imaginea exemplu

se poate calcula acela�si descriptor ca �si pentru baza de imagini �n care se face c�autarea. Dac�a

sistemul nu poate calcula acela�si descriptor �si pentru o eventual�a imagine exemplu extern�a,

alegerea comenzii \External Query" este dezactivat�a (la alegerea ei obt�inandu-se un mesaj de

eroare (nu se pot face c�aut�ari cu imagini exemplu externe pentru descriptori necunoscut�i sau

96

Fig. 8.5: Rezultatul unei c�aut�ari �n baza de imagini dup�a a treia imagine prezentat�a �n �gura

8.3.

compu�si) �ntr-o fereastr�a modal�a. In condit�iile �n care c�autarea cu imagine exemplu extern�a

este posibil�a, imaginea exemplu selectat�a este a��sat�a �ntr-o nou�a fereastr�a, apoi i se calculeaz�a

descriptorul, �si �n fereastra principal�a de a��sare a sistemului IRIS sunt prezentate imaginile din

baza de imagini curent�a ce sunt similare cu imaginea exemplu.

8.3 Utilizarea avansat�a a sistemului IRIS

8.3.1 Crearea de baze de imagini de evaluare

Evaluarea perfomant�elor de indexare �si reg�asire a imaginilor se face pentru baze de imagini

ce corespund unei evalu�ari supervizate, �n care r�aspunsurile corecte sunt cunoscute (�si deci

imaginile din baz�a trebuie s�a �e grupate pe clase de imagini cu cont�inut similar). Pentru a

utiliza o asemenea structur�a �n cadrul sistemului IRIS, imaginile unei aceleia�si clase trebuie

s�a �e stocate �n ��siere ce au aceea�si r�ad�acin�a a numelui, ce pre�xeaz�a un grup de cifre (cu

corespondent numeric). Extensiile ��sierelor corespund formatului de stocare a imaginilor, �si,

teoretic, pot � diferite. De exemplu, ��sierele ce corespund imaginilor dintr-o clas�a pot s�a

se numeasc�a test 1.jpg, test 2.bmp, test 3.jpg, ..., test 49.jpg, etc. Pentru o baz�a de imagini

generalist�a, o asemenea clasi�care trebuie �si nu poate � realizat�a decat manual.

Sistemul IRIS ofer�a o facilitate de construire automat�a a claselor de imagini pentru baze de

imagini de evaluare prin decuparea unor fragmente din imaginile de baz�a. Aceast�a abordare

este e�cient�a �n cazul �n care se dispune de o singur�a imagine de baz�a, de dimensiuni relativ

mari, pentru �ecare caz considerat interesant (de exemplu cate o imagine pentru diferite modele

de textur�a). Funct�ia iris do samples permite construirea unui num�ar impus de imagini (de

dimensiune de asemenea impus�a), plecand de la �ecare imagine disponibil�a �ntr-o colect�ie.

97

De exemplu, dac�a sunt disponibile un num�ar oarecare de imagini de texturi color �n directo-

rul c:ntemp, �si se dore�ste construirea unei baze de texturi de evaluare, situate �n directorul

d:nimaginintexturi, avand 20 de imagini de dimensiune 64 x 64 pixeli pentru �ecare clas�a de

texturi (reprezentat�a de o imagine init�ial�a), se folose�ste:

iris_do_samples('c:\temp\','d:\imagini\texturi\',64,64,20)

Se presupune, evident, c�a imaginile init�iale sunt de dimensiune mai mare decat 64 x 64 pixeli,

c�a directorul d:nimaginintexturi exist�a �si c�a �n acesta este permis�a scrierea.

8.3.2 Evaluarea performant�elor

Evaluarea performant�elor de indexare �si reg�asire a imaginilor este realizat�a �n sistemul IRIS

prin determinarea curbei precizie - reamintire, a pozit�iei medii a primei imagini reg�asite corect

�si a probabilit�at�ilor de recunoa�stere a imaginii exemplu (�n sensul problemelor de recunoa�sterea

formelor) prin utilizarea unei reguli de clasi�care bazat�a pe cei k (k=1, 3, 5, 7) cei mai apropiat�i

vecini (kNN - k Nearest Neighbors).

S�a presupunem c�a baza de texturi de evaluare creat�a anterior a fost deja indexat�a, ��sierul de

cont�inut a bazei de imagini (IDC) este c:nbazedatentexturi.mat �si ��sierul de descriptori ai bazeide imagini (IDD) este c:ndescriptorintexturi test.mat. Evaluarea performant�elor descriptorului

folosit se face prin:

[precizie,recunoastere,reamintire,pozitie]=iris_eval([],20)

Pozit�ia medie a primei imagini reg�asite corect este dat�a �n variabila pozitie (valoarea ideal�a

este 2, pentru c�a pe pozit�ia 1 este plasat�a imaginea exemplu de c�autat). Probabilit�at�ile de

recunoa�stere folosind o clasi�care prin regula celor k vecini cei mai apropiat�i, pentru k=1, 3, 5,

7 sunt date �n variabila recunoastere. Curba precizie - reamintire este compus�a dintr-un num�ar

de puncte de m�asur�a egal cu num�arul de imagini din �ecare clas�a (�n cazul exemplului ales, 20).

M�asur�arile se fac pentru rate de reamintire �xate, de valori cresc�atoare �ntre 1/20 �si 1. Curba

precizie - reamintire se obt�ine a��sand rata de reamintire pe abscis�a �si precizia pe ordonat�a:

figure(), plot(reamintire,precizie)

98

8.4 Utilizarea expert�a a sistemului IRIS

8.4.1 Structura ��sierului descriptorilor bazei de imagini (IDD)

Fi�sierul ce cont�ine descriptorii bazei de imagini este un ��sier de date de tip Matlab (.mat) �si

poate cont�ine pan�a la patru variabile cu nume impus. Dintre cele patru variabile posibile, una

singur�a este obligatorie, �si anume variabila descriptor. Aceasta este o matrice al c�arei num�ar

de linii este egal cu num�arul de imagini din baza de imagini ce a fost indexat�a �si al c�arei num�ar

de coloane este egal cu num�arul de componente al descriptorului �ec�arei imagini. In acela�si

��sier de descriptori ai bazei de imagini se mai pot g�asi variabilele de tip scalar (matrice cu o

linie �si o coloan�a) descriptor type (ce precizeaz�a tipul descriptorului folosit, conform valorilor

speci�cate �n tabelul 8.1), descriptor param (ce cont�ine un vector de valori ce pot � folosite

ca parametri speci�cat�i de utilizator �n momentul calcul�arii descriptorului; structura acestui

vector este detaliat�a �n tabelul 8.2) �si descriptor metric (ce precizeaz�a tipul de metric�a ce

va � utilizat�a �n momentul compar�arii descriptorilor unor imagini diferite, conform valorilor

speci�cate �n tabelul 8.3).

Tabel 8.1: Tipuri de descriptori de imagini

Valoarea variabilei Tipul descriptorului

descriptor type

1 Culoarea medie din imagine, �n reprezentare RGB

2 Histograma culorilor din imagine, �n reprezentare RGB

3 Histograma nivelelor de gri din imagine

4 Saturat�ia medie a culorilor din imagine

5 Momentele statisice de cromaticitate de tip Paschos

6 Parametri derivat�i din matricile de izosegmente

100 Histograma culorilor din imagine, cuantizate adaptiv

(palet�a de culori)

101 Valoarea medie a indicelui de simetrie spat�ial�a a culorilor

8.4.2 Structura ��sierului de cont�inut al bazei de imagini (IDC)

Fi�sierul de cont�inut al bazei de imagini (IDC) este un ��sier de date Matlab (.mat) ce cont�ine

o unic�a variabil�a, database files. Aceast�a variabil�a este o matrice al c�arei num�ar de linii

este egal cu num�arul de imagini din baza de imagini �si al c�arei num�ar de coloane este �xat

la 100 (prin variabila max name length ce apare �n funct�ia de indexare a bazei de imagini,

iris index database). Fiecare linie a matricii este un �sir de caractere ce cont�ine numele

complet al unui ��sier imagine, completat cu spat�ii albe pan�a la limita de 100 de caractere

(aceste spat�ii albe trebuie �nl�aturate �n momentul citirii imaginilor propriu-zise).

99

8.4.3 Ad�augarea unui nou descriptor de imagini

Fiec�arui nou descriptor de imagini i se asociaz�a un num�ar descriptor type, un scalar diferit

de cele existente �n tabelul 8.1. Odat�a ce scalarul este stabilit, �n funct�ia iris index image

se adaug�a o clauz�a case cu valoarea scalarului respectiv �n interiorul instruct�iunii switch

dup�a variabila tip. In clauza case astfel introdus�a se trateaz�a mai �ntai problema eventualilor

parametri (speci�cat�i la apelul funct�iei iris index image prin variabila param) �si apoi se poate

lansa calculul efectiv al descriptorului prin apelul unei funct�ii externe, de tipul

out=nou_parametru(r,g,b, ....)

Rezultatul calcului, out, trebuie s�a �e un vector linie; matricile r, g, b de componente RGB

ale imaginii prelucrate au componentele normalizate �n intervalul [0,1].

8.4.4 Ad�augarea unei noi metrici

Fiec�arei noi metrici i se asociaz�a un num�ar distance type, un scalar diferit de cele existente

�n tabelul 8.3. Odat�a ce scalarul este stabilit, �n funct�ia iris distance se adaug�a o clauz�a

case cu valoarea scalarului respectiv �n interiorul instruct�iunii switch dup�a variabila tip. In

clauza case astfel introdus�a se trateaz�a mai �ntai problema eventualilor parametri (speci�cat�i

la apelul funct�iei iris distance prin variabila param) �si apoi se poate lansa calculul efectiv al

distant�ei �ntre cei doi vectori linie, index1 �si index2.

8.5 Funct�iile sistemului IRIS

8.5.1 iris

Lanseaz�a interfat�a de c�autare a imaginilor �si de navigat�ie �n baze de imagini. La apelul complet

al funct�iei se precizeaz�a num�arul de linii �si de coloane pe care vor � organizate imaginile

prezentate �n fereastra de a��sare (�n mod implicit a��sarea se face pe dou�a linii �si patru coloane).

iris(displayed_lines,displayed_columns)

Apeleaz�a direct funct�iile: iris index image, iris distance

Folose�ste ��sierul de date: iris logo.mat

100

8.5.2 iris distance

Calculeaz�a distant�a �ntre doi descriptori (vectori de caracteristici) ai imaginilor. Funct�ia este

apelat�a din funct�ia iris �si nu trebuie folosit�a direct.

out=iris_distance(index1,index2,tip,param)

Variabilele index1 �si index2 sunt cei doi descriptori �ntre care se calculeaz�a distant�a. Decripto-

rii sunt vectori linie ce trebuie s�a aib�a acela�si num�ar de componente (atent�ie, funct�ia nu veri�c�a

dimensiunile parametrilor de apel). Variabila tip precizeaz�a tipul de metric�a utilizat�a, conform

valorilor numerice precizate �n tabelul 8.3 (valoarea implicit�a este 2, deci se va folosi metrica

L2). Variabila param furnizeaz�a eventuali parametri suplimentari necesari metricii (de exmplu

pentru metrica de comparare a histogramelor color construite prin cuantizare adaptiv�a), forma

�si component�a acestui vector sunt detaliate (pentru diferit�i descriptori) �n tabelul 8.2.

8.5.3 iris do samples

Construie�ste o clas�a de imagini de cardinalitate �si dimensiuni impuse, prin decuparea acestora

din �ecare imagine disponibil�a �ntr-un director speci�cat. Funct�ia este folosit�a pentru generarea

de baze de imagini clasi�cate. Funct�ia este apelat�a prin:

iris_do_samples(source,destination,sample_h,sample_w,N)

Variabila source este un �sir de caractere corespunzand numelui unui director (inclusiv semnul nla sfar�situl �sirului) sau al unei imagini. Dac�a sursa este un director, prelucrarea se aplic�a tuturor

��sierelor imagine ce se a �a �n directorul respectiv. Dac�a sursa este un ��sier imagine, acesta

este singurul c�aruia i se aplic�a prelucrarea. Dac�a variabila de intrare source este o variabil�a

vid�a (source==[ ]), este deschis�a o fereastr�a de alegere a numelui directorului surs�a, prin

select�ionarea unui ��sier din acesta. Variabila destination este un �sir de caractere corespunzand

numelui unui director (inclusiv semnul n la sfar�situl �sirului) �n care sunt �nregistrate imaginile

obt�inute �n urma procesului de decupare a imaginii (sau imaginilor) surs�a. Numele noilor

imagini are ca pre�x numele imaginii surs�a, urmat de terminat�iile numerice 1, 2, ..., N (unde

N este variabila de intrare ce precizeaz�a num�arul de imagini ce trebuie decupate; valoarea

implicit�a este 10). Dimensiunea imaginilor decupate este de sample h linii �si sample w coloane

(valori implicite 64); atent�ie, nu se face veri�carea compatibilit�at�ii dimensiunilor port�iunilor

decupate cu dimensiunile imaginii surs�a. Pozit�ia din imaginea surs�a de la care se face decuparea

este aleas�a �n mod aleator.

101

8.5.4 iris eval

Funct�ia de evaluare a performant�elor de indexare �si reg�asire a imaginilor este apelat�a prin:

[precizie,recunoastere,reamintire,pozitie]=iris_eval(dat,C)

Variabila de apel dat este o matrice de tip descriptor de baz�a de imagini; �ecare linie a matricii

este un vector de descriere a cate unei imagini din baza de imagini. Dac�a dat este o matrice

vid�a (dat==[ ]), numele ��sierului de descriere a bazei de imagini (IDD) va � precizat printr-

o fereastr�a de select�ie. Variabila C reprezint�a num�arul de imagini din �ecare clas�a (valoare

implicit�a 10). Variabilele returnate de funct�ie sunt precizia, procentele de recunoa�stere (conform

regulii de clasi�care a celor k vecini cei mai apropiat�i), rata de reamintire �si pozit�ia medie a

primei imagini corecte reg�asite.

8.5.5 iris get txtdata

Aceast�a funct�ie permite importul unor vectori de descriere a imaginilor dintr-o baz�a de imagini

ce sunt stocat�i sub form�a text. In ��sierul text corespunz�ator, componentele vectorilor de

descriere a imaginilor sunt stocate cate una pe linie, �ecare linie �ind terminat�a cu un caracter

CR/LF. DE exemplu, un asemenea ��sier se poate obt�ine dintr-un program C �n care valorile

componentelor vectorilor de descriere a imaginilor sunt a��sate cu instruct�iuni printf("%fnn",...) �si redirect�ionarea ie�sirii programului c�atre un ��sier (de exemplu prin calculeaza descriptori

>> �sier.txt). Apelul funct�iei se face prin:

[out,out_norm]=iris_get_txtdata(filename,descriptor_size)

Variabila filename este un �sir de caractere ce reprezint�a numele complet al ��sierului text

�n care se a �a valorile descriptorilor. Dac�a filename este o variabil�a vid�a (filename==[ ]),

atunci numele ��sierului text �n care se g�asesc valorile descriptorilor imaginilor este precizat

printr-o fereastr�a de select�ie. Variabila descriptor size reprezint�a num�arul de componente

al vectorului de descriere a �ec�arei imagini (valoarea implicit�a este 1). Variabilele returnate

de funct�ie sunt matrici de descriptori ai bazei de imagini (num�arul de linii egal cu num�arul de

imagini din baz�a �si num�arul de coloane egal cu descriptor size); out reprezint�a matricea de

descriptori a�sa cum apar �n ��sierul text, iar out norm este o variant�a normalizat�a a matricii de

descriptori (�ecare component�a a �ec�arui vector descriptor este normalizat�a la valoarea maxim�a

a componentei respective pentru �ntreaga baz�a de imagini).

102

8.5.6 iris index database

Funct�ia permite indexarea unei baze de imagini, stocat�a �ntr-un singur director, �si f�ar�a subdi-

rectoare. Apelul funct�iei se face prin:

iris_index_database(filenames_matfile,descriptor_matfile,descriptor_type,

descriptor_param,descriptor_metric)

Variabilele filenames matfile �si descriptor matfile sunt �siruri de caractere (deci, conform

sintaxei Matlab, trebuie �ncadrate de semne ') ce reprezint�a numele complet al unor ��siere (f�ar�a

extensie) �n care urmeaz�a s�a se stocheze cont�inutul bazei de imagini (IDC) �si respectiv descripto-

rii bazei de imagini (IDD). Directorul �n care se g�ase�ste baza de imagini ce urmeaz�a a � indexat�a

se precizeaz�a �ntr-o fereastr�a de select�ie �si navigat�ie, prin select�ionarea unui ��sier ce cont�ine

o imagine din respectiva baz�a de imagini. Variabilele descriptor type, descriptor param

�si descriptor metric precizeaz�a tipul descriptorului de imagini folosit la indexare, eventualii

parametri suplimentari �si o eventual�a metric�a speci�c�a ce urmeaz�a a � folosit�a la compararea

descriptorilor de acest tip. Dac�a tipul descriptorului nu este precizat printr-un num�ar cores-

punz�ator, este lansat�a o fereastr�a de select�ie a unuia dintre descriptorii standard ai sistemului

IRIS. Dac�a vectorul de parametri pentru descriptor nu este precizat, atunci acesta este conside-

rat un vector vid ([ ]) �si sunt folosite valorile implicite ale parametrilor (vezi tabelul 8.2). Dac�a

nu se precizeaz�a o metric�a speci�c�a, se va folosi metrica implicit�a, L2. Atent�ie, nu se veri�c�a

relevnt�a codurilor metricilor �si descriptorilor.

Apeleaz�a direct funct�iile: iris distance, iris index image

8.5.7 iris index image

Funct�ia permite calculul unui descriptor pentru o unic�a imagine; funct�ia nu trebuie folosit�a

independent, ci prin apelarea funct�iei iris index database. Apelul funct�iei se face prin:

out=iris_index_image(filename,tip,param)

Variabila filename este un �sir de caractere ce corespunde numelui complet al unui ��sier de

imagine, �n unul din formatele acceptate de Matlab. Variabila tip precizeaz�a tipul de descriptor

dorit (conform codurilor din tabelul 8.2); dac�a variabila tip nu exist�a, este considerat�a valoarea

implicit�a 1 (�si deci se calculeaz�a culoarea medie �n reprezentare RGB). Variabila param cont�ine

vectorul de parametri folosit�i la calculul descriptorului; dac�a param nu este precizat, atunci

acesta este considerat un vector vid ([ ]) �si sunt folosite valorile implicite ale parametrilor (vezi

tabelul 8.2).

Apeleaz�a funct�iile: iris ldp matrix, iris ldp param, iris paschos, iris symindex

Utilizeaz�a ��sierul: fuzlut.mat

103

8.5.8 iris ldp matrix

Calculeaz�a matricea de izosegmente fuzzy pe direct�ie vertical�a (pe coloane); apelul funct�iei se

face prin:

out=iris_ldp_matrix(in,prag,fuz_width);

Variabila in este o matrice ce cont�ine regiunea de imagine pentru care se calculeaz�a matricea

de izosegmente. Variabila prag reprezint�a pragul de acceptabilitate al unui izosegment fuzzy (1

pentru a obt�ine izosegmente clasice, valoare implicit�a). Variabila fuz width de�ne�ste l�argimea

funct�iei triunghiulare de calcul a similarit�at�ii scalarilor din matricea in (valoare implicit�a 3).

8.5.9 iris ldp param

Funct�ia calculeaz�a parametrii statistici de descriere a unei matrici de izosegmente; apelul s�au

se face prin:

out=iris_ldp_param(in,type)

Variabila in este o matrice de izosegmente, calculat�a cu funct�ia iris ldp matrix. Parametrul

tip permite alegerea parametrilor de descriere folosit�i: descriptorii Galloway, Chu �si Dasarathy

(tip=1) sau cele trei entropii normalizate ale distribut�iei izosegmentelor �si proport�ia plajelor

(tip=3, valoare implicit�a).

8.5.10 iris paschos

Funct�ia calculeaz�a cele 5 momente statistice ale distribut�iei de cromaticitate xy �si ale subgra-

fului acesteia; apelul funct�iei se face prin:

out=iris_paschos(r,g,b,bins)

Variabilele r, g �si b sunt cele trei plane de culoare RGB ale unei imagini color (atent�ie, nu se

face veri�carea identit�at�ii dimensiunilor celor trei matrici). Variabila bins (valoare implicit�a

100) reprezint�a num�arul de intervale de cuantizare ale celor dou�a componente ale spat�iului de

cromaticitate xy.

104

8.5.11 iris probe

Funct�ia determin�a parametrii necesari interfet�ei gra�ce IRIS �si se apeleaz�a prin:

iris_probe

Parametrii determinat�i sunt �nregistrat�i �n ��sierul de date iris logo.mat.

8.5.12 iris symindex

Funct�ia calculeaz�a indicele de simetrie a distribut�iei spat�iale a culorilor �si se apeleaz�a prin:

out=iris_symindex(temp)

Variabila temp este o matrice p�atrat�a, de dimensiune impar�a, ce cont�ine gradele de similaritate

�n raport cu pixelul central ale pixelilor corespunz�atori.

105

Tabel 8.2: Tipuri de parametri pentru descriptorii de imagini

Valoarea Structura vectorului Semni�cat�ia parametrilor

variabilei de parametri

descriptor type descriptor param

2 [bins] bins reprezint�a num�arul de intervale de cuantizare

liniar�a uniform�a a �ec�arei componente de culoare

RGB; valoarea implicit�a este 6.

3 [bins] bins reprezint�a num�arul de intervale de cuantizare

liniar�a uniform�a a nivelelor de gri;

valoarea implicit�a este 16.

5 [bins] bins reprezint�a num�arul de intervale de cuantizare

liniar�a uniform�a a celor dou�a componente de

cromaticitate xy; valoarea implicit�a este 100.

6 [bins type levels] bins reprezint�a num�arul de intervale de cuantizare

liniar�a uniform�a a nivelelor de gri;

valoarea implicit�a este 16.

type este un selector pentru tipul de parametri

extra�si din matricea de izosegmente;

valoarea implicit�a este 3.

levels este num�arul nivelelor de rezolut�ie fuzzy

folosite; valoarea implicit�a este 1

(ceea ce corespunde cazului net).

100 [nb sigma] nb este num�arul de culori select�ionate �n paleta de

culoare prin cuantizare adaptiv�a;

valoarea sa implicit�a este 8.

sigma este dispersia folosit�a �n funct�ia de calcul a

similarit�at�ii �ntre culori �si reprezint�a similaritatea

a dou�a culori separate de o distant��a euclidian�a unitar�a;

valoarea sa implicit�a este 0.5.

101 [D] D este jum�atatea dimensiunii vecin�at�at�ii de calcul a

indicelui de simetrie spat�ial�a a culorilor (de exemplu

1 pentru o vecin�atate centrat�a 3 x 3);

valoarea sa implicit�a este 3.

106

Tabel 8.3: Tipuri de metrici

Valoarea variabilei Metrica folosit�a

descriptor metric

1 L1

2 L2

inf Linf

3 distant��a �ntre histograme de culoare realizate

cu cuantizare adaptiv�a (palete de culoare)

107

Anexa A

Codurile funct�iilor sistemului IRIS

A.1 iris

function iris(displayed_lines,displayed_columns)

if (exist('displayed_lines','var')~=1)

displayed_lines=2;

end

if (exist('displayed_columns','var')~=1)

displayed_columns=4;

end

load iris_logo

if exist('iris_logo','var')

figure,imagesc(iris_logo), axis off

clear iris_logo

pause(2)

close all

else

disp('IRIS - Image Retrieval and Indexing System by Constantin VERTAN

Copyright (c) 2001');

pause(2)

end

showroom_handle=figure(1);

external_query_handle=2;

displayed_images=displayed_lines*displayed_columns;

108

[filenames_matfile,filenames_pathname]=uigetfile('*mat',

'Database contents filename');

filenames_matfile=[filenames_pathname filenames_matfile];

load(filenames_matfile)

database_files=lower(database_files);

database_size=size(database_files,1);

displayed_pos=1:database_size;

[descriptor_matfile,descriptor_pathname]=uigetfile('*mat',

'Image descriptors filename');

descriptor_matfile=[descriptor_pathname descriptor_matfile];

load(descriptor_matfile)

if (exist('descriptor_type','var')~=1)

descriptor_type=inf;

end

if (exist('descriptor_param','var')~=1)

descriptor_param=[];

end

if (exist('descriptor_metric','var')~=1)

descriptor_metric=2;

end

figure(showroom_handle)

for i=1:displayed_images,

filename=deblank(database_files(displayed_pos(i),:));

im=imread(filename);

subplot(displayed_lines,displayed_columns,i),imagesc(im);

end

choice=1;

while (choice~=7)

choice=menu('What U wanna do ?','Shuffle @','Query','External query',

'Next >>','Previous <<',...

'Image Info','Bye !');

switch (choice)

case 1

%Shuffle

figure(external_query_handle),close(external_query_handle)

[dummy,displayed_pos]=sort(rand(1,database_size));

clear dummy

figure(showroom_handle)

109

for i=1:displayed_images,

filename=deblank(database_files(displayed_pos(i),:));

im=imread(filename);

subplot(displayed_lines,displayed_columns,i),imagesc(im);

end

case 2

% Query

figure(external_query_handle),close(external_query_handle)

figure(showroom_handle)

click_type=1;

subplot_handle=[];

while ((click_type~=0)|(isempty(subplot_handle)))

click_type=waitforbuttonpress;

if (click_type==0)

subplot_handle=fix(overobj('axes'));

end

subplot_handle=round((subplot_handle-subplot_bias)/subplot_scale);

filename=deblank(database_files(displayed_pos(subplot_handle),:));

im=imread(filename);

subplot(displayed_lines,displayed_columns,subplot_handle),

imagesc(bitcmp(im,8));

pause(0.1)

end

query_descriptor=descriptor(displayed_pos(subplot_handle),:);

for i=1:database_size

dist(i)=iris_distance(query_descriptor,descriptor(i,:),

descriptor_metric);

end

[dummy,displayed_pos]=sort(dist);

figure(showroom_handle)

for i=1:displayed_images,

filename=deblank(database_files(displayed_pos(i),:));

im=imread(filename);

subplot(displayed_lines,displayed_columns,i),imagesc(im);

end

case 3

% External query

% inactive if current descriptor is composite

if (~isinf(descriptor_type))

[query_filename,query_pathname]=uigetfile('**','Query image');

query_filename=lower([query_pathname query_filename]);

im=imread(query_filename);

110

figure(external_query_handle),imagesc(im),axis off

query_descriptor=iris_index_image(query_filename,descriptor_type,

descriptor_param);

for i=1:database_size

dist(i)=iris_distance(query_descriptor,descriptor(i,:),

descriptor_metric);

end

[dummy,displayed_pos]=sort(dist);

figure(showroom_handle)

for i=1:displayed_images,

filename=deblank(database_files(displayed_pos(i),:));

im=imread(filename);

subplot(displayed_lines,displayed_columns,i),imagesc(im);

end

else

msgbox('Cannot do external querries for composite or unknown image

descriptors !','IRIS Warning','warn','modal');

end

case 4

% Next

figure(showroom_handle)

dummy=displayed_pos(1:displayed_images);

displayed_pos(1:database_size-displayed_images)=

displayed_pos(displayed_images+1:database_size);

displayed_pos(database_size-displayed_images+1:database_size)=dummy;

clear dummy

for i=1:displayed_images,

filename=deblank(database_files(displayed_pos(i),:));

im=imread(filename);

subplot(displayed_lines,displayed_columns,i),imagesc(im);

end

case 5

% Previous

figure(showroom_handle)

dummy=displayed_pos(database_size-displayed_images+1:database_size);

displayed_pos(displayed_images+1:database_size)=

displayed_pos(1:database_size-displayed_images);

displayed_pos(1:displayed_images)=dummy;

clear dummy

for i=1:displayed_images,

filename=deblank(database_files(displayed_pos(i),:));

im=imread(filename);

111

subplot(displayed_lines,displayed_columns,i),imagesc(im);

end

case 6

% Image info

figure(external_query_handle),close(external_query_handle)

figure(showroom_handle)

click_type=1;

subplot_handle=[];

while ((click_type~=0)|(isempty(subplot_handle)))

click_type=waitforbuttonpress;

if (click_type==0)

subplot_handle=fix(overobj('axes'));

end

subplot_handle=(subplot_handle-subplot_bias)/subplot_scale;

end

query_descriptor=descriptor(displayed_pos(subplot_handle),:);

query_filename=database_files(displayed_pos(subplot_handle),:);

msgbox([query_filename],'IRIS Info','none','modal');

case 7

% equivalent otherwise, Bye !

close all

end

end

clear all

A.2 iris distance

function out=iris_distance(index1,index2,tip,param)

if (exist('param')==0)

param=[];

end

if (exist('tip')==0)

tip=2;

end

switch tip

case 1

112

% distance L1

out=sum(abs(index1-index2));

case 2

% distance L2

out=(index1-index2)*((index1-index2)');

case inf

% distance Linf

out=max(abs(index1-index2));

case 3

switch (length(param))

case 1

nb_cul=param(1);

sigma=0.5;

case 2

nb_cul=param(1);

sigma=param(2);

otherwise

nb_cul=8;

sigma=0.5;

end

index1=reshape(index1,nb_cul,4);

index2=reshape(index2,nb_cul,4);

for i=1:nb_cul

d(i,:)=sum((index2(:,1:3)-ones(nb_cul,1)*index1(i,1:3)).^2,2);

end

a=exp(log(sigma)*d);

temp=abs(index1(:,4)-index2(:,4));

out=(temp')*a*temp;

otherwise

out=(index1-index2)*((index1-index2)');

end

A.3 iris do samples

function iris_do_samples(source,destination,sample_h,sample_w,N)

if (exist('N','var')==0)

N=10;

end

113

if (exist('sample_w','var')==0)

sample_w=64;

end

if (exist('sample_h','var')==0)

sample_h=64;

end

if (isempty(source))

[f,source]=uigetfile('*.*','Chose image database');

end

dos(['dir ' source ' /S /B /ON > d:\temp.txt']);

fid=fopen('d:\temp.txt','rb');

while 1

f=fgetl(fid);

if f==-1

break

end

img=imread(f);

[h,w,p]=size(img);

lf=length(f);

extension=f(lf-3:lf);

pos=findstr(f,'\');

basis=f(pos(length(pos))+1:lf-4);

count=0;

rh=fix((h-sample_h)*rand(1,N)+1);

rw=fix((w-sample_w)*rand(1,N)+1);

for i=1:N

output=img(rh(i):rh(i)+sample_h-1,rw(i):rw(i)+sample_w-1,:);

output_name=strcat(destination,strcat(basis,

strcat('_',strcat(int2str(count),extension))));

imwrite(output,gray(256),output_name,extension(2:4));

count=count+1;

end

clear extension basis lf h w p img pos rh rw output_name

disp(['OK pentru ' f]);

end

114

fclose(fid)

dos('del d:\temp.txt');

A.4 iris eval

function [precision,recognition,recall,fh]=iris_eval(dat,C)

if (isempty(dat))

[descriptor_matfile,descriptor_pathname]=uigetfile('*mat',

'Image descriptors filename');

descriptor_matfile=[descriptor_pathname descriptor_matfile];

load(descriptor_matfile)

dat=descriptor;

clear descriptor

end

dat=dat';

if ~exist('C','var')

C = 10;

end

[Length Nb_vectors]=size(dat);

for pos=1:Nb_vectors

ind_class=floor((pos-1)/C);

lim_inf=ind_class*C+1;

lim_sup=lim_inf+C-1;

[valori,pozitii]=sort(sum((dat-dat(:,pos)*ones(1,Nb_vectors)).^2,1));

vect=find(pozitii>=lim_inf & pozitii<=lim_sup);

precision(pos,:)=(1:C)./vect;

first_hit(pos)=vect(2);

prec1=length(find(pozitii(2:2)>=lim_inf & pozitii(2:2)<=lim_sup));

prec3=length(find(pozitii(2:4)>=lim_inf & pozitii(2:4)<=lim_sup));

prec5=length(find(pozitii(2:6)>=lim_inf & pozitii(2:6)<=lim_sup));

prec7=length(find(pozitii(2:8)>=lim_inf & pozitii(2:8)<=lim_sup));

knn(pos,:)=[prec1 prec3 prec5 prec7];

end

115

precision=mean(precision);

recall = 1/C:(1/C):1;

for j=1:4

recognition(j)=length(find(knn(:,j)>=j))/Nb_vectors;

end

fh=mean(first_hit);

A.5 iris get txtdata

function [out,out_norm]=iris_get_txtdata(filename,descriptor_size)

if (exist('descriptor_size','var')==0)

descriptor_size=1;

end

if (isempty(filename))

[filename,filename_path]=uigetfile('**','Descriptor Textfile Name');

filename=[filename_path filename];

end

fid=fopen(filename);

count=1;

while 1

line = fgetl(fid);

if ~isstr(line), break, end

out(count)=str2double(line);

count=count+1;

end

fclose(fid);

database_size=(count-1)/descriptor_size;

out=reshape(out,descriptor_size,database_size);

out_norm=out./((max(out'))'*ones(1,database_size));

out=out';

out_norm=out_norm';

116

A.6 iris index database

function iris_index_database(filenames_matfile,descriptor_matfile,

descriptor_type,descriptor_param,descriptor_metric)

max_name_length=100;

if (exist('descriptor_param','var')==0)

descriptor_param=[];

end

if (exist('descriptor_type','var')==0)

descriptor_type=menu('Image Descriptor','Mean RGB','RGB Histo',

'Gray Histo','Mean Saturation','Paschos color moments',

'Runlength matrix param.');

end

if (exist('descriptor_metric','var')==0)

descriptor_metric=2;

end

[f,pathname]=uigetfile('*.*','Chose image database');

dos(['dir ' pathname '*.* /S /B /ON > d:\temp1.txt']);

fid=fopen('d:\temp1.txt','rb');

database_files=[];

descriptor=[];

while 1

f=fgetl(fid);

if f==-1

break

end

database_files=[database_files; f blanks(max_name_length-size(f,2))];

descriptor=[descriptor;

iris_index_image(f,descriptor_type,descriptor_param)];

disp(['OK pentru ' f]);

end

fclose(fid)

save(filenames_matfile,'database_files')

save(descriptor_matfile,'descriptor','descriptor_type','descriptor_param')

dos('del d:\temp1.txt');

117

A.7 iris index image

function out=iris_index_image(filename,tip,param)

if (exist('tip','var')==0)

tip=1;

end

if (exist('param','var')==0)

param=[];

end

x=imread(filename);

r=(double(x(:,:,1))-1)/255;

g=(double(x(:,:,2))-1)/255;

b=(double(x(:,:,3))-1)/255;

[h,w]=size(r);

switch tip

case 1

out=mean([r(:) g(:) b(:)]);

case 2

if (max(size(param))==1);

bins=param;

else

bins=6;

end

y=fix(r*bins)+bins*fix(g*bins)+bins*bins*fix(b*bins)+1;

out=hist(y(:),bins*bins*bins)/(h*w);

case 3

y=[r(:) g(:) b(:)]*[0.3;0.6;0.1];

if (length(param));

bins=param(1);

else

bins=16;

end

out=hist(fix(y*bins),bins)/(h*w);

case 4

sat=mean(rgb2hsv([r(:) g(:) b(:)]));

out=sat(2);

case 5

if (isempty(param))

118

bins=100;

else

bins=param;

end

out=iris_paschos(r,g,b,bins);

case 6

switch (length(param))

case 3

bins=param(1);

tip=param(2);

levels=param(3);

case 2

bins=param(1);

tip=param(2);

levels=1;

case 1

bins=param(1);

tip=3;

levels=1;

otherwise

bins=16;

tip=3;

levels=1;

end

y=[r(:) g(:) b(:)]*[0.3;0.6;0.1];

y=fix(bins*y);

prag=1/levels:1/levels:1;

out=[];

for i=1:levels

ldp=iris_ldp_matrix(y,i/levels,round(bins/10));

out=[out iris_ldp_param(ldp,tip)];

ldp=iris_ldp_matrix(y',i/levels,round(bins/10));

out=[out iris_ldp_param(ldp,tip)];

end

case 100

if (isempty(param))

nb_cul=8;

else

nb_cul=param(1);

end

[ind,map]=rgb2ind(x,nb_cul);

119

h=hist(double(ind(:)),nb_cul);

dat=[map (h/sum(h))'];

out=(dat(:))';

case 101

y=fix(r*6)+6*fix(g*6)+36*fix(b*6)+1;

indexmap=zeros(h,w);

load fuzlut

if (isempty(param))

D=3;

else

D=param;

end

for i=1+D:h-D

for j=1+D:w-D

temp=y(i-D:i+D,j-D:j+D);

ttemp=fuzlut(temp(:),y(i,j));

ttemp=reshape(ttemp,2*D+1,2*D+1);

indexmap(i,j)=iris_symindex(ttemp);

end

end

out=mean(indexmap(:));

otherwise

out=mean([r(:) g(:) b(:)]);

end

A.8 iris ldp matrix

function out=iris_ldp_matrix(in,prag,fuz_width)

switch nargin

case 2

fuz_with=3;

otherwise

prag=1;

fuz_with=1;

end

in=fix(in);

[h,w]=size(in);

120

m=max(in(:));

out=zeros(m,h);

temp=zeros(size(in));

for i=1:m

temp=max(0,1-abs(in-i)./fuz_width);

for j=1:w

count=0;

medie=0;

minim=256;

maxim=0;

k=1;

while (k<=h)

tminim=min(minim,temp(k,j));

tmaxim=max(maxim,temp(k,j));

delta=tmaxim-tminim;

tmedie=(medie*count+temp(k,j))/(count+1);

if (min(tmedie,1-delta)>=prag)&(temp(k,j))

count=count+1;

medie=tmedie;

minim=tminim;

maxim=tmaxim;

k=k+1;

else

if (count)

out(i,count)=out(i,count)+1;

count=0;

medie=0;

minim=256;

maxim=0;

else

if (k+1<=h)

tmedie=(medie*count+temp(k,j)+temp(k+1,j))/(count+2);

tminim=min([minim temp(k,j) temp(k+1,j)]);

tmaxim=max([maxim temp(k,j) temp(k+1,j)]);

delta=tmaxim-tminim;

if (min(tmedie,1-delta)>=prag)&(temp(k,j))&(temp(k+1,j))

count=count+1;

medie=tmedie;

minim=tminim;

maxim=tmaxim;

121

end

end

k=k+1;

end

end

end

if (count)

out(i,count)=out(i,count)+1;

end

end % for j

end %for i

[i,j]=find(out);

out=out(1:max(i),1:max(j));

A.9 iris ldp param

function rez=iris_ldp_param(in,param)

if (exist('param','var')==0)

param=1;

end

[h,w]=size(in);

b=1:w;

a=1:h;

hist_a=in*b';

slp=sum(sum(in));

switch param

case 1

%Galloway

t_b=ones(h,1)*(b.^2);

rez(1)=sum(sum(in./t_b))/slp;

rez(2)=sum(sum(in.*t_b))/slp;

rez(3)=sum(sum(in').^2)/slp;

rez(4)=sum(sum(in).^2)/slp;

122

rez(5)=slp/sum(hist_a);

%Chu

t_a=(a.^2)'*ones(1,w);

rez(6)=sum(sum(in./t_a))/slp;

rez(7)=sum(sum(in.*t_a))/slp;

%Dasarathy

rez(8)=sum(sum(in.*(t_b./t_a)))/slp;

rez(9)=sum(sum(in.*(t_b.*t_a)))/slp;

rez(10)=sum(sum(in.*(t_a./t_b)))/slp;

rez(11)=sum(sum(in./(t_a.*t_b)))/slp;

case 2

pa=sum(in/slp,2);

pb=sum(in/slp,1);

la=pa;

p=find(pa==0);

la(p)=ones(size(p));

ha=-sum(pa.*log(la))/log(h);

lb=pb;

p=find(lb==0);

lb(p)=ones(size(p));

hb=-sum(pb.*log(lb))/log(w);

laa=hist_a/sum(hist_a);

p=find(laa==0);

laa(p)=ones(size(p));

haa=-sum(hist_a.*log(laa)/sum(hist_a))/log(h);

lab=in/slp;

p=find(lab==0);

lab(p)=ones(size(p));

hab=-sum(sum(in.*log(lab)/slp))/log(h*w);

rez(1)=slp/sum(hist_a);

rez(2)=hb;

rez(3)=haa-ha;

rez(4)=hab;

otherwise

pa=sum(in/slp,2);

pb=sum(in/slp,1);

123

la=pa;

p=find(pa==0);

la(p)=ones(size(p));

ha=-sum(pa.*log(la))/log(h);

lb=pb;

p=find(lb==0);

lb(p)=ones(size(p));

hb=-sum(pb.*log(lb))/log(w);

laa=hist_a/sum(hist_a);

p=find(laa==0);

laa(p)=ones(size(p));

haa=-sum(hist_a.*log(laa)/sum(hist_a))/log(h);

rez(1)=slp/sum(hist_a);

rez(2)=hb;

rez(3)=haa-ha;

end

A.10 iris paschos

function out=iris_paschos(r,g,b,bins)

if (exist('bins','var')==0)

bins=100;

end

[h,w]=size(r);

temp=[r(:) g(:) b(:)]*

[0.607 0.299 0;0.174 0.587 0.114;0.2 0.114 1.111];

suma=sum(temp');

x=zeros(size(suma));

pos=find(suma);

x(pos)=temp(pos,1)./suma(pos)';

y=zeros(size(suma));

y(pos)=temp(pos,2)./suma(pos)';

x=reshape(fix(bins*x),h,w)+1;

y=reshape(fix(bins*y),h,w)+1;

124

clear temp suma pos r g b

d=zeros(bins);

for i=1:h

for j=1:w

d(x(i,j),y(i,j))=d(x(i,j),y(i,j))+1;

end

end

pos=find(d);

t=zeros(bins);

t(pos)=ones(size(pos));

h=bins;w=bins;

out=zeros(1,10);

out(1)=sum((1:w).*sum(t));

out(6)=sum((1:w).*sum(d));

out(2)=sum((1:h).*sum(t'));

out(7)=sum((1:h).*sum(d'));

out(4)=sum(((1:w).^2).*sum(t));

out(9)=sum(((1:w).^2).*sum(d));

out(5)=sum(((1:h).^2).*sum(t'));

out(10)=sum(((1:h).^2).*sum(d'));

for i=1:h

for j=1:w

out(3)=out(3)+i*j*t(i,j);

out(8)=out(3)+i*j*d(i,j);

end

end

A.11 iris symindex

function [out]=iris_symindex(temp)

[h,w]=size(temp);

D=fix(h/2);

s(1)=sum(sum(temp(1:D+1,1:D+1)));

s(2)=sum(sum(temp(1:D+1,D+1:2*D+1)));

s(3)=sum(sum(temp(D+1:2*D+1,1:D+1)));

s(3)=sum(sum(temp(D+1:2*D+1,D+1:2*D+1)));

125

s(5)=0;

for i=1:D+1

s(5)=s(5)+sum(sum(temp(i,i:2*D+2-i)));

end

s(6)=0;

for i=D+1:2*D+1

s(6)=s(6)+sum(sum(temp(i,2*D+2-i:i)));

end

s(7)=0;

for j=1:D+1

s(7)=s(7)+sum(sum(temp(j:2*D+2-i,j)));

end

s(8)=0;

for j=D+1:2*D+1

s(8)=s(8)+sum(sum(temp(2*D+2-j:j,j)));

end

out=(max(s)-min(s))/mean(s);

126

Anexa B

Mic dict�ionar de acronime

ABC American Broadcasting Corporation

APRP Adaptive Pattern Recognition Processing

AR AutoRegressive

ARMA AutoRegressive Moving Average

BBC British Broadcasting Corporation

CA Competitive Agglomeration

CANDID Comparison Algorithm for Navigating Image Databases

CBIR Content-Based Image Retrieval

CCV Color Coherence Vector

CIE Comit�e International de l'Eclairage

CMC Color Measurement Commitee

CNN Cable News Network

CNN Cellular Neural Network

CSS Curvature Scale Space

CST Color Shape Texture

DBMS DataBase Management System

DFDM Di�erential Feature Distribution Maps

FCM Fuzzy C-Means

127

FFT Fast Fourier Transform

FIDS Flexible Image Database System

GIF Graphics Interchange Format

HSI Hue Saturation Intensity

HSL Hue Saturation Luminance

HSV Hue Saturation Value

HTML HyperText Markup Language

HVC Hue Value Chroma

HVS Human Visual System

HVSS Human Visual SubSpace

IBM Intenational Bussiness Machines

IBM Intercontinental Ballistic Missile

IDC Image Database Content

IDD Image Database Description

INRIA Institut National de Recherche en Informatique et Automatique

IRIS Image Retrieval and Indexing System

JPEG Joint Photographic Experts Group

JND Just Noticeable Di�erence/ Di�erent

KL Karhunen-Loeve

KLT Karhunen-Loeve Transform

KNN K-Nearest Neighbors

LBP Local Binary Partition

LBP Local Binary Pattern

LCH Lightness Chroma Hue

LMS Least Mean Squares

LMS Long, Medium, Short visual cone cells

LSI Latent Semantic Indexing

128

LVD Logical Visual Display

MCRE Mean Chromaticity Error

MIT Massachussets Institute of Technology

MPEG Motion Picture Experts Group

MSE Mean Squared Error

NBC National Broadcasting Corporation

NCD Normalized Color Di�erence

NCRE Normalized Chromaticity Error

NMRR Normalized Mean Retrieval Rank

NMSE Normalized Mean Square Error

NTSC National Television System Commitee (aka Never Twice the Same Color)

PAL Phase Alternating Lines (aka Peace at Last)

PCM Possibilistic C-Means

PCM Pulse Code Modulation

PNG Portable Network Graphics

QBIC Query By Image Content

RGB Red Green Blue

RL Run-Length

SDK Software Development Kit

SMPTE Society of Motion Picture and Television Engineers

SQL Standard Query Language

UCS Uniform Chromaticity Scale

VIR Visual Information Retrieval

WWW World-Wide Web

129

Bibliogra�e

[1] D. Androutsos, K. N. Plataniotis, �si A. N. Venetsanopoulos. \Image retrieval using the

directional detail histogram". In I. K. Sethi �si R. C. Jain, editors, Storage and Retrieval

for Still Image and Video Databases VI, vol. SPIE 3312, pp. 129{139, 1998.

[2] D. Androutsos, K. N. Plataniotis, �si A. N. Venetsanopoulos. \Vector angular distance

measure for indexing and retrieval of color". In M. M. Yeung, B.-L. Yeo, �si C. A. Bouman,

editors, Storage and Retrieval for Still Image and Video Databases VII, vol. SPIE 3656,

pp. 129{139, 1999.

[3] A. Appas, A. M. darwish, A. El-Desouki, �si A. Shaheen. \Image indexing using composite

regional color channel features". In M. M. Yeung, B. Yeo, �si C. A. Bouman, editors,

Storage and Retrieval for Still Image and Video Databases VII, vol. SPIE 3656, pp. 492{

500, 1999.

[4] J. Bajon, M. Cattoen, �si L. Liang. \Identi�cation of multicoloured objects using a vision

module". In Proc. of the 6th RoViSeC, pp. 21{30, 1985.

[5] V. Barnett. \The Ordering of Multivariate Data". J. of. Royal Stat. Soc. A, 139(3):318{

354, 1976.

[6] M. Barni, A. W. Mussa, A. Mecocci, V. Cappellini, �si T. S. Durrani. \An Intelligent

Perception System for Food Quality Inspection Using Color Analysis". In Proc. of IEEE

Conference on Image Processing ICIP `95, vol. 1, pp. 450{453, Washington D.C., USA,

23-26 Oct. 1995.

[7] B. Barolo, I. Gagliardi, �si R. Schettini. \Using Color Distribution to E�ectively Query

ImageDatabases". In VIII European Signal Processing Conference EUSIPCO `96, Trieste,

Italy, 10-13 Sept. 1996.

[8] J. Berens, G. D. Finlayson, �si G. Qiu. \A Statistical Image of Colour Space". In Proc.

IEE Conf. Image Processing and its Applications IPA9, Dublin, Ireland, Jul. 1999.

[9] R. M. Boynton. \Eleven Colors That Are Almost Never Confused". Proc. SPIE: Human

Vision, Visual Processing and Digital Display, 1077:322{332, 1989.

[10] J. P. Braquelaire �si L. Brun. \Comparison and Optimization of Methods of Color Image

Quantization". IEEE Trans. on Image Processing, 6(7):1048{1052, Jul. 1997.

130

[11] T. Carron �si P. Lambert. \Fuzzy Color Edge Extraction by Inference Rules Quantita-

tive Study and Evaluation of Performances". In Proc. of IEEE Conference on Image

Processing ICIP `95, vol. 2, pp. 181{184, Washington D.C., USA, 23-26 Oct. 1995.

[12] T. Carron �si P. Lambert. \Symbolic fusion of Hue-Chroma-Intensity features for region

segmentation". In Proc. of IEEE Conference on Image Processing ICIP `96, vol. 2, pp.

971{974, Lausanne, Switzerland, 16-19 Sept. 1996.

[13] C. Carson, S. Belongie, H. Greenspan, �si J. Malik. \Blobworld: Image segmentation

using Expectation-Maximization and its application to image querying". IEEE Trans.

on Pattern Analysis and Machine Intelligence, 2001.

[14] K. R. Castleman. Digital Image Processing. Prentice Hall, Englewood Cli�s NJ, 1996.

[15] M. Celenk �si Y. Shao. \Rotation, translation and scaling invariant color image indexing".

In M. M. Yeung, B. Yeo, �si C. A. Bouman, editors, Storage and Retrieval for Still Image

and Video Databases VII, vol. SPIE 3656, pp. 623{630, 1999.

[16] F. A. Cheikh, B. Cramariuc, C. Reynaud, M. Quinghong, D. A. Badea, B. Hnich, M. Ga-

bbouj, P. Kerminen, T Makkinen, �si H. Jaakkola. \MUVIS: A system for content-based

indexing and retrieval in large image databases". In M. M. Yeung, B.-L. Yeo, �si C. A.

Bouman, editors, Storage and Retrieval for Still Image and Video Databases VII, vol.

SPIE 3656, pp. 98{106, 1999.

[17] J. Y. Chen, C. Bouman, �si J. Dalton. \Active browsing using similariy pyramids". In

M. M. Yeung, B. Yeo, �si C. A. Bouman, editors, Storage and Retrieval for Still Image

and Video Databases VII, vol. SPIE 3656, pp. 144{154, 1999.

[18] K. Chen, S. G. Demko, �si R. Xie. \Similarity-based retrieval of images using color his-

tograms". In M. M. Yeung, B. Yeo, �si C. A. Bouman, editors, Storage and Retrieval for

Still Image and Video Databases VII, vol. SPIE 3656, pp. 643{652, 1999.

[19] R. J. Chen �si B. C. Chieu. \Three-dimensional morphological pyramid and its application

to color image sequence coding". Signal Processing, 44:163{180, 1995.

[20] Y. Chen �si E. K. Wong. \Augmented image histogram for image and video similarity

search". In M. M. Yeung, B.-L. Yeo, �si C. A. Bouman, editors, Storage and Retrieval for

Still Image and Video Databases VII, vol. SPIE 3656, pp. 523{533, 1999.

[21] Y. S. Chen, H. Y. Hwang, �si B. T. Chen. \Color Image Analysis Using Fuzzy Set The-

ory". In Proc. of IEEE Conference on Image Processing ICIP `95, vol. 1, pp. 242{245,

Washington D.C., USA, 23-26 Oct. 1995.

[22] A. Chu, C. M. Sehgal, �si J. F. Greenleaf. \Use of Gray Level Distribution of Run Lengths

for Texture Analysis". Pattern Recognition Letters, 11:415{420, 1990.

[23] J. P. Cocquerez �si S. Philipp, editors. Analyse d`images: �ltrage et segmentation. Masson,

Paris, 1995.

131

[24] J. C. Dalton. \Visually Optimized Color Image Enhancement". Proc. SPIE: Perceiving,

Measuring and Using Color, 1250:177{188, 1990.

[25] B. R. Dasarathy �si E. B. Holder. \Image Characterization based on Joint Gray-level

Run-length Distributions". Pattern Recognition Letters, 12:497{502, 1991.

[26] B. Deknuydt, J. Smolders, L. Van Eycken, �si A. Oosterlinck. \Color space choice for

nearly reversible image compression". In P. Maragos, editor, Visual Communications and

Image Processing, vol. 1818 of Proc. SPIE, pp. 1300{1311. SPIE, 1992.

[27] A. del Bimbo. Visual Information Retrieval. Morgan Kaufmann, San Francisco, CA,

1999.

[28] P. Eggleston. \Asset Management and Image Overload: Handling 80 Billion Images a

Year". Advanced Imaging, pp. 12{16, Nov. 2000.

[29] H. Frigui �si R. Krishnapuram. \Clustering by Competitive Agglomeration". Pattern

Recognition, 30(7):1109{1119, 1997.

[30] 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. 233{238, Barcelona, Spain, 23-25 Apr. 1997.

[31] B. V. Funt �si G. D. Finlayson. \Color constant color indexing". IEEE Trans. on Pattern

Analysis and Machine Intelligence, 17(5):522{529, May 1995.

[32] M. M. Galloway. \Texture Analysis using Graylevel Runlengths". Computer, Graphics

and Image Processing, 4:172{179, 1975.

[33] C. G�azdaru �si C. Constantinescu. Indrumar pentru electroni�sti. Radio �si televiziune. Ed.

Tehnic�a, Bucure�sti, 1986.

[34] T. Gevers �si A. W. M. Smeulders. \A comparative study of several color models for

color image invariant retrieval". In First Inetrnational Workshop on Image Databases

and Multimedia Search, pp. 17{26, Amsterdam, Holland, 1996.

[35] T. Gevers �si A. W. M. Smeulders. \Content-based image retrieval by viewpoint-invariant

color indexing". Image and Vision Computing, 17:475{488, 1999.

[36] R. C. Gonzales �si R. E. Woods. Digital Image Processing. Addison Wesley, Reading MA,

1992.

[37] H. Grassmann. \On the theory of compound colors". Philosophical Magazine, Serial 4,

7:254{264, 1854.

[38] M. Gross. Visual Computing. Springer Verlag, Berlin, 1994.

[39] S. L. Guth. \Uni�ed model for human color perception and visual adaption". Proc. SPIE:

Human Vision, Visual Processing and Digital Display, 1077:370{390, 1989.

132

[40] J. Hafner, H. S. Sawhney, W. Equitz, M. Flickner, �si W. Niblack. \E�cient color histo-

gram indexing for quadratic form distance functions". IEEE Trans. on Pattern Analysis

and Machine Intelligence, 17(7):729{736, Jul. 1995.

[41] R. M. Haralick. \Statistical and Structural Approaches to Texture". Proc. of IEEE,

67(5):786{804, May 1979.

[42] R. M. Haralick �si L. G. Shapiro. \Glossary of computer vision terms". Pattern Recognition,

24(1):69{93, 1991.

[43] E. Hering. Outlines of a theory of the light sense. Harvard University Press, Cambridge

MA, 1964. Tradus�a de L. M. Hurvich �si D. Jameson. Publicat�a �n original �n 1920.

[44] J. Huang, S. R. Kumar, M. Mitra, �si W.-J. Zhu. \Spatial Color Indexing and Applica-

tions". In IEEE International Conference on Computer Vision ICCV `98, Bombay, India,

4-7 Jan. 1998.

[45] J. Huang, S. R. Kumar, M. Mitra, W.-J. Zhu, �si R. Zabih. \Image Indexing using Cor-

relograms". In Computer Vision and Pattern Recognition CVPR `97, San Juan, Puerto

Rico, 17-19 Jun. 1997.

[46] S. Itoh �si I. Matsuda. \Segmentation of Color Still Images Using Voronoi Diagrams".

In VIII European Signal Processing Conference EUSIPCO `96, vol. 3, pp. 1869{1872,

Trieste, Italy, 10-13 Sept. 1996.

[47] N. Jacobson �si W. Bender. \Strategies for selecting a �xed palette of colors". Proc. SPIE:

Human Vision, Visual Processing and Digital Display, 1077:333{342, 1989.

[48] B Jaehne, H. Haussecker, �si P. Geissler. Handbook of Computer Vision and Algorithms.

Academic Press, London, 1999.

[49] A.K. Jain. Fundamentals of Digital Image Processing. Prentice Hall Intl., Englewood

Cli�s NJ, 1989.

[50] A.K. Jain �si R. C. Dubes. Algorithms for Clustering Data. Prentice Hall Inc., Upper

Saddle River NJ, 1988.

[51] A.K. Jain, M. N. Murty, �si P. J. Flynn. \Data Clustering: A Review". ACM Computing

Surveys, 21(2):264{323, 1999.

[52] C. V. Jawahar �si A. K. Ray. \Fuzzy Statistics of Digital Images". IEEE Signal Processing

Letters, 3(8):225{227, Aug. 1996.

[53] B. Johansson. \A Survey on: Contents Based Search in Image Databases".

http://www.isy.liu.se/cvl/Projects/VISIT-bjojo/, 2000.

[54] M. Judd. \Response function for types of vision according to the Mueller theory". Journal

of Research of the National Bureau Standards, 42(1):1{16, 1949.

133

[55] M. S. Kankanhalli, B. M. Mehtre, �si J. K. Wu. \Cluster-based color matching for image

retrieval". Pattern Recognition, 29(4):701{708, Apr. 1996.

[56] L. M. Kaplan, R. Murenzi, �si K. R. Namuduri. \Fast texture database retrieval using

fractal feature". In I. K. Sethi �si R. C. Jain, editors, Storage and Retrieval for Still Image

and Video Databases VI, vol. SPIE 3312, pp. 162{174, 1998.

[57] 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. 562{565, Washington D.C.,

USA, 23-26 Oct. 1995.

[58] E. F. Kelley, B. F. Field, �si C. Fenimore. \Nonlinear Color Transformations in Real Time

Using a Video Supercomputer". In Proc. of IST and SID Color Imaging Conference:

Transforms and Transportability of Color, pp. 122{126, USA, 1993.

[59] J. R. Kender. \Saturation, hue, and normalized color; calculation, digitalization e�ects,

and use". Technical report, Carnegie-Mellon University, 1976.

[60] T. H. Kim �si D. S. Jeong. \Image indexing technique using entropy measures with

multilevel- multiresolution approach". In I. K. Sethi �si R. C. Jain, editors, Storage and

Retrieval for Still Image and Video Databases VI, vol. SPIE 3312, pp. 383{391, 1998.

[61] S. Krishnamachari, A. Yamada, M. Abdel-Motteleb, �si E Kasutani. \Multimedia Content

Filtering, Browsing and Matching using MPEG-7 Compact Color Descriptors". In R. La-

urini, editor, Advances in Visual Information Systems, vol. LNCS 1929, pp. 200{211,

Lyon, France, 2000. Springer Verlag.

[62] R. Krishnapuram �si J. M. Keller. \A Possibilistic Approach to Clustering". IEEE Trans.

on Fuzzy Systems, 1(2):98{110, May 1993.

[63] T. S. Lai, J. Tait, �si S. McDonald. \Image Browsing and Navigation using Hierarchcal

Classi�cation". In The Challenge of Image Retrieval { CIR9 The second UK Conference

on Image Retrieval, Newcastle upon Tyne, UK, 25-26 february 1999.

[64] T. S. Lai, J. Tait, �si S. McDonald. \A User-Centered Evaluation of Visual Search Methods

for CBIR". In The Challenge of Image Retrieval { CIR2000 The third UK Conference

on Image Retrieval, Brighton, UK, 4-5 May 2000.

[65] C. H. C. Leung �si H. H. S. Ip. \Benchmarking for Content-Based Visual Information

Search". In R. Laurini, editor, Advances in Visual Information Systems, vol. LNCS 1929,

pp. 442{456, Lyon, France, 2000. Springer Verlag.

[66] C. S. Li, J. R. Smith, V. Castelli, �si L. Bergman. \Comparing texture feature sets for

retrieving core images in petroleum applications". In M. M. Yeung, B.-L. Yeo, �si C. A.

Bouman, editors, Storage and Retrieval for Still Image and Video Databases VII, vol.

SPIE 3656, pp. 2{11, 1999.

134

[67] Y. W. Lim �si S. U. Lee. \On the color image segmentation algorithm based on the

thresholding and the Fuzzy C{means techniques". Pattern Recognition, 23(9):935{952,

1990.

[68] M. R. Luo. \Colour science". In S. J. Sangwine �si R. E. N. Horne, editors, The Colour

image processing handbook, pp. 26{66, London, UK, 1998. Chapman and Hall.

[69] M. R. Luo �si B. Rigg. \Chromaticity{discrimination ellipses for surface colours". Color

Research and Applications, 11(1):25{42, 1986.

[70] J. Malki, N. Boujemaa, C. Nastar, �si A. Winter. \Region Queries without Segmentation

for Image Retrieval by Content". In Visual 9, Amsterdam, The Netherlands, 1999.

[71] E. Martinez-Urlegas. \Spatiotemporal Multiplexing of Chromatic and Achromatic Infor-

mation in Human Vision". Proc. SPIE: Human Vision and Electronic Imaging: Models,

Methods and Applications, 1249:178{198, 1990.

[72] J. C. Maxwell. On the theory of three primary colors, pp. 445{450. Science Papers 1.

Cambridge University Press, 1890.

[73] R. McDonald. \Industrial fail/pass colour matching. Part I: Preparation of visual colour{

matching data". Journal of the Society of Dyers and Colourists, 96:372{376, 1980.

[74] B. M. Mehtre, M. S. Kankanhalli, A. D. Narasimhalu, �si G. C. Man. \Color matching

for image retrieval". Pattern Recognition Letters, 16:325{331, Mar. 1995.

[75] A. Mojsilovic, J. Hu, �si R. Safraneck. \Perceptually based Color Texture Features and

Metrics for Image Retrieval". In IEEE International Conference on Image Processing

ICIP `99, Tokio, Japon, Oct. 1999.

[76] A. Mojsilovic, J. Kovacevic, J. Hu, R. Safraneck, �si K. Ganapathy. \Matching and

Retrieval based on the Vocabulary and Grammar of Color Patterns". IEEE Trans. on

Image Processing, 9(1):38{54, Jan 2000.

[77] A. Mojsilovic, J. Kovacevic, J. Hu, R. Safraneck, �si K. Ganapathy. \The Vocabulary

and Grammar of Color Patterns". IEEE Trans. on Image Processing, 9(3):417{431, Mar

2000.

[78] E. Molto, N. Alexios, J. Blasco, �si J. Carrion. \A computer vision system for inspec-

ting citrus, peaches and apples". In Proc. of the 8th National Symposium on Pattern

Recognition and Image Analysis, pp. 121{126, Barcelona, Spain, 23-25 Apr. 1997.

[79] N. M. Moroney �si M. D. Fairchild. \Color Space Selection for JPEG Image Compression".

In Proc. of IST and SID Color Imaging Conference: Transforms and Transportability of

Color, pp. 157{159, USA, 1993.

[80] http://www.cselt.it/mpeg.

135

[81] H. Mueller, W. Mueller, D. McG. Squire, S. Marchand-Maillet, �si T. Pun. \Performance

evaluation in content-based image retrieval: overview and proposals". Pattern Recognition

Letters, 22(5):593{601, Apr. 2001.

[82] C. Nastar. \The Image Shape Spectrum for Image Retrieval". Technical Report RR3206,

INRIA Rocquencourt, Jul. 1997.

[83] C. Nastar, M. Mitschke, C. Meihac, �si N. Boujemaa. \Sur�mage: a exible content-based

image retrieval system". In ACM Multimedia 8, Bristol, United Kingdom, 12-16 Sept.

1998.

[84] R. Nevatia. \A Color Edge Detector and its Use in Scene Segmentation". IEEE Trans.

on Syst., Man and Cyb., 7(11):820{826, Nov. 1977.

[85] W. Niblack, R. Barber, W. Equitz, M. Flickner, E. Glassman, D. Petkovic, �si P. Yanker.

\The QBIC project: querying images by content using colour, texture and shape". In

Storage and Retrieval for Still Image and Video Databases I, vol. SPIE 1908, 1993.

[86] Y. Ohta, T. Kanade, �si T. Sakai. \Color information for region segmentation". Computer

Graphics and Image Processing, 13:222{241, 1980.

[87] H. Palus. \Representation of colour images in di�erent colour spaces". In S. J. Sangwine

�si R. E. N. Horne, editors, The Colour image processing handbook, pp. 67{90, London,

UK, 1998. Chapman and Hall.

[88] G. Paschos. \Fast color texture recognition using chromaticity moments". Pattern Re-

cognition Letters, 21(9):837{841, Aug. 2000.

[89] G. Pass �si R. Zabih. \Histogram re�nement for content based image retrieval". In IEEE

Workshop on Applications of Computer Vision, pp. 96{102, 1996.

[90] M. Petrou �si C. Boukouvalas. \Visual Industrial Inspection of Colour". In Proc. of the

IEEE Workshop on Nonlinear Signal and Image Processing, vol. 2, pp. 527{530, Neos

Marmaras, Greece, Jun. 1995.

[91] I. Pitas �si A. N. Venetsanopoulos. Nonlinear Digital Filters - Principles and Applications.

Kluwer Academic Publ., Norwell MA, 1990.

[92] K. N. Plataniotis, D. Androutsos, �si A. N. Venetsanopoulos. \Multichannel Filtering for

Color Image Processing". In Proc. of IEEE Conference on Image Processing ICIP `96,

vol. 1, pp. 993{996, Lausanne, Switzerland, 16-19 Sept. 1996.

[93] K. N. Plataniotis, D. Androutsos, �si A. N. Venetsanopoulos. \Nearest Neighbour Mul-

tichannel Filters for Image Processing". In VIII European Signal Processing Conference

EUSIPCO `96, vol. 1, pp. 157{160, Trieste, Italy, 10-13 Sept. 1996.

136

[94] K. N. Plataniotis, D. Androutsos, �si A. N. Venetsanopoulos. \Color Image Processing

Using Adaptive Multichannel Filters". IEEE Trans. on Image Processing, 6(7):933{949,

Jul. 1997.

[95] 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. 167{

180, San Francisco, USA, Feb. 1995.

[96] T. Randen �si J. H. Husoy. \Filtering for texture classi�cation: a comparative study".

IEEE Trans. on Pattern Analysis and Machine Intelligence, 21(4):291{310, Apr. 1999.

[97] C. S. Regazzoni �si A. Teschioni. \A New Approach to Vector Median Filtering Based on

Space Filling Curves". IEEE Trans. on Image Processing, 6(7):1025{1037, Jul. 1997.

[98] G. S. Robinson. \Color Edge Detection". Optical Engineering, pp. 525{530, Sept./Oct.

1977.

[99] K. Saarinen. \Watersheds in Color Image Segmentation". In Proc. of the IEEE Workshop

on Nonlinear Signal and Image Processing, vol. 1, pp. 14{17, Neos Marmaras, Greece,

Jun. 1995.

[100] S. J. Sangwine �si R. E. N. Horne, editors. The Colour image processing handbook. Cha-

pman and Hall, London, UK, 1998.

[101] H. S. Sawhney �si J. Hafner. \E�cient color histogram indexing". In IEEE International

Conference on Image Processing ICIP 4, vol. 2, pp. 66{70, Austin, TX, 13-16 Nov. 1994.

[102] 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. 511{514, Neos Marmaras, Greece, Jun. 1995.

[103] G. Sharma �si H. J. Trusell. \Digital Color Imaging". IEEE Trans. on Image Processing,

6(7):901{932, Jul. 1997.

[104] W. S. Stiles �si J. M. Burch. \NPL colour{matching investigation: �nal report". Optica

Acta, 6:1{26, 1959.

[105] M. A. Stricker. \Bounds for the discrimination power of color indexing techniques".

In W. Niblack �si R. C Jain, editors, Storage and Retrieval for Still Image and Video

Databases II, vol. SPIE 2185, pp. 15{24, 1994.

[106] M. A. Stricker �si A. Dimai. \Color indexing with weak spatial contraints". In I. K. Sehti

�si R. C Jain, editors, Storage and Retrieval for Still Image and Video Databases IV, vol.

SPIE 2670, pp. 29{41, 1996.

[107] M. A. Stricker �si M. Orengo. \Similarity of color images". In W. Niblack �si R. C Jain,

editors, Storage and Retrieval for Still Image and Video Databases III, vol. SPIE 2420,

pp. 381{393, 1995.

137

[108] M. J. Swain �si D. H. Ballard. \Indexing via color histograms". In Image Understanding

Workshop, pp. 623{630, Pittsburg, PA, 11-13 Sept. 1990. Morgan Kaufmann, San Mateo,

CA.

[109] M. J. Swain �si D. H. Ballard. \Color Indexing". International Journal of Computer

Vision, 7(1):11{32, 1991.

[110] X. Tang. \Texture Information in Run-Length Matrices". IEEE Trans. on Image Pro-

cessing, 7(11):1602{1609, Nov. 1998.

[111] 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. 6{11,

USA, 1993.

[112] 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.

[113] 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):868{

880, Jun. 1996.

[114] P. E. Trahanias �si A. N. Venetsanopoulos. \Color Edge Detection Using Vector Statistics".

IEEE Trans. on Image Processing, 2(2):259{264, Apr. 1993.

[115] P. E. Trahanias �si A. N. Venetsanopoulos. \Vector Directional Filters - A New Class of

Multichannel Image Processing Filters". IEEE Trans. on Image Processing, 2(4):528{534,

Oct. 1993.

[116] P. E. Trahanias �si A. N. Venetsanopoulos. \Vector Order Statistics Operators as Color

Edge Detectors". IEEE Trans. on Systems, Man and Cybernetics, B, 26(1):135{143, Feb.

1996.

[117] C. Vertan. Prelucrarea �si Analiza Imaginilor. Ed. Printech, Bucure�sti, 1999.

[118] C. Vertan. Prelucrarea �si Analiza Imaginilor: curs on-line. ht-

tp://alpha.imag.pub.ro/release, 2001.

[119] C. Vertan �si N. Boujemaa. \Color Texture Classi�cation by Normalized Color Space

Representation". In Proc. of ICPR 2000, vol. 3, pp. 584{587, Barcelona, Spain, 3-8 Sept.

2000.

[120] C. Vertan �si N. Boujemaa. \Embedding Fuzzy Logic in Content Based Image Retrieval".

In Proc. of NAFIPS 2000, pp. 85{90, Atlanta, Georgia, 13-15 Jul. 2000.

[121] C. Vertan �si N. Boujemaa. \Spatially constrained color distributions for image indexing".

In Proc. of CGIP 2000, pp. 261{265, Saint Etienne, France, 1-4 Oct. 2000.

138

[122] C. Vertan �si N. Boujemaa. \Upgrading Color Distributions for image retrieval: Can we

do better ?". In R. Laurini, editor, Advances in Visual Information Systems, vol. LNCS

1929, pp. 178{188, Lyon, France, 2000. Springer Verlag.

[123] C. Vertan, M. Ciuc, �si N. Boujemaa. \On the introduction of a chrominance spectrum

and its applications". In Proc. of CGIP 2000, pp. 214{218, Saint Etienne, France, 1-4

Oct. 2000.

[124] C. Vertan, M. Ciuc, N. Boujemaa, �si M. Ferecatu. \Local Extremeness Weighting of

Color Distributions for Image Retrieval". In Proc. of the 5th World Multiconference on

Systemics, Cybernetics and Informatics SCI 2001, vol. 13, pp. 123{126, Orlando, FL,

20-25 Jul. 2001.

[125] C. Vertan, M. Ciuc, �si M. Zam�r. Analiza Imaginilor: Indrumar de laborator. Ed.

Printech, Bucure�sti, 2001.

[126] C. Vertan, V. Vrabie, M. Ciuc, �si V. Buzuloiu. \Multichannel Signal Filtering by Hilbert

Space Filling Curves". In Proc. of the 28th International Symposium of the Military

Technical Academy, pp. 270{277, Bucure�sti, Romania, 21-22 Oct. 1999.

[127] F. M. Wahl. Digital Image Signal Processing. Artech House, Boston, 1987.

[128] X.Wan �si C. C. J. Kuo. \Color distribution analysis and quantization for image retrieval".

In I. K. Sehti �si R. C Jain, editors, Storage and Retrieval for Still Image and Video

Databases IV, vol. SPIE 2670, pp. 8{16, 1996.

[129] A. Winter �si C. Nastar. \Di�erential Feature Distribution Maps for Image Segmentation

and Region Queries in Image Databases". In CBAIVL Workshop at CVPR9, Ford Collins,

Colorado, 22 Jun. 1999.

[130] M. Wolski, C. A. Bouman, J. P. Allebach, �si E. Walowit. \Optimization of Sensor Res-

ponse Functions for Colorimetry of Re ective and Emissive Objects". In Proc. of IEEE

Conference on Image Processing ICIP `95, vol. 2, pp. 323{326, Washington D.C., USA,

23-26 Oct. 1995.

[131] X. L. Xie �si G. Beni. \A Validity Measure for Fuzzy Clustering". IEEE Trans. on PAMI,

13(8):841{847, Aug. 1991.

[132] T. Young. \On the theory of light and colors". Philosophical Transactions of the Royal

Society of London, 92:20{71, 1802.

[133] Y. J. Zhang, Z. W. Liu, �si Y. He. \Comparison and improvement of color-based image

retrieval techniques". In I. K. Sethi �si R. C. Jain, editors, Storage and Retrieval for Still

Image and Video Databases VI, vol. SPIE 3312, pp. 371{382, 1998.

139