Sunteți pe pagina 1din 6

Binarizarea unei imagini color

Metode de binarizare a imaginii

1. Consideratii generale

Obtinerea unei descrieri pentru imaginea supusa analizei presupune realizarea unei
operatii de segmentare a imaginii. Aceasta consta in descompunerea imaginii intr-un numar de
regiuni disjuncte, fiecare avand un anumit grad de omogenitate in raport cu o anumita
proprietate: nivel de gri, culoare, textura, modulul gradientului functiei imagine, etc.
Realizarea unei segmentari corecte si complete in care regiunile separate pot fi puse direct in
corespondenta cu un anumit obiect din imagine sunt dificil de realizat. Pentru a descrie corect
obiectele din imagine procesul de segmentare trebuie sa faca apel la o serie de informatii
suplimentare legate de tipul imaginii de segmentat si sa coopereze cu alte module de nivel
inalt utilizate ulterior segmentarii in analiza imaginii. În cele mai multe cazuri insa procesul
segmentarii imaginii poate fi dus la bun sfarsit utilizand tehnici de procesare de nivel scazut.
Astfel de situatii sunt cele in care imaginea consta dintr-un numar de obiecte situate pe un
fond uniform fata de care exista o diferenta mare de contrast (de exemplu obiectele situate pe
o linie de asamblare, caracterele dintr-un fragment tiparit, s.a.). Pentru imagini de acest tip
operatia de segmentare poate fi realizata in mod global, fara a corela rezultatele obtinute cu o
serie de cunostinte apriorice referitoare la obiectele din imagine.

2. Binarizarea imaginii

Binarizarea imaginii reprezinta cea mai simpla metoda de segmentare. Algoritmii de


binarizare pot fi aplicati cu succes in cazul in care obiectele din imagine au un nivel de gri
relativ constant ce contrasteaza fata de nivelul de gri asociat fondului. Aceasta face ca
separarea regiunilor din imagine sa poata fi realizata fara prea mari dificultati prin impunerea
unui prag de binarizare pe baza caruia fiecare pixel din imagine va fi clasificat ca fiind pixel de
fond sau pixel obiect. Presupunand ca fondul imaginii are o culoare inchisa, pixelii imaginii
destinatie (binarizate) vor putea fi etichetati conform urmatoarei reguli:

(1)

Asa dupa cum se poate vedea din relatia de mai sus operatia de binarizare are un
caracter local. Noua valoare asociata pixelului curent supus analizei depinde numai de
valoarea pragului si de valoarea nivelului de gri propriu; alti factori cum ar fi pozitia sa sau
valorile nivelului de gri dintr-o vecinatate a sa nu sunt luati in consideratie. O astfel de schema
de binarizare este avantajoasa din punct de vedere computational (pentru o imagine de
dimensiune NxN sunt necesare O(N 2) operatii), usor de implementat si testat. Ea este
adecvata insa pentru o clasa relativ restransa de imagini pentru care separarea intre obiecte si
fond este suficient de neta iar obiectele au caracteristici de culoare similare.

Alegerea unui prag de binarizare corect este esentiala pentru a obtine rezultate in
concordanta cu formele din imagine. Acest prag poate fi ales interactiv sau poate fi determinat
utilizand diferite proceduri de tipul celor discutate mai jos. Variatii relativ mici ale valorii
pragului de binarizare pot influenta semnificativ rezultatul binarizarii. Astfel de situatii sunt
prezentate in fig. 1c, 1d. În figura 1c alegerea unui prag prea scazut pentru binarizare duce la
clasificarea multor pixeli de fond ca pixeli obiect. În fig. 1d, cand pragul de binarizare are o
valoare prea mare, se poate constata ca o parte din zonele apartinand obiectelor au fost
omise.

a.) Imaginea originala b.) Histograma imaginii


c) Imaginea binarizata – prag 100 d) Imaginea binarizata – prag 130

Fig.1 Alegerea pragului de binarizare

În multe imagini, nivelul de gri (stralucirea) obiectelor din scena are o variatie mai
pronuntata. Astfel de cazuri sunt frecvent intanite atunci cand iluminarea nu este uniforma,
exista umbriri sau cand dispozitivul de captare are o sensibilitate variabila in zona de formare
a imaginii. Alegerea unui prag variabil de binarizare care sa depinda de pozitia in imagine sau
de gradul de iluminare poate fi o solutie in aceste situatii. O metoda din aceasta categorie
presupune divizarea imaginii intr-un numar de cadrane distincte si determinarea unui prag de
binarizare pentru fiecare subregiune in parte. In cazul in care histograma unei regiuni nu are
un caracter bimodal, pragul asociat este calculat prin interpolarea celor invecinate.

Segmentarea imaginii prin binarizarea functiei nivel de gri este numai una dintre
posibilitatile de urmat in procesul analizei. Algoritmii de binarizare pot fi aplicati in acelasi mod
si pentru cazul in care functia imagine, f(i, j), denota o alta proprietate a scenei analizate:
modulul gradientului nivelului de gri, caracteristica de tip textura, varianta a nivelului de gri,
etc.

3. Metode de determinare automata a pragului de binarizare

Alegerea automata a pragului de binarizare reprezinta o cerinta obligatorie pentru cele


mai multe sisteme de vedere artificiala. În general aceasta alegere se face pe baza unor
informatii extrase din imagine. Exista insa si cazuri cand alegerea pragului de binarizare se
poate face daca se cunosc sau se impun anumite proprietati pentru imaginea de prelucrat
respectiv imaginea rezultanta. De exemplu, in multe cazuri se poate preciza aprioric care este
proportia din totalul pixelilor din imagine care apartin obiectelor. Un astfel de exemplu este cel
al binarizarii paginilor tiparite unde suprafata acoperita de caractere ('obiecte') reprezinta un
procent aproximativ constant din aria suprafetei de imprimare. Determinarea pragului de
binarizare poate fi realizata in acest caz destul de usor printr-un procedeu iterativ ce face apel
la histograma imaginii. Descrierea algoritmului este data mai jos in limbaj C, asa cum este
realizata implementarea in IMAG.

PIXEL ImagGetThreshPercent(int TabHist[NumGri], int Percent)

/* determina pragul de binarizare T in asa fel incat un procent dat de Percent din */

/* totalul pixelilor din imagine sa aiba nivelul de gri mai mare ca pragul gasit */
return (PIXEL)i;

Secventa de apel din modulul principal este:

case IDM_PERCENT:

O alta categorie de metode de binarizare are la baza analiza histogramei. Pentru


imagini formate din obiecte avand nivele de gri relativ uniforme si diferite mult fata de fondul
imaginii, histograma imaginii are un caracter bimodal. În figura 1b este prezentata o astfel de
histograma construita pentru imaginea din fig. 1a. O histograma bimodala este formata din
doua grupari (moduri) relativ bine delimitate. Pixelii fondului, mai inchisi la culoare in cazul
prezentat, determina aparitia gruparii din stanga iar cei ai obiectului, deschisi la culoare si mai
putin numerosi, determina aparitia gruparii din dreapta.

Se poate observa ca cele doua grupari nu sunt complet separate. Între cele doua
varfuri ale gruparilor exista populatii de pixeli care ocupa nivelele de gri intermediare rezultate
probabil din zonele situate in apropierea frontierei obiect – fond. În aceste zone, trecerea de la
un nivel de gri la altul nu se face abrupt datorita efectului de atenuare introdus de senzor si
deci existenta unui numar de pixeli avand valori intermediare intre cele de fond respectiv
obiect este de asteptat.

Alegerea unui nivel de prag corespunzator valorii de minim aflate intre cele doua maxime
ale histogramei ar putea constitui un criteriu acceptabil din punct de vedere intuitiv. Practic,
aceasta valoare de minim nu este usor de determinat, cateva dintre motive fiind enumerate
mai jos:

a) zona cuprinsa intre cele doua maxime este suficient de intinsa si nu permite localizarea
precisa a pozitiei de minim;

b) exista mai multe puncte de minim local; alegerea celui mai bun dintre aceste minime nu
se poate face pe baza unui criteriu bine motivat;

c) histograma imaginii are o alura zgomotoasa ceea ce ingreuneaza procesul detectarii unei
valori de minim semnificativ (situata dincolo de valoarea unui prag de zgomot).

d) exista posibilitatea ca cele doua grupari sa se suprapuna in asa fel incat zona convexa
situata intre cele doua maxime sa dispara.

e) in unele imagini una dintre gruparile de pixeli poate fi preponderenta 'acoperind' in


histograma cea de-a doua grupare si deplasand pozitia pragului optim de binarizare.

f) histograma poate avea un caracter multimodal; nu exista in acest caz un criteriu pentru
alegerea unuia dintre minimele existente in imagine.

Pentru a putea rezolva aceste cerinte, majoritatea algoritmilor de detectie automata a


pragului de binarizare nu incearca gasirea in mod imediat a unui punct de minim local intre
cele doua moduri ale histogramei. O varianta mai eficienta de determinare a unui prag optim
de binarizare consta intr-o abordare de natura probabilistica.

Vom considera in cazul discret ca P(1), P(2),,P(G) reprezinta probabilitatile ca variabila


aleatoare corespunzatoare nivelului de gri din imagine sa aiba valoarea 1,2,,G, probabilitati
egale cu valorile date in intrarile corespunzatoare din tabloul histogramei:
P(g) = Card / (MN), g = 1,2,,G (2)

Vom presupune mai intai ca dorim clasificarea celor MxN pixeli in doua clase: C1 -clasa
pixelilor obiect, C2 -clasa pixelilor de fond. Fiecare nivel de prag t determina separarea
pixelilor din imagine in doua grupuri. Omogenitatea fiecarui grup poate fi caracterizata de
varianta grupului. Cu cat cele doua grupuri separate sunt mai omogene cu atat mai mult se
poate presupune ca separarea facuta este corecta. Criteriul propus are in vedere minimizarea
unei sume ponderate a variantelor grupurilor separate.

Fie t un nivel de prag oarecare ce separa cele doua grupuri. Putem caracteriza
probabilitatea de aparitie a fiecarui grup, q1(t), q2(t), folosind informatiile date de histograma
astfel:

(3)

, iar mediile respectiv variantele celor doua grupuri, 1(t), 2(t), 12(t), 22(t) prin:

(4)

Functia criteriu propusa, varianta ponderata a celor doua clase, este:

(5)

Algoritmul de gasire a nivelului optim de prag poate utiliza direct relatiile (3) - (5) in
forma prezentata pentru o cautare exhaustiva a valorii t ce minimizeaza w2(t) intre cele G
nivele de gri. O varianta mai eficienta de implementare bazata pe un calcul recursiv a valorilor
de mai sus este prezentata in curs.

Un alt algoritm de determinare automata a valorii de prag are la baza o procedura


iterativa. Pasii parcursi de algoritm sunt descrisi mai jos:

1. alege o valoare initiala pentru pragul t; valorile uzuale ce pot fi folosite sunt media
nivelului de gri din imagine sau (g max+gmin)/2, unde gmax, gmin sunt valorile maxime
respectiv minime ale nivelului de gri;

2. binarizeaza imaginea initiala pe baza nivelului de prag ales;

3.calculeaza mediile 1, 2 pentru fiecare dintre gruparile separate de pragul t;

4. calculeaza o noua valoare de prag t= (1+2)/2.


5. repeta pasii 2-4 pana cand se obtine convergenta.

Pentru imaginile color, binarizarea se poate face in urmatorul mod :

unde v este un vector tridimensional ce reprezint_a culoarea pixelului (de


exemplu v = (R; G;B) ), iar Y (v) reprezint_a luminant_a (Y = 0.3R+0.6G+
0.1B ).
In urma acestei transformari, contrastul este maximizat la nivelul
intregii
imagini.

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