Ingyenes JavaScript könyvtár a beolvasott képek és űrlapok szövegének kinyeréséhez
Nyílt forráskódú optikai karakterfelismerő (OCR) JavaScript könyvtár a Szöveg kinyeréséhez fekete-fehér beolvasott képekből és dokumentumokból, képelőfeldolgozással és sablonok támogatásával webes vagy Node.js alkalmazásokban.
A modern digitális világban az optikai karakterfelismerő (OCR) technológia kulcsfontosságú szerepet játszik a beolvasott képek, kézírásos jegyzetek vagy nyomtatott dokumentumok szerkeszthető és kereshető adatokba alakításában. A könnyűsúlyú és nyílt forráskódú megoldást kereső JavaScript fejlesztők számára a Guten OCR vonzó választás. Ez a JavaScript-alapú OCR motor egyszerűségre épül, így ideális közvetlenül a böngészőben vagy Node.js alkalmazásokban történő OCR funkciók beágyazásához. A könyvtár számos fontos funkcióval rendelkezik, mint például karakterfelismerés sablonok alapján, képszintű küszöbölés és binarizálás, karakter szegmentálás, sablonillesztés és szövegösszeállítás, moduláris kódbázis támogatás stb. Főként a nyomtatott szöveg felismerésére fókuszál fekete-fehér beolvasott dokumentumokból, és leginkább jól formázott szövegekhez, például könyvekhez vagy űrlapokhoz alkalmas.
A Guten OCR egy nyílt forráskódú JavaScript OCR motor, amelyet a Gutenye hozott létre. A nehéz OCR eszközökkel, amelyek külső függőségeket vagy kiterjedt beállítást igényelnek, szemben a Guten OCR teljes egészében JavaScriptben íródott, ami azt jelenti, hogy futtatható webes böngészőben vagy szerveren Node.js alatt. A könyvtár alapvető képfeldolgozási technikákat használ a karakterek szegmentálásához és azok felismeréséhez egy karakter mintafelismerő rendszerrel. Bár még nem versenyez a kereskedelmi OCR motorokkal, mint a Tesseract, a többnyelvű vagy kézírásos szöveg támogatásában, egyszerűsége és hackelhetősége fantasztikus lehetőséget nyújt oktatási projektekhez, koncepciók bizonyításához vagy egyedi webalkalmazásokba ágyazott OCR funkciókhoz. A Tesseract vagy más nagyobb motorokkal ellentétben a Guten OCR szándékosan könnyű és fókuszált – kiváló kiindulópont azok számára, akik meg akarják érteni, hogyan működik az OCR a háttérben.
A Guten OCR használata
A Guten OCR telepítésének ajánlott módja a Brew használata. Kérjük, használja az alábbi parancsot a zökkenőmentes telepítéshez
Guten OCR telepítése Brew-en keresztül
brew install git-lfs Guten OCR telepítése GitHub-on keresztül
git clone git@github.com:gutenye/ocr.git Telepítheti manuálisan is; a legújabb kiadási fájlokat közvetlenül a GitHub tárolóból töltheti le.
Képelőfeldolgozás OCR műveletek előtt
A nyílt forráskódú Guten OCR könyvtár teljes egészében JavaScriptben íródott, így kompatibilis a böngésző és a Node.js környezettel egyaránt. Beépített képelőfeldolgozó funkciókat tartalmaz a felismerési pontosság javításához. Támogatja a képek binarizálását (fekete-fehér konvertálás), zajcsökkentést, dőléskorrekciót és egyebeket. Az alábbi példa bemutatja, hogyan alkalmazhat több képelőfeldolgozási lépést a fejlesztők a képeken végzett OCR művelet előtt.
Hogyan alkalmazzon képelőfeldolgozást OCR művelet előtt JavaScript könyvtárral?
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(/* ... */);
Karakterfelismerés sablonokkal
A JavaScript könyvtár Guten OCR teljes körű támogatást nyújt az OCR műveletek sablonok használatával JavaScript alkalmazásokban. A Guten OCR középpontjában egy sablon-illesztő rendszer áll. A gépi tanulási modell helyett előre definiált karaktermintákat használ. Ez a rendszer gyorsabb és könnyebben érthető, de érzékenyebb a betűtípus és a layout következetességére. A feladat elvégzéséhez a könyvtár minden egyes karaktert (A–Z, a–z, 0–9 stb.) egy vászonra renderel, majd egy bináris mátrix lesz a referencia sablonja. Amikor egy képet elemzi, a könyvtár a képrészleteket összehasonlítja ezekkel a sablonokkal, hogy megtalálja a legjobb egyezést. Ehhez függőleges és vízszintes vonalvizsgálat kombinációját használja a határoló keretek meghatározásához.
Karakter szegmentálás OCR könyvtárral
A nyílt forráskódú JavaScript könyvtár Guten OCR lehetővé teszi a fejlesztők számára a karakter szegmentálást egyszerűen. Miután a kép binarizálva lett, a következő lépés az egyes karakterek szegmentálása. A Guten OCR sorokat és oszlopokat vizsgál, hogy sűrű fekete pixeleket tartalmazó területeket találjon, ezeket pedig potenciális karakterekké bontja. Az alábbi példa bemutatja, hogyan valósíthatják meg a fejlesztők a karakter szegmentálást a JavaScript OCR könyvtár segítségével.
Hogyan hajtson végre karakter szegmentálást JavaScript könyvtárral?
const segment = require('guten-ocr/segment');
const boxes = segment(binarized); // returns array of [x, y, width, height]