想象一下你戴着 VR 头显或 AR 眼镜。你伸出手去抓一个虚拟的咖啡杯。为了让体验感觉真实,系统需要确切知道你的手在哪里——不仅仅是在摄像头视野中,而是在真实的 3D 房间里。

这听起来很简单,但这是一个极其困难的计算机视觉问题。在“以自我为中心” (第一人称) 的视频中,有两样东西同时在移动: 你的手和你的头 (相机) 。传统方法很难区分这两种运动。如果你向左转头,看起来就像你的手向右移动了。此外,你的手经常会离开摄像头的视野,导致跟踪系统“忘记”它们在哪里。

在这篇文章中,我们将深入探讨 HaWoR (Hand World Reconstruction),这是一篇新的研究论文,提出了一种从单个以自我为中心的视频中,在世界空间坐标下重建 3D 手部运动的稳健方法。

图 1. HaWoR 将相机运动与手部运动分离,从而将手部精确地放置在 3D 世界中,即使当它们离开相机画面时也是如此。

核心问题: 相机空间 vs. 世界空间

要理解 HaWoR 的创新之处,我们首先需要了解以前工作的局限性。大多数现有的 3D 手部姿态估计方法都在相机空间中运行。

  • 相机空间: 坐标系是相对于镜头的。如果相机向前移动 1 米,手部的坐标也会改变 1 米,即使手在房间里完全静止不动。
  • 世界空间: 坐标系固定在环境中 (例如房间的地板) 。这才是 AR/VR 和机器人技术实际需要的。

从单个视频中恢复世界空间运动之所以困难,是因为尺度模糊性 (那个移动到底是多少米?) 和遮挡 (手挡住了背景,背景也挡住了手) 。

HaWoR 解决方案: 分而治之

研究人员提出了一种“分而治之”的策略。他们没有试图直接从像素预测世界坐标 (这太复杂了) ,而是将问题分解为三个可管理的任务:

  1. 手部运动估计: 重建相对于相机的手部形状和姿态。
  2. 相机轨迹估计: 弄清楚相机如何在房间内移动并确定尺度。
  3. 运动填补: 当手离开相机视野时,推测手的位置。

让我们看看下面完整的流程。

图 2. HaWoR 流程概览。它将视频分为手部分支 (上) 和相机/SLAM 分支 (下) ,最后合并生成统一的世界空间输出。

如图 2 所示,系统接收输入视频并通过两个主要分支进行处理。上部分支使用基于 Transformer 的网络处理手部估计。下部分支使用修改后的 SLAM (同步定位与地图构建) 方法处理相机运动。最后,一个“填补 (Infiller) ”网络会补全缺失的数据。

让我们分解每个组件。

1. 相机坐标系下的手部运动估计

第一步是获取相对于相机的良好手部 3D 网格。作者基于 MANO 模型 (一种用于表示手部几何形状的标准数学模型) 进行构建。

他们使用 Vision Transformer (ViT) 从视频帧中提取特征。然而,以自我为中心的视频通常很混乱——手部经常模糊或在画面边缘被部分截断。为了处理这个问题,HaWoR 引入了两个特定的注意力模块:

  1. 图像注意力模块 (IAM): 它观察相邻帧的视觉特征。如果第 \(t\) 帧中的手部模糊,来自 \(t-1\) 或 \(t+1\) 帧的清晰细节有助于优化当前视图。
  2. 姿态注意力模块 (PAM): 这将注意力机制直接应用于预测的姿态参数,确保手部随时间自然移动,而不是抖动。

该网络使用复合损失函数进行训练,强制 3D 对齐和 2D 投影的准确性:

公式 1. 损失函数结合了 3D 关节误差、 2D 投影误差和 MANO 参数准确性。

在这里,\(\mathcal{L}_{3D}\) 确保 3D 骨架正确,\(\mathcal{L}_{2D}\) 确保骨架与图像中的像素对齐,\(\mathcal{L}_{MANO}\) 确保形状参数逼真。

2. 自适应以自我为中心的 SLAM

这是论文特别巧妙的地方。为了将手放置在世界中,我们需要知道相机在哪里。为此的标准工具是 SLAM (同步定位与地图构建) 。具体来说,作者使用了一种称为 DROID-SLAM 的算法。

然而,标准 SLAM 在以自我为中心的手部视频中会失效,原因有二:

  1. 动态物体: SLAM 算法假设世界是静止的。在第一人称视频中,移动的手部占据了视野的很大一部分。SLAM 系统看到手在移动,通常会误以为相机在向相反方向移动。
  2. 尺度模糊性: 单目 SLAM (使用一个摄像头) 创建的地图单位是任意的。它不知道你移动了 1 米还是 1 厘米。

解决动态物体问题

HaWoR 通过掩膜 (Masking) 解决了第一个问题。系统提取检测到的手部,并在输入 SLAM 算法的视觉数据中将它们遮盖掉。

公式 2. 从 SLAM 输入中移除手部区域的掩膜操作。

在公式 2 中,\(M_t\) 是手部掩膜。通过将图像 \(I_t\) 和置信度图 \(w_t\) 乘以 \((1 - M_t)\),研究人员强制 SLAM 系统忽略手部,仅基于静态背景跟踪相机。

用 Metric3D 解决尺度问题

为了解决尺度问题 (将“SLAM 单位”转换为现实世界的米) ,作者使用了一个名为 Metric3D 的基础模型。这个 AI 模型经过训练,可以查看单个图像并猜测像素的绝对深度 (以米为单位) 。

但 Metric3D 并不完美——它对非常近或非常远的物体不太准确。HaWoR 使用了一个自适应采样模块 (AdaSM) 。 他们只从“最佳位置”距离范围 (\(D_{min}\) 到 \(D_{max}\)) 采样深度点,并排除手部。

公式 3. 在特定范围内选择可靠的深度点 S_t,排除手部区域。

一旦有了这些可靠的点,他们就会计算一个比例因子 \(\alpha\),使 SLAM 轨迹与 Metric3D 预测的现实世界指标对齐:

公式 4. 用于寻找最佳比例因子 alpha 的优化函数。

这产生了一个不仅形状准确,而且物理尺寸也正确的相机轨迹。

3. 手部运动填补器

在以自我为中心的视频中,你经常会将视线从手上移开,或者你可能会去拿视野之外的东西。大多数系统只会停止跟踪,导致轨迹断裂。

HaWoR 引入了一个运动填补网络 (Motion Infiller Network) 。 这是一个 Transformer,它接收可见的手部动作序列并预测缺失的帧。

规范空间变换 (Canonical Space Transformation)

在相机空间预测运动很难,因为相机在剧烈移动。在世界空间预测也很难,因为手可能在房间的任何地方。

解决方案是将运动变换到规范空间 (Canonical Space) 。 这将运动序列的起点对齐到标准的零位置和零旋转。

图 8. 将运动变换到规范空间,使得网络能够学习独立于相机位置的纯手部运动。

变换逻辑 (公式 7) 有效地将手部的局部运动与相机的全局运动解耦:

公式 5 和 7. 将世界空间坐标转换为规范空间的数学公式。

一旦处于这个标准化空间中,填补网络 (一个 Transformer 编码器) 就会预测缺失的姿态、旋转和平移 token。该网络使用惩罚全局方向 (\(\Phi\))、根平移 (\(\Gamma\))、姿态 (\(\Theta\)) 和形状 (\(\beta\)) 误差的损失函数进行训练:

公式 6. 填补网络的损失函数。

实验与结果

研究人员在具有挑战性的数据集上验证了 HaWoR,如 DexYCB (手物交互) 和 HOT3D (具有真实值的以自我为中心的视频) 。

对遮挡的鲁棒性

首先,他们检查了系统在相机帧中估计手部姿态的效果,特别是当视线被阻挡时。

表 1. 相机帧精度的比较。注意在 75-100% 遮挡下的表现。

如表 1 所示,HaWoR 优于 WiLoR 和 Deformer 等最先进的方法。差距在“75%-100%”遮挡列中最为明显,HaWoR 保持了低得多的错误率 (MPJPE 为 5.07,而 WiLoR 为 5.68) 。这证明了时间注意力模块 (IAM/PAM) 的价值。

相机轨迹精度

接下来,他们评估了相机轨迹。这至关重要——如果相机路径错了,世界中的手部路径也会错。

图 4. 相机轨迹的视觉比较。DROID-SLAM (橙色) 漂移严重,而 HaWoR (蓝色) 紧贴真实值 (紫色) 。

在图 4 中,你可以看到标准的 DROID-SLAM 逐渐漂移 (橙色线) 。HaWoR 的自适应 SLAM (蓝色线) 则与真实值 (紫色) 保持惊人的一致。

表 2 量化了这一成功。当使用所提出的自适应采样 (AdaSM) 时,“ATE-S”指标 (带尺度的平均轨迹误差) 显着下降。

表 2. 轨迹误差指标。与基线相比,所提出的方法实现了最低误差 (15.86mm)。

世界空间手部重建

最后是重头戏: 在世界中重建手部。作者将 HaWoR 与基于优化的方法 (HMP-SLAM) 和回归方法 (WiLoR-SLAM) 进行了比较。

表 3. 世界空间定量评估。HaWoR 大幅降低了 World MPJPE。

表 3 中的结果令人震惊。 W-MPJPE (世界平均关节位置误差) 从 ~119mm (HMP-SLAM) 降至仅 33.20mm (HaWoR)。这是精度的巨大飞跃。

从定性上看,这种差异在复杂的场景中非常明显,例如拿起水壶或使用鼠标。

图 3. 手部轨迹可视化。蓝色骨架 (HaWoR) 比黄色 (HMP-SLAM) 或紫色 (WiLoR) 基线更符合绿色真实值。

图 3 展示了 HaWoR 忠实地跟随人类运动的复杂曲线,而其他方法通常会导致锯齿状或偏移的路径。

“填补器”也证明了其价值。图 5 显示了长距离手部移动,手很可能已经离开了画面。HaWoR (蓝色) 保持了符合现实的平滑曲线。

图 5. 右手运动的轨迹比较。注意所提出方法 (蓝色) 的平滑度。

真实场景 (In-the-Wild) 泛化能力

团队还将 HaWoR 应用于 EPIC-KITCHENS 数据集。这些是没有真实值数据的现实世界烹饪视频。尽管没有在这个数据集上进行训练,HaWoR 依然产生了合理的重建结果,而其他方法则失败了 (见下图 7) 。

图 7. 在真实场景视频上的定性比较。HaWoR 处理帧边界处截断的效果明显优于 HaMeR 或 WiLoR。

结论与局限性

HaWoR 代表了以自我为中心的计算机视觉向前迈出的重要一步。通过巧妙地将手部运动与相机运动解耦,并将它们视为独立但相关的问题,作者实现了最先进的结果。

关键要点:

  1. 掩膜很重要: 在以自我为中心的视频上运行 SLAM 时,必须隐藏移动的手部。
  2. 上下文为王: 使用时间注意力 (IAM/PAM) 使系统能够“看穿”遮挡。
  3. 不要忘记不可见部分: 填补网络证明,通过理解规范的运动模式,我们可以准确地推测出手部离开画面时的位置。

局限性: 然而,该系统并不完美。它最初依赖于现成的检测器来寻找手部。如果检测器失败 (例如,交换了左右手) ,HaWoR 也会失败。此外,由于两只手是独立建模的,它们有时在视觉上会相互“穿模”,因为手部碰撞的物理约束尚未完全受限。

图 9. 由错误的左/右手检测标签导致的失败案例。

尽管存在这些局限性,HaWoR 为 AR/VR 跟踪的未来提供了蓝图,使我们更接近于不仅将人类运动理解为屏幕上的像素,而且理解为现实世界中的物理动作的系统。