Simple Science

La science de pointe expliquée simplement

# Informatique# Vision par ordinateur et reconnaissance des formes# Intelligence artificielle

Améliorer la précision de l'OCR avec des techniques de PNL

Cet article parle d'améliorer la précision de l'OCR grâce au traitement du langage naturel.

― 7 min lire


Amélioration de laAmélioration de laprécision OCR avec le NLPtexte.précision de la reconnaissance deCombiner l'OCR et le NLP améliore la
Table des matières

La Reconnaissance Optique de Caractères (OCR) aide à convertir du texte écrit en texte numérique. Cette techno est super utilisée dans plein de domaines, genre pour transformer des livres en formats numériques et aider la police à lire les plaques d'immatriculation. Par contre, les méthodes OCR actuelles marchent mieux avec du texte tapé qu'avec des notes manuscrites ou des manuels imprimés. Le gros souci vient des caractères qui se ressemblent, des styles d'écriture différents et des variations dans le texte imprimé.

Importance du Post-Traitement

Pour régler les soucis de précision de l'OCR, surtout pour les textes manuscrits, on propose un étape de post-traitement. Cette étape utilise des outils de Traitement du langage naturel (NLP) pour affiner le résultat obtenu de l'OCR. En utilisant le NLP, on peut améliorer la précision du texte reconnu par l'OCR, ce qui donne de meilleurs résultats pour des applis comme le résumé de texte et l'identification de sujet.

État Actuel de la Technologie OCR

La plupart des systèmes OCR utilisent des méthodes d'apprentissage profond, notamment les réseaux de neurones convolutifs (CNN) et les réseaux de neurones récurrents (RNN), pour interpréter les images de texte. Deux modèles OCR populaires actuellement en utilisation sont Tr-OCR et PP-OCR. Tr-OCR utilise une architecture de Transformer pour améliorer la génération de texte à partir d'images, tandis que PP-OCR combine des techniques de détection et de reconnaissance de texte.

Ces deux modèles montrent de bonnes performances avec certains types de données, mais galèrent avec les textes manuscrits à cause de la grande variabilité dans les styles d'écriture.

Défis de l’OCR

Il y a des raisons bien précises pour lesquelles les erreurs OCR surviennent fréquemment, surtout avec des textes manuscrits ou imprimés. Ces défis incluent :

  • Variations dans le type et la taille de la police
  • Différents cas de lettres (comme majuscules et minuscules)
  • Caractères similaires qui peuvent facilement troubler les systèmes, comme 'o' et '0'
  • Changements d’orientation dans le texte, ce qui peut mener à des erreurs de lecture

Ces erreurs peuvent impacter négativement diverses tâches de NLP, notamment comment les systèmes peuvent résumer le texte, taguer les parties du discours ou reconnaître les entités nommées.

Objectif de l'Approche Proposée

Le but de la méthode proposée est de créer un pipeline complet qui traite efficacement du texte manuscrit ou imprimé via l'OCR d'abord, puis améliore sa précision en utilisant des techniques de NLP. Cette approche en deux étapes pourrait réduire significativement les erreurs et améliorer la fiabilité globale de la sortie de texte.

Aperçu du Processus OCR

Au début, deux modèles OCR, Tr-OCR et PP-OCR, ont été évalués sur différents jeux de données contenant du contenu tapé et manuscrit. Le meilleur modèle a été choisi pour reconnaître les textes manuscrits en une seule ligne. La sortie de l'OCR est examinée et affinée grâce à un processus en deux parties composé de segmentation et de classification.

Module A : Le Système OCR

Le module A du système s'occupe de la première partie. Il commence par diviser un document multi-lignes en lignes individuelles, puis classe chaque ligne comme imprimée ou manuscrite. Le modèle OCR choisi traite chaque ligne en conséquence.

Pour segmenter les lignes, une méthode appelée l'algorithme de planification de chemin A* est utilisée. Cela aide à identifier efficacement les lignes de texte, rendant l’info plus facile à lire et à analyser.

Techniques de Segmentation

Le processus de segmentation commence par convertir l'image d'entrée en format en niveaux de gris et à utiliser des filtres pour détecter les contours. Des profils de projection horizontale sont calculés pour trouver des pics qui indiquent où se trouve le texte. En identifiant ces pics, le système peut déterminer où couper les lignes, les séparant en segments distincts pour un traitement ultérieur.

Classification des Lignes de Texte

Après avoir segmenté le document, la prochaine étape est d'identifier si le texte est manuscrit ou imprimé. Un modèle DenseNet-121 modifié sert de classificateur pour cette tâche, qui est entraîné sur divers jeux de données. Cela garantit que chaque ligne est correctement catégorisée pour l’étape OCR.

Évaluation de la Performance OCR

Pour mesurer l’efficacité des modèles OCR, deux indicateurs de performance clés sont utilisés : le Taux d'erreur de caractères (CER) et le Taux d'Erreur de Mots (WER). Le CER se concentre sur le nombre de caractères reconnus correctement, tandis que le WER regarde le nombre de mots.

Module B : Amélioration avec des Techniques NLP

Le module B se concentre sur l'utilisation du NLP pour améliorer la sortie du processus OCR. Plusieurs modèles NLP peuvent être employés à cette fin, chacun capable d'affiner le texte reconnu.

Modèles NLP Clés

  1. T5 (Text-To-Text Transfer Transformer) : Ce modèle fonctionne sur un cadre simple d'encodeur-décodeur, le rendant polyvalent pour différentes tâches.
  2. ByT5 : Contrairement aux modèles traditionnels qui s'appuient sur des tokens, ByT5 fonctionne directement avec du texte brut, ce qui le rend adaptable à de nombreuses langues sans avoir besoin de tokenizers spécifiques.
  3. BART : Fonctionne comme un autoencodeur de débruitage, qui apprend à recréer le texte original à partir d'entrées corrompues, améliorant ainsi la qualité des sorties OCR.

Génération de Jeux de Données Synthétiques

Pour entraîner efficacement ces modèles, des jeux de données synthétiques sont créés pour imiter les défis réels auxquels sont confrontés les systèmes OCR. Cela inclut l'introduction délibérée d'erreurs de caractères dans les textes, permettant aux modèles d'apprendre à corriger ces erreurs courantes.

Post-Tratement des Sorties

Une fois que les modèles NLP analysent le texte OCR, ils travaillent sur la correction des erreurs d'espacement et d'orthographe. En appliquant des méthodes statistiques, tirant spécifiquement de la loi de Zipf, les modèles peuvent déterminer où les mots doivent être espacés correctement.

Résultats du Pipeline

Après avoir mis en place le pipeline proposé, il a été testé sur divers jeux de données. Par exemple, le modèle Tr-OCR a systématiquement surpassé le PP-OCR dans la plupart des tests, sauf pour les plaques d'immatriculation, où le PP-OCR a excellé.

L'étape de post-traitement a également montré des améliorations significatives, réduisant considérablement les scores CER et WER. Par exemple, dans des jeux de données synthétiques, le WER a diminué d'un score initial élevé à un score beaucoup plus bas après l'application des techniques NLP.

Conclusion et Travaux Futurs

Les résultats confirment que l'approche en deux étapes utilisant l'OCR avec le NLP peut améliorer drastiquement la précision de reconnaissance de texte. Bien que les techniques fonctionnent bien pour la plupart des jeux de données, il reste encore des améliorations à apporter, surtout pour l'OCR sur des documents inclinés. Un ajustement supplémentaire est également nécessaire pour des applications spécifiques comme la reconnaissance de plaques d'immatriculation.

En conclusion, l'intégration du NLP avec l'OCR a un énorme potentiel pour améliorer la précision et l'utilité des technologies de reconnaissance de texte dans divers domaines.

Source originale

Titre: A Novel Pipeline for Improving Optical Character Recognition through Post-processing Using Natural Language Processing

Résumé: Optical Character Recognition (OCR) technology finds applications in digitizing books and unstructured documents, along with applications in other domains such as mobility statistics, law enforcement, traffic, security systems, etc. The state-of-the-art methods work well with the OCR with printed text on license plates, shop names, etc. However, applications such as printed textbooks and handwritten texts have limited accuracy with existing techniques. The reason may be attributed to similar-looking characters and variations in handwritten characters. Since these issues are challenging to address with OCR technologies exclusively, we propose a post-processing approach using Natural Language Processing (NLP) tools. This work presents an end-to-end pipeline that first performs OCR on the handwritten or printed text and then improves its accuracy using NLP.

Auteurs: Aishik Rakshit, Samyak Mehta, Anirban Dasgupta

Dernière mise à jour: 2023-07-09 00:00:00

Langue: English

Source URL: https://arxiv.org/abs/2307.04245

Source PDF: https://arxiv.org/pdf/2307.04245

Licence: https://creativecommons.org/licenses/by/4.0/

Changements: Ce résumé a été créé avec l'aide de l'IA et peut contenir des inexactitudes. Pour obtenir des informations précises, veuillez vous référer aux documents sources originaux dont les liens figurent ici.

Merci à arxiv pour l'utilisation de son interopérabilité en libre accès.

Plus d'auteurs

Articles similaires