Ugrás a tartalomhoz

optical character recognition

A Wikiszótárból, a nyitott szótárból

Főnév

optical character recognition (tsz. optical character recognitions)

  1. (informatika) optikai karakterfelismerés

Az optikai karakterfelismerés (angolul: Optical Character Recognition, röviden: OCR) egy olyan technológia, amely képes nyomtatott vagy kézzel írott szöveget digitális formába alakítani úgy, hogy az később szerkeszthető, kereshető vagy tárolható legyen elektronikus dokumentumként. Az OCR alkalmazási területei igen széleskörűek, beleértve a dokumentum-archiválást, könyvdigitalizálást, számlakezelést, biztonsági rendszereket, és sok más területet.



1. Alapfogalmak és célkitűzések

Az OCR célja, hogy egy képi bemenetről – például szkennelt papírról, fényképről, PDF-ről – automatikusan felismerje és digitalizálja a karaktereket. Az eredmény lehet egyszerű szövegfájl, formázott dokumentum, vagy metaadatokkal ellátott strukturált adat.



2. Működési elve

Az OCR folyamat több lépésből áll:

2.1. Előkészítés és képfeldolgozás

  • Zajszűrés: eltávolítja a képen lévő zajokat, foltokat, árnyékokat.
  • Szürkeárnyalatos konverzió: a képet fekete-fehér vagy szürkeárnyalatos formátumra konvertálja.
  • Binárisítás: a képet fekete-fehérre alakítja, hogy elkülöníthetőek legyenek a karakterek a háttértől.
  • Dőléskorrekció: javítja a beolvasott szöveg dőlését (deskew).
  • Élsimítás és kontúrnövelés: segíti a karakterhatárok pontos meghatározását.

2.2. Karakterek szegmentálása

A kép feldarabolása sorokra, majd szavakra, végül karakterekre.

2.3. Karakterfelismerés

  • Sablon-összehasonlítás (Template Matching): ismert karaktermintákhoz hasonlítja az inputot.
  • Funkcióalapú felismerés (Feature Extraction): jellemzők, mint például vonalak, szögek, zárt területek alapján azonosít.
  • Neurális hálók és gépi tanulás: modern rendszerek mélytanulási modellekkel tanítják be a karakterek felismerését.

2.4. Posztprocesszálás

  • Nyelvi modellek: szótárak vagy nyelvtani szabályok alapján javítják az eredmény hibáit.
  • Heurisztikák: pl. ha az “0” karakter egy “O”-hoz hasonló, a kontextus alapján eldönthető, melyik volt a helyes.



3. Technológiai alapok

3.1. Betűtípus-függetlenség

A hatékony OCR motor képes többféle betűtípus, méret és stílus (félkövér, dőlt stb.) felismerésére.

3.2. Nyelvi támogatás

A fejlettebb OCR motorok több nyelvet támogatnak, nyelvspecifikus karakterkészletekkel (pl. ékezetes betűk, cirill, kínai stb.).

3.3. AI-alapú rendszerek

A modern OCR megoldások – mint a Google Tesseract vagy az ABBYY FineReader – mély neurális hálózatokat használnak, amelyek képesek tanulni a bemeneti példákból.



4. Típusai

4.1. Offline OCR

Statikus képeken működik (szkennelt dokumentum, fénykép).

4.2. Online OCR

Valós idejű adatfeldolgozás, például kézírásfelismerés digitális tollal.

4.3. ICR – Intelligent Character Recognition

Fejlettebb változat, amely képes a kézírás felismerésére is.

4.4. OMR – Optical Mark Recognition

Bár nem szöveges karaktereket ismer fel, de hasonló technológiával (pl. tesztlapok beolvasása).



5. Gyakorlati alkalmazások

  • Könyv- és archívum digitalizálás (pl. Google Books, könyvtárak)
  • Számlakezelés és dokumentumautomatizálás
  • Rendszámtábla-felismerés (ANPR)
  • Személyazonosító dokumentumok (pl. útlevél, személyi) beolvasása
  • Mobil alkalmazások (pl. Google Lens, Microsoft Lens)



6. Előnyök és kihívások

Előnyök:

  • Időmegtakarítás
  • Automatizált adatbevitel
  • Digitalizálás és kereshetőség

Kihívások:

  • Rossz minőségű képek
  • Komplex elrendezésű dokumentumok (táblázatok, oszlopok)
  • Kézírás felismerése
  • Nem standard betűtípusok



7. Népszerű OCR eszközök

Név Platform Jellemzők
Tesseract Nyílt forráskódú (Linux, Windows, macOS) Google által támogatott, nyelvi modellekkel bővíthető
ABBYY FineReader Kereskedelmi Magas pontosság, PDF-kezelés
Adobe Acrobat OCR Windows, macOS PDF-be integrált OCR
Microsoft OneNote OCR Windows Képekből való szövegkinyerés
Online OCR szolgáltatások Web Egyszerű fájlfeltöltéses OCR



8. OCR fejlesztés programozóknak

Példa: Tesseract használata Pythonban

import pytesseract
from PIL import Image

image = Image.open('document.jpg')
text = pytesseract.image_to_string(image, lang='eng')
print(text)

Fontos függőségek:

  • pytesseract: Python wrapper
  • Tesseract-OCR: maga az OCR motor
  • PIL vagy opencv: képfeldolgozáshoz



9. Jövőkép

Az OCR technológia egyre inkább integrálódik mesterséges intelligenciával és gépi tanulással. A következő években várható:

  • Nagyobb pontosság még nehéz körülmények között is
  • Dokumentumértelmezés (layout-felismerés, táblázatok)
  • Kontextuális értelmezés (mi a jelentése a szövegnek)



10. Összegzés

Az OCR egy kulcsfontosságú technológia az analóg világ és a digitális adatfeldolgozás közötti híd megteremtésében. A fejlődése lehetővé tette a papíralapú dokumentumok automatikus feldolgozását, és új lehetőségeket nyitott a digitalizáció, automatizálás és mesterséges intelligencia számára.