Content uploaded by Pawel Kasprowski
Author content
All content in this area was uploaded by Pawel Kasprowski on Aug 13, 2015
Content may be subject to copyright.
Evaluating quality of dispersion based fixation
detection algorithm
Katarzyna Hare˙
zlak and Paweł Kasprowski
Abstract Information hidden in the eye movement signal can be a valuable source
of knowledge about a human mind. This information is commonly used in multiple
fields of interests like psychology, medicine, business, advertising or even software
developing. The proper analysis of the eye movement signal requires its elements
to be extracted. The most important ones are fixations - moments when eyes are
almost stable and the brain is acquiring information about the scene. There were
several algorithms, aiming at detecting fixations, developed. The studies presented
in this paper focused one of the most common dispersion based algorithm - I-DT
one. The various ways of evaluating its results were analyzed and compared. Some
extensions in this algorithm were made as well.
1 Introduction
Human eyes play important role in the interpersonal communication and gathering
knowledge regarding surrounding world. The desire to understand this learning pro-
cess leads to asking many questions: What is a subject looking at? What does one
see looking at a given point? Did one find searched information? What kind of in-
formation was gained when looking at a particular area? Is one looking at expected
point of regard? Finding answers to those and other questions is an important task
in many fields of interests like psychology, medicine, business, advertising or soft-
ware developing. This need is reflected in current research areas, among which the
Katarzyna Hare˙
zlak
Silesian University of Technology, Institute of Informatics, Gliwice, Poland e-mail:
katarzyna.harezlak@polsl.pl
Paweł Kasprowski
Silesian University of Technology, Institute of Informatics, Gliwice, Poland e-mail:
kasprowski@polsl.pl
1
This is a pre-print. The original version was published by
Springer International Publishing Switzerland,
Information Sciences and Systems 2014, pp 97-104, DOI 10.1007/978-3-319-09465-6_11
2 Katarzyna Hare˙
zlak and Paweł Kasprowski
cognizance of an eye movement signal has a significant place, because information
hidden in this signal can be a valuable source of knowledge.
Studies conducted in this field resulted in distinguishing few components of the
signal. Its fundamental unit is a fixation when point-of-gaze remains within a small
area for a given time. Fixations are interlaced with saccades - quick movements
made to reach another point-of-regard [1, 5, 6, 10, 15]. The example interpretations
of fixations and saccades features, in terms of their usability in a cognitive process of
human behaviors, were presented in the [9]. These guidelines show how important
is a precise separation of these parts from an eye movement signal.
However, deeper analysis of a fixation reveals, within it, another types of move-
ment: tremors, microsaccades and drifts [6]. A quality of measurements is also an
important issue. For this reason the fixation cannot be thought as one point and some
additional measures have to be involved like e.g. a size of spatial dispersion between
points in the fixation. Additionally, an eye movement signal differs in a character-
istic for a particular subject and task, which makes the identification of fixations a
complex task, still being solved by researches.
There are several algorithms developed for identifying fixations and saccades.
Among them Dispersion-Based and Velocity-Based algorithms are the most popu-
lar ones [11, 12]. The first group of methods identifies fixations analyzing distances
of the consecutive points. Group of points satisfying the condition defined by a given
dispersion threshold is treated as a fixation. This threshold can refer to various mea-
sures - a distance between any two points, the largest distance between points in a
fixation or the largest distance from the center of a fixation to one of constituting its
points [11, 12]. The most often analyzed algorithms in this group are I-DT (Disper-
sion Threshold Identification) and MST (Minimum Spanning Tree Identification)
[4, 7, 11, 12].
The studies of points velocity entitled development of algorithms separating fix-
ations and saccades points, taking their point-to-point velocities into account. Well-
known representatives of these methods are I-VT (Velocity Threshold Identification)
and HHM (Hidden Markov Model Identification) methods [4, 7, 11, 12].
The common goal of these algorithms is to extract sets of fixations and saccades
facilitating the interpretation of eye movement signals. Fixations are usually con-
sidered to have a duration of at least 150 msec. [5, 11, 12], nevertheless discussions
concerning a fixation duration in terms of performed tasks can be found [10, 14].
However, there are other factors influencing the analyzed measure. The outcome de-
pends on input parameters, which are different kinds of thresholds. Various range of
these parameters values can lead to diversity of results i.e. a number and duration of
fixations and saccades. For this reason several experiments were conducted to check
these parameters impact on the obtained results [1, 2, 4, 11].
Although the aforementioned studies let for drawing interesting conclusions,
they did not exhaust the topic. The aim of the research is to continue the analy-
sis of the I-DT dispersion based algorithm, which is claimed to be robust one [1, 11]
taking fixation identification into account.
Evaluating quality of dispersion based fixation detection algorithm 3
2 Algorithm description
The presented studies involved, as a basis, classic I-DT algorithm [11], converting
eye movements signal into list of fixations in two steps. In the first step, each gaze
point is classified as a fixation (F) or a saccade (S). The point is considered to be a
part of a fixation when some amount of previous points (called window) are closer
than a predefined threshold. There are different possibilities how to measure the
distance [11, 12, 2] but the most common is the maximal distance between any two
points in the window.
The second step is a consolidation of F-points, laying one by one, into fixa-
tions. Fixations with length lower than another predefined threshold (called later
minLength) are removed. The output of the algorithm is a set of fixations. Every
fixation has four parameters: start,length and position with two values: x,y. Pa-
rameters xand yare typically calculated as mean of all points in a fixation although
there are other possibilities (like e.g. median).
The algorithm used in this research extended a classic I-DT algorithm by intro-
ducing an additional step that makes it more flexible for low quality data (similar to
[4]). The classic I-DT algorithm builds fixations list in step 2 based on minLength
threshold - that is forms fixations from fixation points courses that are longer than
that threshold. In our modified algorithm every course of F points is used to build
a fixation. In additional step 3 we calculate spatial and temporal distances between
every two neighboring fixations. If both distances are below the threshold the two
fixations are merged into one. Only after this step minLength threshold is applied to
every fixation.
Dispersion threshold algorithm
Input: list of (x,y) points
Step 1
Classify each point as a fixation (F) or a saccade (S) based on history:
Point is a fixation when max distance among window previous points is less than threshold
Step 2
Build fixations from groups of neighboring F points:
For every course of at least two subsequent F points
build fixation(start,length,x,y) where x and y are average values of x and y
among all points in a fixation.
Step 3
Merge neighboring fixations:
For every two subsequent fixations:
if temporal gap (saccade length) between them is less than tgapThres
and spatial gap (Euclidean distance between them) is less than sgapThres
then merge these two fixations into one.
Step 4
Remove too short fixations:
For every fixation:
if a fixation length is less than minLength remove the fixation.
Output/result: list of fixations
4 Katarzyna Hare˙
zlak and Paweł Kasprowski
The additional fixations merging step should make the algorithm more robust to
artifacts - sudden and unexpected changes of measured eye position due to imper-
fection of eye tracker algorithms and noise. Artifacts removal in an eye movement
signal is not simple, especially when one does not want to affect parts of a cor-
rect signal. Similar setup, but for I-VT algorithm and restricted only for trackloss
situation (when there is no data available) was presented in [7].
3 Quality evaluation
The main problem for every fixation detection algorithm is how to check whether
it works correctly. The ground truth is in most cases not possible to determine as
we don’t know the correct positions of fixations and saccades in an eye movement
signal. There are multiple ways to solve the problem. [7] and [13] compared fixa-
tions detected by their algorithm to fixations detected by manual inspection made
by experienced users. [2] used somewhat arguable similarity criterion: if different
algorithms give similar data the data is considered to be reliable. The other possible
criterion proposed in [16] is calculation of so called nearest neighbour index (NNI)
for every fixation.
In this study we used a specially designed stimulus with a point jumping over
a screen. The task of a person being tested was to follow, with eyes, the point,
which was changing its location in specific moments of time. The fact that fixation
placements were known, gave us opportunity to create an estimated correct sequence
of fixations (later called template sequence) and compare the results of the algorithm
to this sequence.
Experiment. There were altogether 24 participants taking part in the experi-
ments, for which 40 recordings were registered using the stimulus described earlier.
To obtain meaningful results there were only samples with accuracy error, estimated
during calibration step, lower than 1.5 deg. chosen. Every stimulus presentation con-
sisted of 21 points evenly distributed over the whole screen. The point was displayed
in every location for about 3 seconds. Eye movements were recorded with the eye
tracker using single web camera with USB 2.0 interface, the sampling frequency
was 20Hz.
Methodology. The algorithm presented in section 2 was used to produce se-
quences of fixations for every sample. The algorithm was started with different val-
ues of threshold, spatial gap (sgapThres) and temporal gap (tgapThres). Parameters
window and minLength were set to 5 as it seems to be a reasonable choice according
to the literature. Assessment of the obtained results - sequences of fixations gener-
ated by the algorithm with various values of three parameters - threshold,sgapThres
and tgapThres - was done using several metrics described in Table 1.
To provide the correctness of the algorithm, metrics described in Table 1, were
calculated for every set of parameters and compared to metrics calculated for tem-
plate fixation sequence. For that sequence the values were: AFN=21, AFD=71.29,
ASN=20 and ASA=19.2.
Evaluating quality of dispersion based fixation detection algorithm 5
AFN - AverageFixation Number Amount of fixations divided by a number of elements in an
analyzed set of values
AFD - AverageFixation Duration A value of summarized fixations length, measured in milli-
seconds, divided by a number of elements in an analyzed set
of values
ASN - AverageSaccades Number Amount of saccades divided by a number of elements
in an analyzed set of values
ASA - AverageSaccades Amplitude Sum of distances between every two fixations divided
by a number of elements in an analyzed set of values.
Table 1 Metrics used to describe sequence of fixations
Additionally, there were several metrics calculated that directly measured dif-
ference between a given sequence and the template sequence. These metrics are
presented in Table 2. More information about metrics used may be found in [3] and
[4].
FQnS - Fixation Quantitative Score Percentage of points included into a fixation, for which
distance from a stimulus position is less than third part of
a last saccade amplitude.
FQlS - Fixation Qualitative Score A value of summarized distances between calculated
fixations and stimuli positions divided by a number
of stimuli positions presented.
SQnS - Saccade Quantitative Score A value of summarized saccades amplitudes divided by
summarized distances between stimuli positions presented
LevDist - Levenstein Distance A Levenshtein distance between a calculated sequence of
fixations and the template sequence
Table 2 Metrics used to calculate the similarity to the template
4 Results
At the beginning of the studies an influence of one parameter - threshold - on the re-
sults provided by the algorithm was checked. Its value initially set to 0.5 degree, was
incremented by 0.05 up to the value of 10 degrees. The sgapThres and tgapThres
were constant with value 0. As a main metrics, assessing a quality of the result,
Levenstein distance (LevDist) was chosen. The analysis of its values revealed that
there are two threshold ranges having meaningful influence on them. Low thresh-
olds values caused splitting a fixation, when an amplitude of eyes trembling during
a fixation was higher than a given threshold. For the described studies it was a case
when threshold was lower than 2.5 deg, which can be observed in the Fig 1 (left
side). Above this value the stabilization of LevDist was noticed as far as the thresh-
old reached the second range, values higher than 8 degrees. Defining this parameter
6 Katarzyna Hare˙
zlak and Paweł Kasprowski
on such high level resulted in merging fixation and points of neighboring saccades,
which entitled increasing of LevDist values.
To check the correctness of these findings they were compared to values obtained
for FQnS metrics, which are presented in the Fig 1 (right side). The symmetric shape
of charts suggested the strong correlation between elements of both sets. This cor-
relation turned to be full one with the coefficient equal -0.967. Similar relationship
was found between LevDist and ANF metrics. In this case the correlation coefficient
was -0.981 The analysis of the obtained results regarded a duration of a fixation
Fig. 1 Charts presenting the average values of LevDist (left side) and of FQnS (right side) metrics
for various thresholds
as well. As it was mentioned earlier, the template of a fixation length was defined
as time period, when a stimulus was displayed in one position (3565 msec.). It is
well known problem that this value cannot be reached because of the fact that, when
a point on the screen changes its position, it takes some time for the human brain
to react and to initiate an eye movement. For this reason duration of a measured
fixation will never be ideal.
In Fig 2 it can be noticed that in case of low threshold values, fixations found
by the algorithm, feature by a short duration. It is another confirmation, that setting
threshold in this scope can result in splitting one fixation into few small ones. It can
also be observed that extending threshold to 10 degrees makes the values of AFD
metrics to be closer to the ideal value. However it cannot be assumed that for high
threshold better result are obtained. As it was discussed above, this occurrence is
the effect of attaching to a fixation points, which in fact do not belong to it. This
proves that the correctness of the found fixations should be ensured by more than
one metrics.
Fig. 2 Chart presenting the average values of AFD metric for various thresholds
Evaluating quality of dispersion based fixation detection algorithm 7
Last metrics taken during the studies into account were ASA and SQnS one. Com-
paring these two sets of values it turned out that their correlation is significant (with
coefficient equal = -0.542) but not in such high level like in earlier described cases.
Both of metrics involve an amplitude of saccades but using it in slightly different
way. First of them is strongly dependent on the number of fixations defined by the
algorithm, which determines the number of saccades (ASN). The second metric is
the ratio being the sum of found fixations amplitudes divided by the sum of saccades
amplitudes existing in the template.
These various approaches entitle the differences in the results. In case of small
threshold values a signal is divided into small fixations, between which saccades
with amplitudes smaller the expected are defined. The sum of this amplitudes di-
vided by the number of saccades provides low ASA value (Fig 3 (left side)). In case
of the second metric (SQnS) the sum of such determined amplitudes can be in fact
almost equal to the sum of bigger amplitudes of the smaller set of saccades. This is
why the SQnS value are almost stable, up to the threshold value of 8 degree, when
the problem of merging a fixation with some points of neighboring saccades occurs
(Fig 3 (right side)).
Fig. 3 Charts presenting the average values of ASA (left side) and SQnS (right side) metrics for
various thresholds
5 Conclusion
The main goal of the research presented in the paper was to check how various
parameters of well-known I-DT algorithm, used for extracting the set of fixations
from the eye movement signal can influence the obtained results. The experiments
based on the specially designed stimulus with a point jumping over a screen. The
known positions of the point were used as the reference template. Owing to that
it was possible to determine, which ranges of parameters values provide reliable
outcomes. It especially was visible for a main threshold parameter. The assessment
was supported by the usage of various metric. Convergent results of independently
calculated metrics values confirmed correctness of the algorithm. The results for the
other parameters were not so unambiguous and need further studies. The average
best LevDist for I-DT algorithm without additional merging step (i.e. tgapThres and
8 Katarzyna Hare˙
zlak and Paweł Kasprowski
sgapThres equal to 0) was 3.175. The average LevDist for the algorithm with the ad-
ditional step was 2.85. Merging algorithm improved results in 28% of cases. How-
ever, these results were achieved for different values of sgapThres and tgapThres
optimized separately for every file. It was impossible to find one universal set of
sgapThres and sgapThres values that on average for every file gave results better
than without merging step (sgapThres=0, tgapThres=0). Nevertheless, it was ob-
served that for the given threshold parameter value higher tgapThres thresholds im-
proved the LevDist decreasing its value.
References
1. Blignaut, P. Beelders, T.: The effect of fixational eye movements on fixation identification
with a dispersion-based fixation detection algorithm. Journal of Eye Movement Research,
2(5):4, 1–14 (2009)
2. Blignaut, P.: Fixation identification: The optimum threshold for a dispersion algorithm. At-
tention, Perception, Psychophysics,(71):4, 881–895 (2009)
3. Kasprowski, P., Komogortsev, O. V., Karpov, A.: First eye movement verification and identifi-
cation competition at BTAS 2012. In The IEEE Fifth International Conference on Biometrics:
Theory, Applications and Systems (BTAS 2012), 195–202 (2012)
4. Komogortsev, Oleg V., Gobert, D. V., Jayarathna, S., Koh, Gowda, S. M.: Standardization of
automated analyses of oculomotor fixation and saccadic behaviors. In IEEE Transactions on
Biomedical Engineering,57.11 2635–2645 (2010)
5. Manor B. R., Gordon E.: Defining the temporal threshold for ocular fixation in free-viewing
visuocognitive tasks. Journal of Neuroscience Methods, 128(1–2), 85-93 (2003)
6. Martinez-Conde, S., Macknik, S.L., Hubel, D.H.: The role of fixational eye movements in
visual perception. Nature Reviews Neuroscience, 5, 229–240 (2004)
7. Munn, S. M., Stefano, L., Pelz, J. B.: Fixation-identification in dynamic scenes: Comparing
an automated algorithm to manual coding. In Proceedings of the 5th symposium on Applied
perception in graphics and visualization, 33–42, ACM Press, (2008)
8. Nystrom, M., Holmqvist, K.: An adaptive algorithm for fixation, saccade, and glissade detec-
tion in eye-tracking data. Behavior Research Methods, 42(1), 188-204 (2010)
9. Poole, A. and Ball, L. J. Poole, A. and Ball, L. J. Eye Tracking in Human-Computer Interac-
tion and Usability Research: Current Status and Future Prospects. In Encyclopedia of Human
Computer Interaction, IGI Global, (2005)
10. Rayner, K: Eye movements in reading and information processing: 20 years of research. Psy-
chol Bull, 124(3), 372-422 (1998)
11. Salvucci, D. D., Goldberg, J. H.: Identifying fixations and saccades in eye-tracking protocols.
In Proceedings of the 2000 Symposiumon Eye Tracking Research and Applications, 71–78,
NY: ACM Press (2000)
12. Shic, F., Chawarska, K., Scassellati, B.: The incomplete fixation measure. In Proceedings of
the 2008 Symposium on Eye Tracking Research and Applications, 111–114, NY: ACM Press
(2008)
13. Tafaj, E., Kasneci, G., Rosenstiel, W., and Bogdan, M.: Bayesian online clustering of eye
movement data. In Proceedings of the Symposium on Eye Tracking Research and Applica-
tions, ETRA 12, 285-288, NY: ACM Press (2012)
14. van der Lans, R., Wedel, M., Pieters, R.: Defining Eye-Fixation Sequences Across Individuals
and Tasks: The Binocular-Individual Threshold (BIT) Algorithm. Behavior Research Meth-
ods, 43(1) 239–257 (2011)
15. Veneriz G., Piuyz P., Federighi P., Rosiniz F., Federicoz A., Rufa A.: Eye Fixations Identifi-
cation based on Statistical Analysis - Case study.In Cognitive Information Processing (CIP),
2010 2nd International Workshop on, 446–451, (2010)
Evaluating quality of dispersion based fixation detection algorithm 9
16. Camilli, M., et al. ASTEF: A simple tool for examining fixations. Behavior research methods
40(2) 373–382 (2008)