Voici comment utiliser l’OCR (reconnaissance de caractères) avec Xsane sous Ubuntu hardy.
Il faut tout d’abord installer Xsane, imagemagick (avec synaptic ou apt-get) et tesseract. Pour installer ce dernier, il faut utiliser le tutoriel situé ici. Faites bien attention à suivre le tutoriel « Par les deb de « b52″ (32 et 64 bits) ».
Afin d’interfacer Xsane et tesseract, il faut un script. J’en ai trouvé un nommé xsane2tess mais il ne fonctionne pas chez moi. J’en ai donc créé un autre que vous pouvez installer comme ceci:
[code lang="bash"]
cd /usr/bin
sudo wget http://www.equinoxefr.org/wp-content/uploads/2008/07/xsane2tess.pl
sudo chmod +x xsane2tess.pl
[/code]
Ensuite lancez Xsane et allez dans Préférence / Configuration (ALT+s) pour entrer les options suivantes
Après avoir validé les bonnes options, il faut mettre les paramètres Sane comme suit:
- Mode enregistrer
- Nom de fichier sans extension
- Type de fichier TXT
- Mode de scan: GRIS
- Résolution: 300 dpi donne de bons résultats
- Sélectionnez la zone de texte
- La sélection
- Effectuez une rotation si nécessaire
- Lancez le scan
Voilà, vous avez maintenant un beau fichier TXT qu’il vous faudra vérifier avec openoffice et son correcteur d’orthographe par exemple.
Les résultat sont assez étonnants, j’avais essayé GOCR il y a quelques temps mais j’en étais très déçu. Là, il y a avec tesseract, une véritable alternative aux outils propriétaires.
Bonne OCR



23 comments
FredBezies
6 juillet 2008 à 5:23 (UTC 1)
J’utilisais auparavant gscan2pdf, mais cette solution semble plus légère.
Merci pour l’info et le fichier perl
Jean Pierre C
6 août 2008 à 9:30 (UTC 1)
Bonjour,
et mille fois merci pour ce tuto trés explicite qui fonctionne à merveille, sans difficultés.
Sylvain F
17 août 2008 à 4:54 (UTC 1)
Bonjour,
Je suis sur Debian sarge. Les paquets tesseract, imagemagick sont installés. Xsane fonctionne. J’ai suivi vos instructions à part le rep d’install /usr/local/bin.
Mais aucun fichier txt ne sort. J’ai pourtant vérifié le rep de sortie. Existe-t-il un moyen de voir si il y a des erreurs à la reconnaissance? Avec gocr j’avais une sortie, mais inexploitable.
Merci
EquinoxeFR
18 août 2008 à 6:15 (UTC 1)
Bonjour @Sylvain F,
Avez vous installé tesseract « debian » ou comme moi la version « b52″ ? Chez moi je n’ai pas de résultat avec la version Ubuntu, ça ne marche qu’en installant la version B52. Sinon le log par défaut est dans /tmp/tesseract.log
Sylvain F
20 août 2008 à 9:52 (UTC 1)
Merci pour ces précisions.
1. J’ai pu installer le deb b52 avec dpkg (j’aurais préféré utiliser synaptic car je ne suis pas un expert et donc pas à l’aise avec les pbs de dépendances).
2. J’ai lancé xsane à partir de la ligne de commande. J’ai vu ça sur les forums pour visualiser les messages d’erreur :
Unknown option: x
tesseract: /usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.9′ not found (required by tesseract)
je n’arrive pas à trouver de sol sur les forums. Help!
nemea
19 janvier 2009 à 12:32 (UTC 1)
bonjour j’essaie d’utiliser votre méthode mais je n’y arrive pas je suis débutante je précise, voila le message que j’obtiens :
Erreur de processus enfant
failed to execute ocr command:
xsane 2tess pl-l fra-log/tmp/tesseract log:
aucun fichier ou dossier de ce type
pouvez vous m’aider
merci d’avance
EquinoxeFR
19 janvier 2009 à 7:25 (UTC 1)
@nemea, a priori c’est peut être du à l’espace entre xsane et 2tess.
Normalement la commande est:
xsane2tess.pl -l fra -log /tmp/tesseract.log
EquinoxeFR
19 janvier 2009 à 7:27 (UTC 1)
Je précise, avec Ubuntu intrepid, il n’y a pas besoin des dépots b52. Un simple « apt-get install tesseract tesseract-fra » est suffisant.
nemea
19 janvier 2009 à 9:35 (UTC 1)
merci je viens d’essayer et voila la réponse en console
E: Impossible d’ouvrir le fichier verrou /var/lib/dpkg/lock – open (13 Permission non accordée)
E: Unable to lock the administration directory (/var/lib/dpkg/), are you root?
je me bats avec cela depuis plusieurs jours c’est frustrant
d’autant plus que je ne parle pas anglais
je vais tout réinstaller mais j’aimerais savoir ce que veut dire le message ci dessus
merci d’avance
Némea
EquinoxeFR
19 janvier 2009 à 9:51 (UTC 1)
@nemea, tu n’as pas les droits d’installer tesseract. Pour le faire, il faut être super utilisateur. Essaye ça:
« sudo apt-get install tesseract tesseract-fra »
nemea
20 janvier 2009 à 7:40 (UTC 1)
bonsoir
merci encore je ne sais pas comment j’ai fait mais cela fonctionne sur un petit morceau de texte je crois que c’est un coup de chance car vraiment je cafouille , mais ton aide a été précieuse ceci dit l’ocr n’est pas mal je vais continuer mes essais,à suivre certainemen
merci à toi
néméa
EquinoxeFR
20 janvier 2009 à 7:58 (UTC 1)
@nemea, bon courage. Je trouve les résultats de l’ocr plutôt bon, excepté pour la mise en page.
Txo (Dominique Marin)
30 mars 2009 à 2:43 (UTC 1)
Salut
Ça marche bien sous Debian Sid avec les paquets Debian. Et c’est vrai que comparé au charabia de gocr, cela devient utilisable.
Sorbus
15 avril 2009 à 9:59 (UTC 1)
Salut EquinoxeFR,
Ici Sorbus, du forum (et de la doc) Ubuntu. Merci pour ce tuto qui complète la diffusion de bonnes infos au sujet de l’OCR sous Linux.
Ce petit message pour plusieurs choses :
- nous avons remarqué, sur le forum Ubuntu, qu’une espace mal placée dans la configuration de xsane (avant le « -i », ou après le « -l fra » empêche le fonctionnement correct de xsane2tess.
cf. ici : http://forum.ubuntu-fr.org/viewtopic.php?pid=2535312#p2535312
- quel problème avais-tu rencontré avec le script xsane2tess de la doc Ubuntu ? (n’était-ce pas aussi ce problème d’espace ?)
- quelles sont les modifs de ton fichier xsane2tess.pl par rapport au script xsane2tess de la doc Ubuntu ? (je vois que la commande OCR indiquée dans la configuration de xsane comporte en plus un « -log » et un chemin commençant par le répertoire tmp.)
En OCR, sous Linux, il nous faudrait maintenant commencer à tester Ocropus… Que les premiers qui testeront tiennent au courant les autres
A bientôt !
JF
19 juillet 2009 à 12:01 (UTC 1)
Salut, merci mille fois pour le tuyau et le script
Bonne continuation
Veralinux
9 juin 2010 à 7:52 (UTC 1)
Magnifique OCR réalisée sous Ubuntu 10.04.
Une seule faute relevée sur 21 lignes de texte ( « partemires » au lieu de « partenaires » ) mais, précision, cette ligne est écrite en bleu marine.
Grand MERCI pour ce tuto
@lain
cmm
19 juillet 2010 à 11:17 (UTC 1)
Merci beaucoup, je viens de tester l’installation faite selon vos indications
sur mon ordinateur sous debian stable.
J’ai utilisé les paquets tesseract-ocr et tesseract-ocr-fra des dépôts debian.
çà marche très bien!
cmm
Dominique Meeùs
23 octobre 2010 à 11:22 (UTC 1)
J’avais toujours utilisé xsane2tess sans problème avec Ubuntu (en scannant en trait à 300 dpi). Ce soir, je découvre qu’il ne fonctionne plus. C’est sans doute la première fois que j’ai essayé depuis le passage à Ubuntu 10.10. Erreur (que je ne comprends pas assez pour avoir le courage d’essayer de corriger xsane2tess ou le reste) :
/home/mic/tmp/xsane-conversion-plustek:libusb:002:002.tif: Not a TIFF or MDI file, bad magic number 13136 (0x3350).tesseract:Error:Read of file failed:/home/mic/tmp/xsane-conversion-plustek:libusb:002:002.tif
/usr/bin/xsane2tess: line 78: 4799 Erreur de segmentation tesseract "$TIF_FILE" "$TXT_FILE" -l "$TES_LANG" 1>&2
cat: /home/mic/tmp/xsane-conversion-plustek:libusb:002:002.txt: Aucun fichier ou dossier de ce type
rm: ne peut enlever `/home/mic/tmp/xsane-conversion-plustek:libusb:002:002.txt': Aucun fichier ou dossier de ce type
Par contre, ça marche avec xsane2tess.pl en gris à 300 dpi. Le script écrit le log dans /tmp par défaut. Il n’est donc pas indispensable de l’écrire dans la commande.
Ranger
5 novembre 2010 à 7:23 (UTC 1)
J’ai le même souci que Dominque:
Not a TIFF or MDI file, bad magic number 13136 (0x3350)le passage de 10.04 à 10.10 semble avoir détraqué le fonctionnement de xsane2tess. En revanche, tesseract fonctionne bien en ligne de commande, à partir d’un fichier .tif : c’est donc bien le script xsane2tess qui est en cause. Je l’ai regardé, d’un oeil peu expert, mais je ne vois rien a priori qui puisse poser problème. Toute aide sera la bienvenue!Ranger
5 novembre 2010 à 7:53 (UTC 1)
Je reviens à la charge, pour confirmer, comme Dominique, que le fichier .pl fonctionne sous 10.10, en 300, 600 ou 1200 dpi. Merci, Equinoxe!
Croa
7 février 2011 à 6:10 (UTC 1)
Bonjour,
Merci pour vos infos. Je vais essayer cet OCR.
Pouvez-vous donner des exemples d’utilisation à partir d’un fichier image (*.tif par exemple) car xsane ne sait évidemment pas faire (sans scanner branché il ne s’ouvre même pas.) ?
Quels sont les types de fichiers image qui fonctionnent avec cette solution ?
S’il vous plaît, donnez les détails (codes complets) car je ne suis pas spécialiste !
D’avance MERCI !
Ranger
13 février 2011 à 1:35 (UTC 1)
Bonjour,
Pour Croa, en consultant le manuel
man tesseracton voit que la commandetesseract inputfile.tif outputfiledevrait suffire (tesseract rajoute le suffixe .txt sans que vous ayez besoin de préciser). Vous pouvez également préciser la langue (à condition d’avoir téléchargé le fichier qui y correspond) avec, par exemple,tesseract inputfile.tif outputfile -l fra(Vous pouvez consulter le code complet du fichier laissé par Equinoxe ici http://www.equinoxefr.org/wp-content/uploads/2008/07/xsane2tess.pl en ouvrant le fichier avec un éditeur de texte. Mais en ce qui concerne tesseract seul, le code donné ci-dessus suffira!)
Lenadi
3 avril 2011 à 12:33 (UTC 1)
J’ai fait la même configuration de Xsane sous Mandriva après chargement banal de tesseract avec le gestionnaire de logiciel (graphique) et tout fonctionne à merveille.
J’ai scanné un vieux livre jauni de 1920 avec des résultats tout à fait exploitables, et d’autres scans sur des sorties d’imprimante, qui ne nécessitent eux quasiment aucune retouche.
Vraiment très bien!
LM.