alakfelismerési algoritmusok leírása

Kapcsolódó fogalmak: 
alakzatfelismerés
Kapcsolódó fogalmak: 
alakfelismerés
Kapcsolódó könyvfejezetek: 
24.5. Objektumok felismerése
Rövid szöveges bemutatás: 
Az anyag áttekintést kíván nyújtani a korszerű alakfelismerő algoritmusokról a témával ismerkedők számára. Jelen dokumentum egy bevezető a kapcsolódó algoritmus leírásokhoz. Nehézség foka, szükséges készségek: közepes, képfeldolgozási alapismeretek. Célcsoport: Dolgozó, továbbtanuló szakemberek, érdeklődő hallgatók.
 
1         Alakfelismerési algoritmusok leírása
A gépi alakzatfelismerés napjaink egyik legjobban kutatott területe. Gyakran előkerülő probléma például a gépi látás területén és a gépi diagnosztikában. Az alakzatfelismerés feladata a gépi látás tárgyterületén belül a következőképpen fogalmazható meg: egy képen vagy képsorozaton előre definiált alakzat meglétének eldöntése, és elhelyezkedésének meghatározása. A keresett alakzat megadásának módja történhet korábban készült felvételekkel, melyeken ismert az objektum helyzete, illetve előzetes tudás bevitelével, amely leírja a keresendő objektum alakját vagy egyéb tulajdonságait.
A feladat nehézsége, hogy a nézőpont és az objektum elhelyezkedése igen változatos lehet, az alakzatot eltakarhatják más tárgyak, esetleg a környezet és a megvilágítás sem ismert előre. További problémát jelenthet, ha nem egy adott tárgyat, hanem tárgyak osztályát, bizonyos tulajdonságoknak megfelelő tetszőleges, de amúgy változatos alakzatokat kell felismerni. Annak ellenére, hogy az ember számára ezek a feltételek nem jelentenek problémát, a feladat mai napig kihívás a számítógépek számára.
A tárgyalt tématerület a mintafelismerés egy részterülete. Előfordulhatnak tehát rokon megoldások a szövegbányászatban, adatelemzésben és más hasonló területeken. A gépi látás egyéb ágaival is találni rokonságot, ilyen például a panoráma képek összeillesztése, illetve a különböző nézőpontból készült képek közötti transzformáció meghatározása, azaz a regisztráció. Ezek a területek közel ugyanazokat a problémákat vetik fel, és a felhasznált algoritmusok nagy része is közös. Az alakzatfelismerés önmagában is igen kiterjedt téma, a benne foglalt algoritmusok számos aspektus mentén bonthatók tovább.
 
  
 
Az alapfeladat: balra a felismerendő objektum egy vetülete, jobbra a célkép. (forrás: taxi-jachymov.com, greenpeace.org)
 
Alapvetően más megközelítést igényel, ha például a felismerendő objektum egy háromdimenziós modellje adott, illetve ha csak a vetületeiről áll rendelkezésre információ. Utóbbi eset is többféleképpen lehetséges: adott lehet egy kétdimenziós modell vagy közelítő struktúra, ami leírja az előforduló képeket, vagy azok egy részét, de előfordulhat, hogy csak néhány felvétel ismert a céltárgyról. Ha a bemenet néhány vetületből áll, egy lehetséges út lenne a háromdimenziós alakzatok képekből történő rekonstruálása, azaz a probléma visszavezetése az első esetre. A tapasztalatok szerint ezek a próbálkozások kevés sikerrel jártak, amennyiben a kamera pozíciója nem volt ismert.
Különböző megközelítéseket kell alkalmazni, ha objektum kategóriát kell felismerni – például arcokat, embereket – vagy konkrét objektum példányokat, ugyanis más feltételezések tehetők a két esetben. Például színinformáció, textúraanalízis a példányok esetében sokkal gyakrabban alkalmazható, mivel ezek általában jellemeznek egy példányt, de ritkán állandóak az egész kategóriára nézve.
A felismerő algoritmusok elkülönülnek aszerint, hogy mennyire specifikusak az adott objektumra nézve, más szóval mennyire rugalmasak és általánosak. Léteznek egy adott – jellemzően egyszerűbb, például kör – alakzatra kifejlesztett algoritmusok, ilyen például a Hough, vagy a Radon transzformáció. Általánosabb megoldást jelentenek azok az algoritmusok, melyeknél a módszer és a működés alapelve kötött, de a konkrét alakzat nem ismert előre, hanem egy tanulási fázisban kerül felhasználásra. Ezeknél a módszereknél elég csak azt ismerni előre, hogy a felismerni kívánt alakzatok milyen tipikus tulajdonságokkal rendelkeznek, például éles határvonalúak, jól elkülönülő sarkokkal rendelkeznek. A legelterjedtebb képviselőjük a Scale Invariant Feature Transform (SIFT), de ide tartozik a Bag of Words algoritmus is. Végül a felismerési feladatokra alkalmazhatók közvetlenül a teljesen általános gépi tanulási módszerek is, ahol az objektumról készült képet némi előfeldolgozás – például simítás, élkiemelés, jellemző számítás – után megtanítják például egy Szupport Vektor Gépnek (SVM).
Némileg kötődik az előző ponthoz az alábbi megkülönböztetés. A keresés történhet mintázat alapján, illetve jellemzők alapján. Előbbi eljárás egy előre elkészített képet tanul meg, majd ezzel keres hasonlóságot. Az elvet felhasználja például az illesztett szűrő. A különböző transzformációk során megmaradó korlátokat ilyen módon nehezen tudja figyelembe venni és rosszul kezeli, ha egy objektum takarásban van. A jellemző alapú megoldás ezzel szemben beiktat egy köztes lépést, melyben az alakzat tipikus részeit próbálja megtalálni. A jellemzőkinyerés során információt veszít, de a lényeg kiemelődik, így könnyebb általánosítani. Járulékos előny, hogy ez a megközelítés térbeli korlátok figyelembevételére is lehetőséget ad. Ezen az elven működik a már említett SIFT módszer. A tématerület kiterjedtsége miatt külön fejezetet alkotnak a jellemző alapú alakzatfelsimerők, illetve a jellemzőket nem használó megoldások.
 
2         Hivatkozások
http://en.wikipedia.org/wiki/Object_recognition_(computer_vision), Wikipedia – Object recognition (computer vision). - wikipedia.org, 2010
Peter M. Roth and Martin Winter, Survey of Appearance-Based Methods for Object Recognition., Technical report, Graz University of Technology, 2009

Kidolgozta:      Orbán Gergely, BME