fixation_dispersion: Fixation detection using a dispersion method

View source: R/fixation_dispersion.R

fixation_dispersionR Documentation

Fixation detection using a dispersion method

Description

Detects fixations by assessing dispersion of the eye position, using a method that is similar to that proposed by Salvucci & Goldberg (2000). Evaluates the maximum dispersion (distance) between x/y coordinates across a window of data. Looks for sufficient periods in which this maximum dispersion is below the specified dispersion tolerance. NAs are considered breaks in the data and are not permitted within a valid fixation period.

Usage

fixation_dispersion(
  data,
  min_dur = 150,
  disp_tol = 100,
  NA_tol = 0.25,
  progress = TRUE
)

Arguments

data

A dataframe with raw data (time, x, y, trial) for one participant (the standardised raw data form for eyetools)

min_dur

Minimum duration (in milliseconds) of period over which fixations are assessed

disp_tol

Maximum tolerance (in pixels) for the dispersion of values allowed over fixation period

NA_tol

the proportion of NAs tolerated within any window of samples that is evaluated as a fixation

progress

Display a progress bar

Details

It can take either single participant data or multiple participants, where participants are demarcated by values in the "pID" column.

Value

a dataframe containing each detected fixation by trial, with mean x/y position in pixel, start and end times, and duration.

References

Salvucci, D. D., & Goldberg, J. H. (2000). Identifying fixations and saccades in eye-tracking protocols. Proceedings of the Symposium on Eye Tracking Research & Applications - ETRA '00, 71–78.

Examples


data <- combine_eyes(HCL)
fixation_dispersion(data)



eyetools documentation built on June 18, 2025, 5:08 p.m.