Il riconoscimento ottico di testo manoscritto in corsivo è un problema tutt’ora aperto, ed è uno dei campi di ricerca più attivi e attuali.

All’interno del riconoscimento della scrittura manoscritta in corsivo bisogna è importante fare una distinzione tra riconoscimento on-line e riconoscimento off-line.

Quando si parla di riconoscimento della scrittura on-line si fa riferimento alla tecnologia che serve a riconoscere parole scritte su dispositivi in grado di produrre informazioni spazio temporali relative ai movimenti della penna effettuati dallo scrivente: in pratica il riconoscimento avviene su dati vettoriali, costituiti dalle coordinate dei tratti d’inchiostro e dai pen up/pen down campionati in tempo reale durante la scrittura. Si tratta quindi dell’analisi di una rappresentazione dinamica della scrittura.

Parlando invece di riconoscimento della scrittura off-line si fa riferimento alla tecnologia che serve a riconoscere parole scritte su supporti cartacei in cui è presente la sola rappresentazione come immagine del testo da riconoscere: il riconoscimento avviene su dati raster, costituiti dai soli pixel accesi/spenti ottenuti dalla digitalizzazione del supporto cartaceo mediante scanner. Si tratta quindi dell’analisi di una rappresentazione statica della scrittura.

Tramite un PDA o un tablet PC si può facilmente sperimentare l’input di testi utilizzando il riconoscimento della scrittura corsiva on-line talvolta in esso integrato; tale tecnologia è, infatti, largamente impiegata in dispositivi che richiedono l’input mediante l’utilizzo di una penna ed una tavoletta grafica o un touch screen.

Al contrario è molto raro trovare pacchetti software in grado di effettuare il riconoscimento della scrittura off-line su immagini e documenti acquisiti da scanner: ciò è dovuto all’intrinseca difficoltà nel riconoscimento off-line di operare su una quantità di informazioni nettamente inferiore e molto più rumorose rispetto a quelle su cui lavora il riconoscimento on line.

La tecnologia di prima generazione, unica disponibile sino ad ora, ha un requisito fondamentale che in molti casi non è un problema ma che in alcune circostanze può rappresentare un grosso limite: per ogni tipo di dato da leggere è richiesto l’utilizzo di un dizionario che contenga tutte le possibili parole che possono essere riconosciute. Vale a dire che, ad esempio per riconoscere un “nome” ed un “cognome”, è necessario avere a disposizione un dizionario di nomi ed un dizionario di cognomi che contengano tutti i possibili valori riconoscibili.

Pertanto se si sottoponesse al sistema un’immagine contenente una parola non contenuta nel dizionario, si riceverebbe come risultato la parola più simile tra quelle contenute nel dizionario, senza che il sistema possa tentare di produrre in output la parola sconosciuta.

Oltre alla difficoltà di doversi procurare i dizionari da utilizzare e di non poter leggere parole extra dizionario, neppure se scritte in modo ideale, un ulteriore problema è dato dall’elevato tasso di errore riscontrabile in applicazioni reali all’aumentare delle dimensioni del dizionario, tale da consentirne l’uso solo in ambiti circoscritti.

Partendo da queste considerazioni la Recogniform Technologies, azienda italiana specializzata nello sviluppo di tecnologie di data-capture, ha avviato un progetto di ricerca sul riconoscimento ottico della scrittura manoscritta corsiva, con l’obiettivo di realizzare una tecnologia utilizzabile anche senza l’ausilio di vocabolari e con tassi di riconoscimento sufficientemente elevati da poter essere utilizzata con profitto in ogni ambito applicativo.

Alla base di questo innovativo progetto di ricerca c’è la semplice idea di poter riconoscere le parole identificandone delle sotto sequenze mediante il confronto di tratti di inchiostro contenuti in un reference set. Un esempio molto semplicistico è quello di un reference set contenente le sole parole “problema” e “valore”, da cui poter riconoscere le parole “prova”, “malore”, “prore”, “mare”, “arma”, “roma” e così via.

Tuttavia la variabilità nella forma del manoscritto corsivo prodotto da una popolazione di scriventi si traduce nella possibilità che scriventi appartenenti allo stesso gruppo possano usare N grafemi diversi per rappresentare lo stesso N gramma: in altre parole, la variabilità del modo di scrivere è tale che la stessa cosa può essere scritta in modi anche molto diversi tra loro, secondo lo stile di scrittura di ciascuno.

Con riferimento all’esempio di cui sopra, se scrivessimo le due sillabe della parola “prova” in maniera completamente diversa rispetto alle stesse presenti in “problema” e “valore”, potremmo non essere in grado di riconoscere correttamente il testo.

Da ciò deriva la necessità di associare ad ogni grafema il/i possibili N gramma/i di riferimento, secondo complessi algoritmi di probabilità congiunte in grado di portare all’interpretazione corretta della parola.

La tecnologia di riconoscimento per il manoscritto corsivo off-line sviluppata da Recogniform Technologies è stata battezzata CHR (acronimo di Cursive Handwritten Recognition) ed ha richiesto la collaborazione di prestigiosi laboratori universitari italiani, ingenti investimenti e più di tre anni di ricerca e sperimentazione.

L’architettura è costituita da diversi sottosistemi specializzati che, a partire dall’immagine della parola da riconoscere, riescono a produrre la sua rappresentazione in termini di caratteri. Per comprenderne il funzionamento possiamo brevemente descrivere le diverse fasi svolte in sequenza dai diversi sottosistemi che agiscono in cascata: pre-processing, sbrogliatura, segmentazione, descrizione, matching e classificazione.


Pre-processing
La prima fase si occupa del pre-processing dell’immagine, cioè della pulizia e della normalizzazione del tratto di inchiostro. Ciascuna parola viene raddrizzata, viene pulita da punti spuri e sporco, ne viene corretta l’inclinazione del tratto, viene normalizzato il rapporto tra core, ascenders e descenders.

Sbrogliatura
Successivamente ci si fa carico della sbrogliatura: in pratica si tenta di ricostruire la sequenza dinamica dei tratti d’inchiostro così come sono stati presumibilmente tracciati dallo scrivente. Questa è l’operazione più delicata: il maggiore o minore successo di questa fase, determinato dalla qualità dell’immagine e dallo stile di scrittura utilizzato, decreta la bontà dell’interpretazione finale. A valle di tale processo la parola risulta suddivisa in sequenze di tratti, ognuno dei quali corrisponde alla traccia d’inchiostro prodotta dallo scrivente tra l’istante di tempo in cui viene poggiata la penna sul foglio e l’istante di tempo in cui la penna viene sollevata interrompendo momentaneamente la sequenza di scrittura.

Segmentazione
La successiva fase di segmentazione genera dei tratti atomici che corrispondono agli atti motori elementari eseguiti dallo scrivente. Infatti, in accordo agli studi sulla generazione della scrittura corsiva i movimenti complessi necessari per produrre la scrittura corsiva possono essere visti come una composizione di movimenti elementari che corrispondono a forme elementari, chiamate stroke. Tali stroke sono tracciate una di seguito all’altra e la scrittura risulta fluente a causa della sovrapposizione temporale dei movimenti elementari che producono le stroke.

Le stroke rappresentano quindi le primitive di forma che ciascuno scrivente utilizza nel processo di scrittura e rilevanti studi effettuati nel campo della visione hanno mostrato che la curvatura dei tratti gioca un ruolo chiave nella percezione delle forme e della loro composizione. Dal momento che è noto che in corrispondenza dei tratti di connessione tra stroke adiacenti sono generati cambi di curvatura significativi, il processo di segmentazione posiziona dei punti di taglio in corrispondenza dei tratti di inchiostro nei quali si verificano i cambi di curva più rilevanti, tentando di scartare le variazioni di curvatura spurie comunque generate dai processi di scrittura e di digitalizzazione.

Descrizione
Nella seguente fase di descrizione ciascuna stroke precedentemente identificata dal processo di segmentazione viene etichettata in base al suo cambio di curvatura, opportunamente quantizzato.

Matching
La penultima fase, il matching, consiste nel confrontare tratti di inchiostro relativi alla parola da riconoscere con quelli relativi ad un insieme di parole di riferimento di cui è disponibile anche la trascrizione in codice ASCII. In questo modo sono estratte le sequenze di stroke simili e con esse le possibili interpretazioni.

Classificazione
Infine il processo è concluso con la fase di classificazione che produce le possibili interpretazioni della parola andando a considerare tutte le possibili combinazioni dei match ottenuti dalla fase precedente e calcolando contestualmente un livello di affidabilità.


Come si evince l’architettura risulta piuttosto complessa, particolarmente in virtù della difficoltà del compito da svolgere, ma i risultati che si stanno ottenendo sulle prime applicazioni in laboratorio sono sorprendenti ed estremamente incoraggianti.