HOIGaze: Gaze Estimation During Hand-Object Interactions in Extended Reality Exploiting Eye-Hand-Head Coordination
University of Stuttgart
一句话总结
HOIGaze 是首个面向扩展现实(XR)中手-物交互(HOI)场景的注视估计方法,其核心洞见是:交互过程中眼、手、头运动高度协调,可利用这种协调关系筛出对训练最有价值的样本、给训练数据”去噪”,并通过”先识别被注视的手、再估计注视方向”的分层框架显著提升精度。
研究背景
随着 XR 普及,理解用户行为成为热点,其中人眼注视估计对多类应用意义重大:基于注视的交互(用眼动选择或操作 3D 物体)、注视相关渲染(中心区域高保真、外围降质以提效)、基于注视的意图预测,以及基于眼动的活动识别。
但在 XR 中估计注视很难,因为注视行为同时受自底向上的场景内容和自顶向下的因素(如用户当前要完成的任务)影响。已有工作大多聚焦两类设定:
- 自由观看:不给用户指定任务。
- 非交互场景:用户无法自然地与环境交互。
这两类设定对实际 XR 应用价值有限,因为真实场景里用户往往要自然地与环境交互来完成特定任务。而更实用也更具挑战的手-物交互场景下的注视估计,此前几乎无人问津。HOIGaze 正是为填补这一空白而生。
关键动机来自行为学证据:HOI 中眼、手、头运动强协调,且这种协调可用于”给训练样本去噪”。这与以往把所有训练样本一视同仁的做法形成鲜明对比。
方法
整体框架
作者观察到:HOI 中人的视觉注意在某一时刻通常只被一只手吸引(被注视的手,即离注视方向最近的手),被注视的手与注视高度相关,未被注视的手则几乎无关。因此”知道哪只手被注视”对估计注视极有价值。
据此提出分层框架:先用被注视手识别器判定当前被注视的是左手还是右手,再由注视估计器基于被注视的手、场景物体和头部朝向估计注视方向。
flowchart TD
A[输入: 头部朝向 H / 左手手势 LH / 右手手势 RH / 场景物体 O<br/>15 帧 = 500 ms] --> B[被注视手识别器]
B --> B1[1D CNN 提取头部朝向特征]
B --> B2[两个 ST-GCN 分别提取左/右手手势特征]
B1 --> B3[特征拼接 + 两层 CNN + Softmax]
B2 --> B3
B3 --> C[被注视的手 左/右]
C --> D[注视估计器]
D --> D1[1D CNN 提取头部特征]
D --> D2[被注视手 + 最近场景物体<br/>ST-GCN + 残差 GCN 提取手-物特征]
D1 --> E[跨模态 Transformer<br/>自注意力 + 交叉注意力融合]
D2 --> E
E --> F[拼接 + 1D CNN + 归一化]
F --> G[注视方向序列 G ∈ R^{3×T}]
问题定义:从手势、场景物体、头部运动出发,生成注视方向序列 \(G=\{g_i\}_{i=1}^{T}\in R^{3\times T}\),其中每个 \(g_i\) 是 3D 单位向量。手势用所有手关节加头、腕的 3D 位置表示,左右手分别记为 \(LH,RH\in R^{3\times(N+3)\times T}\);场景物体用物体中心 3D 位置 \(O\in R^{3\times J\times T}\) 表示;头部朝向用前向方向 \(H=\{h_i\}_{i=1}^{T}\) 表示。
关键设计一:被注视手识别器
- 头部朝向特征:借鉴 1D CNN 处理头部运动数据的良好表现,用三层 1D CNN(各 32 通道、核大小 3),前两层接 LayerNorm + Tanh,末层接 Tanh,得到头部朝向特征 \(f_{he}\in R^{32\times T}\)。
- 手势特征:用两个时空图卷积网络(ST-GCN)分别处理左右手手势。手势数据建模为全连接的空间图(\(N+3\) 个节点:手关节 + 头 + 双腕)与时间图(\(T\) 个时间步节点)。ST-GCN 先做时间卷积(乘时间邻接矩阵 \(A_T\))、再用特征矩阵 \(W\in R^{3\times8}\) 映射到 8 维隐空间、最后乘空间邻接矩阵 \(A_S\) 做空间卷积;再沿时间维复制增强特征,接含两个 GCN 块的残差 GCN 模块(每块含 ST-GCN + LN + Tanh + dropout 0.3)。
- 识别:将手势特征沿空间维聚合,与头部朝向特征拼接得 \(f\in R^{(16(N+3)+32)\times T}\),再经两层 CNN(首层 64 通道 + LN + Tanh,次层 2 通道 + Softmax)输出左右手为被注视手的概率。
关键设计二:注视估计器与跨模态 Transformer
- 头-物特征:由于视觉注意更易被靠近被注视手的物体吸引,先算每个物体中心到被注视手所有关节的平均距离,把最近的物体加入被注视手表示 \(AH=\{he_i,lw_i,rw_i,ah_i,o_i^{ah}\}_{i=1}^{T}\in R^{3\times(N+4)\times T}\),再用 ST-GCN 加含四个 GCN 块的残差 GCN 模块提取手-物特征 \(f_{ah}\in R^{8(N+4)\times T}\)。
- 特征融合:用跨模态 Transformer 融合头部与手-物特征。先各自过自注意力块,给定输入 \(X\in R^{T\times n}\),用 \(Q=W_qX,\ K=W_kX,\ V=W_vX\) 计算增强特征:
\[Y = X + \mathrm{softmax}\!\left(\frac{Q\otimes K^{T}}{\sqrt{n}}\right)\otimes V\]
再用交叉注意力块:一个模态算 \(Q\),另一模态算 \(K,V\),套用上式融合两模态,得到增强的头部特征与手-物特征。
- 估计:拼接两类特征得 \(f\in R^{(8(N+4)+32)\times T}\),经两层 1D CNN(首层 64 通道 + LN + Tanh,次层 3 通道 + Tanh),归一化为单位向量输出注视方向。
关键设计三:眼-头协调损失
先用交叉熵损失训练被注视手识别器,再用识别出的被注视手训练注视估计器。训练估计器时提出一种眼-头协调损失,给”眼-头协调运动”样本加权:
\[\ell_i = \begin{cases} f_{eh}\cdot(g_i-\hat{g}_i)^2, & \text{若}\ g_i\cdot h_i > Cos_{eh}\\ (g_i-\hat{g}_i)^2, & \text{否则}\end{cases}\]
其中 \(g_i\cdot h_i\) 是注视方向与头部朝向的余弦相似度,阈值 \(Cos_{eh}=0.8\),加权因子 \(f_{eh}=4.0\)。洞见在于:协调的眼-头运动远比无关联的运动普遍,因此加大协调样本权重可提升泛化能力。
实现上:识别器用 AdamW(初始学习率 0.005、权重衰减 0.05、每轮衰减 0.95、60 轮、batch 32);估计器用 Adam(初始学习率 0.005、每轮衰减 0.95、80 轮、batch 32);输入取 15 帧(500 ms)手-头-物数据估计对应注视。基于 PyTorch,单张 NVIDIA V100 训练。
实验结果
在两个公开数据集评测:HOT3D(纯 HOI 设定,眼动/头姿/腕姿/20 手关节手势/3D 物体,30 Hz,客厅/厨房/办公室三环境,用其训练集 136 段做跨用户与跨场景评测)与 ADT(混合自由观看、非交互、HOI,30 Hz,34 段,24 训练 10 测试,仅提供静态手势)。评价指标为估计注视与真值的平均角度误差(越低越好)。基线包括 Head Direction、DGaze、FixationNet、Pose2Gaze。
平均角度误差主表(单位:度,加粗为最优):
| 方法 | HOT3D 跨用户 均值 | HOT3D 跨场景 均值 | ADT 均值 |
|---|---|---|---|
| Head Direction | 23.20 | 23.20 | 22.25 |
| DGaze | 14.29 | 12.81 | 9.92 |
| FixationNet | 14.00 | 12.53 | 9.92 |
| Pose2Gaze | 11.10 | 9.80 | 9.34 |
| Ours | 9.37 | 8.64 | 8.78 |
| Ours w/o 被注视手 | 10.67 | 9.43 | 9.25 |
| Ours w/o Transformer | 10.02 | 8.92 | 9.12 |
| Ours w/o 眼-头协调损失 | 9.64 | 8.76 | 8.90 |
| Ours w/ 真值被注视手 | 8.98 | 8.34 | 8.57 |
- 相比此前最优的 Pose2Gaze,HOIGaze 在 HOT3D 跨用户平均提升 15.6%(9.37 对 11.10)、跨场景提升 11.8%(8.64 对 9.80)、ADT 提升 6.0%(8.78 对 9.34),配对 Wilcoxon 符号秩检验均显著(\(p<0.01\))。
- 消融显示被注视手、跨模态 Transformer、眼-头协调损失三者均带来显著增益;用真值被注视手可进一步降误差,印证”识别被注视手”这一设计的价值。
输入模态与结构消融(平均角度误差,度):
| 消融版本 | HOT3D-User | HOT3D-Scene | ADT |
|---|---|---|---|
| w/o 识别器 GCN | 9.75 | 8.78 | 8.99 |
| w/o 估计器 GCN | 9.87 | 9.13 | 9.20 |
| w/o 头部朝向 | 10.53 | 9.29 | 9.42 |
| w/o 头-腕位置 | 12.82 | 11.47 | 9.57 |
| w/o 手势 | 9.63 | 8.74 | - |
| w/o 场景物体 | 10.34 | 9.19 | 9.03 |
| Ours | 9.37 | 8.64 | 8.78 |
- 各输入模态与残差 GCN 均有贡献,其中去掉头-腕位置退化最明显。
- 下游任务验证:用 EHTask 做基于眼动的活动识别(work / room decoration / meal preparation 三类)。用 HOIGaze 估计的注视达到 71.8% 准确率,优于 Pose2Gaze 的 68.7%,且接近真值注视的 72.9%(Chance 33.3%),\(p<0.01\) 显著。
- 补充分析:右手为被注视手的比例在 HOT3D 为 54.3%、ADT 为 47.1%,说明被注视手无明显右手偏置;即便只用静态手势,HOIGaze 仍大幅领先(HOT3D 跨用户提升 13.2%)。
亮点与局限
亮点:
- 首个针对 XR 中手-物交互的注视估计方法,填补了从”自由观看/非交互”到”实用交互场景”的空白。
- 提出”眼-手-头协调可用于给训练数据去噪”的新洞见,用眼-头协调损失给协调样本加权,跳出了”所有样本一视同仁”的旧范式。
- 分层框架(先识别被注视手,再估计注视)+ 跨模态 Transformer 融合头/手-物特征 + CNN/ST-GCN 组合,多模块协同带来显著且统计显著的精度提升,并在下游活动识别中逼近真值表现。
- 依赖的手势与场景物体信息在 HTC Vive Focus 3、Meta Quest 3 等设备上易得,工程落地性好。
局限:
- HOT3D 与 ADT 只含与真实物理物体的交互,未覆盖虚拟物体,评测泛化性受限。
- 出于效果与算力考虑排除了图像/纹理特征,如何有效融入这类特征仍待探索。
- 方法性能上限受被注视手识别准确度影响(真值被注视手版本更优,说明识别误差仍是瓶颈)。
延伸思考
- “用行为协调关系筛选高价值样本”本质是一种数据去噪/重加权思路,可迁移到其他多模态人体行为建模任务(如动作预测、意图识别),而不局限于注视估计。
- 分层”先分类关键实体、再回归”的设计范式,在注意力有明确空间焦点的任务中或普遍有效;被注视手识别的错误传播问题,可考虑软融合双手特征或端到端联合训练来缓解。
- 眼-头协调损失的阈值与权重是硬编码超参,未来或可让模型自适应地学习”协调程度”作为连续权重,进一步榨取协调信息。
- 融合真实与虚拟物体、并把眼图特征与本方法的运动先验结合,可能是提升 XR 眼动追踪鲁棒性的一条现实路径。