distancinis kompiuterio valdymas rankos gestaisdspace.vgtu.lt/bitstream/1/735/1/akac.pdf · 2011....

7
14-osios Lietuvos jaunųjų mokslininkų konferencijos „Mokslas – Lietuvos ateitis“ ISSN 2029-7149 online 2011 metų teminės konferencijos straipsnių rinkinys ISBN 978-9955-28-835-0 KOMPIUTERINĖ GRAFIKA IR PROJEKTAVIMAS © Vilniaus Gedimino technikos universitetas DISTANCINIS KOMPIUTERIO VALDYMAS RANKOS GESTAIS Anastasija Kac Vilniaus Gedimino technikos universitetas El. paštas: [email protected] Santrauka. Straipsnyje apibrėžiama kompiuterio valdymo rankos gestais sąvoka. Aptariamas rankos gestų patogumas bei nauda kompiuterio valdyme. Išskiriami pagrindiniai etapai rankos gestų atpažinime ir apžvelgiami kai kurie paskelbti metodai. Straipsnyje atsižvelgiama į tai, kad gestų atpažinimas ir interpretavimas vyksta realiuoju laiku besikeičiančioje aplinkoje, todėl šis procesas turi užtikrinti greitą ir nepriekaištingą dominančios programos arba meniu valdymą. Atsižvelgiant į vartotojo poreikius, sukurta patogi naudojimui kompiuterio valdymo programa rankos gestais. Distancinis kompiuterio valdymas aprėpia ne tik pelytės kursoriaus valdymą, bet ir tam tikros programos arba dokumento atidarymą. Reikšminiai žodžiai: rankos gestų atpažinimas; kompiuterio valdymas; pelytės valdymas; žmogaus-kompiuterio sąveika; kompiuterinė rega Įvadas Spartus internetinių technologijų vystimasis bei tobulėjimas sukėlė susidomėjimą ir paskatino tyrimus tokioje disciplinoje kaip žmogaus-kompiuterio sąveika (angl. Human-Computer Interaction). Ši disciplina apima žmogaus santykį su kompiuteriu, interaktyvių sistemų kūrimą, tyrimą bei jų panaudojimą žmonių poreikiams. Paveiksle (1 pav.) pateikta schema atspindi procesus bei objektus, kurie įeina į kompiuterinės sistemos kūrimą. 1 pav. Žmogaus-kompiuterio sąveika (Internetinė nuoroda et al. 2011) Fig. 1. Human-Computer Interaction (website et al. 2011) Vienas iš svarbiausių veiksnių tarp žmogaus ir kompiuterio yra komunikacija. Tradiciškai komunikacija vyksta įvesties įrenginių, grafinių objektų, rečiau dialogo pagalba. Daug metų iš eilės žmogus keitėsi informacija su kompiuteriu įprastinių ir plačiai paplitusių įvesties įrenginių, tokių kaip pelytė arba klaviatūra, pagalba. Tokie įvesties įrenginiai užtikrino sklandų ir spartų kompiuterio valdymą. Tačiau, daugėjant tyrimams šioje srityje, buvo pradėta nauja era žmogaus-kompiuterio sąveikoje pasinaudojus veido, balso, judesių atpažinimo metodais. Sudėtingoje aplinkoje tai paskatino naujos krypties atsiradimą žmogaus-kompiuterio sąveikoje, kurią apjungus su kompiuterinės regos technologijomis įmanoma sukurti naujus pranašius įvesties įrenginius. Iš esmės kompiuterinės regos įrenginiai gali būti sėkmingai įgyvendinami ir panaudojami vietoj įprastinių įvesties įrenginių. Tuomet galima paduoti tokią įvesties komandą, kuri bus interpretuojama kaip pelytės arba klaviatūros funkcija. Vienas iš galimų būdų paduoti signalą kompiuterinės regos įrenginiui yra rankos gestų panaudojimas. Tam tikras rankos gestas gali reikšti skirtingas komandas ir atlikimo operacijas. Toks komunikacijos būdas pasižymi itin patogia vartotojui sąsaja, nereikalaujančia papildomų valdymo įrenginių. Rankos gestų panaudojimas kompiuterio valdyme turi daug pranašumų dėl savo paprastumo, patogumo ir intuityvumo. Sėkmingai įgyvendintos aplikacijos su rankos gestų atpažinimu aprėpia kompiuterinių žaidimų valdymą (Freeman at al. 1999), žmogaus-robotų sąveiką (Triesch at al. 1997) ir gestų kalbos atpažinimą (Starner at al. 1995 ). Tačiau ir šiomis dienomis, kuriant greitus ir efektyvius rankos gestų atpažinimo metodus realioje aplinkoje, susiduriama su keliomis kliūtimis. Sudėtingos rankos http://dspace.vgtu.lt 1

Upload: others

Post on 20-Feb-2021

1 views

Category:

Documents


0 download

TRANSCRIPT

  • 14-osios Lietuvos jaunųjų mokslininkų konferencijos „Mokslas – Lietuvos ateitis“ ISSN 2029-7149 online 2011 metų teminės konferencijos straipsnių rinkinys ISBN 978-9955-28-835-0

    KOMPIUTERINĖ GRAFIKA IR PROJEKTAVIMAS

    © Vilniaus Gedimino technikos universitetas

    DISTANCINIS KOMPIUTERIO VALDYMAS RANKOS GESTAIS

    Anastasija Kac Vilniaus Gedimino technikos universitetas

    El. paštas: [email protected]

    Santrauka. Straipsnyje apibrėžiama kompiuterio valdymo rankos gestais sąvoka. Aptariamas rankos gestų patogumas bei nauda kompiuterio valdyme. Išskiriami pagrindiniai etapai rankos gestų atpažinime ir apžvelgiami kai kurie paskelbti metodai. Straipsnyje atsižvelgiama į tai, kad gestų atpažinimas ir interpretavimas vyksta realiuoju laiku besikeičiančioje aplinkoje, todėl šis procesas turi užtikrinti greitą ir nepriekaištingą dominančios programos arba meniu valdymą. Atsižvelgiant į vartotojo poreikius, sukurta patogi naudojimui kompiuterio valdymo programa rankos gestais. Distancinis kompiuterio valdymas aprėpia ne tik pelytės kursoriaus valdymą, bet ir tam tikros programos arba dokumento atidarymą.

    Reikšminiai žodžiai: rankos gestų atpažinimas; kompiuterio valdymas; pelytės valdymas; žmogaus-kompiuterio sąveika; kompiuterinė rega

    Įvadas

    Spartus internetinių technologijų vystimasis bei tobulėjimas sukėlė susidomėjimą ir paskatino tyrimus tokioje disciplinoje kaip žmogaus-kompiuterio sąveika (angl. Human-Computer Interaction). Ši disciplina apima žmogaus santykį su kompiuteriu, interaktyvių sistemų kūrimą, tyrimą bei jų panaudojimą žmonių poreikiams. Paveiksle (1 pav.) pateikta schema atspindi procesus bei objektus, kurie įeina į kompiuterinės sistemos kūrimą.

    1 pav. Žmogaus-kompiuterio sąveika (Internetinė nuoroda et al. 2011)

    Fig. 1. Human-Computer Interaction (website et al. 2011)

    Vienas iš svarbiausių veiksnių tarp žmogaus ir

    kompiuterio yra komunikacija. Tradiciškai komunikacija

    vyksta įvesties įrenginių, grafinių objektų, rečiau dialogo pagalba. Daug metų iš eilės žmogus keitėsi informacija su kompiuteriu įprastinių ir plačiai paplitusių įvesties įrenginių, tokių kaip pelytė arba klaviatūra, pagalba. Tokie įvesties įrenginiai užtikrino sklandų ir spartų kompiuterio valdymą. Tačiau, daugėjant tyrimams šioje srityje, buvo pradėta nauja era žmogaus-kompiuterio sąveikoje pasinaudojus veido, balso, judesių atpažinimo metodais. Sudėtingoje aplinkoje tai paskatino naujos krypties atsiradimą žmogaus-kompiuterio sąveikoje, kurią apjungus su kompiuterinės regos technologijomis įmanoma sukurti naujus pranašius įvesties įrenginius.

    Iš esmės kompiuterinės regos įrenginiai gali būti sėkmingai įgyvendinami ir panaudojami vietoj įprastinių įvesties įrenginių. Tuomet galima paduoti tokią įvesties komandą, kuri bus interpretuojama kaip pelytės arba klaviatūros funkcija. Vienas iš galimų būdų paduoti signalą kompiuterinės regos įrenginiui yra rankos gestų panaudojimas. Tam tikras rankos gestas gali reikšti skirtingas komandas ir atlikimo operacijas. Toks komunikacijos būdas pasižymi itin patogia vartotojui sąsaja, nereikalaujančia papildomų valdymo įrenginių. Rankos gestų panaudojimas kompiuterio valdyme turi daug pranašumų dėl savo paprastumo, patogumo ir intuityvumo. Sėkmingai įgyvendintos aplikacijos su rankos gestų atpažinimu aprėpia kompiuterinių žaidimų valdymą (Freeman at al. 1999), žmogaus-robotų sąveiką (Triesch at al. 1997) ir gestų kalbos atpažinimą (Starner at al. 1995 ).

    Tačiau ir šiomis dienomis, kuriant greitus ir efektyvius rankos gestų atpažinimo metodus realioje aplinkoje, susiduriama su keliomis kliūtimis. Sudėtingos rankos

    http://dspace.vgtu.lt 1

    mailto:[email protected]

  • struktūros sekimas ir interpretavimas kelia daug iššūkių. Reikia atsižvelgti į daugumą dalykų, tokių kaip rankos struktūros nepastovumą ir lankstumą, įvairių gestų pavidalus, realaus laiko vykdymą, besikeičiančias apšvietimo sąlygas ir foninį triukšmą. Realioje aplinkoje toks procesas turi užtikrinti tikslų nustatymą ir atpažinimą. Papildomai reali ir besikeičianti aplinka turi didelę įtaką atpažinimo procesui, kadangi įtraukia daug nereikalingos informacijos aplikacijos požiūriu.

    Darbo tikslas - parinkti geriausiai tinkantį rankos gestų atpažinimo metodą (tiek naudojimo patogumo, tiek veikimo efektyvumo atžvilgiu) bei įgyvendinti jį kompiuterio valdyme. Darbas atliekamas siekiant nustatyti rankos gestų patogumą ir efektyvumą kompiuterio kursoriaus valdyme be pelytės. Tyrimo iššūkiu tapo rankos įdomumas ir sekimo bei atpažinimo proceso sudėtingumas. Realiuoju laiku gestas reikalauja aukšto tikslumo nustatyme ir atpažinime dėl sudėtingo fono ir triukšmingos aplinkos. Sistemos veikimui pakanka paprasto kompiuterio ir web kameros.

    Naudojamų metodų apžvalga

    Ankstesnėse technologijose rankos gesto nustatymui buvo naudojamas mechaninis įrankis (Kortum at al. 2008). Vienu iš tokiu pavyzdžiu gali būti užmaunama pirštinė, su kuria pirštų judesiais vartotojas siuntė signalus kompiuteriui. Prieš keletą metų tokios pirštinės buvo gana populiarios, tačiau per paskutinį dešimtmetį kompiuterinės sistemos žymiai patobulėjo ir gali pasiūlyti pigesnius įrankius su geresniu veikimu. Kompiuterinės regos paremti rankos gestai pamažu išstūmė pirštines, kadangi pasiūlė natūralesnį ir priimtinesnį žmogaus-kompiuterio sąveikos komunikacijos būdą. Paprastai, dauguma rankos gestų atpažinimo sistemų vadovaujasi procesu, susidedančiu iš trijų etapų (2 pav.).

    Rankos aptikimui gali būti naudojamas mažai apskaičiavimo resursų reikalaujantis metodas ir puikiai veikiantis realiame laike. Toks metodas pagrįstas tikimybiniu modeliu su odos spalvos vaizdo elementų paskirstymu. Tai reiškia, kad rankos aptikimui naudojami

    2 pav. Įprastiniai etapai rankos gestų atpažinimo sistemose

    Fig. 2. Three common stages of gesture recognition systems

    žmogaus odos spalvos vaizdo elementai (Manresa at al. 2000). Judesiui sekti įvedamas judesio vektorius su α pasukimo kampu aplink koordinačių pradžią. Rankos būsena vaizduojama kaip elipsė, kur p=(px, py) yra elipsės centras o proceso palengvinimui y ašis žymima M, o x ašis m raide. Papildomai, iš rankos kontūrų ir jos iškilų apskaičiuojama kontūrų taškų seka tarp nuosekliai einančių iškilų verteksų. Tokiu būdu galima apskaičiuoti iškilų gylį d (3 pav.):

    3 pav. Rankos gestų atpažinimo bruožai (Kortum at al. 2008)

    Fig. 3. Extracted features for the hand gesture recognition (Kortum at al. 2008)

    Gestų abėcėlę sudaro keturi rankos judesiai su

    keturiomis kryptimis. Rankos judesiai atitinka pilnai atidarytą ranką (su išskiestais ir suvestais pirštais), kumštį ir paskutinį gestą, kai rankos visai nesimato video kameros stebėjimo zonoje. Šitie judesiai apibrėžia Pradėti, Judėti, Sustoti ir Nėra Rankos komandas (4 pav.). Taip pat, kai žmogus pasinaudoja Judėti komanda, jis gali atlikti Į Kairę, Į Dešinę, Į Priekį ir Atgal judesius. Judesiams Į Kairę ir Į Dešinę atlikti žmogus taip pat suka riešą atitinkama kryptimi. Į Priekį ir Atgal judesiams atlikti ranka priartinama arba nutolinama nuo kameros.

    Rankos aptikimas

    Judesio sekimas

    Gestų atpažinimas

    2

  • 4 pav. Rankos gestų abėcėlė ir judesių apibrėžimai (Kortum at al. 2008)

    Fig. 4. Gesture alphabet and valid gesture transitions (Kortum at al. 2008)

    Dar žinomas metodas, kai rankos gesto atpažinimui

    naudojamas skeleto modelis (Bray at al. 2004). Toks modelis padeda tiksliau atkurti tikrą rankos formą ir atpažinti delno deformaciją.

    5 pav. Rankos modelis (Bray at al. 2004)

    Fig. 5. The hand model (Bray at al. 2004)

    Tuo tarpu, skeleto išryškinimo algoritmai naudojami daugumoje komercinėse 3D modeliavimo ir animacijos sistemose. Vienas iš jų yra „Linear Blend Skinning“. Pirmiausia, hierarchinis skeletas vaizduojamas kaip statinis daugiakampių modelis. Nuo paprasto daugiakampio modelio jis skiriasi tuo, kad kiekviena viršūnė (šiuo atveju tai pirštas) turi sulenkimo taškus kaip papildomus atributus, paprastai po vieną kiekvienam sąnariui (5 pav.). Viršuje matomas rankos modelis kaip daugiakampių paviršius. Skeleto sąnariai (vidurinis vaizdas) apibrėžia vietas, kuriose ranka gali būti sulenkta. Apatinis paveikslas parodo kiekvieno atitinkamo sąnario intensyvumo plotą.

    Pasirinkto metodo sustiprinimui daugiakampių paviršių rankos modelis papildomai skanuojamas „eyetronic“ sistema, sukurta animuotam 3D vaizdui atstatyti. Gaunamas gana tikslus rankos skeletas, kurio deformacijas nesunkiai gali atsekti kompiuteris realiame laike. Kiekvienas pirštas turi po 5 sąnarius (3 sulenkimui, 1 užtvirtinimui ir 1 sukimui), išskyrus nykščio, turinčio 4 sąnarius (3 sulenkimui, 1 užtvirtinimui). Taigi delnas turi 6 „laisvumo laipsnius“ (angl. Degrees of Freedom) riešo interpretavimui ir pasukimui (6 pav.). Po to, kai sukurta skeleto forma, jo padėtis turi būti susieta ir pritaikyta daugiakampių paviršiaus arba „odos sluoksnio“ padėčiai. Labai svarbu, kad odos sluoksnis natūraliai deformuotųsi kartu su skeleto judesiais. Kai sąnariai pasisuka, oda išsipučia arba susitraukia, priklausomai nuo intensyvumo reikšmės.

    6 pav. Rankos modelis ir „laisvumo laipsniai” (Bray at al. 2004)

    Fig. 6. The hand model and its degrees of freedom (Bray at al. 2004)

    Stebint rankos pasukimo ir sąnarių sulenkimo kampus, atstatomas tikslus rankos gestas (7 pav.):

    3

  • 7 pav. Daugiakampio paviršiaus ir animuotas rankos modelis (Bray at al. 2004)

    Fig. 7. The polygonial surface model and and its reconstructed sequence (Bray at al. 2004)

    Taip pat kompiuterio valdymą arba tam tikras

    operacijas galima atlikti iš anksto numatytais rankos gestais. Tuomet rankos gestų ir jų pozicijos nustatymas gali būti atliktas pagal jau turimus duomenų bazėje dirbtinius rankos gestų vaizdus arba etalonus (Athisos at al. 2002). Vaizdo kadre nustatytas gestas turės sutapti arba bent būti panašus į vieną iš patalpintų duomenų bazėje rankos gestų. Esami duomenų bazėje gestai yra kompiuterio sugeneruoti vaizdai su skirtingais pasukimo kampais. Atpažintas gestas bus interpretuojamas kaip komandą atlikti norimą kompiuterio valdymo operaciją.

    Formuojant duomenų bazę Euklido terpėje, ranka suprantama kaip lankstus objektas, sudarytas iš 16 skirtingų sričių: delno ir 15 sričių, žyminčius pirštus. Kiekviename piršte išskiriamos 3 sritys (8 pav.):

    8 Pav. Rankos kaip lankstaus objekto atvaizdavimas (Athisos at al. 2002)

    Fig. 8. The hand as an articulated object (Athisos at al. 2002)

    Penki sąnariai, jungiantys pirštus prie delno, leidžia pasukimą pagal du „laisvumo laipsnius“. Tuo tarpu likę dešimt sąnarių tarp piršto sričių padaro sukimą tik pagal vieną „laisvumo laipsnį“.

    Duomenų bazė gali turėti neribotą gestų skaičių, priklausomai nuo to, kiek gestų bus norima atpažinti (9 pav.):

    9 pav. Duomenų bazės rankos gestų etalonai (Athisos at al. 2002)

    Fig. 9. The basic shapes used to generate training views in a database (Athisos at al. 2002)

    Be to, tas pats rankos gestas duomenų bazėje gali būti saugomas iš keturių skirtingų matymo kampų (10 pav.):

    10 pav. Gesto vaizdai iš 4 skirtingų matymo kampų (Athisos at al. 2002)

    Fig. 10. Four different database views on the same basic shape (Athisos at al. 2002)

    Tokiu būdu gesto atpažinimas yra žymiai palengvinamas, ir pačiam vartotojui nereikia prisiminti tiksliai, kaip pasukti ranką, kad gestas būtų atpažintas.

    Rodomų rankos gestų palyginimas su turimais duomenų bazėje vaizdais atliekamas keliais etapais. Iš pradžių, surūšiuojami dirbtiniai vaizdai, kombinuojant piršto ir momento atitikimus, ir atmetami blogiausiai įvertinti vaizdai. Toks pradinis skanavimas atliekamas labai greitai vos per kelias sekundes. Toliau, vertinami likę kandidatai pagal kontūrų pozicijos panašumus ir pagal Chamfer nuotolį (Athisos at al. 2002).

    Visi aukščiau aptarti metodai yra gana sudėtingi, reikalaujantys specialių atpažinimo algoritmų. Todėl, norint atpažinti rodomus rankos gestus, įmanoma pasinaudoti C++

    4

  • aplinkoje integruota kompiuterinės regos biblioteka OpenCV. Šita biblioteka yra atviro kodo ir joje galima rasti kai kuriuos metodus, pritaikytus veido ir rankos atpažinimui. Vienas iš paskelbtų metodų naudoja kelis nuosekliai einančius klasifikatorius, besiremiančius Haar požymiu (Pang at al. 2010). Būtent šis požymis leidžia su mažais kompiuterinių resursų reikalaujančiais apskaičiavimais efektyviai atpažinti modelį realiuoju laiku. Oficialiai Haar požymį paskelbė Viola ir Jones (Viola et al. 2001) veido atpažinimui, tačiau jų algoritmas naudojamas ir rankos gestų atpažinimui. Metodas remiasi iš anksto numatytais rankos gestais, kurie naudojami kompiuterio valdyme. Pavyzdžiui, kumštis valdo pelytės kursorių ekrane, o atviras delnas sustabdo judėjimą (11 pav.):

    11 pav. Rankos gestai, naudojami kompiuterio valdyme (Pang at al. 2010)

    Fig. 11. Selected hand postures for training (Pang at al. 2010)

    Metodo įdomumas yra tame, kad rankos sekimas ir gesto atpažinimas vyksta tuo pačiu metu. Visą procesą galima padalinti į 5 pagrindinius žingsnius: • Paruošiami rankos gestų prototipai; • Patalpinus ranką į kameros zoną, sistema

    nusprendžia ar tai vienas iš turimų rankos gestų; • Jei tai rankos gestas, tuomet sistema parenka

    labiausiai panašų į jį rankos gesto prototipą; • Prototipas valdo pelytės kursorių ekrane pagal

    nurodomą rankos gestą; • Procesas užbaigiamas, kai ranka dingsta iš kameros

    zonos. Žemiau pateikta proceso diagrama (12 pav.):

    Pradžia

    Video fiksavimas

    12 pav. Rankos gesto atpažinimo proceso diagrama (Pang at al. 2010)

    Fig. 12. Process diagram (Pang at al. 2010)

    Sistema puikiai veikia patalpų viduje dėl savo apšvietimo sąlygų, pritaikytų rankos gestų atpažinimui.

    Rankos gesto atpažinimo metodas su Haar klasifikatoriumi

    Atlikta apžvalga leido palyginti paskelbtus ir jau naudojamus rankos gestų atpažinimo metodus bei nustatyti esminius skirtumus. Žinoma, kiekvienas metodas turi tiek privalumų, tiek ir trūkumų. Be to, labai skiriasi šių metodų įgyvendinimo technologijos. Jeigu vienam metodui pakanka žinoti tiktai išorinius rankos struktūros parametrus (rankos pasukimo kampą, pirštų iškilų gylį) ir žmogaus odos spalvą taisyklingam rankos gesto nustatymui, tai kitas metodas reikalauja ir vidinių rankos parametrų (sąnarių sulenkimo taškų skaičių, jų pasukimo kampų). Pirmuoju atveju atsiranda tikimybė, kad papuolus veidui i kameros zona, rankos gestas bus klaidingai nustatytas, kadangi veido spalva artima rankos spalvai. Antras atvejis pasirodo esąs per daug griozdiškas ir brangus procesas, nes rankos skeleto modelio konstrukcija užima daug kompiuterio apskaičiavimo resursų. Rankos gestų prototipų duomenų bazės sudarymas Euklido terpėje yra labai sudėtingas uždavinys, kuriam papildomai taikomi apribojimai. Duomenų bazėje turimi rankos gestų prototipai turi būti sudaryti to paties žmogaus, kuris rodys rankos gestus sistemos testavimo metu. Kitaip, jei žmogaus ranka skirsis pagal ilgį ar plotį, atsiranda didelė tikimybė, kad gestas bus klaidingai nustatytas. Tuomet priimtinausiu metodu lieka atviro kodo OpenCV biblioteka su pritaikytomis joje

    Pabaiga

    Rankos gesto Aptikimas/ Atpažinimas

    Pelytės kursoriaus judėjimo imitacija

    Pasirinktasis rankos gestas

    Labiausiai atitinkantis rankos gestas

    5

  • savybėmis rankos gesto atpažinimui pagal Haar klasifikatoriaus požymį.

    Pasinaudojus šią galimybę, buvo sukurta programa kompiuterio valdymui, panaudojant rankų gestus. Jos pagrindinis langas pateiktas (13 pav.):

    13 pav. Pagrindinis programos langas

    Fig. 13. The main frame Naudojant šią programą, galima testuoti gestus, t.y.

    tikrinti kaip jie atpažįstami, valdyti pelę bei paleisti pasirinktas programas ar dokumentus.

    Kiekvienas iš rankos gestų turi būti aprašytas atskirame .xml faile. XML - tai nepriklausomas nei nuo programinės įrangos, nei nuo techninės įrangos įrankis informacijos talpinimui (XML failai et al. 2011). Šiuo atveju XML faile saugoma visa informacija apie rankos gestą. Atsižvelgiant į naudojimo patogumą, buvo pasirinkti keli paprasti gestai, tokie kaip kumštis arba atviras delnas suglaustais pirštais. Rankos gestai atpažįstami naudojant Haar klasifikatorių.

    Programos langas susideda iš dviejų dalių: Rankos gesto atpažinimo testavimas bei Pelės valdymas ir pasirinktų programų arba dokumentų paleidimas. Pirma dalis Rankos gesto atpažinimo testavimas skirta testuoti gestus. Sukūrus .xml failą ir prieš bandant jį naudoti

    kompiuterio valdymui, labai rekomenduojama pradžioje jį pratestuoti ir pasižiūrėti, kaip jis atpažįstamas. Pasirinkus norimą .xml failą ir pradėjus testavimą, atsiveria naujas langas, kuriame matomas web kameros filmuojamas vaizdas (14 pav.):

    14 pav. Testuojamas rankos gestas

    Fig. 14. The hand posture training

    Vedant ranką prieš kamerą, jei gestas atpažįstamas, automatiškai jis apvedamas stačiakampiu.

    Antra dalis Pelės valdymas ir pasirinktų programų arba dokumentų paleidimas susideda iš kompiuterio valdymo rankos gestais. Galima valdyti pelę, ją vedžioti, bei spausti kairįjį ar dešinįjį klavišus. Norint valdyti pelę, kiekvienam pelės veiksmui parenkamas norimas .xml failas, kuriame aprašytas rankos gestas. Pelės valdymui nebūtina visiems veiksmams parinkti gestų failų, t.y. galima parinkti gestą tik pelės kursoriaus vedimui arba tik kairiojo ar dešiniojo klavišo paspaudimui(15 pav., a), arba tik programos atidarymui (15 pav., b).

    Taigi, sukurta programa kompiuterio valdymui rankos gestais yra unikali, kadangi siūlo vartotojui pasirinkimo įvairovę. Tai reiškia, kad vartotojas pats gali rinktis, kokiais gestais ir ką jis nori valdyti. Distancinis kompiuterio valdymas aprėpia ne tik pelytės kursoriaus valdymą, bet ir tam tikros programos arba dokumento atidarymą.

    a

    6

  • b

    15 pav. Pasirinkti rankos gestai kairiajam pelytės klavišo paspaudimui (a) ir norimos programos paleidimui (b)

    Fig. 15. The selected hand postures for the right mouse click (a) and the wanted application (b)

    Testuojant programą, visi veiksmai buvo atlikti pakankamai gerai. Didelę įtaką turi apšvietimas, nes kuo jis geresnis, tuo tiksliau atpažįstamas rankos gestas. Rankos gestų įvairovė priklauso nuo sudarytų .xml failų. Didelis privalumas yra tas, kad .xml failai nėra jautrūs rankos gestui. Tai reiškia, kad nepriklausomai nuo žmogaus, kuris sudarė rankos gesto .xml failą, kito žmogaus toks pat rodomas gestas atpažįstamas be didelių kliūčių.

    Išvados

    Išanalizavus situaciją nustatyta, kad per paskutinį dešimtmetį vyko daug tyrimų žmogaus-kompiuterio sąveikos srityje. Sparčiai besivystant kompiuterinėms technologijoms, ši sritis yra itin aktuali naujų įvesties įrenginių kūrimui, naudojančiam veido, balso, rankos atpažinimo metodus. Vartotojo atžvilgiu būtent rankos gestai yra patogiausia ir natūraliausia kompiuterio valdymo forma.

    Remiantis moksline literatūra, aptarti rankos gestų atpažinimui naudojami metodai leido išaiškinti jų privalumus bei trūkumus ir pasirinkti labiausiai tinkantį metodą.

    Kompiuterio valdymui rankos gestais buvo pasirinkta atviro kodo OpenCV biblioteka su pritaikytomis joje savybėmis rankos gesto atpažinimui pagal Haar klasifikatoriaus požymį. Toks būdas yra pigus, gana greitas ir efektyvus. Rankos gestų informacijos saugojimui buvo panaudoti .xml failai. Pasiūlytas universalus kompiuterio valdymo būdas, kai vartotojas pats pasirenka norimas funkcijas atlikti bei jų valdymui rankos gestus.

    Literatūra

    Athisos, V; Sclaroff, S. An Appearance-Based Framework for 3D Hand Shape Classification and Camera Viewpoint Estimation, 2002, 2.

    Bray, M; Koller-Meier, E. 3D Hand Tracking by Rapid Stochastic Gradient Descent using a Skinning Model, 2004, 3.

    Freeman, W. Computer vision for television and games. In Recognition, Analysis, and Tracking of Faces and Gestures in Real-Time Systems, 1999, 118.

    Kortum, P. HCI Beyond the GUI: Design for Haptic, Speech, Olfactory, and Other Nontraditional Interfaces, Morgan Kaufmann Publishers, 2008, 75-106.

    Manresa, C; Varona, J. Real –Time Hand Tracking and Gesture Recognition for Human-Computer Interaction, 2000, 3.

    Pang, Y; Ismail, A. A Real Time Vision-Based Hand Gesture Interaction, 2010, 3.

    Starner, T; Pentland, A. Real-time american sign language recognition from video using hidden markov models. In SCV95, 1995, 265-270.

    Triesch, J; Von der Malsburg, C. Robotic gesture recognition. In Gesture Workshop, 1997, 233-244.

    Viola, P; Jones, M. Robust Real-time Object Detection, 2nd International Workshop on Statistical and Computerational Theories of Vision, July 2001.

    Viola, P; Jones, M. Rapid Object Detection Using a Boosted Cascade of Simple Feature, IEEE Computer Vision and Pattern Recognition, Vol 1, Dec, 2001, 551-518.

    XML failai. [interaktyvus] 2011. [žiūrėta 2011 m. kovo 20 d.]. Prieiga per internetą:

    Žmogaus-kompiuterio sąveika. Google vaizdai [interaktyvus] 2011. [žiūrėta 2011 m. kovo 6 d.]. Prieiga per internetą:

    REMOTE COMPUTER CONTROL WITH HAND POSTURES A. Kac Abstract

    Moving beyond mouse and keyboard, the evolution of human-computer interaction (HCI) has been an interest research in recent years which witnessed the development from text-based like using a keyboard to graphic user interface (GUI) based on a mouse, from cumbersome data gloves and tracking devices to visual-based computer application. One of the interest fields is by using hand gestures to interact with computer. However, the complexity of a hand set a lot of challenges to be tracked. In real-time, the application requires high accurate detection and recognition. In additional the real and clutter environments have a big impact on recognition process because it included with irrelevant information from the application point of view.

    In this paper, a real time vision based hand gesture interaction prototype was proposed. Currently a prototype has built for controlling the desktop cursor and opening the different applications by using hand gesture input modality. Keywords: Human-computer interaction; computer vision; hand gesture recognition.

    7

    http://www.w3schools.com/xml/xml_whatis.asphttp://mingseow.us/NASA_HCI_ConceptDiagram.PNG