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.

Source Distribution

gazeclassify-0.9.1.tar.gz (261.6 kB view details)

Uploaded Source

Built Distribution

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

gazeclassify-0.9.1-py3-none-any.whl (273.3 kB view details)

Uploaded Python 3

File details

Details for the file gazeclassify-0.9.1.tar.gz.

File metadata

  • Download URL: gazeclassify-0.9.1.tar.gz
  • Upload date:
  • Size: 261.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.4.2 requests/2.25.1 setuptools/57.0.0 requests-toolbelt/0.9.1 tqdm/4.61.1 CPython/3.9.5

File hashes

Hashes for gazeclassify-0.9.1.tar.gz
Algorithm Hash digest
SHA256 5c85fd771dc64dcc75e67b44b1090a6c93513543625d784f8adea67ca98b911f
MD5 c2da187202479e962c0ad6144fe19fdb
BLAKE2b-256 8da5a7853b8e52106e5f28ba5065c9acaa24eab7cc9e35b60c73390af38e9549

See more details on using hashes here.

File details

Details for the file gazeclassify-0.9.1-py3-none-any.whl.

File metadata

  • Download URL: gazeclassify-0.9.1-py3-none-any.whl
  • Upload date:
  • Size: 273.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.4.2 requests/2.25.1 setuptools/57.0.0 requests-toolbelt/0.9.1 tqdm/4.61.1 CPython/3.9.5

File hashes

Hashes for gazeclassify-0.9.1-py3-none-any.whl
Algorithm Hash digest
SHA256 c97f6220271166dacceb66f1fb8b73eba64453761b6537f1e14239a9b9cd61ef
MD5 d2de9852cc246ccebd9441d7c0f2cda7
BLAKE2b-256 e7901d866b01ca28bee7ae9aea4918627b84a71ad4bac7008155f3ec76c19f0f

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