1 / 46

Cap4. Segmentarea imaginii

Cap4. Segmentarea imaginii. Cap. 4. Segmentarea imaginii. Segmentare = divizarea imaginii în părţi (regiuni) corelate cu obiectele şi suprafetele din imagini Segmentare: completă  regiuni disjuncte = obiecte: proc. de nivel rid .

Download Presentation

Cap4. Segmentarea imaginii

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. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Cap4. Segmentarea imaginii Cap. 4. Segmentarea imaginii Segmentare = divizarea imaginii în părţi (regiuni) corelate cu obiectele şi suprafetele din imagini Segmentare: completă  regiuni disjuncte = obiecte: proc. de nivel rid. parţială  regiuni ce nu conduc direct la obiecte: proc. de nivel scaz. Segmentare partiala  regiuni omogene (luminozitate, culoare, textura etc.) Metode de segmentare • bazate pe cunoştinţe globale despre imagine (uzual se foloseste histograma) • bazate pe muchii (lanturi de muchii  frontiera) • bazate pe regiuni (dezvoltarea regiunilor)

  2. Cap. 4. Segmentarea imaginii 4.1. Segmentarea prin metode de prag Nivel de gri constant = prag  extragerea obiectelor din fundal Segmentarea completă a unei imagini R  regiunile R1, R2, … RS Metoda pragului: 1= obiecte, 0 = fundal (sau invers) : imagine binara Metode de prag • globale: un singur prag T pentru R (i) • locale: pragul T variază pe R (ii)

  3. Cap. 4. Segmentarea imaginii • • “Band-thresholding”  • • Praguri multiple  • Semi-prag • Metoda pragului  niveluri de gri din imagine, gradientul imaginii etc. Di = submulţimi de niveluri de gri

  4. Cap. 4. Segmentarea imaginii

  5. Cap. 4. Segmentarea imaginii Rosu – [26 56]; Albastru – [110 128]; Verde – [56 84]; Violet – [147 166];

  6. Cap. 4. Segmentarea imaginii 4.1.1. Detecţia pragului • Metoda “p-tile” Text tipărit: aria ocupată de caractere = = 1/p din aria totalăhistograma : (1/p)NG<T • Metode bazate pe analiza histogramei - Histogramă Obiectul  un maxim bimodalăFundalul  al doilea maxim - Histogramă multimodală: mai multe praguri = minime între maxime - Netezirea histogramei - Construirea histogramei cu raport optim maxim/minim  se elimina pixelii muchie  R = pixelii obiectului + cei ai fundalului  se folosesc numai pixelii muchie  histograma unimodala: T = max.

  7. Cap. 4. Segmentarea imaginii

  8. Cap. 4. Segmentarea imaginii • Metoda optimală de găsire a pragului probabilitatea ca un pixel dintr-o imagine M×N să aibă nivelul de gri g Histograma Distributie probabilistică varianţa = gradul de omogenitate Părţi omogene  varianţe mici Pragul T H-bimodala (i) şi (ii): varianţa ponderată pragul T : se calculeaza efort de calcul : probabilitatea de apariţie a pixelilor cu NG T : probabilitatea de apariţie a pixelilor cu NG> T varianţa varianţa

  9. Cap. 4. Segmentarea imaginii Soluţie iterativă (rapida): media şi varianţa totală

  10. Cap. 4. Segmentarea imaginii ( nu depinde de T ) se calculează recursiv

  11. Algoritm de segmentare: 1o Întreaga imagine = o singură regiune 2o bandă spectrală  histogramă netezită histogramă  max. semnificativ + 2 min.  segmentarea în 2 subregiuni  proiectarea într-o singură imagine multispectrală 3o Repetă pasul 2o pentru fiecare regiune  un singur maxim Cap. 4. Segmentarea imaginii 4.1.2. Metoda pragului pentru imagini multispectrale Segmentare prin metoda pragului pe fiecare banda

  12. Cap. 4. Segmentarea imaginii • 4.2. Segmentarea bazată pe muchii • Istoric: primul grup de tehnici de segmentare • Segmentare: gasirea muchiilor  lanturi de muchii frontiera (contur) • Metode de segmentare bazate pe muchii • - strategii de construire a conturului final • - informatii apriorice disponibile in procesul de segmentare • Zgomot muchii false prag • Prewitt LoG

  13. Cap. 4. Segmentarea imaginii • 4.2.1. Relaxarea muchiilor Frontiere prin metode de prag  zgomote Proprietăţile muchiei în contextul mutual al vecinilor  creste calitatae segmentarii Intensitatea muchiei într-o vecinătate locală  gradul de certitudine al muchiei • Metoda de relaxare bazata pe muchiile dintre pixeli (crack edges) Contextul muchiei  cele două capete (varfuri) extreme Vst, Vdr Se pot adăuga şi muchiile i şi h paralele cu e Relaxarea muchiilor frontieră continuă e – muchie centrală:câte un vârf la fiecare capăt  3 posibilecontinuări ale frontierei din fiecare vârf Vârf  nr. de muchii emanat (fără e) = tipul vârfului Tipul muchiei = i - j= forma muchiei  i, j = tipurile vârfurilor muchiei

  14. Cap. 4. Segmentarea imaginii • Pentru simetrie: i  j situaţii contextuale: • 0 - 0 muchie izolată : influenţă negativă asupra certitudinii • 0 - 2 capăt mort : influenţă negativă asupra certitudinii • 0 - 3 • 0 - 1 muchie nesigură : influenţă slab pozitivă sau fără influenţă • 1 - 1 muchie de prelungire (continuare) : influenţă puternic pozitivă • 1 - 2 muchie de continuare spre intersecţia • 1 - 3frontierei : influenţă medie pozitivă • 2 – 2 • 3 - 3punte între frontiere : fără importanţă pentru segmentare  • 2 - 3 fără influenţă

  15. Cap. 4. Segmentarea imaginii • Relaxarea muchiei metodă iterativă  certitudinea muchiei converge la: • 0 = muchie terminal • 1 = muchie ce formează frontiera • Certitudinea c(1)(e) pentru primul pas = magnitudinea normalizată a • muchiei “crack” e • Normalizarea max. global al muchiilor “crack” din întreaga imagine • max. local într-o vecinătate a muchiei • Algoritm de relaxare • 1o Calculează c(1)(e) pentru toate muchiile “crack” din imagine • 2o Găseşte tipul muchiei utilizând certitudinea într-o vecinătate • 3o Actualizează c(k+1)(e) : tipul muchiei + c(k)(e) • 4o Stop dacă toate certitudinile converg către 0 sau 1; dacă nu se repetă 2o şi 3o • Algoritmul  evaluează: tipul vârfurilor  tipul muchiilor  • modificarea certitudinii muchiilor

  16. Cap. 4. Segmentarea imaginii • Un vârf este de tipul i dacă: • a, b, c: valorile normalizate ale muchiilor “crack” incidente cu • m = max(a, b, c, q); q constantă egală de obicei cu 0.1 • Ex. vârf de tipul 1 (q = 0.1) • vârf de tipul 3 (q = 0.1) • Tipul muchiei  o înlănţuire a tipurilor vârfurilor • Modificarea certitudinilor muchiei: • - certitudinea creşte  • - certitudinea descreşte 

  17. Cap. 4. Segmentarea imaginii • 4.2.2. Trasarea frontierelor • Reginile def. in imagine(binare-etichetate) frontiere:interioara, exterioara, extinsa • Algoritmi pentru trasarea frontierei interioare • 1oP0 : pixelul din stânga sus al unei regiuni • “dir” = direcţia de la pixelul precedent curent • (i) dir = 3 (V4); (ii) dir = 7 (V8) • 2o V(33) pentru pixelul curent: caută (trig.) • (i) (dir + 3) mod 4 (c); • (ii) (dir + 7) mod 8 (d) pentru dir par • (dir + 6) mod 8 (e) pentru dir impar • Primul pixel = valoarea pixelului curent  •  un nou elementPn al frontierei  actualizează direcţia • 3o Elementul curent al frontierei Pn = P1 : al doilea element şi dacă Pn-1 = P0  STOP • Dacă nu  pasul 2o • 4o Pixelii P0 …. Pn-2 = frontiera interioară

  18. Cap. 4. Segmentarea imaginii 1 2 3 4 Exemplu: Trasarea frontierei interioare 1 2 3 4 5 6 Pasul 1o: P0dir = 7 Pasul 2o: P0dir = (7+6)mod 8 = 5  (5,2)=P1 dir = 5 P1 dir = (5+6)mod 8 = 3 (4,1), (4,2)=P2 dir = 4 P2 dir = (4+7)mod 8 = 3  (3,1), (3,2), (3,3)=P3 dir = 5 P3 dir = (5+6)mod 8 = 3  (2,2), (2,3)=P4 dir = 4 P4 dir = (4+7)mod 8 = 3  (1,2), (1,3), (1,4), (2,4)=P5 dir = 6 Notă: Algoritmul nu poate detecta frontiera interioară a unei găuri • - pixelii testaţi pe parcursul trasării frontierei • - pixelii frontierei

  19. Cap. 4. Segmentarea imaginii • Algoritm pentru trasarea frontierei exterioare • 1o Trasează frontiera interioară utilizând V4 • 2o Pixelii testaţi  R  frontiera exterioară • Frontiera exterioară  perimetrul, compatitatea • Exemplu: Trasarea frontierei exterioare Pasul 1o: P0dir = 3 Pasul 2o: P0dir = (3+3)mod 4 = 2  (1, 2), (2, 3), (3.2)=P1 dir = 0 P1dir = (0+3)mod 4 = 3  (3,3)=P2 dir = 3 P2dir = (3+3)mod 4 = 2  (2, 3), (3,4)=P3 dir = 3 P3dir = (3+3)mod 4 = 2  (2, 4), (3, 5), (4,4)=P4 dir = 4

  20. Cap. 4. Segmentarea imaginii • Frontiera extinsă • Frontiera interioară  R • Frontiera exterioară  R • Frontiera extinsa  regiuni adiacente • Definirea frontierei extinse  V8 • R: regiune ; Q: exteriorul regiunii R • Pixelii frontierei interioare regiunii R: pixel STÂNGA: P  R şi P4(P)  Q • pixel DREAPTA: P  R şi P0(P)  Q • pixel SUS: P  R şi P2(P)  Q • pixel JOS: P  R şi P6(P)  Q

  21. Cap. 4. Segmentarea imaginii • Definirea frontierei extinse • Fie submulţimile corespunzatoare lui R: STÂNGA (R), DREAPTA (R), SUS (R), JOS (R) • FE submultimea punctelor P, P0, P6, P7ce satisfac: • FE = {P: P  STÂNGA (R)}{P: P  SUS (R)}  {P6(P): P  JOS (R)}  •  {P6(P): PSTÂNGA (R)}{P0(P): PDREAPTA (R)}{P7(P): PDREAPTA (R)} • Exemplu:Trasarea frontierei extinse Frontiera extinsă

  22. Cap. 4. Segmentarea imaginii • Construirea FE folosind frontiera exterioară • (a) frontiera exterioară • (b) construirea FE • (c) FE = aceeaşi formă cu frontiera obiectului • Frontiera exterioară: DREAPTA, STÂNGA, SUS, JOS • Se deplasează: • - DREAPTA un pixel în jos • - STÂNGA un pixel spre dreapta • - SUS un pixel în jos şi la dreapta • - JOS nu se modifică

  23. Cap. 4. Segmentarea imaginii • Algoritm de trasare a FE – metoda look-up table • Tabelul ce defineşte 12 situaţii posibile ale configuraţiei locale a unei ferestre 2  2, • dependente de direcţiile precedente şi de statutul pixelilor ferestrei. • 1o Defineşte pixelul de start: standard (stg.  dr., sus jos ) • 2o Prima mişcare după 1o: dir = 6 (jos)  (i) din tabel • 3o Trasează FE cu tabelul de mai sus  FE închisă  STOP • Observaţie: Algoritmul nu permite trasarea frontierelor găurilor  gaura  regiune • separată pentru care se aplică algoritmul

  24. Cap. 4. Segmentarea imaginii • 4.2.3. Conectarea muchiilor cu ajutorul grafurilor orientate • Cunoştinţe apriorice: - punctele de START şi STOP ale unei frontiere • - muchiile x  R2din imagine cu magnitudineas(x)şi direcţia(x) • Graf: - noduri ni  muchiile x • - arce între nodurile orientate si ponderate: ponderea = cost • ni(xi)– nj(xj):  (xi),  (xj) = dir. locală a frontierei • Reguli pentru construirea grafurilor • - muchie = nod dacă s(x)  T ; T = prag • - ni(xi)– nj(xj) => intre noduri va exista un arc daca: • xjeste unul din cei trei vecini (V8) ai pixelului xiîn direcţia: • diferenţa direcţiilor : • - arcele se ponderează cu s(xj)

  25. Cap. 4. Segmentarea imaginii • Exemplu Muchii cu directii si magnitudini Construirea unui graf orientat

  26. Cap. 4. Segmentarea imaginii • Construirea frontierei • Construirea frontierei  găsirea unei căi de cost minim în graf de la un nod de • START xA la un nod de STOP xB • g(xi): funcţia de cost a căii optime între nodurile nA şi nB ce trece prin ni : xA  xi xB • g(xi): componentegs(xi): estimarea costului căii xA  xi • ge(xi): estimarea costului căii xi xB • gs(xi): suma costurilor arcelor sau nodurilor xA  xi; sau lungimea xA  xi • gs(xi): lungimea frontierei xi xB • Funcţia de cost  esenţială  poate fi dependentă de: • a) - modulul gradientului: • b) - curbura frontierei detectate: • c) - distanţa până la punctul final:

  27. Cap. 4. Segmentarea imaginii • Exemplu Functia de cost: g(D) = 1; g(C) = 7; g(G) = 5 => D selectat (se renunta la C si G) => din D: E, F si B determina calea

  28. Cap. 4. Segmentarea imaginii • 4.2.4. Conectarea muchiilor folosind tehnici de programare dinamica • Optimizare: => gasirea unui optim global in mai multi pasi • Bellman optimul unei cai intre doua puncte => optimul intre oricare doua puncte care apartin caii • Dacă: • Eliminăm x2: numai înh1 n pasi cu optimizarea unor functii de 2 variabile calcule în loc de pn

  29. Cap. 4. Segmentarea imaginii Trasarea frontierei  funcţie de evaluare care să conducă la “cea mai bună frontieră” Criteriul pentru estimarea unei “bune frontiere” din n pixeli: Criteriul are forma (*)  optimul funcţiei de evaluare

  30. Cap. 4. Segmentarea imaginii Exemplu Ponderarea arcelor: Conectarea muchiilor folosind programarea dinamica

  31. Cap. 4. Segmentarea imaginii 4.2.5. Transformata Hough Obiecte = forme şi mărimi cunoscute

  32. Cap. 4. Segmentarea imaginii • Detectare unei linii drepte  expresia analitică • Linie  punct în planul parametrilor • Detecţia liniilor: - se extrag muchiile (posibile puncte ale liniilor) daca s(x)T • - pentru fiecare punct: un număr limită de direcţii (a discretizat) • - b discretizat  structura rectangulara de celule in planul parametrilor • - pentru fiecare celula  un acumulator A(a, b)  se incrementează la detectarea liniei • - pentru fiecare muchie  se determina a, b: linii cu directii permise ce trec prin pixelul respectiv  valorile a, b: A(a, b)

  33. Cap. 4. Segmentarea imaginii

  34. Cap. 4. Segmentarea imaginii • Detectia liniei  detectia unui maxim local in spatiul acumulatorilor • Metoda nu este sensibilă la: • - porţiuni lipsă din linie • - zgomote • - alte structuri  linii • linii verticale  a   : • Transformata Hough pentru curbe complexe: • a : vector al parametrilor curbei x •  Algoritm pentru detecţia curbelor • 1o Cuantizează spatiul parametrilor • 2o Formeaza o arie de acumulatori A(a); seteaza pe 0 toate elementele • 3o (x1, y1) muchie si • 4o Maxim local in aria A realizarea curbei f (x, a).

  35. (x1, y1) R  b a Cap. 4. Segmentarea imaginii • Exemplu: Cercul • Acumulator tridimensional A(a,b, r): se va incrementa daca (a, b) este la distanta r fata de x • Acumulatorul creste exponential cu numarul parametrilor •  Volum de calcule scazut: informatii apriorice despre directia muchiilor • Exemplu: Detectia unei frontiere circulare cu raza R • - muchii cu 8 directii  se incementeaza un numar mai mic de celule • : relatia satisfacuta  incrementare • -  : directia muchiilor pentru pixelul x • -  : eroare maxima de directie anticipata • - A mai mare pentru muchii cu magnitudini mari • Parametrii pot reprezenta diferite curbe analitice: • - linii, cercuri, elipse, parabole, etc.

  36. Cap. 4. Segmentarea imaginii

  37. Cap. 4. Segmentarea imaginii • 4.2.6. Construirea regiunilor cu ajutorul frontierelor • Segmentarea bazata pe muchii  detectia frontierelor  •  segmentare totala • partiala  frontiere partiale • Frontiere partiale  construirea regiunilor • Metoda “superslice” • - pentru regiuni cu prop. dominante dependente de nivelurile de gri • - se cunoaste amplasarea in imagine a unor fragmente de frontiera • - regiunea R: in interiorul frontierelor partiale • - pixelii de frontiera: pozitia x directia (x) • - se cauta pixelul “opus” = pixel muchie semnificativa pe o directie perpendiculara (x) • - pixel al regiunii R = pixel de pe liniile ce unesc pixelii “opusi”

  38. Cap. 4. Segmentarea imaginii • Algoritm de formare a regiunilor din frontiere partiale • 1o Pentru fiecare pixel x al frontierei se cauta pixelii opusi pe o distanta  M; • se conecteaza prin linii pixelii opusi • 2o Calculeaza de câte ori un pixel s-a aflat pe o linie = numarul de marcari b(x) • 3o Determina numarul ponderat de marcari B(x): • B(x) = 0.0 pentru b(x) = 0 • B(x) = 0.1 pentru b(x) = 1 • B(x) = 0.2 pentru b(x) = 2 • B(x) = 0.5 pentru b(x) = 3 • B(x) = 1.0 pentru b(x) > 3 • Certitudinea ca un pixel • Condiţia ca x si y sa fie opusi:

  39. Cap. 4. Segmentarea imaginii

  40. Cap. 4. Segmentarea imaginii 4.3. Segmentarea imaginilor prin formarea regiunilor Omogenitatea regiunilor  divizarea imaginii in zone cu omogenitate maxima - segmentare (S) Functie binara de evaluare a omogenitatii regiunilor Ri  H(Ri) - omogenitate (O) Ri adiacent cu Rj - maximalitate (M) Segmentarea  regiuni cu proprietatile O si M Formarea regiunilor - unirea regiunilor - divizarea regiunilor - unirea/divizarea regiunilor

  41. Cap. 4. Segmentarea imaginii • 4.3.1. Unirea regiunilor • Algoritm de unire a regiunilor • 1o Defineste o metoda de startare a segmentarii  regiuni mici care satisfac (O) • 2o Defineste un criteriu de unire a doua regiuni adiacente • 3o Uneste toate regiunile ce satisfac criteriu de la pasul 2o. Daca nu exista nici un • grup de doua regiuni ce satisfac criteriu  STOP • Metode simple • Regiuni: 22, 44, 88 proprietati statistice (histograma) • Regiunile adiacente cu aceleasi descrieri se unesc; se marcheaza regiunile ce nu pot • fi puse in corespondenta • O regiune nu poate fi unita cu nici un vecin adiacent  STOP

  42. Cap. 4. Segmentarea imaginii 4.3.2. Divizarea regiunilor START: Imaginea = o regiune  nu satisface (O) Se divide imaginea in regiuni cu: (S, (O) si (M) 4.3.3. Divizare si unire Reprezentare piramidala a imaginii  regiunea = patrat - Regiune neomogena  divizare in patru regiuni - 4 regiuni a unui nivel cu aceeasi omogenitate  o regiune Divizare Unire

  43. 01 00 1 02 03 310 311 30 312 313 2 32 33 2 1 30 32 33 01 02 03 04 310 312 313 314 Cap. 4. Segmentarea imaginii Segmentarea = construirea unui arbore cvadripartit - fiecare nod f.= regiune omogena (f. = “frunza”) - nr. noduri f. = nr. regiuni segmentate Arbore cvadripartit de segmentare Divizare si unire  eliminarea sau adaugarea unor parti din arborele cvadripartit

  44. Cap. 4. Segmentarea imaginii • Algoritmul “divide si uneste” • 1o Segmentarea initiala in regiuni  omogenitate • reprezentare piramidala • 2oH(R) = (“fals”)  divide R in 4 regiuni “copil”; daca 4 regiuni cu acelasi parinte • pot fi unite  uneste-le. Daca nu se pot uni sau divide regiunile  3o • 3oRi, Rj adiacente  daca se pot uni intr-o regiune omogena  uneste-le chiar daca • nu fac parte din acelasi nivel al piramidei sau daca nu au acelasi parinte • 4o Uneste regiunile mici cu cele mai similare regiuni adiacente daca este necesar sa • fie eliminate regiunile cu dimensiuni mici.

More Related