Scaricare la presentazione
La presentazione è in caricamento. Aspetta per favore
PubblicatoRomeo Graziano Modificato 9 anni fa
1
HMM in Image Analysis Francesco Finazzi teaching@finazzieng.it Lezione 1 - 22/04/2008
2
HMM - Definizione Markov Models: sono modelli matematici di processi stocastici, cioè processi che generano sequenze casuali in base a determinate probabilità. Hidden Markov Models: permettono di modellizzare situazioni in cui si osserva una sequenza casuale di emissioni ma non è nota la sequenza di stati che determinano le emissioni.
3
HMM – Rappresentazione grafica Rappresentazione HMM tramite State Diagram Rettangoli: possibili stati del processo Archi: transizioni tra stati e relative probabilità
4
HMM – Rappresentazione matematica Insieme X degli stati: X={1,2,…,M} Matrice T di transizione: ha dimensione MxM e l’elemento T i,j rappresenta la probabilità che avvenga una transizione dallo stato i allo stato j. Insieme Y dei possibili simboli di emissione: Y={s 1,s 2,…,s N } Matrice E di emissione: ha dimensione MxN e l’elemento E i,k fornisce la probabilità che venga emesso il simbolo s k essendo il processo nello stato i.
5
Topologia di un HMM Left-Right 1234 i\j1234 1x 2xx 3x 4 T=
6
Topologia di un HMM Left-Right con autoanelli 1234 i\j1234 1xx 2xxx 3xx 4x T=
7
Topologia di un HMM Circular counterclockwise (ccw) 1234 i\j1234 1x 2x 3x 4x T=
8
Topologia di un HMM Circular cw&ccw 1234 i\j1234 1xx 2xx 3xx 4xx T=
9
Applicazione HMM: identificazione forme 2D Database delle forme di N oggetti Obiettivo: classificare una nuova immagine rispetto agli oggetti in database. … Oggetto 1Oggetto 2Oggetto N Oggetto ?
10
Analisi dell’immagine Elaborazione grafica: estrazione contorno dell’oggetto Nel caso di immagini bianco/nero l’informazione sulla forma dell’oggetto è “contenuta” nel suo contorno Analizzare il contorno consente di tradurre un problema 2D in un problema 1D
11
Contorno dell’oggetto In un’immagine digitale il contorno di un oggetto non è una curva continua bensì è rappresentato da una successione di pixel Ingrandimento contorno
12
Descrizione del contorno Obiettivo: descrivere il contorno come successione di pixel Prima possibilità: codifica direzionale locale: partendo da un pixel qualunque appartenente al contorno dell’oggetto e percorrendo il contorno in senso orario o antiorario si identifica il pixel successivo tramite la seguente codifica: 654 73 812
13
Descrizione del contorno Esempio di codifica direzionale locale Codifica: 8-8-8-…
14
Descrizione del contorno Vantaggi: Codifica di tipo discreto e finita (direttamente applicabile ad HMM con osservazioni discrete) Veloce da implementare Svantaggi: non è invariante rispetto alla rotazione dell’oggetto all’interno dell’immagine.
15
Descrizione del contorno Seconda possibilità: misura della curvatura tramite stima del raggio del cerchio osculatore
16
Descrizione del contorno Vantaggi Invariante rispetto alla rotazione dell’oggetto all’interno dell’immagine Svantaggi La curvatura può assumere valori 0- E’ necessario discretizzare Nel caso di forme poligonali la curvatura è uguale a lungo tutto il contorno (tranne in corrispondenza dei cambi di direzione) Non è invariante rispetto a variazioni di scala (se non normalizzando rispetto ad una quantità proporzionale all’area dell’oggetto)
17
Cerchio osculatore Un modo per calcolare l’equazione del cerchio osculatore è quello di considerare n>2 pixel e stimare i parametri del cerchio tramite il metodo dei minimi quadrati. Equazione cerchio: x 2 +y 2 +ax+by+c=0
18
Cerchio osculatore Esempio di cerchio osculatore stimato su n=40 pixel Il valore di n è legato al numero totale di pixel appartenenti al contorno ed alla curvatura minima e massima dello stesso
19
Ruolo HMM nell’identificazione A ciascun oggetto presente in database è associato un HMM i cui parametri sono stimati in una fase preliminare di training. La stima dei parametri può avvenire considerando per ogni oggetto una sola immagine di riferimento oppure più immagini rappresentanti lo stesso oggetto sottoposto a differenti deformazioni La sequenza di osservazioni utilizzata per stimare i parametri dell’HMM è rappresentata dal contorno dell’oggetto codificato tramite uno dei metodi visti in precedenza.
20
Ruolo HMM nell’identificazione E’ importante definire correttamente il numero di stati nascosti e la topologia dell’HMM E’ preferibile poter dare un’interpretazione a ciscuno stato (esempio meteo) Gli algoritmi di stima richiedono una stima iniziale delle matrici di transizione e di emissione. Se fornita in modo casuale è facile che gli algoritmi non convergano. L’interpretazione degli stati facilita la definizione di tali matrici.
21
Ruolo HMM nell’identificazione Data una nuova immagine rappresentante un oggetto ignoto si effettuano i seguenti passi: Si estrae il contorno dell’oggetto Si codifica il contorno in una sequenza di osservazioni Prendendo in considerazione tutti gli HMM stimati sui vari oggetti presenti in database si determina quale, con maggiore probabilità, ha generato la sequenza di osservazioni estratta
22
HMM in Matlab Comandi disponibili: hmmtrain: dato un insieme di sequenze di osservazioni ed una stima iniziale per le matrici di transizione ed emissione stima le stesse tramite il metodo della massima verosimiglianza hmmdecode: data una sequenza di osservazioni e date le matrici di transizione ed emissione relative ad un HMM fornisce il logaritmo della probabilità a posteriori che la sequenza sia stata generata da quel particolare HMM
Presentazioni simili
© 2024 SlidePlayer.it Inc.
All rights reserved.