Join free weekly webinars
Find us on

Real-time eye-tracking analysis in EventIDE

Recently, we have expanded the EventIDE features with a new eye-tracking analysis AddIn.  The implemented analysis performs real-time detection and labeling of fixations and macro/micro-saccades in eye-tracking data.  The detection results can be plotted on the status screen,  saved into a file, or used to control a flow of the experiment.  You can add the eye-tracking analysis to any experiment designed in EventIDE.


Youtube demo of the implemented eye-tracking analysis



Technical Specifications

· Submillisecond analysis time up to 2000Hz sampling rate

· Academically proven I-VT algorithm for saccade detection

· Instant detection of saccade states: start, moment of peak velocity and end.

· Automatic adaptation to changes in measurement noise

· Compatible with a dozens of eye-tracker models: Arrington, EyeLink, EyeTech, EyeTribe, GazePoint, ISCAN, Jazz-Novo, Mirametrix, SMI, Tobii.

· Online visualization and data access

· Export to data files, bitmaps and videos


Saccade & fixation identification algorithm

We choose  the adaptive velocity-threshold algorithm (I-VT) for saccade and fixation identification. The algorithm was originally proposed by Engbert, R. & Kliegl (ref. 1).  There 3 major advantages of I-VT over other algorithms (see ref. 2 for a review):


1) fast and simple computations

2) saccade can be detected instantly, before it’s completed

3) the algorithm has only 2 control parameters:  X and Y velocity thresholds.


Once started, the algorithm calculates instant X and Y velocities for all eye-tracker samples applying a moving average to suppress an occasional noise.  The samples with velocities above or below the threshold are labeled as saccades or fixations, respectively. The consecutive saccade or fixation samples get collapsed into a groups, on which descriptive statistics is estimated, e.g. the fixation center or saccade’s peak velocity.  When miniature thresholds are set , you can detect micro-saccades with the same algorithm.

You can see the examples of typical fixation and saccade patterns on the velocity plots on the Fig.1 below (these online plot is generated by EventIDE)


Fig 1. Saccade detection with gaze velocities (blue) and pre-defined velocity thresholds (red ellipses) On the left: a gaze fixation pattern. On the right: a saccade is detected, as the vertical velocity exceeds the threshold.


Eye-tracking analysis elements

There are 3 new EventIDE elements that deliver different results of the eye-tracking analysis. First, Tracking Monitor element can be used for evaluation of the analysis. The element generates a real-time plot that shows gaze positions and gaze velocities superimposed over a time. On the right of the Fig 2 below, you can see an example of such plot, which is generated in the visual search task. The detected saccades are marked by red areas.



Fig 2. Example Fixaccade plot (left) and  Gaze position/gaze velocity plot (right) in the visual search task: green lines show eye position, blue lines show velocity. The red zones indicate the detected saccades.


Next, Saccade Detector and Fixation Detector elements collect detailed statistics of detected saccades and fixations, correspondingly. These elements can plot the labeled gaze positions over a replica of the stimulus screen (see the left plot on the Fig. 2 above )

Finally, there is Velocity Threshold Estimator element that measures a tracker noise and automatically adjust the velocity thresholds in the analysis.


Numerical statistics

Below, an example of available numerical statistics of the eye-tracking analysis is shown. The statistics is collected by the Saccade Detector and Fixation Detector elements that worked in parallel in the same event. Note the matching times and positions among  sequential fixations and saccades. The statistics can be saved into a data file or used at runtime.


Detected fixations
Start Time (ms) Center X (pixel) Center Y (pixel) Duration
End Time (ms)
76.9 506 200 697 774.2
892.4 783 378 1565 2457.2
2595.5 706 585 301 2896.5
3036.2 548 563 236 3272.2
3390.5 341 536 97 3487.3
3594.8 235 351 1163 4758.5



Detected saccades
Start Time (ms) Start Point X (pixel) Start Point Y (pixel) Duration (ms) Amplitude (dva) Peak Velocity (dva/sec) Average Velocity (dva/sec) End Time (ms) End Point X(pixel) End Point Y (pixel)
774.2 508 179 118.15 3.82 42.90 29.57 892.4 647 149
2457.2 843 490 138.26 4.23 38.12 28.04 2595.5 716 582
2896.5 705 588 139.72 3.98 40.30 29.07 3036.2 558 569
3272.2 559 557 118.25 5.43 64.86 45.99 3390.5 358 536
3487.3 342 535 107.53 2.71 24.65 19.95 3594.8 243 520
4758.5 236 221 107.6 5.33 47.56 38.05 4866.1 351 60


Possible Applications

First, you can use the eye-tracking analysis to collect statistics of fixations and saccades during a experiment. The statistics can be plotted  on the status screen or saved into files (including plots and numerical data). This could be done either for the whole experiment or for selected events. Multiple analyses can be run in parallel, for example, you can use different thresholds for detecting saccades and micro saccades at the same time. It’s pretty straightforward to estimate any derivative statistics, e.g. fixation rate during a stimulus scene.

Second, since EventIDE does the analysis in real-time, you can use detection results to control a flow of your experiment.  For example, a  stimulus can be presented as fixation starts, and removed as a subsequent saccade is initiated.  You can implement more advanced paradigms too, e.g. choosing a target stimulus depending on a direction of spontaneous micro-saccade, similar to what has been used in the Yuval-Greenberg at al. study (ref. 3).

Finally, the eye-tracking analysis is used in another EventIDE AddIn, Usability Research. If you plan a usability study,  you can get obtain results in a very winsome form,  such as fixation heat-map, scan-path, etc.  The progressive formation of the usability plots can be recorded as a video.  A detailed post about the Usability Research AddIn will be published soon.



1. Engbert, R. & Kliegl, R. Microsaccades uncover the orientation of covert attention. Vision Research 43, 1035–1045 (2003).

2. Salvucci, D. D. & Goldberg, J. H. Identifying fixations and saccades in eye-tracking protocols. in Proceedings of the 2000 symposium on Eye tracking research & applications 71–78 (ACM, 2000)

3. Yuval-Greenberg, S., Merriam, E. P. & Heeger, D. J. Spontaneous microsaccades reflect shifts in covert attention. J. Neurosci. 34, 13693–13700 (2014).