Reconnaissance de Caractères Imprimés Omni
Transcription
Reconnaissance de Caractères Imprimés Omni
SETIT 2005 3rd International Conference: Sciences of Electronic, Technologies of Information and Telecommunications March 27-31, 2005 – TUNISIA Reconnaissance de Caractères Imprimés Omni-fonte Abdelhak Boukharouba * et Abdelhak Bennia ** * Département d’Electronique, Université du 08 Mai 45, Guelma, Algérie [email protected] ** Département d’Electronique, Université Mentouri de Constantine, Algérie [email protected] Résumé: Dans ce travail, on présente une méthode de reconnaissance de caractères à partir d’un texte imprimé. L’étude est basée sur l’analyse optique du texte, un pré-traitement de l’image permet de réduire le bruit et de rendre l’image binaire. La projection horizontale isole les lignes, la projection verticale isole les mots, divise le mot en caractères et détecte la position du caractère dans le mot. Les moments des projections verticale, horizontale et selon les deux diagonales du caractère sont les paramètres du vecteur de caractéristiques. La classification est réalisée par une simulation connexionniste à base de réseaux de neurones multicouches. Les résultats montrent que le système est assez performant, mais qu’il n’est pas parfait. Les scores faibles pour certaines fontes ou inférieurs à 100% pour d’autres, pourtant faciles à traiter, montrent encore une fois la limite de la reconnaissance des caractères qu’il faut donc compléter par une reconnaissance plus contextuelle, celle des mots par exemple. Mots clés: Classification, reconnaissance de caractères, réseaux de neurones artificiels, segmentation. 1. Introduction Le but de la reconnaissance de texte imprimé est de transformer ce dernier en une représentation compréhensible par une machine, et facilement reproductible par un traitement de texte, ceci n’est pas toujours facile du moment que les mots peuvent avoir plusieurs représentations, différentes polices et différents styles de caractères (Gras, Italiques,…, etc.) [1], [2]. On a trois familles de systèmes de reconnaissance optique de caractères (OCR), à savoir les systèmes de reconnaissances mono-fonte, multifonte ou omni-fonte. Un système d’OCR mono-fonte reconnaît les caractères d’une fonte bien déterminée. Les systèmes d’OCR multi-fonte permettent la reconnaissance des caractères de plusieurs fontes, toutes ayant en principe fait l’objet d’un apprentissage unique. La phase de reconnaissance est souvent précédée par une phase de normalisation de la taille et de la graisse. Les systèmes d’OCR omni-fonte font abstraction de l’information sur la fonte, dans la mesure où ils sont capables de reconnaître des caractères de n’importe quelle fonte, et n’importe quelle taille. Les méthodes d’OCR omni-fonte sont incapables d’identifier les fontes, d’où leur intérêt limité dans les systèmes de reconnaissance structurelle de documents. Dans de telles applications, il faut compléter se type d’OCR par un module d’identification de la fonte. Cet article est organisé comme suit : dans le paragraphe, nous donnons une description générale du système développé, tandis que dans le paragraphe 3 nous présentons quelques résultats expérimentaux et discussions. Nous concluons l’article conclut en évoquant les perspectives d’amélioration des performances de cette approche. 2. Description générale du système développé L’architecture générale de notre système de reconnaissance de caractères alphanumériques multifontes se présentera sous la forme suivante [1], [3] : Acquisition Binarisation Segmentation Extraction des caractéristiques Classification et reconnaissance Figure 1. Schéma simplifié d’un système de reconnaissance. SETIT2005 La lecture est souvent divisée en plusieurs tâches : l’acquisition et le traitement de l'image, la binarisation la segmentation, l’extraction des paramètres et enfin la classification. 2.1 Acquisition des données L'acquisition est effectuée avec un scanner numérique de résolution 300 dpi avec 8 bits/pixel, les échantillons utilisés sont des textes qui contiennent tous les caractères alphanumériques multi-fontes (majuscules, minuscules, et chiffres) et avec 20 échantillons pour chaque classe. 2.2 Seuillage et binarisation Cette opération consiste à transformer une image à plusieurs niveaux en une image à deux niveaux de gris par seuillage des niveaux de gris. 2.3 Segmentation et extraction L'extraction des caractères est une étape importante dans un processus de reconnaissance, car elle est au moins assez importante que la reconnaissance des caractères elle-même, du moment qu’une bonne segmentation permet de présenter au système les caractères à reconnaître dans de bonnes conditions, une mauvaise segmentation quant à elle va entraîner une chute du taux de reconnaissance [3]-[6]. Elle a pour rôle de localiser les lettres dans le mot en indiquant leurs limites gauche et droite. Elle se fait en deux étapes distinctes : une séparation de lignes, suivie d'une séparation de caractères. La séparation de lignes se fait par projection horizontale (PH). La détection des lignes de texte commence une fois que la projection horizontale du texte est faite. On peut dire que le début d’une ligne de texte est détecté, si la valeur de PH est supérieure à un certain seuil. La détection de la fin de ligne se fait d’une manière analogue à la détection du début de celle-ci. La projection de toutes les lignes d’image peut allonger le temps global de reconnaissance. Pour essayer de réduire ce temps, on a choisi de ne projeter qu’une ligne sur quatre. La séparation de caractères se fait par une projection verticale (PV). De la même façon, la détection des liens inter-caractères commence une fois que la projection verticale d’une ligne est faite. On peut dire que ce lien est détecté, si la valeur de PV est supérieure à un certain seuil. Après l’extraction des caractères, on fait passer l’image des caractères à travers un module de normalisation qui permet de ramener les images des caractères à des tailles standards. Cette phase est indispensable pour notre système neuronal. 2.4 Extraction des primitives L'extraction et le choix des paramètres de discrimination, est parmi les problèmes les plus importants dans la reconnaissance de forme, cette étape est primordiale car l’image initiale est ignorée pour ne considérer que ses paramètres, et les performances du système de classification dépendent directement de leur choix. Un bon choix du vecteur d’attributs se présente comme un vecteur de nombre minimal de paramètres pour éliminer la redondance et l’ambiguïté, mais qui contiennent un maximum d’informations utiles pour la classification. Parmi les techniques utilisées pour extraire les paramètres de discrimination, on trouve celles basées sur l’image binaire du caractère (utilisation des moments, techniques d’histogrammes, technique de distribution des pixels, [5]) ou même à niveau de gris, ou bien celles qui sont basées sur des informations extraites à partir de l’image du contour du caractère (descripteurs de Fourier, codage des contours) [4], [7], [8]. Dans notre travail, nous nous intéressons particulièrement aux images binaires des caractères, et la méthode utilisée pour extraire les paramètres de discrimination utilise les moments normalisés des projections verticales, horizontales, et selon les deux diagonales [5]. 2.5 Classification et reconnaissance La reconnaissance des caractères imprimés est un problème pour lequel un modèle de reconnaissance doit nécessairement intégrer la prise en compte d’un nombre important de variabilité. Dès lors, les méthodes basées sur les techniques d’apprentissage peuvent apporter une certaine souplesse à la construction d'un tel modèle. Dans notre travail, notre choix a été porté sur l'algorithme d'apprentissage par rétro-propagation du gradient, associé à un réseau de neurones multicouches dont la structure est fixée par tâtonnement. Ce choix trouve sa justification dans la capacité de ce type de modélisation de comprendre des phénomènes non linéaires et de complexités considérables, et dans les résultats encourageant publiés dans la littérature [4], [5], [9], [10]. 3. Résultats expérimentaux et discussion Le système d’OCR permet la reconnaissance des caractères de plusieurs fontes (Time, Arial, ...), toutes ayant en principe fait l’objet d’un apprentissage unique. La base de données utilisée contient 1980 caractères alphanumériques multi-fontes dont la taille et la graisse sont variables. La figure 2 donne quelques échantillons utilisés. Une partie de cette base (8 échantillons de chaque classe), choisie aléatoirement, est utilisée pour l’apprentissage et l’entraînement du module de reconnaissance et l’autre partie pour l’évaluation des performances. a b c d e a b c d e c d e EFMN a b c d e a b c d e B GR wxyz 6 8 9 6 8 96 8 9 Figure 2. Exemples de caractères des bases d’apprentissage et de test. SETIT2005 Le classificateur utilisé est un réseau de neurones composé de quatre couches : deux couches cachées dont le nombre de neurones est choisi avec des heuristiques puis affiné à 11 neurones pour la première couche cachée et à 9 neurones pour la deuxième couche cachée; une couche d’entrée dont le nombre de neurones dépend de la taille du vecteur d’entrée utilisé et fixé à 18, et une couche de sortie dont le nombre de neurones dépend du nombre de caractères à identifier (classes). Il est à noter que les lettres u et U ou v et V ne peuvent être distinguées et ont été rassemblées dans la même classe. Au total le problème considéré comporte 49 classes à la sortie du réseau. L’identification de la fonte est généralement combinée avec la reconnaissance des caractères, deux stratégies d’identification de la fonte sont envisagées [2]. L’identification a priori consiste à reconnaître la fonte d’un texte sans reconnaître les caractères. Dans une première étape, on applique des méthodes d’identifications de la fonte sur des parties de texte. Dans une deuxième étape, on applique un OCR monofonte sur les parties du texte ayant la même fonte. Dans ce cas, la performance globale de classifieur est représentée en mémorisation seulement, et la classification est parfaite (100%). Fontes Arial Batang Book Antiqua Bookman Old Style Century Comic Sans MS Courier New Tahoma Times New Romans Taux de reconnaissance % 96.77 95.16 93.55 88.71 88.71 91.94 91.94 96.77 98.39 Tableau 1. Taux de reconnaissance de 9 fontes différentes. On peut noter que les erreurs sont facilement analysables, car il s’agit de confusion entre quelques formes proches, où bien de rejet des caractères dont la forme est dégradée. 4. Conclusions et perspetives Nous avons présenté un système de reconnaissance de caractères alphanumériques omnifonte. La classification est réalisée par la technique de rétro-propagation de l’erreur à base d’un réseau de neurones multicouches. Les résultats montrent que le système est assez performant, mais qu’il n’est pas parfait. Les scores faibles pour certaines fontes ou inférieur à 100% pour d’autres, pourtant facile à traiter, montrent encore une fois la limite de la reconnaissance des caractères qu’il faut donc compléter par une reconnaissance contextuelle, celle des mots, par exemple. Cependant, nous prévoyons d’autres possibilités d’évolution : établir la base de données en tenant compte d’un plus grand nombre d’échantillons ; améliorer les performances et le taux de reconnaissance du classifieur en faisant un bon choix des paramètres du réseau (architecture du réseau, initialisation des paramètres de pondération, fonction d’activation, pas d’apprentissage), et par l’utilisation d’autres lois d’apprentissage ; et finalement envisager d’autres méthodes de classification. Références [1] J. Anigbogu et A. Belaid, “Reconnaissance de caractères multifontes par votes à la majorité”, Bigre, N°80 – CNED 92 : Au Colloque National sur l'écrit et le document , Nancy, Juillet 1992. [2] A. Zramdini, A. Azokly et R. Ingold, “Importance de l'identification de la fonte dans la reconnaissance structurelle de documents”, Bigre, N°80 – CNED 92 : Au Colloque National sur l'écrit et le document , Nancy, Juillet 1992. [3] R. G. Casey and E. Lecolinet., “A survey of methods and strategies in character segmentation”, IEEE Transactions on Pattern Analysis and Machine Intelligence, Vol. 18, N°7, July 1996. [4] M. Bedda., M. Ramdani et N. Doghman, “Classification des caractères arabes manuscrits par une perceptron multicouches”, Revue synthèse, Université de Annaba, Vol. 1, N°1, Juin 1996. [5] M. Bedda, M. Ramdani et S. Ouchtati, “Le choix d'une représentation des caractères manuscrits arabes”, Conférence Internationale S8 \ 2. 99. [6] Y. Lu, “Machine printed character segmentation-an overview”, Pattern Recognition, Vol. 28, N°1, 1995. [7] T. S. Elsheich and R. M. Guindi., “Automatic recognition of isolated Arabic characters”, Signal Processing, pp. 177-184, 1988. [8] A. Namane and M. A. Sid-Ahmed, “Character Scaling by contour method”, IEEE Transactions on Pattern Analysis and Machine Intelligence, Vol. 12, N°6, June 1990. [9] H. Borland and C. J. Mellekems, “Multi-layer perceptrons and automatic speech recognition”, IEEE First Annual International Conference on Neural Networks, San Diago, California, pp. 21-24, June 1987. [10] F. Yatim, B. Taconet, P. Bezet et A. Faure, “Système d'acquisition et de reconnaissance de caractères alphanumériques multifontes”, LACOS ITPEA Place Robert Schaum 76610 Le Havre AI Vision systèmes.