From f64466514e78e1eba47daaeba0438084f0a35543 Mon Sep 17 00:00:00 2001 From: Marc Tonsen Date: Mon, 30 Oct 2023 09:54:55 +0100 Subject: [PATCH] Added docs for eye states --- neon/general/data-format/index.md | 15 ++++++++++++- neon/general/data-streams/3d_eye_states.png | Bin 0 -> 81357 bytes neon/general/data-streams/index.md | 23 +++++++++++++------- 3 files changed, 29 insertions(+), 9 deletions(-) create mode 100644 neon/general/data-streams/3d_eye_states.png diff --git a/neon/general/data-format/index.md b/neon/general/data-format/index.md index 6d9bf5fee..abfc072fa 100644 --- a/neon/general/data-format/index.md +++ b/neon/general/data-format/index.md @@ -78,7 +78,7 @@ This file contains [gaze](/neon/basic-concepts/data-streams/#gaze) data in world | -------- | -------- | | **section id** | Unique identifier of the corresponding section. | | **recording id** | Unique identifier of the recording this sample belongs to. | -| **timestamp [ns]** | UTC timestamp in nanoseconds of the sample. Equal to the timestamp of the original gaze sample before mapping. | +| **timestamp [ns]** | UTC timestamp in nanoseconds of the sample. Equal to the timestamp of the eye video frame this sample was generated with. | | **gaze x [px]** | Float value representing the x-coordinate of the mapped gaze point in world camera pixel coordinates. | **gaze y [px]** | Same as "gaze x [px]" but for the y-coordinate. | | **worn** | These values indicate whether Neon has been worn by a subject at the respective point in time. `1.0` indicates that it has been worn, while `0.0` indicates that it has not been worn. | @@ -106,6 +106,19 @@ The corresponding gaze samples that belong to each fixation can be determined fr | **azimuth [deg]** | The [azimuth](https://en.wikipedia.org/wiki/Horizontal_coordinate_system) of the gaze ray corresponding to the fixation location in relation to the scene camera in degrees. | | **elevation [deg]** | The [elevation](https://en.wikipedia.org/wiki/Horizontal_coordinate_system) of the gaze ray corresponding to the fixation location in relation to the scene camera in degrees. | +## 3d_eye_states.csv.csv +This file contains [3D eye states](/general/data-streams/#3d-eye-states) as well as [pupil diameter](/general/data-streams/#pupil-diamaters) data. + + +| Field | Description | +| ------------------------- | -------- | +| **section id** | Unique identifier of the corresponding section. | +| **recording id** | Unique identifier of the recording this sample belongs to. | +| **timestamp [ns]** | UTC timestamp in nanoseconds of the sample. Equal to the timestamp of the eye video frame this sample was generated with. | +| **pupil diameter left [mm]**
**pupil diameter right [mm]**| Physical pupil diameter of the left and right eye respectively. Currently those values are always equal. | +| **eye ball center left x [mm]**
**eye ball center left y [mm]**
**eye ball center left z [mm]**
**eye ball center right x [mm]**
**eye ball center right y [mm]**
**eye ball center right z [mm]** | Location of left and right eye ball centers in millimeters in relation to the Neon module. For details on the coordinate systems see [here](TODO). | +| **optical axis left x**
**optical axis left y**
**optical axis left z**
**optical axis right x**
**optical axis right y**
**optical axis right z** | Directional vector describing the optical axis of the left and right eye, i.e. the vector pointing from eye ball center to pupil center of the resepective eye. For details on the coordinate systems see [here](TODO). | + ## blinks.csv This file contains [blinks](/neon/basic-concepts/data-streams/#blinks) detected in the eye video. The corresponding gaze samples that belong to each blink can be determined from the `gaze.csv` file using the `blink id` field. diff --git a/neon/general/data-streams/3d_eye_states.png b/neon/general/data-streams/3d_eye_states.png new file mode 100644 index 0000000000000000000000000000000000000000..623beb49343c2b4a54a6c03a7e6202619d571314 GIT binary patch literal 81357 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 ShW|16pRA;UMD7iPhyM@DGcl(C literal 0 HcmV?d00001 diff --git a/neon/general/data-streams/index.md b/neon/general/data-streams/index.md index ec340f6a9..4fb51742f 100644 --- a/neon/general/data-streams/index.md +++ b/neon/general/data-streams/index.md @@ -10,13 +10,13 @@ An IR LED is located just above each camera, which guarantees good illumination ## Gaze Real-time -The Neon Companion app can provide gaze data in real-time. When using a OnePlus 8 Companion device, the available framerate is +120 Hz (the achieved framerate varies from ~200Hz in the first minute of a recording to ~120Hz for longer recordings. This is due to restrictions in resource consumption applied by the Android operating system). Other apps running simultaneously on the phone may decrease the framerate. - -After a recording is uploaded to Pupil Cloud, gaze data is automatically re-computed at the full framerate of 200 Hz and can be downloaded from there. +The Neon Companion app can provide gaze data in real-time at up to 200 Hz. Gaze data is output in pixel space of the scene camera image, which has a resolution of 1600x1200 px. The origin is in the top-left corner of the image. ![Gaze](./gaze.jpg) -Gaze data is output in pixel space of the scene camera image, which has a resolution of 1600x1200 px. The origin is in the top-left corner of the image. +The achieved framerate can vary based on what Companion device is used and environmental conditions. One the OnePlus 10 the full 200 Hz can generally be achieved outside of especially hot environments. On the OnePlus 8 the framerate typically drops to ~120 Hz within a few minutes of starting a recording. Other apps running simultaneously on the phone may decrease the framerate. + +After a recording is uploaded to Pupil Cloud, gaze data is automatically re-computed at the full 200 Hz framerat and can be downloaded from there. The gaze estimation algorithm is based on end-2-end deep learning and provides gaze data robustly without requiring a calibration. We are currently working on a white paper that thoroughly evaluated the algorithm and will link it here once it is published. @@ -29,6 +29,16 @@ Fixations are calculated automatically in Pupil Cloud after uploading a recordin The deployed fixation detection algorithm was specifically designed for head-mounted eye trackers and offers increased robustness in the presence of head-movements. Especially movements due to vestibulo-ocular reflex are compensated for, which is not the case for most other fixation detection algorithms. Read more about that in the [Pupil Labs fixation detector whitepaper](https://docs.google.com/document/d/1dTL1VS83F-W1AZfbG-EogYwq2PFk463HqwGgshK3yJE/export?format=pdf) +## 3D Eye States Pupil Cloud +After uploading a recording to Pupil Cloud, 3D eye states are computed automatically at 200 Hz. The 3D eye states are a time series of each eye's position and orientation in 3D space, given by the eye ball center and the optical axis of each eye. + +The coordinate system is defined as follows: + +![Coordinate systems of 3D eye states](./3d_eye_states.png) + +## Pupil Diameters Pupil Cloud +After uploading a recording to Pupil Cloud, pupil diameters are computed automatically at 200 Hz. The computed pupil diameters correspond to the physical diameter of the 3D pupil, rather than the apparent pupil diameter in the eye video. Measurements are given in mm. + ## Blinks Pupil CloudNeon Player During blinks the eye is briefly covered by the eye lids, which serves the purpose of spreading tears across the cornea. The blink rate and blink duration are also correlated with cognitive processes, which makes them interesting physiological signals. @@ -64,7 +74,4 @@ When exporting recordings from Pupil Cloud or Neon Player the IMU's orientation Pitch is defined as a rotation around the x-axis with a value range of -90° to +90°. Yaw and roll are rotations around the y- and z-axis, respectively, with value ranges of -180° to +180°. -![IMU Pitch, Yaw, Roll](./imu_pitch_yaw_roll.jpg) - -## Pupil Diamater and Eye Pose Pupil Cloud -Coming soon! \ No newline at end of file +![IMU Pitch, Yaw, Roll](./imu_pitch_yaw_roll.jpg) \ No newline at end of file