An open API service indexing awesome lists of open source software.

https://github.com/luca-ant/gaze_tracker

An experiment on gaze tracker system, based on OpenCV, which shows how to control mouse pointer using eyes and gaze estimation
https://github.com/luca-ant/gaze_tracker

eye-detection eye-tracker eye-tracking-calibration eye-tracking-mouse opencv python3

Last synced: about 1 year ago
JSON representation

An experiment on gaze tracker system, based on OpenCV, which shows how to control mouse pointer using eyes and gaze estimation

Awesome Lists containing this project

README

          

# Gaze tracker

This project is an experiment on gaze tracker system, based on the position of glint on the iris, which is the reflection of a source of light located near the camera (See [Purkinje images](https://en.wikipedia.org/wiki/Purkinje_images) and [Eye tracking](https://en.wikipedia.org/wiki/Eye_tracking#Technologies_and_techniques) for details). By tracking the glint it is possible to estimate the gaze position on the screen and use this position as an input system (in this example it is used only to move the mouse arrow).

## Hardware requirements

For this kind of system, an high resolution image of the eye is required and a source of light near the camera too, so to get that with simple hardware I use a smartphone as a remote camera (achieved by [IP Webcam](https://play.google.com/store/apps/details?id=com.pas.webcam) app) fixed on a stable support, turn on the flash LED and put it in front on one eye, close to it.


## Demo

### Calibration phase



### Mouse control phase



## Getting started

* Clone repository
```
git clone https://github.com/luca-ant/gaze_tracker.git
```

* Install dependencies
```
sudo apt install python3-setuptools python3-pip python3-venv
```
or
```
sudo pacman -S python-setuptools python-pip python-virtualenv
```

* Create a virtual environment and install requirement modules
```
cd gaze_tracker
python3 -m venv venv
source venv/bin/activate

python3 -m pip install -r requirements.txt
```

## Running

Simply move to `gt` folder and run `main.py`

```
cd gt
python main.py
```