Bibliothèque JavaScript gratuite pour analyser le texte à partir d'images et de formulaires numérisés
Bibliothèque JavaScript open source de reconnaissance optique de caractères (OCR) pour analyser le texte à partir d'images et de documents numérisés en noir et blanc avec prétraitement d'image et prise en charge des modèles dans les applications Web ou Node.js.
Dans le monde numérique moderne, la technologie de reconnaissance optique de caractères (OCR) joue un rôle essentiel dans la transformation d'images numérisées, de notes manuscrites ou de documents imprimés en données éditables et consultables. Pour les développeurs JavaScript à la recherche d'une solution légère et open source, Guten OCR offre un choix convaincant. Ce moteur OCR basé sur JavaScript est conçu avec simplicité à l'esprit, ce qui le rend idéal pour intégrer des fonctionnalités OCR directement dans des applications côté navigateur ou Node.js. Plusieurs fonctionnalités importantes font partie de la bibliothèque, telles que la reconnaissance de caractères via des modèles, le seuillage et la binarisation d'images, la segmentation de caractères, la correspondance de modèles et l'assemblage de texte, le support d'une base de code modulaire, etc. Il se concentre sur la reconnaissance de texte imprimé à partir de documents numérisés en noir et blanc et convient le mieux aux textes bien formatés, comme les livres ou les formulaires.
Guten OCR est un moteur OCR open-source en JavaScript créé par Gutenye. Contrairement aux outils OCR lourds qui nécessitent des dépendances externes ou une configuration étendue, Guten OCR est entièrement écrit en JavaScript, ce qui signifie qu'il peut s'exécuter dans un navigateur web ou sur le serveur avec Node.js. La bibliothèque utilise des techniques de traitement d'image de base pour segmenter les caractères et les identifier à l'aide d'un système de reconnaissance de motifs de caractères. Bien qu'il ne rivalise pas encore avec les moteurs OCR commerciaux comme Tesseract en termes de prise en charge multilingue ou de texte manuscrit, sa simplicité et sa hackabilité en font une option fantastique pour les projets éducatifs, les preuves de concept ou les fonctionnalités OCR intégrées dans des applications web personnalisées. Contrairement à Tesseract ou à d'autres moteurs plus volumineux, Guten OCR est intentionnellement léger et ciblé—ce qui en fait un excellent point de départ pour ceux qui souhaitent comprendre le fonctionnement de l'OCR en profondeur.
Commencer avec Guten OCR
La méthode recommandée pour installer Guten OCR est d'utiliser Brew. Veuillez utiliser la commande suivante pour une installation fluide
Installer Guten OCR via Brew
brew install git-lfs Installer Guten OCR via GitHub
git clone git@github.com:gutenye/ocr.git Vous pouvez également l'installer manuellement ; téléchargez les derniers fichiers de version directement depuis le dépôt GitHub.
Prétraitement d'image avant les opérations OCR
La bibliothèque open source Guten OCR est entièrement écrite en JavaScript, ce qui la rend compatible à la fois avec les navigateurs et les environnements Node.js. Elle comprend des fonctions intégrées de prétraitement d'images pour améliorer la précision de la reconnaissance. Elle prend en charge la binarisation d'image (conversion en noir et blanc), la réduction du bruit, la correction de l'inclinaison et plus encore. L'exemple suivant montre comment les développeurs peuvent appliquer plusieurs étapes de prétraitement d'images avant d'effectuer une opération OCR sur les images.
Comment appliquer le prétraitement d'image avant l'opération OCR via une bibliothèque JavaScript ?
const { preprocess } = require('guten-ocr');
// Apply multiple preprocessing steps
const processedImage = preprocess(imageData, [
'grayscale', // Convert to grayscale
'binarize', // Convert to black and white
'deskew', // Correct skew
'denoise' // Reduce noise
]);
// Then perform OCR on the processed image
ocr.recognize(processedImage).then(/* ... */);
Reconnaissance de caractères via des modèles
La bibliothèque JavaScript Guten OCR a fourni un support complet pour effectuer des opérations OCR en utilisant des modèles au sein des applications JavaScript. Au cœur de Guten OCR se trouve un système de correspondance de modèles. Au lieu d'entraîner un modèle d'apprentissage automatique, il utilise des motifs de caractères prédéfinis. Cela rend le système plus rapide et plus facile à comprendre, mais plus sensible à la cohérence des polices et de la mise en page. Pour réaliser cette tâche, la bibliothèque rend chaque caractère (A–Z, a–z, 0–9, etc.) dans un canvas, puis la matrice binaire de chaque caractère devient un modèle de référence. Lors de l'analyse d'une image, la bibliothèque compare les segments d'image à ces modèles pour trouver la meilleure correspondance. Elle le fait en utilisant une combinaison de balayage vertical et horizontal des lignes pour localiser les boîtes englobantes.
Segmentation de caractères via la bibliothèque OCR
La bibliothèque JavaScript open source Guten OCR permet aux développeurs de logiciels d'effectuer la segmentation de caractères avec facilité. Une fois l'image binarisée, l'étape suivante consiste à segmenter les caractères individuels. Guten OCR analyse les lignes et les colonnes pour détecter les zones contenant des pixels noirs denses, les séparant en caractères potentiels. L'exemple suivant montre comment les développeurs de logiciels peuvent réaliser la segmentation de caractères en utilisant la bibliothèque OCR JavaScript.
Comment réaliser la segmentation de caractères en utilisant une bibliothèque JavaScript ?
const segment = require('guten-ocr/segment');
const boxes = segment(binarized); // returns array of [x, y, width, height]