minilogo.gif (2094 bytes)

Reti neurali e riconoscimento di caratteri

left.gif (1019 bytes) up.gif (1014 bytes) right.gif (1020 bytes)

11. Esperimenti preliminari

Riportiamo qui alcune informazioni relative ad esperimenti condotti e in corso aventi in qualche modo attinenza col progetto di sistema OCR descritto alla Sez. 10.

Identificazione della rotazione della pagina

L'algoritmo per l'identificazione del tilt è basato sulla trasformata di Hough eseguita su una rappresentazione dell'immagine a risoluzione ridotta, e gli esperimenti condotti in tal senso hanno finora dato ottimi risultati. Come già descritto alla Sez. 4, la trasformata di Hough trasforma un punto dello spazio (x, y) in una curva nello spazio dei parametri (r, q); un insieme di punti collineari viene trasformato in un fascio di curve che si incontrano in un particolare punto (r0, q0), dove q0 è legato all'inclinazione della retta su cui giacciono i punti. Il risultato della trasformata di Hough su un'immagine è dunque una funzione g(r, q) che dà il numero di curve che si incontrano in ogni punto (r, q). Ai fini dell'identificazione del tilt, viene costruita una funzione

g(q) = maxr g(r, q)

che avra' un massimo piuttosto spiccato in corrispondenza all'angolo di tilt. Un esempio di testo ad orientamento non orizzontale con risoluzione ridotta e' illustrato in Fig. 30, mentre in Fig. 31 e' riportato il diagramma polare della corrispondente funzione g(q).

Fig. 30

Esempio di testo con orientamento non orizzontale, a risoluzione ridotta.

 

Fig. 31

Diagramma polare ricavato dalla trasformata di Hough del testo inclinato.

L'unico inconveniente di questo algoritmo è dato dal tempo relativamente elevato richiesto dalla trasformata di Hough, quando essa viene implementata nel modo classico. E' possibile però adottare sia una diversa parametrizzazione dello spazio di Hough (Svalbe, 1989), sia delle varianti molto più veloci dell'algoritmo base, note come trasformate di Hough adattative (Illingworth & Kittler, 1987), che sono attualmente sotto sperimentazione.

Reti neurali per la classificazione di caratteri

Una interessante comparazione delle prestazioni di due architetture neurali sotto molti aspetti significativamente diverse tra loro, le macchine di Boltzmann e le reti di Kohonen, è stata condotta da Taraglio (1990). L'insieme di pattern sotto test è quello dei caratteri alfabetici maiuscoli del PC IBM, inscritto in una matrice 7 x 7, e benché sia volutamente lontano dai caratteri che si incontrano realmente sui documenti sottoposti ad OCR, consente già di concludere che una rete di Kohonen ha comportamento significativamente migliore di una corrispondente macchina di Boltzmann sotto l'aspetto della tolleranza al rumore. Altri esperimenti, relativi a set di caratteri estratti dal database più avanti citato, sono tuttora in corso.

Feature per la descrizione del pattern

Un'altra serie di esperimenti è in corso per stabilire la validità di determinate trasformazioni del pattern del carattere al fine dell'estrazione di un numero ridotto di feature utilizzabili per la classificazione.

Il primo tipo di trasformazione che abbiamo preso in considerazione è la trasformazione conforme in logaritmo complesso (Fig. 32). Il pattern del carattere viene in primo luogo sottoposto a un algoritmo di thinning, al fine di eliminare le influenze dello spessore dei tratti; viene poi calcolato il centro di massa del pattern risultante (rappresentato con una crocetta in Fig. 32), e viene quivi spostata l'origine del sistema di riferimento (x, y). Se il nuovo sistema viene considerato come un piano complesso z = x + i y, è possibile proiettare i punti del piano z sui punti di un piano u = r + iq secondo la trasformazione

u = log z

Fig. 32

Esperimenti sulle trasformazioni conformi. Il pattern del carattere viene sottoposto a thinning, traslazione rispetto al centro di massa e infine ad una trasformazione in logaritmo complesso.

Il pattern che ne deriva gode di un certo numero di proprietà:

E' interessante notare, ai fini del riconoscimento dei caratteri, come il pattern risultante per un dato carattere sia abbastanza simile anche al variare del font.

Sono peraltro in corso ulteriori indagini per valutare le prestazioni di altre trasformazioni ai fini della generazione di un vettore di feature da applicare ad una rete neurale per la classificazione; il programma degli esperimenti prevede test specifici per la trasformata coseno discreta, la trasformata di Walsh-Hadamard, i momenti geometrici (Sez. 4) e alcuni loro invarianti (Reeves et al., 1988), i momenti di Zernike (Teague, 1980; Khotanzad & Hong, 1990), i momenti complessi (Abu-Mostafa & Psaltis, 1985).

Libreria di riferimento

E' infine in corso la preparazione di un database di pattern di riferimento di caratteri alfabetici, numerici e speciali appartenenti a vari font da utilizzare negli esperimenti di classificazione. L'ampiezza del database ha raggiunto finora alcune migliaia di pattern, ed è tuttora in espansione, con un'ampiezza massima prevista di diverse decine di migliaia di caratteri. I pattern sono estratti mediante scansione di pagine tratte dai cataloghi di alcuni fabbricanti di prodotti per trasferibili (Letraset, Mecanorma, R41, etc.), segmentazione manuale dei pattern dei singoli caratteri e generazione di un file in formato grafico standard per ciascun pattern.

Riferimenti bibliografici

  1. Y. S. Abu-Mostafa, D. Psaltis, "Image normalization by complex moments," IEEE Trans. Pattern Anal. Machine Intell., vol. 7, pp. 46-55, 1985.
  2. J. Illingworth, J. Kittler, "The adaptive Hough transform," IEEE Trans. Pattern Anal. Machine Intell., vol. 9, pp. 690-698, 1987.
  3. A. Khotanzad, Y. H. Hong, "Invariant image recognition by Zernike moments," IEEE Trans. Pattern Anal. Machine Intell., vol. 12, pp. 489-497, 1990.
  4. A. P. Reeves, R. J. Prokop, S. E. Andrews, F. P. Kuhl, "Three-dimensional shape analysis using moments and Fourier descriptors," IEEE Trans. Pattern Anal. Machine Intell., vol. 10, pp. 937-943, 1988.
  5. I. D. Svalbe, "Natural representation for straight lines and the Hough transform on discrete arrays," IEEE Trans. Pattern Anal. Machine Intell., vol. 11, pp. 941-950, 1989.
  6. S. Taraglio, "Boltzmann vs Kohonen networks: what is best for character recognition?" Proc. Int. Neural Networks Conf. (INNC-90), Paris, France, July 9-13, 1990.
  7. M. R. Teague, "Image analysis via the general theory of moments," J. Opt. Soc. Am., vol. 70, pp. 920-930, 1980.
  8. C. H. Teh, R. T. Chin, "On image analysis by the methods of moments," IEEE Trans. Pattern Anal. Machine Intell., vol. 10, pp. 496-513, 1988.
minilogo.gif (2094 bytes)

Reti neurali e riconoscimento di caratteri

left.gif (1019 bytes) up.gif (1014 bytes) right.gif (1020 bytes)

© 1997-2003 Paolo Marincola (Rome, Italy)
e-mail:
pmaNOSPAM@acm.org (eliminare i caratteri "NOSPAM" per ottenere l'indirizzo esatto)
Commenti, osservazioni e suggerimenti sono estremamente graditi.

Last revised: 2003-11-09 00:30