Szövegbevitel agy-számítógép interfész segítségével BSc Önálló laboratórium 2012/13 II. félév
Illés Ádám (QGE4CZ) IV. évf., mérnök informatikus hallgató Autonóm intelligens rendszerek szakirány Intelligens rendszerek ágazat (BME Méréstechnika és Információs Rendszerek Tanszék)
Konzulensek:
Hellinger Balázs Mészáros Tamás
Tartalomjegyzék Tartalomjegyzék ...................................................................................................................................... 1 Feladat leírása, motiváció........................................................................................................................ 3 ALS - Pár szó a betegségről .................................................................................................................. 3 A féléves munka megtervezése ........................................................................................................... 3 Hasonló szoftverek .................................................................................................................................. 4 P300 Speller ......................................................................................................................................... 4 Hex-O-Spell .......................................................................................................................................... 4 Dasher ................................................................................................................................................. 5 Tilvus™ Assistive Interface................................................................................................................... 5 Az eszköz ................................................................................................................................................. 6 Elektroenkefalográfia (EEG) ................................................................................................................ 6 Felépítése ............................................................................................................................................ 7 Beviteli lehetőségek ............................................................................................................................ 7 Szoftver................................................................................................................................................ 8 Az eszköz használata ........................................................................................................................... 9 Az EPOC tanítása ................................................................................................................................... 11 Az egyes módszerek részletes leírása és értékelései ........................................................................ 11 Frekvencia alapú tanítás .................................................................................................................... 13 A szövegbeviteli szoftver ....................................................................................................................... 15 Az elkészült alkalmazás ..................................................................................................................... 15 Beállítási lehetőségek ........................................................................................................................ 16 Összeköttetés az EPOC headsettel .................................................................................................... 17 Továbbfejlesztési lehetőségek .............................................................................................................. 18 Összefoglalás ......................................................................................................................................... 18 Irodalomjegyzék .................................................................................................................................... 19
Szövegbevitel agy-számítógép interfész segítségével
2
Feladat leírása, motiváció Feladatom a félév során, hogy olyan mozgásképtelen betegek számára valósítsak meg egy egyszerű szövegbeviteli szoftvert, akik önerejükből már képtelenek kommunikációra. Ilyen betegek például az ALS szindrómában szenvedő emberek, a konkrét megkeresés és feladatkiírás is egy ilyen betegség miatt történt. A fő motiváció tehát, hogy segíthessek egy olyan embernek, akinek jelenleg még szemmozgásából adódóan van lehetősége számítógépen és egyéb speciális eszközökön keresztül kommunikálni, a betegség jellegéből adódóan azonban lassan ezt a képességét is el fogja veszíteni.
ALS - Pár szó a betegségről Az Amiotrófiás laterálszklerózis (ALS) a tudatosan mozgatható izmokat irányító idegsejtek pusztulásával járó betegség. Az ilyen „motoros” neuronok az agyban és a gerincvelőben találhatóak, a betegség pusztítása mindkét helyen végbemegy. Jellemzően egy testtájon kezdődik, majd onnan fokozatosan terjed szét. Eleinte a vázizomzat végtagi és törzsi részét támadja, később olyan agytörzsi funkciók is elvesznek, mint a beszéd, a rágás vagy a légzés. A testi mozgáskorlátozottság azonban nem hat ki az elmére, az ALS mellett a gondolkodás, látás, hallás, érzékelés, ízlelés, tapintás mindvégig fennmarad. A betegség előfordulása nem túl gyakori: 5 beteg 100 000 lakosra vetítve, ez Magyarország 10 milliós népessége esetén mintegy 500 új megbetegedést jelent évente. [1]
A féléves munka megtervezése A feladat megoldása során az Emotiv EPOC BCI (Brain-Computer Interface) eszközt használtam, ennek segítségével kellett megvalósítani a szövegbevitelt. Egy olyan szoftver megtervezése és megalkotása volt a cél mely egyszerűen, viszonylag gyorsan kezelhető, és egyéb a betegség miatt fontos szempontoknak is megfelel, egyszóval ergonómikus. A féléves munkám több szakaszra osztható: -
fel kellett kutatni és tanulmányozni néhány hasonló szoftvert, projektet meg kellett ismerkedni a használni kívánt eszközzel tesztelni kellett a headset beviteli képességeit az eddigi ismeretek alapján és a betegség jellemzőit tekintve meg kellett tervezni szoftvert meg kellett alkotni magát a szoftvert és finomítani a beállítási lehetőségeit kapcsolatot kellett biztosítani az Emotiv gyári szoftvereivel és ezáltal magával az eszközzel
Szövegbevitel agy-számítógép interfész segítségével
3
Hasonló szoftverek A feladat elején meg kellett ismerkednem néhány hasonló célközönségű szövegbeviteli eszközzel:
P300 Speller A P300 Speller nevű szoftver a P300 nevű ERP (Event Related Potential) jel feldolgozásán alapul. A fejen elhelyezett elektródák segítségével észlelik a P300 hullám jelenlétét, melynek oka, hogy az alanyt 300 ms-mal ezelőtt egy releváns inger érte. A szoftver felhasználói felülete egy 6x6-os mátrixból áll, melyen a sorok és oszlopok felváltva nagy sebességgel villognak. Az alany meglátja felvillanni a kiírni szándékozott karaktert, s az agya 300 milliszekundum múlva küldi a P300 jelet. Ekkor még ki kell számolni, mely sor vagy oszlop volt aktív 300 milliszekundummal a jel érzékelése előtt. Több ilyen észlelés után világosan kirajzolódik, hogy mely sorokra és mely oszlopokra jelez az alany agya. A sor és oszlop metszetében szereplő karakter lesz a kiválasztott.
1. ábra - P300 speller A P300 hullám tisztán kognitív, így a teljesen mozgásképtelen emberek is használhatják. További jelentős előnye, hogy nem kell tanítani, az agy „beépített funkciója”. [2]
Hex-O-Spell A Hex-O-Spell nevezetű szoftver, ahogy a neve is sejteti hatszögeken alapszik. Hat darab hatszög helyezkedik el egy kör körül. A kör közepén egy nyíl van, a hatszögekben egyenként 5 darab karakter. A szoftver két utasítással kezelhető. Az első utasítás hatására a körben lévő nyíl elkezd az óramutató járásával megegyező irányban forogni. A második parancs megállítja a nyilat, mely ekkor kiválaszt egy hatszöget. A hatszögben lévő 5 karakter szétoszlik a hatszögekben egyesével. Ekkor egy újabb kiválasztással kiírhatjuk a választott karaktert. [3] Szövegbevitel agy-számítógép interfész segítségével
4
2. ábra - Hex-O-Spell
Dasher A harmadik megismert alkalmazás, a Dasher, egy meglehetősen érdekes grafikus felülettel rendelkezik. Használata valamilyen kurzorirányító eszközzel történhet, például egy szemmozgást követő rendszerrel. A program felületén jobb oldalról folyamatosan úsznak be a betűk egy oszlopot képezve. Minden betűhöz tartozik egy színes terület, amelyen elhelyezkedik. Az ablak középpontjából kiinduló mutatóeszközzel válogathatunk az egyes betűk területei között. A szoftver képes megtanulni, hogy az egyes karakterek után melyek a leggyakrabban előforduló betűk. A valószínűbb karakterek nagyobb területtel rendelkeznek a kiválasztás során, ezzel is igyekezve megkönnyíteni a szövegbevitelt. Hátránya, hogy tisztán kognitív módon nagyon nehéz vagy teljesen lehetetlen kezelni. [4] 3. ábra - Dasher
Tilvus™ Assistive Interface A Tilvus szoftverének legnagyobb előnye, hogy egyetlen paranccsal irányítható. A szövegbevitel csak egy a sok funkciója közül, képes még például az egér kiváltására vagy internetböngészésre is. A szövegbevitel lényege, hogy időzítetten lépked a menüelemek között, kiválasztásra pedig belép a menüpontba és az almenü elemei között folytatja a kiválasztást. Minden almenü utolsó eleme a visszalépés. [5]
4. ábra - Tilvus Assistive Interface Szövegbevitel agy-számítógép interfész segítségével
5
Az eszköz A munkám során az Emotiv Systems ausztrál elektronikai cég EPOC nevezetű elektroenkefalográfián (EEG) alapuló beviteli eszközét használtam. Ez egy fejre helyezendő, számítógéppel vezeték nélkül kommunikáló szerkezet, mely több különböző beviteli módszerrel is rendelkezik. Az eszköz elsősorban számítógépes játékok és egyéb játékkonzolok irányítására lett kifejlesztve, ennek tudható be, hogy a nyers EEG jelekhez nem kapunk hozzáférést. Aki ilyen igényekkel rendelkezik, annak a cég egy másik termékét kell megvásárolnia, mely Emotiv EEG headset néven került piacra, és az EPOC nagy testvéreként lehet rá tekinteni. [6]
Elektroenkefalográfia (EEG) Az EEG egy elektrofiziológiai mérőeszköz, melynek segítségével az agyi aktivitást figyelhetjük meg a fejbőrön, az agy környékén. A technológia az agy felületén történő feszültségingadozást méri. Az EEG által megfigyelt jel az elektroenkefalogram, mely egy összetett periodikus görbe. Ezen jel regisztrálására alapvetően két módszert használnak. Az első az ún. invazív eljárás, mely során a koponyát átfúrják és nagyon apró elektródákat helyeznek el az agy felületén. A másik, egyszerűbb módszer során (noninvazív), melyet az Emotiv EPOC is használ, az előzőnél jóval nagyobb méretű fém elektródákat helyeznek el az agy feletti fejbőrön előre meghatározott pontokon, ahol az agyi aktivitás a legjobban megfigyelhető. Az elektródák közötti apró feszültségváltozásokat felerősítve ábrázolják. Nyugalmi állapotban ez kis frekvenciájú, nagy amplitúdójú görbét mutat, míg élénk agytevékenység esetén a frekvencia megnő, az amplitúdó pedig csökken. Néhány jellemző EEG-görbe az 5. ábrán látható. [7]
5. ábra - EEG-görbék különböző éberségi állapotokban [8]
Szövegbevitel agy-számítógép interfész segítségével
6
Felépítése Az EPOC headset, mint azt már korábban említettem egy vezeték nélküli fejre applikálható periféria. Az eszköz keretén 18 szenzor-foglalat található, két részre osztva a jobb és bal agyfélteke felett, melyből 14 a valódi EEG-érzékelő és van két referenciaszenzor-pár. Az elsődleges referencia közvetlenül a fül felett, attól kicsit hátrébb helyezkedik el, míg a másodlagos referencia-párnák a fülek mögötti csontra illeszkednek. A többi érzékelő a fej felületén elszórva található.
6. ábra - Emotiv EPOC neuroheadset Az orvosi célra készülő EEG készülékek az EPOC-nál jóval több érzékelővel rendelkeznek: harminctól egészen pár százig. Az eszközünk az EEG-érzékelő tappancsok mellett két beépített giroszkóppal is fel van szerelve, ezzel is bővítve a beviteli lehetőségeket. A keretben található a beépített akkumulátor, melynek a töltöttségi állapota nagyban befolyásolhatja az érzékelés minőségét.
Beviteli lehetőségek A beviteli dimenziókat 3 csoportra oszthatjuk az alapján, hogy EEG-szenzorok milyen jeleket figyelnek meg: 1. Emocionális (Affectiv Suite) – Ezen lehetőség segítségével a felhasználó vagy a megfigyelt alany érzelemváltozásait követhetjük nyomon. Az eszköz elviekben olyan állapotokat képes megkülönböztetni, mint izgatottság, csalódottság, meditációs nyugalmi állapot, unalom. Ezek közül legegyszerűbben a hirtelen izgalomba jövetel érzékelése sikerült a legjobban, bár ez állapot jellegéből is adódik, mivel egyszerűbb gyorsan izgalomba jönni, mint pillanatok alatt meditációs állapotba lépni. Ezzel a módszerrel elég nehézkes lehet bármilyen szoftver irányítása, fő felhasználása inkább betegeknél vagy öregeknél tapasztalt hirtelen izgalmi állapot jelzésére szolgálhat. 2. Fizikai (Expressiv Suite) – Az egyedi szemöldök-, szemhéj- és szempozíciók, az arcizmok egyéb jellegzetes viselkedései, mint a nevetés, mosolygás egészen hatékonyan felismerhetőek az EPOC által. Ezen mimikai minták érzékelése is az EEG szenzorok által történik, de ez esetben az arcizmok jeleit dolgozza fel az agyhullámok Szövegbevitel agy-számítógép interfész segítségével
7
helyett. A mentális aktivitás mérésével ellentétben ez a beviteli módszer meglehetősen gyors (10 milliszekundum nagyságrendű). Az EPOC eredeti céljára, ami játékvezérlés, ez használható a leghatékonyabban. Lehetőség van egyéni minták megtanítására is, melyek kombinációit is könnyedén használhatjuk. 3. Kognitív (Cognitiv Suite) – A headset 13 különböző mintát képes megtanulni és ezekhez 13 különböző parancsot rendelhetünk. Egy időben azonban csak 4 mintát képes megkülönböztetni, ezáltal csak olyan szoftvereket tudunk vele hatékonyan irányítani, amelyek mindössze 4 parancsot igényelnek használatukhoz. A kognitív mintákkal való tanítás az Emotiv EPOC Control Panel nevezetű szoftver segítségével lehetséges. Ekkor egy kockát mozgathatunk, illetve forgathatunk egy 3D térben. Ez a vizualizáció nagyban segíti a parancsok betanítását. Ezen mentális beviteli módszer nagyon lassú a fizikaihoz képest. Itt pár másodpercig is eltart, mire a szoftver felismer egy mintát, arról nem is beszélve, hogy nagyon időigényes és nehéz hatékony mintákat produkálni, melyeket az eszköz nagy biztonsággal lesz képes felismerni és egymástól megkülönböztetni. A bevált tanítási módszerekről és az eközben felmerült nehézségekről alább részletesen is beszámolok. [9] Az eddig felsorolt beviteli dimenziók mellett lehetőség van a fej mozgását és forgatását is figyelni, hála a két beépített giroszkópnak. Ez azonban saját munkám során nem lehet a segítségemre az EPOC fizikai csomagjával (Expressiv Suite) egyetemben, mivel a megvalósítandó szoftver célközönsége nagy valószínűséggel nem képes semmilyen fizikai interakcióra.
Szoftver Az EPOC-hoz tartozó alapvető szoftver a Control Panel, azonban az Emotiv sok más programot is kifejlesztett a mindennapi használat egyszerűbbé tétele érdekében. Ilyenek például a teljesség igénye nélkül: EmoKey, EmoComposer, TestBench, MindKeyboard. A legfontosabb viszont kétség kívül a Control Panel, mely arra szolgál, hogy az eszköznek betaníthassuk a különböző mintáinkat, melyeket később felismerhet és megkülönböztethet.
7. ábra - A Control Panel használat közben
Szövegbevitel agy-számítógép interfész segítségével
8
A 7. ábrán látható a program felépítése. Az ablak felső részén az aktuális kapcsolódási információk látszanak, mint a kapcsolódás óta eltelt idő, a vezeték nélküli jel erőssége vagy az akkumulátor töltöttsége. Bekapcsolás után helyes felhelyezést leíró és ellenőrző ablak fogad, a különböző beviteli funkciókat a megfelelő fülre kattintva érhetjük el. A számomra fontos Cognitiv Suite fül két részre osztható: -
a jobb oldalon található keretben az aktuálisan tanított mintához tartozó parancsot választhatjuk ki, a bal oldalon látható vizualizáció a tanítást segíti, illetve a már betanított minták felismerését jeleníti meg a kocka animálásával
Az eszköz használata Az használat előtt győződjünk meg arról, hogy az eszköz megfelelően fel van töltve, alacsony töltöttségi szintnél ugyanis romlik az érzékelt jel minősége. A dobozukban lévő érzékelőket, jobban mondva a rajtuk lévő szivacs-párnácskákat egyszerű kontaktlencse folyadékkal kell benedvesíteni, még mielőtt a foglalatokba csavarnánk őket. Miután minden szenzor a helyére került, felhelyezésre kerülhet az EPOC. Itt elsősorban arra kell ügyelni, hogy a keret zárt része a fej hátsó részén helyezkedjen el, a két gumibevonatú referencia-tappancs pedig a fül mögötti csontra illeszkedjen. Ezen két utasítás betartása mellett, a többi érzékelő automatikusan a helyére kerül.
8. ábra - Az Emotiv EPOC helyes felhelyezése Ha a headset elfoglalta helyét, bekapcsolhatjuk a keret hátán lévő gombbal. Ekkor a Control Panelen megjelennek az egyes érzékelők, melyek eleinte fekete színűek, leszámítva két referenciapontot, melyeket piros szín jelez. Ha a két referencia-szenzor már veszi a jelet, a többi érzékelő is aktivizálódik. A színük mutatja a vett jel minőségét. A zöld a tökéletes működést jelöli, míg a piros színű érzékelők nagyon gyenge minőségű jelet kapnak. Ezeket az érzékelőket addig kell igazgatni, amíg sárga vagy zöld színre nem váltanak. A gyenge minőségű jel oka lehet a rossz elhelyezkedés vagy a szenzor alatt lévő túl sok haj. Ha már minden érzékelő megfelelően működik, kezdődhet a tanítás. Első körben fel kell venni néhány (legalább 6-8) különböző semleges mintát. Ennek fontos szerepe van a későbbi Szövegbevitel agy-számítógép interfész segítségével
9
tanítás során, ezért a minél jobb semleges mintahalmaz nagy jelentőségű. Neutrális minták felvétele közben mozoghatunk, beszélhetünk, gondolhatunk olyan dolgokra, amelyekkel a későbbiekben nem szeretnénk parancsot kiadni vagy éppen kiüríthetjük az elménket nem gondolva semmire. Ha ezzel kész vagyunk, kezdődhet az igazi tanítás. Először is válasszunk egy parancsot a listából, amelyhez a mintánkat szeretnénk hozzárendelni. Majd a TRAIN gombra kattintva elkezdhetjük a 8 másodperces minták produkálását. Ekkor már nem szabad mozogni, beszélni, hanem tisztán kognitívan kell bizonyos dolgokra koncentrálni. Nagyon nehéz jó mintákat produkálni és nagyon nehéz elkülöníteni őket egymástól. A lehetséges tanítási módszerekről és a közben felmerülő nehézségekről a következő fejezetben írok részletesebben.
Szövegbevitel agy-számítógép interfész segítségével
10
Az EPOC tanítása A feladatom ezen részében különböző lehetséges tanítási módszerek után kutattam, majd a talált lehetőségeket jómagam és néhány tesztalany próbálkozásai alapján értékeltem. A tanítási módszereket elsősorban két forrásból szereztem: ismerős, az EPOC-kal már korábban foglalkozó, kollégák beszámolóiból, illetve az eszköz hivatalos fórumáról, ahol fejlesztők és más headsettulajdonosok osztják meg tanácsaikat. A következő 7 módszer tesztelésével foglalkoztunk. Minden lehetséges tanítási módot 4-5 ember próbált ki, majd az eredményeik, illetve szubjektív értékelésük alapján egy használhatósági táblázatot készítettem. • • • • • • •
A – Egymástól jól elkülönülő cselekvésekre, élethelyzetekre való koncentráció B – Végtagok mozgatására való koncentráció C – A fej bizonyos részeire való koncentráció: orr, fülek D – Fej mozgatására/döntésére/fordítására való koncentráció E – Elképzelt massza vagy folyadékgömb mozgatása tudattal F – Szavakra koncentrálás, szavak elnyújtott ismételgetése gondolatban G – Az alanyra hatással lévő személyekre való koncentráció
Az eredmények feldolgozása után a következő táblázatot kaptam. Az oszlopokban a különböző módszerek, a sorokban a módszer segítségével tanított parancsok száma áll. A
B
C
D
E
F
G
1 2 3 1. táblázat - A különböző tanítási módszerek hatékonysága A színkódok értelmezése az alábbi skála alapján történik: A legvilágosabb színű cellák a legjobb eredményekkel rendelkező módszer-parancsszám párokat jelölik, míg a fekete cellák a teljesen használhatatlanokat.
Az egyes módszerek részletes leírása és értékelései -
A – Egymástól jól elkülönülő cselekvésekre, élethelyzetekre való koncentráció Ezen módszerrel való tanítás közben olyan különleges élethelyzetekbe kell beleélni magunkat, amelyek érezhető hatással vannak ránk. Ilyenek lehetnek például: autó tolása (megerőltető munka), zuhanás (félelem vagy izgatottság). A tesztelés során
Szövegbevitel agy-számítógép interfész segítségével
11
kiderült, hogy nem könnyű az ilyen szituációk élénk vizualizációja, illetve nehéz őket egy-egy parancshoz kötni. Még ha sikerül is jó mintákat felvenni, nehéz őket gyorsan, pár másodperc alatt reprodukálni, pedig a gyors használathoz ez elengedhetetlen lenne. Ennek ellenére 1 parancs esetén még viszonylag működőképes módszer, ha viszont újabb cselekvéseket adunk hozzá, könnyen összekeverednek a minták. Az utoljára tanított parancs szinte felülírja az korábbiakat. -
B – Végtagok mozgatására való koncentráció Ennek során elsősorban a jobb és bal kéz mozgatásának, felemelésének gondolatát használtuk fel, de ugyanez megoldható a lábak segítségével is. Három parancs tanítása esetén a kettő kombinációja kell. A táblázatból látható mindhárom parancsmennyiségre ez a tanítás volt a leghatékonyabb. Irányításhoz könnyen használható, mivel pl. a jobbra vagy balra lépkedés egy szoftveren belül könnyen összekapcsolható a jobb és bal végtag mozgatásának elképzelésével. A harmadik parancs (láb) betanítása után az első két minta továbbra is biztonságosan felismerhető, de az új, harmadik minta ritkábban, gyengébben működik.
-
C – A fej bizonyos részeire való koncentráció: orr, fülek Az előzőhöz hasonló koncentrációt igényel, emellett szintén könnyen alkalmazható a jobb és bal parancs a jobb és bal fülre, illetve az előre parancs az orra való koncentrációval. A tapasztalatok alapján valamivel nehezebb a fülre, orra összpontosítani, mint a végtagokra, ennek tudható be a módszer gyengébb eredménye, de sok gyakorlás után ez is elsajátítható. A harmadik, orr-parancs bevezetése itt is hasonló gondokat okozott, mint az előző esetben a láb.
-
D – Fej mozgatására/döntésére/fordítására való koncentráció Egy újabb, az előző kettőhöz hasonló stratégia, a fej döntésére való összpontosítás. A tesztek során felemás eredmények születtek: volt, aki a legjobbnak találta, és volt, akinél egyáltalán nem működött. A parancsok kiosztása itt is értelemszerű: jobbra, balra és előre döntés a jobbra tol, balra tol és előre tol parancsokhoz. Ez esetben is két különböző mintahalmazig működött jól, a harmadik már gyengített a hatékonyságon.
-
E – Elképzelt massza vagy folyadékgömb mozgatása tudattal A módszer lényege valamilyen folyadékgömb vagy massza elképzelése és annak mozgatása gondolatban. Meglepően sokan ajánlották ezt az eszköz fórumán, viszont a tesztelés során teljesen használhatatlannak tűnt. Már 1 parancs betanítása esetén is gyenge eredményeket produkált, sok fals pozitív felismeréssel. A gond valószínűleg a célobjektum elképzelésével van, nem a mozgatásával.
Szövegbevitel agy-számítógép interfész segítségével
12
-
F – Szavakra koncentrálás, szavak elnyújtott ismételgetése gondolatban Ez a stratégia a már említett fórumon is ellentmondásos volt. Lényege, hogy gondolatban ismételgessünk szavakat, például a parancs nevét, amire éppen tanítunk: húúúzni-húúúzni-húúúzni. A próbálgatások során legfeljebb 1 parancs esetén volt használható, de akkor is relatíve nehezen ismerte fel a rendszer a reprodukált mintákat. Irányításra ez is jól használható lenne, mivel a szavak egyértelműen hozzárendelhetőek a parancsokhoz.
-
G – Az alanyra hatással lévő személyekre való koncentráció Egy újabb ellentmondásos lehetőség, kevés sikerrel. Alapja, hogy elképzelünk olyan személyeket, akik érzelmeket váltanak ki belőlünk: szeretjük őket vagy undorodunk tőlük. Az előző kettőnél valamivel jobban használható 1-2 parancs esetén, de itt újra jelentkezik az a probléma, hogy az egyes arcokat nehéz összekapcsolni a parancsokkal.
A táblázatból jól látható, hogy a leghatékonyabb stratégiák, a test különböző pontjaira való összpontosítást igénylik. Ez azonban nehézséget okozhat olyan embereknél, akik már évek óta nem használhatták a testük különböző részeit. Például gond lehet egy évtizedek óta mozgásképtelen embernek elképzelni, ahogy felemeli a bal karját, vagy előredönti a fejét. Ezen módszerek tehát további teszteket igényelnek a célközönség körében. Emellett az is jól látható, hogy három különböző parancs betanítása szinte mindig gondot okozott, de néha még két parancs mintáit is nehezen különböztette meg az eszköz. A szoftver megtervezésénél tehát mindenképp fontos szempontnak kell lennie a kevés utasítással való irányíthatóságnak.
Frekvencia alapú tanítás A különböző tanítási stratégiák tesztelése során felmerült az ötlet, hogy mi lenne, ha képeket különböző frekvencián villogtatnánk a felhasználó előtt, és a parancsokat az ezen képekre való koncentrálás közbeni különböző agyhullámok által tanítanánk be. Ennek kipróbálása érdekében létrehoztam egy egyszerű segédszoftvert, mely három különböző színű négyzetet villogtat a beállított frekvencián. Az ötlet létjogosultságát alátámasztotta egy jelenleg is folyamatban lévő projekt a texasi egyetemen a Samsung gondozásában. Egy sokszenzoros EEG-sapka segítségével próbálnak egy táblagépet irányítani, amelyen az ikonok Szövegbevitel agy-számítógép interfész segítségével
9. ábra - Segédprogram a teszteléshez 13
különböző frekvenciával villognak. Az általuk használt eszközökkel a módszer működőképesnek tűnik, noha használata meglehetősen lassú, az alanyok átlagosan 5 másodpercenként tudnak kiadni egy új parancsot. [10]
10. ábra - Kísérletek a texasi egyetemen A saját kísérleteim viszont nem jártak hasonló sikerrel. Több órányi tesztelés után az Emotiv EPOC használhatatlannak bizonyult a különböző frekvencián villogó képek megkülönböztetésére. Azt még viszonylag nagy magabiztossággal felismeri, hogy folyamatosan villogó képet néz a viselője, de két eltérő frekvencia között nem képes különbséget tenni. Ennek következménye, hogy a második parancs betanítása felülírja az elsőt, tehát bármilyen frekvenciát nézünk is, az eszköz mindig az utolsó betanított parancsot hajtja végre. Próbálkoztam az eltérő frekvencián villogó képeket térben is szétválasztani, de a monitor különböző sarkaiban lévő képekkel sem jutottam jobb eredményre.
11. ábra - Tesztelés a segédprogramokkal
Szövegbevitel agy-számítógép interfész segítségével
14
A szövegbeviteli szoftver Mint az a korábbi tesztek során nyilvánvalóvá vált, alapvető fontosságú szempont a szoftvernél a kevés utasítással való irányíthatóság. Emellett elvárás volt a felület egyszerűsége és kezelésének gyors elsajátíthatósága. A tervezés során az egyszerűséget szem előtt tartva megpróbáltam csak a legszükségesebb elemekből felépíteni a kezelői felületet. Ez három dolgot jelent: -
Először is kell egy szövegdoboz, ahová a kiválasztott karakterek bekerülhetnek Másodsorban kellenek a kiválasztható karakterek Végül szükség van az egyéb vezérlőgombokra, mint például egy karakter visszatörlése vagy a teljes szöveg törlése
A korábban bemutatott szoftverek elemzése után háromlépcsős karakterkiválasztás mellett döntöttem. Ez azt jelenti, hogy a főoldalon 3-4 nagyobb halmazba rendezem a karaktereket. Egy karaktercsoport kiválasztása után a benne lévő karakterek kisebb csoportokra bomlanak, hogy még egy kiválasztás után már csak az egyes karakterek között kelljen választanunk. Az íráshoz két parancsra van szükség: -
lépkedés a karakterek vagy karaktercsoportok között egy karakter vagy karaktercsoport kiválasztása
Az elkészült alkalmazás A szoftver fejlesztése a terveknek megfelelően sikerült. Java nyelven valósítottam meg a programot, melynek grafikus kezelői felületéhez a Swing eszköztárat használtam.
12. ábra - Az elkészült szoftver
Szövegbevitel agy-számítógép interfész segítségével
15
A könnyű irányíthatóság szellemében a szövegbevitel két különböző módon történhet: -
Két kognitív utasítással: jobbra lép és kiválaszt Egy kognitív utasítással: kiválaszt, a jobbra léptetést egy időzítő végzi
A szoftver indításakor kapunk egy felugró ablakot, mely megkérdezi, hogy be szeretnénk-e kapcsolni az időzített léptetést. Amennyiben igent válaszolunk, a szoftver maga végzi a cellák közötti továbblépéseket, nekünk csak a kiválasztással kell törődnünk a megfelelő időintervallumban. Az időzítő alapértelmezés szerint 3 másodpercenként lép, tehát három másodpercünk van arra, hogy az EPOC-nak betanított mintát reprodukáljuk. A 12. ábrán látható, hogy a betűk az elején három 14-15 tagú csoportra vannak bontva, egy ilyen csoport kiválasztása után az 5 cella tartalma lecserélődik a kiválasztott betűhalmaz háromtagú diszjunkt részhalmazaira. Egy háromtagú csoport kiválasztása esetén pedig a benne lévő három betű oszlik szét a cellákban: három betű és két üres cella, utóbbiak kiválasztása visszavisz a 12. ábrán is látható főoldalra. Ha egy egyedülálló betűt választunk ki, az beírásra kerül a felület felső részében található szövegdobozba, a karakterválasztó sor pedig visszakerül az alapértelmezett állapotba (12. ábra). A szóköz, a szövegekben való gyakori előfordulása miatt, a főoldalon kapott helyet, így gyorsan kiválasztható. Az alsó vezérlősorra úgy juthatunk el, ha végigiterálunk a karakterválasztó soron. Az utolsó cella után a vezérlősorra lépünk, amelyen ugyanúgy balról jobbra lépkedhetünk végig. A kilépés lehetősége után visszakerül a fókusz a karakterválasztó sor elejére. A törlés cella kiválasztása esetén az utolsó beírt karaktert törölhetjük ki, az összes törlése pedig a teljes szövegdoboz kiürítését vonja maga után. A főoldal cella hasznát akkor vehetjük, ha véletlenül rossz betűcsoportba léptünk, a kilépés funkció pedig értelemszerűen bezárja az alkalmazást.
Beállítási lehetőségek A testreszabhatóság szempontjából négy beállítási lehetőség közül választhatunk: -
-
A már bemutatott irányíthatóság kérdése: 1 vagy 2 utasítást használjuk? Időzítő beállítása: az alapértelmezett 3 másodpercet csökkenthetjük vagy növelhetjük A betegek, idősek számára fontos lehet a betűméret növelése a jobb láthatóság szempontjából A vezérlőbillentyűk kódját is beállíthatjuk, ennek szerepe az Emotiv EPOC Control Panellel való összekapcsolás szempontjából van 13. ábra - Beállítási lehetőségek
Szövegbevitel agy-számítógép interfész segítségével
16
Összeköttetés az EPOC headsettel A saját szoftverem és a gyári Control Panel összekapcsolása nem volt nehéz feladat. A Control Panel 2.0-ás változattól már képes arra, hogy az egyes parancsokhoz egy billentyűkódot rendelhessünk, melyet a program minden felismert minta esetén továbbküld az operációs rendszernek egy virtuális billentyűleütést reprezentálva. Ha a szövegbeviteli szoftver ablaka aktív, megkapja a billentyűeseményt és végrehajtja az ahhoz kapcsolt utasítást. Tehát jobbra lép vagy kiválaszt. Ehhez mindössze 14. ábra - A Control Panelen beállítandó billentyűkódok arra van szükség, hogy a Control Panelben beállított egy vagy két billentyűkód (14. ábra) legyen kiválasztva a Java-s alkalmazás beállítások menüjében is, az ott található legördülő menüből (13. ábra).
15. ábra - A két szoftverek működés közben
Szövegbevitel agy-számítógép interfész segítségével
17
Továbbfejlesztési lehetőségek Az általam elkészített szoftver egyelőre csak egyszerű karakterkiválasztásra használható. Lehetőség van azonban a funkcióinak bővítésére: -
predikció beépítése – gyakran használt szavak alapján szókiegeszítések felkínálása szövegfelolvasó integrálása – az beírt szöveg felolvastatható legyen a számítógéppel e-mail küldése – a megírt szöveg elküldése e-mailben, esetleg SMS-ben stb.
Mindemellett a grafikus felhasználói felület ergonómikusabbá tétele is lehetséges: -
gyakrabban használt karakterek gyorsabb elérése nem a fókusz léptetése a cellákon, hanem a cellatartalmak mozgatása a fókuszált középső cellába a magyar nyelv sajátosságainak kihasználása: például a nyelvben nem előforduló betűsorrendek miatt szűkíteni lehet az egyes karakterek után következő lehetséges karakterek számát (j betű után nem szokott x állni)
Összefoglalás A feladatom elvégzése sikeresen megtörtént, a szoftver képes megvalósítani a szövegbevitelt az Emotiv EPOC eszköz segítségével. Az rendszer használata viszont nem nevezhető gyorsnak és hosszútávon valószínűleg nem is túl kényelmes. Az alapértelmezett 3 másodperces időzítéssel számolva egy karakter beírásának ideje 9 és 33 másodperc között változik. Átlagosan 6,88 parancs kiadása szükséges egy karakter kiválasztásához, ez 20,66 másodpercet jelent. Ezen értékek azonban jelentősen csökkenthetőek, ha a tanítóminták hatékonyak és gyorsan tudjuk őket reprodukálni. Ha például sikerül olyan tanítást végeznünk, melynek mintáit másfél másodperc alatt is képes felismerni az eszköz, a fent említett idő a felére csökken és átlagosan 10 másodpercenként írhatunk le egy újabb betűt. Nagyon fontos tehát a megfelelő tanítási módszer kiválasztása, ezután sok mintát kell megtanítani az eszköznek egy-egy parancshoz, hogy magabiztosan felismerhesse a próbálkozásainkat. Az EPOC fejlesztői fórumán egybehangzó vélemény, hogy az idősek, betegek (és gyerekek) esetében sokkal hatékonyabb szokott lenni az eszköz, ez alapján a szoftver célközönsége remélhetőleg jobb eredményeket képes majd elérni, mint jómagam vagy a hasonló betegségben nem szenvedő tesztalanyaim.
Szövegbevitel agy-számítógép interfész segítségével
18
Irodalomjegyzék
[1] Dr. Cs. Elek „Házipatika,” [Online]. Available: http://www.hazipatika.com/betegsegek_a_z/amiotrofias_lateralszklerozis/140. [Hozzáférés dátuma: 05 2013]. [2] R. Fazel-Rezai, „www.intechopen.com,” in Recent Advances in Biomedical Engineering, G. R. Naik, Szerk., InTech, 2009. [3] Benjamin Blankertz „The berlin brain-computer interface presents the novel mental typewriter hex-o-spell,” 2006. [4] „http://www.inference.phy.cam.ac.uk” [Online]. Available: http://www.inference.phy.cam.ac.uk/dasher/. [Hozzáférés dátuma: 05 2013]. [5] „Tilvus” [Online]. Available: http://tilvus.net/wiki/index.php?title=Main_Page. [Hozzáférés dátuma: 05 2013]. [6] „Emotiv” [Online]. Available: http://www.emotiv.com/store/hardware/epoc-bci/epocneuroheadset/. [Hozzáférés dátuma: 05 2013]. [7] „Wikipedia” [Online]. Available: http://en.wikipedia.org/wiki/Electroencephalography. [Hozzáférés dátuma: 05 2013]. [8] „elte.prompt.hu” [Online]. Available: http://elte.prompt.hu/sites/default/files/tananyagok/06_VilagiIldikoElettani_gyakorlatok/chunks/ch13.html. [Hozzáférés dátuma: 05 2013]. [9] „Wikipedia” [Online]. Available: http://en.wikipedia.org/wiki/Emotiv_Systems#Emotiv_EPOC. [Hozzáférés dátuma: 05 2013]. [10] „www.technologyreview.com,” [Online]. Available: http://www.technologyreview.com/news/513861/samsung-demos-a-tablet-controlled-by-yourbrain/. [Hozzáférés dátuma: 05 2013].
Szövegbevitel agy-számítógép interfész segítségével
19