Free JavaScript Library to Parse Text from Scanned Images & Forms
Open Source Optical Character Recognition (OCR) JavaScript library for Parsing Text from Black-&-White Scanned Images & Documents with Image Preprocessing & Templates Support in Web or Node.js Apps.
Nel mondo digitale moderno, la tecnologia di riconoscimento ottico dei caratteri (OCR) svolge un ruolo cruciale nella trasformazione di immagini scansionate, appunti scritti a mano o documenti stampati in dati modificabili e ricercabili. Per gli sviluppatori JavaScript alla ricerca di una soluzione leggera e open source, Guten OCR offre una scelta convincente. Questo motore OCR basato su JavaScript è progettato con semplicità, rendendolo ideale per incorporare funzionalità OCR direttamente in applicazioni basate su browser o Node.js. Sono presenti diverse funzionalità importanti nella libreria, come il riconoscimento dei caratteri tramite modelli, la sogliatura e binarizzazione delle immagini, la segmentazione dei caratteri, il matching dei modelli e l'assemblaggio del testo, il supporto a una base di codice modulare e così via. Si concentra sul riconoscimento di testo stampato da documenti scansionati in bianco e nero ed è particolarmente adatto a testi ben formattati, come libri o moduli.
Guten OCR è un motore OCR JavaScript open source creato da Gutenye. A differenza degli strumenti OCR pesanti che richiedono dipendenze esterne o una configurazione estesa, Guten OCR è scritto interamente in JavaScript, il che significa che può essere eseguito in un browser web o sul server con Node.js. La libreria utilizza tecniche di elaborazione delle immagini di base per segmentare i caratteri e identificarli mediante un sistema di riconoscimento di pattern di caratteri. Sebbene non sia ancora al livello dei motori OCR commerciali come Tesseract per quanto riguarda il supporto multilingue o al testo scritto a mano, la sua semplicità e la possibilità di personalizzazione la rendono un’opzione fantastica per progetti educativi, proof‑of‑concept o funzionalità OCR integrate in applicazioni web personalizzate. A differenza di Tesseract o di altri motori più grandi, Guten OCR è intenzionalmente leggero e focalizzato — un eccellente punto di partenza per chi vuole capire come funziona l’OCR sotto il cofano.
Iniziare con Guten OCR
Il modo consigliato per installare Guten OCR è utilizzare Brew. Utilizza il comando seguente per un'installazione senza problemi
Installa Guten OCR tramite Brew
brew install git-lfs Installa Guten OCR tramite GitHub
git clone git@github.com:gutenye/ocr.git Puoi anche installarlo manualmente; scarica i file dell'ultima release direttamente dal repository GitHub.
Pre‑elaborazione dell'Immagine Prima delle Operazioni OCR
La libreria open source Guten OCR è scritta interamente in JavaScript, rendendola compatibile sia con ambienti browser sia con Node.js. Include funzioni integrate di pre‑elaborazione delle immagini per migliorare la precisione del riconoscimento. Supporta la binarizzazione dell'immagine (conversione in bianco e nero), la riduzione del rumore, la correzione dell'inclinazione e altro. L'esempio seguente mostra come gli sviluppatori possano applicare più passaggi di pre‑elaborazione prima di eseguire l'operazione OCR sulle immagini.
Come Applicare la Pre‑elaborazione dell'Immagine prima dell'Operazione OCR tramite la Libreria 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(/* ... */);
Riconoscimento dei Caratteri tramite Modelli
La libreria JavaScript Guten OCR fornisce supporto completo per eseguire operazioni OCR utilizzando modelli all'interno delle applicazioni JavaScript. Al cuore di Guten OCR c'è un sistema di matching dei modelli. Invece di addestrare un modello di machine learning, utilizza pattern di caratteri predefiniti. Questo rende il sistema più veloce e più facile da comprendere, ma più sensibile alla coerenza di font e layout. Per eseguire questo compito la libreria rende ogni carattere (A–Z, a–z, 0–9, ecc.) in un canvas e poi la matrice binaria per ciascun carattere diventa un modello di riferimento. Quando analizza un'immagine, la libreria confronta i segmenti dell'immagine con questi modelli per trovare la corrispondenza migliore. Lo fa usando una combinazione di scansione verticale e orizzontale per individuare le bounding box.
Segmentazione dei Caratteri tramite la Libreria OCR
La libreria JavaScript open source Guten OCR consente agli sviluppatori di eseguire con facilità la segmentazione dei caratteri. Una volta che l'immagine è binarizzata, il passo successivo è segmentare i singoli caratteri. Guten OCR analizza righe e colonne per rilevare regioni con pixel neri densi, separandole in potenziali caratteri. L'esempio seguente dimostra come gli sviluppatori possano eseguire la segmentazione dei caratteri usando la libreria OCR JavaScript.
Come Eseguire la Segmentazione dei Caratteri usando la Libreria JavaScript?
const segment = require('guten-ocr/segment');
const boxes = segment(binarized); // returns array of [x, y, width, height]