OCR et Linux et abbyyocr

Quel OCR utiliser avec Linux

Introduction

On peut dire ce que l'on veut, mais le domaine de l'OCR (Optical Character Recognition - en français ROC - Reconnaissance Optique de Caratères) est un des domaines dans lequel Linux est le plus en retard par rapport aux logiciels propriétaires... hélas. Néanmoins voici une petite revue de ce que j'ai trouvé sur le sujet.

En ligne de commande

 

  • gocr
  • gocr-gtk
  • cuneiform
  • ocrad
  • tesseract
  • tesseract-ocr
  • ocropus ?

 

Un petit exemple de récupération de texte avec tesseract

tesseract lettre1.png lettre1.txt -l fra

on y indique la langue à utiliser fra et ça marche...

Front-end

Avec des GUI (Front-end) utilisant l'un ou l'autre des OCR ci-dessus

  • Ocrfeeder - Donnée comme une bonne suite, mais en fait décevante!
  • kooka - Projet abandonné
  • xsane - Le meilleur à mon avis, --> images ET textes
  • yagf - GUI pour Cuneiform et Tesseract (boof..)
  • pdf2tex
  • gscan2pdf -  GUI pour faciliter la numérisation vers du pdf
  • gImageReader
  • Linux Intelligent OCR Solution --> en deb seulement --> Lios_1.7_all.deb (pas encore essayé, mais je vais le faire !)

Conclusion

Voilà pour un petit tour rapide des solutions pour Linux. Ce qui est décevant c'est que le moteur de reconnaissance n'a pas l'air d'avancer beaucoup et de plus les application en front-end sont très sommaires, le libre nos a habitué à mieux et ce serait dommage d'aller vers le payant qui de toutes les façons ne tourne pas sous Linux ...

ABBYYOCR

Abbyyocr est un excellent OCR, mais il n'est pas libre ! Pour un usage très modéré (100 pages) il est gratuit, mais il m'a coût env CHF 150.- pour la version 12'000 pages/an. J'aurais préféré une proposition plus "légère", je ne scanne pas 12'000 pages par année ! Mais bon.. je dois dire qu'il fonctionne vraiment très bien.

Il est en ligne de commande, je n'ai pas trouvé de GUI ! Dommage.

Installation version abbyyocr11

  1. Il faut décompresser le fichier original : abbyyocr-11-1-4-49....tar.gz
  1. dans un dossier créé pour cela, exemple : /home/mondossier/abbyy
  2. Ensuite repérer le chemin du fichier abbyyocr.run
  3. Ouvrir un terminal Konsole
  4. Passer en mode root : sudo -i
  5. Aller dans le dossier /opt
  6. Copier depuis ce dossier le fichier abbyyocr.run : 
moi@monordi:$ cp /home/mondossier/abbyy/abbyyocr.run .
  1. rester dans le dossier /opt/
  2. appliquer la commande suivante :
moi@monordi:$ sudo ./abbyyocr.run

suivre les instructions. J'avoue j'ai eu quelques  problèmes avec la licence lorsque j'ai changé de distribution ou d'ordinateur.. mais

Les commandes

Usage:
abbyyocr11 [options] -if <image file> -f format [options] -of <export file>
abbyyocr11 [options] -if <image file> -f format1 [options] -of <export file 1> -f format2 [options] -of <export file 2>
abbyyocr11 [options] -if <image file 1> [options] -if <image file 2> -f format [options] -of <export file>

Exemple : le fichier montexte.pdf à reconnaître et à sauvegarder en format .txt (resultat.txt)
abbyyocr11 -fm -rl French -if montexte.pdf -f TextUnicodeDefaults -tet UTF8 -of resultat.txt

commande

interprétation

-fm

FastMode (rapide)

-rl French

Reconnaissance de la langue française

-if

Input Filename Nom de fichier à reconnaître (Mondoc.pdf)

-of

--outputFileName nom du fichier de destination (Mondoc.txt

-f

--outputFileFormat format de l'export du texte reconnu (1)

-sp

  --skipPictures #reset "keep pictures" mode in all suitable formats

-tet

--txtEncodingType <text file type> (2)

 

(1) RTF, HTMLVersion10Defaults, HTMLUnicodeDefaults, XLS, PDF, TextVersion10Defaults, TextUnicodeDefaults, XML, DOCX, XLSX, PPTX, ALTO, EPUB, FB2, ODT.

(2) Simple, UTF8, UTF16, Auto.