
# 实现实时3D手部网格重建中的精准对齐

唐潇 王天宇 傅志荣

香港中文大学

{xtang,wangty,cwfu}@cse.cuhk.edu.hk

## 摘要

从RGB图像进行3D手部网格重建能够支撑诸多应用场景，包括增强现实（AR）。不过，这一过程不仅需要实时处理速度，以及精准的手部姿态与形状信息，还需要合理的网格与图像对齐效果。尽管现有研究已取得不错成果，但要同时满足这三项要求仍极具挑战性。本文提出了一种全新的流程，将手部网格重建任务拆分为三个阶段：用于预测手部关节与分割结果的关节阶段；用于预测粗略手部网格的网格阶段；以及通过偏移网格来优化网格与图像对齐效果的精修阶段。通过对网络结构与损失函数进行精心设计，我们能够实现高质量的手指级网格与图像对齐，并促使模型协同工作以实现实时预测。在基准数据集上的大量定量与定性实验结果表明，我们的结果在手部网格/姿态精度以及手部图像对齐方面均优于现有最先进方法。最后，我们还展示了几个实时AR场景。

### 1. 引言

从单目视图进行3D手部网格重建是计算机视觉领域一项由来已久的任务，它在支撑和拓展诸多应用方面具有巨大潜力，例如人机交互、增强现实（AR）等。通过在AR视图中识别用户手部的3D形状与姿态，我们不仅能美化手部的外观、将虚拟物体附着于手部，还能让用户直接用手抓取并操控AR视图中的虚拟3D物体。这些令人兴奋但极具挑战性的AR应用离不开计算机视觉技术的支持。

要将手部网格重建方法应用于AR中的直接手部交互场景，需满足三项要求：(i) 重建过程必须实时运行以提供交互反馈；(ii) 重建出的手部整体姿态与形状应与AR场景中用户的真实手部相匹配；(iii) 除此之外，重建出的手部还应

![Image](images/ebc6d56a1af3c7473692bfbb10f82ebe5493bad8ccad3727c5d156c5fb3ad0a2.jpg)

<div style="text-align: center;">Figure 1. Comparing 3D hand meshes (top row) reconstructed by I2L-MeshNet [^32] (ECCV 2020) and by our method. Taking these meshes to support AR interaction (bottom row), our predicted hand mesh delivers better finger-level alignment and more natural hand occlusion with the virtual ping pong racket.</div>

在图像空间中与用户的真实手部合理对齐，以提升AR交互中的感知真实感。

目前，关于手网格重建的研究大致可以根据输入图像的类型分为两类：RGB图像或深度图像。尽管有这种分类，但近期的研究大多基于深度学习，例如一种典型的方法是使用深度神经网络来预测2D/3D手部关节坐标，以此引导手网格顶点的回归[^32]，或是参数化手部模型中的参数[^60]，比如MANO模型[^39]。其他研究则将图像特征编码为潜在特征，随后利用Graph-CNN[^15]或螺旋滤波器[^27]直接重建手网格。就支持AR中的手部交互这一目标而言，现有的手网格重建研究主要能满足需求(i)和(ii)，却无法满足需求(iii)，因为它们在追求速度和手势匹配的同时，并未有效利用2D线索（如手部边界）来构建相关框架。手网格对齐不佳可能会在AR交互中产生明显的伪影；详见图1左侧列。虽然一些近期研究试图通过可微渲染技术[^1] [^58]来实现更好的图像空间对齐，以满足需求(iii)，但由于手对齐过程需要耗时的迭代优化，它们往往难以满足需求(i)。

---

本研究的目标是同时满足需求(i)~(iii)，以支持实时AR应用。我们的核心思路是将手网格重建过程拆分为三个阶段，尤其要避免用于手对齐的迭代优化：(i) 关节阶段对输入图像进行编码，利用多任务架构预测手部分割结果和关节位置。测试时，我们只需计算并传递图像与关节特征至下一阶段。(ii) 网格阶段对传入的特征进行编码，凭借轻量化的架构快速预测粗略的3D手网格，以保证速度。(iii) 细化阶段通过局部特征投影单元提取每个网格顶点的局部特征，通过全局特征广播单元提取全局特征，随后利用小型Graph-CNN预测偏移网格，从而快速将粗略网格在AR图像空间中与用户的手对齐。在这种拆分式设计中，偏移量本质上是残差；它们是网络能够基于前期阶段收集的特征轻松学习回归的小向量。此外，我们利用可微渲染技术来提升手指级别的对齐效果。

我们开展了大量实验，结果表明与现有最先进方法相比，我们提出的方法提升了手网格重建的精度。同时，细化阶段能够高效实现良好的图像-网格对齐，以支撑AR应用。最后，我们进一步展示了几种AR场景，以体现该方法支持实时AR交互的潜力。

### 2. 相关工作

3D手部姿态估计旨在从单目RGB/深度图像中回归手部关节的3D位置。近期的研究主要基于深度学习[^61] [^5] [^31] [^37] [^56] [^57] [^28] [^6] [^9] [^49] [^2] [^14] [^22] [^59] [^44] [^34] [^17]，还有一些研究[^18] [^47] [^12]进一步预测了手-物体姿态。其中，Li等人[^28]设计了一种二元选择器，将关节分组并针对每组独立学习特征，以避免负面迁移。Cai等人[^4]利用合成数据和带有弱标注的真实RGB图像来训练网络。最近，Transformer[^48]被采用以进一步提升手部姿态估计的精度[^20] [^21]。

基于深度的3D手部网格重建旨在从深度图像中生成手部网格。早期的研究[^45] [^46] [^24]通常采用迭代优化的方式，将可变形手部网格拟合到深度图像上。近年来，深度学习进一步助力提升了性能。Malik等人[^30]采用CNN来回归线性混合蒙皮模型的参数。Wan等人[^50]将深度图像中的特征映射到网格上，再通过采样网格来恢复手部网格。Malik等人[^29]对深度图像进行体素化，并应用3D卷积来重建手部网格。另一方面，Mueller等人[^35]利用深度相机实时追踪双手交互情况。基于RGB的3D手部网格重建旨在利用普通RGB相机重建手部网格[^54] [^33] [^13] [^38] [^16] [^51] [^11] [^42] [^55] [^8]。一种常用方法是利用MANO[^39]这类参数化统计模型来训练深度神经网络，该模型通过姿态和形状参数对给定的三角形手部网格进行参数化。Boukhayma等人[^3]回归MANO参数和视角参数，以便将预测的MANO模型投影到图像空间以进行监督。Zhang等人[^58]和Baek等人[^1]采用可微渲染方法来监督训练，以实现轮廓对齐。Zhou等人[^60]首先预测手部关节的3D坐标，随后将关节预测结果作为先验，通过逆运动学网络生成手部网格。Moon等人[^32]引入了图像到像素的网络来提升重建精度。

为了在深度神经网络中显式编码网格结构，Graph-CNN被广泛用于手部网格重建。不过，Graph-CNN是基于网格拓扑来聚合相邻特征的，因此在处理长距离特征时效率较低。为克服这一缺陷，Ge等人[^15]和Choi等人[^10]提出采用粗到细的方式，利用Graph-CNN回归手部网格顶点。最近，Kulon等人[^27]应用螺旋滤波器来进行邻域选择。Spurr等人[^43]提出了结合弱监督的生物力学约束，从而有效利用额外的2D标注图像。

现有的手部网格重建研究大多侧重于提高手势预测精度，却未能有效利用图像中的二维线索。因此，这些研究在手部与图像的对齐方面表现欠佳，而这种对齐对于增强现实应用而言实则至关重要。在本研究中，我们提出将手部网格估计重建过程解耦，使各个阶段能专注于特定任务，从而实现高效的网络学习和轻量级架构。借助这种方式，我们的方法能够高效生成高质量的3D手部网格，使其与增强现实视图中的用户手部对齐，同时还能保证实时性能。

### 3. 方法

图2展示了我们从输入的RGB照片中重建手部网格的三阶段框架：

(i) 关节阶段对输入图像进行编码，并预测手部分割掩码和手部关节J。

(ii) 网格阶段会编码前一阶段的特征，包括来自关节解码器的关节特征$F_{j}$以及来自图像编码器的浅层图像特征$F_{l}$，随后预测粗略的手部网格$M_{r}$。

(iii) 细化阶段会将前一阶段投影得到的局部和全局特征与粗略网格中的顶点进行聚合，随后采用图卷积神经网络（GCN）来回归偏移网格$\Delta M$，从而生成最终的手部网格$M_{f}=M_{r}+\Delta M$。

---

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

<div style="text-align: center;">Element-wise sum → Local feature projection → Global feature broadcast → Branches not used in testing</div>

<div style="text-align: center;">Figure 2. Our proposed framework. From the input image with the user's hand, the joint stage first extracts feature map  $F_{\mathcal{I}}$ and sends it to two decoders, one for hand segmentation and the other for generating joint feature  $F_{j}$ and predicting the hand-joint locations  J. Subsequently, the mesh stage fuses  $F_{j}$ and the shallow image feature  $F_{l}$ from the joint stage for predicting rough hand mesh  $M_{r}$. Lastly, we aggregate image feature  $F_{l}$ from the joint stage with the shallow layers of the joint encoder and global feature  $F_{g}$ from the mesh stage, and passes the combined feature and the rough mesh to the graph convolutional layers (GCN) in the refine stage to regress offset mesh  $\Delta M$ and produce the final hand mesh  $M_{f} = M_{r} + \Delta M$. The scissor icon means the corresponding branch can be cut off during the testing.</div>

我们框架中的每个阶段都有明确的目标，因此它们能够更好地专注于学习相关特征：例如，关节阶段负责整体手部形状和关节，网格阶段负责粗略手部网格，而细化阶段则用于学习如何回归偏移向量，以使粗略网格与图像空间中的用户手部对齐。此外，每个阶段的网络模型都可以保持小巧紧凑，以实现实时性能。接下来，我们将详细介绍这三个阶段。

#### 3.1. 关节阶段

给定输入图像后，关节阶段首先使用特征提取器对其编码，随后将编码后的特征$F_{\mathcal{I}}$送入两个分支：一个用于预测手部关节，另一个用于预测手部分割。在手部关节分支中，我们使用特征解码器生成关节特征图$F_{j}$，随后通过多个膨胀卷积层和soft-argmax $F_{j}$，从$F_{\mathcal{I}}$和[^7]中回归出手部关节位置，也就是手部21个关节的3D坐标（记为J），其策略与[^32]类似：

 $$ \left\{\begin{array}{r c l}{J_{x}}&{=}&{\operatorname{s o f t-a r g}\operatorname*{m a x}\bigl(\operatorname{C o n v}_{\mathrm{1D}}\bigl(a v g^{x}(F_{j})\bigr)\bigr),}\\ {J_{y}}&{=}&{\operatorname{s o f t-a r g}\operatorname*{m a x}\bigl(\operatorname{C o n v}_{\mathrm{1D}}\bigl(a v g^{y}(F_{j})\bigr)\bigr),}\\ {J_{z}}&{=}&{\operatorname{C o n v}_{\mathrm{1D}}\bigl(\Phi\bigl(a v g^{x,y}\bigl(F_{\mathcal{I}}\bigr)\bigr)\bigr),}\\ \end{array}\right. $$

其中，J中的下标x和y分别表示图像空间和深度；$\text{Conv}_{1D}$表示一维卷积；$\Phi$表示一个模块，它由全连接层、一维批量归一化以及用于将特征向量从$\mathbb{R}^{C}$重新排列为$\mathbb{R}^{c' \times d}$的reshape函数组成；C是特征向量的通道数；d是$avg^x(F_l)$的大小；$c' = C/d$。

考虑到我们需要让重建出的手部网格与图像空间中的用户手部实现合理的对齐，因此我们利用图像编码器输出的浅层特征来更好地捕捉手部的细微细节，尤其是边缘处的细节。为此，我们在关节阶段引入了另一个用于手部分割的预测头（见图2），该预测头使用U-Net [^40]来处理编码后的特征图并预测手部分割结果。

#### 3.2. 网格阶段

在网格生成阶段，我们首先通过关节编码器融合来自关节阶段的关节特征$F_{j}$与浅层图像特征$F_{l}$；详见图2。注意我们选择$F_{j}$而非J作为输入，因为预测的关节点J可能不够准确，从而可能误导重建过程。此外，结合浅层特征$F_{l}$有助于保留图像特征。融合后的特征随后被送入编码单元，以生成全局网格特征$F_{g}$。之后，我们通过多个膨胀卷积层和soft-argmax操作，从$M_{r}$中回归出手部网格中顶点的3D坐标$F_{g}$。

由于粗略网格是由原始全局特征的低分辨率$(1/64\times1/64$恢复而来的，而膨胀卷积核会导致大部分局部特征丢失，因此结果在边界处往往较为平滑且采样不足。所以，粗略网格可能无法与输入图像中的用户手部很好地对齐。不过，这一阶段能够快速生成捕捉整体手部形状的3D粗略手部网格，而细化阶段则可以通过回归每个顶点的偏移向量来对网格进行微调，这些偏移向量较小且易于学习。

#### 3.3. 细化阶段

图2的右下角展示了我们如何对前一网格阶段预测的粗略网格$M_{r}$进行残差细化。受[^25]、[^26]和[^52]的启发，我们设计了局部特征投影单元与全局特征广播单元。

---

![Image](images/24c705ae1d615b7ddc732c10c367f6a8636a9da2a734787bfbbbc1575d61ae78.jpg)

<div style="text-align: center;">Figure 3. Through a 3D-to-2D projection from the 3D hand mesh to the 2D image space, we can extract high-resolution image features in the image feature space with a bilinear interpolation and collect image features for each vertex in the rough hand mesh.</div>

以便分别从输入图像和之前的编码层中进一步提取局部与全局特征。

局部特征投影单元。为了生成与输入图像中真实手部对齐的精细手部网格，我们受[^25]的启发，设计了局部特征投影单元，基于之前的浅层网络与输入图像，为粗略网格中的每个顶点提取单一的局部特征向量。

与[^52]类似，我们首先通过3D到2D投影，将每个网格顶点映射到输入图像的2D图像空间（即特征图的空间域），如图3所示。接着，我们在特征图上对每个投影后的顶点周围执行双线性插值，以提取相关的特征向量。在此，局部特征投影单元会收集来自输入图像、图像编码器第一层以及关节编码器第一层的特征；详见图2中的浅蓝色箭头。

全局特征广播单元。局部特征虽有助于处理细节，但还不够充分，因为它们无法提供关于整体网格结构的（全局）信息。针对这一问题，我们引入了全局特征广播单元，将网格的全局特征广播给每个网格顶点。在此，受[^26]的启发，我们取用网格阶段关节编码器中生成的深层特征$F_g$，对其应用全局平均池化以得到单一的一维向量，再通过全连接层将其通道维度缩减为原来的1/4。之后，我们将这个全局特征向量附加到粗略网格的每个顶点上；详见图2中从$F_g$出发的浅紫色箭头。

图卷积神经网络（Graph-CNN）。在从局部特征投影单元收集局部特征、从全局特征广播单元收集全局特征之后，我们会将网格中每个顶点上的所有特征拼接起来，再把拼接后的网格特征送入图卷积神经网络。从宏观上看，图卷积神经网络旨在根据每个网格顶点的输入三维坐标以及所收集的局部和全局特征，为每个顶点估算一个三维偏移向量，从而将粗糙的网格对齐到图像中的手部。这一处理过程是通过在手部网格拓扑上传播特征来完成的。对于图卷积层，我们采用了

![Image](images/ef214f29f40959259f62c2645aae781835818267ede653189cd9c2389bbf7471.jpg)

<div style="text-align: center;">Figure 4. An illustration of our Graph-CNN network, whose input is the concatenated mesh feature (see Figure 2). This network starts with a GINConvBlock, followed by three GINResBlocks and another GINConvBlock, to produce the offset mesh  $\Delta M$.</div>

源自[^53]的图同构网络（Graph Isomorphism Network, GIN）卷积公式，其定义如下：

 $$ x_{i}^{\prime}=\mathrm{M L P s}(x_{i}+\sum_{j\in\mathcal{N}(i)}x_{j}), $$

其中$x_i$是图中第i个节点（相当于粗糙网格中的第i个顶点）的特征；$x'_i$是该节点更新后的特征；$\mathcal{N}(i)$是第i个节点的相邻节点索引集；MLP表示一系列多层感知机。图卷积神经网络的框架如图4所示。网络以GIN-ConvBlock开始，该模块包含一个带有ReLU激活函数和一维批量归一化的GIN卷积层。之后，网络使用三个[^26]，每个包含两个GINConvBlocks和一个恒等连接，随后再使用一个GINConvBlock，以生成偏移网格$\Delta M$。

#### 3.4. 训练与推理

我们将数据集表示为$\{I^i, S^i, J_{gt}^i, M_{gt}^i\}_{i=1}^N$，其中N为数据集中的样本总数；$I^i$是第i个输入图像；$S^i$是与之对应的手部二值掩码；$J_{gt}^i$和$M_{gt}^i$分别是与之对应的手部标注三维关节坐标和网格坐标。需要注意的是，三维关节坐标也可以通过预定义的回归矩阵G从网格中计算得出，即$e.g., J_{gt}^i = GM_{gt}^i$。

我们采用L1损失来构建网格损失$\mathcal{L}_{\text{mesh}}$和关节损失$\mathcal{L}_{\text{joint}}$，以监督我们三阶段框架中网格和关节的预测结果：

 $$ \mathcal{L}_{\mathrm{m e s h}}=||\;M_{g t}^{i}-M_{r}^{i}\;||+||\;M_{g t}^{i}-M_{f}^{i}\;||, $$

 $$ \begin{aligned}\mathcal{L}_{joint}=\left|\right|J_{gt}^{i}-J^{i}\left|\right|+\left|\right|J_{gt}^{i}-G M_{r}^{i}\left|\right|\\ \quad+\left|\right|J_{gt}^{i}-G M_{f}^{i}\left|\right|,\end{aligned} $$

此外，受[^52]的启发，我们采用法向损失$\mathcal{L}_{norm}$来保留表面法向，同时采用边长损失$\mathcal{L}_{edge}$来惩罚偏离正常位置的顶点：

 $$ \begin{aligned}\mathcal{L}_{norm}&=\sum_{f\in M_{gt}^{i}}\sum_{e\in f}||\left\langle\vec{e_{r}},n_{gt}^{f}\right\rangle||\\&+\sum_{f\in M_{gt}^{i}}\sum_{e\in f}||\left\langle\vec{e_{f}},n_{gt}^{f}\right\rangle||\end{aligned} $$

---

 $$ \begin{aligned}and\mathcal{L}_{edge}&=\sum_{f\in M_{gt}^{i}}\sum_{e\in f}||\left|\vec{e_{f}}\right|-\left|\vec{e_{gt}}\right||\\&+\sum_{f\in M_{gt}^{i}}\sum_{e\in f}||\left|\vec{e_{r}}\right|-\left|\vec{e_{gt}}\right|||,\end{aligned} $$

其中f表示一个三角形面；e表示三角形的一条边；$\vec{e_{gt}}$、$\vec{e_{r}}$和$\vec{e_{f}}$分别表示来自$M_{gt}^{i}$、$M_{r}^{i}$和$M_{f}^{i}$的、位于面f上的边向量；$n_{gt}^{f}$则表示基于$M_{gt}^{i}$的面f的表面法向。

接下来，我们采用标准的交叉熵损失来监督手部分割：

 $$ \mathcal{L}_{\mathrm{s i l}}=-\sum_{j}^{H\times W}y^{j}\log p^{j}, $$

其中$H \times W$表示$S^i$的尺寸；$y^j$表示$S^i$中的第j个像素；$p^j$表示第j个像素的预测结果。

最后，我们采用可微渲染器将预测得到的最终手部网格$M_f$渲染到图像空间中，通过渲染损失$\mathcal{L}_{\text{render}}$来监督对齐效果。与[^58]和[^1]使用二值轮廓掩码进行监督的方式不同，我们将真实手部网格的手指部分涂成不同颜色，通过颜色匹配来监督预测结果，从而促进手指级别的识别。由于绘制图像中的颜色反映了手指与手掌之间的遮挡关系，“渲染”还能进一步提升关节预测的准确性。具体来说，我们有

 $$ \mathcal{L}_{\mathrm{r e n d e r}}=\frac{1}{H_{\mathcal{R}}\times W_{\mathcal{R}}}\sum_{j}^{H_{\mathcal{R}}\times W_{\mathcal{R}}}||\mathcal{R}(M_{f}^{i})^{j}-\mathcal{R}(M_{g t}^{i})^{j}||^{2}, $$

其中，$\mathcal{R}$ 表示可微渲染器；$H_{\mathcal{R}} \times W_{\mathcal{R}}$ 表示 $\mathcal{R}$ 的输出分辨率；而 $\mathcal{R}(M_{f}^{i})^{j}$ 和 $\mathcal{R}(M_{gt}^{i})^{j}$ 分别表示像素 j 在 $\mathcal{R}(M_{f}^{i})$ 和 $\mathcal{R}(M_{gt}^{i})$ 中的颜色。

我们的总体损失函数为 $\mathcal{L} = \mathcal{L}_{\mathrm{mesh}} + \lambda_j \mathcal{L}_{\mathrm{joint}} + \lambda_n \mathcal{L}_{\mathrm{normal}} + \lambda_e \mathcal{L}_{\mathrm{edge}} + \lambda_s \mathcal{L}_{\mathrm{sil}} + \lambda_r \mathcal{L}_{\mathrm{render}}$，其中我们经验性地设定 $\lambda_j = \lambda_n = \lambda_e = 1$、$\lambda_s = 10$ 和 $\lambda_r = 0.1$。

在推理阶段，我们可以关闭手部分割分支以及关节预测阶段的手部关节预测模块以节省计算时间，且不会降低性能；具体可参见图2中的剪刀图标。

### 4. 实验与结果

#### 4.1. 实验设置

数据集。(i) FreiHAND [^62] 包含 32,560 个真实训练样本和 3,960 个真实测试样本,均使用 MANO 模型进行标注。我们将 FreiHAND 同时用于训练和测试。需要注意的是,我们从训练集中随机选取了 2,000 个样本用于对齐评估,其余样本用于训练。(ii) ObMan [^18] 具有 141,550

<div style="text-align: center;">Table 1. Quantitative comparisons between our method and state-of-the-arts on the FreiHAND dataset.  $\downarrow$ means the lower the better;  $\uparrow$ means the higher the better; and  $*$ means the method requires 2D joint annotations as input. The unit of ME and PE is 10mm.</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td style='text-align: center; word-wrap: break-word;'>Methods</td><td style='text-align: center; word-wrap: break-word;'>venue</td><td style='text-align: center; word-wrap: break-word;'>ME $\downarrow$</td><td style='text-align: center; word-wrap: break-word;'>PE $\downarrow$</td><td style='text-align: center; word-wrap: break-word;'>F@5mm $\uparrow$</td><td style='text-align: center; word-wrap: break-word;'>F@15mm $\uparrow$</td><td style='text-align: center; word-wrap: break-word;'>FPS</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Mean shape [^62]</td><td style='text-align: center; word-wrap: break-word;'>ICCV2019</td><td style='text-align: center; word-wrap: break-word;'>1.64</td><td style='text-align: center; word-wrap: break-word;'>1.71</td><td style='text-align: center; word-wrap: break-word;'>0.376</td><td style='text-align: center; word-wrap: break-word;'>0.873</td><td style='text-align: center; word-wrap: break-word;'>-</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>MANO fit [^62]</td><td style='text-align: center; word-wrap: break-word;'>ICCV2019</td><td style='text-align: center; word-wrap: break-word;'>1.37</td><td style='text-align: center; word-wrap: break-word;'>1.37</td><td style='text-align: center; word-wrap: break-word;'>0.439</td><td style='text-align: center; word-wrap: break-word;'>0.892</td><td style='text-align: center; word-wrap: break-word;'>-</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Hasson et al. [^18]</td><td style='text-align: center; word-wrap: break-word;'>ICCV2019</td><td style='text-align: center; word-wrap: break-word;'>1.33</td><td style='text-align: center; word-wrap: break-word;'>1.33</td><td style='text-align: center; word-wrap: break-word;'>0.429</td><td style='text-align: center; word-wrap: break-word;'>0.907</td><td style='text-align: center; word-wrap: break-word;'>20</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Boukh. et al. [^3]</td><td style='text-align: center; word-wrap: break-word;'>CVPR2019</td><td style='text-align: center; word-wrap: break-word;'>1.32</td><td style='text-align: center; word-wrap: break-word;'>3.50</td><td style='text-align: center; word-wrap: break-word;'>0.427</td><td style='text-align: center; word-wrap: break-word;'>0.894</td><td style='text-align: center; word-wrap: break-word;'>10</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>ExPose [^11]</td><td style='text-align: center; word-wrap: break-word;'>ECCV2020</td><td style='text-align: center; word-wrap: break-word;'>1.22</td><td style='text-align: center; word-wrap: break-word;'>1.18</td><td style='text-align: center; word-wrap: break-word;'>0.484</td><td style='text-align: center; word-wrap: break-word;'>0.918</td><td style='text-align: center; word-wrap: break-word;'>-</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>MANO CNN [^62]</td><td style='text-align: center; word-wrap: break-word;'>ICCV2019</td><td style='text-align: center; word-wrap: break-word;'>1.09</td><td style='text-align: center; word-wrap: break-word;'>1.10</td><td style='text-align: center; word-wrap: break-word;'>0.516</td><td style='text-align: center; word-wrap: break-word;'>0.934</td><td style='text-align: center; word-wrap: break-word;'>-</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Kulon et al. [^27]</td><td style='text-align: center; word-wrap: break-word;'>CVPR2020</td><td style='text-align: center; word-wrap: break-word;'>0.86</td><td style='text-align: center; word-wrap: break-word;'>0.84</td><td style='text-align: center; word-wrap: break-word;'>0.614</td><td style='text-align: center; word-wrap: break-word;'>0.966</td><td style='text-align: center; word-wrap: break-word;'>60</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>I2L-MeshNet [^32]</td><td style='text-align: center; word-wrap: break-word;'>ECCV2020</td><td style='text-align: center; word-wrap: break-word;'>0.76</td><td style='text-align: center; word-wrap: break-word;'>0.74</td><td style='text-align: center; word-wrap: break-word;'>0.681</td><td style='text-align: center; word-wrap: break-word;'>0.973</td><td style='text-align: center; word-wrap: break-word;'>33.3</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Pose2Mesh $^{*}$ [^10]</td><td style='text-align: center; word-wrap: break-word;'>ECCV2020</td><td style='text-align: center; word-wrap: break-word;'>0.76</td><td style='text-align: center; word-wrap: break-word;'>0.74</td><td style='text-align: center; word-wrap: break-word;'>0.683</td><td style='text-align: center; word-wrap: break-word;'>0.973</td><td style='text-align: center; word-wrap: break-word;'>22</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Our w/o ObMan [^18]</td><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'>0.71</td><td style='text-align: center; word-wrap: break-word;'>0.71</td><td style='text-align: center; word-wrap: break-word;'>0.706</td><td style='text-align: center; word-wrap: break-word;'>0.977</td><td style='text-align: center; word-wrap: break-word;'>39.1</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Our w/ ObMan [^18]</td><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'>0.67</td><td style='text-align: center; word-wrap: break-word;'>0.67</td><td style='text-align: center; word-wrap: break-word;'>0.724</td><td style='text-align: center; word-wrap: break-word;'>0.981</td><td style='text-align: center; word-wrap: break-word;'>39.1</td></tr></table>

个使用 MANO 模型渲染的合成训练样本。我们还在 ObMan 上训练网络以进一步提升其性能。(iii) EgoDexter [^36] 包含 1,485 个以自我中心视角捕获的真实样本;我们仅将其用于测试。

为了评估图像空间对齐效果，我们将投影得到的手部网格轮廓与真实轮廓在两个常用的分割指标上进行对比：(i) 平均交并比（mIoU），用于衡量重叠区域；(ii) 豪斯多夫距离（HD），即一个集合中某点到另一个集合中最近点的距离的最大值，因此对边界更为敏感。我们在评估中报告95%的HD值。

为了评估图像空间对齐,我们在两个常见的分割指标上将投影的手部网格轮廓与真实值进行比较:(i) 平均交并比(mIoU),用于测量重叠区域;(ii) Hausdorff 距离(HD),即一个集合到另一集合最近点的最大距离,因此对边界更为敏感。我们在评估中报告 95% HD。

实现细节。我们使用在 ImageNet [^19] 上预训练的 ResNet-50 [^41] 作为关节/网格编码器。我们的网络使用 Adam 优化器在两块 Nvidia RTX Titan GPU 上进行训练,每个 GPU 的批量大小为 32,共训练 25 个 epoch,初始学习率为 $1e^{-4}$(每 10 个 epoch 衰减率为 0.1)。我们将输入图像大小调整为 $256 \times 256$,并通过随机缩放、旋转和颜色抖动对数据进行增强。在关节点阶段切除了手部分割和关节预测分支后,我们的网络在 Nvidia RTX 2080 Ti 上以每秒 39.1 帧的速率运行。我们的代码已在 <https://wbstx.github.io/handar> 发布。

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

我们参考现有研究[^62] [^18] [^3] [^11] [^27] [^32] [^10]，在FreiHAND测试集上定量比较我们的方法与最先进的方法。由于真实值

---

![Image](images/c4b48cf10d4998113addcfd0186e21249e7a2220eb482b689900b4ab52e3bc64.jpg)

![Image](images/483aa2968cb02eecdff23fbcc226125c3451a53a99bfc274b679bc84fc1afa21.jpg)

![Image](images/a294ee83116612f40c03c5aa7c93963ed390c01b461d684b1d10cee200cf07ce.jpg)

![Image](images/57775f7decdba7b71dfedd87c80858aeda784fb4fa2232f672d3198340dd1c38.jpg)

<div style="text-align: center;">Figure 5. The mesh/pose AUC comparison with the state-of-the-art methods. From left to right, the first and second plots present the mesh and pose AUC results on the FreiHAND dataset, respectively, whereas the third plot presents the pose AUC result on the EgoDexter dataset. The fourth plot presents the speed-accuracy plot of 3D hand-mesh reconstruction on the FreiHAND test-set, in which we obtain the inference time by testing all methods on Nvidia RTX2080Ti-GPU. Our method achieves the best performance, while being real-time.</div>

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

<div style="text-align: center;">Figure 6. Visual comparisons between our method and state-of-the-arts. The input images (left column) are from the FreiHAND dataset [^62]. Comparing the other three columns, we can see that our method predicts better hand meshes that match the gestures in input images with high-quality finger-level alignment.</div>

由于测试集中的部分数据无法访问，评估过程是通过将测试结果提交到在线服务器来完成的。表1和图5左侧的两个图表展示了相关结果，表明我们的方法在所有上述指标上均优于其他方法。此外，图6展示了数据集中三张测试图像的视觉对比结果。对于每张输入图像，第一行显示各方法的手部图像对齐情况，第二行则显示预测出的手部网格。需要注意的是，Kulon等人的代码[^27]尚未发布，而Pose2Mesh[^10]需要以2D关节标注作为输入，因此我们在比较中排除了这两种方法。从结果来看，其他方法可能无法正确预测手势，或者无法在图像空间中很好地对齐手部网格。相比之下，我们的方法能够预测更精确的手部姿态与形状，并能将手部网格与图像中的手部完美对齐。更多对比结果可参见补充材料。

接下来，我们在一个未见过的数据集（未用于训练）EgoDexter[^36]上对本文方法进行泛化能力评估，同时与几种现有的姿态估计方法[^23] [^3] [^60] [^16] [^54]进行比较。参照[^60]的做法，我们以指尖的质心作为基准来对齐预测结果与真实值。图5中的第三个图表展示了AUC结果。需要注意的是，由于Zhou等人[^60]并未提供其在EgoDexter数据集上的姿态PCK曲线，我们仅报告其AUC值。另一方面，[^32]未在EgoDexter数据集上测试性能，因此我们未在图中展示其结果。从图表中可以看出，我们的方法取得了最高的姿态AUC值，优于所有其他方法，这体现了其泛化能力及实际应用潜力。更多来自EgoDexter和FreiHAND数据集的定性结果请参见图7。此外，图5第四个图表展示了速度-精度的对比结果。从该图表以及表1中均可看出，我们的方法在网格预测质量上优于所有近期方法，同时还能实现实时性能。

#### 4.3. 对齐效果对比

为了进一步评估对齐质量，我们渲染预测出的手部网格以生成轮廓掩码，再利用上述指标将其与真实轮廓进行比较。在此，我们将我们的方法与I2L-MeshNet[^32]进行比较，该方法在无需2D关节标注的情况下就能在FreiHAND数据集上取得最先进的性能。由于FreiHAND测试集没有真实的掩码数据，我们从中随机选取了2,000张图像

---

![Image](images/4262df8df51f2bff67715ffe87d423b1abe19f09cbea6ebbbe126907a86acafe.jpg)

<div style="text-align: center;">Figure 7. More qualitative results on test images in the EgoDexter dataset (left) and in the FreiHAND dataset (right).</div>

![Image](images/46b38e1e14a3a5721baa8dd01412d5c909f39c99ca9cfeecbaac95ff83297b1b.jpg)

<div style="text-align: center;">Figure 8. The alignment evaluation is conducted on two levels. For hand-level alignment, we evaluate only the silhouette of the whole hand between the prediction and ground truth. For finger-level alignment, we evaluate individual fingers and palm. Finger-level alignment is more demanding than hand-level alignment.</div>

<div style="text-align: center;">Table 2. Quantitative alignment comparisons between our method and I2L-MeshNet [^32].  $\downarrow$ means the lower the better and  $\uparrow$ means the higher the better. Note that we report the average HD for the fingers and palm in the evaluation of finger-level alignment.</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td rowspan="2">Methods</td><td colspan="2">Hand-level</td><td colspan="2">Finger-level</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>mIoU $\uparrow$</td><td style='text-align: center; word-wrap: break-word;'>HD $\downarrow$</td><td style='text-align: center; word-wrap: break-word;'>mIoU $\uparrow$</td><td style='text-align: center; word-wrap: break-word;'>HD $\downarrow$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>I2L-MeshNet [^32]</td><td style='text-align: center; word-wrap: break-word;'>92.08</td><td style='text-align: center; word-wrap: break-word;'>6.17</td><td style='text-align: center; word-wrap: break-word;'>71.07</td><td style='text-align: center; word-wrap: break-word;'>8.42</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Our w/o ObMan [^18]</td><td style='text-align: center; word-wrap: break-word;'>92.86</td><td style='text-align: center; word-wrap: break-word;'>4.91</td><td style='text-align: center; word-wrap: break-word;'>77.08</td><td style='text-align: center; word-wrap: break-word;'>7.06</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Our w/ ObMan [^18]</td><td style='text-align: center; word-wrap: break-word;'>92.95</td><td style='text-align: center; word-wrap: break-word;'>4.70</td><td style='text-align: center; word-wrap: break-word;'>77.33</td><td style='text-align: center; word-wrap: break-word;'>6.82</td></tr></table>

我们随机从训练集中选取2,000张图像用于验证，并以$224 \times 224$分辨率评估手部图像对齐效果，具体分为两个层面：(i) 手部级别对齐，仅评估手部的二值轮廓；(ii) 手指级别对齐，评估每个手指及手掌的对齐情况。需注意，手指级别对齐的要求比手部级别更高；具体示意图请参见图8。

表2展示了定量对比结果，从中可以看出我们的方法在mIoU值上远高于I2LMeshNet[^32]，且HD值更小，这反映出我们的方法在整体图像-网格对齐效果以及边界精度方面均更具优势。

![Image](images/dec5587f813db94f6988e4f2936279cf4dc61e22ea6aada4b2060568569cf460.jpg)

<div style="text-align: center;">Figure 9. Ablation study on our decoupled design.</div>

#### 4.4. 消融实验

解耦设计的效果。为了评估我们的解耦设计，我们通过简化流程来进行消融研究，主要考察以下两种情况：(i) 移除关节阶段，直接在网格阶段预测手部分割结果；(ii) 移除细化阶段，将$M_{r}$视为最终的手部网格。消融研究结果见表3的前两行。我们可以观察到，移除这两个阶段中的任意一个都会导致性能显著下降，这证明了每个阶段的有效性及其对整个框架提升性能的贡献。需要注意的是，我们进行了三次实验，并报告了每种消融情况的平均值。视觉对比结果请参见图9。

细化单元与损失项的影响。此外，我们还评估了细化阶段中各个单元以及不同损失项的作用，具体考察以下情况：(i) 移除局部投影单元；(ii) 移除全局广播单元；(iii) 由GraphCNN直接回归最终的网格顶点，而非偏移向量；(iv) 移除分割分支和$\mathcal{L}_{sil}$；(v) 移除$\mathcal{L}_{render}$。表3列出了消融研究结果，同样我们进行了三次实验并报告了每种消融情况的平均值。显然，完整的流程在所有指标上表现最佳，移除任何组件都会降低整体性能，这说明每个组件都有助于改善最终结果。值得注意的是，当我们使用Graph-CNN直接回归网格顶点而非偏移向量时，方法的性能会出现大幅下滑。原因在于我们的Graph-CNN被设计为回归较小的值，这对规模较小的Graph-CNN而言相对容易学习。

---

![Image](images/1441ef4dc7bb992d9e65ffc137fbcde2bdb57e7425574a6ed95933d077cfa144.jpg)

<div style="text-align: center;">Figure 10. We showcase four example AR interaction scenarios to demonstrate our method's applicability (from left to right): (i) a virtual paper band around the user's hand, (ii) a virtual try-on with a ring (note the plausible hand occlusions with the virtual objects); (iii) we may splash virtual water on the user's hand and run a physical simulation, and (iv) the user can directly grab and manipulate a virtual walkie-talkie, and press a button on it. Please watch full videos of these scenarios in <https://wbstx.github.io/handar.</div>>

<div style="text-align: center;">Table 3. Comparing the performance of our full pipeline (bottom-most) with various ablation cases. For each case in the experiment, we conducted three runs and reported the average.</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td style='text-align: center; word-wrap: break-word;'>Models</td><td style='text-align: center; word-wrap: break-word;'>Mesh AUC $\uparrow$</td><td style='text-align: center; word-wrap: break-word;'>Pose AUC $\uparrow$</td><td style='text-align: center; word-wrap: break-word;'>mIoU $\uparrow$</td><td style='text-align: center; word-wrap: break-word;'>HD $\downarrow$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>w/o joint stage</td><td style='text-align: center; word-wrap: break-word;'>$0.858\pm0$</td><td style='text-align: center; word-wrap: break-word;'>$0.860\pm0$</td><td style='text-align: center; word-wrap: break-word;'>$92.42\pm0.10$</td><td style='text-align: center; word-wrap: break-word;'>$5.12\pm0.08$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>w/o refine stage</td><td style='text-align: center; word-wrap: break-word;'>$0.860\pm0$</td><td style='text-align: center; word-wrap: break-word;'>$0.861\pm0$</td><td style='text-align: center; word-wrap: break-word;'>$92.05\pm0.04$</td><td style='text-align: center; word-wrap: break-word;'>$5.93\pm0.07$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>w/o local</td><td style='text-align: center; word-wrap: break-word;'>$0.860\pm5e^{-4}$</td><td style='text-align: center; word-wrap: break-word;'>$0.862\pm5e^{-4}$</td><td style='text-align: center; word-wrap: break-word;'>$92.55\pm0.05$</td><td style='text-align: center; word-wrap: break-word;'>$5.34\pm0.04$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>w/o global</td><td style='text-align: center; word-wrap: break-word;'>$0.862\pm5e^{-4}$</td><td style='text-align: center; word-wrap: break-word;'>$0.864\pm5e^{-4}$</td><td style='text-align: center; word-wrap: break-word;'>$92.63\pm0.04$</td><td style='text-align: center; word-wrap: break-word;'>$5.01\pm0.07$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>w/o offset</td><td style='text-align: center; word-wrap: break-word;'>$0.782\pm2e^{-3}$</td><td style='text-align: center; word-wrap: break-word;'>$0.858\pm3e^{-3}$</td><td style='text-align: center; word-wrap: break-word;'>$88.01\pm0.10$</td><td style='text-align: center; word-wrap: break-word;'>$7.97\pm0.11$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>w/o $\mathcal{L}_{sil}$</td><td style='text-align: center; word-wrap: break-word;'>$0.862\pm5e^{-4}$</td><td style='text-align: center; word-wrap: break-word;'>$0.864\pm5e^{-4}$</td><td style='text-align: center; word-wrap: break-word;'>$92.50\pm0.08$</td><td style='text-align: center; word-wrap: break-word;'>$5.19\pm0.08$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>w/o $\mathcal{L}_{render}$</td><td style='text-align: center; word-wrap: break-word;'>$0.863\pm0$</td><td style='text-align: center; word-wrap: break-word;'>$0.865\pm0$</td><td style='text-align: center; word-wrap: break-word;'>$92.80\pm0.02$</td><td style='text-align: center; word-wrap: break-word;'>$4.97\pm0.04$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Full</td><td style='text-align: center; word-wrap: break-word;'>$0.866\pm5e^{-4}$</td><td style='text-align: center; word-wrap: break-word;'>$0.868\pm5e^{-4}$</td><td style='text-align: center; word-wrap: break-word;'>$92.95\pm0.04$</td><td style='text-align: center; word-wrap: break-word;'>$4.70\pm0.02$</td></tr></table>

该流程在所有指标上的表现均最佳，而移除任何组件都会降低整体性能，这表明每个组件都有助于提升最终结果。值得注意的是，当我们使用Graph-CNN直接回归网格顶点而非偏移向量时，方法的性能会出现显著下降。原因在于我们的Graph-CNN被设计用于回归较小的值，这对这种小型Graph-CNN而言相对容易学习。

#### 4.5. 应用场景

我们的方法能够支持在增强现实中与3D虚拟物体进行直接手部交互。图1和图10展示了各种交互场景。借助与输入图像中用户手部高度契合的重建手部网格，我们能够：(i) 解决虚拟物体与用户手部之间的遮挡问题（见图中的前两个示例）；(ii) 在3D增强现实空间中与物理模拟效果互动，例如水（见第三个示例）；(iii) 直接抓取并操控虚拟物体，比如按下虚拟对讲机上的按钮（见图中的最后一个示例）。相关的完整视频可在补充材料中查看。

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

本文提出了一种全新的3D手部网格重建框架，将任务拆分为三个阶段：关节阶段用于预测手部关节的3D坐标及手部分割掩码；网格阶段用于估算粗略的3D手部网格；细化阶段则收集前几层中的局部与全局特征，并学习回归每个顶点的偏移向量，从而帮助将粗略网格与手部图像对齐，实现手指级别的对齐效果。实验结果证明，无论是在手部网格/姿态精度还是网格-图像对齐方面，我们的方法都优于现有最先进的方法。此外，该方法运行速度快，能够在普通图形硬件上实时运行。

未来，我们计划探索生成高分辨率（细粒度）手部网格预测的方法，以更好地匹配真实手部的平滑边界。同时，我们希望探索设计自适应细化阶段的可能性，该阶段会更侧重于对齐边界顶点以提升整体效率，进而减少计算量。最后，我们还计划探索将该方法部署到移动设备上的可行性。

致谢。我们感谢匿名审稿人提出的宝贵意见。本研究得到了香港特别行政区研究资助局的支持（项目编号：CUHK 14206320）。

## 参考文献

[^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 CVPR, pages 1067–1076, 2019.

## [^2]: Seungryul Baek, Kwang In Kim, and Tae-Kyun Kim. Weakly-supervised domain adaptation via GAN and mesh

---

用于估计与物体交互的3D手部姿态的模型。载于CVPR，第6121–6131页，2020年。

[^3]: Adnane Boukhayma, Rodrigo de Bem, and Philip H.S. Torr. 3D hand shape and pose from images in the wild. In CVPR, pages 10843–10852, 2019.

[^4]: Yujun Cai, Liuhao Ge, Jianfei Cai, Nadia Magnenat-Thalmann, and Junsong Yuan. 3D hand pose estimation using synthetic data and weakly labeled RGB images. IEEE PAMI, 2020. to appear.

[^5]: Yujun Cai, Liuhao Ge, Jianfei Cai, and Junsong Yuan. Weakly-supervised 3D hand pose estimation from monocular RGB images. In ECCV, pages 666–682, 2018.

[^6]: Yujun Cai, Liuhao Ge, Jun Liu, Jianfei Cai, Tat-Jen Cham, Junsong Yuan, and Nadia Magnenat Thalmann. Exploiting spatial-temporal relationships for 3D pose estimation via graph convolutional networks. In ICCV, pages 2272–2281, 2019.

[^7]: Olivier Chapelle and Mingrui Wu. Gradient descent optimization of smoothed information retrieval metrics. Information Retrieval, pages 216–235, 2010.

[^8]: 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 CVPR, pages 13274–13283, 2021.

[^9]: Yujin Chen, Zhigang Tu, Liuhao Ge, Dejun Zhang, Ruizhi Chen, and Junsong Yuan. SO-HandNet: Self-organizing network for 3D hand pose estimation with semi-supervised learning. In ICCV, pages 6961–6970, 2019.

[^10]: 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 ECCV, pages 769–787, 2020.

[^11]: Vasileios Choutas, Georgios Pavlakos, Timo Bolkart, Dimitrios Tzionas, and Michael J. Black. Monocular expressive body regression through body-driven attention. In ECCV, pages 20–40, 2020.

[^12]: Bardia Doosti, Shujon Naha, Majid Mirbagheri, and David J. Crandall. HOPE-Net: A graph-based model for hand-object pose estimation. In CVPR, pages 6608–6617, 2020.

[^13]: Zhipeng Fan, Jun Liu, and Yao Wang. Adaptive computationally efficient network for monocular 3D hand pose estimation. In ECCV, pages 127–144, 2020.

[^14]: Linpu Fang, Xingyan Liu, Li Liu, Hang Xu, and Wenxiong Kang. JGR-P2O: Joint graph reasoning based pixel-to-offset prediction network for 3D hand pose estimation from a single depth image. In ECCV, pages 120–137, 2020.

[^15]: 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 CVPR, pages 10833–10842, 2019.

[^16]: 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 Transactions on Graphics (SIGGRAPH), 39(4):87:1–87:13, 2020.

[^17]: Yana Hasson, Bugra Tekin, Federica Bogo, Ivan Laptev, Marc Pollefeys, and Cordelia Schmid. Leveraging photometric consistency over time for sparsely supervised hand-object reconstruction. In CVPR, pages 571–580, 2020.

[^18]: Yana Hasson, Gul Varol, Dimitrios Tzionas, Igor Kalevatykh, Michael J. Black, Ivan Laptev, and Cordelia Schmid. Learning joint reconstruction of hands and manipulated objects. In ICCV, pages 11807–11816, 2019.

[^19]: Kaiming He, Xiangyu Zhang, Shaoqing Ren, and Jian Sun. Deep residual learning for image recognition. In CVPR, pages 770–778, 2016.

[^20]: Yihui He, Rui Yan, Katerina Fragkiadaki, and Shoou-I Yu. Epipolar transformers. In CVPR, pages 7779–7788, 2020.

[^21]: Lin Huang, Jianchao Tan, Ji Liu, and Junsong Yuan. Hand-Transformer: Non-autoregressive structured modeling for 3D hand pose estimation. In ECCV, pages 17–33, 2020.

[^22]: Weiting Huang, Pengfei Ren, Jingyu Wang, Qi Qi, and Haifeng Sun. AWR: Adaptive weighting regression for 3D hand pose estimation. In AAAI, pages 11061–11068, 2020.

[^23]: Umar Iqbal, Pavlo Molchanov, Thomas Breuel Juergen Gall, and Jan Kautz. Hand pose estimation via latent 2.5D heatmap regression. In ECCV, pages 118–134, 2018.

[^24]: Sameh Khamis, Jonathan Taylor, Jamie Shotton, Cem Keskin, Shahram Izadi, and Andrew Fitzgibbon. Learning an efficient model of hand shape variation from depth images. In CVPR, pages 2540–2548, 2015.

[^25]: Alexander Kirillov, Yuxin Wu, Kaiming He, and Ross Girshick. PointRend: Image segmentation as rendering. In CVPR, pages 9799–9808, 2020.

[^26]: Nikos Kolotouros, Georgios Pavlakos, and Kostas Daniilidis. Convolutional mesh regression for single-image human shape reconstruction. In CVPR, pages 4501–4510, 2019.

[^27]: Dominik Kulon, Riza Alp Guler, Iasonas Kokkinos, Michael Bronstein, and Stefanos Zafeiriou. Weakly-supervised mesh-convolutional hand reconstruction in the wild. In CVPR, pages 4990–5000, 2020.

[^28]: Shile Li and Dongheui Lee. Point-to-pose voting based hand pose estimation using residual permutation equivariant layer. In CVPR, pages 11927–11936, 2019.

[^29]: Jameel Malik, Ibrahim Abdelaziz, Ahmed Elhayek, Soshi Shimada, Sk Aziz Ali, Vladislav Golyanik, Christian Theobalt, and Didier Stricker. HandVoxNet: Deep voxel-based network for 3D hand shape and pose estimation from a single depth map. In CVPR, pages 7113–7122, 2020.

[^30]: Jameel Malik, Ahmed Elhayek, Fabrizio Nunnari, Kiran Varanasi, Kiarash Tamaddon, Alexis Heloir, and Didier Stricker. DeepHPS: End-to-end estimation of 3D hand pose and shape by learning from synthetic depth. In 3DV, pages 110–119, 2018.

[^31]: 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 CVPR, pages 5079–5088, 2018.

## [^32]: 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 ECCV, pages 752–768, 2020

---

[^33]: Gyeongsik Moon, Takaaki Shiratori, and Kyoung Mu Lee. DeepHandMesh: A weakly-supervised deep encoder-decoder framework for high-fidelity hand mesh modeling. In ECCV, pages 440–455, 2020.

[^34]: Franziska Mueller, Florian Bernard, Oleksandr Sotnychenko, Dushyant Mehta, Srinath Sridhar, Dan Casas, and Christian Theobalt. GANerated hands for real-time 3D hand tracking from monocular RGB. In CVPR, pages 49–59, 2018.

[^35]: Franziska Mueller, Micah Davis, Florian Bernard, Oleksandr Sotnychenko, Mickelai Verschoor, Miguel A Otaudy, Dan Casas, and Christian Theobalt. Real-time pose and shape reconstruction of two interacting hands with a single depth camera. ACM Transactions on Graphics (SIGGRAPH), 38(4):49:1–49:13, 2019.

[^36]: Franziska Mueller, Dushyant Mehta, Oleksandr Sotnychenko, Srinath Sridhar, Dan Casas, and Christian Theobalt. Real-time hand tracking under occlusion from an egocentric RGB-D sensor. In ICCV, pages 1154–1163, 2017.

[^37]: Paschalis Panteleris, Iason Oikonomidis, and Antonis Argyros. Using a single RGB frame for real time 3D hand pose estimation in the wild. In WACV, pages 436–445, 2018.

[^38]: Neng Qian, Jiayi Wang, Franziska Mueller, Florian Bernard, Vladislav Golyanik, and Christian Theobalt. HTML: A parametric hand texture model for 3D hand reconstruction and personalization. In ECCV, pages 54–71, 2020.

[^39]: Javier Romero, Dimitrios Tzionas, and Michael J. Black. Embodied hands: Modeling and capturing hands and bodies together. ACM Transactions on Graphics (SIGGRAPH Asia), 36(6):245:1–245:17, 2017.

[^40]: Olaf Ronneberger, Philipp Fischer, and Thomas Brox. U-net: Convolutional networks for biomedical image segmentation. In MICCAI, pages 234–241, 2015.

[^41]: Olga Russakovsky, Jia Deng, Hao Su, Jonathan Krause, Sanjeev Satheesh, Sean Ma, Zhiheng Huang, Andrej Karpathy, Aditya Khosla, Michael Bernstein, et al. ImageNet large scale visual recognition challenge. IJCV, 115(3):211–252, 2015.

[^42]: Jingjing Shen, Thomas J Cashman, Qi Ye, Tim Hutton, Toby Sharp, Federica Bogo, Andrew Fitzgibbon, and Jamie Shoton. The phong surface: Efficient 3D model fitting using lifted optimization. In ECCV, pages 687–703, 2020.

[^43]: Adrian Spurr, Umar Iqbal, Pavlo Molchanov, Otmar Hilliges, and Jan Kautz. Weakly supervised 3D hand pose estimation via biomechanical constraints. In ECCV, pages 211–228, 2020.

[^44]: Adrian Spurr, Jie Song, Seonwook Park, and Otmar Hilliges. Cross-modal deep variational hand pose estimation. In CVPR, pages 89–98, 2018.

[^45]: David Joseph Tan, Thomas Cashman, Jonathan Taylor, Andrew Fitzgibbon, Daniel Tarlow, Sameh Khamis, Shahram Izadi, and Jamie Shotton. Fits like a glove: Rapid and reliable hand shape personalization. In CVPR, pages 5610–5619, 2016.

[^46]: Jonathan Taylor, Richard Stebbing, Varun Ramakrishna, Cem Keskin, Jamie Shotton, Shahram Izadi, Aaron Hertzmann, and Andrew Fitzgibbon. User-specific hand modeling

基于单目深度序列的方法。载于CVPR，第644–651页，2014年。

[^47]: Bugra Tekin, Federica Bogo, and Marc Pollefeys. H+O: Unified egocentric recognition of 3D hand-object poses and interactions. In CVPR, pages 4511–4520, 2019.

[^48]: Ashish Vaswani, Noam Shazeer, Niki Parmar, Jakob Uszkoreit, Llion Jones, Aidan N. Gomez, Lukasz Kaiser, and Illia Polosukhin. Attention is all you need. In NIPS, pages 5998–6008, 2017.

[^49]: Chengde Wan, Thomas Probst, Luc Van Gool, and Angela Yao. Self-supervised 3D hand pose estimation through training by fitting. In CVPR, pages 10853–10862, 2019.

[^50]: Chengde Wan, Thomas Probst, Luc Van Gool, and Angela Yao. Dual grid net: Hand mesh vertex regression from single depth maps. In ECCV, pages 442–459, 2020.

[^51]: Jiayi Wang, Franziska Mueller, Florian Bernard, Suzanne Sorli, Oleksandr Sotnychenko, Neng Qian, Miguel A. Otaduy, Dan Casas, and Christian Theobalt. RGB2Hands: real-time tracking of 3D hand interactions from monocular RGB video. ACM Transactions on Graphics (SIGGRAPH Asia), 39(6):218:1–218:16, 2020.

[^52]: Nanyang Wang, Yinda Zhang, Zhuwen Li, Yanwei Fu, Wei Liu, and Yu-Gang Jiang. Pixel2Mesh: Generating 3D mesh models from single RGB images. In ECCV, pages 52–67, 2018.

[^53]: Keyulu Xu, Weihua Hu, Jure Leskovec, and Stefanie Jegelka. How powerful are graph neural networks? In ICLR, 2019.

[^54]: John Yang, Hyung Jin Chang, Seungeui Lee, and Nojun Kwak. SeqHAND: RGB-sequence-based 3D hand pose and shape estimation. In ECCV, pages 122–139, 2020.

[^55]: Lixin Yang, Jiasen Li, Wenqiang Xu, Yiqun Diao, and Cewu Lu. BiHand: Recovering hand mesh with multi-stage bisected hourglass networks. In BMVC, 2020.

[^56]: Linlin Yang, Shile Li, Dongheui Lee, and Angela Yao. Aligning latent spaces for 3D hand pose estimation. In ICCV, pages 2335–2343, 2019.

[^57]: Linlin Yang and Angela Yao. Disentangling latent hands for image synthesis and pose estimation. In CVPR, pages 9877–9886, 2019.

[^58]: Xiong Zhang, Qiang Li, Hong Mo, Wenbo Zhang, and Wen Zheng. End-to-end hand mesh recovery from a monocular RGB image. In ICCV, pages 2354–2364, 2019.

[^59]: Long Zhao, Xi Peng, Yuxiao Chen, Mubbasir Kapadia, and Dimitris N. Metaxas. Knowledge as priors: Crossmodal knowledge generalization for datasets without superior knowledge. In CVPR, pages 6528–6537, 2020.

[^60]: Yuxiao Zhou, Marc Habermann, Weipeng Xu, Ikhsanul Habibie, Christian Theobalt, and Feng Xu. Monocular real-time hand shape and motion capture using multi-modal data. In CVPR, pages 5346–5355, 2020.

[^61]: Christian Zimmermann and Thomas Brox. Learning to estimate 3D hand pose from single RGB images. In ICCV, pages 4903–4911, 2017.

[^62]: 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 ICCV, pages 813–822, 2019.
