Passage des scans à l’OCR/

Sommaire

Retour à « Scan des pages du livre »

1 – Choix du logiciel OCR :

Le choix de l’OCR ne doit pas être fait à la légère, sous peine de perdre énormément de temps lors de la mise en forme. Les OCR sont assez nombreux sur le marché mais peu sont vraiment fiables. En voici une petit liste de ceux qui tiennent à peu près la route :

    ABBYY Finereader 6.0 (ou +) : Certainement le plus efficace d’après mes tests, j’utilise la version 9.0 que j’ai acheté en occase sur eBay pour 20€. Oui le prix neuf n’est vraiment pas donné 150€ pour la version 10.0. Il existe une version linux qui s’utilise en ligne de commande et qui est plutôt orientée lecture de code barre à vocation industrielle. Donc il n’y a que la version Windows qui est vraiment abordable techniquement. Il existe une version OEM appelée « sprint » qui est souvent vendue avec les scanners, je ne l’ai pas testée mais si vous l’avez avec votre scanner n’hésitez pas à l’essayer. La version d’évaluation est limitée à 15 jours avec 50 pages de traitement.
    Tesseract : C’est l’ocr le plus abouti en logiciel libre et disponible sur linux, il peut être associer à Xsane sinon il s’utilise en ligne de commande (il n’a pas d’interface graphique qui lui est propre), ce qui en rebutera plus d’un. Pour l’histoire, Tesseract a été conçu par Hewlet Packard entre 1985 – 1995 puis abandonné jusqu’en 2006 où HP l’a libéré sous licence libre Apache. Actuellement google joue un rôle important dans son développement. Il est d’ailleurs le module de reconnaissance du logiciel OCRopus utilisé par google pour numériser les livres de Googlebook. Je pense que le projet est intéressant et prometteur, mais qu’il n’est pas encore mûre pour le grand public. Il faut rattraper 10 ans de retard, dans le domaine du logiciel c’est une éternité.
    ReadIris 11 : c’est un logiciel propriétaire qui tourne uniquement sous windows, mais une version d’évaluation existe qui permet d’enregistrer un nombre limité de page et avec une durée d’utilisation de 30 jours. J’ai effectué quelques testes et le résultat est assez moyen, en tout cas bien en-dessous des performances de Finereader 9.0. Son prix dans le commerce est de 129€ ce n’est pas du tout abordable pour un particulier.
    Gocr : c’est l’ocr par défaut de l’environnement gnome sous licence GPL, tout comme tesseract il peut être couplé à Xsane, mais ses performances sont assez décevantes il rend un texte avec un pourcentage assez élevé d’erreur. Gocr n’est pas vraiment conseillé pour la numérisation des livres. A la rigueur il peut être utile pour la numérisation d’une lettre ou d’un extrait de texte.
    Omnipage 17 : Logiciel propriétaire qui fonctionne uniquement sur windows. Il est vendu dans le commerce pour 99 € en version standard et 479€ en version Pro. Les performances de la version standard se placent légèrement en dessous de ReadIris pour ce qui est de la numérisation des livres, avec une mauvaise prise en compte des noirets et il n’y a pas d’identification par dictionnaire. La version Pro étant complétement inabordable je ne l’ai même pas essayée.

Donc pour résumer le choix n’est pas facile pour quelqu’un qui travail sous linux. En effet l’utilisation de tesseract ou de gocr n’est pas vraiment envisageable sauf si on a envie de passer du temps à rédiger des scripts automatisés pour le traitement en batch des scans.

Ma solution a été d’utiliser Finereader 9.0 dans une machine virtuel. (XP dans virtualbox) Malgré ses bonnes performances de traitement Finereader présente quelques inconvénients qui m’ont un peu irrités. Premièrement les formats de sorties sont limité à .doc .rtf .pdf et .txt. Il n’y a pas de support des ODF, donc si vous travaillez avec Open Office il faut oublier l’option présentation à l’identique, le rendu en est désastreux. Deuxièmement les fichier .doc de sortie sont truffé de bidouillage de mise en forme pour que ça ressemble à peu chose près à l’original. Donc dès que vous essayez de modifier quelque chose ça devient vite infernal.

Pour conclure je dirai n’attendez pas de miracle d’un OCR même s’il est payant. Ça sert juste à dégrossir le travail et à éviter de tout retaper soi même.

2 – Exemple d’utilisation de l’OCR :

L’exemple que je vais donner ici concerne Finereader 9.0 parce c’est le logiciel que j’utilise. Cependant les conseils vaut pour tout autre OCR. Finereader offre bien d’autres fonctions que je ne développerai pas ici car ce n’est pas l’objet de ce dossier.

Finereader 9.0 peut traiter divers fichier d’entrer, des images .jpg, .bmp et .tiff entre autre. Mais il peut aussi utiliser comme source un fichier .pdf qui contient des images de texte. Pour une utilisation optimal de l’OCR il faut que le texte soit en noir et blanc (ce n’est pas le niveau de gris mais bien noir et blanc). Si ce n’est pas le cas l’OCR fera la conversion lui-même ce qui prendra plus de temps lors de la reconnaissance.

Il est possible de numériser directement les pages à partir de Finereader, mais le temps entre 2 scans est supérieure à 2 min car le traitement OCR se fait dans la foulée, donc ça rallonge considérablement le temps du scan. Et en plus je n’ai pas de drivers XP pour mon scanner conçu à l’origine pour win98 SE. Donc il m’est impossible de le faire tourner avec finereader. Ce sont les 2 raisons pour lesquelles je suis passé par Xsane.

L’utilisation de finereader pour la reconnaissance en batch est assez simple :

    – Cliquer sur l’icône « Ouvrir » .

Page de présentation de finereader

    – Sélectionner tous les fichiers .tiff (ctrl A) que vous avez scanné précédemment.

Fenêtre de selection d'image Tiff

    – Et enfin cliquez sur « Ouvrir » .

Fenêtre de traitement en cours

Le traitement OCR commence. Pour 500 pages il faut environ 45 min de traitement. Un PC dual-core avec 2 Go de ram est au minimum indispensable si Finereader tourne dans une machine virtuel, sinon le temps de traitement pourrait être multiplier facilement par 4. Vous avez le temps d’aller diner ou de vous commander une pizza.

Finereader signale des erreurs lorsqu’il rencontre des pages blanches, c’est tout à fait normal si vous avez scanné des pages blanches ne vous inquiétez pas.

A l’utilisation Finereader se divise en 3 parties. La premières permet de sélectionner la page sur laquelle on veut travailler. La seconde permet de définir manuellement les zones de reconnaissance de texte. Et enfin la troisième permet de travailler sur le texte, notamment la correction des fautes de reconnaissance mais aussi d’effectuer la mise en forme du texte.

description des parties du logiciel

3 – Format de sortie du texte :

Cette aménagement est assez pratique si l’on a qu’une dizaine de pages à traiter, par-contre cela devient très fastidieux lorsqu’on a 500 pages à corriger sur un petit bout d’écran. Qui plus est les options de mise en forme son assez restreintes pour espérer avoir un rendu convenable. La solution que je propose est de sauvegarder le texte reconnu tel quel en choisissant l’option « texte formaté » , puis « Enregistrer » .

enregistrer le texte brut

Vous obtenez ainsi un fichier .doc avec le texte brut ayant gardé certaines mise en forme tel que le gras, l’italique et les tailles de caractère. Il ne vous reste plus qu’à passer à la partie « Relecture et mise en forme » .

Suivant – « Relecture et mise en forme »

Mithrandir79

Les commentaires ont étédésactivés pour ce billet

Les commentaires sont désactivés.