Ingyenes optikai karakterfelismerő API kínai kéziratokhoz
Nyílt forráskódú C++ OCR a OCR műveletek végrehajtásához kínai kéziratokon sablonalapú egyezés használatával, ahol a karakterek pixelről pixelre egyeznek az ismert mintákkal.
Mi az ingyenes C++ OCR?
Az optikai karakterfelismerés (OCR) nem latin írásrendszerekben – különösen a kínai nyelvben – egyedi kihívásokat jelent a karakterek összetettsége és változatossága miatt. Szerencsére Sebastian Starke nyílt forráskódú OCR C++ API-ja tiszta, bővíthető megoldást kínál, amely a nyomtatott vagy kézírásos kínai karakterek felismerésére van szabva, különösen kézirati forrásokból. Egyszerűségre és alkalmazkodóképességre tervezve, ez a könnyű API lehetővé teszi a fejlesztők számára, hogy klasszikus képfeldolgozási módszerekkel kísérletezzenek a karakterfelismerésben a nehéz gépi tanulási modellek helyett.
Ez a projekt nem egy teljes körű neurális OCR motor, mint a Tesseract. Ehelyett más utat választ: sablonalapú egyezést használ, ahol a karakterek pixelről pixelre egyeznek a ismert mintákkal. Ez ideálissá teszi oktatási célokra, kontrollált környezetekben vagy specifikus feladatokra, mint például történelmi kéziratok elemzése, hagyományos kínai betűtípusok vagy egyszerűsített kézírási adathalmazok. A projekt különösen alkalmas alacsony erőforrásigényű környezetekben dolgozó fejlesztőknek, például beágyazott Linux rendszerek, Raspberry Pi vagy ipari szkennelő eszközök esetén, mivel nem támaszkodik nehéz függőségekre vagy mélytanulási könyvtárakra.
Az OCR használatának megkezdése
Az OCR telepítésének ajánlott módja a GitHub használata. Kérjük, használja a következő parancsot a zökkenőmentes telepítéshez.
OCR API telepítése GitHubon keresztül
OCR API telepítése GitHubon keresztül
git clone https://github.com/sebastianstarke/OCR.git Telepítheti manuálisan is; töltse le a legújabb kiadási fájlokat közvetlenül a GitHub tárolóból.
Sablonalapú OCR motor
Az open source optikai karakterfelismerés (OCR) kínai kéziratokban C++ API teljes körű támogatást nyújt a sablonalapú OCR motor C++ alkalmazásokban való használatához. A könyvtár szívében egy klasszikus képarány-összehasonlító rendszer áll: a karakterképeket binarizálják, majd távolságmetrika (általában pixelről pixelre összehasonlítás) alapján hasonlítják össze a sablonokkal. Kínai nyelv esetén ez különösen hasznos, ha egységes kalligráfiáról vagy nyomtatott kéziratokról van szó.
Hogyan végezhető sablonalapú OCR felismerés C++ alkalmazásokban?
OCR::TemplateCollection templates;
templates.loadFromFolder("templates/"); // Load preprocessed characters
OCR::Recognizer recognizer(templates);
std::string recognizedText = recognizer.recognizeFromImage("scanned_page.png");
Kép előfeldolgozás támogatása
Az open source OCR könyvtár teljes körű támogatást nyújt a kép előfeldolgozási funkciókhoz C++ alkalmazásokban. A könyvtár alapvető előfeldolgozást kínál, például küszöbölést és vágást, hogy megtisztítsa a zajos bemeneteket. A kínai kéziratok gyakran öreg papíron íródnak, ezért a kép tisztítása elengedhetetlen a pontos eredményekhez. Az alábbi példa bemutatja, hogyan tudnak a szoftverfejlesztők néhány C++ sorral kép előfeldolgozást végezni.
Hogyan végezhető kép előfeldolgozás OCR műveletek előtt C++ alkalmazásokban?
OCR::ImageProcessor processor;
cv::Mat cleanImage = processor.binarize("raw_scan.png");
Morfológiai transzformációk támogatása
A folyamat morfológiai transzformációk sorozatával kezdődik. Ezek alapvető képfeldolgozási műveletek, amelyek módosítják a képben lévő jellemzők geometriáját. Ebben a kontextusban a kézirat kép tisztítására, a zaj eltávolítására és a karakterek szegmentálásra való előkészítésére használják őket.