La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Segmentazione: Introduzione

Presentazioni simili


Presentazione sul tema: "Segmentazione: Introduzione"— Transcript della presentazione:

1 Segmentazione: Introduzione

2 How do we know which groups of pixels in a digital image correspond to the objects to be analyzed?

3 Segmentazione Consiste nel partizionamento di una immagine in regioni omogenee sulla base di un certo criterio di appartenenza dei pixel ad una regione Obiettivo: individuare/riconoscere gli oggetti che compongono l’immagine “The segmentation of the image(s) presented to an image analysis system is critically dependent on the scene to be sensed, the imaging geometry, configuration, and sensor used to transduce the scene into a digital image, and ultimately the desired output (goal) of the system” (A. Jain)

4 Regioni Le regioni in cui l’immagine viene suddivisa devono soddisfare alcune proprietà: DISTINCT: Nessun pixel è condiviso da due regioni COMPLETE: Tutti i pixel dell’ immagine sono assegnati ad almeno una regione della partizione CONNECTED: Tutti i pixel appartenenti ad una regione sono “connessi” HOMOGENEOUS: Tutte le regioni sono omogenee rispetto ad un criterio fissato (e.g. intensità, colore, texture, ecc..)

5 “Formalmente” Sia Irc una immagine con r righe e c colonne in cui il pixel (i,j) assume il valore xij nello spazio dei colori S Irc = {xij : i=1…r, j=1…c, xij in S} Esempio: S=RGB  xij=[xij,R; xij,G; xij,B] Sia H un predicato di omogeneità definito su un qualsiasi insieme di pixel Sia Rl = {(il1,jl1), (il2,jl2),…, (iln,jln)} ⊆ {1,…,r}x{1,…,c} La segmentazione di Irc è una partizione P={R1, R2,…,Rk} tale che: Ri∩ Rj = Ø i,j = 1,…,K i≠j (Distinct) U Ri = {1,…,r}x{1,…,c} (Complete) In ogni regione Ri i pixel sono “connessi” (Connected) H(Rn)= true  Rn (Homogeneous) H(Rn U Rm)=false  Rn, Rm adiacenti K i=1

6 Microarray Image Segmentation
Esempi Microarray Image Segmentation Medical Image Segmentation 8-connesso Rl 4-connesso Landscape Image Segmentation Skin Segmentation

7 Segmentation Resolution
Si possono definire tre categorie di risoluzione: Undersegmentation corrisponde alla risoluzione più bassa. L'omogeneità è definita con un grande margine di tolleranza. Soltanto i colori più signicativi sono mantenuti. I contorni delle regioni sono i bordi dominanti nell'immagine. Oversegmentation corrisponde ad una risoluzione intermedia. La gamma dei colori è abbastanza ricca l’immagine è suddivisa in piccole regioni che possono essere “fuse” attraverso controlli basati sulla conoscenza. E’ la risoluzione raccomandata quando il goal è l’object recognition. Quantization corrisponde ad una risoluzione alta. La gamma di colori contiene tutti i colori importanti nell'immagine. Questa categoria di segmentazione è diventata importante con la diffusione delle basi di dati di immagini. Una ampia gamma di colori, possibilmente insieme alla struttura spaziale, è essenziale per le query basate sul contenuto. Dorin Comaniciu

8 Biological Segmentation in Human: Visual Perception
“To see an object in the world we must see it as something” (L.Wittegenstein) “IT is established since the Gestalt movement in psychology that perceptual grouping plays a fundamental role in human perception.” (R. Nock – F. Nielsen)

9 Visual Perception primo stadio dell’elaborazione dell’informazione che si conclude con la Percezione: Input Ambientale (Stimolo) Registro Sensoriale (Stimolo, Organi di Senso) Selezione Tramite Attenzione Selettiva dell’input Interessante Percezione-Riconoscimento Human Visual Perception (Pre-Atentive) is governed by Gestalt Principles

10 Gestalt Principles of Visual Organization
Figura e sfondo Prossimità Chiusura Continuazione Similarità Comune Destino Parallelismo Regione Comune Simmetria

11 Figura e Sfondo IL RAPPORTO TRA FIGURA E SFONDO permette di “leggere” l’immagine, attraverso la separazione della figura dallo sfondo. Gli elementi dominanti sono percepiti come figura, il resto è percepito come sfondo. il faro spicca maggiormente e quindi viene catalogata come figura mentre le linee orizzontalo celesti sono percepite come sfondo.

12 Prossimità Le colonne e le righe dominano la nostra focale. Tendiamo ad identificare come gruppi le features che sono vicine tra loro. Questa legge è da tenere in considerazione quando l’immagine gioca un ruolo importante nell’abilità di interpretare il messaggio che si nasconde dietro. La figura A, a dimostrazione di questa legge, non viene vista come un insieme di righe ma piuttosto come un insieme di colonne. figura A

13 Chiusura Il nostro “occhio” tende a completare gli spazi vuoti e le forme non chiuse. Noi tendiamo a vedere le immagini complete persino quando una parte dell’informazione è mancante. In questa figura tendiamo a vedere tre rettangoli rotti ed un parentesi quadrata sulla sinistra piuttosto che tre colonne ed un parentesi quadrata sulla destra. Se eliminiamo le linee orizzontali ritorniamo alla figura che abbiamo visto nel principio di prossimità.

14 Continuazione l’organizzazione della percezione porta lo sguardo a proseguire lungo una linea retta o una curva. distinguiamo due linee: una da a a c e una da b a d. In realtà questo grafico potrebbe rappresentare un altro insieme di linee: da a a d e da b a c. Tuttavia, è più probabile che si tenda ad identificare il primo gruppo di queste linee che hanno una migliore continuazione rispetto al secondo dove è presente un ovvia torsione. b a d c

15 Similarità Elementi visivi simili vengono raggruppati sulla base della forma, della grandezza, del colore o della direzione. I cerchi e i quadrati sono raggruppati in maniera naturale; percepiamo colonne alternate di cerchi e quadrati. Se non fossero presenti le due caratteristiche ricorrenti percepiremmo la figura come righe o colonne

16 Comune Destino Oggetti che si muovono nella stessa direzione tendono ad essere percepiti come una unica entità

17 Parallelismo Linee parallele tendono ad essere raggruppate insieme

18 Regione Comune Figure posizionate all’interno della stessa regione chiusa tendono ad essere percepite insieme

19 Simmetria Percepire l’intero di una figura rispetto alle parti singole che la costituiscono Osservando la figura si vedono due rombi sovrapposti o tre oggetti: un piccolo rombo e due oggetti irregolari sopra e sotto di esso. Secondo il principio di simmetria, si percepiranno probabilmente due rombi sovrapposti

20 Gestalt Principles e Strategie di Segmentazione
Molte strategie di segmentazione sono riconducibili ai principi Gestalt Gestalt Principles Stategie di Segmentazione Figure/Sfondo Tresholding Prossimità, Similarità Clustering, Region Growing, Region Merging Continuità e Chiusura Morphological Methods Similarità Statistical Methods Continuità e chiusura Edge-Detection

21 Strategie di Segmentazione: Thresholding
Ogni pixel di una immagine a toni di grigio è caratterizzato da un valore di luminanza. L’algoritmo, di base, fissa una soglia di luminanza, allo scopo di distinguere tra due regioni(Sfondo/Oggetti). La soglia può essere fissata arbitrariamente, o in maniera automatica in base ad un certo criterio(usualmente statistico). Number of pixel Basato sull’istogramma (distribuzione) Max Intensity

22 “Formalmente” Se gli oggetti e il background occupano differenti range nella scala di grigi, possiamo “marcare” i pixel degli oggetti con il processo thresholding: Sia Irc(i,j) l’immagine originale in scala di grigio Sia Brc(i,j) l’immagine binaria ottenuta dal processo thresholding su Irc(i,j) Brc(i,j) = 0 if Irc(i,j)<t Brc(i,j) = 1 if Irc(i,j)≥t Possiamo assumere che 1 indica oggetti mentre 0 indica Background Come facciamo a scegliere una soglia t? Peack and Valley Method Global threshold selection

23 Threshold Selection: Peak and Valley method
Histogramma (h): distribuzione di frequenza dei livelli di grigio presenti nell’immagine Irc(i,j) hI(g) = numero di pixel in Irc il cui livello di grigio è g Trova i due picchi più prominenti di h g è un picco se hI(g)>hI(g±Dg), Dg=1,…,k Siano g1 e g2 i due picchi più alti con g1<g2 Trova la valle più profonda, g, tra g1 e g2 g è una valle se hI(g)≤hI(g’), g,g’ in [g1,g2] Usa g come threshold

24 Esempio

25 Global threshold selection
Seleziona una soglia iniziale T (es: media dei grigi presenti) Segmenta l’immagine usando T Questo passo produce due gruppi di pixel G1: tutti i pixel hanno valore minore a T G2: tutti i pixel hanno valore maggiore uguale a T Computa la media sui valori di grigio dei pixel presenti in G1 e G2 (µ1, µ2 ) Computa la nuova soglia threshold T=½ (µ1+ µ2) Ripeti gli step da 2-4 fino a convergenza Es. Convergenza: T non cambia in due ripetizioni successive

26 Esempio

27 Thresholding Vantaggi Svantaggi Semplice Efficiente
Perdita delle informazioni di prossimità L’istogramma descrive informazioni globali Limitata per scene complesse (due classi) In immagini a colori risulta più complicato

28 Strategie di Segmentazione: Clustering
Dalla rappresentazione dell’immagine nell’usuale spazio bidimensionale, si passa ad uno spazio delle caratteristiche, ad esempio lo spazio tridimensionale RGB, e si procede ad un partizionamento di tale spazio, allo scopo di identificare le regioni. Svantaggio: si perdono le proprietà di vicinato dei pixel, quindi si possono generare regioni non connesse. L’immagine si può vedere come un grafo su cui applicare l’algoritmo per la ricerca componenti connesse dopo aver effettuato la procedura di clustering. …Consensus Clustering? …Gravitational Clustering?

29 Strategie di Segmentazione: Clustering
Classificazione non supervisionata Suddivisione dei vettori di uno spazio di caratteristiche in classi tali che gli elementi di una classe siano tra loro simili gli elementi di classi differenti siano tra loro dissimili Bisogna definire: Spazio delle caratteristiche Misura di Similarità Funzioni Obiettivo da minimizzare/massimizzare

30 Strategie di Segmentazione: Clustering
Spazio delle Caratteristiche RGB Ogni pixel (i,j) dell’immagine Irc , è un vettore di tre componenti xij = [xij,R , xij,G , xij,B]

31 Strategie di Segmentazione: Clustering
Spazio delle Caratteristiche RGB Ogni pixel (i,j) dell’immagine Irc , è un vettore di tre componenti xij = [xij,R , xij,G , xij,B] Misura di similarità tra due vettori di uno spazio q-dimensionale: d(xij, yij)= (∑ | xij,k-yij,k|q)1/q (q=2 Distanza Euclidea) Funzione Obiettivo da minimizzare Es: Somma degli errori quadratici F(P) = ∑ ∑ ||xij - µl||2 µl = 1/|Rl| ∑ xij q k=1 k k l =1 xij in Rl k xij in Rl

32 Clustering approaches
Agglomerative Clustering Divisive Clustering Bottom up Top-down

33 Hierarchical Clustering
Inizializzazione: ogni punto dello spazio è un cluster Itera: Seleziona i due clusters più simili Es: Minima distanza intra-cluster Effettua il merge dei clusters selezionati Stop: quando è raggiunto il numero di clusters richiesto Agglomerative Clustering (bottom-up)

34 Esempio 1 2 3 4 5 6 7 8 Grado di Dissimilarità 6 4 5 2 1 3 5 2 3 1 4 6

35 Hierarchical Clustering: Single Link
xr xs Cluster r Cluster s d(r,s) = min(dist(xri,xsj))

36 Hierarchical Clustering: Complete Link
xr Cluster r xs Cluster s d(r,s) = max(dist(xri,xsj))

37 Hierarchical Clustering: Avarage Link
xr xs Cluster r Cluster s nr ns 1 nr ns d(r,s) = ∑ ∑ dist(xri,xsj) i=1 j=1

38 Partitional Clustering Approach
A partition clustering algorithm is to start with an initial partition and assign pattern to clusters so as to reduce square-error. Partition are update iteratively by reassigning patterns in attempt to reduce the square-error. (A.Jain)

39 Squared Error Clustering Method

40 K-mean Algoritm Partitional Clustering (Divisivo, ma numero gruppi assegnato a priori)

41 K-means (Ver. 1) Input Inizializzazione
Irc , k (numero delle classi), ε reale Inizializzazione r=0, segli k vettori dello spazio S (centroidi iniziali) µ10 … µk0 Rl={xij: | xij - µl|≤ | xij - µw| } l=1,…,k , w≠j Computa nuovi centroidi µ1,r+1 , …, µk,r+1 se F(P)< ε (r>n) STOP altrimenti vai al punto 1 incrementando r

42 K-Means(Ver. 2)

43 Esempio

44 Image Segmentation by Clustering
Scegli K Scegli le features da associare ai pixels (colore, texture, posizione, o combinazione di questi, ecc…) Definisci una misura di similarità tra i vettori delle features Applica l’algoritmo HC/K-Means Applica l’algoritmo delle componenti connesse Unisci le componenti con dimensione minore di una soglia t ad componente adiacente che è molto simile rispetto al criterio di omogeneità fissato.

45 Grafi e Componenti connesse
Sia G = (V,E) un grafo indiretto. Una componente connessa di G è un insieme massimale C ⊆ V tale che, per ogni u,vєC esistono un cammino tra u e v. Equivalentemente, le componenti connesse di un grafo G sono le classi di equivalenza della relazione di raggiungibilità.

46 (possibile rappresentazione)
Esempio A B C D E F G H 1 A C D G E F H B Matrice di Adiacenza (possibile rappresentazione) G=(V,E) V= {A, B, C, D, E, F, G, H} E= {(A,C), (A,B), (B,C), (D,E), (E,F), (F,G) }

47 Teoremi Dato un grafo indiretto G e due vertici u e v, esiste un cammino da u a v in G se e solo se u e v appartengono allo stesso albero della DF-foresta. La foresta DF contiene tanti alberi quante CC. Si può dimostrare che DFS( opportunamente modificato) su un grafo non orientato G può essere usata per identificare le Componenti Connesse

48 Algoritmo Componenti Connesse
CCDFS(G) k  0 for each u є V [G] do color[u]  white П[u] nil end for time  0 for each u єV [G] do if color[u] = white then CCDFSVisit(u) end if CCDFSVisit(u) if П[u] = nil then k  k + 1 cc[u]  k else cc[u]  cc[П[u]] end if color[u]  gray time  time + 1 d[u] time for each v є Adj[u] do if color[v] = white then П[v]  u CCDFSVisit(v) end for color[u]  black f[u]  time

49 Strategie di Segmentazione: Region Growing
Individuare le regioni che compongono l’immagine per accrescimento omogeneo a partire da un singolo pixel Una regione omogenea di un'immagine può essere ottenuta attraverso un processo di crescita che, cominciando da un seed di pre-selezionato, progressivamente agglomera pixel ad esso adiacenti che soddisfano un certo criterio di omogeneità; il processo di crescita si arresta quando nessun pixel può essere aggiunto alla regione.

50 Region Growing Ad ogni istante viene preso in considerazione un pixel che non è stato ancora allocato ma che è adiacente ad una regione; il pixel è allocato alla regione adiacente che risulta più simile secondo il criterio scelto. R4 R1 R3 R2 R4 Pixel considerato

51 Region Growing Algorithm
Scegli un seed (pixel) iniziale Seleziona i pixel vicini (connessi) e fai il merge se la condizione di omogeneità scelta è soddisfatta Se la regione non cresce, seleziona un altro seed e ripeti dal punto 2 finchè tutti i pixel non sono stati allocati ad una regione, altrimenti vai al punto 2 Rimuovi le regioni molto piccole (passo opzionale)

52 Esempio

53 Seeded Region Growing Algorithm
Viene dato in input il numero di seeds (pixel di partenza utilizzati per far crescere le regioni). L’algoritmo quindi procede autonomamente facendo crescere simultaneamente le regioni, finché tutti i pixel nell’immagine sono stati racchiusi in una regione. Per ogni passo tutti i pixel che non sono stati ancora allocati, ma che hanno almeno un vicino allocato, vengono presi in considerazione: tra tutte le regioni confinanti al pixel considerato, l’algoritmo seleziona quella i cui pixel hanno in media la minore differenza in termini di livelli di grigio rispetto al pixel preso in considerazione.

54 Esempio 115 129 117 10 115 129 117 10 115 129 117 10 115 129 117 10 Seeds = 4

55 Strategie di Segmentazione: Split and Merge
E’ possibile eseguire una segmentazione partizionando (splitting) ricorsivamente una immagine, o una sua precedente segmentazione approssimata, fino ad ottenere componenti uniformi. Si dovrà effettuare una successiva operazione di aggregazione (merging) delle regioni adiacenti che dovessero risultare compatibili in base ad un criterio

56 Modello split Immagine partizionata ripetendo ricorsivamente una suddivisione in quattro quadranti fino ad ottenere regioni uniformi rispetto ad un certo criterio stabilito (statistico). Minimizzare, rispetto ad una soglia di tolleranza, la varianza della distribuzione dei valori di luminosità dei pixel che compongono la regione stessa Parametro di valutazione statistica dell’uniformità della regione R: 1/1+Var(R) Assume valore 1 in corrispondenza di regioni perfettamente omogenee e valori tendenti a 0 per valori significativamente elevati della varianza statistica. Si sceglie una soglia di omogeneità

57 Quad Tree R 1/(1+Var(R)) > Soglia
La suddivisione ricorsiva dell’immagine in quadranti viene rappresentata con una struttura ad albero chiamato quad tree: ogni nodo contiene le informazioni relative a ciascun quadrante e i suoi figli sono associati ai quadranti in cui è ulteriormente suddiviso. Un nodo foglia è un quadrante sufficientemente uniforme da non richiedere ulteriori partizionamenti R 1/(1+Var(R)) > Soglia Dopo la fase di splitting si procederà alla fase di merging delle regioni adiacenti “compatibili”; regioni adiacenti verranno aggregate in una unica regione se quest’ultima risultarà sufficientemente uniforme.

58 Merge A1 A2 B D A1 A2 B A3 C A3 C D A41 A42 A41 A42 A43 A44 A43 A44
Region Adjacency Graph (RAG) La selezione delle regioni sulle quali valutare la compatibilità può essere effettuata attraverso un grafo di adiacenza. Un criterio di similatità può essere derivato dal confronto dei valori medi es: (|µA41 - µA42| < T) L’ordine di merging può influenzare il risultato.

59 Esempio B A1 A2 A3 C D A1 A2 B D A3 C F A1 A2 A3 A1 A2 F A3 E E A41
Merge together all sub-regions where P(Rj U Rk) = TRUE. F A1 E A2 A3 A1 A2 F A3 E

60 Letture e Risorse Laws of Organization in Perceptual Forms - Max Wertheimer (1923) - Color Image Segmentation: A State-of-the-Art Survey - L. Luccheseyz and S.K. Mitray Colour Image Segmentation - A Survey - Wladyslaw Skarbek Data Clustering: A Review - A.K. JAIN Seeded Region Growing – R. Adams, L. Bishof Seeded Region Growing Method for Image Segmentation - Tecniche digitali per la segmentazione delle immagini – Giorgio Meini Segmentazione delle immagini a colori – Paola Campadelli Robust Analysis of Feature Spaces: Color Image Segmentation - Dorin Comaniciu Statistical Region Merging – R. Nock, F. Nielsen A survey of current methods in medical image segmentation – Pham, Xu, Prince Digital Image Processing – Gonzales Introduzione agli Algoritmi – T. H. Cormen

61 Question Time


Scaricare ppt "Segmentazione: Introduzione"

Presentazioni simili


Annunci Google