Next Article in Journal
Metacognitive Monitoring and Metacognitive Strategies of Gifted and Average Children on Dealing with Deductive Reasoning Task
Previous Article in Journal
Determining Which Sine Wave Frequencies Correspond to Signal and Which Correspond to Noise in Eye-Tracking Time-Series
 
 
Journal of Eye Movement Research is published by MDPI from Volume 18 Issue 1 (2025). Previous articles were published by another publisher in Open Access under a CC-BY (or CC-BY-NC-ND) licence, and they are hosted by MDPI on mdpi.com as a courtesy and upon agreement with Bern Open Publishing (BOP).
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Filtering Eye-Tracking Data From an EyeLink 1000: Comparing Heuristic, Savitzky-Golay, IIR and FIR Digital Filters

by
Mehedi H. Raju
1,*,
Lee Friedman
1,
Troy M. Bouman
2 and
Oleg V. Komogortsev
1
1
Department of Computer Science Texas State University San Marcos, Texas, USA
2
Department of Mechanical Engineering-Engineering Mechanics Michigan Technological University Houghton, MI, USA
*
Author to whom correspondence should be addressed.
J. Eye Mov. Res. 2021, 14(3), 1-16; https://doi.org/10.16910/jemr.14.3.6
Submission received: 19 May 2023 / Published: 19 October 2023

Abstract

:
In a prior report (Raju et al., 2023) we concluded that, if the goal was to preserve events such as saccades, microsaccades, and smooth pursuit in eye-tracking recordings, data with sine wave frequencies less than 75 Hz were the signal and data above 75 Hz were noise. Here, we compare five filters in their ability to preserve signal and remove noise. We compared the proprietary STD and EXTRA heuristic filters provided by our EyeLink 1000 (SR-Research, Ottawa, Canada), a Savitzky- Golay (SG) filter, an infinite impulse response (IIR) filter (low-pass Butterworth), and a finite impulse filter (FIR). For each of the non-heuristic filters, we systematically searched for optimal parameters. Both the IIR and the FIR filters were zero-phase filters. All filters were evaluated on 216 fixation segments (256 samples), from nine subjects. Mean frequency response profiles and amplitude spectra for all five filters are provided. Also, we examined the effect of our filters on a noisy recording. Our FIR filter had the sharpest roll-off of any filter. Therefore, it maintained the signal and removed noise more effectively than any other filter. On this basis, we recommend the use of our FIR filter. We also report on the effect of these filters on temporal autocorrelation.

Introduction

According to Raju et al. (2023), for the study of saccades, microsaccades, and smooth pursuit, frequency components above 75 Hz can be considered as noise. This was based on several forms of analysis: (1) a visual analysis of different frequency components, (2) an analysis of the percent of variance accounted for by various frequency bands, and (3) a detailed study of the effect of low- pass filtering on saccade peak-velocity. Based on the results of these analyses we concluded that signals comprised of sine-wave frequencies below 75 Hz are essential for visualizing eye-movement events and evaluating the main sequence (peak velocity vs horizontal amplitude). Sine-wave fre- quencies above 75 Hz can be considered noise (see also (Bahill et al., 1981; Mack et al., 2017)).
In 1993, Stampe (Stampe, 1993) proposed “heuristic” filters that were designed for video-ocu- lography. One was labeled standard (STD) and the other was labeled extra (EXTRA). Several manufacturers (SR-Research (Ottawa, Canada), and the XVIEW system from SMI) have, over the years, employed these filters. At some (unknown) point in time, SR-Research modified both original heuristic filters. However, the date of the change and the nature of the modifications are proprietary.
Mack et al. (2017) evaluated moving average (MA) (Chauhan et al., 2018), Savitzky-Golay (SG) (Savitzky & Golay, 1964) and low-pass Butterworth, BW filters (Butterworth, 1930). Both the MA filter and the SG filter are FIR-style filters (Chatterjee & Roy, 2018; Kalman, 1960; Savitzky & Golay, 1964). They compared the performance of both FIR (MA and SG) and IIR (Butterworth) filters on saccadic movements. It is important to note that (Mack et al., 2017) tested all their filters on synthetic saccades. These authors suggested that for 1000 Hz data, the BW performed better than the various MA or SG filters examined.
Based on their analysis, we decided to further study SG, and Butterworth filters (IIR-type). In addition, we also evaluated a standard FIR low-pass filter not evaluated by (Mack et al., 2017). Das et al. (Das et al., 1996) evaluated the effectiveness of combined median and moving-average filters to reduce velocity noise in smooth pursuit vestibular eye movements.
The main objective of this study is to determine the most effective filtering approach for pre- serving eye-movement signals below 75 Hz and eliminating frequency components above 75 Hz that are considered noise. We compare the effectiveness of heuristic and digital filters in terms of their ability to preserve signals and eliminate noise. The key analysis is the comparison of the fre- quency response curves for all filters. In addition, since it is well established that filtering typically increases temporal autocorrelation (Friedman et al., 2023; Roy et al., 1997), we also compare the autocorrelation functions for signals processed with all filter types. Finally, we illustrate the effect of filtering on a very noisy recording which includes a saccade.

Methods

Subjects

A total of 23 subjects were recruited (N Male-17, N Female-6), with a median age of 28 (range: 20 to 69 years). A majority (14) of participants had normal vision, while nine subjects needed corrected vision. The participants were recruited from laboratory personnel, undergraduate students taking a computer programming course, and friends of the experimenters. The study was approved by the Texas State University institutional review board and all participants provided informed consent.
We report on two datasets, the first dataset is labeled as the “Fixation” dataset. This dataset originally had data from 15 subjects. However, due to blinks and other technical issues, only data from nine subjects were analyzed. The second dataset (“RS”) contained data when subjects viewed a random saccade task. The RS dataset consisted of nine subjects.

Eye movement data collection

During the data collection process, the participants were positioned at a fixed distance of 550 millimeters from a 19’‘ (48.26 cm) computer screen (474 x 297 millimeters, resolution 1680 x 1050 pixels), where they were presented with visual stimuli. The data was captured using a tower mounted EyeLink 1000 eye tracker (SR Research in Ottawa, Ontario, Canada) and operated in a monocular mode to record the movement of the dominant eye. The participant’s dominant eye was identified using the Miles method (Miles, 1930).
This device measures eye movements using the well-known video-oculography method (VOG). The sampling rate was 1000 Hz i.e., images of the eye were collected 1000 times per second. Algorithms find the pupil center in each image as well as the corneal reflection from an infrared light source. Through various transformations and calibration, these positions (pupil center and center of corneal reflection) produce gaze position, i.e., horizontal gaze position and vertical gaze position (Rigas & Komogortsev, 2015). Initially, the position data are provided in pixel units, but simple trigonometry is used to convert pixels to degrees of visual angle (dva).
For each subject, there were three fixations recorded: (1) Unfiltered, (2) STD filtered, and (3) EXTRA filtered. For instructions as to how to turn off or set up the STD and EXTRA filtering for the EyeLink 1000 and EyeLink 1000 plus, see the Appendix A.
For the fixation task, participants were presented with a white circle with a diameter of 0.93o as a visual stimulus. The circle was positioned at 3.5o above the primary position, at the horizontal middle of the screen. Participants were instructed to maintain their gaze on the stationary point for 30 seconds (Griffith et al., 2021; Raju et al., 2022).
For the random saccade task, the participants were instructed to follow the same target that moved randomly across the display monitor, ranging from ± 15o and ± 9o of visual angle in the horizontal and vertical directions respectively. The minimum amplitude between adjacent target displacements was 2o of visual angle. The target positions were randomized for each recording to ensure uniform coverage across the display. The delay between target jumps varied from 1 to 1.5 seconds, chosen randomly from a uniform distribution. The random saccade task lasted for 30 sec- onds. For more details about subjects and data collection procedures see (Raju et al., 2023).

Signal processing of fixation data

All fixation recordings lasted 30 seconds (30,000 samples). We used these fixation periods to create amplitude spectra and to determine the frequency response of several filters discussed below. The segment selection was a two-step process. In the first step, we calculated the velocity with a six-point difference approach using velocity = (xt+3 - xt-3)/dt (Bahill et al., 1982). We then screened the recordings of each subject to find the maximum number of segments of length 2048 samples that did not have any velocity above 25 deg/sec. We rejected any segments which contained veloc- ities above 25 deg/sec to reduce the possibility of saccades or other fast events in our segments. For four of the 16 subjects, we could not find a single segment of 2048 samples that met our criteria. For the remaining subjects, we found 1 to 4 segments. We use these 2048-sample segments for our Fourier analysis. Using the Fast Fourier transform (FFT), the ratio of the sampling rate to the seg- ment size (i.e., block size) determines the frequency resolution. For 2048-sample segments, we could discriminate 1024 different frequencies from 0 to 500 Hz. Since these analyses were quite noisy, we decided to break down the 2048-sample segments into eight 256-sample segments. This would still give us reasonable frequency precision of approximately 4 Hz, and it would produce more segments to average (we had 27 2048-sample segments, and these produced 216 segments of 256 samples across which to average). Note that we did our averaging using the magnitude spectra rather than averaging the complex FFT data.

Digital filter design

As we want to retain the frequency components below 75 Hz and remove noise above this, we chose cut-offs of very close to 75 Hz (For the zero-phase filters, we chose a cut-off that would ultimately result in a -3dB point of 75 Hz). When we refer to a “cutoff” frequency, we are referring to the -3dB (dB = decibels, reference = 1) point, which is standard in the signal processing literature. At the -3dB point, signals are reduced by 50%.
Before choosing a final set of parameters (order and window length) for the SG filter, we examined the frequency response of SG filters with orders from 2 to 9 and window lengths from 5 to 91 (odd numbers only). For implementing the SG filter we used the python built-in function from Scipy (Virtanen et al., 2020).
We were looking for an SG filter that had a -3dB point near 75 Hz. We found expected frequency response for order 5, window size 23. It is generally known that SG filters have substantial ringing in the stop band (Kennedy, 2020)(see Figure 1). As we tested various potential parameter settings, we noted that higher orders produce fewer and wider ringing lobes. Increasing the window size produced more, smaller (in terms of dB), and narrower lobes.
Before we describe our IIR and FIR filters, we want to describe the implementation of zero- phase and zero-delay filters. Typically, low-pass digital filters can have phase and delay effects. Both our FIR and IIR filters are zero-phase and zero-delay. A zero-phase filter can be constructed by first passing the signal through the filter in the forward direction, then reversing the filtered sequence and running it back through the filter. This process doubles the order of the filter and removes both phase and delay effects.
For our IIR filter, we chose a Butterworth low-pass filter with order = 7. We chose the cutoff of 81 Hz to obtain a -3dB point at 75 Hz after the zero-phase implementation (MATLAB “filtfilt” function). We chose order = 7 because it has a steep roll-off and appeared to be stable. We formally checked for the stability of the IIR filter with the unit-circle test. For this test we used the MATLAB function “isstable”.
FIR filters are always stable. For our zero-phase FIR filter, we get -3dB point at 75 Hz, if, prior to application of the filtfilt function, we use the cut-off frequency of 84 Hz. For our FIR filter, we chose 80 taps. We determined this number of taps (Ntaps) based on the following formula from (Bellanger, 2000).
N taps 2 3 log 10 1 10 ( δ 1. δ 2 ) f x Δ f
Here, Ntaps = number of taps (filter order)
δ1= the ripple in passband
δ2= the suppression in the stop band
fs = the sampling rate
Δf = the transition width.
For the IIR filter, we used a Butterworth (BW) low-pass filter. The BW filter is maximally flat in the pass band and has no ripples in the stop band. Also, BW filters do not have any linear phase response in contrast to finite impulse response filters (Mack et al., 2017)
Mack et al. (2017) also state:
“A general observation from the best filter list is the increasing prevalence of BW filters at higher sampling rates, ending in a total absence of other filter types at 1 kHz. This can be explained by considering the smoothness of the signal. At higher sampling rates more noise is present in the data. Such high-frequency noise can be more efficiently suppressed by the steeper roll-off of the BW filters compared to the two FIR filters, resulting in a smoother signal…”.
Table 1 represents a list of filters we employed along with their characteristics.

Estimation of filter frequency response

There are two ways to determine the frequency response of a filter: (1) directly from the filter coefficients, or (2) through the ratio method. For the ratio method, we start with an FFT of unfiltered data. Let us label this FFT as “A”. Next, we calculate the FFT for each filtered dataset. Let us label the FFT of the filtered signal as “B”. We compute the ratio:
C = B A
The real part of the resulting ratio C is the frequency response of the filter. The EyeLink heuristic filters have heuristic rules but do not have coefficients, so the direct method is not available. There fore, we used the ratio method for all filters in this study.

Fourier analysis of fixation before and after filtering

To further study the effects of the filters, we filtered our fixation data with all five filters. Then we computed the amplitude spectrum of all of these filtered (and unfiltered) signals using FFT (Cooley & Tukey, 1965). These amplitude spectra show how the filters affected the amplitude of the signal that remains after filtering.
The input fixation data consisted of 216 blocks, each 256 samples long, as mentioned earlier. In the first step, each segment was detrended with a 2nd order polynomial. The residuals of these poly- nomials have a mean of zero. A hanning window is then applied to each fixation segment. We then perform an FFT of each detrended and windowed fixation segment. The resulting spectra have a frequency resolution of about 4 Hz (3.91 Hz to be more accurate). With a sample rate of 1000 Hz, spectra can only be calculated from 0 to 500 Hz (Shannon, 1949). With a 3.91 Hz resolution, we end up with spectra that are 128 points long. These amplitude spectra were averaged across all 216 fixation segments. This produced a relatively clean amplitude spectrum.

Study of the effects of filtering on temporal auto-correlation

It is known that low-pass filtering can increase temporal autocorrelation (Roy et al., 1997). We thought it would be useful to examine the effects of our filters on temporal autocorrelation. For each fixation segment, we calculated the autocorrelation function (ACF) out to 5 lags. For each filtered set of autocorrelations, we plotted the median. Since Pearson r correlation coefficients are not on a linear scale, prior to statistical testing all the ACF estimates were transformed using a Fisher-Z transformation. For the first 3 lags, we tested the statistical significance of the differences between autocorrelation estimates for unfiltered and filtered data. We used the Friedman test. We followed up a statistically significant Friedman test with a multiple comparison analysis comparing all filter levels. Multiple comparisons were controlled with the Tukey HSD test.

Study of the effects of filtering on positional signal and velocity

To illustrate the effect of our filters on an actual horizontal position signal, we studied the effect of three filters (SG, IIR, FIR) on a noisy unfiltered recording segment. Out of nine subjects from the “RS” dataset, we chose the subject with the noisiest recording, based on precision estimates. In that recording, we chose a section including a saccade and surrounding fixation. For this analysis, we produced an instantaneous velocity channel (velocity = x t x t 1 d t ). Instantaneous velocity is typically the noisiest velocity calculation. This signal segment was filtered using the SG, IIR and FIR filters. To assess the effect of filtering, we calculated the standard deviation (SD) and root mean square (RMS) of the velocity channels for the unfiltered data and after each filter was applied.

Results

Analysis of filter frequency response

In Figure 1, we present the frequency response of STD, EXTRA, SG, IIR, and FIR filters. The Y- axis of the plot is in decibels (dB, reference = 1). The cyan line represents the frequency response of the STD filter. The red line represents the frequency response of the EXTRA filter. The green line represents the frequency response of the SG filter. The blue and magenta lines represent the frequency response of the IIR and FIR filters, respectively. It appears that all the filters do a good job of preserving the signal (frequencies less than 75 Hz). However, the filters differ substantially in the degree to which they remove noise-related frequencies. It is obvious that the FIR and IIR filters have much sharper roll-offs than the other filters. All but the STD filters achieve -30dB (0.1% of signal amplitude remaining). IIR reaches this point at 102 Hz and FIR at 93 Hz. The SG filter reaches this point at 204 Hz, and the EXTRA filter reaches this point at 332 Hz. The STD never reaches this level of reduction.
Obviously, digital filters do a much better job of reducing higher frequencies without affecting the lower frequencies. The heuristic filters remove high-frequency signals much more slowly than the digital filters. The maximum amplitude of noise remaining at 500 Hz is -18 dB (1.58 percent of the signal remaining) for the STD filter whereas, for the EXTRA filter, it is -25 dB (0.32 percent of the signal remaining). The signal is effectively reduced to 0o amplitude (-40 dB) at 111 Hz for the IIR filter and at 97 Hz for the FIR filter. The frequency response of the FIR filter is steeper than all other filters.

Fourier analysis of the unfiltered and filtered signals

In Figure 2, we present the average amplitude spectra for all 5 signal types. Amplitudes for all signals are much higher in very low frequencies (1-30 Hz). All filtered signals have less amplitude above 75 Hz. The amplitude of the unfiltered signal reaches a minimum of around 150 Hz and then the amplitude of noise frequencies increases as frequencies approach 500 Hz. The STD-filtered signal has a gradual decline in amplitude from about 50 Hz to 500 Hz. The EXTRA-filtered signals remove substantially more noise frequencies than the STD filter. The SG filter has marked ringing in the stop band. The amplitude of the IIR-filtered signal drops sharply at about 75 to 150 Hz and remains essentially 0.0 above 150 Hz. The amplitude of the FIR-filtered signal drops sharply at about 75 Hz to 120 Hz and remains essentially 0.0 above 125 Hz.

Effect of filtering on temporal auto-correlation

The median ACF for the first 5 lags is plotted for unfiltered and filtered signals in Figure 3. In the unfiltered condition, the median lag 1 temporal autocorrelation was ≈0.579, and of a total of 216 segments, 178 were statistically significant at the p<0.05 level. Although the unfiltered data reveals moderately strong temporal autocorrelation, the filters do indeed introduce more temporal autocorrelation. For all 216 fixations, filtered at all 5 levels, all 216 segments had a lag 1 temporal autocorrelation that was statistically significant at a p < 0.0001 level.
In Figure 4, we present boxplots for the Fisher-Z transformed values. In (A), we present the results for lag 1, (B) for lag 2, and (C) for lag 3. P-values from the Friedman tests were all statistically significant (p < 0.0001), (see Table 2). The results of all possible comparisons are presented in Table 2. P-values that were not statistically significant are struck-through. Briefly, almost every comparison was statistically significant. For lags 2 and 3, the EXTRA and SG were not statistically significantly different. For lags 1, 2 and 3, FIR and IIR were not statistically significantly different. For lag 3, in addition, the SG and the FIR were not statistically different.

Illustration of the Effects of Filtering on Positional Signal and Velocity

In Figure 5, we illustrate the effect of three filters (SG, IIR, FIR) on a particularly noisy unfiltered segment from our “RS” dataset. We do not have a method to apply the heuristic STD and EXTRA filters for this analysis since these filter functions are proprietary. Plot (A) shows the effect of filters on the raw signal. Plot (B) represents the instantaneous velocity for the unfiltered position channel in (A). Plot (C) shows the effect of our three filters on the instantaneous velocity of the filtered signals in (A). From Table 3 we can see that all filters markedly reduce instantaneous velocity noise. However, the IIR and FIR filters are much more effective at reducing noise than the SG filter. The differences between the FIR and the IIR are very minor, but for both the SD and the RMS, the FIR value is slightly smaller than the IIR value.

Discussion

In our prior paper (Raju et al., 2023) we determined that sine-waves below 75 Hz comprise signal and sine-waves above 75 Hz comprise noise. In this paper, we compared the frequency response of 5 filters applied to eye-movement fixation signals recorded from an EyeLink 1000 eye-tracking device. We conclude that, if the goal of the filtering process is to retain signal and remove noise, then our FIR filter is the best. This is apparent in the frequency-response and amplitude spectra of the various filtered signals. It is also supported by a visual inspection of a particularly noisy recording with a saccade. A large majority (82%) of unfiltered signals exhibit statistically significant temporal autocorrelation, but all our filters substantially increase temporal autocorrelation. If the choice of a filter is based on a desire to impart the least additional temporal autocorrelation, then the heuristic STD filter is the best.
Of course, some may not agree with our 75 Hz cutoff for distinguishing between signal and noise. Although the heuristic filters have no input parameters, the SG, the FIR, and the IIR filter can be designed to have any reasonable cutoff. Although the FIR filter was the best, the IIR filter (low pass, 7th order Butterworth) also performed very well. The heuristic filters did tend to reduce signals above 75 Hz, but the roll-off of these filters was very gradual and shallow. The SG filter is undesirable because of its relatively slow, shallow roll-off and because of the large ringing in the stop band.
Stampe (Stampe, 1993) promoted heuristic filters in place of other linear filters. He suggested that digital low-pass filters would negatively affect saccade detection, but he did not provide any evidence for this claim. It seems to us that the digital filters we propose would improve event detection because the saccade shape would be preserved, and noise would be reduced. For example, we think that event detection would be substantially easier in the filtered data in Figure 5 than in the unfiltered data. However, this remains an empirical question.
We studied the effect of filtering on temporal autocorrelation. As noted above, the unfiltered signals were generally temporally autocorrelated. The lag 1 autocorrelation (ACF) was ≈0.58. The lag 1 ACF for the STD filter was ≈0.95, and all the remaining filters had lag 1 ACFs ≈0.97. The marked increase in temporal autocorrelation as a result of our filters was not surprising (Friedman et al., 2023; Roy et al., 1997). We consider the presence of temporal autocorrelation to be undesirable. It is possible that different eye trackers might induce lower temporal autocorrelation. This has not been studied. Although there are time-series models (ARIMA-type models) that can markedly reduce or eliminate temporal autocorrelation, it is very unlikely (based on some pilot work) that the non-autocorrelated signals produced by such models would be useful to those who study eye movements. So, at least for now, eye-movement researchers will have to live with the presence of temporal autocorrelation.
As we noted in our earlier article (Raju et al., 2023), if the analysis in question is in the frequency domain, the minimum required sampling rate is 2 times the highest frequency to be preserved (75 * 2 = 150 samples per second) (Shannon, 1949). However, we believe that most eye movement researchers are interested in analysis in the time domain. As we noted in our earlier article, in this case, a rule of thumb is to collect data at 10 times the highest preserved frequency (750 samples PER second). However, EyeLink users do not have this option, so they will have to collect data at 1000 samples per second. We further recommend that EyeLink users collect their data unfiltered and apply our FIR filter. In this way, they will retain the needed signal and remove noise.
In the future, it might be interesting to perform the same type of study using other popular eye- tracking devices. Perhaps our analysis would yield different results for different systems. For the present, our results apply to EyeLink 1000 eye-trackers only.

Conclusion

In prior work (Raju et al., 2023), we suggested that sine-waves below 75 Hz are sufficient to preserve eye movement events such as saccades, microsaccades, and smooth pursuit in eye-tracking recordings. If this is the case, it is reasonable to try to filter out the noise above this frequency. We compared various filters and concluded that our FIR filter was the best filter for noise removal. For EyeLink 1000 users specifically, we recommend collecting unfiltered data and applying the FIR filter prior to analysis. With noise removed, simple visualization of eye movement events should be more informative and clearer. It seems likely to us that eye-movement event detection would also be improved because of noise removal. Other more general studies of eye movements will likely be more informative with cleaner data. Of course, filtering leads to increased temporal auto- correlation. But even in the unfiltered state, most fixation segments have statistically significant autocorrelation (Friedman et al., 2023). It appears the eye-movement researchers will have to live with temporally correlated signals.

Data Availability Statement

Ethics and Conflict of Interest

The author(s) declare(s) that the contents of the article are in agreement with the ethics described in http://biblio.unibe.ch/portale/elibrary/BOP/jemr/ethics.html and that there is no conflict of interest regarding the publication of this paper.

Acknowledgements

This work was funded by a grant from the NSF (1714623) (PI: Oleg Komogortsev). The funders had no role in the design of the study; in the collection, analyses, or interpretation of data; in the writing of the manuscript, or in the decision to publish the results.

Appendix A

EyeLink from SR research

Here are the instructions for how to turn off the heuristic filters for the EyeLink 1000 and 1000 plus.
  • Run the EyeLink Software on the Host PC.
  • Click on Set Options on the Camera Setup page.
  • File Sample filter option is now visible.
  • Turn it OFF for collecting data Unfiltered, STD for standard filtering and EXTRA for extra filtering.
Figure A1. Filtering options of EyeLink 1000 plus. Screenshot from EyeLink 1000 Plus User Manual version 1.0.12 (Page 35).
Figure A1. Filtering options of EyeLink 1000 plus. Screenshot from EyeLink 1000 Plus User Manual version 1.0.12 (Page 35).
Jemr 14 00017 g0a1
Figure A2. Filtering options of EyeLink 1000. Screenshot from EyeLink 1000 User Manual version 1.5.0 (Page 18).
Figure A2. Filtering options of EyeLink 1000. Screenshot from EyeLink 1000 User Manual version 1.5.0 (Page 18).
Jemr 14 00017 g0a2
iViewX from SMI
Here are the instructions for how to use the heuristic filters for the iViewX from SMI.
  • Click on Setup.
  • Eye Data Filtering option is now visible. See the following screenshot for assistance.
Figure A3. Filtering options of IViweX. Screenshot from IViewX User Manual version 2.8 (Page 339).
Figure A3. Filtering options of IViweX. Screenshot from IViewX User Manual version 2.8 (Page 339).
Jemr 14 00017 g0a3
These instructions are taken from the User Manual available at

References

  1. Bahill, A. T., A. Brockenbrough, and B. T. Troost. 1981. Variability and development of a normative data base for saccadic eye movements. Invest Ophthalmol Vis Sci 21, 1 Pt 1: 116–125. [Google Scholar] [PubMed]
  2. Bahill, A. T., J. S. Kallman, and J. E. Lieberman. 1982. Frequency limitations of the two-point central difference differentiation algorithm. Biological cybernetics 45, 1: 1–4. [Google Scholar] [CrossRef] [PubMed]
  3. Bellanger, M. 2000. Digital processing of signals: Theory and practice. John Wiley & Sons. [Google Scholar]
  4. Butterworth, S. 1930. On the theory of filter amplifiers. Wireless Engineer 7, 6: 536–541. [Google Scholar]
  5. Chatterjee, A., and U. K. Roy. 2018. PPG based heart rate algorithm improvement with Butterworth IIR Filter and Savitzky-Golay FIR Filter. 2018 2nd International Conference on Electronics, Materials Engineering & Nano-Technology (IEMENTech). [Google Scholar]
  6. Chauhan, M., P. Thorwe, M. J. Mukherjee, and Y. S. Rao. 2018. Sensor Data Analysis Using Moving Average Filter and 256-Point FFT for Wireless Sensor Networks. 2018 9th International Conference on Computing, Communication and Networking Technologies (ICCCNT). [Google Scholar]
  7. Cooley, J. W., and J. W. Tukey. 1965. An algorithm for the machine calculation of complex Fourier series. Mathematics of computation 19, 90: 297–301. [Google Scholar] [CrossRef]
  8. Das, V. E., C. W. Thomas, A. Z. Zivotofsky, and R. J. Leigh. 1996. Measuring eye movements during locomotion: Filtering techniques for obtaining velocity signals from a video-based eye monitor. Journal of Vestibular Research 6, 6: 455–461. [Google Scholar] [CrossRef] [PubMed]
  9. Friedman, L., T. Hanson, H. S. Stern, and O. V. Komogortsev. 2023. Checking the Statistical Assumptions Underlying the Application of the Standard Deviation and RMS Error to Eye-Movement Time Series: A Comparison between Human and Artificial Eyes. arXiv preprint arXiv:2303.06004. [Google Scholar] [CrossRef]
  10. Griffith, H., D. Lohr, E. Abdulin, and O. Komogortsev. 2021. GazeBase, a large-scale, multi-stimulus, longitudinal eye movement dataset. Scientific Data 8, 1: 184. [Google Scholar] [CrossRef] [PubMed]
  11. Kalman, R. E. 1960. A new approach to linear filtering and prediction problems. [Google Scholar] [CrossRef]
  12. Kennedy, H. L. 2020. Improving the frequency response of Savitzky-Golay filters via colored-noise models. Digital Signal Processing 102: 102743. [Google Scholar] [CrossRef]
  13. Mack, D. J., S. Belfanti, and U. Schwarz. 2017. The effect of sampling rate and lowpass filters on saccades-A modeling approach. Behav Res Methods 49, 6: 2146–2162. [Google Scholar] [CrossRef] [PubMed]
  14. Miles, W. R. 1930. Ocular dominance in human adults. The journal of general psychology 3, 3: 412–430. [Google Scholar] [CrossRef]
  15. Raju, M. H., L. Friedman, T. M. Bouman, and O. V. Komogortsev. 2023. Determining Which Sine Wave Frequencies Correspond to Signal and Which Correspond to Noise in Eye-Tracking Time-Series. arXiv preprint arXiv:2302.00029. [Google Scholar] [CrossRef] [PubMed]
  16. Raju, M. H., D. J. Lohr, and O. Komogortsev. 2022. Iris Print Attack Detection using Eye Movement Signals. 2022 Symposium on Eye Tracking Research and Applications. [Google Scholar]
  17. Rigas, I., and O. V. Komogortsev. 2015. Eye movement-driven defense against iris print-attacks. Pattern Recognition Letters 68: 316–326. [Google Scholar] [CrossRef]
  18. Roy, A. G., P. M. Biron, and M. F. Lapointe. 1997. Implications of low-pass filtering on power spectra and autocorrelation functions of turbulent velocity signals. Mathematical Geology 29: 653–668. [Google Scholar] [CrossRef]
  19. Savitzky, A., and M. J. Golay. 1964. Smoothing and differentiation of data by simplified least squares procedures. Analytical chemistry 36, 8: 1627–1639. [Google Scholar] [CrossRef]
  20. Shannon, C. E. 1949. Communication in the presence of noise. Proceedings of the IRE 37, 1: 10–21. [Google Scholar] [CrossRef]
  21. Stampe, D. M. 1993. Heuristic filtering and reliable calibration methods for video-based pupil-tracking systems. Behavior Research Methods, Instruments, & Computers 25: 137–142. [Google Scholar] [CrossRef]
  22. Virtanen, P., R. Gommers, T. E. Oliphant, M. Haberland, T. Reddy, D. Cournapeau, E. Burovski, P. Peterson, W. Weckesser, and J. Bright. 2020. SciPy 1.0: fundamental algorithms for scientific computing in Python. Nature methods 17, 3: 261–272. [Google Scholar] [CrossRef] [PubMed]
Figure 1. Frequency response of all the filters (EyeLink heuristic filters and Digital filters). At -3dB signals are reduced by 50%, at -6dB signals are reduced by 75%, and so on as mentioned in the legend. The IIR and FIR filters are zero-phase.
Figure 1. Frequency response of all the filters (EyeLink heuristic filters and Digital filters). At -3dB signals are reduced by 50%, at -6dB signals are reduced by 75%, and so on as mentioned in the legend. The IIR and FIR filters are zero-phase.
Jemr 14 00017 g001
Figure 2. The amplitude spectrum of the unfiltered signal and all the filters evaluated in this report. Segments were chosen as described above. IIR and FIR filters are completely overlapping except where the green dashed line representing IIR filter is visible from 75 Hz to 100 Hz.
Figure 2. The amplitude spectrum of the unfiltered signal and all the filters evaluated in this report. Segments were chosen as described above. IIR and FIR filters are completely overlapping except where the green dashed line representing IIR filter is visible from 75 Hz to 100 Hz.
Jemr 14 00017 g002
Figure 3. Effect of filtering on median temporal autocorrelation for unfiltered and filtered fixation segments. IIR and FIR filters are almost completely overlapping and slightly above the level for the SG filter.
Figure 3. Effect of filtering on median temporal autocorrelation for unfiltered and filtered fixation segments. IIR and FIR filters are almost completely overlapping and slightly above the level for the SG filter.
Jemr 14 00017 g003
Figure 4. Analysis of autocorrelation results. Values plotted are Fisher Z transformed values from the original autocorrelations. Three box-plots that compare all filters. (A) Box-plots represent ACF lag 1. (B) Box-plots represent ACF lag 2. (C) Box-plots represent ACF lag 3.
Figure 4. Analysis of autocorrelation results. Values plotted are Fisher Z transformed values from the original autocorrelations. Three box-plots that compare all filters. (A) Box-plots represent ACF lag 1. (B) Box-plots represent ACF lag 2. (C) Box-plots represent ACF lag 3.
Jemr 14 00017 g004
Figure 5. Illustration of the effect of filtering on positional signals and instantaneous velocity. A very noisy stretch of recording during our random saccade task was chosen. (A) Horizontal position signal, including a saccade of ≈1.25 degrees of visual angle (dva) for a very noisy unfiltered recording and for filtered position signals of the same recording. Each of the filtered versions has an offset for better visualization. (B) Velocity (instantaneous) channel for the unfiltered data. (C) Velocity (instantaneous) channel of the filtered data. The IIR velocity channel was offset by 50 degrees per second (d/s) and the FIR velocity channel was offset by 100 d/s.
Figure 5. Illustration of the effect of filtering on positional signals and instantaneous velocity. A very noisy stretch of recording during our random saccade task was chosen. (A) Horizontal position signal, including a saccade of ≈1.25 degrees of visual angle (dva) for a very noisy unfiltered recording and for filtered position signals of the same recording. Each of the filtered versions has an offset for better visualization. (B) Velocity (instantaneous) channel for the unfiltered data. (C) Velocity (instantaneous) channel of the filtered data. The IIR velocity channel was offset by 50 degrees per second (d/s) and the FIR velocity channel was offset by 100 d/s.
Jemr 14 00017 g005
Table 1. Digital filter specification.
Table 1. Digital filter specification.
Filter nameFilter characteristicsFinal -3db point
Savitzky-Golay (SG)Window length=23, polynomial order =575 Hz (74.9)
Infinite impulse response (IIR)Butterworth type, Order=7,
Cut-off (-3dB) =81 Hz, Zero-phase
75 Hz (75.4)
Finite impulse response (FIR)Number of coefficients, taps = 80, Cut-off (-3dB) = 84 Hz, Zero-phase75 Hz (75.0)
Table 2. Testing the Effects of filtering on Temporal Autocorrelation: Multiple Comparison Statistics (†In all case df=5, p < 0.0001, Strike-through values were not statistically significant.).
Table 2. Testing the Effects of filtering on Temporal Autocorrelation: Multiple Comparison Statistics (†In all case df=5, p < 0.0001, Strike-through values were not statistically significant.).
1st filter2nd filterACF 1ACF 2ACF 3
χ2= 711.5χ2= 604.2χ2= 492.1
DifferenceP-valueDifferenceP-valueDifferenceP-value
UnfilteredSTD-1.495p<0.001-1.361p<0.001-1.505p<0.001
UnfilteredEXTRA-3.056p<0.001-2.62p<0.001-2.505p<0.001
UnfilteredSG-2.44p<0.001-2.551p<0.001-2.722p<0.001
UnfilteredFIR-3.875p<0.001-3.491p<0.001-3.116p<0.001
UnfilteredIIR-3.94p<0.001-3.727p<0.001-3.403p<0.001
STDEXTRA-1.56p<0.001-1.259p<0.001-1.000p<0.001
STDSG-0.944p<0.001-1.119p<0.001-1.218p<0.001
STDFIR-2.38p<0.001-2.13p<0.001-1.611p<0.001
STDIIR-2.44p<0.001-2.366p<0.001-1.898p<0.001
EXTRASG0.6160.0082 0.069 0.9989 0.218 0.8328
EXTRAFIR-0.819p<0.001-0.87p<0.001-0.6110.0090
EXTRAIIR-0.884p<0.001-1.107p<0.001-0.898p<0.001
SGFIR-1.435p<0.001-0.94p<0.001 0.394 0.2442
SGIIR-1.5p<0.001-1.176p<0.001-0.6810.0022
FIRIIR 0.065 0.9992 0.236 0.7788 0.287 0.6022
Table 3. SD and RMs from Exemplar analysis.
Table 3. SD and RMs from Exemplar analysis.
UnfilteredSG FilterIIR FilterFIR Filter
Velocity SD120.1929.0123.4623.31
Velocity RMS209.5324.465.675.55

Share and Cite

MDPI and ACS Style

Raju, M.H.; Friedman, L.; Bouman, T.M.; Komogortsev, O.V. Filtering Eye-Tracking Data From an EyeLink 1000: Comparing Heuristic, Savitzky-Golay, IIR and FIR Digital Filters. J. Eye Mov. Res. 2021, 14, 1-16. https://doi.org/10.16910/jemr.14.3.6

AMA Style

Raju MH, Friedman L, Bouman TM, Komogortsev OV. Filtering Eye-Tracking Data From an EyeLink 1000: Comparing Heuristic, Savitzky-Golay, IIR and FIR Digital Filters. Journal of Eye Movement Research. 2021; 14(3):1-16. https://doi.org/10.16910/jemr.14.3.6

Chicago/Turabian Style

Raju, Mehedi H., Lee Friedman, Troy M. Bouman, and Oleg V. Komogortsev. 2021. "Filtering Eye-Tracking Data From an EyeLink 1000: Comparing Heuristic, Savitzky-Golay, IIR and FIR Digital Filters" Journal of Eye Movement Research 14, no. 3: 1-16. https://doi.org/10.16910/jemr.14.3.6

APA Style

Raju, M. H., Friedman, L., Bouman, T. M., & Komogortsev, O. V. (2021). Filtering Eye-Tracking Data From an EyeLink 1000: Comparing Heuristic, Savitzky-Golay, IIR and FIR Digital Filters. Journal of Eye Movement Research, 14(3), 1-16. https://doi.org/10.16910/jemr.14.3.6

Article Metrics

Back to TopTop