Eg´ ermutat´ o vez´ erl´ ese Electro-Oculo-Gram jelekkel
Marlok B´ela Diplomamunka
Konzulens: Dr. Vidny´anszky Zolt´an, Cserey Gy¨orgy, Ph.D.
Inform´aci´os Technol´ogiai Kar P´azm´any P´eter Katolikus Egyetem Budapest, 2007
¨ Osszefoglal´ o
A k¨ozelm´ ult ´eveiben jelent˝os kutat´asok folytak az emberi test k¨ ul¨onb¨oz˝o pontjain m´erhet˝o bioelektromos jelek g´epek vez´erl´es´ere t¨ort´en˝o felhaszn´al´as´anak ir´any´aban. A tervezett eszk¨oz¨ok legf˝ok´eppen a mozg´askorl´atozottak sz´am´ara jelenthetnek ´eletmin˝os´eg javul´ast, de eg´eszs´eges emberek is k´epesek haszn´alatukra. A biol´ogiai rendszerek hihetetlen bonyolults´aga r´ev´en azonban, a bioleketromos jelek feldolgoz´asa egy´altal´an nem trivi´alis feladat. A szemek k¨or¨ ul, felsz´ıni elektr´od´akkal m´erhet˝o Elektro-okulogram is t¨obb k¨ ul¨onb¨oz˝o forr´asb´ol sz´armaz´o jel egy¨ uttese amelyek egyike a tekintet sz¨og´enek elfordul´asa. Az ¨osszes t¨obbi forr´asb´ol sz´armaz´o komponenst teh´at ki kell sz˝ urni a jelb˝ol, a tekintet ir´any´anak meghat´aroz´asa ´erdek´eben. Diplomamunk´am c´elja egy Elektro-okulogram alap´ u tekintet k¨ovet˝o rendszer tervez´ese ´es megval´os´ıt´asa, valamint a rendszer seg´ıts´eg´evel a sz´am´ıt´og´ep kurzor´anak vez´erl´ese. A rendszer egy szemmozg´ason alapul´o Human Machine Interface megval´os´ıt´as´ara is felhaszn´alhat´o. A dolgozat a ma l´etez˝o tekintet k¨ovet˝o technik´ak ¨osszehasonl´ıt´asa ut´an, egy ´altal´anos EOG alap´ u kurzor vez´erl˝o rendszer terv´et ´es az elk´esz´ıtett szoftver implement´aci´oj´at mutatja be. A dolgozat r´eszletezi a megtervezett ´es implement´alt k¨ ul¨onb¨oz˝o sz˝ ur´esi ´es jelfeldolgoz´asi algoritmusokat, majd a laborat´oriumban k´esz´ıtett m´er´esek seg´ıts´eg´evel elemzi a rendszer m˝ uk¨od´es´et.
Abstract
Bioelectrical signals can be used to control machines, and there have been many significant researches in this field recently. These planned systems provide handicapped persons a remarkable improvement in the quality of their lives and healthy people may find them useful too. However, the processing of bioelectrical signals is not an easy task, because of the complexity of biological systems. Electro-oculogram can be measured around ones eyes with surface electrodes, and this signal usually contains information from several distinct sources. One of the sources is the movement of the eye, but all the other components must be filtered, in order to correctly estimate the gaze-angle. The aim of this study is to develop an electro-oculogram based eyegaze tracking system, and to control the cursor on a computer screen with it. The proposed system can be used to develop an eye-movement based Human-Machine-Interface. The study compares the different gaze tracking techniques available today, proposes a genereal scheme for an EOG based eye -tracking system and reviews the implemented EogMouse software. The study discusses the planned and implemented signal processing algorithms in detail, and evaluates the performance of the system with laboratory measurments.
Tartalomjegyz´ ek 1. Bevezet´ es 1.1. Bioelektromos jelek . . . . . . . . . . . . . . . . . . . . . . . . . .
1 2
1.2. A szemmozg´as . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3
1.3. Az emberi szem fel´ep´ıt´ese . . . . . . . . . . . . . . . . . . . . . .
4
2. Tekintet k¨ ovet˝ o technik´ ak 2.1. Kontaktlencse alap´ u rendszerek . . . . . . . . . . . . . . . . . . .
9 9
2.2. Videokamera alap´ u rendszerek . . . . . . . . . . . . . . . . . . . .
11
2.2.1. Limbus ´es pupilla k¨ovet˝o rendszerek . . . . . . . . . . . . .
11
2.2.2. IROG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2.3. Korne´alis reflexi´ot k¨ovet˝o rendszerek . . . . . . . . . . . .
12 13
2.2.4. DPI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
13
2.3. Electro-Oculogr´afia (EOG) . . . . . . . . . . . . . . . . . . . . . .
14
2.4. A k¨ ul¨onb¨oz˝o technik´ak ¨osszehasonl´ıt´asa . . . . . . . . . . . . . . . 2.5. Szemmozg´as alap´ u HMI . . . . . . . . . . . . . . . . . . . . . . .
15 16
3. Rendszerterv
18
3.1. K¨ovetelm´eny specifik´aci´o . . . . . . ´ 3.1.1. Attekint´ es . . . . . . . . . . 3.1.2. Felhaszn´al´oi k¨ovetelm´enyek ´ 3.1.3. Altal´ anos c´elok . . . . . . .
. . . . . . . . . . . . . . . . .
18
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
18 18
. . . . . . . . . . . . . . . . .
19
3.1.4. Piaci c´elok . . . . . . . . . . . . . . . . . . . . . . . . . . .
19
3.1.5. Rendszerkorl´atok . . . . . . . . . . . . . . . . . . . . . . . 3.1.6. F˝obb rendszerfunkci´ok . . . . . . . . . . . . . . . . . . . .
20 20
3.1.6.1. Aktorok . . . . . . . . . . . . . . . . . . . . . . .
20
i
´ TARTALOMJEGYZEK
ii
3.1.6.2. Haszn´alati esetek . . . . . . . . . . . . . . . . . .
20
3.1.7. Hardver ´es szoftverk¨ovetelm´enyek . . . . . . . . . . . . . .
22
3.2. Statikus modell . . . . . . . . . . . . . . . . . . . . . . . . . . . .
22
3.2.1. Oszt´alyok . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.2.1.1. Eog Mouse System . . . . . . . . . . . . . . . . .
23 23
3.2.1.2. Hardware Settings . . . . . . . . . . . . . . . . .
24
3.2.1.3. I/O Settings . . . . . . . . . . . . . . . . . . . .
24
3.2.1.4. Eog Data . . . . . . . . . . . . . . . . . . . . . . 3.2.1.5. Calibration Data . . . . . . . . . . . . . . . . . .
24 24
3.2.1.6. General Input Data . . . . . . . . . . . . . . . .
25
3.2.1.7. Noise Filter . . . . . . . . . . . . . . . . . . . . .
25
3.2.1.8. Cursor . . . . . . . . . . . . . . . . . . . . . . . . 3.2.1.9. Calibration Sequence . . . . . . . . . . . . . . . .
25 25
3.2.1.10. Stimulus . . . . . . . . . . . . . . . . . . . . . . .
25
3.2.1.11. User Characteristics . . . . . . . . . . . . . . . .
26
3.3. Dinamikus modell . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.3.1. A rendszer ´allapot diagramja ´es ´allapotai . . . . . . . . . .
26 26
3.3.1.1. StartupWindow . . . . . . . . . . . . . . . . . . .
28
3.3.1.2. ConfigureHardware . . . . . . . . . . . . . . . . .
28
3.3.1.3. ConfigureIO . . . . . . . . . . . . . . . . . . . . . 3.3.1.4. IOSettingsOK . . . . . . . . . . . . . . . . . . . .
28 28
3.3.1.5. Calibration . . . . . . . . . . . . . . . . . . . . .
28
3.3.1.6. ControlCursor
. . . . . . . . . . . . . . . . . . .
30
4. M´ er´ esek ´ es m´ er˝ oeszk¨ oz¨ ok 4.0.2. Elektr´od´ak . . . . . . . . . . . . . . . . . . . . . . . . . . .
32 32
4.0.2.1. I. Konfigur´aci´o . . . . . . . . . . . . . . . . . . .
34
4.0.2.2. II. Konfigur´aci´o . . . . . . . . . . . . . . . . . . .
35
4.0.2.3. III. Konfigur´aci´o . . . . . . . . . . . . . . . . . . 4.0.3. Er˝os´ıt˝ok . . . . . . . . . . . . . . . . . . . . . . . . . . . .
35 36
4.0.4. Recorder PC . . . . . . . . . . . . . . . . . . . . . . . . .
37
4.0.5. Analyzer PC
. . . . . . . . . . . . . . . . . . . . . . . . .
37
4.0.6. C´elk´eperny˝o . . . . . . . . . . . . . . . . . . . . . . . . . .
38
´ TARTALOMJEGYZEK
iii
4.0.7. A m´er´es kivitelez´ese . . . . . . . . . . . . . . . . . . . . .
38
4.0.8. A kalibr´aci´os szekvencia . . . . . . . . . . . . . . . . . . .
39
4.0.8.1. Stimulusok . . . . . . . . . . . . . . . . . . . . .
39
4.0.8.2. Markerek . . . . . . . . . . . . . . . . . . . . . . 4.0.9. Valid´aci´o . . . . . . . . . . . . . . . . . . . . . . . . . . . .
41 42
5. Jelfeldolgoz´ as
44
5.1. A m´er´esek sor´an nyert adatok ´altal´anos jellemz˝oi . . . . . . . . .
44
5.1.1. Magasfrekvenci´aj´ u zaj . . . . . . . . . . . . . . . . . . . . 5.1.2. Drift . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
46 46
5.1.3. Cross-talk . . . . . . . . . . . . . . . . . . . . . . . . . . .
46
5.1.4. Pislog´as . . . . . . . . . . . . . . . . . . . . . . . . . . . .
49
5.1.5. Egy´eb artefaktok . . . . . . . . . . . . . . . . . . . . . . . 5.2. El˝ofeldolgoz´as . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
49 49
5.2.1. Csatorn´ak ¨osszevon´asa . . . . . . . . . . . . . . . . . . . .
51
5.2.2. Zajsz˝ ur´es ´es sim´ıt´as . . . . . . . . . . . . . . . . . . . . . .
51
5.2.3. Pislog´as sz˝ ur´es . . . . . . . . . . . . . . . . . . . . . . . . 5.3. A tekintet poz´ıci´oj´anak becsl´ese ´es a kurzor vez´erl´ese . . . . . . .
53 57
5.3.1. Szakk´ad detekci´o . . . . . . . . . . . . . . . . . . . . . . .
59
5.3.1.1. Az optim´alis threshold ´ert´ekek be´all´ıt´asa . . . . .
60
5.3.1.2. A szakk´adok detekt´al´asa . . . . . . . . . . . . . . 5.3.2. A szakk´ad kezd˝o ´es v´egpontja . . . . . . . . . . . . . . . .
61 64
5.3.3. A szakk´ad relat´ıv nagys´aga . . . . . . . . . . . . . . . . .
66
5.3.4. A szakk´ad relat´ıv nagys´aga ´es a tekintet sz¨og´enek v´altoz´asa k¨oz¨otti ¨osszef¨ ugg´es . . . . . . . . . . . . . . . . . . . . . . 5.3.5. A kurzor vez´erl´ese . . . . . . . . . . . . . . . . . . . . . .
66 66
5.4. Valid´aci´o ´es eredm´enyek . . . . . . . . . . . . . . . . . . . . . . .
68
5.4.1. Az IViewX pontoss´aga . . . . . . . . . . . . . . . . . . . .
68
5.4.2. Az EogMouse pontoss´aga . . . . . . . . . . . . . . . . . . 5.4.3. Dinamikus rekalibr´aci´o . . . . . . . . . . . . . . . . . . . .
68 73
6. Az EogMouse program
74
6.1. A fejleszt˝oi k¨ornyezet . . . . . . . . . . . . . . . . . . . . . . . . .
74
6.2. A grafikus felhaszn´al´oi fel¨ ulet . . . . . . . . . . . . . . . . . . . .
75
6.2.1. Hardware Settings . . . . . . . . . . . . . . . . . . . . . . 6.2.2. I/O Settings . . . . . . . . . . . . . . . . . . . . . . . . . .
75 76
6.2.3. Calibrate
. . . . . . . . . . . . . . . . . . . . . . . . . . .
76
6.2.4. Run . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
77
6.2.5. Help . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.2.6. Quit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
77 78
¨ 7. Osszegz´ es ´ es konkl´ uzi´ o ¨ 7.1. Osszegz´ es . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
79
7.2. Konkl´ uzi´o . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
79
References
79
84
iv
1. fejezet Bevezet´ es Becsl´esek szerint az Eur´opai Uni´oban a teljes lakoss´ag 10-15 %-a mozg´askorl´atozott vagy id˝oskor´ u, ami kb. 50 milli´o embert jelent [1]. A mozg´askorl´atozotts´ag probl´em´aja a 60 ´ev felettiek eset´eben, majdnem minden tizedik egy´ent ´erinti valamilyen form´aban. K¨ ul¨onb¨oz˝o tanulm´anyok azt is kimutatt´ak, hogy az egy´enek kora ´es mozg´askorl´atozotts´aguk m´ert´eke k¨oz¨ott igen er˝os ¨osszef¨ ugg´es tapasztalhat´o [2]. A vil´ag fejlett orsz´agaiban, ´ıgy az Eur´opai Uni´o tag´allamaiban is, az emberek v´arhat´o ´elettartama n¨ovekszik, teh´at a lakoss´ag egyre nagyobb h´anyad´anak kell a k¨ozelj¨ov˝oben a mozg´askorl´atozotts´ag probl´em´aj´aval szemben´eznie. A mozg´askorl´atozottak ´eletk¨or¨ ulm´enyeit jav´ıt´o alkalmaz´asokban azonban m´eg manaps´ag is hi´any tapasztalhat´o. Ezt felismerve, a k¨ozelm´ ult ´eveiben, az eme t´em´aban foly´o kutat´asok egyre t¨obb figyelmet ´es t´amogat´ast kaptak, ´es vil´agszerte sz´amos projekt indult az id˝osek illetve mozg´askorl´atozottak kommunik´aci´oj´anak ´es mobilit´as´anak g´epekkel t¨ort´en˝o seg´ıt´es´ere, ami n¨oveli az ´eletmin˝os´eg¨ uket ´es a szoci´alis integr´al´od´asuk es´ely´et [3]. A tradicion´alis (mechanikus) rendszerek tov´abbfejleszt´ese mellett egyre nagyobb szerepet kapnak a sz´am´ıt´og´eppel seg´ıtett rendszerek. Mindk´et esetben sz¨ uks´eg van az ember ´es g´ep k¨oz¨otti k´enyelmes interakci´ora, ´ıgy a sz´am´ıt´og´epes rendszereknek is elengedhetetlen ´es egyben legfontosabb eleme maga az ember ´es a g´ep k¨oz¨otti kommunik´aci´ot l´etrehoz´o interf´esz. Az ide´alis interf´esz egyszer˝ u (nem ig´enyel betan´ıt´ast a haszn´alata), gyors, robusztus ´es felhaszn´al´obar´at. A k¨ ul¨onb¨oz˝o hagyom´anyos g´epek vez´erl´es´ere a legelterjedtebb eszk¨oz¨ok a gombok, ped´alok ´es kallanty´ uk, m´ıg a sz´am´ıt´og´epek eset´eben a billenty˝ uzet, az eg´er,
1
1.1 Bioelektromos jelek
2
a touchpad ´es a joystick, melyek t¨obb´e-kev´esb´e eleget is tesznek a fenti k¨ovetelm´enyeknek. Nem meglep˝o teh´at, hogy a mozg´askorl´atozottak seg´ıt´es´ere tervezett eszk¨oz¨ok eset´eben is eredm´enyesen alkalmazhat´oak, gondoljunk p´eld´aul a joystickkel vez´erelt kerekessz´ekre. Ezekkel a hagyom´anyosnak mondhat´o eszk¨oz¨okkel nagyon j´ol v´egrehajthat´ok az egyszer˝ ubb feladatok, azonban egy ¨osszetettebb feladat v´egrehajt´as´ahoz m´ar t¨obb ilyen eszk¨oz egyidej˝ u haszn´alat´ara van sz¨ uks´eg, ami megnehez´ıti a vez´erl´est. Az ¨osszetettebb vez´erl´esi m˝ uveletek a mozg´askorl´atozottak sz´am´ara ak´ar fizikailag lehetetlen feladatt´a is v´alhatnak, ´ıgy sz¨ uks´eg van u ´jfajta, m´as elven m˝ uk¨od˝o vez´erl˝o eszk¨oz¨ok kifejleszt´es´ere. A fenti vez´erl˝o eszk¨oz¨ok tov´abbi k¨oz¨os tulajdons´aga, hogy k¨ozvetett motoros tev´ekenys´eget ig´enyelnek. K¨ozvetett motoros tev´ekenys´eg p´eld´aul, amikor egy bizonyos c´el ´erdek´eben, a felhaszn´al´onak egy meghat´arozott mozdulatot kell v´egrehajtania, aminek csak k¨ozvetve van kapcsolata mag´aval a c´elcselekv´essel. A j¨ov˝o vez´erl˝oeszk¨ozei azonban m´ar nem fognak motoros tev´ekenys´eget ig´enyelni, hanem k¨ ul¨onb¨oz˝o szenzoraik r´ev´en mintegy ”meg´erzik”, hogy mit akar a felhaszn´al´o. Ezeket a vez´erl˝o eszk¨oz¨oket a motoros rendszer¨ ukben k´arosodott egy´enek is k´epesek lesznek haszn´alni, illetve sokkal ¨osszetettebb vez´erl´est is el lehet majd vel¨ uk ´erni, hiszen a felhaszn´al´onak nem kell mag´ara a vez´erl´esre figyelnie, hanem csak az elv´egzend˝o feladatra. Ezen az u ´jfajta vez´erl´esen alapul´o interakt´ıv eszk¨oz¨ok u ´jfajta vez´erl˝ojeleket ig´enyelnek, amire a k¨ ul¨onb¨oz˝o bioelektromos jelek k´ın´alhatnak megold´ast.
1.1.
Bioelektromos jelek
A bioelektromos jelek a k¨ ul¨onb¨oz˝o ´el˝o szervek, szervrendszerek m˝ uk¨od´es´et k´ıs´er˝o akci´os ´aramok, teh´at mindig ¨osszef¨ uggnek bizonyos szenzoros, motoros vagy kognit´ıv folyamatokkal. Sz´amos k¨ ul¨onf´ele bioelektromos jelet ismer¨ unk ´es m´erhet¨ unk. Jelenleg az emberi test n´egy ter¨ ulet´en: az agy, a sz´ıv, az ideg-izomrendszer ´es a l´at´orendszer vizsg´alatain´al hasznos´ıtj´ak legt¨obbsz¨or a bioelektromos jeleket. Ilyenkor felveszik az agyk´ereg m˝ uk¨od´es´et k´ıs´er˝o - a kopony´an m´erhet˝o - elektromos jelform´akat, ez az elektroenkefalogram (EEG); a sz´ıv m˝ uk¨od´esekor fell´ep˝o ´es a testfel¨ ulet egyes r´eszein megjelen˝o elektromos jelform´akat, ez az elektrokardiogram (EKG); az izmok m˝ uk¨od´ese sor´an keletkez˝o akci´os fesz¨ ults´eget, ez
1.2 A szemmozg´ as
3
az elektromiogram (EMG), ´es a szem k¨orny´ek´en m´erhet˝o, a szemmozg´as ´altal l´etrej¨ov˝o potenci´alv´altoz´ast az elektro-okulogramot (EOG). A bioelektromos jelek vez´erl´esre t¨ort´en˝o felhaszn´al´asa mellett sz´olnak az al´abbi ´ervek: 1. K¨onnyen ´es viszonylag egyszer˝ u eszk¨oz¨okkel m´erhet˝ok (pl. olcs´o, kism´eret˝ u elektr´od´ak) 2. A felhaszn´al´o nem f´arad el a haszn´alatuk sor´an 3. Mivel orvosi felhaszn´al´asuk igen elterjedt, a m´er´esi m´odszereket m´ar kifejlesztett´ek ´es a m´er˝oeszk¨oz¨ok ak´ar k´eszen is kaphat´ok Ez a dolgozat a szemmozg´as ´altal l´etrej¨ov˝o EOG vez´erl´esre t¨ort´en˝o felhaszn´al´as´aval foglalkozik ´ıgy nem t´er ki az EEG, vagy az EMG hasonl´o felhaszn´al´asi lehet˝os´egeire.
1.2.
A szemmozg´ as
A l´at´as funkci´oj´ahoz szorosan kapcsol´odik a szemgoly´o mozg´ask´epess´ege. Ezt 6 db k¨ uls˝o szemizom biztos´ıtja, melyek a szemg¨od¨or k¨ ul¨onb¨oz˝o r´eszein erednek, ¨ ´es a szemgoly´o k¨ uls˝o, rostos burk´an tapadnak. Osszerendezett mozg´asuk lehet˝ov´e teszi azt, hogy k´et szem¨ unk egy¨ utt mozogjon. A szemmozg´as az emberi mozg´asok egyik leggyakoribb fajt´aja, ´es az emberi inform´aci´o feldolgoz´as is nagyr´eszt l´at´asunkra t´amaszkodik. Inform´aci´onkat a k¨ornyezet¨ unkr˝ol igen nagy sz´azal´ekban (80-85 %) vizu´alis u ´ton szerezz¨ uk, ´ıgy sokat tanulhatunk abb´ol, ha megfigyelj¨ uk, hogy pontosan hova ´es mennyi ideig tekint egy ember egy adott helyzetben. Ezt felismerv´en az elm´ ult 30 ´evben sz´amos kutat´as foglalkozott a szemmozg´as megfigyel´es´evel. A szemmozg´as kutat´asa az idegtudom´anyok ´es a pszichol´ogia ter¨ ulet´en is kiemelked˝oen fontosnak bizonyult. A nem tudatos szemmozg´as vizsg´alat´aval k¨ ul¨onb¨oz˝o szembetegs´egek, hat´ekonyan ´es eredm´enyesen diagnosztiz´alhat´oak, illetve az alv´as sor´an jelentkez˝o gyors ´es lass´ u szemmozg´asok tanulm´anyoz´asa is kiemelt figyelmet kapott a k¨ozelm´ ultban. Agyunk ´es l´at´asunk m˝ uk¨od´es´enek meg´ert´es´ehez hasznosak az u ´gynevezett figyelmi t´erk´epek (saliencymap) is, melyeket k¨ ul¨onb¨oz˝o tekintet k¨ovet˝o technik´ak seg´ıts´eg´evel k´esz´ıtenek. Makro- ´es mikro-szemmozg´asokat k¨ ul¨onb¨oztet¨ unk meg. Az elektro-okulogr´afi´aval a makro-szemmozg´asok k¨ovethet˝ok eredm´enyesen. A makro-szemmozg´asok a k¨ovetkez˝ok:
1.3 Az emberi szem fel´ ep´ıt´ ese
4
• Szakk´adok • Lass´ u, k¨ovet˝o mozg´asok • Vergens mozg´asok A szakk´adok gyors, hirtelen mozg´asok, amikor mozdulatlan t´argy megfigyel´esekor vagy olvas´asn´al a tekintet egyik fiksz´aci´os pontr´ol a m´asikra ugrik. Az inform´aci´o-felv´etel a szakk´adok k¨oz¨otti sz¨ unetben t¨ort´enik. A lass´ u, k¨ovet˝o mozg´asok biztos´ıtj´ak a mozg´o t´argyak megfigyel´es´et. Ha a lass´ u k¨ovet˝o mozg´asok ´es szakk´adok v´altakoznak (pl. vonatablakb´ol val´o kin´ez´es eset´en), optokinetikus nisztagmusr´ol besz´el¨ unk. A vergens mozg´asokn´al a 2 szemgoly´o befel´e vagy kifel´e t´er¨ ul el, a megfigyelt t´argy t´avols´ag´anak f¨ uggv´eny´eben. A szemmozg´as bizonyos m´ert´ekig tudatosan is ir´any´ıthat´o, ´es a mai fejlett technik´akkal igen pontosan ´es gyorsan m´erhet˝o, illetve k¨ovethet˝o. A gerincs´er¨ ult, vagy m´asm´odon mozg´askorl´atozott emberek eset´eben a s´er¨ ul´es fok´at´ol f¨ ugg˝oen k¨ ul¨onb¨oz˝o m´ert´ekben maradnak meg motoros funkci´ok, azonban a szemmozg´as, szinte mindegyik¨ uk eset´eben megmarad. Egy szemmozg´ason alapul´o HumanMachine Interface (HMI), ´es a r´a´ep¨ ul˝o sz´am´ıt´og´epes eszk¨oz¨ok nagyban emeln´ek ezen emberek ´eletmin˝os´eg´et, ill. a besz´edfunkci´ojukat is elvesztettek eset´eben ak´ar alapvet˝o kapcsolatukat adhatj´ak vissza a k¨ ulvil´aggal.
1.3.
Az emberi szem fel´ ep´ıt´ ese
Ez a fejezet a k¨ ul¨onb¨oz˝o technik´ak m˝ uk¨od´esi elv´enek ´es korl´atainak meg´ert´ese ´erdek´eben r¨oviden ismerteti az emberi szem fel´ep´ıt´es´et. A l´at´as p´aros szerve a szem, mely mind¨ossze 2,4 cm ´atm´er˝oj˝ u ´es nagyj´ab´ol g¨omb alak´ u. A szemgoly´o v´edett helyen, a koponyacsontok ´altal alkotott szemg¨od¨orben, zs´ırsz¨ovetbe ´agyazva helyezkedik el. A k¨ ulvil´ag fel´e is v´ed˝oszervek biztos´ıtj´ak ´eps´eg´et: a szemh´ejak a sz´el¨ uk¨on elhelyezked˝o szempill´akkal seg´ıtenek kiv´edeni a k´aros´ıt´o mechanikai hat´asokat, tov´abb´a a reflexes pislog´assal ´es a szem akaratlagos z´ar´as´aval megakad´alyozz´ak a szem kisz´arad´as´at. A szem el¨ uls˝o felsz´ın´et a szaruh´artya ter¨ ulet´en k´ıv¨ ul, valamint a szemh´ejak bels˝o oldal´at egy v´ekony, ´atl´atsz´o ny´alkah´artya bor´ıtja. Ez a k¨ot˝oh´artya (Conjunctiva), amely
1.3 Az emberi szem fel´ ep´ıt´ ese
1.1. ´abra. Az emberi szem ´altal´anos fel´ep´ıt´ese
5
1.3 Az emberi szem fel´ ep´ıt´ ese
6
szint´en r´eszt vesz a szemgoly´o el¨ uls˝o fel¨ ulet´enek v´edelm´eben. Speci´alis sejtjei egy ny´akos anyagot termelnek, amely seg´ıt a k¨onny - film v´ekonys´ag´ u - r´eteg´et a szem el¨ uls˝o felsz´ın´en tartani. A k¨onnyet a szemg¨od¨or fels˝o r´esz´eben tal´alhat´o k¨onnymirigy termeli, ´es a pislog´asok sor´an a szemh´ejak oszlatj´ak el a szem felsz´ın´en. A k¨onny nedvesen tartja a szemet hozz´aj´arulva ezzel az ´elesl´at´as kialakul´as´ahoz, t´apl´alja a szaruh´arty´at, ´es szerepet j´atszik a szem fert˝oz´esekkel ´es fizikai k´aros´ıt´asokkal szembeni v´edelm´eben. Elvezet´esi u ´tjai a k¨onnyet a bels˝o szemzugb´ol az orr¨ uregbe tov´abb´ıtj´ak. A k´ıv¨ ulr˝ol ´erkez˝o f´eny u ´tj´at k¨ovetve sorra ”v´egigj´arhatjuk” a szemgoly´o fel´ep´ıt´es´eben r´esztvev˝o k´epleteket. A f´enysugarak el˝osz¨or a szaruh´arty´ara (Cornea) ´erkeznek. Ez egy teljesen tiszta, ´atl´atsz´o, ´ora¨ uveg alak´ u t¨or˝ok¨ozeg, amely a szem k¨ uls˝o, feh´er, rostos burk´at alkot´o ´ınh´arty´aba (Sclera) illeszkedik be (l´asd: 1.1 ´abra). Dombor´ u felsz´ıne ¨osszet´er´ıti a rajta ´athalad´o f´enysugarakat. A szaruh´artya hib´atlan alakja, felsz´ın´enek egyenletess´ege ´es anyag´anak tisztas´aga az ´eles l´at´as kialakul´as´anak elengedhetetlen felt´etele. A szaruh´artya m¨og¨ott egy tiszta folyad´ekkal, u ´gy nevezett csarnokv´ızzel teli t´ers´eg tal´alhat´o. Ez a szem el¨ uls˝o ´es h´ats´o csarnoka ´es a kett˝ot a sziv´arv´anyh´artya gy˝ ur˝ u alak´ u lemeze v´alasztja el egym´ast´ol. A csarnokvizet a sug´artest termeli, a szem csarnokaiban t´arol´odik, majd az el¨ uls˝o csarnok sz¨oglet´eben, az u ´gy nevezett csarnokzugban vezet˝odik el. A csarnokv´ız termel˝od´ese ´es elvezet´ese k¨oz¨otti egyens´ uly hozza l´etre a szem bels˝o nyom´as´at. A szemnyom´as szigor´ u szab´alyoz´as alatt ´all, mivel ez biztos´ıtja a szemgoly´o alakj´at ´es ezzel eg´eszs´eges m˝ uk¨od´es´et. A f´eny a szem h´ats´o r´esz´ebe a pupill´an vagy m´as nev´en, szembog´aron kereszt¨ ul jut be. A pupilla k¨or¨ ul l´athat´o, k¨ork¨or¨os, sz´ınes ter¨ ulet a sziv´arv´anyh´artya (Iris), amelyben a pupill´at sz˝ uk´ıteni illetve t´ag´ıtani k´epes izmok helyezkednek el. Ezek feladata a szembe jut´o f´eny mennyis´eg´enek szab´alyoz´asa a k¨ornyezeti f´enyviszonyoknak megfelel˝oen. A szemgoly´oban h´atrafel´e haladva a sziv´arv´anyh´artya folytat´as´aban a sug´artest tal´alhat´o, belsej´eben a szemlencse dombor´ us´ag´at szab´alyoz´o sug´arizommal ´es a csarnokvizet termel˝o sz¨ovetekkel, majd em¨og¨ott az ´erh´artya (Choroid) helyezkedik el. Ut´obbi egy s˝ ur˝ u ´erh´al´ozat, amely a szemgoly´o fal´anak k¨ uls˝o, rostos burka (Sclera) ´es a legbels˝o idegh´artya (Retina) k¨oz¨otti k¨oz´eps˝o r´eteget k´epezi. Feladata az idegh´artya v´erell´at´as´anak biztos´ıt´asa.
1.3 Az emberi szem fel´ ep´ıt´ ese
7
A h´ats´o szemcsarnok m¨og¨ott elhelyezked˝o szemlencse, a szaruh´arty´an k´ıv¨ uli m´asik fontos t¨or˝ok¨ozeg. Eg´eszs´eges szemben ez a krist´alytiszta, rugalmas anyag´ u, dombor´ u k´eplet f´okusz´alja a f´enyt az idegh´arty´ara. Alaphelyzetben, mikor a szem t´avolra n´ez, a lencs´et k¨ork¨or¨osen a sug´artesthez felf¨ uggeszt˝o szalagok feszesek, ´es a lencse lapos. K¨ozelre tekint´eskor a sug´arizom ¨osszeh´ uz´odik, emiatt a lencsef¨ uggeszt˝o rostok ellazulnak, ´es a lencse dombor´ us´aga saj´at rugalmass´ag´an´al fogva megn˝o. Ezzel t¨or˝oereje is n¨ovekszik, ´es lehet˝ov´e v´alik az ´eles k¨ozeli l´at´as. Az ´eletkor el˝orehaladt´aval a lencse rugalmass´aga cs¨okken, ´es fokozatosan egyre nehezebb´e v´alik a t¨or˝oer˝o n¨ovel´ese, azaz a k¨ozelre n´ez´es, ´ıgy alakul ki az o¨regszem˝ us´eg. A szemlencse m¨og¨ott, a szemgoly´o t´erfogat´anak legnagyobb r´esz´et kitev˝o a´tl´atsz´o, kocsonya-szer˝ u anyag tal´alhat´o. Ez az u ¨vegtest, amely 98%-ban v´ızb˝ol ´ ul¨ott ´all. Feladata a f´eny ´atereszt´ese a m¨og¨otte elhelyezked˝o idegh´artya fel´e. Ujsz¨ korban ir´any´ıtja a szemgoly´o n¨ovekes´es´et, a k´es˝obbiekben pedig szerepe van az idegh´artya mechanikai v´edelm´enek biztos´ıt´as´aban. Eg´eszs´eges f´enyt¨or´es˝ u szemben a be´erkez˝o f´enysugarak az u ¨vegtesten val´o ´athalad´as ut´an v´eg¨ ul az idegh´arty´ara (Retina) ”´erkeznek meg”, ´es itt egyes¨ ulnek ´eles k´epp´e. A t¨or˝ok¨ozegek ´altal ¨osszet´er´ıtett f´enysugarak f´okuszpontja az idegh´artya k¨ozponti, kiemelt jelent˝oss´eg˝ u ter¨ ulet´ere, a s´argafoltra (Macula) esik, aminek centrum´aban helyezkedik el a fovea vagy l´at´og¨od¨or. Ez az ´elesl´at´as t´enyleges kialakul´as´anak a helye. A fovea nem esik egybe pontosan a szem optikai tengely´evel (Optic axis l´asd: 1.1 ´abra), amit a szemgoly´o k¨oz´eppontja ´es a pupilla k¨ozepe defini´al. A fove´at ´es a pupilla k¨ozep´et ¨osszek¨ot˝o egyenes a vizu´alis tengely (Visual axis). A vizu´alis tengely ir´anya hat´arozza meg azt a pontot, amire az egy´en figyelme ir´anyul, ´es nem az optikai tengely. A szemben kb. 127 milli´o receptorsejt szolg´al a f´enyinger felv´etel´ere ´es k´emiai ingerr´e t¨ort´en˝o ´atalak´ıt´as´ara. Ezeket a sejteket alakjuk ut´an p´alcik´aknak ´es csapoknak nevezik. Benn¨ uk a f´eny hat´as´ara olyan k´emiai anyagok termel˝odnek, amelyek t¨obb ´atkapcsol´od´ason kereszt¨ ul, tov´abbi idegsejteken v´egighaladva tov´abb´ıtj´ak a k¨ ulvil´ag f´enyingereit az agy fel´e. Az inger¨ uletet tov´abb´ıt´o idegsejtek ny´ ulv´anyai az eg´esz idegh´artya felsz´ın´er˝ol a l´at´oidegf˝oben (Papilla) szed˝odnek ¨ossze.
A
l´at´oideg innent˝ol m´ar a szemgoly´on k´ıv¨ ul folytatja u ´tj´at az agy l´at´as´ert felel˝os ter¨ uletei fel´e. A l´at´op´alya v´eg¨ ul az agyk´ereg l´at´as´ert felel˝os k¨ozpontjaiban ´er
1.3 Az emberi szem fel´ ep´ıt´ ese
8
v´eget, ahol megt¨ort´enik az idegh´arty´an kialakult kicsiny´ıtett, ford´ıtott k´ep ´ertelmez´ese ´es magasabb szint˝ u feldolgoz´asa.
2. fejezet Tekintet k¨ ovet˝ o technik´ ak A tekintet k¨ovet˝o rendszerek (Eye Gaze Trackers), olyan eszk¨oz¨ok, amelyek k¨ ul¨onb¨oz˝o technik´ak seg´ıts´eg´evel megbecs¨ ulik az alany tekintet´enek ir´any´at. A tekintet becs¨ ult poz´ıci´oja felhaszn´alhat´o diagnosztik´ara ´es vez´erl´esre is. Ez a fejezet ¨ r¨ovid ´attekint´est ad a ma l´etez˝o tekintet k¨ovet˝o technik´akr´ol. Osszehasonl´ ıtja ´es ´ert´ekeli az elektro-okulogr´afi´at haszn´al´o technik´at vez´erl´esre t¨ort´en˝o felhaszn´al´asi lehet˝os´ege f¨ uggv´eny´eben.
2.1.
Kontaktlencse alap´ u rendszerek
Ezek a rendszerek a legpontosabb szemmozg´as m´er˝o technik´ak k¨oz´e tartoznak. K¨oz¨os jellemz˝oj¨ uk, hogy egy kontaktlencs´ebe ´ep´ıtett referenciaobjektum elmozdul´as´at m´erik. A kontaktlencs´enek viszonylag nagynak kell lennie, a szaruh´arty´an t´ ul a szkler´ara is ki kell terjednie, mert ´ıgy megel˝ozhet˝o a haszn´alat sor´an az elcs´ usz´asa. K¨ ul¨onb¨oz˝o mechanikus, optikai ´es indukci´os referenciaobjektumokat is haszn´alnak, de manaps´ag els˝osorban indukci´os tekercset ´ep´ıtenek a lencs´ebe. A tekercs elmozdul´asa elektrom´agneses t´erben m´erhet˝o. A 2.1 ´abr´an l´athat´o egy indukci´os tekerccsel ell´atott kontaktlencse, illetve a 2.2 ´abr´an a m´er´eshez haszn´alt elektrom´agneses mez˝ot el˝o´all´ıt´o keret. Hab´ar a kontaktlencse alap´ u rendszerekkel ak´ar 5-10 sz¨ogm´asodperc pontoss´aggal is meghat´arozhat´o a tekintet ir´anya (egy limit´alt tartom´anyban [9]), ez az egyik legink´abb intruz´ıv m´odszer. A lencse felhelyez´es´ere egy p´elda a 2.3 ´abr´an l´athat´o. A lencse pontos felhelyez´ese igen nagy odafigyel´est ´es szak´ertelmet
9
2.1 Kontaktlencse alap´ u rendszerek
2.1. ´abra. Kontaktlencs´ebe ´ep´ıtett tekercs
2.2. ´abra. A vizsg´alathoz haszn´alt keret
2.3. ´abra. A kontaktlencse felhelyez´ese.
10
2.2 Videokamera alap´ u rendszerek
11
ig´enyel, r´aad´asul visel´ese is igen k´enyelmetlen, ´ıgy a m´odszer legink´abb laborat´oriumi vizsg´alatokra alkalmas.
2.2.
Videokamera alap´ u rendszerek
A legt¨obb tekintet k¨ovet˝o rendszer a videokamera alap´ u rendszerek k¨oz´e sorolhat´o. A kamer´at haszn´al´o tekintet k¨ovet˝o rendszerek alapja a szem egy-egy olyan tulajdons´aga, ami optikai eszk¨oz¨okkel j´ol felismerhet˝o ´es k¨ovethet˝o. A rendszerek ´altal´aban saj´at referencia f´enyforr´ast haszn´alnak a jobb k´epmin˝os´eg el´er´ese ´erdek´eben. Ezen rendszerek t¨obbs´ege megval´os´ıthat´o kev´esb´e intruz´ıv eszk¨oz¨okkel.
2.2.1.
Limbus ´ es pupilla k¨ ovet˝ o rendszerek
A limbust ´es a pupill´at k¨ovet˝o technik´ak igen elterjedtek. A limbus a szklera ´es az ´ırisz (l´asd 1.3 fejezet) hat´arfel¨ ulete. A k´et r´egi´o igen elt´er˝o sz´ıne miatt fell´ep˝o er˝os kontrasztnak k¨osz¨onhet˝oen a limbus viszonylag k¨onnyed´en k¨ovethet˝o horizont´alisan, azonban a szemh´ejak ´altal´aban eltakarj´ak az ´ırisz egy r´esz´et, ´ıgy a limbus-t k¨ovet˝o rendszereknek kisebb a vertik´alis pontoss´aga. A pupill´at valamivel nehezebb k¨ovetni, mivel kisebb a kontraszt a pupilla ´es az ´ırisz hat´ar´an, azonban a szemh´ejak ´altal´aban nem takarj´ak. Sok tekintet k¨ovet˝o rendszer infrav¨or¨os f´enyforr´ast haszn´al, hogy n¨ovelje a pupilla ´es az ´ırisz kontrasztj´at, mivel ilyenkor a retin´ar´ol visszaver˝od˝o f´eny miatt a pupilla feh´ernek l´atszik. A 2.4 ´abra bal oldal´an l´athat´o a norm´al f´enyt haszn´al´o rendszerrel kapott k´ep, m´ıg a jobb oldalon az infrav¨or¨os f´enyforr´ast haszn´al´o rendszerrel kapott kamerak´ep. Tov´abbi el˝onye az infrav¨or¨os f´enyforr´asnak, hogy az emberi szem sz´am´ara nem l´athat´o, ´ıgy nem zavarja a felhaszn´al´ot. A gyakorlatban ´altal´aban az infrav¨or¨os tartom´anyhoz igen k¨ozel es˝o, kb. 880 nm hull´amhossz´ u f´enyt alkalmaznak, ami majdnem teljesen l´athatatlan az emberi szem sz´am´ara, de a legt¨obb k¨oz¨ons´eges kamer´aval m´eg ´erz´ekelhet˝o [4].
2.2 Videokamera alap´ u rendszerek
12
2.4. ´abra. S¨ot´et ´es vil´agos pupilla
2.2.2.
IROG
Reulen ´es munkat´arsai [5] a limbus k¨ovet˝o technika egy infrav¨or¨os f´enyforr´ast haszn´al´o vari´aci´oj´at fejlesztett´ek ki, a rendszert IROG-nak nevezt´ek el. Infrav¨or¨os f´enyt kibocs´at´o di´od´akat ´es infrav¨or¨os f´enyre ´erz´ekeny foto-tranzisztorokat helyeztek el a szem felett ´es alatt. A di´oda-tranzisztor p´arokat k¨ ul¨onb¨oz˝o szem¨ uvegekbe ´es sisakokba ´ep´ıtik, oly m´odon, hogy a limbus minden helyzetben meg legyen vil´ag´ıtva, k¨ ul¨on¨osen a limbus naz´alis ´es tempor´alis oldala. A foto-tranzisztorok a visszavert infrav¨or¨os f´enyt fesz¨ ults´egg´e alak´ıtj´ak. A naz´alis ´es a tempor´alis tranzisztorok fesz¨ ults´eg´enek k¨ ul¨onbs´ege ar´anyos a tekintet sz¨og´evel. A 2.5 ´abr´an a Skalar c´eg fejreszerelhet˝o, infrav¨or¨os f´enyforr´ast haszn´al´o (IROG) limbus k¨ovet˝o rendszere l´athat´o.
2.5. ´abra. A Skalar c´eg IRIS IR elnevez´es˝ u, fejre szerelhet˝o infrav¨or¨os limbus trackere
2.2 Videokamera alap´ u rendszerek
2.2.3.
13
Korne´ alis reflexi´ ot k¨ ovet˝ o rendszerek
A f´enyforr´as gener´alja az u ´gynevezett korne´alis reflexi´ot, ami egy csillog´o pont a kornea felsz´ın´en, ´es ami az 2.4 ´abra bal oldali k´ep´en is j´ol kivehet˝o a pupilla k¨ozel´eben. Ezt a pontot haszn´alja referencia pontk´ent a korne´alis reflexi´o technika. A technika a fix f´enyforr´as ´altal gener´alt reflexi´o hely´et ´es a pupilla k¨ozep´et hasonl´ıtja ¨ossze. Ha a k´et pont egybeesik, akkor a felhaszn´al´o pontosan a kamer´ara tekint. Ha nem esik egybe, akkor a kett˝o k¨oz¨otti t´avols´agb´ol, illetve a reflexi´o elt´er¨ ul´es´enek ir´any´ab´ol meg´allap´ıthat´o a tekintet elfordul´asi sz¨oge a kamer´ahoz k´epest. A rendszer id˝obeli felbont´asa 30-60Hz-ig terjed, ami elegend˝o a legt¨obb szemmozg´as ´erz´ekel´es´ehez. A t´erbeli felbont´asa a kamera lencsem´eret´et˝ol, illetve a kamera ´es a szem t´avols´ag´at´ol f¨ ugg. Feln˝ott alanyok vizsg´alata ´es fix fejpoz´ıci´o ( max. 2 cm elmozdul´as ) eset´en, a t´erbeli felbont´as el´erheti a 0.1◦ -ot [6].
2.2.4.
DPI
Cornsweet ´es Crane egy nagyon pontos tekintet k¨ovet˝o technik´at ismertet [7], ami az els˝o ´es a negyedik Purkinje-f´ele t¨ uk¨ork´epet haszn´alja. A Purkinje-f´ele t¨ uk¨ork´epek, a szem k¨ ul¨onb¨oz˝o r´etegei fel˝ol ´erkez˝o f´enyvisszaver˝od´esek (l´asd 2.6 ´abra).
2.6. ´abra. A Purkinje-f´ele t¨ uk¨ork´epek
2.3 Electro-Oculogr´ afia (EOG)
14
Az els˝o Purkinje-t¨ uk¨ork´ep (azaz a korne´alis reflexi´o) a szaruh´artya ´es a k¨ornyezet hat´ar´ar´ol ver˝odik vissza. Ez a legf´enyesebb ´es a legegyszer˝ ubben detekt´alhat´o, illetve k¨ovethet˝o reflexi´o. A t¨obbi Purkinje-t¨ uk¨ork´ep detekt´al´as´ahoz m´ar speci´alis hardver sz¨ uks´eges, azonban a harmadik ´es a negyedik t¨ uk¨ork´ep a tekintet t´erbeli hely´enek becsl´es´ere is haszn´alhat´o, mivel ezek poz´ıci´oja a szemlencse alakj´at´ol is f¨ ugg [7]. A kett˝os Purkinje-t¨ uk¨ork´ep k¨ovet˝o rendszer (Dual Purkinje Imaging vagy DPI) alapja az a jelens´eg, hogy a szemek transzl´aci´os mozg´asa eset´en a k´et Purkinje-t¨ uk¨ork´ep (az els˝o ´es a negyedik) egy¨ utt mozog, azonban a szemek elfordul´asa eset´en k¨ ul¨onb¨oz˝o m´ert´ekben mozdulnak el. Ez a k¨ ul¨onbs´eg ar´anyos a szem elfordul´as´aval. A szerz˝ok a rendszer t´erbeli pontoss´ag´at kb. 1’-ben ´allap´ıtj´ak meg, azonban ilyen nagym´ert´ek˝ u pontoss´ag el´er´es´ehez mindenk´eppen sz¨ uks´eges a fej stabiliz´aci´oja. A 2.7 ´abr´an l´athat´o egy DPI alap´ u tekintet k¨ovet˝o rendszer.
2.7. ´abra. A Fourward Optical Technologies DPI k¨ovet˝o rendszere
2.3.
Electro-Oculogr´ afia (EOG)
Emil du Bois-Reymond 1848-ban megfigyelte, hogy a szem szaruh´arty´aja elektromosan pozit´ıv t¨olt´est mutat a szemfen´ekhez k´epest. Ez a corneo-retin´alis potenci´al az alapja a szemek k¨orny´ek´en, felsz´ıni elektr´od´akkal is m´erhet˝o elektrookulogramnak. A potenci´almez˝o a szemmel egy¨ utt forog, k¨ovetkez´esk´eppen a szem horizont´alis ´es vertik´alis mozg´asi s´ıkjainak megfelel˝oen elhelyezett elektr´od´ak a szem mozg´asainak megfelel˝o potenci´al-v´altoz´asokat detekt´alnak (l´asd: 2.8 ´abra). Ez a jel felhaszn´alhat´o az elfordul´as m´ert´ek´enek, azaz a tekintet ir´any´anak meghat´aroz´as´ara.
2.4 A k¨ ul¨ onb¨ oz˝ o technik´ ak ¨ osszehasonl´ıt´ asa
15
2.8. ´abra. Az EOG kialakul´asa
A korneo-retin´alis potenci´al ´altal´aban 50 ´es 3500 mikrovolt k¨oz´e esik, frekvencia tartom´anya kb. Dc-100 Hz-ig terjed. A viselked´ese ±30 fokig terjed˝o szemmozg´asok eset´en line´arisnak tekinthet˝o [2]. A m´ert potenci´al azonban nemcsak egy´enenk´ent, de id˝oben is v´altozhat, ak´ar azonos m´er´esi k¨or¨ ulm´enyek eset´en is, valamint biol´ogiai artefaktokkal ´es a k¨ornyezetb˝ol ered˝o elektromos zajjal is terhelt. Az EOG alap´ u rendszerekkel el´erhet˝o legnagyobb pontoss´ag horizont´alisan ◦ 1 , vertik´alisan kb. 2◦ [9]. Az EOG-s szemk¨ovet´es legnagyobb el˝onyei, az egyszer˝ u hardware ´es az alacsony ´ar. A diplomamunka keret´eben v´egzett EOG-m´er´esek megval´os´ıt´as´anak r´eszletes le´ır´as´at, valamint a m´ert jelek tulajdons´agait a 4. fejezet t´argyalja.
2.4.
A k¨ ul¨ onb¨ oz˝ o technik´ ak ¨ osszehasonl´ıt´ asa
Az el˝oz˝o fejezetek bepillant´ast ny´ ujtottak abba, hogy a k¨ ul¨onb¨oz˝o technik´ak eset´eben mit ´es hogyan m´ernek a tekintet ir´any´anak megbecs¨ ul´ese ´erdek´eben. A kapott m´er´esi adatokat, mint p´eld´aul a pupilla poz´ıci´oj´at, a limbus poz´ıci´oj´at,
16
2.5 Szemmozg´ as alap´ u HMI
a b˝orfelsz´ıni potenci´alokat, stb. ezut´an meg kell feleltetni a szem orient´aci´oj´at le´ır´o koordin´at´aknak. A m´ert adatok ´es a szem orient´aci´oja k¨oz¨otti ¨osszef¨ ugg´es megtal´al´as´ahoz a´ltal´aban egy kalibr´aci´os elj´ar´asra is sz¨ uks´eg van. A kalibr´aci´os elj´ar´as sor´an a felhaszn´al´onak pontosan meghat´arozott hely˝ u vizu´alis c´elpontokra kell ir´any´ıtania a tekintet´et, mik¨ozben a sz´oban forg´o m´er´est elv´egzik. Az ´ıgy kapott adatp´arokb´ol ezut´an egy ´altal´anos lek´epez´es sz´amolhat´o ki, ami ide´alis esetben line´aris f¨ uggv´eny. Azokn´al a technik´akn´al, ahol a szem orient´aci´oj´at a fej poz´ıci´oj´ahoz k´epest m´erik, a felhaszn´al´o fejpoz´ıci´oja a kalibr´aci´o alatt ´es ut´an nem v´altozhat. A 2.1 t´abl´azat ¨osszefoglalja a tradicion´alis tekintet k¨ovet˝o technik´ak legfontosabb jellemz˝oit. 2.1. t´abl´azat. Tekintet k¨ovet˝o technik´ak jellemz˝oi [4] nyom´an Technika Pontoss´ag Megjegyz´es Kontaktlencse EOG IROG DPI Limbus tracker Pupilla tracker
2.5.
1’ 2◦ 2’ 1’ 1◦ 1◦
Gyors ´es pontos, de nagym´ert´ekben intruz´ıv Alacsony k¨olts´eg, egyszer˝ u eszk¨oz¨ok Fejre szerelhet˝o, limbust k¨oveti Fejfix´aci´ot ig´enyel, nem intruz´ıv Kamera alap´ u, vertik´alisan kisebb a pontoss´aga Kamera alap´ u, neh´ez a pupilla detetkt´al´asa
Szemmozg´ as alap´ u HMI
A szemmozg´ast vez´erl´esre haszn´al´o ide´alis HMI az al´abbi k¨ovetelm´enyeknek tesz eleget: • nagy pontoss´ag ´es gyorsas´ag • alacsony ´ar • egyszer˝ u haszn´alat, nem ig´enyel betan´ıt´ast • komfort • mobilit´as
2.5 Szemmozg´ as alap´ u HMI
17
Minden k¨ovetelm´enynek maxim´alisan eleget tev˝o tekintet k¨ovet˝o technika jelenleg nem l´etezik, ´ıgy egy konkr´et rendszer megval´os´ıt´as´ahoz a technik´at a rendszer pontos felhaszn´al´asi ter¨ ulet´enek figyelembev´etel´evel kell megv´alasztani. Ez a dolgozat egy EOG alap´ u tekintet k¨ovet˝o rendszer tervez´es´evel ´es megval´os´ıt´as´aval foglalkozik. Az EOG alap´ u tekintet k¨ovet´es, nem tartozik a ma l´etez˝o legpontosabb technik´ak k¨oz´e. T´erbeli ´es id˝obeli felbont´asa azonban elegend˝o vez´erl˝ojelek el˝o´all´ıt´as´ahoz egy Human Machine Interf´esz sz´am´ara. Legf˝obb el˝onye a rendk´ıv¨ ul szer´eny eszk¨ozig´enye, amib˝ol k¨ovetkezik a nagyon alacsony k¨olts´ege is. Tov´abbi el˝onye, hogy nem intruz´ıv, ´es nem ig´enyel neh´ez, fejre er˝os´ıtett szerkezetet. J¨ov˝obeli, mindennapi ´eletben t¨ort´en˝o alkalmaz´asa azonban nem val´osz´ın˝ u, az elektr´od´ak negat´ıv eszt´etikai hat´asa miatt. Az EOG alap´ u rendszerek kivitelez´es´en´el a legf˝obb probl´em´at a korneo-retin´alis potenci´al spont´an lass´ u elk´ usz´asa (az u ´gynevezett drifting), valamint a pislog´asb´ol, illetve az izommozg´asokb´ol ered˝o artefaktok kisz˝ ur´ese jelenti.
3. fejezet Rendszerterv Ez a fejezet ismerteti a rendszertervet. A rendszerterv nem egy konkr´et alkalmaz´asra k´esz¨ ult, hanem egy ´altal´anos, EOG alap´ u vez´erl´est haszn´al´o szemmozg´as felismer˝o szoftver rendszert mutat be. A tervez´esn´el t¨orekedtem k¨ovetni az UML metodik´at. A rendszert k¨ ul¨onb¨oz˝o aspektusokb´ol ismertet˝o rendszerterv f˝obb alkot´oelemei a k¨ovetelm´eny specifik´aci´o, a statikus- ´es a dinamikus rendszermodell.
3.1. 3.1.1.
K¨ ovetelm´ eny specifik´ aci´ o ´ Attekint´ es
A szemmozg´asb´ol ered˝o bioelektromos jelek, m´as n´even az Elektro-Okulo-Gram (l´asd: 2.4 fejezet), a szemek k¨or¨ ul a b˝orfelsz´ınre tapasztott elektr´od´akkal m´erhet˝o. A tervezett szoftver rendszer a felhaszn´al´on m´ert Electro-Oculo-Gram alapj´an meghat´arozza a felhaszn´al´o tekintet´enek ir´any´at. A szoftver a felhaszn´al´o el˝ott elhelyezett s´ıkk´eperny˝on, a meghat´arozott ir´any alapj´an a kurzort ir´any´ıtja.
3.1.2.
Felhaszn´ al´ oi k¨ ovetelm´ enyek
• A rendszer a felhaszn´al´on m´ert Electro-Oculo-Gram alapj´an hat´arozza meg a tekintet ir´any´at, illetve a szemmozg´ast. • A rendszerrel lehessen a sz´am´ıt´og´ep k´eperny˝oj´en a kurzort ir´any´ıtani. • felhaszn´al´o tetsz˝oleges fizikai param´eterekkel rendelkezhet.
18
3.1 K¨ ovetelm´ eny specifik´ aci´ o
19
• rendszert tetsz˝oleges m´eret˝ u ´es tetsz˝oleges t´avols´agra lev˝o k´eperny˝ovel is lehessen haszn´alni. • rendszer t¨orekedjen min´el nagyobb t´erbeli pontoss´agra. • rendszer t¨orekedjen min´el nagyobb id˝obeli pontoss´agra. • rendszer t¨orekedjen a robusztuss´agra.
3.1.3.
´ Altal´ anos c´ elok
• A rendszer bemenete az EOG regisztr´atum, kimenete a k´eperny˝on a kurzor poz´ıci´oja, vagy sebess´ege. • A kurzor k´ıv´ant helyre t¨ort´en˝o mozgat´as´ahoz, a felhaszn´al´o tekintet´enek min´el pontosabb meghat´aroz´as´ara van sz¨ uks´eg. A megfelel˝o pontoss´ag el´er´ese ´erdek´eben a be´erkez˝o, zajjal terhelt EOG jeleken sz˝ ur´est kell v´egezni, ´es a sz˝ urt jelekb˝ol kell meghat´arozni a tekintet ir´any´at. • A sz˝ urt jelb˝ol ´es a felhaszn´al´o egyedi param´etereib˝ol meg kell hat´arozni a felhaszn´al´o tekintet´enek a k´eperny˝o k¨oz´eppontj´ahoz viszony´ıtott horizont´alis ´es vertik´alis sz¨og´et. • A kurzort a tekintetb˝ol kinyert vez´erl˝o parancsnak megfelel˝oen kell mozgatni. • Az EOG m´er´esek saj´atoss´ag´ab´ol ad´od´oan (l´asd: 2.4 fejezet) minden egyes m´er´es ´es m´ert alany egyedi param´eterekkel rendelkezik. A felhaszn´al´o egyedi param´etereinek meghat´aroz´asa ´erdek´eben a rendszert kalibr´alni kell. • A c´elk´eperny˝o m´eret´et, felbont´as´at ´es t´avols´ag´at a felhaszn´al´o adhatja meg.
3.1.4.
Piaci c´ elok
A rendszer a P´azm´any P´eter Katolikus Egyetem egy hallgat´oj´anak Diplomaterv´enek r´esze. Els˝osorban k´ıs´erleti, kutat´asi c´elb´ol lesz fejlesztve, ´ıgy laborat´oriumi k¨or¨ ulm´enyek k¨oz¨otti vizsg´alatok v´egz´es´ere a legalkalmasabb. Hasonl´o rendszerekkel szembeni legf˝obb el˝onye az alacsony k¨olts´eg, ´es az egyszer˝ u haszn´alat.
3.1 K¨ ovetelm´ eny specifik´ aci´ o
3.1.5.
20
Rendszerkorl´ atok
A rendszerterv nem foglalkozik az EOG m´er´esek megval´os´ıt´as´aval, az alkalmazott m´er˝oeszk¨oz¨okkel, illetve a jelek A/D ´atalak´ıt´as´aval. A m´er´esek megval´os´ıt´as´at a 4. fejezet t´argyalja, de a rendszerterv ett˝ol f¨ uggetlen. A rendszer az EOG jeleket meghat´arozott digit´alis form´atumban kapja a bemeneti interf´eszre. A rendszer megfelel˝o m˝ uk¨od´es´ehez minimum 4 csatorna jel´ere van sz¨ uks´eg, lehet˝oleg 2 horizont´alis illetve 2 vertik´alis csatorn´ara. A 2 vertik´alis ´es horizont´alis csatorna nagyj´ab´ol egym´as neg´alt jel´et tartalmazza, azaz p´eld´aul 1-1 elektr´oda legyen a szem alatt ´es f¨ol¨ott, valamint 1-1 a jobb ´es bal oldal´an. A rendszer kalibr´al´asa ut´an a felhaszn´al´o fejpoz´ıci´oja, a k´eperny˝om´eret ´es a k´eperny˝ot´avols´ag nem v´altozhat. Ha m´egis v´altozik, a kalibr´aci´ot meg kell ism´etelni.
3.1.6.
F˝ obb rendszerfunkci´ ok
A szoftver rendszer n´egy legalapvet˝obb funkci´oja: a hardware param´eterek ´all´ıthat´os´aga, a bemenet konfigur´al´asa, a kalibr´aci´o ´es a kurzormozgat´as. A 3.1 ´abr´an a rendszer haszn´alati eset (Use case) diagramja l´athat´o. 3.1.6.1.
Aktorok
A rendszernek egyetlen aktora van, a felhaszn´al´o (l´asd: 3.1 ´abra:User). A felhaszn´al´o az a szem´ely, akin az EOG m´er´es v´egzend˝o, ´es aki a tekintet´evel vez´erlheti a kurzort a k´eperny˝on. 3.1.6.2.
Haszn´ alati esetek
1. Change Hardware Settings: A felhaszn´al´o itt ´all´ıthatja be a k¨ ul¨onb¨oz˝o hardver param´etereket, pl: k´eperny˝om´eret, felbont´as, k´eperny˝o t´avols´aga, stb. Opcion´alis Use case, nem k¨otelez˝o a program minden egyes fut´asa sor´an haszn´alni, de a rendszer pontos m˝ uk¨od´ese csak abban az esetben garant´alhat´o, ha be´all´ıt´asok megegyeznek a val´os ´ert´ekekkel. 2. Configure Data IO: A felhaszn´al´o itt konfigur´alja az Input/Output interf´eszeket. Megadhatja pl. az adatszerver IP c´ım´et, vagy a markerek
3.1 K¨ ovetelm´ eny specifik´ aci´ o
3.1. ´abra. A rendszer Use case diagramja
21
3.2 Statikus modell
22
k¨ uld´es´ere haszn´aland´o portot. A rendszer tov´abbi funkci´oinak el´er´ese ´erdek´eben, legal´abb egyszer be kell ´all´ıtani a helyes ´ert´ekeket. 3. Calibrate: A felhaszn´al´o itt kalibr´alja a rendszert, saj´at fizikai param´etereihez. A kurzor vez´erl´ese el˝ott a rendszert legal´abb egyszer sikeresen kalibr´alni kell. Kalibr´aci´o csak akkor hajthat´o v´egre, ha a ”Configure Data IO”’ ´ enytelen kalibr´aci´o vagy eset m´ar legal´abb egyszer szab´alyosan lefutott. Erv´ ´erv´enytelen Input/Output be´all´ıt´asok eset´en a szoftver figyelmezteti a felhaszn´al´ot. A kalibr´aci´o ´erv´enytelenn´e v´alik, ha a program u ´jraindul, felhaszn´al´o v´alt´as t¨ort´ent, vagy megv´altoztak a hardver param´eterek. A kalibr´aci´o ig´eny eset´en ak´arh´anyszor megism´etelhet˝o. 4. Control Cursor: A felhaszn´al´o bekapcsolhatja az EOG alap´ u kurzorvez´erl´est. Bekapcsolt esetben a kurzor a k´eperny˝on a felhaszn´al´o tekintet´eb˝ol kinyert vez´erl˝ojelek alapj´an mozog. Csak akkor haszn´alhat´o, ha a legut´obbi kalibr´aci´o sikeresen lefutott. A kurzorvez´erl´es kikapcsol´asa a billenty˝ uzet egy tetsz˝oleges billenty˝ uj´enek lenyom´as´aval lehets´eges.
3.1.7.
Hardver ´ es szoftverk¨ ovetelm´ enyek
• min. 1000 Mhz CPU • min. 512 Mb RAM • min. 250 Mb memory • Windows XP • .Net Framework 2.0 • Matlab Component Runtime v7.6
3.2.
Statikus modell
A statikus modell szerkezeti szempontb´ol elemzi a rendszert. A k¨ovetkez˝o k´erd´esekre ad v´alaszt: milyen egys´egekb˝ol ´ep¨ ul fel a rendszer, mi ezeknek az egys´egeknek a feladata, illetve milyen kapcsolatban vannak egym´assal a megold´as el´er´es´enek
3.2 Statikus modell
23
az ´erdek´eben. [12] Az 3.2 ´abr´an l´athat´o a rendszer oszt´alydiagramja (Class diagram). A rendszerhez egy oszt´alydiagram tartozik, amely a rendszer eg´esz idej´ere jellemz˝o.
3.2. ´abra. A rendszer oszt´aly diagramja
3.2.1.
Oszt´ alyok
3.2.1.1.
Eog Mouse System
Az Eog Mouse System oszt´aly tekinthet˝o a rendszer k¨ozponti oszt´aly´anak, kapcsolatban ´all a rendszer ¨osszes t¨obbi oszt´aly´aval. Az oszt´alyb´ol egyetlen p´eld´any k´esz¨ ul. A rendszer k¨ozponti vez´erl´est alkalmaz, ebb˝ol az oszt´alyb´ol indul ki az ¨osszes vez´erl´esi utas´ıt´as. Ez az oszt´aly foglalja egys´egbe az eg´esz rendszert, ´es
3.2 Statikus modell
24
nagym´ert´ekben felel˝os a program helyes m˝ uk¨od´es´e´ert. Ez az oszt´aly val´os´ıtja meg a program els˝odleges felhaszn´al´oi fel¨ ulet´et. 3.2.1.2.
Hardware Settings
A Hardware Settings oszt´aly szerepe a hardver be´all´ıt´asok t´arol´asa, illetve a be´all´ıt´asok megv´altoztat´as´ahoz sz¨ uks´eges, k´enyelmes felhaszn´al´oi fel¨ ulet biztos´ıt´asa. Az oszt´alyb´ol egyetlen p´eld´any k´esz¨ ul. A be´all´ıt´asok megv´altoztat´asa az ´eppen aktu´alis kalibr´aci´ot ´erv´enytelen´ıti. A hardver param´eterek ismerete (pl. a k´eperny˝o m´erete, felbont´asa ´es t´avols´aga) n´elk¨ ul¨ozhetetlen azon folyamat sor´an, amikor a rendszer a tekintet horizont´alis ´es vertik´alis sz¨og´eb˝ol meghat´arozza a tekintet x ´es y koordin´at´aj´at a c´elk´eperny˝on. 3.2.1.3.
I/O Settings
Az I/O Settings oszt´aly szerepe az Input ´es Output be´all´ıt´asok t´arol´asa, illetve a be´all´ıt´asok megv´altoztat´as´ahoz sz¨ uks´eges felhaszn´al´oi fel¨ ulet biztos´ıt´asa. A oszt´alyb´ol egyetlen p´eld´any k´esz¨ ul. Ez az oszt´aly t´arolja p´eld´aul a bej¨ov˝o EOG adat szerver´enek IP c´ım´et, vagy a kalibr´aci´o sor´an, a markerek k¨ uld´es´ere haszn´alt port c´ım´et. 3.2.1.4.
Eog Data
Absztrakt oszt´aly, szerepe a bej¨ov˝o csatorn´ak EOG adatainak t´arol´asa. K´et oszt´aly sz´armaztathat´o bel˝ole: Calibration Data ´es a General Input Data oszt´aly. 3.2.1.5.
Calibration Data
A Calibration Data oszt´aly az Eog Data oszt´aly egyik megval´os´ıt´asa. Egyszerre egyetlen p´eld´any l´etezik bel˝ole, ami a kalibr´aci´o kezdetekor j¨on l´etre. Feladata a kalibr´aci´o alatt m´ert EOG jelek ´es a k¨ ul¨onb¨oz˝o m´er´esi param´eterek t´arol´asa, mint pl. a bej¨ov˝o csatorn´ak sz´ama, neve, m´ert´ekegys´ege, illetve az alkalmazott mintav´etelez´esi frekvencia. A Calibration Data ´es a Calibration Sequence oszt´aly p´eld´anyainak attrib´ utumai alapj´an sz´amolja ki a rendszer a felhaszn´al´o egyedi param´etereit (User Characteristics).
3.2 Statikus modell
3.2.1.6.
25
General Input Data
A General Input Data oszt´aly az absztrakt Eog Data oszt´aly egyik implement´aci´oja. Feladata a kurzor mozgat´asi f´azis sor´an a bej¨ov˝o EOG adatok t´arol´asa. A rendszer az oszt´aly p´eld´any´anak attrib´ utumait dolgozza fel a felhaszn´al´o pillanatnyi tekintet´enek meghat´aroz´as´ara ´es a kurzor megfelel˝o helyre t¨ort´en˝o mozgat´as´ara. 3.2.1.7.
Noise Filter
A Noise Filter oszt´aly tartalmazza az adatok feldolgoz´as´an´al haszn´alt sz˝ ur´esi algoritmust. Feladata a bej¨ov˝o zajjal terhelt adatok sz˝ ur´ese a pontosabb feldolgoz´as ´erdek´eben. Egy p´eld´any l´etezhet bel˝ole, hiszen a kalibr´aci´o ´es a kurzor mozgat´as sor´an ugyanazt a sz˝ ur´est kell alkalmazni. A Calibraton Data ´es a General Input Data oszt´alyok p´eld´anyaiban t´arolt EOG regisztr´atumokon v´egez sz˝ ur´est. 3.2.1.8.
Cursor
A Cursor oszt´aly reprezent´alja a k´eperny˝on megjelen˝o eg´ermutat´ot. A rendszer ezt a mutat´ot mozgatja az EOG jelek alapj´an. 3.2.1.9.
Calibration Sequence
A Calibration Sequence oszt´aly p´eld´anya tartalmazza a kalibr´aci´o sor´an, a felhaszn´al´onak vet´ıtett ¨osszes stimulust (Stimulus oszt´aly). A stimulusok meghat´arozott id˝ok¨oz¨onk´ent ´es sorrendben jelennek meg a k´eperny˝on. 3.2.1.10.
Stimulus
A Stimulus oszt´aly p´eld´anya egyetlen stimulust reprezent´al, ami a kalibr´aci´o alatt, a k´eperny˝o egy meghat´arozott pontj´an, meghat´arozott ideig l´athat´o kereszt vagy m´as szimb´olum. Az oszt´alyb´ol hat´arozatlan sz´am´ u p´eld´any k´esz¨ ulhet, amik a Calibration Sequence oszt´aly p´eld´any´aban vannak meghat´arozott sorrendben t´arolva. A stimulusok tartalmazz´ak a megjelen´ıt´es¨ uk x ´es y koordin´at´aj´at, valamint a megjelen´ıtend˝o szimb´olumot. A stimulusok tartalmazz´ak az EOG-t felvev˝o k´esz¨ ul´eknek, a felvillan´as pillanat´aban a kimeneti porton k¨ uldend˝o k´odot (azaz a markereket) is. A felvett adatokb´ol ´es a markereket tartalmaz´o f´ajlb´ol
3.3 Dinamikus modell
26
a rendszer meg tudja ´allap´ıtani az EOG jelekben a stimulusok felvillan´as´anak, illetve elt˝ un´es´enek pontos hely´et. Ezt az inform´aci´ot felhaszn´alva a rendszer meg tudja ´allap´ıtani a felhaszn´al´o egyedi karakterisztik´ait (User Characteristics). 3.2.1.11.
User Characteristics
A User Characteristics oszt´aly p´eld´any´anak szerepe a felhaszn´al´on m´ert EOG egyedi karakterisztik´aj´anak t´arol´asa. Az oszt´alynak egyszerre egyetlen p´eld´anya l´etezhet, ami a kalibr´aci´o utols´o f´azis´aban j¨on l´etre ´es kap ´ert´ekeket. A t´arolt karakterisztik´at a rendszer a kurzor mozgat´as f´azis´aban haszn´alja, az EOG csatorn´akon m´ert potenci´alb´ol a felhaszn´al´o tekintet´enek horizont´alis ´es vertik´alis sz¨ogeinek meghat´aroz´as´ara.
3.3.
Dinamikus modell
A rendszert dinamikus szempontb´ol vizsg´alva arra keress¨ uk a v´alaszt, hogy a rendszer egyes r´eszegys´egei hogyan viselkednek a probl´ema megold´asa sor´an. Az egys´egek milyen ´allapotokat vesznek fel, milyen esem´enyek hat´as´ara v´altozik az a´llapotuk, milyen a k¨oz¨ott¨ uk l´ev˝o egy¨ uttm˝ uk¨od´es mechanizmusa ´es id˝oben hogyan j´atsz´odnak le k¨oz¨ott¨ uk az u ¨zenetek. [12] Az oszt´alyok dinamikus viselked´es´et a probl´ema megold´asa sor´an az ´allapotdiagram ´ırja le, ami egy ´allapotautomat´at ´abr´azol. A 3.3 ´abr´an l´athat´o a rendszer ´allapot diagramja.
3.3.1.
A rendszer ´ allapot diagramja ´ es ´ allapotai
A rendszer ´allapot diagramja a 3.3 ´abr´an l´athat´o. A kezdeti ´allapotb´ol a rendszer a StartupWindow ´allapotba ker¨ ul, majd v´arakozik a felhaszn´al´ot´ol ´erkez˝o parancsra, ami p´eld´aul a felhaszn´al´oi fel¨ ulet egy gombj´anak megnyom´as´at jelenti. Az a´llapot´atmenetek nevei a jelent´es¨ uket pr´ob´alj´ak t¨ ukr¨ozni, ennek ´erdek´eben n´eh´any elnevez´esi szab´alyt alkalmaz az ´abra. A ”btn” prefix a lehets´eges esem´enyek nevei elej´en az angol ”button” sz´ob´ol ered ´es gombot jelent. A ” Click” postfix pedig az eg´erkattint´as ´altal kiv´altott esem´enyt jel¨oli, azaz p´eld´aul a ”btnQuit Click()” esem´eny jelent´ese, hogy a felhaszn´al´o a ”Quit” gombra kattintott.
3.3 Dinamikus modell
3.3. ´abra. A rendszer ´allapot diagramja
27
3.3 Dinamikus modell
28
A pre- ´es postfix n´elk¨ uli esem´enyeket nem a felhaszn´al´o v´altja ki, hanem a rendszeren bel¨ ulr˝ol ´erkeznek, kiv´eve a ”KeyDown” esem´enyt, aminek a jelent´ese a billenty˝ uzet egy tetsz˝oleges billenty˝ uj´enek le¨ ut´ese. 3.3.1.1.
StartupWindow
A rendszer az elind´ıt´as ut´an a StartupWindow ´allapotban v´arakozik ´es az els˝odleges grafikus kezel˝ofel¨ uletet mutatja a felhaszn´al´o fel´e. Ebb˝ol az ´allapotb´ol a rendszer csak felhaszn´al´oi input hat´as´ara tud tov´abbl´epni. 3.3.1.2.
ConfigureHardware
A ConfigureHardware ´allapotba l´epve, a hardver param´eterek be´all´ıt´asa lehets´eges, ´es innen csak ism´et a StartupWindow ´allapotba lehet tov´abbjutni, mivel a hardver param´eterek megv´altoz´asa eset´en t¨obbek k¨oz¨ott a rendszer kalibr´aci´oj´at is meg kell ism´etelni. 3.3.1.3.
ConfigureIO
A ConfigureIO ´allapotban a felhaszn´al´o konfigur´alhatja a rendszer Input ´es Output interf´eszeit. A legfontosabb ´allapotok (Calibration ´es ControlCursor) csak ebb˝ol az ´allapotb´ol tov´abbl´epve (az IOSettingsOK ´allapoton kereszt¨ ul) ´erhet˝ok el. Ez biztos´ıtja, hogy a rendszer be- ´es kimeneti interf´eszei helyesen legyenek be´all´ıtva a kalibr´aci´o, vagy a kurzor mozgat´as kezdete el˝ott. 3.3.1.4.
IOSettingsOK
A ConfigureIO ´allapotb´ol juthat ide a rendszer, azonban csak az Input ´es Output interf´eszek helyes be´all´ıt´asa ut´an. Ez jelentheti p´eld´aul azt, hogy a rendszer sikeresen csatlakozott az EOG jeleket k¨ uld˝o szerverhez. 3.3.1.5.
Calibration
A Calibration ´allapot, azaz a kalibr´aci´o az IOSettingsOK ´allapotb´ol ´erhet˝o el a ”Calibration” gombra kattintva. Ez az ´allapot egy ¨osszevont ´allapot, azaz a rendszer kalibr´aci´oja t¨obb kisebb ´allapotra bonthat´o. A Calibration ´allapot r´eszletes kifejt´ese az 3.4 ´abr´an l´athat´o.
3.3 Dinamikus modell
3.4. ´abra. A Calibraton ´allapot r´eszletes kifejt´ese
29
3.3 Dinamikus modell
30
A kalibr´aci´o 5 alapl´ep´ese a k¨ovetkez˝o: 1. Csatlakoz´as az EOG jeleket szolg´altat´o szerverhez 2. A stimulusok prezent´al´asa, a markerek k¨ uld´ese a recorder fel´e ´es az ez id˝o alatt kapott eog jelek felvev´etele 3. Az ¨osszes adat ment´ese 4. Az adatok sz˝ ur´ese ´es feldolgoz´asa 5. A felhaszn´al´o egyedi param´etereinek meghat´aroz´asa A rendszer csak sikeres kalibr´aci´o eset´en l´ephet tov´abb a CalibrationDone ´allapotba, ez biztos´ıtja, hogy m´eg a kurzor vez´erl´ese el˝ott megt¨ort´enik a kalibr´al´as. Hiba eset´en a rendszer visszaker¨ ul (a CalibrationError ´allapoton kereszt¨ ul) az IOSettingsOK ´allapotba, mik¨ozben t´aj´ekoztatja a felhaszn´al´ot a hiba lehets´eges okair´ol. 3.3.1.6.
ControlCursor
A ControlCursor ´allapot jelenti azt, amikor a felhaszn´al´o a tekintet´evel vez´erli a kurzort a k´eperny˝on. Az ´allapot r´eszletes kifejt´ese a 3.5 ´abr´an l´athat´o. Ebbe az ´allapotba a rendszer csak sikeres interf´esz konfigur´aci´o ´es kalibr´aci´o ut´an juthat el. A rendszer hiba, vagy a billenty˝ uzet tetsz˝oleges gombj´anak megnyom´asa eset´en le´all´ıtja az EOG alap´ u kurzorvez´erl´est, ´es visszat´er CalibrationDone ´allapotba, illetve t´aj´ekoztatja a felhaszn´al´ot a hiba lehets´eges okair´ol.
3.3 Dinamikus modell
3.5. ´abra. A ControlCursor ´allapot r´eszletes kifejt´ese
31
4. fejezet M´ er´ esek ´ es m´ er˝ oeszk¨ oz¨ ok A rendszer tesztel´ese ´es az off-line szimul´aci´ok adatainak gy˝ ujt´ese ´erdek´eben sz´amos m´er´es t¨ort´ent. Az elektro-okulogram m´er´esek a P´azm´any P´eter Katolikus Egyetem Inform´aci´os Technol´ogiai kar´anak L´at´askutat´o Laborat´orium´aban k´esz¨ ultek. A m´er´esek a labor EEG-m´er˝o k´esz¨ ul´ek´evel t¨ort´entek, hiszen az EEGm´er´es ´es az EOG-m´er´es is a b˝orfelsz´ıni potenci´alokat m´eri, csak a fej k¨ ul¨onb¨oz˝o ter¨ uletein. A m´er´es sor´an felhaszn´alt legfontosabb eszk¨oz¨oket ´es az eszk¨oz¨ok k¨oz¨otti kommunik´aci´ot a 4.1 ´abra szeml´elteti. A k¨ovetkez˝o fejezetek r´eszletesen t´argyalj´ak, a felhaszn´alt eszk¨oz¨oket, illetve a m´er´esek kivitelez´es´et, ´es a kapott eredm´enyeket.
4.0.2.
Elektr´ od´ ak
Az elektro-okulogram r¨ogz´ıt´ese ez¨ ust/ez¨ ust-klorid passz´ıv-elektr´od´akkal t¨ort´ent. Az elektr´od´akat a laborban rendszerint EEG m´er´esre haszn´alj´ak. A jelmin˝os´eg jav´ıt´asa ´erdek´eben az elektr´od´ak felhelyez´ese el˝ott a k´erd´eses b˝orfel¨ uletet meg kell tiszt´ıtani a szennyez˝od´esekt˝ol ´es az elhalt h´amsejtekt˝ol (p´eld´aul alkoholos vatt´aval), valamint az elektr´oda ´es a b˝or k¨oz´e egy speci´alis elektr´oda-g´elt kell felvinni. Az elektr´od´ak r¨ogz´ıt´ese a b˝orfelsz´ınen ragaszt´oszalaggal t¨ort´ent, ´ıgy nem cs´ uszhattak el a m´er´es alatt. Az alkalmazott elektr´od´ak ´es elektr´oda-g´el az 4.2 a´br´an l´athat´o. Az elektr´od´akkal regisztr´alhat´o EOG jelek hasznos inform´aci´o tartalma nagyban f¨ ugg az elektr´od´ak poz´ıci´oj´at´ol. Az ide´alis elektr´oda konfigur´aci´o meghat´aroz´asa ´erdek´eben 3 f´ele konfigur´aci´oval is t¨ort´entek m´er´esek . Az eog-t m´er˝o
32
33
4.1. ´abra. A rendszer fel´ep´ıt´ese
4.2. ´abra. A felhaszn´alt elektr´od´ak, elektr´oda-g´el ´es alkohol a b˝orfel¨ ulet megtiszt´ıt´as´ahoz
34
elektr´od´akon k´ıv¨ ul egy referencia- ´es egy f¨old-elektr´od´ara is sz¨ uks´eg van. A referencia elektr´oda helye ´altal´aban a homlok k¨ozepe, a f¨old´e pedig a bal f¨ ulcimpa. A referencia ´es a f¨old-elektr´oda mindh´arom tesztelt konfigur´aci´o eset´en azonos helyen volt. 4.0.2.1.
I. Konfigur´ aci´ o
A m´er´es n´egy darab elektr´od´aval t¨ort´ent. Az elektr´od´ak poz´ıci´oj´at a fejen a 4.3 ´abra szeml´elteti. A horizont´alis szemmozg´as az ´abr´an l´athat´o HR(Horizontal Right) ´es HL(Horizontal Left) elektr´oda jel´eb˝ol, a vertik´alis szemmozg´as pedig a VL1 ´es VL2 elektr´oda-p´ar jel´eb˝ol hat´arozhat´o meg.
4.3. ´abra. Az elektr´od´ak poz´ıci´oja a fejen, I. konfigur´aci´o
Ezt a konfigur´aci´ot alkalmaztam els˝o m´er´eseim sor´an, ´es hasonl´ot haszn´alt munk´aja sor´an pl. [2], [14], [15], [16], [17]. Az ´altalam ezzel a konfigur´aci´oval v´egzett m´er´esek sor´an kapott eredm´enyek els˝o r´an´ez´esre igen b´ıztat´onak t˝ untek. A HR ´es HL csatorna jele elegend˝onek bizonyult a tekintet horizont´alis ir´anysz¨og´enek meghat´aroz´as´ahoz, ez´ert ezek helye a tov´abbi k´et konfigur´aci´o eset´en sem v´altozott. Elfogadhat´o vertik´alis pontoss´agot azonban nem siker¨ ult el´ernem puszt´an a VL1 ´es VL2 csatorna jel´eb˝ol.
35
4.0.2.2.
II. Konfigur´ aci´ o
A m´er´es hat elektr´od´aval t¨ort´ent. Ez a konfigur´aci´o gyakorlatilag az I. konfigur´aci´o kib˝ov´ıt´ese a vertik´alis pontoss´ag n¨ovel´ese ´erdek´eben, azaz mindk´et szem alatt ´es f¨ol¨ott is voltak elektr´od´ak. Az elektr´od´ak poz´ıci´oj´at a fejen az 4.4 ´abra szeml´elteti.
4.4. ´abra. Az elektr´od´ak poz´ıci´oja a fejen, II. konfigur´aci´o
A csatorn´ak sz´am´anak megdupl´az´asa jelent˝osen n¨ovelte az el´erhet˝o maxim´alis vertik´alis pontoss´agot. A VL1,VL2,VR1 ´es VR2 csatorna jele m´ar elegend˝onek bizonyult a tekintet vertik´alis ir´any´anak meghat´aroz´as´ahoz, ´ıgy erre a konfigur´aci´ora alapult rendszer tov´abbi fejleszt´ese. 4.0.2.3.
III. Konfigur´ aci´ o
A m´er´es nyolc elektr´od´aval t¨ort´ent. A c´el itt is a vertik´alis pontoss´ag n¨ovel´ese volt. A szemek felett k´et-k´et elektr´oda volt elhelyezve, azonban ezek k¨oz¨ ul egyik sem esett egybe a szem alatti elektr´oda valamint az egyenesen n´ez˝o szem pupill´aja a´ltal alkotott f¨ ugg˝oleges egyenessel. Az elektr´od´ak poz´ıci´oj´at a fejen a 4.5 ´abra szeml´elteti. A III. konfigur´aci´oval kapott m´er´esi eredm´enyek alapj´an nem siker¨ ult megfelel˝o pontoss´aggal meghat´arozni a tekintet vertik´alis ir´any´at. A m´er´esek azonban
36
4.5. ´abra. Az elektr´od´ak poz´ıci´oja a fejen, III. konfigur´aci´o
bebizony´ıtott´ak azt hipot´ezist, miszerint nemcsak az elektr´od´ak sz´ama fontos, hanem az is, hogy egybe essenek a horizont´alis ´es vertik´alis tengellyel.
4.0.3.
Er˝ os´ıt˝ ok
A jelek er˝os´ıt´ese BrainVision Brainamp MR t´ıpus´ u er˝os´ıt˝okkel t¨ort´ent. Az er˝os´ıt˝ok a 4.6 ´abr´an l´athat´ok. F˝obb param´etereik a k¨ovetkez˝ok: • Csatorn´ak sz´ama: 32-128 • Bemeneti impedancia: 10 MOhm • Bemeneti zaj: 1.5 ˇlVpp • Common mode rejection: 90 dB • Jeltartom´any: +/- 16mV p.p./500nV res. • Trigger input: 16 bit
37
4.6. ´abra. A m´er´esn´el haszn´alt er˝os´ıt˝ok
4.0.4.
Recorder PC
A Recorder nev˝ u g´ep szolg´al a m´er´esi adatok gy˝ ujt´es´ere, illetve a feldolgoz´o PC fel´e TCP/IP-n t¨ort´en˝o tov´abb´ıt´as´ara. A Recorder laptopon, a Brain Vision Recorder szoftver Remote Data Access Server (RDA) nev˝ u adatszervere teszi lehet˝ov´e, hogy a m´er´es folyam´an TCP/IP-n kereszt¨ ul ak´ar t´ız kliens is csatlakozhasson, ´es val´os id˝oben megkapja az ´eppen aktu´alis m´ert adatokat. A Recorder g´epen adatfeldolgoz´as nem t¨ort´enik, az adatok nyers form´aban tov´abb´ıt´odnak az RDA-klienst futtat´o Analyzer PC-re. A Recorder g´ep p´arhuzamos porton kereszt¨ ul kapja a kalibr´aci´ohoz sz¨ uks´eges markereket a stimulust prezent´al´o PC-t˝ol, ami ez esetben megegyezik az adatok analiz´al´as´at v´egz˝o g´eppel (Analyzer). A Recorder program a kapott markereket hozz´acsatolja az ´eppen regisztr´alt adatokhoz, ´es egy¨ utt k¨ uldi vissza a feldolgoz´ast v´egz˝o g´epnek.
4.0.5.
Analyzer PC
Az Analyzer elnevez´es˝ u g´ep feladata a nyers EOG adatok feldolgoz´asa, illetve a kalibr´aci´os elj´ar´ashoz sz¨ uks´eges stimulusok prezent´al´asa a c´elk´eperny˝on. A m´er´esek sor´an egy PC l´atta el ezt a feladatot a k¨ovetkez˝o param´eterekkel: 2.0Ghz Intel Celeron CPU, 768Mb RAM, 80Gb Hdd. A feldolgoz´o PC-n az EogMouse nev˝ u, a diplomamunka keret´eben fejlesztett szoftver futott. A szoftver feladata a kalibr´aci´ohoz sz¨ uks´eges stimulusok prezent´al´asa a c´elk´eperny˝on, a megfelel˝o markerek tov´abb´ıt´asa a Recorder fel´e, a regisztr´alt adatokb´ol a rendszer kalibr´al´asa ´es a kurzor EOG- alap´ u vez´erl´ese. A szoftver r´eszletes le´ır´as´at az 5. fejezet t´argyalja.
38
4.0.6.
C´ elk´ eperny˝ o
A c´elk´eperny˝o az Analyzer PC-vel van ¨osszek¨otve. A felhaszn´al´onak, akin az EOG m´er´esek k´esz¨ ulnek, ezt a k´eperny˝ot kell figyelnie a rendszer haszn´alata k¨ozben. Ezen a k´eperny˝on jelennek meg a kalibr´aci´ohoz haszn´alt vizu´alis c´elpontok. A m´er´esek sor´an haszn´alt k´eperny˝o m´eretei: • sz´eless´eg: 38 cm • magass´ag: 29 cm • t´avols´ag: 48-52 cm (A felhaszn´al´ot´ol f¨ ugg) A k´eperny˝o ´es a felhaszn´al´o feje k¨oz¨otti t´avols´ag a kalibr´aci´o ´es a m´er´es alatt nem v´altozhat. Ha a felhaszn´al´o feje elmozdul, a rendszert u ´jra kell kalibr´alni. A fejpoz´ıci´o stabiliz´al´asa egy egyszer˝ u fejt´amasz seg´ıts´eg´evel t¨ort´ent.
4.0.7.
A m´ er´ es kivitelez´ ese
1. A m´er´es els˝o l´ep´ese az elektr´od´ak felhelyez´ese a felhaszn´al´o fejb˝or´ere az el˝ore meghat´arozott pontokra (l´asd:4.4 ´abra). A felhelyez´es el˝ott a kijel¨olt helyeket alkoholos vatt´aval meg kell tiszt´ıtani a szennyez˝od´esekt˝ol. Az elektr´odag´el mennyis´ege ´es min˝os´ege is nagyban befoly´asolja az impedanci´at. Az impedancia ´ert´ek elfogadhat´onak mondhat´o, ha 5kΩ alatt van. Az elektr´od´ak megfelel˝o felhelyez´ese igen sok tapasztalatot ´es k´ez¨ ugyess´eget k´ıv´an, ´ıgy a m´er´es idej´enek jelent˝os r´esz´et teheti ki. Gyakori, hogy els˝ore nem siker¨ ul megfelel˝oen felhelyezni az elektr´od´at, ekkor az u ´jratapaszt´as el˝ott a b˝ort ´es az elektr´od´at ism´et meg kell tiszt´ıtani. Tapasztalataink szerint 5kΩ impedancia al´a is le lehet menni, ami m´ar nagyon j´onak sz´am´ıt, de ez nagyban f¨ ugg az alanyt´ol is. A m´er´esek 500Hz-es mintav´eteli frekvenci´aval t¨ort´entek, 0,5µV-os felbont´assal, az ¨osszes csatorn´an. 2. A m´asodik l´ep´es az elektr´od´ak ´es az er˝os´ıt˝o, valamint az er˝os´ıt˝o ´es a Recorder g´ep ¨osszek¨ot´ese. 3. A Recorder g´epen a Brain Vision Recorder program, illetve az RDA adatszerver elind´ıt´asa.
39
4. Az Analyzer PC-n az EogMouse program elind´ıt´asa. A programmal a megfelel˝o hardverbe´all´ıt´asok eset´en elv´egezhetj¨ uk a kalibr´aci´ot, amely alatt a felhaszn´al´onak a c´elk´eperny˝on megjelen˝o stimulusokra kell ir´any´ıtania a tekintet´et. Sikeres kalibr´aci´o ut´an bekapcsolhat´o az EOG alap´ u kurzor vez´erl´es. Az EogMouse szoftver minden kalibr´aci´os szekvencia ´es kurzorvez´erl´esi peri´odus ut´an elmenti a nyers m´er´esi adatokat ´es markereket egy arch´ıv k¨onyvt´arba, ´ıgy azok felhaszn´alhat´ok k´es˝obb off-line elemz´esre.
4.0.8.
A kalibr´ aci´ os szekvencia
Minden m´er´es kalibr´aci´oval indul. A kalibr´aci´os elj´ar´as c´elja a felhaszn´al´o egyedi param´etereinek meghat´aroz´asa, ´es a rendszer ezek alapj´an t¨ort´en˝o finom hangol´asa. Minden felhaszn´al´ocsere, iletve programind´ıt´as ut´an kalibr´alni kell a rendszert, s˝ot bizonyos id˝ok¨oz¨onk´ent sz¨ uks´eges lehet a kalibr´aci´o megism´etl´ese. A kalibr´aci´o sor´an a program a k¨ovetkez˝o l´ep´eseket hajtja v´egre: 1. A kalibr´aci´os szekvenci´aban meghat´arozott stimulusokat a megfelel˝o sorrendben ´es poz´ıci´oban kirajzolja a k´eperny˝ore, mik¨ozben a p´arhuzamos porton kereszt¨ ul a megfelel˝o markereket elk¨ uldi a Recorder g´epnek. 2. A felvett ´es markerekkel kieg´esz´ıtett EOG adatokon elv´egzi az 5. fejezetben t´argyalt jelfeldolgoz´asi elj´ar´asokat. 3. A feldolgozott jelekb˝ol meg´allap´ıtja ´es elt´arolja a felhaszn´al´onak a rendszer tov´abbi helyes m˝ uk¨od´ese szempontj´ab´ol fontos egyedi param´etereit. 4. A rendszer megbecs¨ uli a kalibr´aci´o min˝os´eg´et/sikeress´eg´et. A kalibr´aci´o sor´an m´ert ´es markerekkel kieg´esz´ıtett nyers adatokat egy arch´ıv k¨onyvt´arba menti. 4.0.8.1.
Stimulusok
A m´er´esek sor´an alkalmazott kalibr´aci´os szekvencia tervez´esi szempontja volt, hogy tetsz˝oleges m´eret˝ u c´elk´eperny˝o eset´en is hat´ekonyan lehessen elv´egezni a kalibr´aci´ot, ez´ert a c´elk´eperny˝on megjelen˝o stimulusok pontos helye a k´eperny˝o m´eret´et˝ol ´es t´avols´ag´at´ol f¨ ugg. A program a k´eperny˝o 13 meghat´arozott pontj´ara
40
vet´ıt stimulusokat 3 m´asodpercig, egyes´evel ´es meghat´arozott sorrendben. A stimulusok k¨oz´epsz¨ urke kereszt form´aj´aban jelennek meg a k´eperny˝on. A 4.7 ´abr´an l´athat´o egy p´elda stimulusok eloszt´as´ara a k´eperny˝on. Az ´abra csak a stimulusok hely´et illusztr´alja, a val´os kalibr´aci´o sor´an term´eszetesen egyszerre csak egy darab c´elpont l´atszik.
4.7. ´abra. A kalibr´aci´os stimulusok elhelyezked´ese
A program a stimulusok hely´et az al´abbi algoritmus alapj´an sz´amolja ki: 1. l´ep´es: A k´eperny˝o k¨oz´eppontj´anak kisz´am´ıt´asa (4.7 ´abra: A). 2. l´ep´es: A sz´els˝o stimulusok kisz´am´ıt´asa A c´elk´eperny˝o t´avols´aga, sz´eless´ege, magass´aga ´es felbont´asa alapj´an kisz´am´ıtja a tekintetnek a k´eperny˝o k¨oz´eppontj´at´ol sz´am´ıtott (horizont´alis ´es vertik´alis) maxim´alis elfordul´asi sz¨ogeinek megfelel˝o pontjait, amik m´eg a
41
k´eperny˝on bel¨ ulre esnek ´es 1◦ eg´essz´am´ u t¨obbsz¨or¨osei. A stimulus helye a k¨oz´epponthoz 1◦ -nak megfelel˝o t´avols´aggal k¨ozelebb lesz kijel¨olve, mivel ´ıgy megel˝ozhet˝o az az eset, amikor eg´eszen a k´eperny˝o sz´el´ere ker¨ ul ´es csak a fele l´atszik. Azaz, ha p´eld´aul a k¨oz´eppontr´ol a k´eperny˝o bal sz´el´ere t¨ort´en˝o tekint´es, a felhaszn´al´o szem´enek 20◦ -os elfordul´as´at jelenten´e, akkor a 4.7 ´abr´an B-vel jel¨olt stimulus pontosan 19◦ -n´al fog megjelenni. 3. l´ep´es: A k¨ozb¨ uls˝o stimulusok kisz´am´ıt´asa pl: 4.7 ´abra: C) A k¨ozb¨ uls˝o c´elpontok a k¨oz´eppont ´es a sz´els˝o c´elpontok k¨oz¨otti szakasz fel´en´el fognak megjelenni, ha a sz´els˝o pont p´aros sz¨og˝ u, p´aratlan esetben a k¨oz´epponthoz egy fokkal k¨ozelebbi helyen. 4.0.8.2.
Markerek
A program a stimulusok felvillan´asa pillanat´aban a stimulusra jellemz˝o markert k¨ uld az adatokat r¨ogz´ıt˝o g´epnek, ami azt az adatf´ajlhoz kapcsolja ´es ´ıgy a felv´etelben k´es˝obb azonos´ıtani lehet azt az id˝opillanatot, amikor a stimulus megjelent a c´elk´eperny˝on. A program a sz´am´ıt´og´ep p´arhuzamos portj´an kereszt¨ ul k¨ uldi a markereket (l´asd: 4.1 ´abra). A program k´et darab 0 ´es 255 k¨oz¨otti sz´amot k¨ uld egym´as ut´an. Az els˝o sz´am k´odolja a stimulus horizont´alis, a m´asodik pedig vertik´alis elhelyezked´es´et. A k´odol´ast a k¨ovetkez˝o k´eplet alapj´an v´egzi: • Horizont´alis sz¨og (az els˝o sz´am): S= α +50 • Vertik´alis sz¨og (a m´asodik sz´am): S= α +150 ahol S: a p´arhuzamos porton k¨ uld¨ott sz´am ´es α: a k¨oz´epponthoz viszony´ıtott elfordul´asi sz¨og. ´Igy p´eld´aul a k¨oz´eppont, azaz a 0◦ ,0◦ eset´en 50 ´es 150 lesz a k´et elk¨ uld¨ott marker. A negat´ıv sz¨ogek balra illetve felfel´e ´ertend˝ok. Az egyszer˝ ubb k´odol´as miatt volt sz¨ uks´eg teh´at arra, hogy a stimulusok olyan helyeken jelenjenek meg, amik 1◦ eg´essz´am´ u t¨obbsz¨or¨osei. Ez a m´odszer egyben azt is jelenti, hogy mind horizont´alisan, mind vertik´alisan maximum ± 50◦ kit´er´es megengedett, de ez nem probl´ema, hiszen az EOG viselked´ese csak a kb. ± 30◦ -ig terjed˝o tartom´anyban tekinthet˝o line´arisnak [9].
42
4.0.9.
Valid´ aci´ o
A m´ert eredm´enyek statisztikai anal´ızis´ehez ”´erv´enyes” adatok kellenek. Sz¨ uks´eg van teh´at egy olyan eszk¨ozre, amely az EOG jelekt˝ol f¨ uggetlen¨ ul meg tudja mondani, hogy a szem elfordul´asa milyen tekint´esi ir´anyt eredm´enyez. Az IVIEWX egy speci´alis program ´es optikai-informatikai eszk¨oz, melyet arra fejlesztettek ki, hogy fix fej-poz´ıci´o mellett optikailag meg´allap´ıtsa adott pontoss´aggal, hogy a vizsg´alt szem´ely az el˝otte elhelyezked˝o monitoron hova n´ez. A rendszer a korne´alis reflexi´o technik´at alkalmazza (l´asd: 2.2.3 fejezet). Az eszk¨oz klinikai ´es kutat´asi c´elokra is alkalmas. A rendszer egy kamer´ab´ol, egy f´enyforr´asb´ol ´es egy fejt´amaszb´ol ´all. Az alany szeme el˝ott egy ´atl´atsz´o u ¨veg helyezkedik el, ami megt¨ori az infrasugarakat, amelyeknek a visszaver˝od´es´et egy, a megvil´ag´ıt´as mellett elhelyezett kamera r¨ogz´ıt. A kamera ´ıgy eg´eszen k¨ozeli felv´etelt k´esz´ıt a szemgoly´or´ol, amit tov´abb´ıt az ”Oper´ator”-nak. K´epfeldolgoz´asi elj´ar´assal a program megkeresi a pupilla ´es korne´alis reflexi´o pontj´anak v´ızszintes ´es f¨ ugg˝oleges szimmetriatengely´et, ´es ezzel egy¨ utt a k¨oz´eppontj´at. A k´et k¨oz´eppont elhelyezked´es´eb˝ol egy kalibr´aci´o ut´an meg´allap´ıtja az adott t´avols´agra elhelyezett k´eperny˝on bel¨ ul, hogy az alany ´eppen hova n´ez. A m´er´esek alatt teh´at nemcsak az EOG jelek, hanem az IView-X program ´altal becs¨ ult koordin´at´ak is el lettek mentve. Ezek alapj´an az adatok feldolgoz´as´an´al ki lehet sz˝ urni azokat a kalibr´aci´os felv´eteleket, amelyek sor´an az alany val´oj´aban nem a stimulusokat figyelte, illetve ¨ossze lehet hasonl´ıtani az IView-X ´es a saj´at EogMouse program ´altal becs¨ ult koordin´at´akat. A komplett (valid´aci´oval kieg´esz´ıtett) m´er˝orendszert, ´es a legfontosabb felhaszn´alt eszk¨oz¨oket a 4.9 ´abra szeml´elteti.
43
4.8. ´abra. Az IView-X szoftver felhaszn´al´oi fel¨ ulete
4.9. ´abra. Az EOG m´er´eshez ´es a valid´aci´ohoz felhaszn´alt eszk¨oz¨ok
5. fejezet Jelfeldolgoz´ as A bioelektromos jelek ´altal´aban t¨obb k¨ ul¨onb¨oz˝o forr´asb´ol sz´armaz´o inform´aci´ot is tartalmaznak. A mi eset¨ ukben a regisztr´alt EOG jelnek csak az az ¨osszetev˝oje fontos, aminek a forr´asa a szem, illetve a tekintet elfordul´asa. Ennek szepar´al´asa ´erdek´eben, az interferenci´akat ´es zajokat ki kell sz˝ urni a jelb˝ol. Ez a fejezet t´argyalja r´eszletesen a kalibr´aci´os m´er´esek alkalm´aval felvett adatok alapvet˝o tulajdons´agait, illetve a tekintet koordin´at´ainak meghat´aroz´asa ´erdek´eben alkalmazott jelfeldolgoz´asi elj´ar´asokat.
5.1.
A m´ er´ esek sor´ an nyert adatok ´ altal´ anos jellemz˝ oi
A m´er´esek sor´an kapott adatokb´ol meg´allap´ıthat´o az elektro-okulogram n´eh´any jellegzetes tulajdons´aga. Az 5.1 ´es 5.2 ´abr´an l´athat´o az egyik kalibr´aci´os szekvencia alatt felvett 6 db csatorna k¨oz¨ ul a HR,HL,VR1 ´es VL1 csatorna adata. A hasznos EOG jelen k´ıv¨ ul ezek a nyers adatok m´eg a k¨ovetkez˝o komponenseket tartalmazz´ak: • Magasfrekvenci´aj´ u zaj • Drift • Cross-talk • Pislog´as
44
5.1 A m´ er´ esek sor´ an nyert adatok ´ altal´ anos jellemz˝ oi
5.1. ´abra. A HR ´es HL csatorna jele
5.2. ´abra. A VR1 ´es VL1 csatorna jele
45
5.1 A m´ er´ esek sor´ an nyert adatok ´ altal´ anos jellemz˝ oi
46
• Egy´eb artefaktok A nyers adatokon v´egzett jelfeldolgoz´asi elj´ar´asok c´elja a fent felsorolt zajok min´el hat´ekonyabb kisz˝ ur´ese ´es az EOG jel kiemel´ese.
5.1.1.
Magasfrekvenci´ aj´ u zaj
A nyers EOG regisztr´atum magasfrekvenci´aj´ u zajjal terhelt, melyek nagy r´esze a k¨ornyezet elektromos berendez´eseib˝ol ered. A 5.3 ´abr´an a jel egy olyan szakasza l´athat´o, ahol az alany egy pontra fix´alta a tekintet´et, azaz a korneoretin´alis potenci´al elvileg nem v´altozik. Az EOG ´atlagos frekvencia tartom´anya kb. DC-100Hz-ig terjedhet [2], azonban a legt¨obb alkalmaz´asban egy kb. 35 Hz v´ag´asi frekvenci´aj´ u alul´atereszt˝o sz˝ ur˝ovel oldj´ak meg a magas frekvenci´aj´ u zajok sz˝ ur´es´et. Ezzel ugyan az EOG 35Hz feletti komponensei elvesznek, azonban sokat jav´ıt a jelmin˝os´egen hiszen kik¨ usz¨ob¨oli pl. az elektromos h´al´ozatb´ol ered˝o 50Hz frekvenci´aj´ u zajt is.
5.1.2.
Drift
Az EOG regisztr´atumban el˝ore nem megj´osolhat´o drift, azaz a korneo-retin´alis potenci´al lass´ u spont´an elk´ usz´asa is tapasztalhat´o. A driftet okozhatj´ak a m´er˝o berendez´esek ´es er˝os´ıt˝ok bels˝o zajai, illetve a szem u ´gynevezett s¨ot´et-adapt´aci´oja, de ugyanakkor spont´an is bek¨ovetkezhet. A drift kik¨ usz¨ob¨ol´ese a korneo-retin´alis potenci´al ´ert´eke alapj´an m˝ uk¨od˝o EOG elemz˝o rendszerek legnagyobb kih´ıv´asai k¨oz´e tartozik. A probl´em´at leggyakrabban egy kb. 0.1-0.5Hz v´ag´asi frekvenci´aj´ u fel¨ ul´atereszt˝o sz˝ ur˝ovel pr´ob´alj´ak enyh´ıteni [2] [13], azonban ez az EOG DC-jel´et is kisz˝ uri, azaz a m´ert potenci´al akkor is v´altozni fog, ha az alany egy pontra fix´alja tekintet´et. A m´asik lehet˝os´eg a drift sz˝ ur´es helyett a rendszer r¨ovidebb id˝ok¨oz¨onk´enti vagy felhaszn´al´oi parancsra t¨ort´en˝o u ´jrakalibr´al´asa.
5.1.3.
Cross-talk
A horizont´alis ´es vertik´alis csatorn´ak nem teljesen f¨ uggetlenek, cross-talk azaz ´athall´as van k¨oz¨ott¨ uk. Bizonyos m´ert´ekben a vertik´alis csatorn´akon is ´erz´ekelhet˝o a szemek horizont´alis kit´er´ese, illetve a horizont´alis csatorn´akon a vertik´alis kit´er´esek.
5.1 A m´ er´ esek sor´ an nyert adatok ´ altal´ anos jellemz˝ oi
5.3. ´abra. Magasfrekvenci´as zajjal terhelt EOG r´eszlet
47
5.1 A m´ er´ esek sor´ an nyert adatok ´ altal´ anos jellemz˝ oi
5.4. ´abra. Driftel˝o EOG r´eszlet
48
5.2 El˝ ofeldolgoz´ as
49
A cross-talk a vertik´alis csatorn´akat sokkal nagyobb m´ert´ekben zavarja, mint a horizont´alis csatorn´akat, ahol a hat´as elhanyagolhat´o.
5.1.4.
Pislog´ as
A pislog´as a szemh´ejakat mozgat´o izmok ´altal EMG (elektro-miogram) jelet produk´al, ami az EOG regisztr´atumban is megjelenik. A pislog´as rendszerint az ¨osszes (horizont´alis ´es vertik´alis) csatorn´an megjelenik, de a horizont´alis csatorn´akon ´altal´aban elhanyagolhat´o m´ert´ekben. A pislog´as ´altal gener´alt jel rendszerint igen j´ol detekt´alhat´o egyedi jellemz˝okkel rendelkezik, amplit´ ud´oja messze kimagaslik az EOG jelb˝ol (l´asd: 5.5 ´abra) . A pislog´ast egyes rendszerek zajnak tekintik ´es kisz˝ urik, m´asok felhaszn´alj´ak a vez´erl´esben pl. [13] [16]. Az akaratlagos ´es a reflexes pislog´ast meg lehet k¨ ul¨onb¨oztetni, az amplit´ ud´o illetve az id˝otartam alapj´an.
5.1.5.
Egy´ eb artefaktok
Az eddig felsorolt zajokon, ´es zavar´o hat´asokon k´ıv¨ ul m´as t´enyez˝ok is ronthatj´ak az EOG-jel min˝os´eg´et. Ezen artefaktok legt¨obbje fej k¨orny´eki izmok m˝ uk¨od´es´eb˝ol ered, p´eld´aul a r´ag´o ´es nyel˝o izmok fel˝ol ´es nagym´ert´ekben rontj´ak a jelet. Az izomm˝ uk¨od´esb˝ol ered˝o artefaktok azonban elker¨ ulhet˝ok, ha a m´er´es sor´an az alany mozdulatlanul tartja a fej´et.
5.2.
El˝ ofeldolgoz´ as
A tekintet hely´enek meghat´aroz´asa el˝ott, teh´at a jelen zajsz˝ ur´est kell v´egezni. A sz˝ ur´esi elj´ar´asok c´elja, hogy a megmaradt jelben min´el kevesebb legyen az olyan ¨osszetev˝o(l´asd el˝oz˝o fejezet), amelynek nincs k¨oze a tekintet ir´any´ahoz. A tervezett EogMouse programban ennek ´erdek´eben a k¨ovetkez˝o feldolgoz´asi l´ep´esek hajt´odnak v´egre: 1. Csatorn´ak ¨osszevon´asa 2. Sim´ıt´as 3. Pislog´as sz˝ ur´es
50
5.2 El˝ ofeldolgoz´ as
5.5. ´abra. Pislog´as a VR2 csatorn´an
5.2 El˝ ofeldolgoz´ as
5.2.1.
51
Csatorn´ ak ¨ osszevon´ asa
A horizont´alis ´es vertik´alis poz´ıci´o meghat´aroz´as´ahoz elvileg egyetlen szem, ´es k´et darab felhelyezett elektr´oda elegend˝o lenne (1 db a szem alatt v. f¨ol¨ott, ´es egy valamelyik oldal´an). A m´er´esek sor´an 6 elektr´od´at alkalmaztunk (l´asd: 4. fejezet). Ha az elektr´od´ak szimmetrikusan vannak felhelyezve, akkor a k´et horizont´alis csatorna jele elvileg egym´as konjug´altja, azaz ford´ıtott el˝ojel˝ u megfelel˝oje. Ez egyenesen k¨ovetkezik a szemgoly´o dipol tulajdons´ag´ab´ol, illetve abb´ol, hogy a k´et szem szinkronban mozog. Ugyanez a szem alatti ´es feletti vertik´alis csatorn´akra is igaz, b´ar kisebb m´ert´ekben, mert a szem¨old¨okcsont sokat csillap´ıt a jelen. Ezt a jelens´eget felhaszn´alva egy nagyon egyszer˝ u sz˝ ur´es alkalmazhat´o, a konjug´alt csatorn´akat kivonva egym´asb´ol, hiszen a zaj relat´ıve cs¨okken, a jel pedig kiemel˝odik az eredm´enyben. A 6 db csatorna teh´at reduk´alhat´o egy horizont´alis ´es egy vertik´alis csatorn´av´a: • Horizontal=HL-HR • Vertical=VR2+VL2-(VR1+VL1) Az eredm´enyt a 5.6 ´es 5.7 ´abra szeml´elteti. Tapasztalatom ´es a m´er´esi eredm´enyek szerint, az ezzel a m´odszerrel l´etrehozott egy-egy horizont´alis ´es vertik´alis csatorn´ab´ol pontosabban becs¨ ulhet˝o a tekintet helye, mint 6 k¨ ul¨onb¨oz˝o csatorn´ab´ol, ha az ¨osszes csatorna jel-zaj viszonya hasonl´o.
5.2.2.
Zajsz˝ ur´ es ´ es sim´ıt´ as
A magas frekvenci´aj´ u zajok sz˝ ur´ese egy alul´atereszt˝o sz˝ ur˝o ´es egy mozg´o-´atlag sz˝ ur˝o seg´ıts´eg´evel t¨ort´ent. Az EOG frekvencia tartom´anya kb. Dc-100 Hz-ig terjed [2], azonban gyakorlatilag a 30-35 Hz feletti komponensek elhanyagolhat´ok. A sz˝ ur˝o tervez´ese Matlabban t¨ort´ent a 5.8 ´abr´an l´athat´o ´altal´anos sz˝ ur˝o tervez´esi s´ema alapj´an. A tervezett sz˝ ur˝o teh´at minden frekvenci´at ´atenged Dc ´es 30 Hz k¨oz¨ott, felette viszont semmit sem, azaz alul´atereszt˝o ´es a v´ag´asi frekvencia 30 Hz. A sz˝ ur˝o t´ıpusa Chebyshev II, a rendj´et a cheb2ord.m f¨ uggv´eny minimum 15-nek becs¨ ulte. A sz˝ ur˝o karakterisztik´aja a 5.9 ´abr´an l´athat´o.
5.2 El˝ ofeldolgoz´ as
5.6. ´abra. A HL csatorna ´es az ¨osszevont Horizont´alis csatorn´ak jele
5.7. ´abra. A VL2 csatorna ´es az ¨osszevont Vertik´alis csatorn´ak jele
52
53
5.2 El˝ ofeldolgoz´ as
5.8. ´abra. A sz˝ ur˝o tervez´es l´ep´esei
A nyers ´es a sz˝ urt adat a 5.10 ´abra legfels˝o illetve k¨oz´eps˝o k´ep´en l´athat´o. A sz˝ ur´es ut´an cs¨okkent ugyan a zaj, de a jel m´eg nem el´eg sima a tov´abbi feldolgoz´ashoz, ez´ert a jel tov´abbi sim´ıt´asa egy 101 ablakm´eret˝ u mozg´o-´atlag sz˝ ur´essel t¨ort´ent. A mozg´o-´atlag sim´ıt´as eredm´enye a 5.10 ´abra legals´o k´ep´en l´athat´o.
5.2.3.
Pislog´ as sz˝ ur´ es
A pislog´as ´altal gener´alt jel rendszerint igen j´ol detekt´alhat´o egyedi jellemz˝okkel rendelkezik, amplit´ ud´oja messze kimagaslik az EOG jelb˝ol (l´asd: 5.5 ´abra). A pislog´as a vertik´alis csatorn´akon jelenik meg jelent˝os m´ert´ekben, ´ıgy az EogMouse program a pislog´as sz˝ ur´est kiz´ar´olag az ¨osszevont vertik´alis csatorn´ara alkalmazza. Ha a vertik´alis csatorna jele az 5.2.1 fejezetben le´ırtak szerint j¨ott l´etre, akkor a csatorn´an a pislog´as egy felfel´e mutat´o t¨ usk´enek felel meg (ha m´as el˝ojellel lettek a csatorn´ak ¨osszevonva, akkor el˝ofordulhat, hogy lefel´e mutat). A pislog´as id˝otartama kisebb, mint 400 minta (500 Hz mintav´etelez´es eset´en).A pislog´ast legegyszer˝ ubben a csatorna deriv´alt jel´eb˝ol lehet felismerni., mert a hirtelen amplit´ ud´o n¨oveked´es, majd cs¨okken´es igen nagy pozit´ıv illetve negat´ıv deriv´altat is
54
5.2 El˝ ofeldolgoz´ as
5.9. ´abra. A sz˝ ur˝o karakterisztik´aja
5.2 El˝ ofeldolgoz´ as
5.10. ´abra. A nyers, sz˝ urt ´es sim´ıtott EOG
55
5.2 El˝ ofeldolgoz´ as
56
jelent. A 5.11 ´abra fels˝o r´esz´en a pislog´as a vertik´alis csatorn´an, als´o r´esz´en pedig a csatorna deriv´altja l´athat´o. A piros vonalak a deriv´alt sz´or´as´anak 2 illetve -2 szeres´et jel¨olik.
5.11. ´abra. Pislog´as a vertik´alis csatorn´an ´es a deriv´altj´aban
A pislog´as sz˝ ur˝o algoritmus l´ep´esei a k¨ovetkez˝ok: 1. A vertik´alis csatorna deriv´altj´anak kisz´am´ıt´asa. 2. A deriv´alt thresholdol´asa 2*std ´es -2*std k¨ usz¨ob´ert´ekekkel, ahol std a jel sz´or´as´at jel¨oli. 3. Ha a pozit´ıv threshold ´atl´ep´es´et k¨ovet˝oen a negat´ıv thresholdot is ´atl´epi a deriv´alt 200 mint´an bel¨ ul, akkor a k´erd´eses intervallumban pislog´as t¨ort´ent. 4. A pislog´as kezd˝o ´es v´egpontj´anak megkeres´ese. 5. A kezd˝o ´es v´egpont k¨oz¨ott a jel korrig´al´asa l´epcs˝o f¨ uggv´ennyel.
5.3 A tekintet poz´ıci´ oj´ anak becsl´ ese ´ es a kurzor vez´ erl´ ese
57
A pislog´as kezd˝opontj´anak megtal´al´asa ´erdek´eben az algoritmus elkezd egyes´evel vissza fel´e l´epkedni a deriv´alt jelen att´ol a pontt´ol, ahol utolj´ara l´epte ´at a pozit´ıv thresholdot. Minden egyes pontban ellen˝orzi a deriv´alt ´ert´ek´et, ´es azt a pontot nevezi ki a kezd˝opontnak, ahol az ´ert´ek el˝osz¨or lesz kisebb, mint std/20. A pislog´as v´egpontj´anak megtal´al´asa ´erdek´eben az algoritmus elkezd egyes´evel el˝ore fel´e l´epkedni a deriv´alt jelen att´ol a pontt´ol, ahol utolj´ara l´epte ´at a negat´ıv thresholdot. Minden egyes pontban ellen˝orzi a deriv´alt ´ert´ek´et, ´es azt a pontot nevezi ki a v´egpontnak, ahol az ´ert´ek el˝osz¨or lesz nagyobb, mint -std/20. A 5.11 ´abr´an mind a jelben, mind a deriv´alt jelben piros k¨or jel¨oli az algoritmus ´altal megtal´alt kezd˝o ´es v´egpontot. Az algoritmus a jelet a kezd˝o ´es v´egpont k¨oz¨ott egy l´epcs˝o f¨ uggv´ennyel korrig´alja az al´abbi formula szerint: vertical(stp+1:edp) = vertical(edp) ahol vertical: a vertik´alis csatorna jele, stp:a pislog´as kezdete ´es edp:a pislog´as v´egpontja. A l´epcs˝o f¨ uggv´eny haszn´alat´at az indokolja, hogy a pislog´asok igen gyakran szakk´adok alatt is el˝ofordulhatnak, ´es ebben az esetben ez a m´odszer kev´esb´e torz´ıtja el a jelet, mint a line´aris interpol´aci´o. A pislog´as sz˝ ur´es eredm´eny´et a 5.12 ´abra szeml´elteti, ahol piros szaggatott vonal jelzi az eredeti jelet, ´es k´ek folytonos vonal a korrig´altat.
5.3.
A tekintet poz´ıci´ oj´ anak becsl´ ese ´ es a kurzor vez´ erl´ ese
Az el˝oz˝o fejezetben ismertetett el˝ofeldolgoz´asi l´ep´esek elv´egz´ese ut´an kapott jelek m´ar elvileg alkalmasak a tekintet poz´ıci´oj´anak becsl´es´ere, hab´ar m´eg mindig tartalmaznak zajokat, melyek k¨oz¨ ul a legfontosabb az u ´gy nevezett drift (l´asd: 5.1.2 fejezet). A drift nem m´as, mint a korneo-retin´alis potenci´al azaz az EOGjel DC komponens´enek lass´ u elk´ usz´asa. A drift nem f¨ ugg ¨ossze (legal´abbis nem egy´ertelm˝ u m´odon) a tekintet poz´ıci´oj´aval, teh´at zajnak tekinthet˝o, de mivel id˝oben nem ´alland´o ´es nemline´aris karakterisztik´aval rendelkezik, sz˝ ur´ese bonyolult. A korneo-retin´alis potenci´al ´ert´eke ´es a tekintet poz´ıci´oja k¨oz¨ott a ± 35◦ fokos tartom´anyban line´aris az ¨osszef¨ ugg´es [9], ez viszont csak akkor igaz, ha nincs
5.3 A tekintet poz´ıci´ oj´ anak becsl´ ese ´ es a kurzor vez´ erl´ ese
5.12. ´abra. A pislog´as sz˝ ur´es eredm´enye
58
5.3 A tekintet poz´ıci´ oj´ anak becsl´ ese ´ es a kurzor vez´ erl´ ese
59
drift! A m´er´esek alkalm´aval gy˝ ujt¨ott adatok elemz´ese alapj´an, illetve kor´abbi munk´am [19] alapj´an bebizony´ıthat´o, hogy a drift sz˝ ur´es n´elk¨ uli, a DC-szint ´ert´ek´ere t´amaszkod´o tekintet becsl˝o elj´ar´as igen megb´ızhatatlan ´es pontatlan. Az eml´ıtett ¨osszef¨ ugg´es azonban u ´gy is ´ertelmezhet˝o, hogy a DC-szint eltol´od´asa ´es a tekintet ir´any´anak v´altoz´asa k¨oz¨otti ¨osszef¨ ugg´es line´aris, azaz ha az algoritmus megtal´alja azokat a helyeket, ahol a tekintet ir´anya v´altozik (szakk´adok ´es lass´ u k¨ovet˝o mozg´asok), ´es pontosan meg tudja hat´arozni a v´altoz´as m´ert´ek´et, akkor abb´ol meg tudja becs¨ ulni a tekintet poz´ıci´oj´anak v´altoz´as´at. A lass´ u k¨ovet˝o szemmozg´asok (mozg´o t´argy megfigyel´ese k¨ozben), gyakorlatilag a DCszint lass´ u eltol´od´asak´ent jelentkeznek az EOG-ben, teh´at megk¨ ul¨onb¨oztet´es¨ uk a nem szemmozg´as eredet˝ u driftt˝ol rendk´ıv˝ ul neh´ez. Mozdulatlan t´argyat figyelve (mint p´eld´aul a sz´am´ıt´og´ep monitorja) azonban tekintet¨ unk legt¨obbsz¨or ugr´as szer˝ uen v´andorol egyik pontr´ol a m´asikra, amit az EOG-ben a szakk´adok jel¨olnek. Mivel a drift viszonylag lass´ u term´eszet˝ u, egy szakk´ad viszont nagyon r¨ovid id˝ointervallum alatt t¨ort´enik, a szakk´adok relat´ıv nagys´ag´at (a kezdeti ´es v´egpontjuk k¨ozti ´ert´ek k¨ ul¨onbs´eg´et) csak rendk´ıv¨ ul kis m´ert´ekben befoly´asolja a drift. Az ´altalam tervezett ´es az EogMouse programban implement´alt, az (el˝ofeldolgozott) EOG-b´ol a tekintet hely´et becsl˝o algoritmus a szakk´adok relat´ıv nagys´aga alapj´an becs¨ uli meg a tekintet poz´ıci´oj´anak v´altoz´as´at. Az algoritmusnak teh´at az al´abbi felt´eteleknek kell min´el t¨ok´eletesebben eleget tennie: 1. A szakk´ad detekt´al´asa 2. A szakk´ad kezd˝o ´es v´egpontj´anak detekt´al´asa 3. A szakk´ad relat´ıv nagys´ag´anak kisz´am´ıt´asa 4. A szakk´ad relat´ıv nagys´aga alapj´an a tekintet v´altoz´as´anak kisz´am´ıt´asa 5. A tekintet eddigi poz´ıci´oja ´es v´altoz´asa alapj´an az u ´j poz´ıci´o kisz´am´ıt´asa
5.3.1.
Szakk´ ad detekci´ o
A szakk´adok detekt´al´asa a pislog´ashoz hasonl´oan a deriv´alt jelb˝ol t¨ort´enik, thresholdol´assal. Egy szakk´ad alatt a jel deriv´altja megn˝o, pozit´ıv vagy negat´ıv
5.3 A tekintet poz´ıci´ oj´ anak becsl´ ese ´ es a kurzor vez´ erl´ ese
60
ir´anyban att´ol f¨ ugg˝oen, hogy a jel DC szintje cs¨okkent vagy n˝ott (l´asd:5.13 ´abra). A szakk´adot t¨obbek k¨oz¨ott az k¨ ul¨onb¨ozteti meg a pislog´ast´ol, hogy az egyik threshold ´atl´ep´es´et nem k¨oveti azonnal (nagyon r¨ovid id˝on bel¨ ul) a m´asik threshold a´tl´ep´ese, s˝ot a vizsg´alt jelben elvileg ekkor m´ar nem is lehet pislog´as (felt´eve,hogy a pislog´as sz˝ ur´es helyesen m˝ uk¨odik). A szakk´ad felismer´ese, illetve nem felismer´ese teh´at egyed¨ ul a threshold ´ert´ekekt˝ol f¨ ugg, ´ıgy ezeket k¨ ul¨on¨osen gondosan kell be´all´ıtani. A thresholdol´ast alkalmaz´o elj´ar´asok legnagyobb h´atul¨ ut˝oje ´eppen ez, pontosabban hogy a k¨ usz¨ob´ert´eket legt¨obbsz¨or csak emp´ırikusan lehet be´all´ıtani. A kalibr´aci´os szekvencia feladata, hogy az optim´alis threshold ´ert´ekeket meghat´arozza, ebb˝ol az k¨ovetkezik, hogy a kalibr´aci´os szekvencia sor´an l´etrej¨ov˝o szemmozg´asok k¨oz¨ ul a legkisebb kit´er´es fogja megadni az elvileg detekt´alhat´o legkisebb elmozdul´ast. A kalibr´aci´os stimulusok relat´ıv elhelyezked´ese teh´at alapvet˝oen befoly´asolja a k´es˝obbi vez´erl´es sor´an detekt´alhat´o legkisebb kit´er´es ´ert´ek´et. 5.3.1.1.
Az optim´ alis threshold ´ ert´ ekek be´ all´ıt´ asa
Az EOG-jel deriv´altja eset´eben nem adhat´o meg n´egy (kett˝o a horizont´alis, kett˝o a vertik´alis csatorna r´esz´ere) glob´alis k¨ usz¨ob´ert´ek, ami minden felhaszn´al´ora minden id˝opillanatban egyar´ant j´o eredm´enyt produk´al, hiszen minden felhaszn´al´onak egyedi az EOG jele, r´aad´asul lehetetlen k´etszer egym´as ut´an pontosan ugyan´ ugy felhelyezni valakire az elektr´od´akat. Ez´ert van sz¨ uks´eg a rendszer kalibr´aci´oj´ara minden indul´askor, ami t¨obbek k¨oz¨ott a szakk´adok megtal´al´as´ahoz sz¨ uks´eges optim´alis threshold ´ert´ekek meghat´aroz´as´at is mag´aba foglalja. Az optim´alis threshold be´all´ıt´as´ahoz a program azt a t´enyt haszn´alja ki, hogy a kalibr´aci´os szekvenci´at pontosan ismeri, hiszen azt ˝o gener´alta a felhaszn´al´onak. A program felt´etelezi, hogy a felhaszn´al´o val´oban a kalibr´aci´os stimulusokat n´ezte a kalibr´aci´o alatt, hiszen az ˝o ´erdeke is, hogy a program helyesen m˝ uk¨odj¨on. Ez alapj´an el˝ore meg tudja mondani, hogy helyes threshold ´ert´ekek mellett csatorn´ank´ent pontosan h´any darab felfel´e ´es lefel´e mutat´o szakk´adot detekt´alna a kalibr´aci´o sor´an felvett adatban. Ezek ut´an annyi lenne a dolga, hogy a k¨ ul¨onb¨oz˝o thresholdokat addig n¨ovelje, vagy cs¨okkentse am´ıg helyes sz´am´ u szakk´adot nem tal´al. Ezzel ugyan j´ol be´all´ıtja a thresholdokat erre a konkr´et felv´etelre, de ezek nem biztos, hogy minden tov´abbi felv´etelre is j´ok lesznek.
5.3 A tekintet poz´ıci´ oj´ anak becsl´ ese ´ es a kurzor vez´ erl´ ese
61
A helyesen m˝ uk¨od˝o threshold helyett, ez´ert azokat a szuboptim´alis thresholdokat keresi meg, amivel m´ar ´eppen eggyel t¨obb, vagy eggyel kevesebb szakk´adot detekt´alna a j´osolthoz k´epest. Az optim´alis threshold pedig pontosan a kett˝o k¨oz¨ott lesz, ´ıgy az optim´alis threshold ´ert´ekek meghat´aroz´asa a k¨ovetkez˝ok´eppen t¨ort´enik, mind a horizont´alis, mind a vertik´alis csatorn´ara: 1. A kalibr´aci´os szekvencia sor´an felvett adatok el˝ofeldolgoz´asa (sz˝ ur´es,sim´ıt´as,pislog´as korrekci´o) 2. A jel deriv´altj´anak kisz´amol´asa 3. Thresholdol´as egy tetsz˝oleges kezd˝o´ert´ekkel (pl: 2*std ´es -2*std, ahol std: a jel sz´or´asa) 4. A thresholdok cs¨okkent´ese, illetve n¨ovel´ese a szuboptim´alis thresholdok megtal´al´asa ´erdek´eben 5. Az optim´alis thresholdok kisz´am´ıt´asa A 5.13 ´abra als´o fel´en z¨old vonal jelzi a megtal´alt k´et optim´alis thresholdot, illetve piros vonal a szuboptim´alis thresholdokat. 5.3.1.2.
A szakk´ adok detekt´ al´ asa
A szakk´adok megtal´al´asa a jel deriv´altj´anak thresholdol´as´aval t¨ort´enik, az el˝oz˝o fejezetben le´ırtak szerint megtal´alt optim´alis threshold ´ert´ekekkel. A thresholdol´as ut´an, egy-egy szakk´ad hely´et egy sor egym´ast k¨ovet˝o pont jel¨oli, amik a pozit´ıv threshold felett vagy a negat´ıv alatt vannak. Ezek az intervallumok azonban nem pontosan a nekik megfelel˝o szakk´adok kezdet´et˝ol a v´eg´eig tartanak. A szakk´adok kezd˝o ´es v´egpontj´anak megtal´al´as´ahoz csak egy-egy pontra van sz¨ uks´eg ezekb˝ol az intervallumokb´ol, m´egpedig ahol a deriv´alt maxim´alis, vagy minim´alis, mivel ezek a pontok kb. a szakk´ad fel´en´el tal´alhat´ok. A 5.14 ´abr´an l´athat´o a szakk´ad detekci´o eredm´enye, a piros k¨or¨ok jel¨olik a szakk´ad azon pontj´at, ahol a deriv´alt maxim´alis, illetve minim´alis.
5.3 A tekintet poz´ıci´ oj´ anak becsl´ ese ´ es a kurzor vez´ erl´ ese
5.13. ´abra. Az optim´alis (z¨old) ´es szuboptim´alis (piros) thresholdok
62
5.3 A tekintet poz´ıci´ oj´ anak becsl´ ese ´ es a kurzor vez´ erl´ ese
5.14. ´abra. A megtal´alt szakk´adok
63
5.3 A tekintet poz´ıci´ oj´ anak becsl´ ese ´ es a kurzor vez´ erl´ ese
5.3.2.
64
A szakk´ ad kezd˝ o´ es v´ egpontja
A szakk´adok kezd˝o ´es v´egpontj´anak megtal´al´as´ara k´ezenfekv˝o lenne, ha az el˝oz˝o fejezetben megtal´alt pontt´ol el˝ore, illetve h´atrafel´e haladva a deriv´alton, azokat a pontokat keresn´e az algoritmus, ahol a deriv´alt ´ert´eke egy bizonyos k¨ usz¨ob al´a cs¨okken. Ezzel azonban megint az emp´ırikusan megadott threshold probl´em´aja mer¨ ulne fel, ez´ert a program a h´aromsz¨ogel´es m´odszert alkalmazza (l´asd: 5.15 ´abra): A h´aromsz¨og egyik pontja a szakk´adon (az el˝oz˝o fejezetben megtal´alt pont), m´asik pontja a szakk´ad el˝ott (v´egpont eset´eben m¨og¨ott), harmadik pedig a kett˝o k¨oz¨ott helyezkedik el valahol. A h´aromsz¨og ter¨ ulete akkor maxim´alis, ha a harmadik pont pontosan a szakk´ad kezd˝opontja (vagy v´egpontja).
5.15. ´abra. A h´aromsz¨ogel´es elve
Ez az algoritmus nagyon robusztus, hiszen k¨onny˝ u megadni a k´et pontot emp´ırikusan: az egyik rajta legyen a szakk´adon (l´asd el˝oz˝o fejezet), a m´asik pedig a szakk´ad el˝ott (vagy m¨og¨ott) legyen, amit egy elegend˝oen nagy ablakm´erettel lehet kijel¨olni. A 5.16 ´abr´an l´athat´o az algoritmus eredm´enye a kalibr´aci´o sor´an r¨ogz´ıtett horizont´alis csatorn´ara, a szakk´adok kezd˝o ´es v´egpontj´at piros k¨or¨ok jel¨olik.
5.3 A tekintet poz´ıci´ oj´ anak becsl´ ese ´ es a kurzor vez´ erl´ ese
5.16. ´abra. A h´aromsz¨ogel´eses m´odszer eredm´enye
65
5.3 A tekintet poz´ıci´ oj´ anak becsl´ ese ´ es a kurzor vez´ erl´ ese
5.3.3.
66
A szakk´ ad relat´ıv nagys´ aga
A szakk´adok relat´ıv nagys´ag´at a kezd˝o pontjukn´al ´es a v´egpontjukn´al felvett ´ert´ek¨ uk k¨ ul¨onbs´ege adja. A hipot´ezis szerint ez az ´ert´ek line´arisan f¨ ugg a tekintet elfordul´asi sz¨og´et˝ol, egy bizonyos tartom´anyon bel¨ ul (± 35◦ ).
5.3.4.
A szakk´ ad relat´ıv nagys´ aga ´ es a tekintet sz¨ og´ enek v´ altoz´ asa k¨ oz¨ otti ¨ osszef¨ ugg´ es
A kalibr´aci´os szekvencia sor´an a k´eperny˝on megjelen˝o stimulusok sorrendj´eb˝ol ´es elhelyezked´es´eb˝ol, illetve a feldolgozott EOG adatok szakk´adjainak relat´ıv nagys´ag´ab´ol meghat´arozhat´o a szakk´adok ´es a tekintet elfordul´asa k¨oz¨otti ¨osszef¨ ugg´es. A horizont´alis ´es vertik´alis f¨ uggv´eny meghat´aroz´asa az adatp´arokra illesztett els˝ofok´ u g¨orb´evel t¨ort´enik. Ez a k´et f¨ uggv´eny minden felhaszn´al´ora ´es m´er´esre egyedileg jellemz˝o. Az 5.17 ´abr´an l´athat´o a kalibr´aci´o ut´an meghat´arozott k´et f¨ uggv´eny (k´ek vonal), illetve az els˝ofok´ u polin´omok illeszt´es´en´el haszn´alt adat´ert´ek p´arok (piros keresztek).
5.3.5.
A kurzor vez´ erl´ ese
A kurzor vez´erl´ese az EogMouse programmal csak sikeresen v´egbement kalibr´aci´o ut´an lehets´eges. A kurzor vez´erl´es bekapcsol´asa ut´an a felhaszn´al´onak 2 m´asodpercig a kurzorra kell fix´alnia a tekintet´et, miel˝ott a vez´erl´est elkezdi. Ez az´ert sz¨ uks´eges, mert az algoritmus csak a tekintet sz¨og´enek v´altoz´as´at k´epes megbecs¨ ulni, teh´at ismernie kell a tekintet kezdeti poz´ıci´oj´at. Az algoritmus a k¨ovetkez˝o l´ep´eseket hajtja v´egre, 1 m´asodperces id˝ok¨oz¨onk´ent: 1. Az u ´j EOG adatok el˝ofeldolgoz´asa 2. Szakk´adok detekt´al´asa 3. A detekt´alt szakk´adok ´es a (kalibr´aci´o sor´an meghat´arozott) horizont´alis illetve vertik´alis f¨ uggv´enyek alapj´an a tekintet sz¨og v´altoz´as´anak kisz´am´ıt´asa 4. A hardverparam´eterek alapj´an a kurzor (a tekintet sz¨og´enek)megfelel˝o m´ert´ekben t¨ort´en˝o elmozd´ıt´asa
5.3 A tekintet poz´ıci´ oj´ anak becsl´ ese ´ es a kurzor vez´ erl´ ese
67
5.17. ´abra. A szakk´adok relat´ıv nagys´aga ´es a tekintet sz¨og´enek v´altoz´asa k¨oz¨otti line´aris ¨osszef¨ ugg´es
5.4 Valid´ aci´ o´ es eredm´ enyek
5.4.
68
Valid´ aci´ o´ es eredm´ enyek
Az EogMouse programban implement´alt EOG alap´ u tekintet becsl˝o elj´ar´as pontoss´ag´anak meghat´aroz´asa ´erdek´eben p´arhuzamos m´er´esek t¨ort´entek az IViewX nev˝ u, korne´alis reflexi´ot haszn´al´o tekintet k¨ovet˝o rendszerrel. A rendszer r´eszletesebb le´ır´as´at l´asd a 4.0.9. fejezetben. Az IViewX rendszer kalibr´aci´oja minden esetben az EogMouse rendszer kalibr´aci´oj´at megel˝oz˝oen t¨ort´ent.
5.4.1.
Az IViewX pontoss´ aga
Az IViewX kalibr´al´asa minden m´er´es el˝ott megt¨ort´ent, de az eszk¨oz m´eg ´ıgy is sokszor hib´azott. A hiba f˝oleg a felhaszn´al´o fej´enek elmozdul´as´ara, pislog´asokra illetve a f´enyviszonyok v´altoz´as´ara vezethet˝o vissza. Az 5.18 ´abr´an l´athat´o egy ´atlagosan j´ol siker¨ ult IViewX kalibr´aci´o eredm´enye: a piros keresztek jel¨olik az EogMouse kalibr´aci´os szekvenci´aja sor´an felvillantott stimulusokat, a k´ek k¨or¨ok pedig az EogMouse kalibr´aci´os szekvencia alatt a m´ar kalibr´alt IViewX ´altal becs¨ ult koordin´at´akat. Az 5.18 ´abra c´elja term´eszetesen csak az, hogy az olvas´o el tudja k´epzelni az IViewX k¨or¨ ulbel¨ uli pontoss´ag´at, hiszen enn´el sokszor siker¨ ult pontosabban is kalibr´alni az IViewX-et, de el˝ofordult az is hogy, kev´esb´e pontosan vagy ak´ar rendk´ıv¨ ul rosszul becs¨ ulte a koordin´at´akat. Amikor teh´at az IViewX koordin´at´akhoz hasonl´ıtjuk az EogMouse ´altal becs¨ ult koordin´at´akat, az eredm´enyn´el figyelembe kell venni, hogy az IViewX sem teljesen pontos. Azok a m´er´esek, melyekn´el az IViewX pontoss´aga nem volt elfogadhat´o, nem lettek figyelembe v´eve az EogMouse pontoss´ag´anak vizsg´alat´an´al.
5.4.2.
Az EogMouse pontoss´ aga
Mindk´et rendszer helyesen lefutott kalibr´aci´oj´at k¨ovet˝oen egy-egy 81 m´asodperc hossz´ u kurzor vez´erl´es sor´an az EogMouse rendszer ´altal becs¨ ult koordin´at´ak az IViewX ´altal becs¨ ult koordin´at´akkal lettek ¨osszehasonl´ıtva. Az ¨osszehasonl´ıt´as k¨ ul¨on t¨ort´ent a vertik´alis, illetve horizont´alis csatorn´akra. Az 5.19 ´abr´an l´athat´o egy ilyen futtat´as sor´an a tekintet becs¨ ult X ´es Y koordin´at´aja. Az 5.19 ´abr´an k´ek vonal jel¨oli az IViewX, ´es piros vonal jel¨oli az EogMouse ´altal becs¨ ult koordin´at´akat.
5.4 Valid´ aci´ o´ es eredm´ enyek
5.18. ´abra. Az IViewX rendszer k¨or¨ ulbel¨ uli pontoss´aga
69
5.4 Valid´ aci´ o´ es eredm´ enyek
5.19. ´abra. A tekintet poz´ıci´oj´anak becs¨ ult X ´es Y koordin´at´aja
70
71
5.4 Valid´ aci´ o´ es eredm´ enyek
Az ¨osszehasonl´ıt´ashoz, ´es az ´atlagos hiba kisz´am´ıt´as´ahoz el˝osz¨or u ´jra kellett mintav´etelezni az EogMouse ´altal becs¨ ult koordin´at´akat, hiszen az EOG adatok 500 Hz-es mintav´etelez´es mellett t¨ort´entek, m´ıg az IViewX mintav´etelez´esi frekvenci´aja 240 Hz. Ez az u ´jramintav´etelez´es egy u ´jabb kis hib´at eredm´enyezett az EogMouse koordin´at´akban a szakk´adok hat´ar´an. Az 5.19 ´abr´an az is megfigyelhet˝o, hogy az IViewX n´eha (t¨ uskeszer˝ uen) kiugr´oan nagyokat hib´azik. Ezek a hib´ak azokban az id˝opillanatokban keletkeznek, amikor az IViewX nem tudja megtal´alni a kamerak´epen a pupilla, vagy a korne´alis reflexi´o hely´et, p´eld´aul pislog´askor. Tov´abbi kiugr´oan nagy, de r¨ovid ideig tart´o hib´akat eredm´enyez, hogy a k´et adatot nem lehet id˝oben t¨ok´eletesen egym´asra illeszteni (l´asd: 5.20 ´abra). Az EogMouse ´atlagos hib´aj´anak kisz´am´ıt´asakor ez´ert a hib´ak medi´an ´ert´eke pontosabb becsl´est eredm´enyez, mint az egyszer˝ u ´atlag, mert a medi´an kev´esb´e veszi figyelembe a kiugr´oan nagy, de r¨ovid ideig tart´o hib´akat. Az 5.20 ´abr´an l´athat´o egy 81 m´asodperc hossz´ u kurzor vez´erl´es sor´an az EogMouse tekintet-poz´ıci´o becsl´es´enek hib´aja (k´ek vonal), ´es a hiba medi´an ´ert´eke (piros vonal). Az 5.1 t´abl´azatban l´athat´o kilenc darab hasonl´o m´er´es (81 m´asodperc) sor´an kisz´am´ıtott horizont´alis ´es vertik´alis hib´ak medi´an ´ert´eke, valamint a medi´anok ´atlaga, azaz az ´atlagos t´eveszt´es (pixelben). 5.1. t´abl´azat. EogMouse horizont´alis ´es vertik´alis t´eveszt´ese M´er´es Horizont´alis hiba [px] Vertik´alis hiba [px] d11223 d11224 d11225 d11226 d11227 d112210 d112211 d112212 d112213 Mean:
50,1674 30,8994 41,6145 45,4290 21,5265 32,8977 27,2739 34,5073 27,9854
23,2309 25,5922 33,8507 39,2508 50,5770 38,8220 35,4809 27,4511 33,9010
34,7
34,2
Az ´atlagos hib´ab´ol az k¨ovetkezne, hogy ´altal´aban a vertik´alis csatorna hib´aja kisebb, ez azonban nem teljesen igaz, mert a fenti t´abl´azat eredm´enyei mind
5.4 Valid´ aci´ o´ es eredm´ enyek
72
5.20. ´abra. Az EogMouse hib´aja, ´es a hiba medi´an ´ert´eke 81 m´asodperc alatt
5.4 Valid´ aci´ o´ es eredm´ enyek
73
sikeres EogMouse kalibr´aci´ok ut´an m´ert adatokb´ol ´allnak. A rossz EogMouse kalibr´aci´ok 90 %-a viszont a vertik´alis csatorna hib´aja folyt´an sikertelen, ami abb´ol alakulhat ki, hogy a szakk´ad detekci´o sor´an egy nemj´ol sz˝ urt pislog´ast, vagy egy´eb artefaktot is szakk´adnak detekt´al a program. A hosszabb idej˝ u kurzor vez´erl´es eset´en is az tapasztalhat´o, hogy a tekintet vertik´alis poz´ıci´oj´anak becsl´ese el˝obb romlik el, mint a horzont´alis becsl´es.
5.4.3.
Dinamikus rekalibr´ aci´ o
A rendszer kalibr´al´asa ut´an, a kurzor vez´erl´es sor´an minden detekt´alt szakk´adot k¨ovet˝oen egy konstans ´ert´ek˝ u hiba ad´odik, ami a k¨ovetkez˝o detekt´alt szakk´adig nem v´altozik. Ez a hiba szerencs´etlen esetben zavar´oan nagy m´ert´ek˝ ure n˝ohet, azaz a rendszer u ´jrakalibr´al´ast ig´enyel. Ez az u ´jrakalibr´al´as azonban m´ar sokkal gyorsabban ´es egyszer˝ ubben megoldhat´o a legels˝o kalibr´aci´on´al, hiszen a szakk´ad detekci´ohoz sz¨ uks´eges optim´alis thresholdok, valamint a tekintet-sz¨og v´altoz´asa ´es a szakk´adok m´erete k¨oz¨otti line´aris ¨osszef¨ ugg´es nem v´altozott. Puszt´an arra van sz¨ uks´eg, hogy a felhaszn´al´o parancs´ara (pl. egy speci´alis gomb megnyom´asa ut´an) le´alljon a kurzor vez´erl´ese, majd miut´an a felhaszn´al´o tekintet´et a kurzorra fix´alta, u ´jrainduljon.
6. fejezet Az EogMouse program Az EogMouse program, a diplomamunka keret´eben ´ırt EOG alap´ u kurzormozgat´o program. A program implement´aci´oja t¨orekszik a 3. fejezetben r´eszletezett rendszertervet min´el jobban k¨ovetni. Ebben a fejezetben a program r´eszletes le´ır´asa ´es haszn´alati utas´ıt´asa t¨ort´enik. A program az adatokat fogad´o ´es analiz´al´o PCn fut az EOG-m´er´es k¨ozben (l´asd: 4.1 ´abra Analyzer PC). A program feladata a kapott nyers EOG regisztr´atumok sz˝ ur´ese ´es feldolgoz´asa, azaz a jelekb˝ol a vez´erl˝ojelek el˝o´all´ıt´asa ´es a kurzor megfelel˝o helyre t¨ort´en˝o mozgat´asa.
6.1.
A fejleszt˝ oi k¨ ornyezet
A program fejleszt´ese a Microsoft Visual Studio .Net 2003 fejleszt˝oi k¨ornyezetben t¨ort´ent. A program legf˝obb egys´egeinek meg´ır´asa C# nyelven t¨ort´ent, de a .Net fejleszt˝oi k¨ornyezet Common Language Runtime lehet˝os´eg´et is ig´enybe v´eve, bizonyos f¨ uggv´enyek Matlab nyelven ´ır´odtak, ´es import´al´as ut´an .Net k¨ornyezetben t¨ort´ent felhaszn´al´asuk. A program h´arom f˝obb verzi´on esett ´at a fejleszt´es sor´an. Az els˝o verzi´o (EogMousev1) m´eg csak offline, kor´abban m´ert adatokat tudott beolvasni, ´es csak alapvet˝o feldolgoz´asi funkci´okra volt k´epes. A m´asodik verzi´o, m´ar k´epes online adatok fogad´as´ara is, de a v´egleges sz˝ ur´esi ´es felismer´esi algoritmusok k¨oz¨ ul m´eg sok nincs volt bele´ep´ıtve. Jelenleg a 2.24-es verzi´o (EogMousev24) tekinthet˝o v´eglegesnek.
74
6.2 A grafikus felhaszn´ al´ oi fel¨ ulet
6.2.
75
A grafikus felhaszn´ al´ oi fel¨ ulet
A program grafikus felhaszn´al´oi fel¨ ulete az 6.1 ´abr´an l´athat´o. A GUI h´arom r´eszre oszthat´o: inform´aci´o, gombok ´es st´atusz kijelz˝o. Az inform´aci´o c´ımke alatt (Info) a rendszer ´eppen aktu´alis hasznos inform´aci´okat jelen´ıt meg. A ’Help’ gomb lenyom´asa ut´an, a program r¨ovid haszn´alati u ´tmutat´oja is itt jelenik meg. A st´atusz (Status) c´ımke alatt az ´eppen fut´o folyamatok ´allapot´ar´ol kaphat t´aj´ekoztat´ast a felhaszn´al´o. A k¨ovetkez˝o alfejezetek a gombok jelent´es´et mutatj´ak be.
6.1. ´abra. A program grafikus felhazn´al´oi fel¨ ulete
6.2.1.
Hardware Settings
A Hardware Settings gombra kattintva az 6.2 ´abr´an l´athat´o dial´ogus ablak jelenik meg. Itt a felhaszn´al´o be´all´ıthatja a k´eperny˝o felbont´as´at, m´ereteit ´es t´avols´ag´at.
6.2 A grafikus felhaszn´ al´ oi fel¨ ulet
76
6.2. ´abra. Hardware Settings
6.2.2.
I/O Settings
Az I/O Settings gombra kattintva az input/output be´all´ıt´asok lesznek el´erhet˝oek az 6.3 ´abr´an l´athat´o ablak r´ev´en. Itt megadhatja a felhaszn´al´o az adatszerver IP c´ım´et ´es a triggerek k¨ uld´es´ere haszn´alt p´arhuzamos portot.
6.3. ´abra. I/O Settings
6.2.3.
Calibrate
A Calibrate gombra kattintva a felhaszn´al´o kalibr´alhatja a rendszert. Ez a l´ep´es elengedhetetlen a kurzormozgat´as el˝ott. A kalibr´aci´os elj´ar´as c´elja a rendszer pillanatnyi haszn´al´oj´ahoz t¨ort´en˝o hangol´asa. A kalibr´aci´o sor´an a rendszer kisz´am´ıtja a vez´erl˝ojelek k¨ usz¨ob´ert´ekeit. A felhaszn´al´onak a kalibr´aci´o alatt a k´eperny˝on megjelen˝o stimulusokra kell fix´alnia a tekintet´et. Minden felhaszn´al´ocsere, illetve programind´ıt´as ut´an kalibr´alni kell a rendszert, s˝ot bizonyos id˝ok¨oz¨onk´ent nem ´art a kalibr´aci´o megism´etl´ese. A kalibr´aci´o sor´an a program a k¨ovetkez˝o l´ep´eseket hajtja v´egre:
6.2 A grafikus felhaszn´ al´ oi fel¨ ulet
77
1. A kalibr´aci´os szekvenci´aban meghat´arozott stimulusokat a megfelel˝o sorrendben ´es poz´ıci´oban kirajzolja a k´eperny˝ore, mik¨ozben a p´arhuzamos porton kereszt¨ ul a megfelel˝o markereket elk¨ uldi a Recorder g´epnek. 2. A felvett ´es markerekkel kieg´esz´ıtett EOG adatokon zajsz˝ ur´est v´egez (l´asd: 5.2 fejezet) 3. A sz˝ urt jelekb˝ol meg´allap´ıtja a felhaszn´al´o egy´eni param´etereit (l´asd: 5.3.1.1 ´es 5.3.4 fejezetek). 4. A kalibr´aci´o sor´an m´ert nyers adatokat egy arch´ıv k¨onyvt´arba menti.
6.2.4.
Run
A Run gombra kattintva a felhaszn´al´o bekapcsolhatja az EOG alap´ u kurzorvez´erl´est. A gomb megnyom´asa ut´an a felhaszn´al´onak a kurzorra kell fix´alnia a tekintet´et 2 m´asodpercig, miel˝ott a vez´erl´es elindul. A kurzor vez´erl´es sor´an a program az EOG jeleket TCP/IP kapcsolaton kereszt¨ ul folyamatosan kapja a Recorder g´ept˝ol. Amint 500 (kb. 1 sec.) mint´anyi friss adat ¨osszegy˝ ulik a bufferben, v´egrehajtja a k¨ovetkez˝o l´ep´eseket: 1. Az adatok sz˝ ur´ese (l´asd: 5.2 fejezet) 2. A szakk´adok meghat´aroz´asa (l´asd: 5.3.1 fejezet) 3. Szakk´ad eset´en a kurzor megfelel˝o helyre t¨ort´en˝o mozgat´asa (l´asd: 5.3.5 fejezet) Ha a vez´erl´es sor´an a felhaszn´al´o a billenty˝ uzet b´armely gombj´at lenyomja, a kurzor vez´erl´es meg´all. Ha a lenyomott billenty˝ u az ”‘R”’ volt, akkor v´egrehajt´odik a dinamikus rekalibr´aci´o, minden m´as esetben teljesen le´all a vez´erl´es ´es ism´et a program f˝omen¨ uje lesz el´erhet˝o.
6.2.5.
Help
A Help gomb lenyom´as´at k¨ovet˝oen az Info c´ımke alatt a program egy r¨ovid haszn´alati utas´ıt´asa jelenik meg.
6.2 A grafikus felhaszn´ al´ oi fel¨ ulet
6.2.6.
Quit
A Quit gombra kattintva a program kil´ep.
78
7. fejezet ¨ Osszegz´ es ´ es konkl´ uzi´ o 7.1.
¨ Osszegz´ es
A dolgozat megvizsg´alta ´es ¨osszehasonl´ıtotta a ma l´etez˝o k¨ ul¨onb¨oz˝o tekintet k¨ovet˝o technik´akat, az EOG alap´ u technik´aval. Az EOG alap´ u tekintet k¨ovet˝o rendszerek legnagyobb el˝onye, az alacsony hardverig´eny ´es k¨olts´eg, h´atr´anyuk a kisebb pontoss´ag, ´es az elektr´od´ak negat´ıv eszt´etikai ´ert´eke. Elk´esz¨ ult egy ´altal´anos EOG alap´ u tekintet k¨ovet˝o rendszer terve. Az ´altal´anos rendszerterv mellett, egy konkr´et algoritmusra ´ep¨ ul˝o, EOG adatokb´ol a tekintet koordin´at´ait becsl˝o rendszer terve ´es szoftveres implement´aci´oja is elk´esz¨ ult. A program a nyers adatokon zaj- ´es pislog´as-sz˝ ur´est v´egez. A rendszer tartalmaz egy els˝o kalibr´aci´ohoz sz¨ uks´eges algoritmust, valamint egy gyorsabb dinamikus rekalibr´aci´os elj´ar´ast is. Az algoritmus a szakk´adok relat´ıv nagys´aga alapj´an becs¨ uli a tekintet poz´ıci´oj´at, k¨or¨ ulbel¨ ul ± 34 pixel pontoss´aggal (1024*768 felbont´as´ u, 17” monitor ´es 50 cm t´avols´ag eset´en).
7.2.
Konkl´ uzi´ o
Az eredm´enyek alapj´an a k¨ovetkez˝o k¨ovetkeztet´eseket vonhatjuk le: Az elk´esz¨ ult EogMouse szoftverrendszer kisebb pontoss´aga ´es speci´alis hardver ig´enye miatt nem v´altja ki a trad´ıcion´alis egeret, de ez nem is volt c´elja.
79
7.2 Konkl´ uzi´ o
80
Alkalmas azonban Human Machine Interface c´elokra, hiszen a tekintet v´altoz´as´anak ir´any´at igen nagy pontoss´aggal tudja megbecs¨ ulni, ´es ez´altal biztons´aggal kinyerhet˝ok p´eld´aul a ”‘f¨ol-le-jobbra-balra”’ t´ıpus´ u parancsok, vagy ak´ar az u ´n. ”‘mouse-gestures”’ mint´aj´ara ”‘eye-gesture”’ t´ıpus´ u vez´erl´esi parancsok. A rendszer pontoss´aga ´es felhaszn´alhat´os´aga v´elhet˝oen tov´abb n¨ovelhet˝o, az al´abbiak seg´ıts´eg´evel: • A m´ert nyers EOG adatok zajszintj´enek cs¨okkent´es´evel (pl. jobb m´er´esi eszk¨oz¨okkel ´es k¨or¨ ulm´enyekkel). • A szakk´ad-detekci´o pontoss´ag´anak n¨ovel´es´evel (pl. megb´ızhat´obb zaj- ´es pislog´as-sz˝ ur˝o algoritmusok kifejleszt´es´evel ´es alkalmaz´as´aval, vagy drift sz˝ ur´es hozz´aad´as´aval). • A nem szakk´ad t´ıpus´ u szemmozg´asok detekt´al´as´aval. • Csak a nem tudatos pislog´as sz˝ ur´es´evel, ´es a tudatos pislog´as vez´erl˝o parancsk´ent t¨ort´en˝o felhaszn´al´as´aval. • A gyorsas´ag n¨ovelhet˝o optimaliz´alt algoritmusokkal ´es programoz´assal. • Az ´ar ´es eszk¨ozig´eny cs¨okkenthet˝o, speci´alisan a rendszer sz´am´ara gy´artott hardverrel.
K¨ osz¨ onetnyilv´ an´ıt´ as
Nagyon k¨osz¨on¨om a seg´ıts´eg´et, tan´acsait ´es ´erdekfesz´ıt˝o besz´elget´eseinket tank¨ort´arsamnak, ...
Referenci´ ak [1] E. K. Bizotts´aga, A fogyat´ekkal ´el˝ok helyzete a kib˝ov˝ ult eur´opai uni´oban: ” az eur´opai akci´oterv 2006-2007,” Br¨ usszel, vol. 28.11., 2005. 1 [2] M. M. Rafael Barea, Luciano Boquete and E. L´opez, System for assisted ” mobility using eye movements based on electrooculography,” IEEE Transactions On Neural Systems And Rehabilitation Engineering, vol. 10, pp. 209– 218, 2002. 1, 2.3, 4.0.2.1, 5.1.1, 5.1.2, 5.2.2 [3] A. P. H. A. Yanco, A. Hazel and S. Smith, Initial report on wheelesley: a ” robotic wheelchair system,” in Proc. Workshop on Developing AI Applicat. Disabled, held at the Int. Joint Conf. Artificial Intell., 1995. 1 [4] C. H. Morimoto and M. R. M. Mimica, Eye gaze tracking techniques for in” teractive applications,” Computer Vision and Image Understanding, vol. 98, pp. 4–24, 2005. 2.2.1, 2.1 [5] D. K. J. Reulen, j.T. Marcus and F. de Vries, Precise recording of eye ” movement: the iris technique,” Med. Biol. Eng. Comput., vol. 26, pp. 20–26, 1988. 2.2.2 [6] J. E. Richards, Eye Position Prospectus for measuring eye movements. Department of Psychology, University of South Carolina, 1990. 2.2.3 [7] H. C. T. Cornsweet, Accurate two-dimensional eye tracker using first and ” fourth purkinje images,” J. Opt. Soc. Am., vol. 63, pp. 921–928, 1973. 2.2.4 [8] C. S. H. Crane, Accurate three-dimensional eyetracker,” J. Opt. Soc. Am., ” vol. 17, pp. 691–705, 1978.
82
7.2 Konkl´ uzi´ o
83
[9] L. Young and D. Sheena, Methods & designs: survey of eye movement ” recording methods,” Behav. Res. Methods Instrum., vol. 5, pp. 397–429, 1975. 2.1, 2.3, 4.0.8.2, 5.3 [10] B. R. Gaines, Stochastic computing systems,” Advances in Information ” Systems Science, vol. 2, pp. 37–172, 1969. [11] J. W. K. Carrie A. Joyce, Irina F. Gorodnitsky and M. Kutas, Tracking eye ” fixations with electroocular and electroencephalographic recordings,” Psychophysiology, vol. 39, pp. 607–618, 2002. [12] S. Sike and L. Varga, Szoftvertechnol´ ogia ´es UML. ELTE E¨otv¨os Kiad´o, 2003. 3.2, 3.3 [13] J. H. Kenji Yamagishi and M. Miyakawa, Development of eog-based com” munication system controlled by eight-directional eye movements,” in Proceedings of the 28th IEEE EMBS Annual International Conference New York City, 2006. 5.1.2, 5.1.4 [14] Y. Chen and W. S. Newman, A human-robot interface based on electroo” culography,” in Proceedings of the 2004 IEEE International Conference on Robotics and Automation New Orleans, 2004. 4.0.2.1 [15] Z. K. T. E. Doyle and W. D. Greason, Design of an electroocular computing ” interface,” IEEE CCECE/CCGEI, Ottawa, May, 2006. 4.0.2.1 [16] S. H. Yutaka TOMITA, Yoshihiro IGARASHI and N. MATSUO, Electro” oculography mouse for amyotrophic lateral sclerosis patients,” in 18th Annual International Conference of the IEEE Engineering in Medicine and Biology Society, Amsterdam, 1996. 4.0.2.1, 5.1.4 [17] D. Kumar and E. Poole, Classification of eog for human computer inter” face,” in Proceedings of the Second Joint EMBS/BMES Conference Houston, 2002. 4.0.2.1 [18] G. Dian, Mobilrobot vez´erl´ese EOG-jelekkel. PPKE-ITK, Diplomaterv, 2007.
7.2 Konkl´ uzi´ o
84
[19] B. M. Gergely Dian and A. Mischinger, Vez´erl´esi algoritmusok kidolgoz´ asa ¨ all´o Laborat´orium II., 2006. 5.3 EOG-jelekre. PPKE-ITK, On´ [20] G. Dian and B. Marlok, Vez´erl´esi algoritmusok kidolgoz´ asa EOG-jelekre II. PPKE-ITK, M´ern¨oki Tervez´es, 2007. [21] K. T. Qiuping Ding and G. Li, Development of an eog (electro-oculography) ” based human-computer interface,” in Proceedings of the 2005 IEEE Engineering in Medicine and Biology 27th Annual Conference Shanghai, 2005.