
# HaMuCo：基于多视角协作自监督学习的手部姿态估计

郑晓正 $^{1,2}$ 陈超 $^{2}$ 薛周 $^{2}$ 任鹏飞 $^{1,2}$ 王景宇 $^{1}$

 $^{1}$ 北京邮电大学网络与交换技术国家重点实验室

 $^{2}$ 字节跳动PICO IDL，北京

## 摘要

近年来，3D手部姿态估计取得了令人瞩目的成果，但其有效性主要依赖于大规模标注数据集的可用性，而这类数据集的制作过程既费时又成本高昂。为了缓解对标签的严重依赖问题，我们提出了一种自监督学习框架HaMuCo，它利用多视角的伪2D标签来训练单视角手部姿态估计器。不过，自监督学习面临的主要挑战之一是噪声标签的存在以及多视角带来的“群体思维”效应。为解决这些问题，我们引入了跨视角交互网络，该网络通过利用跨视角相关特征来优化单视角估计器，并强制实现多视角一致性，从而达到协作学习的效果。单视角估计器和跨视角交互网络会以端到端的方式联合训练。大量实验表明，我们的方法在多视角自监督手部姿态估计任务上能够取得最先进的性能。此外，所提出的跨视角交互网络也可应用于基于多视角输入的手部姿态估计，在相同设置下其性能优于以往的方法。

### 1. 引言

3D手部姿态估计在诸多应用场景中都至关重要，从动作识别、手语翻译到AR/VR [^20] [^21] 均是如此。近年来，手部姿态估计技术取得了显著进步，但这一进展严重依赖于大量带有精确3D标注的手部姿态数据集的出现。获取标注数据集的过程十分耗时费力，这就给深度学习模型在有限且含噪的数据上学习带来了现实挑战。

自监督学习是应对人工标注难题的新兴解决方案。尽管值得探索，但基于RGB手部图像的自监督姿态估计仍是一个极具挑战性且研究相对匮乏的领域，目前仅有S²HAND [^10] 这一开创性方法。S²HAND旨在利用带有噪声的现成2D手部姿态估计结果（OpenPose）作为监督信号，从单张RGB图像中重建3D手部模型。遗憾的是，S²HAND的性能严重依赖于伪标签的质量，质量较差的标签会导致性能下降。此外，评估伪标签的质量属于一个定义不明确的问题，缺乏清晰的标准或依据，进一步加剧了这一难题。

这一发现促使我们利用多视角信息来增强自监督学习，因为多视角观测的互补性有助于消除姿态估计中固有的歧义。虽然首个带有同步多视角输入的3D手部数据集（HanCo [^66]）于2021年就被提出，但据我们所知，此前尚无研究探索多视角在自监督手部姿态估计中的潜力。因此，我们转向了人体姿态估计领域的相关研究，二者存在一定的相似性。

如先前研究[^27]所述，单纯强制多视角一致性容易产生退化的解决方案，因此研究人员借助无关数据集的额外二维标签，提出了一种在弱监督学习框架下的解决方案。其他研究，例如EpipolarPose [^30]和CanonPose [^56]，则利用具有特殊设计的多视角数据来增强监督效果，并在自监督学习领域取得了令人瞩目的成果。

在本文中，我们沿着这一方向推进基于多视角协作学习的人手姿态估计研究。我们更进一步，设计了一个可学习的网络来利用多视角信息，以解决：1）噪声伪标签问题；2）训练初期导致的不可靠多视角“从众效应”引发的训练崩溃问题。正式而言，我们将这一流程命名为HaMuCo，即人手多视角协作学习。

我们方法的核心思想是通过跨视角特征交互来增强单—

---

![Image](images/ff2a41153594d85a4c10ad4c84aed61b779f6c25f0620d19d6b314940090ad26.jpg)

<div style="text-align: center;">Figure 1. Overall pipeline comparison: HaMuCo learns a monocular 3D hand pose estimator from multi-view self-supervision via cross-view feature interaction. Our cross-view interaction network addresses the importance of introducing learnable feature interaction, which is absent from previous methods [^30] [^56]. At inference time only the gray part is applied.</div>

视角估计，进而整合多视角结果来约束单视角输出，从而实现端到端形式的自我蒸馏。因此，我们的框架由单视角人手姿态估计器和用于监督的跨视角交互网络构成。单视角估计器采用MANO [^48]人手模型作为解码器，当受到噪声伪标签的监督时，该模型能提供人手先验以修正不合理的解剖结构。跨视角交互网络负责捕捉跨视角特征，并利用不同视角间的多种一致性损失来指导协作学习。

我们在HanCo [^66]数据集上进行了全面的实验，结果表明在自监督3D人手姿态估计任务中，我们的方法相比以往方法具有显著优势。值得注意的是，与Chen等人[^8]提出的顶尖全监督方法相比，我们的性能也颇具竞争力。我们提出的框架具有极高的通用性：它既可以在有校准的情况下训练，也可以在无校准条件下训练；一旦有可用的多视角测试数据，就能通过集成跨视角交互网络来获得更优的多视角推理结果。此外，我们的模型还能很好地泛化到其他数据集[^32] [^49] [^68]以及真实场景图像中。

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

- 我们提出了首个无需任何训练数据标注的单视角人手姿态估计自监督学习框架，通过多视角协作学习实现了顶尖的性能，且无需复杂的额外组件即可达到这一水平。

- 我们提出了一种跨视角交互网络，通过强制多视角一致性并捕捉跨视角特征来监督单视角估计器，从而实现多个视角间的协作学习。

- 所提出的框架能够通过集成跨视角交互—

### 2. 相关工作

手部姿态估计。根据输入模态的不同，手部姿态估计可分为基于RGB的方法[^26] [^53] [^67]和基于深度的方法[^15] [^16] [^39]。在本文中，我们重点关注基于RGB的手部姿态估计。基于RGB的方法可进一步分为三类：基于骨架的方法[5,13,26,34,41,42,52,53,59–61,67]、基于模型的方法[^1] [^2] [^4] [^10] [^62] [^63] [^68]，以及基于网格的方法[^8] [^9] [^11] [^17] [^31] [^33] [^35] [^36] [^40] [^54] [^65]。基于骨架的方法直接回归手部关节。Zimmermann等人[^67]提出了一种多阶段网络，将回归出的2D关节点提升至3D坐标。变分自编码器[^29]被用于学习跨模态隐空间，以实现更精准的手部姿态估计和特征解耦[^53] [^60] [^61]。[^26]证明，对于手部而言，隐式2.5D表示回归比直接坐标回归更有效，这一方法也被[^14] [^34] [^52] [^65]所采用。也有许多研究致力于解决双手交互情况下的手部姿态估计问题[^14] [^32] [^41]，以及手与物体交互情况下的姿态估计问题[^2] [^13] [^32]。近期的基于模型的方法会利用MANO[^48]，该方法能够融入手部先验并同时预测手部网格。这些方法[^1] [^4] [^10] [^62] [^63]依赖于额外的监督信息[^1] [^4] [^10] [^62] [^63]或输入[^4]。相比之下，基于网格的方法直接回归每个顶点，虽然精度更高，但需要包含手部网格标注的大规模数据集[^19] [^32] [^41] [^68]。这类方法大多采用图卷积网络（GCN）[^8] [^9] [^11] [^17] [^31] [^54] [^65]、Transformer[^35]或两者结合[^33] [^36]来进行回归。I2L-MeshNet[^40]通过预测三个轴的1D热图来回归每个顶点。Chen等人[^7]则使用图像到图像的转换网络来预测网格的UV映射。与以往的研究类似[^33] [^36]，我们也使用了Transformer和GCN，不过我们将其用于跨视角交互。

---

用于跨视角交互。

多视角全监督姿态估计。为了以全监督方式解决遮挡和深度模糊问题，人们广泛利用多视角信息来提升3D人体姿态估计的效果[3, 24, 28, 44–46, 50, 64]。基于体素的方法[^28] [^44] [^45] [^55]会将关节的2D特征或热图反投影到3D空间中进行估计。另一类方法[^24] [^46] [^64]则利用几何信息直接在2D空间内高效融合特征。近期，一些研究[^38] [^50]采用Transformer来实现无需相机外参的隐式跨视角融合。

标签高效学习。标签高效学习旨在减少3D标签的需求。许多研究致力于以标签高效的方式解决手部姿态估计问题[^1] [^4] [^5] [^8] [^10] [^42] [^52] [^59] [^63] [^67]。合成数据可用于避免人工标注[^8] [^42] [^67]，但可能需要进行域迁移[^42]。或者采用弱监督学习[^4] [^52]，通过人工标注2D标签来辅助获取手部先验，从而得到3D结果。3D姿态估计领域也探索了多视角标签高效学习方法[^27] [^30] [^47] [^56]。Rhodin等人[^47]训练了一个仅需少量带标签的3D数据和多视角一致性约束的半监督网络。Iqbal等人[^27]则将单视角图像与2D标签以及无标签的多视角图像混合用于训练。我们的目标与以往方法一致，即无需任何人工标注的3D标签即可完成训练。

自监督3D姿态估计。(1) 单视角训练与推理。据我们所知，目前仅有一种由Chen等人[^10]提出的自监督3D手部姿态估计方法。他们的框架S $^{2}$Hand仅使用单视角的2D噪声标签进行训练，并通过渲染实现自监督。不过，由于使用了单视角信息且噪声标签质量有限，其性能受到限制。(2) 多视角训练、单视角推理。我们的方法属于这一类别，但与现有方法存在本质区别。EpipolarPose [^30]根据极线几何关系将多视角的2D伪标签三角测量为3D标签用于训练。CanonPose [^56]则在多视角一致性约束下，学习将2D伪标签映射到3D规范姿态空间。上述所有方法都采用了如图1所示的非可学习的自监督模块，比如几何模块或一致性损失函数。然而，它们[^30] [^56]忽视了引入跨视角交互和多视角协作学习的重要性。由于手部姿态会随时间发生剧烈变化，且不同关节的外观可能相似，以往的方法难以取得良好性能。

### 3. 方法

如图2左侧所示，我们的框架由一个简单却高效的单视角估计器和跨视角交互网络组成。我们方法的核心思想是：通过跨视角特征交互可以增强单目视图的预测结果，而交互后的结果又能进一步指导单视角输出，从而实现自蒸馏。

#### 3.1. 单视角估计器

概述。我们的框架以具有v个视角的多视角同步手部图像$\mathcal{I} = \{I_i\}_{i=0}^v$作为输入，每个视角都是$I_i \in \mathbb{R}^{3 \times h \times w}$的图像。输出是每个视角上的3D手部网格M。我们设计了一个简单却高效的基于模型的网络作为单视角估计器。利用手部模型通过提供用于正则化的手部先验信息，能够降低使用质量较差的伪标签作为监督所带来的负面影响。关于单视角估计器的更多细节，请参阅补充材料。

手部模型。我们采用MANO[^48]作为手部模型。通过参数$\beta$和$\theta$，即可从MANO层推导出手部网格，即$M(\beta, \theta)$。其中$\beta \in \mathbb{R}^{10}$和$\theta \in \mathbb{R}^{16 \times 3}$分别控制手部的形状和姿态。我们可以利用预定义的回归器，通过$P = JM$从3D网格顶点中获取3D关节坐标，此处$J \in \mathbb{R}^{k \times n}$、$n = 778$和$k = 21$分别代表关节数量和顶点数量。如需了解更多细节，建议参考[^48]。

相机模型。遵循Boukhayma等人的方法[^4]，我们通过弱透视相机模型来建模几何对应关系，并从单视角网络的预测结果中获取相机参数。给定平移量t和缩放系数s，图像平面上的2D坐标可通过以下公式得到：$\Pi(P) = s\Omega(P) + \mathbf{t}$，其中$\Omega$表示正交投影，$\Pi$表示弱透视投影。

网络结构。由于单视角估计器并非主要组件，为简化起见，我们采用CNN作为编码器$F_e$，采用MLP作为解码器$F_d$来回归MANO参数。我们得到3D手部网格：$M_i(\theta_i, \beta_i) = F_s(I_i)$，其中$F_s = F_d(F_e(\cdot))$代表整个单视角网络。该估计器还会将不同层级的特征$H^j$（此处$H^j$指编码器经过j个残差块后的中间特征，$j=1,2,3,4$）传递给我们的跨视角交互网络。

#### 3.2. 跨视角交互网络

在本节中，我们将介绍跨视角交互网络（CVI-Net），它是我们系统的核心，能够使网络充分利用多视角信息。这一阶段负责进行跨视角交互与知识蒸馏。该阶段的关键组件是用于捕捉跨视角特征的跨视角交互网络，以及用于指导协同学习的几种一致性损失函数。

#### 3.2.1 视图共享的图特征提取

交互的第一步是提取合适的特征。与[^8]、[^9]、[^65]不同，我们的模块通过视图共享的图特征将有用信息汇总到图中。

---

![Image](images/ac2b2d75923373f143d63a82f774fde66c4a357e353583a23fbe41019e05fe2f.jpg)

<div style="text-align: center;">Figure 2. The left illustrates our whole pipeline (2 views for simplicity). During the training phase, the network takes multi-view hand images and pseudo-labels as inputs. The bottom right depicts our cross-view interaction networks. The top right shows the view-shared graph feature extraction (VSGFE) module and view-shared feature (VSF) module.  $\oplus$ and  $\otimes$ denotes add and concatenation respectively.</div>

如图2所示，提取模块（VSGFE）具体利用来自不同视角的多级特征图$\mathcal{H} = \{H_i^j\}_{i=0}^v$、3D关节$\mathcal{P} = \{P_i\}_{i=0}^v$以及单视角估计器输出的MANO姿态参数$\Theta = \{\theta_i\}_{i=0}^v$来提取图特征$\mathcal{G}$。每个视角的图特征$\mathcal{G}_i$由三部分组成。$\mathcal{G}_i^1$、$\mathcal{G}_i^2$和$\mathcal{G}_i^3$分别用于捕捉关节位置特征、全局图像特征和局部图像特征。第一部分是关节位置嵌入$\mathcal{G}_i^1 \in \mathbb{R}^{k \times c_1}$，它提供了明确的几何信息。该嵌入是通过使用MLP将单视角的3D关节位置$\mathcal{P}_i$和姿态参数$\theta_i$映射到维度$c_1$得到的。第二部分是关节级高级图像特征$\mathcal{G}_i^2 \in \mathbb{R}^{k \times c_2}$，由空间感知初始图构建（SAIGB）[^65]模块利用最后一级特征图$\mathcal{H}_i^4$生成。这部分为各视角间的交互提供了紧凑的图像线索。第三部分是关节对齐特征$\mathcal{G}_i^3 \in \mathbb{R}^{k \times c_3}$，由关节特征采样器（JFS）收集得到。JFS将关节投影到多级图像特征图上$\{\mathcal{H}_i^j\}_{j=1}^3$，以收集细粒度的感知特征，比如[^57] [^58]，从而实现更好的局部对齐。随后我们将图特征拼接起来得到$\mathcal{G}_i = \left[\mathcal{G}_i^1 \otimes \mathcal{G}_i^2 \otimes \mathcal{G}_i^3\right]$。

#### 3.2.2 双分支跨视角交互（DCVI）

我们首先将所有视角的$\{G_i\}_{i=0}^v$堆叠起来以获得多视角图特征$\mathcal{G} \in \mathbb{R}^{v \times (c_1 + c_2 + c_3)}$。我们设计了一个组件，用于在多视角图特征$\mathcal{G}$上有效捕捉来自其他视角的互补信息。该交互模块包含两个分支：（1）跨视角注意力分支（CVA）和（2）视图共享特征分支（VSF）。跨视角注意力分支采用跨视角变换器$F_t$，它由多个带有token尺寸v k的多头注意力层和MLP组成，使得每个关节能够聚合来自其他关节或视角的特征。这一分支隐式地捕捉了多视角信息。一个明确的多视角先验信息是：所有视角下观测到的姿态在3D空间中应保持一致。因此，我们增加了另一个分支来挖掘多视角共享信息以增强特征表示。具体而言，视图共享特征分支首先利用自适应GCN[^13] $F_a$将特定视角的特征$G_i$映射到规范特征空间$C_i = F_a(G_i)$，其中自适应GCN中的节点代表手部关节，边则代表关节特征相关性。接着，我们将$\mathcal{C} = \{C_i\}_{i=0}^v$堆叠起来得到多视角规范特征$\mathcal{C} \in \mathbb{R}^{v \times k \times (c_1 + c_2 + c_3})$。之后，我们对$\mathcal{C}$进行最大池化操作，以获取每个关节的最大激活特征，再在视图维度上重复这些特征，从而得到视图共享特征$\mathcal{C}' \in \mathbb{R}^{v k \times (c_1 + c_2 + c_3})$。我们将这种双分支跨视角交互表示为：$\mathcal{G}^* = \mathcal{G} + F_t(G) + \mathcal{C}'$，其中$\mathcal{G}^*$是更新后的图特征。参数回归方面，交互后的特定视角特征$G_i^*$可以通过重塑$\mathcal{G}^*$获得。随后我们采用共享的MLP$F_r$作为解码器，对姿态参数$\theta_i^* = F_r(G_i^*)$进行回归，从而推导出每个视角的手部网格$M_i^*(\theta_i^*,\beta_i)$及其对应的关节$P_i^* = J M_i^*$。

#### 3.2.3 多视角协同学习

为了让所有视角和网络能够协同学习，我们利用交互输出上的一致性损失$L_{c}$以及多视角融合结果与单视角输出之间的蒸馏损失$L_{d}$，如图2所示。$L_{c}$促进了多个视角间的协同学习，引导不同视角的姿态尽可能接近。

---

$L_{d}$则使CVI-Net和单视角估计器以协作方式工作，从而实现自蒸馏效果。

结果融合。由于我们需要用交互后的结果来监督单视角估计器，因此并非简单地使用每个视角的优化后结果$M_i^*$，而是将所有结果整合为一个更可靠的统一结果$\tilde{M}$。考虑到缺乏明确的指导，我们经验性地设定一个先验：所有视角的贡献相等。因此，我们只需对所有对齐后的结果取平均值即可得到$\tilde{M}$。具体而言，我们用A表示对齐过程。当已知相机外参时，我们使用相对相机姿态进行对齐；若无法获取相机外参，则利用Procrustes分析[^66] [^68]来计算相对旋转，并将网格对齐到标准视角。最终结果的计算公式如下：$\tilde{M} = \frac{1}{v} \sum_{i=1}^{v} A(M_i^*)$。

一致性损失。我们设计了两种类型的一致性损失$L_c$：2D一致性损失$L_{c2D}$和融合一致性损失$L_{cf}$。设计$L_{c2D}$的动机在于，x轴和y轴上的2D预测比z轴上的深度预测更准确。因此，$L_{c2D}$利用每个视角中的2D预测作为伪标签来监督其他视角，从而挖掘各视角特有的可靠信息，协同提升所有视角的预测精度。2D一致性损失定义为：$L_{c2D} = \frac{1}{v^2} \sum_{i=1}^v \sum_{j=1}^v \|\Pi(M_i^*) - \Pi(A_i(M_j^*))\|_1$，其中$A_i(\cdot)$表示将对齐操作，用于将其他视角j对齐到视角i。融合一致性损失则利用融合后的结果来监督每个视角，其定义为：$L_{cf} = \frac{1}{v} \sum_{i=1}^v \|M_i^* - A_i^{-1}(\hat{M})\|_1$，其中$A_i^{-1}(\cdot)$表示从标准视角到视角i的逆变换。$L_{c2D}$和$L_{cf}$相互补充：仅使用$L_{c2D}$容易导致性能更快达到饱和；而仅采用$L_{cf}$则可能造成训练不稳定，因为融合结果可能因多数预测错误而变差，尤其是在训练初期。训练过程中，我们交替更新$L_{c2D}$和$L_{cf}$，以实现更稳定的优化。

多视角蒸馏损失。由于多视角融合结果优于2D伪标签，因此我们引入多视角蒸馏损失$L_d = \frac{1}{v} \sum_{i=1}^v \| M_i - A_i^{-1}(\tilde{M}) \|_1$，利用融合结果来监督单视角输出，从而实现自蒸馏。

总损失。除了用于多视角协同学习的损失外，我们的框架还采用了两个通用约束：2D关节损失和手部先验正则化。先验正则化用于对姿态和形状参数进行约束：$L_p = \frac{1}{v} \sum_{i=1}^v \alpha(\|\boldsymbol{\theta}_i\|_1 + \|\boldsymbol{\theta}_i^*\|_1 + \gamma \|\boldsymbol{\beta}_i\|_1)$，其中$\alpha$和$\gamma$用于平衡损失权重。2D关节$L_1$损失$L_{2D}$用于监督基于2D伪标签得到的结果。最终损失定义为：

 $$ L=L_{c}+L_{d}+L_{2D}+L_{p}. $$

### 4. 实验

#### 4.1. 数据集与评估指标

FreiHAND [^68]是一个用于单视图3D手部姿态估计的数据集，包含130,240张训练图像和3,960张测试图像。所有图像均来自真实世界，并带有3D标注。训练集由32,560张合成图像组成，这些图像采用四种类型的真实背景，手部则是在绿幕前拍摄的。

HanCo [^66]是对FreiHAND的扩展，包含1,517个多视角视频以及相机校准信息。它总共拥有860,304帧，即每个视角下107,538个时间步。由于HanCo没有官方的训练/测试划分，为了公平比较，我们在所有实验中将前1,200个序列用作训练集，最后317个序列用作测试集。其他数据集：我们还提供了在其他数据集上的额外结果。Assembly101 [^49]是一个动作识别数据集，包含4,321个视频序列；H2O [^32]是一个手部-物体交互数据集，包含571,645帧。详情请参阅补充材料。

评估指标：我们按照如下方式报告手部姿态估计的标准指标。(1) MPJPE/MPVPE（平均关节/顶点位置误差）衡量预测关节/顶点与真实关节/顶点之间的平均欧几里得距离（单位：毫米）。JE/VE是MPJPE/MPVPE的缩写。(2) NMPJPE/NMPVPE（归一化平均关节/顶点位置误差，即N-JE/VE）是在进行平移和尺度对齐后计算出的MPJPE/MPVPE。(3) PA-MPJPE/PA-MPVPE（PA-JE/VE）是对MPJPE/MPVPE的一种改进，其中采用了Procrustes分析 [^18]。该指标对绝对尺度、中心和旋转进行了归一化处理。(4) F-Score [^10]是两个网格在特定距离阈值下的召回率与精确度的调和平均值。报告中会给出F@5mm和F@15mm的值。(5) AUC指的是PCK曲线下的面积，其中PCK表示正确关节的百分比。

#### 4.2. 实现细节

我们所有网络均在PyTorch [^43]中实现。首先，我们在不使用$L_c$和$L_d$的情况下训练框架10个周期，随后再对整个框架继续训练30个周期。每个批次包含来自8个摄像头的8个时间步的图像。我们采用AdamW [^37]优化器，并将初始学习率设为3e-4。输入数据为$256 \times 256$手部图像。更多详情请参阅补充材料。

#### 4.3. 与最先进方法的比较

在第4.3.1节中，我们在单视图推理设置下评估了所提方法的性能。由于自监督手部姿态估计是一项相对较新的任务，可供比较的文献有限。为解决这一问题，我们将自监督人体姿态估计方法 [^30] 和 [^56] 适配到手部估计任务中，并在HanCo数据集 [^66] 上与我们的方法进行比较。

---

<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;'>Input</td><td style='text-align: center; word-wrap: break-word;'>N-JE $\downarrow$</td><td style='text-align: center; word-wrap: break-word;'>PA-JE $\downarrow$</td></tr><tr><td colspan="4">Fully-Supervised Method:</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>MobRecon [^8]</td><td style='text-align: center; word-wrap: break-word;'>image</td><td style='text-align: center; word-wrap: break-word;'>9.9</td><td style='text-align: center; word-wrap: break-word;'>5.7</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>EpipolarPose [^30]</td><td style='text-align: center; word-wrap: break-word;'>image</td><td style='text-align: center; word-wrap: break-word;'>10.5</td><td style='text-align: center; word-wrap: break-word;'>6.1</td></tr><tr><td colspan="4">Self-Supervised Method:</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>EpipolarPose [^30]</td><td style='text-align: center; word-wrap: break-word;'>image, 🔒</td><td style='text-align: center; word-wrap: break-word;'>19.7</td><td style='text-align: center; word-wrap: break-word;'>9.3</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>CanonPose [^56]</td><td style='text-align: center; word-wrap: break-word;'>2D pose, 🔒</td><td style='text-align: center; word-wrap: break-word;'>30.9</td><td style='text-align: center; word-wrap: break-word;'>12.6</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Ours</td><td style='text-align: center; word-wrap: break-word;'>image, 🔒</td><td style='text-align: center; word-wrap: break-word;'>11.1</td><td style='text-align: center; word-wrap: break-word;'>7.0</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>EpipolarPose [^30]</td><td style='text-align: center; word-wrap: break-word;'>image</td><td style='text-align: center; word-wrap: break-word;'>42.3</td><td style='text-align: center; word-wrap: break-word;'>23.5</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>CanonPose [^56]</td><td style='text-align: center; word-wrap: break-word;'>2D pose</td><td style='text-align: center; word-wrap: break-word;'>31.8</td><td style='text-align: center; word-wrap: break-word;'>12.8</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Ours</td><td style='text-align: center; word-wrap: break-word;'>image</td><td style='text-align: center; word-wrap: break-word;'>15.2</td><td style='text-align: center; word-wrap: break-word;'>7.7</td></tr></table>

<div style="text-align: center;">Table 1. Single-view inference comparisons on the HanCo [^66] dataset.  $\odot$ denotes the method using camera extrinsics during training. Notably, in the self-supervised setting, our method exhibits a significant improvement over previous methods.</div>

接着，我们与唯一已有的自监督手部姿态估计方法S $^{2}$Hand [^10]进行比较。由于S $^{2}$Hand只能在单视图图像上训练，因此我们使用仅基于单视图的网络（记为Ours-SV）作为训练和推理的基线。我们进一步对我们的完整模型及基线进行了全面评估，以证明多视图协作学习的有效性。

此外，得益于我们的跨视图交互网络，当有多视图测试数据时，我们的方法只需简单平均各视图的结果即可完成多视图推理。在第4.3.2节中，我们在多视图推理设置下将所提方法与最先进的方法进行了比较。

<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;'>PA-MPJPE $\downarrow$</td></tr><tr><td colspan="3">Traditional Triangulation Method (w/o training):</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>DLT [^22]</td><td style='text-align: center; word-wrap: break-word;'>16.8</td><td style='text-align: center; word-wrap: break-word;'>13.2</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Pictorial [^12]</td><td style='text-align: center; word-wrap: break-word;'>13.5</td><td style='text-align: center; word-wrap: break-word;'>10.2</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>RANSAC [^28]</td><td style='text-align: center; word-wrap: break-word;'>12.3</td><td style='text-align: center; word-wrap: break-word;'>9.8</td></tr><tr><td colspan="3">Fully-Supervised Method:</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>EpipolarTrans [^24]</td><td style='text-align: center; word-wrap: break-word;'>6.2</td><td style='text-align: center; word-wrap: break-word;'>4.2</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>LT-Algebraic [^28]</td><td style='text-align: center; word-wrap: break-word;'>5.5</td><td style='text-align: center; word-wrap: break-word;'>3.6</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>LT-Volumetric [^28]</td><td style='text-align: center; word-wrap: break-word;'>5.8</td><td style='text-align: center; word-wrap: break-word;'>3.6</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>LT-Volumetric $^{+}$ [^28]</td><td style='text-align: center; word-wrap: break-word;'>4.9</td><td style='text-align: center; word-wrap: break-word;'>3.6</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>EpipolarPose $^{+}$ [^30]</td><td style='text-align: center; word-wrap: break-word;'>8.0</td><td style='text-align: center; word-wrap: break-word;'>4.4</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Ours (Opt-Center)</td><td style='text-align: center; word-wrap: break-word;'>6.0</td><td style='text-align: center; word-wrap: break-word;'>3.2</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Ours (RANSAC)</td><td style='text-align: center; word-wrap: break-word;'>5.8</td><td style='text-align: center; word-wrap: break-word;'>3.4</td></tr><tr><td colspan="3">Self-Supervised Method:</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>EpipolarTrans [^24]</td><td style='text-align: center; word-wrap: break-word;'>11.2</td><td style='text-align: center; word-wrap: break-word;'>9.0</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>LT-Algebraic [^28]</td><td style='text-align: center; word-wrap: break-word;'>10.3</td><td style='text-align: center; word-wrap: break-word;'>7.8</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>LT-Volumetric [^28]</td><td style='text-align: center; word-wrap: break-word;'>10.6</td><td style='text-align: center; word-wrap: break-word;'>8.0</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>LT-Volumetric $^{+}$ [^28]</td><td style='text-align: center; word-wrap: break-word;'>9.5</td><td style='text-align: center; word-wrap: break-word;'>7.2</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>CanonPose $^{+}$ [^56]</td><td style='text-align: center; word-wrap: break-word;'>21.6</td><td style='text-align: center; word-wrap: break-word;'>10.5</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>EpipolarPose $^{+}$ [^30]</td><td style='text-align: center; word-wrap: break-word;'>17.2</td><td style='text-align: center; word-wrap: break-word;'>8.3</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Ours (Opt-Center)</td><td style='text-align: center; word-wrap: break-word;'>8.8</td><td style='text-align: center; word-wrap: break-word;'>5.3</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Ours (RANSAC)</td><td style='text-align: center; word-wrap: break-word;'>8.5</td><td style='text-align: center; word-wrap: break-word;'>5.6</td></tr></table>

<div style="text-align: center;">Table 3. Multi-view inference results on the HanCo dataset. The notation  $^{+}$ indicates that methods require the GT 3D center.</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;'>Data</td><td style='text-align: center; word-wrap: break-word;'>Backbone</td><td style='text-align: center; word-wrap: break-word;'>PA-JE $\downarrow$</td><td style='text-align: center; word-wrap: break-word;'>PA-VE $\downarrow$</td><td style='text-align: center; word-wrap: break-word;'>F@5 $\uparrow$</td></tr><tr><td colspan="6">Fully-Supervised Method:</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>YoutubeHand [^31]</td><td style='text-align: center; word-wrap: break-word;'>Frei.</td><td style='text-align: center; word-wrap: break-word;'>Res50</td><td style='text-align: center; word-wrap: break-word;'>8.4</td><td style='text-align: center; word-wrap: break-word;'>8.6</td><td style='text-align: center; word-wrap: break-word;'>0.61</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>I2UV-HandNet [^7]</td><td style='text-align: center; word-wrap: break-word;'>Frei.</td><td style='text-align: center; word-wrap: break-word;'>Res50</td><td style='text-align: center; word-wrap: break-word;'>6.7</td><td style='text-align: center; word-wrap: break-word;'>6.9</td><td style='text-align: center; word-wrap: break-word;'>0.71</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>MobRecon [^8]</td><td style='text-align: center; word-wrap: break-word;'>Frei.</td><td style='text-align: center; word-wrap: break-word;'>Res50 $^{\dagger}$</td><td style='text-align: center; word-wrap: break-word;'>6.1</td><td style='text-align: center; word-wrap: break-word;'>6.2</td><td style='text-align: center; word-wrap: break-word;'>0.76</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Ours-SV</td><td style='text-align: center; word-wrap: break-word;'>Frei.</td><td style='text-align: center; word-wrap: break-word;'>Res50</td><td style='text-align: center; word-wrap: break-word;'>7.5</td><td style='text-align: center; word-wrap: break-word;'>7.5</td><td style='text-align: center; word-wrap: break-word;'>0.68</td></tr><tr><td colspan="6">Self-Supervised Method:</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>S $^{2}$HAND [^10]</td><td style='text-align: center; word-wrap: break-word;'>Frei.</td><td style='text-align: center; word-wrap: break-word;'>EffiNet-b0</td><td style='text-align: center; word-wrap: break-word;'>11.8</td><td style='text-align: center; word-wrap: break-word;'>11.9</td><td style='text-align: center; word-wrap: break-word;'>0.48</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Ours-SV</td><td style='text-align: center; word-wrap: break-word;'>Frei.</td><td style='text-align: center; word-wrap: break-word;'>EffiNet-b0</td><td style='text-align: center; word-wrap: break-word;'>11.6</td><td style='text-align: center; word-wrap: break-word;'>11.7</td><td style='text-align: center; word-wrap: break-word;'>0.49</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Ours-SV</td><td style='text-align: center; word-wrap: break-word;'>Frei.</td><td style='text-align: center; word-wrap: break-word;'>Res50</td><td style='text-align: center; word-wrap: break-word;'>11.9</td><td style='text-align: center; word-wrap: break-word;'>12.0</td><td style='text-align: center; word-wrap: break-word;'>0.47</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Ours-SV</td><td style='text-align: center; word-wrap: break-word;'>HanCo</td><td style='text-align: center; word-wrap: break-word;'>EffiNet-b0</td><td style='text-align: center; word-wrap: break-word;'>11.3</td><td style='text-align: center; word-wrap: break-word;'>11.4</td><td style='text-align: center; word-wrap: break-word;'>0.51</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Ours-SV</td><td style='text-align: center; word-wrap: break-word;'>HanCo</td><td style='text-align: center; word-wrap: break-word;'>Res50</td><td style='text-align: center; word-wrap: break-word;'>11.6</td><td style='text-align: center; word-wrap: break-word;'>11.8</td><td style='text-align: center; word-wrap: break-word;'>0.48</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Ours</td><td style='text-align: center; word-wrap: break-word;'>HanCo</td><td style='text-align: center; word-wrap: break-word;'>EffiNet-b0</td><td style='text-align: center; word-wrap: break-word;'>6.3</td><td style='text-align: center; word-wrap: break-word;'>6.8</td><td style='text-align: center; word-wrap: break-word;'>0.71</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Ours</td><td style='text-align: center; word-wrap: break-word;'>HanCo</td><td style='text-align: center; word-wrap: break-word;'>Res50</td><td style='text-align: center; word-wrap: break-word;'>6.2</td><td style='text-align: center; word-wrap: break-word;'>6.7</td><td style='text-align: center; word-wrap: break-word;'>0.72</td></tr></table>

<div style="text-align: center;">Table 2. Quantitative results on the FreiHAND evaluation set. The notation  $\dagger$ denotes using a stacked backbone structure. "Our-SV" refers to training only with our single-view network.</div>

#### 4.3.1 单视图推理

Hanco数据集。我们采用EpipolarPose和CanonPose的开源代码对其进行训练。同时，我们也训练了全监督方法[^8] [^30]作为性能参考。表1列出了文献中全监督/自监督方法的性能以及我们的结果。当训练时可使用相机外参时，CanonPose的性能最差，因为它会将来自OpenPose的噪声2D伪标签提升到3D标签。当无法获取相机外参时，所有对比方法的性能都会下降，这是由于以往的自监督方法缺乏多视图特征间的协同交互。相比之下，我们的方法性能远超这两种方法。无论训练时是否能获取相机外参，我们的跨视图交互网络都能提升单视图推理效果。关于相机使用的更多细节可参见第3.2.3节。与以往的自监督方法相比，我们的方法显著提升了性能，这凸显了不同视图间跨视图交互的重要性。此外，我们的方法还能取得与全监督方法相当的结果。

FreiHAND数据集。评估集上的对比结果见表2。在自监督设置下开展的实验表明，我们的基线模型Ours-SV已经能取得与S $^{2}$Hand相当的性能。此外，给基线模型更换其他骨干网络或增加训练数据，也并不能带来太大提升。我们认为，单视图自监督手部姿态估计的性能提升无法通过更换骨干架构或增加训练数据来实现。相比之下，我们的完整模型（即Ours）进一步大幅提升了FreiHand数据集上的结果，这证明了多视图协作学习的有效性。此外，我们的自监督方法性能可与近期最先进的全监督方法相媲美。

---

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td rowspan="2">ID</td><td rowspan="2">Method</td><td colspan="3">NMPJPE $\downarrow$</td><td colspan="3">PA-MPJPE $\downarrow$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Single</td><td style='text-align: center; word-wrap: break-word;'>Interact</td><td style='text-align: center; word-wrap: break-word;'>Fusion</td><td style='text-align: center; word-wrap: break-word;'>Single</td><td style='text-align: center; word-wrap: break-word;'>Interact</td><td style='text-align: center; word-wrap: break-word;'>Fusion</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>1</td><td style='text-align: center; word-wrap: break-word;'>Full</td><td style='text-align: center; word-wrap: break-word;'>$11.14\uparrow_{0.03}$</td><td style='text-align: center; word-wrap: break-word;'>ResNet-50 as the backbone: $8.31\downarrow_{0.03}$</td><td style='text-align: center; word-wrap: break-word;'>$7.65\uparrow_{0.10}$</td><td style='text-align: center; word-wrap: break-word;'>$7.05\uparrow_{0.17}$</td><td style='text-align: center; word-wrap: break-word;'>$5.35\uparrow_{0.07}$</td><td style='text-align: center; word-wrap: break-word;'>$5.34\uparrow_{0.06}$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>2</td><td style='text-align: center; word-wrap: break-word;'>Full</td><td style='text-align: center; word-wrap: break-word;'>11.17</td><td style='text-align: center; word-wrap: break-word;'>ResNet-18 as the backbone: $8.28$</td><td style='text-align: center; word-wrap: break-word;'>7.75</td><td style='text-align: center; word-wrap: break-word;'>7.22</td><td style='text-align: center; word-wrap: break-word;'>5.42</td><td style='text-align: center; word-wrap: break-word;'>5.40</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>3</td><td style='text-align: center; word-wrap: break-word;'>- VSF</td><td style='text-align: center; word-wrap: break-word;'>$11.21\downarrow_{0.04}$</td><td style='text-align: center; word-wrap: break-word;'>$8.49\downarrow_{0.21}$</td><td style='text-align: center; word-wrap: break-word;'>$7.81\downarrow_{0.06}$</td><td style='text-align: center; word-wrap: break-word;'>$7.25\downarrow_{0.03}$</td><td style='text-align: center; word-wrap: break-word;'>$5.52\downarrow_{0.10}$</td><td style='text-align: center; word-wrap: break-word;'>$5.50\downarrow_{0.10}$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>4</td><td style='text-align: center; word-wrap: break-word;'>- CVA</td><td style='text-align: center; word-wrap: break-word;'>$11.31\downarrow_{0.14}$</td><td style='text-align: center; word-wrap: break-word;'>$8.45\downarrow_{0.17}$</td><td style='text-align: center; word-wrap: break-word;'>$7.81\downarrow_{0.06}$</td><td style='text-align: center; word-wrap: break-word;'>$7.29\downarrow_{0.07}$</td><td style='text-align: center; word-wrap: break-word;'>$5.48\downarrow_{0.06}$</td><td style='text-align: center; word-wrap: break-word;'>$5.46\downarrow_{0.06}$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>5</td><td style='text-align: center; word-wrap: break-word;'>$- G^{1}$</td><td style='text-align: center; word-wrap: break-word;'>$11.31\downarrow_{0.14}$</td><td style='text-align: center; word-wrap: break-word;'>$8.56\downarrow_{0.28}$</td><td style='text-align: center; word-wrap: break-word;'>$7.77\downarrow_{0.03}$</td><td style='text-align: center; word-wrap: break-word;'>$7.31\downarrow_{0.09}$</td><td style='text-align: center; word-wrap: break-word;'>$5.52\downarrow_{0.10}$</td><td style='text-align: center; word-wrap: break-word;'>$5.49\downarrow_{0.09}$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>6</td><td style='text-align: center; word-wrap: break-word;'>$- G^{2}$</td><td style='text-align: center; word-wrap: break-word;'>$11.33\downarrow_{0.16}$</td><td style='text-align: center; word-wrap: break-word;'>$8.38\downarrow_{0.10}$</td><td style='text-align: center; word-wrap: break-word;'>$7.83\downarrow_{0.08}$</td><td style='text-align: center; word-wrap: break-word;'>$7.34\downarrow_{0.08}$</td><td style='text-align: center; word-wrap: break-word;'>$5.45\downarrow_{0.03}$</td><td style='text-align: center; word-wrap: break-word;'>$5.42\downarrow_{0.02}$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>7</td><td style='text-align: center; word-wrap: break-word;'>$- G^{3}$</td><td style='text-align: center; word-wrap: break-word;'>$11.30\downarrow_{0.13}$</td><td style='text-align: center; word-wrap: break-word;'>$8.99\downarrow_{0.69}$</td><td style='text-align: center; word-wrap: break-word;'>$7.82\downarrow_{0.07}$</td><td style='text-align: center; word-wrap: break-word;'>$7.30\downarrow_{0.08}$</td><td style='text-align: center; word-wrap: break-word;'>$5.45\downarrow_{0.03}$</td><td style='text-align: center; word-wrap: break-word;'>$5.44\downarrow_{0.04}$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>8</td><td style='text-align: center; word-wrap: break-word;'>$- L_{e2D}$</td><td style='text-align: center; word-wrap: break-word;'>$11.25\downarrow_{0.08}$</td><td style='text-align: center; word-wrap: break-word;'>$8.43\downarrow_{0.15}$</td><td style='text-align: center; word-wrap: break-word;'>$7.90\downarrow_{0.15}$</td><td style='text-align: center; word-wrap: break-word;'>$7.32\downarrow_{0.10}$</td><td style='text-align: center; word-wrap: break-word;'>$5.58\downarrow_{0.16}$</td><td style='text-align: center; word-wrap: break-word;'>$5.57\downarrow_{0.17}$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>9</td><td style='text-align: center; word-wrap: break-word;'>$- L_{e_f}$</td><td style='text-align: center; word-wrap: break-word;'>$11.74\downarrow_{0.57}$</td><td style='text-align: center; word-wrap: break-word;'>$8.98\downarrow_{0.70}$</td><td style='text-align: center; word-wrap: break-word;'>$8.38\downarrow_{0.63}$</td><td style='text-align: center; word-wrap: break-word;'>$7.55\downarrow_{0.33}$</td><td style='text-align: center; word-wrap: break-word;'>$5.84\downarrow_{0.42}$</td><td style='text-align: center; word-wrap: break-word;'>$5.80\downarrow_{0.40}$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>10</td><td style='text-align: center; word-wrap: break-word;'>- DCVI</td><td style='text-align: center; word-wrap: break-word;'>$13.52\downarrow_{2.35}$</td><td style='text-align: center; word-wrap: break-word;'>/</td><td style='text-align: center; word-wrap: break-word;'>$11.99\downarrow_{4.24}$</td><td style='text-align: center; word-wrap: break-word;'>$9.59\downarrow_{2.37}$</td><td style='text-align: center; word-wrap: break-word;'>/</td><td style='text-align: center; word-wrap: break-word;'>$9.42\downarrow_{4.02}$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>11</td><td style='text-align: center; word-wrap: break-word;'>$- L_c$</td><td style='text-align: center; word-wrap: break-word;'>$14.04\downarrow_{2.87}$</td><td style='text-align: center; word-wrap: break-word;'>$17.03\downarrow_{8.75}$</td><td style='text-align: center; word-wrap: break-word;'>$10.32\downarrow_{2.57}$</td><td style='text-align: center; word-wrap: break-word;'>$9.04\downarrow_{1.82}$</td><td style='text-align: center; word-wrap: break-word;'>$10.21\downarrow_{4.79}$</td><td style='text-align: center; word-wrap: break-word;'>$7.92\downarrow_{2.52}$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>12</td><td style='text-align: center; word-wrap: break-word;'>$- L_d$</td><td style='text-align: center; word-wrap: break-word;'>$17.05\downarrow_{5.88}$</td><td style='text-align: center; word-wrap: break-word;'>$8.56\downarrow_{0.28}$</td><td style='text-align: center; word-wrap: break-word;'>$8.01\downarrow_{0.26}$</td><td style='text-align: center; word-wrap: break-word;'>$10.13\downarrow_{2.91}$</td><td style='text-align: center; word-wrap: break-word;'>$5.67\downarrow_{0.25}$</td><td style='text-align: center; word-wrap: break-word;'>$5.65\downarrow_{0.25}$</td></tr></table>

<div style="text-align: center;">Table 4. Quantitative ablation studies. We remove each of our components here to show their contribution to our framework. Full denotes our complete model. CVI represents our whole cross-view interaction network. Other notations are consistent with Sec. 3. We report the errors of single-view outputs (Single,  M), cross-view interaction outputs (Interact,  $M^{*}$), and multi-view fusion results (Fusion,  $\tilde{M}$).</div>

![Image](images/37a396201028bd295b0b380b721b8a4cddf8d5b05748679ed4a9299b06297a35.jpg)

![Image](images/be771918b1f0f19ce20ce740dd92fc0d501edd03a942ab982620b8e13ff02449.jpg)

<div style="text-align: center;">Figure 3. Error of using different (a) #training data, (b) (line-1)#view for training, and (line-2)#view for inference when trained with 8 views.</div>

![Image](images/7da8af09bd0d0ca25a82aaf83d3360ded5a7cdec5ef8bcbb80e4b8a563e9c831.jpg)

![Image](images/d76c4f232f332b3df5d504b7a9f7ed7c233928d37b54909110c96bc37d446aa7.jpg)

<div style="text-align: center;">Figure 4. AUC of three 2D joint sets. O, S, I, PE denote OpenPose, single-view, interaction, and average pixel error in resolution  $256 \times 256$.</div>

不过，这两种方法的效果都不如我们的方法，因为它们缺乏跨视图交互。由于我们的方法预测的是相对于根节点的3D姿态，因此需要进行后处理才能得到绝对坐标。我们提出了两种实现方式：1）利用不同视图的2D预测结果进行三角测量并优化中心点；2）利用我们的2D预测结果进行RANSAC三角测量。两种方法各有优势。Opt-center能保留基于手部先验的相对根节点结果，因此PA-MPJPE值较低；RANSAC则能获得更好的关节级精度，这一点从较低的MPJPE值中可见一斑。我们还在补充材料中提供了Assembly101 [^49]数据集上的定性结果，该数据集采用固定相机设置。甚至

#### 4.3.2 多视图推理

我们在表3中展示了多视角推理性能方面，我们与其他竞争算法在HanCo数据集上的定量结果。一种简单的解决方案是不经过训练直接对伪标签进行三角测量。我们列出了传统方法的性能表现。这些方法可作为评估自监督方法有效性的参考。我们将全监督的多视角3D姿态估计方法LT [^28]和EpipolarTrans [^24]改造为自监督模式。在自监督设置下，与传统方法相比，EpipolarTrans只能取得有限的性能提升。LT-Algebraic [^28]在三角测量过程中引入了可学习的置信度；而LT-Volumetric模型 [^28]通过将2D特征反投影到3D体积中进行推理，能够取得更好的结果，不过其性能依赖于手部中心的准确性。CanonPose [^56]和EpipolarPose [^30]与我们类似，都是通过简单平均来得到多视角推理结果。

针对具有挑战性的头戴式移动摄像头场景，我们在H2O [^32]数据集上取得了令人满意的3D姿态估计结果。实验表明，我们已将自监督方法的性能显著提升到了可与全监督方法相媲美的水平。

#### 4.4. 定性结果

图D展示了在HanCo数据集上，OpenPose、我们的方法以及真实值之间的2个视角的2D关节点视觉对比结果。我们可以观察到，我们的方法对异常值更具鲁棒性，且能生成接近标签的预测结果。图6显示了在HanCo数据集上，我们的方法、EpipolarPose和CanonPose从两个视角得到的3D预测结果。结果表明，尤其是在遮挡严重的情况下，我们的方法能得出更精确的结果。更多结果请参阅补充材料。

#### 4.5. 消融研究

如表4所示，我们在HanCo [^66]数据集上开展了全面的消融实验，以验证各组件的有效性。Single、Interact和Fusion分别指代对M、$M^*$和$\tilde{M}$的评估。

不同的骨干网络。我们首先展示了使用不同骨干网络时的性能表现。如#1和#2所示，使用Res50这样的大型骨干网络时，我们的性能还能进一步提升。出于效率考虑，除非另有说明，否则我们使用Res18作为骨干网络开展消融研究。

用于跨视角交互模块的两个分支。如#3和#4所示，这两个分支都能降低误差。VSF能够显式地建模视图共享信息，并整合来自每个视图的可靠信息。CVA则能捕捉自视图/跨视图的关节级相关性。

---

能够捕捉自视图与交叉视图在关节层面的相关性。

图特征。结果表明，这三种特征（#5、#6、#7）都能带来性能提升。尤其是局部特征（#7，$G^{3}$），通过提供细粒度的细节，能在交互后显著减小误差。

DCVI。我们还通过移除DCVI并在单视图输出中加入一致性约束（如[^27]）来验证其重要性。这样一来，性能会大幅下降（#10），这证明了使用DCVI来提取所有视图的特征以实现自监督学习的必要性。

多视图一致性损失分为两个分支。如果不强制要求跨视图交互输出保持一致，性能会显著下降（#9）。如果我们不采用相对更可靠的2D预测来增强一致性，性能也会变差（#8）。

一致性损失。$(L_{c})$ 当使用没有一致性约束的跨视图交互网络时，性能并不理想（#11）（即忽略#8和#9的情况）。交互网络应与一致性机制协同工作，这样约束才能引导网络更好地利用多视图信息来提升性能。

多视图蒸馏损失。$(L_{d})$ 若移除多视图蒸馏损失，所有指标都会大幅下降（#12），尤其是单视图估计精度。这一现象证明了单视图网络与多视图网络之间协作学习的有效性。

#### 4.6. 模型分析

不同比例的无标签图像。图3(a)显示，随着无标签训练数据的增加，我们的方法能带来稳定的性能提升。

不同的训练视图数量。图3(b)中的曲线1展示了在给定视图上测试时，我们方法在不同视图数量训练下的性能表现。该曲线表明，随着视图数量的增加，我们的方法性能可持续提升。我们还观察到，当有效视图较少时，使用多个视图进行训练能显著改善性能。

不同的推理视图数量。我们的模型允许用任意数量的视图进行推理。然而，当模型以固定视图数量训练时，可能会出现视图数量偏差，导致使用接近训练时的视图数量时性能更好。为避免这种情况，我们在交互模块中加入了随机掩码，并对模型进行几个周期的微调。之后，性能会有小幅提升（单视图误差为11.07毫米，融合误差为7.60毫米，均采用NMPJPE指标衡量）。图3(b)中的曲线2展示了在8个视图上训练、在1到8个视图上测试时，特定视图上的结果。我们可以观察到，随着推理视图数量的增加，性能也同步提升。

不同的2D关节集。图4展示了……

![Image](images/ef34cf025d982778b0d134dd8014b076f404757af7749d0b03152bd9062f0669.jpg)

<div style="text-align: center;">Figure 5. 2D prediction (overlayed in the images) comparisons between OpenPose, ours, and ground-truth on the HanCo dataset.</div>

![Image](images/57b12139d49d89a9130d3978bbffc7f575662b19d0c4b8bb29726daa0a9160f9.jpg)

<div style="text-align: center;">Figure 6. 3D prediction comparisons between our method, EpipolarPose, and CanonPose on the HanCo dataset. Our prediction and ground-truth are shown in solid red and dashed green respectively.</div>

HanCo训练集和测试集上不同2D关节集的精度。我们的2D预测效果远优于用于训练的OpenPose 2D伪标签。

迭代训练。我们的方法可将之前的预测结果作为伪标签用于迭代训练。我们发现这种方法在迭代3次内效果显著，之后便会趋于饱和。迭代1到3次时，NMPJPE分别为7.75、7.68和7.64。

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

据我们所知，我们提出了首个旨在从无标签多视角数据中学习单视角3D手部估计器的自监督框架。该方法的核心是一个精心设计的跨视角交互网络，它利用多视角间的协作来指导单视角输出的优化。具体而言，该网络能够捕捉不同视角间特征的相关性，从而在跨视角交互后提升手部姿态估计的精确度。此外，多视角结果会被融合起来以指导单视角输出，从而实现自蒸馏。我们通过大量实验验证了所提框架的有效性与通用性，结果表明：我们的方法不仅为基于单视角输入的自监督3D手部姿态估计树立了新标杆，还能在保持最先进性能的同时支持灵活的多视角推理。

在本研究中，我们聚焦于无严重遮挡情况下的手部姿态估计问题。将我们的研究拓展到更具挑战性的场景，比如手与物体的交互，或是放宽多视角输入中的同步约束，将会是值得进一步探索的有趣课题。

---

## 补充材料

![Image](images/99e20ae5a917ca3151efa1543419aa88e991e6e4c299122b19ab656f62923ba7.jpg)

<div style="text-align: center;">Figure A. Our method takes multi-view images with 2D pseudo labels for training. From the results on public datasets [^32] [^49] [^66] [^68] and in-the-wild images, we demonstrate that our method can estimate accurate 3D hand pose with single- or arbitrary multi-view images.</div>

在补充材料中，我们提供了以下内容：

§A 视频演示。

§B 实现细节。

§C 更多实验与结果。

§D 讨论。

### A. 视频演示

我们在附带的视频中提供了额外的序列式定性结果。

#### B. 实现细节

##### B.1. 单视角网络

![Image](images/75e3023a710514328deeba254bea93318456e9d7184517a5ac361dce2509f75a.jpg)

<div style="text-align: center;">Figure B. The details of our single-view estimation network.</div>

如论文中所述，我们的框架仅采用了一个简单的单视角估计网络。该单视角网络的细节如图B所示。该网络仅包含一个用于提取图像特征的骨干网络（ResNet [^23]）、一个用于回归MANO [^48] 参数的回归头，以及一个用于将参数解码为手部网格的MANO层。此外，该回归头的结构十分简单，仅由1个全局平均池化（GAP）层、2个全连接层和1个Leaky-ReLU层构成。

##### B.2. 多视角图特征提取模块

在这里，我们将详细介绍我们的多视图图特征提取模块。多视图图提取首先针对每个视图进行视图共享图提取（VSGFE）。VSGFE包含三个视图共享模块：位置嵌入（LE）模块、空间感知初始图构建（SAIGB）模块 [^65]，以及联合特征采样器（JFS）。LE利用MLP将单视图估计网络输出的预测3D关节 $\boldsymbol{P}_i \in \mathbb{R}^{21 \times 3}$ 和MANO姿态参数（不含根关节）$\boldsymbol{\theta}_i' \in \mathbb{R}^{15 \times 3}$ 映射到关节嵌入 $\boldsymbol{G}_i^1 \in \mathbb{R}^{21 \times 64}$。SAIGB首先使用MLP将高层特征图的通道数 $\boldsymbol{H}_i^4 \in \mathbb{R}^{2048 \times 8 \times 8}$ 缩放至指定维度 $21 \times 8$，随后对特征进行重塑以获得 $\boldsymbol{G}_i^2 \in \mathbb{R}^{21 \times 512}$。受 [^57] 和 [^58] 的启发，我们设计了联合特征采样器（JFS），用于从中层特征图中采样与关节对齐的特征。JFS的具体细节如图C所示。给定手部关节的3D坐标后，我们利用弱透视投影计算其在特征图上的2D投影，再通过双线性插值收集邻近像素的特征。具体而言，我们从三个层级的特征图中采样与关节对齐的特征 $\{\boldsymbol{H}_i^j\}_{j=1}^3$，最终得到 $\boldsymbol{G}_i^3 \in \mathbb{R}^{21 \times 1792}$。经过拼接与堆叠后，便得到了多视图图特征 $\boldsymbol{G} \in \mathbb{R}^{21 \times 2368}$。

---

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

<div style="text-align: center;">Figure C. Illustration of our joint feature sampler (JFS) sampling a level of the joint-aligned features for 2 joints.</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td style='text-align: center; word-wrap: break-word;'>#Out</td><td style='text-align: center; word-wrap: break-word;'>#In</td><td style='text-align: center; word-wrap: break-word;'>Shape</td><td style='text-align: center; word-wrap: break-word;'>Operation</td><td style='text-align: center; word-wrap: break-word;'>Notation</td></tr><tr><td colspan="5">Backbone:</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>1</td><td style='text-align: center; word-wrap: break-word;'>/</td><td style='text-align: center; word-wrap: break-word;'>(8, 3, 256, 256)</td><td style='text-align: center; word-wrap: break-word;'>Input</td><td style='text-align: center; word-wrap: break-word;'>I</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>2</td><td style='text-align: center; word-wrap: break-word;'>1</td><td style='text-align: center; word-wrap: break-word;'>(8, 64, 64, 64)</td><td style='text-align: center; word-wrap: break-word;'>ResLayer</td><td style='text-align: center; word-wrap: break-word;'></td></tr><tr><td style='text-align: center; word-wrap: break-word;'>3</td><td style='text-align: center; word-wrap: break-word;'>2</td><td style='text-align: center; word-wrap: break-word;'>(8, 256, 64, 64)</td><td style='text-align: center; word-wrap: break-word;'>ResBlock1</td><td style='text-align: center; word-wrap: break-word;'>$H^{1}$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>4</td><td style='text-align: center; word-wrap: break-word;'>3</td><td style='text-align: center; word-wrap: break-word;'>(8, 512, 32, 32)</td><td style='text-align: center; word-wrap: break-word;'>ResBlock2</td><td style='text-align: center; word-wrap: break-word;'>$H^{2}$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>5</td><td style='text-align: center; word-wrap: break-word;'>4</td><td style='text-align: center; word-wrap: break-word;'>(8, 1024, 16, 16)</td><td style='text-align: center; word-wrap: break-word;'>ResBlock3</td><td style='text-align: center; word-wrap: break-word;'>$H^{3}$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>6</td><td style='text-align: center; word-wrap: break-word;'>5</td><td style='text-align: center; word-wrap: break-word;'>(8, 2048, 8, 8)</td><td style='text-align: center; word-wrap: break-word;'>ResBlock4</td><td style='text-align: center; word-wrap: break-word;'>$H^{4}$</td></tr><tr><td colspan="5">Single-View Decoder:</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>7</td><td style='text-align: center; word-wrap: break-word;'>6</td><td style='text-align: center; word-wrap: break-word;'>(8, 2048)</td><td style='text-align: center; word-wrap: break-word;'>GAP</td><td style='text-align: center; word-wrap: break-word;'></td></tr><tr><td style='text-align: center; word-wrap: break-word;'>8</td><td style='text-align: center; word-wrap: break-word;'>7</td><td style='text-align: center; word-wrap: break-word;'>(8, 48)</td><td style='text-align: center; word-wrap: break-word;'>MLP</td><td style='text-align: center; word-wrap: break-word;'>$\theta$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>9</td><td style='text-align: center; word-wrap: break-word;'>7</td><td style='text-align: center; word-wrap: break-word;'>(8, 10)</td><td style='text-align: center; word-wrap: break-word;'>MLP</td><td style='text-align: center; word-wrap: break-word;'>$\beta$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>10</td><td style='text-align: center; word-wrap: break-word;'>7</td><td style='text-align: center; word-wrap: break-word;'>(8, 3)</td><td style='text-align: center; word-wrap: break-word;'>MLP</td><td style='text-align: center; word-wrap: break-word;'>s, t</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>11</td><td style='text-align: center; word-wrap: break-word;'>8,9</td><td style='text-align: center; word-wrap: break-word;'>(8, 778, 3)</td><td style='text-align: center; word-wrap: break-word;'>MANO</td><td style='text-align: center; word-wrap: break-word;'>M</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>12</td><td style='text-align: center; word-wrap: break-word;'>11</td><td style='text-align: center; word-wrap: break-word;'>(8, 21, 3)</td><td style='text-align: center; word-wrap: break-word;'>Regressor</td><td style='text-align: center; word-wrap: break-word;'>P</td></tr><tr><td colspan="5">Multi-View Graph Feature Extraction:</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>13</td><td style='text-align: center; word-wrap: break-word;'>8,12</td><td style='text-align: center; word-wrap: break-word;'>(8, 21, 64)</td><td style='text-align: center; word-wrap: break-word;'>LE</td><td style='text-align: center; word-wrap: break-word;'>$G^{1}$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>14</td><td style='text-align: center; word-wrap: break-word;'>6</td><td style='text-align: center; word-wrap: break-word;'>(8, 21, 512)</td><td style='text-align: center; word-wrap: break-word;'>SAIGB</td><td style='text-align: center; word-wrap: break-word;'>$G^{2}$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>15</td><td style='text-align: center; word-wrap: break-word;'>3,4,5</td><td style='text-align: center; word-wrap: break-word;'>(8, 21, 1792)</td><td style='text-align: center; word-wrap: break-word;'>JFS</td><td style='text-align: center; word-wrap: break-word;'>$G^{3}$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>16</td><td style='text-align: center; word-wrap: break-word;'>13,14,15</td><td style='text-align: center; word-wrap: break-word;'>(8, 21, 2368)</td><td style='text-align: center; word-wrap: break-word;'>Concat</td><td style='text-align: center; word-wrap: break-word;'></td></tr><tr><td style='text-align: center; word-wrap: break-word;'>17</td><td style='text-align: center; word-wrap: break-word;'>16</td><td style='text-align: center; word-wrap: break-word;'>(168, 2368)</td><td style='text-align: center; word-wrap: break-word;'>Reshape</td><td style='text-align: center; word-wrap: break-word;'>G</td></tr><tr><td colspan="5">Dual-Branch Cross-View Interaction:</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>18</td><td style='text-align: center; word-wrap: break-word;'>17</td><td style='text-align: center; word-wrap: break-word;'>(168, 2368)</td><td style='text-align: center; word-wrap: break-word;'>CVA-1</td><td style='text-align: center; word-wrap: break-word;'></td></tr><tr><td style='text-align: center; word-wrap: break-word;'>19</td><td style='text-align: center; word-wrap: break-word;'>17</td><td style='text-align: center; word-wrap: break-word;'>(168, 2368)</td><td style='text-align: center; word-wrap: break-word;'>VSF-1</td><td style='text-align: center; word-wrap: break-word;'></td></tr><tr><td style='text-align: center; word-wrap: break-word;'>20</td><td style='text-align: center; word-wrap: break-word;'>17,18,19</td><td style='text-align: center; word-wrap: break-word;'>(168, 2368)</td><td style='text-align: center; word-wrap: break-word;'>Add</td><td style='text-align: center; word-wrap: break-word;'></td></tr><tr><td style='text-align: center; word-wrap: break-word;'>21</td><td style='text-align: center; word-wrap: break-word;'>20</td><td style='text-align: center; word-wrap: break-word;'>(168, 2368)</td><td style='text-align: center; word-wrap: break-word;'>CVA-2</td><td style='text-align: center; word-wrap: break-word;'>$F_{t}(G)$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>22</td><td style='text-align: center; word-wrap: break-word;'>20</td><td style='text-align: center; word-wrap: break-word;'>(168, 2368)</td><td style='text-align: center; word-wrap: break-word;'>VSF-2</td><td style='text-align: center; word-wrap: break-word;'>$C&#x27;$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>23</td><td style='text-align: center; word-wrap: break-word;'>20,21,22</td><td style='text-align: center; word-wrap: break-word;'>(168, 2368)</td><td style='text-align: center; word-wrap: break-word;'>Add</td><td style='text-align: center; word-wrap: break-word;'>$G^{*}$</td></tr><tr><td colspan="5">Parameters Regression:</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>24</td><td style='text-align: center; word-wrap: break-word;'>23</td><td style='text-align: center; word-wrap: break-word;'>(168, 32)</td><td style='text-align: center; word-wrap: break-word;'>MLP</td><td style='text-align: center; word-wrap: break-word;'></td></tr><tr><td style='text-align: center; word-wrap: break-word;'>25</td><td style='text-align: center; word-wrap: break-word;'>24</td><td style='text-align: center; word-wrap: break-word;'>(8, 672)</td><td style='text-align: center; word-wrap: break-word;'>Reshape</td><td style='text-align: center; word-wrap: break-word;'></td></tr><tr><td style='text-align: center; word-wrap: break-word;'>26</td><td style='text-align: center; word-wrap: break-word;'>25</td><td style='text-align: center; word-wrap: break-word;'>(8, 48)</td><td style='text-align: center; word-wrap: break-word;'>MLP</td><td style='text-align: center; word-wrap: break-word;'>$\theta^{*}$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>27</td><td style='text-align: center; word-wrap: break-word;'>25</td><td style='text-align: center; word-wrap: break-word;'>(8, 3)</td><td style='text-align: center; word-wrap: break-word;'>MLP</td><td style='text-align: center; word-wrap: break-word;'>$s^{*}, t^{*}$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>28</td><td style='text-align: center; word-wrap: break-word;'>9,26</td><td style='text-align: center; word-wrap: break-word;'>(8, 778, 3)</td><td style='text-align: center; word-wrap: break-word;'>MANO</td><td style='text-align: center; word-wrap: break-word;'>$M^{*}$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>29</td><td style='text-align: center; word-wrap: break-word;'>28</td><td style='text-align: center; word-wrap: break-word;'>(8, 21, 3)</td><td style='text-align: center; word-wrap: break-word;'>Regressor</td><td style='text-align: center; word-wrap: break-word;'>$P^{*}$</td></tr></table>

<div style="text-align: center;">Table A. The architecture of our whole network. We show the output shapes after every operation when adopting ResNet-50 as the backbone and taking 8 views of images of resolution  $256 \times 256$ as the input. #Out and #In denotes the output and input index of this operation. In the last column, we specify those outputs that have notations in our paper.</div>

##### B.3. 架构细节

表A展示了我们完整架构的细节。除非另有说明，MLP表示使用2个全连接层和1个Leaky-ReLU层（与图B中的回归头一致，不含GAP）。在双分支跨视图交互模块中，我们使用了2层CVA和VSF（例如，CVA-1表示第一个CVA分支）。

##### B.4. 损失权重

为了平衡多个损失函数，我们在损失函数中引入了 $\alpha$ 和 $\gamma$。在所有实验中，我们设定 $\alpha = 0.01$ 和 $\gamma = 100$。值得一提的是，将 $\alpha$ 调整到合适的比例对自监督学习至关重要，因为 $\alpha$ 用于平衡MANO提供的手部先验信息的强度与伪标签的可信度。当伪标签可靠时，我们可以减小 $\alpha$ 以更信任伪标签；反之，则应增大 $\alpha$，利用MANO来约束不合理的姿态。

##### B.5. 手部中心坐标系

如图A所示，我们的方法可用于有或没有相机外参的多视图推理。若已知相机外参（如HanCo [^66] 和Assembly101 [^49]），手部中心的坐标系即为世界坐标系；若没有外参（如H2O [^32] 和自然场景数据），我们会选择一个视图作为参考视图，此时手部中心位于该参考视图的坐标系中。

#### C. 实验与结果

##### C.1. 不同设置

表B展示了我们实验的不同假设条件。总体而言有两种设置，且两种设置均无需真实标注的中心点。单视图推理对应正文中的表1和表2；训练阶段可选择性地使用外参，所有用到相机外参的实验均标记为 $\odot$。多视图推理是我们方法的额外优势，对应表3；只有在测试阶段，我们才需要内参和外参来获取绝对尺度的3D姿态。

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td style='text-align: center; word-wrap: break-word;'>Scheme</td><td style='text-align: center; word-wrap: break-word;'>Stage</td><td style='text-align: center; word-wrap: break-word;'>Intrinsic</td><td style='text-align: center; word-wrap: break-word;'>Extrinsic</td><td style='text-align: center; word-wrap: break-word;'>GT Center</td></tr><tr><td rowspan="2">1</td><td style='text-align: center; word-wrap: break-word;'>Train</td><td style='text-align: center; word-wrap: break-word;'>✗</td><td style='text-align: center; word-wrap: break-word;'>✗/ $\checkmark$</td><td style='text-align: center; word-wrap: break-word;'>✗</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Test</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 rowspan="2">2</td><td style='text-align: center; word-wrap: break-word;'>Train</td><td style='text-align: center; word-wrap: break-word;'>✗</td><td style='text-align: center; word-wrap: break-word;'>$\checkmark$</td><td style='text-align: center; word-wrap: break-word;'>✗</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Test</td><td style='text-align: center; word-wrap: break-word;'>$\checkmark$</td><td style='text-align: center; word-wrap: break-word;'>$\checkmark$</td><td style='text-align: center; word-wrap: break-word;'>✗</td></tr></table>

<div style="text-align: center;">Table B. Different assumptions for HaMuCo.</div>

---

##### C.2. 数据集

Assembly101 [^49] 是一个动作识别数据集，包含4321段记录不同人玩玩具的视频。该数据集由8个同步工作的固定摄像头和4个第一人称视角摄像头拍摄而成。我们仅使用8个固定摄像头拍摄的8个序列进行训练，并在额外的序列上展示定性结果。

H2O [^32] 提供了双手操作物体时的同步多视角RGB-D图像。由4个固定摄像头和1个第一人称视角摄像头采集的数据中，训练集包含344645帧，验证集包含73380帧，测试集包含153620帧。我们仅使用该数据集中1个第一人称视角摄像头和2个固定摄像头拍摄的1个序列来评估模型在跨数据集上的性能。

##### C.3. 伪标签生成

我们通过OpenPose $^{1}$ [^6] 的一个实现[^51]，在离线阶段获取2D关节点的伪标签。对于HanCo [^66] 数据集，由于图像已经过裁剪，我们直接输入原始尺寸的图像；对于Assembly101 [^49] 数据集，我们先用手部检测器定位并裁剪手部区域，再将裁剪后的图像用于生成伪标签。

##### C.4. 模型分析

训练和推理时使用的视角数量不同。在此我们解释评估模型在不同视角数量下性能的实验中采用的摄像头设置（主提交文档中的图3）。具体而言，所有摄像头设置遵循两条规则：首先，为了公平比较，我们仅测试特定视角的性能，因为所有实验设置中仅能获取一个特定视角的数据；其次，我们选择的摄像头组合能够覆盖更宽的视野，以便在摄像头数量确定时能提供更多信息。

多视角弱监督学习。我们的方法也可应用于弱监督学习场景。因此，我们开展实验以展示模型在弱2D监督下的性能。由于HanCo数据集不同视角的2D标签是由同一个3D标签投影得到的，若将所有2D标签作为弱监督信息，可能会引入隐式的3D监督信号。因此，我们仅利用特定视角的2D标签进行弱监督学习。训练过程中，我们将标签的置信度设为1。如表C所示，引入某个视角的标签后，模型性能可得到提升。与其他方式相比，单视角且无需对齐的交互方式带来的性能提升并不显著，原因可能有两个方面：其一，从单视角推理中很难获得正确的旋转参数。

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td colspan="3">NMPJPE $\downarrow$</td><td colspan="3">PA-MPJPE $\downarrow$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Single</td><td style='text-align: center; word-wrap: break-word;'>Interact</td><td style='text-align: center; word-wrap: break-word;'>Fusion</td><td style='text-align: center; word-wrap: break-word;'>Single</td><td style='text-align: center; word-wrap: break-word;'>Interact</td><td style='text-align: center; word-wrap: break-word;'>Fusion</td></tr><tr><td colspan="6">Self-supervised learning:</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>11.17</td><td style='text-align: center; word-wrap: break-word;'>8.28</td><td style='text-align: center; word-wrap: break-word;'>7.75</td><td style='text-align: center; word-wrap: break-word;'>7.22</td><td style='text-align: center; word-wrap: break-word;'>5.42</td><td style='text-align: center; word-wrap: break-word;'>5.40</td></tr><tr><td colspan="6">Weakly-supervised learning (one view of the 2D ground-truth is available):</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>11.06 $\uparrow$0.11</td><td style='text-align: center; word-wrap: break-word;'>7.84 $\uparrow$0.44</td><td style='text-align: center; word-wrap: break-word;'>6.84 $\uparrow$0.91</td><td style='text-align: center; word-wrap: break-word;'>6.87 $\uparrow$0.35</td><td style='text-align: center; word-wrap: break-word;'>4.49 $\uparrow$0.93</td><td style='text-align: center; word-wrap: break-word;'>4.44 $\uparrow$0.96</td></tr></table>

<div style="text-align: center;">Table C. Performance comparisons of our method under self- and weak- supervised settings.</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;'>Data</td><td style='text-align: center; word-wrap: break-word;'>Backbone</td><td style='text-align: center; word-wrap: break-word;'>PA-JE $\downarrow$</td><td style='text-align: center; word-wrap: break-word;'>PA-VE $\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="7">Fully-Supervised Method:</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>YoutubeHand [^31]</td><td style='text-align: center; word-wrap: break-word;'>FreiHAND</td><td style='text-align: center; word-wrap: break-word;'>Res50</td><td style='text-align: center; word-wrap: break-word;'>8.4</td><td style='text-align: center; word-wrap: break-word;'>8.6</td><td style='text-align: center; word-wrap: break-word;'>0.61</td><td style='text-align: center; word-wrap: break-word;'>0.97</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>I2L-MeshNet [^40]</td><td style='text-align: center; word-wrap: break-word;'>FreiHAND</td><td style='text-align: center; word-wrap: break-word;'>Res50 $^{\dagger}$</td><td style='text-align: center; word-wrap: break-word;'>7.4</td><td style='text-align: center; word-wrap: break-word;'>7.6</td><td style='text-align: center; word-wrap: break-word;'>0.68</td><td style='text-align: center; word-wrap: break-word;'>0.97</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>METRO [^35]</td><td style='text-align: center; word-wrap: break-word;'>FreiHAND</td><td style='text-align: center; word-wrap: break-word;'>HRNet</td><td style='text-align: center; word-wrap: break-word;'>6.7</td><td style='text-align: center; word-wrap: break-word;'>6.8</td><td style='text-align: center; word-wrap: break-word;'>0.72</td><td style='text-align: center; word-wrap: break-word;'>0.98</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Tang et al. [^54]</td><td style='text-align: center; word-wrap: break-word;'>FreiHAND</td><td style='text-align: center; word-wrap: break-word;'>Res50</td><td style='text-align: center; word-wrap: break-word;'>6.7</td><td style='text-align: center; word-wrap: break-word;'>6.7</td><td style='text-align: center; word-wrap: break-word;'>0.72</td><td style='text-align: center; word-wrap: break-word;'>0.98</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>I2UV-HandNet [^7]</td><td style='text-align: center; word-wrap: break-word;'>FreiHAND</td><td style='text-align: center; word-wrap: break-word;'>Res50</td><td style='text-align: center; word-wrap: break-word;'>6.7</td><td style='text-align: center; word-wrap: break-word;'>6.9</td><td style='text-align: center; word-wrap: break-word;'>0.71</td><td style='text-align: center; word-wrap: break-word;'>0.98</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>MobRecon [^8]</td><td style='text-align: center; word-wrap: break-word;'>FreiHAND</td><td style='text-align: center; word-wrap: break-word;'>Res50 $^{\dagger}$</td><td style='text-align: center; word-wrap: break-word;'>6.1</td><td style='text-align: center; word-wrap: break-word;'>6.2</td><td style='text-align: center; word-wrap: break-word;'>0.76</td><td style='text-align: center; word-wrap: break-word;'>0.98</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Ours-SV</td><td style='text-align: center; word-wrap: break-word;'>Frei.</td><td style='text-align: center; word-wrap: break-word;'>Res50</td><td style='text-align: center; word-wrap: break-word;'>7.5</td><td style='text-align: center; word-wrap: break-word;'>7.5</td><td style='text-align: center; word-wrap: break-word;'>0.68</td><td style='text-align: center; word-wrap: break-word;'>0.97</td></tr><tr><td colspan="7">Weakly-Supervised Method:</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>S $^{2}$HAND [^10]</td><td style='text-align: center; word-wrap: break-word;'>Frei.</td><td style='text-align: center; word-wrap: break-word;'>EffiNet-b0</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;'>0.42</td><td style='text-align: center; word-wrap: break-word;'>0.89</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Ours-SV</td><td style='text-align: center; word-wrap: break-word;'>Frei.</td><td style='text-align: center; word-wrap: break-word;'>EffiNet-b0</td><td style='text-align: center; word-wrap: break-word;'>8.5</td><td style='text-align: center; word-wrap: break-word;'>8.6</td><td style='text-align: center; word-wrap: break-word;'>0.61</td><td style='text-align: center; word-wrap: break-word;'>0.97</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Ours-SV</td><td style='text-align: center; word-wrap: break-word;'>Frei.</td><td style='text-align: center; word-wrap: break-word;'>Res50</td><td style='text-align: center; word-wrap: break-word;'>9.8</td><td style='text-align: center; word-wrap: break-word;'>9.9</td><td style='text-align: center; word-wrap: break-word;'>0.55</td><td style='text-align: center; word-wrap: break-word;'>0.95</td></tr><tr><td colspan="7">Self-Supervised Method:</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>S $^{2}$HAND [^10]</td><td style='text-align: center; word-wrap: break-word;'>Frei.</td><td style='text-align: center; word-wrap: break-word;'>EffiNet-b0</td><td style='text-align: center; word-wrap: break-word;'>11.8</td><td style='text-align: center; word-wrap: break-word;'>11.9</td><td style='text-align: center; word-wrap: break-word;'>0.48</td><td style='text-align: center; word-wrap: break-word;'>0.92</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Ours-SV</td><td style='text-align: center; word-wrap: break-word;'>Frei.</td><td style='text-align: center; word-wrap: break-word;'>EffiNet-b0</td><td style='text-align: center; word-wrap: break-word;'>11.6</td><td style='text-align: center; word-wrap: break-word;'>11.7</td><td style='text-align: center; word-wrap: break-word;'>0.49</td><td style='text-align: center; word-wrap: break-word;'>0.93</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Ours</td><td style='text-align: center; word-wrap: break-word;'>HanCo</td><td style='text-align: center; word-wrap: break-word;'>EffiNet-b0</td><td style='text-align: center; word-wrap: break-word;'>6.3</td><td style='text-align: center; word-wrap: break-word;'>6.8</td><td style='text-align: center; word-wrap: break-word;'>0.71</td><td style='text-align: center; word-wrap: break-word;'>0.99</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Ours</td><td style='text-align: center; word-wrap: break-word;'>HanCo</td><td style='text-align: center; word-wrap: break-word;'>Res50</td><td style='text-align: center; word-wrap: break-word;'>6.2</td><td style='text-align: center; word-wrap: break-word;'>6.7</td><td style='text-align: center; word-wrap: break-word;'>0.72</td><td style='text-align: center; word-wrap: break-word;'>0.99</td></tr></table>

<div style="text-align: center;">Table D. Quantitative results on the FreiHAND evaluation set. The notation  $\dagger$ denotes using a stacked backbone structure. "Our-SV" refers to training only with our single-view network.</div>

其二，不考虑外部参数的多视角推理无法有效修正每个单视角产生的全局旋转误差。总而言之，我们的方法能够充分利用现有的2D标签，尤其是在使用多视角图像进行推理时效果更佳。

##### C.5. 人体姿态估计结果

我们的方法也可拓展到自监督人体姿态估计领域。因此，我们在Human3.6M数据集[^25]上开展实验，与EpipolarPose [^30] 和CanonPose [^56] 进行比较。我们按照CanonPose [^56] 的训练设置来训练模型。当利用摄像头外部参数进行多视角自监督学习时，EpipolarPose、CanonPose以及我们的方法的NMPJPE（mm↓）分别为76.6、74.3和71.1。

##### C.6. 额外的定量结果

FreiHand。表D展示了我们的方法与近期全监督方法之间的更多定量比较。实验结果表明，我们的自监督方法能够取得与全监督方法相当的性能[^7] [^8] [^31] [^35] [^40] [^54]。我们还将该方法与S²Hand[^10]进行了比较，这是一种弱监督环境下的手部姿态估计方法，它利用标注的2D标签而非伪标签来估计3D结果。实验结果表明，我们的方法

---

在弱监督条件下依然有效。

##### C.7. 额外的定性结果

如图A所示，我们的模型能够在多个数据集上进行推理[^32] [^49] [^66] [^68]。

图5展示了OpenPose、我们的单视图推理结果以及真实值之间的2D视觉对比。结果表明，OpenPose能够为可见关节获得合理的结果，这对自监督学习而言至关重要。然而，OpenPose的主要问题在于它对不可见关节的鲁棒性不足。当某些关节不可见时，它可能会预测出明显错误的结果，并且倾向于将可见关节误判为不可见关节。相比之下，基于我们模型且融入手部先验信息的方法，在多视图自监督学习提供足够精确的监督信号时，面对各类遮挡情况能展现出更强的鲁棒性能。

图E提供了我们的方法、EpipolarPose[^30]以及CanonPose[^56]之间的更多视觉对比。所有这些3D预测结果均来自经多视图自监督学习训练的模型的单视图推理。此外，为了便于可视化，图像中的预测结果是经过与真实值对齐处理后的结果。从两个视角的预测结果可以看出，无论手势、背景、视角、遮挡情况如何，或是手中是否有物体，我们的方法都能获得更精确的3D关节位置。

图F展示了我们的方法在Assembly101数据集测试序列上的可视化效果。我们仅训练了右手模型，左手预测结果是利用翻转后的左手裁剪图像进行推理得到的。结果表明，我们的方法能够应用于更复杂的情况，比如每个时间步中可用的手部数量未知且遮挡严重的场景。

图G对比了我们的多视图推理性能与Learnable Triangulation[^28]（代数版本）的性能。所有模型均采用自监督学习进行训练。为了便于可视化，预测结果已与真实值对齐。结果表明，当相机参数已知时，我们的方法通过多视图推理能生成更合理的结果。

图H展示了我们在H2O数据集测试序列上的跨数据集预测效果。我们利用在HanCo数据集上训练的模型，来估计来自多个未标定相机的图像中的手部姿态。结果表明，我们的方法能够泛化到相机参数未知的其他多视图场景。

图I展示了S²HAND [^10]、我们的方法以及FreiHAND数据集评估集上的真实值之间的二维预测对比结果[^68]。S²HAND的结果是通过其开源代码²并利用提供的预训练权重获得的。从图中可以看出，我们的模型在HanCo数据集上采用多视角自监督学习后，能够在FreiHAND数据集上得到合理的单视角预测结果。

图J展示了我们在HanCo数据集上的失败案例。大多数失败情况来自视角具有挑战性且遮挡严重的样本。此外，这些错误的预测主要呈现两种模式：一种是手部尺度和中心位置不准确，另一种是手部姿态错误。由于跨视角交互并未显式利用相机外参，因此难以修正那些尺度和中心位置不正确的预测结果。不过从这些结果中可以看出，该机制能在一定程度上解决手部姿态错误的问题。

#### D. 讨论

##### D.1. Qiu等人[^45]的方法与我们的方法的区别

我们的跨视角交互网络与Qiu等人[^45]的方法存在多方面差异：(1) 在动机方面，我们的跨视角交互旨在为单视角网络的自监督生成更可靠的结果，而[^45]的方法旨在融合不同视角的热图以实现多视角推理；(2) 在表征方面，我们的跨视角交互利用紧凑且有效的关节级特征进行双分支交互，而[^45]的方法是沿极线融合像素级特征，这种方式计算开销较大；(3) 在使用方面，我们的跨视角交互无需相机外参，因为我们是在语义关节空间内融合信息，而[^45]的方法则依赖外参来确定极线以进行像素特征融合。

---

![Image](images/58b93c695cd3de4a7e2bf20bc85ea2a22e953859ec75141d0f64bf7d3712953e.jpg)

<div style="text-align: center;">Figure D. 2D prediction (overlayed in the images) comparisons between OpenPose, ours, and the ground-truth on the HanCo dataset.</div>

---

![Image](images/86f76007dfeff6175805dfcee0d87b967952cebc21837604954bd6311b810e3b.jpg)

<div style="text-align: center;">Figure E. 3D prediction comparisons between our method, EpipolarPose, and CanonPose on the HanCo dataset. Our prediction and the ground-truth are shown in solid red and dashed green respectively.</div>

---

![Image](images/a2bd6f6372dc65b9e2ef46ba1c4dbd12d0a9112542428f6e9dcc6105181fff86.jpg)

<div style="text-align: center;">Figure F. 2D prediction (overlayed in the images) of our method in the testing sequence of the Assembly101 dataset. All the 2D image coordinates are obtained by projecting the same 3D world coordinates into different views. We utilize 8 views in total for inference. Each row shows 4 views of the projected 2D joints. The top 3 rows display the images on 4 views out of all the views, while the bottom 3 rows present the results of another 4 views.</div>

---

![Image](images/d72b3198ef40caee6246c7c4abf96b3153ad12b70b0a9eddce9a6c83ed0f1dd2.jpg)

<div style="text-align: center;">Figure G. 3D prediction comparisons between our method and Learnable Triangulation on the HanCo dataset. Our prediction and the ground-truth are shown in solid red and dashed green respectively. We use 8 views for inference and only show 4 images here.</div>

![Image](images/9323f157c6368b223d6368878652fce6a55625c34e71c21ff144dacc762792f4.jpg)

<div style="text-align: center;">View-1</div>

<div style="text-align: center;">View-2</div>

<div style="text-align: center;">View-3</div>

<div style="text-align: center;">Figure H. 2D prediction (overlayed in the images) of our method in the testing sequence of the H2O dataset. The results are obtained by the model trained on the HanCo dataset. We use 3 views for inference without camera extrinsics.</div>

---

![Image](images/8780ae52abd8a78f24e80ad24300bbf1d059fafa827ab35ff97e42287193d279.jpg)

<div style="text-align: center;">Figure I. 2D prediction (overlayed in the images) comparisons between S $^{2}$HAND, ours, and the ground-truth on the FreiHAND dataset.</div>

---

![Image](images/ab2b97d1828baf8c2edd3fd6b34f560005199d82e79f85cafdcff4e10e253332.jpg)

<div style="text-align: center;">Figure J. 2D prediction (overlayed in the images) of our failure cases on the HanCo dataset. From left to right, we show our predictions from the single-view network, cross-view interaction network, and the ground-truth.</div>

---

### 参考文献

[^1]: Seungryul Baek, Kwang In Kim, and Tae-Kyun Kim. Pushing the envelope for rgb-based dense 3d hand pose estimation via neural rendering. In Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, pages 1067–1076, 2019. 2, 3

[^2]: Seungryul Baek, Kwang In Kim, and Tae-Kyun Kim. Weakly-supervised domain adaptation via gan and mesh model for estimating 3d hand poses interacting objects. In Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, pages 6121–6131, 2020. 2

[^3]: Kristijan Bartol, David Bojanić, Tomislav Petković, and Tomislav Pribanić. Generalizable human pose triangulation. In Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, pages 11028–11037, 2022.

[^4]: Adnane Boukhayma, Rodrigo de Bem, and Philip HS Torr. 3d hand shape and pose from images in the wild. In Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, pages 10843–10852, 2019. 2, 3

[^5]: Yujun Cai, Liuhao Ge, Jianfei Cai, and Junsong Yuan. Weakly-supervised 3d hand pose estimation from monocular rgb images. In Proceedings of the European Conference on Computer Vision (ECCV), pages 666–682, 2018. 2, 3

[^6]: Zhe Cao, Tomas Simon, Shih-En Wei, and Yaser Sheikh. Realtime multi-person 2d pose estimation using part affinity fields. In Proceedings of the IEEE conference on computer vision and pattern recognition, pages 7291–7299, 2017. 11

[^7]: Ping Chen, Yujin Chen, Dong Yang, Fangyin Wu, Qin Li, Qingpei Xia, and Yong Tan. I2uv-handnet: Image-to-uv prediction network for accurate and high-fidelity 3d hand mesh modeling. In Proceedings of the IEEE/CVF International Conference on Computer Vision, pages 12929–12938, 2021. 2, 6, 11

[^8]: Xingyu Chen, Yufeng Liu, Yajiao Dong, Xiong Zhang, Chongyang Ma, Yanmin Xiong, Yuan Zhang, and Xiaoyan Guo. Mobrecon: Mobile-friendly hand mesh reconstruction from monocular image. In Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, pages 20544–20554, 2022. 2, 3, 6, 11

[^9]: Xingyu Chen, Yufeng Liu, Chongyang Ma, Jianlong Chang, Huayan Wang, Tian Chen, Xiaoyan Guo, Pengfei Wan, and Wen Zheng. Camera-space hand mesh recovery via semantic aggregation and adaptive 2d-1d registration. In Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, pages 13274–13283, 2021. 2, 3

[^10]: Yujin Chen, Zhigang Tu, Di Kang, Linchao Bao, Ying Zhang, Xuefei Zhe, Ruizhi Chen, and Junsong Yuan. Model-based 3d hand reconstruction via self-supervised learning. In Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, pages 10451–10460, 2021. 1, 2, 3, 5, 6, 11, 12

[^11]: Hongsuk Choi, Gyeongsik Moon, and Kyoung Mu Lee. Pose2mesh: Graph convolutional network for 3d human pose and mesh recovery from a 2d human pose. In European Conference on Computer Vision, pages 769–787. Springer, 2020. 2

[^12]: Junting Dong, Wen Jiang, Qixing Huang, Hujun Bao, and Xiaowei Zhou. Fast and robust multi-person 3d pose estimation from multiple views. In Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, pages 7792–7801, 2019. 6

[^13]: Bardia Doosti, Shujon Naha, Majid Mirbagheri, and David J Crandall. Hope-net: A graph-based model for hand-object pose estimation. In Proceedings of the IEEE/CVF conference on computer vision and pattern recognition, pages 6608–6617, 2020. 2, 4

[^14]: Zicong Fan, Adrian Spurr, Muhammed Kocabas, Siyu Tang, Michael J Black, and Otmar Hilliges. Learning to disambiguate strongly interacting hands via probabilistic per-pixel part segmentation. In 2021 International Conference on 3D Vision (3DV), pages 1–10. IEEE, 2021. 2

[^15]: Liuhao Ge, Hui Liang, Junsong Yuan, and Daniel Thalmann. Robust 3d hand pose estimation in single depth images: from single-view cnn to multi-view cnns. In Proceedings of the IEEE conference on computer vision and pattern recognition, pages 3593–3601, 2016. 2

[^16]: Liuhao Ge, Hui Liang, Junsong Yuan, and Daniel Thalmann. 3d convolutional neural networks for efficient and robust hand pose estimation from single depth images. In Proceedings of the IEEE conference on computer vision and pattern recognition, pages 1991–2000, 2017. 2

[^17]: Liuhao Ge, Zhou Ren, Yuncheng Li, Zehao Xue, Yingying Wang, Jianfei Cai, and Junsong Yuan. 3d hand shape and pose estimation from a single rgb image. In Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, pages 10833–10842, 2019. 2

[^18]: John C Gower. Generalized procrustes analysis. Psychometrika, 40(1):33–51, 1975. 5

[^19]: Shreyas Hampali, Mahdi Rad, Markus Oberweger, and Vincent Lepetit. Honnotate: A method for 3d annotation of hand and object poses. In Proceedings of the IEEE/CVF conference on computer vision and pattern recognition, pages 3196–3206, 2020. 2

[^20]: Shangchen Han, Beibei Liu, Randi Cabezas, Christopher D Twigg, Peizhao Zhang, Jeff Petkau, Tsz-Ho Yu, Chun-Jung Tai, Muzaffer Akbay, Zheng Wang, et al. Megatrack: monochrome egocentric articulated hand-tracking for virtual reality. ACM Trans. Graph., 39(4):87, 2020. 1

[^21]: Shangchen Han, Po-chen Wu, Yubo Zhang, Beibei Liu, Linguang Zhang, Zheng Wang, Weiguang Si, Peizhao Zhang, Yujun Cai, Tomas Hodan, Cabezas Randi, Tran Luan, Akbay Muzaffer, Yu Tsz-Ho, Keskin Cem, and Wang Robert. Umetrack: Unified multi-view end-to-end hand tracking for vr. ACM Transactions on Graphics, 2022. 1

[^22]: Richard Hartley and Andrew Zisserman. Multiple view geometry in computer vision. Cambridge university press, 2003. 6

[^23]: Kaiming He, Xiangyu Zhang, Shaoqing Ren, and Jian Sun. Deep residual learning for image recognition. In Proceedings of the IEEE conference on computer vision and pattern recognition, pages 770–778, 2016. 9

## [^24]: Yihui He, Rui Yan, Katerina Fragkiadaki, and Shoou-I Yu. Epipolar transformers. In Proceedings of the ieee/cvf con-

---

计算机视觉与模式识别会议，第7779–7788页，2020年。3, 6, 7

[^25]: Catalin Ionescu, Dragos Papava, Vlad Olaru, and Cristian Sminchisescu. Human3.6m: Large scale datasets and predictive methods for 3d human sensing in natural environments. IEEE transactions on pattern analysis and machine intelligence, 36(7):1325–1339, 2013. 11

[^26]: Umar Iqbal, Pavlo Molchanov, Thomas Breuel Juergen Gall, and Jan Kautz. Hand pose estimation via latent 2.5 d heatmap regression. In Proceedings of the European Conference on Computer Vision (ECCV), pages 118–134, 2018. 2

[^27]: Umar Iqbal, Pavlo Molchanov, and Jan Kautz. Weakly-supervised 3d human pose learning via multi-view images in the wild. In Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, pages 5243–5252, 2020. 1, 3, 8

[^28]: Karim Iskakov, Egor Burkov, Victor Lempitsky, and Yury Malkov. Learnable triangulation of human pose. In Proceedings of the IEEE/CVF International Conference on Computer Vision, pages 7718–7727, 2019. 3, 6, 7, 12

[^29]: Diederik P Kingma and Max Welling. Auto-encoding variational bayes. In 2nd International Conference on Learning Representations, 2014. 2

[^30]: Muhammed Kocabas, Salih Karagoz, and Emre Akbas. Self-supervised learning of 3d human pose using multi-view geometry. In Proceedings of the IEEE/CVF conference on computer vision and pattern recognition, pages 1077–1086, 2019. 1, 2, 3, 5, 6, 7, 11, 12

[^31]: Dominik Kulon, Riza Alp Guler, Iasonas Kokkinos, Michael M Bronstein, and Stefanos Zafeiriou. Weakly-supervised mesh-convolutional hand reconstruction in the wild. In Proceedings of the IEEE/CVF conference on computer vision and pattern recognition, pages 4990–5000, 2020. 2, 6, 11

[^32]: Taein Kwon, Bugra Tekin, Jan Stühmer, Federica Bogo, and Marc Pollefeys. H2o: Two hands manipulating objects for first person interaction recognition. In Proceedings of the IEEE/CVF International Conference on Computer Vision, pages 10138–10148, 2021. 2, 5, 7, 9, 10, 11, 12

[^33]: Mengcheng Li, Liang An, Hongwen Zhang, Lianpeng Wu, Feng Chen, Tao Yu, and Yebin Liu. Interacting attention graph for single image two-hand reconstruction. In Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, pages 2761–2770, 2022. 2

[^34]: Moran Li, Yuan Gao, and Nong Sang. Exploiting learnable joint groups for hand pose estimation. In Proceedings of the AAAI conference on artificial intelligence, volume 35, pages 1921–1929, 2021. 2

[^35]: Kevin Lin, Lijuan Wang, and Zicheng Liu. End-to-end human pose and mesh reconstruction with transformers. In Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, pages 1954–1963, 2021. 2, 11

[^36]: Kevin Lin, Lijuan Wang, and Zicheng Liu. Mesh graphormer. In Proceedings of the IEEE/CVF International Conference on Computer Vision, pages 12939–12948, 2021. 2

[^37]: Ilya Loshchilov and Frank Hutter. Decoupled weight decay regularization. In 7th International Conference on Learning Representations, 2019. 5

[^38]: Haoyu Ma, Zhe Wang, Yifei Chen, Deying Kong, Liangjian Chen, Xingwei Liu, Xiangyi Yan, Hao Tang, and Xiaohui Xie. Ppt: token-pruned pose transformer for monocular and multi-view human pose estimation. In European Conference on Computer Vision, pages 424–442. Springer, 2022. 3

[^39]: Gyeongsik Moon, Ju Yong Chang, and Kyoung Mu Lee. V2v-posenet: Voxel-to-voxel prediction network for accurate 3d hand and human pose estimation from a single depth map. In Proceedings of the IEEE conference on computer vision and pattern recognition, pages 5079–5088, 2018. 2

[^40]: Gyeongsik Moon and Kyoung Mu Lee. I2l-meshnet: Image-to-pixel prediction network for accurate 3d human pose and mesh estimation from a single RGB image. In European Conference on Computer Vision, pages 752–768. Springer, 2020. 2, 11

[^41]: Gyeongsik Moon, Shoou-I Yu, He Wen, Takaaki Shiratori, and Kyoung Mu Lee. Interhand2.6m: A dataset and baseline for 3d interacting hand pose estimation from a single rgb image. In European Conference on Computer Vision, pages 548–564. Springer, 2020. 2

[^42]: Franziska Mueller, Florian Bernard, Oleksandr Sotnychenko, Dushyant Mehta, Srinath Sridhar, Dan Casas, and Christian Theobalt. Generated hands for real-time 3d hand tracking from monocular rgb. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pages 49–59, 2018. 2, 3

[^43]: Adam Paszke, Sam Gross, Soumith Chintala, Gregory Chanan, Edward Yang, Zachary DeVito, Zeming Lin, Alban Desmaison, Luca Antiga, and Adam Lerer. Automatic differentiation in pytorch. In NIPS 2017 Workshop on Autodiff, 2017. 5

[^44]: Georgios Pavlakos, Xiaowei Zhou, Konstantinos G Derpanis, and Kostas Daniilidis. Harvesting multiple views for marker-less 3d human pose annotations. In Proceedings of the IEEE conference on computer vision and pattern recognition, pages 6988–6997, 2017. 3

[^45]: Haibo Qiu, Chunyu Wang, Jingdong Wang, Naiyan Wang, and Wenjun Zeng. Cross view fusion for 3d human pose estimation. In Proceedings of the IEEE/CVF International Conference on Computer Vision, pages 4342–4351, 2019. 3, 12

[^46]: Edoardo Remelli, Shangchen Han, Sina Honari, Pascal Fua, and Robert Wang. Lightweight multi-view 3d pose estimation through camera-disentangled representation. In Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, pages 6040–6049, 2020. 3

[^47]: Helge Rhodin, Jörg Spörri, Isinsu Katircioglu, Victor Constantin, Frédéric Meyer, Erich Müller, Mathieu Salzmann, and Pascal Fua. Learning monocular 3d human pose estimation from multi-view images. In Proceedings of the IEEE conference on computer vision and pattern recognition, pages 8437–8446, 2018. 3

## [^48]: Javier Romero, Dimitrios Tzionas, and Michael J. Black. Embodied hands: Modeling and capturing hands and body

---

ACM图形学交易，36(6)，2017年。2, 3, 9

[^49]: Fadime Sener, Dibyadip Chatterjee, Daniel Shelepov, Kun He, Dipika Singhania, Robert Wang, and Angela Yao. Assembly101: A large-scale multi-view video dataset for understanding procedural activities. In Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, pages 21096–21106, 2022. 2, 5, 7, 9, 10, 11, 12

[^50]: Hui Shuai, Lele Wu, and Qingshan Liu. Adaptive multi-view and temporal fusing transformer for 3d human pose estimation. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2022. 3

[^51]: Tomas Simon, Hanbyul Joo, Iain Matthews, and Yaser Sheikh. Hand keypoint detection in single images using multiview bootstrapping. In Proceedings of the IEEE conference on Computer Vision and Pattern Recognition, pages 1145–1153, 2017. 11

[^52]: Adrian Spurr, Umar Iqbal, Pavlo Molchanov, Otmar Hilliges, and Jan Kautz. Weakly supervised 3d hand pose estimation via biomechanical constraints. In European Conference on Computer Vision, pages 211–228. Springer, 2020. 2, 3

[^53]: Adrian Spurr, Jie Song, Seonwook Park, and Otmar Hilliges. Cross-modal deep variational hand pose estimation. In Proceedings of the IEEE conference on computer vision and pattern recognition, pages 89–98, 2018. 2

[^54]: Xiao Tang, Tianyu Wang, and Chi-Wing Fu. Towards accurate alignment in real-time 3d hand-mesh reconstruction. In Proceedings of the IEEE/CVF International Conference on Computer Vision, pages 11698–11707, 2021. 2, 11

[^55]: Hanyue Tu, Chunyu Wang, and Wenjun Zeng. Voxelpose: Towards multi-camera 3d human pose estimation in wild environment. In European Conference on Computer Vision, pages 197–212. Springer, 2020. 3

[^56]: Bastian Wandt, Marco Rudolph, Petrissa Zell, Helge Rhodin, and Bodo Rosenhahn. Canonpose: Self-supervised monocular 3d human pose estimation in the wild. In Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, pages 13294–13304, 2021. 1, 2, 3, 5, 6, 7, 11, 12

[^57]: Nanyang Wang, Yinda Zhang, Zhuwen Li, Yanwei Fu, Wei Liu, and Yu-Gang Jiang. Pixel2mesh: Generating 3d mesh models from single rgb images. In Proceedings of the European conference on computer vision (ECCV), pages 52–67, 2018. 4,9

[^58]: Chao Wen, Yinda Zhang, Zhuwen Li, and Yanwei Fu. Pixel2mesh++: Multi-view 3d mesh generation via deformation. In Proceedings of the IEEE/CVF international conference on computer vision, pages 1042–1051, 2019. 4, 9

[^59]: Linlin Yang, Shicheng Chen, and Angela Yao. Semihand: Semi-supervised hand pose estimation with consistency. In Proceedings of the IEEE/CVF International Conference on Computer Vision, pages 11364–11373, 2021. 2, 3

[^60]: Linlin Yang, Shile Li, Dongheui Lee, and Angela Yao. Aligning latent spaces for 3d hand pose estimation. In Proceedings of the IEEE/CVF International Conference on Computer Vision, pages 2335–2343, 2019. 2

[^61]: Linlin Yang and Angela Yao. Disentangling latent hands for image synthesis and pose estimation. In Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, pages 9877–9886, 2019. 2

[^62]: Xiong Zhang, Hongsheng Huang, Jianchao Tan, Hongmin Xu, Cheng Yang, Guozhu Peng, Lei Wang, and Ji Liu. Hand image understanding via deep multi-task learning. In Proceedings of the IEEE/CVF International Conference on Computer Vision, pages 11281–11292, 2021. 2

[^63]: Xiong Zhang, Qiang Li, Hong Mo, Wenbo Zhang, and Wen Zheng. End-to-end hand mesh recovery from a monocular rgb image. In Proceedings of the IEEE/CVF International Conference on Computer Vision, pages 2354–2364, 2019. 2, 3

[^64]: Zhe Zhang, Chunyu Wang, Weichao Qiu, Wenhu Qin, and Wenjun Zeng. Adafuse: Adaptive multiview fusion for accurate human pose estimation in the wild. International Journal of Computer Vision, 129(3):703–718, 2021. 3

[^65]: Xiaozheng Zheng, Pengfei Ren, Haifeng Sun, Jingyu Wang, Qi Qi, and Jianxin Liao. Sar: Spatial-aware regression for 3d hand pose and mesh reconstruction from a monocular гб image. In 2021 IEEE International Symposium on Mixed and Augmented Reality (ISMAR), pages 99–108. IEEE, 2021. 2, 3, 4, 9

[^66]: Christian Zimmermann, Max Argus, and Thomas Brox. Contrastive representation learning for hand shape estimation. In DAGM German Conference on Pattern Recognition, pages 250–264. Springer, 2021. 1, 2, 5, 6, 7, 9, 10, 11, 12

[^67]: Christian Zimmermann and Thomas Brox. Learning to estimate 3d hand pose from single rgb images. In Proceedings of the IEEE international conference on computer vision, pages 4903–4911, 2017. 2, 3

[^68]: Christian Zimmermann, Duygu Ceylan, Jimei Yang, Bryan Russell, Max Argus, and Thomas Brox. Freihand: A dataset for markerless capture of hand pose and shape from single rgb images. In Proceedings of the IEEE/CVF International Conference on Computer Vision, pages 813–822, 2019. 2, 5, 9, 12
