La reconnaissance optique des caractères

La reconnaissance optique de caractères encore appelé vidéocodage (traitement postal, chèque bancaire) désigne les procédés informatiques pour la traduction d'images de textes imprimés ou dactylographiés en fichiers de texte. Elle réalise beaucoup moins que l'être humain qui, lui, exécute, en plus de la reconnaissance, la compréhension du message, sa mémorisation, voire son analyse critique dans un seul temps.

Un ordinateur réclame pour l'exécution de cette tâche un logiciel de reconnaissance optique de caractères, ROC ou OCR (abréviation du terme anglais optical character recognition), Celui-ci permet de récupérer le texte dans l'image d'un texte imprimé et de le sauvegarder dans un fichier pouvant être exploité dans un traitement de texte pour enrichissement, et stocké dans une base de données ou du moins, sur un support sûr et exploitable par un système informatique.

Fonctionnement

Un système ROC part de l'image numérique réalisée par un scanner optique d'une page (document imprimé, feuillet dactylographié, etc.), ou une caméra numérique, et produit en sortie un fichier texte en divers formats (texte simple, formats de traitements de texte, XML...).

Certains logiciels tentent de conserver l'enrichissement du texte (corps, graisse et police) ainsi que la mise en page, voire de rebâtir les tableaux et d'extraire les images.

Certains logiciels comportent, en outre, une interface pour l'acquisition numérique de l'image.

Jusqu'à une date récente, le fonctionnement des systèmes ROC performants était peu connu car protégé par le secret industriel; les logiciels open-source disponibles (ex: GOcr) étant plutôt l'œuvre d'amateurs. La publication en open-source de systèmes performants (en particulier Tesseract en 2006) a quelque peu changé cette situation.

Les étapes de traitement peuvent être schématisées ainsi:

     1. Pré-analyse de l'image: le but est d'améliorer éventuellement la qualité de l'image. Ceci peut inclure le redressement d'images inclinées ou déformées, des corrections de contraste, le passage en mode bicolore (noir et blanc, ou plutôt papier et encre), la détection de contours.

     2. Segmentation en lignes et en caractères (ou Analyse de page): vise à isoler dans l'image les lignes de texte et les caractères à l'intérieur des lignes. Cette phase peut aussi détecter le texte souligné, les cadres, les images.

     3. Reconnaissance proprement dite des caractères: après normalisation (échelle, inclinaison), une instance à reconnaitre est comparée à une bibliothèque de formes connues, et on retient pour l'étape suivante la forme la plus « proche » (ou les N formes les plus proches), avec un score ou une distance. Les techniques de reconnaissance se classent en quelques grands types:

  • Classification par Caractéristiques (Features): une forme à reconnaitre est représentée par un vecteur de valeurs numériques - appelées features en anglais - calculées â partir de cette forme. Le nombre de features est de l'ordre de 100 à 300. Si les features sont bien choisies, une classe de caractères (par exemple l'ensemble des A majuscules) sera représentée par un « nuage » contigu de points dans l'espace vectoriel des features. Le rôle du classificateur est de déterminer à quel nuage (donc à quelle classe de caractères) la forme à reconnaitre appartient le plus vraisemblablement. La classification fait généralement appel à divers types de réseaux de neurones artificiels entrainés sur de vastes bases de formes possibles.
  • Méthodes métriques: consistent à comparer directement la forme à reconnaitre, au moyen d'algorithmes de distance, avec un ensemble de modèles appris. Ce type de méthode est peu utilisé et peu valorisé par les chercheurs, car souvent plus naïf et vraisemblablement moins efficace que les méthodes à base de features.
  • Méthodes statistiques: dans le domaine de la reconnaissance d'écriture manuscrite, il est fréquemment fait appel aux méthodes probabilistes/statistiques comme les chaînes de Markov.

     4. Post-traitement utilisant des règles linguistiques et contextuelles pour réduire le nombre d'erreurs de reconnaissance: dictionnaires de mots, de syllabes, de trigrammes. Dans les systèmes industriels, des techniques spécialisées pour certaines zones de texte (noms, adresses postales) peuvent utiliser des bases de données pour éliminer les solutions incorrectes.

     5. Génération du format de sortie.

Principaux logiciels de reconnaissance optique de caractères

Logiciels libres
  •         - GOCR (Unix, Windows)
  •         - OCRopus (Unix)
  •         - Tesseract (Unix, Windows)

Logiciels freewares

  •         - Moredata, logiciel freeware qui emploie tessnet (Windows).
  •         - MoredataFast (Windows).

Logiciels propriétaires

  •         - Readiris (Unix, Windows, Mac OS)
  •         - FineReader (Unix, Windows)
  •         - Scansoft Omnipage (Windows)
  •         - BIT-Alpha (Windows)
  •         - Neoptec (Windows, Mac OS, Unix)
  •         - Adobe Acrobat Professional (Windows, Mac OS)

saisie annuaire - saisie annonce - saisie base de données - saisie audio - saisie comptable - saisie coupon - saisie enquête
saisie donnée - saisie document - saisie manuscrit - saisie texte - saisie réunion - saisie au kilometre - saisie de bulletins - etc...

-->