Comments
Transcript
Elaborazione delle immagini e Pattern Recognition
Elaborazione delle immagini e Pattern Recognition Giovanni Scavello Programma dei seminari Nozioni di base del trattamento delle immagini Descrizione matematica Spazi colore Operazioni comuni Filtraggio (bordi, espansione del contrasto, etc...) Rappresentazione dei contorni (chain – code) Morfologia (dilatazione, erosione, apertura e chiusura morfologica) Cross section Programma dei seminari I meccanismi della percezione umana e i problemi del riconoscimento automatico Tecniche di segmentazione Introduzione ai problemi legati al riconoscimento automatico e agli strumenti per il pattern recognition ● Componenti connesse ● Maschere ● Soglia Tecniche di costruzione delle features Metodi per il riconoscimento ● template matching ● reti neurali ● support vector machine Programma dei seminari Cenni alla libreria OpenCV Riconoscimento targhe (elaborazioni immagini in scala di grigio, pattern matching) Riconoscimento segnali (spazio colore, riconoscimento forme, support vector machine) Casi reali e discussione di sistemi completi di riconoscimento Introduzione Oggetto reale Informazione che arriva al cervello Oggetto reale Introduzione DSP File Colazione.jpg Informazione che arriva all'elaboratore 01010001 11010001 Parte prima Image Processing Introduzione Processo di acquisizione e codifica Immagine di input Algoritmi e tecniche di Image processing Immagine di output Matematica delle immagini 2 n 2 3 ℑ: ℜ ℜ 2 ℑ: ℜ ℜ ℑ: ℜ ℜ f x , y=[l ] f x , y=[l 1, l 2, l 3 ] Scala di grigi Bianco e nero RGB, HSV, LUV 2 ℑ: ℜ ℜ 4 f x , y=[l 1, l 2, l 3, l 4 ] CYMK Le immagini digitali Immagine reale Valore del pixel (quantizzazione) Griglia (risoluzione spaziale) Scala dei valori possibili (livelli di grigio) Gli spazi di colore SCALA DI GRIGI K bit 2^K livelli di grigio Casi particolari: − − − Bianco e nero (1 bit) Scala di grigi comune (8 bit) Immagini mediche ( 12 bit) Gli spazi di colore RGB K bit 2^K livelli di grigio 3 canali (piani immagine) Gli spazi di colore HSV Hue [0°, 360°] Saturation [0, 1] Value [0, 1] 3 canali Gli spazi di colore CYMK Ciano Giallo Magenta Nero Operazioni comuni Immagine digitalizzata Matrice (scala di grigi) o Set di Matrici (Spazi colore RGB, HSV, CYMK) Operatori puntuali I 1 immagine di input , I 2 immagine di output I 2 x , y= f { I 1 x , y } Operatori locali I 1 immagine di input , I 2 immagine di output I c matrice di convoluzione I 2 =I 1∗I c Operatori puntuali I 2 x , y=I 1 x , y± l aumento/ diminuzione della luminosità Diminuzione della luminosità Originale Aumento della luminosità Operatori puntuali I 2 x , y= I 1 x , y restrizione della scala dei grigi sottocampionamento intensità di valore l Originale I 1 x , y I 2 x , y = 8 Operatori puntuali I 2 x , y=a⋅I 1 x , yb aumento del contrasto Originale I2 I 1 x , y−MIN { I 1 }]× MAX grey [ x , y= MAX { I 1 }−MIN { I 1 } Operatori locali (convoluzione discreta) 3 5 q p r f 1 p= p∗3−2 f 2 p= pq−r20×s s 2 0 3 5 2 1 f 1 p=13 f 2 p=6 f 1 p=13 f 2 p=26 h( i , j ) f ( i, j ) h1 h2 h3 h4 h5 h6 h7 h8 h9 g ( i, j ) g 43 = h1 f 32 + h2 f 33 + h3 f 34 f32 f33 f34 + h4 f 42 + h5 f 43 + h6 f 44 f42 f43 f44 + h7 f 52 + h8 f 53 + h9 f 54 f52 f53 f54 Sfumatura (smoothing) [ ] 1 1 1 I c= 1 25 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Incremento dei dettagli (Laplaciano) [ 0 −1 0 I c = −1 5 −1 0 −1 0 ] Contorni (I - Estrazione) Operatore di Sobel { [ 1 0 −1 x = 2 0 −2 1 0 −1 ] [ 1 2 1 y= 0 0 0 −1 −2 −1 ]} Contorni (II - memorizzazione) y M =16, N =17, M × N =272 x 0, y 0 l C 0 =19 l C 1 =16 M l C 0 l C 1 =35 x 1, y 1 x N C 0 : { P 0, [0 0 7 6 7 6 5 4 5 4 3 55 3 6 6 1 11] , orario } C 1 : { P 1, [3 3 3 3 4 3 5 6 7 7 7 7 7 7 0 1] , antiorario } 3 4 5 2 p 6 1 0 7 Cross Section C(X) C X =I f 1 z , f 2 z X Operazioni morfologiche (I) Erosione/Dilatazione Operazioni morfologiche (II) Apertura/Chiusura Conclusioni Problema della rappresentazione della realtà Cenni alle basi matematiche Operazioni fondamentali Grazie per l'attenzione Parte Seconda Pattern Recognition Visione e Interpretazione (I) Luminosità e contrasto Acutezza e definizione dei contorni Colore Spazio e forma Visione e Interpretazione (II) http://www.sitopreferito.it/html/illusioni_ottiche.html Il problema della segmentazione (I) Il problema della segmentazione (II) zo del z i l i t u i ampo adgini che c l e d m ono nda A secoa ALPR le liamborate possgie di sistemo essere e varie tipolo e devone soggette aisturbi, alcuniene essermazioni e d ità con cui v defor alle modal ine (auto in a della legatesita l'immag ione obliqu acqui ento, posiz pparato di re movimrispetto all'a) mentre alt targa sizione, etc. ondizioni della acqui denti dalle cizia e usura sità dipen ntali (sporc ne, comples.) . ambie, illuminazio scena, etc targa sfondo della dello Componenti connesse Overlay I1 I2 I 3 x , y= { I 2 x , y , I 1 x , y≠0 0, altrimenti } Operatori di soglia (I) I 2 x , y = { 0, I 1 x , y 1, altrimenti } Operatori di soglia (II) Operatori di soglia (III) Estrazione di features OGGETTO PROBLEMA INFORMAZIONE MINIMA SCELTA FEATURES Esempi di features (I) [ c f = alfa , alfa×beta , , r , alfa× ] Esempi di features (II) y 3 0 3 0 5x5 θ x Proiezione diagonale principale Proiezione-y Proiezione-x Proiezione diagonale secondari a Esempi di features (III) Classificazione di pattern Pattern recognition: l'intelligenza umana riconosce una struttura generativa invisibile comune a due forme visibili diverse. Per il momento questa operazione è una nostra prerogativa, che le macchine non hanno ancora imparato. Nel mondo algoritmico la ricerca di somiglianze, o il riconoscimento di strutture nascoste (pattern recognition) permettono di conferire lo stesso senso a segni diversi che hanno qualcosa in comune; nel mondo facsimilare, dove ogni replica è per definizione visivamente identica alla matrice, se un segno ha un significato un altro segno, anche solo marginalmente diverso, ha un altro significato – o non ne ha. E c'è una certa ironia nel fatto che la nuova cultura delle macchine – ma una cultura di nuove macchine, che Lewis Mumford avrebbe chiamato neotecniche – avrà, oltre a tante altre conseguenze, anche quella di riformare la percezione, che tornerà a essere ciò che in un certo senso è sempre stata, con l'eccezione del plurisecolare interludio tipografico: non un'operazione meccanica ma un'estensione organica dell'intelligenza umana. Template Matching Classificare features Reti Neurali Support Vector Machine Grazie per l'attenzione QUALUNQUE TECNOLOGIA SUFFICIENTEMENTE AVANZATA E' INDISTINGUIBILE DALLA MAGIA Elaborazione delle immagini e Pattern Recognition Riconoscimento automatico di targhe automobilistiche Riconoscimento targhe DIFFICOLTÀ L'algoritmo proposto Localizzazione Estrazione di bordi Immagine originale Risultato dell'operatore di Sobel Localizzazione Localizzazione Localizzazione Chiusura morfologica Apertura morfologica Localizzazione Analisi semantica TARGA Localizzazione Localizzazione Localizzazione Binarizzazione Algoritmo di Otsu: Basato su metodi statistici Analizza la distribuzione dei livelli di grigio Massimizza la separazione degli oggetti dallo sfondo Estrazione dei caratteri TRATTAMENTO DEI DISTURBI DISTURBI CARATTERISTICI Estrazione dei caratteri BINARIZZAZIONE Segmentazione Analisi componenti connesse Caratteri segmentati sull'immagine originale Riconoscimento Matching Esempi di localizzazione Esempi di riconoscimento Elaborazione delle immagini e Pattern Recognition Riconoscimento automatico di segnali stradali Analisi del problema Variabilità delle condizioni luminose Analisi del problema Variabilità della posizione lungo la strada Analisi del problema Distorsioni dovute alla prospettiva Analisi del problema Occlusioni Schema del sistema di riconoscimento Creazione degli overlay Estrazione features forma Segmentazione ed estrazione features segnali CLASSIFICATORE SVM Riconoscimento dei segnali