Open Source JavaScript API for å legge til og administrere OCR til webapper
Et ledende gratis JavaScript-bibliotek for å legge til funksjonalitet for optisk tegngjenkjenning (OCR) til JS Web Apps og transformere bilder av trykt eller håndskrevet tekst til maskinlesbar tekst gratis.
Tesseract.js er et veldig nyttig JavaScript-bibliotek med åpen kildekode som gjør det mulig for programvareutviklere å integrere funksjonalitet for optisk tegngjenkjenning (OCR) i sine nettapplikasjoner med minimal innsats og kostnad. OCR er prosessen med å konvertere bilder av trykt eller håndskrevet tekst til maskinlesbar tekst. Tesseract.js er en port for den populære Tesseract OCR-motoren, som opprinnelig ble utviklet av Hewlett-Packard på 1980-tallet og senere vedlikeholdt av Google. Tesseract.js kan gjenkjenne over 100 språk, noe som gjør det til et kraftig verktøy for utviklere som ønsker å legge til OCR-funksjonalitet til nettapplikasjonene sine.
Tesseract.js er veldig enkelt å håndtere og kan brukes til en rekke oppgaver, som å trekke ut tekst fra skannede dokumenter, kvitteringer og visittkort, automatisere dataregistreringsoppgaver samt forbedre søkefunksjonaliteten i webapplikasjoner. En av de viktigste fordelene med Tesseract.js er dens evne til å gjenkjenne tekst selv når inndatabildet er av dårlig kvalitet eller oppløsning. Biblioteket bruker maskinlæringsalgoritmer for å forbedre nøyaktigheten til OCR-resultater. Den kan også utføre sidelayoutanalyse og oppdage områder av interesse i et bilde.
Tesseract.js blir populært på grunn av dens brukervennlighet samt kraftige OCR-funksjoner og kan kjøres jevnt enten i en nettleser eller på en server med NodeJS. Den gir en enkel API som lar programvareutviklere konfigurere OCR-alternativer som språk, sidesegmenteringsmodus og hvitelistetegn. Dens evne til å gjenkjenne tekst fra bilder av dårlig kvalitet og støtte for flere språk gjør den til et verdifullt verktøy for et bredt spekter av applikasjoner og et utmerket valg for utviklere som ønsker å legge til OCR i nettapplikasjonene sine.
Kom i gang med Tesseract.js
Den anbefalte måten å installere Tesseract.js på er å bruke npm. Bruk følgende kommando for en jevn installasjon
Installer Tesseract.jsvia npm
npm install tesseract.js
Du kan også installere det manuelt; last ned de siste utgivelsesfilene direkte fra GitHub-depotet.
Konverter bilde til tekst via JavaScript API
Åpen kildekode JavaScript-biblioteket Tesseract.js gjør det enkelt for programvareutviklere å jobbe med ulike typer bilder som BMP, JPG, PNG, PBM, WebP og flere. Biblioteket støtter uttrekking av tekst fra bilder for å automatisere behandlingen av tekster på bilder, PDF-er og skannede dokumenter. Følgende eksempel viser hvordan du laster et bilde og ekstrahert tekst fra det med bare et par linjer med kode. Språkargumentet brukes til å bestemme de trente språkdataene som skal brukes i behandling av bilder. Programvareutviklere kan bruke flere språk her.
Hvordan konvertere bilde til tekst ved hjelp av JavaScript API?
Tesseract.recognize(
image,language,
{
logger: m => console.log(m)
}
)
.catch (err => {
console.error(err);
})
.then(result => {
console.log(result);
})
}
Les en bilderegion og trekk ut tekst via JS API
Åpen kildekode JavaScript-biblioteket har inkludert en svært nyttig funksjon for å lese et bestemt område inne i et bilde og fange opp dataene i JavaScript-applikasjoner. API-en støtter fangst av bildeområdet og prøver å gjenkjenne tekst i denne regionen ved hjelp av den interne kraftige OCR-motoren. Følgende eksempler viser hvordan programvareutviklere kan gi URL til bildet, og API-en kan enkelt oppdage og gjenkjenne tekst i det valgte området.
Les og gjenkjenne tekst i en valgt region av et bilde via JS API
const { createWorker } = require('tesseract.js');
const worker = await createWorker();
const rectangle = { left: 0, top: 0, width: 500, height: 250 };
(async () => {
await worker.loadLanguage('eng');
await worker.initialize('eng');
const { data: { text } } = await worker.recognize('https://tesseract.projectnaptha.com/img/eng_bw.png', { rectangle });
console.log(text);
await worker.terminate();
})();