Szegedi Tudományegyetem. {mkatona, Absztrakt. Az automatikus azonosítás egyik legfontosabb és széles körben

Hasonló dokumentumok
Automatikus azonosítás és hitelesítés vizuális kódokkal

Minták automatikus osztályba sorolása a mintát leíró jellemzők alapján. Típusok: felügyelt és felügyelet nélküli tanuló eljárások

Automatikus azonosítás és hitelesítés vizuális kódokkal

3. Szűrés képtérben. Kató Zoltán. Képfeldolgozás és Számítógépes Grafika tanszék SZTE (

Önálló labor beszámoló Képek szegmentálása textúra analízis segítségével. MAJF21 Eisenberger András május 22. Konzulens: Dr.

Morfológia. Sergyán Szabolcs Óbudai Egyetem Neumann János Informatikai Kar Szoftvertechnológia Intézet

8. Pontmegfeleltetések

Az objektum leírására szolgálnak. Mire jók? Sokszor maga a jellemző az érdekes: Tömörítés. Objektumok csoportosítására

Morfológia. Sergyán Szabolcs Óbudai Egyetem Neumann János Informatikai Kar Szoftvertechnológia Intézet

Nem roncsoló tesztelés diszkrét tomográfiával

KÉPFELDOLGOZÁS. 10. gyakorlat: Morfológiai műveletek, alakjellemzők

Grafikonok automatikus elemzése

Multimédiás adatbázisok

Kétdimenziós mesterséges festési eljárások. Hatások és alkalmazások

Rendszámfelismerő rendszerek

Analı zis elo ada sok

TÉRINFORMATIKA II. Dr. Kulcsár Balázs Ph.D. adjunktus. Debreceni Egyetem Műszaki Kar Műszaki Alaptárgyi Tanszék

Adaptív dinamikus szegmentálás idősorok indexeléséhez

7. Régió alapú szegmentálás

Képfeldolgozás. 1. el adás. A képfeldolgozás alapfogalmai. Mechatronikai mérnök szak BME, 2008

3D számítógépes geometria és alakzatrekonstrukció

3D számítógépes geometria és alakzatrekonstrukció

Pontműveletek. Sergyán Szabolcs Óbudai Egyetem Neumann János Informatikai Kar február 20.

Képrekonstrukció 3. előadás

Súlyozott automaták alkalmazása

Sergyán Szabolcs szeptember 21.

2. Hozzárendelt azonosítók alapján

Elektronikus kereskedelem. Automatikus azonosító rendszerek

3D-s számítógépes geometria és alakzatrekonstrukció

Automatikus épület-felismerés ortofotókon objektum-alapú eljárással

Tárgy. Forgóasztal. Lézer. Kamera 3D REKONSTRUKCIÓ LÉZERES LETAPOGATÁSSAL

3D - geometriai modellezés, alakzatrekonstrukció, nyomtatás

Digitális képfeldolgozás gyakorlat, Nappali tagozat 2018/2019 őszi félév, Beadandó feladat

Programoza s I. 11. elo ada s Oszd meg e s uralkodj! elvu algoritmusok. Sergya n Szabolcs

Példák jellemzőkre: - minden pixelérték egy jellemző pl. neurális hálózat esetében csak kis képekre, nem invariáns sem a megvilágításra, sem a geom.

DIGITÁLIS KÉPANALÍZIS KÉSZÍTETTE: KISS ALEXANDRA ELÉRHETŐSÉG:

BitTorrent felhasználók értékeléseinek következtetése a viselkedésük alapján. Hegedűs István

Hadházi Dániel.

Felvétel készítése Képfeldolgozás (ábragyűjtemény) IV.

Közösség detektálás gráfokban

Transzformációk. Grafikus játékok fejlesztése Szécsi László t05-transform

6. Éldetektálás. Kató Zoltán. Képfeldolgozás és Számítógépes Grafika tanszék SZTE (

Számítógépes grafika

Az Internet jövője Internet of Things

Az e-kereskedelem elvárásai a biometriával szemben

PRECÍZ Információs füzetek

Panorámakép készítése

Optikai méréstechnika alkalmazása járműipari mérésekben Kornis János

Egy (k) küszöb esetén [0, 1] intenzitástartományt feltételezve (v 2 v 2 ):

Útjelzések, akadályok felismerése valós időben

Kutatási beszámoló február. Tangens delta mérésére alkalmas mérési összeállítás elkészítése

Élpont osztályozáson alapuló robusztus tekintetkövetés

Informatika Rendszerek Alapjai

Láthatósági kérdések

PONTFELHŐ REGISZTRÁCIÓ

SZOMSZÉDSÁGI SZEKVENCIÁK ÉS ALKALMAZÁSAIK A KÉPFELDOLGOZÁSBAN ÉS KÉPI ADATBÁZISOKBAN

2. Pont operációk. Kató Zoltán. Képfeldolgozás és Számítógépes Grafika tanszék SZTE (

Speciális bútorok. Laborbútor. Oktatási bútor. Ipari bútor. Mérlegasztal. Laborszék

Statisztikai módszerek a skálafüggetlen hálózatok

R5 kutatási feladatok és várható eredmények. RFID future R Király Roland - Eger, EKF TTK MatInf

Módszer köztes tárolókat nem tartalmazó szakaszos működésű rendszerek ütemezésére

Képfeldolgozás Szegmentálás Osztályozás Képfelismerés Térbeli rekonstrukció

Segédlet: Főfeszültségek meghatározása Mohr-féle feszültségi körök alkalmazásával

Mérési struktúrák

Él: a képfüggvény hirtelen változása. Típusai. Felvételeken zajos formában jelennek meg. Lépcsős

I. VEKTOROK, MÁTRIXOK

Sztereó kamerarendszerre alapozott gyalogos felismerés Kornis János*, Szabó Zsolt**

Automatikus irányzás digitális képek. feldolgozásával TURÁK BENCE DR. ÉGETŐ CSABA

Digitális képek szegmentálása. 5. Textúra. Kató Zoltán.

Képfeldolgozás jól párhuzamosítható

Multimédia alapú fejlesztéseknél gyakran használt veszteséges képtömörítő eljárások pszichovizuális összehasonlítása

Az [OIII] vonal hullámhossza = 3047,50 Ångström Maximális normált fluxus = 7,91E-12 Szigma = 0,18 Normálási tényező = 3,5E-12 A Gauss-görbe magassága

Fotogrammetriai munkaállomások szoftvermoduljainak tervezése. Dr. habil. Jancsó Tamás Óbudai Egyetem, Alba Regia Műszaki Kar

Általános követelmények a kép tartalmával és minőségével kapcsolatban

Matematikai geodéziai számítások 10.

Kontrollcsoport-generálási lehetőségek retrospektív egészségügyi vizsgálatokhoz

Virtuális Egér. Horváth Zsolt, Schnádenberger Gábor, Varjas Viktor március 20.

Számítógépes képelemzés 7. előadás. Dr. Balázs Péter SZTE, Képfeldolgozás és Számítógépes Grafika Tanszék

AKTUÁTOR MODELLEK KIVÁLASZTÁSA ÉS OBJEKTÍV ÖSSZEHASONLÍTÁSA

A nappali tagozatra felvett gépészmérnök és műszaki menedzser hallgatók informatikai ismeretének elemzése a Budapesti Műszaki Főiskolán

Információ megjelenítés Számítógépes ábrázolás. Dr. Iványi Péter

Számítógépes döntéstámogatás. Genetikus algoritmusok

Csigatisztítók hatékonyságának minősítési módszere

Előadás célja: ERDAS IMAGINE történelem a Georgikon Karon. ERDAS IMAGINE alkalmazása Karunk oktatási feladataiban

A távérzékelt felvételek tematikus kiértékelésének lépései

VALÓS IDEJŰ KÉZ ÉS UJJHEGY ÉRZÉKELŐ ELJÁRÁS A REAL-TIME HAND AND FINGERTIP DETECTION METHOD

QR kód lokalizáció kaszkádolt gyenge osztályozók használatával

Transzformációk. Szécsi László

Infobionika ROBOTIKA. X. Előadás. Robot manipulátorok II. Direkt és inverz kinematika. Készült a HEFOP P /1.0 projekt keretében

22. GRÁFOK ÁBRÁZOLÁSA

Internet of Things 2

Használati alapú és modell alapú tesztelés kombinálása szolgáltatásorientált architektúrák teszteléséhez az ipari gyakorlatban

AUTOMATIKUS KÉPFELDOLGOZÁS A HADITECHNIKÁBAN A CELLULÁRIS NEURÁLIS HÁLÓZAT

Mechatronika segédlet 3. gyakorlat

RFID rendszer felépítése

4. Jellemző pontok kinyerése és megfeleltetése

i5000 sorozatú szkennerek

A MAGYAR TÖRTÉNELMI TÁRSULAT KIADVÁNYAI

Ionogram releváns területeinek meghatározása és elemzésének automatikus megvalósítása

1: Bevezetés: Internet, rétegmodell Alapok: aszimptótika, gráfok. HálózatokII, 2007

Átírás:

Vonalkódok és természetes vizuális azonosítók felismerése valós időben Katona Melinda és Nyúl László Szegedi Tudományegyetem Képfeldolgozás és Számítógépes Grafika Tanszék {mkatona, nyul}@inf.u-szeged.hu Absztrakt. Az automatikus azonosítás egyik legfontosabb és széles körben alkalmazott eleme a vizuális kódokkal történő azonosítás, mely a kereskedelmi folyamatoknak szinte elválaszthatatlan része (pl. UPC vonalkódok), és a mobil kommunikációnak köszönhetően a hétköznapi életben is egyre elterjedtebb (pl. QR kódokba ágyazott webcímek és leírások). A különböző szimbólumokkal megjelenített azonosítók teszik lehetővé a gépek számára az elektronikus leolvasást, ami nagyban segíti és gyorsítja az információ áramlását pl. a bolti pénztáraknál, raktári átvételnél, nagy sebességű feldolgozási helyeken pl. futószalagokon. Ismertetünk egy új, saját fejlesztésű algoritmust 1D-s kódok detektálására, valamint egy másik új, saját eljárást QR kódok megtalálására. Bemutatásra kerül egy konkrét gyakorlati azonosítási probléma megoldására kidolgozott saját eljárás is. 1. Bevezetés A vonalkódos azonosítás széles körben elterjedt a mindennapi életünkben és számos eljárás létezik azok gyors és megbízható azonosítására. A kódok lokalizálására, az alkotó komponensek pozícióinak és jellemzőinek meghatározására a legtöbb eljárás automatikus képszegmentálási technikát alkalmaz. Jelen közleményünkben mesterséges és természetes kódok szegmentálásával is foglalkozunk. A vonalkódok az emberek számára nem olvashatók, ezt az erre alkalmas dekódoló eszközök valósítják meg. A vonalkódok leggyakoribb felhasználási területe a kereskedelem, például az áruk csomagolásán, amely lehetővé teszi az áru adatainak, úgy mint a gyártó ország, a gyári szám és a termék cikkszáma gyors azonosítását. A jelekkel megjelenített azonosító számok teszik lehetővé a gépek számára az elektronikus leolvasást, ami nagyban segíti és gyorsítja az információ áramlását. A különböző vonalkódtípusok sajátos jellemzőkkel rendelkeznek, melyek segítik a lokalizálásukat. Az 1. ábra a főbb 1D-s és 2D-s kódokat szemlélteti. A vonalkód lokalizáló eljárások megítélésének két fő szempontja a sebesség és a hatékonyság. Ipari környezetben a hatékonyság kritikus tényező, egy-egy hibás detektálásnak komoly költségvonzatai lehetnek. A feldolgozási sebesség a detektor jóságának másodlagos elvárt összetevője. Mobil készülékek esetében

2 Katona Melinda és Nyúl László 1. ábra: Főbb vonalkód típusok (balról jobbra). Felső sor (1D kódok): Code39, Codabar, Code128, UPC-A; Középső sor (1D kódok): UPC-E, EAN-13, EAN-8, I2of5; Alsó sor (2D kódok): Codablock, PDF417, Data Matrix, QR. a hatékonyság kevésbé kritikus azóta, amióta a felhasználó és a telefon interakcióban vannak egymással, és így újabb és újabb felvételek készíthetők a detektálni kívánt kódról. Ez esetben egy gyors procedúra a kívánatos. Számtalan technika létezik a vonalkódok digitális képekről való lokalizálására és dekódolására a vonalszkenneléstől [1, 7] a morfológiai megközelítéseken keresztül [2 5] a konvex burkon át [6] egészen a waveletekig [12]. 2. Algoritmusok A digitális képek minősége manapság kevésbé kifogásolható, bár készülnek gyenge minőségű felvételek is. A minőségromlás oka pl. lehet maga a digitalizáló eszköz, illetve a környezet okozta nehézségek. Mindezek miatt gyakran szükséges a feldolgozás első lépéseként a kép minőségének javítása a konkrét elemzés előtt. 2.1. 1D vonalkódok detektálása mintaillesztéssel Ebben a fejezetben bemutatjuk egy új, saját fejlesztésű algoritmusunkat 1D-s vonalkódok lokalizálására. Az algoritmus alapjául a mintaillesztés szolgál. Az eljárást összefoglaló folyamatábra a 2. ábrán látható, a fontosabb lépések részeredményeit pedig a 3. ábra illusztrálja. Az újramintavételezést követően a kapott RGB képet L*a*b* színtérbe konvertáljuk. A későbbi feldolgozásban már csak az L* (fényesség) csatornát használjuk és az így kapott többszintű képpel dolgozunk. A bemenetként kapott képek nem ideálisak, emiatt a képet élesítjük (3(b) ábra). A detektálás folyamata bináris képek elemzésére épül, ezért az élesített képet egy globális küszöbértéket meghatározva binarizáltuk (3 (c) ábra). A képek minőségét zaj is ronthatja. A binarizált képen ezek kiszűrésére előbb méret alapú küszöbölést, majd az objektumok téglalapalakúságát is vizsgáltunk. A

Vonalkódok és természetes vizuális azonosítók felismerése valós időben 3 2. ábra: A vonalkód lokalizáló eljárás folyamata mintaillesztéshez előkészített képet a 3(d) ábra illusztrálja. Annak analógiájára, hogy a kód sávjai párhuzamosak, az illesztéshez használt minta is két párhuzamos fekete sávot tartalmaz. A sablonillesztéshez a bemeneti szürkeárnyalatos kép és az illesztendő minta Fourier térben vett képét felhasználva ezeknek pontonkénti szorzata határozza meg az illeszkedés mértékét. A mintát 170 -ig 10 -onként tekintve és mindezek összegezett eredményét vettük figyelembe a további feldolgozásban, tehát 17 i=0 F F T (I) F F T (R i T ), (1) ahol I az input kép, R i (0 i 17) az aktuális forgatómátrix, T az illesztendő képet jelöli, F F T -vel pedig a gyors Fourier transzformációt jelöljük. Mivel a használt minta szimmetrikus, elegendő csak a [0, 180 ) tartományban vizsgálni a minta illeszkedését. A kapott összegképet az átlaggal küszöböltük, majd az így kapott objektumok középpontjainak koordinátáit eltároltuk. Az egy klaszterbe tartozó pontok jól elkülönülnek, így a megadott képre távolságtérképet számoltunk (3(e) ábra). Annak meghatározására, hogy az adott objektum területén az eredeti képen vonalkód helyezkedik-e el, előbb az eltárolt illesztésből eredő középpontokat háttérpontokként definiáltuk újra a küszöbölt képen (3(g) ábra). A priori ismeretként szolgált, hogy egy vonalkód legalább

4 Katona Melinda és Nyúl László (a) (b) (c) (d) (e) (f) (g) (h) (i) (j) (k) (l) 3. ábra: Az 1D vonalkód detektálására javasolt módszer köztes lépései. (a) input kép, (b) élesítés után, (c) binarizálás, (d) téglalap alakúság vizsgálat, (e) távolságtérkép, (f) küszöbölt távolságtérkép, (g) illesztett pontok az objektumokban, (h) lyukak szerinti küszöbölés, (i) a (d) eredményképe dilatáció után, (j) a (h) utáni illeszkedő objektumok az (i) képen, (k) morfológiai nyitás, (l) detektált kódok nyolc sávból áll, ezért csak azon objektumokat tartjuk meg, melyek legalább ennyi háttérpontot tartalmaztak. Ennek a szűrésnek az eredményét láthatjuk a 3(h) ábrán. A következő lépésben az eredeti kép binarizált változatán, amit már korábban megadtunk, egy négyzet alakú, 2x2-es méretű szerkesztőelemmel nyitást alka-

Vonalkódok és természetes vizuális azonosítók felismerése valós időben 5 lmaztunk. Erre a lépésre azért volt szükség és azért ilyen kicsi szerkesztőelemmel, hogy az összetartozó régiók valóban összeérjenek, de hamis szegmensek ne olvadjanak össze. A 3(i) ábra szemlélteti ezt a lépést. A meglévő háttérpontok koordinátáit felhasználva a dilatált képen csak azon objektumokat tartottuk meg, melyeknek az adott koordinátapontján objektumpont helyezkedett el (3(j) ábra). A kapott eredményképen az egyes vonalkódot alkotó sávok jól elkülöníthetők. Ahhoz, hogy ezek egy egységként jelenjenek meg, morfológiai nyitást alkalmaztunk négyzet alakú szerkesztőelemmel, melynek méretét annak függvényében határoztuk meg, hogy mekkora volt az egyes objektumokban a sávok közötti maximális távolság. Ezáltal biztosított, hogy minden vonalkódot alkotó sáv egy önálló régiót alkosson. Ezt szemlélteti a 3(k) ábra. 2.2. QR kódok detektálására javasolt módszer A következőkben bemutatjuk egy új, saját fejlesztésű eljárásunkat a 2-dimenziós QR kódok detektálására. Az eljárás főbb lépéseit összefoglaló folyamatábra a 4 ábrán, a főbb lépések részeredményei pedig a 5. ábrán láthatók. 4. ábra: A QR kódok detektálásának folyamata Az újramintavételezést és a kvantálást követően a többszintű képen lokális szűrést végeztünk, melyben az adott pixelpozíció 3 3-as környezetében az intenzitásértékek szórása adja a szűrt képen az adott pixel értékét. Ezek az értékek [0, 1] intervallumba normáltak (5(b) ábra). Ebből egyszerű küszöbölési technikával bináris képet állítottunk elő (5(c) ábra). A küszöbértéket az intervallum felénél határoztuk meg. A kapott bináris képet felhasználva az eredeti szürkeárnyalatos képen minden olyan pixel intenzitásértékét 0-ra módosítottuk, ahol a bináris képen objektumpontot találtunk(5(d) ábra) segítve ezzel a további feldolgozást.

6 Katona Melinda és Nyúl László (a) (b) (c) (d) (e) (f) (g) (h) (i) 5. ábra: A javasolt módszer köztes lépései. (a) input kép, (b) elválasztó vonal kirajzolása, (c) binarizálás, (d) intenzitásértékek módosítása, (e) morfológiai nyitás, (f) küszöbölt LoG szűrt kép, (g) postprocesszálás, (h)-(i) eredménykép Azért, hogy intenzitásértékben egy jól meghatározott környezetben a pixelértékek minimális vagy maximális szürkeségi értéket vegyenek fel, és ezáltal elősegítsék az összetartozó szegmensek szegmentálását, többszintű morfológiai nyitást végeztünk. Az így kapott képen a QR kód terület jól láthatóan elkülöníthető, ahogy a 5(e) ábrán is látható. A következő lépésben egy LoG (Laplacian of Gaussian) szűrést hajtottunk végre, amit egy küszöbölés követett, mivel a feldolgozás későbbi lépéseiben már bináris képpel dolgoztunk tovább (5(f) ábra). A nem szorosan összetartozó szegmensek elválasztása céljából egy kisebb szerkesztőelemmel morfológiai eróziót hajtottunk végre (5(f) ábra). A további műveletek sorozata felfogható egyfajta utófeldolgozásnak. Minden olyan objektumpontot megtartottunk a szűrt képből, ahol a különböző jellemzők vizsgálata után kapott kép is objektumpontot tartalmazott. A 5(g) ábra illusztrálja ennek a műveletnek az eredményét. Az (1) formulát alkalmazva, majd az ott leírt küszöbölést felhasználva kiszűrtük a valósnak vélt vonalkód területeket. QR kódok esetében nem szimmetrikus sablont használtunk, de elegendő volt az 1D-s esethez hasonlóan egy sablonnak az elforgatottjait vizsgálni. A 5(h) és 5(i) ábra a kapott eredményképeket mutatja.

Vonalkódok és természetes vizuális azonosítók felismerése valós időben 7 3. Kiértékelés Ebben a fejezetben a bemutatott saját algoritmusok, valamint a szakirodalomban közölt eljárások hatékonyságát vetjük össze adott jellemzők mellett. A későbbiekben az egyes algoritmusokra való hivatkozáshoz betűszavakat vezettünk be, melyek a következõk: LINB (Lin és Lin alapvető képműveleteket használó eljárása) [8], LINM (Lin és Lin futáshosszok számításán alapuló eljárása) [9], OHBUCHI (Ohbuchi et al. lokális küszöbölésen alapuló eljárása) [10] valamint Saját1D és SajátQR az általunk kidolgozott új algoritmusok 1D-s ill QR kódok detektálására. A [5] cikkben közölt algoritmusunk hatékonyságát is vizsgáltuk, a Saját1D betűszó alatt 2012 évszámmal jelezve. 3.1. Teszthalmaz, tesztkörnyezet, implementáció Digitálisan tesztképeket generáltunk a 1. ábrán bemutatott 1D-s vonalkódtípusokat alapul véve. Mindehhez elegendő volt a különböző kódokból egyet-egyet kiválasztani. A tesztképek egy darab vonalkódot tartalmaznak és különféle torzításokkal terheltek. A generált képeink a következő tulajdonságokkal rendelkeznek: a képeket 15 -onként elforgattunk 0 -tól 180 -ig, Gauss elmosást alkalmaztunk 3 3- as szerkesztőelemmel és 6 különböző σ-val, valamint additív zajt is adtunk a képekhez 10%-os léptékkel a 0% és 50% közötti intervallumban. Összegezve tehát 8 különféle típusú vonalkódból 12 orientációban, 6 különböző simítású Gauss szűrővel és 6 eltérő mértékű additív zajjal terhelve, perspektív torzulással, összesen közel 15 000 képet generáltunk. További 4220 vonalkódot tartalmazó valós életbeli képet is felhasználtunk a The WWU Muenster adatbázisból. Ezen képeken semmiféle manipulációt nem hajtottunk végre, de eleve torzításokkal terheltek, nem ideálisak. A 6. ábrán látható néhány különböző torzítással terhelt generált és valós tesztkép. 6. ábra: Generált minta 1D tesztképek különböző torzítások mellett, valamint valós példák

8 Katona Melinda e s Nyu l La szlo A QR ko d detekta lo algoritmusok kie rte kele se hez megle vo ke pi adatba zisokat haszna ltunk. Egy ko zel 1400 valo s tesztke pbo l a llo adatba zis [11], valamint 10 000 szintetikus tesztke p a llt a rendelkeze su nkre. A 7. a bra n szintetikus e s valo s ke pek la thato k a teszthalmazokbo l. 7. a bra: Valo s e s szintetikus QR ko dokat tartalmazo tesztke pek 3.2. Metrika k Az algoritmusok hate konysa ga nak me re se re a Jaccard-fe le hasonlo sa gi egyu tthato t vettu k alapul, ahol a te nyleges e s a detekta lt ko dre gio k befoglalo te glalapja nak a tfede se t vizsga ltuk. Azon egyedek fognak true pozitı v pe lda nak megfelelni, teha t valo s ko dteru letnek bizonyulni, melyekne l a detekta lt objektum legala bb 90%-ban fede sben a ll az elo re meghata rozott teru lettel. Minden olyan objektumot hamis pozitı v pe lda nak tekintu nk, mely detekta lt, de enne l kisebb, vagy egya ltala n nincs fede sben semmilyen vonalko d teru lettel. Hamis negatı v pe lda k lesznek azok, melyek ugyan vonalko d teru letek, de az algoritmus nem detekta lta o ket. Az eredme nyek ismerete ben mega llapı thato, hogy az o sszes vizsga lt algoritmus hate konyan ke pes vonalko d detekta la sra. Kora bban emlı tettu k, hogy a genera lt tesztke pek ku lo nbo zo me rte ku hozza adott zajt, simı ta st, elforgata st, nyu jta st, illetve perspektı v torzula st tartalmaznak. Az elforgata s, nyu jta s, perspektı v torzula s nem e rinti az ege sz ke pet, csak a vonalko dot. A tapasztalat azt mutatta, hogy az elja ra sok az elforgata sra, nyu jta sra, e s perspektı v torzula sra invaria nsak, eze rt a tova bbiakban csak a zaj e s a simı ta s jellemzo k hata sa t vizsga ljuk.

Vonalkódok és természetes vizuális azonosítók felismerése valós időben 9 3.3. Eredmények Az 1D vonalkód detektáló eljárások összehasonlításának eredményeit a 1. táblázatban, míg a futási időket a 2. táblázatban foglaltuk össze, a szintetikus és a valós képhalmazokra lebontva. Megállapítható, hogy mindegyik vizsgált eljárás gyorsan képes detektálni a vonalkód szegmenseket és a sebességbeli szórás sem számottevő. A QR kódokat detektáló eljárások összehasonlításának eredményeit a 3. táblázat, míg a futási időket a 4. táblázat mutatja. Az 1D-s esethez képest az algoritmusok kisebb hatékonysággal képesek detektálni a kívánt területet, ugyanakkor még ez az eredmény is elfogadható. Látható a 3. táblázatban, hogy közel ugyanakkora hatékonysággal képesek a valós tesztképeket detektálni, mint a szintetikusakat. OHBUCHI algoritmusa láthatóan nagyon gyors, ugyanakkor elmondható, hogy ennek a gyorsaságnak az ára (nem meglepő módon) a hatékonyság csökkenése. Az eredményekből látszik, hogy az összehasonlításban szerepeltetett mindegyik (különböző alapelven működő) vonalkód detektáló algoritmus hatékony, de a javasolt új módszereink mutatták a legnagyobb hatékonyságot. 4. Képfeldolgozó eljárás egy hibrid vizuális kód felismerésére Egy olyan lehetséges hibrid vizuális kódot mutatunk be, melyben egy jól definiált mesterséges azonosító (egy QR kód) és egy mesterséges úton előállított (szórt részecskék alkotta) természetes mintázat jelenik meg egy közös képtérben. A továbbiakban ezen hibrid azonosítóra az NFI (Natural Feature Identifier) betűszóval hivatkozunk. A mesterséges és természetes azonosító kombinációjával adott címke közepén egy megadott méretű standard QR kód helyezkedik el, mely releváns adatot kódol. A QR kód környezetében véletlenszerűen szétszórt glitterek helyezkednek el, egy meghatározott vastagságú és színű keretben. A glitterek száma, színe, mérete, alakja, pozíciója nem kötött, tekinthetők random mintáknak is. A 8. ábrán látható ezekre néhány példa. A címkék nyomdai úton készülnek és felhelyezés után roncsolódás nélkül nem távolíthatók el. A nyomdai műveletsor egy lépésében a címkékről referenciakép készül ideális fényviszonyok és kamerapozíció alkalmazásával. A feladat mobil eszközzel fényképezett biztonsági címkék adott részén véletlenszerűen elhelyezkedő részecskék helyének meghatározása alapján a címkével megjelölt objektumok azonosításának támogatása. Az algoritmusnak átlagos mobilkészülékkel készült képeken kell dolgoznia, mely torzításokat tartalmazhat. Elvárás továbbá, hogy egy kép feldolgozása valamint a kód ellenőrzése mobil eszközön is rövid idő alatt (< 1.5 s) elvégezhető legyen. Az alapprobléma három lépésre bontható: képalkotás, képfeldolgozás, azonosítás. A képalkotás, vagyis az NFI címkéről történő fénykép készítése a mobil eszköz standard beépített funkcióival elvégezhető. A képfeldolgozás rész végzi a

10 Katona Melinda és Nyúl László 1. táblázat: Az algoritmusok hatékonysága (H), lefedettsége (L), valamint pontossága (P) (százalékban) valós és szintetikus 1D kódot tartalmazó tesztképeken LIN Saját1D LINB LINM 2012 2014 H P L H P L H P L H P L szintetikus 88.5 97.3 99.8 79.0 100 94.0 99.9 95.8 97.4 99.6 98.9 valós 93.8 68.9 93.8 88.1 67.6 88.2 94.4 90.2 94.4 97.0 98.1 97.0 2. táblázat: Az algoritmusok futási ideje (átlag (sec) ± szórás) LIN Saját1D LINB LINM 2012 2014 szintetikus 0.724 ± 0.214 0.974 ± 0.148 0.023 ± 0.010 0.625 ± 0.150 valós 0.981 ± 0.281 0.795 ± 0.726 0.259 ± 0.335 0.683 ± 0.283 3. táblázat: Az algoritmusok hatékonysága (H), lefedettsége (L), valamint pontossága (P) (százalékban) valós és szintetikus QR kódot tartalmazó tesztképeken OHBUCHI LINM SajátQR H P L H P L H P L szintetikus 87.3 100.0 83.7 88.9 93.4 94.9 89.5 99.9 89.5 valós 83.6 95.0 87.5 84.5 94.0 89.3 89.0 95.7 92.6 4. táblázat: Az egyes eljárások futási ideje (átlag (sec) ± szórás) OHBUCHI LINM SajátQR szintetikus 0.011 ± 0.007 1.004 ± 0.073 0.267 ± 0.023 valós 0.237 ± 2.225 1.225 ± 0.809 0.419 ± 1.346

Vonalkódok és természetes vizuális azonosítók felismerése valós időben 11 8. ábra: Mintaképek az NFI címkék prototípusára különféle torzítások mellett nyers fényképeken a címke területének megtalálását, a címke részét képező QR kód detektálását, az NFI régió behatárolását, a glitterek detektálását, továbbá a glitterekhez a képből kinyerhető leírók meghatározását. Az azonosítás, hitelesítés a képfeldolgozó fázisból kapott leíró adatsorok alapján végzi el az aktuális képen látható címke összevetését a referencia adatokkal. E lépés végén kaphatunk egy egyszerű igen/nem döntést, vagy valami megbízhatósági értéket arra vonatkozóan, hogy az adott címke eredeti (hiteles) vagy sem. Ebben a cikkben a képfeldolgozási feladatra szorítkozunk. 4.1. A felismerés képfeldolgozási szakasza A címke specifikációjától függően különböző képfeldolgozási megközelítések képzelhetőek el. A mi megközelítésünk fontosabb lépései az alábbiak: 1. QR kód helyzetének és orientációjának meghatározása 2. A glittereket tartalmazó zóna behatárolása és glitterek detektálása 3. Jellemzők kinyerése A QR kód elég jellegzetes mintázat (a kódolt tartalomtól függetlenül), ezért ennek detektálása közvetlenül is történhet a teljes képen. Mivel szükségtelennek bizonyult az eredeti (viszonylag nagy felbontású) képméret használata, ezért először újramintavételezzük a képet, így lényegesen redukálva a feldolgozandó képpontok számát és ezzel a feldolgozási időt. Egy alkalmas méretnek a 450 pixel széles felbontást választottuk (a kép magassága pedig az aktuális képaránynak megfelelően alakul, hiszen a kamerák eltérő arányokkal dolgozhatnak). Ezt követően a kapott RGB képet L*a*b* színtérbe konvertáljuk. A későbbi feldolgozásban már csak az L* (fényesség) csatornát használjuk. A tapasztalatok azt mutatták, hogy az RGB kép csatornáinak súlyozott összegével kapott

12 Katona Melinda és Nyúl László szürkeárnyalatos képnél, illetve a HSV színtérkonverziónál hatékonyabbnak bizonyult a L* csatorna használata. Az input képek nem ideálisak, adott esetben különféle torzításokkal terheltek, ezért valamiféle képjavító művelet elvégzése ajánlatos. A QR kód lokalizálásának további lépéseit az 1. algoritmus foglalja össze. Azáltal, hogy meghatároztunk a QR kód helyzetét, az orientációja is meghatározhatóvá vált. A helymeghatározás köztes eredményképei a 9. ábrán láthatók. 1. algoritmus. QR kód helyzetének meghatározása 1. lépés Kontraszt széthúzás 2. lépés f mo := f se 1 3. lépés LoG szűrés 4. lépés f me := f mo se 2 5. lépés for minden komponens do if főátló hossza > thresh a and köralakúság < thresh c then Lehetséges QR kód terület else Nem vonalkód terület, elvetjük endif endfor 6. lépés f me := f me se 3 Az így kapott képen meghatároztuk az objektum sarokpontjait, majd a kapott koordinátapontokat használtuk fel a rektifikált kép előállításához. Erre amiatt van szükség, hogy összehasonlíthatóvá válhassanak a későbbiekben az input kép glittereinek jellemzői a referencia adatbázisbeliekkel. A rektifikálás során a képet úgy transzformáljuk, hogy a QR kód valóban négyzet alakú területként jelentkezzen, mintha a kamera pontosan a címke síkjára merőleges irányból készítette volna a felvételt, ráadásul úgy, hogy a kép sorai és oszlopai párhuzamosak a QR kód fő irányaival. Ahhoz, hogy a vizsgált kép ténylegesen összemérhető legyen a referencia értékekkel, szükséges meghatározni a QR kód orientációját, vagyis, hogy a képen található QR kód hogyan helyezkedik el a tárolt pozícióhoz képest. Annak megadásához, hogy a tekintett QR kód, illetve glitterzóna milyen mértékben van elforgatva, feltételezzük, hogy a referencia adatbázisbeli QR kód a szokásos irányultsággal rendelkezik (a 3 fő lokátor minta a felső és baloldali sarkokban van). Az elforgatási szög megállapítása is több lépésben történik. A QR kód referenciapontjainak szegmentálását a 2. algoritmus ismerteti.

Vonalko dok e s terme szetes vizua lis azonosı to k felismere se valo s ido ben 13 9. a bra: A QR ko d lokaliza cio ko ztes eredme nyke pei (sorfolytonosan): input ke p, kontrasztsze thu za st ko veto en, morfolo giai nyita s eredme nye, LoG szu re s, ku szo bo lt LoG szu rt ke p, nem o sszefu ggo teru letek sze tva laszta sa ero zio val, ko ralaku sa g szerinti, illetve fo a tlo szerinti ku szo bo le s 2. algoritmus. Referencia ne gyzetek pozı cio inak megada sa 1. 2. 3. 4. 5. 6. le pe s le pe s le pe s le pe s le pe s le pe s Adaptı v ku szo bo le s fcomp := f 1 Lyukfelto lte s Euklideszi ta volsa gte rke p sza mı ta sa fmc := fcomp se1 for i := 0,..., M do for j := 0,..., N do if fmc (i, j) > mina then fmc (i, j) 1 else fmc (i, j) 0 endif endfor endfor

14 Katona Melinda és Nyúl László A kapott eredmény tartalmazhat nem valós kód objektumokat is. Ezek kiszűrésére megalkottunk egy feltételrendszert. Mivel csak a kód területét vizsgáljuk, így több prior információ is adott. A kritériumok megadásánál az egyes szegmensek középpontjait tekintettük. Elegendő azon területeket megtartani, melyek x, y koordinátái maximális vagy minimális értékeket vesznek fel a többi centroid viszonylatában, illetve ahol ha az x, y párok közül az egyik minimális, akkor a másik maximális. Mindezek után már csak a fennmaradó objektumok középpontjait tekintjük és ezek egymáshoz viszonyított helyzetének vizsgálata megmutatja, hogy mely sarkokban található négyzet, amiből megkapható a QR kód orientációja. A folyamat lépései láthatóak a 10. ábrán. 10. ábra: A QR kód orientációját meghatározó lépések A QR kód helyzetének meghatározását követően az NFI zóna megtalálása a feladat. A specifikáció alapján adottak a QR kódot tartalmazó négyzet és a külső négyzet oldalainak valós méretei (milliméterben). Ebből a képen detektált QR régió méretének ismeretében egyszerű számítással meghatározható az NFI zóna területe a képen. A későbbi azonosításhoz szükséges még az NFI zóna középpontjának meghatározása a referencia koordináta rendszer megadásához. A képfeldolgozást igénylő feladatok utolsó lépése a behatárolt NFI zóna területén elhelyezkedő glitterek detektálása. Ezt adaptív küszöböléssel végezzük a képen. A tévesen detektált objektumok különféle alaki jellemzők alapján kiszűrhetők. Jelen algoritmusunk terület és köralakúság alapján tovább szűkítette a lehetséges valós glitterek számát. A folyamatot a 11. ábra szemlélteti. 4.2. Azonosítás A képekből kinyerhető információ lehetővé teszi, hogy a pontok párosításához jellemzők széles palettája álljon a rendelkezésre. A glittereket tartalmazó zóna koordinátázását mindkét irányban a [-1.0, 1.0] intervallumban határozzuk meg, a koordinátarendszer origója pedig a QR kódmező (és egyben az NFI zóna)

Vonalkódok és természetes vizuális azonosítók felismerése valós időben 15 11. ábra: Glitterek szegmentálásának lépései középpontja. Ebben a koordinátarendszerben keresünk a vizsgált címkén detektált glitterekhez párokat a referencia képen talált glitterek között és a képből kinyert jellemzők alapján egy alkalmasan választott hasonlósági mérték alapján tudunk dönteni az NFI kód elfogadásáról vagy elutasításáról. 5. Összefoglalás Ismertettük két új, saját fejlesztésű algoritmust, egyet 1D vonalkódok felismerésére, míg a másikat a 2D QR kódokra. Ezeket összehasonlítottuk szakirodalmi algoritmusokkal, melyek között volt univerzális is (ami 1D és 2D kódtípusokat is hatékonyan detektál) és olyanok is, amelyek 1D vagy 2D kódtípusokra specializáltak. Az eljárások pontosságának és futási idejének vizsgálatára létrehoztunk egy közel 15 000 és egy 10 000 tesztképet magában foglaló adatbázist. Az eredmények azt igazolják, hogy az új, bemutatott algoritmusaink hatékonysága mindkét kódtípus esetében jobb, mint az összehasonlításban szereplő szakirodalmi módszereké úgy ideális, mint torzításokkal terhelt képek esetén is. A futási idők alapján jól látszik, hogy módszereinkhez valós idejű implementációk is készíthetők. Bemutattuk továbbá a vonalkódok és természetes azonosítók egy gyakorlati alkalmazását is, és vázoltuk algoritmusunkat egy lehetséges hibrid vizuális kód felismerésére. Köszönetnyilvánítás Az NFI azonosítók felismerésével kapcsolatos kutatást az InterSoft Hungary Ltd.-n belüli R&D projekt finanszírozta és minden kereskedelmi célú jog a támogató céget illeti. A kutatás részben a TÁMOP 4.2.4.A/2-11-1-2012-0001 azonosító számú Nemzeti Kiválóság Program - Hazai hallgatói, illetve kutatói személyi támogatást biztosító rendszer kidolgozása és működtetése országos program című kiemelt projekt keretében zajlott. A publikációt a TÁMOP-4.2.2.A-11/1/KONV-2012-0073 azonosító számú Telemedicina fókuszú kutatások Orvosi, Matematikai és

16 Katona Melinda és Nyúl László Informatikai tudományterületeken (TOMI) című projekt támogatta. A projekt az Európai Unió támogatásával, az Európai Szociális Alap társfinanszírozásával valósul meg. Irodalom 1. Robert Adelmann. Toolkit for bar code recognition and resolving on camera. In Phones - Jump Starting the Internet of Things. In: Informatik 2006 workshop on Mobile and Embedded Interactive Systems, 2006. 2. Péter Bodnár and László G. Nyúl. Efficient barcode detection with texture analysis. In Signal Processing, Pattern Recognition, and Applications, Proceedings of the Ninth IASTED International Conference on, pages 51 57, 2012. 3. Péter Bodnár and László G. Nyúl. Improving barcode detection with combination of simple detectors. In Signal Image Technology and Internet Based Systems (SITIS), 2012 Eighth International Conference on, pages 300 306, 2012. 4. Melinda Katona and László G. Nyúl. A novel method for accurate and efficient barcode detection with morphological operations. In Signal Image Technology and Internet Based Systems (SITIS), 2012 Eighth International Conference on, pages 307 314, 2012. 5. Melinda Katona and László G. Nyúl. Efficient 1D and 2D barcode detection using mathematical morphology. In Mathematical Morphology and Its Applications to Signal and Image Processing, volume 7883 of Lecture Notes in Computer Science, pages 464 475. 2013. 6. Suran Kong. QR code image correction based on corner detection and convex hull algorithm. Journal of Multimedia, 8:662 668, 2013. 7. Jian-Hua Li, Yiwen Wang, Yi Chen, Meng Zhang, Guo-Cheng Wang, and Ping Li. Morphological segmentation of 2-D barcode gray scale image. JCP, 8:2461 2468, 2013. 8. Daw-Tung Lin and Chin-Lin Lin. Multi-symbology and multiple 1D/2D barcodes extraction framework. In Proceedings of the 17th International Conference on Advances in Multimedia Modeling - Volume Part II, pages 401 410, 2011. 9. Daw-Tung Lin and Chin-Lin Lin. Automatic location for multi-symbology and multiple 1D and 2D barcodes. Journal of Marine Science and Technology, 21:663 668, 2013. 10. Eisaku Ohbuchi, Hiroshi Hanaizumi, and Lim Ah Hock. Barcode readers using the camera device in mobile phones. In Proceedings of the 2004 International Conference on Cyberworlds, CW 04, pages 260 265, 2004. 11. Gábor Sörös and Christian Flörkemeier. Blur-resistant joint 1D and 2D barcode localization for smartphones. In Proceedings of the 12th International Conference on Mobile and Ubiquitous Multimedia, pages 11:1 11:8, 2013. 12. Steffen Wachenfeld, Sebastian Terlunen, and Xiaoyi Jiang. Robust recognition of 1-D barcodes using camera phones. In Pattern Recognition, 2008. ICPR 2008. 19th International Conference on, pages 1 4, 2008.