Image vers texte (OCR) : comment ça marche et comment obtenir un texte propre
L’OCR, reconnaissance optique de caractères, transforme l’image d’un texte en texte que l’on peut copier, rechercher et modifier. C’est lui qui lit la capture d’un message d’erreur, la photo d’une lettre ou un contrat scanné. La plupart de ses erreurs viennent de l’image, pas du moteur : quelques minutes consacrées à la photo font souvent gagner plus de temps que la correction du résultat.
Comment l’OCR lit une image
Tesseract, le moteur libre derrière la plupart des outils d’OCR gratuits, procède en trois étapes. Il passe d’abord l’image en noir et blanc, en décidant pour chaque pixel s’il s’agit d’encre ou de papier. Il repère ensuite les blocs, les colonnes et les lignes de texte. Enfin, depuis la version 4.00, un réseau de neurones lit chaque ligne entière d’un coup, et non lettre par lettre, et les données de la langue l’aident à choisir entre des formes proches.
Chaque étape peut échouer à sa manière : une ombre sur la page gâche le noir et blanc, une photo de travers gâche les lignes, et une mauvaise langue gâche les lettres.
Ce qui compte le plus
- La résolution : la documentation de Tesseract indique qu’il fonctionne au mieux sur des images d’au moins 300 ppp. Pour un scan, choisissez 300 ppp ; pour une photo, faites que la page remplisse le cadre.
- Des lignes droites : sur une page inclinée, le moteur trouve beaucoup moins bien les lignes. Photographiez la page de face, ou faites pivoter l’image jusqu’à ce que les lignes soient horizontales.
- Une lumière égale et du contraste : du texte foncé sur un fond clair et uni. Les ombres, les reflets et le papier irrégulier font disparaître des lettres lors du passage en noir et blanc.
- Une petite marge : recadrez l’image sur le texte en laissant une fine bordure blanche, d’environ 10 pixels. Un texte collé au bord est mal lu, et les bords sombres d’un scan peuvent être lus comme des lettres.
- La bonne langue : elle indique au moteur quelles lettres et quels accents attendre. Du portugais lu comme de l’anglais perd ses ç et ses ã.
- Un seul type de texte à la fois : un texte imprimé dans une seule police se lit le mieux. L’écriture manuscrite, les polices décoratives et le texte sur des photos se lisent le moins bien.
Problèmes courants et solutions
| Ce que vous voyez | Que faire |
|---|---|
| Lettres manquantes ou cassées | Prenez la photo sous une lumière égale, sans ombres ; augmentez le contraste ou scannez à 300 ppp |
| Lignes mélangées ou dans le désordre | Redressez l’image ; pour les tickets et les tableaux, lisez ligne par ligne |
| Signes sans queue ni tête sur les bords | Rognez les bords sombres du scanner en gardant une fine marge blanche |
| Accents perdus | Choisissez la langue du texte avant la lecture |
| Texte clair sur fond sombre mal lu | Inversez d’abord les couleurs : le moteur attend du texte foncé sur fond clair |
| 0 et O, 1 et l, 5 et S confondus | Vérifiez à l’œil codes, montants et noms : aucun mot n’aide le moteur à deviner |
Les erreurs sur les chiffres sont les plus graves, car rien dans le texte ne les trahit. Comparez toujours montants, dates et références avec l’image.
Captures, photos et scans
Une capture d’écran est le cas facile : nette, droite et uniformément éclairée. Son seul problème est le petit texte des interfaces, que l’outil de nTools agrandit avant la lecture. Une photo de page apporte les cas difficiles : perspective, ombres, flou et fond chargé. Un scan à plat à 300 ppp est la meilleure source pour les longs documents.
PDF scannés
Un PDF issu d’un scan est un ensemble d’images : on ne peut pas sélectionner son texte, une recherche ne trouve rien et un lecteur d’écran n’a rien à lire. Les règles d’accessibilité du W3C (WCAG) traitent ce PDF comme des images de texte et recommandent d’y appliquer l’OCR, puis de vérifier le texte reconnu et son ordre de lecture. Si vous pouvez sélectionner le texte d’un PDF, c’est déjà du texte, et le copier est plus exact que n’importe quel OCR.
PDF vers Word lit les pages scannées par OCR et donne un document modifiable ; vous pouvez aussi transformer les pages en images et les lire dans Image vers texte.
Où va l’image
Beaucoup de services d’OCR envoient l’image sur un serveur. Tesseract peut aussi fonctionner dans le navigateur, compilé en WebAssembly : c’est ainsi que fonctionne l’outil de nTools, si bien que l’image et le texte restent sur votre appareil. Le navigateur télécharge seulement le moteur et les données de la langue choisie.
Questions fréquentes
L’OCR peut-il lire l’écriture manuscrite ?
Mal. Tesseract est entraîné sur du texte imprimé ; des capitales d’imprimerie soignées passent parfois, une écriture ordinaire non. L’écriture manuscrite demande des moteurs entraînés spécialement pour elle.
Quelle est la précision de l’OCR ?
Sur une page imprimée propre scannée à 300 ppp, presque tous les caractères sont justes. Les photos, le petit texte et les polices inhabituelles apportent plus d’erreurs. L’indice de confiance affiché par l’outil est une estimation du moteur lui-même, un signal d’alerte plutôt qu’une garantie.
Pourquoi 0 et O, ou 1 et l, sont-ils confondus ?
Leurs formes sont presque identiques dans beaucoup de polices. Dans les mots ordinaires, les données de la langue aident à choisir ; dans les codes, numéros de série et mots de passe, elles ne peuvent pas : vérifiez-les caractère par caractère.
Quelles langues peut-il lire ?
Tesseract dispose de données pour plus de 100 langues. L’outil de nTools propose l’anglais, l’espagnol, le français, l’allemand, l’italien et le portugais ; choisissez la langue avant la lecture, car elle change les lettres attendues par le moteur.
L’OCR garde-t-il les tableaux et la mise en forme ?
Non. Le résultat est du texte brut avec des retours à la ligne. Les tableaux sont un point faible connu de Tesseract : lisez-les ligne par ligne, pour que chaque rangée reste groupée, puis reconstituez les colonnes.
Références
- Tesseract documentation — Improving the quality of the output
- Tesseract documentation — Neural nets in Tesseract 4.00
- Tesseract.js — Pure JavaScript OCR for more than 100 languages
- W3C — WCAG 2.2 technique PDF7: performing OCR on a scanned PDF document
- W3C — Understanding WCAG 2.2: Images of Text (1.4.5)
Guides associés
- Les adresses IP expliquées : IPv4, IPv6 et les plages réservées
- Les sous-réseaux et le CIDR expliqués : préfixes, masques et hôtes utilisables
- Les enregistrements DNS expliqués : A, AAAA, CNAME, MX, TXT et NS
- Un site est-il en panne, ou est-ce chez vous ? Comment vérifier, étape par étape
- Codes de statut HTTP et erreurs Cloudflare : ce que signifient 403, 404, 429, 500, 503 et 521
- Les timestamps Unix et les fuseaux horaires expliqués
- Compter les dates : jours entre deux dates, années bissextiles et semaines ISO
- Fuseaux horaires et heure d’été : réunions entre villes
- Les formats d’image expliqués : JPEG, PNG, WebP, AVIF et HEIC
- La taille d’une image expliquée : pixels, DPI, poids et qualité
- Les photos de téléphone expliquées : HEIC, métadonnées EXIF et vie privée
- La robustesse des mots de passe expliquée : longueur, entropie et phrases de passe
- Le hachage expliqué : SHA-256, sommes de contrôle et mots de passe
- Les JSON Web Tokens expliqués : revendications, signatures, validation sûre
- Les clés API expliquées : longueur, format, stockage et rotation
- Les UUID expliqués : v4, v7 et comment choisir la bonne version
- Les QR codes expliqués : capacité, correction d’erreurs et taille d’impression
- Les pourcentages et la TVA expliqués : ajouter, retirer et cumuler
- Erreurs JSON courantes et comment les corriger
- Les fichiers CSV expliqués : séparateurs, guillemets, encodage et Excel
- Les encodages de texte expliqués : UTF-8, Base64 et encodage d’URL
- Expressions régulières : classes, quantificateurs et groupes
- Mo ou Mio, Mbit/s ou Mo/s : tailles de fichiers et débits
- Expressions cron : champs, pas et fuseaux horaires
- Paramètres UTM : étiqueter des liens pour l’analyse d’audience
- Seuil de rentabilité, marge et ROAS : les chiffres d’une petite entreprise
- Tarifs freelance expliqués : taux horaire, TJM et heures facturables
- RPM et CPM YouTube expliqués : ce que gagne vraiment un créateur
- Compter les caractères : SMS, X, titres YouTube et emoji
- Le contraste des couleurs expliqué : ratios WCAG, texte lisible et formats de couleur
- Modifier des PDF dans le navigateur : ce que la fusion, la division et la conversion conservent