Dans l’article d’aujourd’hui, nous allons voir comment installer et utiliser Tesseract pour reconnaitre des caractères dans une image.

Commençons par un peu d’Histoire, Tesseract est un projet initialement développé par Hewlett Packard entre 1985 et 1994 puis mis de côté pendant une dizaine d’années. C’est en 2005  que le code source est finalement libéré sous licence Apache, et il est maintenu depuis 2006 par des équipes de Google.

Pour ce qui est de son fonctionnement, Tesseract utilise les réseaux de neurones pour reconnaitre les caractères et les mots.

Aujourd’hui Tesseract prend en charge une centaine de langages différents, est toujours Open Source et fonctionne avec la plupart des systèmes d’exploitation.

Installer de Tesseract

Afin de pouvoir utiliser la librairie Tesseract, il est nécessaire de l’installer sur notre machine.

Pour les utilisateurs de MacOS, l’installation se fera grâce à Homebrew.

brew install tesseract

Si vous utilisez Debian ou Ubuntu, Tesseract peut être obtenue par apt-get:

apt-get install tesseract-ocr

Enfin, pour les utilisateurs Windows, vous pouvez trouver des installateurs pour les versions 3.05 et 4.00 (expérimental) sur le GitHub de la bibliothèque universitaire de Mannheim. Une fois l’installation terminée, vous obtiendrez un raccourci « console » dans le dossier tesseract-OCR du menu démarrer.Installation tesseract windows

C’est fait, Tesseract est installé.

Analyser une image

Afin d’obtenir de bons résultats avec la reconnaissance de caractère de Tesseract, il faut que l’image que l’on donne en entrée contienne un texte clair, net et précis. En d’autre termes, il faut une image avec la plus grande résolution et dpi possible et que le texte soit facilement séparable du fond.

Testons avec cette image:

Test tesseract OCR reconnaissance de caractère

tesseract test_tesseract.jpg stdout

Le résultat donneTest tesseract OCR reconnaissance de caractère résultatD’accord il ne s’agit que de 20 lettres, essayons donc avec un texte plus grandLe résultat est toujours au rendez vous:

Arial

Lorem ipsum dolor sit amet, consetetur sadipscing
elitr, sed diam nonumy eirmod tempor invidunt ut
labore et dolore magna aliquyam erat, sed diam
voluptua. At vero eos et accusam et justo duo
dolores et ea rebum. Stet clita kasd gubergren, no
sea takimata sanctus est Lorem ipsum dolor sit
amet. Lorem ipsum dolor sit amet, consetetur
sadipscing elitr, sed diam nonumy eirmod tempor
invidunt ut labore et dolore magna aliquyam erat,
sed diam voluptua. At vero eos et accusam et justo
duo dolores et ea rebum. Stet clita kasd gubergren,
no sea takimata sanctus est Lorem ipsum dolor sit
amet. Lorem ipsum dolor sit amet, consetetur
sadipscing elitr, sed diam nonumy eirmod tempor
invidunt ut labore et dolore magna aliquyam erat,
sed diam voluptua. At vero eos et accusam et justo
duo dolores et ea rebum. Stet clita kasd gubergren,
no sea takimata sanctus est Lorem ipsum dolor sit
amet.

C’est super ça marche!

Pas tant que ça, il y a quand même certaines limites !

Reprenons notre image initiale et ajoutons une barre grise en oblique.

Test tesseract OCR reconnaissance de caractèreUn humain reconnaîtra sans problème les lettres et mots écrits. Tesseract non.Test tesseract OCR reconnaissance de caractère erreurEn effet, une simple barre permet de dérouter Tesseract. Comme je vous l’avais mentionné avant, il faut que le texte soit facilement séparable. Cependant à force de venir sur ce site, il vous est simple de trouver une solution à ce problème. Nous verrons la semaine prochaine comment interfacer tesseract avec Python afin que vous puissiez créer de superbes applications de reconnaissance de texte.

Pour conclure, Tesseract est un très bon outil pour extraire un texte d’une image. Au fur et à mesure du temps l’outil est devenu de plus en plus performant et il est dorénavant possible de spécifier le langage afin d’obtenir de meilleurs résultats. Cependant dès lors que le texte n’est pas clairement identifiable, il est nécessaire d’appliquer des prétraitements à l’image afin de pouvoir décoder les caractères.


0 commentaire

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.