IAPythonFlaskTensorFlowMachineLearningTesseract

SnapOCR

Tuesday, June 6, 2023

GitHub

Extraction de texte à partir d'images – De l'IA à Tesseract

Projet : Développement d’une plateforme web d'OCR permettant d'extraire du texte depuis des images
Technologies principales : Python (Flask), Tesseract OCR (anciennement TensorFlow)

Origine du projet

Ce projet a débuté comme une expérimentation en machine learning, où l’objectif était de concevoir une IA capable d’extraire du texte depuis des images à l’aide de TensorFlow. Dans une première version, nous avons réussi à entraîner un modèle pour extraire uniquement des chiffres avec une précision correcte, mais des limites sont rapidement apparues pour la reconnaissance de texte plus complexe.

Face à ces défis et dans une volonté d’améliorer la précision et l’efficacité du système, nous avons décidé de remplacer l'IA par Tesseract OCR de Google, une solution spécialisée et optimisée pour l'extraction de texte à partir d’images.

Présentation de la version actuelle

L’application a évolué vers une plateforme web en Flask, permettant aux utilisateurs d’importer une image et de récupérer le texte extrait en quelques secondes. Un système de gestion de compte a été ajouté pour permettre l’enregistrement des extractions et améliorer l’expérience utilisateur.

Fonctionnalités clés

Importation et traitement d'images via une interface web ergonomique
Extraction de texte précise avec Tesseract OCR
Système de gestion des utilisateurs (inscription, connexion, historique des extractions)
Possibilité d’exporter le texte extrait

Pourquoi ce choix technologique ?

TensorFlow (ancienne version) :

  • Bon pour l'extraction de chiffres, mais limité pour du texte varié
  • Besoin d’un entraînement coûteux en données et en puissance de calcul

Tesseract OCR (version actuelle) :
Meilleure précision pour une large variété de textes
Support multilingue natif
Performance optimisée sans entraînement complexe

Objectif du projet

Ce projet a été une excellente opportunité d’explorer les limites du machine learning dans l'OCR, et d’optimiser l’extraction de texte en utilisant un moteur éprouvé comme Tesseract. L’intégration dans une plateforme web complète avec Flask a également permis de proposer une solution simple, rapide et efficace aux utilisateurs.