Skip to main content

Algorithmic eye-tracking analysis

Project description

GazeClassify

PiPy package to algorithmically annotate eye-tracking data.

Special thanks to Pixellib for providing algorithms and to PySport for inspiration with the domain model.

Open In Colab Test status Downloads Downloads


What is GazeClassify?

GazeClassify provides automatized and standardized eye-tracking annotation. Anyone can analyze gaze data online with less than 10 lines of code.

Exported csv will contain distance from gaze (red circle) to human joints (left image) and human shapes (right image) for each frame.

frame number classifier name gaze_distance [pixel] person_id joint name
0 Human_Joints 79 0 Neck
... ... ... ... ...
0 Human_Shape 0 None None
... ... ... ... ...

Run on example data

from gazeclassify import Analysis, PupilLoader, SemanticSegmentation, InstanceSegmentation
from gazeclassify import example_trial

analysis = Analysis()

PupilLoader(analysis).from_recordings_folder(example_trial())

SemanticSegmentation(analysis).classify("Human_Shape")
InstanceSegmentation(analysis).classify("Human_Joints")

analysis.save_to_csv()

Run on your own data

Capture eye tracking data from a Pupil eye tracker. Then, export the data using Pupil software. You will get a folder with the exported world video and the gaze timestamps. Finally, let gazeclassify analyze the exported data:

from gazeclassify import Analysis, PupilLoader, SemanticSegmentation, InstanceSegmentation

analysis = Analysis()

PupilLoader(analysis).from_recordings_folder("path/to/your/folder_with_exported_data/")

SemanticSegmentation(analysis).classify("Human_Shape")
InstanceSegmentation(analysis).classify("Human_Joints")

analysis.save_to_csv()

Citation

Please cite this paper in your publications if GazeClassify helps your research.

@inproceedings{10.1145/3450341.3458886,
  author = {M\"{u}ller, Daniel and Mann, David},
  title = {Algorithmic Gaze Classification for Mobile Eye-Tracking},
  year = {2021},
  booktitle = {ACM Symposium on Eye Tracking Research and Applications}
}

Project details


Download files

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

Files for gazeclassify, version 0.9.1
Filename, size File type Python version Upload date Hashes
Filename, size gazeclassify-0.9.1-py3-none-any.whl (273.3 kB) File type Wheel Python version py3 Upload date Hashes View
Filename, size gazeclassify-0.9.1.tar.gz (261.6 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page