La reconnaissance optique de caractères (OCR) transforme les images de texte (scans, photos de smartphone, PDF) en chaînes de caractères lisibles par machine et, de plus en plus, en données structurées. L'OCR moderne est un pipeline qui nettoie une image, trouve du texte, le lit et exporte des métadonnées riches afin que les systèmes en aval puissent rechercher, indexer ou extraire des champs. Deux normes de sortie largement utilisées sont hOCR, un microformat HTML pour le texte et la mise en page, et ALTO XML, un schéma orienté bibliothèque/archives ; tous deux préservent les positions, l'ordre de lecture et d'autres indices de mise en page et sont pris en charge par des moteurs populaires comme Tesseract.
Prétraitement. La qualité de l'OCR commence par le nettoyage de l'image : conversion en niveaux de gris, débruitage, seuillage (binarisation) et redressement. Les tutoriels canoniques d'OpenCV couvrent le seuillage global, adaptatif et d'Otsu — des incontournables pour les documents avec un éclairage non uniforme ou des histogrammes bimodaux. Lorsque l'éclairage varie au sein d'une page (pensez aux photos de téléphone), les méthodes adaptatives surpassent souvent un seuil global unique ; Otsu choisit automatiquement un seuil en analysant l'histogramme. La correction de l'inclinaison est tout aussi importante : le redressement basé sur Hough (Transformée de Hough) associé à la binarisation d'Otsu est une recette courante et efficace dans les pipelines de prétraitement de production.
Détection vs. reconnaissance. L'OCR est généralement divisé en détection de texte (où se trouve le texte ?) et reconnaissance de texte (que dit-il ?). Dans les scènes naturelles et de nombreux scans, les détecteurs entièrement convolutifs comme EAST prédisent efficacement des quadrilatères au niveau du mot ou de la ligne sans étapes de proposition lourdes et sont implémentés dans des boîtes à outils courantes (par exemple, le tutoriel de détection de texte d'OpenCV). Sur les pages complexes (journaux, formulaires, livres), la segmentation des lignes/régions et l'inférence de l'ordre de lecture sont importantes :Kraken implémente la segmentation traditionnelle de zones/lignes et la segmentation neuronale de ligne de base, avec un support explicite pour différents scripts et directions (LTR/RTL/vertical).
Modèles de reconnaissance. Le classique cheval de bataille open-source Tesseract (open-sourcé par Google, avec des racines chez HP) a évolué d'un classifieur de caractères en un reconnaisseur de séquence basé sur LSTM et peut émettre des PDF consultables, des sorties compatibles hOCR/ALTO, et plus encore depuis la CLI. Les reconnaisseurs modernes s'appuient sur la modélisation de séquence sans caractères pré-segmentés. La classification temporelle connexionniste (CTC) reste fondamentale, apprenant les alignements entre les séquences de caractéristiques d'entrée et les chaînes d'étiquettes de sortie ; elle est largement utilisée dans les pipelines d'écriture manuscrite et de texte de scène.
Ces dernières années, les Transformers ont remodelé l'OCR. TrOCR utilise un encodeur Vision Transformer plus un décodeur Text Transformer, entraîné sur de grands corpus synthétiques puis affiné sur des données réelles, avec de solides performances sur les benchmarks de texte imprimé, manuscrit et de scène (voir aussi la documentation de Hugging Face). En parallèle, certains systèmes contournent l'OCR pour la compréhension en aval : Donut (Document Understanding Transformer) est un encodeur-décodeur sans OCR qui produit directement des réponses structurées (comme du JSON clé-valeur) à partir d'images de documents (repo, carte de modèle), évitant l'accumulation d'erreurs lorsqu'une étape OCR distincte alimente un système d'IE.
Si vous voulez une lecture de texte clés en main sur de nombreux scripts, EasyOCR offre une API simple avec plus de 80 modèles linguistiques, renvoyant des boîtes, du texte et des confiances — pratique pour les prototypes et les scripts non latins. Pour les documents historiques, Kraken brille par sa segmentation de ligne de base et son ordre de lecture sensible au script ; pour un entraînement flexible au niveau de la ligne, Calamari s'appuie sur la lignée d'Ocropy (Ocropy) avec des reconnaisseurs (multi-)LSTM+CTC et une CLI pour affiner des modèles personnalisés.
La généralisation dépend des données. Pour l'écriture manuscrite, la base de données d'écriture manuscrite IAM fournit des phrases en anglais de divers scripteurs pour l'entraînement et l'évaluation ; c'est un ensemble de référence de longue date pour la reconnaissance de lignes et de mots. Pour le texte de scène, COCO-Text a superposé des annotations étendues sur MS-COCO, avec des étiquettes pour l'imprimé/manuscrit, lisible/illisible, le script et les transcriptions complètes (voir aussi la page originale du projet). Le domaine s'appuie également fortement sur le pré-entraînement synthétique : SynthText in the Wild rend le texte dans des photographies avec une géométrie et un éclairage réalistes, fournissant d'énormes volumes de données pour pré-entraîner les détecteurs et les reconnaisseurs (référence code et données).
Les compétitions sous l'égide de la lecture robuste d'ICDAR maintiennent l'évaluation sur le terrain. Les tâches récentes mettent l'accent sur la détection/lecture de bout en bout et incluent la liaison de mots en phrases, avec le code officiel rapportant précision/rappel/F-score, l'intersection sur l'union (IoU) et les métriques de distance d'édition au niveau du caractère — reflétant ce que les praticiens devraient suivre.
L'OCR se termine rarement par du texte brut. Les archives et les bibliothèques numériques préfèrent ALTO XML car il encode la mise en page physique (blocs/lignes/mots avec coordonnées) ainsi que le contenu, et il se marie bien avec l'empaquetage METS. Le microformat hOCR , en revanche, intègre la même idée dans HTML/CSS en utilisant des classes comme ocr_line et ocrx_word, ce qui facilite l'affichage, la modification et la transformation avec des outils web. Tesseract expose les deux — par exemple, en générant du hOCR ou des PDF consultables directement depuis la CLI (guide de sortie PDF) ; les wrappers Python comme pytesseract ajoutent de la commodité. Il existe des convertisseurs pour traduire entre hOCR et ALTO lorsque les dépôts ont des normes d'ingestion fixes — voir cette liste organisée d' outils de format de fichier OCR.
La tendance la plus forte est la convergence : la détection, la reconnaissance, la modélisation du langage et même le décodage spécifique à la tâche fusionnent dans des piles de Transformers unifiées. Le pré-entraînement sur de grands corpus synthétiques reste un multiplicateur de force. Les modèles sans OCR seront en concurrence agressive partout où la cible est des sorties structurées plutôt que des transcriptions littérales. Attendez-vous également à des déploiements hybrides : un détecteur léger plus un reconnaisseur de style TrOCR pour le texte long, et un modèle de style Donut pour les formulaires et les reçus.
Tesseract (GitHub) · Documentation de Tesseract · Spécification hOCR · Contexte ALTO · Détecteur EAST · Détection de texte OpenCV · TrOCR · Donut · COCO-Text · SynthText · Kraken · Calamari OCR · ICDAR RRC · pytesseract · Écriture manuscrite IAM · Outils de format de fichier OCR · EasyOCR
La reconnaissance optique de caractères (OCR) est une technologie utilisée pour convertir différents types de documents, tels que des documents papier numérisés, des fichiers PDF ou des images capturées par un appareil photo numérique, en données modifiables et recherchables.
L'OCR fonctionne en numérisant une image ou un document d'entrée, en segmentant l'image en caractères individuels, et en comparant chaque caractère avec une base de données de formes de caractères en utilisant la reconnaissance de formes ou la reconnaissance de caractéristiques.
L'OCR est utilisé dans une variété de secteurs et d'applications, y compris la numérisation de documents imprimés, l'activation des services de texte en parole, l'automatisation des processus de saisie de données, et l'aide aux utilisateurs malvoyants pour mieux interagir avec le texte.
Bien que des progrès importants aient été faits dans la technologie OCR, elle n'est pas infaillible. La précision peut varier en fonction de la qualité du document original et des spécificités du logiciel OCR utilisé.
Bien que l'OCR soit principalement conçu pour le texte imprimé, certains systèmes OCR avancés sont également capables de reconnaître une écriture manuelle claire et cohérente. Cependant, la reconnaissance de l'écriture manuelle est généralement moins précise en raison de la grande variation des styles d'écriture individuels.
Oui, de nombreux systèmes logiciels OCR peuvent reconnaître plusieurs langues. Cependant, il est important de s'assurer que la langue spécifique est prise en charge par le logiciel que vous utilisez.
OCR signifie Optical Character Recognition et est utilisé pour reconnaître le texte imprimé, tandis que ICR, ou Intelligent Character Recognition, est plus avancé et est utilisé pour reconnaître le texte écrit à la main.
L'OCR fonctionne mieux avec des polices claires et faciles à lire et des tailles de texte standard. Bien qu'il puisse fonctionner avec différentes polices et tailles, la précision a tendance à diminuer lorsqu'on traite des polices inhabituelles ou des tailles de texte très petites.
L'OCR peut avoir du mal avec les documents de faible résolution, les polices complexes, les textes mal imprimés, l'écriture manuelle, et les documents avec des arrière-plans qui interfèrent avec le texte. De plus, bien qu'il puisse fonctionner avec de nombreuses langues, il ne couvre peut-être pas parfaitement toutes les langues.
Oui, l'OCR peut numériser du texte en couleur et des arrière-plans en couleur, bien qu'il soit généralement plus efficace avec des combinaisons de couleurs à contraste élevé, comme le texte noir sur un fond blanc. La précision peut diminuer lorsque les couleurs du texte et de l'arrière-plan manquent de contraste suffisant.
Le format d'image PALM, également connu sous le nom de Palm Bitmap, est un format de fichier graphique matriciel associé aux appareils Palm OS. Il a été conçu pour stocker des images sur les PDA Palm OS (assistants numériques personnels), qui étaient populaires à la fin des années 1990 et au début des années 2000. Le format est spécifiquement adapté aux limitations d'affichage et de mémoire de ces appareils portables, c'est pourquoi il est optimisé pour les images basse résolution et à couleurs indexées qui peuvent être rendues rapidement sur l'écran de l'appareil.
Les images PALM se caractérisent par leur simplicité et leur efficacité. Le format prend en charge une palette de couleurs limitée, généralement jusqu'à 256 couleurs, ce qui est suffisant pour les petits écrans des PDA. Cette approche de couleur indexée signifie que chaque pixel de l'image n'est pas représenté par sa propre valeur de couleur mais plutôt par un index vers une table de couleurs qui contient les valeurs RVB (rouge, vert, bleu) réelles. Cette méthode de représentation des couleurs est très économe en mémoire, ce qui est crucial pour les appareils dotés d'une RAM et d'une capacité de stockage limitées.
La structure de base d'un fichier image PALM se compose d'un en-tête, d'une palette de couleurs (si l'image n'est pas monochrome), de données bitmap et éventuellement d'informations de transparence. L'en-tête contient des métadonnées sur l'image, telles que sa largeur et sa hauteur en pixels, la profondeur de bits (qui détermine le nombre de couleurs) et des indicateurs qui indiquent si l'image a un index de transparence ou est compressée.
La compression est une autre caractéristique du format d'image PALM. Pour économiser encore plus d'espace, les images PALM peuvent être compressées à l'aide d'un algorithme de codage de longueur de course (RLE). RLE est une forme de compression de données sans perte où les séquences de la même valeur de données (exécutions) sont stockées sous forme d'une seule valeur de données et d'un nombre. Ceci est particulièrement efficace pour les images avec de grandes zones de couleur uniforme, ce qui est courant dans les icônes et les éléments d'interface utilisateur utilisés dans les PDA.
La transparence dans les images PALM est gérée via un index de transparence. Cet index pointe vers une couleur dans la palette qui est désignée comme transparente, permettant la superposition d'images sur différents arrière-plans sans un rectangle opaque et en bloc autour de l'image. Cette fonctionnalité est essentielle pour créer une interface utilisateur transparente où les icônes et autres graphiques doivent se fondre dans leur arrière-plan.
La palette de couleurs dans une image PALM est un composant critique, car elle définit l'ensemble des couleurs utilisées dans l'image. La palette est un tableau d'entrées de couleur, où chaque entrée est généralement une valeur de 16 bits qui représente une couleur RVB. La profondeur de bits de l'image détermine le nombre maximum de couleurs dans la palette. Par exemple, une image de profondeur de 1 bit aurait une palette de 2 couleurs (généralement noir et blanc), tandis qu'une image de profondeur de 8 bits pourrait avoir jusqu'à 256 couleurs.
Les données bitmap dans un fichier image PALM sont une représentation pixel par pixel de l'image. Chaque pixel est stocké sous forme d'index dans la palette de couleurs. Le stockage de ces données peut être dans un format brut non compressé ou compressé à l'aide de RLE. Dans le format non compressé, les données bitmap sont simplement une séquence d'indices, un pour chaque pixel, disposés en lignes de haut en bas et en colonnes de gauche à droite.
L'un des aspects uniques du format d'image PALM est sa prise en charge de plusieurs profondeurs de bits dans une seule image. Cela signifie qu'une image peut contenir des régions avec différentes résolutions de couleur. Par exemple, une image PALM pourrait avoir une icône haute profondeur de couleur (8 bits) à côté d'un élément décoratif basse profondeur de couleur (1 bit). Cette flexibilité permet une utilisation efficace de la mémoire en utilisant des profondeurs de bits plus élevées uniquement lorsque cela est nécessaire pour la qualité visuelle de l'image.
Le format d'image PALM prend également en charge les icônes personnalisées et les graphiques de menu, qui sont essentiels pour l'interface utilisateur des applications Palm OS. Ces images peuvent être intégrées dans le code de l'application et affichées sur l'appareil à l'aide de l'API Palm OS (interface de programmation d'application). L'API fournit des fonctions pour charger, afficher et manipuler des images PALM, ce qui permet aux développeurs d'intégrer facilement des graphiques dans leurs applications.
Malgré son efficacité et son utilité dans le contexte des appareils Palm OS, le format d'image PALM présente plusieurs limitations par rapport aux formats d'image plus modernes. Par exemple, il ne prend pas en charge les images en vraies couleurs (24 bits ou plus), ce qui limite son utilisation dans les applications nécessitant des graphiques haute fidélité. De plus, le format ne prend pas en charge les fonctionnalités avancées telles que les calques, les canaux alpha (au-delà de la simple transparence) ou les métadonnées comme EXIF (format de fichier image échangeable) que l'on trouve couramment dans des formats comme JPEG ou PNG.
Le format d'image PALM n'est pas largement utilisé en dehors des appareils et applications Palm OS. Avec le déclin des PDA Palm OS et l'essor des smartphones et autres appareils mobiles dotés de systèmes d'exploitation et de capacités graphiques plus avancés, le format PALM est devenu largement obsolète. Les appareils mobiles modernes prennent en charge une large gamme de formats d'image, notamment JPEG, PNG et GIF, qui offrent une plus grande profondeur de couleur, une meilleure compression et plus de fonctionnalités que le format PALM.
À des fins historiques et d'archivage, il peut être nécessaire de convertir des images PALM en formats plus contemporains. Cela peut être fait à l'aide d'outils logiciels spécialisés qui peuvent lire le format PALM et le transformer en un format comme PNG ou JPEG. Ces outils analysent généralement la structure du fichier PALM, extraient les données bitmap et la palette de couleurs, puis reconstruisent l'image dans le format cible, en préservant autant que possible la qualité de l'image d'origine.
En termes d'extension de fichier, les images PALM utilisent généralement l'extension « .pdb » (Palm Database), car elles sont souvent stockées dans des fichiers Palm Database, qui sont des conteneurs pour divers types de données utilisées par les applications Palm OS. Les données d'image sont stockées dans un enregistrement spécifique dans le fichier PDB, auquel l'application peut accéder selon les besoins. Cette intégration avec le système Palm Database facilite le regroupement d'images avec d'autres données d'application, telles que du texte ou des paramètres de configuration.
La création et la manipulation d'images PALM nécessitent une compréhension des spécifications et des limitations du format. Les développeurs travaillant avec Palm OS utilisaient généralement des kits de développement logiciel (SDK) fournis par Palm, qui comprenaient des outils et de la documentation pour travailler avec les images PALM. Ces SDK fourniraient des bibliothèques pour la gestion des images, permettant aux développeurs de créer, modifier et afficher des images PALM dans leurs applications sans avoir à gérer les détails de bas niveau du format de fichier.
En conclusion, le format d'image PALM a joué un rôle important à l'ère des PDA Palm OS en fournissant un moyen simple et efficace de gérer les graphiques sur des appareils aux ressources limitées. Bien qu'il ait été dépassé par des formats d'image plus avancés dans le paysage technologique actuel, la compréhension du format PALM offre un aperçu des considérations de conception et des contraintes des premières plates-formes informatiques mobiles. Pour ceux qui utilisent des applications ou des appareils Palm OS hérités, la connaissance du format PALM reste pertinente pour la maintenance et la conversion d'anciens actifs d'image.
Ce convertisseur fonctionne entièrement dans votre navigateur. Lorsque vous sélectionnez un fichier, il est lu en mémoire et converti dans le format sélectionné. Vous pouvez ensuite télécharger le fichier converti.
Les conversions commencent instantanément, et la plupart des fichiers sont convertis en moins d'une seconde. Les fichiers plus volumineux peuvent prendre plus de temps.
Vos fichiers ne sont jamais téléversés vers nos serveurs. Ils sont convertis dans votre navigateur, puis le fichier converti est téléchargé. Nous ne voyons jamais vos fichiers.
Nous prenons en charge la conversion entre tous les formats d'image, y compris JPEG, PNG, GIF, WebP, SVG, BMP, TIFF, et plus encore.
Ce convertisseur est complètement gratuit, et le restera toujours. Parce qu'il fonctionne dans votre navigateur, nous n'avons pas besoin de payer pour des serveurs, donc nous n'avons pas besoin de vous faire payer.
Oui ! Vous pouvez convertir autant de fichiers que vous voulez simultanément. Il suffit de sélectionner plusieurs fichiers lorsque vous les ajoutez.