Package for eye tracking algorithm allowing for development of gaze controlled computer interface
Project description
EYEGESTURES
EyeGestures is open source eyetracking software/library using native webcams and phone camers for achieving its goal. The aim of library is to bring accessibility of eye-tracking and eye-driven interfaces without requirement of obtaining expensive hardware.
Our Mission!
💜 Sponsors:
For enterprise avoiding GPL3 licensing there is commercial license!
We offer custom integration and managed services. For businesses requiring invoices message us contact@eyegestures.com
.
Sponsor us and we can add your link, banner or other promo materials!
💻 Install
python3 -m pip install eyeGestures
⚙️ Run
python3 examples/simple_example.py
python3 examples/simple_example_v2.py
🪟 Run Windows App [Not updated to latest engine, may crash]
python3 apps/win_app.py
Or download it from releases
🔧 How to use [WiP - adding Enginge V2]:
Using EyeGesture Engine V2 - Machine Learning Approach:
from eyeGestures.utils import VideoCapture
from eyeGestures.eyegestures import EyeGestures_v2
# Initialize gesture engine and video capture
gestures = EyeGestures_v2()
cap = VideoCapture(0)
ret, frame = cap.read()
calibrate = True
screen_width = 500
screen_height= 500
# Process each frame
event, cevent = gestures.step(frame, True, screen_width, screen_height)
cursor_x, cursor_y = event.point[0], event.point[1]
# calibration_radius: radius for data collection during calibration
Using EyeGesture Engine V1 - Model-Based Approach:
from eyeGestures.utils import VideoCapture
from eyeGestures.eyegestures import EyeGestures_v1
# Initialize gesture engine with RoI parameters
gestures = EyeGestures_v1()
cap = VideoCapture(0)
ret, frame = cap.read()
calibrate = True
screen_width = 500
screen_height= 500
# Obtain estimations from camera frames
event, cevent = gestures.estimate(
frame,
"main",
calibrate, # set calibration - switch to False to stop calibration
screen_width,
screen_height,
0, 0, 0.8, 10
)
cursor_x, cursor_y = event.point[0], event.point[1]
# cevent - is calibration event
Feel free to copy and paste the relevant code snippets for your project.
🔥 Web Demos:
rules of using
If you are building publicly available product, and have no commercial license, please mention us somewhere in your interface.
Promo Materials:
https://github.com/NativeSensors/EyeGestures/assets/40773550/4ca842b9-ba32-4ffd-b2e4-179ff67ee47f
https://github.com/NativeSensors/EyeGestures/assets/40773550/6a7c74b5-b069-4eec-bc96-3a6bb4159b37
📇 Find us:
- RSS
- discord
- email: contact@eyegestures.com
Follow us on polar (it costs nothing but you help project!):
📢 Announcements:
💻 Contributors
💵 Support the project
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for eyegestures-2.1.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6671b9c13bcf004309f0242b1ba30fff0e35698735cf8a8a7fa95cb40b300509 |
|
MD5 | 54edcfbfa8438fbec92382ed1e6e4ee0 |
|
BLAKE2b-256 | baab03794b63d0f768fe48b735b4693b3162058d166f2d32f135e2b7aab35d0b |