Regisztráció és bejelentkezés

Szoftverfejelsztés emberi kéz gesztusának felismerésére

A mindennapokban egyre nagyobb szerepet kapnak az okostelefonok. Ott lapulnak mindenki zsebében és egyre gyakrabban használjuk őket. Az eszközünk fő beviteli perifériája az érintőképernyő, de emellett egyéb módszerek is léteznek: gomb, mikrofon és kamera. Az utóbbiakat kevésbé használjuk, de kutatók kivételes fejlődést értek el emberi hang és gesztusok érzékelésében. Napjainkban főként a gesztusokra fókuszálnak a fejlesztések: a fő cél minél pontosabban és megbízhatóbban értelmezni az emberi mozdulatokat, hogy ezzel egy felhasználóbarát módszert kapjunk az eszközünkkel való kommunikációhoz. Lehetséges, hogy a jövőben a gesztus alapú kommunikáció fogja felváltani az érintőképernyőt, ezért én is csatlakoztam a kutatásokhoz, és munkám során egy saját utat próbáltam ki.

A projekt célja egy olyan telefonos program írása, amely képes stabilan érzékelni a főbb kézi gesztusokat, nappal és éjszaka is. Követelmény volt, hogy alacsony erőforrás igényű legyen, hogy átlagos kamerás telefonon is fusson. Többféle megoldást is készítettek erre a problémára és rengeteg példa videó található meg az Interneten. Ezek közül, ami szabadon felhasználható, egyik sem felelt meg: nem volt elég megbízható, vagy túl sok erőforrást igényelt, ezért egy saját felismerő írása mellett döntöttem. Ki kellett szűrnöm a környezet zavaró hatásait és lehetőséget biztosítani a működésre mozgás közben is. Az algoritmus a következő főbb lépésekből áll: emberi bőrszín szűrése, kézfelület megkeresése, zajszűrés, skeleton keresés, ujjak keresése és gesztus érzékelése.

A munkámat Android környezetre írtam meg és az OpenCV osztálykönyvtárat használtam fel. A felismerő motorhoz a C++ nyelvet választottam a nagyobb hatékonyság és sebesség érdekében. Külső függvények helyett saját képfeldolgozó algoritmusokat készítettem, szakítva a hagyományos OpenCV kézi gesztus érzékelővel, amellyel jelentősen fel tudtam gyorsítani a képfeldolgozást, valamint maximalizáltam a kinyert információkat. A függvények összehangolásával sikerült minimalizálni a felesleges műveletek számát. Az általam írt kódrészletek integrálásával egy újszerű és hatékony megoldást készítettem.

szerző

  • Szekeres Kornél
    gépészmérnöki
    nappali alapszak

konzulensek

  • Korondi Péter
    , Mechatronika, Optika és Gépészeti Informatika Tanszék
  • Tóth András
    Project Manager, NNG kft. (külső)
  • Dr. Csorba Kristóf
    egyetemi docens, Automatizálási és Alkalmazott Informatikai Tanszék

helyezés

Jutalom