Gratis JavaScript-bibliotek for å analysere tekst fra skannede bilder og skjemaer
Open Source optisk tegngjenkjenning (OCR) JavaScript-bibliotek for å analysere tekst fra svart‑hvite skannede bilder og dokumenter med bildeforbehandling og malstøtte i web‑ eller Node.js‑apper.
I den moderne digitale verden spiller optisk tegngjenkjenning (OCR) teknologi en kritisk rolle i å omforme skannede bilder, håndskrevne notater eller trykte dokumenter til redigerbare og søkbare data. For JavaScript‑utviklere som leter etter en lettvektig og åpen kildekode‑løsning, tilbyr Guten OCR et overbevisende valg. Denne JavaScript‑baserte OCR‑motoren er designet med enkelhet i tankene, noe som gjør den ideell for å integrere OCR‑funksjoner direkte i nettleser‑baserte eller Node.js‑applikasjoner. Biblioteket inneholder flere viktige funksjoner, som tegngjenkjenning via maler, bilde‑terskling og binarisering, tegnsegmentering, mal‑matching og tekst‑sammensetting, modulær kodebase‑støtte osv. Den fokuserer på å gjenkjenne trykt tekst fra svart‑hvite skannede dokumenter og er best egnet for velformatert tekst, som bøker eller skjemaer.
Guten OCR er en åpen kildekode JavaScript OCR-motor laget av Gutenye. I motsetning til tunge OCR-verktøy som krever eksterne avhengigheter eller omfattende oppsett, er Guten OCR skrevet helt i JavaScript, noe som betyr at den kan kjøre i en nettleser eller på serveren med Node.js. Biblioteket bruker grunnleggende bildebehandlingsteknikker for å segmentere tegn og identifisere dem ved hjelp av et tegnmønstergjenkjenningssystem. Selv om den ennå ikke kan konkurrere med kommersielle OCR-motorer som Tesseract når det gjelder flerspråklig eller håndskrevet tekststøtte, gjør dens enkelhet og hackbarhet den til et fantastisk alternativ for utdanningsprosjekter, proof-of-concepts eller innebygde OCR-funksjoner i tilpassede web‑apper. I motsetning til Tesseract eller andre større motorer er Guten OCR bevisst lettvektig og fokusert – noe som gjør den til et utmerket utgangspunkt for de som ønsker å forstå hvordan OCR fungerer under panseret.
Kom i gang med Guten OCR
Den anbefalte måten å installere Guten OCR på er ved å bruke Brew. Vennligst bruk følgende kommando for en smidig installasjon
Installer Guten OCR via Brew
brew install git-lfs Installer Guten OCR via GitHub
git clone git@github.com:gutenye/ocr.git Du kan også installere den manuelt; last ned de nyeste utgivelsesfilene direkte fra GitHub-repositoriet.
Bildeforbehandling før OCR‑operasjoner
Det åpne kildekodebiblioteket Guten OCR er skrevet helt i JavaScript, noe som gjør det kompatibelt med både nettleser- og Node.js-miljøer. Det inkluderer innebygde bildeforbehandlingsfunksjoner for å forbedre gjenkjenningsnøyaktigheten. Det støtter bilde-binarisering (konvertering til svart‑hvitt), støyreduksjon, skjevhetskorreksjon og mer. Følgende eksempel viser hvordan utviklere kan anvende flere bildeforbehandlingssteg før de utfører OCR‑operasjon på bilder.
Hvordan bruke bildeforbehandling før OCR-operasjon via JavaScript-bibliotek?
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(/* ... */);
Tegngjenkjenning via maler
JavaScript-biblioteket Guten OCR har gitt full støtte for å utføre OCR-operasjoner ved hjelp av maler i JavaScript-applikasjoner. I hjertet av Guten OCR er et mal‑matching‑system. I stedet for å trene en maskinlæringsmodell, bruker det forhåndsdefinerte tegnmønstre. Dette gjør systemet raskere og lettere å forstå, men mer sensitivt for skrifttype‑ og layoutkonsistens. For å utføre denne oppgaven rendrer biblioteket hvert tegn (A–Z, a–z, 0–9, osv.) i et lerret, og den binære matrisen for hvert tegn blir en referansemal. Når et bilde analyseres, sammenligner biblioteket bildesegmenter med disse malene for å finne den beste matchen. Det gjør dette ved hjelp av en kombinasjon av vertikal og horisontal linjeskanning for å lokalisere avgrensningsbokser.
Tegnssegmentering via OCR‑bibliotek
Det åpne kildekode‑JavaScript‑biblioteket Guten OCR gjør det enkelt for programvareutviklere å utføre tegnsegmentering. Når bildet er binarisert, er neste steg å segmentere individuelle tegn. Guten OCR skanner rader og kolonner for å oppdage områder med tett svarte piksler, og deler dem inn i potensielle tegn. Følgende eksempel demonstrerer hvordan programvareutviklere kan utføre tegnsegmentering ved hjelp av JavaScript OCR‑biblioteket.
Hvordan utføre tegnsegmentering ved hjelp av JavaScript-bibliotek?
const segment = require('guten-ocr/segment');
const boxes = segment(binarized); // returns array of [x, y, width, height]