ffigari / rastreador-ocular

a study of web eye tracking applicability to remote clinical studies
MIT License
2 stars 1 forks source link

Exportar instantes en los que el sujeto mueve la cabeza fuera de la posición inicial #1

Open GEJ1 opened 1 year ago

GEJ1 commented 1 year ago

Trabajando con el experimento de precisión, se me ocurre que podrían hacerse las siguientes mejoras para obtener algunos datos más:

  1. Guardar el momento (t) en que una persona mueve su cabeza fuera del bounding box con el que inició el experimento. Entiendo que esto ya estaba siendo utilizado en el experimento de antisacadas.
  2. Guardar la posición de los puntos de la cara obtenidos por el facemesh. En particular para poder obtener los puntos de los ojos e intentar estimar cuando hay pestañeos.
ffigari commented 1 year ago

Respecto de 1, el evento "la cabeza salió del bounding box original" seguro se está generando porque en el playground del eyetracker te avisa cuando movés la cabeza. Con la interfaz JSPsych casi seguro que tmb se están exportando, acá al final del experimento con el plugin EventsTrackingStop. Entre hoy y mañana corro el exp y te confirmo bien.

Para 2, abrí un issue aparte

ffigari commented 1 year ago

Ahí chequié y ese evento ya se exporta. Está en la última línea del CSV bajo la línea events. Es una lista de eventos con forma:

  {
    "timestamp": <instante del evento>,
    "event_name": <nombre del evento>
  },

El evento en cuestión es el que se llama rastoc:stillness-position-lost. Confirmame si es lo que buscas y si es así hago un PR para extender el README con esta info.

GEJ1 commented 1 year ago

Buenísmo. Revisando los datos me surge una duda:

¿El tiempo que está en timestamp puedo relacionarlo con el tiempo del trial?

Por ejemplo encontré este

_{'timestamp': '2023-01-24T17:05:49.495Z', 'eventname': 'rastoc:stillness-position-lost'}

Ese solo puedo relacionarlo con el tiempo al inicio del experimento? (en este caso 2023-01-24 16:58:28)

Lo pregunto porque hubiera esperado un dato en segundos o algo así.

ffigari commented 1 year ago

Ahh se me pasó eso! El ts de inicio está en la fila de trial_type = events-tracking-start, bajo la columna jspsych_start_time. El valor de esa celda es el timestamp que jspscyh marca como inicio del experimento. Para tener la cantidad de segundos habría que restarle ese ts a los de los eventos exportados.