SEGMENTAZIONE DELLE IMMAGINI
Generalmente una immagine contiene diversi oggetti presenti
nella scena.
Per esempio, in una cella robotizzata di assemblaggio, il sistema
di visione acquisisce automaticamente i vari oggetti da assemblare
L’obiettivo del sistema intelligente in tale contesto, consiste nel
dividere l’immagine in regioni differenti, ognuna delle quali,
include solo uno degli oggetti acquisiti da assemblare
L’interesse in tale applicazione, è quello di avere disponibile un
algoritmo che isoli i vari oggetti presenti nell’immagine
Il processo di dividere l’immagine in regioni omogenee,
dove tutti i pixel che corrispondono ad un oggetto sono
raggruppati insieme, è chiamato Segmentazione.
Il raggruppamento dei pixel in regioni è basato in relazione ad un
criterio di omogeneità che li distingue tra loro.
I criteri possono essere similarità di attributi:
•colore,
•tessitura,
•prossimità spaziale (distanza euclidea…)
•ecc.
Due puntualizzazioni importanti:
1. La segmentazione dell’immagine non implica la
classificazione delle regioni. L’algoritmo di
segmentazione partiziona soltanto l’immagine in
regioni omogenee e nessuna informazione viene
fornita per riconoscere gli oggetti associati e tanto
meno sulla loro relazione.
2. La segmentazione dell’immagine non è basata su una
particolare teoria fisico-matematica. Diversi sono gli
algoritmi disponibili, molti dei quali non esaustivi e
basati su un approccio euristico utilizzando metodi ad
hoc per le varie applicazioni.
Gli algoritmi di segmentazione possono essere
raggruppati come segue:
• Algoritmi basati sulla conoscenza globale o parziale
dell’immagine (knowledge based). La conoscenza è
rappresentata dagli istogrammi di alcune
caratteristiche dell’immagine.
• Algoritmi basati sui contorni (Edge-based)
• Algoritmi basati sulle regioni (Region-based)
Gli algoritmi Edge e Region based si
caratterizzano a loro volta sulla base delle
features:
• luminanza,
• tessitura,
• movimento,
• colore,
• ecc.)
utilizzate per l’estrazione dei bordi o delle regioni.
Regioni e Contorni
L’insieme dei pixel connessi rappresentanti una particolare
caratteristica o proprietà degli oggetti è chiamata regione di
una immagine
Una immagine può contenere diverse regioni che rappresentano
una particolare proprietà di un singolo oggetto complesso
oppure proprietà associate ai vari oggetti della scena
A causa di errori presenti nell’immagine, non sempre è corretta la
corrispondenza tra le regioni e ciò che esse rappresentano,
ossia gli oggetti o parte degli stessi
Un contorno è una lista ordinata di bordi
L’insieme dei pixel che delimitano una regione costituiscono un
contorno chiuso. Non sempre i limiti di una regione sono
chiusi.
Processo di segmentazione
La segmentazione, processo di raggruppamento dei pixel in
regioni, può essere definita come un metodo che partiziona una
immagine f(i,j) in regioni R1, R2,.........,Rn che soddisfano le
seguenti condizioni:
1.
n
 Rk  f ( i, j )
ossia l’intera immagine (Partizione esaustiva)
k 1
2. Ogni regione Ri soddisfa un definito predicato (o criterio) di omogeneità P(Ri); ossia
P(Ri) = vero  i = 1,n
3. Ogni Regione Ri è spazialmente connessa.
4. Pixel appartenenti a regioni confinanti Ri ed Rj, quando considerati congiuntamente,
non soddisfano il predicato:
P(Ri  Rj) = Falso
 i,j delle n regioni
5. {Ri} è una partizione esclusiva, ossia
Ri  Rj =  con i  j
Segmentazione mediante soglia
Il processo di convertire i livelli di grigio di una immagine f(i,j) in una immagine binaria
g(i,j) è il metodo più semplice di segmentazione:
1 se
g( i, j )  
 0 se
f ( i, j )  S
f ( i, j )  S
 1 se
g ( i, j )  
 0 se
f ( i, j )  S
f ( i, j )  S
per oggetti chiari
per oggetti scuri
dove S è la soglia dei livelli di grigio
g(i,j) = 1 per i pixel appartenenti agli oggetti e g(i,j) = 0 per i pixel appartenenti allo sfondo
Se l’intervallo dei livelli di grigio [S1, S2] associato agli oggetti è noto, l’immagine binaria
è così ottenuta
 1 se S1  f ( i, j )  S 2
g( i, j )  
altrimenti
0
Se sono noti diversi intervalli (disgiunti) di livelli di grigio [Sk,Sk+1] associati ai
corrispondenti oggetti Ok, una segmentazione a soglia, più generale, è ottenuta
k se
g (i, j )  
0
per k = 1,n oggetti.
f (i, j )  [ S k , S k 1 ]
altrimenti
La segmentazione mediante soglia può essere utilizzata anche per
l’estrazione dei bordi corrispondenti agli oggetti della scena
Nell’ipotesi che tali oggetti sono scuri rispetto ad uno sfondo più
chiaro, si può ipotizzare che un intervallo di livelli di grigio può
comprendere solo livelli che appartengono tra lo sfondo ed i
confini di ciascun oggetto
Se si indica con S l’intervallo che include solo i livelli di grigio dei
contorni degli oggetti, si ottiene la seguente immagine
segmentata:
1 se
g( i, j )  
0
f ( i, j )  S
altrimenti
Metodo P-Tile
Questo metodo si basa sulla conoscenza a priori della percentuale P di area
dell’immagine occupata dall’oggetto da esaltare rispetto allo sfondo
Una soglia bassa produce una
segmentazione con caratteri in
parte o del tutto cancellati,
mentre la scelta di una soglia
alta, produce una segmentazione
con caratteri artefatti e modificati
dalla forma originale
Metodo sull’analisi dell’istogramma
In alcune applicazioni, risulta efficace analizzare l’istogramma dei livelli di grigio di una
immagine, per calcolare soglie appropriate, allo scopo di identificare intervalli di livello di
grigio che identificano con buona approssimazione lo sfondo (scuro o chiaro) e gli
oggetti della scena
Gli istogrammi mostrano due picchi che
corrispondono rispettivamente ad un
oggetto
della
scena,
con
una
distribuzione dei livelli di grigio
approssimati da una Gaussiana (1,1),
ed allo sfondo con distribuzione
Gaussiana (S,S).
Questo metodo può essere generalizzato per n
oggetti con distribuzione Gaussiana dei livelli di
grigio (1,1),.....,(n, ,n) e con lo sfondo (S,S).
In questo caso sono da ricercare n soglie
S1,...........,Sn analizzando l’istogramma H(l)
dell’immagine che presenterà n+1 picchi ed n valli
Metodo basato sulla modifica dell’istogramma
L’istogramma non presenta un andamento perfettamente bimodale
qualunque scelta della soglia S, individua pixel che possono appartenere all’oggetto ed
allo sfondo.
Per minimizzare questo inconveniente, si può modificare l’istogramma dell’immagine non
considerando i pixel ad alto gradiente.
Sia:
- f(i,j) l’immagine da segmentare
-f(i,j) il gradiente di f,
-l’istogramma
H(l)
dell’immagine
gradiente
f si modifica come
evidenziato in figura, presentando una
valle più profonda che consente la scelta
della soglia in modo più semplice.
Metodo della soglia ottimale iterativa
Per applicazioni dove non si ha una conoscenza dell’immagine,
la soglia di segmentazione S si calcola valutando parametri statistici della distribuzione
dei livelli di grigio dei pixel dell’oggetto e dello sfondo
Il metodo si basa sull’approssimazione dell’istogramma dell’immagine usando la media
pesata di due densità di probabilità con distribuzione normale.
Dall’istogramma dell’immagine H(l) si deriva l’istogramma normalizzato dato da:
p( l ) 
H(l )
255
 H ( i)
i 0
S livello di grigio corrispondente alla minima probabilità
p(s) tra i picchi delle due distribuzioni normali,
difficoltà nello stimare i parametri delle distribuzioni
normali e sull’assunzione che l variabile aleatoria
approssimabile ad una distribuzione normale
Metodo della soglia ottimale iterativa cont.
Ogni valore di soglia S determina due varianze, vale a dire una per i livelli di grigio
minori di S ed una per quelli maggiore di S.
La definizione di soglia ottimale introdotta da Otsu [8] è quella per la quale la somma
pesata delle varianze (within-group) tra i due gruppi è minimizzata.
I pesi sono le probabilità dei rispettivi gruppi.
Ciascun gruppo dovrebbe avere una distribuzione unimodale a forma di campana
(approssimabile ad una Gaussiana), in cui una distribuita attorno ad una media bassa
ed una attorno ad una media più alta.
Questo implica che vi è una relazione di omogeneità dei livelli di grigio appartenenti ad
ogni raggruppamento, in cui i due gruppi differiscono l’un l’altro (ossia i livelli di grigio dei
pixel appartenenti allo sfondo ed all’oggetto).
Una misura di omogeneità è caratterizzata dalla varianza.
Un raggruppamento con alta omogeneità avrà una varianza bassa e viceversa una
varianza alta per un gruppo con bassa omogeneità.
Metodo della soglia ottimale iterativa cont.
Obbiettivo per la scelta della soglia ottimale
•Una possibilità di trovare la soglia di segmentazione per i due gruppi è quella di
avere una varianza tra gruppi minima.
•Un altro modo è quello di massimizzare la differenza tra le medie dei due gruppi.
In corrispondenza di una soglia S, la probabilità che un pixel appartenga al primo gruppo
oppure al secondo è data da:
S
q1 ( S )   p(l )
q2 ( S ) 
l 0
255
 p(l )  1  q (S )
l  S 1
S
1 ( S )   l  p (l ) / q1 ( S )
l 0
S
 2 (S ) 
 ( S )   (l  1 ( S )) p(l ) / q1 ( S )
2
1
2
l 0
1
255
 l  p(l ) / q
l  S 1
 
2
2
2
(S )
255
 (l   (S ))
l  S 1
2
 W2 ( S )  q1 ( S ) 12 ( S )  q 2 ( S ) 22 ( S )
2
p(l ) / q2 ( S )
Metodo della soglia ottimale iterativa cont.
La migliore soglia può essere ottenuta mediante un metodo di ricerca sequenziale,
2
attraverso tutti i possibili valori di S che minimizzano  W ( S )
Vi è una relazione tra varianza within-group
w2 e varianza totale 2
255
   l  p (l )
255
 2   (l   ) 2 p(l )
l 0
l 0
Riscrivendo
S
   [l  1 ( S )  1 ( S )   ] p(l ) 
2
2
l 0
S

255
 [l  
l  S 1
2
( S )   2 ( S )   ] 2 p(l )

  [l  1 ( S )]2  2[l  1 ( S )][ 1 ( S )   ]  [ 1 ( S )   ]2 p (l )
l 0

 [l  
255
l  S 1
2

( S )]2  2[l   2 ( S )][  2 ( S )   ]  [  2 ( S )   ]2 p (l )
Metodo della soglia ottimale iterativa cont.
S
   [l  1 ( S )  1 ( S )   ] p(l ) 
2
255
2
l 0
 [l  
l  S 1
2
(
S
)


(
S
)


]
p(l )
2
2

S

  [l  1 ( S )]2  2[l  1 ( S )][ 1 ( S )   ]  [ 1 ( S )   ]2 p (l )
l 0

 [l   (S )]
255
2
l  S 1
2

 2[l   2 ( S )][  2 ( S )   ]  [  2 ( S )   ]2 p (l )
Considerando
che
S
255
 [l  
 [l   (S )][  (S )   ] p(l )  0
1
l 0
1
l S 1
S
   [l  1 ( S )] p(l )  [ 1 ( S )   ] q1 ( S ) 
2
2
2
l 0

2
( S )][  2 ( S )   ] p (l )  0
255
 [l  
l  S 1
2
( S )] 2 p(l )  [  2 ( S )   ] 2 q 2 ( S )
 
 q1 ( S ) 12 ( S )  q2 ( S ) 22 ( S )  q1 (S )[ 1 ( S )   ]2  q2 (S )[  2 (S )   ]2
 W2 ( S )
 B2 (S )

Metodo della soglia ottimale iterativa cont.
S
   [l  1 ( S )] p(l )  [ 1 ( S )   ] q1 ( S ) 
2
2
2
l 0

255
 [l  
l  S 1
2
( S )] 2 p(l )  [  2 ( S )   ] 2 q 2 ( S )
 
 q1 ( S ) 12 ( S )  q2 ( S ) 22 ( S )  q1 (S )[ 1 ( S )   ]2  q2 (S )[  2 (S )   ]2
 W2 ( S )

 B2 (S )
  q1 (S )1 (S )  q2 (S ) 2 (S )
 2   W2 ( S )  q1 ( S )[1  q1 ( S )][ 1 ( S )   2 ( S )] 2
 B2 (S )  q1 (S )[1  q1 (S )][ 1 (S )   2 (S )] 2
Deve essere massimizzata
Metodo della soglia ottimale iterativa cont.
q1 (S  1)  q1 (S )  p(S  1)
Con un valore iniziale
q1 (0)  p(0)
1 (S  1) 
Con valore iniziale
q1 ( S ) 1 ( S )  ( S  1) p( S  1)
q1 ( S  1)
1 (0)  0
. .
 2 (S  1) 
  q1 (S  1)1 (S  1)
1  q1 ( S  1)
Metodo di segmentazione con soglia adattiva
Nelle applicazioni dove l’immagine è acquisita in condizioni di luce non uniforme, le
soglie selezionate con i metodi precedenti non producono una buona segmentazione
In tale contesto, può essere utile dividere l’immagine in sottoimmagini quadrate e per
queste ultime la soglia è calcolata utilizzando i metodi precedenti
La segmentazione dell’immagine completa è ottenuta considerando come soglia di
ciascun pixel il valore di soglia interpolato tra due sottoimmagini
Metodo di segmentazione con soglia adattiva
Approccio alternativo è quello di trovare funzioni di approssimazione dello sfondo per
immagini ad illuminazione non uniforme
Metodo con soglia multilivello per immagini a colori e multispettrali
Per immagini multibanda (satellitari o a colori), la segmentazione può risultare efficace
operando ricorsivamente sull’istogramma di intensità di ciascuna componente (o banda)
per la ricerca di soglie a diversi livelli
Un algoritmo di segmentazione basato sulla ricerca ricorsiva delle soglie:
1- Si considera l’immagine componente f(i,j) come una singola regione
2- Calcola l’istogramma H(l) di intensità con l=0,255. Ricerca il valore minimo tale da
dividere l’immagine in una zona chiara ed una scura.
3- Partiziona la regione in sottoregioni in relazione alla soglia calcolata in 2).
4- Ripetere il passo 2) e 3) per ciascuna regione dell’immagine fino a quando gli
istogrammi associati contengono solo un picco significativo.
Metodo con soglia multilivello per immagini a colori e multispettrali
Metodo con soglia multilivello per immagini a colori e multispettrali
Attività
di strumento
pre-processing
per migliorare
la qualità
dell’immagine
Un utile
per l’analisi
qualitativa
dell’informazione
aumentarne
il contrasto
presenteed
nelle
bande RGB
è l’istogramma
Red
Green
Blue
La BANDA GREEN esibisce in assoluto il miglior contrasto dal
La BANDA
trasportadei
la livelli
più altadiquantità
informazione
momento
cheGREEN
la distribuzione
grigio èdimolto
più ampia
rispetto alle altre bande di colore
Sistema automatico di localizzazione dei vasi sanguigni
Segmentazione mediante sottrazione dello sfondo e
proiezioni orizzontale e verticale
Background
subtraction
y1
ym
yc -
y2
x1
xc xm
x2
Etichettamento Componenti Connesse
Supponiamo di avere una immagine binaria B e che B(x,y) =B(x’,y’)=v con v=0 oppure
v=1.
Il pixel (x,y) è connesso al pixel (x’,y’) rispetto al valore v, se c’è una sequenza di pixel
(x,y)=(x0,y0), (x1,y1), (x2,y2),….., (xn,yn)=(x’,y’) in cui B(xi,yi)=v per i=1,….,n ed (xi,yi) è
pixel nell’intorno di (xi-1,yi-1) per ogni i=1,…,n.
La sequenza di pixel (x0,y0), (x1,y1), (x2,y2),….., (xn,yn) forma un percorso connesso da
(x,y) a (x’,y’).
(a) Immagine binaria
(b) Etichettamento delle
componenti
connesse
(c) Immagine binaria ed etichettata
Etichettamento Componenti Connesse
Algoritmo ricorsivo di labeling
(a) 4-vicinanza
(b) 8-vicinanza
Segmentazione basata sull’inseguimento dei bordi
Si basa sul raggruppamento di pixel con massimo valore del gradiente che soddisfano percorsi con
4-vicinanza oppure con 8-vicinanza e sulla base della direzione più probabile di continuazione del
contorno.
Algoritmo:
a) Cerca un pixel del contorno. Analizza l’immagine gradiente linea per linea fino a quando non si
incontra un pixel Pi(x,y) che ha massimo valore del gradiente (oppure che possiede un valore di
gradiente che supera una certa soglia predefinita)
b) Cerca il pixel successivo. Sia PJ(x,y) il pixel adiacente a Pi(x,y) con massimo valore di gradiente
e con la stessa direzione (Pi). Pj risulta elemento del contorno ed il passo b) è ripetuto.
Altrimenti si procede al passo successivo
c) Esamina i pixel adiacenti a PJ. Si calcola la media dei pixel adiacenti a PJ corrispondenti alla
finestra 3x3 centrata su PJ. Il risultato della media è confrontato con un valore di grigio
gradiente predefinito allo scopo di valutare se PJ è interno o esterno alla regione in esame
d) Continua l’inseguimento del contorno. Il pixel Pk è selezionato come elemento adiacente a Pi
nella direzione (Pi)/4. La scelta del segno dipende dal risultato del passo precedente. Se il
pixel Pk risulta un nuovo elemento del contorno, l’inseguimento dello stesso continua
proseguendo con il passo b). Se Pk non è elemento del contorno ricerca un nuovo pixel di
contorno Pi proseguendo con il passo a).
Trasformata di Hough
Metodo che si basa su una relazione globale tra i pixel
La relazione è possibile poiché degli oggetti si conosce la loro forma
Per esempio, nel caso di immagini telerilevate, per lo studio del territorio, risulta
essenziale individuare particolari strutture geometriche (linee, poligoni, ecc.) che
rappresentano strade, ponti, terreni coltivati, ecc..
Nell’ispezione dei circuiti stampati
necessita individuare strutture lineari e
circolari, cosi come nell’automazione
industriale, il sistema di visione di una
cella robotizzata, localizza nel piano di
lavoro oggetti con forma circolare
predefinita.
Trasformata di Hough
Si propone di valutare relazioni strutturali e non, presenti tra i pixel dell’immagine.
Data una immagine, si vuole verificare se esistono strutture geometriche lineari
significanti, con qualunque direzione ed in qualunque posizione nell’immagine.
Il problema si riduce a verificare se esistono insiemi di pixel allineati lungo una retta con
identico livello di grigio.
Per esempio consideriamo prima due pixel, che individuano una retta, e
successivamente, verificare tutti i pixel significativi che sono ben allineati oppure poco
distanti dalla retta.
Se i pixel da analizzare sono n, si dovrebbe ripetere tale procedura n(n-1)/2n2 volte e
poi verificare l’allineamento considerando ciascuno degli n punti con tutte le linee
richiedendo circa n×n(n-1)/2n3 confronti.
Il tempo di calcolo richiesto sarebbe improponibile
Trasformata di Hough
Nel piano immagine, l’equazione di un fascio di rette, passante per un pixel (xi,yi), in
forma esplicita, è data da:
yi  pxi  q
L’equazione precedente può essere riscritta nella forma:
q  yi  pxi
definendo in questo modo un nuovo piano pq che è chiamato spazio parametrico
Trasformata di Hough
Si ricerca i massimi locali
nell’accumulatore
Trasformata di Hough
Quando sono considerate strutture lineari verticali, l’equazione della retta in forma
esplicita
y=px+q,
non risulta più adeguata poichè il parametro p e non è più dicretizzabile facilmente
(diventerebbe troppo grande)
Per eliminare questo inconveniente, si utilizza la rappresentazione della linea in
coordinate polari:
  x cos   y sin 
Trasformata di Hough
Trasformata di Hough per i cerchi
In forma parametrica:
Trasformata di Hough
Segmentazione di sequenze video – Adaptive Background
Si assuma che la sequenza video sia catturata da una telecamera stazionaria. Le
regioni contenenti oggetti in movimento saranno segmentate mediante una semplice
operazione di sottrazione tra ciascun frame ottenuto con una stima dello sfondo
(background).
Le differenze vengono successivamente sogliate per far emergere le regioni di
movimento.
Sia B0(x,y) il modello di background inizializzato con il primo frame acquisito oppure
mediante un processo di media tra frame contigui iniziali acquisiti dalla scena.
Sia Mn(x,y) una maschera binaria ottenuta dall’operazione di thresholding delle
differenze tra frame consecutivi al tempo n e definita come segue:
 0 if I n1(x,y)  I n(x,y)  1 or I n1(x,y)  I n-1(x,y)  1
M n1(x,y)  
altrimenti
1
Mn(x,y) mostra semplicemente le regioni che variano il livello di grigio dovuto alla
variazione dell’illuminazione oppure dal passaggio di un oggetto in movimento.
Segmentazione di sequenze video – Adaptive Background
Il modello adattivo di background si aggiorna costantemente in base alle condizioni
ambientali che variano mediante una combinazione lineare del background precedente
e del frame corrente acquisito.
 α  Bn(x,y)  (1  α)  I n(x,y) if M n(x,y)  0
Bn1(x,y)  
otherwise
Bn(x,y)
dove (0,1) è la costante di tempo che definisce la velocità di adattamento del
background e determina la sensibilità dell’aggiornamento alle variazioni di illuminazione
della scena.
Più è alta la variazione di illuminazione (o più è grande l’area coinvolta dagli oggetti in
movimento nella scena) tra frame, più basso deve essere il valore (vicino a zero) del
coefficiente di variabilità , in modo tale che il modello di background sia più influenzato
dall’immagine corrente.
Si può avere un parametro adattivo di 
α  1
 M (x,y)
x,yI n
n
area of I n
Segmentazione di sequenze video – Adaptive Background
L’approccio maggiormente utilizzato per la rilevazione di oggetti in movimento è quello di
sottrarre dal frame corrente il modello di background sino a quel momento approssimato
Tuttavia, ci possono essere situazioni in cui errati valori di soglia causano oggetti
segmentati erroneamente o non corrispondenti alla reale forma dell’oggetto in
movimento.
Questi problemi si ripercuoterebbero nella fase di estrazione delle forme (feature
extraction) e nel riconoscimento.
Sia In(x,y) e Bn(x,y) frame corrente e background approssimato
Sia Dn(x,y) una maschera binaria che fa emergere gli oggetti di interesse segmentati
(foreground detection) con “1” indicante il corrispondente pixel marcato come
appartenente all’oggetto
0
Dn(x,y)  
1
if S n(x,y)  Th
altrimenti
Sn(x,y)  I n(x,y)  Bn(x,y)
Segmentazione di sequenze video – Adaptive Background
0
Dn(x,y)  
1
if S n(x,y)  Th
altrimenti
Sn(x,y)  I n(x,y)  Bn(x,y)
La semplice differenza non è appropriate per quelle applicazioni in cui la scena è
soggetta a repentine fluttuazioni di illuminazione
Per questa ragione si utilizza una soglia Th automatica
MED  median Sn(x,y)
x,y  I n
MAD  median Sn(x,y)  MED
x,y  I n
Th  MED  3 1.4826  MAD
fattore di normalizzazione della distribuzione Gaussiana.
Segmentazione di sequenze video – Adaptive Background
Segmentazione di sequenze video – Misture di Gaussiane
Il livello di grigio di ciascuna immagine è dipendente fortemente dalla riflessione della
condizione di illuminazione del momento, che se dipendente da una sola superficie,
allora una singola Gaussiana sarebbe sufficiente a modellarlo tenuto conto delle
fluttuazioni dovute al rumore nel sistema di acquisizione.
Nelle situazioni reali invece il contributo del livello di grigio di ciascun pixel non dipende
solo dalla riflessione di una singola superficie ma dal contributo di diverse superfici
presenti.
. Pertanto è necessario modellare ciascun pixel con una mistura di Gaussiane.
Sia {x0,y0} la posizione del pixel al tempo t, la cui storia è costituita da una sequenza
temporale:
X 1 , X 2 ,, X t   I ( x0 , y0 , i) | 1  i  t
Segmentazione di sequenze video – Misture di Gaussiane
Figura 23 Le immagini mostrano diversi tipi di situazioni ambientali per cui il valore di un particolare
pixel nel nel tempo viene graficato. In (a) i valori della banda Red e Green vengono graficati per
uno stesso pixel a distanza di due minuti, lasciando intravedere una distribuzione di tipo
multimodale. In (b) due distribuzioni dello stesso pixel per istanti di tempo diversi ed in (c) le stesse
considerazioni causate dalla forte variazione di illuminazione dovute alle continue fluttuazioni del
monitor (flickering).
Segmentazione di sequenze video – Misture di Gaussiane
ciascun pixel è modellato con una mistura di K Gaussiane, la cui probabilità di osservare
un determinato livello è dato da:
K
P ( X t )   i , t   ( X t ,  i , t  i , t )
i 1
stima del peso
 ( X t ,  , ) 
1
n
2
(2 ) 
1
2
e

1
 X t  t T  1  X t  t 
2
Per ragioni implementative, i livelli di rosso, verde e blu si considerano statisticamente
indipendenti con la stessa varianza, e pertanto, la matrice di covarianza è data da:
 k ,t   k2 I
Segmentazione di sequenze video – Misture di Gaussiane
Ad ogni osservazione del livello di intensità del pixel, si trova una Gaussiana che
soddisfa il match
L’idea è che se il pixel è di background (sfondo) allora il valore del pixel si discosta dalla
media di una delle Gaussiane che lo rappresenta entro 2,5 volte la sua deviazione
standard.
Se nessuna delle K Gaussiane soddisfa la condizione di match con il pixel in esame,
allora la distribuzione meno probabile è rimpiazzata con il valore corrente del pixel in
termini di media della Gaussiana, un valore di varianza iniziale V0 impostato con valori
molto alti (V0=30) ed un peso a priori della Gaussiana basso.
I pesi a priori delle K Gaussiane al tempo t, vengono modificati come segue:
 k ,t  (1   ) k ,t 1   ( M k ,t )
con  il parametro di apprendimento (generalmente molto basso e da ricavare
sperimentalmente, comunque con valori che possono essere tipo =0.005.
Mk,t è 1 per il modello che soddisfa il match, altrimenti 0 per le Gaussiane rimanenti
Segmentazione di sequenze video – Misture di Gaussiane
Successivamente i pesi
 devono essere normalizzati.
I parametri delle Gaussiane 
( ,  ) che non soddisfano il match rimangono invariati
I parametri delle Gaussiane che invece soddisfano il match sono aggiornati come segue
 t  (1   ) t 1  X t
 t2  (1   ) t21   ( X t   t ) T ( X t   t )
  ( X t |  k ,  k )
Quindi la stima del modello di background B è dato in base al contributo delle
Gaussiane attive per ogni pixel.
Segmentazione di sequenze video – Misture di Gaussiane
Un oggetto di background avrà varianza molto piccola,
mentre un nuovo oggetto che occlude uno di background, non soddisferà il criterio di
match con una delle distribuzioni Normali esistenti,
Quindi risulterà nella creazione di una nuova distribuzione oppure in un aumento
sostanziale della varianza di una distribuzione esistente.
Quali Gaussiane scegliere per il modello di background?
Si ordinano le Gaussiane secondo il criterio di importanza dato da
 /
Stabilendo quali delle K sono significative per un dato pixel e quali no
Quindi le prime B distribuzioni vengono scelte come modello di background secondo la
seguente relazione:
 b

B  arg min   k  T 
b
 k 1

T=0,7
Segmentazione di sequenze video – Misture di Gaussiane
Scarica

ppt