Seguiment ocular en entorns virtuals i interfícies gràfiques per a l’interacció usuari màquina
1. “Seguiment ocular en entorns virtuals i interfícies
gràfiques per a l’interacció usuari-màquina”
Javier Flaque Menéndez, Jordi Borrell Sala
Universitat Ramon Llull, La Salle, Barcelona, Catalunya
Abstract articles [3] i [4] que ens descriuen uns mètodes
per calcular de forma força exacte els
Aquest paper tracta sobre un marc de treball pel moviments i direcció de l’ull, a partir d’aparells
seguiment per ordenador d’objectes en els quals l’usuari
hi posa atenció mentre navega per entorns virtuals com per exemple, ulleres, “eye” i “head
interactius. trackers”, elèctrodes, ... Un altre article [2], que
Primer construïm un mapa de notorietat a nivell de ens descriu un software o entorn que permet
píxel amb un sistema bottom-up, per trobar aquells píxels interactuar amb l’entorn virtual a partir dels
més visibles en funció del color, lluminositat, profunditat, moviments de l’ull com si aquest fos un ratolí.
mida i moviment, aplicant una operació que els relaciona
amb el píxels del seu entorn. Una altre article o línia d’investigació, el
Aquest mapa es convertit a un mapa a nivell d’objecte [5], ens relaciona el seguiment de l’ull en
agrupant els píxels que formen part d’un mateix objecte, i interfícies virtuals de treball amb diferents
finalment s’hi afegeixen característiques del context top- models cognitius humans. Finalment també
down, com per exemple el comportament de l’usuari a hem trobat un article [6] molt interessant que
nivell espacial i temporal en la navegació interactiva.
D’aquesta manera ens fem una idea de la zona o relaciona el moviment de l’ull en interfícies
direcció on l’usuari més probablement està mirant virtuals amb la usabilitat i possibles mètriques
fixament centrant la seva atenció. relacionades.
El marc i cost computacional permet crear mapes de
notorietat de 256 x 256 a temps real usant una GPU. 2. Resum Article Principal
Aquest marc de treball pot ser usat per la
renderització basada en la percepció, com per exemple
efectes segons la profunditat de camp o nivell de detall, 2.1. Introducció.
sense l’ús de cars artefactes de seguiment de l’ull,
Saber on l’usuari està mirant i fixant
Paraules clau: Entorns virtuals, seguiment ocular, l’atenció, es molt útil per a la creació d’entorns
interacció maquina-usuari. virtuals interactius, en qüestions com el nivell
de detall, simplificació de la geometria,...
Una forma d’aconseguir-ho es
1. Estat de l’art mitjançant aparells de seguiment de l’ull, però
son cars, incomodes, difícils de calibrar i
Hem trobat diferents articles relacionats
restringeixen moure el cap... Una alternativa es
amb aquest tema de forma directe o indirecte,
usar mètodes que es basen amb la percepció
de forma que ens situem en un marc de
visual humana per calcular per ordinador on
coneixement ampli relacionat amb la realitat
probablement l’usuari esta mirant i parant
virtual i l’enginyeria multimedia. En primer lloc
atenció.
tenim l’article principal [1], que ens aporta una
Es conegut que la atenció humana
metodologia per deduir on probablement
respon a un equilibri entre els estímuls bottom-
l’usuari està mirant de la pantalla a partir de
up, com el color, la lluminositat, i els contexts
característiques de la pantalla i la navegació de
top-down, com la memòria, el coneixement
l’usuari, en un entorn totalment immersiu sense
previ, i els objectius.
aparells incomodes. Per altra banda tenim dos
2. Primer, aquest marc permet el seguiment
d’objectes ja que es basa en la generació de La produnditat Bd de es determina
mapes de notorietat dels objectes en escena, mitjançant la formula:
enlloc de quedar-se només a nivell de pixel, ja
que segons recents estudis l’atenció humana es
basa amb els objectes més que en la posició.
on z és la profunditat del píxel i zfar i
Segon, basar-se només amb
znear les profunditats de clipping màxima i
característiques bottom-up, no reflecteixen les
mínima
intencions de l’usuari, de forma que cal usar
contexts top-down com intencions a nivell
La mida de l’objecte Bs, es considera
temporal i espacial per tal de deduir el
com a píxels totals de l’objecte dividit pels
comportament de l’usuari durant la navegació
píxels totals de la imatge.
per entorns virtuals i així determinar més
fidelment la regió d’interès.
El moviment Bm, es troba partir de la
Tercer, el cost computacional per
diferència de la posició entre dos frames (r i r-
generar els mapes de notorietat és relativament
1) per a cada objecte k:
elevat, per tant ha estat necessari l’ús d’unitats
GPU i hardward midmad.
Convertint els 5 mapes de
caracteristiques a 5 mapes de contrastos Cl, Ch,
2.2. Visió General.
Cd, Cs, Cm , usant la diferencia multiescala de
Com mostra la figura 1, el marc de centre-envolvent, on f Є {l,h,d,s,m}.
treball consisteix en dues parts, per una cantó
construir el mapa de notorietat bottom-up i per
altre banda modular-lo usant contexts top-
down. Finalment obtenim un únic mapa topogràfic de
El mapa de notorietat bottom-up es notorietat Sp, que és una combinació linear dels
construeix a partir de dos caracterísques mapes de contrastos:
d’imatge: color i lluminositat, i tres
característiques de moviment 3D: profunditat,
mida de l’bjecte i moviment, generant un mapa
per cada caracteristica com a imatge piramidal, on , els pesos wf responen a:
i a partir de les diferencies amb el seu entorn
generar uns mapes de contrastos.
Finalment aquests mapes de contrastos i Sp varia entre [0,1].
son combinats linearment per formar un únic
mapa de notorietat bottom-up. 2.4. Modulació amb contexts top-
Aquest mapa de notorietat bottom-up down.
per píxels es convertit en un mapa de notorietat
d’objectes, i modulat per els contextos top- Primer convertim el mapa de notorietat a
down de distribució espacial (intencions a curt nivell de píxel Sp, en un mapa de notorietat a
termini) i a nivell temporal ( intencions a més nivell de objecte Ŝo .
llarg termini). Obtenint un mapa que és filtrat
linearment per un filtre de Kalman.
on n(k) son el nombre de pixels de l’objecte k,
2.3. Mapa de notorietat bottom-up (u,v) es la posició del pixel i Ti(k) es el valor
a temps real relatiu de la tasca de l’usuari, la qual es afegida
per excluir objectes del fons sense valor.
La lluminància Bl i el color (to) Bh son Finalment a partir dels contextos
obtinguts de la conversió de RGB a HSL on
espacial Ts i temporal Tt, que son usats per
H= color i L = lluminància.
3. deduir les intencions de l’usuari, determinem el (2) Construir el mapa de notorietat a nivell de
mapa final de notorietat d’objectes So. píxel usant GPU.
(3) Convertir el mapa a nivell de píxel en el
El context espacial depèn del moviment mapa a nivell d’objecte segons els contexts top-
de l’usuari en l’entorn virtual. Podem distingir down.
tres tipus de comportament espaial: (4) Guardar el resultat en una llista d’intencions
Em primer lloc, essent la dels objectes i filtrar usant un filtre linear de
diferencia de x (distancia normalitzada en eix X Kalman.
entre objecte i usuari: veure figura 2) entre dos
fotogrames, i , i y (distancia El model de renderització ha estat exclòs
normalitzada en eix Y entre objecte i de l’anàlisi del cost computacional. S’observa
observador: veure figura 2) i <v> la direcció que el cost de càlcul dels contextos top-down es
on mira l’usuari i <w> la direcció on es mou pot considerar negligible en comparació amb
l’usuari, llavors s’observen tres comportaments: els costos de creació de del mapa de notorietat
bottom-up, com podem observar a la figura 3.
- una caiguda exponencial entre la El càlcul i aplicació del marc de treball
distancia de la pantalla amb els objectes del es possible a temps real per a mapes de 256 x
centre. 256 fins i tot incloent el temps del model de
renderització i entorns 3D per sobre de un milió
- Distribució de Weibull. de polígons.
- Si <v · w> = 0 i Δx>0 llavors vol dir que ens
allunyem de l’objecte en la navegació.
Obtenim: 2.6. Experiment per estimar el grau
d’encert.
Per validar la finura del sistema de
on Ts(k) està entre [ 0 , 0.5 ]. seguiment de l’atenció del nostre patró de
seguiment, s’ha afectuat un experiment,
El context temporal és la observació del enregistrant els moviments de l’ull amb un
context espacial al llarg del temps o de diferents aparell de seguiment monocular (ulleres amb
fotogrames per tal d’establir les intencions a una camera). S’ha analitzat amb un entorn
llarg termini. virtual dinàmic i un d’estàtic, amb 16
participants.
S’han calibrat els aparells per a cada
participant i s’han fet unes sessions de
navegació lliure per l’entorn virtual per
2.5. Detalls d’implementació i controlar les tecles i sistema de navegació per
funcionament computacional aquest.
De les dades obtingudes s’ha observat
Aquest entorn o marc de treball de tres tipus de moviment: vista fixa, moviment
seguiment en temps real esta implementat usant ràpid i deambulació.
OpenGL Shading Language GLSL en un PC S’han obtingut dos tipus de mesura. El
Pentium 4 a 3.2 GHz Pentium 4 PC i una nombre de fotogrames en que la vista del
targeta gràfica GeForce 7900GTX. Durant participant coincidia amb la predicció del
temps d’execució, s’ha usat una GPU per sistema per l’objecte d’atenció més probable
accelerar el funcionament a temps real. A1, i el nombre de fotogrames que la vista del
participant coincidia amb els objectes segon i
Tenim 4 parts o nivells de computació: tercer de més probable atenció, A2 i A3, tal i
com mostra la figura 4.
(1) Actualitzar caracteristiques a nivell També s’ha intentat determinar la
d’objecte i contexte Top-Down ( contexte contribució de cada element del marc de treball
espacial i temporal). en l’encert del sistema, essent B:
4. característiques de la imatge, E: característiques amb una GUI. Per fer això usa la combinació
dels objectes i T: contexts top-down. de la vista i el teclat.
Tal com podem observar en la taula 2 i L’usuari es fixa amb un punt de la
figura 5, T té una rellevància estadística pantalla i aquesta es ampliada pel sistema.
superior a B i E, tot i que aquests també L’ampliació és quadriculada per uns punts
contribueixen significativament. Podem doncs ataronjat, els quals faciliten a l’usuari l’atenció
concloure doncs que l’aproximació top-down de la vista i un millor selecció de l’objecte de
basada en contexts espacial i temporal que la pantalla.
pretén determinar les intencions i motivacions Les accions d’interacció de l’usuari
del usuari tenen un paper clau. amb la GUI són creades mitjançant Hotkeys
(tecles predefinides per l’usuari). Per exemple,
3. Comparativa l’usuari es fixa en un botó o link, i
posteriorment apreta la tecla corresponent del
Una alternativa a la solució plantejada a teclat a imatge del botó esquerra del ratolí.
l’article principal, seria la solució “”, que Per calcular el vector de direcció de la
proposa el seguiment de l’ull mitjançant una mirada, també podem aplicar una metodologia
tècnica basada amb la electrooculografia, que que consisteix en a partir de unes ulleres amb
permet detectar moviments oculars basant-se dues cameres, una d’elles fa el seguiment de la
amb la diferencia de potencial entre la córnea i pupil·la i l’altre mira cap a l’escena o visió de
la retina (EOG). Aquest senyal després és usat l’usuari. A més a més tenim un “head tracker”
per controlar una interfície gràfica (GUI) de que calcula el moviment i orientació de la
forma que l’ull fa la mateixa funció que el camera. A partir d’aquest aparells podem
ratolí. calcular un punt de visió (PoG) amb unes
La tècnica de seguiment de l’ull, EOG, coordenades (x,y) sobre la imatge de vídeo de
s’aconsegueix col·locant dos elèctrodes a la part la camera d’escena. A partir d’aquesta
exterior de l’ull i per a derivació horitzontal i informació podrem calcular i convertir a
dos més per a la derivació vertical, controlant coordenades del nostre món virtual.
així els moviments en ambdues direccions. Un experiment amb diversos usuaris,
Apareixen alguns problemes derivats sobre models cognitius i la seva relació amb el
d’aquesta tècnica: moviment ocular, ens aporta una nova dimensió
1. Processament de dades: Eliminar soroll i de coneixement. Aquest experiment es fa a
compensar errors de calibració. partir d’una interfície de control del tràfic aeri
2. Disseny de tècniques d’interacció on el usuaris han d’actuar com a controladors
usuari-màquina. aeris. L’anàlisi tracta amb models de predicció
sobre funcionament de les tasques a realitzar,
Podem aplicar diferents comandes a temps de reacció i càrrega de treball, en tres
imatge del ratolí, de 2 tipus: nivells de demanda de tràfic i dos
1. Desplaçament del cursor, per accés visualitzacions: per text o per colors, en dos
directe ( situar el cursor amb la vista) i regions principals: la pantalla del radar i la
tècnica d’escombrat ( moure el cursor finestra de missatges (figures 8, 9 i 10). El
amb la vista). resultat es que els usuaris van més lents i amb
2. Validació d’accions, com per exemple més esforç en entorns de text i a més gasten
click o doble click mitjançant molt més temps de visió llegint els missatges de
moviments oculars o accions facial la finestra de missatges (25 %) i menys temps
predefinits, com aclucada d’ulls. en la pantalla (55%) en relació amb entorns
amb colors amb un (12%) i (71%).
Una altra alternativa o possible aplicació Finalment, relacionant la direcció o punt de
del seguiment ocular, més a alt nivell, seria el la mirada en una interfície gràfica amb la
“EyePoint”. Aquest sistema, prèvia calibració i usabilitat, hem observat l’existència de diverses
ús d’un “eye tracker” estandard comercial, mètriques que ens ajudaran fa fer una anàlisi tal
ofereix a l’usuari un mecanisme per interactuar com mostra la taula 1. Diferenciem les següents
mètriques.
5. 1. Nombre de fixacions: mostra eficiència
de la cerca d’elements.
2. Temps de mirada en una àrea d’interès:
mostra la importància de l’element.
3. Duració d’una fixació: mostra la
dificultat d’extraure informació.
4. Nombre de fixacions en una àrea
d’interès: mostra la importància de
l’element.
5. Nombre de fixacions voluntàries i/o
involuntàries: involuntàries (<240ms) i
voluntàries (>320ms).
6. Temps de la primera fixació en una àrea
d’interès: mesura si existeix una cerca
d’un objectiu.
4. Resultats
4.1. Taules
Taula 1. Mètriques del seguiment ocular en usabilitat.
6. Taula 2. Errors d’estimació per les vuit combinacions. Figura 3. Costos computacional del càlcul del mapa de
notorietat per diferents mides i processadors.
4.2. Figures
Figure 1: procediment a temps real.
Figura 4. Encert en la predicció
Figura 5. Errors de predicció amb o sense alguna de les
característiques.
Figure 2: Exemple de context espacial.
Figura 6. Exemple del Eyepoint.
7. Figura 7. Software de calibració del Eyepoint. característiques preatentives bottom-up com
lluminància, color, profunditat, mida i
moviment, i hem afegit característiques top-
down que aporten informació del context
espacial i temporal per deduir les intencions de
l’usuari a partir de la seva navegació.
S’ha observat que gracies a una GPU
podem calcular i renderitzar en temps real
mapes de notorietat de 256 x 256, i que les
característiques top-down juguen un paper clau
per a la predicció.
En un futur es pretén millorar i
desenvolupar els models de predicció top-
down.
Una línia de futur conseqüència de la
fusió de totes les alternatives, podria ser la
Figura 8. Zones de la interfície de control aeri.
creació d’entorns virtuals i interfícies gràfiques,
des d’un punt de vista de disseny i usabilitat, a
partir de les característiques bottom-up i top
down (més immersives), color vs. text, que ens
ofereixen aquests articles, i fer-ne una
comprovació del seu bon funcionament a partir
de mètriques d’usabilitat, models cognitius i
aparells de seguiment ocular més precisos.
Bibliografia.
[1] Sungkil Lee, Gerard Jounghyun Kim, Seungmoon Choiame
Real-Time Tracking of Visually Attended Objects in
Interactive Virtual Environments. VRST, Association for
Figura 9. Àrees de visió en mode color. Computing Machinery, 2007. 29-38.
[2] Manu Kumar, Andreas Paepcke, Terry Winograd Brown.
EyePoint: Practical Pointing and Selection Using Gaze and
Keyboard. CHI 2007.
[3] R. Barea, L. Boquete, M. Mazo, E. López, L.M. Bergasa.
Diseño de un ratón electrooculográfico para el control de
Interfaces Gráficos. Departamento de Electrónica.
Universidad de Alcalá.
[4] Adrian Haffegee_, Vassil Alexandrov, Russell Barrow. Eye
tracking and gaze vector calculation within immersive
virtual environments VRST, Association for Computing
Machinery, 2007. 225-226.
[5] Mike Bartels, Sandra P. Marshall. Eye Tracking Insights
into Cognitive Modeling. ETRA 2006. 141-178.
[6] Robert J. K. Jacob and Keith S. KarnEye Tracking in
Human-Computer Interaction and Usability Research:
Ready to Deliver the Promises. Oxford, England, 2003.
573-599.
5. Conclusions i treball de futur
S’ha proposat un sistema de seguiment
dels objectes atesos per l’usuari en entorns
virtuals interactius 3D, que utilitza