题目:The Tobii I-VT Fixation Filter Algorithm description
作者:Anneli Olsen

本文描述了I-VT固定过滤器背后的一般原理,并在Tobii I-VT固定过滤器中实施了这些原理。

Tobii I-VT固定滤波器 算法描述

  • 1.介绍
  • 2.一般数据处理和固定分类
    • 2.1.I-VT滤波器
    • 2.2.噪声
    • 2.3.低通滤波器
    • 2.4.缝隙填充
    • 2.5.眼睛选择
    • 2.6.检查时间和空间位置是否接近的固定装置
    • 2.7.检查是否有短注视
  • 3.Tobii I-VT滤波器的Tobii Studio实现
    • 3.1.它是如何实施的
      • 3.1.1.间隙填充插值
        • 3.1.1.1.确定要填充的空白
        • 3.1.1.2.将应该保留的空隙与应该填充的空隙分开
        • 3.1.1.3.对缺失数据进行插值
        • 3.1.1.4.设置‘Max Gap Length’(最大间隙长度)参数
      • 3.1.2.眼睛选择
        • 3.1.2.1.左或右-仅使用一只眼睛
        • 3.1.2.2.平均值
        • 3.1.2.3.严格平均
      • 3.1.3.降噪
        • 3.1.3.1.移动平均数<统计>
        • 3.1.3.2.中值
      • 3.1.4.速度计算器
      • 3.1.5.I-VT分类器
      • 3.1.6.合并相邻固定装置
      • 3.1.7.丢弃短时间的注视
    • 3.2.Tobii I-VT滤光片和Tobii眼镜
    • 3.3.选择设置

1.介绍

在2011年6月推出的Tobii Studio2.3中,我们引入了一种新的固定过滤器。随着Tobii Studio2.3的推出,我们还为我们的独立眼球跟踪器引入了新一代固件(支持SDK 3.0或更高版本),其中包括提高了在3D空间中跟踪眼球运动的能力。这种能力允许开发更复杂的固定滤光片,新的Tobii I-VT滤光片就是其中的一个例子。注视过滤器的全部目的是从原始眼睛跟踪数据中过滤出注视。单词过滤器是眼球跟踪分析软件中常用的术语,在Tobii软件中,它指的是可用于识别原始数据内的注视的一整套步骤。在Tobii IVT滤波器中,可用的步骤是填充间隙、选择眼睛、降噪、速度计算器、I-VT分类器、合并相邻的注视和丢弃短注视。每个步骤都有特定的功能,需要设置一个或多个参数。在本文中,我们将概述在识别凝视数据内的注视时通常需要哪些函数、这些函数在Tobii Studio中是如何实现的、我们为Tobii I-VT过滤器中的不同函数建议了哪些默认值,以及我们是如何选择这些默认值的。

2.一般数据处理和固定分类

虽然本文是关于Tobii I-VT过滤器的,这是一个具有几个步骤的注视识别过程,但是在讨论眼动分类的眼球跟踪文献中包括所有这些步骤是非常罕见的。取而代之的是,这类论文的焦点通常只集中在一个步骤上,即眼动分类算法[1-3]。有许多不同类型的眼动分类算法可用于识别各种类型的眼动,例如扫视或平滑追逐[3]。根据感兴趣的眼动类型,不同类型的分类算法或多或少是合适的。在人类行为研究中,最感兴趣的眼球运动通常是注视[4],因为注视表明信息最有可能被大脑记录的时间和信息是什么[5]。因此,在人类行为研究中,眼动分类算法中最常用的子集是只识别注视的算法,即注视分类算法。虽然构建注视过滤器算法来过滤掉注视,但是它对于例如扫视或平滑追踪识别并不是最优的。在现有的注视分类算法的选择中,I-VT分类算法是最受欢迎的算法之一,因为它相当容易实现和理解[1]、[2]。Tobii I-VT固定过滤器还提供凝视数据中有关扫视的信息,可以使用Tobii Studio中的文本导出进行访问。然而,Tobii I-VT固定过滤器是注视分类算法的实现,即I-VT分类算法,而不是扫视分类算法。

图1。凝视数据和速度图。计算出的速度峰值可以用来识别注视之间的扫视。


2.1.I-VT滤波器

速度阈值识别(I-VT)注视分类算法是一种基于速度的分类算法[2]。I-VT滤波器背后的总体思想是根据眼睛方向移动的速度对眼睛运动进行分类。速度通常以每秒视觉度数(°/s)[2]表示。如果它高于某个阈值,则计算其速度的样本被归类为扫视样本,低于该阈值则被视为注视的一部分(参见图1)。在这个过滤器中,凝视和流畅的追逐没有区别,或者扫视和流畅的追逐没有区别。根据设定的速度阈值,流畅的追逐要么被归类为扫视,要么被归类为凝视。

2.2.噪声

所有测量系统,包括眼球跟踪器,都会产生噪音。噪声可能来自系统设置中的缺陷,也可能来自进行测量的环境的影响和干扰[6]、[7]。在眼球跟踪研究中,注视的是感兴趣的眼球运动,其他轻微的眼球运动,如震颤和微眼跳,也可以被视为噪音[8]。在最基本的形式中,I-VT滤波器通过将从眼睛测量的两个连续采样点之间的角度除以采样频率来计算速度[2]。如果采样的凝视数据没有任何噪声,这将非常有效。但是,采样频率越高,相同速度的两个采样之间的眼动越小。这意味着,如果眼球跟踪器对凝视方向进行了非常小的错误计算,或者眼球跟踪器检测到轻微的眼球运动,如震颤或微扫视,当对使用高速眼球跟踪器收集的数据进行计算时,这将在速度计算中显示为大量噪声。

然而,对于频率较低的眼球跟踪器,还有另一种类型的问题。由测量问题引入的噪声在凝视数据中的振幅通常与高频眼球跟踪器相同,但由于每个样本之间的时间较长,滤除该噪声会带来严重修改实际“真实”凝视数据的风险。即使高频眼球跟踪数据集中的噪声会在计算的速度中引入放大的噪声,这通常可以使用降噪算法来消除,尽管对于有噪声的低频数据,这必须非常小心地完成。

图2.显示T60XL和TX300噪声数据的图表。计算的凝视点沿x轴。


在图2中,可以看到在60 Hz和300 Hz采样的眼球跟踪数据与计算的凝视速度一起绘制的曲线图。数据是使用相同的测试参与者和相同的刺激来收集的。从图表中可以看出,速度图中的噪声幅度大致相同,而在300 Hz采样的数据中有更多峰值,这仅仅是由于较高的采样频率,即每时间单位采样的样本数较高。
图3.图表显示了与图2B相同的数据,但在应用了移动平均降噪算法之后。


2.3.低通滤波器

噪声通常看起来像数据中的随机尖峰。由于噪声具有比I-VT滤波器旨在检测的信号(即注视和扫视)更高的频率,因此需要通过对眼睛跟踪数据进行所谓的低通滤波器来降低噪声的影响。如图3所示,与图2B相比,低通滤波器通过去除高频信号来平滑和降低噪声尖峰[9]。在应用I-VT分类算法之前进行低通滤波的另一种选择是计算几个样本上的眼动速度,而不是仅仅在两个样本之间计算眼动速度。这给出了一定时间跨度内的平均速度,因此对噪声不那么敏感[1]。

2.4.缝隙填充

当用眼睛跟踪数据进行注视分类时要考虑的另一个问题是,在数字测量系统中,几乎不可避免地会发生一些数据丢失,即,当测量完成时,不能每次都采集样本。在眼睛跟踪的情况下,数据丢失通常是由于参与者眨眼、看向别处,或者在眼睛跟踪器和眼睛之间放置了什么东西,从而使眼睛跟踪器的眼睛视图变得模糊。这类数据丢失通常会导致100毫秒或更长的间隔。然而,也有由于其他因素导致数据丢失的情况,例如硬件系统内的数据传输延迟、硬件的临时故障、超时问题、处方眼镜的临时反射使眼睛跟踪器无法识别眼睛等[1]。在这些情况下,数据丢失通常比上述原因造成的损失短得多。如果数据丢失发生在固定的中间,并且丢失的数据没有被有效数据替换,则固定分类算法可以将该固定解释为两个单独的固定。因此,需要一种缺口填充算法[10]。

2.5.眼睛选择

在理想情况下,当进行注视分类时,假设两只眼睛的行为相同。因此,分类算法只需要一个数据流。然而,在现实中,两只眼睛的行为并不总是一样的。当谈到注视和眨眼的开始时间和结束时间时,一只眼睛和另一只眼睛之间往往会有细微的差异。也可能会有这样的情况:一只眼睛的数据有差距,而另一只眼睛没有[8]。为此,必须选择如何将来自两只眼睛的数据转换成单个数据集,以供I-VT分类算法在对包括在数据中的样本进行分类时使用。

2.6.检查时间和空间位置是否接近的固定装置

I-VT分类算法的一个缺点是它假定数据是完美的。即使使用低通滤波器和间隙“填充”算法,也保留了一些缺陷,如短间隙或噪声,并导致一些数据点被错误分类。在大多数情况下,这意味着原本应该是长注视的东西会被归类为两个较短的注视,它们之间的眼跳持续时间很短,而且它们之间的视角偏移很短。这意味着在运行I-VT过滤器并进行分类之后,需要对产生的数据进行后处理,以便识别和合并时间上非常接近和空间上非常接近的注视[1]。

2.7.检查是否有短注视

I-VT算法的另一个问题是,它只检查每个数据点是否在凝视偏移的速度超过指定阈值时被记录,如果是,则将其标记为注视。如果它没有标记为注视的一部分,则被假定为间隙或扫视。在基本分类算法中没有任何东西限制注视可以有多短[2]。由于各种认知和其他过程,以及视觉输入的收集,都是在注视过程中发生的,所以注视(也就是收集视觉输入的时候)不可能无限短[11]。因此,需要过滤器来移除被I-VT过滤器标记为注视但持续时间太短而视觉输入无法被大脑记录的数据点或数据点组[12]。

3.Tobii I-VT滤波器的Tobii Studio实现

在上一节中,我们介绍了为什么需要不同功能的一般原因。在本节中,我们将介绍Tobii I-VT滤波器(包括其不同部分)是如何实现的,以及为什么实现。

图4.“Tobii Studio I-VT固定过滤器”对话框。


3.1.它是如何实施的

如上所述,仅对未处理的眼球跟踪数据使用I-VT分类算法会导致不希望的样本点错误分类。因此,在Tobii Studio中,可以选择应用前面讨论过的所有附加数据处理功能。对于每个记录,这些功能是顺序地和单独地应用的。因此,如果应用函数或修改函数的参数,则会影响以下所有函数中使用的数据。同样重要的是要记住,研究中的所有记录都经过相同的过滤,即不可能调整Tobii I-VT滤波器中不同功能的参数以单独适合每个记录。

在Tobii I-VT滤波器中,可以配置7种不同的数据处理功能。下面,将按照它们应用于眼睛跟踪数据的顺序来描述每个数据处理功能。

3.1.1.间隙填充插值

Tobii I-VT滤波器的第一个数据处理功能是间隙填充插值。此函数不是过滤器作为一个整体工作所必需的,但确实有助于在缺少数据的地方填充数据。由于数据丢失既可能是由于跟踪问题,也可能是由于诸如眨眼之类的合法原因,或者当参与者将目光从屏幕上移开时,需要设置一个用于区分这些问题的参数(如果启用了间隙填充插值)。该参数被标记为‘MAX GAP Length:’,并限制应该填充的空隙的最大长度,即空隙可以在不被视为“合法”空隙的情况下的最大持续时间,例如由于参与者将视线移开或遮挡眼睛跟踪器而导致的眨眼或数据丢失。间隙填充插值实现迭代遍历整个收集的样本集,并且每个样本都经历相同的过程。分别对从每只眼睛收集的数据执行间隙填充功能。在接下来的段落中,我们将对填隙功能的实现和涉及到的不同步骤进行说明。

3.1.1.1.确定要填充的空白

发生的第一件事是测试样本,看它是否包含有效的凝视数据。这是通过检查样本中的有效性代码来完成的。每只眼睛给出有效代码,如果找到眼睛并且跟踪质量良好,则有效代码为0。如果眼睛跟踪器无法找到眼睛,则有效性代码将为4。介于0和4之间的代码表示眼睛跟踪器检测到与有效性代码相关联的眼睛的确定性。如果数据被认为是可信的,即有效性代码为0或1,则该算法检查先前样本是否也包含有效数据。如果没有,并且时间戳中的时间戳与具有有效凝视数据的上一个样本和当前样本的时间差小于设置的‘最大间隙长度’,则在当前样本被有效数据替换之前样本中的无效数据被替换为有效数据。

3.1.1.2.将应该保留的空隙与应该填充的空隙分开

如果当前样本不包含有效的凝视数据,则接下来发生的事情是对照“最大间隙长度”参数检查计数器,该计数器跟踪自上次有效样本以来检测到的无效样本的数量。如果样本数量(包括当前样本)超过‘Max Gap Length(最大间隙长度)’参数,则间隙将注册为‘有效’间隙并保留。有效间隙被认为是由眨眼、暂时遮挡眼球跟踪器的视线或参与者从眼球跟踪器上移开等事件造成的。如果当前间隙持续时间小于‘最大间隙长度’,则通过添加当前无效样本来增加计数器。

一旦对当前样本执行了上述过程之一,则收集下一个样本,并对该样本以及记录中的所有后续样本重复该过程。

3.1.1.3.对缺失数据进行插值

间隙中的每个样本(即有效样本之前的每个样本)中的数据被单独替换。这分三步完成:首先,创建比例因子。比例因子是通过将要被替换的样本的时间戳减去间隙之前的最后一个有效样本的时间戳除以间隙的总持续时间来创建的(参见公式1)。其次,将比例因子与间隙之后的第一个有效样本的位置数据相乘。第三,将结果与间隙之前的最后一个有效样本的位置数据相加。


公式1.计算比例因子。

这将在从间隙之前的最后一个有效样本到间隙之后的第一个有效样本的数据中创建一条直线,其中包含现在有效的和替换的样本(参见图5)。从图5所示的例子可以看出,这种插值引入了一组人工的理想数据点,当研究眼球运动的细节(例如扫视轨迹或微扫视)时,这些数据点不适合进行分析。

图5.缺失或无效的样本已被内插样本取代。插值的采样将以红色高亮显示。


3.1.1.4.设置‘Max Gap Length’(最大间隙长度)参数

在设置“最大间隙长度”时要考虑的一个重要方面是,它不应该填补参与者或研究人员造成的眨眼和其他间隙,例如参与者从眼球跟踪器上移开,或者眼球跟踪器看到参与者的眼睛被遮挡。因此,选择的值应该比正常闪烁短。Komogortsev等人使用的一种值。艾尔。[3]为75ms,这也是Tobii选择作为此参数的默认值的值。该值也与其他眼球跟踪研究[13]、[14]中报告的值很好地对应。

缝隙填充插值的另一个方面是它可以延长或缩短注视和扫视的持续时间。这是由于线性插值,并意味着间隙内两个样本之间的测量速度将相同,如果该速度低于I-VT分类过滤器中的‘Velocity Threshold’参数,则间隙内的所有样本将被归类为固定样本。间隙中的样本将被分类为扫视样本还是注视样本取决于间隙之前的最后一个有效样本和间隙之后的第一个有效样本的位置数据。如果它们靠得很近,这些样品将被归类为固定样品。否则,样本将被归类为扫视样本。

间隙填充插值功能对于替换一些丢失的样本很有用,但除非记录丢失了相当多的数据,否则不是必需的。此功能的默认设置为启用。这是因为在一般情况下,该函数被认为提供了比缺点更多的好处,并且使得眼球跟踪数据分析对在数据收集期间导致数据中的短间隙的不可预见的干扰不那么敏感。

3.1.2.眼睛选择

Tobii I-VT滤波器实现具有四个选项,用于选择如何将从两只眼睛收集的数据合并成一个数据集,然后该数据集将在Tobii I-VT实现内随后的步骤中使用。下面将依次介绍这四个选项:

3.1.2.1.左或右-仅使用一只眼睛

Tobii Studio中的右眼和左眼表示从眼球跟踪器中看到的眼睛位置。如果选择了左或右选项,则只有从左眼或右眼收集的数据用于注视分类。只有当眼睛跟踪器确定样本中收集的数据来自所选眼睛时,才会使用来自一只眼睛的数据。如果在样本中仅检测到一只眼睛,并且眼睛跟踪器不能确定它是两只眼睛中的哪一只,则来自该样本的数据将不包括在注视分类过程的后续步骤中。然而,有一个例外,那就是如果在校准过程中只检测到一只眼睛。如果是这种情况,则假定在记录期间收集的所有样本都是为在与记录相关联的校准期间检测到的眼睛收集的。如果在校准过程中只检测到一只眼睛,在记录过程中检测到两只眼睛,则只使用此参数指定的眼睛的数据。

3.1.2.2.平均值

Average选项对左眼和右眼的位置数据进行平均。如果只检测到一只眼睛,即使不能完全确定检测到哪只眼睛,它也会使用来自该眼睛的数据。但是,如果只检测到一只眼睛,并且眼睛跟踪器根本无法确定它是哪只眼睛,则除非在校准过程中只检测到一只眼睛,否则数据将被丢弃。如果在校准期间仅检测到一只眼睛,并且在记录期间检测到两只眼睛,这可能导致偏移,因为将使用为校准期间检测到的眼睛构建的眼睛模型来计算两只眼睛的凝视数据。在一般情况下,左眼和右眼是不一样的。因此,对两者使用相同的眼睛模型将导致对眼睛的凝视估计不准确,而眼睛模型最初不是为其构建的。

3.1.2.3.严格平均

与“Average”设置不同,严格Average设置会丢弃仅检测到一只眼睛的所有样本。使用的数据仅是检测到来自两只眼睛的样本时创建的平均值。如果选择了“严格平均”并且只检测到来自一只眼睛的数据,这将导致不对注视进行分类。如果在校准过程中只检测到一只眼睛,但在记录过程中检测到两只眼睛,这将导致与“平均”设置相同的问题。

3.1.3.降噪

Tobii I-VT滤波器提供使用降噪功能的选项。如果采集的凝视数据噪声很大,降噪功能很有用,但完整的Tobii I-VT滤波器不一定要工作。在Tobii Studio2.4中,提供两种不同的降噪功能:移动平均和中值。降噪函数基本上是低通滤波器的简单形式,其目的在于平滑噪声,同时仍然保留固定分类所需的采样数据的特征[15]。

3.1.3.1.移动平均数<统计>

在移动平均降噪函数中实现的降噪算法在信号处理术语中被称为非加权移动平均滤波器15。这意味着来自每个样本的信号的输出是在当前样本之前的定义数量的样本和在当前样本之后的定义数量的样本的平均值。由于前面的样本和后面的样本在平均值上应该具有相同的权重,所以应该在平均值中包括相等数量的前面的样本和后面的样本(公式2中的N表示前面和后面的样本的数量)。目前的样本也包括在平均值中。这意味着在这样的平均窗口(包括当前样本)中包括的样本的总数需要是奇数(公式2中的2*N+1)。平均窗口大小可以在“窗口大小”参数中设置。

方程2。非加权移动平均滤波方程。

由于平均窗口使用来自当前样本之前和之后的数据,因此当这些数据不可用时(即,在记录开始时、间隙之前和之后以及记录结束时),情况经常发生。然后,实现降噪算法的方式调整窗口大小以仅包括具有有效凝视数据的样本,同时仍然保持对称。这意味着将使用比其他地方更少的样本来计算接近记录开始和结束或者间隔之前和之后的平均值。因此,与使用更多采样进行计算的位置相比,计算值可能包含更多来自噪波的影响。在间隙之前的最后一个样本和间隙之后的第一个样本的极端情况下,这意味着根本没有执行降噪。

任何类型的过滤器都会对结果数据产生想要的和不想要的结果。只有在评估了特定过滤器在特定使用情况下所涉及的优点和缺点之后,才应确定是否应该使用过滤器。如上所述,使用较小的窗口具有允许接近间隙的样本参与固定分类的好处,但也引入了这些样本被错误分类的风险,因为没有对所有可用样本平等地执行降噪。此外,“窗口大小”参数对如何在I-VT分类器中对样本进行分类有很大影响。窗口越小,被归类为眼跳和注视的样本之间的快速变化将被保持得越多,这意味着可以更接近于记录中实际发生的时间来检测到眼跳或注视的开始。然而,较小的窗口也允许更多的噪声保留在数据中,这意味着存在检测到错误扫视和注视的风险。

图6显示了以30 Hz采样的原始眼球跟踪数据,以及窗口大小为3和5个样本的移动平均降噪函数的数据。


窗口越大,数据就越平滑。这将导致在原始数据中可以看到的注视之间的陡峭过渡,在执行降噪之后转换为更平滑的坡度(参见图6)。因此,在扫视过程中计算的速度将会相当低。因此,需要相应地调整速度阈值。此外,如图6所示,“窗口大小”参数越大,扫视持续时间越长,注视时间越短。这意味着眼跳的持续时间会更长,速度会更慢,这意味着如果短注视的持续时间小于“放弃短注视”参数的设定值,那么长时间的眼跳之前的短注视将会变得更短,并有被完全丢弃的风险。


图7.图表显示了以30 Hz采样的原始眼球跟踪数据,以及窗口大小为3个样本的移动平均降噪函数的数据。


窗口大小对数据的另一个影响是过滤样本中的位置数据将略有改变。如果时间上的“窗口大小”参数(即样本数量乘以采样频率的采样时间)并不比要研究的信号频率的周期时间短很多,则位置影响可能很大(参见图6中蓝红线的最后一个峰值或与图7中的红色十字比较的橙色方块)。由于感兴趣的信号和应该保持不变的信号主要由凝视产生的伪像组成,因此可能值得记住的是,眼睛平均每秒移动2到5次,即每秒进行2到5次凝视[16]。将眼球运动视为一种信号,这意味着典型的信号频率将在2至5赫兹之间。这对应于200和500ms之间的信号周期时间(即,典型的固定持续时间),因为该周期时间是通过将1秒除以信号频率来计算的。如果将窗口大小参数设置为3个样本的降噪算法应用于由30 Hz采样的数据,则将意味着窗口大小实际上将是3乘以1秒除以30,这等于100ms。由于100ms并不比典型的200ms固定持续时间短很多,这表明使用此参数设置对以此采样频率采样的数据进行降噪可能会对数据产生负面影响。


图8显示了以30 Hz采样的原始眼球跟踪数据,以及窗口大小为3个样本的中值降噪函数的数据。


3.1.3.2.中值

中值降噪算法通过数据流迭代滑动窗口,这与移动平均算法非常相似。但是,中间数据点将替换为作为窗口中点集的中值的坐标。在中值降噪功能的Tobii Studio实现中,新的x屏幕和y屏幕坐标是独立计算的。在此示例中,对于包含3个数据点[12,5]、[10,30]和[15,20]的窗口,将用新数据点[12,20]替换中间点[10,30]。这里,12是x坐标(10,12,15)的中值,20是y坐标(5,20,30)的中值。与移动平均算法相比,中值降噪算法的优点是,即使去除了最突出的噪声,它产生的数据也不太平滑(参见图9)。此外,创建的“假”凝视坐标更少(参见图7和图8)。另一个好处是,与使用移动平均降噪算法相比,使用中值算法时速度峰值的幅度降低得不那么严重。


图9.图表显示了以30 Hz采样的原始眼球跟踪数据,以及经过移动平均降噪函数和中值降噪滤波器的数据。两个过滤器都设置为使用5个样本的窗口。


如噪声部分中所讨论的,I-VT分类算法对以较高频率采样的眼睛跟踪数据与以较低频率采样的数据中的噪声同样敏感。然而,考虑到将降噪功能应用于使用低频眼球跟踪器(60 Hz或更低)采样的数据的缺点,在对这些数据使用这样的算法时应格外小心。


图10.二维坐标系中连续凝视样本的插图。


3.1.4.速度计算器

在I-VT分类算法可以将样本分类为是否属于固定之前,需要将样本与速度相关联。最简单的方法是计算两个连续样本中凝视数据点(例如图10中的ST1和ST2)之间的距离,然后将其除以采样时间或两个样本之间的时间(参见公式3)。


公式3.基本凝视速度计算。

然而,这将给出与用于描述刺激大小的特定单位相关的速度,这意味着每当描述刺激的单位与以厘米或英寸为单位的刺激大小以及研究参与者与刺激平面之间的距离之间的关系改变时,将需要重新计算速度阈值。为了呈现与图像和屏幕分辨率无关的凝视速度,Tobii I-VT过滤器根据视角(即每秒度数)来计算此量。该计算基于3D空间中眼睛相对于刺激平面的位置与刺激平面上的注视位置之间的关系。角度的计算方法是获取计算其值的样本的眼睛位置,并使用该位置计算眼睛位置和两个凝视点之间的视角(参见图11)。然后除以两个样本之间的时间,得出角速度。


图11.凝视角度的计算


值得注意的是,在建立在SDK 3.0或更高版本上的眼睛跟踪器固件版本中,与之前的眼睛跟踪器固件版本相比,给出了关于眼睛在3D空间中相对于眼睛跟踪器和刺激平面的位置的更详细的信息。这意味着可以比以前的版本更精确地计算凝视速度,因为刺激平面和眼睛之间的精确距离是可访问的。角速度仍然可以用以前的固件版本收集的数据来计算,即,对于在Tobii Studio 2.3发布之前创建的项目和记录的数据,但是只有眼睛跟踪器和眼睛之间的距离是已知的,而不是眼睛和刺激平面之间的3D关系。这意味着结果值不像使用基于SDK 3.0或更高版本的固件的眼球跟踪器收集的数据那样准确。

以这种方式计算速度的复杂之处在于,采样频率越高,视线移动的距离就越短。因此,如果噪波添加一个与实际运动量级相似的额外距离,则计算出的速度几乎是实际速度的两倍。这意味着,如果噪声仅在两个连续样本之间计算,则噪声可能会对由具有较高采样频率的眼球跟踪器收集的数据的计算速度产生实质性影响。为了减少噪声的影响,Tobii I-VT滤波器中的速度计算器提供了计算每个样本的角速度作为当前样本周围一段时间的平均速度的选项,而不是仅仅计算两个连续样本之间的角速度。参数‘Window Length’用于指定应该在多长时间内进行平均。通过输入时间而不是采样数量,即使采样频率改变,也可以使该参数保持一致。然而,在实际的速度计算中,时间窗口长度被转换为若干样本。这是通过计算在‘Window Length’参数中给出的时间跨度内收集了多少样本来实现的。因为样本之间的时间在记录期间可以变化,即使只有一毫秒左右,通过首先计算记录中的前100个样本之间的时间戳的平均差,然后用所得值除以“窗口长度”参数,来计算间隔中的样本数量。然后,该计算给出的数字加1,因为在间隔的开始,即在时间0(t=0),总是有一个样本。“速度计算器”的这种实现还通过将速度计算中使用的样本的最小数量设置为两个来防止在给定的参数持续时间内只有一个样本。这是因为至少需要两个样本才能进行任何这样的计算。

通过创建其中该样本为中间样本的窗口来计算该样本的平均速度。要计算速度,需要三条关于位置的信息。这些是窗口中第一个和最后一个样本的关于刺激的凝视点位置数据,以及来自中间样本的眼睛位置数据,即为其计算速度的样本。通过知道要计算速度的样本的眼睛位置数据,可以确定窗口中第一个样本的刺激凝视点和最后一个样本的点之间的视角(参见图11)。一旦确定了该角度,就使用第一个和最后一个样本的时间戳差来找出这些样本之间的时间。通过将相对于眼睛位置的点之间的视角除以时间差,确定凝视速度。然后对数据中的所有样本重复此操作。为了确保以相同的方式计算所有样本的速度,如果没有足够的样本可用于填充窗口,则不会进行计算。这意味着将不会为距离间隙或记录开始或结束的半个“窗口长度”持续时间内的样本计算速度。

设置‘Window Length’参数时,评估所选值的结果非常重要。因为‘Velocity Calculator’具有类似于低通滤波器的属性,所以设置为‘Window Length’参数的高值将平滑速度的快速变化。因此,I-VT分类算法对扫视或注视的快速开始不那么敏感。此外,由于在“Window Length”参数持续时间的一半时间内,不会在间隙之前或之后计算速度,因此较高的值将增加数据中间隙的持续时间。然而,如果数据有噪声,过低的值将产生样本被错误分类的风险,因为噪声的影响会更高。

“窗口长度”参数的默认值为20ms。已经发现,该值可以处理合理的噪声水平,而不会对数据造成太大的失真,并且可以提供与采样频率无关的一致结果。

3.1.5.I-VT分类器

I-VT分类算法所做的唯一一件事就是检查与每个样本相关联的速度,并根据速度是否低于或高于设定的阈值将样本分类为固定的一部分。此外,Tobii I-VT过滤器中的I-VT分类器功能还做其他一些事情:除了将样本分类为是否为注视的一部分外,它还将具有相同分类的连续样本分组在一起,以便简化Tobii I-VT过滤器中I-VT分类器后面的函数中的数据处理。它还计算在将具有相同分类的样本分组之后创建的固定的持续时间和位置。在Tobii I-VT滤波器中实现I-VT分类器的方式对应于Komogortsev等人描述的过程。[3]并且如下所述。

对于每个样本,检查速度,并将样本分类为注视或扫视:如果与样本相关联的速度低于‘Velocity Threshold’参数,则将该样本归类为属于注视,如果该速度等于或高于该参数,则将其归类为属于扫视。例外情况是不包括速度的样本,例如,间隙内或记录开始或结束时无法计算速度的样本。

一旦样本被分类,它就会与紧挨着它的前一个样本进行比较。如果当前样本和前一个样本具有相同的分类,则将该样本添加到列表中,该列表包括自上次具有不同分类的样本以来找到的所有相同分类的连续样本。

如果当前样本和前一个样本具有不同的分类,则使用直到当前样本具有相同分类的样本列表来创建注视、扫视或间隙。计算注视、扫视或间隙的持续时间如下进行:通过从具有相同分类的前一样本列表中的最后一个样本和具有另一类别的当前样本列表中的第一个样本取得时间戳并计算这两个样本之间的确切时间点来确定开始时间。对当前样本列表中的最后一个样本和当前列表之后的样本列表中的第一个样本执行相同的操作。这可确保时间线中不同类型的眼球运动之间没有间隙,但也会导致所有眼球运动的持续时间比列表中第一个和最后一个样本之间的时间长一个采样时间。

通过计算包括在被分类为属于注视的样本列表中的样本的注视位置数据的平均值来确定注视的位置。然后,将关于眼动的类型、眼动的持续时间、其位置信息以及属于该眼动实例的所有样本的信息保存在另一列表中,该列表包含至此识别到当前样本的眼动。然后,当前样本成为具有其分类的新样本列表中的第一个。然后从数据中收集下一个样本,并对该样本重复分类过程。


图12.图表显示了计算出的凝视和凝视速度,以及一条表示速度阈值参数30°/s的线条。


根据记录数据中的噪声级别,“Velocity Threshold”参数可能需要调整为更高或更低的值(参见图12)。太低的值将导致更多的样本被错误地归类为扫视,而太高的值可能会增加较短注视被忽略的风险。但是,在噪声水平非常高的某些情况下,识别合适的速度阈值参数值可能非常困难(参见图12A)。

‘Velocity Threshold’参数的默认值设置为30°/s[18]。选择的‘Velocity Threshold’参数的默认值足以用于各种噪声级别的录制。但是,对于具有非常嘈杂数据的录制和项目,可能需要修改此设置。

3.1.6.合并相邻固定装置

将样本分组为注视、扫视或间隙是在不考虑每个组中包括多少样本的情况下进行的。这意味着,如果一个或一小组样本由于受到噪声或任何其他可能导致这种情况的干扰的影响而被错误分类,这可能会导致长注视被分成几个短注视,其间有非常短的扫视或间隙。如果固定装置位于靠近的位置,无论是在时间上还是在空间上,它们很可能实际上是一个长时间注视的一部分,测量误差导致了注视的分裂。“合并相邻固定”功能可用于将已拆分的固定部分缝合在一起[3]。通过指定两个固定部分之间的最长时间(“注视之间的最长时间”参数),然后将它们视为单独的注视,以及两个注视部分之间的最大视角(“注视之间的最大角度”参数),可以定义应该如何进行合并。

要测试是否应该合并两个连续的注视,首先要验证的是第一个注视结束和下一个注视开始之间的时间是否短于“注视之间的最长时间”参数中指定的时间。如果是,则确定两个固定位置之间的视角。这是通过根据来自第一次注视中的最后一个样本和来自下一次注视的第一个样本的眼睛位置数据计算平均眼睛位置,并通过使用该眼睛位置来确定第一次注视的注视位置和下一次注视之间的视角来实现的。如果该角度小于或等于在“两个固定之间的最大角度”参数中设置的角度,则合并两个固定。

当选择“注视之间的最长时间”参数时,重要的是设置一个不移除眨眼的值,即它需要小于眨眼持续时间。否则,结果数据可能会产生误导。“两次注视之间的最长时间”参数的默认值被选择为小于通常报告的短眨眼的正常眨眼持续时间[3]、[14]、[19]。默认值为75ms,与Komogortsev等人使用的值相同。[3]为此目的。

此外,为“注视之间的最大角度”参数选择过大的值可能会导致合并本应由短扫视分隔的注视。关于“注视之间的最大角度”参数,该值是基于对使用该算法合并注视的研究的文献回顾而选择的。所选默认值0.5°是常用的平均值[3]、[20-22],也与在注视过程中允许发生短的微扫视和其他轻微的眼球运动很好地对应,而不会将它们分开[12]。

3.1.7.丢弃短时间的注视

即使使用了“合并相邻定位”功能,仍然可能存在持续时间非常短的定位。在研究用户行为时,非常短的注视是没有意义的,因为眼睛和大脑需要一些时间来记录所看到的信息[1]。因此,“放弃短注视”功能提供了从注视列表中删除短于设定值的注视的选项。该值由“最小固定持续时间”参数设置。这在Tobii I-VT滤波器中实现的方式是将每个固定的持续时间分别对照“最小固定持续时间”参数进行检查。如果持续时间短于参数值,则将注视重新分类为未知眼球运动。

选择“最小注视持续时间”参数的默认值以允许相当短的注视(60ms),因为这些在阅读期间通常是可用的[3]、[12]、[20]、[23],并且大量的眼球跟踪研究包括在阅读期间的眼球运动分析。

3.2.Tobii I-VT滤光片和Tobii眼镜

Tobii I-VT滤光器是为固定式眼球跟踪器而开发的。因此,如果选择对使用Tobii眼镜收集的数据使用此过滤器,Tobii目前不提供任何有关设置的建议。因为即使在使用快照时,眼镜也不提供刺激平面(即,快照平面和眼睛)之间的非常具体的距离,所以过滤器中涉及凝视点和眼睛位置的所有计算都容易引入或多或少不正确的注视数据。合并定影的设置可能特别棘手,因为这需要知道眼睛和刺激物之间的距离。另外,由于托比眼镜的采样频率相对较低,不应对数据进行低通滤波,因为这可能会删除数据中将样本正确分类为扫视、注视或间隙所需的重要信息。

3.3.选择设置

根据噪声水平以及使用的刺激,可能需要修改Tobii I-VT滤波器中不同参数的值。选择默认值是为了为具有不同采样频率的眼球跟踪器和具有不同噪波级别的记录提供一致的结果。但是,一如既往地,当尝试确定应适用于各种情况的值时,所选的值不会针对任何特定类型的研究或噪音级别进行优化。对于噪声水平较低的研究(例如,速度阈值可以设置得较低),以及在构建刺激使得大多数扫视可以延伸很长距离的研究中,可以将速度阈值设置得更高,而不会丢失任何注视信息。通过使用Tobii Studio中的“凝视速度”工具检查数据,可以对当前设置是否足够以及是否应该进行修改形成一个想法。

《The Tobii I-VT Fixation Filter Algorithm description》阅读相关推荐

  1. 阅读《SentiLARE: Sentiment-Aware Language Representation Learning with Linguistic Knowledge》

    SentiLARE: Sentiment-Aware Language Representation Learning with Linguistic Knowledge Abstract 现有的预训 ...

  2. Align before Fuse: Vision and Language Representation Learning with Momentum Distillation

    ALBEF:Align before Fuse: Vision and Language Representation Learning with Momentum Distillation 论文链接 ...

  3. # 互信息最大化[视角统一]:Align before Fuse: Vision Language Representation Learning with Momentum Distillation

    互信息最大化[视角统一]:Align before Fuse: Vision and Language Representation Learning with Momentum Distillati ...

  4. 【论文模型讲解】VideoBERT: A Joint Model for Video and Language Representation Learning

    文章目录 前言 0 摘要 1 Introduction 2 相关工作 3 模型 3.1 BERT 3.2 VideoBERT 4 实验与分析 4.1 数据集 4.2 视频和语言预处理 4.3 模型预训 ...

  5. [论文学习]TDN: An Integrated Representation Learning Model of Knowledge Graphs

    [论文学习以及翻译]TDN: An Integrated Representation Learning Model of Knowledge Graphs 文章主要内容 摘要 前言 相关工作 基于T ...

  6. Kaiming He论文阅读笔记三——Simple Siamese Representation Learning

    Kaiming He大神在2021年发表的Exploring Simple Siamese Representation Learning,截至目前已经有963的引用,今天我们就一起来阅读一下这篇自监 ...

  7. [论文阅读] iCaRL: Incremental Classifier and Representation Learning

    论文地址:https://openaccess.thecvf.com/content_cvpr_2017/html/Rebuffi_iCaRL_Incremental_Classifier_CVPR_ ...

  8. 自然语言处理学习——论文分享——A Mutual Information Maximization Perspective of Language Representation Learning

    资料放在前面:https://blog.csdn.net/Arnetminer/article/details/105840669 文章的贡献如下: (1)提出了一个基于最大化MI的理论框架来理解词表 ...

  9. CVPR 2020 《12-in-1: Multi-Task Vision and Language Representation Learning》论文笔记

    目录 简介 动机 贡献 方法 实验 简介 本文是在NIPS 2019 ViLBERT上的拓展. 论文链接 动机 本文修改了ViLBERT的预训练过程,有两个小修改:1. 对regions进行mask时 ...

  10. 论文阅读Unsupervised Corpus Aware Language Model Pre-training for Dense Passage Retrieval

    密集文本检索的无监督语料库感知语言模型预训练 ACL2022 论文链接 摘要 最近的研究证明了使用微调语言模型(LM)进行密集检索的有效性.然而,密集检索器很难训练,通常需要经过精心设计的微调管道才能 ...

最新文章

  1. HDU - 5877 Weak Pair 2016 ACM/ICPC 大连网络赛 J题 dfs+树状数组+离散化
  2. 【C++】欧几里德算法快速求最大公约数
  3. 深度学习:yolo v3训练结果测试
  4. PostGis基本操作-新建空间数据库与shp数据的导入
  5. mysql 联合索引详解
  6. python爬虫数据_python爬取数据分析
  7. 基于asp.net的音乐分享网站的设计与实现(含源文件)
  8. 设计模式的C语言应用-责任链模式-第三章
  9. mysql实现主从复制的方式_mysql实现主从复制、读写分离的配置方法(二)
  10. 多元统计分析基于r课后答案_(完整版)多元统计分析课后练习答案
  11. android版本下载地址 http,Android ADT下载地址(含各版本)
  12. 一种小封装485芯片
  13. 简述力法计算弹性固定无铰拱的原理_隧道结构力学计算
  14. html b5纸尺寸,b5纸的大小?
  15. 【HTML作业】HTML设计--电影网站,影视网站
  16. 10个最好的免费PS图象处理软件方案
  17. 晶振(crystal)与谐振荡器(oscillator)
  18. r语言lm函数找不到对象_R语言错误的提示(中英文翻译)
  19. 华三服务器鼠标退出虚拟机,一种通过VLAN变换实现虚拟机安全防护的方法
  20. CSharp再爱我一次,你真的懂泛型吗?

热门文章

  1. ZYNQ OV7725和OV5640摄像头速度测试
  2. 【Unity3D】制作进度条——让Image同时具有Filled和Sliced的功能
  3. 行尸走肉第一季/全集The Walking Dead迅雷下载
  4. Spring Cache key生成策略, 不要想当然认为是全类名+方法+参数
  5. 爆款养成思路,教你利用砍价做出刷屏活动!
  6. UOS系统(ubuntu)安装开发环境
  7. HDU6438(贪心技巧)
  8. mysql 检索结果排序方式_MySQL--排序检索数据(ORDER BY)
  9. 微信朋友圈怎么设置对单人开放?
  10. 802.11 Tx Rate Control