Only a generation ago, eye tracking typically required complex and expensive equipment and considerable technical expertise on the part of the researcher. Analyzing eye movement data was often a slow and laborious process. As such, it is perhaps unsurprising that it was a relative niche field. However, with recent development in both hardware and software, eye tracking technology is now more affordable and much easier to use than ever before.
One of the biggest technological changes over the last couple of decades has been the near-universal adoption of video-based eye tracking as the technique of choice, in contrast to previously dominant approaches such as electro-oculography, infrared reflection, search coil and dual purkinje tracking. All SR Research EyeLink systems employ video-based eye tracking, as do most other commercially available eye trackers. So how does video-based eye tracking actually work?
At the heart of all video-based eye tracking is a camera (or cameras) which take a series of images of the eye. Both the EyeLink 1000 Plus and Portable Duo use single cameras that are capable of taking up to 2000 images of both eyes every second. Within less than 3 ms from the image of the eye being taken, EyeLink systems work out where on the screen the participant is looking, and relay this information back to the computer controlling stimulus presentation. So how is this done? The eye tracking software uses image processing algorithms to identify two key locations on each of the images sent by the eye tracking camera – the center of the pupil, and the center of the corneal reflection. The corneal reflection is simply the reflection of a fixed light source (the infrared illuminator) which sits next to the camera, as illustrated below.
When the eye rotates, the location of the center of pupil on the camera sensor changes. However, (when the head is stabilized), the location of the corneal reflection (CR) remains relatively fixed on the camera sensor (because the source of the reflection does not move relative to the camera). The figure below illustrates what the camera sees when an eye looks ahead, then rotates to one side and then to the other side. As you can see, the center of the CR remains in roughly the same position (in terms of camera pixel co-ordinates), whereas the center of the pupil moves.
If the eye were perfectly fixed in space and simply rotated around its own center, then tracking the change in the pupil center on the camera sensor alone would be sufficient in order to determine where gaze is located. Indeed pupil only tracking may still be used in some head mounted or “glasses” based eye trackers, where the relationship between the camera and the eye remains relatively fixed, no matter how the head moves. However, for desktop or remote eye trackers, even with the head stabilized using a chin / forehead rest, small movements of the head (as opposed to the eye) are impossible to prevent, and these head movements will also shift the location of the pupil on the eye tracking camera sensor. The figure below illustrates the view of the eye from the camera when the head moves slightly from side to side.
As you can see, in this case, both the pupil *and* the corneal reflection move on the camera sensor. So how do eye trackers distinguish between changes in pupil position on the camera sensor that result from rotations of the eye from those that result from movements of the head? Critically, with head movements the relationship between the center of the pupil and the center of the corneal reflection remains the same whereas when the eye rotates, the relationship changes. Modern video-based eye trackers exploit this difference in the Pupil-CR relationship in order to compensate for head movements. In “Pupil-CR” tracking, the change in CR position is essentially “subtracted” from the change in Pupil position, thus making it possible to disambiguate movements in the pupil center on the camera sensor that are the result of genuine rotations of the eye, from movements of the pupil center on the camera sensor that are the result of shifts in head position.
The eye tracker is “calibrated” by determining the relationship between pupil and CR as the eye fixates on screen targets whose co-ordinates (in screen pixels) are known – but I will save a detailed discussion of how calibration works and why it is so important for another blog…