/Eye-Gaze-Estimator

A python tool to estimate where someone is looking

Primary LanguageJupyter Notebook

Eye Gaze Estimator

A program using Fabian Timm algorithm and PNP projection to estimate gaze position
Host link
Github 🔗
NBviewer 🔗

The goal of this project was to estimate where the eye gaze of the user was positionned in space

Here is the result:

How to use

This is a python notebook, so you can easily launch it on your computer.

How it works

It's pretty straightforward.

  • Use Dlib facial landmark detection for face position and eye extraction
  • Use Fabian Timm methods to find pupils.
  • Find eye rotation matrix (using pupils and eye corners) and face rotation matrix (from facial landmarks) using PNP solving (see here)
  • Draw the gaze vector on screen

Of course for a precise application you need to calibrate your camera parameter and surface position, but the gist of it is here!