Sunteți pe pagina 1din 54

Partea I

PRELUCRAREA ŞI ANALIZA


IMAGINILOR COLOR

7
Capitolul 1

Descrierea culorilor şi modele de


prelucrare a imaginilor color

Aceast capitol ı̂ncearcă realizarea unui studiu asupra culorii. În prima parte (paragraful
1.1) vom discuta despre noţiunile fundamentale din colorimetrie. Vom defini principiul
tricromaticităţii, conform căruia orice culoare monocromatică poate fi sintetizată prin
amestecul aditiv a trei stimuli independenţi de culoare, principiu bazat pe caracteristicile
ochiului uman, care conţine trei tipuri de receptori de culoare (conuri). Apoi, vom discuta
despre chestiuni legate de potrivirea, reproducerea şi percepţia culorilor. În finalul părţii
ı̂ntâi, vom aborda chestiuni legate de percepţie a culorilor la un alt nivel al căii vizuale.
Astfel, vom discuta despre teoria culorilor opuse, care stă la baza dezvoltării spaţiilor
perceptuale de reprezentare a culorii.

1.1 Fundamentele colorimetriei

Înainte de Newton, natura luminii şi a culorilor era destul de puţin ı̂nţeleasă. Experi-
mentele clasice ale lui Newton, bazate pe trecerea luminii solare printr-o prismă de cristal,
au condus la formarea ideilor privind dependenţa culorii de compoziţia spectrală a luminii.
Deşi aceste experimente au constituit bazele fizice pentru descrierea culorilor, ele erau ı̂ncă
departe de a fundamenta un sistem colorimetric.
Pentru a putea dezvolta sisteme de măsurare şi specificare a culorilor au fost ı̂nsă necesare
şi studii privind natura mecanismului de percepere a culorilor de către ochiul uman. De
abia ı̂n a doua jumătate a secolului XIX, Young [229], Grassmann [78] şi Maxwell [142] au
descoperit faptul că orice culoare poate fi exprimată matematic ı̂n funcţie de trei variabile
independente. Grassmann a dedus experimental legile potrivirii culorilor, iar Maxwell a
demonstrat că orice amestec aditiv de culori poate fi echivalat cu un amestec ı̂n proporţii
specifice a trei stimuli primari (principiul de tricromaticitate). Teoria tricromaticităţii a
adus astfel puternice dovezi indirecte ı̂n sprijinul teoriei că ochiul uman are trei feluri de
receptori color (fapt confirmat mai târziu de studiile de anatomie şi fiziologie).
În ochiul uman, orice imagine se formează pe baza luminii focalizate pe retină de lentila
oculară. Cele trei tipuri de conuri reponsabile pentru formarea senzaţiei de culoare sunt

9
ı̂nglobate ı̂n retină, şi conţin pigmenţi fotosensibili ce au absorbţii spectrale diferite. Aceşti
receptori sunt cunoscuţi drept conuri S, M şi L (sensibile la lungimile de undă mici (Short),
medii (Medium) şi mari (Long) ale luminii incidente) şi sensibilitatea lor spectrală a fost
măsurată prin tehnici microspectrofotometrice şi prin experimente psihofizice.
Dacă distribuţia spectrală a luminii incidente pe retină este dată de f (λ) (unde λ este
lungimea de undă), atunci răspunsul celor trei categorii de conuri din retină (senzaţia de
culoare) poate fi modelat ca un vector cu trei componente date de:
∫max
λ

cs = s(λ)f (λ)dλ (1.1)


λmin
∫max
λ

cm = m(λ)f (λ)dλ (1.2)


λmin
∫max
λ

cl = l(λ)f (λ)dλ (1.3)


λmin

Mărimile s(λ), m(λ) şi l(λ) ce intervin ı̂n relaţiile (1.1)–(1.3) şi care sunt ilustrate ı̂n
figura 1.1, reprezintă sensibilităţile spectrale ale conurilor ı̂n intervalul de lungimi de
undă cuprinse ı̂ntre λmin şi λmax ; ı̂n afara acestui interval sensibilităţile sunt nule. În
general, ı̂n aer (şi ı̂n vid), regiunea vizibilă a spectrului electromagnetic este considerată a
fi cuprinsă ı̂ntre λmin = 360 nm şi λmax = 830 nm [189] (sau λmin = 380 nm şi λmax = 780
nm, după [96]).
Din punct de vedere matematic, expresiile (1.1)–(1.3) corespund produsului scalar definit
peste spaţiul Hilbert al funcţiilor de pătrat integrabil ı̂n intervalul [λmin ; λmax ], adică
£2 ([λmin ; λmax ]). Aceasta ı̂nseamnă că mecanismul de răspuns al conurilor este echivalent
proiecţiei spectrului luminii incidente pe spaţiul generat de funcţiile de sensibilitate spec-
trală ale conurilor din retină, si (λ). Acest spaţiu este numit subspaţiul vizual uman, sau
HVSS (Human Visual SubSpace).
Fundamentul colorimetriei constă ı̂n considerarea celor trei răspunsuri ci ca o specificare
a senzaţiei de culoare (sau ca o ecuaţie de reprezentare a culorilor).
În practică, mărimile spectrale ce intervin ı̂n (1.1)–(1.3) se ı̂nlocuiesc cu versiuni
eşantionate la un interval de eşantionare de 10 nm (absolut suficient pentru marea ma-
joritate a aplicaţiilor [189]). În acest caz se va obţine suma ca aproximare numerică a
integralei. Dacă sunt folosite N eşantioane (uniform distribuite ı̂n ı̂ntregul spectru vizibil
[λmin ; λmax ]) relaţiile (1.1)–(1.3) se pot rescrie compact ca:
c = ST f (1.4)
unde c = [cs , cm , cl ]T şi S este o matrice ale cărei coloane conţin versiunile eşantionate ale
sensibilităţilor spectrale.
Pentru observatorii umani normali, sensibilităţile spectrale ale conurilor sunt liniar inde-
pendente (deşi prezintă suprapuneri semnificative) şi, ı̂n plus, prezintă diferenţe mici de
la un observator la altul (diferenţe ce se datorează ı̂n principal diferenţelor de transmi-
sivitate spectrală a lentilei oculare şi a mediului optic din faţa retinei). Dacă se defineşte

10
1

0.9

l (λ)
0.8

m(λ)
0.7

s(λ)
0.6

0.5

0.4

0.3

0.2

0.1

0
350 400 450 500 550 600 650 700 750 800 850
Lungime de unda [nm]

Figura 1.1: Sensibilităţile spectrale relative ale conurilor.

un set standard de răspunsuri ale conurilor, orice culoare poate fi definită unic printr-un
vector cu trei componente, numit vector tristimulus.
Pe baza vectorului tristimulus de reprezentare a culorilor se pot modela o serie de pro-
bleme esenţiale: potrivirea culorilor, reproducerea culorilor şi percepţia culorilor, ce vor
fi discutate ı̂n continuare.

1.1.1 Potrivirea culorilor

Două spectre eşantionate f şi g produc acelaşi răspuns al conurilor retinei, şi deci
reprezintă aceeaşi culoare, dacă:
ST f = ST g (1.5)

Dacă luăm ı̂n considerare trei culori primare (surse luminoase colorimetric independente
- cu alte cuvinte culoarea oricărei surse nu poate fi potrivită vizual cu nici o combinaţie
liniară a celorlalte) p1 , p2 şi p3 , vectorii ST pi sunt liniari independenţi, şi deci matricea
ST P, unde
P = [p1 p2 p3 ] (1.6)
va fi nesingulară. Atunci, pentru orice spectru vizibil f , vectorul definit ca:
a(f ) = (ST P)−1 ST f (1.7)

11
satisface relaţia de potrivire a culorilor (1.5), şi atunci:

ST f = ST Pa(f ) (1.8)

Deci, pentru orice spectru vizibil, există o combinaţie Pa(f ) a culorilor primare care se
potriveşte colorimetric cu f ; acesta este principiul tricromaticităţii (1.8).
Din punct de vedere matematic este posibil ca vectorul de ponderi ale culorilor primare
a(f ) să aibă componente negative (de fapt, pentru orice set de culori fizice primare, există
culori vizibile pentru care apare o asemenea comportare). Deoarece nu pot fi produse
fizic intensităţi negative ale culorilor primare, spectrul Pa(f ) nu este direct realizabil ı̂n
acest caz cu culorile primare date. Realizarea fizică a ecuaţiei de tricromaticitate (1.8)
este totuşi posibilă prin rearanjarea termenilor din ecuaţie, scăzând culorile primare ce au
ponderi negative din culoarea necunoscută de spectru f (ceea ce corespunde din punctul de
vedere al implementării cu adunarea la spectrul f a culorilor primare ı̂n cauză, ponderate
pozitiv).

1.1.2 Reproducerea culorilor

Liniaritatea expresiei (1.5) de potrivire a culorilor implică posibilitatea deducerii valorilor


tristimulus pentru orice combinaţie liniară a unor spectre de bază pentru care valorile
tristimulus sunt cunoscute. Spectrele monocromatice unitare ei formează o astfel de bază
ortonormală prin care se poate descompune orice alt spectru:

ei (m) = δ(m − i) (1.9)

Atunci proprietăţile de potrivire a culorilor (faţă de un set de culori primare) se pot


specifica ı̂n funcţie de proprietăţile de potrivire a culorilor pentru spectrele monocromatice
(1.9).
Fie ai intensităţile celor trei culori primare necesare pentru a reproduce culoarea (spectrul)
ei :
ai = a(ei ) (1.10)

Atunci reproducerea tuturor spectrelor monocromatice poate fi exprimată ca:

ST ei = ST Pai , cu i = 1, 2, ..., N (1.11)

Combinând aceste N ecuaţii, se poate rescrie (1.11) ca:

ST I = ST PAT (1.12)

unde A este matricea corespunzătoare reprezentării spectrelor monocromatice după cu-


lorile 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 (1.12) putem exprima:

A = S(PT S)−1 (1.13)

şi deci funcţiile de potrivire a culorilor (coloanele matricii A) formează o transformare


liniară nesingulară a sensibilităţilor spectrale ale celor trei tipuri de conuri din retină.

12
Atunci culoarea unui spectru vizibil se poate exprima şi ı̂n funcţie de valorile tristimulus
AT f ı̂n loc de ST f . De asemenea, rezultă că pentru cazul a două spectre f şi g culorile se
potrivesc doar dacă
AT f = AT g (1.14)

Un calcul detaliat al coeficienţilor de potrivire ı̂n cazul modelării continue a etaloanelor


spectrale monocromatice este prezentat ı̂n [96]. Această ecuaţie de potrivire şi
reprezentare a culorilor (1.14) are o aplicabilitate mai uşoară, deoarece necesită calcu-
lul matricii de potrivire a culorilor monocromatice A, care se determină (experimental)
mai uşor decât matricea de sensibilitate a conurilor S.

1.1.3 Percepţia culorilor

După cum a fost impus de ecuaţiile de potrivire a culorilor (1.5) sau (1.14), spectrele
de N eşantioane f şi g se potivesc colorimetric dacă ST f = ST g, respectiv AT f = AT g.
Deoarece matricile S şi A sunt matrici N × 3, cu N > 3, este clar că există mai multe
spectre care apar unui observator ca o singură culoare. Aceste spectre distincte, dar cu
aparenţă colorimetrică identică, se spune că formează o potrivire metamerică (distinctă
faţă de potrivirea spectrală).
Metamerismul poate fi văzut şi ca o problemă, dar şi ca o simplificare a aplicaţiilor. Este
ı̂nsă evident că realizarea unei potriviri metamerice pentru un model de iluminare dat este
insuficientă pentru ca potrivirea să se păstreze şi ı̂n alte condiţii de iluminare; exemplul
uzual este potrivirea culorii unor stofe ı̂ntr-o anumită lumină (cea din magazin), potrivire
ce dispare imediat după modificarea condiţiilor de iluminare (lumina naturală de exterior).

1.1.4 Teoria culorilor opuse

Conform teoriei tricromaticităţii, dacă două spectre de lumină produc aceleaşi răspunsuri
ale conurilor, atunci ele au aceeaşi culoare. Ce se ı̂ntâmplă, ı̂nsă, dacă două culori produc
răspunsuri diferite. Evident, ele arată, diferit, dar cât de diferit? O altă ı̂ntrebare este:
ce culoare au spectrele respective? Culorile reale sunt atribute ca roşu, verde, albastru
etc., şi nu vectori [cs , cm , cl ]T ale absorbţiilor conurilor. Pentru a putea răspunde acestor
ı̂ntrebări, avem nevoie de o altă abordare a teoriei culorilor decât cea dată de teoria
tricromaticităţii.
Teoria culorilor opuse a fost creată de Hering ı̂n 1920 [87] şi este bazată pe observaţia
că anumite culori sunt mai similare decât altele. Dacă unui om i s-ar cere să aranjeze
nişte eşantioane colorate astfel ı̂ncât culorile apropiate să fie alăturate, rezultatul final ar
fi aproape ı̂ntotdeauna un cerc. Hering a observat că respectivele culori pot fi aranjate
astfel ı̂ncât toate culorile dintr-o jumatate de cerc să conţină roşu, iar celelalte, din cealaltă
jumătate, să conţină verde. De asemenea, ı̂n mod independent de prima aranjare, culorile
pot fi aranjate astfel ı̂ncât jumătate de cerc să conţină galben, iar cealaltă să conţină
albastru (vezi figura 1.2).
Această aranjare a culorilor pune ı̂n evidenţă două fenomene. Primul este că orice culoare
poate fi descrisă ca “roşiatică” sau “verzuie”, dar niciodată şi roşiatică şi verzuie: rezultă

13
Rosu

Alb
Galben Albastru

Verde

Figura 1.2: Cercul culorilor opuse: semicercul superior conţine culorile “roşii”, cel inferior
culorile “verzi”; semicercul din stânga conţine culorile “galbene”, cel din dreapta culorile
“albastre”.

că roşu şi verde sunt două senzaţii de culoare exclusive. În mod similar, albastrul şi
galbenul sunt şi ele culori exclusive: niciodată o culoare nu va fi descrisă ca fiind ı̂n
acelaşi timp “albăstruie” şi “gălbuie”. Al doilea fenomen este că nu mai există nici o altă
pereche de culori exclusive ı̂n afară de roşu–verde şi galben–albastru. Astfel, descrierea
unei culori pe de-o parte ca roşiatică sau verzuie, iar pe de alta parte ca gălbuie sau
albăstruie este completă.
Teoria culorilor opuse susţine că senzaţia de culoare este organizată de-a lungul a două
axe. Prima axă codează cantitatea de roşu sau verde din culoarea respectivă, iar cea
de-a doua, perpendiculară pe prima, codează cantitatea de galben sau albastru conţinută
ı̂n culoare. Senzaţia completă de culoare este dată de coordonatele culorii respective pe
cele două axe. Uneori, se adaugă şi o a treia axă, ce descrie componenta acromatică de
luminanţă.
Teoria culorilor opuse este validată de numeroase experimente. Dacă fixăm insistent cu
privirea un anumit obiect, după care privim ı̂nspre un perete alb, vom vedea o post–
imagine a obiectului respectiv. Dacă obiectul este roşu aprins, post–imaginea va fi verde
şi vice-versa. Dacă obiectul este galben aprins, post–imaginea va fi albastră şi vice-versa.
Împerecherea strictă a culorilor obiectului şi a post–imaginii sale vine ı̂n sprijinul ideii
că roşul şi verdele sunt asociate (ı̂n acest caz, fiind opuse) la fel cum sunt şi galbenul
şi albastrul. Asocierea roşu/verde şi galben/albastru este de asemenea demonstrată de
următorul experiment: o linie subţire, gri (fără culoare) pe un fond roşu apare verzuie, ı̂n
timp ce pe un fond albastru apare gălbuie.
Tricromaticitatea şi teoria proceselor opuse descriu senzaţia de culoare ı̂n diverse puncte
de pe calea vizuală, ı̂ntre ochi şi creier. Tricromaticitatea este un model al retinei. Teoria
culorilor opuse este un model al unui mecanism central din creier.

14
1.2 Sisteme colorimetrice

După cum am arătat anterior, culoarea oricărui spectru vizibil poate fi specificată pe baza
valorilor tristimulus AT f , unde A este o matrice ale cărei coloane sunt funcţii de potrivire
a culorilor. Pentru ca diferitele măsurători să fie consecvente, a trebuit definit un set
standard de asemenea funcţii de potrivire a culorilor, faţă de care să se calculeze valorile
tristimulus.
Prima standardizare a terminologiei şi măsurătorilor colorimetrice a fost realizată de CIE
(Commission Internationale de l’Eclairage) ı̂n 1931; această standardizare continuă să
stea la baza colorimetriei moderne. Recomandarea CIE 1931 defineşte observatorul colo-
rimetric standard prin două seturi echivalente de funcţii de potrivire a culorilor.

1.2.1 Sisteme primare de reprezentare

Primul sistem propus este sistemul RGB (Red Green Blue) ı̂n care funcţiile de potrivire
a culorilor R(λ), G(λ), B(λ) sunt asociate cu culori primare monocromatice de lungimi
de undă de 700 nm, 546.1 nm şi 435.8 nm şi ale căror intensităţi radiante sunt astfel alese
ı̂ncât valorile tristimulus asociate unui spectru de energie constantă (lumină albă) să fie
egale. În figura 1.3 sunt prezentate cele trei curbe R(λ), G(λ) şi B(λ).

3.5

3 r (λ)

v (λ)
2.5
b (λ)
2

1.5

0.5

−0.5
400 450 500 550 600 650 700

Lungime de unda (nm)

Figura 1.3: Cele trei funcţii de corespondenţă a culorilor ı̂n funcţie de cele trei culori
primare (după [194]). Se poate observa că anumite culori nu pot fi sintetizate decât ca
o combinaţie substractivă ı̂ntre cele trei culori primare, ceea ce ı̂nseamnă că respectivele
culori nu pot fi “create”.

Al doilea sistem definit este XY Z, ale cărui funcţii de potrivire a culorilor, X(λ), Y (λ),
Z(λ) sunt transformări liniare ale componentelor sistemului RGB [96].Transformarea de

15
la RGB la XY Z (1.15) a fost astfel aleasă ı̂ncât toate valorile tristimulus rezultante să
fie pozitive, la toate lungimile de undă. Curbele X(λ), Y (λ) şi Z(λ) sunt prezentate ı̂n
figura 1.4.
    
X 0.49 0.31 0.02 R
 Y  =  0.177 0.813 0.011   G  (1.15)
Z 0 0.01 0.99 B

2.5

2
x(λ)

y(λ)

1.5 z(λ)

0.5

0
350 400 450 500 550 600 650 700 750 800 850
Lungime de unda [nm]

Figura 1.4: Corespondenţa culorilor ı̂n funcţie de coordonatele XY Z.

Cerinţa de pozitivitate a valorilor tristimulus se pare [189] că provine din epoca ı̂n care
calculele se făceau manual, cu calculatoare de birou, astfel ı̂ncât adunările şi scăderile
repetate constituiau o nesfârşită sursă de erori. Alegerea particulară a transformării (1.15)
din infinitatea de transfomări posibile a ţinut seama şi de alţi factori, cei mai importanţi
fiind aceia ca, pentru orice culoare, componenta Y să coincidă cu funcţia de eficienţă
luminoasă1 şi ca cele trei funcţii de potrivire a culorilor să producă valori tristimulus
egale ı̂n cazul unui spectru constant.
Trebuie ı̂nsă remarcat că nici un set de culori fizic realizabile nu poate produce funcţii de
potrivire a culorilor pozitive ı̂n ı̂ntreg spectrul.
Descrierea culorilor prin vectori cu trei componente (valorile tristimulus) ridică ı̂nsă pro-
bleme de reprezentare grafică (culorile sunt puncte ı̂ntr-un spaţiu tridimensional) şi deci
dificil de reprodus ı̂n secţiuni bidimensionale. O reprezentare redusă (bidimensională)
de interes se poate obţine prin normalizarea valorilor tristimulus astfel ı̂ncât acestea să
1
Funcţia de eficienţă luminoasă este sensibilitatea relativă a ochiului la energia de pe fiecare lungime
de undă. În mod curent este numită luminanţă.

16
aparţină planului unitar (planul Maxwell) de ecuaţie:

x1 + x2 + x3 = 1 (1.16)

Normalizarea fiecărei componente ti a tripletului tristimulus (T1 , T2 , T3 ) asociat unei culori


va fi dat de:
Ti
ti = , cu i = 1, 2, 3 (1.17)
T1 + T2 + T3

O asemenea normalizare este convenabilă ı̂ntrucât informaţia de direcţie asupra vectorului


de culoare rămâne nemodificată, ceea ce se pierde prin trecerea la cele trei componente
dependente normate liniar fiind doar informaţia de amplitudine. Reducerea dimensiunii
vectorului de reprezentare este determinată tocmai de dependenţa liniară a valorilor ti
date de (1.17), ceea ce duce la posibilitatea reprezentării punctelor ı̂ntr-un spaţiu bidi-
mensional, având drept coordonatele două valori tristimulus normate (numite coordonate
de cromaticitate). Pentru sistemul XY Z, diagrama de cromaticitate se reprezintă după
valorile x, y, z obţinute ca:
X
x= (1.18)
X +Y +Z
Y
y= (1.19)
X +Y +Z
Z
z= (1.20)
X +Y +Z

1.2.2 Sisteme de reprezentare derivate

Aplicaţiile practice ale colorimetriei au condus ı̂nsă la utilizarea de facto a altor surse
primare decât cele standardizate de CIE. În acest caz, valorile pentru funcţiile de potrivire
a culorilor sunt diferite de cele standard, iar legătura dintre ele este dată de o transformare
liniară a funcţiilor de sensibilitate spectrală a conurilor din retina umană:

BT = (AT Q)−1 AT (1.21)

Una dintre aceste aplicaţii practice a fost televiziunea color. Apariţia acesteia a condus
(cel puţin ı̂n etapa iniţială) la utilizarea a două noi sisteme de reprezentare: pe de o parte
sistemul de culori primare legat de afişarea imaginilor color pe ecranele televizoarelor (cu-
lori primare legate de caracteristicile de electroluminiscenţă ale triadelor de luminofori din
tuburile cinescop) şi pe de altă parte sistemul de reprezentare a culorilor folosit ı̂n trans-
misia de televiziune. Sistemele de culori folosite la afişare au fost, cel puţin la ı̂nceput,
de o mare diversitate, dictată de fiecare dintre fabricanţii de tuburi cinescop, ce foloseau
tipuri diferite de fosfor. Variabilitatea de reprezentare pe ecrane diferite a unei aceleiaşi
culori transmise a dus la standizarea tipurilor de fosfor (norma C) de către SMPTE (So-
ciety of Motion Picture and Television Engineers) [189]; norma de reprezentare rezultată
este aşa numitul sistem NTSC al receptorului [96]:
    
Rr 0.842 0.156 0.091 R
 Gr  =  −0.129 1.319 −0.203   G  (1.22)
Br 0.008 −0.069 0.897 B

17
Spaţiile de reprezentare a culorilor utilizate pentru transmisia de televiziune au fost stan-
dardizate rapid, la ora actuală existând două sisteme fundamentale: NTSC şi PAL. Trans-
formările de la spaţiul primar RGB la spaţiile de transmisiune sunt descrise de ecuaţiile
(1.23) [96] pentru NTSC şi respectiv (1.24) [74] pentru PAL:
    
Y 0.3 0.59 0.11 R
 I  =  0.6 −0.28 −0.32   G  (1.23)
Q 0.21 −0.52 0.31 B
    
Y 0.3 0.59 0.11 R
 U  =  −0.148 −0.291 0.483   G  (1.24)
V 0.526 −0.518 0.096 B

Alegerea acestor transformări, prin care orice culoare este reprezentată printr-o compo-
nentă de luminanţă (Y ) şi două componente de crominanţă, s-a realizat prin impunerea
unor constrângeri: folosirea canalelor de transmisiune monocrome şi compatibilitatea cu
receptoarele alb-negru (ceea ce a dus la alegerea luminanţei ca una dintre componentele
de culoare) şi determinarea unor componente de crominanţă a căror lărgime de bandă
să fie relativ mică. Aceste caracteristici sunt exploatate de majoritatea sistemelor de co-
dare şi compresie, ı̂n care prima operaţie efectuată este subeşantionarea componentelor
de crominanţă (I şi Q, respectiv U şi V ) [35], [103], [96].
În aceeaşi categorie putem include şi spaţiul de culoare al lui Ohta [154], ale cărui com-
ponente I1 I2 I3 sunt date de:
   1 1 1  
I1 3 3 3
R
 I2  =  1 0 − 1   G  (1.25)
2 2
I3 −4 2 −4
1 1 1
B

Componenta I1 conţine informaţia de luminanţă, ı̂n timp ce componentele I2 şi I3


reprezintă informaţia “cromatică”. Coeficienţii transformării (1.25) au fost deduşi astfel
ı̂ncât componentele de culoare din spaţiul rezultat să fie decorelate, ı̂n acest sens folosindu-
se un set important de imagini ca mulţime reprezentativă. Astfel, matricea transformării
(1.25) reprezintă o bună aproximare a matricii transformării Karhunen–Loève, transfor-
marea optimală ce decorelează complet componentele.
Spaţiul YCbCr. Pentru procesarea imaginilor ı̂n dispozitive compacte sau pentru sto-
carea digitală a imaginilor sı̂ secvenţelor video se utilizează spatiul digital YCbCr (a nu se
confunda cu soluţia de la SECAM). Acesta este definit de standardul ITU-R BT.601, ı̂n
care se subliniază că nu este un spaţiu de culoare propriu-zis ci mai curând o modalitate
de stocarea informaţiei RGB. Presupunând că valorile de intrare RGB sunt reprezentate
cu 8 biţi/eşantion (fiecare axă ı̂n domeniul [0; 255]), spaţiul YCbCr, tot cu 8 biţi/eşantion
se obţine cu ecuaţiile:

       
Y 64.481 128.553 24.996 R 16
 Cb  = 1  − − 39.797 −74.203 112  ·  G  +  128  (1.26)
256
Cr 112 −93.768 −18.218 B 128

În spaţiul rezultant valorile luminanţei sunt ı̂n domeniul [16; 235], ı̂n timp ce crominanţele
sunt ı̂n [0; 255]

18
Spaţiul YUV. O variaţie la spaţiul YCbCr definit anterior este spaţiul YUV standardizat
ı̂n descrierea formatului JPEG [86] (identică cu spaţiul definit de standardul de televiziune
SECAM):

     
Y 0.299 0.587 0.114 R
 U  =  −0.169 −0.331 0.5  ·  G  (1.27)
V 0.5 −0.418 0.031 B

Această transformare impune ca spaţiul RGB să nu fie gamma comprimat. Transformarea


inversă este:

     
R 1 0 1.402 Y
 G  =  1 −0.34414 −0.71414  ·  U  (1.28)
B 1 1.772 0 V

Trebuie remarcat că cele două spaţii nu au acelaşi gamut, spaţiul YUV fiind un pic mai
mare. Diferentă de gamut provine din faptul că matricile de transformare nu conservă
energia, ı̂n timp ce domeniul final, ı̂n ambele spaţii de reprezentare este trunchiat pe
fiecare axă la [0; 255]. Acest spaţiu este extrem de utilizat pentru stocarea imaginilor sau
pentru procesări. Exemple de cum arată planele diferenţă de culoare pentru trei valori de
de luminanţă pot fi văzute ı̂n figura 1.5.

Figura 1.5: Culorile reprezentate ı̂n planul UV pentru trei valori ale luminanţei: ı̂n stânga
pentru Y = 0, ı̂n centru pentru Y = 128, iar ı̂n dreapta pentru Y = 255.

Spaţiul de culoare YUV descris aici este extrem de util ı̂n reprezentarea comprimată a
imaginilor. Pornind de la observaţia că SVU este mai puţin sensibil la culoare decât la
luminanţă, se pot subeşantiona planele de cromi- nanţă U şi V iar imaginea finală nu
va avea diferenţe sesizabile faţă de cea de intrare. În acest sens se utilizează mai multe
variante (reprezentate grafic şi ı̂n figura 1.6):

1. YUV:444 – fiecare pixel are toate valorile. Dimensiunea imaginii este: linii × coloane
× 3;

2. YUV:422 – fiecare pixel are luminanţa lui, ı̂n timp ce doi pixeli adia- cenţi pe linie
ı̂mpart aceleaşi valori de crominanţă . Dimensiunea imaginii este: linii × coloane ×
2;

19
3. YUV:420 – fiecare pixel are luminanţa lui, ı̂n timp ce patru pixeli adiacenţi (doi pe
linie şi doi pe coloană) ı̂mpart aceleaşi valori de crominanţă . Dimensiunea imaginii
este: linii × coloane × 1.5.

Fiecare din aceste reprezentări există atât ı̂n varianta planară (când sunt memoraţi ı̂ntâi
toţi pixelii de luminanţă, apoi toate valorile de U, etc.) cât şi ı̂n varianta ı̂ntreţesut (când
sunt reprezentate toate valorile Y şi U şi V ale primului pixel, apoi ale celui de-al doilea,
etc.).

YUV 444

YUV 422

YUV 420

Figura 1.6: Variante practice ale reprezentării ı̂n spaţiul YUV. Am exemplificat pentru
cazul ı̂ntreţesut.

Un alt spaţiu de reprezentare a culorilor de tip luminanţă–crominanţă este spaţiul


PhotoY CC dezvoltat de compania Kodak [158] şi folosit pentru stocarea imaginilor pe
FotoCD-uri. Spaţiul PhotoY CC ı̂şi are rădăcinile ı̂n televiziunea color, şi permite o com-
presie eficientă a imaginii. Valorile PhotoY CC sunt rezultatul unei transformări ı̂n trei
paşi din valorile originale RGB, şi anume:

1. corecţie gamma.

2. transformare liniară;

3. cuantizare a componentelor Y CC pe 8 biţi.

Corecţia gamma este necesară datorită caracteristicii neliniare a dispozitivelor de afişare


(ı̂n condiţiile ı̂n care dispozitivele de achiziţie — scannerele — au un comportament aprox-
imativ liniar) şi constă ı̂n aplicarea fiecăreia din componentele primare RGB (normalizate
ı̂n [0, 1]) a funcţiei:

 1, 099x0,45 − 0, 099 dacă x ≥ 0, 018

x = 4, 5x dacă −0, 018 < x < 0, 018 (1.29)

−1, 099|x|0,45 + 0, 099 dacă x ≤ −0, 018

20
Apoi, componentele de culoare corectate gamma sunt transformate liniar după:
 ′    ′ 
Y 0, 299 0, 587 0, 114 R
 C1′  =  −0, 299 −0, 587 0, 886   G′  (1.30)
C2′ 0, 701 −0, 587 −0, 114 B′

În final, noile componente de culoare sunt cuantizate liniar pe 8 biţi, rezultând, astfel,
valorile finale Y CC:
255 ′
Y = Y (1.31)
1, 402
C1 = 111, 40C1′ + 156 (1.32)
C2 = 135, 64C2′ + 137 (1.33)

Transformarea din coordonate PhotoY CC ı̂n RGB nu este exact inversa transformării
directe. Iniţial, se calculează:

Y ′ = 1, 3584Y (1.34)
C1′ = 2, 2179(C1 − 156) (1.35)
C2′ = 1, 8215(C2 − 137) (1.36)

după care se calculează componentele RGB ce urmează a fi afişate precum:


    ′ 
Rdisplay 1 0 1 Y
 Gdisplay  =  1 −0, 194 −0, 509   C1′  (1.37)
Bdisplay 1 1 0 C2′

1.2.3 Sisteme de reprezentare perceptuală

În funcţie de modul ı̂n care observatorii umani descriu culorile (deci pornind de la
observaţii empirice) Munsell a introdus un sistem de specificare a culorilor bazat pe
noţiunile de luminozitate, nuanţă şi saturaţie. Luminozitatea este o măsură a luminanţei
percepute. Nuanţa se referă la fiecare dintre varietăţile unei culori, determinată de
compoziţia sa cromatică - deci cât de roşie sau cât de verde este culoarea dată. Saturaţia
este aspectul perceptual influenţat de cantitatea de lumină (culoare) albă adăugată aditiv
unei lumini (culori) monocromatice.
Aceste trei atribute ortogonale [202, 189] formează un sistem de reprezentare perceptuală
a culorilor, derivat ı̂n mod esenţial ca o rotaţie a spaţiului RGB a culorilor, urmată de o
transformare ı̂n coordonate cilindrice sau polare [32], [80], [72]. Acest sistem este cunoscut
sub forma mai multor variante asemănătoare: HSV (Hue Saturation Value), HSI (Hue
Saturation Intensity), HV C (Hue Value Chroma), HSL (Hue Saturation Luminance),
LCH (Lightness Chroma Hue). În toate aceste variante de reprezentare, atributul de
luminanţă (sau intensitate, valoare, strălucire) este asociat unei axe verticale de simetrie
rotaţională a noului spaţiu de culoare, iar atributul de nuanţă, măsurat ca un unghi
polar (unghi la centru), delimitează pe anvelopa spaţiului de culori zone corespunzătoare
culorilor pure.

21
Rafinarea sistemului Munsell continuă [95]; LV D (Logical Visual Display) produce o
cuantizare vizuală aproximativ uniformă prin sinteza (pentru fiecare imagine) a unei noi
palete de culori de afişare. Spaţiul de culori astfel obţinut este de formă cilindrică [80],
ca un dublu con [43] ca o piramidă cu bază hexagonală [43], sau ca un cilindru prelungit
pe ambele baze cu conuri [72].
Componentele de luminanţă, saturaţie şi nuanţă sunt calculate cu ajutorul unor formule
ce exprimă ı̂n mod aproximativ sensul psiho–fizic al acestor noţiuni. În literatura de
specialitate sunt prezentate diverse formule, ı̂n mod special pentru componenta de nuanţă
H, ideea de bază fiind realizarea unui compromis ı̂ntre acurateţe şi simplitate de calcul.
Formula originală pentru nuanţă a fost cea a lui Tenenbaum et al. [203]:

 arccos √ 0.5[(R−G)−(R−B)] dacă B > G
(R−G)2 +(R−B)(G−B)
H= (1.38)
 360 − arccos √ 0.5[(R−G)−(R−B)]
2
dacă G ≥ B
(R−G) +(R−B)(G−B)

unde H este exprimat ı̂n grade. Demonstraţia relaţiei (1.38) este dată ı̂n [77]. Kender
[104] propune o versiune de calcul aproximativ al nuanţei ce permite o implementare mai
rapidă, reducând numărul de ı̂nmulţiri necesare şi evitând extragerea rădăcinii pătrate:


 nedefinit ( √ ) dacă R = G = B



 3 + arctan G+R−2B
π 3(G−R)
dacă min(R, G, B) = B
(√ )
H= 3(B−G) (1.39)

 π + arctan G+B−2R dacă min(R, G, B) = R

 (√ )

 5π + arctan 3(R−B)
3 B+R−2G
dacă min(R, G, B) = G

Modul de calcul al componentelor HSI propus de Bajon et al. [9], prezentate ı̂n relaţia
(1.40), permite obţinerea unor rezultate uşor diferite de cele clasice, dar care sunt extrem
de rapide, datorită simplificării matematice (nu mai e nevoie de funcţii trigonometrice).


 nedefinit dacă R = G = B

 G−B
3(G+R−2B)
dacă min(R, G, B) = B
H= B−R (1.40)

 dacă min(R, G, B) = R


3(G+B−2R)
R−G
3(B+R−2G)
dacă min(R, G, B) = G

Cât despre componenta de saturaţie S, ı̂n afară de cele două formulări echivalente:

S = 1 − 3 min(r, g, b) (1.41)
min(R, G, B)
S = 1−3 (1.42)
R+G+B
mai există câteva variante de calcul, al căror scop este scăderea instabilităţii acesteia ı̂n
jurul punctului de negru absolut (0, 0, 0):
{
−R,Imax −G,Imax −B)
Imax − 3 min(Imax3−(R+G+B) dacă I ≤ Imax
3
S= (1.43)
Imax − 3 R+G+B
min(R,G,B)
dacă I > 3Imax

unde Imax reprezintă valoarea maxim posibilă a componentei de luminanţă.

22
Cât despre componenta de intensitate I, cel mai des folosite relaţii sunt:
R+G+B
I = (1.44)
3
I = R+G+B (1.45)

V
Alb

Verde Galben

V Turcoaz Rosu
Verde Galben

Alb
Turcoaz Rosu Albastru Violet

Albastru Violet

H H
Negru S Negru S

(a) (b)

Figura 1.7: Spaţiile de culoare HSV (a) şi HLS (b).

Alte două sisteme de reprezentare perceptuală, HSV şi HLS sunt cel mai des folosite ı̂n
computer vision. Structura lor este prezentată ı̂n figura 1.7, iar relaţiile de calcul sunt
date de:
V = max(r, g, b) (1.46)
{
0 dacă r = g = b = 0
S = max(r,g,b)−min(r,g,b) (1.47)
max(r,g,b)
ı̂n rest

max(r, g, b) + min(r, g, b)
L = (1.48)
 2

 0 dacă r = g = b
S =
max(r,g,b)−min(r,g,b)
dacă L ≤ 0, 5 (1.49)
 max(r,g,b)+min(r,g,b)
 max(r,g,b)−min(r,g,b) dacă L > 0, 5
2−max(r,g,b)−min(r,g,b)

23
Aceste modele demonstrează că saturaţia unei culori scade pe măsură ce intensitatea se
apropie de nivelul ei maxim (sau minim). Totuşi, nu toate aceste fenomene perceptuale
sunt implementate ı̂n modelele respective. De exemplu, culorile cu saturaţie maximă şi
nuanţe diferite au acelaşi nivel de intensitate (V = 1 ı̂n cazul sistemului HSV , L =
0, 5 pentru HSL). Aceasta, ı̂nsă, nu corespunde ı̂ntotdeauna cu percepţia umană, un
contraexemplu ı̂n acest sens fiind faptul că un galben saturat este ı̂ntotdeauna mai luminos
decât un albastru saturat.
Avantajele importante ale spaţiilor perceptuale de tip HSI ı̂n raport cu celelalte tipuri
de reprezentări posibile sunt:

• compatibilitate cu intuiţia umană;

• separarea componentelor cromatice de cele acromatice;

• posibilitatea de a folosi componentele ı̂n mod independent pentru diverse sarcini;


de exemplu, componenta de nuanţă H poate fi folosită pentru segmentare, cea de
intensitate pentru operaţii de ı̂mbunătăţire de contrast etc.

Totuşi, trebuie menţionate şi dezavantajele sistemelor perceptuale, dintre care cele mai
importante sunt:

• existenţa unor singularităţi ı̂n transformarea RGB ←→ HSI (H nu e definit pentru


culorile acromatice — nivelele de gri — ı̂n timp ce saturaţia S nu este definită pentru
alb — sau negru — pur);

• sensibilitate crescută la deviaţii mici ale componentelor RBG ı̂n jurul singu-
larităţilor;

• neuniformitate perceptuală, ı̂n ciuda “orientării” perceptuale;

• probleme legate de operaţii pe valorile unghiulare ale nuanţei, cum ar medierea.

1.2.4 Sisteme de reprezentare cu cromaticitate uniformă

Toate modelele de reprezentare descrise până ı̂n acest punct au fost introduse ca metode
de specificare a culorilor conform unor valori tristimulus (ce reprezintă ı̂n mod unic un
punct ı̂n spaţiul tridimensional al culorilor). Manipularea (prelucrarea) culorilor implică
ı̂nsă şi necesitatea determinării unor grade de asemănare ı̂ntre culori, bazate pe poziţiile
lor relative din spaţiul tridimensional de reprezentare, şi deci, implicit, pe distanţă. Dar,
ı̂n mod natural, distanţa dintre culori este determinată de termenii legaţi de percepţia
acestora.
Cuantificarea obiectivă a evaluărilor făcute de diferiţi observatori umani pentru mărimea
unei diferenţe de culoare este o problemă, cu atât mai mult cu cât ı̂n general, ı̂n prac-
tică este mai utilă evaluarea diferenţelor dintre culori asemănătoare decât dintre culori
mult diferite. Atunci noţiunea de diferenţă abia perceptibilă ı̂ntre culori sau JND (Just
Noticeable Difference) a apărut implicit ca o unitate de măsură.

24
Distribuţia diferenţei abia perceptibile dintre culori ı̂n sistemele de reprezentare primare
(RGB, XY Z, xy) este extrem de neregulată. De exemplu, ı̂n spaţiul de cromaticitate
xy, măsurarea JND a dus la definirea elipselor MacAdams: regiuni eliptice pentru care
culorile conţinute ı̂n interior nu pot fi diferenţiate vizual [96], [85]. Mărimea, orientarea
şi excentricitatea acestor elipse variază puternic după poziţia centrului lor (de exemplu,
excentricitatea variază ı̂ntre 1 şi 20 [96]). Aceasta conduce la numirea acestor spaţii de
culoare ca perceptual neuniforme, ı̂n sensul că diferenţele perceptual egale dintre culori
nu corespund unor distanţe egale ı̂n spaţiul valorilor tristimulus. Cum o asemenea carac-
teristică de JND este extrem de dezirabilă (mai ales ı̂n definirea şi măsurarea toleranţei
sistemelor de reproducere a culorilor), s-a ı̂ncercat definirea unor spaţii de cromaticitate
uniformă.
Construirea unui spaţiu de culoare uniform se face ı̂n principiu ı̂n două etape [189], [169]:
se determină o scară de iluminare uniformă şi apoi se determină o diagramă de cromatici-
tate uniformă pentru stimuli de culoare ce au aceeaşi luminozitate. Cele două soluţii sunt
combinate prin scalarea cu factori convenabili pe fiecare coordonată (scală de cromatic-
itate şi scală de luminanţă), astfel ca unităţile să corespundă unei aceleiaşi proporţii de
JND.
Sistemul U CS (Uniform Chromaticity Scale) produce o diagramă de cromaticitate ı̂n care
culorile ce diferă abia perceptibil sunt aproape echidistante (şi atunci elipsele MacAdams
devin forme aproape circulare, cu excentricităţi cuprinse ı̂ntre 1 şi 2 şi de dimensiuni
aproape egale). Transformarea care leagă spaţiul de cromaticitate U CS de spaţiul primar
XY Z este neliniară, exprimată ca:
4X
u= (1.50)
X + 15Y + 3Z
6Y
v= (1.51)
X + 15Y + 3Z

Din aceste valori a coeficienţilor de cromaticitate (valori tristimulus normate conform


(1.17)) se pot deduce transformările valorilor tristimulus, adăugând condiţia suplimentară
de păstrare a coordonatei de luminanţă, V = Y :
   2  
U 3
0 0 X
 V  =  0 1 0  Y  (1.52)
W − 12 32 12 Z

Însă nici acest spaţiu nu oferă o proporţionalitate directă ı̂ntre diferenţa perceptuală
a culorilor şi distanţa euclidiană ı̂ntre tripletele corespunzătoare de valori tristimulus.
Primul spaţiu de culoare ce respectă această cerinţă a fost propus de CIE ı̂n 1960 ca spaţiu
de cromaticitate uniformă modificat (UCS modificat), sau U ∗ V ∗ W ∗ (1.53). Originea
acestui spaţiu a fost translatată ı̂n punctul corespunzător culorii albe de referinţă, de
coordonate cromatice (u0 ; v0 ); coordonata W ∗ este o rădăcină cubică a luminanţei (şi a
fost introdusă ca strălucirea, sau contrastul, unei pete uniforme de culoare).

W ∗ = 116V 3 − 17
1
(1.53)

V ∗ = 13W ∗ (v − v0 ) (1.54)

25
U ∗ = 13W ∗ (u − u0 ) (1.55)

În prezent, diferenţa ı̂ntre culori este măsurată după propunerile CIE 1976, care definesc
două noi spaţii de culoare, Luv şi Lab. Ambele spaţii folosesc aceeaşi scară de luminanţă
L, dependentă de luminanţa percepută (valoarea tristimulus Y ) printr-o transformare
aproape identică cu cea introdusă ı̂n (1.53):
( )
Y
L = 116f − 16 (1.56)
Y0
{ 1
t 3 , dacă t > 0.00886
f (t) = 16 (1.57)
7.787t + 116 , ı̂n rest

Scările de crominanţă corespunzătoare celor două sisteme sunt date de (1.58) şi (1.59)
pentru Luv, respectiv de (1.60) şi (1.61) pentru Lab:
u∗ = 13L(u − u0 ) (1.58)
v ∗ = 13L(v − v0 ) (1.59)
( ( ) ( ))
X Y
a∗ = 500 f −f (1.60)
X Y
( ( 0) ( 0))
Y Z
b∗ = 200 f −f (1.61)
Y0 Z0

Spaţiile Lab şi Luv permit de asemenea reprezentarea unei culori ı̂n formă perceptuală
(conform figurii 1.8) prin schimbarea coordonatelor carteziene ı̂n coordonate polare ı̂n
spaţiul componentelor de culoare. Saturaţia şi nuanţa culorii (ı̂n spaţiul Lab) sunt date
de:
( ∗)
−1 b
Hab = tan (1.62)
a∗

Cab = a∗ 2 + b∗ 2 (1.63)

În mod echivalent se pot calcula aceleaşi mărimi şi ı̂n spaţiul Luv. Distanţa ı̂ntre două
culori poate fi calculată fie ca distanţă euclidiană ı̂nte vectorii Lab asociaţi:

∆Eab = ∆L2 + ∆a∗ 2 + ∆b∗ 2 (1.64)
fie, ı̂n coordonate polare, ca:

2 2
∆Eab = ∆L2 + ∆Cab + ∆Hab (1.65)
unde √
∆Hab = p 2 (Cab1 Cab2 − a∗1 b∗2 − a∗1 b∗2 ) (1.66)
iar {
−1 dacă a∗1 b∗2 > a∗2 b∗1
p= . (1.67)
1 ı̂n rest

O diferenţă abia perceptibilă JND corespunde unei distanţe euclidiene ı̂n spaţiul Lab
de aproximativ 2.3 [189]. Coordonatele de cromaticitate a şi b corespund conţinutului
culorii ı̂n gama roşu-verde şi respectiv galben-albastru (realizând ı̂n acest fel o reprezentare
colorimetrică analoagă celei din sistemul vizual uman [80], [141]).

26
L
Alb

Galben(+)
b*

Cab
Verde(−) Hab Rosu(+)
a*

Albastru(−)
Negru

Figura 1.8: Reprezentarea spaţiului Lab ı̂n coordonate polare

1.3 Modele de prelucrare şi analiză a imaginilor color

Pentru prelucrarea imaginilor color sunt folosite ı̂n mod uzual două modele: modelele
de prelucrare bazate pe extensia directă a tehnicilor scalare (de la imagini cu nivele de
gri) şi modelele de prelucrare bazate pe considerarea simultană a tuturor componentelor
de culoare (tehnici vectoriale). Tehnicile de prelucrare vectoriale dau de cele mai multe
rezultate de calitate superioară, dar sunt de o complexitate crescută. Tehnicile bazate pe
extensia directă a tehnicilor scalare sunt rapide şi, aplicate corespunzător, pot produce
rezultate corespunzătoare. Putem distinge următoarele modele de prelucrare:

• prelucrarea marginală (RGB), mai puţin aplicată ı̂n ale sisteme de reprezentare a
culorilor, ı̂n care fiecare componentă de culoare este prelucrată identic şi indepen-
dent.

• transformare liniară fixă a reprezentării RGB ı̂n reprezentare luminanţă –


crominanţe; prelucrarea luminanţei (mai rar şi a crominanţelor); se revine la RGB
prin transformarea inversă.

• transformare liniară adaptivă a reprezentării RGB ı̂n reprezentare cu componente


decorelate (prima ar trebui să fie totuşi luminanţa); prelucrarea tuturor compo-
nentelor sau numai a celor mai importante (una sau două); se revine la RGB prin
transformarea inversă.

• transformare neliniară fixă a reprezentării RGB ı̂n reprezentare luminanţă –


crominanţe; prelucrarea luminanţei (mai rar şi a crominanţelor); se revine la RGB
prin transformarea inversă.

Segmentarea orientată pe regiuni a imaginilor color este relativ simplă, putându-se folosi
instanţe ale algoritmilor de clustering sau de creştere şi fuziune a regiunilor. Segmentarea

27
orientată pe contur a imaginilor color se poate realiza fie ı̂n domeniul spaţial, prin inter-
mediul unei hărţi de intensităţi de tranziţie, fie ı̂n domeniul de frecvenţă.
Calculul hărţii de intensităţi de tranziţie se bazează pe determinarea neuniformităţii lo-
cale de culoare şi deci pe determinarea culorilor ce sunt extremele distribuţiei locale de
culoare. Definirea unei culori extreme ı̂n raport cu o mulţime dată de culori implică ı̂nsă
introducerea unei relaţii de ordonare ı̂n spaţiul culorilor, indiferent dacă distanţa din-
tre culori este sau nu utilizată la determinarea ordonării. După cum a fost demonstrat
de către Barnett [12], ı̂n spaţii cu mai multe dimensiuni nu există o extindere simplă şi
directă a conceptului de ordonare. Singura relaţie completă de ordine este ordonarea le-
xicografică (sau ordinea de dicţionar) care, ı̂n general, nu respectă topologia spaţiului de
culoare. Pentru a evita aceste inconveniente, ı̂n implementările practice se preferă relaţiile
de pre-ordonare [12]: ordonarea marginală, ordonarea condiţională şi ordonarea redusă.
Ordonarea marginală foloseşte un model al vectorilor de tip “stivă de scalari”; ordonarea
este realizată individual pe fiecare componentă. În mod evident, prin acest tip de pre-
lucrare nu se ia ı̂n considere corelaţia ce există ı̂ntre componentele vectorilor de culoare
şi statisticile de ordine pot fi diferite de vectorii iniţiali ce au fost ordonaţi. Primele
detectoare de contur au fost asemenea extensii ale detectoarelor de contururi din imag-
inile cu nivele de gri. Nevatia [153] a propus folosirea unor operatori de contur de tip
Hueckel [217], identificând ı̂n mod independent contururile ı̂n diferite plane de culoare
(de intensitate, componente normalizate, luminanţă-crominanţă). Robinson [180] a ex-
tins operatorii compas bazaţi pe măşti Kirsch [96] la reprezentări compuse ale culorii
(luminanţă sau strălucire, de exemplu). Scharkanski şi Venetsanopoulos [186] au propus
o abordare similară, prin extinderea măştilor Prewitt [96] şi a operatorului LOG [39]
(Laplacian de Gaussiană) şi agregarea răspunsurilor acestora provenite din componentele
de roşu, verde şi albastru ale imaginilor. Metoda de ordonare redusă a fost foarte utilizată
pentru implementarea filtrelor vectoriale bazate pe rang; principiul acestei metode este
de a asocia fiecărui vector (fiecărei culori) câte un scalar, calculat pe baza componen-
telor sale. Ordonarea scalarilor induce o ordine a vectorilor corespunzători. Trahanias şi
Venetsanopoulos [205], [204] au propus mai multe tipuri de detectoare de contururi bazate
pe conceptul de prelucrare direcţională a vectorilor de culoare – diferenţa dintre culori
fiind măsurată de unghiul dintre cei doi vectori, iar vectorii de culoare fiind ordonaţi după
suma agregată a unghiurilor dintre vectori.
Mai recent a fost propusă folosirea numerelor hipercomplexe [183] (similare cu un număr
complex cu trei părţi imaginare) pentru reprezentarea culorilor. Această reprezentare
deschide perspectiva utilizării tehnicilor frecvenţiale de prelucrare a imaginilor [96], [217].
Sangwine a demonstrat că este posibilă definirea unei extensii a transformatei Fourier
pentru numere hipercomplexe şi deci este posibilă obţinerea unui spectru “color” al imag-
inii color. Acest spectru are aceleaşi proprietăţi ca orice spectru obişnuit (complex) al
unei imagini şi deci permite extragerea contururilor prin operaţii de filtrare de tip trece
sus şi trece bandă. Într-o abordare similară de utilizare a spectrului Fourier a unei imagini
pentru identificarea informaţiei de contur, s-a propus utilizarea unei reprezentări normali-
zate pur cromatice a culorilor [211], folosind deci numai numere complexe şi transformata
Fourier uzuală.

28
Capitolul 2

Filtrarea neliniară bazată pe


ordonare

Ordonarea crescătoare a unui set de valori stă la baza operaţiilor de filtrare de ordine
[163]. Valorile ordonate ale eşantioanelor din fereastra de filtrare, numite statistici de
ordine, pot fi utilizate ca atare, sau pot fi combinate. Filtrul median [163], [210] este cel
mai folosit filtru cu ordonare după rang; ieşirea acestuia este statistica de ordin central a
setului de valori, permiţând astfel eliminarea valorilor extreme aberante (outliar ) ı̂n acelaşi
timp cu păstrarea detaliilor utile ale imaginii. Cea mai uzuală combinaţie a statisticilor
de ordine este combinarea liniară; filtrul astfel obţinut se numeşte L-filtru [163], [210].
L-filtrele sunt extrem de flexibile, ı̂nglobând posibilitatea obţinerii atât a filtrelor simple
de ordonare după rang (inclusiv filtrul median) cât şi a filtrelor liniare1 .
Dacă ı̂n cazul imaginilor scalare ordonarea valorilor nu prezintă nici o problemă, extinderea
claselor de filtre bazate pe ordonare ı̂n cazul imaginilor color (sau, ı̂n general, vectoriale)
nu este o chestiune simplă. După cum se remarcă ı̂n [12], proprietăţile de ordonare există
doar ı̂ntr-o singură dimensiune şi nu există nici o concepţie naturală de rang.
Notaţia general acceptată este de a considera {x1 , x2 , ..., xn } o populaţie de vectori p-
dimensionali, realizări particulare ale variabilei aleatoare multivariate X. Componenta i
a variabilei aleatoare multivariate este Xi şi va fi reprezentată de mulţimea de realizări par-
ticulare {x1i , x2i , ..., xni }. Pentru cazul imaginilor color prelucrate prin filtre de vecinătate,
n este dimensiunea ferestrei de filtrare, numărul de componente a vectorilor este p = 3,
iar vectorii xi sunt triplete de componente de culoare ce descriu fiecare pixel.

1
Filtrul liniar de mediere se obţine evident ı̂n condiţiile ı̂n care ponderile statisticilor de ordine sunt
egale cu 1/n; pentru aplicarea unei filtrări liniare de mediere ponderată, trebuie introdusă noţiunea de L-
filtru adaptiv, cu coeficienţi de ponderare diferiţi pentru fiecare pixel, ce sunt permutări ale coeficienţilor
filtrului liniar (permutări generate ı̂n aceeaşi fel ca ordonarea valorilor din imagine).

29
2.1 Filtrări de ordine prin ordonare lexicografică

O relaţie introdusă ı̂ntre elementele unui spaţiu vectorial se numeşte relaţie de ordine dacă
verifică proprietăţile de reflexivitate (2.1), tranzitivitate (2.2) şi antisimetrie (2.3):

x ≼ x, ∀x (2.1)

x ≼ y si y ≼ z =⇒ x ≼ z, ∀x, y, z (2.2)
x ≼ y si y ≼ x =⇒ x = y, ∀x, y (2.3)
Conform acestei definiţii, pentru date multivariate (vectoriale) se poate introduce o sin-
gură relaţie de ordine bine definită: ordinea lexicografică (numită şi ordine de dicţionar).
Pentru vectorii p-dimensionali x şi y relaţia de ordine lexicografică este definită prin:
{
xi = yi , pentru i = 1, 2, ..., k, cu k ∈ [0; p − 1]
x ≼ y ⇐⇒ (2.4)
xi ≤ yi , pentru i = k + 1.

Este evident că ı̂n cadrul ordonării complete, lexicografice (2.4), vectorii sunt ordonaţi
după prima componentă, apoi după a doua componentă, şi aşa mai departe. Aceasta
ı̂nseamnă că prima componentă trebuie să fie cea mai importantă sau semnificativă (sau,
mai mult, componentele vectorului trebuie să fie ordonate ı̂n ordinea importanţei aces-
tora). Această ordonare nu poate fi cunoscută apriori şi este puternic dependentă de
problemă; mai mult, ı̂n cazul imaginilor, ordinea importanţei componentelor de culoare
nu este invariantă spaţial. În plus (şi acesta este dezavantajul cel mai important), ordinea
lexicografică nu păstrează topologia spaţiului.
Aplicarea practică a ordonării lexicografice se bazează deci pe stabilirea unei ordini a
importanţei componentelor de culoare (deci stabilirea unor ranguri pentru acestea). În
această situaţie se disting două cazuri fundamentale: dacă reprezentarea culorilor este
reprezentarea RGB primară este de presupus că, apriori, toate componentele au o aceeaşi
importanţă şi distincţia dintre ele trebuie făcută adaptiv, pentru fiecare pixel al imaginii,
după măsuri statistice locale; dacă culorile sunt reprezentate ı̂ntr-un spaţiu de culoare
derivat, ı̂n care cele trei componente să aibă semnificaţii fizice sau perceptuale diferite,
este de aşteptat să se poată stabili apriori o ordine a importanţei acestora.

2.1.1 Ordonarea lexicografică ı̂n spaţiul primar

Pentru a realiza ordonarea unor vectori ale căror componente sunt valorile RGB ale cu-
lorilor trebuie, deci, deduse măsuri ale activităţii componentelor de culoare; asemenea
măsuri sunt calculate pentru fiecare plan de culoare, ı̂n vecinătatea fiecărui pixel al imag-
inii. Asemenea măsuri de activitate a componentelor de culoare ı̂ncearcă să stabilească
ı̂n care componentă de culoare sunt sesizabile cele mai mari variaţii. Variaţiile puternice
ale unei componente se presupune că sunt datorate prezenţei impulsurilor de zgomot ı̂n
vecinătatea curentă. Ca măsuri de activitate (sau de disimilaritate) pot fi folosite varianţa,
domeniul de variaţie (diferenţa ı̂ntre maximul şi minimul local), raportul de contrast [96]
sau domeniul de variaţie normat la media componentei; cu cât disimilaritatea este mai
mare, cu atât componenta este mai importantă, şi deci, local, pentru ordonare, compo-
nentele vectorilor de culoare sunt permutate.

30
2.1.2 Ordonarea lexicografică ı̂n spaţiul perceptual

Dificultatea stabilirii unei ordini clare de importanţă a componentelor de culoare RGB a


unei imagini sugerează folosirea unui spaţiu de reprezantare a culorilor ı̂n care, din modul
de definire, importanţa componentelor să fie deja stabilită. Un astfel de spaţiu este
spaţiul perceptual de reprezentare HSV . Reprezentarea se compune din componenta de
nuanţă, ce indică tipul de culoare, componenta de saturaţie, ce exprimă puritatea culorii şi
componenta de “valoare”, de tipul luminanţei sau intensităţii luminoase a culorii. Percep-
tual, cel mai uşor de sesizat sunt modificările nuanţei (deoarece schimbă natura culorilor)
[32], urmate de modificările saturaţiei (care pot da un caracter nenatural imaginii). În
acelaşi timp, prezenţa impulsurilor de zgomot este sesizabilă ı̂n toate componentele HSV .
Aceasta sugerează că cel mai indicat este folosirea componentei V ca cea mai importantă
componentă, ı̂n care să se detecteze prezenţa impulsurilor de zgomot. Atunci, ı̂nainte de
ordonare, vectorii reprezentării HSV a culorilor vor avea permutate componentele H şi
V.

2.2 Filtrări de ordine prin principii de pre-ordonare

Acceptând inutilitatea căutării oricărei ordonări totale, simple, ne-ambigue şi univer-
sale a n eşantioane multivariate, interesul practic a fost limitat la modurile ı̂n care se
pot construi relaţii restrânse de ordonare vectorială, fezabile şi avantajoase. Rezultatul
oricărui principiu de ordonare parţială (sau sub-ordonare, sau pre-ordonare, ce nu re-
spectă principiul de antisimetrie (2.3)) este o ordonare (sau plasare după rang) a uneia
sau mai multor caracteristici ale observaţiei, considerată individual sau ı̂n combinaţie cu
alte observaţii. Proprietăţile dorite pentru ordonarea după rang a datelor vectoriale se
pot extrapola din proprietăţile ordonării scalare: eşantioanele monoton ne-descrescătoare
pe toate componentele sunt vectori proprii, invarianţi la ordonare; relaţia ı̂nglobează posi-
bilitatea determinării unui estimator robust al locaţiei (medianul [163], [6]), ce poate fi
determinat prin selecţia statisticii cu un anume rang; este omogenă faţă de scalarea cu
factori pozitivi a componentelor individuale; se reduce la ordonarea scalară dacă compo-
nentele sunt identice; produce statistici de ordine ce sunt observaţii ale mulţimii ordonate;
sortează valorile extreme aberante ı̂n regiuni consistente ale spaţiului rangurilor.
În [12] se propun patru pricipii de bază de ordonare parţială (pre-ordonare) a datelor
vectoriale:

• ordonarea marginală (descrisă ı̂n secţiunea 2.2.1)

• ordonarea condiţională (descrisă ı̂n secţiunea 2.2.2)

• ordonarea parţială (descrisă ı̂n secţiunea 2.2.3)

• ordonarea redusă (descrisă ı̂n secţiunea 2.2.4)

31
2.2.1 Ordonarea marginală

Ordinea marginală [12], [163] este, după cum sugerează şi numele, o ordonare care se
face după unul sau mai multe din eşantioanele marginale ale vectorilor consideraţi. Din
punctul de vedere al prelucrării semnalelor, ordonarea marginală revine la a ordona ı̂n
mod independent valorile eşantioanelor din fiecare canal al semnalului; modelul asociat
semnalului vectorial (sau multicanal) este ı̂n acest caz o stivă de semnale scalare, ce pot
fi ordonate şi prelucrate ı̂n mod separat. Prin această prelucrare independentă a compo-
nentelor semnalelor nu se ia ı̂n considerare intercorelaţia existentă ı̂ntre canale, aceasta
fiind principala sursă de erori a metodei (ı̂n [6] se arată de exemplu cum o prelucrare de
tip median marginal a unui semnal de culoare produce culori false ı̂n anumite zone cu
culori puternic saturate). Spre deosebire de cazul scalar, statisticile vectoriale marginale
de ordine nu mai sunt observaţii ale semnalului, ci valori noi.
În cazul imaginilor color, ı̂n mod paradoxal, filtrarea marginală produce rezultate exce-
lente, atât vizual (deci caracterizate conform unor măsuri subiective) cât şi ca măsuri de
calitate. Filtrul median marginal MMF (Median Marginal Filter ) elimină ı̂n mod eficient
zgomotul impulsiv din imagini, chiar prezent ı̂n proporţii foarte mari (până la 25%-30%
din pixeli degradaţi). Filtrul median marginal este utilizat şi la derivarea unor structuri
de filtrare adaptive (de exemplu prin comutarea ı̂ntre un filtru median şi un filtru trece
tot, condiţionat de varianţa locală a componentelor).
Din punct de vedere teoretic, există două metode de luare ı̂n considerare a corelaţiei ce
există ı̂ntre componentele imaginii vectoriale: ı̂n primul rând, corelaţia poate fi eliminată
prin decorelarea componentelor imaginii, sau corelaţia dintre canale (componente) poate
fi ı̂nglobată ı̂n proiectarea structurii filtrului.

Filtre mediane marginale cu decorelare

Abordarea cu decorelare propune realizarea filtrării mediane a fiecărei componente de


culoare după decorelarea acestora. Decorelarea se face prin utilizarea transformării
Karhunen-Loève (KL); recorelarea componentelor se face după filtrarea fiecărui plan de
culoare. Această abordare prezintă avantajul unei performanţe independente de sistemul
de reprezentare folosit pentru culorile imaginii (fie ı̂n spaţiul primar RGB, fie un spaţiu
perceptual). După cum se poate uşor constata, presupunerea statistică esenţială pe care
se bazează folosirea transformării KL la decorelare este aceea că valorile (vectoriale) ale
pixelilor imaginii sunt realizări particulare ale unui câmp aleator, identic distribuite. Dacă
această distribuţie a valorilor pixelilor (presupusă deci invariantă pentru ı̂ntreaga imag-
ine) ar fi normală (gaussiană), ı̂n urma decorelării, componentele vectorilor observaţie ar
deveni şi independente, nu numai decorelate [159], [191]. Aşa numita abordare cu indepen-
dentizare a filtrării marginale a imaginilor color: ı̂naintea etapei de decorelare, distribuţia
valorilor pixelilor este transformată ı̂ntr-o distribuţie aproape normală folosind teorema
limită centrală [159], [191] – suma unui număr de câteva variabile aleatoare identic dis-
tribuite, din care nici una nu este dominantă, tinde la o distribuţie normală. Pentru a
realiza această distribuţie aproape normală, s-a propus realizarea de sume locale a vecinilor
fiecărui pixel. După sumare se poate face decorelarea, filtrarea marginală, recorelarea şi
apoi transformarea inversă independentizării (rezultând o operaţie de filtrare numită ID-
MMF (Independent Decorrelated Marginal Median Filter ) sau se poate renunţa la etape de

32
decorelare (rezultând o operaţie de filtrare numită IMMF (Independent Marginal Median
Filter ).

L-filtre vectoriale bazate pe ordonare marginală

Corelaţia dintre componentele observaţiilor vectoriale poate fi luată ı̂n considerare prin
modificarea structurii filtrelor de ordine ce se folosesc; acestea nu mai sunt identice cu
analoagele lor din cazul scalar. Cazul L-filtrelor este tipic pentru această abordare. Un
L-filtru scalar aplicat unui set de valori X = {x1 , x2 , ..., xn } produce ca ieşire o combinaţie
liniară a statisticilor de ordine ale acestora [163], [210]:


n ∑
n
y= wi x(i) = Wi1 x(i1 ) (2.5)
i=1 i1 =1

unde scalarii wi , respectiv Wi1 sunt cei n coeficienţi ai filtrului. Pentru cazul valorilor
vectoriale, fiecare observaţie este un vector cu p componente, xi = (x1i , x2i , ..., xni ), iar
statisticile de ordine marginale sunt vectori formaţi din statisticile de ordine marginale
(calculate pentru fiecare componentă a observaţiilor vectoriale, x(i) = (x1(i) , x2(i) , ..., xn(i) ).
Utilizarea acestor statistici vectoriale conduce la redefinirea L-filtrului vectorial ca:

n ∑
n ∑
n
y= ... Wi1 i2 ...ip x(i) (2.6)
i1 =1 i2 =1 ip =1

unde Wi1 i2 ...ip sunt cele N p matrici p × p de coeficienţi ai filtrului. Forma din (2.6)
poate fi rearanjată ı̂n funcţie de vectorii statisticilor de ordine marginale din fiecare canal
(componentă) a vectorilor observaţie:


p
y= e(j)
Wj x (2.7)
j=1

Determinarea matricilor de coeficienţi Wj se poate face prin optimizarea ı̂n sensul erorii
pătratice medii minime a unui L-filtru a cărui ieşire să fie un estimator nedeplasat al
poziţiei centrale (şi deci să elimine zgomotul impulsiv, singular sau ı̂n mixtură cu zgo-
motul gaussian). Determinarea coeficienţilor necesită cunoaşterea funcţiilor de densitate
de probabilitate a statisticilor de ordine marginale ale semnalului de intrare, precum şi
a valorilor acestuia. Cum rareori semnalul de intrare nedegradat este cunoscut, acesta
trebuie estimat din valorile corecte deja calculate, prin ipoteze asupra staţionarităţii şi
proprietăţilor sale de corelaţie.

2.2.2 Ordonarea condiţională

Ordonarea condiţională este un mod de a stabili ranguri, sau o ordine, sau o modalitate
de selecţie [12], [163] pentru vectorii unui set de date, condiţionată de ordonarea unei
componente marginale a acestora. Deci ordinea unei singure componente marginale decide

33
ordinea vectorilor; din acest punct de vedere, ordonarea condiţională poate fi interpretată
ca o ordonare lexicografică trunchiată la o singură componentă2 .
Acestă trunchiere ı̂nseamnă că orice prelucrare se va face relativ la o singură componentă,
păstrându-le pe celelalte nemodificate. Componenta ce se prelucrează trebuie, desigur, să
fie cea mai coruptă (degradată de zgomot), sau componenta ı̂n care influenţa zgomotului
se resimte cel mai puternic. Ca şi ı̂n cazul definirii ordinii lexicografice (secţiunea 2.1)
este necesară determinarea componentei ce se va prelucra. Se pot distinge şi aici două
cazuri: dacă există o componentă intrinsec dominantă (aşa cum este componenta de
valoare de la reprezentarea perceptuală HSV a imaginilor color), atunci aceasta este cea
care se va prelucra. Dacă toate componentele au, apriori, o aceeaşi importanţă (ca ı̂n
cazul reprezentării imaginilor color ı̂n spaţiul primar RGB), este evident că prelucrarea
unui aceluiaşi ı̂ntreg plan de culoare (sau a unei aceleiaşi componente) nu poate produce
rezultate.
Ca şi ı̂n cazul ordonării lexicografice, soluţia se află ı̂n alegerea adaptivă a componentei
de prelucrat (componenta după care se face ordonarea condiţională) pentru fiecare poziţie
a ferestrei de filtrare (deci pentru fiecare pixel al imaginii). Componenta cea mai activă
este definită printr-o valoare mare a unei măsuri de neuniformitate: interval de variaţie,
interval de variaţie normat la medie, varianţă, raport de contrast, chiar valori proprii.

2.2.3 Ordonarea parţială

Ceea ce Barnett [12] numeşte ordonare parţială a unui set de date multivariate (a unui set
de vectori) se bazează pe distincţia ı̂ntre grupuri de observaţii (vectori) şi nu pe distincţia
ı̂ntre fiecare vector ı̂n parte. Deci, pentru această variantă de sub-ordonare, accentul
se mută de la considerarea eşantioanelor marginale sau a observaţiilor multivariate indi-
viduale la luarea ı̂n considerare a proprietăţilor globale, relaţionale, din ı̂ntregul set al
eşantioanelor. Pentru a face o distincţie ı̂ntre diferitele grupuri de observaţii (având ı̂n
vedere ordinea, extremele, rangul) se urmăreşte modul ı̂n care observaţiile se situază ı̂n
diferite regiuni ale spaţiului eşantioanelor. Metoda de partiţionare folosită (bazată pe
unul dintre mai multe principii posibile) poate implica proprietăţi marginale ale datelor;
scopul principal este de a oferi o distincţie limitată ı̂ntre diferitele eşantioane (vectori) ai
populaţiei.
Ordonarea parţială produce o bază de ı̂mpărţire a eşantioanelor ı̂n grupuri distincte de
diferite ordine, fără a face distincţii ı̂n interiorul unui aceluiaşi grup.
Ordonarea parţială implică construirea anvelopei convexe a setului de observaţii (setul
convex minim ce conţine toate observaţiile iniţiale). Punctele (vectorii) ce se află pe
ı̂nfăşurătoarea anvelopei convexe sunt numite grupul 1, şi apoi eliminate; se formează
apoi anvelopa convexă a reziduului, punctele de pe noua ı̂nfăşurătoare formează grupul
2 (a se vedea figura 2.2.3). Procedeul este repetat, formând astfel o metodă bazată pe
divizarea datelor ı̂n grupuri de ordine (sau de rang). Cu cât numărul (ordinul) grupului
este mai mic, cu atât observaţia (eşantionul, vectorul) este mai extremal. Este evident
2
Anticipând definirea ordonării reduse, putem spune că ordonarea condiţională poate fi obţinută şi
din aceasta dacă scalarul asociat fiecărui vector (a se vedea descrierea completă a metodei ı̂n secţiunea
2.2.4) este o singură componentă a acestuia.

34
Figura 2.1: Partiţionarea unui set de vectori bidimensionali după anvelopa convexă.

că, ı̂n aceste condiţii, vectorii setului de ordin maxim sunt situaţi ı̂n centrul clusterului de
puncte, şi deci sunt candidaţi pentru medianul acestora. O asemenea metodă de ordonare
este analoagă cu ceea ce a fost numit ı̂n statistică cojirea unei populaţii multivariate [117]
(potato peeling sau orange peeling). O asemenea operaţie are ı̂nsă un analog pentru cazul
scalar: aşa numitul filtru tobogan3 de ı̂mbunătăţire a uniformităţii unei regiuni [231].
Esenţa metodei se bazează deci pe implementarea unor algoritmi de calcul al an-
velopei convexe pentru date p dimensionale, cu p > 1, deci pe algoritmi de geometrie
computaţională [156]. Teorema McMullen-Shepard [156] arată că anvelopa convexă a
oricărei mulţimi de puncte din spaţiul Euclidian p dimensional este un politop4 convex
(reciproc, orice politop convex fiind anvelopa convexă a cel puţin unui set de puncte). Pen-
tru cazul plan (p = 2) există alte seturi de teoreme ce dau descrieri ale anvelopei convexe
a unui set de puncte, ce sunt direct implementabile; algoritmi deja clasici sunt algoritmii
Jarvis (Jarvis march) [188] şi algoritmul Graham (Graham scan) [188]. Pe măsură ce
dimensiunea spaţiului creşte problema de determinare a anvelopei convexe devine din ce
ı̂n ce mai complicată; ı̂n cazul general, rezolvarea acesteia se poate face printr-o abordare
de tip package-wrapping (sau gift-wrapping) [156]. Fiecare pas al acestei metode găseşte
o nouă faţă a politopului anvelopă convexă ı̂ndoind (pliind) un hiperplan ı̂n jurul unei
muchii a anvelopei convexe deja determinate, până ı̂n momentul ı̂n care acesta ı̂ntâlneşte
primul punct al mulţimii de puncte iniţiale. Analiza complexităţii algoritmice a unei
asemenea abordări a condus la deducerea unei comportări O(n2 ), unde n este numărul de
puncte al setului pentru care se calculează anvelopa convexă. Abordările cele mai rapide
pornesc de la principiul divide et impera şi de la o teoremă ce demonstrează echivalenţa
dintre problemele sortării unui şir de numere şi de calculare a anvelopei convexe [156];
aceste abordări rapide conduc la o complexitate O(n log n).
O problemă suplimentară apare ı̂n momentul considerării spaţiilor discrete, ı̂n care tre-
buie definit conceptul de convexitate discretă [34]. O componentă conexă discretă C este
convexă dacă pentru orice pereche de puncte P, Q ∈ C şi orice scalar α ∈ [0; 1] există
un punct R ∈ C pentru care discul de centru R şi rază h/2, construit conform distanţei
3
Filtrul tobogan ı̂nlocuieşte extremele valorilor selectate de o fereastră de filtrare cu statisticile imediat
următoare (superioară sau inferioară, depinzând dacă extremul este un minim sau un maxim), cu condiţia
ca acestea să aibă valori diferite de valoarea extremului.
4
Un politop este o mulţime poliedrală, rezultată ca intersecţia unui număr finit de semispaţii ı̂nchise;
un semispaţiu este regiunea spaţiului p dimensional aflată de aceeaşi parte a unui hiperplan.

35
chessboard, include punctul de pe segmentul P Q, dat de αP + (1 − α)Q. O consecinţă
a acestei definiţii a convexităţii este aceea că mulţimea de puncte ce formează anvelopa
convexă discretă nu coincide, ci include mulţimea de puncte de coordonate discrete din an-
velopa convexă “continuă” construită pe baza aceleiaşi mulţimi de puncte discrete iniţiale.
Pentru cazul planului discret, ı̂n [34] se identifică două tipuri esenţiale de configuraţii de
neconvexitate, ce trebuiesc identificate ı̂n mulţimea dată de puncte şi eliminate (elim-
inarea presupune inserarea unui punct suplimentar): configuraţiile U şi L. Dar acestă
operaţie nu este altceva decât o operaţie morfologică de tip totul sau nimic (Hit or Miss)
[210], realizată cu măşti corespunzătoare configuraţiilor U, L şi a rotitelor acestora.
Cu toată bogăţia de metode şi algoritmi existenţi pentru calculul anvelopelor convexe,
literatura de specialitate nu consemnează nici o realizare de filtre de ordine de tip median
bazate pe ordonarea parţială a datelor extrase de fereastra de filtrare din imagine. Putem
găsi mai multe argumente pentru justificarea lipsei totale de interes pentru utilizarea
acestei tehnici: ı̂n primul rând ordonarea se referă la un set mic de valori (vectorii dintr-o
vecinătate a pixelului curent), ceea ce poate duce la imposibilitatea găsirii a mai multe
“rânduri” de anvelope convexe; apoi vectorii au dimensiune mai mare ca 2 (cel puţin 3,
pentru imaginile color), ceea ce face ca algoritmii eficienţi de calcul al anvelopei convexe
să fie din ce ı̂n ce mai greu de descris; ı̂n fine, este posibil ca mulţimea de rang maxim (cea
mai “centrală” să conţină mai mult de un singur vector, ceea ce face ca să fie necesară o
nouă procedură de selecţie).

2.2.4 Ordonarea redusă

Ordonarea redusă [12] se bazează pe reducerea fiecărei observaţii vectoriale (multivariate)


la o unică valoare (scalar) printr-o combinaţie a valorilor componentelor observaţiilor.
Scalarii obţinuţi sunt apoi ordonaţi (conform ordinii comune din mulţimea numerelor
reale); ordinea scalarilor determină ordinea vectorilor.

Ordonare bazată pe distanţe

De cele mai multe ori, scalarii si asociaţi vectorilor xi sunt deduşi pe baza unei distanţe
generalizate la un punct fix specificat xf ix , rezultând astfel o formă pătratică:

si = (xi − xf ix )T A−1 (xi − xf ix ) (2.8)

Matricea pătrată p × p A poate fi orice matrice pozitiv semidefinită; ı̂n general este
preferată alegerea matricii unitare, ce generează metrica Euclidiană, dar este posibilă şi
alegerea matricii de covarianţă a observaţiilor (rezultând distanţa Mahalanobis) sau a unei
matrici diagonale, ce va genera distanţe Euclidiene ponderate. Punctele fixe de interes
sunt ı̂n general vectori obţinuţi prin prelucrări marginale: fie medie (xf ix = xi = xmedie ),
fie median (xf ix = medianxi = xmed ). O asemenea ordonare este interesantă atâta vreme
cât vectorul al cărui scalar asociat are valoarea minimă este cel mai bun candidat, dintre
vectorii observaţiilor, pentru punctul fix (central) faţă de care s-a făcut ordonarea.
S-a propus de asemenea folosirea unor distanţe ponderate de la fiecare vector de culoare
din fereastra de filtrare la medianul marginal local m; ponderarea se face prin utilizarea

36
unor matrici diagonale:
 
1/wR 0 0
si = (xi − m)T  0 1/wG 0  (xi − m)
0 0 1/wB

adică
(xi1 − m1 )2 (xi2 − m2 )2 (xi3 − m3 )2
si = + +
wR wG wB
Ponderile wR , wG , wB sunt astfel alese ı̂ncât să reflecte importanţa fiecărei componente
a vectorilor; la fel ca şi pentru ordonarea lexicografică, aceste ponderi sunt măsuri de
activitate locale, ca: intervalul de variaţie, varianţa, intervalul de variaţie normat la
medie sau raportul de contrast (varianţa normată la medie).
O altă variantă de scalar construit pe baza unor distanţe este scalarul obţinut ca sumă a
distanţelor de la vectorul dat la toţi ceilalţi vectori ai setului de ordonat (distanţă agregată
[12]):
∑ n
si = (xj − xi )T A−1 (xj − xi ) (2.9)
j=1

După cum se arată ı̂n [6], [163] medianul setului de date este caracterizat de o distanţă
agregată minimă, indiferent dacă ne aflăm ı̂n cazul scalar sau vectorial:

xV M F = arg min {si } (2.10)


i=1,n

Filtrul care funcţionează după acest principiu a fost denumit median vectorial VMF (Vec-
tor Median Filter ) [6]; introducerea acestui filtru a constituit ı̂nceputul erei de adevărată
prelucrare multicanal a semnalelor vectoriale, fiind primul filtru construit special pen-
tru date multivariate ce utilizează ı̂n mod intrinsec corelaţia dintre canalele semnalului.
De fapt, vector medianul [6] nu este decât o redescoperire inginerească a ceea ce statis-
tica multivariată numea “punct de distanţă agregată minimă”, punct care ı̂i intersase pe
economişti şi planificatori (pentru care determinarea acestuia este cunoscută ca problema
generalizată a lui Weber [12], de plasare optimală a unui depozit de materiale ce deserveşte
mai multe uzine).
Principalul dezavantaj al VMF este volumul mare de calcule: pentru a calcula medi-
anul vectorial al unui set de N valori, este necesară calcularea distanţelor dintre toate
observaţiile mulţimii, deci N (N − 1)/2 distanţe. Acesta duce la o complexitate O(pN 2 )
a numărului de ı̂nmulţiri. O diminuarea a complexităţii calculului VMF se poate real-
iza prin construirea unei aproximări rapide a distanţei Euclidiene. Această aproximare
se bazează pe o combinaţie liniară a statisticilor de ordine a componentelor vectorului
pentru care se calculează norma, după formula:

p
√ √
∥x∥2 = a ( i − i − 1) |x|(i)
i=1

cu
2
a= √
p √
∑ √
1+ ( i − i − 1)2
i=1

37
Pentru cazul vectorilor de culoare, p = 3, a = 0.9398 şi norma vectorului de culoare x
este dată cu o eroare de 1 − a (6.019 %) de aproximarea:

∥x∥2 = 0.9398 |x|(1) + 0.3893 |x|(2) + 0.2987 |x|(3) .

După cum se demonstrează ı̂n [6], distanţa Euclidiană (normă L2 ) este folosită ca bază
a VMF datorită optimalităţii sale pentru un zgomot modelat de o distribuţie normală;
dacă distribuţia devine biexponenţială, distanţa trebuie calculată ca o normă L1 [6]. Ideea
de modificare a metricii folosite ı̂n calculul distanţei a fost folosită şi ı̂n alte implementări
(de exemplu metrici din familia de norme Lβ ). Ideea a fost extinşă prin propunerea de
a folosi o combinare după două norme: fiecare distanţă ı̂ntre observaţii este calculată pe
baza unei norme Lβ , iar agregarea distanţelor se face după o normă Lα , producând un
scalar de forma:
 ( )1/β α 1/α
∑n ∑ p
si =   (xjk − xik )β   (2.11)
j=1 k=1

Evident, pentru α = β = 1 se obţine medianul vectorial clasic [6]; pentru α, β > 1 se


obţine un efect echivalent de netezire şi de reducere a zgomotului, iar pentru α < 1, β > 1
filtrul se comportă ca un filtru de ordonare după rang, favorizând diferite statistici de
ordine.
Slaba performanţă a filtrului VMF (indiferent de norma care generează distanţa folosită
la calculul scalarului si ) ı̂n prezenţa zgomotului gaussian a dus la ideea combinării aces-
tuia cu un filtru de mediere; ieşirea unui asemenea filtru compozit, denumit EVMF (Ex-
tended Vector Median Filter ) [6] este identică fie cu medianul vectorial VMF, fie cu media
marginală, după cum aceste puncte sunt cele mai centrate (ı̂n sensul distanţei agregate
minime la observaţiile din fereastra de filtrare). Este de asemnea posibilă utilizarea a
mai multe ferestre de filtrare, parţial suprapuse, pentru fiecare pixel al imaginii; ı̂n fiecare
asemenea fereastră se calculează un median vectorial, iar valoarea filtrată este obţinută
printr-o serie de comparaţii ca una dintre valorile mediane astfel calculate, obţinând efecte
de eliminare a zgomotului impulsiv sau de accentuare a contururilor ı̂n imagini nedegra-
date de zgomot.

Ordonare bazată pe orientare unghiulară

Criteriile de ordonare a observaţiilor vectoriale folosite până ı̂n acest moment au ilustrat
doar componenta modul a vectorilor; componenta de tip orientare (unghi) a rămas neex-
plorată până ı̂n momentul introducerii noţiunii de filtru [median, ı̂n principiu] direcţional.
Acest tip de filtre, introduse ı̂n [205] se bazează pe folosirea ca scalar si pentru ordonarea
redusă, a distanţei agregate unghiulare a observaţiilor vectoriale, deci suma unghiurilor
de la fiecare vector la toţi ceilalţi. Ca şi pentru filtrul median vectorial VMF [6], filtrul
direcţional de bază BVDF (Basic Vector Directional Filter ) produce ca ieşire vectorul a
cărui distanţă unghiulară agregată este minimă. Pentru un asemenea filtru, scalarul de
ordonare este deci ( )
∑n ∑n
⟨xi , xj ⟩
si = xdi xj = arccos (2.12)
j=1 j=1
∥xi ∥ ∥xj ∥

38
şi medianul direcţional se defineşte ca:
xV DF = arg min {si } (2.13)
i=1,n

Una dintre motivaţiile principale ale considerării prelucrărilor direcţionale este legată de
natura particulară a unor clase de imagini (sau semnale) multidimensionale, mai precis
imaginile color. Pentru culori reprezentate ı̂n spaţiul RGB primar, intersecţia vectorului
de culoare cu planul (triunghiul) Maxwell prezintă o importanţă deosebită. Pe de o parte,
una dintre măsurile de bază de calitate a prelucrărilor imaginilor color este definită ca
o eroare pătratică medie normalizată a valorilor ı̂n planul Maxwell (aceasta este MCRE,
Mean Chromaticity Error ); pe de altă parte, după cum se arată şi ı̂n [32], cromaticitatea
unei culori (nuanţa şi saturaţia culorii) este determinată de distanţele de la intersecţia
vectorului de culoare cu planul Maxwell la culorile primare maxim saturate (roşu, verde
şi albastru pur). Este evident că acest punct de intersecţie depinde numai de orientarea
vectorului de culoare şi nu de modulul acestuia.
Filtrarea direcţională generalizată GVDF (Generalized Vector Directional Filter ) [205],
este o extindere a BVDF ce selecţionează mai multe observaţii ca ieşire posibilă a filtrului,
observaţii ce au cele mai mici distanţe unghiulare agregate[207]; ı̂n esenţă, această selecţie
multiplă permite ca să se realizeze o a doua selecţie a unui singure observaţii de ieşire, prin
operaţii de distanţă (modul). Abordarea direcţională a fost folosită şi pentru detectarea
contururilor ı̂n imagini color şi pentru realizarea segmentării pe regiuni a imaginilor color
prin ı̂ncorporarea informaţiei de orientare (unghi faţă de vecini) la descrierea pixelilor.

Ordonare bazată pe distanţe şi orientare unghiulară

Comportările relativ complementare ale celor două tipuri esenţiale de filtre vectoriale
(cu ordonare după distanţe şi cu ordonare după direcţie) ı̂n ceea ce priveşte eficienţa ı̂n
zgomotele principale (impulsiv şi gaussian) a condus la ideea combinării celor două tipuri
de prelucrări, ı̂ntr-o abordare mixtă modul-direcţie. O primă etapă a combinării celor
două principii a fost introdusă prin aplicarea secvenţială a unei preselectări după direcţie
a vectorilor (GVDF) urmată de o prelucrare după modul a acestora (fie scalară, după
componenta de luminanţă, fie ca VMF).
Un alt mod de a lua ı̂n calcul distantele ”ı̂n valoare” şi unghiulare constă sin construirea
unui scalar si care să integreze atât informaţia direcţională cât şi informaţia de modul a
vectorilor ce se prelucrează. Modelul cel mai general folosit este o combinaţie exponenţial
convexă a distanţelor agregate unghiulare şi Euclidiene ı̂ntre vectorii setului:
( n )p ( n )1−p
∑ ∑
si = xdi xj ∥xi − xj ∥ (2.14)
j=1 j=1

Filtrul realizat prin ordonarea vectorilor după scalarul (2.14) a fost numit DDF(Distance
Directional Filter ) şi este generalizarea unui filtru simplu definit anterior cu p = 0.5.
Valoarea parametrului p care asigură rezultate optimale pentru o gamă largă de distribuţii
de zgomot este p = 0.75, deci atribuind o pondere mai mare caracterului direcţional.
O altă modalitate de a integra prelucrările direcţionale şi de distanţă este de a comuta
ı̂ntre ieşirea filtrului VDF şi VMF. O posibilitate este de a construi ieşirea filtrului pe

39
direcţia vectorului VDF şi cu modulul vectorului VMF:
∥xV M F ∥
xout = xV DF
∥xV DF ∥

În plus, se poate introduce un grad suplimentar de “fineţe” a comparaţiei, luând ı̂n calcul
şi media marginală a observaţiilor, vectorul de ieşire fiind pe direcţia VDF şi cu modulul
vectorului VMF sau mediei marginale, după cum unul dintre aceşti vectori este cel mai
central situat, ı̂n sensul distanţei agregate minime la observaţiile setului de prelucrat.

Ordonare bazată pe proiecţii

Metodele de ordonare redusă prezentate până ı̂n prezent s-au bazat esenţial pe consider-
area poziţiilor relative a vectorilor de ordonat ı̂n spaţiul original de reprezentare a acestora
(spaţiul eşantioanelor), fie prin măsurarea distanţelor, fie prin măsurarea unghiurilor, fie
prin considerarea ambelor. O variantă nouă de determinare a unor scalari si de ordonare a
vectorilor pleacă de la ideea modificării spaţiului de reprezentare a acestora; o reprezentare
echivalentă ı̂ntr-un spaţiu de dimensiune mai mică va duce la reducerea dimensiunii vec-
torului, iar, prin repetare, se poate ajunge la un scalar. O asemenea metodă a fost numită
metodă proiectivă.
Observaţia iniţială se raportează la utilizarea triunghiului (planului) Maxwell ı̂n spaţiul
RGB primar. Dar acest punct de intersecţie este definit de numai două coordonate
independente, şi nu de trei, precum culoarea din care provine, şi poate fi considerat ca
proiecţia vectorului de culoare pe planul Maxwell. Repetarea acestei proiecţii ı̂n plan, pe
“dreapta Maxwell” (definită de ecuaţia x1 + x2 = 1) va reduce ı̂ncă o dată dimensiunea
vectorului, până la un scalar.
În cazul general, pentru un vector p dimensional, x = (x1 , x2 , ..., xp ), vom defini xk , vec-
torul după a k-a proiecţie (compusă dintr-o rotaţie şi o translaţie, deci o transformare
afină); proiecţia se defineşte astfel ı̂ncât primele k componente ale vectorului xk să fie
nule, deci x1 = (0, x11 , ..., x1p−1 ), xk = (0, 0, ..., xk1 , ..., xkp−k ). Ultima proiecţie va pro-
duce vectorul xp−1 = (0, ..., 0, xp1 ) ce are o unică componentă nenulă. Această unică
componentă nenulă este scalarul după care se face ordonarea; vectorul al cărui scalar este
medianul tuturor scalarilor este definit ca medianul vectorial.
Revenind ı̂n cazul particular al vectorilor de culoare (cu trei componente, pe care le vom
considera (R, G, B)), proiecţiile vor produce scalarii
(1 + √1 )(G
3
+ B − 1) + √2 R
3
sR =
(1 + √1 )(G
3
+ B − 1) − √2 R
3

(1 + √1 )(R
3
+ B − 1) + √2 G
3
sG =
(1 + √1 )(R
3
+ B − 1) − √2 G
3

(1 + √1 )(R
3
+ G − 1) + √2 B
3
sB =
(1 + √1 )(R
3
+ G − 1) − √2 B
3
după cum prima rotaţie este după axa R, G, sau B. Alegerea unui anume scalar se face
adaptiv, conform criteriilor locale de activitate a fiecărei componente.

40
Figura 2.2: Curbe de umplere a spaţiului - cazul bidimensional.

Filtrul median prin proiecţii iterative pe planul Maxwell se comportă mai bine decât filtrul
VMF clasic ı̂n condiţii de zgomot mic (impulsiv şi mixtură); ı̂n plus, şi volumul de calcule
necesare pentru a calcula scalarul este extrem de mic – filtrul cu proiecţii iterative necesită
27 ı̂nmulţiri pentru fiecare pixel (considerând o fereastră pătrată de 3 x 3 pixeli) iar filtrul
VMF necesită 144 ı̂nmulţiri (şi un număr mult mai mare de adunări).

Ordonare bazată pe curbe de umplere a spaţiului

În prelucrarea imaginilor, problema reducerii unor obiecte vectoriale la scalari nu este
nouă, şi a apărut odată cu considerarea primelor metode de codare a imaginilor, ca
aplicaţii directe ale metodelor existente pentru semnalele unidimensionale. Aplicarea
unei asemenea metode necesita transformarea semnalului bidimensional imagine ı̂ntr-un
semnal unidimensional prin parcurgerea corespunzătoare a tuturor pixelilor. Parcurgerea
(sau baleierea imaginii) ı̂nseamnă de fapt stabilirea unei ordini de vizitare a fiecărui punct
a grilei rectangulare de reprezentare a imaginii, deci ordonarea unor vectori bidimensionali
(ale căror componente sunt coordonatele pixelilor). O asemenea parcurgere a fost formal-
izată matematic ca o curbă de umplere a spaţiului [34]. O curbă de umplere a spaţiului
T este o aplicaţie bijectivă ce asociază fiecărui punct din Z 2 (punctul din plan) un număr
natural (numărul de ordine):

T : K ⊂ Z 2 −→ N, T (xk ) = nk

Curba de umplere a spaţiului va trece prin fiecare punct al mulţimii baleiate o singură
dată (nu se va autointersecta). O clasă particulară a acestor curbe are proprietăţile
suplimentare de autosimilaritate (sunt fractali) şi de păstrare a corelaţiei spaţiale (puncte
care sunt vecine pe curbă, sunt vecine ı̂n plan). Exemplul cel mai cunoscut de astfel de
curbă este curba Hilbert, cunoscută ı̂n două variante: curba Peano (sau curba Hilbert
ı̂n U) şi curba Morton (sau curba Hilbert ı̂n Z) [34], [210]. Denumirea celor două curbe
provine de la forma celulei de bază (reprezentate ı̂n figura 2.2.4).
Proprietăţile de bijectivitate a curbelor Hilbert (şi ı̂n general a curbelor de umplere a
spaţiului) au fost propuse pentru ordonarea redusă a vectorilor [175]: fiecărui vector i se
asociază indicele punctului de pe curba de umplere a spaţiului corespunzător. Scalarii
(indicii de pe curbă) sunt ordonaţi, iar vectorul al cărui indice este medianul valorilor
indicelor extrase este ales ca median a setului de vectori.
Problema esenţială legată de utilizarea unor curbe de tip Hilbert pentru calcularea scalar-
ilor de ordonare redusă este aceea a modificării structurii de vecinătate a spaţiului indicilor
faţă de spaţiul iniţial: puncte vecine din spaţiul iniţial nu mai sunt vecine ı̂n spaţiul indi-
cilor, şi reciproc [175]. Aceasta duce la apariţia de artefacte pe imaginile prelucrate, chiar

41
la nivele mici de zgomot. Pentru a evita asemenea efecte trebuiesc folosite curbe care să
păstreze cât mai bine structura de vecinătate a spaţiului vectorial iniţial, şi deci corelaţia
dintre vectori. Este evident că curba Hilbert ı̂n U (Peano) este mult mai potrivită din
acest punct de vedere decât curba Hilbert ı̂n Z (Morton). Aceeaşi observaţie conduce la
definirea a unor curbe cu aspect “spiralat” [175].
Esenţial, problema care va decide eficienţa practică a unei curbe (pentru probleme de
filtrare a imaginilor color, de exemplu) este ı̂nsă problema calculului indicelui pe curbă
al unui anume vector. Trebuie să remarcăm că soluţia de implementare cu un LUT nu
este realizabilă: pentru vectori p dimensionali exprimaţi cu b biţi pe fiecare componentă,
tabelul de echivalenţă ar trebui să conţină 2pb numere de pb biţi (pentru imagini color
obişnuite acesta ı̂nseamnă 224 numere de 3 octeţi, deci 12 MB). Atât pentru curba Peano,
cât şi pentru curba definită de [175], trecerea de la cazul plan de definire la vectori de
dimensiune superioară implică o procedură recursivă, cu decizii multiple. Spre deosebire
de acesta, pentru curba Morton, indicii se calculează extrem de simplu: forma binară a
indicelui pe curbă a unui vector se obţine prin ı̂ntreţeserea formelor binare a componentelor
vectorului; dacă componenta xi a vectorului p dimensional este exprimată ı̂n formă binară
ca xi,b−1 xi,b−2 ...xi,1 xi,0 , atunci forma binară a indicelui este [34]:

x1,b−1 x2,b−1 ...xp,b−1 x1,b−2 x2,b−2 ...xp,b−2 ...x1,0 x2,0 ...xp,0

Diversitatea de metode de ordonare prezentate ı̂n acest capitol oferă o perspectivă asupra
posibilităţilor de implementare a filtrelor de ordonare (şi ı̂n particular filtrul median)
pentru imaginile vectoriale (color). Eficienţa acestor filtre este asemănătoare analoagelor
lor scalare şi ı̂şi arată limitele ı̂n cazul filtrării unor zgomote de tip mixtură. Ceea ce se
impune este deci modificarea structurii de filtrare prin considerarea tuturor vectorilor din
fereastra de filtrare.

42
Capitolul 3

Filtrarea neliniară fără principii de


ordonare

După cum am mai amintit, filtrarea neliniară poate apare ca o consecinţă a mai multor
procedee de prelucrare: fie prelucrări intrinsec neliniare (aşa cum este ordonarea valorilor
extrase de fereastra de filtrare, ca ı̂n cazul filtrelor cu ordonare după rang sau a L-filtrelor),
fie adaptarea unei structuri de prelucrare care, intrinsec, nu este neliniară. Adaptarea se
referă la modificarea parametrilor de definiţie a unui filtru ı̂n funcţie de caracteristicile
locale ale semnalului (imaginii) de prelucrat. În mod uzual, un filtru, interpretat ca o
operaţie locală (de vecinătate), este definit de o fereastră de filtrare (mulţime de puncte
ce defineşte vecinătatea punctului curent de prelucrat) şi de o mulţime de coeficienţi (sau
ponderi), ataşaţi poziţiilor ferestrei de filtrare. Adaptarea se poate referi fie la modificarea
coeficienţilor de definiţie a filtrului, fie la modificarea formei ferestrei de filtrare.
În cele ce urmează vom considera filtrele neliniare obţinute ca urmare a adaptării unei
filtrări liniare; dacă {xj } este mulţimea celor n vectori (valori ale pixelilor) din fereastra
de filtrare curentă, atunci ieşirea filtrului pentru poziţia dată este combinaţia liniară
ponderată a acestor valori:

Card(W )
y= wj xj , xj ∈ W (3.1)
j=1

Pentru o filtrare de netezire (deci de reducere a zgomotului), coeficienţii wj trebuie să


satisfacă [32], [96] condiţia de normare (care asigură invarianţa pentru zone uniforme):


Card(W )
wj = 1 (3.2)
j=1

Adaptarea semnifică că mulţimea coeficienţilor filtrului este diferită, de la un punct la


altul al imaginii şi ı̂n funcţie de conţinutul acesteia, şi deci wj = wj (m, n, x(m, n)), sau
că vecinătatea se modifică, dependent de punctul curent de prelucrare, W = W (m, n).
Ceea ce trebuie ı̂nsă remarcat este faptul că cele două aspecte ale adaptării nu sunt
independente: un coeficient de ponderare extrem de mic (la limită nul) semnifică neluarea
ı̂n calculul ieşirii y a filtrului a valorii respective, deci, echivalent, eliminarea poziţiei
corespunzătoare din fereastra de filtrare.

43
Problema determinării adaptive a ponderilor asociate unei ferestre de filtrare de formă
impusă poate fi abordată din mai multe puncte de vedere: coeficienţii pot fi dependenţi
(ı̂n mod explicit) de distanţele dintre vectorii selectaţi de fereastra de filtrare, prin ceea ce
a fost denumit DDMF - Distance Dependent Multichannel Filter ; deducerea coeficienţilor
se poate face prin abordări de clustering sau de estimare statistică; coeficienţii pot fi
deduşi printr-o abordare bazată pe integrarea logicii vagi (fuzzy) ı̂n abordările clasice.
De asemenea, se pot avea ı̂n vedere şi metode bazate pe calculul unei ferestre de filtrare
adaptive.

3.1 Filtre dependente de distanţă

Prelucrările cunoscute sub numele de filtrări cu coeficienţi dependenţi de distanţă, şi


denumite DDMF - Distance Dependent Multichannel Filter [71] sau MDF - Multichannel
Distance Filter [52] reprezintă o clasă de filtre adaptive, bazate pe (3.1), ı̂n care coeficienţii
de ponderare a vectorilor sunt deduşi ı̂n funcţie de distanţele relative dintre aceştia (deci
conform distribuţiei lor ı̂n spaţiul de reprezentare). Spaţiul de reprezentare a vectorilor
(pentru cazul imaginilor color) este spaţiul RGB primar, chiar dacă distanţele euclidiene
dintre vectori nu sunt ı̂n concordanţă cu diferenţele perceptuale de percepere a culorilor
reprezentate de aceştia. În general, ceea ce se deduce direct pentru fiecare vector este o
pondere a contribuţiei sale la ieşirea filtrului, aj , ponderi care, pentru setul de n vectori
ai ferestrei de filtrare, nu respectă condiţia de normare a coeficienţilor, impusă de (3.2).
Îndeplinirea condiţiei de normare este asigurată prin construirea ponderilor de filtrare ca
raportul dintre coeficienţii de ponderare şi suma acestora:
aj
wj = ∑
n (3.3)
aj
i=1

3.1.1 Folosirea distanţei euclidiene dintre vectori

Modul de construcţie a coeficienţilor de ponderare a vectorilor este ı̂n principiu inspirat


din modalităţile de ordonare redusă a respectivilor vectori, deja discutate ı̂n capitolul
anterior. În general, coeficientul de ponderare este o funcţie dependentă de un scalar dj ,
de tip scalar de ordonare (sj ). Funcţiile de tip polinomial au fost folosite cu succes de
majoritatea cercetătorilor. Cea mai simplă funcţie propusă este puterea r a scalarului:

1
aj = (3.4)
drj

Această abordare a fost introdusă ı̂n [52] (ANL1 - Adaptive Non-Linear ), [26] (MDF1) şi
[71] (DDMF2). Scalarul de tip distanţă dj trebuie să exprime situarea vectorului curent
xj , căruia ı̂i este ataşat, faţă de ieşirea dorită a filtrului, şi deci trebuie să fie cu atât mai
mare cu cât vectorul curent este mai depărtat de valoarea corectă (deci mai afectat de
zgomot). Pentru a satisface această cerinţă, ı̂n [52] şi [26] se foloseşte distanţa euclidiană
agregată (suma distanţelor de la vectorul curent la toţi ceilalţi vectori ai ferestrei de
filtrare); ı̂n [53] este folosit acelaşi model pentru prelucrarea semnalelor unidimensionale

44
multicanal (semnale seismice):

n
dj = ∥xi − xj ∥ (3.5)
i=1

În [71] se propune folosirea distanţei de la vectorul curent la un punct fix, ce este ı̂n
general un estimator marginal al ieşirii dorite (ı̂n general, medianul marginal multicanal,
dar şi vectorul ce corespunde poziţiei ı̂n care se face filtrarea, deci vectorul din originea
ferestrei de filtrare):
dj = ∥xf ix − xj ∥ (3.6)
Pentru a evita cazurile de nedeterminare ı̂n evaluarea lui aj (ce pot apare când dj = 0),
ı̂n [26] şi [71] s-a propus modificarea distanţei prin adunarea unei constante ε, care este
fie unitară (ε = 1) [26] pentru MDF2, fie este foarte mică (ε −→ 0) [71] pentru DDMF2:

dj = ∥xf ix − xj ∥ + ε (3.7)

Testele efectuate asupra comportării acestui tip de filtre ı̂n prezenţa a diferite distribuţii
de zgomot au condus la concluziile folosirii unor valori specifice ale puterii r: r = 1 pentru
zgomot uniform, r = 0 pentru zgomot gaussian (ceea ce ı̂nseamnă de fapt că ponderile
tuturor vectorilor sunt egale, şi filtrul obţinut este de fapt filtrul de mediere marginală),
r = −2 pentru zgomot de tip laplacian sau cu alte distribuţii de tip “long tail ” (cu coadă
lungă). Adaptarea propriu-zisă a puterii r ı̂n funcţie de caracteristicile locale ale imaginii
(semnalului) - deci ı̂n interiorul ferestrei de filtrare - se poate face conform caracteristicilor
statistice locale de ordinul doi ale semnalului [25]. Filtrul propus, AMDF - Adaptive
Multichannel Distance Filter, se bazează pe o extindere multicanal a unui algoritm clasic
de estimare a varianţei locale a semnalului util şi a zgomotului [128], [231]. Pe fiecare
canal (deci pe fiecare plan de culoare a imaginii color) se face o estimare a varianţei locale
2
de pe canalul j, ı̂n poziţia curentă de filtrare, σxj , prin:
(n )2

n ∑
xij − n
2 1
xij
2 i=1 i=1
σxj =
n−1
Pentru fiecare canal, se stabileşte un coeficient de importanţă a efectului zgomotului faţă
de variaţiile proprii ale semnalului:
2
σxj
cj = 1 − 2
σnj
iar pe baza acestui coeficient se alege puterea r corespunzătoare:
{
0, dacă min{cj } ≥ 0
r= (3.8)
min{cj }, ı̂n rest.

Plecând de la ideea folosirii de distanţe la puncte fixe (3.6), ı̂n [71] s-a reluat ideea din
[201], de a suma distanţele la mai multe puncte fixe reprezentative, ca medianul marginal,
media marginală şi punctul central (din originea ferestrei de filtrare), rezultând un filtru
numit DDMF3, cu o distanţă:

dj = ∥xmedie − xj ∥ + ∥xmedian − xj ∥ + ∥xcentru − xj ∥ (3.9)

45
Scalarul de distanţă dj asociat fiecărui vector exprimă calitatea sa (deci măsura ı̂n care
valoarea sa este neafectată de zgomot); exprimarea unei asemenea măsuri trebui ı̂nsă să
ţină seama şi de ceilalţi vectori din fereastra de filtrare; ı̂n acest context scalarul propus
ı̂n [52] pentru filtrul MDF2 este construit ca suma distanţelor dintre toţi vectorii ferestrei
de filtrare, mai puţin vectorul curent:

1∑
n
aj = di − dj
2 i=1

unde dj este distanţa euclidiană agregată din (3.5).


O altă funcţie propusă pentru transformarea distanţelor dintre vectorii ferestrei de filtrare
ı̂n ponderi relative individuale este o funcţie de tip exponenţial [71], determinată de
parametrii α > 1 şi 0 < β < 1:
( )
dj
aj = exp − ln α
βdmax
Constanta dmax este determinată ca fiind distanţa maxim posibilă dintre vectori pentru
semnalul studiat (ı̂n cazul imaginilor √ color reprezentate cu 8 biţi pentru fiecare plan de
culoare, aceasta este dmax = 8·255· 3). Acestă relaţie exprimă principiul general conform
căruia vectorii ce au asociate distanţe mici trebuie să aibă asociate ponderi mai mari (mai
ales ı̂n cazul ı̂n care se doreşte eliminarea impulsurilor de zgomot şi păstrarea clarităţii
tranziţiilor din imagine). Testele experimentale au arătat că o combinaţie eficientă de
parametri este α = 2 şi β = 0.05 [71].

3.1.2 Folosirea distanţei unghiulare dintre vectori

După cum am arătat şi ı̂n secţiunea privind filtrarea bazată pe ordonare directă a vec-
torilor, ı̂n cazul imaginilor color, informaţia de culoare (crominanţă, saturaţie) este mai
importantă decât informaţia de intensitate luminoasă, şi deci pare naturală folosirea unor
criterii de comparaţie (ordonare, ponderare) a vectorilor care să ia ı̂n considerare această
informaţie direcţională. Aceasta este abordarea numită Vector Directional [206], ı̂n care
distanţa dintre vectori este ı̂nlocuită cu unghiul dintre respectivii vectori. O asemenea
abordare a fost adoptată ı̂n [168]; pe baza distanţei agregate unghiulare dj (2.12) sau
(3.10) dintre vectori se derivă coeficienţi aj ce exprimă ponderea cu care vectorul xj
participă la ieşirea filtrului.
∑n ∑n ( )
⟨xi , xj ⟩
dj = xd
i xj = arccos (3.10)
i=1 i=1
∥xi ∥ ∥x j ∥

În [168] se propune FVDF - Fuzzy Vector Directional Filter, pentru care fiecare coeficient
de ponderare a vectorilor este dat de o formulă ce grupează abordările polinomială şi
exponenţială :
1
aj =
1 + exp(drj )
Pentru rezultate optime, parametrul de control r are valorile 1 sau 2. Această construcţie
impune două comentarii: ı̂n primul rând, filtrul vector direcţional de bază (BVDF) se

46
poate obţine selectând doar vectorul a cărui coeficient aj este maxim; ı̂n al doilea rând,
termenul de fuzzy ce apare ı̂n denumirea filtrului nu exprimă neapărat existenţa unor
inferenţe logice a unui set de reguli, ci se justifică prin normarea (3.3) care produce
numere subunitare pozitive, ce pot fi interpretate ca grade de apartenenţă ale fiecărui
vector din fereastra de filtrare la clasa “valoare corectă”.
O altă abordare bazată de distanţa agregată unghiulară dj este prezentată ı̂n [164] şi se
bazează pe construcţia unor coeficienţi de ponderare daţi de:

max{di } − dj
aj =
max{di } − min{di }

Acest filtru a fost denumit ANNMF - Adaptive Nearest Neighbor Multichannel Filter. O
modificare a sa se poate obţine dacă ı̂n locul distanţei unghiulare agregate se foloseşte doar
unghiul dintre vectorul curent şi un vector de referinţă (3.11) (deci acelaşi principiu ca
şi ı̂n cazul folosirii distanţei euclidiene). Vectorul de referinţă (dacă nu este chiar centrul
ferestrei de filtrare) se calculează ı̂n general ı̂ntr-o altă fereastră de filtrare (de dimensiune
mai mică decât fereastra de filtrare curentă); de aceea filtrul astfel construit se numeşte
DWANNMF - Double Window Adaptive Nearest Neighbor Multichannel Filter [164]:

dj = x\
f ix xj (3.11)

În fine, ca şi ı̂n cazul ordonării vectorilor, se pot considera abordări mixte, distanţă - unghi,
deci integrarea ı̂ntr-un singur scalar (printr-un produs) a distanţelor agregate unghiulare
şi euclidiene [101], [102]. O asemenea variantă este propusă ı̂n [71] ca DDMF4:
( n ) ( n )
∑ ∑
dj = xd
i xj · ∥xi − xj ∥
i=1 i=1

sau ca
( )

n
dj = xd
i xj · (∥xmedie − xj ∥ + ∥xmedian − xj ∥ + ∥xcentru − xj ∥)
i=1

3.2 Filtrarea prin estimare statistică

Filtrarea poate fi interpretată şi ca o estimare [statistică] a valorii corecte a pixelului


curent, ı̂n condiţiile ı̂n care se dispune de observaţii perturbate de zgomot (pixelul curent
şi vecinii săi din imaginea degradată). Una dintre metodele simple de determinare a unor
estimaţi ai unor mărimi statistice pe baza unui set unic de observaţii sunt cunoscute ı̂n
statistică ca metode de reeşantionare a datelor [117]. Asemenea metode (relativ similare)
sunt metodele jack-knife şi bootstrap, folosite mai ales pentru construirea de intervale de
ı̂ncredere ale estimatelor. Cea mai rapidă dintre cele două metode este metoda jack-knife,
pe care am folosit-o ı̂n construirea unor filtre mediane vectoriale.
Principiul tehnicii jack-knife este următorul: să presupunem că se doreşte determinarea
unui estimat θb al unui parametru oarecare θ al unei populaţii formate din n observaţii p

47
dimensionale P = {x1 , x2 , ..., xp }. Din populaţia iniţială se construiesc n noi populaţii,
fiecare dintre acestea conţinând toate observaţiile iniţiale, mai puţin observaţia xi :

Pi = P \ {xi }, i = 1, 2, ..., n

Pentru fiecare nouă populaţie de n − 1 observaţii se construieşte un estimat θbi , iar pe baza
tuturor celor n estimate astfel calculate, se construieşte estimatul jack-knife θbjk printr-o
operaţie de mediere aritmetică.
1 ∑b
n
b
θjk = θi
n i=1

Aplicaţia propusă a acestei tehnici este realizarea unui filtru median vectorial; aceasta
ı̂nseamnă că estimatele θbi sunt mediane ale vectorilor ce formează populaţiile Pi . Aceste
estimate pot fi obţinute prin orice fel de tehnică de tip median vectorial (deci median
marginal, sau VMF, sau VDF, ...). Complexitatea algoritmică a noului filtru este de
acelaşi ordin de mărime cu a filtrelor de bază prin care se calculează estimatele θbi . Noul
filtru este mult mai robust ı̂n prezenţa zgomotului gaussian, datorită medierii estimatelor
parţiale.
În [108], [110], [107] se propune utilizarea unui filtru MTM - Modified Trimmed Mean
vectorial (multivariat), ca extensie directă a filtrului scalar analog; filtrul scalar mediază
un număr dat de statistici de ordine situate simetric faţă de median. Extensia vectorială
a MTM este bazată pe ordonarea redusă a vectorilor din fereastra de filtrare prin distanţe
faţă de un punct fix (medianul marginal), calculate ca distanţe Mahalanobis (C fiind
matricea de covariaţie locală):

si = (xi − xmed )T C−1 (xi − xmed )

Esenţa problemei este faptul că matricea C este necunoscută. Estimarea ei prin medie
şi varianţe locale este ineficientă, deoarece acestea nu sunt estimate robuste, şi valorile
acestora sunt puternic influenţate de prezenţa chiar a unui singur vector aberant (“out-
liar ”). În [108], [110], [107] se analizează diferite metode, directe şi iterative, de estimare
a matricii de covariaţie şi se studiază robusteţea estimatelor obţinute şi a filtrelor realizate
pe baza lor la diferite tipuri de zgomote.
O altă abordare a creşterii robusteţii structurilor de filtrare este aceea de a ı̂ncerca de-
terminarea unui estimat liniar (optim ı̂n sensul minimizării unei funcţii de cost pătratic
a erorii de estimare); ı̂n acest caz estimatul este [191]:
∫∞
∫∞ xf (x, y)dx
−∞
b=
x xf (x|y)dx = (3.12)
f (y)
−∞

În cazul general, distribuţia zgomotului ce a afectat imaginea nu este cunoscută, şi den-
sităţile de probabilitate implicate ı̂n (3.12) nu pot fi determinate prin tehnici parametrice;
atunci soluţia constă ı̂n determinarea lor prin tehnici neparametrice, pe baza mulţimii
observaţiilor. Metoda de estimare folosită ı̂n [165] şi [166] este o estimare cu nuclee (“ker-
nel estimator ”). Astfel, funcţia de densitate de probabilitate necunoascută f (z) este esti-
mată neparametric din setul de n observaţii multivariate (de dimensiune p) independente

48
(realizări particulare ale procesului aleator) prin:
( )
1∑
n
z − zi
fb(z) = (hi )−p K (3.13)
n i=1 hi

Funcţia K : Rp −→ R este nucleul de estimare (funcţie pozitivă, centrată pe 0, de arie


unitară a subgraficului); ı̂n [166] sunt folosite nuclee de estimare exponenţiale:
K(z) = e−|z|

K(z) = e− 2 z
1 T
z

Scalarii hi sunt parametrii de netezire, definiţi ı̂n funcţie de distanţa euclidiană agregată
dintre vectorul curent zi şi ceilalţi vectori ai mulţimii de observaţii; aceştia au forma:
( n )

hi = n− p Ai = n− p
k k
∥zj − zi ∥ (3.14)
j=1

Folosind expresiile (3.13) şi (3.14) ı̂n (3.12), şi folosind observaţiile din imaginea cu zgomot
xi obţinem:  ( ) 
−p x−x
∑ n
 hi K hi i 
b=
x  ( )
∑ n  xi
i=1 −p
hj K hj x−xi
j=1

Acest estimat liniar corespunde unei combinaţii liniare a vectorilor ferestrei de filtrare cu
coeficienţii de ponderare ( )
−p x − xi
wi = hi K (3.15)
hi

În [166] sunt propuse două extensii ale acestui filtru, rezultate direct din aplicarea teoriei
estimării: ı̂n primul rând s-a introdus un factor suplimentar de reglaj prin varierea
coeficienţilor de netezire a nucleelor de estimare după o putere r, caz ı̂n care ponder-
ile filtrului liniar din (3.15) devin:
( )
−p x − xi
wi = hi K
hri
Un estimator cu o calitate superioară se poate obţine printr-o tehnică de filtrare cu fer-
eastră dublă (DW - Double Window ), prin care fiecare observaţie zgomotoasă din fereastra
de filtrare este ı̂nlocuită de un median vectorial (marginal sau VMF) al valorilor dintr-o
fereastră mai mică centrată ı̂n punctul respectiv. Deşi această abordare este foarte ro-
bustă şi permite realizarea de filtre cu performanţe bune de rezistenţă la diferite tipuri de
zgomote (impulsive şi mixturi), complexitatea unui asemenea filtru o depăşeşte pe cea a
abordărilor ce nu folosesc estimarea.

3.3 Filtrarea cu vecinătăţi adaptive

După cum am arătat ı̂n introducerea acestui capitol, adaptarea se poate referi fie la mod-
ificarea coeficienţilor de definiţie a filtrului, fie la modificarea formei ferestrei de filtrare.

49
Modificarea formei ferestrei de filtrare este ı̂n fapt o modalitate de a selecta (sau a ig-
nora) anumiţi vectori din vecinătatea pixelului curent prelucrat. Realizarea acestei trieri
se poate realiza prin două metode: dintr-o fereastră de filtrare de formă fixă se rejectează
vectorii cu valori aberante contextului local sau fereastra de filtrare este determinată
pentru fiecare punct al imaginii de prelucrat.
Prima abordare ce conduce la o fereastră de filtrare de formă adaptivă este de a selecta
doar acei vectori suficient de apropiaţi de punctul curent (pentru care se face prelucrarea).
Această metodă a fost denumită metoda celor mai apropiaţi vecini, NN - Nearest Neigh-
bour [40], [109]. După cum se sugerează prin această denumire, alegerea vectorilor corecţi
se face după un criteriu de distanţă minimă: sunt păstraţi doar acei vectori care sunt cei
k cei mai apropiaţi de punctul central [40] sau a căror distanţă la punctul central este mai
mică decât un prag fixat [109]. Cu vectorii astfel selectaţi se efectuează o prelucrare simplă
(ı̂n general o operaţie de mediere sau de median marginal), robusteţea fiind asigurată de
rejectarea iniţială a valorilor aberante.
Determinarea ferestrei de filtrare după specificul local al punctului de prelucrat (şi deci,
implicit, determinarea a câte unei ferestre de filtrare pentru fiecare punct al imaginii de
prelucrat) a fost denumită filtrare cu vecinătăţi adaptive [160], [173], [37]. Esenţa acestei
metode este de a determina, pentru fiecare pixel al imaginii de prelucrat (color sau cu
nivele de gri) o zonă relativ uniformă, conexă, printr-o tehnică de creştere a regiunilor
[39], [96], [217] (folosită ı̂n mod uzual la segmentarea orientată pe regiuni a imaginilor).
Avantajul determinării unei asemenea zone este dublu: pe de o parte sunt rejectate valorile
aberante (de tipul punctelor afectate de zgomot impulsiv), iar pe de altă parte filtrul de
netezire realizat cu aceste vecinătăţi va păstra extrem de bine contrastul contururilor din
imagine (atâta vreme cât regiunile uniforme nu conţin pixeli aflaţi de o parte şi de alta
a respectivelor contururi). Operaţia propriu-zisă de filtrare este o operaţie de mediere
simplă [160], [37] sau mediere ponderată cu coeficienţi adaptivi [173].
Principalele probleme ridicate de acestă metodă de filtrare sunt cele de complexitate a
calculului: pentru fiecare pixel al imaginii se creşte o regiune ce are ca germene punctul
respectiv (aşadar complexitatea este mult mai mare decât la o operaţie de segmentare
prin creşterea regiunilor, ı̂n care numărul de germeni este mult mai mic decât numărul
de puncte al imaginii). Pentru a asigura o relativă eficienţă a algoritmului, s-a propus
introducerea unei limite superioare a dimensiunii regiunii (Nmax pixeli), ı̂mpiedicând astfel
extinderea ferestrelor de filtrare ı̂n platourile uniforme foarte ı̂ntinse; ı̂n acelaşi timp o
dimensiune minimă (Nmin ) este impusă pentru a avea suficiente valori pe baza cărora să
se realizeze estimarea valorii corecte.

3.4 Filtrarea prin tehnici de clustering

O abordare hibridă de determinare atât a unor ponderi cât şi a unei ferestre de fil-
trare specifice fiecărui punct a fost propusă sub numele de filtrare prin clustering. Ideea
esenţială este ı̂n continuare aceea de a separa o măcar o parte din valorile aberante ce
apar ı̂ntr-o fereastră de filtrare fixă (deci ı̂n vecinătatea pixelului curent prelucrat) şi de
a aplica o netezire valorilor rămase. O asemenea tehnică stă la baza filtrării cu vecinătăţi
adaptive sau a filtrelor de tip NN (Nearest Neighbour ), prezentate anterior. Abordarea

50
propune realizarea unei partiţionări ı̂n trei clase a vectorilor din fereastra de filtrare; cele
trei clase corespund poziţionării vectorilor pe care, ı̂n limbaj natural, am putea să ı̂i nu-
mim centrali, extremali superior şi extremali inferor. Din punctul de vedere al statisticilor
de ordine, putem considera că vectorii din clasa centrală sunt estimate ale mediei sau me-
dianului vectorial, iar vectorii din cele două clase extreme sunt estimate ale minimului şi
maximului local.
Pentru realizarea partiţionării ı̂n trei clase a vectorilor selectaţi de fereastră se va folosi
un algoritm de clustering, iterativ sau ierarhic. Fiecare clasă a partiţiei (mulţime de vec-
tori selecţionaţi) este caracterizată de ceea ce se numeşte vector prototip (sau centroid),
obţinut ca medie aritmetică a vectorilor ce aparţin clasei respective. Ieşirea filtrului de
clustering este prototipul clasei centrale, sau vectorul cel mai apropiat de prototipul cla-
sei centrale. Efectele de netezire ale acestui filtru sunt uşor de demonstrat: impulsurile
de zgomot sunt eliminate prin separarea vectorilor ı̂n clase şi alegerea ca ieşire a unui
reprezentant al clasei centrale (deci cea mai ı̂ndepărtată de extreme) şi calcularea pro-
totipului clasei centrale se face printr-o mediere ce reduce efectul zgomotului gaussian
aditiv. Global, filtrarea poate fi caracterizată ca un median ponderat, păstrând con-
trastul frontierelor imaginii. Comportarea acestui filtru ı̂n prezenţa mixturilor de zgomot
(gaussian şi impulsiv) este superioară filtrelor median vectorial clasice (vector median
VMF, median marginal).

3.5 Integrarea logicii vagi ı̂n adaptarea filtrelor

Logica vagă (fuzzy logic) a fost introdusă la sfârşitul anilor 1960 [230] ca o ı̂ncercare
de a manipula incertitudinea şi nedeterminarea din descrierile semantice ale lumii reale;
sunt clasice exemplele privind interpretarea conceptelor de ı̂nălţime sau greutate a unei
persoane, mai ales prin prisma dificultăţii adaptării logicii clasice binare la o realitate
graduală [230], [179]. O mulţime vagă nu este altceva decât o funcţie ce asociază fiecărui
element al universului un număr pozitiv subunitar.
La aceasta definiţie a mulţimilor vagi merită adăugat comentariul din [17]. Conform
definiţiei, orice funcţie reală cu valori ı̂n intervalul [0, 1] este o mulţime vagă (fuzzy). În
timp ce aceasta este adevărat dintr-un punct de vedere matematic formal, multe funcţii ce
satisfac această condiţie nu pot fi interpretate corespunzător ca realizări ale unei mulţimi
vagi conceptuale. Cu alte cuvinte, funcţiile ce transformă un univers ı̂n intervalul unitar
pot fi mulţimi vagi, dar devin mulţimi vagi atunci şi numai atunci când se potrivesc
cu o descriere semantică intuitivă plauzibilă a proprietăţilor imprecise ale obiectelor din
univers.
Una dintre principalele ı̂ntrebari ridicate de acest mod de reprezentare priveşte relaţia
vagului cu probabilitatea, şi mai precis, dacă mulţimile vagi sunt doar o deghizare inge-
nioasă pentru modelele statistice. Răspunsul negativ la această problemă rezultă evident
dintr-un exemplu [17]. Fie universul de obiecte format din mulţimea tuturor lichidelor
şi fie mulţimea vagă L={toate lichidele potabile (ce pot fi băute)}. După o săptamână
petrecută ı̂n deşert fără apă, călătorul ı̂nsetat descoperă două sticle perfect opace A şi B,
marcate cu “A: apartenenţă (A ı̂n L) = 0.91” şi “B: probabilitate (B ı̂n L) = 0.91”, din care
trebuie neaparat trebuie să aleagă una pe care să o bea. Problema este deci alegerea core-

51
spunzătoare a sticlei. A poate conţine de exemplu apă de baltă sau mlaştină, excluzând
desigur posibilitatea existenţei unui modelator fuzzy Machiavelic, şi nu acid clorhidric.
Deci apartenenţa de 0.91 ı̂nseamnă că conţinutul lui A este destul de similar cu lichidele
perfect potabile (ı̂n speţă apa pură). De cealaltă parte, probabilitatea de 0.91 ca B să fie
potabilă ı̂nseamnă că, dintr-un şir lung de experimente, conţinutul lui B va fi potabil ı̂n
91% din cazuri; ı̂n restul cazurilor, adică la o ı̂ncercare din zece, conţinutul sticlei putând
fi chiar mortal.
O altă faţetă a acestui experiment implică ideea de observaţie. Dacă examinăm conţinutul
lui A şi B şi descoperim de exemplu că A conţine bere şi B acid clorhidric, după observaţie,
gradul de apartenenţă a lui A nu se modifică, ı̂n timp ce probabilitatea lui B devine 0. În
fine, care ar fi efectul schimbării valorilor numerice la 0.5 ? Majoritatea persoanelor ar bea
din B, cu o şansă din două ca lichidul să fie potabil, deoarece un grad de apartenenţă atât
de mic indică ı̂n principiu un lichid nepotabil (dar aceasta depinde ı̂n ı̂ntregime de funcţia
de apartenenţă a mulţimii vagi, ceea ce conduce din nou la observaţia privind posibilitatea
de a interpreta orice funcţie cu valori ı̂n intervalul unitar ca o mulţime vagă).
Deci, cele două modele (vag şi probabilist) propun două tipuri de informaţie total diferită:
apartenenţa vagă reprezintă similaritatea unor obiecte cu proprietăţi imprecise, iar prob-
abilitatea dă frecvenţe relative; mai mult, interpretările şi deciziile luate ı̂n funcţie de
aceste valori depind de numerele specifice asociate unor obiecte şi evenimente particulare.
Este deci evident că modelarea vagă şi folosirea logicii vagi nu se reduc la folosirea unor
ponderi pozitive subunitare pentru fiecare obiect al universului. Totuşi există cazuri ı̂n
care filtre adaptive de mediere ponderată au fost denumite “fuzzy” doar pentru acestă
caracteristică a coeficienţilor (de exemplu FVDF - Fuzzy Vector Directional Filter [168]).
O metodologie cu adevărat bazată pe logica vagă este dezvoltată ı̂n [167]: determinarea
unui nou filtru pe baza combinării a mai multe filtre (concept ce provine, desigur, din
combinarea prelucrărilor direcţionale şi orientate pe amplitudine pentru imagini color).
O asemenea abordare se bazează pe folosirea a mai multe criterii de evaluare a ponderilor
vectorilor din fereastra de filtrare ı̂n vectorul de ieşire a filtrului, fără ca nici unul dintre
acestea să fie optimal, criterii ce sunt apoi combinate printr-un operator neliniar, derivat
ı̂n mod esenţial din calculul ı̂n logică vagă (un agregator fuzzy). O clasă particulară de
asemenea operatori sunt operatorii compensativi [232], definiţi ca medii ponderate ale
unor operatori OR (∪) şi AND (∩) logic pentru mulţimile ce se combină:

A ⊙γ B = (A ∩ B)1−γ (A ∪ B)γ (3.16)

Folosind diferite forme pentru operaţiile logice vagi de bază (OR este o t-conormă, AND
este o t-normă) şi considerând o forma clasică pentru operatorul de complementare
(negaţia Lukasiewicz), se pot obţine diferite forme particulare ale operatorului de agregare.
În [167] se propune folosirea ı̂n (3.16) a t-normei Zadeh (min) şi a t-normei probabiliste
(de tip produs), ceea ce duce la obţinerea relaţiilor:
( )1−γ ( )γ
wj = min wji max wji , j = 1, ..., n (3.17)
i=1,k i=1,k

( )γ

k ∏
k
wj = 1−γ
wji 1 − (1 − wji ) , j = 1, ..., n (3.18)
i=1 i=1

52
În (3.17) şi (3.18) k este numărul de filtre individuale ce se combină, iar wji este ponderea
de ordinul j corespunzătoare filtrului i. Aplicaţiile prezentate ı̂n [167] folosesc combinarea
cu ponderi egale (γ = 0.5) a două filtre (k = 2): un vector median VMF şi un vector
median direcţional BVDF.
În [214] a propus extinderea filtrului median scalar fuzzy introdus de [226] şi denumit
AFMMF - Adaptive Fuzzy Multilevel Median Filter. Pentru acest filtru, procesul de pre-
lucrare este descris de reguli de asociere vagă de tipul regulii lingvistice “dacă X este Ai ,
atunci Y este Bi ” (unde A şi B sunt mulţimi vagi definite peste universurile de obiecte
X şi Y ). Filtrul din [226] provine din MMF - Multilevel Median Filter, definit pentru fer-
estre de filtrare de dimensiune impară, ı̂n care se formează grupuri de valori Wi conform
principalelor direcţii (verticală, orizontală, diagonale). Pentru fiecare set de valori Wi , se
calculează medianul zi = median(Wi ), iar toate aceste rezultate sunt combinate la ieşirea
filtrului ca:

y = median(min(zi ), max(zi ), f ) (3.19)

Folosirea regulilor fuzzy aduce o ı̂mbunătăţire a performanţelor filtrului, eliminând sensi-


bilitatea acestuia la zgomotul de “zgârieturi”, prin includerea ı̂n (3.19) a doi noi termeni,
ce sunt definiţi de o credibilitate maximă. Credibilitatea unei valori este calculată după
următorul set de reguli:

• dacă diferenţa absolută dintre medianul zi şi celelalte puncte din Wi este foarte
mare, atunci credibilitatea lui zi este mică

• dacă diferenţa absolută dintre medianul zi şi celelalte puncte din Wi este foarte
mică, atunci credibilitatea lui zi este mică

• dacă diferenţa absolută dintre medianul zi şi celelalte puncte din Wi este medie,
atunci credibilitatea lui zi este mare

În final, dacă medianele de credibilitate maximă sunt zc1 şi zc2 , expresia ieşirii filtrului
AFMMF devine:
y = median(min(zi ), max(zi ), f, zc1 , zc2 )
Extensia multicanal (vectorială) a acestui filtru se poate obţine foarte uşor, prin simpla
ı̂nlocuire a sintagmei diferenţă absolută cu cuvântul distanţă. În [214], pentru filtrarea
imaginilor color, am folosit distanţa euclidiană ı̂n spaţiul RGB. Funcţiile de credibili-
tate sunt funcţii des folosite ca funcţii de apartenenţă fuzzy: trapezoidală, parabolică,
dreptunghiulară.
După cum demonstrează exemplul precedent, extinderea structurilor de filtrare scalare
la cazul multicanal este suficient de simplă dacă regulile după care se face prelucrarea
sunt exprimate ı̂n mod independent de dimensiunea spaţiului din care fac parte obiectele
la care se referă. Acesta este şi cazul filtrării de clustering [213] şi [212], care se poate
consideră că provine din filtrele scalare de tip “trimmed median” [163]. Extinderea fuzzy
a acestora se realizează prin simpla ı̂nlocuire a algoritmului de partiţionare net cu unul
fuzzy. Folosirea tehnicilor de clustering fuzzy pentru filtrarea imaginilor color [213] pro-
duce rezultate sensibil mai bune decât cele obţinute prin folosirea algoritmilor “crisp”.

53
Elementul esenţial ı̂n folosirea unei tehnici de partiţionare vagă este acela că prototipurile
claselor sunt influenţate de toate valorile selectate de fereastra de filtrare. În acest fel,
valorile ce se află ı̂n apropierea frontierelor claselor şi ar fi fost repartizate (ı̂n cazul algo-
ritmului crisp) ı̂n mod arbitrar unei unice clase, vor contribui ı̂ntr-un mod semnificativ
la prototipurile tutoror claselor. Dacă partiţionarea este realizată cu un grad mare de
fuzzificare, separaţia dintre clase devine mai puţin clară şi prototipul clasei centrale este
o aproximare mai bună a valorii originale.
Unul dintre algoritmii cei mai folosiţi de clustering fuzzy este Fuzzy Isodata [16] (cunoscut
şi ca algoritmul Dunn-Bezdek). Pentru setul de n vectori xi ce se doresc partiţionaţi ı̂n
C clase (fiecare clasă caracterizată de centroidul µj ), se asociază setul de coeficienţi de
apartenenţă uij , care exprimă gradul de apartenenţă al vectorului xi la clasa j. Aceşti
coeficienţi de apartenenţă sunt numere pozitive subunitare ce respectă condiţia de normare


C
uij = 1, i = 1, ..., n (3.20)
j=1

Determinarea partiţiei ı̂nseamnă determinarea coeficienţilor de apartenenţă a vectorilor


la clase, prin rezolvarea iterativă a sistemului de ecuaţii (m este gradul de fuzzificare a
partiţiei):
∑n
um
ij xi
i=1
µj = ∑ n , j = 1, ..., C (3.21)
m
uij
i=1
( C ( )−1
∑ ∥xi − µj ∥ ) m−1
1

uij = , i = 1, ..., n, j = 1, ..., C (3.22)


k=1
∥xi − µk ∥

Dezavantajul esenţial al acestei tehnici de clustering fuzzy este creşterea dramatică a


complexităţii de calcul: sunt necesare mult mai multe ı̂nmulţiri decât la variantele crisp,
şi ı̂n plus apare şi necesitatea ridicărilor la putere. Mai mult, pentru un acelaşi set
de vectori, un algoritm de partiţionare iterativă fuzzy necesită mai multe iteraţii decât
algoritmul net din care provine. O posibilă cale de a micşora necesarul de calcule este de
a utiliza algoritmi ierarhici şi nu iterativi.
Algoritmii de clustering clasici (fie că provin dintr-o abordare de tip cuantizare vectorială
[75], fie dintr-o abordare de tip recunoaşterea formelor [152]) sunt definiţi ca optimizând
un criteriu de calitate a partiţie de tip eroare pătratică medie minimă. Se pot deci
folosi simultană mai multe criterii de optimalitate a unei partiţii (eroare pătratică medie
minimă, compactitudine a claselor definită prin distanţe agregate inter-vectori, volum
minim a claselor); complicarea evidentă a formei criteriului de optimizat (imposibil de
rezolvat simbolic) a dus la considerarea de soluţii de optimizare prin tehnici “inteligente”
(simulated annealing [1] sau algoritmi genetici).
O altă abordare a filtrării de tip median prin metode de clustering fuzzy a fost propusă ca
extindere a filtrului fuzzy median scalar [47]. În [47] se propunea construirea medianului
unui set de scalari nu prin procedeul obişnuit de ordonare, ci printr-o combinaţie liniară
a tuturor valorilor din fereastra de filtrare, ponderate cu coeficienţii lor de apartenenţă la
clasa numită “median” (adică ieşirea filtrului este prototipul clasei ı̂n care au fost grupate

54
valorile). Acest clustering cu o singură clasă se face printr-un procedeu iterativ analog
celui folosit la metoda Fuzzy Isodata; ceea ce se schimbă este ecuaţia (3.22) de determinare
a gradelor de apartenenţă, care devine (C = 1):

n
um
i xi
µ = i=1
∑n
um
i
i=1
( )
∥xi − µ∥2
ui = exp −
K
Acest tip de filtrare de clustering poate fi asimilat (sau asemănat) mai multor modele de
filtre: pe de o parte filtrele cu coeficienţi dependenţi de distanţă, de tipul DDMF [71], sau
se poate considera că modelul de clustering urmează paradigma posibilistă, introdusă ı̂n
[114], [113].
Modelul fuzzy posibilist se bazează pe modificarea interpretării gradului de apartenenţă.
Pentru modelul probabilist (clasic), gradul de apartenenţă al fiecărui vector exprima
gradul ı̂n care acesta este comun la mai multe clase şi se exprimă prin constrângerea
(3.20) ca gradele de apartenenţă ale unui singur vector faţă de toate clasele să se com-
porte ca probabilităţile asociate unui câmp complet de evenimente. Dezavantajul acestei
abordări este că, adeseori, vectori ce au acelaşi grad de apartenenţă faţă de două clase
nu sunt reprezentativi ı̂n aceeaşi măsură pentru clasele respective. Ceea ce ne interesează
ı̂n general este ı̂nsă tocmai reprezentativitatea vectorilor faţă de o clasă, deci cât de tipic
este un vector pentru o clasă dată. Această interpretare este modelarea posibilistă [114]
şi se bazează pe renunţarea la constrângerea (3.20) şi la adoptarea unei relaţii de calcul
a gradelor de apartenenţă ı̂n funcţie de centroizii unei singure clase (şi nu de centroizii
tuturor claselor). În [114], [113] s-a propus folosirea relaţiei de tip exponenţial, ponderată
cu un scalar ηj variabil cu iteraţiile:
 ( ) m−1
1
−1
∥xi − µj ∥ 2
uij = 1 + 
ηj


n
ij ∥xi − µj ∥
2
um
ηj = K i=1 ∑
n , j = 1, ..., C
um
ij
i=1

55
56
Partea II

FOTOGRAFIE
COMPUTAŢIONALĂ

57
Capitolul 4

Scurt istoric al fotografiei şi imaginii


digitale

O motivaţie a părţii lucrării de faţă dedicată fotografiei digitale este de dată de Ansel
Adams, poate cel mai celebru artist fotografic, care spunea că ”atunci când cuvintele
devin confuze ne vom concentra pe fotografii. Când imaginile devin inadecvate ne vom
acoperi de tăcere.”
În momentul de faţă trăim ı̂ntr-o lume a imaginilor, iar camerele fotografice sunt prin-
cipalul mod de achiziţie a acestoră. Un prim pas ı̂n construcţia unor maşini care să fie
capabile să ı̂n locuiască oamenii este să ı̂nţelegem sistemele care ı̂nregistrează imagini,
cum funcţionează acestea şi ce ı̂nformaţii ne dau ı̂n realitate.
Dacă vom căuta o definiţie a termenului de fotografie vom afla că ”este un proces de fomare
de imagini sub acţiunea luminii”. De fapt cuvântul fotografie provine din alăturarea
termenilor greceşti “fos” - lumină şi “grafo” - a scrie. Procesul de bază presupune că
razele de lumină emise de o sursă sunt reflectate selectiv de către obiecte pentru ca mai
apoi să fie ı̂nregistrate pe medii sensibile ı̂n timpul unei expuneri. Procesul de achiziţie
poate fi unul mecanic, chimic sau electronic cu ajutorul unor disponizitive numite camere
fotografice.
Începuturile fotografiei se pierd undeva ı̂n negurile timpului. Una din primele realizări
ı̂n domeniu le-a aparţinut lui Aristotel şi Euclid, secolul 4 ı̂.Hr, care au realizat un prim
model simplificat al camerei de tip pinhole (gaură de ac), pornind de la observaţia că
lumina poate călători prin fante de coşuri din răchită sau prin crăpături minuscule din
frunze de copac [42]. Tot ı̂n epoca antică, poate chiar ı̂naintea europenilor, ı̂n Extremul
Orient, filosoful chinez Mo Jing mentionează efectul de inversare al unei imagini ı̂ntr-o
cameră obscură.
Prima documentare şi respectiv analiză consistentă a celor două modele de cameră (pin-
hole si cameră obscură) i se atribuie fizicianului, astronomului şi matematicianului arab
din secolul al XI-lea Ibn al-Haytham (Alhazen), care şi-a publicat studiile şi ideile ı̂n cartea
intitulată “Opticae thesaurus”, apărută ı̂n 1021 [111]. Albertus Magnus, din sec. al XII-
lea, a descoperit nitratul de argint, iar Georges Fabricius in sec al XVI-lea a descoperit
clorura de argint, netezind astfel drumul pentru fotografia clasică bazată pe substanţe
fotosensibile. Mai târziu, ı̂n timpul Renaşterii, se pare că pictori foloseau proiecţii prin

59
camere obscure pentru a surprinde realismul unor imagini.
Prima fotografie permanentă a fost realizata ı̂n 1822 de către inventatorul francez Joseph
Nicephore Niepce, dupa ce, ı̂n 1814, ı̂ncercarea sa avusese un timp limitat de viaţa.
Fotografiile sale au fost realizate pe plăci de alapaca (aliaj de cositor şi plumb) acoperite
cu un derivat al petrolului numit bitum de Iudeea. Imaginile sale erau, evident, alb-negru
iar procesul de ı̂nregistrare al lor dificil. Numele de “fotografie” a fost utilizat pentru
prima oară de catre pictorul Hercules Florence care ı̂n 1832 folosea un procedeu evoluat
al predecesorului său.
Prima fotografie color a fost realizată, ı̂n 1861, de către omul de ştiintă scoţian James
Clark Maxwell celebru ı̂n special pentru teoria asupra câmpu- lui electromagnetic. În
anii care au urmat, diverşi cecetători şi ingineri contribuie la rafinarea procesului. Totuşi,
aceste imagini iniţiale conţineau doar componente de verde şi orange, ı̂ntrucât materiale
sensibile la roşu s-au descoperit abia ı̂n primii ani ai secolului XX.
În cele din urmă, fotografia modernă, după ce a trecut printr-o serie de ı̂mbunătăţiri
consecutive, a devenit cu adevărat populară odată cu apariţia tehnologiei imaginate de
către George Eastman, din Rochester, New York, in 1884. Acesta a dezvoltat un tip de gel
uscat care aplicat pe hârtie sau pe film a ı̂nlocuit cu succes placa fotografică astfel ı̂ncât
aparatul a devenit portabil şi ne-toxic. În 1888 aparatul de fotografiat Eastman Kodak
a apărut pe piaţă cu sloganul ”Tu apeşi butonul, noi facem restul”. Acum, oricine ar
putea lua o fotografie pentru ca mai apoi să lase componentele complexe ale procesului de
developare pe seama altor persoane specializate. Tot firma Kodak a fost responsabilă şi
cu introducerea pe scară largă, ı̂n 1935, a filmului color urmat la un an de către tehnologia
Agfacolor, tehnologie care stă la baza filmelor color din zilele noastre. Un alt moment
important a fost introducerea pe piaţă, de către Polaroid a filmului color instant ı̂n 1963.
În ceea ce priveşte fotografia digitală lucrurile au ı̂nceput să se miste prin anii 6́0. Un
prim pas a fos construcţia scanner-ului: ı̂n 1957, Russell Kirsch dezvoltă un sistem capabil
de transferare a imagini luată cu o camera ı̂ntr-un calculator; prima imagine digitală a
fost cu fiul său şi avea rezoluţia de 176 × 176 de pixeli. În 1961 Eugene F. Lally de la Jet
Propulsion Laboratory descrie un fotosenzor de tip mozaic pentru măsurarea altitudinii
unei nave spaţiale [121]. Un pas important ı̂n direcţia fotografiei digitale a fost făcut
de către Willard Boyle si George E. Smith de la AT & T Bell Labs, care au descoperit
senzorul de imagine de tip CCD. Esenţa proiectului lor a fost capacitatea de a transfera
sarcină electrică de-a lungul suprafeţei unui semiconductor.
În continuare se poate spune că a ı̂nceput cursa megapixelilor 1 : ı̂n 1973 - Fairchild
Semiconductor produce primul cip CCD capabil sa ı̂nregistreze imagini “mari” (100 de
rânduri şi 100 de coloane); ı̂n 1975 - Bryce Bayer de la Kodak dezvoltă filtrul mozaic
de tip Bayer pentru senzori CCD de culoare; anul 1986 şi firma Kodak aduc primul
milion de pixeli ı̂ntr-un senzor. Mai ı̂ntâi Tsutomu Nakamura şi mai apoi Eric Fossum ı̂n
1993 produc şi concurentul pentru senzorul CCD: senzorul cu tehnologie activă denumit
popular CMOS.
În anii 9́0 concurenţa ı̂ntre analogic şi digital era acerbă. Soluţia analogică existentă avea
de partea ei preţul camerelor, infrastructura şi tradiţia. Camerele digitale promiteau doar
1
Cursa megapixelilor a reprezentat un trend ı̂n fotografia digitală, ce ı̂n anumite privinţe continua
ı̂ncă, ı̂n care principalul argument al unei camere noi era să ofere o rezoluţie maximă cât mai mare.

60
suport pentru nenumărate poze la preţuri de nimic şi posibilitatea de a te descurca singur
fară să ai nevoie de ajutorul cuiva specializat pentru developare.
Din acest moment lucrurile au ı̂nceput să se precipite. Firma Polaroid care ajunsese,
datorită camerelor instant să domine piaţa fotografiilor pe film, intră ı̂ntr-un declin care
se va termina cu falimentul din anii 2000. Agfa, celebră prin filmele sale şi camerele pe
film, ratează pasul către epoca digitală şi este nevoită să ı̂nchidă partea de fotografie ı̂n
2004. Marile companii japoneze producătoare de camere pe film, Canon, Nikon, Sony,
Panasonic, Olympus, Fuji fac pasul către digital şi ajung ı̂n scurt timp să domine piaţa.
Konica-Minolta după ce un timp a frapat prin raportul preţ calitate al camerelor digitale
profesionale produse, a fost nevoită să se lase achiziţionată de către Sony. Coreenii de
la Samsung intră extrem de agresiv pe piaţă şi ı̂ncep să erodeze cotele producătorilor
tradiţionali. Deşi plecată lansat pe drumul digital, firma Kodak nu a reuşit sa facă faţă
raportului preţ calitate practicat de tigrii asiatici şi este nevoită să intre ı̂n restructurare.
Camerele digitale patrund peste tot: camere video, camere de supraveghere, web-cam-
uri, camere in televizoare etc. Totuşi anii 2000 sunt anii telefoanelor mobile. Dacă până
atunci interesul producătorilor de camere era ı̂ndreptat ı̂n special către cele două tipuri
clasice (camere profesionale - DSLR respectiv camere de larg consum - compacte) piaţa
ı̂n continuă creştere a telefoanele mobile ı̂i fac să se ı̂ndrepte şi către acest segment. Lista
producătorilor de camere se completează cu nume noi ce oferă soluţii pentru telefoane
mobile: Micron, Toshiba, Fujitsu, Abico, Minton, etc. Anul 2008 aduce formatul inter-
mediar de camera fotografică digitală intitulat Micro Four Thirds. Un lucru este clar:
prezentul este digital. Vom vedea ce ne rezervă viitorul!

61

S-ar putea să vă placă și