A HIGH-FRAME-RATE EYE-TRACKING FRAMEWORK FOR MOBILE DEVICES(移动设备的高帧率眼动跟踪框架)
主体内容
关于模型的介绍:GazeHFR(一种专门用于移动设备的生物灵感(启发)眼动跟踪模型——GazeHFR。)——原文:a biologic-inspired eye-tracking model specialized for mobile devices
模型框架:pytorch
采用的数据集:GazeCapture --(提高了)–>基于学习的凝视屏幕跟踪模型(learning-based gaze-on-screen models)
应用场景:性能受限、移动环境、高帧率
考虑因素:资源、环境、人类运动的的运动动态和抖态
两个阶段:交替出现,平滑跟踪为主
眼球运动阶段 快速扫视(saccade)【小部分】 平滑跟踪(smooth pursuit)【大部分】 定义 双眼在多个注视点上突然快速移动(abrupt and rapid movement of both eyes across multiple fixation points) 缓慢而平稳的眼球运动(slow and smooth eye movement) 性质 突然性,不可预测性 可追踪性,可预测性 速度 最快可达到90°/s 低于30°/s 改进方向 文章未提到(随机性比较大,难以规范化) 帧间运动预测(develop inter-frame motion prediction technique)、减少冗余计算 如何实现眼睛跟踪 MobileNet 帧间运动预测 快速扫视原理图片:
平滑跟踪原理图片:
- 三大关键组件:分类模块,快速扫视的单帧模块(SFM),平滑跟踪的时序模块(TSM)
- 算法原理:
- 输入层:每一帧视频中眼睛的数据
- 分类层:将输入层的数据进行分类,判断属于实时眼动属于哪一个相位(快速扫视/平滑跟踪)
- 处理层:如果处于快速扫视阶段,则触发单帧模块,使用基于MobileNet的深度模型进行逐帧高精度眼动跟踪,以保证跟踪精度;如果检测到平滑追踪阶段,则触发时间序列模块,并且利用帧间运动信息来执行高效的眼睛运动预测,并且避免了昂贵的逐帧高精度跟踪。
- 分类模块:7个特征表征眼睛和设备的相对运动
- 七个特征:
- 瞳孔(pupil)到眼角的位移(2*2):--------2只眼睛,每只眼睛有两个眼角(左、右)
- 设备的角度:俯仰角、滚转角、偏航角
扫视的单帧模块:基于先前帧的运动信息不能准确地预测注视点,需要自由移动终端捕获的全尺度图像帧的输入。
平滑追踪的时序模块:
平移:由眼睛或移动终端的平移运动引起的注视移动(阅读一行文字)
匀加速线性凝视运动,加速度恒定(y表示纵向坐标,x表示横向坐标)—— GRU 神经网络结构处理眼动数据,捕获先前帧的特征,并如何使用线性表示来建模这些特征。
``` # 线性轨迹 y = yg(t-1) + ∆yg(t-1) + (∆yg(t-1) - ∆yg(t-2)) x = xg(t-1) + ∆xg(t-1) + (∆xg(t-1) - ∆xg(t-2)) ``` - > - `yg(t-1)` 和 `xg(t-1)` 是前一个时间步(t-1)中眼睛的位置坐标。 > > - `∆yg(t-1)` 和 `∆xg(t-1)` 是前一个时间步到当前时间步(t-1到t)中的位置变化,即眼睛在y轴和x轴上的位移。 > - `∆yg(t-1) - ∆yg(t-2)` 和 `∆xg(t-1) - ∆xg(t-2)` 是前两个时间步(t-2到t-1)中的位置变化之差,表示眼睛在前两个时间步之间的加速度。
旋转:由移动设备旋转引起的凝视运动(设备抖动)是运动噪声的一种,GazeHFR利用移动设备的运动传感器来捕获并补偿眼球跟踪过程中的这种运动噪声。其他因素:视线高度,视野角度…
- 旋转运动:由设备旋转引起的模拟凝视运动情景。当移动设备旋转θ度以垂直于视线的方向时,凝视点移动的距离等于L×(1-sinθ)。如下图。
组合(平移+旋转):将平移运动和旋转运动组合在一起的凝视运动。凝视运动轨迹可能随不同的轨迹形状(异常、弧形或近似线性形状)而变化
模型 (Model) 序列长度 (Seq Length) 精确度 (%) (Precision) 召回率 (%) (Recall) 时间 (毫秒) (Time) SVM 5 77.30 77.30 - RF 5 77.30 86.71 - RF 2 79.12 94.99 1.34 XGBoost 3 80.71 94.30 1.45 XGBoost 5 82.71 94.59 1.57 XGBoost 2 98.00% 92.29% 3.20 GRU 3 98.26% 94.21% 3.19 GRU 5 97.99% 90.52% 3.20
实验
数据集:GazeCapture数据集
数据规模:GazeCapture数据集包括大量的数据帧,其中包括数百万个眼动样本。这使得它成为一个大规模数据集,可用于广泛的眼动研究。
数据来源:数据集中的眼动数据来自不同年龄段和背景的志愿者。这些志愿者在观看移动设备屏幕上的内容时,他们的眼动行为被记录下来。
数据内容:GazeCapture数据集提供了每个样本的眼睛位置坐标、时间戳、凝视点的持续时间、设备运动数据等信息。这些数据可以用于分析眼动路径、注视点的分布、眼动行为的模式等。
用途:GazeCapture数据集被广泛用于眼动追踪算法的开发和评估。研究人员可以使用这个数据集来测试他们的眼动追踪模型的性能,并研究不同情境下的眼动行为。
实验数据处理:丢弃了32,751个缺少时间戳或运动数据的无效帧,将数据集中屏幕上特定点的注视时间视为平滑追踪。
实验数据划分:训练集:验证集:测试集=20:1:3
实验设备:
- 运行设备:戴尔PowerEdge T640服务器上,配备两颗英特尔Xeon Silver 4110 2.10GHz的8核处理器、64GB内存,以及四块NVIDIA TITAN V GPU。
- 评估模型设备:iPhone X、iPhone Xs Max、iPad Pro 11、Pixel 2和Pixel 3,在iOS上使用了苹果独有的Core ML平台。
性能比较:
模型 (Model) | 时间 (ms) | 凝视点预测误差 (cm) | 效率 (cm/s) |
---|---|---|---|
iTracker* | 84.15 | 3.16 | - |
GazeHFR | 9.58 | 2.68 | 50.10 |
Baseline-saccade | 8.87 | 2.78 | 42.84 |
Baseline-single-frame | 38.21 | 2.64 | 13.61 |
关于表格:
- 误差:预测的和实际的注视位置之间的欧几里德距离。
- 效率:每单位计算时间的眼动跟踪的优化工作量【参考模型误差减去测量误差】——计算时间越短或误差越小,效率越高,性能越好。
- 参考模型误差:这是指在研究中使用的参考或基准模型(通常是iTracker*)在执行任务时所产生的误差。这个误差是作为一个基准来衡量其他模型性能的。
- 测量误差:这是指实际测试或测量模型在执行任务时所产生的误差。这是通过比较模型的预测结果与实际结果来测量的。
关于模型:
- iTracker在文献中表现出了最佳的代表性。星号表示凝视点预测误差。
- Baseline-saccade是一种模型,仅计算了眼球的快速移动(saccade)帧,而其余部分都用这一结果填充在一个凝视窗口中。它的目的是检测TSM是否有效。
- Baseline-single-frame应用于测试集的每一帧,不仅限于saccade阶段。它的设计是为了证明效率的改进主要是由GazeHFR贡献,而不是MobileNet。
对于SFM(单帧模块)
- 骨干网络:MobileNetV2
- 更改:
- 替换了MobileNetV2最后一层,加了两个全连接层,两个全连接层的输出通道数为(128、2),最后的2个输出表示了两个预测的凝视位置坐标
- 加载了在ImageNet数据集上进行预训练的参数,除了最后的回归部分
- 根据GazeCapture数据集对SFM进行微调
- 优化器:Adam
- 学习率:初值为0.1,并每个epoch以1/10的速率衰减。
- 提升:单帧模型的扫视阶段可以自动提取眼睛和位置上下文信息。
效率提升对比图(GazeHFR&iTracker)*
专属名词
- 帧间运动:视频中相邻帧之间的物体或场景位置的变化或位移。
- 轻量级学习模型:相对于传统深度学习模型来说具有较小模型体积和计算复杂性的机器学习模型。
- 基于学习的凝视屏幕跟踪学习(learning-based gaze-on-screen models):根据输入数据,通常是眼睛或脸部的图像,来预测用户的凝视焦点或凝视目标。这些模型通过学习大量数据来捕捉人眼的特征和行为,以便准确地预测眼球在屏幕上的位置。(视频分析处理复杂,计算成本高,单独的视频帧处理眼球跟踪需要的cpu占用时间长,不适合高频帧移动场景)
模型名字 模型功能 DeepGaze 基于深度卷积神经网络的模型,旨在模拟人眼的凝视行为。它可以用于预测人在图像或视频中的凝视焦点。 iTracker 端到端的模型,可以从眼部图像中估计视线方向。它使用卷积神经网络和循环神经网络(RNN)来进行预测。 Pupil Labs 使用深度学习技术来提高准确性。他们的系统结合了硬件和软件,可以用于眼动研究和应用开发。 Salicon 基于深度学习的凝视模型,它使用卷积神经网络来模拟人类凝视。它可以用于图像的凝视预测。 SMI (SensoMotoric Instruments) 使用深度学习方法来提高凝视屏幕跟踪系统的性能。
- MIT Saliency Benchmark(麻省理工学院显著性基准):用于评估凝视预测模型的性能,即一个评估指标。
- 帧间运动预测:估计视频帧之间物体或场景的位移、速度和方向,通过分析相邻视频帧之间的像素差异或特征来预测物体的运动,而不是直接观察物体的运动。(常用方法:像素块匹配、光流估计和深度学习,分析图像中的特征点或像素,以估计物体的位移和速度)
- Faca++API:面部识别和面部特征检测的应用程序编程接口,集成了人脸识别和面部特征检测功能。
- GRU:(门控循环单元,Gated Recurrent Unit)是一种循环神经网络(RNN)的变体,用于处理序列数据和时序信息。它包含一个重置门(reset gate)和一个更新门(update gate),这些门控制着信息的流动和记忆的保存。GRU通过这些门的控制来解决长期依赖性问题。
Wh
矩阵通常表示为权重矩阵,用于在神经网络中进行线性变换和特征映射。- 运动噪声:由于物体的不完美运动或外部扰动引起的不规则、随机的运动。通常包括三种运动模式(旋转、偏航和俯仰)。
- 凝视点:一个人在观看某物体或屏幕上的特定位置时,眼睛焦点所在的位置。眼动追踪(Eye Tracking)领域,凝视点指的是通过专门的设备或技术来测量和记录一个人的眼睛在屏幕、图像、文本或物体上的位置。凝视点的坐标是以屏幕或视场为参考的,表示在屏幕上的横向和纵向位置。
- **TSM:**时间序列块。
- **什么是MobileNet:**轻量级卷积神经网络,专门设计用于在移动设备和嵌入式系统上进行图像识别和计算机视觉任务。
- 性质:轻量级、高效性,可以在计算资源有限的设备上运行,如智能手机、嵌入式系统和物联网设备。
- 特点:深度可分离卷积(Depthwise Separable Convolution)和逐点卷积(Pointwise Convolution)等技术,以减少参数数量和计算成本。
- 设计目标:在具有低功耗、有限存储和计算能力的设备上实现实时图像处理和计算机视觉应用