Open Source JavaScript API för att lägga till och hantera OCR till webbappar
Ett ledande gratis JavaScript-bibliotek för att lägga till funktionalitet för optisk teckenigenkänning (OCR) till JS Web Apps och förvandla bilder av tryckt eller handskriven text till maskinläsbar text gratis.
Tesseract.js är ett mycket användbart JavaScript-bibliotek med öppen källkod som gör det möjligt för mjukvaruutvecklare att integrera funktionalitet för optisk teckenigenkänning (OCR) i sina webbapplikationer med minimal ansträngning och kostnad. OCR är processen att konvertera bilder av tryckt eller handskriven text till maskinläsbar text. Tesseract.js är en port för den populära Tesseract OCR-motorn, som ursprungligen utvecklades av Hewlett-Packard på 1980-talet och senare underhålls av Google. Tesseract.js kan känna igen över 100 språk, vilket gör det till ett kraftfullt verktyg för utvecklare som vill lägga till OCR-funktioner till sina webbapplikationer.
Tesseract.js är mycket lätt att hantera och kan användas för en mängd olika uppgifter, som att extrahera text från skannade dokument, kvitton och visitkort, automatisera datainmatningsuppgifter samt förbättra sökfunktionaliteten i webbapplikationer. En av de viktigaste fördelarna med Tesseract.js är dess förmåga att känna igen text även när inmatningsbilden är av dålig kvalitet eller upplösning. Biblioteket använder maskininlärningsalgoritmer för att förbättra noggrannheten i OCR-resultat. Den kan också utföra sidlayoutanalys och upptäcka intressanta områden i en bild.
Tesseract.js blir populärt på grund av dess enkla användning samt kraftfulla OCR-funktioner och kan köras smidigt antingen i en webbläsare eller på en server med NodeJS. Det tillhandahåller ett enkelt API som gör att programvaruutvecklare kan konfigurera OCR-alternativ som språk, sidsegmenteringsläge och vitlistastecken. Dess förmåga att känna igen text från bilder av dålig kvalitet och stöd för flera språk gör den till ett värdefullt verktyg för ett brett utbud av applikationer och ett utmärkt val för utvecklare som vill lägga till OCR i sina webbapplikationer.
Komma igång med Tesseract.js
Det rekommenderade sättet att installera Tesseract.js är att använda npm. Använd följande kommando för en smidig installation
Installera Tesseract.jsvia npm
npm install tesseract.js
Du kan också installera det manuellt; ladda ner de senaste versionsfilerna direkt från GitHub-förrådet.
Konvertera bild till text via JavaScript API
JavaScript-biblioteket med öppen källkod Tesseract.js gör det enkelt för mjukvaruutvecklare att arbeta med olika typer av bilder som BMP, JPG, PNG, PBM, WebP med flera. Biblioteket stöder extrahering av text från bilder för att automatisera behandlingen av texter på bilder, PDF-filer och skannade dokument. Följande exempel visar hur man laddar en bild och extraherad text från den med bara ett par rader kod. Språkargumentet används för att bestämma den tränade språkdata som ska användas vid bearbetning av bilder. Mjukvaruutvecklare kan använda flera språk här.
Hur konverterar man bild till text med JavaScript API?
Tesseract.recognize(
image,language,
{
logger: m => console.log(m)
}
)
.catch (err => {
console.error(err);
})
.then(result => {
console.log(result);
})
}
Läs en bildregion och extrahera text via JS API
JavaScript-biblioteket med öppen källkod har inkluderat en mycket användbar funktion för att läsa ett visst område inuti en bild och fånga dess data i JavaScript-applikationer. API:et stöder att fånga bildområdet och försöker känna igen text i denna region med den interna kraftfulla OCR-motorn. Följande exempel visar hur mjukvaruutvecklare kan tillhandahålla URL till bilden och API:et kan enkelt upptäcka och känna igen text i det valda området.
Läsa och känna igen text i en vald region av en bild 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();
})();