Aller au contenu
PDFLove

pourquoi mon ocr est imprécis

Ce que l'OCR rate, et comment y remédier

L'OCR est de la reconnaissance, pas de la conversion : il a donc un taux de réussite et non un résultat. L'essentiel de ce qui détermine ce taux a été décidé avant que le fichier n'atteigne le moindre logiciel — au scanner.

01

Ce que fait l'OCR

La reconnaissance optique de caractères prend l'image d'une page, repère les formes qui ressemblent à du texte et décide de quel caractère chaque forme se rapproche le plus. Les moteurs modernes confrontent ensuite le résultat à un modèle de langue, et c'est pourquoi un « rn » lu « m » est en général corrigé en silence dans un mot réel et laissé tel quel dans une référence produit.

Ce dernier point est celui qu'il faut comprendre. L'OCR est le plus précis là où vous en avez le moins besoin — la prose ordinaire, où le contexte le rattrape — et le moins précis sur les numéros de série, les références de compte et les montants, là où aucun contexte ne rattrape rien et où une erreur coûte le plus cher.

02

Ce qui ruine la précision

Une résolution sous 300 DPI. C'est le facteur unique le plus important. À 300 DPI, un caractère de 10 points fait environ 40 pixels de haut et ne prête pas à confusion. À 150 DPI il en fait 20 et le moteur devine entre des formes voisines. Numériser au-delà de 400 DPI n'aide presque jamais et ralentit tout.

L'inclinaison. Une page numérisée deux degrés de travers est nettement plus difficile à lire, parce que la détection des lignes suppose des lignes de base horizontales. Deux degrés suffisent à gêner et passent facilement inaperçus à l'œil nu.

Un contraste faible. Photocopies pâles, fonds grisâtres, papier de couleur et surligneur sur le texte réduisent la séparation entre l'encre et le papier dont le moteur dépend.

Les artefacts JPEG. Trop compresser une numérisation avant de lancer l'OCR floute les bords des caractères. Si vous devez faire les deux, l'OCR d'abord et la compression ensuite.

La mise en page. Texte sur plusieurs colonnes, tableaux, encadrés et notes de bas de page obligent le moteur à déterminer l'ordre de lecture avant de lire quoi que ce soit, et se tromper là-dessus brouille une reconnaissance par ailleurs parfaite.

03

Ce que l'OCR ne fera pas

L'écriture manuscrite, en général. Reconnaître une cursive est un problème nettement plus difficile que reconnaître de l'imprimé, et l'OCR généraliste s'en sort mal. Les majuscules d'imprimerie tracées avec soin fonctionnent parfois.

Reconstruire correctement un tableau. Il lit souvent chaque cellule juste et produit malgré tout un tableau structurellement faux, parce que décider où commencent les colonnes est une inférence distincte de la lecture des caractères.

Récupérer une information qui n'est pas là. Si la numérisation est trop pâle pour que vous lisiez un chiffre avec certitude, aucun moteur ne fera mieux — et, contrairement à vous, il s'engagera sur une réponse sans signaler le doute.

04

Comment obtenir un meilleur résultat

Renumérisez, si vous le pouvez. Trente secondes à 300 DPI, bien droite, avec un bon contraste, battent n'importe quelle quantité de post-traitement sur une mauvaise numérisation. Si le document sert vraiment, c'est du temps bien employé.

Redressez avant de reconnaître. Même un alignement approximatif récupère beaucoup sur une page entrée de travers.

Convertissez en niveaux de gris plutôt qu'en noir et blanc agressif. La conversion à deux niveaux purs avec un seuil mal réglé mange les traits fins et bouche les contrepoinçons des lettres, et les deux nuisent à la reconnaissance.

Indiquez la langue. Un moteur qui attend de l'anglais sur un document en français corrigera jusqu'à aboutir à une absurdité assumée.

Vérifiez ensuite le résultat — les chiffres en particulier. Lisez les montants en les comparant à l'original plutôt que de survoler la prose. C'est là que se cachent les erreurs qui survivent, et un chiffre mal lu a l'air tout à fait plausible sur la page.

Questions

Questions liées

Quelle précision attendre de l'OCR ?

Sur une numérisation propre à 300 DPI de texte imprimé ordinaire, bien au-delà de 99 % des caractères. Sur une photocopie délavée, sur des colonnes serrées ou sous 200 DPI, cela s'effondre — et les erreurs restantes se concentrent précisément là où le contexte ne peut rien rattraper.

Dois-je compresser avant ou après avoir lancé l'OCR ?

Après. La compression fonctionne en jetant du détail d'image, et le premier détail qu'elle jette, ce sont les bords fins — c'est-à-dire exactement ce que le moteur de reconnaissance est en train de lire. L'OCR d'abord, puis compressez le résultat.

L'OCR peut-il lire une photo prise avec mon téléphone ?

Souvent oui, mais moins fiablement qu'une numérisation. Les photos de téléphone apportent un éclairage inégal, une déformation de perspective due à l'appareil tenu de biais, et des ombres. Posée à plat sur une table, sous une lumière régulière, photographiée d'aplomb, un téléphone récent s'en sort bien.