Rozbudowany prototyp analizy danych okulograficznych z headsetów Varjo.
Wczytaj plik CSV zapisany przez Varjo Base (folder Wideo\Varjo) albo połącz się
z mostkiem LIVE, aby śledzić dane w czasie rzeczywistym. Wszystko liczy się lokalnie
w przeglądarce — żadne dane nie opuszczają komputera.
Wykorzystuje pełny zestaw pól logu Varjo: źrenice i tęczówki, otwartość powiek, wektory wzroku 3D, projekcje na obraz, focus distance, stabilność, statusy śledzenia, IPD i znaczniki czasu.
Indeks obciążenia: ważona kombinacja rozszerzenia źrenicy względem linii bazowej, spadku częstości mrugania, częstości sakkad i aktywności pupilarnej (składowa wysokoczęstotliwościowa). Indeks zmęczenia: PERCLOS + wydłużanie się mrugnięć. Okna 1-sekundowe, wygładzanie 5 s.
Częściowa normalizacja anatomiczna — tęczówka ma stały rozmiar, więc stosunek lepiej znosi różnice między osobami niż surowa średnica (nadal wrażliwy na światło).
Odległość akomodacji/wergencji 0–2 m: odróżnia patrzenie na elementy bliskie (kokpit, HUD) od patrzenia „w dal”.
| Metryka | Lewe oko | Prawe oko | Łącznie |
|---|
Eksport zawiera dla każdej sekundy: indeks obciążenia i jego składowe, indeks zmęczenia, PERCLOS, częstość mrugnięć i sakkad, liczbę i śr. czas fiksacji, średnice źrenic, stosunki źrenica/tęczówka, otwartość powiek, focus distance, stabilność i odsetek ważnych próbek.
C:\Users\<nazwa>\Videos\Varjo: wideo .avi + dane .csv..csv powyżej.Są dwie drogi:
varjo_live_bridge.py obserwuje najnowszy plik w Videos\Varjo
i wysyła nowe wiersze przez WebSocket. Uruchom: pip install websockets, potem
python varjo_live_bridge.py, w Varjo Base naciśnij Record, a tutaj kliknij Tryb LIVE.varjo_GetGazeData()), wysyłająca ten sam format JSON na ten sam WebSocket —
strona nie wymaga wtedy żadnych zmian.Format wiadomości: jeden obiekt JSON na próbkę, klucze = nazwy kolumn CSV Varjo.