PyGaze - Open-source toolbox for eye tracking in Python
Description
PyGaze is an open-source toolbox for eye tracking in Python. It has an uniform and user-friendy syntax and it is aimed for people with minor to advanced programming skills in Python. Pygaze acts as a wrapper around several existing packages. From stimulus presentation to eye-tracker communication: everything can be handled by via PyGaze scripting. As a a Python library for eye tracking you can use a set of plugins that will allow you to use PyGaze from within OpenSesame. You can install PyGaze on Windows as well as on Ubuntu.
PyGaze supports the following eye trackers:
- EyeLink — For information on how to run OpenSesame with PyLink support
- EyeTribe — Works out of the box.
Advantages of PyGaze:
- user-friendly platform
- saccade detection algorithm (for online detection)
- sharing code is easy (works on Windows, Linux and Mac OSX)
- creating eyetracking experiments in Python syntax with the least possible effort
- can be used for visual and auditory stimulus presentation; for response collection via keyboard, mouse, joystick, and other external hardware
URL:
- http://www.pygaze.org/
- https://www.ncbi.nlm.nih.gov/pubmed/24258321
- http://osdoc.cogsci.nl/3.1/manual/eyetracking/pygaze/
Prerequisites for using this software - Software/Hardware : PyGame, PsychoPy, pylink (for SR Research EyeLink systems), SensoMotoric Instruments’ ,iViewX API, and the Tobii SDK.
Project Anatomy
Community: PyGaze community
Leadership: Edwin Dalmaijer
Forking: Fork your own copy at this address https://github.com/esdalmaijer/PyGaze, for which you will need a GitHub account.
Communication: There are a couple of ways for communicating with PyGaze developers, one is their support forum accessible from http://forum.cogsci.nl/index.php?p=/categories/pygaze and the other is a contact form found at http://www.pygaze.org/contact/ (in case you do not want to create a forum account)
Roadmaps:
Original goal:
- bundles of code for a large range of different eye trackers from different manufacturers into a single interface.
- open-source based on excisting libraries
Future goals:
Short term:
- better variable management and getting rid of some annoying bugs
- an analysis suite to complement the existing experimental library
Long term:
- incorporate support for more eye trackers and support for even more obscure peripherals
- support for electroencephalography
Source: Interview with lead developer: https://opensource.com/life/15/12/pygaze-open-source-eye-tracking-toolkit
Releases:
- Behavior Research Methods, December 2014, Volume 46, Issue 4, pp 913–921 | Cite as PyGaze: An open-source, cross-platform toolbox for minimal-effort programming of eyetracking experiments - https://link.springer.com/article/10.3758/s13428-013-0422-2
- Edwin S. Dalmaijer, Sebastiaan Mathôt, Stefan Van der Stigchel, 2013 - http://www.pygaze.org/resources/downloads/Dalmaijer_Mathot_Stigchel_2013_PyGaze_manuscript.pdf
- Dalmaijer, E.S., Mathôt, S., & Van der Stigchel, S. (2013). PyGaze: an open-source, cross-platform toolbox for minimal-effort programming of eye tracking experiments. Behaviour Research Methods. doi:10.3758/s13428-013-0422-2
Repositories:
The main repository of PyGaze is: https://github.com/esdalmaijer/PyGaze , where you can download the source code, clone it to desktop, or even make your own fork. There is also a repository for PyGazeAnalizer available at: https://github.com/esdalmaijer/PyGazeAnalyser
Packaging:
Different packages for PyGaze, including Windows, Linux and Mac OS X packages can be found at the downloads page of PyGaze: http://www.pygaze.org/downloads/
Upstream/downstream:
So far, from 2013 when it was originaly published, PyGaze has 12 contibutors, and it is open for contributing for upstream, after of course your pull request is revised and approved.
Version Control:
version 0.6.0 (07-09-2017) - Latest version control
Trackers:
You can see commits and verified changes at this link: https://github.com/esdalmaijer/PyGaze/commits/master
Project Evaluation
Fieldtrips
Github: https://github.com/esdalmaijer/PyGaze
Openhub: / (PyGaze is not listed here)
Source Forge: / (PyGaze is not listed here)
Evaluation
Licensing: GNU Public License (version 3)
Language: Python
Activity: Active
Number of contributors: There are two developers and a couple of official contributors. They are listed on this page: http://www.pygaze.org/contributors/
Size: There aren't any official releases on GitHub, you can find out the size of the packages from the download page after you download them. http://www.pygaze.org/downloads/
Issue tracker: There is a forum where you can write about an issue: http://forum.cogsci.nl/index.php?p=/categories/pygaze and there is the issue tracker on GitHub: https://github.com/esdalmaijer/PyGaze/issues
New contributor: If you want to be a contributor to PyGaze one way is through the GitHub page, where you can make your own fork and pull request and wait for an approval.
Community norms: You can report an issue through the forum page , help to fix it by forking in the GitHub repository and commit fixes and if you prefer to work via different channels (contact form, or via carrier pigeon), that’s fine too.
User base: Their user base are the developers and the contributors: http://www.pygaze.org/contributors/