Skip to main content

PyEtSimul: An Open-Source Python Software Framework for Eye Tracking Simulation

Project description

PyEtSimul: An Open-Source Python Software Framework for Eye Tracking Simulation

PyPI version Downloads License Documentation DOI

PyEtSimul is an open-source Python framework for simulating video-based eye trackers by generating synthetic eye features through geometric modeling. The framework allows flexible positioning of eyes, cameras, and light sources in 3D space, with controlled variation of eye anatomical features and camera properties. For full documentation, see pyetsimul.readthedocs.io.

About

Core functionalities are based on "A Software Framework for Simulating Eye Trackers" by Böhme et al. (2008), ported from the original MATLAB codebase. This Python implementation includes enhancements, improvements, bug fixes, and additional features.

[!WARNING] Note: There is no guarantee that this code works exactly like the original MATLAB implementation.

Installation

Requirements

  • Python ≥3.11

From PyPI

pip install pyetsimul

Using uv

uv pip install pyetsimul

From source

git clone https://github.com/mh-salari/pyetsimul.git
cd pyetsimul
uv sync

Or with pip:

git clone https://github.com/mh-salari/pyetsimul.git
cd pyetsimul
python3 -m pip install .

For development:

git clone https://github.com/mh-salari/pyetsimul.git
cd pyetsimul
python3 -m pip install -e .

Examples

After installation, explore the various examples in the examples/ directory to see PyEtSimul in action.

Citation

This work has been accepted for publication at ETRA 2026. The DOI will be added when the proceedings are published.

Cite as:

Salari, M., Niehorster, D. C., Hansen, D. W., & Bednarik, R. (2026).
PyEtSimul: An Open-Source Python Framework for Eye-Tracking Simulation.
In Proceedings of the 2026 Eye Tracking Research & Applications (ETRA 2026). ACM.

Also cite the original work:

Martin Böhme, Michael Dorr, Mathis Graw, Thomas Martinetz, and Erhardt Barth.
"A software framework for simulating eye trackers."
In Proceedings of the 2008 Symposium on Eye Tracking Research & Applications (ETRA '08),
pages 251-258, ACM, 2008.

Original MATLAB Implementation

For the original MATLAB version and detailed background, visit: https://github.com/mh-salari/et_simul-1.01

Acknowledgments

This project has received funding from the European Union's Horizon Europe research and innovation funding program under grant agreement No 101072410, Eyes4ICU project.

Funded by EU Eyes4ICU

License

GPL-3.0-or-later

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyetsimul-3.2.4.tar.gz (3.6 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pyetsimul-3.2.4-py3-none-any.whl (183.3 kB view details)

Uploaded Python 3

File details

Details for the file pyetsimul-3.2.4.tar.gz.

File metadata

  • Download URL: pyetsimul-3.2.4.tar.gz
  • Upload date:
  • Size: 3.6 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.15

File hashes

Hashes for pyetsimul-3.2.4.tar.gz
Algorithm Hash digest
SHA256 a477ff7123732b7ce9bf0e99c2164b2f1c269142f64c29f77fa44d261d90e6f2
MD5 cb071a98e2ca2c25ce377a2573ef2b11
BLAKE2b-256 cde94af0385ec615e3d48555ded6f2a2cc5201c583bc11e8775b4516cf404a0e

See more details on using hashes here.

File details

Details for the file pyetsimul-3.2.4-py3-none-any.whl.

File metadata

  • Download URL: pyetsimul-3.2.4-py3-none-any.whl
  • Upload date:
  • Size: 183.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.15

File hashes

Hashes for pyetsimul-3.2.4-py3-none-any.whl
Algorithm Hash digest
SHA256 505e5d5561a59c7c97e5aadd51c478ef8fb69dd7c32060fae5333118f2877a01
MD5 f099bf4db7ee49f34fbc91b774b7af92
BLAKE2b-256 f26d388b6beaf7cecbe1df1a9358beda99909215db4cbe2fdb88d5c30ae893c5

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page