ERK'2022, Portorož, 191-194 191 Razpoznavanje gest s pomočjo senzorja bližnjega električnega polja Matej Vnučec, Boštjan Batagelj, Aljaž Blatnik Univerza v Ljubljani, Fakulteta za elektrotehniko, Laboratorij za sevanje in optiko E-pošta: mv8413@student.uni-lj.si Gesture recognition using a sensor of near electric field Abstract. This paper presents the design and construction of a physical device that can sense, recognize, and communicate with a computer using 3D gestures. A pad of a reasonable size that uses an electric field was chosen to obtain information from the environment. In the prototype, electric field is used to detect 6 gestures allowing background management with various everyday programs on the computer. The connection to the computer is established via the USB. The construction is tested by presenting a computer demo. 1 Uvod Čeprav je razpoznavanje človeških gest pogosto tema raziskav, se zračne geste večinoma uporabljajo le na področju računalniških iger, kot je na primer Nintendo Wii [1], saj je v vsakdanjem praktičnem življenju še vedno lažje uporabljati stikala in zaslone na dotik. Upravljanje slednjih je ljudem domače in poznano, ter jim daje takojšnji povratni odziv – stikalo klecne, zaslon se zasveti ali premakne, čutijo dotik zaslona, medtem ko pri gestah tega ni. Kljub temu, da se še vedno išče način, kako ustvariti ljudem potreben povratni odziv pri uporabi gest, se le-te vedno bolj pojavljajo pri interaktivnih multimedijskih napravah. Poleg računalniških iger se najdejo tudi druga področja, kjer se skušajo uvesti 3D geste v vsakdanje življenje. Primeri takih projektov so zapestne ure [2], upravljanje dvigal [3] in prepoznava vrst sadja [4]. Do sedaj so jih že uporabljali na področju medicine, na primer za pomoč bolnikom s Parkinsonovo boleznijo po možganski kapi. [5, 6] Število raziskav na temo 3D gest stalno narašča, vendar vsakodnevna uporaba še vedno ni pogosta, čeprav bi njihova uporaba lahko marsikomu olajšala življenje. Tehnologija razpoznavanja človeških gest je še zelo mlada in v razvoju. Nenazadnje se zaradi epidemije Covid-19 v preteklih letih skušamo čim bolj izogibati fizičnem stiku s potencialno okuženimi površinami. Epidemija Covid- 19 je prinesla nov zagon za uporabo sistema za zaznavo 3D gest, saj omogoča uporabnikom varno interakcijo s svetom, brez nevarnosti, da bi prenašali virus zaradi neposrednega dotikanja. Nevšečnost trenutnih naprav za zajem 3D gest je njihovo delovanje na osnovi detekcije z video posnetkom oziroma video razpoznavo [7], ter s tem pogojene posledične težave s prekrivanjem leč ali senzorja z umazanijo, ovirami, tudi slabimi pogoji za zajem (slaba osvetlitev, močno sonce). Namen članka je predstaviti izboljšavo pred leti razvitega prototipa [8], ki omogoča zajem 3D gest z boljšo resolucijo. Pri tem je bila izbrana ustrezno velika ploščica, ki pridobiva informacije iz okolja s pomočjo električnega polja in se lahko integrira v izdelke brez dodatne procesno potratne obdelave slik ali potrebe po vidljivosti s senzorjem. V prototip je implementiranih 6 gest, ki omogočajo upravljanje v ozadju z različnimi programi na računalniku. Povezava z računalnikom je izvedena preko vodila USB. V članku je predstavljena tudi demo aplikacija, ki uporabniku podaja ustrezno povratno informacijo. Članek v naslednjem poglavju opisuje zasnovo naprave za razpoznavanje gest in delovanje senzorja bližnjega električnega polja. V tretjem poglavju je predstavljena izdelava vmesnika za zajem človeških gest. Četrto poglavje se osredotoči na zajem podatkov in povezavo preko vodila USB. V petem poglavju je opisana zasnova in izdelava ohišja senzorja in vrednotenje njegovega delovanja. V šestem pa razpoznavanje gest in delovanje 3D tablice. Sledita še sedmo poglavje, kjer je predstavljena izdelava aplikacije za podajanje povratnih informacij uporabniku in zaključek. 2 Zasnova naprave in delovanje senzorja Osnovna zamisel pri izgradnji in načrtovanju fizične naprave, ki bo omogočala razpoznavo 3D gest, je uporaba električnega polja [9] oziroma njegove spremembe za detekcijo položaja objekta v prostoru, kot prikazuje slika 1. Senzor naprave za zajem 3D gest vsebuje eno oddajno in več sprejemnih elektrod. Oddajno elektrodo, ki je od sprejemnih ločena z izolativno plastjo, se vzbuja s signalom znane frekvence in amplitude. Sprejemne elektrode skupaj z električno maso tvorijo kondenzator zelo majhne vrednosti. Kondenzator je del nihajnega kroga, čigar frekvenca nihanja je odvisna od kapacitivnosti med elektrodama in kapacitivnosti okolja. Kadar v bližino senzorja pride človeška roka, ta predstavlja dodatno kapacitivnost v okolici in s tem spremeni električno polje v bližini senzorja, kar ima za posledico spremembo frekvence nihanja nihajnega kroga dane elektrode. Tako je mogoče na tehnološko precej enostaven način zaznati prisotnost človeške roke. Podobno deluje tudi zaslon s kapacitivnim zaznavanjem dotika, le da se tam zaznava dotik v dvo- 192 dimenzijski ravnini, pri 3D senzorju pa je mogoče zaznavati tudi oddaljenost telesa (roke) od površine, kar doprinese dodatno dimenzijo. Slika 1. Princip delovanja senzorja in vpliv roke na električno polje ter kapacitivnost. [10] 3 Izdelava vmesnika za zajem človeških gest Z ustrezno razporeditvijo elektrod na ploščici 3D senzorja in uporabo več vzorčevalnih kanalov je mogoče tvoriti senzor, ki je sposoben na določeni razdalji od senzorske naprave zaznati položaj roke v prostoru. Za razpoznavo osnovnih gest (levo desno, gor, dol, rotacija) je priporočljiva uporaba petih sprejemnih elektrod, od katerih sredinska služi namenu boljše kalibracije in detekcije prisotnosti roke. Končno zasnovo prostorske razporeditve sprejemnih elektrod na plošči prikazuje slika 2 (vsaka bela črta predstavlja položaj ene izmed elektrod). Slika 2. Namestitev elektrod na štirislojno tiskanino senzorja. Sredinska elektroda je izdelana kot mreža s karo vzorcem z namenom, da je njena površina približno enaka površini preostalih štirih elektrod. To olajša izvedbo meritve, saj bi večja površina imela večjo kapacitivnost in s tem manjšo resolucijo zaznave objekta. Izolacijsko območje tvori dielektrična plast laminata FR4. V notranjem sloju je izvedena oddajna elektroda, ki pokriva celotno območje senzorja. Namensko integrirano vezje se nahaja na spodnji strani ploščice za oddajno elektrodo in je prikazano na sliki 3. Slika 3. Namensko integrirano vezje senzorja. Elektronsko vezje za sprejem in obdelavo sprejetih signalov se lahko izvede z uporabo povsem analognih gradnikov ali pa se za ta namen poišče integrirano vezje. Na tržišču za ta namen že obstaja integrirano vezje, ki v svoji notranjosti vsebuje tako analogni del za zajem podatkov kot preprost mikrokrmilnik za grobo obdelavo podatkov, shranjevanje parameterizacije in komunikacijo preko vodila. Nekateri od obstoječih projektov uporabljajo namensko integrirano vezje podjetja Microchip MGC3030 [8], ki je bilo prva različica prosto dobavljivega vezja. V tem članku predstavljena naprava uporablja novejše integrirano vezje MGC3130 prav tako proizvajalca Microchip. [10] Naprava za zajem 3D gest je bila zasnovana s pomočjo priročnika za integrirano vezje MGC3130 in grobo izdelanega demonstracijskega prototipa podjetja Microchip. 4 Zajem podatkov in povezava preko vodila USB Izdelan prototip senzorja za razpoznavanje 3D gest deluje z namensko programsko opremo, saj detektorsko integrirano vezje za prvo delovanje potrebuje vpis parameterizacijskih podatkov in zadnjo različico programske kode, ki jo prosto dostopno ponuja proizvajalec. V ta namen je potrebno izdelati vmesnik USB-I2C, ki kasneje služi za komunikacijo z računalnikom in za napajanje same naprave. Preko te komunikacije se prenašajo surovi podatki z detektorja, ki jih nadalje obdelamo s poljubno programsko opremo na osebnem računalniku. Poleg surovih podatkov, ki podajajo vrednosti odstopanja signala na sprejemnih elektrodah, lahko namensko integrirano vezje oddaja tudi že obdelan podatek o zadnji izvedeni gesti. S tem se prihrani precej procesnega časa na osebnem računalniku, zato se lahko programer posveti le upravljanju programov in prikazu podatkov. Končen izgled senzorskega in komunikacijskega dela pred namestitvijo v ohišje prikazuje slika 4. 193 Slika 4. Končna povezava elementov prototipa pred montažo v ohišje. 5 Ohišje in vrednotenje točnosti delovanja Ohišje senzorja za razpoznavo gest poleg estetskega vidika in mehanske trdnosti služi tudi kot pomoč pri uspešni zaznavi 3D gest. Ohišje naprave je izdelano s pomočjo 3D tiska in načrtovano v programu za 3D modeliranje Razvoj nosilnega ohišja prikazuje slika 5. Tablica je namenjena uporabi na pisalni mizi, torej ko uporabnik sedi. Takrat je gibanje rok omejeno na prostor nad mizo, ravno tako pa zaradi normalnega položaja sedenja gibi niso vedno vzporedni s površino mize. Ko uporabnik sedi, se je skozi več prototipov, pokazal za najprimernejšega naklon zaznavne površine senzorja 10°. Slika 5. Razvoj ohišja končne naprave. Pred pričetkom uporabe senzorja je treba celotno napravo kalibrirati. Kalibracija se izvede le enkrat, ko se tablica sestavi oziroma se vanjo vpiše program (tovarniški postopek). Kasneje se naprava samodejno prilagaja spremembam v okolici, da detekcija gest ves čas deluje pod enakimi delovnimi pogoji. Za ta namen proizvajalec ponuja programsko orodje, ki uporabniku omogoča meritev parametrov in njihov vpis v pomnilnik integriranega vezja. Kalibracija je potrebna zaradi vpliva ostalih tiskanih vezij v napravi in samega ohišja na razporeditev električnega polja okoli sprejemnih elektrod. S tem se izniči neenakomerne amplitude v sprejetem signalu, ki niso posledica prisotnosti objekta ampak motilnih elementov v okolici. Slika 6 prikazuje postopek merjenja kalibracijskih faktorjev pred vpisom v pomnilnik. Slika 6. Določanje kalibracijskih vrednosti. Iz grafa je razvidno, da so odzivi vseh elektrod približno enaki. Najvišji odziv ima sredinska elektroda, ki ima kljub manjšanju površine s pomočjo karo vzorca precej večjo kapacitivnost, kot preostale elektrode. Za idealno delovanje bi bilo treba njeno površino še nekoliko zmanjšati, vendar se uspe s parametrizacijo to težavo delno odpraviti. 6 Razpoznava gest in delovanje 3D tablice Program znotraj integriranega vezja na senzorski tiskanini preko oddajne elektrode proizvaja električno polje v frekvenčnem območju nekaj 10 kHz. S spreminjanjem frekvence lahko manjša ali veča zaznavno polje in s tem omogoča razlikovanje med prisotnostjo objekta (človeške roke) in napake kot posledica motečih pojavov (zunanje elektronske naprave, elektorstatika). Posamezna gesta je razpoznana s pomočjo končnih stanj namenske programske kode naložene v notranjost procesne enote senzorja. Ta deluje precej preprosto. Pomik roke iz leve strani proti desni pomeni detekcijo signala na levi elektrodi, nato na desni, medtem ko se jakosti signala na gornji in spodnji elektrodi skozi čas bistveno ne spreminjata. Podobno velja za preostale tri geste premočrtnega premika roke. Detekcijo in klasifikacijo geste v časovnem poteku signala prikazuje slika 7. Slika 7. Signali elektrod v časovni domeni (razpoznava gest). Senzorska procesna enota lahko razpozna več različnih gest kot so prisotnost roke, dotik površine in dvojno ponovitev gest. Uporabnik lahko kreira nove geste (npr. poševni zamah z roko), jih klasificira in vpiše v pomnilnik, vendar se to izkaže kot precej nezanesljiv način detekcije. Proizvajalec je v svoj nabor že vključil najbolj optimalne geste, ki jih je mogoče razpoznati v različnih primerih in pod različnimi pogoji. Slika 8 194 prikazuje dve različni gesti, ki jih razpozna prototipna tablica in jih uporablja tudi demo aplikacija. Slika 8. Različni tipi gest. 7 Izdelava demo aplikacije za podajanje povratnih informacij Za prikaz delovanja uporabe je bilo izbrana spletna stran "Google Maps". Aplikacija deluje tako, da program prebere gesto, ki smo jo izvedli na prototipu senzorja in simulira pritisk izbrane tipke na tipkovnici, kar lahko poljubno spreminjamo. Na ta način lahko spremenimo katero koli kretnjo v kateri koli znak na tipkovnici. Za "Google Maps" so bile izbrane geste gor, dol, levo, desno, za splošno navigiranje po zemljevidu "Google Maps" in pa vrtenje v desno in vrtenje v levo za približanje in oddaljevanje iz mape. Na kratki predstavitvi projekta na fakulteti so uporabniki preizkusili prototip in demo aplikacijo. Izkazalo se je, da uporabniki hitro osvojijo delo z aplikacijo, saj sta bili 2 minuti razlage zadosti za razumevanje delovanja in uporabo naprave. So pa uporabniki pokazali zaskrbljenost pri natančnosti prepoznavanja gest, saj se čisto vsaka gesta ni izvedla zaradi prehitre izvedbe zamaha z roko ali pa se je gesta izvedla, ker so ponesreči zamahnili z roko preblizu prototipa. Prva težava je zaradi odziva, ki jo potrebuje opraviti tudi "Google Maps" da se v mapi zgodi premik in bi jo lahko popravili s tem, da dodamo čakalno vrsto za geste ali pa se najde hitrejši način premikanja zemljevida. Drugo težavo rešimo na dva načina. Prvič z zmanjšanjem občutljivosti, vendar potem ne moremo več zagotavljati pravilnosti delovanja v vseh primerih (npr. kadar senzor založimo s kopico papirja), druga možnost pa je detekcija prisotnosti in nastavljanje ustreznega praga delovanja. 8 Zaključek V članku je prikazan razvoj naprave za razpoznavanje človeških gest in računalniški program, ki prikazuje uporabnost prototipa. Naprava je osnovana na integriranem vezju MGC3130 skupaj s krmilnikom, ki omogoča komunikacijo z računalnikom preko povezave USB. Preko programske opreme je v krmilnik možno naložiti parametrične podatke o senzorju in iz njega brati podatke za razpoznavo gest. V članku je predstavljeno tudi vrednotenje delovanja vseh komponent in izvedba meritev kakovosti delovanja programa. Izdelano napravo je mogoče izboljšati s povečanjem natančnosti zaznavanja gest za boljšo uporabniško izkušnjo. Literatura [1] Daniel Ashbrook, Thad Starner: , MAGIC: A Motion Gesture Design Tool, Atlanta: CHI 2010: Everyday Gestures, Proceedings of the 28th International Conference on Human Factors in Computing Systems, CHI 2010, Atlanta, Georgia, USA, April 10-15, 2010. [2] J. Kim, J. He, K. Lyons in T. Starner: The Gesture Watch: A Wireless Contact-free Gesture based Wrist Interface, 11th IEEE International Symposium on Wearable Computers, 2007, pp. 15-22, doi: 10.1109/ISWC.2007.4373770. [3] Luca Montanaro, Paolo Sernani, Davide Calvaresi, Aldo Franco Dragoni: Touchless human-machine interface for the control of an elevatror, Proceedings of the 2nd International Conference on Recent Trends and Applications in Computer Science and Information Technology (RTA-CSIT 2016), Tirana, Albania, November 18–19, 2016. [4] Vitalijs Osadcuks in Aldis Pecka: Electrical field based detection of fruits and vegetables for robotized horticulture, Agronomy Res., vol. 14, no. S1, pp. 1088– 1098, 2016. [5] N. Hu, P. H. Chappell in N. R. Harris: Finger Displacement Sensing: FEM Simulation and Modelling of a Customizable Three-Layer Electrode Design, EEE Transactions on Instrumentation and Measurement, vol. 68, no. 5, pp. 1432-1440, May 2019, doi: 10.1109/TIM.2018.2884545. [6] N. R. Harris in D. Sthapit: Towards A Personalised Rehabilitation System for Post Stroke Treatment, IEEE Sensors Applications Symposium (SAS), 2016, pp. 1-5, doi: 10.1109/SAS.2016.7479848. [7] Qiang Zhang, Shanlin Xiao, Zhiyi Yu, Huanliang Zheng, in Peng Wang: Hand gesture recognition algorithm combining hand-type adaptive algorithm and effective- area ratio for efficient edge computing, Journal of Electronic Imaging 30(6), 063026 (23 December 2021). https://doi.org/10.1117/1.JEI.30.6.063026 [8] Aljaž Blatnik: Platforma za razpoznavo 3D gest s pomočjo električnega polja, 29. Mednarodna Elektrotehniška in računalniška konferenca, ERK 2020, Portorož, Slovenija, 21. - 22. september 2020 [9] H. Wei, P. Li, K. Tang, W. Wang, X. Chen: Alternating Electric Field-Based Static Gesture-Recognition Technology. Sensors (Basel). 2019 May 23;19(10):2375. doi: 10.3390/s19102375. PMID: 31126096; PMCID: PMC6567001. [10] Microchip, MGC3030/3130 3D Tracking and Gesture Controller Data Sheet Microchip Technology Inc, [Elektronski]. Dostopno na: http://ww1.microchip.com/downloads/en/DeviceDoc/400 01667E.pdf. )