OCR

Installer Tesseract OCR sur Linux

Installer Tesseract OCR sur Linux

Tesseract : Une solution OCR gratuite

introduction

Tessereact est considéré comme l'une des meilleures solutions OCR disponibles. Depuis 2006, il est sponsorisé par Google, auparavant il était développé par Hewlett Packard en C et C++ entre 1985 et 1998.   Le système est capable d'identifier même l'écriture manuscrite, il peut apprendre en augmentant sa précision et est parmi les plus développés et les plus complets du marché.

Il bat facilement des concurrents commerciaux comme ABBY, si vous recherchez une solution sérieuse pour l'OCR, Tesseract est la plus précise, mais ne vous attendez pas à des solutions massives : il utilise un cœur par processus, ce qui signifie un processeur 8 cœurs (hyperthreading accepté) pourra traiter 8 ou 16 images simultanément.

Lorsque j'ai utilisé Tesseract, nous avons géré des milliers de clients potentiels mettant en ligne du contenu manuscrit, des images avec du texte, etc. Nous avons utilisé 48 serveurs core, avec DatabaseByDesign puis avec AWS, nous n'avons jamais eu de problème de ressources.

Nous avions un téléchargeur qui distinguait les fichiers texte comme les fichiers Microsoft Office ou Open Office et les images ou les documents numérisés. L'uploader a déterminé quels que soient les scripts OCR ou PHP qui traiteraient une commande, dans le domaine de la reconnaissance de texte.

Tesseact est une excellente solution, mais avant d'y penser, vous devez savoir que les dernières versions de Tesseract ont apporté de grandes améliorations, certaines d'entre elles nécessitent un travail acharné. Alors que la formation peut durer des heures ou des jours, la formation des versions récentes de Tesserct peut durer des jours, des semaines, voire des mois si vous recherchez une solution OCR multilingue.


Installation de Tesseract 4 sur Debian/Ubuntu :

apt-get install tesseract-ocr

Si vous utilisez une distribution Linux différente, vous devrez copier la dernière version du référentiel github et copier le .fichier formédata dans 'tessdata' (/usr/share/tesseract-ocr/tessdata ou /usr/share/tessdata).

Par défaut, Tesseract installera le pack de langue anglais, pour installer des langues supplémentaires, exécutez

apt-get install tesseract-ocr-LANG

par exemple, pour ajouter l'hébreu :

apt-get install tesseract-ocr-heb

Vous pouvez inclure toutes les langues en exécutant:

apt-get install tesseract-ocr-all

Pour que Tesseract fonctionne correctement, nous devrons utiliser la commande « convertir » (convertir entre les formats d'image ainsi que redimensionner une image, flouter, recadrer, éliminer les taches, tramer, dessiner, retourner, joindre, rééchantillonner bien plus) fourni par Imagemagick :

Installons imagemagick avec apt-get :

apt-get installer imagemagick

Testons maintenant Tesseract, trouvons une image contenant du texte et exécutons :

tesseract [nom_image] [nom_fichier de sortie]

S'il est installé correctement, Tesseract extraira le texte de l'image.

Quand je travaillais avec Tesseract, tout ce dont nous avions besoin était de compter les documents. Comme avec n'importe quel autre programme, vous pouvez et devez l'entraîner, dans Word, nous pouvons définir des symboles qui peuvent être comptés ou non, si compter ou non des nombres, etc. pareil avec Tesseract.

Nous pouvons également entraîner sa sensibilité à des images spécifiques.


Optimisation de Tesseract :

Optimisation de la taille : Selon des sources officielles, la taille de pixels optimale pour qu'une image soit traitée avec succès par Tesseract est de 300 DPI. Nous devrons traiter n'importe quelle image en utilisant le paramètre -r pour appliquer ce DPI. L'augmentation du DPI augmentera également le temps de traitement.

Rotation des pages : Si lors de la numérisation, la page n'a pas été correctement tournée et reste à 180° ou 45°, la précision de Tesseract diminuera, vous pouvez utiliser ce script Python pour détecter et résoudre automatiquement les problèmes de rotation.

Suppression des frontières : Selon l'homme officiel de Tesseract, les bordures peuvent être choisies à tort en tant que caractères, en particulier les bordures sombres et où il y a une variété de gradations. La suppression des bordures peut être une bonne étape pour atteindre la précision maximale avec Tesseract.

Suppression du bruit : Selon Tesseracts, le bruit "est une variation aléatoire de luminosité ou de couleur dans une image". Nous pouvons le supprimer dans le binarisation étape, ce qui signifie polariser ses couleurs.


Tesseract d'entraînement :

Alors que la plupart des tutoriels ne couvrent que l'installation de Tesseract, je vais résumer comment former votre système OCR, ici nous pouvons trouver un tutoriel pour toutes les versions. Dans cet article, je vais résumer comment entraîner Tesseract 4 qui comprend un nouveau « un moteur de reconnaissance basé sur un réseau de neurones qui offre une précision (sur les images de documents) nettement supérieure à celle des versions précédentes, en échange d'une augmentation significative de la puissance de calcul requise. Sur les langages complexes cependant, il peut en fait être plus rapide que Tesseract de base."

Avant de continuer, nous devrons installer des bibliothèques supplémentaires :

sudo apt-get install libicu-dev
sudo apt-get installer libpango1.0-dev
sudo apt-get install libcairo2-dev

Et nous allons installer les outils de formation en exécutant, dans le répertoire Tesseract :

Fabriquer
faire de la formation
sudo make training-install

Selon le wiki officiel de Tesseract, nous avons actuellement 3 options pour entraîner notre système OCR :

Bien que les options ci-dessus puissent sembler différentes, les étapes de formation sont en fait presque identiques, à l'exception de la ligne de commande, il est donc relativement facile de l'essayer de toutes les manières, étant donné le temps ou le matériel pour les exécuter en parallèle."

Dans ce tutoriel, nous n'exécuterons que le tesstrain.script sh qui appellera les programmes nécessaires pour entraîner un langage spécifique.

Tout d'abord, clonez tous les fichiers dans notre /usr/share/tesseract-ocr :

git clone https://github.com/tesseract-ocr/tesseract

Accédez à /usr/share/tesseract-ocr/tesseract/training (répertoire d'installation par défaut de Tesseract) et exécutez :

$ ./tester.sh --lang heb --langdata_dir /usr/share/tesseract-ocr/langdata --tessdata_dir /usr/share/tesseract-ocr/tessdata 

Changez "heb" pour la langue que vous souhaitez former, et modifiez également le chemin d'accès à vos données.

Au sein de l'annuaire /usr/share/tesseract-ocr/tesseract/training vous trouverez le fichier spécifique à la langue.sh utile pour ajouter des règles pour des langues spécifiques.


Dépannage

Tesseract est pour moi la meilleure solution OCR, mais récemment, il a apporté d'énormes changements par rapport aux versions précédentes et de nombreux utilisateurs se plaignent de changements ou de choses qui ne fonctionnent plus, je ne m'inquiéterais pas car les changements semblent donner d'excellents résultats. La communauté de Tesseract est très active, si vous rencontrez des problèmes lors de l'exécution de Tesseract, rejoignez la communauté de Tesseract ici.

Comment télécharger et jouer à Civilization VI de Sid Meier sur Linux
Présentation du jeu Civilization 6 est une version moderne du concept classique introduit dans la série de jeux Age of Empires. L'idée était assez sim...
Comment installer et jouer à Doom sur Linux
Introduction à Doom La série Doom est née dans les années 90 après la sortie du Doom original. Ce fut un succès instantané et à partir de ce moment-là...
Vulkan pour les utilisateurs Linux
Avec chaque nouvelle génération de cartes graphiques, nous voyons les développeurs de jeux repousser les limites de la fidélité graphique et se rappro...