Optikai karakterfelismerés

From wikibase-docker
Revision as of 13:43, 27 September 2018 by imported>Admin
Jump to navigation Jump to search
Az annotált verzió megtekinthető itt.[1]

Az optikai karakterfelismerés, avagy OCR (rövidítve az angol „optical character recognition” szavakból) egy olyan módszer, amely lehetővé teszi, hogy az analóg szöveg a számítógép számára is olvashatóvá váljon. Előnye, hogy ezáltal a szöveg elektronikusan szerkeszthető és kereshető lesz. Manapság egyre pontosabbá és kifinomultabbá válik az olyan kapcsolódó tudományágak fejlődésével, mint a mesterséges intelligencia vagy a gépi tanulás. Ezt a módszert különféle területeken és módokon hasznosítják: az autók rendszámainak automatikus felismerésére, postán a levelek és csomagok elosztására, vagy a könyvtárak és archívumok állományaik digitalizálására és megőrzésére.


Rövid története

Bár a legkorábbi - még analóg - szövegfelismerő eszközök feltalálása visszanyúlik a 20. század első évtizedeire, az OCR-technológiák széles körben való fejlesztése és használata csak az 1950-es években kezdődött el igazán. Ebben az időben olyan egyszerűsített betűkészleteket hoztak létre, amelyek könnyebben konvertálhatók digitálisan olvasható szövegekké. Az első ilyen speciális betűkészletet David Shepard hozta létre, és az OCR-7B néven vált ismertté. Az OCR-7B még ma is használatban van, például megtalálható a bankkártyák dombornyomásán. Az 1960-as években a postaszolgálatok számos országban elkezdték használni az OCR technológiát, amivel jelentősen felgyorsították a levelek és csomagok válogatását. A 2000-es években kulcsfontosságú szerepe volt az OCR technológiának a CAPTCHA programok kifejlesztésében, amelyek a internetes botok és spammerek megfékezését szolgálták.


Típusok

Optikai karakterfelismerés (OCR) – célzottan nyomtatott dokumentumoknál használják; karakterenként azonosítja be a szöveget. (Az OCR rövidítést gyakran használják általánosságban az automatikus szövegfelismerés szinonimájaként is.) Optikai szófelismerés (OWR) – célzottan nyomtatott dokumentumoknál használják, kifejezetten olyan nyelvek esetén, amelyeknél a szavak jól elhatárolódnak; felismeri a karaktereket, majd egy szótár segítségével beazonosítja a szót. Intelligens karakterfelismerés (ICR) – célzottan kézzel írott dokumentumoknál használják; karakterenként azonosítja be a szöveget, általában gépi tanulás segítségével. Intelligens szófelismerés (IWR) – célzottan kézzel írott dokumentumoknál használják; különösen hasznos azoknál a nyelveknél, ahol a karakterek külön-külön nehezen felismerhetőek, vagy nem határolódnak el egymástól.

Folyamata

A legtöbb karakterfelismerő rendszer ugyanazon folyamat szerint dolgozik. A folyamat első lépése az analóg dokumentum optikai szkennerrel történő digitalizálása. Ezt követi a kapott digitális képen levő szövegblokkok, szövegsorok elkülönítése és vizsgálata. Majd a szoftver felismeri a sorokban szereplő betűket vagy betűpárokat. Végül a felismert szöveg helyesírás- vagy nyelvtani ellenőrzésen is áteshet.


Az output

Különféle karakterfelismerő szoftverek eltérő formában jeleníthetik meg az eredményt. A kapott output lehet egy egyszerű szöveges fájl vagy kifinomultabb rendszerek készíthetnek egy annotált PDF fájt, amely megtartja az eredeti kép szerkezetét, de a benne lévő szöveg kereshetővé válik. Továbbá a karakterfelismerés eredménye tárolható ALTO formátumban is, amely az amerikai Kongresszusi Könyvtár által létrehozott és fenntartott XML alapú szabvány.


Technikák

Előfeldolgozás: A karakterfelismerés folyamatának sikeressége nagyban múlik a digitális kép minőségétől. Ebből kifolyólag az OCR szoftverek gyakran alkalmaznak olyan technikákat, amelyek módosítják az eredeti képet és ezáltal növelik a pontos felismerés esélyeit. Az ilyen technikák közé tartoznak a következők:

Kiegyenesítés – Ha a dokumentum nem lett megfelelően beillesztve szkennelés közben, előfordulhat, hogy néhány fokkal el kell forgatni annak érdekében, hogy a szövegsorok tökéletesen vízszintesek vagy függőlegesek legyenek.

Méretarány – Ha a kép a szkennelés során nem őrizte meg az analóg dokumentum méretarányát, attól függően csökkenteni vagy növelni kell a kép szélesség vagy magasságát.

Tisztítás – Ha az eredeti dokumentumon vagy a szkenneren por vagy egyéb szennyeződés található, akkor az a digitális képen is leképeződik. Érdemes ezeket a foltokat eltávolítani akár manuálisan is, ha méretük és elhelyezkedésük befolyásolhatják a szöveg karaktereinek a felismerését.

Binarizáció – A színes vagy szürkeárnyalatos képet átkonvertálhatjuk fekete-fehérré. (Ezt bináris képnek nevezik, mert összesen két szín alkotja a képet.) A binarizáció feladata, hogy megnövelje a kontrasztot a szöveg és a háttér között, amitől könnyebben szétválaszthatóvá válik a kettő.


Utófeldolgozás: Az eredmények pontossága azáltal is növelhető, ha a szoftver a kapott szöveget összeveti egy szótárral, amely tartalmazza a dokumentumban előfordulható összes szót. Ez azonban nem minden esetben lehetséges. Ha a dokumentum olyan egyedi tulajdonneveket vagy speciális kifejezéseket tartalmaz, amelyek nem szerepelnek a megadott szótárban, akkor ezeknek a felismerése problémában ütközhet.


Egyéb megoldások: Léteznek speciális betűtípusok, amelyeket kifejezetten az optikai karakterfelismerés megkönnyítésére fejlesztettek ki, ilyen például az OCR-A, az OCR-B vagy a MICR betűtípus. Ezek a betűkészletek általában egyszerű, vastag vonalakból állnak, a betűk könnyen elhatárolhatók egymástól és ugyanakkora szélességűek.


Források

Garg, A., Rastogi, A., Rastogi, K., Gupta, A., (2017). A Brief Review on Text Traces using OCR. Imperial Journal of Interdisciplinary Research (IJIR) 3. évfolyam, 4. szám, 2155- 2158 o.

Chaudhuri, A., Mandaviya, K., Badelia, P., & Ghosh, S. K. (2017). Optical Character Recognition Systems for Different Languages with Soft Computing. Cham: Springer International Publishing.

Optical Character Recognition (OCR) – How it works. https://www.nicomsoft.com/optical-character-recognition-ocr-how-it-works/ Letöltés dátuma: 2018.07.10.