segmentarea n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
SEGMENTAREA PowerPoint Presentation
Download Presentation
SEGMENTAREA

Loading in 2 Seconds...

play fullscreen
1 / 65

SEGMENTAREA - PowerPoint PPT Presentation


  • 111 Views
  • Uploaded on

SEGMENTAREA. Tehnica de prag Detectarea de contur Segmentarea bazata pe regiuni . A naliza unei imagini :  distinctie obiect si fond => tehnici de segmentare .

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'SEGMENTAREA' - nevaeh


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
segmentarea

SEGMENTAREA

Tehnica de prag

Detectarea de contur

Segmentarea bazata pe regiuni

slide2

Analiza unei imagini: distinctie obiect si fond => tehnici de segmentare.

Segmentarea: identifica zonele din imagine care apar ca fiind uniforme unui observator => imaginea impartita in regiuni cu aspect uniform => recunoasterea de obiecte.

Moduri de segmentarea:

-se cunosc in avans caracteristicile regiunilor;

-se incearca sa se gaseasca aceste caracteristici in timpul prelucrarilor.

Metode de segmentare:

-metode globale, utilizand histograma imaginii;

-segmentare bazata pe contururi;

-segmentare bazata pe regiuni.

slide3

TEHNICA DE PRAG

  • Valoarea fiecarui pixel comparata cu o valoare de prag => pixelul asignat uneia din doua categorii.
  • Selectia valorii de prag: din histograma.
  • volum de calcul redus,cu hardware special in timp real !
  • valoare de prag pentru stralucire T imagineaf[x,y] :
  • dacaf[x,y]≥T f[x,y]=obiect=1
  • altfelf[x,y]=fond=0
  • (obiecte luminoase pe un fond intunecat)
  • dacaf[x,y]<T f[x,y]=obiect=1
  • altfelf[x,y]=fond=0
  • (obiecte intunecate pe un fond luminos)
slide4

Exemplu: imagine cu doua regiuni => histograma cu doua varfuri => valoarea de prag derivata din histograma.

a) Imagine de prelucrat b) Histograma imaginii

slide5

Etape de aplicare practica a tehnicii de prag:

-se determina din histograma valoarea de prag T;

-se imparte histograma in doua benzi B1 si B2(fond si obiecte);

slide6

-se creaza imaginea intermediara g1[x,y] :

pentru x=0, 1, ... , N-1; y=0, 1, ... , N-1(LE si LB= valorile de pixeli pentru contur si respectiv fond);

-se creaza imaginea intermediara g2[x,y] :

pentru x=0, 1, ... , N-1; y=0, 1, ... , N-1;

-imaginea cu granitele dintre regiuni:

pentru x=0, 1, ... , N-1; y=0, 1, ... , N-1.

slide7

Valoare fixa de prag

Problema: gasirea unei valori convenabile pentru pragul T=> cea mai simpla tehnica: cu valoare fixa de prag.

Valoarea de prag independenta de imagine.

Solutia: eficienta pentru diferenta foarte mare intre obiect si fond.

Exemplu: pe o scara 0-255=>T = 128(o buna valoare de prag).

slide8

Tehnica de prag variabil (adaptiv)

Selectarea corecta a valorii de prag: importanta pentru succesul metodei => interactiv / rezultat al unei metode de detectare a pragului.

Variatiile nivelurilor de gri <= iluminare neuniforma, parametri neuniformi ai dispozitivului de intrare (achizitie a imaginii) sau alti factori:

=> T = T(f)

Solutia: tehnica de prag variabil (adaptiv) (valoarea de prag variaza in cadrul imaginii):

-imaginea este divizata in subimagini fc;

-o valoare de prag este determinata independent in fiecare subimagine;

-daca nu se poate determina o valoare de prag intr-o anumita subimagine, atunci aceasta poate fi obtinuta prin interpolare din valorile de prag ale subimaginilor vecine;

-fiecare subimagine prelucrata in raport cu valoarea locala de prag:

T = T(f, fc)

slide9

Tehnica de prag in banda

Imaginea impartita in regiuni cu niveluri de gri apartinand unui set D si in regiunea de fond:

slide10

Tehnica de prag multiplu

Imaginea rezultata nu mai este binara:

slide11

Tehnica de semiprag

Urmareste mascarea fondului, lasand nemodificata informatia prezenta in obiecte:

slide12

Metode de detectare a valorii de prag

Detectarea valorii de prag simplificata daca se cunoaste o anumita proprietate a imaginii (valoarea de prag selectata asigura satisfacerea proprietatii respective). Exemplu: imagine cu foaie de hartie tiparita-> contine caractere care ocupa 1/p din aria totala.

Algoritmul P-tile-thresholding: alege o valoare de prag T (pe baza histogramei imaginii) astfel incat 1/p din aria imaginii are valori < T, iar restul are valori de gri >T.

slide13

Algoritmul bazat pe histograma bimodala: pentru imaginile cu obiecte avand aprox. acelasi nivel de gri ≠ nivel de gri corespunzator fondului:

Valoarea de prag = minim dintre cele doua valori maxime din histrograma.

slide14

Algoritmul iterativ (optimal) de selectie a pragului:

1) Presupunand ca nu se cunoaste amplasarea exacta a obiectelor, se considera o prima aproximare prin care cele patru colturi ale imaginii contin pixeli de fond, iar ceilalti pixeli contin pixeli de obiecte.

2) La pasul t se calculeaza μBt si μOt: valorile medii pentru fond si respectiv pentru obiecte, unde segmentarea in fond si obiecte la pasul t este definit prin valoarea de prag T t determinata la pasul precedent (ecuatia de la pasul 3):

slide15

3) Seteaza:

(T(t+1)valoare de prag actualizata)

4) Daca T(t+1) = T(t)atunci stop algoritm

altfel reluare de la pasul 2.

slide16

Algoritmul isodata.

solutie iterativa (varianta a algoritmului precedent):

-histograma este impartita in doua printr-o valoare initiala de prag (exemplu T0=2B-1, B fiind numarul de biti / pixel);

-calculeaza media valorilor pixelilor apartinand obiectului (μO0) si media valorilor pixelilor apartinand fondului (μB0);

-calculeaza o noua valoare de prag T1, ca medie a celor doua valori.

=> procesul se repeta pana cand valoarea de prag nu se mai modifica:

slide17

Tehnica de prag multispectrala

Se aplica imaginilor multispectrale sau color.

Se determina valorile de prag independent in fiecare spectru si se combina rezultatele intr-o singura imagine segmentata.

Algoritm recursiv de prag multispectral.

1) Initializeaza intreaga imagine ca o singura regiune.

2)Calculeaza o histograma filtrata pentru fiecare banda spectrala. Gaseste varful cel mai semnificativ din fiecare histograma si determina doua valori de prag ca minime locale de ambele parti ale acestui maxim. Segmenteaza fiecare regiune din fiecare banda spectrala in subregiuni in functie de aceste valori de prag. Fiecare segmentare din fiecare banda spectrala este proiectata in cadrul unei segmentari multispectrale. Regiunile pentru urmatorii pasi de prelucrare sunt cele din imaginea multispectrala.

3) Repeta pasul 2 pentru fiecare regiune a imaginii pana cand histograma fiecarei regiuni contine numai un singur varf semnificativ.

slide18

Exemplificarea algoritmului:

a) b) c)

Se observa: segmentarea din banda 1 (a), apoi segmentarea din banda 2 (b) si in final segmentarea multispectrala (c).

slide19

DETECTAREA DE CONTUR

Tehnica de prag =>segmentare => toti pixelii unui obiect (unor obiecte) de interes din imagine.

O solutie alternativa: determinarea granitelor obiectelor din imagine (tehnica de detectare a conturului).

Detectarea de contur: localizeaza schimbarile abrupte in cadrul functiei intensitate luminoasa (valorile de pixeli).

Conturul: reprezentat prin vectorul gradient:

- magnitudine;

- directie: directia cresterii maxime a functiei luminozitate (ex. de la negru f(i,j)=0 la alb f(i,j)=255).

slide20

Exemplu: directia gradientului (curbele inchise ~ linii de aceeasi intensitate luminoasa, directia 0º este catre est).

Conturul: utilizat in analiza de imagine pentru gasirea granitelor dintre regiuni.

slide22

Gradientul unei imagini:

(ix,iy= vectori unitari pe directiile orizontala si verticala).

=> magnitudinea gradientului:

=> directia gradientului:

slide23

Clasificarea operatorilor de gradient:

  • operatori care aproximeaza derivatele functiei imagine prin diferente, (invarianti la rotatie, ex. Laplacianul) si necesitand o singura masca de convolutie; aproximarea primei derivate utilizeaza mai multe masti, orientarea fiind estimata pe baza celei mai bune potriviri dintre cateva sabloane simple.
  • 2) operatori bazati pe trecerea prin zero a derivatei a doua a functiei imagine (ex: Marr-Hildreth sau Canny).
  • 3) operatori care incearca sa potriveasca o functie imagine la un model parametric al contururilor (modelele parametrice: descriere a contururilor mult mai precisa, dar volum mare de calcule).
  • Multe aplicatii: interes numai pentru magnitudinile muchiilor (fara considerarea orientarilor)=> se poate utiliza Laplacianul (aceleasi proprietati in toate directiile, fiind invariant la rotatia imaginii).
slide24

Operatorul Laplace

Operatorul Laplace: mult utilizat in aplicatii, aproximand derivata a doua (furnizeaza doar magnitudinea gradientului).

Laplacianul: aproximat printr-o convolutie, cu masca 3x3, vecinatate de ordin 4 sau ordin 8:

Variante (pondere diminuata a pixelului central, fara insa invarianta la rotatie):

Dezavantaj: poate sa raspunda dublu la anumite contururi din imagine.

slide25

Operatorul Roberts

astfel incat magnitudinea conturului:

| f[i,j] - f[i+1,j+1] |+| f[i,j+1] - f[i+1,j] |

Dezavantaj: sensibilitatea ridicata la zgomote (utilizeaza prea putini pixeli pentru aproximarea gradientului).

slide26

Operatorul Prewitt

Operatorul Prewitt: aproximeaza derivata intai (la fel ca operatorii Sobel, Kirsch, Robinson etc).

Operatorii aproximand derivata intai ~ operatori busola / compas (determina directia gradientului).

Masca de convolutie 3x3: gradientul estimat in opt directii posible

=> magnitudinea cea mai mare  directia gradientului. Se pot utiliza si masti mai mari.

Directia gradientului: data de masca cu raspunsul maxim (valabil pentru toti operatorii aproximand derivata de ordin intai).

slide27

Operatorul Sobel

Utilizare: detectarea orizontalitatii si verticalitatii contururilor (caz in care se utilizeaza numai mastile h1si h3).

Daca raspunsul lui h1 este y si raspunsul lui h3 este x, se poate obtine magnitudinea conturului:

si directia:

slide28

Operatorul Robinson

Operatorul Kirsch

slide29

Exemplu de aplicare a tehnicii bazate pe gradient. Problema: gasirea de contururi inchise care sa inconjoare obiectele de interes.

In cazul obiectelor cu raport semnal-zgomot (SNR) ridicat: calcularea gradientului si apoi utilizarea unei valori convenabile de prag.

Detectarea de contur pe baza gradientului Sobel si a algoritmului de prag Isodata:

a) SNR=30 db b) SNR=20 dB

Imagine buna cu SNR=30 dB => rezultat bun.

Imagine mai slaba cu SNR=20 dB => rezultat mai slab (solutie:filtrare pentru reducerea zgomotului si apoi aplicarea gradientului).

slide30

Exemplu: aplicarea operatorilor Roberts, Sobel, Prewitt si Marr pentru detectarea contururilor intr-o imagine.

imaginea initiala imaginile prelucrate

slide31

Trecerile prin zero ale derivatei a doua

Operatorii Kirsch, Sobel, Prewitt pentru detectarea conturului: convolutia intr-o fereastra de vecinatate mica (functioneaza bine numai pentru anumite imagini). Dezavantaje: dependentele fata de dimensiunile obiectelor si sensibilitatea la zgomote.

Tehnica de detectare a conturului bazata pe trecerile prin zero ale derivatei a doua:

-contur treapta ~ schimbare abrupta in functia de imagine;

-prima derivata  un extrem in pozitia corespunzatoare conturului;

-derivata a doua = 0.

=> mult mai simplu sa se gaseasca un punct de trecere prin zero decat un extrem!Metoda: pentru imagini cu mult zgomot.

slide32

Conturul: Laplacianul (derivata a doua) isi schimba semnul. Posibil crestere a zgomotului  operatie de filtrare (filtru Gaussian), apoi derivata a doua (Laplacianul)=> operator LoG – „Laplacian of Gaussian”.

Pentru filtrare: operatorul Gaussian:

(σ= deviatia standard a distributiei de probabilitate asociate)

Pixelii din fereastra de convolutie mai departati de pixelul central: influenta mai mica asupra rezultatului (neglijabila pentru pixeli cu dist > 3σ).

Derivata a doua: operatorul Laplacian:

slide33

Operatia derivativa: liniara si invarianta la deplasare => ordinea operatorilor poate fi schimbata sau pot fi combinati intr-un singur filtru LoG:

Derivata filtrului Gaussian: independenta de imagine => poate fi precalculata (reducand complexitatea algoritmului).

Gaussiana: circular simetrica => substitutia r2 = x2 + y2 (r= distanta de la origine) => Gaussiana 2D  functie 1D (mai usor de diferentiat):

slide34

Prima derivata :

derivata a doua:

 coordonatele originale x,y x c (coeficient multiplicativ de normalizare: suma elementelor mastii = 0) => masca de convolutie a detectorului de trecere prin zero (filtrul LoG):

slide35

Nucleul de convolutie bidimensional (filtrul „palarie mexicana”):

a) LoG(x,y) b) LoG(r)

Filtrul LoG cu σ=1.0.

slide36

Laplacianul Gaussienei defineste operatorul Marr-Hildreth. O reprezentare mai exacta:

Gaussiana Derivata intai

slide37

Derivata a doua

Avantaje:

-se considera o arie mai mare din jurul pixelului central

-influenta pixelilor mai departati scade.

Mastile de convolutie cresc pe masura ce σ creste => σ=4 masca contine aproximativ 40 de pixeli.

Dezavantaj: in anumite situatii formele sunt filtrate prea mult (ex: colturile ascutite pot fi pierdute).

slide38

Exemplu: aplicarea filtrului LoG.

a) Imagine SNR=20 dB b) Filtrare LoG

Detectarea de contur utilizand algoritmul de trecere prin zero a derivatei a doua (filtru LoG).

slide39

Alte tehnici pentru detectarea de contur

Utilizeaza un operator de gradient, urmat de o operatie de prag asupra gradientului => decide daca s-a detectat o muchie. Pixelii identificati ca muchii conectati impreuna => curbe inchise inconjurand regiunile.

Detectarea unui punct singular: sablon de punct:

de exemplu:

slide41

Se calculeaza produsul scalar:

w x = [w1 w2 ... w9][x1 x2 ... x9]= w1x1 + w2x2 +... + w9 x9

S-a detectat un punct daca wx>T (o valoare de prag).

slide42

Detectarea unei linii orizontale / verticale / oblice (45˚) de grosime un pixel. Se utilizeaza sabloanele w1, w2, w3 si w4:

corespunzand fiecare pentru cate un tip de linie (—, /, \, | ).

Se calculeaza wi x, pentru i=1,2,3,4.

S-a detectat o linie de un anumit tip daca x este cel mai aproape de sablonul i, adica:

wi x >wj x oricare j≠i

slide43

Utilizarea gradientului pentru detectarea unui contur. Se considera o fereastra de imagine de 3*3 pixeli:

Se definesc:

Gx= (g+2h+i)-(a+2b+c)

(rand 3 – rand 1, elementele apropiate de e au pondere dubla: estimare a derivatei pe directia x)

Gy=(c+2f+i)-(a+2d+g)

(estimare a derivatei pe directia y).

slide44

Gradientul in punctul e:

Implementare: operatorii Sobel (sabloanele de gradient):

Se calculeaza:

Gx=w1 x

Gy=w2 x

=> magnitudinea gradientului G.

slide45

Algoritmul Frei si Chen pentru detectarea punctelor, liniilor si muchiilor.

Spatiu tridimensional definit de trei vectori ortogonali unitari, cu trei componente fiecare, w1, w2 si w3 (sabloanele 1 si 2 sunt pentru linii, iar sablonul 3 pentru puncte). Problema: regiunea reprezentata prin vectorul x este mai aproape de o linie sau mai aproape de un punct.

slide46

Magnitudinea (norma) lui x:

Unghiul dintre x si proiectia sa pe planul w1 w2:

Asemanator, unghiul dintre x si proiectia sa pe subspatiul w3 este:

slide47

Daca θ<φ => x este mai aproape de caracteristicile unei linii (decat de cele ale unui punct).

Aplicarea practica a algoritmului: ferestre de 3*3.

Sabloanele propuse de Frei si Chen sunt:

(baza subspatiului muchie, e - „edge”)

slide48

(baza subspatiului linie, l – „line”)

(baza subspatiului medie, a – „average”).

slide49

Fiind data o regiune 3*3 reprezentata de x si presupunand ca vectorii wi (i=1,2,...,9) au fost normalizati => magnitudinile proiectiilor lui x pe muchie, linie si medie:

slide51

Detectorul de contur Canny

Algoritmul: John Canny teza de master MIT 1983  larg utlizat.

Detectarea de contur ~ problema de prelucrare de semnale: se specifica formal o functie obiectiv  trebuie optimizata  utilizata pentru proiectarea detectorului de contur.

Criterii de optimizare ale functiei obiectiv:

1) criteriul de detectie: contururile importante nu trebuie ratate si nu trebuie sa existe contururi false => maximizarea raportului semnal zgomot pentru o buna detectare;

2) criteriul de localizare: distanta dintre pozitia actuala si pozitia localizata a unui contur trebuie sa fie minima => obtinerea unei localizari bune pentru marcarea cu acuratete a contururilor;

3) criteriul raspunsului unic: minimizarea numarului de raspunsuri pentru un singur contur.

slide52

Cea mai simpla solutie:

1) executa convolutia imaginii cu un filtru Gaussian 2D pentru filtrare;

2) executa diferentierea imaginii in doua directii ortogonale;

3) calculeaza amplitudinea si directia gradientului;

4) executa suprimarea non-maximala. Orice valoare de gradient care nu este un varf local este setat la zero (se utilizeaza directia gradientului);

5) aplica tehnica de prag contururilor gasite pentru eliminarea contururilor nesemnificative.

slide53

Multe implementari ale detectorului de contur Canny: convolutia imaginii cu patru masti (asemanatoare celor Prewitt sau Sobel) => gradientele orizontal, vertical si diagonale. Rezultat maxim  determinarea magnitudinii si directiei gradientului.

Histerezis al operatiei de prag: doua valori diferite de prag T2= 2T1.

-pixel contur cu gradient >T2=> pixel valid de contur;

-pixel conectat la acest pixel valid cu gradient >T1=> pixel valid de contur.

slide54

Exemplu: aplicarea detectorului de contur Canny.

imaginea initiala imaginea prelucrata

In comparatie cu operatorii Roberts, Sobel, Prewitt si Marr: detectorul Canny contururi duble.

slide55

Transformarea Hough

Transformarea Hough: identificarea (teoretic) a oricaror forme intr-o imagine.

Practic: pentru linii drepte si cercuri.

Complexitatea metodei ~ complexitatea formei.

Avantaj: robustetea rezultatelor (segmentarea nu este foarte sensibila la date imperfecte sau zgomot).

Problema: exista cateva puncte obtinute prin detectare de contur  linie dreapta ?

Ideea: fiecare punct voteaza pentru o serie de combinatii de parametri. Parametrii care castiga majoritatea voturilor => parametri castigatori (descriu cel mai bine linia data de aceste puncte).

Ecuatia generala a unei linii este:

y = ax + b

slide56

Se considera un punct (xi,yi) din imagine, care se gaseste pe aceasta dreapta:

yi = axi + b

sau rescriind ecuatia:

b = –xia + yi

Se colecteaza voturi in spatiul ab de la fiecare punct din spatiul xy=> puncte de acumulare de voturi in spatiul ab=> tablou de acumulatori. Maximele din tabloul de acumulatori ab indica ecuatiile de linii ale punctelor coliniare din spatiul xy.

slide57

In cazul general: nu se cunoaste nimic despre linii => printr-un punct pot trece o infinitate de linii.

Practic: se considera numai un numar finit de directii de linii (valori a) si similar un numar finit de valori b =>spatiul de parametri discret: reprezentare prin tabloul de acumlatori, M(a,b).

Problema: liniile verticale a=∞=> reprezentare alternativa:

x cosθ + y sinθ = r

(r= distanta fata de origine,θ= unghiul fata de axa x a perpendicularei din origine pe dreapta respectiva) => Nou spatiu de parametri θ si r(0≤θ≤2π,r limitat de dimensiunea imaginii). De asemenea, maximele din acest spatiu indica ecuatiile liniilor semnificative.

slide58

Teoretic: orice tip de curba poate fi detectat daca se poate exprima printr-o functie:

f(a1, a2, ... , x, y) = 0

Exemplu un cerc:

(x –a)2 + (y –b)2 – r2 = 0

(a,b= centrul,r= raza cercului). Directia vectorului din centrul cercului catre fiecare punct de pe cerc este determinata de unghiul gradientului => ecuatia in coordonate polare:

x = a + r cosθ

y = b + r sinθ

sau:

a = x – r cosθ

b = y – r sinθ

Fiind dat unghiul gradientului θ in punctul de pe contur (x,y) se pot calcula cosθ si sinθ (eventual aceste valori pot fi disponibile din procesul de detectare a conturului). Se elimina raza din perechea de ecuatii:

b = a tgθ – x tgθ + y

slide59

Rezulta urmatorul algoritm:

Algoritm pentru determinarea cercului.

1) Cuantifica spatiul de parametri a,b.

2) Initializeaza cu zero tabloul de acumulatori M(a,b).

3) Calculeaza magnitudinea gradientului G(x,y) si unghiul θ(x,y).

4) Pentru fiecare punct de pe contur din G(x,y) incrementeaza toate punctele din tabloul de acumulatori de pe linie

b = a tgθ – x tgθ + y

5) Maximul local din tabloul de acumulatori corespunde centrului cercului din imagine.

slide60

SEGMENTAREA BAZATA PE REGIUNI

Metode de segmentare bazate pe regiuni:

-cresterea regiunilor;

-divizarea regiunilor.

Cresterea regiunilor: initial fiecare pixel este considerat o regiune separata. Regiuni adiacente sunt reunite daca au proprietati similare (de exemplu, aceeasi valoare a pixelilor). Procesul continua pana cand nu exista regiuni adiacente similare.

Divizarea regiunilor: initial, intreaga imagine este considerata ca o singura regiune. Fiecare regiune este impartita in subregiuni, daca regiunea nu este omogena (pe baza valorilor pixelilor).

slide61

Segmentarea bazata pe cresterea regiunilor

 mai performanta pentru imaginile cu zgomot in care contururile sunt foarte greu de determinat.

Criteriul principal de segmentare = omogenitatea regiunilor (criterii de omogenitate: nivelul de gri, culoarea, textura, forma, modelul, etc).

Regiunile definite la un moment dat trebuie sa satisfaca conditiile:

Regiunile finale trebuie sa fie omogene si maxime.

slide62

Algoritm de fuzionare a regiunilor („region merging”).

1) Defineste o metoda de incepere a segmentarii imaginii in mai multe regiuni satisfacand conditia

2) Defineste un criteriu de fuzionare a doua regiuni adiacente.

3) Fuzioneaza toate regiunile satisfacand criteriul de fuzionare. Daca doua regiuni nu pot fi fuzionate satisfacand conditia de la 1, stop.

Diferenta dintre tehnicile specifice:

-definitia metodei de incepere a segmentarii;

-criteriul pentru fuzionare.

Rezultatele depind de obicei de ordinea in care regiunile sunt fuzionate.

Cea mai simpla metoda porneste segmentarea cu regiuni de dimensiuni 2x2, 4x4 sau 8x8. Fuzionarea regiunilor continua intre toti vecinii, inclusiv cei nou formati. Daca o regiune nu poate fi fuzionata cu niciun vecin, atunci aceasta este marcata ca „finala”. Procesul se opreste cand toate regiunile sunt marcate astfel.

slide63

Algoritm mai performant: se bazeaza pe o structura de date supergrid:

(● = pixel de imagine, ○ = conturur despartitor, ▪ nu se utilizeaza). Supergridul contine toate informatiile necesare pentru fuzionarea regiunilor in cadrul unei adiacente de dimensiune 4, prin intermediul contururilor despartitoare. Reguli de fuzionare:

-doua regiuni adiacente sunt fuzionate daca o parte semnificativa a granitei comune consta din contururi slabe;

-doua regiuni adiacente sunt de asemenea fuzionate daca o parte semnificativa a granitei comune consta din contururi slabe, dar fara considerarea lungimii totale a granitelor regiunilor.

slide64

Dintre cele doua reguli, prima este mai generala, iar a doua nu poate fi utilizata singura, caci nu ia in considerare influenta dimensiunilor diferite de regiuni.

Semnificatia conturului se poate evalua dupa formula:

vij = 1 contur semnificativ, vij = 0 contur slab, T1= valoare de prag, sij= valoarea conturului despartitor:

sij = | f(xi) – f(xj) |

slide65

Algoritm de fuzionare a regiunilor prin dizolvarea granitelor („boundary melting”)

1) Defineste o segmentare initiala in regiuni cu valori constante de pixeli. Construieste o structura de date supergrid in care memoreaza informatiile contururilor despartitoare.

2) Elimina toate contururile slabe din structura de date, pe baza relatiei precedente si o anumita valoare de prag T1.

3) Elimina recursiv granitele comune ale regiunilor adiacente Ri si Rj daca:

unde W este numarul de contururi slabe de pe granita comuna, li si lj sunt perimetrele regiunilor Ri si Rj iar T2 este o alta valoare de prag.

4) Elimina recursiv granitele comune ale regiunilor adiacente Ri si Rj daca:

sau utilizand un criteriu si mai slab:

unde l este lungimea granitei comune si T3 este o a treia valare de prag.