让化身脚踏实地: 几何先验与海量数据如何解决以自我为中心的动作捕捉

如果你使用过现代虚拟现实 (VR) 头显,你可能已经注意到了缺了点什么: 你的腿。大多数当前的 VR 化身 (Avatar) 都是带着双手的漂浮躯干,像是在数字虚空中漂移的幽灵。这并非风格选择,而是一种技术限制。

从头显追踪用户的全身 (即以自我为中心的动作捕捉) 极其困难。头显上的摄像头几乎看不到用户的下半身,因为视线通常会被胸部或腹部阻挡 (自遮挡) 。即使摄像头能看到腿部,视角也会因鱼眼镜头而扭曲,而且头部的快速移动会让视频画面变得混乱。

结果就是: 传统的深度学习模型难以应对。它们产生的结果往往是“悬空脚” (脚悬浮在地面上方) 、“滑步” (化身不自然地滑动) 或肢体穿过地板。

在这篇文章中,我们将深入探讨 FRAME (Floor-aligned Representation for Avatar Motion from Egocentric Video,即基于地板对齐表示的以自我为中心视频化身动作生成) ,这是一篇提出稳健解决方案的新研究论文。研究人员通过结合两股强大的力量来解决这个问题: 海量的真实世界数据集,以及将预测锚定在“地板对齐”坐标系中的巧妙架构决策。

图 1: FRAME 系统概览。(a) 定制采集装置。(b) 采集的数据集。(c) 输出结果: 骨骼动作预测。

当前数据集的问题

要训练神经网络预测身体姿态,你需要数据——具体来说,是人们运动的视频配对准确的 3D 骨骼真值 (Ground Truth) 。

过去,研究人员面临两难境地。他们要么使用合成数据 (在 3D 引擎中渲染的视频游戏角色) ,这能提供完美的标签但在 AI 看来很“假”;要么采集真实世界数据

以自我为中心视频的真实世界采集出了名地难。为了获得真值标签,你需要一个外部动作捕捉系统 (比如拥有 100 多个摄像头的摄影棚) 。为了获得输入视频,你需要在人的头上安装摄像头。但是如何将两者对齐呢?

以前的解决方案是在头盔顶部安装巨大的棋盘格或笨重的结构,以便外部摄像头可以追踪头显的位置。

图 2: 采集设备的比较。以前的设置 (a, b, c) 头重脚轻且不自然。FRAME 的设置 (d) 轻量且逼真。

图 2 所示,以前的装置头重脚轻且笨重。如果用户头上顶着一个 2 公斤重的塔,他们就无法自然地移动。他们会为了平衡重量而僵硬地行走。这会使数据产生偏差。此外,摄像头通常安装在从面部伸出的“支架”上 (为了获得更好的视野) ,这并不能反映 Meta Quest 3 等消费级产品的实际摄像头位置。

SELF 数据集

FRAME 的作者介绍了 SELF 数据集 , 解决了这些硬件限制。他们基于 Meta Quest 3 构建了一个定制装置,配备了向下看的立体鱼眼镜头。

该数据集的主要特点包括:

  • 规模: 它包含 160 万帧 (超过 7 小时的素材) ,比之前最大的真实世界数据集大 6 倍。
  • 真实性: 装置轻巧,允许参与者自然地进行运动和动态动作。
  • 真值: 他们利用拥有 120 个校准摄像头的摄影棚来捕捉骨骼动作 (“标签”) ,同时头显捕捉以自我为中心的视频 (“输入”) 。

为了确保头显的内部追踪 (运行在自己的时钟和坐标系上) 与摄影棚的动作捕捉系统匹配,他们使用了严格的数学对齐过程。他们最小化了摄影棚对头显的观察与头显对世界的观察之间的误差:

ArUco 标定板姿态估计的优化方程。

VR 设备姿态与摄影棚真值对齐的方程。

通过解决这些优化问题,他们确保视频源中的每个像素在时间和空间上都与 3D 骨骼完美同步。

FRAME 架构

有了海量数据集在手,研究人员开发了 FRAME 架构。这里的核心理念是多模态融合

大多数以前的方法将其视为纯粹的计算机视觉问题: 输入图像 \(\rightarrow\) 黑盒 \(\rightarrow\) 输出姿态。

FRAME 将其视为由计算机视觉支持的几何问题。现代 VR 头显通过 SLAM (同步定位与地图构建) 提供出色的 6-DoF (6自由度) 追踪。我们确切地知道头显在哪里以及它是如何倾斜的。FRAME 显式地利用了这些信息。

图 3: FRAME 架构概览。(a) 2.5D 估计。(b) 坐标系对齐。(c) 立体时序融合。

让我们分解图 3 所示的流程。

第一步: 基于鱼眼的姿态估计 (主干网络)

过程始于原始立体图像 (左和右) 。一个共享的主干网络 (ResNet50) 从两幅图像中提取特征。

该模型不会直接跳转到 3D 坐标 (x, y, z)。相反,它预测一种 2.5D 表示 , 包括:

  1. 2D 热力图 (Heatmaps) : 关节在图像中位置的概率分布 (\(u, v\))。
  2. 深度图 (Depthmaps) : 该关节距离摄像头的距离 (\(d\))。

为了将热力图转换为精确坐标,他们使用了 Soft-Argmax 操作。然后,通过结合预测的深度图和热力图强度来计算深度:

使用深度图和热力图的哈达玛积计算深度的方程。

利用已知的鱼眼镜头校准信息,这些 2.5D 点被“反投影”到相对于摄像头的 3D 空间中。

第二步: 地板对齐参考系

这是这篇论文的“独门秘籍”。

如果你预测相对于摄像头的身体姿态,当用户低头时,坐标系会旋转。这使得神经网络极难学习到“脚在地上”这一事实。在相机空间中,地板是不断移动的。

FRAME 通过将预测转换到一个稳定的、地板对齐参考系 (\(\mathcal{F}\)) 来解决这个问题。

图 4: 坐标系可视化。L/R 是相机坐标系。M 是中间坐标系。F 是地板对齐坐标系。

图 4 所示,系统计算了一个变换链:

  1. 相机坐标系 (\(\mathcal{L}, \mathcal{R}\)): 来自传感器的原始视图。
  2. 头显坐标系: 通过 VR 设备的内部追踪获知。
  3. 地板坐标系 (\(\mathcal{F}\)): 一个 Y 轴完全垂直 (与重力对齐) 且原点在地面上的坐标系。

系统使用已知的设备姿态 (\(T_D\)) 和固定的相机偏移量 (\(M_L, M_R\)) 来计算相机的全局位置:

计算全局相机姿态的方程。

然后,它将初始的 3D 关节预测 (\(J_L, J_R\)) 从不稳定的相机坐标系转换到稳定的地板坐标系中:

将关节转换到地板对齐参考系 F 的方程。

通过强制网络在这个稳定的 \(\mathcal{F}\) 坐标系中细化姿态,模型隐式地学习到了重力和地面接触。地板永远在 \(y=0\) 处。这极大地减少了“悬空脚”伪影。

第三步: 立体时序融合 (STF)

即使有了地板对齐,单帧预测仍可能存在抖动。为了解决这个问题,FRAME 使用了一个基于 Transformer 的模块,称为立体时序融合 (STF)

STF 接收一系列过去的预测 (已对齐到当前的地板坐标系) 并将它们合并。它查看运动历史以平滑噪声,并填补可能发生遮挡的空白。它实际上是在问: “考虑到 100 毫秒前腿的位置,以及左右摄像头现在认为它在哪儿,它最可能在哪里?”

一种新颖的训练策略: 交叉训练缓存

在训练像这样的两阶段管道时,存在一个微妙的问题。

如果你在训练集上训练主干网络 (第一步) ,它最终会记住数据并在特定数据上变得极其准确。如果你随后使用主干网络在该数据上的输出来训练 STF 细化器 (第三步) ,细化器会变“懒”。它从主干网络接收近乎完美的输入,因此它学到的是“我不需要做太多修正”。

然而,当你对新的、未见过的数据运行模型时,主干网络会犯错。而细化器因为在训练期间从未见过错误,将不知道如何修复它们。

为了解决这个问题,作者引入了交叉训练缓存 (Cross-Training Caching)

图 5: K-折交叉训练缓存策略。

受到 k-折交叉验证的启发,他们将训练数据分成若干子集。

  1. 他们在子集 A 和 B 上训练主干网络,并在子集 C (它未见过的数据) 上运行推理。结果是“逼真的”带有噪声的预测。
  2. 他们重复此轮换,直到获得整个数据集的噪声预测。
  3. 他们使用这些缓存的、带有噪声的预测来训练 STF 细化器。

现在,细化器学会了如何清理现实世界中实际发生的混乱错误。

实验结果

海量 SELF 数据集、地板对齐架构和交叉训练策略的结合产生了令人印象深刻的结果。

定量性能

该模型在 NVIDIA RTX 3090 上以惊人的 300 FPS 运行,对于实时 VR 应用来说绰绰有余。

在准确性方面,FRAME 优于 EgoGlass、UnrealEgo 和 EgoPoseFormer 等最先进的基线方法。

表 2: 与最先进方法在 MPJPE 和其他指标上的比较。

上表中最引人注目的指标是 NPP (非穿透百分比) 。 这衡量了脚保持在地板上方而不是穿过地板的频率。

  • 竞争对手的得分范围从 49% 到 58%。
  • FRAME 达到了 100.0%

这就是地板对齐表示的直接结果。模型确切地知道地板在哪里。

定性性能

数据得到了视觉证据的支持。在下图中,你可以看到 FRAME 如何处理具有挑战性的姿势,例如蹲伏。

图 6: 定性比较。注意 FRAME (Ours) 在蹲伏场景中相比其他方法的准确性。

当其他方法 (如 EgoGlass 或 EgoPoseFormer) 在蹲伏深度上挣扎时——通常会导致化身悬浮在半空中或腿部变形——FRAME 正确地估计了与地面的接触。

为什么地板对齐很重要

作者进行了消融实验,以证明坐标变换确实是关键因素。

图 7: 每关节位置误差的箱线图。橙色 (Ours) 显示出显著更低的误差,尤其是对于脚部。

图 7 中,看最右边的“Foot” (脚) 类别。

  • 绿色 (Backbone): 高误差。这是相机空间中的原始预测。
  • 蓝色 (MLP Refinement): 较低误差。这是使用神经网络来细化姿势,但没有时间历史信息。
  • 橙色 (Ours): 最低误差。这是具有地板对齐和时序融合的完整管道。

地板对齐坐标系极大地收紧了下半身的误差分布。

结论

FRAME 论文表明,解决复杂的计算机视觉问题往往需要的不仅仅是“更多的层”或“更大的 Transformer”。

通过退后一步并分析问题的几何结构,作者意识到 VR 头显本身提供了被忽视的关键背景信息 (重力和地板位置) 。通过显式地将这种几何先验注入深度学习管道,并利用真正反映现实世界运动难度的数据集进行训练,他们在化身逼真度方面实现了飞跃。

对于学生和研究人员来说,关键要点很明确:

  1. 不要忽视硬件: 像 IMU 和 SLAM 追踪这样的传感器提供了宝贵的约束条件。
  2. 坐标系很重要: 你为损失函数选择的参考系可能决定你的模型是学习物理规律还是仅仅死记硬背像素。
  3. 数据采集的真实性为王: 如果你的训练数据因为笨重的设备而要求用户像机器人一样走路,你的模型就会预测出像机器人一样走路的化身。

随着 VR 硬件不断缩小和改进,像 FRAME 这样的技术为未来铺平了道路,在这个未来中,我们的数字自我将能像我们一样自然地移动。