Libreria JavaScript gratuita per analizzare il testo da immagini e moduli scansionati
Libreria JavaScript open source per il riconoscimento ottico dei caratteri (OCR) per l'analisi del testo da immagini e documenti in bianco‑e‑nero con preelaborazione delle immagini e supporto ai modelli per app Web o Node.js.
Nell'era digitale moderna, la tecnologia di riconoscimento ottico dei caratteri (OCR) svolge un ruolo fondamentale 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à in mente, rendendolo ideale per integrare funzionalità OCR direttamente in applicazioni basate su browser o Node.js. La libreria comprende diverse funzionalità importanti, 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 del testo stampato da documenti scansionati in bianco e nero ed è più adatto a testi ben formattati, come libri o moduli.
Guten OCR è un motore OCR open-source in JavaScript 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 immagini di base per segmentare i caratteri e identificarli mediante un sistema di riconoscimento di pattern di caratteri. Sebbene non sia ancora in grado di competere con i motori OCR commerciali come Tesseract per quanto riguarda il supporto multilingue o la scrittura a mano, la sua semplicità e la sua hackability lo 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, rendendolo un eccellente punto di partenza per chi desidera capire come funziona l'OCR sotto il cofano.
Iniziare con Guten OCR
Il modo consigliato per installare Guten OCR è utilizzare Brew. Si prega di usare il comando seguente per un'installazione senza problemi
Installa Guten OCR via Brew
brew install git-lfs Installa Guten OCR via GitHub
git clone git@github.com:gutenye/ocr.git Puoi anche installarlo manualmente; scarica i file dell'ultima versione direttamente dal repository GitHub.
Preelaborazione delle immagini prima delle operazioni OCR
La libreria open source Guten OCR è scritta interamente in JavaScript, rendendola compatibile sia con ambienti browser che Node.js. Include funzioni integrate di pre‑elaborazione delle immagini per migliorare l'accuratezza del riconoscimento. Supporta la binarizzazione delle immagini (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 delle immagini prima di eseguire l'operazione OCR sulle immagini.
Come applicare la pre-elaborazione delle immagini prima dell'operazione OCR tramite 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 ha fornito un supporto completo per eseguire operazioni OCR utilizzando template all'interno delle applicazioni JavaScript. Al centro di Guten OCR c'è un sistema di corrispondenza dei template. Invece di addestrare un modello di apprendimento automatico, 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 questa operazione la libreria rende ogni carattere (A–Z, a–z, 0–9, ecc.) in un canvas e poi la matrice binaria per ogni carattere diventa un template di riferimento. Quando analizza un'immagine, la libreria confronta i segmenti dell'immagine con questi template per trovare la corrispondenza migliore. Lo fa usando una combinazione di scansione verticale e orizzontale delle linee per individuare le bounding box.
Segmentazione dei caratteri tramite libreria OCR
La libreria JavaScript open source Guten OCR consente agli sviluppatori software di eseguire la segmentazione dei caratteri con facilità. Una volta che l'immagine è binarizzata, il passo successivo è segmentare i singoli caratteri. Guten OCR scansiona righe e colonne per rilevare regioni con pixel neri densi, separandole in potenziali caratteri. L'esempio seguente dimostra come gli sviluppatori software possano eseguire la segmentazione dei caratteri utilizzando 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]