The eyevec-control program is the most important program in the EyeVec software suite. It serves both as a front- and backend for eye-tracking experiments using the EyeVec eye-tracker.
The application can either operate in stand-alone mode or in server mode. When started by the user it’s running in stand-alone mode. You will use this to configure the system, to run various predefined tests for internal or external analysis, and to play with the eye-tracker. When the application is started from the SDK then it is running in server mode, in which case it is under control of your application.
Once you have installed the user application suite you can start eyevec-control from your system’s application menu or from the command line.
The user-interface of eyevec-control is divided into pages with a button-bar for controlling which page to show. The following pages are present:
-
The Camera page is the main page of the application. This is where you setup the participant and run the calibration procedure.
-
The Participant page enables you to enter participant features. Normally these are only altered if the default values are not valid for the current participant.
-
The Settings page shows miscellaneous eye-tracker settings. These are generally entered once, and not changed during the course of an experimental study.
-
The Setup page defines the physical setup of the eye-tracker, the screen and the participant.
-
From the Test & Record page you can run several predefined tests. Optionally results can be saved into a data file for external precision and accuracy analysis. You can also inspect the recorded results in the playback page.
-
The Playback page shows pupil, corneal reflection, P-CR vector and/or gaze as a function of time. You can let it playback automatically or go through the frames manually.
To get started with the application just run it and skim over the following sections and/or the manual to lookup things that require more explanation.
Camera page
The camera page shows the main eye-tracker camera image and some statistics. Purpose of this page is to position the participant so their eyes are in view and to make sure the eyes are properly detected. From this page you can start the baseline measurement, calibration and validation procedures.
-
The large image shows the part of the participant’s face containing the eyes.
-
The thumbnail image shows the full image. The face should ideally be centered in this image. Use Ctrl arrow keys to move the ROI.
-
The help/message area at the bottom provides context sensivite help. It follows your mouse cursor. The other pages provide a help area too. For the camera page this area is also used for presenting calibration results etc.
-
On the right of the main camera image some statistics are presented. The help area provides explanation for each of the fields.
-
In the main image some eye features are drawn. You can control which eye features are shown by ticking the corresponding checkboxes.
-
Depending on display settings and on whether there is enough room you may also see a copy of the right and left eye image below or left of the main image. Try resizing the application window.
-
The buttons below the checkboxes allow you to perform a baseline measurement for the current participant and to run calibration and validation procedures. In server-mode there will also be a Proceed button.
See also Camera page in the Eyevec-control user manual.
Participant page
Here you can specify relevant participant features. For most adults the defaults will be reasonably OK. If the system appears to have difficulty detecting both eyes or if the detection is unstable then some adjustment might be necessary.
-
For infants you can adjust the age field to get a more suitable default interpupillary distance and iris size.
-
For infants and participants producing noisy eye data you can increase the expected noise level to allow accepting noisier data during target presentation.
-
The interpupillary distance specified here should not be too far from the truth otherwise the system may fail to detect both eyes.
-
The default iris size for the specified age will generally be acceptable.
-
If the participant has exceptionally large or small pupils you may want to adjust the baseline pupil size accordingly.
-
The eyelash direction may affect pupil edge detection. Select as appropriate.
-
If the participant is wearing scratchy or dirty spectacles select spectacles. For clean spectacles select none.
-
If the participant has a narrow eye opening or other eyelid conditions the iris, pupil and corneal reflection may become partly invisible. For moderate and severe iris occlusion proper gaze estimation will be challenging.
-
In case one eye is lazy, indicate which one.
-
If you prefer to base the estimated point of gaze mostly on the dominant eye, indicate which eye is dominant.
-
In case only one eye is detectable you can turn off detection of the non-detectable eye.
-
If desired, you can make the entered features persistent by using the Save button.
See also Participant page in the Eyevec-control user manual.
Settings page
Here you can specify several eye-tracker settings. You will typically need to do this only once, unless for play.
-
The calibration type defines the number of target points presented sequentially during calibration. Using 9 points is recommended. For children and infants you may want to present less targets.
-
For the validation type it is best to choose a pattern with many points and good area coverage.
-
You can present the targets in fixed, or randomized order.
-
To start target presentations manually tick self-paced.
-
A target presentation consists of multiple graphical phases. Here you can specify the duration of each phase. If desired you can select a preset.
-
Selecting a calibration pattern with very few points, restricts the possible number of eye-vector to point-of-gaze mappings (polynomial functions). By synthesizing the "missing" calibration points you can increase the set of possible mapping functions.
-
The maximum frame rate depends on the device. For the R2 it is 1kHz. For the R1 it is 500Hz.
-
The duty-cycle represents the shutter time of the eye-tracker camera. Leave it at the default value.
-
If desired you can specify a persistent camera gain and/or gamma value. Normally not needed.
-
Optionally you can enable averaging or filtering. Averaging improves precision but reduces the effective frame rate. Filtering also improves precision but causes a delay of 1, 2 or 3 frames.
-
For the gaze estimation method you generally want the P-CR vector method. The pupil-only and CR-only methods require using a chin rest or bite bar or special post-hoc gaze analysis.
-
You can make the settings persistent by using the Save button.
See also Settings page in the Eyevec-control user manual.
Setup page
This page defines the physical setup of the eye-tracker, the screen and the participant. Basically you only need to specify this once unless your participants have very different heights or you are evaluating the system’s precision and accuracy.
-
The drawing on the right-hand side gives a side-view of the setup as specified on the left-hand side.
-
It is important that the camera produces a sharp image at the entered subject distance. If necessary do a camera focus calibration, and don’t change the camera focus after that. You may occasionally want to check if the camera’s focus distance is still as expected.
-
Specify at which computer monitor the eye-tracker is placed. The software will retrieve the size in millimeters from that monitor. When working with a beamer you need to enter the size of the presentation plane explicitly.
-
You can make the settings persistent by using the Save button.
See also Setup page in the Eyevec-control user manual.
Test & Record page
Here you can select one of several predefined tests to run and record eye-tracking data. Following a test you can inspect recorded data at the playback page. This is very useful when testing or evaluating the system.
-
The analyse gaze error option enables you to compare all implemented gaze mapping polynomials for the given calibration points and test points.
-
For external precision and accuracy analysis use the data file option and then run one of the point pattern tests. For this purpose the EyeVec software comes with an R script you can use for calculating precision and accuracy from the gaze data file.
-
During the test the eye-images can be recorded, either to memory or as image files to ramdisk. You can view the recorded images in the playback page.
-
The Start button starts the selected test.
-
During the test you can follow the target presentation and estimated gaze on the test screen drawing.
See also Test & Record page in the Eyevec-control user manual.
Playback page
The playback page shows pupil, corneal reflection, P-CR vector and/or gaze as a function of time. Playback is available after running a baseline, calibration, validation, drift-check or test procedure.
-
The top graphs show the right and left pupil and/or corneal reflection position. The bottom graphs show the right and left P-CR vector, gaze position and/or gaze classification.
-
The plot checkboxes below the graphs control what data will be included in the graphs.
-
The frame number indicates the selected frame. You can navigate through the frames manually using the cursor keys or let it run automatically at the desired playback speed.
-
The test screen drawing shows the position of the target and the estimated gaze for the selected frame.
-
If recorded, the eye images for the selected frame will be shown along with other information.
See also Playback page in the Eyevec-control user manual.