The Opengazer project is supported by Samsung and the Gatsby Foundation
and by the European Commission in the context of
the AEGIS project - open Accessibility Everywhere: Groundwork, Infrastructure, Standards)

Opengazer: open-source gaze tracker for ordinary webcams

Opengazer is an open source application that uses an ordinary webcam to estimate the direction of your gaze. This information can then be passed to other applications. For example, used in conjunction with Dasher, opengazer allows you to write with your eyes. Opengazer aims to be a low-cost software alternative to commercial hardware-based eye trackers.

The first release of Opengazer was developed by Piotr Zieliński, supported by Samsung and The Gatsby Charitable Foundation. This is a link to Piotr's old Opengazer webpage

Video

This short video shows opengazer in action, using a £50 Logitech QuickCam Pro 4000, with the resolution 640x480. The distance from the camera/screen to the user was about 50cm.

The user first selects "load points", which loads and matches a previously selected set of point trackers on the face, which allows opengazer to extract the image of the eye and compute head orientation. Then, the "calibrate" routine displays a series of red points on the screen, at which the user is ask to look. As the calibration progresses, the current gaze estimate, represented by a small blue circle is getting better and better. Finally, the user selects "test", which displays a series of green points to test and show the accuracy of the gaze tracking.

A higher resolution version of the video

Download

The first prerelease of opengazer is available to download.

Download opengazer 0.1.2 for Linux (source)

You will need to compile opengazer yourself. Consult the detailed instructions for external dependencies and usage.

Opengazer is now stored in the subversion repository accessible from the sourceforge opengazer page. To check out the latest revision consult the opengazer instructions as well as the sourceforge subversion manual.

Opengazer is licensed under GPL version 2.

System requirements

To run opengazer comfortably with other applications, you will need a Linux system with

Recommended webcams

The webcam for opengazer development is Logitech QuickCam Pro 4000, but the software should work with any webcam. You just need to ensure that your webcam is capable of 640x480 or higher resolution, and that it works with v4l.

More info

Macs

Alexander Kellett has the following experiences using opengazer on a Mac.

Opengazer 0.1 successfully follows my gaze in this poorly lit room, via an iSight camera plugged into an iBook. Works just fine using everything from current darwinports/macports, together with the latest release of vxl, which unfortunately required "make -k install" to work on the mac. One thing that took a while to figure out was a few linking problems with the osx port of vxl, this forced me to add -lnetlib to the LINKER line. Finally, I had to remove the gtk-config call from the Makefile as this doesn't seem to be present on my system, but even without this it linked just fine.

I've attached the Makefile in case the above bits are unclear. [see the note below]

Took a good 20 minutes of fiddling with the distance of the cam, and learning to keep my head still, until eventually I realized that it would crash on save unless I'd placed enough good points. However, while it is noisy (poor lighting here), it gets the position of my eye on the screen with an x/y resolution of, i'd say, 16x16, which seems easily enough for dasher.

Note: Alexander’s Makefile was for opengazer 0.1; I’ve changed it a bit to be compatible with opengazer 0.1.1, but haven’t tested it.

Connecting opengazer and Dasher

Use the Edit|Preferences|Control|Input Device setting in Dasher. Set it to "Socket Input" and in "Options" set x/yminimum to 0, and x/ymaximum to the width/height of your screen. Maximize the Dasher window. Note that it is very, very difficult to keep your head still while concentrating on something else such as inputting text in Dasher. Using a head-rest might be a good idea.

History

Opengazer grew out of the Machine Intelligence Laboratory in Cambridge University Engineering Department. VIM (`visual inference machine') was developed by Ollie Williams and Roberto Cipolla.


Last modified: 27 August 2007 by
Piotr Zieliński