Sunteți pe pagina 1din 26

Modulul 7

Segmentarea imaginilor

Subiecte
7.1. Definiţii
7.2. Proprietăţi ale imaginilor
7.3. Detecţia muchiilor
7.3.1. Operatori de tip gradient
7.3.2. Detectori de forme cu suprapunere de tipar
7.3.3. Detecţia schimbărilor de semn ale derivatei de ordinul
doi
7.4. Discriminarea cu prag
7.5. Creşterea regiunilor

7.1. Definiţii
Segmentarea este o etapă de prelucrare importantă şi adesea
dificilă în analiza imaginii. Obiectivul segmentării îl constituie
fragmentarea imaginii în părţi constituente, de preferinţă obiecte sau
părţi de sine stătătoare ale obiectelor prezente. Segmentarea este adesea
un procedeu de extragere a informaţiilor esenţiale în vederea
recunoaşterii formelor în imagine. De asemenea, segmentarea poate
constitui o etapă în procesul de compresie a imaginii.
Prin tehnici adecvate de preprocesare, imaginea poate fi
transformată pentru a se facilita sarcinile segmentării. Şi etapa de
achiziţie a imaginii poate avea o influenţă considerabilă asupra
complexităţii segmentării. De exemplu, utilizarea unor senzori de
imagine sensibili în infraroşu poate simplifica spectaculos sarcina
detectării unui tanc sau a unui avion.
Segmentarea este o operaţie puternic dependentă de aplicaţie,
segmentarea autonomă reprezentând una din problemele cele mai
dificile în analiza imaginilor. Sarcinile segmentării pot fi mult uşurate
prin incorporarea în algoritmii de prelucrare a informaţiilor specifice
aplicaţiei, denumite informaţii apriorice. Fragmentele de imagine
separate prin segmentare le vom numi regiuni. O regiune extrasă poate
fi caracterizată la modul general prin omogenitatea unei anumite
proprietăţi (sau caracteristici) în interiorul ei. Definiţia generală este
(inevitabil) vagă. În general, avem în vedere proprietăţi locale, evaluate
în ferestre de anumite dimensiuni. Dimensiunile ferestrei sunt direct
legate de dimensiunile obiectelor căutate şi de noţiunea de scară. În cele
ce urmează, vom exemplifica proprietăţile ce s-au dovedit utile în
rezolvarea cu succes a problemei segmentării într-o serie de aplicaţii.
Proprietăţi globale sunt, de asemenea de interes în segmentare. Rolul lor
este cel mai frecvent acela de a furniza algoritmului de segmentare
parametri ce sunt folosiţi în procesul de decizie care conduce în final la
generarea regiunilor.
Rezultatul segmentării este generarea unei mulţimi finite de
regiuni, Ri, ale imaginii R, astfel încât
Modulul 7
Segmentarea imaginilor
N
R  Ri , Ri  R j  , i  j . (7.1)
i 1

Optimizarea procesului de sgmentare presupune găsirea unui


compromis optim între două cerinţe contradictorii. Pe de o parte,
regiunile generate trebuie să fie cât mai omogene. Pe de altă parte, ele
trebuie să fie cât mai puţine şi să aibă forme cât mai simple.
Regiunile pot fi specificate în diferite moduri. Este uzuală
reprezentarea în forma imaginii etichetate. Prin etichetare, fiecare pixel
primeşte o etichetă care identifică, cu ajutorul unui număr de ordine,
regiunea de care aparţine. Pentru afişarea pe ecran a rezultatelor
segmentării este mult mai intuitivă reprezentarea fiecărei regiuni din
imaginea segmentată cu nivelul de gri mediu. Deşi nivelul mediu de gri
nu identifică unic o regiune, reprezentarea permite de cele mai multe ori
separarea corectă a regiunilor pentru că în general, două regiuni
adiacente vor avea medii de gri diferite. O excepţie notabilă, ilustrată în
Fig. 7.1., o constituie segmentarea imaginilor pe baza proprietăţilor de
textură. Mediile de gri şi dispersiile sunt egale în cele două regiuni, deci
aceste caracteristici nu folosesc segmentării. Ceea ce diferenţiază cele
două regiuni este orientarea texturii.

Fig. 7.1. Imagine cu două regiuni, caracterizate prin texturi cu


orientări diferite.

7.2. Proprietăţi ale imaginilor


Definirea şi evaluarea obiectivă a unor proprietăţi (sau
caracteristici) reprezentative ale imaginii joacă un rol important în
analiza imaginilor. Sarcina este cu atât mai complicată cu cât
cunoştinţele apriorice privind conţinutul imaginii sunt mai restrânse.
Dacă în aplicaţii de tipul inspecţie vizuală automată, recunoaşterea
monedelor etc. clasa imaginilor posibile este relativ îngustă, în altele, de
tipul navigaţiei autonome într-un mediu natural, restricţiile asupra
imaginilor posibile sunt considerabil mai puţine. Alegerea proprietăţilor
de interes reprezintă o problemă de importanţă crucială în prelucrare,
dar în acelaşi timp o problemă puternic dependentă de aplicaţie. În cele
ce urmează, vom discuta câteva aspecte generale ale procesului de
măsurare a proprietăţilor imaginilor, cu referire la unele proprietăţi ce s-
au dovedit utile într-o largă paletă de aplicaţii.

7.3. Detecţia muchiilor


Modulul 7
Segmentarea imaginilor

Muchiile sunt o caracteristică locală importantă, deoarece


concentrează informaţii esenţiale referitoare la formele obiectelor. Vom
face distincţie în cele ce urmează între muchii şi contururi. Într-o
definiţie foarte generală, muchiile sunt regiuni din imagine la care
intensitatea se schimbă brusc. Prin contururi vom desemna punctele din
imagine ce delimitează obiecte sau părţi de sine stătătoare ale unui
obiect. Contururile sunt curbe ce pot fi reprezentate prin imagini binare,
în timp ce muchiile sunt structuri bidimensionale. În majoritatea
imaginilor, contururile furnizează şi o informaţie suficientă pentru
recunoaşterea obiectelor. Este suficient să ne gândim la o caricatură sau
la o schiţă pentru a ne convinge de valoarea imensă a informaţiei
concentrate în muchii. Sistemul vizual uman face uz de operatori de
detecţie a muchiilor, prin fenomenul de inhibiţie laterală ce se produce
la nivel retinal. Rolul muchiilor în percepţia vizuală este subliniat de
exemplul din Fig. 7.2. Din dorinţa de a impune o interpretare simplă şi
logică asupra imaginii, ajungem să percepem muchiile chiar şi unde ele
de fapt nu există. Nu este surprinzător faptul că detecţiei muchiilor i-au
fost consacrate studii numeroase. Cu atât mai mult cu cât problema este
departe de a fi una închisă.

Fig. 7.2. Iluzia literelor

Dificultatea detecţiei muchiilor este datorată următorilor factori:


 diversitatea tipurilor de muchii din imaginile reale
 orientarea şi factorul de scară variabil
 posibilitatea prezenţei unor structuri diverse în vecinătatea
muchiilor
 zgomotul
Câteva modele unidimensionale de muchii sunt reprezentate în Fig. 7.3.
În domeniul 2D, lucrurile sunt şi mai complicate, existând structuri ce
nu au corespondent 1D simplu. Un asemenea exemplu este un punct de
şa.

Detecţia muchiilor poate fi privită ca o modalitate de segmentare bazată


pe detecţia discontinuităţii în imagine. Un avantaj potenţial al metodei
este acela că variaţii globale lente ale iluminării nu influenţează negativ
rezultatele segmentării. De asemenea, atunci când este suficientă
reprezentarea imaginilor prin contururi constituie o modalitate de
caracterizare a imaginii extrem de concisă. Între dezavantaje
menţionăm sensibilitatea la zgomot şi faptul că metoda nu conduce
Modulul 7
Segmentarea imaginilor

întotdeauna la detecţia unor contururi închise, pe baza cărora să fie


posibilă delimitarea unor regiuni.

Fig. 7.3. Modele de muchie unidimensionale

7.3.1. Operatori de tip gradient


Ne vom referi în cele ce urmează la imagini monocrome,
reprezentate prin nivelul de gri sau intensitate. Un pixel aparţine unei
muchii dacă gradientul de gri în acel punct are o valoare ridicată.
Gradientul poate fi interpretat ca o măsură a tăriei muchiei într-un punct
al imaginii, sau echivalent, o măsură a plauzibilităţii ca punctul
respectiv să aparţină unei muchii. Decizia de a clasifica punctul drept
punct de contur urmează procesului de măsurare a gradientului, prin
compararea mărimii (modulului) gradientului cu un prag.

Prin definiţie, gradientul imaginii la o coordonată oarecare,


f(x,y) , este un vector:
 f ( x , y ) 
 x 
f ( x , y )  g( x , y )   f ( x , y )  .
 
 y 
(7.3)
Pentru simplificarea notaţiei, vom omite dependenţa explicită de
coordonatele x şi y. Componentele gradientului pe direcţiile axelor de
coordonate sunt:
f
gx  ,
x
f (7.4)
gy  .
y
Modulul 7
Segmentarea imaginilor

Vectorul gradient are modulul:

| f | | g|  g x2  g 2y (7.5)

şi este orientat pe o direcţie ce face cu axa orizontală unghiul:

 gy 
 g  arctg  . (7.6)
 gx 

Funcţia arctg(x) are perioada de 180, indicând numai direcţia


gradientului. Sensul poate fi stabilit corect prin compararea semnelor
gradientului orizontal şi vertical. Gradientul pe o direcţie oarecare, r, ce
face unghiul  cu axa orizontală este:

f f x f y
   g x cos   g y sin  . (7.7)
r x r y r

Gradientul este maxim pe direcţia  g, ceea ce se verifică uşor derivând


ecuaţia (7.7) în raport cu  şi punând condiţia de anulare a derivatei.

Calculul derivatelor
Calculul derivatelor implicate în definiţia gradientului este
posibil numai prin aproximare, imaginea fiind definită într-o reţea
discretă. De exemplu,

f f ( x  x)  f ( x)
 
x x
f ( x)  f ( x  x)
 (7.8)
x
f ( x  x)  f ( x  x)
.
2x

Pentru că valoarea minimă a diferenţei x este 1, aproximările discrete


vor fi

gx = f(x+1) - f(x), (7.9a)

gx = f(x) - f(x - 1), (7.9b)

gx =[ f(x+1) - f(x-1)]/2. (7.9c)

Este util să observăm că gradientul orizontal poate fi calculat prin


convoluţia cu măştile

hx1  1 1 0 , (7.10a)

hx 2   0 1  1 , (7.10b)
Modulul 7
Segmentarea imaginilor

respectiv
1
hx 3  1 0  1 . (7.10c)
2

Ne reamintim că la convoluţie, măştile sunt rotite cu 180. Defectul


primelor două măşti (diferenţa înainte şi diferenţa înapoi) este că ele
evaluează gradientul la mijlocul intervalului dintre doi pixeli, adică la o
locaţie ce nu aparţine reţelei. A treia calculează gradientul prin diferenţa
simetrică, înlăturând obiecţia menţionată. Masca definită de ecuaţia
(7.10c) mai are avantajul unei imunităţi mai bune la zgomot,
incorporând şi un efect de netezire. Într-adevăr,

1 1
2

1 0  
1  1 
1
2

1 1 . 
Operatorii de tip gradient Prewitt şi Sobel
Operatorul Prewit [Lipkin 1970] poate fi obţinut impunând
aproximarea cu eroare pătratică minimă a imaginii într-o fereastră 33
cu un plan
z = ax + by + c.
(7.20)

Eroarea pătratică este:

1 1
 (a, b, c)   [ f
x  1 y  1
xn, yn  ax  by  c ]2 .

(7.21)

coeficienţii optimi a,b,c, se obţin prin rezolvarea sistemului de ecuaţii

  
 0,  0,  0. (7.22)
a b c

Soluţia sistemului este:

1
a ( f m 1,n 1  f m 1,n  f m 1,n1  f m 1,n1  f m 1,n  f m 1,n1 ),
6
1
b  ( f m 1,n1  f m ,n1  f m 1,n1  f m 1,n 1  f m ,n 1  f m 1,n 1 ),
6
1
c  ( f m 1,n1  f m ,n 1  f m 1,n1  f m , 1n  f m ,n  f m 1,n 
9
f m 1,n 1  f m ,n1  f m 1,n 1 ).
(7.23)
Pe planul optimal astfel determinat,

a  gx ,
b  g y.
Modulul 7
Segmentarea imaginilor

Parametrul c evaluează media imaginii în fereastră, fiind neinteresant


pentru detecţia muchiei. Este convenabil să exprimăm calculul
gradienţilor Prewitt în forma convoluţiei. Operatorul pentru calculul
gradientului orizontal este

1 0  1 1
1  1 1 
P
hx 
6
1 0  1 
2
1  0 
1  1
3 
(7.24a)

1 0  1
 
1

în timp ce gradientul vertical foloseşte operatorul

 1 1 1  1
1  1  1
P
hy   0
6
0 0   0 1
2 3
 1 .
1 (7.24b)

 1 1  1
 
  1

Factorul de normalizare 1/6 este neimportant, fiind uzual omis, mai ales
dacă se foloseşte aritmetica numerelor întregi, caz în care diviziunea
produce prin trunchiere o eroare neneglijabilă.

Gradientul Sobel [Davis 1975] se calculează cu ajutorul


măştilor:

1 0  1  1
1  1 1 
S
hx 
8
2 0  2 
2
1  0 
1  2 ,
4 
1 0 
 1 1
(7.25a)

 1 2 1  1
1  1  1
S
hy   0
8
0 0   0 1
2 4
 2 .
1 (7.25b)
  1 2  1   1

Din nou, factorul de normalizare, 1/8, este neimportant şi uzual omis.


Constatăm că operatorul Sobel diferă de operatorul Prewitt doar prin
faptul că ponderează mai puternic diferenţa ce implică pixeli mai
apropiaţi de centrul măştii. Se poate arăta că şi operatorul Sobel
aproximează local optimal imaginea cu un plan, dar cu un criteriu de
eroare diferit. Erorile produse de pixelii diagonali sunt ponderate mai
slab decât cele produse de vecinii orizontali şi verticali ai pixelului
central, aflaţi la o distanţă mai mică de centrul măştii. Demonstraţia îi
este propusă cititorului ca exerciţiu.
Schema bloc a unui detector de muchii de tip gradient este
redată în Fig. 7.4.

prag, gp

gx c 1 c
fhx |g|
f dectecto
gy r
fhy
Modulul 7
Segmentarea imaginilor

Fig. 7.4. Schema bloc a unui detector de muchii de tip gradient

Prin convoluţie, se obţin imaginile gradient orizontal şi gradient


vertical. Cu ajutorul unui operator diadic, se calculează imaginea
modulului gradient, aplicată la intrarea detectorului. Procesul de calcul
al pentru un pixel particular al unei imagini 5x5 este exemplificat mai
jos.

Operaţiile de ridicare la pătrat (extragerea rădăcinii pătrare poate fi


omisă dacă urmează detecţia) este consumatoare de timp. O
implementare simplificată poate folosi pentru modulul gradientului
definiţia

| g ( x , y )| | g x ( x , y )|| g y ( x , y )| . (7.26)

Dezavantajul constă în special într-o oarecare pierdere a anizotropiei,


manifestată prin dependenţa răspunsului operatorului de calcul al
modulului de direcţia gradientului.
La blocul detector, modulul gradientului este comparat cu un
prag, pentru a se furniza la ieşire harta punctelor de contur, reprezentată
de imaginea binară c. Funcţia detectorului este următoarea:

1, pentru | g ( x , y )|  g p
cx, y   . (7.27)
0, în rest
Modulul 7
Segmentarea imaginilor

Valoarea pragului de detecţie este critică. Un prag prea coborât,


generează linii de contur groase şi detectează muchii ce nu corespund
unor contururi reale. Un prag prea ridicat generează linii de contur
întrerupte, ratând adesea puncte de contur reale. În schema bloc din Fig.
7.4, informaţia de direcţie nu este utilizată. Cu toate acestea, este o
informaţie utilă, exploatată de regulă la operaţiile de post-procesare a
contururilor, sau în scheme de detecţie mai elaborate, ce urmează a fi
discutate.

Operatorul Sobel are performanţe comparabile, dar uşor


superioare celor obţinute de operatorul Prewitt, demonstrând o dată în
plus importanţa alegerii foarte atente a criteriului de optimizare.
Evaluarea şi compararea obiectivă a performanţelor detectoarelor de
contur este, de altfel, o problemă spinoasă [Fram 1975], [Deutsch
1978], [Abdou 1979]. Motivul principal constă în diversitatea cerinţelor
impuse detectorului şi dependenţa de aplicaţie a importanţei relative a
acestor cerinţe. Rezultate ale detecţiei muchiilor cu ajutorul operatorului
Sobel sunt ilustrate în Fig. 7.5. Ele pot fi considerate bune pentru
imaginea sintetică, dar nesatisfăcătoare pentru cea reală.

Fig. 7.5. Muchii detectate de operatorul Sobel

Unele contururi sunt groase, altele întrerupte, ceea ce denotă faptul că


un prag unic nu este suficient de bun pentru toate muchiile din imagine.
Este clar că, exceptând situaţia în care ne confruntăm cu imagini simple,
avem nevoie de ceva mai bun.

7.3.2. Detectori de forme cu suprapunere de tipar


O abordare alternativă a detecţiei muchiilor este metoda
suprapunerii de tipar (“template matching”). Metoda presupune
existenţa unui set de modele sau tipare ale muchiilor posibile, ce
trebuiesc detectate de operatorul de detecţie. Fie m(x,y) imaginea
modelului de muchie selectat. Se presupune că modelul este definit pe
un domeniu, D, uzual mult mai mic decât imaginea întreagă.
Modulul 7
Segmentarea imaginilor

Similitudinea dintre imagine şi tipar poate fi evaluată pe baza erorii


pătratice:

 ( x, y )   [ f ( x, y )  m ( x 
( j , k )D
j , y  k )] 2 


( j , k )D
[ f ( x, y )]2   [ m( x 
( j , k )D
j , y  k )]2  (7.28)
2  f ( x, y ) m ( x 
( j , k )D
j , y  k ).

Primii doi termeni sunt strict pozitivi, reprezentând energiile imaginii şi


respectiv tiparului. Termenul al doilea este chiar constant pe parcursul
prelucrării. Ultimul termen apare cu semnul minus şi reprezintă
intercorelaţia imaginii cu tiparul, suprapus cu originea la coordonatele
(x,y). Eroarea este minimă când intercorelaţia este maximă. Pe baza
acestei observaţii, intercorelaţia poate fi utilizată pentru cuantificarea
gradului de asemănare dintre imagine şi modele de muchie ideale. În
practică, intercorelaţia poate fi implementată prin convoluţie, singura
deosebire fiind absenţa operaţiei de rotire a măştii cu 180, specifică
operaţiei de convoluţie.

Fig. 7.6. Opt măşti ale gradienţilor busolă. În ordine, de la stânga spre
dreapta, orientările: N, NV, V, SV, S, SE, E, NE.

Operatorii de detecţie a muchiilor cu suprapunere de tipar sunt


denumiţi şi gradienţi busolă (“compass gradient ”) pentru că folosesc
un set de opt măşti, reprezentând versiuni rotite ale unui singur tipar. Un
asemenea tipar poate fi chiar masca operatorului Prewitt, ce are forma
unui plan. Media de gri a planului este zero, pentru ca tiparul să nu
semene cu regiunile constante, în care intercorelaţia trebuie să se
anuleze. Cele opt măşti Prewitt pentru evaluarea gradienţilor busolă
sunt redate în Fig. 7.6. Măştile sunt aplicate succesiv, din cele opt
rezultate fiind selectat maximul:

g k ( x , y )  f ( x , y ) h(  x , y ),
g ( x , y )  max{ g k ( x , y )}. (7.28)

k

De remarcat că numai patru din cele opt măşti sunt independente;


celelalte patru diferă doar prin semn. Exploatând acest aspect şi
Modulul 7
Segmentarea imaginilor

calculând recursiv convoluţiile succesive, se poate obţine o eficienţă de


calcul comparabilă cu a operatorilor Prewitt şi Sobel de tip gradient
obişnuiţi. Alte măşti folosite curent pentru calculul gradienţilor busolă
sunt bazate pe operatorii Robinson şi Kirsch:

1 1 1 3 3 3
R
h 1 2 1, K
h 3 0 3. (7.29)
1 1 1 5 5 5

Principiul pe care sunt contruiţi operatorii de detecţie a


muchiilor cu suprapunere de tipar poate fi util şi pentru detecţia altor
forme în imagine. Masca folosită este exact modelul structurii ce trebuie
detectată. De exemplu, o linie verticală cu grosimea de un pixel poate fi
detectată cu masca:
1 2 1
hl   1 2  1. (7.30)
1 2 1

Pentru linii cu orientări diferite, sunt necesare măşti diferite. Un punct


izolat poate fi detectat cu ajutorul laplacianului discret:

1
hL  1 4 1. (7.31)
1

Semnificaţia operatorului devine evidentă dacă este exprimată în forma:

gx,y = [(fx+1,y- fx,y) - (fx,y- fx-1,y) ] + [(fx,y+1- fx,y) - (fx,y- fx,y-1)].

7.3.3. Detecţia schimbărilor de semn ale derivatei de ordinul doi


Operatorii de ordinul unu funcţionează bine în absenţa
zgomotului şi în prezenţa muchiilor abrupte, de tip treaptă, ce nu se
extind prea mult în afara ferestrei 33. În cazul unor muchii gradate, (de
exemplu ca rezultat al netezirii cu un operator liniar, sau prin natura
imaginii) răspunsul acestor operatori scade în amplitudine şi se extinde
spaţial, producînd muchii îngroşate. O soluţie naturală pare să fie, într-o
asemenea situaţie, extinderea ferestrei. De exemplu, un operator 99 se
poate obţine combinând operatorul de derivare pe direcţia orizontală dat
de ecuaţia (7.19) cu un filtru binomial 19 de mediere pe direcţia
verticală. Creşterea ferestrei are două consecinţe contradictorii. Pe de o
parte, creşte imunitatea la zgomot, pe de altă parte, creşte sensibilitatea
detectorului la prezenţa unor structuri învecinate, ceea ce reduce
precizia localizării muchiei. Mai mult, operatorul tinde să devină
sensibil la variaţii lente ale nivelului de gri, datorate iluminării
neuniforme.
O observaţie de substanţă este aceea că detectorul de muchii nu
trebuie să detecteze toate locaţiile la care gradientul de luminanţă are
valori ridicate, ci numai pe acelea ce reprezintă un maxim local. O
posibilitate de a detecta punctele de maxim este aceea de a utiliza un
Modulul 7
Segmentarea imaginilor

opertator de ordinul doi. Maximul primei derivate coincide cu anularea


derivatei a doua. Pare să fie mai simplă depistarea schimbării de semn a
unei funcţii decât depistarea maximului unei funcţii. În plus, derivata a
doua este nulă pe o rampă de luminanţă, astfel că una din obiecţiile
aduse operatorului de ordinul unu este eliminată. Cum se întâmplă
adesea, avantajul obţinut are preţul său. Preţul ce trebuie plătit este
creşterea sensibilităţii la zgomot. Într-adevăr, laplacianul este un
excelent detector de puncte izolate, în forma în care se propune prin
ecuaţia (7.31). În timp ce prin derivare se introduce în funcţia de
transfer un factor suplimentar ik ~ , derivarea repetată conduce la
factorul - k~ 2 , astfel că sensibilitatea la zgomot creşte. Suntem, deci, în
căutarea unui operator de ordinul doi robust.
O posibilitate de a reduce efectul zgomotului asupra rezultatului
evaluării derivatei a doua este netezirea prealabilă a imaginii. Pentru o
rejecţie bună a zgomotului, este nevoie de o ferestră mare, în timp ce
buna localizare a muchiei cere o influenţă redusă din partea pixelilor ce
nu se află în proximitatea imediată a centrului ferestrei. Cerinţele
contradictorii menţionate sunt bine conciliate de filtrul gaussian, ce
posedă numeroase proprietăţi de optimalitate [Lindeberg 1994]. De
exemplu, dacă o muchie treaptă este netezită cu un filtru gaussian, apoi
se aplică operatorul laplacian, se obţine un semnal a cărui trecere prin
zero este localizată exact acolo unde a fost situată muchia treaptă
iniţială. Suntem astfel motivaţi pentru a analiza filtrul trece-bandă
laplacian din gaussian, LoG, propus de Marr şi Hilderth [Marr 1980].
Filtrul LoG se poate obţine pornind de la filtrul gaussian
continual,

1 x2  y2
G( x, y)  exp{ }. (7.32)
2  2 2 2

Imaginea netezită cu filtrul gaussian este

f n ( x , y )  f ( x , y ) G ( x , y ) . (7.33)

Laplacianul imaginii netezite este

 2 f n ( x, y)  2 f n ( x, y)
g( x, y)   f n ( x, y) 
2
 . (7.34)
2 x 2 x

Pentru că derivarea şi convoluţia sunt operaţii liniare, ordinea


lor poate fi inversată, astfel că putem scrie:

g ( x , y )  f ( x , y ) 2 G ( x , y ) .
(7.35)

În consecinţă, filtrul LoG se poate calcula printr-o singură operaţie de


convoluţie, cu laplacianul gaussienei:
Modulul 7
Segmentarea imaginilor

1 x2  y2 x2  y2
 G( x, y) 
2
(  1) exp{ }. (7.36)
 2 2 2 2 2

Pentru că ne interesează schimbările de semn ale imaginii filtrate cu


acest operator, adesea el este folosit cu semnul inversat. În această
versiune, el are, de-a lungul oricărei direcţii radiale, alura asemănătoare
cu o pălărie mexicană (Fig. 7.7). Factorul de scară (1/2) este, de
asemenea, neesenţial pentru detecţia schimbării de semn, fiind adesea
utilizaţi şi alţi factori.
Versiunea discretă a filtrului LoG se obţine prin discretizarea
operatorului definit de ecuaţia (7.36). Deşi suportul operatorului este
teoretic infinit, valorile lui în afara unui interval de lungime 6 2 sunt
neglijabile. Trebuie însă observat că dimensiunea operatorului LoG
discret va depinde astfel de , parametrul ce controlează gradul de
mediere sau scara. Deoarece prin discretizarea operatorului se introduc
erori de aproximare, este necesar să se verifice faptul că suma
coeficienţilor măştii obţinute este nulă (dacă există o abatere, se adună o
constantă mică la toţi coeficienţii, pentru a o anula).

G(r)

Fig. 7.7. Profilul radial al operatorului LoG.

Dimensiunile măştii de convoluţie sunt relativ mari în raport cu


operatorii consideraţi până acum. De exemplu, pentru  = 5, vom avea
nevoie de o mască de dimensiuni 4343. Implementarea în domeniul
Fourier poate fi o soluţie de calcul rapid. O soluţie rapidă în domeniul
spaţial se poate obţine prin descompunerea operatorului în forma

 2 G ( x , y )  h1 ( x )h2 ( y )  h1 ( y )h2 ( x ) , (7.37)


unde
r2 r2
h1 (r )  c(  1) exp{ }, (7.38)
2 2 2
Modulul 7
Segmentarea imaginilor

r2
h2 (r )  c exp{ 2 } ,
2
(7.39)
iar c este o constantă de normalizare.

În fig. 7.8 este redat rezultatul detecţiei de contur pe baza trecerilor prin
zero ale imaginii prelucrate cu operatorului LoG cu  = 1. Având în
vedere sensibilitatea la zgomot relativ mare pentru  = 1, imaginea a
fost netezită în prealabil cu un filtru median 33. Totodată, schimbările
de semn sub un anumit prag de amplitudine au fost eliminate. Pentru
comparaţie, este alăturat în drepta rezultatul detecţiei cu operatorul
Sobel. Se observă tendinţa detectorului de muchii bazat de filtrul LoG
de a produce linii de contur închise şi rotunjite. În principiu, această
proprietate constituie un avantaj, dar există şi aplicaţii în care este
nedorită (efectul a fost ireverenţios denumit “tava cu spaghete”).

Fig. 7.8. Detecţie de muchii pe baza schimbărilor de semn ale imaginii


prelucrate cu operatorul LoG (mijloc). Muchiile detectate de
operatorul Sobel sunt incluse pentru comparaţie (dreapta)

Detecţia contururilor prin tehnici multirezoluţie


Prin intermediul parametrului , operatorul LoG poate fi adaptat pentru
a detecta muchii ce se manifestă la scări diferite. În imaginile reale,
intervin în mod natural muchii de dimensiuni diferite, ce nu pot fi
detectate optimal cu un singur operator. Pentru edificare, să considerăm
o secţiune de imagine unidimensională ilustrată în Fig. 7.9. Ne punem
întrebarea câte muchii sunt vizibile în figură şi unde sunt ele localizate.

Fig. 7.9. Un exemplu de muchie unidimensională

Un operator de tip gradient construit pe baza unei ferestre de


dimensiune “foarte mică” în raport cu extensia orizontală a figurii va da
un răspuns maxim în dreptul săgeţii. Dacă fereastra este infinitesimală,
ar putea fi şi singura muchie detectată pentru că panta este cu mult mai
Modulul 7
Segmentarea imaginilor

mică pe orice altă porţiune a curbei. Folosind un prag de detecţie


coborât, vom detecta o multitudine de muchii locale, unele situate pe
porţiunile ce, la o scară mai mare, pot fi considerate orizontale,. Pe de
altă parte, judecând la o scară mare, vom indica o singură muchie
prezentă. Care este răspunsul corect? Este clar că există mai multe
interpretări posibile şi răspunsul “corect” depinde esenţial de factorul de
scară la care judecăm lucrurile. La fel stau lucrurile şi în cazul detecţiei
automate a muchiilor. Dacă dispunem de informaţia că imaginea
conţine un anumit obiect cu dimensiunile aproximativ cunoscute în
raport cu extensia imaginii, noţiunea de muchie poate fi definită la o
scară convenabilă, concludentă în raport cu dimensiunile obiectului ce
trebuie detectat. Există însă şi aplicaţii în care asemenea informaţii
(numite a priorice) nu sunt disponibile înaintea detecţiei. Soluţia
salvatoare în asemenea situaţii este abordarea sistemică a problemei
detecţiei. Mai concret, muchiile se detecteaza succesiv la diferite scări,
folosind operatori de dimensiuni adecvate. Rezultatele pot fi asamblate
apoi la nivel superior, pe baza unor ipoteze ce pot fi generate pornind de
la rezultatele detecţiei la diferite scări.
Un procedeu de detecţie a muchiilor construit pe ideile
menţionate este detectorul Canny [Canny 1986]. Etapele de calcul
principale ale acestui detector sunt următoarele:
 Imaginea este prelucrată cu filtrul gaussian 2D la diferite scări,
.
 În imaginea filtrată, la fiecare scară, direcţia gradientului este
estimată cu ajutorul unui operator de derivare de ordinul întâi.
 Modulul gradientului la o anumită scară este obţinut prin
convoluţia imaginii cu derivata unei gaussiene pe direcţia
gradientului, estimată la pasul precedent.
 Imaginea este filtrată prin convoluţie cu derivata a doua a
gaussienei pe direcţia gradientului. Trecerile prin zero ale
imaginii obţinute sunt folosite pentru a selecta muchii posibile şi
a elimina punctele ce nu constituie maxime locale pe direcţia
gradientului.
 Muchiile potenţiale ce au supravieţuit la pasul precedent sunt
comparate cu două praguri. Muchiile cu amplitudinea mai mare
decât pragul superior sunt detectate necondiţionat. Cele cu
amplitudinea cuprinsă între cele două praguri sunt detectate
numai dacă sunt conectate cu pixeli deja detectaţi.
 Asamblează informaţia obţinută la diferite rezoluţii (scări)
pentru a sintetiza contururile finale. O muchie detectată la mai
multe scări, este localizată conform detecţiei la scara cea mai
mică, unde se presupune că precizia localizării este cea mai
bună.

7.3.4. Tehnici de postprocesare a contururilor


Cu excepţia detectorului Canny, metodele de detecţie discutate
până acum sunt de tip paralel. Paralelismul se referă la faptul că
detecţia are loc independent pentru fiecare pixel al imaginii şi în
principiu prelucrarea se poate efectua simultan folosind sisteme de
Modulul 7
Segmentarea imaginilor

procesare cu arhitecturi adecvate. Deficienţele semnalate ale acestor


metode de detecţie pot fi în bună măsură depăşite prin includerea în
criteriul de decizie a unor informaţii de context.. Un exemplu de
utilizare a contextului îl oferă chiar detectorul Canny (cu observaţia că
ideea este mai veche şi poate fi exploatată în moduri diverse). Astfel, o
valoare ridicată a gradientului, înregistrată la o anumită locaţie, este
puţin probabil să corespundă unei muchii reale dacă nu este susţinută de
context (de exemplu, dacă nici un pixel vecin nu a mai fost detectat ca
punct de muchie). În acelaşi timp, un pixel cu o valoare a gradientului
situată uşor sub un prag de decizie este probabil să aparţină unei muchii
reale, dacă se află situat pe direcţia conturului, între doi pixeli ce au fost
detectaţi ca aparţinând unei muchii. Metodele de segmentare bazate pe
context sunt iterative şi în acest sens consumatoare de timp. Timpul de
prelucrare se poate reduce prin implementarea paralel a fiecărei iteraţii.

Subţierea contururilor
Pragul de decizie are o valoare critică la detecţia muchiilor prin
metode de tip gradient. Stabilirea automată a pragului “optim” este o
problemă căreia i-au fost dedicate studii numeroase şi se va discuta
ulterior, într-un context mai general. Pentru moment, constatăm din
exemplele precedente faptul că o valoare unică poate fi prea mare
pentru unele muchii şi prea mică pentru altele. Indiferent de modul de
alegere a pragului, muchiile obţinute pe baza unui detector cu schema
bloc din Fig. 7.4 sunt îngroşate pe unele porţiuni şi întrerupte pe altele.

O strategie posibilă în detecţia muchiilor este de a se utiliza un


prag relativ coborât, pentru a detecta orice toate punctele potenţial
aparţinătoare unor muchii. Se obţin astfel linii de contur îngroşate,
pentru că răspunsul operatorilor gradient rămâne ridicat şi în imediata
vecinătate a muchiei reale. Subţierea contururilor poate fi obţinută prin
metoda de suprimare a punctelor de non-maxim local pe direcţia
gradientului. Am văzut deja că metoda este folosită implicit la detecţia
bazată pe treceri prin zero ale derivatei a doua şi este implementată şi la
detectorul Canny. Metoda poate fi utilizată însă cu succes la orice
operator de detecţie de tip gradient, unde se obţine informaţia de
direcţie, fără să fie absolut necesar şi calculul derivatei de ordinul doi.
Practic, fiecare de punct detectat este comparat cu punctele vecine
detectate pe direcţia locală a gradientului. Dacă punctul analizat nu are
gradientul mai mare decât oricare din aceşti vecini, el este suprimat.
Subţierea contururilor poate fi privită şi ca o operaţie de post-procesare
a informaţiei de contur şi abordată prin tehnici specifice prelucrării
imaginilor binare, prin tehnici de morfologie matematică.

Restabilirea continuităţii contururilor


O strategie abordare a detecţiei opusă celei discutate anterior
este de a se utiliza un prag de detecţie iniţial, gmax, ridicat, care să
detecteze numai puncte de contur cu certitudine extrem de ridicată. În
faza a doua, locaţiile imaginii vecine cu puncte deja detectate sunt
Modulul 7
Segmentarea imaginilor

reexaminate succesiv, fiind declarate puncte de contur dacă sunt


îndeplinite simultan condiţiile:
a) gradientul diferă de cel al pixelului deja detectat cu mai puţin
dacât un prag,  g,
b) direcţia gradientului diferă de direcţia gradientului pentru
pixelul detectat cu mai puţin decât un prag, .
Procedura se repetă până când nu mai sunt generate noi puncte de
contur. Rezultatele algoritmilor de detecție de muchii cu postprocesare
sunt ilustrate mai jos.

Tehnici de relaxare
Tehnicile de relaxare [Rosenfeld 1976], [Hancock 1990],
[Sonka, 1995] pornesc de la o detecţie iniţială cu un prag mediu.
Valorile ce caracterizează tăria muchiei (modulul gradientului) se
interpretează ca măsuri ale probabilităţii ca un punct să aparţină unei
muchii. Probabilităţile se ajustează succesiv la fiecare pas al
algoritmului de relaxare în funcţie de context, după anumite reguli.
Apoi se face o nouă detecţie de prag şi se continuă din nou cu ajustarea.
Prin fiecare pas, muchiile cu context slab tind să scadă cu probabilitatea
sub pragul de detecţie în timp ce muchiile cu context puternic tind să
treacă de pragul de detecţie. Contextul se modifică cu fiecare pas,
sistemul evoluând spre starea finală. Convergenţa algoritmului spre o
soluţie optimă nu este garantată, fiind semnalate situaţii în care
depăşirea unui număr de iteraţii poate conduce la soluţie mai puţin
performantă.

7.4. Discriminarea cu prag

Discriminarea cu prag reprezintă una din cele mai larg utilizate metode
de segmentare a imaginilor, datorită simplităţii, ce facilitează şi
implementarea în timp real.

7.4.1. Definirea metodei

În forma cea mai simplă, discriminarea cu prag generează o imagine


binară, prin compararea nivelului de gri la fiecare locaţie din imagine cu
un prag unic:
Modulul 7
Segmentarea imaginilor

1, pentru f x , y  T
g x,y   . (7.40)
0, în rest

Ecuaţia este de fapt similară cu (7.26). O asemenea metodă permite


separarea unor obiecte luminoase situate pe un fundal întunecat (sau
invers, obiecte întunecate pe un fundal luminos), în imagini simple, de
tipul ilustrat în Fig. 7.10.

Problema principală ce trebuie rezolvată la segmentarea prin


discriminare cu prag este selecţia corectă a pragului T. Procedeul uzual
este de a se folosi în acest scop histograma imaginii. În exemplul din
Fig. 7.10, pragul este unic pentru întreaga imagine (este un prag
global).

Fig. 7.10. Imagine simplă, cu obiecte luminoase pe fundal întunecat, cu


histograma ei şi rezultatul segmentării prin discriminare cu pragul T.

Mai general, pragul poate fi variabil, depinzând şi de coordonatele x,y


(prag dinamic), sau de o anumită proprietate, p(x,y), evaluată într-o
vecinătate a pixelului de coordonate x,y (prag local). Şi mai general,
segmentarea se poate realiza cu praguri multiple, când imaginea este
mai complicată. De exemplu, în aplicaţiile din domeniul histopatologiei,
se pune problema segmentării imaginilor celulelor, ce conţin un nucleu
dens şi citoplasma, mai puţin densă. Pentru a separa cele trei regiuni de
interes (nucleu, citoplasmă şi fundal), se pot folosi două praguri,
selectate pe baza histogramei, ca în Fig.7.11.

T1 T2
Modulul 7
Segmentarea imaginilor

Fig. 7.11. Un exemplu de segmentare cu două praguri

7.4.2. Selecţia pragului pe baza histogramelor

Discuţia introductivă sugerează (corect) utilitatea histogramei în


alegerea pragului de discriminare. Pentru majoritatea aplicaţiilor,
analiza imaginii trebuie să fie complet automată, astfel că pragul sau
pragurile nu pot fi stabilite interactiv. Cu toate că există numeroase
studii dedicate selecţiei optimale a pragului la segmentare [Sahoo
1988], subiectul nu pare a fi definitiv închis. În continuare, ne referim la
selecţia optimală a pragului în cazul problemei mai simple a segmentării
cu un singur prag, a imaginilor ce conţin în esenţă numai două tipuri de
regiuni.

7.4.3. Fundamente teoretice


Ideal, din punctul de vedere al segmentării, ar fi ca imaginea şi
histograma ei să conţină numai două niveluri de gri, corespunzătoare
obiectului şi fundalului. În realitate, obiectele nu au o reflectivitate
constantă, iluminarea scenei este neuniformă şi achiziţia imaginii este
afectată de zgomot. În consecinţă, în cel mai bun caz, putem spera la o
histogramă bimodală, ca în Fig. 7.12.

Histogramă imagine
p(z)

min
Distribuţie obiect Distribuţie fundal
Po po(z) Pf pf(z)

z
Topti T
m

Fig. 7.12. Selecţia pragului la o imagine cu histograma bimodală

Intuitiv, pragul optim este situat la nivelul de gri corespunzător


minimului histogramei situat între cele două moduri (maxime) ale
acesteia. În exemplul din Fig. 7.12, pragul optim este apropiat dar nu
coincide cu punctul de minim. Pentru a înţelege motivul, este necesar să
recurgem la calcule. Din convenienţă, facem abstracţie de procesul de
cuantizare. Fie po(z) şi pf(z) densităţile de probabilitate ale obiectului şi
fundalului şi p(z) densitatea de probabilitate a imaginii. Dacă Po şi Pf
Modulul 7
Segmentarea imaginilor

sunt probabilităţile apriorice de apartenenţă a unui pixel la obiect,


respectiv la fundal,

p( z )  Po po ( z )  Pf p f ( z ) . (7.41)

Presupunem că a fost selectat pragul oarecare, T > 0 şi exprimăm


probabilitatea de decizie eronată pe baza acestui prag:
T 

Pe ( T )  Po 

po ( z )dz  Pf  p f ( z )dz .
T

(7.42)

Minimul erorii se obţine pentru pragul la care


Pe (T )
 0. (7.43)
T

Folosind regula de diferenţiere a lui Leibnitz, obţinem:

Po po (T )  Pf p f (T )  0 , (7.44)

sau, echivalent,

Po po ( T )  Pf p f ( T ) . (7.45)

Ecuaţia de mai sus ne arată că pragul optim se află la intersecţia dintre


Po po(z) şi Pf pf(z). Prin interpretarea geometrică a integralelor din
relaţia (7.42), probabilitatea de eroare este proporţională cu aria
cuprinsă între Po po(z) şi axa z, de la - la T (practic z > 0), însumată cu
aria cuprinsă între Pf pf(z) şi axa z, de la T la infinit. În figură, aria
respectivă este redată în tonuri de gri. Oricare ar fi pragul T, aria nu
poate fi mai mică decât porţiunea redată în Fig. 7.12 cu nuanţa de gri
mai închisă. Aria marcată cu o nuanţă de gri mai deschisă dispare dacă
se alege pragul Toptim la intersecţia dintre Po po(z) şi Pf pf(z). Dacă Po
po(z) şi Pf pf(z) nu sunt simetrice faţă de punctul de intersecţie, minimul
densităţii globale p(z) nu coincide cu pragul Toptim.
Este instructiv să examinăm cazul particular în care obiectul şi
fundalul au densităţi gaussiene. Ecuaţia (7.45) devine

Po (T   o ) 2 Pf (T   f ) 2
exp{ }  exp{ }.
2  o 2 2o 2  f 2 2f

După logaritmare, obţinem o ecuaţie de gradul doi în T, ceea ce arată că


este posibil să avem nevoie de două praguri pentru minimizarea erorii.
O asemenea situaţie (extremă) este ilustrată în Fig. 7.13, pentru
distribuţii negaussiene. În cazul particular al gaussienelor cu dispersiile
egale,  1   2   , este suficient un singur prag:
Modulul 7
Segmentarea imaginilor

f  o 2  Po 
T  ln  (7.46)
2  f   o  Pf 

Dacă probabilităţile apriorice ale obiectului şi fundalului (semnificând


procentele din aria imaginii ocupate de obiect, respectiv fundal) sunt
egale, pragul optim se află la jumătatea intervalului dintre mediile de gri
ale obiectului şi fundalului. Acelaşi rezultat se obţine şi dacă  = 0.

Po po(z)
Pf pf(z)

z
T1 T2

Fig. 7.13. Exemplu de distribuţii ce necesită două praguri de


segmentare. Decizia este pentru obiect dacă T1< z <T2 şi pentru fundal
dacă z <T1 sau z >T2.

Estimarea parametrilor Gausienelor poate fi realizată cu ajutorul


algoritmului EM (expectation maximisation) propus de Dempster.
Algoritmul EM reprezintă o generalizare a algoritmului mediilor,
derulandu-se tot în doi pași. Primul pas clasifică datele, al doilea
recalculează parametrii distribuțiilor (mediile și dispersiile) în interiorul
claselor. La fel ca pentru algoritmul mediilor, se pornește cu un set
inițial de parametri aleși adaptat la setul de date. De exemplu, mediile
pot fi inițializate cu algoritmul mediilor. Apoi calculându-se dispersiile
fiecărei clase. Folosind mediile și dispersiile claselor, se poate
reclasifica fiecare eșantion și continua iterațiile până la convergența
finală a algoritmului.

7.4.4. Detecţia modurilor şi a minimelor în histograme

În general, probabilităţile apriorice şi distribuţiile nivelurilor de gri ale


obiectului şi fundalului sunt necunoscute înaintea segmentării. Ele pot fi
estimate, în unele aplicaţii, prin procedee la care ne vom referi ulterior.
Pentru moment, ne restrângem atenţia asupra segmentării pe baza
histogramei nivelurilor de gri. O soluţie frecvent adoptată în cazul
histogramelor bimodale este de a stabili pragul aşa cum s-a sugerat la
începutul acestui paragraf, în punctul de minim dintre cele două moduri.
În practică, stabilirea faptului dacă o histogramă este sau nu este
bimodală nu este lipsită de dificultăţi. Pornind de la definiţia modului ca
Modulul 7
Segmentarea imaginilor

punct de maxim al histogramei, vom aprecia că histograma imaginii din


Fig. 7.10 este multimodală, fiind detectabile câteva zeci de maxime
locale ale acesteia. O soluţie posibilă este de a filtra histograma,
folosind varianta 1D a uneia din tehnicile de netezire introduse în
Capitolul 6. Histograma filtrată serveşte doar pentru decizia referitoare
la caracterul ei bimodal, pentru că prin filtrare poziţiile modurilor şi a
minimului dintre ele pot fi modificate semnificativ. Filtrul procentilă
max poate fi utilizat eficient pentru netezire. Lungimea ferestrei se va
alege asfel încât maximele locale situate la niveluri de gri prea apropiate
de nivelul corespunzător maximului global să fie suprimate. O altă
soluţie ingenioasă este netezirea cu histereză. Locaţia curentă, h(k) este
substituită cu max{h(k-1), h(k)}, exceptând situaţia în care h(k-1)- h(k)
> T, un prag pozitiv ce acţionează ca o histereză. Practic se elimină
fluctuaţiile incluse în intervalul de histereză, fără a se modifica poziţia
maximului (poziţia reală a maximului pe un palier constant este
întotdeauna la prima locaţie, în ordinea de explorare de la filtrare).

Dacă histograma netezită este bimodală, se identifică modurile


şi se caută un prag optim situat între moduri. Dacă există mai mult de
două moduri şi distanţele dintre ele sunt suficient de mari, se poate opta
pentru o segmentare multiprag, procedura selecţiei preagului dintre
două moduri vecine fiind în esenţă aceeaşi ca în cazul histogramei
bimodale. Procedura de găsire a unui minim al histogramei între două
niveluri de gri precizate nu pune probleme deosebite în practică. Din
păcate, nu întotdeauna minimul histogramei corespunde pragului optim,
aşa cum s-a mai discutat deja. Este corect să ne aşteptăm ca valorile
scăzute ale histogramei să nu corespundă unor regiuni omogene şi de
dimensiuni mari aparţinând obiectului sau fundalului. Ele pot
corespunde unor regiuni de tranziţie dar nu este exclus să fie generate de
obiecte omogene de dimensiuni reduse în raport cu fundalul. O situaţie
de acest gen apare la segmentarea imaginilor conţinând texte, în
aplicaţii de recunoaştere a caracterelor, când este posibil chiar ca
histograma să devină unimodală.

7.4.5. Selecţia pragului prin algoritmul mediilor


În absenţa unor informaţii apriorice, segmentarea poate fi privită ca un
proces de clasificare nesupervizată a fiecărui pixel, în funcţie de nivelul
de gri sau, mai general, a unui vector ale cărui componente sunt
proprietăţi locale evaluate într-o vecinătate a acestuia. O metodă de
clasificare nesupervizată robustă este algoritmul de grupare al mediilor
(k means). Prezenăm aici versiunea lD, în forma în care este aplicat
pentru segmentarea cu un singur prag, propusă în [Ridler 1978].
Generalizări pentru praguri multiple se găsesc în [Otsu 1979], [Kittler
1986] sau [Cho 1989].
Pentru generalitate folosim histograma nenormalizată, h(k).
Notăm cu K numărul nivelurilor de gri.

Pasul 1. Se determină media imaginii, care este pragul iniţial,


To:
Modulul 7
Segmentarea imaginilor

K 1

 kh( k )
k 0
To  K 1 .
 h( k )
k 0
Alternativ, pragul iniţial se poate alege la jumătatea intervalului dintre
nivelul minim şi maxim prezent în imagine.

Pasul 2. Se determină mediile pixelilor mai mici, respectiv mai


mari decât pragul To:

T0 1 K 1

 kh( k )  kh( k )
k=T0
k= 0
1  T0 1 , 2  K 1 .
 h( k )  h( k )
k=T0
k= 0

Pasul 3. Se calculează noul prag:


  2
T'  1 .
2
Dacă T’= To, algoritmul se încheie.
În caz contrar, se face To= T’şi se revine la Pasul 2.

Uzual, algoritmul converge spre soluţia finală după numai câteva


iteraţii. Pragul corespunde optimului din ecuaţia (7.46), dacă obiectul şi
fundalul au dispersiile şi probabilităţile apriorice egale. Se poate arăta că
pragul To găsit de algoritmul mediilor minimizează eroarea medie
pătratică de aproximare a obiectului şi fundalului cu mediile 1 şi 2.
Algoritmul funcţionează bine chiar şi pentru histograme unimodale.

7.4.6. Selecţia pragului cu ajutorul histogramelor modificate

O abordare mai generală a selecţiei pragului se bazează pe


construcţia unor histograme numai cu ajutorul pixelilor ce satisfac
anumite proprietăţi. De exemplu, pixelii de tranziţie, la care gradientul
depăşeşte un anumit prag, sunt eliminaţi din construcţia histogramei.
Histograma astfel obţinută conţine aproape exclusiv pixeli din zonele
omogene ale obiectului şi fundalului. În consecinţă, valea dintre moduri
apare mai adâncită, cu minimul în zona nivelurilor de gri ale pixelilor de
tranziţie. Alternativ, histograma poate fi construită numai cu ajutorul
pixelilor cu gradient ridicat. Ideal, se obţine o histogramă unimodală, cu
pragul optim definit de modul histogramei sau de media coloanelor
semnificative ale histogramei din jurul modului. O altă posibilitate este
de a se construi o histogramă în care fiecare pixel are o contribuţie
ponderată în funcţie de mărimea gradientului local.
Modulul 7
Segmentarea imaginilor

Laplacianul este o altă proprietate utilă în construcţia unei


histograme modificate pentru selecţia optimală a pragului de
segmentare. Ideea de bază poate fi mai uşor înţeleasă cu ajutorul Fig.
7.14, ce redă profilul unei linii într-o imagine ce conţine un obiect
luminos pe un fundal întunecat şi (jos) laplacianul ei. Selectând la
construcţia histogramei numai pixeli la care laplacianul are o
amplitudine ce depăşeşte pragul TL, excludem pixelii din zonele de
luminanţă constantă ai obiectului şi fundalului, precum şi pixelii din
mijlocul zonei de trecere, la care gradientul este aproximativ costant şi
derivata a doua are valori reduse. Histograma se realizează astfel prin
contribuţiile pixelilor cu niveluri de gri situate în zona de cot a profilului
din Fig. 7.14. Se scontează pe obţinerea unei histograme bimodale, cu
un minim pronunţat situat în zona trecerilor prin zero ale laplacianului,
uşor detectabil ca prag de segmentare. Un aspect favorabil este că
histograma este construită cu aproximativ acelaşi număr de pixeli ai
obiectului şi fundalului, independent de raportul ariilor ocupate. Această
caracteristică poate fi exploatată convenabil, de exemplu, la
segmentarea cu prag a imaginilor conţinând texte scrise sau reprezentări
grafice.

pixeli selectaţi

TL
TL

Fig.7.14. Selecţia pixelilor pentru construcţia histogramei pe baza


laplacianului

Pragul TL nu este critic. Uzual, acesta este stabilit astfel ca un anumit


procent,  (tipic 5-10%), din pixelii imaginii să fie reţinuţi pentru
construcţia histogramei modificate. Practic, pragul se determină din
histograma modulului laplacianului, ca procentila (1-)%.

7.4.7. Folosirea informaţiilor apriorice


Rezultatele segmentării pot fi îmbunătăţite, uneori spectaculos, dacă se
dispune de informaţii apriorice referitoare la prezenţa şi caracteristicile
obiectelor segmentate. Referindu-ne din nou la problema segmentării
textelor scrise, cunoscând procentul mediu, % din suprafaţa paginii
ocupat de text, pragul selectat poate fi pur şi simplu procentila % în
histogramă. Alternativ, cunoscând grosimea medie a caracterelor
originale, pragul poate fi ajustat iterativ, până când caracterele extrase
prin segmentare au grosimea medie aşteptată.
Modulul 7
Segmentarea imaginilor

7.4.8. Prag dinamic

Uneori, segmentarea corectă a obiectului de fundal nu este posibilă cu


nici o valoare a pragului. Motivul poate fi iluminarea neuniformă
combinată eventual cu alţi factori (neomogenitatea obiectului şi a
fundalului de exemplu). O soluţie salvatoare poate fi segmentarea cu
prag dinamic, folosită cu succes în [Chow 1972] la segmentarea
imaginilor de angiografie. După operaţiunile de preprocesare necesare,
imaginea a fost divizată în 77 de blocuri de 6464 pixeli, cu
suprapunere de 50% între blocurile adiacente. Pentru fiecare bloc, s-a
construit histograma locală, pentru care s-a efectuat un test de
bimodalitate. Histogramele bimodale au fost aproximate optimal cu o
distribuţie sumă a două gaussiene şi s-a determinat un prag optimal,
conform ecuaţiei (7.46). Pentru regiunile cu histograme unimodale,
pragurile s-au stabilit prin interpolare, pe baza pragurilor definite de
regiunile cu histograme bimodale. În faza următoare, reţeaua de 77
praguri a fost utilizată pentru a se stabili, printr-o nouă interpolare,
pragul la fiecare locaţie a imaginii, Tx,y. Pixelii cu nivel superior
pragului local au fost clasificaţi ca aparţinători obiectului, ceilalţi fiind
consideraţi pixeli din fundal. Imaginea binară, obţinută prin procedura
descrisă, a fost utilizată pentru trasarea contururilor.

7.4.9. Discriminarea cu prag în imaginile color şi multispectrale

Metodele de segmentare prin discriminare cu prag se pot generaliza


pentru segmentarea imaginilor color şi a imaginilor multispectrale.
Iniţial, întreaga imagine este o regiune unică, pentru care se construiesc
histograme netezite ale fiecăreia din benzile componente (benzile R, G
şi B la imaginile color convenţionale). În fiecare histogramă se caută
modul cel mai proeminent şi se definesc două praguri ca minime ale
histogramei, de o parte şi cealaltă parte a modului principal. Se
segmentează fiecare bandă spectrală pe baza pragurilor iniţiale.
Regiunile obţinute sunt combinate prin operaţiunea logică de
conjuncţie, în urma căreia se obţin regiuni cu etichetare constantă în
fiecare din benzile spectrale (Fig. 7.15).

1 1 3
1
2 2
5
2 4
3
6
a) b) c)
Fig. 7.15. Segmentare multispectrală cu prag: a) banda 1, b) banda 2,
c) segmentare multispectrală

Procedura ilustrată se reia pentru fiecare din regiunile generate în prima


etapă şi se continuă iterativ divizarea până când toate regiunile
Modulul 7
Segmentarea imaginilor

îndeplinesc criteriile de uniformitate impuse prin specificul aplicaţiei.


Mai general, segmentarea se poate realiza prin interpretarea fiecărui
pixel din imaginea multispectrală de n benzi ca un vector n-
dimensional, prin tehnici de clasificare nesupervizată.

7.5. Creşterea regiunilor

Tehnicile de segmentare desemnate prin termenul de creştere a


regiunilor (region growing) se bazează pe evaluarea omogenităţii
regiunilor Ri, generate printr-un proces de partiţionare iniţială, cu
ajutorul unei funcţii cu valori binare, H(Ri). Obiectivul procesului de
creştere a regiunilor este de a se obţine o partiţie finală, astfel încât:

H ( Ri )  TRUE , i
(7.47)

H ( Ri  R j )  FALSE , i  j , Ri adiacent cu R j
(7.48)

Operaţiile de bază sunt diviziunea regiunilor ce nu satisfac criteriul


(7.47) şi fuziunea perechilor de regiuni adiacente ce nu satisfac criteriul
(7.48). Procesul de segmentare decurge iterativ, până când toate
regiunile imaginii satisfac criteriile (7.47) şi (7.48). Avantajul principal
al tehnicilor de creştere a regiunilor este flexibilitatea lor, concretizată
prin uşurinţa cu care se pot încorpora în regulile de fuziune sau
diviziune, într-o manieră directă, cele mai diverse tipuri informaţii
specifice aplicaţiei. Principalul dezavantaj natura lor iterativă, care
influenţează negativ timpul de procesare. Algoritmii de creştere a
regiunilor se pot clasifica în trei categorii: algoritmi de fuziune a
regiunilor, algoritmi de diviziune a regiunilor şi algoritmi de diviziune
şi fuziune a regiunilor.

Problema 7.1

Folosind operatorii Sobel, calculați modulul și direcția gradientului de


gri în centrul imaginii următoare :
1 3 7 6 8 
2 0 1 9 8
 
I  1 4 6 7 7  .
 
2 3 5 8 9
 3 2 7 8 7 

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