EyeLoop Playground License: GPL v3 contributions welcome lab

EyeLoop Playground is a supplementary test space for EyeLoop, a Python 3-based eye-tracker tailored specifically to dynamic, closed-loop experiments on consumer-grade hardware. EyeLoop Playground contains test footage and data to get started.



  • [x] Sample footage (videos)
  • [x] Sample data (json)
  • [x] Blink calibration files.
  • [x] Binarization parameter files.

Click here to access the data.

How to

Adjust binarization parameters

To achieve good eye-tracking performance, EyeLoop's binarization parameters should be optimized to your video material. Users can adjust two parameters, namely:

  • Binary threshold

Pupil: R/F – Corneal reflection: W/S

  • Gaussian power

Pupil: T/G – Corneal reflection: E/D

Binary thresholding

When the binary threshold is turned down, dark pixels dominate, which can make the pupil less likely to stand out:

When the binary threshold is too high, light pixels dominate:

The binary threshold should be set somewhere in-between to optimize the pupil contour:

Gaussian smoothing

When the Gaussian power is too low, the pupil appears grainy. This can introduce noise, making eye-tracking less ideal:

When the Gaussian power is too high, the pupil might blend into adjacent tissue, making it less discernible:

The Gaussian power should be set to maximize discernibility, while minimizing noise:

When the parameter set has been optimized, EyeLoop will automatically save it for subsequent use. See below on how to load the parameter file.

Load parameter file

To load a parameter file, pass it to EyeLoop via command line argument --params, specifically:

eyeloop --params [path-to-parameter-file]

Load blink calibration file

On the first run, EyeLoop will automatically calibrate its blink detection to your video footage. This generates a calibration file that can be loaded for subsequent trials.

To load a blink calibration file, pass it to EyeLoop via command line argument --blink, specifically:

eyeloop --blink [path-to-calibration-file]


Any eye-tracking footage (preferably raw video material) are welcome.

Contact Simon Arvin at [email protected] to contribute.