segmentazione delle immagini università degli studi di bergamo laurea specialistica in ingegneria...
TRANSCRIPT
![Page 1: Segmentazione delle immagini Università degli Studi di Bergamo Laurea Specialistica in Ingegneria Informatica Lezione 6.4 Corso di Robotica Prof. Davide](https://reader035.vdocuments.mx/reader035/viewer/2022062418/5542eb4a497959361e8b5763/html5/thumbnails/1.jpg)
Segmentazione delle immagini
Università degli Studi di BergamoLaurea Specialistica in Ingegneria Informatica
Lezione 6.4
Corso di RoboticaProf. Davide Brugali
![Page 2: Segmentazione delle immagini Università degli Studi di Bergamo Laurea Specialistica in Ingegneria Informatica Lezione 6.4 Corso di Robotica Prof. Davide](https://reader035.vdocuments.mx/reader035/viewer/2022062418/5542eb4a497959361e8b5763/html5/thumbnails/2.jpg)
L6.
4: S
egm
enta
zion
e2/47
Dav
ide
Bru
ga l
i –
Un
iBG
- R
ob
ot i
ca
Introduzione I La visione è un problema di inferenza:
abbiamo delle misure e un modello vogliamo capire cosa ha causato le misure
Caratteristiche/problemi cruciali grande quantità di dati quali dati (pixel) sono buoni e quali no? dal singolo pixel è difficile capire a che struttura appartiene
La soluzione sta nell’ottenere una rappresentazione compatta del contenuto di spicco dell’immagine che evidenzi tali caratteristiche
Segmentazione è il processo con cui si ottiene tale rappresentazione Tale rappresentazione dovrebbe
Contenere un numero di componenti gestibile Tali componenti dovrebbero essere indicativi
Segmentazione come decomposizione di un’immagine in superpixels: non interessa tanto la forma quanto la coerenza
Ambiguità del termine segmentazione Tecniche di clustering dei dati (anche edge detection lo è) Specifiche tecniche di decomposizione in super-pixels omogenei
![Page 3: Segmentazione delle immagini Università degli Studi di Bergamo Laurea Specialistica in Ingegneria Informatica Lezione 6.4 Corso di Robotica Prof. Davide](https://reader035.vdocuments.mx/reader035/viewer/2022062418/5542eb4a497959361e8b5763/html5/thumbnails/3.jpg)
L6.
4: S
egm
enta
zion
e3/47
Dav
ide
Bru
ga l
i –
Un
iBG
- R
ob
ot i
ca
Introduzione IILa forma di un oggetto può essere descritta in base: Alla regione occupata
Le regioni dell’immagine di solito hanno caratteristiche omogenee
intensità, colore texture
Si basa sulla suddivisione dell’immagine in regioni significative e omogenee
Ai bordi fra gli oggetti richiede la edge detection
Gli oggetti possono essere estratti In seguito a segmentazione Dopo averne estratto i bordi
![Page 4: Segmentazione delle immagini Università degli Studi di Bergamo Laurea Specialistica in Ingegneria Informatica Lezione 6.4 Corso di Robotica Prof. Davide](https://reader035.vdocuments.mx/reader035/viewer/2022062418/5542eb4a497959361e8b5763/html5/thumbnails/4.jpg)
L6.
4: S
egm
enta
zion
e4/47
Dav
ide
Bru
ga l
i –
Un
iBG
- R
ob
ot i
ca
Types
Region Growing and Shrinking
Clustering grouping K-means
Graph-Theoretic Clustering Normalized Cuts
![Page 5: Segmentazione delle immagini Università degli Studi di Bergamo Laurea Specialistica in Ingegneria Informatica Lezione 6.4 Corso di Robotica Prof. Davide](https://reader035.vdocuments.mx/reader035/viewer/2022062418/5542eb4a497959361e8b5763/html5/thumbnails/5.jpg)
L6.
4: S
egm
enta
zion
e5/47
Dav
ide
Bru
ga l
i –
Un
iBG
- R
ob
ot i
ca
Growing and Shrinking I Occorre trovare regioni che rappresentano
oggetti o parti di oggetti
Il dominio X dell’immagine deve essere
segmentato in n regioni R(1),…,R(N)
La regola di segmentazione è un predicato logico con la forma P(R)
![Page 6: Segmentazione delle immagini Università degli Studi di Bergamo Laurea Specialistica in Ingegneria Informatica Lezione 6.4 Corso di Robotica Prof. Davide](https://reader035.vdocuments.mx/reader035/viewer/2022062418/5542eb4a497959361e8b5763/html5/thumbnails/6.jpg)
L6.
4: S
egm
enta
zion
e6/47
Dav
ide
Bru
ga l
i –
Un
iBG
- R
ob
ot i
ca
Growing and Shrinking II La segmentazione dell’immagine partiziona
l’insieme X in sottoinsiemi R(i), i=1,…,N tali che:
1. X = i=1,..N U R(i)
2. R(i) ∩ R(j) = 0 for I ≠ j
3. P(R(i)) = TRUE for i = 1,2,…,N
4. P(R(i) U R(j)) = FALSE for i ≠ j
![Page 7: Segmentazione delle immagini Università degli Studi di Bergamo Laurea Specialistica in Ingegneria Informatica Lezione 6.4 Corso di Robotica Prof. Davide](https://reader035.vdocuments.mx/reader035/viewer/2022062418/5542eb4a497959361e8b5763/html5/thumbnails/7.jpg)
L6.
4: S
egm
enta
zion
e7/47
Dav
ide
Bru
ga l
i –
Un
iBG
- R
ob
ot i
ca
Growing and Shrinking III Il risultato della segmentazione è un predicato logico
che ha la forma P(R,x,t)
x è un vettore di caratteristiche associato ad un pixel Coordinate spaziali Intensità Colore Texture
t è un insieme di parametri (di solito dei valori di soglia)
Una semplice regola di segmentazione ha la forma:P(R) : I(r,c) < T
![Page 8: Segmentazione delle immagini Università degli Studi di Bergamo Laurea Specialistica in Ingegneria Informatica Lezione 6.4 Corso di Robotica Prof. Davide](https://reader035.vdocuments.mx/reader035/viewer/2022062418/5542eb4a497959361e8b5763/html5/thumbnails/8.jpg)
L6.
4: S
egm
enta
zion
e8/47
Dav
ide
Bru
ga l
i –
Un
iBG
- R
ob
ot i
ca
Growing and Shrinking IV In the case of color images the feature vector
x can be three RGB image components {IR(r,c),IG(r,c),IB(r,c)
A simple segmentation rule may have the form:
P(R,x,t) : (IR(r,c) <T(R)) && (IG(r,c)<T(G))&&
(IB(r,c) < T(B))
![Page 9: Segmentazione delle immagini Università degli Studi di Bergamo Laurea Specialistica in Ingegneria Informatica Lezione 6.4 Corso di Robotica Prof. Davide](https://reader035.vdocuments.mx/reader035/viewer/2022062418/5542eb4a497959361e8b5763/html5/thumbnails/9.jpg)
L6.
4: S
egm
enta
zion
e9/47
Dav
ide
Bru
ga l
i –
Un
iBG
- R
ob
ot i
ca
Region Growing I
Un semplice approccio alla segmentazione: partire da alcuni pixels (seeds) che rappresentano
regioni distinte dell’immagine (istogramma!) accrescerli fino a che tutta l’immagine risulta coperta
Servono una regola che descrive il meccanismo di crescita una regola che
controlla l’omogeneità della regione dopo ciascuna fase
verifica se è possibile unire due regioni distinte
![Page 10: Segmentazione delle immagini Università degli Studi di Bergamo Laurea Specialistica in Ingegneria Informatica Lezione 6.4 Corso di Robotica Prof. Davide](https://reader035.vdocuments.mx/reader035/viewer/2022062418/5542eb4a497959361e8b5763/html5/thumbnails/10.jpg)
L6.
4: S
egm
enta
zion
e10/47
Dav
ide
Bru
ga l
i –
Un
iBG
- R
ob
ot i
ca
Region Growing II
Meccanismo di crescita: ad ogni fase k e per ciascuna regione Ri(k), i = 1,…,N, si controlla se ci sono pixel non classificati nell’intorno 8-connesso di ciascun pixel del bordo della regione
Prima di assegnare tale pixel a una regione Ri(k), si controlla se la regione è ancora omogenea :
P(Ri(k) U {x}) = TRUE
![Page 11: Segmentazione delle immagini Università degli Studi di Bergamo Laurea Specialistica in Ingegneria Informatica Lezione 6.4 Corso di Robotica Prof. Davide](https://reader035.vdocuments.mx/reader035/viewer/2022062418/5542eb4a497959361e8b5763/html5/thumbnails/11.jpg)
L6.
4: S
egm
enta
zion
e11/47
Dav
ide
Bru
ga l
i –
Un
iBG
- R
ob
ot i
ca
Region Growing III
Esempio di test di omogeneità: se l’intensità del pixel è vicina al valore medio della regione
|I(r,c) – M(i)| <= T(i)
La soglia Ti varia a seconda della regione Rn e dell’intensità del pixel I(r,c). Può essere data da:
T(i) = { 1 – [s.d(i)/M(i)] } T
![Page 12: Segmentazione delle immagini Università degli Studi di Bergamo Laurea Specialistica in Ingegneria Informatica Lezione 6.4 Corso di Robotica Prof. Davide](https://reader035.vdocuments.mx/reader035/viewer/2022062418/5542eb4a497959361e8b5763/html5/thumbnails/12.jpg)
L6.
4: S
egm
enta
zion
e12/47
Dav
ide
Bru
ga l
i –
Un
iBG
- R
ob
ot i
ca
Region Growing IV: Merging
Date la media e la deviazione standard dalla media di una regione Ri con n pixel:
M = (1/n)(r,c)€Ri ∑ I(r,c)
s.d = Square root((1/n)(r,c)€Ri ∑[I(r,c)-M]2)
Can be used to decide if the merging of the two regions R1,R2 is allowed, if
|M1 – M2| < (k)s.d(i) , i = 1, 2 , two regions are merged
![Page 13: Segmentazione delle immagini Università degli Studi di Bergamo Laurea Specialistica in Ingegneria Informatica Lezione 6.4 Corso di Robotica Prof. Davide](https://reader035.vdocuments.mx/reader035/viewer/2022062418/5542eb4a497959361e8b5763/html5/thumbnails/13.jpg)
L6.
4: S
egm
enta
zion
e13/47
Dav
ide
Bru
ga l
i –
Un
iBG
- R
ob
ot i
ca
Split I L’approccio opposto al region growing è il
region shrinking (splitting)
E’ un approccio top-down e incomincia con l’ipotesi che l’immagine sia omogenea
Se non è vero, l’immagine viene suddivisa in 4 sotto-immagini
Questa procedura di splitting viene ripetuta ricordivamente fino a che restano solo regioni omogenee
![Page 14: Segmentazione delle immagini Università degli Studi di Bergamo Laurea Specialistica in Ingegneria Informatica Lezione 6.4 Corso di Robotica Prof. Davide](https://reader035.vdocuments.mx/reader035/viewer/2022062418/5542eb4a497959361e8b5763/html5/thumbnails/14.jpg)
L6.
4: S
egm
enta
zion
e14/47
Dav
ide
Bru
ga l
i –
Un
iBG
- R
ob
ot i
ca
Split II Supponiamo che l’immagine originale sia un
quadrato N x N, con N potenza di 2(N = 2n): Tutte le regioni prodotte dall’algoritmo di
splitting sono quadrati di dimensione M x M , dove M è pure una potenza di 2 (M=2m,m<=n).
Poiché la procedura è ricorsiva, produce una rappresentazione che può essere descritta da un albero i cui nodi hanno quattro figli ciascuno
![Page 15: Segmentazione delle immagini Università degli Studi di Bergamo Laurea Specialistica in Ingegneria Informatica Lezione 6.4 Corso di Robotica Prof. Davide](https://reader035.vdocuments.mx/reader035/viewer/2022062418/5542eb4a497959361e8b5763/html5/thumbnails/15.jpg)
L6.
4: S
egm
enta
zion
e15/47
Dav
ide
Bru
ga l
i –
Un
iBG
- R
ob
ot i
ca
Split III
Quadtree
R0 R1
R2R3
R0
R1
R00 R01 R02 R04
![Page 16: Segmentazione delle immagini Università degli Studi di Bergamo Laurea Specialistica in Ingegneria Informatica Lezione 6.4 Corso di Robotica Prof. Davide](https://reader035.vdocuments.mx/reader035/viewer/2022062418/5542eb4a497959361e8b5763/html5/thumbnails/16.jpg)
L6.
4: S
egm
enta
zion
e16/47
Dav
ide
Bru
ga l
i –
Un
iBG
- R
ob
ot i
ca
Split / Merge I
Svantaggio delle tecniche di splitting: Creano regioni adiacenti e omogenee che
risultano distinte
Metodo Split and Merge– Ad ogni iterazione
lo splitting è seguito da un merging
![Page 17: Segmentazione delle immagini Università degli Studi di Bergamo Laurea Specialistica in Ingegneria Informatica Lezione 6.4 Corso di Robotica Prof. Davide](https://reader035.vdocuments.mx/reader035/viewer/2022062418/5542eb4a497959361e8b5763/html5/thumbnails/17.jpg)
L6.
4: S
egm
enta
zion
e17/47
Dav
ide
Bru
ga l
i –
Un
iBG
- R
ob
ot i
ca
Split / Merge II Se una regione R non è omogenea (P(R)=
False) viene suddivisa in 4 sotto regioni Se due regioni adiacenti Ri,Rj sono
omogenee (P(Ri U Rj) = TRUE), esse vengono unite
L’algoritmo si ferma quando non è possibile operare alcuno splitting o merging successivo
L’algoritmo di split e merge produce regioni più compatte del algoritmo di solo splitting
![Page 18: Segmentazione delle immagini Università degli Studi di Bergamo Laurea Specialistica in Ingegneria Informatica Lezione 6.4 Corso di Robotica Prof. Davide](https://reader035.vdocuments.mx/reader035/viewer/2022062418/5542eb4a497959361e8b5763/html5/thumbnails/18.jpg)
L6.
4: S
egm
enta
zion
e18/47
Dav
ide
Bru
ga l
i –
Un
iBG
- R
ob
ot i
ca
Results – Region grow
![Page 19: Segmentazione delle immagini Università degli Studi di Bergamo Laurea Specialistica in Ingegneria Informatica Lezione 6.4 Corso di Robotica Prof. Davide](https://reader035.vdocuments.mx/reader035/viewer/2022062418/5542eb4a497959361e8b5763/html5/thumbnails/19.jpg)
L6.
4: S
egm
enta
zion
e19/47
Dav
ide
Bru
ga l
i –
Un
iBG
- R
ob
ot i
ca
Results – Region Split
![Page 20: Segmentazione delle immagini Università degli Studi di Bergamo Laurea Specialistica in Ingegneria Informatica Lezione 6.4 Corso di Robotica Prof. Davide](https://reader035.vdocuments.mx/reader035/viewer/2022062418/5542eb4a497959361e8b5763/html5/thumbnails/20.jpg)
L6.
4: S
egm
enta
zion
e20/47
Dav
ide
Bru
ga l
i –
Un
iBG
- R
ob
ot i
ca
Results – Region Split and Merge
![Page 21: Segmentazione delle immagini Università degli Studi di Bergamo Laurea Specialistica in Ingegneria Informatica Lezione 6.4 Corso di Robotica Prof. Davide](https://reader035.vdocuments.mx/reader035/viewer/2022062418/5542eb4a497959361e8b5763/html5/thumbnails/21.jpg)
L6.
4: S
egm
enta
zion
e21/47
Dav
ide
Bru
ga l
i –
Un
iBG
- R
ob
ot i
ca
Results – Region growing
![Page 22: Segmentazione delle immagini Università degli Studi di Bergamo Laurea Specialistica in Ingegneria Informatica Lezione 6.4 Corso di Robotica Prof. Davide](https://reader035.vdocuments.mx/reader035/viewer/2022062418/5542eb4a497959361e8b5763/html5/thumbnails/22.jpg)
L6.
4: S
egm
enta
zion
e22/47
Dav
ide
Bru
ga l
i –
Un
iBG
- R
ob
ot i
ca
Results – Region Split
![Page 23: Segmentazione delle immagini Università degli Studi di Bergamo Laurea Specialistica in Ingegneria Informatica Lezione 6.4 Corso di Robotica Prof. Davide](https://reader035.vdocuments.mx/reader035/viewer/2022062418/5542eb4a497959361e8b5763/html5/thumbnails/23.jpg)
L6.
4: S
egm
enta
zion
e23/47
Dav
ide
Bru
ga l
i –
Un
iBG
- R
ob
ot i
ca
Results – Region Split and Merge
![Page 24: Segmentazione delle immagini Università degli Studi di Bergamo Laurea Specialistica in Ingegneria Informatica Lezione 6.4 Corso di Robotica Prof. Davide](https://reader035.vdocuments.mx/reader035/viewer/2022062418/5542eb4a497959361e8b5763/html5/thumbnails/24.jpg)
L6.
4: S
egm
enta
zion
e24/47
Dav
ide
Bru
ga l
i –
Un
iBG
- R
ob
ot i
ca
Clustering I
La CLUSTER ANALYSIS viene usata per determinare gruppi di dati/oggetti simili Gli oggetti sono descritti da
coordinate/features
Viene usata in molti campi Visione artificiale Analisi socio-economiche Ovunque si debbano individuare gruppi distinti
di dati
![Page 25: Segmentazione delle immagini Università degli Studi di Bergamo Laurea Specialistica in Ingegneria Informatica Lezione 6.4 Corso di Robotica Prof. Davide](https://reader035.vdocuments.mx/reader035/viewer/2022062418/5542eb4a497959361e8b5763/html5/thumbnails/25.jpg)
L6.
4: S
egm
enta
zion
e25/47
Dav
ide
Bru
ga l
i –
Un
iBG
- R
ob
ot i
ca
Clustering II Cluster (gruppo) – Insieme di oggetti simili La somiglianza fra una coppia di oggetti dello
stesso gruppo è maggiore della somiglianza fra oggetti di gruppi diversi
I cluster sono disgiunti – gli oggetti appartengono ad uno solo di essi
![Page 26: Segmentazione delle immagini Università degli Studi di Bergamo Laurea Specialistica in Ingegneria Informatica Lezione 6.4 Corso di Robotica Prof. Davide](https://reader035.vdocuments.mx/reader035/viewer/2022062418/5542eb4a497959361e8b5763/html5/thumbnails/26.jpg)
L6.
4: S
egm
enta
zion
e26/47
Dav
ide
Bru
ga l
i –
Un
iBG
- R
ob
ot i
ca
Clustering e distanza Distanza – la distanza euclidea può essere usata x
calcolare la distanza/somiglianza Oggetti distanti sono poco simili Le coordinate usate per il calcolo sono I valori dei
feature di ciascun pixel
Xij – il valore della j-esimo feature dell’i-esimo pixelp – numero di features
2
1
)(),( kjij
p
jikki xxdxxd
![Page 27: Segmentazione delle immagini Università degli Studi di Bergamo Laurea Specialistica in Ingegneria Informatica Lezione 6.4 Corso di Robotica Prof. Davide](https://reader035.vdocuments.mx/reader035/viewer/2022062418/5542eb4a497959361e8b5763/html5/thumbnails/27.jpg)
L6.
4: S
egm
enta
zion
e27/47
Dav
ide
Bru
ga l
i –
Un
iBG
- R
ob
ot i
ca
Clustering e distanza fra cluster
![Page 28: Segmentazione delle immagini Università degli Studi di Bergamo Laurea Specialistica in Ingegneria Informatica Lezione 6.4 Corso di Robotica Prof. Davide](https://reader035.vdocuments.mx/reader035/viewer/2022062418/5542eb4a497959361e8b5763/html5/thumbnails/28.jpg)
L6.
4: S
egm
enta
zion
e28/47
Dav
ide
Bru
ga l
i –
Un
iBG
- R
ob
ot i
ca
Clustering e centro di gravità Il centro di gravità è il punto con coordinate uguali
alla media delle variabili dei pixel appartenenti al cluster
![Page 29: Segmentazione delle immagini Università degli Studi di Bergamo Laurea Specialistica in Ingegneria Informatica Lezione 6.4 Corso di Robotica Prof. Davide](https://reader035.vdocuments.mx/reader035/viewer/2022062418/5542eb4a497959361e8b5763/html5/thumbnails/29.jpg)
L6.
4: S
egm
enta
zion
e29/47
Dav
ide
Bru
ga l
i –
Un
iBG
- R
ob
ot i
ca
Clustering - Metodi
Gerarchici – gli oggetti vengono raggruppati, creando una gerarchia di cluster basata sulle distanze tra gli oggetti e gli oggetti e i cluster Raggruppamento o agglomerative clustering
Grouping Suddivisione o divisive clustering
Non-gerarchici – gli oggetti vengono spostati da un cluster all’altro con qualche criterio (ad esempio la variabilità più bassa) K-means
![Page 30: Segmentazione delle immagini Università degli Studi di Bergamo Laurea Specialistica in Ingegneria Informatica Lezione 6.4 Corso di Robotica Prof. Davide](https://reader035.vdocuments.mx/reader035/viewer/2022062418/5542eb4a497959361e8b5763/html5/thumbnails/30.jpg)
L6.
4: S
egm
enta
zion
e30/47
Dav
ide
Bru
ga l
i –
Un
iBG
- R
ob
ot i
ca
Clustering – Grouping I Si ha una matrice di n oggetti e p variabili Si costruisce la matrice delle distanze tra gli
oggetti Troviamo due oggetti simili (vicini) e li uniamo
in un cluster. I due oggetti sono sostituiti con uno che ha le
coordinate del centro di gravità
ikdD Dove i,k=1,2,..,n
dik – distanza tra due oggetti
![Page 31: Segmentazione delle immagini Università degli Studi di Bergamo Laurea Specialistica in Ingegneria Informatica Lezione 6.4 Corso di Robotica Prof. Davide](https://reader035.vdocuments.mx/reader035/viewer/2022062418/5542eb4a497959361e8b5763/html5/thumbnails/31.jpg)
L6.
4: S
egm
enta
zion
e31/47
Dav
ide
Bru
ga l
i –
Un
iBG
- R
ob
ot i
ca
Clustering – Grouping II La dimensione della matrice D viene ridotta di
1 (due oggetti sono rimpiazzati dal centro di gravità).
Si calcolano le distanze tra il nuovo cluster e I restanti oggetti
Gli step precedenti devono essere ripetuti fino a che rimane solo un cluster
![Page 32: Segmentazione delle immagini Università degli Studi di Bergamo Laurea Specialistica in Ingegneria Informatica Lezione 6.4 Corso di Robotica Prof. Davide](https://reader035.vdocuments.mx/reader035/viewer/2022062418/5542eb4a497959361e8b5763/html5/thumbnails/32.jpg)
L6.
4: S
egm
enta
zion
e32/47
Dav
ide
Bru
ga l
i –
Un
iBG
- R
ob
ot i
ca
Clustering – Grouping example
![Page 33: Segmentazione delle immagini Università degli Studi di Bergamo Laurea Specialistica in Ingegneria Informatica Lezione 6.4 Corso di Robotica Prof. Davide](https://reader035.vdocuments.mx/reader035/viewer/2022062418/5542eb4a497959361e8b5763/html5/thumbnails/33.jpg)
L6.
4: S
egm
enta
zion
e33/47
Dav
ide
Bru
ga l
i –
Un
iBG
- R
ob
ot i
ca
Clustering – Grouping example Standardizziamo i dati (poiché corrispondono
a grandezze diverse):
j
jijij S
xxz
![Page 34: Segmentazione delle immagini Università degli Studi di Bergamo Laurea Specialistica in Ingegneria Informatica Lezione 6.4 Corso di Robotica Prof. Davide](https://reader035.vdocuments.mx/reader035/viewer/2022062418/5542eb4a497959361e8b5763/html5/thumbnails/34.jpg)
L6.
4: S
egm
enta
zion
e34/47
Dav
ide
Bru
ga l
i –
Un
iBG
- R
ob
ot i
ca
Clustering – Grouping example Determiniamo la matrice delle distanze La distanza minima è quella fra i pixels 5 e 8 – il
primo cluster! Si calcola il loro centro di gravità
2
1
)(),( kjij
p
jikki xxdxxd
![Page 35: Segmentazione delle immagini Università degli Studi di Bergamo Laurea Specialistica in Ingegneria Informatica Lezione 6.4 Corso di Robotica Prof. Davide](https://reader035.vdocuments.mx/reader035/viewer/2022062418/5542eb4a497959361e8b5763/html5/thumbnails/35.jpg)
L6.
4: S
egm
enta
zion
e35/47
Dav
ide
Bru
ga l
i –
Un
iBG
- R
ob
ot i
ca
Clustering – Grouping example 5 e 8 sono sostituiti– X1, X2, e X3 sono le
medie relative a questi 2 oggetti e danno il centro di gravità;
Nella prima colonna ci sono I numeri dei pixels, nella seconda quelli dei cluster
![Page 36: Segmentazione delle immagini Università degli Studi di Bergamo Laurea Specialistica in Ingegneria Informatica Lezione 6.4 Corso di Robotica Prof. Davide](https://reader035.vdocuments.mx/reader035/viewer/2022062418/5542eb4a497959361e8b5763/html5/thumbnails/36.jpg)
L6.
4: S
egm
enta
zion
e36/47
Dav
ide
Bru
ga l
i –
Un
iBG
- R
ob
ot i
ca
Clustering – Grouping example La distanza minima è tra i pixels 2 and 4: il
nuovo cluster di cui va calcolato il centro che sostituisce i dati dei pixels 2 e 4
![Page 37: Segmentazione delle immagini Università degli Studi di Bergamo Laurea Specialistica in Ingegneria Informatica Lezione 6.4 Corso di Robotica Prof. Davide](https://reader035.vdocuments.mx/reader035/viewer/2022062418/5542eb4a497959361e8b5763/html5/thumbnails/37.jpg)
L6.
4: S
egm
enta
zion
e37/47
Dav
ide
Bru
ga l
i –
Un
iBG
- R
ob
ot i
ca
Clustering – Grouping example Restano 8 clusters. Eseguiamo I restanti 7 step L’ultimo step mostra cluster irregolari; rimane il pixel
9 rimane e l’uòtima matrice D Alla fine tutti gli oggetti stanno in un cluster
![Page 38: Segmentazione delle immagini Università degli Studi di Bergamo Laurea Specialistica in Ingegneria Informatica Lezione 6.4 Corso di Robotica Prof. Davide](https://reader035.vdocuments.mx/reader035/viewer/2022062418/5542eb4a497959361e8b5763/html5/thumbnails/38.jpg)
L6.
4: S
egm
enta
zion
e38/47
Dav
ide
Bru
ga l
i –
Un
iBG
- R
ob
ot i
ca
Clustering – Grouping example Come scegliamo i
cluster? Consideriamo la minima
distanza tra clusters. Il dendrogramma illustra gli oggetti e le distanze minime tra di essi secondo la procedura di grouping
Tagliamo le braccia del dendrogramma in qualche punto e otteniamo cluster diversi (è una nostra scelta)
![Page 39: Segmentazione delle immagini Università degli Studi di Bergamo Laurea Specialistica in Ingegneria Informatica Lezione 6.4 Corso di Robotica Prof. Davide](https://reader035.vdocuments.mx/reader035/viewer/2022062418/5542eb4a497959361e8b5763/html5/thumbnails/39.jpg)
L6.
4: S
egm
enta
zion
e39/47
Dav
ide
Bru
ga l
i –
Un
iBG
- R
ob
ot i
ca
Clustering – Grouping example Gli oggetti all’interno dei cluster sono simili?
Rispetto a che cosa? Per rispondere, usiamo la media e la media
globale
![Page 40: Segmentazione delle immagini Università degli Studi di Bergamo Laurea Specialistica in Ingegneria Informatica Lezione 6.4 Corso di Robotica Prof. Davide](https://reader035.vdocuments.mx/reader035/viewer/2022062418/5542eb4a497959361e8b5763/html5/thumbnails/40.jpg)
L6.
4: S
egm
enta
zion
e40/47
Dav
ide
Bru
ga l
i –
Un
iBG
- R
ob
ot i
ca
Clustering – K-means Lo scopo è creare k cluster situati il più lontano
possibile, mentre i cluster contengono pixel simili1. Vengono scelti k pixel, come se fossero i centri di
gravità (ad esempio, quelli più lontani tra di loro o basandosi sull’istogramma)
2. Ciascun pixel viene associato al centro più vicino, assicurandosi che non vi siano cluster vuoti
3. Vengono calcolati i centri di gravità dei cluster così creati
4. Le fasi 2 e 3 devono essere ripetute finché1. non si hanno più spostamenti dei pixel fra cluster o
dei centri di gravità
2. Tali spostamenti sono sotto una soglia prestabilita
![Page 41: Segmentazione delle immagini Università degli Studi di Bergamo Laurea Specialistica in Ingegneria Informatica Lezione 6.4 Corso di Robotica Prof. Davide](https://reader035.vdocuments.mx/reader035/viewer/2022062418/5542eb4a497959361e8b5763/html5/thumbnails/41.jpg)
L6.
4: S
egm
enta
zion
e41/47
Dav
ide
Bru
ga l
i –
Un
iBG
- R
ob
ot i
ca
Clustering – Esempio K-means A and E sono scelti a caso come centri C è più vicino ad A che ad E, così il cluster 1
consiste di A, B, e C mentre il 2 consiste di D e E. I punti rossi sono i centri di gravità C è più vicino al centro del cluster 2. Pertanto sarà
spostato dal cluster 1 al 2
![Page 42: Segmentazione delle immagini Università degli Studi di Bergamo Laurea Specialistica in Ingegneria Informatica Lezione 6.4 Corso di Robotica Prof. Davide](https://reader035.vdocuments.mx/reader035/viewer/2022062418/5542eb4a497959361e8b5763/html5/thumbnails/42.jpg)
L6.
4: S
egm
enta
zion
e42/47
Dav
ide
Bru
ga l
i –
Un
iBG
- R
ob
ot i
ca
Clustering by K-means Il risultato di tale algoritmo è trovare un
minimo locale della seguente funzione detta objective function
Dove x indica il vettore di caratteristiche del pixel e c quello del centro di un cluster
I segmenti possono non essere connessi e sparpagliati bisogna introdurre le corodinate spaziali nel vettore delle caratteristiche
![Page 43: Segmentazione delle immagini Università degli Studi di Bergamo Laurea Specialistica in Ingegneria Informatica Lezione 6.4 Corso di Robotica Prof. Davide](https://reader035.vdocuments.mx/reader035/viewer/2022062418/5542eb4a497959361e8b5763/html5/thumbnails/43.jpg)
L6.
4: S
egm
enta
zion
e43/47
Dav
ide
Bru
ga l
i –
Un
iBG
- R
ob
ot i
ca
Graph Image Segmentation I L’immagine è rappresentata da un grafo G =
(V,E) I veritici sono punti dello spazio dei features Il grafo è completamente connesso Ad ogni lato è associato un peso w(i,j) che è
funzione della similarità fra i vertici i and j.
Obiettivo: Partizionare l’insieme V negli insiemi disgiunti V1,..,Vn, dove la similarità tra i vertici di Vi è alta e quella tra I vertici di Vi e Vj è bassa
![Page 44: Segmentazione delle immagini Università degli Studi di Bergamo Laurea Specialistica in Ingegneria Informatica Lezione 6.4 Corso di Robotica Prof. Davide](https://reader035.vdocuments.mx/reader035/viewer/2022062418/5542eb4a497959361e8b5763/html5/thumbnails/44.jpg)
L6.
4: S
egm
enta
zion
e44/47
Dav
ide
Bru
ga l
i –
Un
iBG
- R
ob
ot i
ca
Graph Image Segmentation II
V: nodi/vertici del grafoE: lati/archi che connettono i vertici
G = {V,E}
PixelsSimilarità fra Pixel
Slides from Jianbo Shi
![Page 45: Segmentazione delle immagini Università degli Studi di Bergamo Laurea Specialistica in Ingegneria Informatica Lezione 6.4 Corso di Robotica Prof. Davide](https://reader035.vdocuments.mx/reader035/viewer/2022062418/5542eb4a497959361e8b5763/html5/thumbnails/45.jpg)
L6.
4: S
egm
enta
zion
e45/47
Dav
ide
Bru
ga l
i –
Un
iBG
- R
ob
ot i
ca
Graph Image Segmentation III I pesi/affinità più comuni (Wij) sono
Luminosità
Colore
Coordinate spaziali
Texture
![Page 46: Segmentazione delle immagini Università degli Studi di Bergamo Laurea Specialistica in Ingegneria Informatica Lezione 6.4 Corso di Robotica Prof. Davide](https://reader035.vdocuments.mx/reader035/viewer/2022062418/5542eb4a497959361e8b5763/html5/thumbnails/46.jpg)
L6.
4: S
egm
enta
zion
e46/47
Dav
ide
Bru
ga l
i –
Un
iBG
- R
ob
ot i
ca
Normalized Cuts I Decomponiamo il grafo in 2 due insiemi disgiunti A e B
Cut(A,B) è una misura della similarità tra i due gruppi Minimizzare Cut(A,B) dà una partizione col massimo di
disassociazione Esistono algoritmi efficienti e “veloci”
Tuttavia
BvAu
vuwBACut,
),(),(
![Page 47: Segmentazione delle immagini Università degli Studi di Bergamo Laurea Specialistica in Ingegneria Informatica Lezione 6.4 Corso di Robotica Prof. Davide](https://reader035.vdocuments.mx/reader035/viewer/2022062418/5542eb4a497959361e8b5763/html5/thumbnails/47.jpg)
L6.
4: S
egm
enta
zion
e47/47
Dav
ide
Bru
ga l
i –
Un
iBG
- R
ob
ot i
ca
Normalized Cuts II Data una partizione (A,B) di V, definiamo
Ncut(A,B) misura la similarità tra due gruppi, normalizzandola sul “volume” occupato dai due gruppi all’interno del grafo
Ncut(A,B) ha un valore minimo se A e B condividono lati con pesi bassi al proprio interno hanno lati con pesi alti
VtAu
tuwVAassoc
VBassoc
BAcut
VAassoc
BAcutBANcut
,
),(),(
),(
),(
),(
),(),(
![Page 48: Segmentazione delle immagini Università degli Studi di Bergamo Laurea Specialistica in Ingegneria Informatica Lezione 6.4 Corso di Robotica Prof. Davide](https://reader035.vdocuments.mx/reader035/viewer/2022062418/5542eb4a497959361e8b5763/html5/thumbnails/48.jpg)
L6.
4: S
egm
enta
zion
e48/47
Dav
ide
Bru
ga l
i –
Un
iBG
- R
ob
ot i
ca
Normalized Cuts III: Matrix Form D is an n x n diagonal matrix with entries
W is an n x n symmetrical matrix
j
jiwiiD ),(),(
),(),( jiwjiW
Dyy
yWDyGMinNcut
t
t
y
)(min)(
Subject to the constraints:y(i) ε {1,-b} dove 1 indica l’appartenenza del vertice ad
un insieme e –b all’altro• ytD1=0
![Page 49: Segmentazione delle immagini Università degli Studi di Bergamo Laurea Specialistica in Ingegneria Informatica Lezione 6.4 Corso di Robotica Prof. Davide](https://reader035.vdocuments.mx/reader035/viewer/2022062418/5542eb4a497959361e8b5763/html5/thumbnails/49.jpg)
L6.
4: S
egm
enta
zion
e49/47
Dav
ide
Bru
ga l
i –
Un
iBG
- R
ob
ot i
ca
Normalized Cuts IV Permettendo agli elementi di y di assumere valori
reali, MinNcut(G) può essere risolto trovando l’autovettore relativo al secondo più piccolo autovalore
Si stabilisce una soglia T tale che Se yi<T appartiene ad un insieme Se yi>=T appartiene all’altro insieme
Come scegliere la soglia? Costante, ad esempio (0, or 0.5). Il valore mediano Cercare il valore di soglia cui corrisponde il valore minimo di Ncut:
Scegliere n soglie possibili Calcolare Ncut Scegliere la soglia che dà il valore minimo di Ncut
DyyWD )(