Szkennelt oldalak vizuális analízise
- BroadBit
- jún, 08, 2026
- Hungarian
- Szkennelt oldalak vizuális analízise bejegyzéshez a hozzászólások lehetősége kikapcsolva
A dokumentum-feldolgozás mesterséges intelligenciája gyakran a „fekete doboz” mítoszában él: beteszünk egy szkennelt vagy generált dokumentumot, és kijön a strukturált adat. A valóság azonban jóval messzebb áll ettől. A szkennerek, a mobiltelefonok kamerái és a különböző minőségű inputok miatt az oldalakat és az azokon szemmel látható pixeleket ritkán lehet „tiszta” adatnak nevezni.
Nemrégiben egy olyan projekten dolgoztunk, ahol a egy feldolgozó rendszernek kellett minden dokumentumoldalról pontos, géppel értelmezhető metaadatokat szolgáltatnunk. A feladat kulcsa egy szigorúan definiált JSON schema volt, amely nemcsak annotációs segédletként szolgált, hanem valójában egy előfeldolgozási pipeline-t kódolt le. Ebben a rövid post-ban bemutatjuk, hogyan építettük fel ezt a struktúrát, miért kritikusak a látszólag apró szabályok, és milyen tanulságokat vonhatunk le belőle a dokumentum-előfeldolgozási projektek számára.
A kihívás: Miért olyan kaotikusak a szkennelt, vagy fotózott dokumentumok?
Mielőtt bármely OCR vagy NLP modell elkezdené értelmezni egy oldalt, három alapvető probléma merül fel:
- Geometriai torzítások: A dokumentumok gyakran elforgatva, vagy fejjel lefele kerülnek be a rendszerbe, ráadásul egy lapon belül többféle forgatási irány is előfordulhat.
- Jel-zaj arány: A hátoldalak, a szkennelési zaj, a vízjelek vagy a nyomtatott sablonok elmoshatják, torzíthatják a valódi tartalmat.
- Jogi és folyamatkritikus elemek: Aláírások, bélyegzők, azonosító adatok pontos felismerése nélkülözhetetlen a compliance és az automatizálás szempontjából.
Ezeket a problémákat nem lehet „utólag” javítani anélkül, hogy a modellnek előre jeleznénk a kontextust. Itt lép képbe a strukturált annotáció.
A JSON schema mint előfeldolgozási motor
A projektünk során a következő mezőkből álló objektumot kellett minden oldalhoz generálnunk:
| Mező | Típus | Cél |
|---|---|---|
image_quality | string | A szkennelés vizuális minősége |
image_contents | string | A képi tartalom leírása |
is_rotated | boolean | A szöveg el van forgatva? |
rotation_angle | integer | Az óramutató járásával megegyező elforgatás mértéke |
corrective_rotation_angle | integer | A helyes tájoláshoz szükséges javító forgatás |
is_back_side | boolean | Tartalommentes oldal kiszűrése |
has_signatures | boolean | Kézi aláírások jelenlétének jelzése |
Nézzük meg, miért nem triviális ezen mezők pontos kitöltése, és milyen logikát rejtnek.

Az „azt láttad-e, amit láttál?” elv
A image_quality mező rövid, de döntő jelentőségű: egy „blurry” vagy „low contrast” jelölés már az elején figyelmeztetheti a downstream modelleket, hogy alacsonyabb képminőséget feltételezve dolgozzanak.
A image_contents ennél szigorúbb. A schema expliciten tiltja a szövegfordítást és a jelentésfeloldást. Csak a vizuálisan jelenlévő elemeket kell leírni: típus, nyelv, elrendezés (fejlécek, táblázatok, űrlapmezők), logók, vonalkódok, bélyegzők. Miért? Mert a modelleknek nem a jelentést, hanem a vizuális mintázatokat kell megtanulniuk. Ha az annotátorok elkezdnek „feloldani” vagy fordítani, a modell hallucinálni kezd, és elveszíti a generalizációs képességét.

A forgatás rejtelmei
Ez a projekt legszabályozottabb része. A gyakorlatban sokan összekeverik a dokumentum fizikai elhelyezkedését a szöveg tájolásával. A schema ezt szigorúan szétválasztja:
is_rotatedcsak akkortrue, ha a szöveg nem olvasható fejforgatás nélkül balról jobbra, fentről lefelé. Egy álló ID-kártya tájolt képen nem forgatott oldal.rotation_anglecsak{0, 90, 180, 270}értékeket vehet fel. A 90° és 270° közötti különbség a legkritikusabb:90°: A szövegsorok vízszintesen futnak balról jobbra, a betűk egyenesek, a tartalom a kép bal oldalán helyezkedik el.270°: A szövegsorok függőlegesen futnak fentről lefelé, a betűk oldalra dőlnek, a tartalom a kép jobb oldalán van.
corrective_rotation_anglea javító forgatás. A schema matematikailag is rögzíti:(rotation_angle + corrective_rotation_angle) % 360 = 0. Ez a kényszerérték gyakorlatilag automatikus validációt biztosít, és megakadályozza az annotációs driftet.
A jel és a zaj szétválasztása
A szkennelt dokumentumok hátsó oldalai gyakran tartalmaznak fejlécet, logót, oldalszámot, QR-kódot, nyomdai, vagy szkennelési zajt. A schema egyértelműen definiálja: ha csak ezek vannak, az oldal is_back_side: true.
Kivétel: személyi igazolványok, vezetői engedélyek vagy azonosító dokumentumok sosem hátoldalak, még akkor sem, ha nagy fehér terület veszi körül őket. Ez a szabály közvetlenül a compliance és az adatminőség védelmét szolgálja.

Mi számít aláírásnak?
A jogi érvényesség szempontjából kritikus mező. A schema szigorú: csak kézzel írt aláírás, vagy monogram számít true-nak. Géppel írt név, digitális időbélyeg, vagy akár nyomtatott űrlapmezőbe kézzel tett jelölés sem minősül aláírásnak. Ez a megkülönböztetés elengedhetetlen az automatikus routing szempontjából.

Milyen eredményeket sikerült elérnünk?
Első körben nekünk is a Computer Vision és a Multimodal LLM rendszerek 95 százalék körüli felismerési pontosságát (forrás: https://arxiv.org/html/2511.04161v2) sikerült elérnünk a lapokon szereplő szöveg forgatási irányának meghatározásakor.
A számítógépes látás (computer vision) alapú algoritmusok rendkívül megbízhatóak a dokumentumok és képek orientációjának (0°, 90°, 180° és 270°) ellenőrzésében és osztályozásában. A modern, neurális hálózatokra épülő modellek jellemzően 92% és 99% közötti pontossággal működnek ezen a négyszögű (4-osztályú) irányfelismerési feladaton.
Specializált training-gel és a szigorú pipeline bevezetésével ezt az értéket 99-100% körülire sikerült felhúznunk. Ezzel egy nagyon fontos célt értünk el, ugyanis naponta több tízezer szkennelt oldalt kell előfeldogoznia collAIgue robotnak, hogy automatizálható legyen a digitalizáció során a képek megfelelő irányba forgatása és az üres oldalak kiszűrése.
Mivel a collAIgue minden esetben determinisztikus kimenetet ad, van lehetőség az adatok validációjára. A felismerés pontosságát táblázatos formában jelenítjük meg, színekkel jelölve az elvárt és az attól eltérő értékeket. Az első képen egy kimondottan az elforgatott lapokat tartalmazó 80 elemű batch eredménye látható, a második képen egy 600 elemű batch mely közelebb áll a valóságban feldolgozandó inputokhoz.


BroadBit Hungary
H-2092 Budakeszi, Knáb János utca 8.
Tel.: +36 20 225 3054, +36 20 465 6554
E-Mail: info @ broadbit . hu
WEB: broadbit.hu
Reg.Number: 13-09-213102
TAX ID: 13717445-2-13
EU TAX ID: HU13717445
EU PIC: 999671622