
# 3D-AMTA：基于自动掩码和令牌特定注意力的遮挡感知实时3D手部姿态估计

赵东方 $^{1}$、张梦鹤 $^{1}$、梁阳文 $^{1}$、王双全 $^{1}$、宋基峰 $^{1}$ 和 金东勋 $^{1}$

![Image](images/47789a1781ae6dd4a71a55c5dcabc3eedd60cc9ab452e2b24788f993ba6680de.jpg)

<div style="text-align: center;">Fig. 1: Monocular 3D hand mesh estimation and reconstruction in the wild with 3D-AMTA. (a) Selected results from FreiHAND [^1] and HO3D [^2] showcasing complex gestures and high-occlusion scenarios. (b)-(f) 3D-AMTA integrated into our smartphone application, VisibleHands, demonstrating on-device hand reconstruction using both front and back cameras under diverse lighting conditions and user tasks.</div>

摘要—由于遮挡和高关节活动度的影响，从单张RGB图像中理解手部运动极具挑战性。本文提出3D-AMTA，这是一种基于Transformer的框架，采用自动掩码和令牌特定注意力机制来实现遮挡感知的3D手部姿态估计（HPE）。我们提出了两项新颖的架构改进：针对高遮挡场景的自动掩码模块，以及用于精细手部关节建模的令牌特定注意力模块。这些模块能够无缝集成到基于Transformer的架构中，从而提升交互式系统的实时性能。为了便于在机器人和嵌入式平台上高效部署，我们提出了3D-AMTA-Mobile，这是一种针对设备端处理优化的轻量级变体。它在NVIDIA RTX 2080Ti GPU上的运行帧率可达267 FPS，同时还能保持高精度，因此非常适合资源受限的机器人应用场景。在FreiHAND和HO3D数据集上的大量实验表明，我们的方法在精度、效率和推理速度方面均显著优于现有最先进的方法。这些成果为交互式机器人和基于AR的远程操控提供了可靠的手部感知能力。

## I. 引言

精确的3D手部姿态估计（HPE）对于机器人抓取、远程操控和人机交互至关重要 [^3]，但由于现实环境中存在的遮挡和高度活动的手指运动，这一任务仍颇具挑战性。手部经常会自我遮挡、与物体相互作用，还会产生复杂的形变，这些因素都使得从单张RGB图像中估算精确的3D网格重建变得困难。

![Image](images/107f4827ac19696307442078b58ac627e7d60037565800c39976209be47e9c05.jpg)

<div style="text-align: center;">Fig. 2: 3D HPE Models Comparison: Speed vs. Accuracy. The marker size illustrates the model size.</div>

复杂的形变使得从单张RGB图像中估算精确的3D网格重建变得十分困难。

现有的3D HPE解决方案主要依赖基于CNN的架构，而近年来图卷积神经网络（GCNNs）和Transformer模块的应用则提升了性能。然而，这些方法往往难以应对遮挡问题。标准注意力机制会无差别地聚合特征，因此遮挡区域产生的误差可能会扩散至整个手部表示中。此外，在实际应用中，手部尺寸变化等因素会导致姿态估计出现歧义，这种现象通常被称为非对齐手部姿态。大多数现有方法忽略了这一问题，限制了其在实际场景中的鲁棒性。

---

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

<div style="text-align: center;">Fig. 3: Architecture of 3D-AMTA. The design of 3D-AMTA is based on a CNN-backbone Transformer-encoder architecture. We introduce Auto Mask module, which generates occlusion masks and applies them to tokens in the Token-specific-Attention (TA) encoder. The TA encoder integrates Transformer and GCNN modules to enhance articulated hand modeling.</div>

此外，世界坐标系变换会引入姿态估计中的歧义，这类情况通常被称为非对齐的手部姿态。大多数现有方法都忽略了这一问题，从而限制了它们在实际场景中的鲁棒性。

为解决这些难题，我们提出了3D-AMTA，这是一种用于遮挡感知3D HPE的基于Transformer的框架。我们引入了两项关键改进：自动掩码模块，可动态抑制由遮挡引起的噪声所产生的不可靠特征；令牌特定注意力机制，能够通过有效捕捉全局和局部依赖关系来优化精细关节建模。这些模块能够无缝集成到Transformer和图Transformer架构中，在FreiHAND [^1] 和 HO3D [^2] 数据集上均取得了最先进的性能。我们的主要贡献如下：

- 自动掩码模块。我们设计了该模块，通过在编码前过滤掉不可靠的特征来增强对遮挡情况的鲁棒性。

- 令牌特定注意力机制。我们引入了这种注意力编码器，通过捕捉结构依赖关系来优化关节手部姿态建模。

- 高效的实时部署。我们开发了3D-AMTA-Mobile，这是一种针对嵌入式和移动平台优化的轻量级变体，能够在保持高精度的同时实现实时性能。

如图1所示，3D-AMTA和3D-AMTA-Mobile在精度上均优于现有方法，其中移动版模型尺寸更小，效率却更高。因此，我们的工作为机器人、增强现实和远程操作领域实现了实时手部感知，成功将高保真3D建模与实际应用相结合。

### 二、相关工作

### A. 基于单张RGB图像的手部姿态估计

基于CNN的方法。由于CNN在提取局部特征方面表现优异，它一直是手部姿态估计的基础。早期的基于CNN的研究试图通过热图提取层和关键点回归层来提取2D特征并预测3D手部顶点 [^4]。这类模型擅长从RGB图像中提取局部特征，但在捕捉不同手部关节/顶点之间的全局关联方面存在不足 [^5]。

基于GCNN的方法。在CNN框架的基础上，GCNN模型引入了图结构来捕捉关节间的关联信息。然而，GCN模块在构建全局关系时，会从远距离的相邻手部关节/顶点引入大量噪声信息，从而导致生成的手部网格过于平滑 [^6]。预权重共享GCNN是一种改进机制，被应用于各种GCNN结构中 [^7], [^8]。不过，该机制在Transformer中的潜在影响尚未得到充分研究。

基于Transformer的方法。Transformer的出现提供了一种新思路，专注于特征间的长距离依赖与交互 [^9], [^10], [^11]。不过，它们在捕捉每个手部关节/顶点的局部特征以还原关键细节方面存在困难 [^5]。尽管取得了一定成果，但现有模型 [^12], [^4]（包括Graphormer [^5]）在处理遮挡和非对齐等复杂的现实场景时仍面临局限。这些模型在对齐图像上表现良好，此时可通过Procrustes对齐等预定义对齐方法，将预测的关节或顶点与真实值对齐后计算误差指标 [^13]。但现实场景往往并非对齐状态，因此预测出的关节或顶点误差指标需直接与真实值进行比较。Huang等人最近的研究成果 [^14] 采用隐式3D表示来定位3D手部关节，但这种隐式方法无法构建用于手部重建的显式网格。

### B. 掩码策略

掩码技术广泛应用于图像修复等问题中 [^15]，用于屏蔽会对网络产生干扰或毫无帮助的特征。同时，自遮挡和物体遮挡情况使得手部姿态估计问题更难解决。但与图像修复问题不同的是，遮挡区域并未预先给出。因此，我们提出对遮挡的手部关节/顶点进行估计。

---

![Image](images/88b4ce42091924d06d4014089844d46f379cc467f02aa4c7c572fbdfa2ff0036.jpg)

<div style="text-align: center;">Fig. 4: Auto Mask Module. The mask is automatically generated from input features using the Confidence Estimation Module and applied to tokens in the TA Encoder. The graphic adjacency matrix  $A^{J}$, is applied to update the mask in each encoder.</div>

借助带有自动生成掩码的自动掩码模块，对编码器中的特征进行屏蔽，以避免噪声特征的干扰。

### 三、方法介绍

### A. 模型概述

图3展示了3D-AMTA的架构，该架构能够从单张RGB图像中估计3D手部关节和网格顶点。首先，基于CNN的骨干网络提取图像特征，随后由自动掩码模块（第III-B节）对这些特征进行进一步细化，以生成考虑遮挡情况的掩码特征。这些经过掩码处理的特征与MANO手部模型模板一同作为令牌特定注意力（TA）编码器的输入（第III-C节）。TA编码器是一个堆叠式的基于Transformer的模块，它扩展了Graphormer [^5]，能够整合全局、局部和结构线索，从而实现更精确的手部姿态估计。此外，如果可用，相机内参以及手腕位置（或骨骼长度）也会被纳入令牌表示中，以便在存在深度歧义的野外图像中仍能实现尺度一致的3D重建。

### B. 自动掩码模块（AM）

骨干网络会提取用于解码器预测的手部关节和顶点特征。然而，遮挡现象会导致与遮挡物而非目标相关的错误特征被提取出来。为解决这一问题，我们提出了AM模块，该模块会选择性地掩码掉被遮挡关节或顶点的令牌，从而提高遮挡场景下的预测精度。

掩码生成。如图4所示，置信度估计模块会被应用于编码器的输出特征，以提取手部关节估计的置信度分数。通过设定阈值对置信度分数进行筛选后，即可得到相应的掩码。设某个手部顶点/关节的置信度分数为$c_j \in \mathcal{C}, j \in [1, N]$，其中N表示手部关节和顶点的数量。其真实值$c_j^{gt} \in \mathcal{C}^{gt}$、$j \in [1, N]$可表示为：

 $$ c_{j}^{g t}=\|\boldsymbol{p}_{j}^{3D}-\boldsymbol{p}_{j}^{3D,g t}\|,\forall j\in[1,N], $$

其中$p_j^{3D}$是估计出的3D手部姿态$j_{th}$中的$P^{3D} \in \{J, V\}$分量，$p_j^{3D,gt}$为真实值。

![Image](images/bb89f00e52609b27caf34b155f9938d119480916d2b0a9d74cbe28447f6879d3.jpg)

<div style="text-align: center;">Fig. 5: Token-Specific Transformation. Unlike standard self-attention, where the same weight matrix applied to all tokens, our approach assigns unique weights to each token based on the features adaptively.</div>

为防止所有特征都被掩码掉的情况，我们将阈值设为置信度的平均值：

 $$ m_{j}=c_{j}<\frac{\sum_{i=1}^{i=N}c_{i}}{N},\forall j\in[1,N]. $$

掩码应用。我们通过将掩码与TA编码器中的令牌相乘来将其应用到编码器中。这样一来，对应的手部关节/顶点令牌就会被视为被遮挡，模型将依据其他令牌的特征来估计该手部关节/顶点的位置。

 $$ \boldsymbol{X}_{j}^{^{\prime}}=m_{j}*\boldsymbol{X}_{j},\forall j\in[1,N]. $$

其中X和$X'$是TA编码器中的令牌特征（第一个令牌特征是由骨干网络从输入图像中提取的特征）。

掩码更新。利用手部和顶点关节的图邻接矩阵$A^{J}$（由MANO从手部和顶点关节模板中提取）来动态调整掩码：

 $$ m^{\prime}=A^{J}m $$

掩码$(m)$用于指示当前阶段某个令牌是否有效（包含被遮挡的特征）。更新规则如下：只要存在至少一个有效的相邻令牌，经过注意力传播后所有令牌都会被更新；如果所有相邻令牌都无效，那么它们在当前更新阶段后仍会保持无效状态。经过几次更新阶段后，掩码将完全有效。

### C. 令牌特定注意力（TA）

受预聚合GCNN方法[^16]的启发，我们将这一概念扩展到GCNN模块内的令牌级操作。为了进一步增强特征表示能力，我们引入了令牌特定注意力机制，该机制在多个堆叠的Transformer层中运行，每个阶段都会为每个令牌分配一个独特的变换权重。

标准的自注意力模块计算输出的方式为

 $$ Attention(\boldsymbol{Q},\boldsymbol{K},\boldsymbol{V})=softmax\left(\frac{\boldsymbol{Q}\boldsymbol{K}^{T}}{\sqrt{d_{k}}}\right)\boldsymbol{V}, $$

---

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td style='text-align: center; word-wrap: break-word;'>Model</td><td style='text-align: center; word-wrap: break-word;'>PJ (cm) $\downarrow$</td><td style='text-align: center; word-wrap: break-word;'>PV (cm) $\downarrow$</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><td style='text-align: center; word-wrap: break-word;'>PS (M) $\downarrow$</td><td style='text-align: center; word-wrap: break-word;'>GFLOPs $\downarrow$</td><td style='text-align: center; word-wrap: break-word;'>FPS $\uparrow$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>HaMuCo [^17]</td><td style='text-align: center; word-wrap: break-word;'>0.62</td><td style='text-align: center; word-wrap: break-word;'>0.67</td><td style='text-align: center; word-wrap: break-word;'>0.720</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;'>MobRecon [^4]</td><td style='text-align: center; word-wrap: break-word;'>0.61</td><td style='text-align: center; word-wrap: break-word;'>0.63</td><td style='text-align: center; word-wrap: break-word;'>0.758</td><td style='text-align: center; word-wrap: break-word;'>0.983</td><td style='text-align: center; word-wrap: break-word;'>32.70</td><td style='text-align: center; word-wrap: break-word;'>4.54</td><td style='text-align: center; word-wrap: break-word;'>76.7</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Graphormer [^5]</td><td style='text-align: center; word-wrap: break-word;'>0.59</td><td style='text-align: center; word-wrap: break-word;'>0.60</td><td style='text-align: center; word-wrap: break-word;'>0.764</td><td style='text-align: center; word-wrap: break-word;'>0.986</td><td style='text-align: center; word-wrap: break-word;'>187.52</td><td style='text-align: center; word-wrap: break-word;'>82.81</td><td style='text-align: center; word-wrap: break-word;'>4.2</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Ours</td><td style='text-align: center; word-wrap: break-word;'>0.58</td><td style='text-align: center; word-wrap: break-word;'>0.59</td><td style='text-align: center; word-wrap: break-word;'>0.772</td><td style='text-align: center; word-wrap: break-word;'>0.987</td><td style='text-align: center; word-wrap: break-word;'>256.66</td><td style='text-align: center; word-wrap: break-word;'>124.01</td><td style='text-align: center; word-wrap: break-word;'>2.8</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Ours (mobile)</td><td style='text-align: center; word-wrap: break-word;'>0.78</td><td style='text-align: center; word-wrap: break-word;'>0.79</td><td style='text-align: center; word-wrap: break-word;'>0.336</td><td style='text-align: center; word-wrap: break-word;'>0.837</td><td style='text-align: center; word-wrap: break-word;'>12.65</td><td style='text-align: center; word-wrap: break-word;'>1.30</td><td style='text-align: center; word-wrap: break-word;'>267</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>†WiLoR [^18]</td><td style='text-align: center; word-wrap: break-word;'>0.55</td><td style='text-align: center; word-wrap: break-word;'>0.51</td><td style='text-align: center; word-wrap: break-word;'>0.825</td><td style='text-align: center; word-wrap: break-word;'>0.993</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;'>†Hamba [^19]</td><td style='text-align: center; word-wrap: break-word;'>0.57</td><td style='text-align: center; word-wrap: break-word;'>0.53</td><td style='text-align: center; word-wrap: break-word;'>0.806</td><td style='text-align: center; word-wrap: break-word;'>0.992</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;'>†MPT [^12]</td><td style='text-align: center; word-wrap: break-word;'>0.54</td><td style='text-align: center; word-wrap: break-word;'>0.56</td><td style='text-align: center; word-wrap: break-word;'>0.789</td><td style='text-align: center; word-wrap: break-word;'>0.988</td><td style='text-align: center; word-wrap: break-word;'>187.52</td><td style='text-align: center; word-wrap: break-word;'>82.81</td><td style='text-align: center; word-wrap: break-word;'>4.2</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>†MobRecon [^4]</td><td style='text-align: center; word-wrap: break-word;'>0.57</td><td style='text-align: center; word-wrap: break-word;'>0.58</td><td style='text-align: center; word-wrap: break-word;'>0.784</td><td style='text-align: center; word-wrap: break-word;'>0.986</td><td style='text-align: center; word-wrap: break-word;'>32.70</td><td style='text-align: center; word-wrap: break-word;'>4.54</td><td style='text-align: center; word-wrap: break-word;'>76.7</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>†Ours</td><td style='text-align: center; word-wrap: break-word;'>0.19</td><td style='text-align: center; word-wrap: break-word;'>0.17</td><td style='text-align: center; word-wrap: break-word;'>0.993</td><td style='text-align: center; word-wrap: break-word;'>1.000</td><td style='text-align: center; word-wrap: break-word;'>256.66</td><td style='text-align: center; word-wrap: break-word;'>124.01</td><td style='text-align: center; word-wrap: break-word;'>2.8</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>†Ours (mobile)</td><td style='text-align: center; word-wrap: break-word;'>0.43</td><td style='text-align: center; word-wrap: break-word;'>0.45</td><td style='text-align: center; word-wrap: break-word;'>0.856</td><td style='text-align: center; word-wrap: break-word;'>0.999</td><td style='text-align: center; word-wrap: break-word;'>12.65</td><td style='text-align: center; word-wrap: break-word;'>1.30</td><td style='text-align: center; word-wrap: break-word;'>267</td></tr></table>

<div style="text-align: center;">TABLE I: Performance comparison of 3D-AMTA and 3D-AMTA-Mobile with SOTA models on FreiHAND [^1] dataset. Performance reported under the aligned evaluation category with best results highlighted in bold. All benchmarks are conducted with NVIDIA RTX 2080Ti-GPU. † Indicates models trained with additional data.</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td style='text-align: center; word-wrap: break-word;'>Model</td><td style='text-align: center; word-wrap: break-word;'>PJ $\downarrow$</td><td style='text-align: center; word-wrap: break-word;'>PV $\downarrow$</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 colspan="5">Aligned</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Graphormer [^5]</td><td style='text-align: center; word-wrap: break-word;'>1.24</td><td style='text-align: center; word-wrap: break-word;'>1.26</td><td style='text-align: center; word-wrap: break-word;'>0.426</td><td style='text-align: center; word-wrap: break-word;'>0.924</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>AMVUR [^20]</td><td style='text-align: center; word-wrap: break-word;'>0.87</td><td style='text-align: center; word-wrap: break-word;'>0.83</td><td style='text-align: center; word-wrap: break-word;'>0.593</td><td style='text-align: center; word-wrap: break-word;'>0.964</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Keypoint-T [^21]</td><td style='text-align: center; word-wrap: break-word;'>1.09</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;'>Ours</td><td style='text-align: center; word-wrap: break-word;'>0.93</td><td style='text-align: center; word-wrap: break-word;'>0.87</td><td style='text-align: center; word-wrap: break-word;'>0.582</td><td style='text-align: center; word-wrap: break-word;'>0.962</td></tr><tr><td colspan="5">Non-Aligned</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>NVF [^14]</td><td style='text-align: center; word-wrap: break-word;'>2.32</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;'>Graphormer [^5]</td><td style='text-align: center; word-wrap: break-word;'>2.80</td><td style='text-align: center; word-wrap: break-word;'>2.60</td><td style='text-align: center; word-wrap: break-word;'>0.233</td><td style='text-align: center; word-wrap: break-word;'>0.700</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Keypoint-T [^21]</td><td style='text-align: center; word-wrap: break-word;'>2.48</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;'>Ours</td><td style='text-align: center; word-wrap: break-word;'>2.30</td><td style='text-align: center; word-wrap: break-word;'>2.20</td><td style='text-align: center; word-wrap: break-word;'>0.308</td><td style='text-align: center; word-wrap: break-word;'>0.774</td></tr></table>

<div style="text-align: center;">TABLE II: Performance comparison of 3D-AMTA with SOTA on the HO3Dv3 dataset [^2]. Results are reported under both the aligned and non-aligned categories.</div>

其中，Q、K和V分别代表查询矩阵、键矩阵和值矩阵，而 $d_{k}$ 表示隐藏特征维度。

如图5所示，传统的Transformer在从隐藏特征X计算值矩阵V时，会对所有标记使用相同的权重矩阵 $W^V$。

 $$ \boldsymbol{V}_{t}=\boldsymbol{X}_{t}\boldsymbol{W}^{V} $$

相比之下，我们提出的基于标记的特定注意力机制会为每个标记分配独特的权重矩阵 $W_t^V$。

 $$ \begin{array}{r}{V_{t}=X_{t}W_{t}^{V},}\end{array} $$

其中，$W_{t}^{V}$ 是针对 $t^{th}$ 标记的特定权重矩阵。这种方法使模型能够自适应地转换每个标记的特征，从而更有效地捕捉各种手部姿态的变化。

### 四、实验

### A. 实现细节

3D-AMTA以HRNet-w64 [^22] 作为骨干网络。TA编码器由12层组成，每层包含4个多头自注意力（MHSA）头。为了高效表示手部姿态，编码器采用了渐进式特征压缩策略，在四个编码阶段中分别使用1024、256、64和16的隐藏特征维度。自动生成的掩码应用于前两个编码器，而基于标记的特定注意力机制则被整合到第三和第四个编码器中。

对于3D-AMTA-Mobile，我们在保持核心精度的同时优化了模型的实时性能。我们并未采用HRNet-w64，而是选用了VAN-B0 [^23] 作为骨干网络，该网络能在参数数量显著减少的情况下仍保持较高的特征提取精度。为提升效率，我们减少了TA编码器中Transformer层的数量，从2层逐步增加到4层以实现分层特征提取。此外，我们通过逐步缩小隐藏特征维度（512 → 256 → 64 → 16）来压缩特征表示，从而在保留关键姿态信息的同时降低内存占用。

我们的模型训练时采用了针对3D手部顶点的 $L_1$ 损失函数，以及针对3D手部关节、2D手部关节和2D手部顶点的 $L_2$ 损失函数。优化器选用了带权重衰减的自适应矩估计算法（AdamW）[^24]。3D-AMTA在八个NVIDIA A100 GPU上训练，前150个周期的学习率为 $1e^{-4}$，后50个周期的学习率为 $1e^{-5}$，批量大小设为 $B = 32$。

我们在FreiHAND和HO3Dv3基准测试上对3D-AMTA和3D-AMTA-Mobile进行了全面评估，以检验它们的性能。

### B. 评估标准

我们选择FreiHAND [^1] 和HO3Dv3 [^2] 数据集，在具有挑战性的真实场景条件下评估我们的方法。这些数据集包含了多样化的自然场景，涉及复杂的手部关节运动、不同的视角以及严重的遮挡情况。

遵循标准的3D手部姿态估计基准测试方法，我们从“对齐”和“非对齐”两类手部姿态来评估模型性能。

在“对齐”类别中，预测得到的关节或顶点会通过预定义的对齐方法进行调整，例如Procrustes对齐或平移-缩放对齐。这些方法通过平移、缩放和旋转操作来最小化预测结果与真实值之间的最小二乘误差，从而补偿全局差异。这种对齐方式有助于更可控地评估相对手部姿态。

---

![Image](images/5c18119673491b572128bd11f24663fb614cb586657de29d08dc1bfd3ea2af21.jpg)

<div style="text-align: center;">Fig. 6: Comparisons with the Graphormer [^5] on FreiHand [^1] and HO3Dv3 dataset. The ground truth hand joint locations are marked with white hollow circles, while the predicted locations are marked with white solid circles.</div>

关节活动精度不受场景中手部位置和缩放的影响。在FreiHAND[^1]和HO3Dv3[^2]数据集中，对齐评估设置中会应用Procrustes对齐[^13]，将估计的手部姿态与真实值对齐；某些情况下也会采用基于根节点的对齐和缩放对齐方式。

## 我们的评估指标包括

在“未对齐”类别中，不应用任何对齐技术，这意味着预测结果会直接与世界空间中的真实值进行比较。这要求模型能够估计绝对的3D手部姿态，包括位置、缩放和方向，因此更能反映现实场景的情况。模型在该类别下的表现，体现了其在不依赖后期处理对齐的情况下生成具备尺度与空间感知能力的3D手部重建结果的能力。

$\underline{\text{PJ/PV}}$通过估计坐标与真实坐标之间的欧几里得距离（单位：厘米）来衡量每个关节/顶点的平均位置误差；

$\underline{\text{F@5/F@15}}$用于衡量F分数，即两个网格在5毫米或15毫米距离阈值下的召回率与精确度的调和平均值。

PS（M）和GFLOPs分别表示模型的参数规模（百万个）和浮点运算次数（十亿次）。FPS代表模型的推理速度，单位为帧/秒，该数值是基于NVIDIA RTX 2080 Ti GPU的计算能力测得的。

### C. 实验结果

我们在FreiHAND[^1]（表I）和HO3Dv3[^2]（表II）数据集上的定量结果，证明了3D-AMTA的有效性。在FreiHAND数据集上，3D-AMTA的PJ和PV误差显著降低，同时在$F@5/F@15$阈值下的表现也优于其他模型，这凸显了其在精细手部网格重建方面更高的精度。

![Image](images/f1420696161095ab28e7814bebeb95259af7cd247764c0b7d10bdd05b40be950.jpg)

<div style="text-align: center;">Fig. 7: Ablation study of AM module tackling high occlusion cases from HO3Dv3 dataset. Comparisons among the Graphormer [^5], the Baseline (the 3D-AMTA without the AM module), and the full 3D-AMTA.</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td style='text-align: center; word-wrap: break-word;'>Design</td><td style='text-align: center; word-wrap: break-word;'>E2</td><td style='text-align: center; word-wrap: break-word;'>E3</td><td style='text-align: center; word-wrap: break-word;'>E4</td><td style='text-align: center; word-wrap: break-word;'>PJ $\downarrow$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Baseline</td><td style='text-align: center; word-wrap: break-word;'>x</td><td style='text-align: center; word-wrap: break-word;'>x</td><td style='text-align: center; word-wrap: break-word;'>x</td><td style='text-align: center; word-wrap: break-word;'>0.590</td></tr><tr><td rowspan="3">MHSA-TA</td><td style='text-align: center; word-wrap: break-word;'>x</td><td style='text-align: center; word-wrap: break-word;'>x</td><td style='text-align: center; word-wrap: break-word;'>o</td><td style='text-align: center; word-wrap: break-word;'>0.579</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>x</td><td style='text-align: center; word-wrap: break-word;'>o</td><td style='text-align: center; word-wrap: break-word;'>o</td><td style='text-align: center; word-wrap: break-word;'>0.578</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>o</td><td style='text-align: center; word-wrap: break-word;'>o</td><td style='text-align: center; word-wrap: break-word;'>o</td><td style='text-align: center; word-wrap: break-word;'>0.580</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>GCNN-TA</td><td style='text-align: center; word-wrap: break-word;'>x</td><td style='text-align: center; word-wrap: break-word;'>x</td><td style='text-align: center; word-wrap: break-word;'>o</td><td style='text-align: center; word-wrap: break-word;'>0.580</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>MHSA-TA</td><td style='text-align: center; word-wrap: break-word;'>x</td><td style='text-align: center; word-wrap: break-word;'>o</td><td style='text-align: center; word-wrap: break-word;'>o</td><td style='text-align: center; word-wrap: break-word;'>0.577</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>GCNN-TA</td><td style='text-align: center; word-wrap: break-word;'>x</td><td style='text-align: center; word-wrap: break-word;'>x</td><td style='text-align: center; word-wrap: break-word;'>o</td><td style='text-align: center; word-wrap: break-word;'></td></tr></table>

<div style="text-align: center;">TABLE III: Ablation study on Token-specific Attention (-TA) in MHSA and GCNN blocks on FreiHAND dataset. 'E#' denotes the encoder index. 'x' indicates that TA is not applied to the specified encoder, while 'o' denotes that it is applied.</div>

与此同时，3D-AMTA-Mobile在确保实时移动端部署能力的同时，性能也超越了以往的最优模型。

在HO3Dv3数据集上，3D-AMTA持续降低了PJ和PV误差，进一步证明了其在不同数据集上的鲁棒性。在复杂的遮挡场景下，与以往的方法相比，我们的模型在关节和顶点对齐方面表现明显更优（图6），这体现了其有效处理部分可见手部的能力。

### V. 消融实验

我们还在FreiHAND[^1]和HO3Dv3[^2]数据集上开展了广泛的消融实验，以分析我们所提出的设计选择所产生的影响。

## Transformer和GCNN中的TA机制

我们将我们的模型与使用标准注意力机制的基线编码器进行对比，后者中所有标记共享相同的变换过程，且不包含TA机制。如表III所示，引入TA机制后关节估计精度得到提升，PJ误差降低了0.013厘米。这一结果证明了允许编码器自适应地处理不同类型的标记、从而更有效地捕捉精细的关节活动细节的优势。

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td style='text-align: center; word-wrap: break-word;'>Design</td><td style='text-align: center; word-wrap: break-word;'>E1</td><td style='text-align: center; word-wrap: break-word;'>E2</td><td style='text-align: center; word-wrap: break-word;'>E3</td><td style='text-align: center; word-wrap: break-word;'>E4</td><td style='text-align: center; word-wrap: break-word;'>PJ $\downarrow$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Baseline</td><td style='text-align: center; word-wrap: break-word;'>x</td><td style='text-align: center; word-wrap: break-word;'>x</td><td style='text-align: center; word-wrap: break-word;'>x</td><td style='text-align: center; word-wrap: break-word;'>x</td><td style='text-align: center; word-wrap: break-word;'>1.180</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>+camera intrinsic</td><td style='text-align: center; word-wrap: break-word;'>x</td><td style='text-align: center; word-wrap: break-word;'>x</td><td style='text-align: center; word-wrap: break-word;'>x</td><td style='text-align: center; word-wrap: break-word;'>x</td><td style='text-align: center; word-wrap: break-word;'>0.959</td></tr><tr><td rowspan="3">+Auto Mask</td><td style='text-align: center; word-wrap: break-word;'>o</td><td style='text-align: center; word-wrap: break-word;'>x</td><td style='text-align: center; word-wrap: break-word;'>x</td><td style='text-align: center; word-wrap: break-word;'>x</td><td style='text-align: center; word-wrap: break-word;'>0.942</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>o</td><td style='text-align: center; word-wrap: break-word;'>o</td><td style='text-align: center; word-wrap: break-word;'>x</td><td style='text-align: center; word-wrap: break-word;'>x</td><td style='text-align: center; word-wrap: break-word;'>0.929</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>o</td><td style='text-align: center; word-wrap: break-word;'>o</td><td style='text-align: center; word-wrap: break-word;'>o</td><td style='text-align: center; word-wrap: break-word;'>x</td><td style='text-align: center; word-wrap: break-word;'>0.946</td></tr></table>

<div style="text-align: center;">TABLE IV: Ablation study on the AM module on HO3Dv3.</div>

---

此外，我们还分析了TA机制在多阶段编码流程中的最佳放置位置。结果表明，将其应用于第三和第四个TA编码器中时性能最佳。这说明早期编码阶段更适合采用通用的全局注意力机制，而后期阶段则需要更专门的特征细化步骤，才能准确捕捉关节活动细节。

## 自动掩码（AM）模块

为了评估AM模块以及相机内参引入的有效性，我们在HO3Dv3数据集上进行了实验。为了公平比较，我们将采用TA处理后的Graphormer [^5]作为基线模型。如表IV所示，将相机内参融入编码器后，手部姿态估计的精度得到了提升，尤其是对手部顶点的估计效果更为显著。此外，AM模块进一步将关节估计误差降低了0.02厘米。图7对比了在高遮挡条件下，Graphormer [^5]、基线模型（带TA的Graphormer）以及3D-AMTA之间的定性结果。

### VI. 结论与未来工作

我们进一步分析了Auto Mask模块在编码阶段的不同放置位置。如表IV所示，我们逐步将AM模块应用于从第一个编码器（E1）到全部四个编码器（E1-E4）的过程。结果表明，当Auto Mask应用于前两个编码器（E1-E2）时性能达到峰值；若进一步扩展到E3-E4，精度反而会下降。这说明过度掩码会抑制编码过程中有价值的标记，阻碍其从全局注意力机制中获取更新信息，进而导致性能下降。

我们提出了3D-AMTA——一种基于Transformer的遮挡感知型3D手部姿态估计框架，同时还有专为实时部署优化的变体3D-AMTA-Mobile。借助Auto Mask模块和基于标记的注意力机制，我们的方法能够有效应对遮挡、精细关节运动以及尺度一致性等问题，在FreiHAND和HO3Dv3基准测试中均取得了业界领先的性能。

未来的工作应探索用于视频手部跟踪的时间建模方法，以提升动态交互场景下的一致性与鲁棒性。虽然3D-AMTA-Mobile已具备移动端部署的可行性，但将其拓展至人机交互和远程操控领域将进一步放大其实际应用价值。推进时间域优化、设备端效率提升以及机器人感知能力的发展，将助力其在现实交互系统中发挥更大作用。

## 参考文献

[^1]: C. Zimmermann, D. Ceylan, J. Yang, B. Russell, M. Argus, and T. Brox, "FreiHAND: A dataset for markerless capture of hand pose and shape from single rgb images," in IEEE/CVF Conference on International Conference on Computer Vision (ICCV), 2019, pp. 813–822.

[^2]: S. Hampali, S. D. Sarkar, and V. Lepetit, "Ho-3d_v3: Improving the accuracy of hand-object annotations of the ho-3d dataset," arXiv preprint arXiv:2107.00887, 2021.

[^3]: R. Li, Z. Liu, and J. Tan, “A survey on 3d hand pose estimation: Cameras, methods, and datasets,” Pattern Recognition, vol. 93, pp. 251–272, 2019.

[^4]: X. Chen, Y. Liu, Y. Dong, X. Zhang, C. Ma, Y. Xiong, Y. Zhang, and X. Guo, "Mobrecon: Mobile-friendly hand mesh reconstruction from monocular image," arXiv preprint arXiv:2112.02753, 2021.

[^5]: K. Lin, L. Wang, and Z. Liu, "Mesh graphormer," in IEEE/CVF Conference on International Conference on Computer Vision (ICCV), 2021, pp. 12939–12948.

[^6]: D. Kong, H. Ma, and X. Xie, “Sia-gcn: A spatial information aware graph neural network with 2d convolutions for hand pose estimation,” arXiv preprint arXiv:2009.12473, 2020.

[^7]: K. Liu, R. Ding, Z. Zou, L. Wang, and W. Tang, “A comprehensive study of weight sharing in graph networks for 3d human pose estimation,” in European Conference on Computer Vision (ECCV). Springer, 2020, pp. 318–334.

[^8]: Z. Zou and W. Tang, "Modulated graph convolutional network for 3d human pose estimation," in IEEE/CVF Conference on International Conference on Computer Vision (ICCV), 2021, pp. 11477–11487.

[^9]: D. Gao, B. Zhang, Q. Wang, X. Zhang, P. Pan, and Y. Xu, “Scat: Stride consistency with auto-regressive regressor and transformer for hand pose estimation,” in IEEE/CVF Conference on International Conference on Computer Vision (ICCV), 2021, pp. 2266–2275.

[^10]: S. Hampali, S. D. Sarkar, M. Rad, and V. Lepetit, “Handsformer: Keypoint transformer for monocular 3d pose estimation of hands and object in interaction,” arXiv preprint arXiv:2104.14639, 2021.

[^11]: T. H. E. Tse, F. Mueller, Z. Shen, D. Tang, T. Beeler, M. Dou, Y. Zhang, S. Petrovic, H. J. Chang, J. Taylor, et al., “Spectral graphormer: Spectral graph-based transformer for egocentric two-hand reconstruction using multi-view color images,” in Proceedings of the IEEE/CVF International Conference on Computer Vision, 2023, pp. 14666–14677.

[^12]: K. Lin, C.-C. Lin, L. Liang, Z. Liu, and L. Wang, “Mpt: Mesh pretraining with transformers for human pose and mesh reconstruction,” arXiv preprint arXiv:2211.1357, 2022.

[^13]: P. H. Schönemann, “A generalized solution of the orthogonal procrustes problem,” Psychometrika, vol. 31, no. 1, pp. 1–10, 1966.

[^14]: L. Huang, C.-C. Lin, K. Lin, L. Liang, L. Wang, J. Yuan, and Z. Liu, “Neural voting field for camera-space 3d hand pose estimation,” in Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, 2023, pp. 8969–8978.

[^15]: W. Li, Z. Lin, K. Zhou, L. Qi, Y. Wang, and J. Jia, “Mat: Mask-aware transformer for large hole image inpainting,” in Proceedings of the IEEE/CVF conference on computer vision and pattern recognition, 2022, pp. 10758–10768.

[^16]: T. N. Kipf and M. Welling, “Semi-supervised classification with graph convolutional networks,” arXiv preprint arXiv:1609.02907, 2016.

[^17]: X. Zheng, C. Wen, Z. Xue, P. Ren, and J. Wang, “Hamuco: Hand pose estimation via multiview collaborative self-supervised learning,” in Proceedings of the IEEE/CVF International Conference on Computer Vision, 2023, pp. 20763–20773.

[^18]: R. A. Potamias, J. Zhang, J. Deng, and S. Zafeiriou, "Wilor: End-to-end 3d hand localization and reconstruction in-the-wild," in Proceedings of the Computer Vision and Pattern Recognition Conference, 2025, pp. 12242–12254.

[^19]: H. Dong, A. Chharia, W. Gou, F. Vicente Carrasco, and F. D. De la Torre, “Hamba: Single-view 3d hand reconstruction with graph-guided bi-scanning mamba,” Advances in Neural Information Processing Systems, vol. 37, pp. 2127–2160, 2024.

[^20]: Z. Jiang, H. Rahmani, S. Black, and B. M. Williams, “A probabilistic attention model with occlusion-aware texture regression for 3d hand reconstruction from a single rgb image,” in Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, 2023, pp. 758–767.

[^21]: S. Hampali, S. D. Sarkar, M. Rad, and V. Lepetit, “Keypoint transformer: Solving joint identification in challenging hands and object interactions for accurate 3d pose estimation,” in Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, 2022, pp. 11090–11100.

[^22]: K. Sun, B. Xiao, D. Liu, and J. Wang, “Deep high-resolution representation learning for human pose estimation,” in IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR), 2019, pp. 5693–5703.

[^23]: M.-H. Guo, C.-Z. Lu, Z.-N. Liu, M.-M. Cheng, and S.-M. Hu, "Visual attention network," arXiv preprint arXiv:2202.09741, 2022.

[^24]: I. Loshchilov and F. Hutter, “Decoupled weight decay regularization,” arXiv preprint arXiv:1711.05101, 2017.
