xsane2tess : un adaptateur tesseract pour Xsane
xsane2tess est un adaptateur permettant d'utiliser le moteur de reconnaissance optique de caractères tesseract avec l'application de numérisation Xsane. Xsane2tess a été proposé par MadMax sur le forum MandrivaUser.de.
Pré-requis
- Disposer des droits d'administration;
- Disposer d'une connexion à Internet configurée et activée;
- Avoir installé les paquets:
- tesseract avec les modules de langue que l'on souhaite pouvoir utiliser;
- et imagemagick
Installation
Pour utiliser la reconnaissance optique de caractères tesseract avec l'application de numérisation Xsane, il est nécessaire de créer un script. Pour cela, il suffit de suivre la procédure suivante:
- Créez le fichier xsane2tess par exemple sur votre Bureau et copiez-y le contenu suivant:
- xsane2tess
#!/bin/bash # # ############################################################################## # # xsane2tess 1.0 # # *** tesseract made simple *** # # ############################################################################## # # xsane2tess is a TesseractOCR wrapper to be able to use tesseract with xsane # # # TEMP_DIR=/tmp/ # folder for temporary files (TIFF & tesseract data) ERRORLOG="xsane2tess.log" # file where STDERR goes if [[ -z "$1" ]] then echo "Usage: $0 [OPTIONS] xsane2tess converts files to TIF, scans them with TesseractOCR and outputs the text in a file. OPTIONS: -i <file1> define input file (any image-format supported) -o <file2> define output-file (*.txt) -l <lang> define language-data tesseract should use Progress- & error-messages will be stored in this logfile: $TEMP_DIR$ERRORLOG xsane2tess depends on - ImageMagick http://www.imagemagick.org/ - TesseractOCR http://code.google.com/p/tesseract-ocr/ Some coding was stolen from 'ocube' http://www.geocities.com/thierryguy/ocube.html " exit fi # get options... while getopts ":i:o:l:" OPTION do case $OPTION in i) # input filename (with path) FILE_PATH="$OPTARG" ;; o ) # output filename FILE_OUT="$OPTARG" ;; l ) # Language-selection TES_LANG="$OPTARG" ;; esac done # redirect STDOUT to FILE_OUT exec 1>>$FILE_OUT # redirect STDERR to ERRORLOG exec 2>>$TEMP_DIR$ERRORLOG # strip path from FILE_PATH, use filename only IN_FILE=${FILE_PATH##*/} TIF_FILE="$TEMP_DIR""${IN_FILE%.*}".tif TXT_FILE="$TEMP_DIR""${IN_FILE%.*}" # converting image into TIFF (ImageMagick) convert "$FILE_PATH" -compress none "$TIF_FILE" 1>&2 # start OCR (tesseract expands output with *.txt) tesseract "$TIF_FILE" "$TXT_FILE" -l "$TES_LANG" 1>&2 # STDOUT scanned text => FILE_OUT cat "$TXT_FILE".txt # delete graphic file after use rm "$TIF_FILE" # delete tesseract output rm "$TXT_FILE".txt
- Rendez exécutable ce fichier xsane2tess,
- Depuis un terminal, copiez le fichier xsane2tess dans le dossier dans /usr/bin, en admettant que vous l'avez enregistré sur votre Bureau, sinon adapter le chemin:
sudo cp Bureau/xsane2tess /usr/bin
Vous pourrez ensuite consulter le fichier xsane2tess.log dans le dossier /tmp pour observer les éventuelles erreurs .
Utilisation
- Lancer l'application Xsane
- Puis dans le menu: Préférences → Configuration → Onglet "OCR" entrez les informations suivantes en respectant bien la casse :
- Commande OCR : xsane2tess -l fra
- Option de fichier d'entrée : -i
- Option de fichier de sortie : -o
La langue du texte à numériser peut être modifiée quand on le veut dans le menu de configuration de XSane (l'option-l), à condition d'avoir installé les fichiers de langues correspondants de tesseract, comme indiqué dans le paragraphe Pré-requis.
XSane présente le grand avantage de permettre la sélection des colonnes ou zones d'un texte l'une après l'autre grâce à la prévisualisation, et donc avant traitement OCR par tesseract.
On obtient de bons résultats en numérisant à 300 ppi, noir et blanc (fichier "type : TEXT"). Pour plus de précisions, voir le paragraphe sur la ROC avec XSane.
Il suffit ensuite de copier-coller les fichiers obtenus dans une application de traitement de texte comme LibreOffice Writer, et la reconnaissance orthographique fait le reste…
Désinstallation
Pour supprimer cette application, il suffit de supprimer son paquet, les paquets de langues installées et si ils ne sont plus nécessaires pour d'autres applications, supprimer les paquets tesseract et Imagemagick. Le script créé plus haut ne sera plus utile, vous pouvez aussi le supprimer.
Selon la méthode choisie, la configuration globale des applications sont conservées ou supprimées. Les journaux du système, et les fichiers de préférence des utilisateurs dans leurs dossiers personnels sont toujours conservés.