Atvērtā pirmkoda JavaScript API, lai pievienotu un pārvaldītu OCR tīmekļa lietotnēm
Vadošā bezmaksas JavaScript bibliotēka optiskās rakstzīmju atpazīšanas (OCR) funkcionalitātes pievienošanai JS Web Apps un bez maksas pārveido drukāta vai ar roku rakstīta teksta attēlus mašīnlasāmā tekstā.
Tesseract.js ir ļoti noderīga atvērtā pirmkoda JavaScript bibliotēka, kas programmatūras izstrādātājiem ļauj integrēt optiskās rakstzīmju atpazīšanas (OCR) funkcionalitāti savās tīmekļa lietojumprogrammās ar minimālām pūlēm un izmaksām. OCR ir process, kurā drukāta vai ar roku rakstīta teksta attēlus pārvērš mašīnlasāmā tekstā. Tesseract.js ir populārā Tesseract OCR dzinēja pieslēgvieta, ko sākotnēji 80. gados izstrādāja Hewlett-Packard un vēlāk uzturēja Google. Tesseract.js var atpazīt vairāk nekā 100 valodas, padarot to par jaudīgu rīku izstrādātājiem, kuri vēlas savām tīmekļa lietojumprogrammām pievienot OCR funkcionalitāti.
Tesseract.js ir ļoti viegli apstrādājams, un to var izmantot dažādiem uzdevumiem, piemēram, teksta izvilkšanai no skenētiem dokumentiem, čekiem un vizītkartēm, datu ievades uzdevumu automatizēšanai, kā arī meklēšanas funkcionalitātes uzlabošanai tīmekļa lietojumprogrammās. Viena no galvenajām Tesseract.js priekšrocībām ir tā spēja atpazīt tekstu pat tad, ja ievades attēlam ir slikta kvalitāte vai izšķirtspēja. Bibliotēka izmanto mašīnmācīšanās algoritmus, lai uzlabotu OCR rezultātu precizitāti. Tas var arī veikt lapas izkārtojuma analīzi un noteikt interesējošos reģionus attēlā.
Tesseract.js kļūst populārs, pateicoties tā lietošanas vienkāršībai, kā arī jaudīgajām OCR iespējām, un to var bez problēmām palaist pārlūkprogrammā vai serverī ar NodeJS. Tas nodrošina vienkāršu API, kas programmatūras izstrādātājiem ļauj konfigurēt OCR opcijas, piemēram, valodu, lapu segmentācijas režīmu un baltā saraksta rakstzīmes. Tā spēja atpazīt tekstu no sliktas kvalitātes attēliem un atbalsts vairākām valodām padara to par vērtīgu rīku plašam lietojumprogrammu klāstam un lielisku izvēli izstrādātājiem, kuri vēlas pievienot OCR savām tīmekļa lietojumprogrammām.
Darba sākšana ar Tesseract.js
Ieteicamais veids, kā instalēt Tesseract.js, ir izmantot npm. Lūdzu, izmantojiet šo komandu vienmērīgai instalēšanai
Instalējiet Tesseract.jsvia npm
npm install tesseract.js
Varat to instalēt arī manuāli; lejupielādējiet jaunāko laidienu failus tieši no GitHub krātuves.
Pārveidojiet attēlu par tekstu, izmantojot JavaScript API
Atvērtā pirmkoda JavaScript bibliotēka Tesseract.js ļauj programmatūras izstrādātājiem viegli strādāt ar dažāda veida attēliem, piemēram, BMP, JPG, PNG, PBM, WebP un citiem. Bibliotēka atbalsta teksta izvilkšanu no attēliem, lai automatizētu attēlu, PDF un skenēto dokumentu tekstu apstrādi. Nākamajā piemērā parādīts, kā ielādēt attēlu un no tā izvilktu tekstu, izmantojot tikai dažas koda rindiņas. Valodas arguments tiek izmantots, lai noteiktu apmācītās valodas datus, kas jāizmanto attēlu apstrādē. Programmatūras izstrādātāji šeit var izmantot vairākas valodas.
Kā pārveidot attēlu par tekstu, izmantojot JavaScript API?
Tesseract.recognize(
image,language,
{
logger: m => console.log(m)
}
)
.catch (err => {
console.error(err);
})
.then(result => {
console.log(result);
})
}
Lasīt attēla reģionu un izvilkt tekstu, izmantojot JS API
Atvērtā pirmkoda JavaScript bibliotēkā ir iekļautas ļoti noderīgas funkcijas, lai nolasītu noteiktu attēla apgabalu un tvertu tā datus JavaScript lietojumprogrammās. API atbalsta attēla apgabala tveršanu un mēģina atpazīt tekstu šajā reģionā, izmantojot iekšējo jaudīgo OCR dzinēju. Tālāk minētie piemēri parāda, kā programmatūras izstrādātāji var nodrošināt attēla URL un API var viegli noteikt un atpazīt tekstu atlasītajā apgabalā.
Lasīt un atpazīt tekstu atlasītajā attēla reģionā, izmantojot 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();
})();