Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
tesseract-ocr [Le 23/11/2015, 00:33]
50.7.202.98 [Utilisation avancée : Amélioration de la reconnaissance] Mise à jour du lien
tesseract-ocr [Le 11/09/2022, 12:16] (Version actuelle)
moths-art Suppression des espaces en fin de ligne (détecté et corrigé via le bot wiki-corrector (https://forum.ubuntu-fr.org/viewtopic.php?id=2067892)
Ligne 1: Ligne 1:
-{{tag>Precise ​Trusty ocr}}+{{tag>Xenial ​Trusty ocr bureautique}}
  
 ---- ----
  
-====== Tesseract ======+====== Tesseract ​OCR ======
  
-**Tesseract** est un moteur de [[:​ocr|reconnaissance optique de caractères (ROCOCR)]] qui a été conçu par les ingénieurs de Hewlett Packard(r) de 1984 à 1995, avant d'​être abandonné. Après 10 ans de purgatoire, son code est ouvert en 2005, et le développement est repris sous la houlette de Google. Les premiers résultats sont prometteurs. Enfin un bon logiciel libre d'OCR sous %%GNU/​Linux%%?​ L'​avenir nous le dira... Il permet déjà d'​obtenir une reconnaissance optique de qualité sur un certain nombre de documents (sans mise en page complexe).+**Tesseract ​OCR** est un moteur de [[:​ocr|reconnaissance optique de caractères ​]] (acronymie : ROC ou OCR en Anglais) qui a été conçu par les ingénieurs de Hewlett Packard<​sup>​®</​sup> ​de 1984 à 1995, avant d'​être abandonné. ​\\ Après 10 ans de purgatoire, son code est ouvert en 2005, distribué sous [[wpfr>​Licence Apache]], et le développement est repris sous la houlette de Google. ​\\ Les premiers résultats sont prometteurs. ​\\ Enfin un bon logiciel libre d'OCR sous %%GNU/​Linux%%?​ L'​avenir nous le dira… Il permet déjà d'​obtenir une reconnaissance optique de qualité sur un certain nombre de documents (sans mise en page complexe)
 + 
 +La page de la documentation sur [[https://​github.com/​tesseract-ocr/​tesseract/​blob/​master/​README.md|Github]].
  
 Tesseract a pour vocation d'​être utilisé : Tesseract a pour vocation d'​être utilisé :
-  * soit directement,​ en ligne de commandes soit par l'​intermédiaire d'une interface graphique comme gscan2pdf ou xsane (+xsane2tess),​ pour reconnaitre ​du texte avec mise en page basique ; cet usage est déjà fonctionnel. +  * soit directement,​ en ligne de commandes soit par l'​intermédiaire d'une interface graphique comme [[gscan2pdf|gscan2pdf]] ​ou [[xsane|xsane]] ​(cf. aussi [[xsane2tess|xsane2tess]]), pour reconnaître ​du texte avec mise en page basique ; cet usage est déjà fonctionnel. 
-  * soit avec des surcouches gérant les mises en page complexes, etc., comme [[:​ocropus]] (encore en version beta). +  * soit avec des surcouches gérant les mises en page complexes, etc., comme [[:​ocropus]] (encore en [[wpfr>Version_d'​un_logiciel#​Version_b.C3.AAta|Version Bêta ou β-test]]).
- +
-Tesseract est distribué sous licence Apache, c'​est-à-dire en gros qu'il est Open Source mais pas [[wpfr>Copyleft|copyleft]]. +
- +
-===== Pré-requis ===== +
-  * Disposer des [[:​sudo|droits d'​administration]]+
-  * Disposer d'une connexion à Internet configurée et activée.+
  
 ===== Installation ===== ===== Installation =====
 [[:​tutoriel:​comment_installer_un_paquet|Installez les paquets]] **[[apt>​tesseract-ocr]]** et pour reconnaître la langue française, **[[apt>​tesseract-ocr-fra]]**. \\ [[:​tutoriel:​comment_installer_un_paquet|Installez les paquets]] **[[apt>​tesseract-ocr]]** et pour reconnaître la langue française, **[[apt>​tesseract-ocr-fra]]**. \\
-Il existe d'​autres fichiers de langues, comme par exemple :  +Il existe d'​autres fichiers de langues, comme par exemple : 
-  * **[[apt>​tesseract-ocr-deu]]** (allemand),  +  * **[[apt>​tesseract-ocr-deu]]** (allemand),​ 
-  * **[[apt>​tesseract-ocr-eng]]** (anglais),  +  * **[[apt>​tesseract-ocr-eng]]** (anglais),​ 
-  * **[[apt>​tesseract-ocr-spa]]** (espagnol),  +  * **[[apt>​tesseract-ocr-spa]]** (espagnol),​ 
-  * **[[apt>​tesseract-ocr-nld]]** (hollandais),​  +  * **[[apt>​tesseract-ocr-nld]]** (hollandais),​ 
-  * **[[apt>​tesseract-ocr-ita]]** (italien),  +  * **[[apt>​tesseract-ocr-ita]]** (italien),​ 
-  * **[[apt>​tesseract-ocr-por]]** (portugais-brésilien), ​ +  * **[[apt>​tesseract-ocr-por]]** (portugais-brésilien),​
   * **[[apt>​tesseract-ocr-vie]]** (vietmamien),​   * **[[apt>​tesseract-ocr-vie]]** (vietmamien),​
-  * **[[apt>​tesseract-ocr-deu-f]]** (vieil-allemand). ​+  * **[[apt>​tesseract-ocr-deu-f]]** (vieil-allemand).
  
 ===== Utilisation ===== ===== Utilisation =====
 +<note important>​les scanners numérisent souvent avec une résolution suffisante pour la lecture à l'​écran mais insuffisante pour une reconnaissance efficace.
 +
 +Il faut donc numériser au moins à **300 voire 600 ppp** (Point Par Pouce ou DPI)
 +
 +Quant au type de fichier, le format [[wpfr>​Tagged_Image_File_Format|tiff]] est mieux reconnu, ainsi un document tiff en 300ppp est intégralement reconnu alors qu'au format JPEG, toujours en 300ppp, seules les lettres majuscules sont reconnues</​note>​
 +
 +======= Erreur à l'​utilisation =====
 +Si vous obtenez ce message :
 +
 +Error opening data file /​home/<​repertoire personnel>/​snap/​tesseract/​common/​Error opening data file /​home/<​repertoire personnel>/​snap/​tesseract/​common/​eng.traineddata.traineddata
 +Please make sure the TESSDATA_PREFIX environment variable is set to your "​tessdata"​ directory.
 +Failed loading language 'Error opening data file /​home/<​repertoire personnel>/​snap/​tesseract/​common/​eng.traineddata'​
 +Tesseract couldn'​t load any languages!
 +Could not initialize tesseract.
 +
 +Copier le répertoire « tesseract-ocr ». Depuis usr/​share/ ​ →  vers usr/​local/​share/​
 +
 +Les fichiers de langues se trouve à cette emplacement :​
 +usr/​local/​share/​tesseract-ocr/​4.00/​tessdata
 +
 ==== En ligne de commande ==== ==== En ligne de commande ====
  
 Dans un [[:​terminal]],​ Entrez la [[:​commande_shell|commande]] suivante :  Dans un [[:​terminal]],​ Entrez la [[:​commande_shell|commande]] suivante : 
 <​code>​tesseract ~/<​nom_de_l_image.tif>​ <​nom_du_fichier_de_sortie_sans_l_extension>​ -l fra</​code>​ <​code>​tesseract ~/<​nom_de_l_image.tif>​ <​nom_du_fichier_de_sortie_sans_l_extension>​ -l fra</​code>​
 +le fichier de sortie sera au format texte .txt … on perd donc la mise en page!
 +
 +Pour traiter plusieurs fichiers, vous pouvez faire :
 +<​code>​for i in *.jpg ; do tesseract -l fra $i $i.txt; ​ done;</​code>​
 +
 +Pour traiter un pdf image de plusieurs pages :
 +<​code>​pdftoppm -r 300 -tiff texte.pdf texte
 +for f in *.tif;do tesseract $f $f -l fra;done
 +cat *.txt > document.txt</​code>​
 +
  
 ==== Les options de langues ==== ==== Les options de langues ====
Ligne 40: Ligne 66:
 -l eng (pour l'​anglais) -l eng (pour l'​anglais)
 -l deu (pour l'​allemand) -l deu (pour l'​allemand)
 +-l epo (pour l'​espéranto)
 -l spa (pour l'​espagnol) -l spa (pour l'​espagnol)
 -l ita (pour l'​italien) -l ita (pour l'​italien)
Ligne 48: Ligne 75:
 </​code>​ </​code>​
  
 +La liste des langues est disponible sur la [[https://​github.com/​tesseract-ocr/​tesseract/​wiki/​Data-Files|documentation du logiciel sur github]]
 +
 +Vous pouvez aussi indiquer que les pages contiennent plusieurs langues différentes en indiquant **-l fra+epo** par exemple pour des images qui contiennent du texte en français et du texte en espéranto.
 ==== En mode graphique avec « gscan2pdf » ==== ==== En mode graphique avec « gscan2pdf » ====
 Les explications sont données sur [[:​gscan2pdf|la page gscan2pdf]]. Les explications sont données sur [[:​gscan2pdf|la page gscan2pdf]].
Ligne 54: Ligne 84:
 Il est possible d'​utiliser directement tesseract avec l'​application de numérisation [[:XSane]] grâce à l'​adaptateur [[:​xsane2tess]]. Il est possible d'​utiliser directement tesseract avec l'​application de numérisation [[:XSane]] grâce à l'​adaptateur [[:​xsane2tess]].
  
-<note tip>Pour réaliser de la ROC sur un document déjà numérisé, on utilise gscan2pdf. ​Pour réaliser de la ROC sur un document à numériser, on utilise plutôt XSane, dont la fonction de prévisualisation permet de sélectionner des zones de texte.</​note>​+<note tip>Pour réaliser de la Reconnaissance optique de caractères : 
 +  * sur un document déjà numérisé, on utilise ​[[gscan2pdf|gscan2pdf]]. 
 +  * sur un document à numériser, on utilise plutôt ​[[xsane|XSane]], dont la fonction de prévisualisation permet de sélectionner des zones de texte. 
 + 
 +</​note>​ 
 +==== En mode graphique avec YAGF ==== 
 +Les explications sont données sur [[:yagf|la page YAGF]]. 
 + 
 +==== En mode graphique avec gimagereader ==== 
 +Les explications sont données sur [[:​gimagereader|la page gimagereader]].
  
 ==== Pour une reconnaissance optique directe dans LibreOffice Writer de fichiers PNG ou JPG ==== ==== Pour une reconnaissance optique directe dans LibreOffice Writer de fichiers PNG ou JPG ====
Ligne 61: Ligne 100:
  
 == pour les documents PNG == == pour les documents PNG ==
-  - [[:​tutoriel:​comment_modifier_un_fichier|Créez un fichier texte]] que vous nommez par exemple "​Tesseract-png2lofficewriter":<​file>​+  - [[:​tutoriel:​comment_modifier_un_fichier|Créez un fichier texte]] que vous nommez par exemple "​Tesseract-png2lofficewriter"​ :​ <​file ​bash Tesseract-png2lofficewriter>
 #!/bin/bash #!/bin/bash
 cd ~/Bureau cd ~/Bureau
Ligne 81: Ligne 120:
 Pour créer un raccourci de votre script, reportez-vous à la page de création de [[:​raccourci-lanceur|lanceurs]] ou à [[:​unity_launcher|celle-ci]] pour Unity, puis complétez comme suit: Pour créer un raccourci de votre script, reportez-vous à la page de création de [[:​raccourci-lanceur|lanceurs]] ou à [[:​unity_launcher|celle-ci]] pour Unity, puis complétez comme suit:
   - Donnez-lui un nom par exemple : "​Tesseract-png2lofficewriter",​ ou plus court "​Tesseract-PNG2LOW"​   - Donnez-lui un nom par exemple : "​Tesseract-png2lofficewriter",​ ou plus court "​Tesseract-PNG2LOW"​
-  - Pointez vers le script en question, c'est à dire le fichier texte "​Tesseract-png2lofficewriter"​ rendu exéctuable ​(commande : allez chercher votre script par le bouton "​parcourir"​),​ +  - Pointez vers le script en question, c'est à dire le fichier texte "​Tesseract-png2lofficewriter"​ rendu exécutable ​(commande : allez chercher votre script par le bouton "​parcourir"​),​ 
-  - Vous pouvez utiliser cette icône {{:​applications:​tesseract:​tesseract-ocr-png.jpg?​100}} pour le script "​Tesseract-PNG2LOW"​ et celle-ci {{:​applications:​tesseract:​tesseract-ocr-jpg.jpg?​100}} pour le script "​Tesseract-JPG2LOW"​.+  - Vous pouvez utiliser cette icône {{:​applications:​tesseract:​tesseract-ocr-png.jpg?​100|icone Tesseract OCR PNG}} pour le script "​Tesseract-PNG2LOW"​ et celle-ci {{:​applications:​tesseract:​tesseract-ocr-jpg.jpg?​100|icone Tesseract OCR JPG}} pour le script "​Tesseract-JPG2LOW"​.
   - Vous pouvez ajouter un commentaire,​ mais ce n'est pas indispensable.   - Vous pouvez ajouter un commentaire,​ mais ce n'est pas indispensable.
  
Ligne 88: Ligne 127:
   - Enlevez du bureau les fichiers PNG sur lesquels vous ne voulez pas faire de ROC.   - Enlevez du bureau les fichiers PNG sur lesquels vous ne voulez pas faire de ROC.
   - Placez sur le bureau vos fichiers numérisés au format PNG (le mieux est un PNG en valeurs de gris et 300 dpi avec Xsane, mais vous pouvez essayer avec d'​autres PNG déjà numérisés),​   - Placez sur le bureau vos fichiers numérisés au format PNG (le mieux est un PNG en valeurs de gris et 300 dpi avec Xsane, mais vous pouvez essayer avec d'​autres PNG déjà numérisés),​
-  - Vous pouvez placer sur le bureau plusieurs fichiers PNG sur lesquels vous voulez procéder à la reconnaissance optiquemais ne dépassez pas 3-4 fichiers si vous voulez une opération relativement rapide. Les contenus des différents fichiers seront placés les uns à la suite des autres dans un même document Libreoffice. +  - Vous pouvez placer sur le bureau plusieurs fichiers PNG sur lesquels vous voulez procéder à la reconnaissance optiquemais ne dépassez pas 3-4 fichiers si vous voulez une opération relativement rapide. ​\\ Les contenus des différents fichiers seront placés les uns à la suite des autres dans un même document Libreoffice. 
-  - Cliquez sur le raccourci précédemment créé ou directement sur le script... patientez un peu... Libreoffice s'​ouvrira avec le contenue ​du texte tel qu'il a été reconnu+  - Cliquez sur le raccourci précédemment créé ou directement sur le script... patientez un peu... Libreoffice s'​ouvrira avec le contenu ​du texte tel qu'il a été reconnu
   - Il vous reste a effectuer les corrections orthographiques et la mise en page.   - Il vous reste a effectuer les corrections orthographiques et la mise en page.
  
-Même méthode pour les fichiers au format JPG, en utilisant l'​outil "​Tesseract-jpg2lofficewriter"​.+Même méthode pour les fichiers au format JPG, en utilisant l'​outil "​Tesseract-jpg2lofficewriter" ​créé précédemment. 
 + 
 +N.B. : au passage, un document ''​sortie.tif''​ et un document ''​sortie.txt''​ sont placés sur le bureau; ce sont des documents transitoires créés par le script. On peut les effacer en ayant au préalable enregistré le document texte dans un autre dossier. 
 + 
 +==== Autre méthode : pour une reconnaissance optique directe d'un ou plusieurs fichiers PNG ou JPG dans Nautilus ==== 
 + 
 + - [[:​tutoriel:​comment_modifier_un_fichier|Créez un fichier texte]] que vous nommez par exemple "​OCR"​ dans le dossier des [[:​nautilus_scripts|scripts-Nautilus]] (normalement : ~/​.local/​share/​nautilus/​scripts) :<file bash  ~/​.local/​share/​nautilus/​scripts/​OCR>​ 
 +#!/bin/sh
  
-N.B. : au passageun document sortie.tif et un document sortie.txt sont placés sur le bureauce sont des documents transitoires créés par le script. On peut les effacer en ayant au préalable enregistré le document texte dans un autre dossier.+mypath="​`pwd`"​ 
 +for filename in "​$@"​ 
 +do 
 +if [ -n "$*,?" ];then 
 +    tesseract "​$mypath/​$filename"​ "​${filename%%.*}" -l fra 
 +fi 
 +done {} 
 +exit 0</​file>​
  
 +- [[:​tutoriel:​script_shell#​methode_graphique|Rendez exécutable]] ce fichier.
  
 +Dans Nautilus vous pouvez désormais sélectionner un ou plusieurs fichiers PNG et/ou JPG, faites un clic droit et exécutez le script "​OCR"​. Chaque fichier txt extrait de tesseract aura le nom du fichier d'​origine avec l'​extension .txt
 =====Utilisation avancée : Amélioration de la reconnaissance ===== =====Utilisation avancée : Amélioration de la reconnaissance =====
  
-Si vous souhaitez améliorer la ROC vous trouverez des explications sur le [[https://​github.com/​tesseract-ocr/​tesseract/​wiki/​TrainingTesseract| ​site "​tesseract-ocr"​]] ​(en).+Si vous souhaitez améliorer la reconnaissance optique de caractères ​vous trouverez des explications sur le site **(en)** ​[[https://​github.com/​tesseract-ocr/​tesseract/​wiki/​TrainingTesseract|Wiki de "​tesseract-OCR"]] .
  
 =====Désinstallation===== =====Désinstallation=====
Ligne 109: Ligne 164:
   * [[https://​github.com/​tesseract-ocr/​tesseract/​wiki|Site officiel]]   * [[https://​github.com/​tesseract-ocr/​tesseract/​wiki|Site officiel]]
   * [[http://​www.repairfaq.org/​filipg/​gnu/​tesseract/​html-102_03/​|Documentation pour contribuer au code (en anglais)]]   * [[http://​www.repairfaq.org/​filipg/​gnu/​tesseract/​html-102_03/​|Documentation pour contribuer au code (en anglais)]]
-  * [[http://​forum.ubuntu-fr.org/​viewtopic.php?​id=78804|le fil de discussion du forum]]+  * [[https://​forum.ubuntu-fr.org/​viewtopic.php?​id=78804|le fil de discussion du forum]] ​Open Office, Reconnaissance de caractères,​ Xsane, Kooka et Cie...
   * [[https://​github.com/​tesseract-ocr/​tesseract/​wiki/​TrainingTesseract|La page où on parle de l'​apprentissage avec tesseract (anglais)]]   * [[https://​github.com/​tesseract-ocr/​tesseract/​wiki/​TrainingTesseract|La page où on parle de l'​apprentissage avec tesseract (anglais)]]
   * [[:ocr|La page de la documentation francophone Ubuntu sur la reconnaissance optique de caractères]]   * [[:ocr|La page de la documentation francophone Ubuntu sur la reconnaissance optique de caractères]]
-  * [[http://ubunteros.tuxfamily.org/spip.php?​article148 ​|Le duo scan2pdf ​et tesseract ​sur Linux on the Root (en français)]]+  * [[https://gist.github.com/stesie/​42dff3d14fbfac60524f381babb8f81d|script « scan2pdf+ocr.sh » sur le GITHUB]]
  
 ---- ----
  
-//​Contributeurs : [[:​utilisateurs:​teolemon|Pierre S.]], [[:​utilisateurs:​Hector]] et [[:​utilisateurs:​Sorbus]].//​+//​Contributeurs : [[:​utilisateurs:​teolemon|Pierre S.]], [[:​utilisateurs:​Hector]] et [[:​utilisateurs:​Sorbus]], [[:​utilisateurs:​eagle08]] : liens.//
  • tesseract-ocr.1448235216.txt.gz
  • Dernière modification: Le 23/11/2015, 00:33
  • par 50.7.202.98