Tehnica de prag Detectarea de contur Segmentarea bazata pe regiuni

Slides:



Advertisements
Παρόμοιες παρουσιάσεις
Diagnosticul diferenţial ecografic al sarcinii
Advertisements

Producerea curentului electric alternativ
Statistica analitica.
COMPUNEREA VECTORILOR
Proiect Titlu: Aplicatii ale determinanatilor in geometrie
Fenesan Raluca Cls. : A VII-a A
Ce este un vector ? Un vector este un segment de dreapta orientat
Functia de transfer Fourier Sisteme si semnale
Teste neparametrice.
Sisteme avansate de analiza si prelucrare a imaginilor
MASURAREA TEMPERATURII
Student: Marius Butuc Proiect I.A.C. pentru elevi, clasa a XI-a
Interferenta si difractia luminii
ANALIZA RETELELOR SOCIALE
UNIVERSITATEA POLITEHNICA TIMIŞOARA
Curs 21 Pirometrie optica.
Amplificatoare de semnal mic cu tranzistoare
MASURAREA TEMPERATURII
OPERATII ASUPRA IMAGINILOR (2/4)
Corpuri geometrice – arii şi volume
RETELE ELECTRICE Identificarea elementelor unei retele electrice
Metode si sisteme de analiza si interpretare a imaginilor
Prof.Elena Răducanu,Colegiul Naţional Bănăţean,Timişoara
Amplificatoare de semnal mic cu tranzistoare
Anul I - Biologie Titular curs: Conf. dr. Zoiţa BERINDE
Teorema lui Noether (1918) Simetrie Conservare
RETELE ELECTRICE Identificarea elementelor unei retele electrice
4. TRANSFORMARI DE IMAGINI 4.1. Introducere
REPREZENTAREA SI DESCRIEREA IMAGINILOR (2/2)
TRANSFORMATA FOURIER (INTEGRALA FOURIER).
Informatica industriala
IMBUNATATIREA IMAGINILOR
MECANICA este o ramură a fizicii care studiază
G. Gazul ideal G.1. Mărimi ce caracterizează structura materiei
,dar totusi suntem diferite?
OPERATII ASUPRA IMAGINILOR (1/4)
Ciematica punctului material
TRIUNGHIUL.
Curs 08 Amplificatoare de semnal mic cu tranzistoare
COMPUNEREA VECTORILOR
TEOREMA LUI PITAGORA, teorema catetei si teorema inaltimii
ESANTIONAREA SI CUANTIZAREA IMAGINILOR 1. Introducere
I. Electroforeza şi aplicaţiile sale pentru diagnostic
TRANSFORMARILE SIMPLE ALE GAZULUI
H. Hidrostatica H.1. Densitatea. Unități de măsură
Metode si sisteme de analiza si interpretare a imaginilor
1. RESTAURAREA IMAGINILOR (2/2)
UNDE ELECTROMAGNETICE
EFECTE ELECTRONICE IN MOLECULELE COMPUSILOR ORGANICI
Exemple de probleme rezolvate pentru cursul 09 DEEA
Parametrii de repartiţie “s” (scattering parameters)
Sisteme de ordinul 1 Sisteme si semnale Functia de transfer Fourier
Lentile.
ANALIZA DE IMAGINI SI RECUNOASTEREA FORMELOR
Lucrarea 3 – Indici ecometrici
Circuite logice combinaţionale
Curs 6 Sef Luc Dr. Petru A. COTFAS
Miscarea ondulatorie (Unde)
Serban Dana-Maria Grupa: 113B
Familia CMOS Avantaje asupra tehnologiei bipolare:
Aplicatie SL.Dr.ing. Iacob Liviu Scurtu
Aplicatii ale interferentei si difractiei luminii
Curs 08 Amplificatoare de semnal mic cu tranzistoare
Metode si sisteme de analiza si interpretare a imaginilor
FIZICA, CLASA a VII-a Prof. GRAMA ADRIANA
CUPLOARE.
Metode si sisteme de analiza si interpretare a imaginilor
Transfigurarea schemelor bloc functionale
CNSEM - CURS 71 PROGRAMAREA DATELOR REFERITOARE LA SCULA CORECTIA DE SCULA  Permite elaborarea unor programe cu caracter general  Corectii:  De lungime:
Μεταγράφημα παρουσίασης:

Tehnica de prag Detectarea de contur Segmentarea bazata pe regiuni

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.

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  imaginea f[x,y] : daca f[x,y]≥T f[x,y]=obiect=1 altfel f[x,y]=fond=0 (obiecte luminoase pe un fond intunecat) daca f[x,y]<T f[x,y]=obiect=1 (obiecte intunecate pe un fond luminos)

a) Imagine de prelucrat b) Histograma imaginii Exemplu: imagine cu doua regiuni => histograma cu doua varfuri => valoarea de prag derivata din histograma. a) Imagine de prelucrat b) Histograma imaginii

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);

-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.

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).

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)

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

Tehnica de prag multiplu Imaginea rezultata nu mai este binara:

Tehnica de semiprag Urmareste mascarea fondului, lasand nemodificata informatia prezenta in obiecte:

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.

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.

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):

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.

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:

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.

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

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).

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.

Profiluri tipice de contur:

Gradientul unei imagini: (ix , iy = vectori unitari pe directiile orizontala si verticala). => magnitudinea gradientului: => directia gradientului:

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).

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.

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).

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).

Operatorul Sobel Utilizare: detectarea orizontalitatii si verticalitatii contururilor (caz in care se utilizeaza numai mastile h1 si h3). Daca raspunsul lui h1 este y si raspunsul lui h3 este x, se poate obtine magnitudinea conturului: si directia:

Operatorul Robinson Operatorul Kirsch

Exemplu de aplicare a tehnicii bazate pe gradient 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).

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

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.

Conturul: Laplacianul (derivata a doua) isi schimba semnul 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:

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):

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):

Nucleul de convolutie bidimensional (filtrul „palarie mexicana”): a) LoG(x,y) b) LoG(r) Filtrul LoG cu σ=1.0.

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

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).

a) Imagine SNR=20 dB b) Filtrare LoG 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).

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: w1 w2 w3 w4 w5 w6 w7 w8 w9 -1 8

aplicat ferestrei curente de 3*3 pixeli: notata: f[x-1,y-1] f[x,y-1] f[x+1,y-1] f[x-1,y] f[x,y] f[x+1,y] f[x-1,y+1] f[x,y+1] f[x+1,y+1] x1 x2 x3 x4 x5 x6 x7 x8 x9

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).

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

Utilizarea gradientului pentru detectarea unui contur 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). a b c d e f g h i

Gradientul in punctul e: Implementare: operatorii Sobel (sabloanele de gradient): Se calculeaza: Gx=w1 x Gy=w2 x => magnitudinea gradientului G.

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.

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:

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”)

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

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:

Unghiurile dintre x si proiectiile sale pe subspatiile muchie, linie si medie:

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.

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.

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.

Exemplu: aplicarea detectorului de contur Canny. imaginea initiala imaginea prelucrata In comparatie cu operatorii Roberts, Sobel, Prewitt si Marr: detectorul Canny  contururi duble.

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

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.

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.

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

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.

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).

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.

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.

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.

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) |

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.