Analisi di Documenti



Documenti analoghi

Librerie digitali. Video. Gestione di video. Caratteristiche dei video. Video. Metadati associati ai video. Metadati associati ai video

RECOGNITION ProductInfo

Tecniche di riconoscimento statistico

Il programma CONFELMOD CAD creazione e modifica

Database. Si ringrazia Marco Bertini per le slides

Tecniche di riconoscimento statistico

Abilità Informatiche A.A. 2010/2011 Lezione 9: Query Maschere Report. Facoltà di Lingue e Letterature Straniere

Manuale Utente Albo Pretorio GA

Teoria in sintesi 10. Attività di sportello 1, 24 - Attività di sportello 2, 24 - Verifica conclusiva, 25. Teoria in sintesi 26

2 FUNZIONI REALI DI VARIABILE REALE

Settaggio impostazioni tema. Cliccando nuovamente su aspetto e poi su personalizza si avrà modo di configurare la struttura dinamica della template.

Il concetto di valore medio in generale

LA GRAFICA E LA GEOMETRIA OPERATIVA

Università Politecnica delle Marche. Progetto Didattico

LE FUNZIONI A DUE VARIABILI

per immagini guida avanzata Uso delle tabelle e dei grafici Pivot Geometra Luigi Amato Guida Avanzata per immagini excel

4. Fondamenti per la produttività informatica

Anno 4 Grafico di funzione

MAPPE DI KARNAUGH. Nei capitoli precedenti si è visto che è possibile associare un circuito elettronico o elettrico ad una funzione logica.

Obiettivi del corso. Creare, modificare e formattare un semplice database costituito da tabelle, query, maschere e report utilizzando Access 2000.

Corso di Visione Artificiale. Filtri parte I. Samuel Rota Bulò

Morphological Image processing

Operazioni fondamentali

Fasi di creazione di un programma

ITIS Mattei Sondrio. Appunti veloci su moodle versione 2.7

Plate Locator Riconoscimento Automatico di Targhe

FUNZIONE REALE DI UNA VARIABILE

EasyPrint v4.15. Gadget e calendari. Manuale Utente

A intervalli regolari ogni router manda la sua tabella a tutti i vicini, e riceve quelle dei vicini.

Excel. A cura di Luigi Labonia. luigi.lab@libero.it

GEOGEBRA I OGGETTI GEOMETRICI

Ottimizzazione delle interrogazioni (parte I)

Il problema è di modellizzare tali dati geografici in modo da gestirli poi automaticamente con pacchetti software.

UNIVERSITA DEGLI STUDI DI BRESCIA Facoltà di Ingegneria

CONI, CILINDRI, SUPERFICI DI ROTAZIONE

Immagini binarie. Binarizzazione di immagini a livelli di grigio

ELABORAZIONE DI DATI TRIDIMENSIONALI - RELAZIONE HOMEWORK 2

INTRODUZIONE. Gli operatori della morfologia binaria sono operatori fra insiemi definiti a partire dell immagine binaria.

MANUALE PARCELLA FACILE PLUS INDICE

Trasformazioni Geometriche 1 Roberto Petroni, 2011

CONTINUITÀ E DERIVABILITÀ Esercizi proposti. 1. Determinare lim M(sinx) (M(t) denota la mantissa di t)

ESAME DI STATO DI LICEO SCIENTIFICO CORSO SPERIMENTALE P.N.I. 2004

Come costruire una presentazione. PowerPoint 1. ! PowerPoint permette la realizzazione di presentazioni video ipertestuali, animate e multimediali

Scuola Digitale. Manuale utente. Copyright 2014, Axios Italia

L amministratore di dominio

Le funzioni continue. A. Pisani Liceo Classico Dante Alighieri A.S A. Pisani, appunti di Matematica 1

Cenni su algoritmi, diagrammi di flusso, strutture di controllo

ISTITUTO TECNICO ECONOMICO MOSSOTTI

Informatica per la comunicazione" - lezione 7 -

Manuale Utente Amministrazione Trasparente GA

Mon Ami 3000 Varianti articolo Gestione di varianti articoli

a) Il campo di esistenza di f(x) è dato da 2x 0, ovvero x 0. Il grafico di f(x) è quello di una iperbole -1 1

Basi di matematica per il corso di micro

EXCEL PER WINDOWS95. sfruttare le potenzialità di calcolo dei personal computer. Essi si basano su un area di lavoro, detta foglio di lavoro,

La distribuzione Normale. La distribuzione Normale

Mon Ami 3000 Provvigioni agenti Calcolo delle provvigioni per agente / sub-agente

Pro e contro delle RNA

Esercizi Capitolo 6 - Alberi binari di ricerca

Il glossario della Posta Elettronica Certificata (PEC) Diamo una definizione ai termini tecnici relativi al mondo della PEC.

Mon Ami 3000 Documentale Archiviazione elettronica dei documenti cartacei

Fondamenti di Elaborazione di Immagini Estrazione dei Bordi e Segmentazione. Raffaele Cappelli raffaele.cappelli@unibo.it

Capitolo 13: L offerta dell impresa e il surplus del produttore

2 - Modifica Annulla Selezione finestra. S.C.S. - survey CAD system FIGURA 2.1

Telerilevamento e GIS Prof. Ing. Giuseppe Mussumeci

Personalizza. Page 1 of 33

I Problemi e la loro Soluzione. Il Concetto Intuitivo di Calcolatore. Risoluzione di un Problema. Esempio

Istituto Centrale per il Catalogo Unico delle Biblioteche Italiane. e per le Informazioni bibliografiche. Manuali utente per SBN WEB. Versione 1.

VETTOR DAL BITMAP AL VETTORIALE. Paolo Mantini TEORIA E PRATICA DELLA CONVERSIONE DELLE IMMAGINI DA RASTER A VETTORIALI

Introduzione al Foglio Elettronico

WORD per WINDOWS95. Un word processor e` come una macchina da scrivere ma. con molte più funzioni. Il testo viene battuto sulla tastiera

2 - Modifica Annulla ANNULLA TOPOGRAFICO ANNULLA TOPOGRAFICO MULTIPLO FIGURA 2.1

Codifica binaria dei numeri relativi

Ricerca di outlier. Ricerca di Anomalie/Outlier

7. Layer e proprietà degli oggetti

Codifica delle Informazioni

Per studio di funzione intendiamo un insieme di procedure che hanno lo scopo di analizzare le proprietà di una funzione f ( x) R R

Svolgimento 1 Scriviamo la funzione f(x) che rappresenta la spesa totale in un mese: Figura 2 Il grafico di f(x).

Proiezioni Grafica 3d

Capitolo 3. L applicazione Java Diagrammi ER. 3.1 La finestra iniziale, il menu e la barra pulsanti

GestVetrine 1.1 versione novembre 2014

RETTE, PIANI, SFERE, CIRCONFERENZE

Altro esempio di HTML

FIRESHOP.NET. Gestione completa degli ordini e degli impegni. Rev

Lezione 8. La macchina universale

Test, domande e problemi di Robotica industriale

L analisi dei dati. Capitolo Il foglio elettronico

Gestire immagini e grafica con Word 2010

Matematica e giochi di gruppo

~ Copyright Ripetizionando - All rights reserved ~ STUDIO DI FUNZIONE

Corso di grafica vettoriale

GUIDA RAPIDA PER LA COMPILAZIONE DELLA SCHEDA CCNL GUIDA RAPIDA PER LA COMPILAZIONE DELLA SCHEDA CCNL

Sommario. Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi.

Sequenziamento a minimo costo di commutazione in macchine o celle con costo lineare e posizione home (In generale il metodo di ottimizzazione

UTILIZZO DEL MODULO DATA ENTRY PER L IMPORTAZIONE DEI DOCUMENTI (CICLO PASSIVO)

elicaweb manuali - Vendite: come iniziare - pagina 1 di 9

Elaborazione testi: immagini

Reti sequenziali sincrone

Proposta di soluzione della prova di matematica Liceo scientifico di Ordinamento

Transcript:

Analisi di Documenti M. Diligenti diligmic@ing.unisi.it Dipartimento di Ingegneria dell Informazione Università di Siena

Libro di testo Lawrence O-Gorman e Rangachar Kasturi Document Image Analysis Editore: IEEE COMPUTER SOCIETY PRESS

Introduzione I documenti cartacei sono il mezzo principale per la trasmissione e la memorizzazione di informazione. Rivoluzione informatica non ha rallentato la crescita della massa di documenti emessi dalle pubbliche amministrazioni o dalle grandi aziende.

Applicazioni Instradamento automatico della posta. Lettura automatica di assegni bancari. Catalogazione automatica degli archivi di pubbliche amministrazioni e aziende. Creazione di biblioteche digitali partendo dai dati memorizzati nelle attuali biblioteche. Velocizzazione delle operazioni negli uffici.

Problemi da risolvere Analisi di documenti Testo Grafica Riconoscimento di caratteri Analisi di Layout Linee Estrazione immagini e simboli Testo Paragrafi Linee Logo, immagini

Dalla carta alla comprensione del contenuto Documento cartaceo Acquisizione ottica 10 7 pixels Elaborazione a livello di pixels Box di caratteri Estrazione di caratteristiche Riconoscimento Analisi di Layout Linee Estrazione immagini di caratteri Paragrafi Testo Analisi semantica e simboli Logo, immagini Campo1 Campo2... CampoN

Acquisizione ottica In genere si usano scanners a 300 dpi. Immagini binarie o 255 livelli di grigio. Documento 8.5 x11 è rappresentato da 2550 x 3300 pixels. Dati rappresentano i pixels in sequenza, pertanto per estrarre oggetti con semantica (caratteri, linee) è necessario elaborare i dati.

Parte 1 Elaborazione di basso livello dell immagine del documento

Sommario: elaborazione di basso livello Thresholding Filtraggio del rumore Thinning

Thresholding Trovare la soglia ottimale per decidere se un pixel è nero o bianco. Tale fase è necessaria per passare da immagine a livelli di grigio ad immagine binaria. White 0 Black 255

Thresholding statica Qui sfondo è scuro Soglia bassa Qui sfondo è scuro Qui sfondo è chiaro Qui sfondo è chiaro

Thresholding statica Qui sfondo è scuro Soglia alta Qui sfondo è scuro Qui sfondo è chiaro Qui sfondo è chiaro

Thresholding statica vs. adattiva Soglia statica non riesce a catturare tutti i dettagli del documento. SOLUZIONE: thresholding adattiva con analisi dello sfondo. La soglia viene fissata a seconda dello sfondo di una regione.

Thresholding adattiva Qui sfondo è scuro Qui sfondo è scuro Qui sfondo è chiaro Qui sfondo è chiaro

Riduzione del rumore Principale rumore su fotocopie o fax è rumore sale e pepe o rumore impulsivo. Si presenta con dei pixels isolati di colore diverso dai pixels che lo circondano.

Filtri In genere si usano filtri specifici. ESEMPIO: Data finestra di dimensione k, decidere se a tutti i suoi pixels deve essere assegnato il colore bianco o nero.

Filtri ESEMPIO: data finestra di dimensione k = 6, decidere se a tutti i suoi pixels deve essere assegnato il colore nero eliminando il rumore sale e pepe dei pixels bianchi. Pixel di vicinato Pixel del core

Filtri: esempio REGOLA. A tutti i pixels di una finestra viene assegnato il colore nero se: c=1 AND (n > 3k-4 OR (n=3k-4) AND r=2) dove, - c numero componenti connesse in vicinato - n numero pixel neri in vicinato - k dimensione finestra in analisi - r numero pixel neri in angolo

Filtri: esempio C=1 ==> riempio C=2 ==> non riempio

Thinning

Parte 2 Estrazione di caratteristiche

Introduzione Uscita dell elaborazione di basso livello è una serie di valori relativi ai singoli pixels. Un estrattore di caratteristiche raggruppa i pixels ed estrae valori relativi ad oggetti complessi come linee o curve. Primo passo verso una rappresentazione più vicina a quella che verrebbe fornita da un operatore umano.

Sommario: estrazione di caratteristiche Estrazione contorni Rappresentazione degli oggetti: Chain coding Line adjacency graphs Estrazione linee o altre forme

Oggetti elementari Ogni oggetto elementare corrisponde ad una componente connessa: un insieme di pixel neri tra loro contigui.

Seguire un contorno Algoritmo della tartaruga. Trova un pixel di transizione bianco-nero (punto di partenza di un contorno da seguire). While(non si torna al punto di partenza) if(pixel == bianco) then gira a sinistra if(pixel == nero) then gira a destra

Chain coding Dopo estrazione dei contorni, chain code può rappresentare il contorno di un oggetto. ESEMPIO 0 1 2 5555555555553333333333 7 X 3 6 5 4

Line adjacency graphs Estraggono un grafo rappresentante un oggetto da un insieme di pixels neri tra loro connessi, detti anche componente connessa)

Trasformata di Hough Usata per scoprire la presenza di oggetti complessi sul documento. Spesso usata per scoprire linee, circonferenze, ecc. In generale: un qualsiasi oggetto di cui si conosce la rappresentazione analitica può essere cercato tramite la trasformata di Hough.

Trasformata di Hough Trasforma il documento da coordinate x,y alle coordinate dello spazio dei parametri. ESEMPIO: cercare linee rette. Equazione della retta: y = ax + b a, b parametri della retta Passo da spazio (x,y) a spazio (a,b)

Trasformata di Hough y b y = 2x + 3 3 3 x 2 a

Trasformata di Hough y Fascio di rette per un punto b 3-2a= b 3 3 2 x 3/2 a

Trasformata di Hough y 3 b 3 3-2a= b 1 - a= b 1 1 2 x -1 2 a Retta in comune tra i punti (1,1) e (2,3) è la retta con parametri a = 2 e b = -1

Trasformata di Hough y 3 b 3 3-2a= b 1 - a= b 1 1 2 x -1 2 a Continuo ad accumulare nel punto (2,-1) dello spazio trasformato.

Trasformata di Hough y 3 Trovare le circonferenze con centro sull asse x 1 1 3 x che sono sull immagine. Considerare in particolare i punti (1,1) e (3,3).

Trasformata di Hough Cerco curve del tipo: r 2 y 2 + x 2-2ax + a 2 - r 2 = 0 Per i punti (1,1) e (3,3): 10 9 r 2 = a 2-2a + 2 r 2 = a 2-6a + 18 1 Intersezione in a = 4, r 2 = 10. 1 3 4 a La curva cercata è: y 2 + x 2-8x + 6 = 0

Parte 3 Analisi di Layout

Analisi di Layout L analisi del Layout di una pagina consente di: segmentare un documento in gruppi di elementi omogenei (per esempio contenenti solo testo, per evitare gli errori di un OCR se gli viene passata una regione priva di testo); associare una semantica ad alcuni elementi (titolo, autore, logo, ecc.) ed ottimizzare il successivo riconoscimento.

XY-trees Hi guys, I m the title of this article M. Gori M. Maggini 2 Larghe Proiezioni di valore 0 Il documento è proiettato ABSTRACT Fhnoirfnpfrpjfoprjfèp cioejcrpiejprojfèoew nwoeijndewpjpweje jdiwejdiwejdejwpojd dewpw. INTRODUCTION dpwejdpepwjepwde ekpwdkopewkopwk wdkjepkeèwkèwek dewjpo, dkpowekfèprekèpfè Fhnoirfnpfrpjfoprjfèp cioejcrpiejprojfèoew nwoeijndewpjpweje jdiwejdiwejdejwpojd dewpw. 93ruwerjffepljfpjrpe djpiwqejpjkdèpekèp dpwejdpepwjepwde ekpwdkopewkopwk wdkjepkeèwkèwek dewjpo, alternativamente lungo gli assi X e Y (sommando il numero di pixel neri su ogni linea). I tagli sono effettuati in corrispondenza delle proiezioni di Proietto lungo asse x valore 0 più larghe.

XY-trees: passo 1 ABSTRACT Hi guys, I m the title of this article M. Gori M. Maggini dkpowekfèprekèpfè La Radice dell albero corrisponde all intero documento Fhnoirfnpfrpjfoprjfèp cioejcrpiejprojfèoew nwoeijndewpjpweje jdiwejdiwejdejwpojd dewpw. Fhnoirfnpfrpjfoprjfèp cioejcrpiejprojfèoew nwoeijndewpjpweje jdiwejdiwejdejwpojd dewpw. 93ruwerjffepljfpjrpe INTRODUCTION dpwejdpepwjepwde ekpwdkopewkopwk wdkjepkeèwkèwek dwepojzmòdmòewd dewjpo, djpiwqejpjkdèpekèp dpwejdpepwjepwde ekpwdkopewkopwk wdkjepkeèwkèwek dwepojzmòdmòewd dewjpo,

XY-trees: passo 2 Hi guys, I m the title of this article M. Gori M. Maggini Si tagliano lungo l asse Y le regioni trovate al passo precedente ABSTRACT Fhnoirfnpfrpjfoprjfèp cioejcrpiejprojfèoew nwoeijndewpjpweje jdiwejdiwejdejwpojd dewpw. dkpowekfèprekèpfè Fhnoirfnpfrpjfoprjfèp cioejcrpiejprojfèoew nwoeijndewpjpweje jdiwejdiwejdejwpojd dewpw. 93ruwerjffepljfpjrpe INTRODUCTION dpwejdpepwjepwde ekpwdkopewkopwk wdkjepkeèwkèwek dwepojzmòdmòewd dewjpo, djpiwqejpjkdèpekèp dpwejdpepwjepwde ekpwdkopewkopwk wdkjepkeèwkèwek dwepojzmòdmòewd dewjpo,

XY-trees: passo 2 ABSTRACT Hi guys, I m the title of this article Fhnoirfnpfrpjfoprjfèp M. Gori M. Maggini dkpowekfèprekèpfè Fhnoirfnpfrpjfoprjfèp Vediamo ad esempio come taglio la regione cioejcrpiejprojfèoew nwoeijndewpjpweje jdiwejdiwejdejwpojd dewpw. cioejcrpiejprojfèoew nwoeijndewpjpweje jdiwejdiwejdejwpojd dewpw. INTRODUCTION dpwejdpepwjepwde ekpwdkopewkopwk wdkjepkeèwkèwek dwepojzmòdmòewd dewjpo, 93ruwerjffepljfpjrpe djpiwqejpjkdèpekèp dpwejdpepwjepwde ekpwdkopewkopwk wdkjepkeèwkèwek dwepojzmòdmòewd dewjpo, M. Gori M. Maggini 3 larghe proiezioni di valore 0

XY-trees: caratteristiche Effettuano segmentazione Top-down. Consentono segmentazione a diversi livelli (livello di paragrafo, linea, parola, carattere). Altamente sensibili al rumore (se il documento è corrotto da rumore sale e pepe, le proiezioni non sono mai completamente a valore 0). Non tratta documenti con tabelle od altri elementi complessi.

XY-trees arricchiti Hi guys, I m the title of this article M. Gori M. Maggini In genere si aggiunge informazione nei nodi per ABSTRACT Fhnoirfnpfrpjfoprjfèp cioejcrpiejprojfèoew nwoeijndewpjpweje jdiwejdiwejdejwpojd dewpw. INTRODUCTION dpwejdpepwjepwde ekpwdkopewkopwk wdkjepkeèwkèwek dkpowekfèprekèpfè Fhnoirfnpfrpjfoprjfèp cioejcrpiejprojfèoew nwoeijndewpjpweje jdiwejdiwejdejwpojd dewpw. 93ruwerjffepljfpjrpe djpiwqejpjkdèpekèp dpwejdpepwjepwde ekpwdkopewkopwk wdkjepkeèwkèwek specificare le coordinate del rettangolo che corrisponde alla regione associata. 0, 0, 100, 100 dwepojzmòdmòewd dewjpo, dwepojzmòdmòewd dewjpo, 0, 0, 100, 15 0, 15, 100, 20 0, 20, 100, 100

XY-tree esempio ABSTRACT Fhnoirfnpfrpjfoprjfèp cioejcrpiejprojfèoew Nwoeijndewpjpweje ewgreq eqwthwtreh rfthjehgret Jdiwejdiwejdejwpojd vcergwr gwerg wehrt trhreh eh dewpw. INTRODUCTION Dpwejdpepwjepwde Ekpwdkopewkopwk Wdkjepkeèwkèwek Dwepojzmòdmòewd dewjpo, oewjprjgpèjgè rehjhrej jerrytulk hehphp cdsfvs vnp berwbp frkhoè fep ewpè Estrarre l XY-tree dal documento in figura THIS IS A TITLE DO YOU RECOGNIZE IT Fhnoirfnpfrpjfoprjfèp Nwoeijndewpjpweje Jdiwejdiwejdejwpojd v cioejcrpiejprojfèoew wthwtreh rfthjehgret wehrt trhreh eh dewpw.

Adjacency graphs Estraggo le componenti connesse. Formo nuovi oggetti, unendo le componenti a distanza inferiore a D. Applico ricorsivamente l algoritmo agli oggetti trovati al passo precedente incrementando la soglia di unione D. NB Talvolta si usano regole aggiuntive. Esempio: favorire unioni in direzione orizzontale (per formare parole)

Adjacency graphs: passo 1 Estraggo le parole C i a o s o n o i o C i a o s o n o i o C i a o s o n o s e m p r e i o C i a o s o n o s e m p r e i o

Adjacency graphs: passo 2 Estraggo le linee C i a o s o n o i o C i a o s o n o i o C i a o s o n o s e m p r e i o C i a o s o n o s e m p r e i o

Adjacency graphs: passo 3 Estraggo i paragrafi C i a o s o n o i o C i a o s o n o i o C i a o s o n o s e m p r e i o C i a o s o n o s e m p r e i o

Adjacency graphs: caratteristiche Effettuano segmentazione bottom-up. Consentono segmentazione a diversi livelli (livello di paragrafo, linea, parola, carattere). E spesso necessario inserire regole euristiche per unire in modo semanticamente corretto gli elementi.

Skew Correggere l orientamento di un documento è fondamentale per il successo di molti algoritmi di analisi di alto livello. Per esempio: XY-trees proiettano lungo linee orizzontali e verticali, se documento non è ben orientato il metodo fallisce. Un OCR ha prestazioni migliori se i caratteri in ingresso hanno una orientazione fissa.

Skew: metodo delle proiezioni ABSTRACT Fhnoirfnpfrpjfoprjfèp cioejcrpiejprojfèoew nwoeijndewpjpweje jdiwejdiwejdejwpojd dewpw. dkpowekfèprekèpfè Fhnoirfnpfrpjfoprjfèp cioejcrpiejprojfèoew nwoeijndewpjpweje jdiwejdiwejdejwpojd dewpw. Il documento originale è inclinato. Proiettandolo si ottiene una distribuzione omogenea. Il documento viene ruotato più volte, finché non si scopre l angolo che minimizza la regolarità della distribuzione. Tale angolo è l angolo di inclinazione del documento. ABSTRACT Fhnoirfnpfrpjfoprjfèp cioejcrpiejprojfèoew nwoeijndewpjpweje jdiwejdiwejdejwpojd dewpw. dkpowekfèprekèpfè Fhnoirfnpfrpjfoprjfèp cioejcrpiejprojfèoew nwoeijndewpjpweje jdiwejdiwejdejwpojd dewpw.

Skew: metodo delle proiezioni Come misurare la regolarità della proiezione di un documento dopo averlo ruotato di un angolo ϕ? Misurando l energia della sua distribuzione (Baird1987): E(ϕ) = p(x) 2 dx dove p(x) è la distribuzione della proiezione. Nel nostro caso se E(ϕ) è più alta la distribuzione è più irregolare (ϕ è più vicino all inclinazione del documento).

Skew: metododi Hough Hough trova le linee. Può essere usato per trovare le linee di testo. ABSTRACT dkpowekfèprekèpfè Fhnoirfnpfrpjfoprjfèp Fhnoirfnpfrpjfoprjfèp cioejcrpiejprojfèoew cioejcrpiejprojfèoew nwoeijndewpjpweje nwoeijndewpjpweje jdiwejdiwejdejwpojd jdiwejdiwejdejwpojd dewpw. dewpw. NB Questo metodo è costoso ma molto accurato. 150 100 50 0 Valori relativi ad una data inclinazione saranno alti. Tale inclinazione è l inclinazione del documento.

Skew: metodo Nearest-neighbor C i a o m a m m a Cerco i centroidi (momenti di ordine 0) delle componenti connesse 140 120 100 80 60 40 20 0 Conto il numero di angoli in un dato intervallo. L inclinazione è data dall angolo con conteggio massimo. Unisco i centroidi vicini -10-5 0 5 10 15 20 Misuro gli angoli tra centroidi contigui

Parte 4 Riconoscimento di testo

Introduzione Gli OCR (Optical Character Recognition) permettono il riconoscimento dei caratteri partendo da una loro immagine bitmap. Gli OCR si dividono nei seguenti gruppi: OCR per riconoscimento di caratteri stampati; OCR per ricoscimento di caratteri manoscritti; OCR per riconoscimento on-line di caratteri manoscritti;

Breve storia Il primo brevetto (in Germania) è del 1929!!! Veniva fornita solo l idea non una sua realizzazione. Il primo brevetto (negli USA) è del 1933!!! Il Primo vero OCR arriva con l avvento dei computers intorno dopo il 1950.

La storia continua Primo OCR commerciale è dell IBM nei primi anni 60. Poteva riconoscere soltanto i caratteri di un font speciale creato dall IBM. Grandi miglioramenti tra il 1970 ed il 1990.

Stato dell arte Oggi si trovano software commerciali che funzionano molto bene su caratteri sulla maggior parte dei font comuni. Si può affermare che oggi gli OCR sono uno dei settori meglio compresi nell analisi dei documenti. Al contrario non sono ancora perfettamente compresi i problemi relativi al preprocessing ed alla segmentazione dei caratteri.

OCR tecniche base Approccio Template-Matching: le immagini dei caratteri sono confrontate con dei prototipi. Si seleziona il carattere con il prototipo piu simile all immagine in ingresso. Analisi strutturale: si estraggono caratteristiche specifiche dell immagine in ingresso (spesso locali ad una piccola porzione di immagine). Tali caratteristiche sono usate per decidere la classe dell immagine in ingresso.

OCR: Template-Matching Metodo diretto. Valori medi su Ingresso caselle Confronto Prototipi

OCR: Template-Matching Il metodo diretto non funziona bene. Non gestisce, traslazioni o rotazioni dei patterns. Inoltre la firma ottenuta è poco compatta.

OCR: Template-Matching Metodo riduzione della dimensione: A Proietto lungo asse x Questa e la firma dell immagine da confrontare con dei prototipi Metodo delle peepholes: A B A B prototipo Ingresso 1 Ingresso 2 SI match NO match

OCR: Template-Matching Momenti: calcolo i momenti di ordine <= 6 e li uso come features rappresentanti l immagine. Si ottengono firme invarianti rispetto alla posizione e dimensione del carattere. Serie di Fourier: rappresento l immagine usando trasformate di Fourier bi-dimensionali. Oppure estraggo il chain-code del contorno e ne calcolo la trasformata di Fourier 1D.

OCR: analisi strutturale Vediamo adesso alcuni metodi per estrarre caratteristiche che descrivono in modo compatto il contorno o la regione coperta da un oggetto. Tali caratteristiche, se estratte da un oggetto di tipo carattere, possono essere utilizzate come firma per riconoscere la classe dello stesso.

OCR: analisi strutturale Rappresento il pattern con un grafo. Per esempio con Line adjacency graphs. Confronto Prototipi

OCR: analisi strutturale Approssimazione poligonale Raggio di curvatura Punto di partenza

OCR: analisi strutturale Momenti di ordine 1: calcolo baricentro m (1) x = 1/n x i m (1) y = 1/n y i Momenti di ordine K m x (K) = 1/n (x i - m x (1) ) K m y (K) = 1/n (y i - m y (1) ) K Momenti di ordine 2 : varianza m x (2) = 1/n (x i - m x (1) ) 2 m y (2) = 1/n (y i - m y (1) ) 2 x i e y i indicano le coordinate dell i-esimo pixel nero di una data regione

OCR: Rappresentazione di contorni Dimensione = Area Compattezza = Area / Perimetro Compattezza misurata con m (2) x e m (2) y m x (3) = m y (3) = 0 m x (3) = 0 m y (3)!= 0 Simmetria = m x (3) e m y (3) Trasformata di Fourier Componenti HF Componente LF

OCR: analisi strutturale A ingresso contorno parte convessa Altre caratteristiche utilizzate come parte concava elementi interni firma di un carattere

Classificazione Per classificare le firme delle immagini, si usano in genere algoritmi basati su apprendimento. Reti Neurali Algoritmi statistici k-nearest Neighbor (knn) Support Vector Machines (SVM) PUBBLICITA OCCULTA: Seguite il corso di Sistemi di supporto alle decisioni per saperne di più

Uso del contesto In talune situazioni (soprattutto nel caso di OCR omnifont) è impossibile assegnare una identità univoca ad un carattere. Per esempio i seguenti caratteri sono spesso indistinguibili a partire dalla loro immagine bitmap: O da 0 (zero) (in alcuni font) l (elle) da 1.

Uso del contesto Per discriminare tra più scelte possibili, gli OCR più evoluti utilizzano vocabolari e modelli del linguaggio (spesso basati su HMM) che decidono l identità del carattere sulla base dei caratteri precedentemente incontrati.

Analisi semantica Confronto tra la struttura del documento (data per esempio dagli XY-trees) con dei prototipi semantici. In questo modo è possibile dare una interpretazione semantica al testo in uscita all OCR. 0, 0, 100, 15 0, 0, 100, 100 0, 15, 100, 20 0, 20, 100, 100 XY-tree di un Documento 0, 0, 100, 100 Introduzione if a == 0 and b>10 and c == 100 and d > 80 Titolo if a == 0 and b == 0 and c>80 and d>70 Prototipo

Riassunto 1 dalla carta alla comprensione Acquisizione ottica Analisi di basso livello thresholding rimozione del rumore thinning (opzionale)

Riassunto 2 dalla carta alla comprensione Ricerca di linee ed di oggetti grafici Analisi di layout (XY-trees o Adjacency graphs) Estrazione di features dai componenti del documento Momenti Analisi dei contorni Trasformate di Fourier

Riassunto 3 dalla carta alla comprensione Riconoscimento dei caratteri Analisi semantica