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, y b 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 = p q r 20 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