
# HandFlow：基于流匹配的全生成式4D手部恢复方法

徐明希 $^{*}$，香港科技大学（广州），中国

段博文 $^{*}$，香港科技大学（广州），中国

顾毅，香港科技大学（广州），中国

沈正阳，谷歌，美国

许仁静，香港科技大学（广州），中国

岳玉涛 $^{\dagger}$，香港科技大学（广州），中国

![Image](images/89eae4bad97cf2d4ac374710f51a68ae0c904b9c2e28d9c3a51f0a491adae1e2.jpg)

![Image](images/abba85ac27f469e0797276bd78132e681f69b81ee28da40352f8c567bac3e266.jpg)

![Image](images/860659533a416e4717d76dde2eba15f60660409eaf07e785d5cf3751f84265b4.jpg)

![Image](images/ccae4fdd8f9f820ad48a1988a22b89fed511b922e8f4bd2b83d06aa4f7565219.jpg)

![Image](images/f090a8ac35b7ac229609c7bac5cd250747413c4583715baefbd0b3240c1869f5.jpg)

![Image](images/f56cec2f2bb133238ee6eda785f2b42eea22158bfb990abfff08c8f5b31996f8.jpg)

<div style="text-align: center;">Fig. 1. Given monocular RGB videos, HandFlow reconstructs temporally coherent 4D hand motion through a fully generative flow-matching framework. Compared with HaWoR [Zhang et al. 2025] (orange), which shows noticeable temporal drift and hand-pose misalignment, HandFlow (blue) recovers smoother, more accurately aligned hand trajectories across challenging sequences involving rapid motion and large viewpoint changes. It also reconstructs each window more than an order of magnitude faster than HaWoR. Ground-truth hand motion is shown in green.</div>

精准的单目4D手部重建仍是一项具有挑战性的任务。逐帧判别式回归器缺乏时间上下文信息，往往会产生抖动明显的预测结果。时序模型通过聚合多帧信息来提升预测的一致性，但它们通常是确定性回归器，因此容易受遮挡和运动模糊导致的模糊观测结果的影响。生成式建模提供了一种自然的替代方案：它学习合理手部运动序列的先验，从而在视觉证据不完整或不可靠时仍能恢复连贯的手部状态。

基于这一观察，我们提出了HandFlow——一种用于从单目视频中估计时序一致的3D手部姿态与形状的全生成式流匹配框架。给定视觉与骨骼观测数据，HandFlow可通过单次常微分方程积分，对整个时间窗口内的MANO参数进行去噪处理。为实现这一目标，我们采用了Flux风格的双流Transformer，它能够跨整个序列进行注意力计算，无需自回归解码即可捕捉长距离依赖关系；同时我们还设计了置信度感知的连续掩码机制，可将观测到的特征与可学习的掩码标记相融合，以应对含噪或缺失的观测数据。在DexYCB和HOT3D数据集上的实验表明，HandFlow取得了最先进的性能，尤其在世界空间精度与时序平滑度方面优势明显。与最强的基线方法相比，它的世界空间姿态误差降低了30%以上，且在所有评估方法中加速度误差最低，同时逐帧姿态精度也具备竞争力。此外，在单张GPU上，HandFlow能以47帧/秒的速度重建150帧的序列，速度约为以往最快的视频基方法的12倍，而重建过程本身仅占端到端延迟的一小部分。我们的模型与代码已公开于<https://mxxu00.github.io/HandFlow/>。

---

其他关键词：4D手部重建、动作捕捉、流匹配

## 1 引言

精准的单目4D手部重建旨在从单路RGB视频中恢复时序一致的3D手部网格，其在AR/VR [Wang et al. 2020]、机器人技术 [Christen et al. 2024; Pan et al. 2025] 以及人机交互 [Liu et al. 2022] 等领域有广泛应用。尽管手部网格恢复技术已取得显著进展，但在长视频中实现稳定且精准的重建仍颇具挑战性。这一难题主要源于单目观测的固有模糊性：手部常常快速运动、发生自我遮挡、与物体相互作用，还会部分或完全离开摄像头视野。在此类情况下，单张图像甚至短片段视频都可能对应多种合理的3D手部状态。

大多数现有方法将手部重建视为确定性回归问题。逐帧处理方法[Chen et al. 2025; Pavlakos et al. 2024; Potamias et al. 2025]独立估计每一帧，当手部清晰可见时表现良好。然而，由于缺乏时序推理能力，它们的预测结果在帧与帧之间往往会出现波动。时序处理方法[Fu et al. 2023; Ye et al. 2026; Yu et al. 2025; Zhang et al. 2025]通过整合时间信息来缓解这种抖动现象，但它们通常仍会对给定输入视频产生单点估计结果。当视觉证据存在歧义时，这种确定性映射无法表示多种可能的手部运动模式所对应的多模态后验分布，从而导致预测结果不准确、过于平滑或不符合运动学规律，如图1所示。

这促使我们采用生成式视角来处理单目4D手部重建问题。我们不再将视频到运动的映射视为确定性回归问题，而是将重建任务转化为在MANO参数空间中的条件生成任务[Romero et al. 2017]。其核心思想是恢复一条既能解释现有视觉证据、又能保持在合理手部运动流形上的轨迹。

基于这一思路，我们提出了HandFlow——一种用于从单目视频中重建时序一致的4D手部的修正流模型框架[Liu et al. 2023]。HandFlow并非回归出单一输出，而是学习在观测到的视觉和骨骼特征条件下，合理的MANO运动序列的分布，并通过一次常微分方程求解来采样出连贯的轨迹。其设计过程中面临两大结构性挑战：其一，如何建模整个时间窗口内的长距离依赖关系，我们通过类似Flux的双流Transformer来解决这一问题，它能够在不进行自回归解码的情况下，同时关注整个序列中的手部参数以及视觉-骨骼条件；其二，遮挡和运动模糊会导致观测结果不可靠，对此我们引入了cmask——一种置信度感知的连续掩码策略，它会根据每帧的检测置信度，在观测特征和可学习的掩码标记之间进行插值。此外，通过采用带速度混合的重叠窗口机制，我们既能在保持高效性的同时扩展对长视频的重建能力，又能确保重建效果。

综上所述，我们的主要贡献如下：

- 我们将单目4D手部重建问题转化为MANO参数空间中的条件生成任务，并提出了HandFlow——一个完全基于生成式的流匹配框架，能够从单目视频中重建时序一致的运动序列。

- 我们设计了双流Transformer，能够在无需自回归解码的情况下，对整个时间窗口内的手部参数及视觉-骨骼条件进行联合建模。

- 我们提出了置信度感知的连续掩码机制（cmask），它会根据每帧的检测置信度，在观测到的条件特征与可学习的掩码标记之间进行插值，从而提升模型对遮挡和不可靠观测结果的鲁棒性。

- 我们提出了基于速度混合的重叠窗口推理方法，其可并行化的窗口分解机制能够在可调的内存-吞吐量预算下实现高吞吐量的重建。

## 2 相关工作

单图像3D手部重建。早期方法通过逆向运动学从2D关键点估计3D手部姿态，但受限于关键点的检测精度。MANO参数化手部模型[Romero等人，2017]的提出提供了可微分的手部表示，从而实现了端到端的训练。近年来，基于Transformer的方法显著推进了单图像重建技术。HaMeR[Pavlakos等人，2024]采用ViT-Huge骨干网络，扩大了数据和模型规模，在复杂场景下取得了稳健的性能。WiLoR[Potamias等人，2025]通过结合卷积式手部检测器与Transformer回归器，进一步提升了定位与重建效果。HandOS[Chen等人，2025]则将检测与重建整合为单阶段框架。尽管这些方法在单帧精度上表现优异，但它们独立处理每张图像，应用于视频时会产生时间上不一致的输出。

基于视频的4D手部重建。已有多种方法利用时间信息来实现更连贯的手部运动估计。Deformer[Fu等人，2023]引入了动态融合模块，将相邻帧的预测结果映射到当前帧，并结合侧重误差较大关节的maxMSE损失函数。TCMR[Choi等人，2021]通过平衡过去与未来帧的信息来解决人体重建中的时间不一致问题。HaWoR[Zhang等人，2025]通过分离相机空间手部估计与基于SLAM的相机轨迹恢复，从以自我为中心的视频中重建世界空间的手部运动。Dyn-HaMR[Yu等人，2025]通过多阶段优化流程应对动态相机的挑战性场景。HaPTIC[Ye等人，2026]则在基于图像的Transformer基础上，利用跨视图和全局交叉注意力层来预测4D手部轨迹。尽管这些方法都建模了时间依赖性，但它们存在一个根本性局限：它们属于确定性回归器，将观测结果映射为单一输出，因此对于存在多种同等合理手部状态的模糊输入，它们的表现会受到影响。

---

用于姿态与运动的生成模型。扩散模型在图像[Xu等人，2024]和运动领域生成多样化且高质量的输出方面取得了显著成果。在人体运动生成方面，MDM[Tevet等人，2023]及类似方法通过扩散模型根据文本或动作条件生成运动序列。最近，UniHand[Sun等人，2026]提出了一种统一的基于扩散的框架，将估计与生成均视为条件运动合成，并利用VAE将结构化信号压缩到共享的潜空间中。HandDiff[Cheng等人，2024]将扩散模型应用于从图像点云中估计3D手部姿态，但仅针对单帧数据。MaskHand[Saleem等人，2025]采用带VQ-MANO标记的掩码建模方法，实现单图像重建并配合置信度引导采样。与我们的方法最为相关的是FMPose3D[Wang等人，2026b]，它将流匹配技术应用于单目3D姿态估计，但针对的是从2D关键点得到的单帧人体姿态；而HandFlow则能从多模态视觉-骨骼条件中生成在时间上连贯的、基于MANO参数空间的4D手部运动。DuoMo[Wang等人，2026a]采用双扩散设计来重建世界空间的人体运动；HandFlow则是通过一次流匹配过程结合基于SLAM的相机姿态估计来恢复世界空间的手部轨迹。相比之下，HandFlow直接作用于原始的MANO参数，无需潜空间压缩（从而保留了完整的表征能力），并且采用了Rectified Flow公式[Liu等人，2023]，其积分步骤远少于传统的扩散采样。

## 3 方法

给定一段包含T帧的单目视频，我们的目标是通过修正流[Liu et al. 2023]在MANO参数空间[Romero et al. 2017]中恢复出时间上连贯的3D手部网格序列。如图2所示，我们的流程分为三个阶段：（1）从输入视频中提取视觉与骨骼条件信息，采用连续掩码机制来处理不可靠的观察结果；（2）通过双流Transformer经单次常微分方程积分，将打包好的MANO参数序列从噪声去噪为有效信号；（3）采用结合流匹配、几何约束与时间约束的复合训练目标。

每个手部状态由共享的形状系数$\boldsymbol{\beta} \in \mathbb{R}^{10}$、以轴角格式表示的每帧关节姿态$\boldsymbol{\theta}_i \in \mathbb{R}^{48}$以及全局平移量$\boldsymbol{\tau}_i \in \mathbb{R}^3$来描述。我们将一个时间窗口内的参数打包成一个扁平向量，随后对每个维度分别减去数据集均值并除以标准差，以实现逐组件标准化处理：

 $$ \bar{\mathbf{x}}_{1}=\operatorname{n o r m a l i z e}\left(\left[\mathbf{\beta}\mid\mathbf{\theta}_{1},\ldots,\mathbf{\theta}_{T}\mid\mathbf{\tau}_{1},\ldots,\mathbf{\tau}_{T}\right]\right)\in\mathbb{R}^{d},\quad d=10{+}51T. $$

所有流匹配操作都在该标准化空间中进行。在计算几何辅助损失以及应用MANO正运动学之前，我们会先将预测结果反标准化。

### 3.1 修正流公式化

我们采用了修正流框架[Lipman et al. 2023; Liu et al. 2023]，它是流匹配的一种特殊情况，通过直线（线性）插值路径连接噪声与数据，因其具备少步采样的高效性而被选用。训练时，我们采样一个时间戳$t \sim p(t)$，构建介于高斯噪声与标准化后的MANO目标之间的中间状态：

 $$ \bar{\mathbf{x}}_{t}=\left(1-t\right)\bar{\mathbf{x}}_{0}+t\bar{\mathbf{x}}_{1}, $$

其中$\bar{\mathbf{x}}_0 \sim \mathcal{N}(\mathbf{0}, \mathbf{I})$表示标准高斯噪声。在该线性路径下，目标速度由$\mathbf{v}^* = \bar{\mathbf{x}}_1 - \bar{\mathbf{x}}_0$给出。去噪器$f_\phi$被训练用来根据含噪状态$\mathbf{v}^*$、时间戳t以及条件信号$\bar{\mathbf{x}}_t$来预测该速度$\mathbf{c}$：

 $$ \mathcal{L}_{\mathrm{f m}}=\left\|f_{\phi}(\bar{\mathbf{x}}_{t},t,\mathbf{c})-\mathbf{v}^{*}\right\|_{2}^{2}. $$

遵循[Black Forest Labs 2024]的做法，我们从逻辑正态分布中采样t，并应用时间偏移映射，将训练密度集中在中间时间戳，以提升序列级生成的采样效率。

推理时，我们使用欧拉积分从$t=0$到$t=1$求解常微分方程，共执行3步（这是精度平台上的稳定工作点；详见附录C），从随机噪声出发最终得到去噪后的MANO参数序列$\hat{\mathbf{x}}_{1}$，再将其反标准化即可得到最终的预测结果。

### 3.2 条件表示

条件信号c由两种互补的模态构建而成：密集的视觉特征与稀疏的骨骼线索。两者均使用冻结的HaMeR检测器[Pavlakos et al. 2024]逐帧提取。对于输入图像，HaMeR会定位手部区域、裁剪出大小为$256 \times 256$的手部区域，并预测21个2D关键点以及检测置信度分数。

视觉特征。对于每张裁剪后的手部图像，我们使用冻结的HaMeR ViT-Huge骨干网络[Pavlakos et al. 2024]提取补丁级特征，再由轻量级的帧压缩器将其提炼为单个图像标记$\mathbf{c}_i^{\text{img}} \in \mathbb{R}^D$。该压缩器由8层交叉注意力池化层构成。

骨骼特征。HaMeR预测的2D关键点为几何约束提供了稀疏指导。对于21个关键点中的每一个，我们利用其图像坐标，结合裁剪后的相机内参$(f_x, f_y, c_x, c_y)$将其反投影为相机归一化的3D射线：

 $$ \mathbf{r}_{i,j}=\left[\frac{u_{i,j}-c_{x}}{f_{x}},\ \frac{v_{i,j}-c_{y}}{f_{y}},1\right], $$

其中，$(u_{i,j}, v_{i,j})$ 表示第 i 帧中第 j 个关键点的二维坐标。每条光线进一步通过正弦位置编码进行编码[Mildenhall等人，2021]，共使用6个频率带。这种基于光线的表示方法将相机内参纳入骨骼条件中，事实证明这对精确的3D重建至关重要[Baradel等人，2024；Feng等人，2025；Li等人，2022；Wang等人，2026a]。所有21个关键点的编码光线被展平后，通过两层MLP投影，从而得到每帧的骨骼标记$\mathbf{c}_i^{\text{skel}} \in \mathbb{R}^D$。

连续掩码机制。当手部被严重遮挡、模糊或超出相机视野时，HaMeR通常会产生低置信度的检测结果，导致视觉和骨骼观测结果都不可靠。为解决这一问题，我们引入了$c_{mask}$——一种连续掩码机制，它将每个条件标记与可学习的掩码标记进行插值（公式5）。设$c_i^k \in \mathbb{R}^D$表示第i帧处的条件标记

---

![Image](images/dbb3e3b95c98a388585d17dab8b9856a5468bba0eaf4341f4af7e16934758a24.jpg)

<div style="text-align: center;">Fig. 2. Overview of HandFlow. A frozen HaMeR [Pavlakos et al. 2024] frontend extracts visual tokens, 2D skeletons, and confidence, which are compressed into condition tokens with confidence-aware continuous masking. A dual-stream flow-matching transformer then denoises MANO pose, translation, and shape tokens from noise over the full temporal window; for long videos, overlapping windows are merged by velocity blending during ODE integration.</div>

，其中$k \in \{img, skel\}$。掩码后的条件标记定义为

 $$ \hat{\mathbf{c}}_{i}^{k}=m_{i}\mathbf{c}_{i}^{k}+(1-m_{i})\mathbf{c}_{\mathrm{m a s k}}^{k}, $$

这里，$m_i \in [0,1]$是HaMeR的检测置信度，而$\mathbf{c}_{\text{mask}}^k \in \mathbb{R}^D$是针对模态k的可学习掩码标记。训练期间，我们还会对约20%的帧随机应用掩码，以起到正则化作用。

最终的条件序列是通过将所有帧中的掩码图像标记和骨骼标记拼接而成的：

 $$ \mathbf{c}=[\hat{\mathbf{c}}_{1}^{\mathrm{i m g}},\hat{\mathbf{c}}_{1}^{\mathrm{s k e l}},\ldots,\hat{\mathbf{c}}_{T}^{\mathrm{i m g}},\hat{\mathbf{c}}_{T}^{\mathrm{s k e l}}]\in\mathbb{R}^{2T\times D}. $$

### 3.3 双流Transformer

去噪器采用了受Flux[Black Forest Labs 2024]启发的双流架构。它同时处理潜手参数（称为z流）和条件标记（称为c流）。该架构的概览如图2所示。

标记化。z流将含噪状态$\bar{x}_t$标记为$1 + 2T$个标记：一个形状标记$z^\beta$、T pose标记$\{z_i^\theta\}_{i=1}^T$以及T平移标记$\{z_i^T\}_{i=1}^T$。每个组件都通过专用的线性层从原始维度投影到隐藏维度D。c流则采用第3.2节中描述的2T个条件标记。

双流块。每个双流块会对z流和c流应用联合注意力机制。首先用正弦嵌入对时间步t进行编码，再通过MLP生成自适应的LayerNorm调制参数$(\gamma, \beta, \alpha)$。在每个块中，分别为z流和c流计算QKV投影。得到的查询、键和值随后被拼接起来，送入共享的注意力运算中，从而使潜手标记既能关注其他潜标记，也能关注条件上下文。注意力输出随后被拆分回两个流，并由各流专属的前馈网络进行处理。

在QK归一化之后，旋转位置编码[Su等人，2024](RoPE)被应用于查询和键。我们根据时间对齐来分配位置索引：形状标记被分配位置0；对于第i帧，pose标记$z_i^\theta$和平移标记$z_i^\tau$都被分配位置i；c流中对应的图像标记和骨骼标记也被分配位置i。

单流块。在双流块之后，z流标记和c流标记被拼接起来，再经由遵循DiT架构[Peebles和Xie，2023]的单流自注意力块进一步处理，且同样采用相同的自适应调制方案。

输出投影。最终，z-stream 令牌通过专用的线性层被投影回其原始维度，并解包以重构预测的干净状态 $\hat{\mathbf{x}}_1 \in \mathbb{R}^d$。

### 3.4 训练目标

该模型采用复合损失函数进行训练。主要项是流匹配损失 $\mathcal{L}_{\text{fm}}$（公式 3）。我们进一步对单步干净预测结果 $\hat{\mathbf{x}}_1 = \tilde{\mathbf{x}}_t + (1 - t)\hat{\mathbf{v}}$ 引入辅助监督，该预测是通过将去噪器预测的速度 $\hat{\mathbf{v}} = f_{\phi}(\tilde{\mathbf{x}}_t, t, \mathbf{c})$ 沿流方向积分一步得到的。在计算损失之前，我们会将 $\hat{\mathbf{x}}_1$ 反归一化回原始的 MANO 参数空间。具体而言，$\mathcal{L}_{\beta}$ 是针对形状系数的 $\ell_1$ 损失；$\mathcal{L}_{\text{vel}}$ 和 $\mathcal{L}_{\text{acc}}$ 是对打包后的 MANO 参数（关节姿态与全局平移量）所计算的一阶和二阶时间有限差分损失（$\ell_1$），用于在参数空间中直接监督运动平滑性；$\mathcal{L}_{\text{reproj}}$ 是预测结果与真实结果中 21 个 MANO 关节之间的 $\ell_1$ 误差，这些关节会通过裁剪相机内参投影到 256x256 的裁剪图像平面上（$f_x, f_y, c_x, c_y$）；$\mathcal{L}_{\beta\text{d}}$ 则是绝对全局 3D 关节位置上的 $\ell_1$ 误差，单位为毫米。所有辅助损失都会根据采样的平均时间戳 $\tilde{t}$ 进行缩放。所有损失项都会屏蔽掉无效的填充帧。损失权重与训练超参数详见附录 B。

### 3.5 重叠窗口推理

对于长度超过 T 帧的视频进行推理时，非重叠窗口会在窗口边缘留下边界帧，由于此时可利用的时间上下文有限，

---

会导致速度发生突变，进而降低轨迹质量。因此我们采用重叠滑动窗口。长度为 N 的完整序列会被划分为长度为 T 的窗口，每个窗口与前一个窗口共享 o 帧，对应的步长 s = T - o。所有窗口使用的每帧初始噪声都相同：无论某个全局帧 g 属于哪些窗口，它都会被赋予相同的高斯噪声向量。这确保了常微分方程积分是从全局一致的含噪状态开始的。

关键问题是如何合并在多个窗口中出现的帧的预测结果。一种直接的策略我们称之为事后平均法，即为每个窗口独立运行常微分方程，然后对重叠帧的最终去噪状态 $\hat{x}_{1}$ 取平均值。然而，由于不同窗口遵循不同的常微分方程轨迹，它们可能会在归一化参数空间中对同一物理帧产生不一致的预测。对这些有差异的终点取平均值可能会引入不自然的速度不连续性，尤其是在重叠边界附近（详见附录 F）。

我们采用的是速度融合方法，即在常微分方程积分过程中通过为每个全局帧维护单一的共享状态来融合预测结果。具体来说，设全局帧 g 被窗口 $w_{1}, \ldots, w_{k}$ 覆盖，令 $\ell_{i}$ 表示 g 在窗口 $w_{i}$ 内的局部帧索引。我们为其分配一个中心距离权重

 $$ \omega(w_{i},\ell_{i})=\max\left(0.01,1-\frac{|\ell_{i}-c|}{c}\right),\quad c=\frac{T-1}{2}, $$

该权重会给靠近窗口中心的预测结果赋予更大的权重，因为此处的时间上下文更为均衡。在常微分方程的每一步，帧 g 的融合速度计算如下：

 $$ \tilde{\mathbf{v}}_{g}=\frac{\sum_{i=1}^{k}\omega\big(\boldsymbol{w}_{i},\boldsymbol{\ell}_{i}\big)\hat{\mathbf{v}}_{w_{i},\boldsymbol{\ell}_{i}}}{\sum_{i=1}^{k}\omega\big(\boldsymbol{w}_{i},\boldsymbol{\ell}_{i}\big)}, $$

权重 $\omega$ 用于控制每帧的姿态与平移速度；序列共享的形状参数 $\boldsymbol{\beta}$ 没有每帧索引，因此我们通过对所有窗口取无权重平均值来融合其速度，即 $\tilde{\mathbf{v}}^{\beta} = \frac{1}{k} \sum_{i=1}^{k} \hat{\mathbf{v}}_{w_i}^{\beta}$。共享状态会通过以下方式更新：

 $$ \mathbf{x}_{g}\leftarrow\mathbf{x}_{g}+\tilde{\mathbf{v}}_{g}\Delta t, $$

其中，$\Delta t$ 表示常微分方程（ODE）的步长。

由于所有窗口中的速度都是基于同一份每帧共享状态来计算的，因此生成的轨迹会遵循一条连续的积分路径。重叠的帧还能从互补的视觉-骨骼观测中获益：当一个帧位于某个窗口的边界处且受到遮挡或运动模糊的影响时，相邻的窗口可能会将该帧置于更接近中心的位置，从而提供更可靠的约束上下文。值得注意的是，在每一个ODE步长中，所有窗口都可以作为一个批次并行处理。因此，速度融合仅会带来极小的额外推理开销，却能显著提升轨迹的连续性，这一结论在附录F中有详细分析。

## 4 实验

我们在涵盖受控场景和真实场景的两个基准测试上对所提出的方法进行评估。DexYCB [Chao et al. 2021] 包含1000个受试者抓取YCB物体的视频序列，这些视频由多台校准过的摄像头拍摄。我们采用标准的s0

### 4.1 数据集

评估协议，并在默认摄像头视角下的右手裁剪区域上进行评估。HOT3D [Banerjee et al. 2025] 是一个较新的基准测试，包含了由 Egocentric 多视角摄像头拍摄的桌面交互相关的多样化3D手部标注数据。其官方验证集没有公开的真实标签，因此按照该基准测试的惯例，我们从官方训练集中划分出针对每个参与者的验证子集，并在主视角的裁剪区域上进行评估。这两个数据集都提供了MANO的真实标注。所有代码公开的方法都通过其原生流程进行端到端评估。我们还报告了早期的基线方法 [Chen et al. 2023, 2021; Duran et al. 2024; Kocabas et al. 2020; Lin et al. 2021; Park et al. 2022; Valassakis and Garcia-Hernando 2024]。与之最相近的生成式基线UniHand [Sun et al. 2026] 也被纳入比较；由于其代码和HOT3D子集划分并未公开记录（我们已将其发布），因此我们引用原文中的数值。尽管如此，HandFlow在这两个基准测试的大多数指标上仍优于它。指标定义详见附录A。

### 4.2 相机空间评估

我们在DexYCB数据集上评估相机空间的姿态精度和遮挡鲁棒性（见表1）；世界空间和轨迹指标则在4.3节中基于HOT3D数据集进行评估。

姿态精度。在完整测试集（All）上，HandFlow在所有指标上均表现最佳，其中RA-MPJPE指标的差距最为显著：HandFlow的值为8.12毫米，而仅次于它的Deformer方法为13.64毫米，相对误差降低了41%。这种优势在误差分布中同样成立：$AUC_{RA}$ 达到0.839，而HaWoR仅为0.779，说明性能提升并非仅体现在简单样本上。

遮挡分析。我们根据不可见手部顶点的比例，将测试集划分为25%–50%、50%–75%和75%–100%三种遮挡程度。HandFlow在整体数据集上（3.88毫米）以及轻度遮挡情况下（25%–50%：4.21毫米）表现最佳；而在重度遮挡条件下（50%–75%：4.25毫米对比4.35毫米；75%–100%：4.26毫米对比4.85毫米），UniHand（同样属于生成式方法）则略胜一筹。关键在于，这两种生成式方法在最难处理的75%–100%遮挡类别中，误差均远低于5毫米，而单帧回归模型产生的误差则分别达到5.68毫米（WiLoR）和7.37毫米（HandOccNet）。这一结果证实：决定重度遮挡下鲁棒性的因素是生成式建模，而非特定的网络架构。确定性回归模型在重度遮挡时往往会对模糊的观察结果取平均值，而我们的生成式模型能够恢复出连贯的手部形态，如图4所示：即便手部大部分区域不可见，HandFlow仍能生成合理且符合运动学规律的姿态。图3进一步对比了HandFlow与基线方法在重度遮挡帧上的表现：侧面视图和俯视图暴露出的深度误差会被叠加效果所掩盖。

### 4.3 世界空间评估

HOT3D是一个更具挑战性的基准测试：它包含以自我为中心的多视角数据，且经常出现物体遮挡情况，我们在此额外评估手部在世界坐标系中的全局轨迹。表2列出了每帧的姿态精度（MPJPE、PA-MPJPE）、世界空间轨迹与形状精度（W-MPJPE、WA-MPJPE）、时间平滑度（Accel）以及根部平移误差（RTE）。所有方法均通过SLAM技术恢复全局相机姿态：HandFlow、Dyn-HaMR以及基于图像的基线方法（标记为+SLAM）均采用该技术。

---

<div style="text-align: center;">Table 1. Occlusion-robustness evaluation on DexYCB (s0). RA-MPJPE and PA-MPJPE in mm;  $AUC_{RA}$ and  $AUC_{PA}$ are normalized to [^0] [^1]. Best in bold, second best underlined. Other baseline results are taken from [Fu et al. 2023; Sun et al. 2026; Zhang et al. 2025].</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td rowspan="2">Method</td><td colspan="4">All</td><td colspan="2">Occl. (25%-50%)</td><td colspan="2">Occl. (50%-75%)</td><td colspan="2">Occl. (75%-100%)</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>RA-MPJPE $\downarrow$</td><td style='text-align: center; word-wrap: break-word;'>$AUC_{RA} \uparrow$</td><td style='text-align: center; word-wrap: break-word;'>PA-MPJPE $\downarrow$</td><td style='text-align: center; word-wrap: break-word;'>$AUC_{PA} \uparrow$</td><td style='text-align: center; word-wrap: break-word;'>PA-MPJPE $\downarrow$</td><td style='text-align: center; word-wrap: break-word;'>$AUC_{PA} \uparrow$</td><td style='text-align: center; word-wrap: break-word;'>PA-MPJPE $\downarrow$</td><td style='text-align: center; word-wrap: break-word;'>$AUC_{PA} \uparrow$</td><td style='text-align: center; word-wrap: break-word;'>PA-MPJPE $\downarrow$</td><td style='text-align: center; word-wrap: break-word;'>$AUC_{PA} \uparrow$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>MeshGraphormer</td><td style='text-align: center; word-wrap: break-word;'>16.21</td><td style='text-align: center; word-wrap: break-word;'>0.691</td><td style='text-align: center; word-wrap: break-word;'>6.41</td><td style='text-align: center; word-wrap: break-word;'>0.872</td><td style='text-align: center; word-wrap: break-word;'>6.85</td><td style='text-align: center; word-wrap: break-word;'>0.863</td><td style='text-align: center; word-wrap: break-word;'>7.22</td><td style='text-align: center; word-wrap: break-word;'>0.856</td><td style='text-align: center; word-wrap: break-word;'>7.76</td><td style='text-align: center; word-wrap: break-word;'>0.845</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>SemiHandObj</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>6.33</td><td style='text-align: center; word-wrap: break-word;'>0.874</td><td style='text-align: center; word-wrap: break-word;'>6.70</td><td style='text-align: center; word-wrap: break-word;'>0.866</td><td style='text-align: center; word-wrap: break-word;'>7.17</td><td style='text-align: center; word-wrap: break-word;'>0.857</td><td style='text-align: center; word-wrap: break-word;'>8.96</td><td style='text-align: center; word-wrap: break-word;'>0.821</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>HandOccNet</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>5.80</td><td style='text-align: center; word-wrap: break-word;'>0.884</td><td style='text-align: center; word-wrap: break-word;'>6.22</td><td style='text-align: center; word-wrap: break-word;'>0.876</td><td style='text-align: center; word-wrap: break-word;'>6.43</td><td style='text-align: center; word-wrap: break-word;'>0.872</td><td style='text-align: center; word-wrap: break-word;'>7.37</td><td style='text-align: center; word-wrap: break-word;'>0.853</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>WiLoR</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>5.01</td><td style='text-align: center; word-wrap: break-word;'>0.900</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>5.42</td><td style='text-align: center; word-wrap: break-word;'>0.892</td><td style='text-align: center; word-wrap: break-word;'>5.68</td><td style='text-align: center; word-wrap: break-word;'>0.887</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>S2HAND(V)</td><td style='text-align: center; word-wrap: break-word;'>19.67</td><td style='text-align: center; word-wrap: break-word;'>0.625</td><td style='text-align: center; word-wrap: break-word;'>7.27</td><td style='text-align: center; word-wrap: break-word;'>0.855</td><td style='text-align: center; word-wrap: break-word;'>7.74</td><td style='text-align: center; word-wrap: break-word;'>0.845</td><td style='text-align: center; word-wrap: break-word;'>7.71</td><td style='text-align: center; word-wrap: break-word;'>0.846</td><td style='text-align: center; word-wrap: break-word;'>7.87</td><td style='text-align: center; word-wrap: break-word;'>0.843</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>VIBE</td><td style='text-align: center; word-wrap: break-word;'>16.95</td><td style='text-align: center; word-wrap: break-word;'>0.675</td><td style='text-align: center; word-wrap: break-word;'>6.43</td><td style='text-align: center; word-wrap: break-word;'>0.871</td><td style='text-align: center; word-wrap: break-word;'>6.72</td><td style='text-align: center; word-wrap: break-word;'>0.865</td><td style='text-align: center; word-wrap: break-word;'>6.84</td><td style='text-align: center; word-wrap: break-word;'>0.864</td><td style='text-align: center; word-wrap: break-word;'>7.06</td><td style='text-align: center; word-wrap: break-word;'>0.858</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>TCMR</td><td style='text-align: center; word-wrap: break-word;'>16.03</td><td style='text-align: center; word-wrap: break-word;'>0.701</td><td style='text-align: center; word-wrap: break-word;'>6.28</td><td style='text-align: center; word-wrap: break-word;'>0.875</td><td style='text-align: center; word-wrap: break-word;'>6.56</td><td style='text-align: center; word-wrap: break-word;'>0.869</td><td style='text-align: center; word-wrap: break-word;'>6.58</td><td style='text-align: center; word-wrap: break-word;'>0.868</td><td style='text-align: center; word-wrap: break-word;'>6.95</td><td style='text-align: center; word-wrap: break-word;'>0.861</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Deformer</td><td style='text-align: center; word-wrap: break-word;'>13.64</td><td style='text-align: center; word-wrap: break-word;'>0.740</td><td style='text-align: center; word-wrap: break-word;'>5.22</td><td style='text-align: center; word-wrap: break-word;'>0.896</td><td style='text-align: center; word-wrap: break-word;'>5.22</td><td style='text-align: center; word-wrap: break-word;'>0.886</td><td style='text-align: center; word-wrap: break-word;'>5.70</td><td style='text-align: center; word-wrap: break-word;'>0.886</td><td style='text-align: center; word-wrap: break-word;'>6.34</td><td style='text-align: center; word-wrap: break-word;'>0.873</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>HaWoR</td><td style='text-align: center; word-wrap: break-word;'>14.22</td><td style='text-align: center; word-wrap: break-word;'>0.779</td><td style='text-align: center; word-wrap: break-word;'>4.76</td><td style='text-align: center; word-wrap: break-word;'>0.905</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>5.03</td><td style='text-align: center; word-wrap: break-word;'>0.899</td><td style='text-align: center; word-wrap: break-word;'>5.07</td><td style='text-align: center; word-wrap: break-word;'>0.899</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>UniHand</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>4.08</td><td style='text-align: center; word-wrap: break-word;'>0.918</td><td style='text-align: center; word-wrap: break-word;'>4.22</td><td style='text-align: center; word-wrap: break-word;'>0.913</td><td style='text-align: center; word-wrap: break-word;'>4.25</td><td style='text-align: center; word-wrap: break-word;'>0.912</td><td style='text-align: center; word-wrap: break-word;'>4.26</td><td style='text-align: center; word-wrap: break-word;'>0.912</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>HandFlow</td><td style='text-align: center; word-wrap: break-word;'>8.12</td><td style='text-align: center; word-wrap: break-word;'>0.839</td><td style='text-align: center; word-wrap: break-word;'>3.88</td><td style='text-align: center; word-wrap: break-word;'>0.922</td><td style='text-align: center; word-wrap: break-word;'>4.21</td><td style='text-align: center; word-wrap: break-word;'>0.916</td><td style='text-align: center; word-wrap: break-word;'>4.35</td><td style='text-align: center; word-wrap: break-word;'>0.913</td><td style='text-align: center; word-wrap: break-word;'>4.85</td><td style='text-align: center; word-wrap: break-word;'>0.903</td></tr></table>

<div style="text-align: center;">Table 2. Comprehensive evaluation on HOT3D (val). World-space accuracy in mm, acceleration error in m/s², RTE in %. Image-based methods (HaMeR, WiLoR) use ViPE-SLAM [Huang et al. 2025] for camera-pose recovery. Best in bold, second best underlined. M.S. Opt. is short for multi-stage optimization. Other baseline results are taken from [Sun et al. 2026; Zhang et al. 2025].</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td style='text-align: center; word-wrap: break-word;'>Method</td><td style='text-align: center; word-wrap: break-word;'>Paradigm</td><td style='text-align: center; word-wrap: break-word;'>MPJPE $\downarrow$</td><td style='text-align: center; word-wrap: break-word;'>PA-MPJPE $\downarrow$</td><td style='text-align: center; word-wrap: break-word;'>W-MPJPE $\downarrow$</td><td style='text-align: center; word-wrap: break-word;'>WA-MPJPE $\downarrow$</td><td style='text-align: center; word-wrap: break-word;'>Accel $\downarrow$</td><td style='text-align: center; word-wrap: break-word;'>RTE $\downarrow$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>HaMeR + SLAM</td><td style='text-align: center; word-wrap: break-word;'>Regression</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>9.39</td><td style='text-align: center; word-wrap: break-word;'>156.03</td><td style='text-align: center; word-wrap: break-word;'>43.37</td><td style='text-align: center; word-wrap: break-word;'>19.25</td><td style='text-align: center; word-wrap: break-word;'>4.77</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>HandDGP + SLAM</td><td style='text-align: center; word-wrap: break-word;'>Regression</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>17.88</td><td style='text-align: center; word-wrap: break-word;'>154.30</td><td style='text-align: center; word-wrap: break-word;'>42.93</td><td style='text-align: center; word-wrap: break-word;'>20.17</td><td style='text-align: center; word-wrap: break-word;'>3.18</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>WiLoR + SLAM</td><td style='text-align: center; word-wrap: break-word;'>Regression</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>6.00</td><td style='text-align: center; word-wrap: break-word;'>151.67</td><td style='text-align: center; word-wrap: break-word;'>39.49</td><td style='text-align: center; word-wrap: break-word;'>8.02</td><td style='text-align: center; word-wrap: break-word;'>2.99</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>HMP + SLAM</td><td style='text-align: center; word-wrap: break-word;'>Regression</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>10.51</td><td style='text-align: center; word-wrap: break-word;'>119.41</td><td style='text-align: center; word-wrap: break-word;'>39.46</td><td style='text-align: center; word-wrap: break-word;'>5.50</td><td style='text-align: center; word-wrap: break-word;'>2.79</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Dyn-HaMR</td><td style='text-align: center; word-wrap: break-word;'>M.S. Opt.</td><td style='text-align: center; word-wrap: break-word;'>82.08</td><td style='text-align: center; word-wrap: break-word;'>8.22</td><td style='text-align: center; word-wrap: break-word;'>69.11</td><td style='text-align: center; word-wrap: break-word;'>31.01</td><td style='text-align: center; word-wrap: break-word;'>4.77</td><td style='text-align: center; word-wrap: break-word;'>2.44</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>HaWoR</td><td style='text-align: center; word-wrap: break-word;'>Regression</td><td style='text-align: center; word-wrap: break-word;'>77.97</td><td style='text-align: center; word-wrap: break-word;'>6.32</td><td style='text-align: center; word-wrap: break-word;'>73.88</td><td style='text-align: center; word-wrap: break-word;'>27.37</td><td style='text-align: center; word-wrap: break-word;'>11.57</td><td style='text-align: center; word-wrap: break-word;'>5.74</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>UniHand</td><td style='text-align: center; word-wrap: break-word;'>Denoising</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>4.76</td><td style='text-align: center; word-wrap: break-word;'>63.97</td><td style='text-align: center; word-wrap: break-word;'>25.24</td><td style='text-align: center; word-wrap: break-word;'>4.93</td><td style='text-align: center; word-wrap: break-word;'>-</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>HandFlow</td><td style='text-align: center; word-wrap: break-word;'>Denoising</td><td style='text-align: center; word-wrap: break-word;'>72.00</td><td style='text-align: center; word-wrap: break-word;'>5.49</td><td style='text-align: center; word-wrap: break-word;'>43.00</td><td style='text-align: center; word-wrap: break-word;'>16.17</td><td style='text-align: center; word-wrap: break-word;'>4.18</td><td style='text-align: center; word-wrap: break-word;'>2.32</td></tr></table>

ViPE-SLAM [Huang et al. 2025]，而HaWoR则使用其专用的SLAM系统。我们依次讨论世界空间精度与时间平滑度。世界空间精度方面，HandFlow在所有世界空间及轨迹指标上均居首位：包括W-MPJPE、WA-MPJPE和RTE——由于相机空间姿态误差会随着相机姿态漂移而累积，这些指标尤为重要。在世界空间中，HandFlow的优势最为明显：WA-MPJPE仅为16.17毫米，而Uni-Hand为25.24毫米，HaWoR为27.37毫米，Dyn-HaMR更是达到31.01毫米；RTE仅为2.32%，最接近的竞争对手也达到了2.44%。仅凭单帧精度优势并不足以带来更好的全局运动效果：UniHand在表中虽拥有最低的单帧PA-MPJPE值（4.76毫米），但其世界空间误差却比HandFlow高出约50%（W-MPJPE为63.97毫米对比43.00毫米；WA-MPJPE为25.24毫米对比16.17毫米）。这种差异表明：精确的全局运动依赖于时间连贯性，而非单纯的单帧精度。图5从同一3D视角展示了完整序列，HandFlow在完整性与精度方面均与真实值最为接近。

时间平滑度方面，HandFlow的加速度误差也最低（Accel为4.18 m/s²），这表明其重建结果具有时间连贯性，而非简单拼接各帧估计值。Dyn-HaMR的Accel值位居第二（4.77 m/s²），但其世界空间误差仍远高于HandFlow（WA-MPJPE为31.01毫米对比16.17毫米），可见其平滑度是以牺牲轨迹保真度为代价换来的。图6揭示了原因：在快速动作期间，Dyn-HaMR的手腕加速度曲线在相位上滞后于真实值，且会削弱真正的高频运动；而HandFlow则在幅值与方向上都能精准追踪真实值，既保持平滑又不影响保真度。

<div style="text-align: center;">Table 3. Computational efficiency comparison on 150-frame HOT3D sequences with batch size 1, measured on a single NVIDIA H100-80 GB GPU. We report camera-space MPJPE (without world-coordinate alignment; see Table 2 for world-space results), reconstruction time, SLAM preprocessing time, total runtime, and peak GPU memory. HandFlow and Dyn-HaMR share the same ViPE-SLAM [Huang et al. 2025] frontend (hence identical SLAM time); HaWoR uses its native SLAM, so the reconstruction column isolates the methods' core difference.</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td style='text-align: center; word-wrap: break-word;'>Method</td><td style='text-align: center; word-wrap: break-word;'>MPJPE $\downarrow$</td><td style='text-align: center; word-wrap: break-word;'>Recon. (s)</td><td style='text-align: center; word-wrap: break-word;'>SLAM (s)</td><td style='text-align: center; word-wrap: break-word;'>Total (s)</td><td style='text-align: center; word-wrap: break-word;'>VRAM (GB)</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Dyn-HaMR</td><td style='text-align: center; word-wrap: break-word;'>58.12</td><td style='text-align: center; word-wrap: break-word;'>288.58</td><td style='text-align: center; word-wrap: break-word;'>16.21</td><td style='text-align: center; word-wrap: break-word;'>304.79</td><td style='text-align: center; word-wrap: break-word;'>1.1</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>HaWoR</td><td style='text-align: center; word-wrap: break-word;'>68.11</td><td style='text-align: center; word-wrap: break-word;'>38.13</td><td style='text-align: center; word-wrap: break-word;'>15.78</td><td style='text-align: center; word-wrap: break-word;'>53.91</td><td style='text-align: center; word-wrap: break-word;'>6.9</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>HandFlow</td><td style='text-align: center; word-wrap: break-word;'>23.79</td><td style='text-align: center; word-wrap: break-word;'>3.19</td><td style='text-align: center; word-wrap: break-word;'>16.21</td><td style='text-align: center; word-wrap: break-word;'>19.40</td><td style='text-align: center; word-wrap: break-word;'>13.1</td></tr></table>

在大小和方向上都保持真实，既平滑又不失保真度。

这种高精度并未带来额外的计算成本：如4.4节所述，每次重建仅需对窗口内的数据进行一次常微分方程积分。

### 4.4 计算效率

实用的手部姿态估计器必须能够同时提供精确且实时的重建结果。表3记录了所有基于视频的方法在150帧HOT3D序列上的推理时间和资源消耗（批量大小为1，单张NVIDIA H100-80 GB GPU）。在重建时间方面，HandFlow比以往的基于视频的方法快出一个数量级，同时其精度在所有对比方法中也名列前茅。运行时分析揭示了结构上的差异：重建仅占总体延迟的一小部分，其中SLAM占据了84%的延迟；相比之下，以往方法的延迟主要由重建过程（无论是迭代优化还是多阶段处理）决定。关键在于，HandFlow和Dyn-HaMR采用了相同的ViPE-SLAM前端，因此两者16倍的运行时差距可以清晰地反映重建速度的差异。这种反转意味着HandFlow可直接从未来的SLAM加速技术中受益，而基准方法则仍受限于自身流程的瓶颈。

---

HandFlow较高的显存占用源于为了最大化吞吐量而对所有时间窗口进行并行去噪处理。在内存受限的情况下，可以通过适度牺牲吞吐量来减少窗口并行度。我们在附录C中进一步分析了ODE步数对性能的影响，并在附录E中证明了该框架对前端选择具有鲁棒性。

### 4.5 消融实验

我们对HandFlow的关键设计选项进行了消融分析。所有变体均训练200个周期，与完整模型保持一致。评估指标是在DexYCB（s0）和HOT3D（val）测试集上综合得出的，其中重叠消融实验采用了随机子集以保证可行性。由于这个合并后的数据集与主表中的各基准测试集不同，各表间的绝对值不具备可比性，但各变体之间的相对顺序仍具有参考价值。

条件模态。表4（顶部）依次移除了每种条件信号。移除视觉特征会导致性能急剧下降（F@5从66.63%降至13.42%，PA-MPJPE从4.75毫米增至8.47毫米），这证实了密集的视觉特征至关重要。移除骨骼信息对平移和平滑性的影响则相对温和（MPJPE从18.73毫米增至22.86毫米），因此稀疏的骨骼线索仅作为补充性的几何锚点，而非精度的首要来源。

连续掩码。对于cmask（公式5），训练期间的随机掩码处理（以概率p将$m_i$置零）起到了时间正则化的作用，其效果因指标类型而异（表4，中间部分）。逐帧精度方面，不采用掩码时效果最佳（$p=0$对应的MPJPE值最低）；而时间和全局连贯性指标则更青睐掩码机制：若没有掩码，每一帧都仅根据自身观测结果进行预测，无法利用时间上下文，从而导致轨迹不连贯。这就形成了由p控制的逐帧精度与连贯性之间的权衡：将p从0提高到0.2，仅会使MPJPE增加0.36毫米，却能令加速度误差降低33%，W-MPJPE减少2.28毫米；而$p=0.5$不仅无法提升连贯性，还会进一步损害精度。我们最终采用了$p=0.2$。在推理时禁用置信度加权（w/o conf.）会产生更大的影响：MPJPE上升86%，而PA-MPJPE几乎不变，这表明置信度加权的条件机制主要用于在低置信度帧中稳定全局平移，抵御噪声位置信号的干扰。

去噪器架构。表4（下方）将双流去噪器与三种参数匹配的变体进行了比较。若用简单的交叉注意力替换双流模块——即仅读取条件标记但无法与潜变量标记交换信息——则各项指标会显著恶化（MPJPE从18.73降至22.04毫米；加速度从4.08降至6.12 m/s²）：可见单向读取条件信息是不够的，流之间的双向交换至关重要。在保留双向融合机制的变体中，单流模型在所有指标上都与完整模型最为接近（单流模型的MPJPE为19.80毫米，而双流模型为21.12毫米），这表明单流自注意力本身就能有效融合条件标记和潜变量标记。结合两个阶段的完整模型表现仍是最佳，但它相对于单流模型的优势并不明显：其主要优势在于简单交叉注意力所缺乏的双向融合机制，而非单流阶段的加入。

重叠推理。对于所有长视频实验，我们采用速度融合的重叠窗口策略（见第3.5节），重叠度设为o=2。

<div style="text-align: center;">Table 4. Ablation studies. All metrics are computed in camera space and aggregated over the full combined DexYCB (s0) and HOT3D (val) test set (the overlap ablation in Table 7 uses a random subset thereof for tractability). All variants and the full model use a 200-epoch checkpoint, matching the main model's training budget. Architecture variants are parameter-matched to the full model within ±5%. Our full model in bold. M. is short for MPJPE. p denotes the training-time mask ratio (the full model uses p=0.2); w/o conf. disables inference-time confidence weighting.</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td style='text-align: center; word-wrap: break-word;'>Setting</td><td style='text-align: center; word-wrap: break-word;'>M. $\downarrow$</td><td style='text-align: center; word-wrap: break-word;'>PA-M. $\downarrow$</td><td style='text-align: center; word-wrap: break-word;'>W-M. $\downarrow$</td><td style='text-align: center; word-wrap: break-word;'>WA-M. $\downarrow$</td><td style='text-align: center; word-wrap: break-word;'>Accel $\downarrow$</td><td style='text-align: center; word-wrap: break-word;'>AUC $\uparrow$</td><td style='text-align: center; word-wrap: break-word;'>F@5 $\uparrow$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>HandFlow (full)</td><td style='text-align: center; word-wrap: break-word;'>18.73</td><td style='text-align: center; word-wrap: break-word;'>4.75</td><td style='text-align: center; word-wrap: break-word;'>38.44</td><td style='text-align: center; word-wrap: break-word;'>13.60</td><td style='text-align: center; word-wrap: break-word;'>4.08</td><td style='text-align: center; word-wrap: break-word;'>0.9111</td><td style='text-align: center; word-wrap: break-word;'>66.63</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Conditioning modalities</td><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'></td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Image only</td><td style='text-align: center; word-wrap: break-word;'>22.86</td><td style='text-align: center; word-wrap: break-word;'>4.82</td><td style='text-align: center; word-wrap: break-word;'>45.61</td><td style='text-align: center; word-wrap: break-word;'>16.07</td><td style='text-align: center; word-wrap: break-word;'>4.61</td><td style='text-align: center; word-wrap: break-word;'>0.9098</td><td style='text-align: center; word-wrap: break-word;'>65.67</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Skeleton only</td><td style='text-align: center; word-wrap: break-word;'>26.66</td><td style='text-align: center; word-wrap: break-word;'>8.47</td><td style='text-align: center; word-wrap: break-word;'>61.78</td><td style='text-align: center; word-wrap: break-word;'>21.31</td><td style='text-align: center; word-wrap: break-word;'>7.08</td><td style='text-align: center; word-wrap: break-word;'>0.8288</td><td style='text-align: center; word-wrap: break-word;'>13.42</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Continuous masking</td><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'></td></tr><tr><td style='text-align: center; word-wrap: break-word;'>p=0</td><td style='text-align: center; word-wrap: break-word;'>18.37</td><td style='text-align: center; word-wrap: break-word;'>4.74</td><td style='text-align: center; word-wrap: break-word;'>40.71</td><td style='text-align: center; word-wrap: break-word;'>14.40</td><td style='text-align: center; word-wrap: break-word;'>6.06</td><td style='text-align: center; word-wrap: break-word;'>0.9113</td><td style='text-align: center; word-wrap: break-word;'>66.39</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>p=0.5</td><td style='text-align: center; word-wrap: break-word;'>19.19</td><td style='text-align: center; word-wrap: break-word;'>4.78</td><td style='text-align: center; word-wrap: break-word;'>39.08</td><td style='text-align: center; word-wrap: break-word;'>13.50</td><td style='text-align: center; word-wrap: break-word;'>4.04</td><td style='text-align: center; word-wrap: break-word;'>0.9105</td><td style='text-align: center; word-wrap: break-word;'>66.83</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>w/o conf.</td><td style='text-align: center; word-wrap: break-word;'>34.80</td><td style='text-align: center; word-wrap: break-word;'>4.84</td><td style='text-align: center; word-wrap: break-word;'>61.69</td><td style='text-align: center; word-wrap: break-word;'>18.21</td><td style='text-align: center; word-wrap: break-word;'>8.00</td><td style='text-align: center; word-wrap: break-word;'>0.9091</td><td style='text-align: center; word-wrap: break-word;'>64.84</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Denoiser architecture</td><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'></td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Naive Cross-Attention</td><td style='text-align: center; word-wrap: break-word;'>22.04</td><td style='text-align: center; word-wrap: break-word;'>6.03</td><td style='text-align: center; word-wrap: break-word;'>50.69</td><td style='text-align: center; word-wrap: break-word;'>16.58</td><td style='text-align: center; word-wrap: break-word;'>6.12</td><td style='text-align: center; word-wrap: break-word;'>0.8777</td><td style='text-align: center; word-wrap: break-word;'>46.70</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Only Dual-Stream</td><td style='text-align: center; word-wrap: break-word;'>21.12</td><td style='text-align: center; word-wrap: break-word;'>5.09</td><td style='text-align: center; word-wrap: break-word;'>46.04</td><td style='text-align: center; word-wrap: break-word;'>15.38</td><td style='text-align: center; word-wrap: break-word;'>5.54</td><td style='text-align: center; word-wrap: break-word;'>0.8932</td><td style='text-align: center; word-wrap: break-word;'>55.95</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Only Single-Stream</td><td style='text-align: center; word-wrap: break-word;'>19.80</td><td style='text-align: center; word-wrap: break-word;'>4.92</td><td style='text-align: center; word-wrap: break-word;'>39.31</td><td style='text-align: center; word-wrap: break-word;'>14.71</td><td style='text-align: center; word-wrap: break-word;'>4.69</td><td style='text-align: center; word-wrap: break-word;'>0.9036</td><td style='text-align: center; word-wrap: break-word;'>61.14</td></tr></table>

速度融合机制会在常微分方程积分过程中合并预测结果，从而消除事后平均处理所带来的边界速度跳变问题$(c_{>1}=18.9$对比$c_{1}=4.46$，发生在$o=2)$处，且相比无重叠基准方法，其精度更高。完整的融合策略对比详见附录F。

## 5 结论

我们提出了HandFlow，这是一个用于单目4D手部重建的全生成式流匹配框架。通过将重建任务转化为MANO参数空间中的条件生成问题，HandFlow突破了确定性回归的限制，能够在不明确或不可靠的观察条件下恢复出合理且时间连贯的手部运动。HandFlow通过单次常微分方程积分即可完成每个窗口的重建，既保证了推理效率，又不会牺牲精度或平滑性。在DexYCB和HOT3D数据集上的实验表明，HandFlow在精度、时间平滑性和推理速度方面均达到了现有基于图像和视频的方法中的最优水平，这预示着生成式运动先验有望成为稳健的4D手部恢复技术的基础。

支撑这一性能的三个设计选择分别是：双流Transformer能在整个窗口内同时关注潜手参数和视觉骨骼条件；置信度感知的cmask会在观察结果不可靠时切换为已学习的运动先验；以及速度融合的重叠窗口推理机制，能将重建范围扩展到沿连续轨迹的长视频。我们的结果进一步表明，精确的全局运动源于时间连贯性，而非单帧精度。

## 参考文献

Prithviraj Banerjee、Sindi Shkodrani、Pierre Moulon、Shreyas Hampali、Shangchen Han、Fan Zhang、Linguang Zhang、Jade Fountain、Edward Miller、Selen Basol、Richard Newcombe、Robert Wang、Jakob Julian Engel和Tomas Hodan。2025年。HOT3D：基于自中心多视角视频的3D手部与物体跟踪。载于IEEE/CVF计算机视觉与模式识别会议论文集，第7061–7071页。

Fabien Baradel、Matthieu Armando、Salma Galaoui、Romain Brégier、Philippe Weinzaepfel、Grégory Rogez和Thomas Lucas。2024年。Multi-hmr：单次拍摄即可实现多人全身

---

人体网格恢复。载于欧洲计算机视觉会议论文集，Springer出版社，第202–218页。

Black Forest Labs。2024年。Flux。<https://blackforestlabs.ai/announcing-black-forest-labs/>

赵宇伟、杨伟、向宇、帕夫洛·莫尔恰诺夫、安库尔·汉达、乔纳森·特伦布莱、亚什拉杰·S·纳朗、卡尔·范·维克、乌马尔·伊克巴尔、斯坦·伯奇菲尔德、扬·考茨和迪特尔·福克斯。2021年。DexYCB：用于捕捉物体抓取动作的基准测试。载于IEEE/CVF计算机视觉与模式识别会议论文集，第9044–9053页。

陈星宇、宋竹恒、蒋晓科、胡耀清、于俊志和张磊。2025年。HandOS：单阶段3D手部重建技术。载于IEEE/CVF计算机视觉与模式识别会议论文集，第17304–17314页。

陈宇飞等人。2023年。SemiHandObj：基于RGB视频的半监督3D手-物体重建技术。发表于IEEE/CVF计算机视觉与模式识别会议（CVPR）。

陈宇进、涂志刚、葛柳浩、张德军、陈瑞志和袁军松。2021年。S2HAND：基于单张RGB图像的自监督3D手部姿态与网格重建技术。发表于IEEE/CVF国际计算机视觉会议（ICCV）。

程文灿、唐浩、卢万·范·古尔和高钟焕。2024年。HandDiff：基于图像-点云的扩散模型3D手部姿态估计技术。载于IEEE/CVF计算机视觉与模式识别会议论文集，第2274–2284页。

崔洪硕、文京植、张柱永和李炅模。2021年。超越静态特征：从视频中实现时间一致的3D人体姿态与形状重建。载于IEEE/CVF计算机视觉与模式识别会议论文集，第1964–1973页。doi:10.1109/CVPR46437.2021.00200

萨米·克里斯滕、冯兰、杨伟、赵宇伟、奥特马尔·希利格斯和宋杰。2024年。Synh2r：用于学习人机交接动作的手-物体运动合成技术。发表于2024年IEEE国际机器人与自动化会议（ICRA），第3168–3175页。

埃内斯·杜兰、穆罕默德·科卡巴斯、瓦西里斯·乔塔斯、范子聪和迈克尔·J·布莱克。2024年。HMP：基于视频的姿态与形状估计手部运动先验模型。发表于IEEE/CVF计算机视觉应用冬季会议（WACV）。

冯乔、黄一鸣、王玉富、顾嘉涛和刘凌杰。2025年。PhysHMR：从视觉数据学习类人控制策略以实现物理上合理的人体运动重建。发表于SIGGRAPH Asia 2025会议论文集，第1–10页。

傅启晨、刘星宇、徐然、胡安·卡洛斯·涅布勒斯和克里斯·M·基塔尼。2023年。Deformer：用于鲁棒手部姿态估计的动态融合Transformer模型。发表于IEEE/CVF国际计算机视觉会议论文集，第23543–23554页。doi:10.1109/ICCV51070.2023.02157

黄佳辉、周群杰、拉贝蒂·赫萨姆、亚历山德尔·科罗夫科、凌欢、任轩驰、沈天昌、高军、斯列皮切夫·德米特里、林辰轩、任佳伟、谢凯文、比斯瓦斯·乔伊迪普、劳拉·莱尔-泰克塞和菲德勒·桑雅。2025年。ViPE：用于3D几何感知的视频姿态引擎。doi:10.48550/arXiv.2508.10934 arXiv:2508.10934 [cs]。

穆罕默德·科卡巴斯、尼科斯·阿萨纳西乌和迈克尔·J·布莱克。2020年。VIBE：用于人体姿态与形状估计的视频推理模型。发表于IEEE/CVF计算机视觉与模式识别会议（CVPR）。

李志豪、刘建壮、张振松、徐松岑和闫有亮。2022年。Cliff：将完整帧中的位置信息应用于人体姿态与形状估计的技术。发表于欧洲计算机视觉会议，施普林格出版社，第590–606页。

林凯文、王丽娟和刘子成。2021年。MeshGraphormer：用于手部与人体3D重建的关键点Transformer模型。发表于IEEE/CVF国际计算机视觉会议（ICCV）。

Yaron Lipman、Ricky T. Q. Chen、Heli Ben-Hamu、Maximilian Nickel和Matt Le。2023年。用于生成建模的流匹配技术。载于第十一届国际学习表征会议。<https://openreview.net/forum?id=PqvMRDCJTuz>

刘星超、龚成越和刘强。2023年。流畅且快速：利用修正流学习数据生成与迁移。载于第十一届国际学习表征会议。<https://openreview.net/forum?id=XVjTT1nw5z>

刘云泽、刘云、蒋哲、吕康博、万伟康、沈浩、梁博强、付周杰、王赫和李毅。2022年。Hoi4d：一个用于类别级人机交互的4D第一人称视角数据集。载于IEEE/CVF计算机视觉与模式识别会议论文集。第21013–21022页。

Camillo Lugaresi、唐久强、Nash Hadon、McClanahan Chris、Uboweja Esha、Hays Michael、张帆、张楚玲、杨明光和Lee Juhyun。2019年。MediaPipe：构建感知流水线的框架。arXiv预印本arXiv:1906.08172（2019年）。

Ben Mildenhall、Pratul P Srinivasan、Matthew Tancik、Jonathan T Barron、Ravi Ramamoorthi和Ren Ng。2021年。NeRF：将场景表示为神经辐射场以实现视图合成。《ACM通讯》第65卷第1期（2021年），第99–106页。

潘超逸、王昌豪、齐浩志、刘子曦、Homanga Bharadhwaj、Akash Sharma、吴廷凡、史冠亚、Malik Jitendra和Francois Hogan。2025年。Spider：可扩展的物理感知灵巧动作重定向技术。arXiv预印本arXiv:2511.09484（2025年）。

朴智贤、吴永泽、文京植、崔弘硕和李庆模。2022年。HandOccNet：抗遮挡的3D手部网格重建技术。载于IEEE/CVF计算机视觉与模式识别会议（CVPR）。

Georgios Pavlakos、单丹丹、Ilija Radosavovic、Angjoo Kanazawa、David Fouhey和Jitendra Malik。2024年。基于Transformer的3D手部重建技术。载于IEEE/CVF计算机视觉与模式识别会议论文集。第9826–9836页。doi:10.1109/CVPR52733.2024.00938

William Peebles和谢赛宁。2023年。基于Transformer的可扩展扩散模型。载于IEEE/CVF国际计算机视觉会议。第4195–4205页。<http://arxiv.org/abs/2212.09748> arXiv:2212.09748 [cs]。

Rolandos Alexandros Potamias、张静雷、邓建康和Stefanos Zafeiriou。2025年。WiLoR：野外环境下的端到端3D手部定位与重建技术。载于IEEE/CVF计算机视觉与模式识别会议论文集。第12242–12254页。doi:10.1109/CVPR52734.2025.01143

Javier Romero、Dimitrios Tzionas和Michael J. Black。2017年。具身化手部：手部与身体的联合建模与捕捉。《ACM图形学交易》第36卷第6期（2017年），第245:1–245:17页。doi:10.1145/3130800.3130883

Muhammad Usama Saleem、Pinyoanuntapong Ekkasit、Patel Mayur Jagdishbhai、薛宏飞、Helmy Ahmed、Das Srijan和Pu Wang。2025年。MaskHand：用于野外环境下鲁棒手部网格重建的生成式掩码建模技术。载于IEEE/CVF国际计算机视觉会议论文集。第8372–8383页。

Oriane Siméoni、Vo Huy V.、Seitzer Maximilian、Baldassarre Federico、Oquab Maxime、Jose Cijo、Khalidov Vasil、Szafraniec Marc、Yi Seungeun、Ramamonjisa Michaël、Massa Francisco、Haziza Daniel、Wehrstedt Luca、Wang Jianyuan、Darcet Timothée、Moutakanni Théo、Sentana Leonel、Roberts Claire、Vedaldi Andrea、Tolan Jamie、Brandt John、Couprie Camille、Mairal Julien、Jégou Hervé、Labatut Patrick和Bojanowski Piotr。2025年。DINOv3。（2025年8月）。doi:10.48550/arXiv.2508.10104

苏建林、余璐、潘圣峰、Ahmed Murtadha、文波和刘云峰。2024年。Roformer：采用旋转位置嵌入的增强型Transformer。《神经计算》第568卷（2024年），127063页。<http://arxiv.org/abs/2104.09864> arXiv:2104.09864 [cs]。

孙志豪、吴桐

统一Mo

在第十四届会议中

Inter

-net/forum?

Guy Tevet、Sigal Raab、Brian Gordon、Yoni Shafir、Daniel Cohen-Or和Amit H. Bermano。2023年。人体运动扩散模型。收录于《国际学习表征会议》。<http://arxiv.org/abs/2209.14916> arXiv:2209.14916 [cs]。

Eugene Valassakis和Guillermo Garcia-Hernando。2024年。HandDGP：基于可微全局定位的相机空间手部网格预测。收录于《欧洲计算机视觉会议（ECCV）》。

王佳怡、Franziska Mueller、Florian Bernard、Suzanne Sorli、Oleksandr Sotnychenko、钱能、Miguel A Otaduy、Dan Casas和Christian Theobalt。2020年。Rgb2hands：从单目RGB视频实时追踪3D手部交互。《ACM图形学交易（ToG）》第39卷第6期（2020年），1–16页。

王婷、余晓航和Mackenzie Weygandt Mathis。2026b。FMPose3D：基于流匹配的单目3D姿态估计。doi:10.48550/arXiv.2602.05755 arXiv:2602.05755 [cs]。

王宇夫、Ng Evonne、Shin Soyong、Rawal Khirodkar、董远、苏兆恩、朴珍亨、Kris Kitani、Alexander Richard、Fabian Prada和Michael Zollhofer。2026a。DuoMo：用于世界空间人体重建的双运动扩散模型。doi:10.48550/arXiv.2603.03265 arXiv:2603.03265 [cs]。

徐忠聪、张建峰、刘俊浩、严汉舒、刘嘉伟、张晨旭、冯佳石和寿梦正。2024年。MagicAnimate：利用扩散模型实现时间一致的人体图像动画。收录于《IEEE/CVF计算机视觉与模式识别会议论文集》，第1481–1490页。

叶宇飞、冯瑶、Omid Taheri、冯海文、Michael J. Black和Shubham Tulsiani。2026年。从单目视频预测4D手部轨迹。收录于《第十三届3D视觉国际会议》。<https://openreview.net/forum?id=qGVr6yvNX8>

余正迪、Stefanos Zafeiriou和Tolga Birdal。2025年。Dyn-HaMR：从动态摄像头恢复4D交互式手部运动。收录于《IEEE/CVF计算机视觉与模式识别会议论文集》，第27716–27726页。doi:10.1109/CVPR52734.2025.02581

张静雷、邓建康、马超和Rolandos Alexandros Potamias。2025年。HaWoR：从第一人称视频重建世界空间手部运动。收录于《IEEE/CVF计算机视觉与模式识别会议论文集》，第1805–1815页。

---

![Image](images/041bd3194e1f5c1b0a22c43c3e9c62a326888a9e1da3d36c4b1c7ed6f805e1b1.jpg)

<div style="text-align: center;">Fig. 3. Comparison on heavily occluded DexYCB frames: GT vs. HaMeR, HaWoR, and HandFlow. Each method is shown in four columns (from left to right: the mesh overlaid on the input, the camera-space mesh alone, a top-down view, and a side view); the last three columns expose depth errors that the overlay hides. Color: green GT, blue HandFlow, orange HaWoR, red HaMeR.</div>

![Image](images/1054e4d8e12c7a8e80ea6aee10f4204bdebb5917d5c809ec9ff17c65ab3da348.jpg)

<div style="text-align: center;">Fig. 4. HandFlow tracking on heavily occluded clips from DexYCB and HOT3D (eight sampled frames per sequence, overlaid on input views), with plausible poses inferred where the hand is largely unseen.</div>

---

![Image](images/1942786c028bd7e1eff4fc2403f66b4762de43b6732e8b3485e7971096f2ba85.jpg)

![Image](images/2794d61f279e2328903182e2d97f5f2164a5c9588c8e05494723b4bb8a8b4b53.jpg)

![Image](images/ae8a8ef74f4701dc1ff0b24b476478849e23e935cf6a7b787b834d6f5f3ae4fd.jpg)

![Image](images/780e99ef06d929e102dc84b6890586dc54950837714579c6db2d85b305ee8b37.jpg)

![Image](images/29e9126d825945c528146d999b1a2493d66b36aab7f2d021982aedbd0d5d5fe2.jpg)

![Image](images/2a4c26381e589c901bf44d411cb347f7a044207657be479d6a2e8131a542ada8.jpg)

![Image](images/60b2c9c6abbf95447e5181eef60ce4139d2fa56c867472588d4fc30b638047e9.jpg)

![Image](images/97a876e5747735db94b1f13531270f75ef8268478e20cfc715994c6c7ce45eeb.jpg)

<div style="text-align: center;">Fig. 5. HOT3D sequences rendered for HaMeR, HaWoR, HandFlow, and GT from a shared 3D viewpoint. HandFlow best matches GT in completeness and accuracy. Green denotes GT, blue HandFlow, orange HaWoR, and red HaMeR.</div>

![Image](images/3de2f9358cd98939312e6d976f6468c4fc78bd8c9d1e95fedd40c147a900df65.jpg)

![Image](images/203cc8a21ee5268fcb8e04d4acdd4292c132770b88264416d7ce4c4a0734f1ee.jpg)

![Image](images/9c5298bbb2d58cf686f0f74463949f0adab428cd01230fe7865b6d75931abd61.jpg)

![Image](images/362b1a0ad737ab827d95993dc9da3169bd26b221b9959bcdc5a6b01cfd6ac5ac.jpg)

![Image](images/0f8c683b4dcffe744bab211fb7d56382da8bd04ddb5b7d6c493fa0f845f007f8.jpg)

![Image](images/152ff4e967c113aa58480e4c694dea8c00af8fef9d02df7a627d7f261a6f9dd4.jpg)

![Image](images/4dd0b1cb483391c7fe6359ef142f9b118405f1a33e434e14748ae2dc9857d5cb.jpg)

![Image](images/896e93f7dab5bbaeab5f4698839c01df923c99431b93261e72d394df48408ea7.jpg)

![Image](images/c6032cad3cecfdcf08b3fbb392a9368f967e78d707ae95a982d0c47e80b896dd.jpg)

![Image](images/6191a2eecb43fa193fafa6efc40c270db070f64f103427c91f819daa420263f4.jpg)

![Image](images/993a1f70b2b9aa84e07ec0481653201ebd23eba123ff47e9363db14e16356946.jpg)

![Image](images/ebb7943c45e497c9826f9142681b0cd1dc87953829f7620a339b1b9fa5e67819.jpg)

![Image](images/54d6314f641986ab35b9f3fe75940ab3c9984294cdef7bdb0f223cae2830dbde.jpg)

![Image](images/d01a43679ef95ca4b685bab5e02a91c3edd3dc565a8f6143002b5b23600207cd.jpg)

![Image](images/3c94d05d5cbe94daf258d4e3ffbf2653eb657dda717e37e7e34903b15e687ced.jpg)

<div style="text-align: center;">Fig. 6. For each sequence, four sampled frames show wrist acceleration arrows (length encodes magnitude), with a time-series plot of acceleration magnitude for GT and all methods beneath. HandFlow best matches GT in both magnitude and direction. Green denotes GT, blue HandFlow, orange HaWoR, and red HaMeR.</div>

---

## A 评估指标

我们采用以下评估指标：

- MPJPE衡量的是未经几何对齐的关节位置误差平均值，单位为毫米。该指标在相机空间（表3）和基于SLAM的相机位姿恢复后的世界空间中均有报告（表2）；这两个数值无法直接比较，因为后者还反映了相机位姿误差。

PA-MPJPE在计算误差前会先进行Procrustes对齐（平移、旋转和缩放）。

RA-MPJPE仅对根部方向进行对齐。

- W-MPJPE和WA-MPJPE与MPJPE的区别仅在于对齐方式。W-MPJPE仅对前两帧进行对齐，因此轨迹漂移会在序列的其余部分累积，该指标直接反映了全局轨迹的准确性。WA-MPJPE则将整个序列视为单个点云，并对所有帧应用Procrustes对齐，从而消除了漂移的影响，能更好地反映序列级别的形状一致性。与MPJPE类似，这两种指标既可以在相机空间中报告，也可以在世界空间中报告。

- 加速度误差衡量的是预测关节加速度与真实关节加速度之间差异的平均幅度（$m/s^{2}$），用于反映时间上的平滑性。

- RTE（根节点平移误差）衡量的是经过刚性对齐后手部轨迹总位移归一化的全局平移误差，按照[Zhang等人，2025年]的方法以百分比形式报告。

- AUC是MPJPE阈值曲线下的面积；我们报告了$AUC_{RA}$和$AUC_{PA}$，它们分别由RA-MPJPE和PA-MPJPE计算得出。

- F@v表示MPJPE低于v毫米的帧所占的比例（我们取v=5和v=15）。

对于DexYCB数据集，我们报告RA-MPJPE、PA-MPJPE及其对应的AUC值（表1）；消融实验中额外使用了F@5指标，而在前端通用性分析中则同时使用了F@5和F@15指标。对于HOT3D数据集，我们报告MPJPE、PA-MPJPE、W-MPJPE、WA-MPJPE、加速度误差以及RTE，其中W-MPJPE和WA-MPJPE用于衡量世界空间中的准确性。

## B 实现细节

我们采用的隐藏层大小为$D=512$，注意力头数为16个，先使用8个双流模块，随后是16个单流模块，窗口大小设为$T=16$帧。模型采用AdamW优化器进行训练（参数分别为$\beta_1=0.9$、$\beta_2=0.999$，权重衰减为$10^{-4}$），学习率为$10^{-4}$，前5,000步为热身阶段，之后采用余弦退火策略；每张GPU的批量大小为16（4张GPU下的有效批量为64），共训练200个周期。所有辅助损失的缩放因子为采样时间步的平均值$\tilde{t}$。各辅助损失的权重分别为：$\mathcal{L}_{\beta}=1.0$、$\mathcal{L}_{\text{vel}}=0.5$、$\mathcal{L}_{\text{acc}}=0.5$、$\mathcal{L}_{\text{reproj}}=0.5$、$\mathcal{L}_{\text{j3d}}=0.05$。

训练数据。HandFlow在DexYCB和HOT3D的训练集上进行训练，这两个数据集也是评估时使用的基准数据集，评估序列被排除在训练之外。对于DexYCB数据集，我们采用标准的s0协议：训练时使用全部10名受试者的数据以及80%序列的8个相机视角，而s0评估集（受试者1–2，每5个序列中的1个）则不纳入训练。HOT3D数据集的官方验证片段没有公开的真实标签，因此我们自行对官方训练集进行划分：针对每位参与者，将序列按字母顺序排序，每第七个序列留作验证用（共13个序列，169个片段，约占训练片段的11%），剩余的1,347个片段用于训练。所有重新评估的基线模型也采用相同的划分方式。遵循先前的研究[Pavlakos等人，2024年]，每个手部都由HaMeR检测并裁剪为$256 \times 256$大小的右手区域；MANO参数以轴角形式存储，并按T=16帧的窗口进行分组，若窗口内有效帧占比不足50%则予以丢弃。完整的数据集构建和预处理脚本将会发布。

所有模型均在4块NVIDIA H100-80 GB GPU上训练。训练HandFlow模型200个周期大约需要24小时。在计算效率评估中（表3），由于基线方法的推理成本较高，我们对50个验证序列的结果取平均值。

## C ODE步骤扫描分析

我们分析了推理过程中不同常微分方程积分步数对结果的影响。使用固定的模型检查点和欧拉求解器，我们在完整的验证集（DexYCB s0 + HOT3D验证剪辑，共42,384帧）上测试了从1到10步的不同设置。图7展示了在不同步数下五种MPJPE指标的变化情况。

![Image](images/d2eadf0aefbc9c54e43a5b28b13f0eb580f8633505e389da16f391bdb2d8fa0a.jpg)

<div style="text-align: center;">Fig. 7. ODE steps vs. MPJPE. Five MPJPE variants (M, PA-M, RA-M, W-M, WA-M) across 1–10 Euler integration steps.</div>

主要观察结果如下：(1) 仅采用1步积分时，由于欧拉截断误差的存在，结果较差（MPJPE $\approx$ 达到43毫米），因为单步积分无法准确还原连续的流动轨迹。(2) 从第2步开始，性能便进入稳定平台期：MPJPE从第1步的$\approx$43毫米骤降至第2步的$\approx$27毫米，此后基本保持平稳。PA-MPJPE在测试过程中几乎保持不变（4.83–5.21毫米），这证明每帧的姿态质量与步数关系不大。我们最终选择第3步而非第2步，因为第2步处于平台期的边缘，对分布偏移的容错空间较小。

## D 噪声敏感性分析

HandFlow具备完全生成能力：推理时它从随机初始噪声$\bar{\mathbf{x}}_0 \sim \mathcal{N}(\mathbf{0}, \mathbf{I})$出发，利用欧拉求解器确定性地积分流动常微分方程（详见第3.1节）。给定$\bar{\mathbf{x}}_0$后，整个积分过程便被固定下来，因此推理阶段唯一的随机因素就是初始噪声本身。一个自然的问题是：恢复出的手部状态是否会依赖于这一随机采样结果？为了量化这一点，我们进行了如下实验：

---

我们在完整的DexYCB（s0）和HOT3D（验证集）混合验证集（482个序列，42,384帧）上，使用不同的初始噪声样本（随机种子0–9）进行10次独立的推理测试，所用模型检查点及欧拉积分步数与我们报告结果中的设置一致（参见第C节）。表5列出了10次运行中各项指标的平均值、标准差、取值范围以及变异系数（CV）。

<div style="text-align: center;">Table 5. Sensitivity to the initial noise. We run 10 independent inferences with different initial noise samples (random seeds 0–9) on the full combined DexYCB (s0) and HOT3D (val) validation set (482 sequences, 42,384 frames), using the fixed checkpoint and 3-step Euler setting of our reported results. For each metric we report the mean, standard deviation, range (max–min), and coefficient of variation (CV = std/mean, in %) across the 10 runs. MPJPE variants are in mm and acceleration error in m/s $^2$. The combined mean is not directly comparable to the per-benchmark Tables 1 and 2; only the dispersion (std, range, CV) is meaningful here. Rows are ordered by CV; lower CV indicates lower sensitivity to the random initial noise.</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td style='text-align: center; word-wrap: break-word;'>Metric</td><td style='text-align: center; word-wrap: break-word;'>mean</td><td style='text-align: center; word-wrap: break-word;'>std</td><td style='text-align: center; word-wrap: break-word;'>range</td><td style='text-align: center; word-wrap: break-word;'>CV (%) $\downarrow$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>PA-MPJPE</td><td style='text-align: center; word-wrap: break-word;'>4.76</td><td style='text-align: center; word-wrap: break-word;'>0.008</td><td style='text-align: center; word-wrap: break-word;'>0.025</td><td style='text-align: center; word-wrap: break-word;'>0.16</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>RA-MPJPE</td><td style='text-align: center; word-wrap: break-word;'>10.30</td><td style='text-align: center; word-wrap: break-word;'>0.032</td><td style='text-align: center; word-wrap: break-word;'>0.104</td><td style='text-align: center; word-wrap: break-word;'>0.31</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>WA-MPJPE</td><td style='text-align: center; word-wrap: break-word;'>13.46</td><td style='text-align: center; word-wrap: break-word;'>0.072</td><td style='text-align: center; word-wrap: break-word;'>0.222</td><td style='text-align: center; word-wrap: break-word;'>0.53</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>MPJPE</td><td style='text-align: center; word-wrap: break-word;'>18.51</td><td style='text-align: center; word-wrap: break-word;'>0.133</td><td style='text-align: center; word-wrap: break-word;'>0.382</td><td style='text-align: center; word-wrap: break-word;'>0.72</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>W-MPJPE</td><td style='text-align: center; word-wrap: break-word;'>38.02</td><td style='text-align: center; word-wrap: break-word;'>0.312</td><td style='text-align: center; word-wrap: break-word;'>0.779</td><td style='text-align: center; word-wrap: break-word;'>0.82</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Accel</td><td style='text-align: center; word-wrap: break-word;'>3.98</td><td style='text-align: center; word-wrap: break-word;'>0.045</td><td style='text-align: center; word-wrap: break-word;'>0.148</td><td style='text-align: center; word-wrap: break-word;'>1.12</td></tr></table>

姿态精度几乎不受噪声影响。在10种噪声样本下，PA-MPJPE的变化仅为0.025毫米（CV为0.16%），RA-MPJPE的变化为0.104毫米（CV为0.31%）。不同的初始噪声样本最终会收敛到几乎相同的解，这说明修正流轨迹足够平直，以至于最终预测结果对初始噪声的依赖性很弱。这一结果从实证角度支持了修正流背后的平直路径假设 [Liu et al. 2023]。

全局平移的敏感性略高一些，但仍在1%以内。包含全局平移的指标——MPJPE（CV为0.72%）和W-MPJPE（CV为0.82%）——其波动幅度比姿态对齐后的PA-MPJPE大出一个数量级。这反映出绝对全局位置比关节姿态更难以精确确定，这与平移是MANO状态中约束最弱的组成部分这一结论相符。不过，所有空间相关的CV值均低于1%。

时间相关指标的CV值因分母较小而被放大。加速度误差的CV值较高（1.12%），RTE的CV值甚至更高（1.75%，未列入表格），但它们的绝对取值范围极小（分别为0.15 m/s²和0.09%）；较大的CV值只是因为标准差除以更小的均值所产生的统计假象。实际而言，表1和表2中所报告的相对于基线的改进幅度达到毫米级，这比由随机种子引起的波动要大出数个数量级，因此这些差异反映的是方法本身的真正区别，而非随机初始化的噪声所致。

结合前文提到的常微分方程步数扫描结果（第C节），此次分析表明HandFlow的推理过程在两个独立维度上都具有鲁棒性：即求解器资源消耗和随机起点。

## E 前端通用性分析

默认情况下，HandFlow 以 HaMeR [Pavlakos et al. 2024] 为基础，这是一个专门针对手部建模的网络（采用 ViT-Huge 骨干网络，参数规模约 600M，在大规模手部数据上预训练），能够同时提供密集视觉特征以及 21 个 2D 关键点。

<div style="text-align: center;">Table 6. Frontend generality. HandFlow accuracy when the HaMeR frontend is replaced by a generic DINOv3-Base backbone and MediaPipe skeleton detector (cf. Tables 2 and 1 for specialized baselines).</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td rowspan="2">Frontend</td><td rowspan="2">Params</td><td colspan="4">HOT3D</td><td colspan="4">DexYCB (s0)</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>M $\downarrow$</td><td style='text-align: center; word-wrap: break-word;'>PA $\downarrow$</td><td style='text-align: center; word-wrap: break-word;'>W-M $\downarrow$</td><td style='text-align: center; word-wrap: break-word;'>Accel $\downarrow$</td><td style='text-align: center; word-wrap: break-word;'>PA $\downarrow$</td><td style='text-align: center; word-wrap: break-word;'>AUC $\uparrow$</td><td style='text-align: center; word-wrap: break-word;'>F@5 $\uparrow$</td><td style='text-align: center; word-wrap: break-word;'>F@15 $\uparrow$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>HaMeR (ViT-H) + HaMeR Skel.</td><td style='text-align: center; word-wrap: break-word;'>~600M</td><td style='text-align: center; word-wrap: break-word;'>72.00</td><td style='text-align: center; word-wrap: break-word;'>5.49</td><td style='text-align: center; word-wrap: break-word;'>43.00</td><td style='text-align: center; word-wrap: break-word;'>4.18</td><td style='text-align: center; word-wrap: break-word;'>3.88</td><td style='text-align: center; word-wrap: break-word;'>0.922</td><td style='text-align: center; word-wrap: break-word;'>80.30</td><td style='text-align: center; word-wrap: break-word;'>99.82</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>DINOv3-Base + MediaPipe</td><td style='text-align: center; word-wrap: break-word;'>~88M</td><td style='text-align: center; word-wrap: break-word;'>85.35</td><td style='text-align: center; word-wrap: break-word;'>6.37</td><td style='text-align: center; word-wrap: break-word;'>57.28</td><td style='text-align: center; word-wrap: break-word;'>5.61</td><td style='text-align: center; word-wrap: break-word;'>4.46</td><td style='text-align: center; word-wrap: break-word;'>0.917</td><td style='text-align: center; word-wrap: break-word;'>75.81</td><td style='text-align: center; word-wrap: break-word;'>97.20</td></tr></table>

为了测试对前端模块的鲁棒性，我们将整个模块替换为非专为手部设计、且在各方面性能都更弱的现成组件：DINOv3-Base [Siméoni et al. 2025]（参数规模约 86M，一种在自然图像上做自监督训练的通用 ViT 模型，没有针对手部的预训练）负责提供视觉特征，MediaPipe [Lugaresi et al. 2019] 手部检测器（参数规模约 2M）则负责提供 2D 关键点。组合后的前端模块参数规模约为 88M（大约仅为 HaMeR 的 1/7），且这两个组件是独立训练而非联合训练。其他所有组件（帧压缩器、骨骼投影模块、cmask 机制、双流去噪器和损失函数）均保持不变。

表 6 报告了在两个基准测试上的结果。尽管前端模块性能明显更弱，HandFlow 的表现依然稳定：性能下降幅度适中，且在各项指标上表现一致（DexYCB 上的 PA-MPJPE 增加 15%，HOT3D 上增加 16%；HOT3D 上的 MPJPE 增加 18%）。更重要的是，即便采用这种通用前端模块，HandFlow 的性能仍优于强大的基于视频的基线模型（参见表 2 和表 1）：在 DexYCB 数据集上，PA-MPJPE 为 4.46 毫米，而 HaWoR 为 4.76 毫米；在 HOT3D 数据集上，W-MPJPE 为 57.28 毫米，Dyn-HaMR 则为 69.11 毫米。由于 HaMeR 将骨干网络和关键点头集成在单个网络中，我们将前端模块视为可替换的整体，不再进一步拆分性能下降的原因。这些结果表明，HandFlow 的准确性并不依赖于参数规模达 600M 的专用手部模型：修正流框架和双流条件机制贡献了大部分性能，即便在采用参数规模仅为其 1/7、且没有针对手部预训练的通用前端模块时，性能也仅出现适度下降。

## F 重叠推理分析

我们分析了第 3.5 节中提到的重叠窗口推理策略，在 DexYCB（s0）和 HOT3D（val）测试集的随机子集上，对比了不同重叠尺寸 $o \in \{0, 1, 2, 4\}$ 下的融合方法。我们将加速误差分解为 $c_1$（单个窗口覆盖的帧）和 $c_{>1}$（重叠区域的帧）；表 7 报告了相关结果。

事后平均法会引入边界伪影。为每个窗口独立运行常微分方程并平均重叠帧的最终状态，会导致误差集中在重叠边界处（当 o=2 时，$c_{>1}=18.9$ 与 $c_{1}=4.46$ 的差异明显）：独立演化的常微分方程轨迹会发生发散，对其端点取平均值会引入非物理的速度跳变。

速度融合则在积分过程中完成。通过为每个全局帧维护一个共享状态，并在每个常微分方程步骤中融合速度（见第 3.5 节），速度融合方法能够实现最低的整体

---

<div style="text-align: center;">Table 7. Overlap inference analysis. We compare fusion strategies across overlap sizes  $o \in \{0, 1, 2, 4\}$ on a random subset of the combined DexYCB (s0) and HOT3D (val) test set; all metrics are computed over this same mixed subset.  $c_1$ and  $c_{>1}$ denote acceleration error for frames covered by one and more-than-one window, respectively. Absolute values are not directly comparable to the single-benchmark Tables 1 and 2, but the comparison across fusion strategies is fair. Velocity blending eliminates boundary artifacts ( $c_1 \approx c_{>1}$) and improves reconstruction accuracy over the no-overlap baseline. Best per column in bold. Selected configuration (o=2) highlighted in light green.</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td style='text-align: center; word-wrap: break-word;'>Setting</td><td style='text-align: center; word-wrap: break-word;'>o</td><td style='text-align: center; word-wrap: break-word;'>Accel $\downarrow$</td><td style='text-align: center; word-wrap: break-word;'>$c_1$</td><td style='text-align: center; word-wrap: break-word;'>$c_{>1}$</td><td style='text-align: center; word-wrap: break-word;'>RA-MPJPE $\downarrow$</td><td style='text-align: center; word-wrap: break-word;'>WA-MPJPE $\downarrow$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>No overlap</td><td style='text-align: center; word-wrap: break-word;'>0</td><td style='text-align: center; word-wrap: break-word;'>4.49</td><td style='text-align: center; word-wrap: break-word;'>4.49</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>8.24</td><td style='text-align: center; word-wrap: break-word;'>12.76</td></tr><tr><td rowspan="3">Post-hoc avg</td><td style='text-align: center; word-wrap: break-word;'>1</td><td style='text-align: center; word-wrap: break-word;'>5.23</td><td style='text-align: center; word-wrap: break-word;'>4.48</td><td style='text-align: center; word-wrap: break-word;'>12.8</td><td style='text-align: center; word-wrap: break-word;'>8.28</td><td style='text-align: center; word-wrap: break-word;'>13.37</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>2</td><td style='text-align: center; word-wrap: break-word;'>6.74</td><td style='text-align: center; word-wrap: break-word;'>4.46</td><td style='text-align: center; word-wrap: break-word;'>18.9</td><td style='text-align: center; word-wrap: break-word;'>8.38</td><td style='text-align: center; word-wrap: break-word;'>13.59</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>4</td><td style='text-align: center; word-wrap: break-word;'>9.12</td><td style='text-align: center; word-wrap: break-word;'>4.45</td><td style='text-align: center; word-wrap: break-word;'>26.1</td><td style='text-align: center; word-wrap: break-word;'>8.55</td><td style='text-align: center; word-wrap: break-word;'>17.19</td></tr><tr><td rowspan="3">Velocity blend (ours)</td><td style='text-align: center; word-wrap: break-word;'>1</td><td style='text-align: center; word-wrap: break-word;'>4.35</td><td style='text-align: center; word-wrap: break-word;'>4.30</td><td style='text-align: center; word-wrap: break-word;'>5.18</td><td style='text-align: center; word-wrap: break-word;'>8.19</td><td style='text-align: center; word-wrap: break-word;'>13.23</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>2</td><td style='text-align: center; word-wrap: break-word;'>4.26</td><td style='text-align: center; word-wrap: break-word;'>4.19</td><td style='text-align: center; word-wrap: break-word;'>5.43</td><td style='text-align: center; word-wrap: break-word;'>8.13</td><td style='text-align: center; word-wrap: break-word;'>12.30</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>4</td><td style='text-align: center; word-wrap: break-word;'>4.18</td><td style='text-align: center; word-wrap: break-word;'>4.08</td><td style='text-align: center; word-wrap: break-word;'>5.86</td><td style='text-align: center; word-wrap: break-word;'>8.16</td><td style='text-align: center; word-wrap: break-word;'>11.97</td></tr></table>

加速误差，同时使边界帧误差接近内部帧水平（$c_1 \approx c_{>1}$），这证实了逐步骤融合能够防止轨迹发散，而非仅仅平滑其后续效应。采用 $o > 0$ 的速度融合方法在加速误差和 RA-MPJPE 两项指标上均优于无重叠基线，表明重叠观测提供了互补信息：窗口边缘附近的帧能受益于相邻窗口更丰富的时间上下文。我们选用 $o = 2$，它能在较低的窗口数量开销下，发挥出较大重叠尺寸带来的大部分优势。

## G 局限性

首先，$c_{mask}$机制将手部遮挡与手离开相机视野这两种情况混为一谈，因为两者都表现为HaMeR检测置信度较低。这两种场景存在本质差异：在部分遮挡情况下，生成式先验能够合理地补全缺失信息；但当手完全超出画面时，没有视觉证据可供参考，预测结果会显著变差，然而模型却无法检测到或标记这种故障模式。其次，重建质量取决于相机内参的准确性。当内参并非事先已知、必须通过ViPE在线估计时，相机运动有限的序列无法提供足够的几何约束来实现精确估计，从而导致重建质量大幅下降。

第三，由于HandFlow仅在MANO参数空间而非密集表面表示中运行，其精度既受限于MANO模型有限的表达能力，也受限于MANO格式标注的精确度——而这些标注本身就是对真实手部几何的有损近似。
