
# M3DHMR：单目3D手部网格恢复

林一宏

华南理工大学

中国广州

<mailto:j1xxlyh@163.com>

王希来

华南理工大学

中国广州

<mailto:auwangxilai@mail.scut.edu.cn>

吴先佳

华为云

中国深圳

<mailto:wuxianjia1996@gmail.com>

雷松菊

南京大学

中国南京

<mailto:leisongju@smail.nju.edu.cn>

胡建桥

华南理工大学

中国广州

<mailto:jianqiaohu2000@163.com>

李先东 $^{\dagger}$

华为云

中国深圳

<mailto:lxdphys@smail.nju.edu.cn>

康文雄†

华南理工大学

中国广州

<mailto:auwxkang@scut.edu.cn>

## 摘要

由于手部自由度极高、存在2D到3D的歧义以及自遮挡现象，单目3D手部网格恢复是一项极具挑战性的任务。现有的大多数方法要么效率低下，要么在预测3D网格顶点位置方面不够直观。因此，我们提出了一种名为单目3D手部网格恢复（M3DHMR）的新流程，用于直接估算手部网格顶点的位置。M3DHMR能从单张图像中为3D任务提供2D线索，它采用一种由多个动态螺旋卷积（DSC）层和感兴趣区域（ROI）层组成的新螺旋解码器。一方面，DSC层会根据顶点坐标自适应调整权重，在空间维度和通道维度上提取顶点特征；另一方面，ROI层会利用物理信息，对每个预定义的手部区域内的网格顶点进行精细化处理。在常用的FreiHAND数据集上进行的大量实验表明，M3DHMR的性能显著优于现有的实时处理方法。代码可在<https://github.com/Jackson-coder/M3DHMR>获取。

### 1. 引言

单目3D手部网格恢复在虚拟现实/增强现实、人机交互等领域受到了广泛关注[^30] [^16]。该任务旨在从单张RGB图像中估算手部网格顶点的3D空间位置。通过还原生物特征，它能提升手势认证的准确性与安全性。一方面，它可以修复因磨损、污染或采集设备限制等因素导致的低质量样本，从而降低误识别率；另一方面，它能重建不完整的数据，进而提升多模态手势认证系统的性能。然而，手部的高自由度、2D到3D的歧义以及自遮挡现象给手部重建带来了巨大挑战[^1] [^9] [^5]。

为克服这些挑战，基于参数模型的方法[^34] [^6] [^29] [^27]通常采用MANO[^28]模型，该模型通过形状和姿态系数来获取手部网格，从而能够灵活且高精度地为各类应用生成多样的手部姿态。尽管这些方法灵活性较高，但其3D结构不够直观，尤其是形状参数的优化难度较大。相比之下，基于顶点的方法可以直接估算3D网格的坐标。具体而言，这类方法

---

![Image](images/6000cb568de9bf16a93558c5e076abfbbad9654fc63e4ac76070833c3ab31257.jpg)

<div style="text-align: center;">Figure 1. Qualitative results of our M3DHMR. We show the 2D pose, mesh projection, camera space mesh and pose in metres. The red rectangle indicates the camera.</div>

模型通常将手腕定义为根节点，并计算相对于根节点的3D网格坐标。一些最新的研究[^22] [^23] [^18]由于过于侧重提升重建精度而忽略了模型的规模问题，因此无法实时实现。另一些研究[^13] [^20] [^7] [^33] [^2] [^30] [^15] [^31]虽然能达到实时性能，但重建精度有限。此外，前述所有方法都必须提供相机空间中的绝对根坐标，才能获取3D网格的绝对相机坐标，这限制了其在许多高级任务中的应用。尽管CMR[^5]和MobRecon[^3]提供了可直接实时获取网格绝对3D坐标的流程，但它们的重建精度仍有待提高。

在此，我们提出了一种单目3D手部网格恢复（M3DHMR）流程，旨在进一步提升实时相机空间3D手部网格恢复的性能。该流程通过多个阶段重建3D手部，并将回归2D关节关键点作为子任务来促进3D重建。我们采用新颖的动态螺旋卷积（DSC）层和感兴趣区域（ROI）层来解码3D顶点特征，从而获得网格3D坐标。与传统做法——通过堆叠螺旋卷积层或增加这些层的通道数来提升模型容量（往往伴随高昂的计算开销）——不同，DSC层采用了更合理的螺旋卷积架构，能在极少增加参数数量和计算成本的前提下进一步增强模型的表征能力。具体而言，DSC中的两个卷积层用于自适应调整K个螺旋卷积的归一化权重，以提取空间-通道信息。此外，ROI层通过将手部划分为多个物理区域并分别优化各区域内的手部网格顶点，引入了物理世界中手部的空间信息。大量实验表明，M3DHMR在3D手部网格重建方面超越了当前最先进的实时模型。图1展示了M3DHMR在复杂姿态、自身遮挡以及物体遮挡情况下的部分重建结果。我们的贡献总结如下：

- 我们设计了DSC层，可根据顶点位置调整螺旋卷积的权重，从而同时探索空间与通道层面的网格特征。

- 我们提出了ROI层，它根据物理区域将手部的网格顶点划分为若干组，以便分别优化手部网格特征。

• 大量实验证明，在重建精度方面，我们的方法优于现有的最先进实时方法。

### 2. 相关工作

#### 2.1. 手部网格估计

手部网格估计已成为计算机视觉与增强现实领域的重要任务，其目标是从单目RGB图像中重建详细的3D手部结构。现有主流方法可分为基于模型和基于顶点两类。

基于模型的方法通常依赖于参数化手部模型，例如MANO [^28]，它能够以低维度形式表示手部姿态和形状。在此基础上，Zhou等人[^34]提出了首个实时单目手部捕捉框架，该框架整合了多模态数据（RGB、关键点和轮廓），从而实现高精度的3D重建。此外，Chen等人[^6]开发了一种基于模型的自监督3D手部重建方法，该方法利用几何约束和2D-3D一致性进行训练，无需3D标注数据。同时，RealisticHands [^29]将参数化网格先验与非参数化细节相结合，能够从单目RGB输入中估计出高质量的手部姿态和形状。HaMeR [^27]采用全Transformer架构来分析手部，显著提升了准确性和鲁棒性。尽管这些方法效率很高，

---

但它们本质上受限于参数化模型的表达能力。

基于顶点的方法直接预测网格顶点的3D坐标，从而提供了超越参数化模型的灵活性。其中，Mesh Graphormer [^23]和PointHMR [^18]率先将Transformer架构应用于单目3D手部网格恢复，在准确性和鲁棒性方面取得了显著提升。然而，其计算复杂性阻碍了实时部署。为解决这一局限，出现了几种高效的替代方案。MobileHand [^13]采用了轻量级网络设计，而YoutubeHand [^20]和Pose2Mesh [^7]则利用图卷积来实现高效的网格重建。进一步的探索包括HIUDMTL [^33]，它采用了深度多任务学习；以及I2UV-HandNet [^2]，它采用了图像到UV映射策略。Tang等人[^30]通过一种新颖的对齐优化模块，提升了实时性能，并显著改善了姿态和形状的精度。CMR [^5]和MobRecon [^3]提出了端到端流程，可直接估计绝对3D坐标。最近，CLIP-Hand3D [^15]将视觉-语言预训练与上下文感知提示相结合，以提升在复杂场景中的泛化能力；FastViT [^31]则引入了一种带有结构重参数化的混合视觉Transformer，以实现最佳的速度-精度平衡。

#### 2.2. 螺旋卷积

Defferrard等人[^8]开创了图卷积网络（GCN），这类网络可在非欧几里得图结构上运行，同时保持与传统CNN相当的计算复杂性。Masci等人[^24]开发了空间图卷积算子，该算子结合了针对图信号的测地距离感知采样方式，能够更直观地处理空间域中的3D网格顶点。Lim等人[^21]进一步推动了这一研究领域的发展，他们基于图卷积引入了螺旋卷积，作为处理3D网格顶点的有效方法。

网格空间卷积技术后续的改进包括SpiralNet++ [^10]，它利用截断的螺旋线来限制采样的顶点数量，同时通过空心螺旋线扩展感受野。Kolotouros等人[^20]通过构建简单的编码器-解码器架构并结合螺旋卷积，直接学习了从2D图像到3D网格的映射关系。诸如CMR和MobRecon等近期研究还设计了ISM和DSConv，以进一步增强特征提取能力。

尽管有这些进步，现有方法的权重在训练完成后仍然固定不变。这种固定性限制了它们适应网格顶点不同空间位置的能力。为解决这一问题，我们的研究探索了一种更灵活的卷积算子，它能够动态调整以适应网格顶点的空间分布，有望在3D网格处理任务中取得更好的性能。

### 3. 方法

#### 3.1. 概述

以单张RGB图像为输入，我们的目标是获取手部网格顶点的3D坐标。M3DHMR首先利用双堆叠沙漏网络[^26]生成编码特征$F^e$并预测2D关节关键点$L^p$。需要注意的是，第一个堆叠以及第二个堆叠的第一层是在热图和关键点的指导下预训练的。此外，M3DHMR采用螺旋解码器从编码特征$F^e$中推断出3D网格顶点的根节点相对坐标。具体来说，首先通过网格采样获得姿态特征$F^p$：

 $$ F^{p}=F^{e}(L^{p}). $$

随后，一个可学习的矩阵M将2D姿态特征映射到3D网格特征：

 $$ F^{m}=M\cdot F^{p}. $$

接着，多个基于图的DSC层以由粗到精的方式生成多尺度网格顶点图。每一层都会对上一层输出的网格特征进行上采样，并探索顶点间的空间连通性和通道依赖性，从而得到细粒度的顶点特征。最后，M3DHMR采用ROI层来优化结果，并使用与CMR[^5]相同的方法估计根节点在相机空间中的位置，进而恢复出相机空间中3D手部网格顶点的坐标。整体网络结构如图2所示。

#### 3.2. 动态螺旋卷积层

与SpiralConv[^21]和SpiralConv++[^11]类似，动态螺旋卷积会确定卷积中心，并根据邻接关系生成一系列编号的中心顶点，接着是1环顶点、2环顶点，依此类推，直到包含所有n环内的顶点为止：

 $$ \begin{align*}0-ring(v)&=v,\ $ n+1)-ring(v)&=\mathcal{N}(n-ring(v))\setminus n-disk(v),\\n-disk(v)&=\cup_{i=0,\ldots,n}i-ring(v),\end{align*} $$

其中$\mathcal{N}(V)$用于选取集合V中任意顶点邻域内的所有顶点。与以往的工作不同，动态螺旋卷积包含K个卷积核，它们具有相同的核尺寸以及输入输出维度。为了实现对不同位置顶点卷积权重的自适应调整，它采用两个卷积层和softmax来生成归一化的注意力权重

---

![Image](images/6a6be88dd7f3e74a3bf3560138cbaec66fa537052d1a06cecd65aea29e808d72.jpg)

<div style="text-align: center;">Figure 2. Overview of our M3DHMR framework. The architecture of ROI Layer is a dilated spiral convolution. Different colors in Dynamic Spiral Convolution indicate different weights corresponding to the spiral convolution kernels.</div>

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

<div style="text-align: center;">Figure 3. The preset regions for the ROI Layer. Different colors denote different regions. Dilated spiral convolution in ROI layer focuses only on the interior of the region.</div>

用于这K个卷积核：

 $$ \begin{aligned}\pi_{i}(x)&=f_{2}(f_{1}(x)),\\ s.t.0\leq\pi_{i}(x)&\leq1,\sum_{i=1}^{K}\pi_{i}(x)=1,\end{aligned} $$

其中$f_{1}$和$f_{2}$是两个卷积层，$\pi_{i}$是第i个卷积核的注意力权重。初始卷积层会将维度减半，而后者则计算K个卷积核的归一化注意力权重，以确保计算效率。一旦获得K个注意力权重，就可以通过加权求和计算出该位置的最终卷积权重参数：

 $$ \begin{aligned}\hat{W}_{1}&=\sum_{i=1}^{K}W_{1},\hat{b}_{1}=\sum_{i=1}^{K}b_{1},\\\hat{W}_{2}&=\sum_{i=1}^{K}W_{2},\hat{b}_{2}=\sum_{i=1}^{K}b_{2}.\end{aligned} $$

最终输出可以表示为：

 $$ D S C(v)=\hat{W}_{2}(\hat{W}_{1}(f(k{-}d i s k(v)))+\hat{b}_{1})+\hat{b}_{2}. $$

#### 3.3. 感兴趣区域层

根据形状和运动特性，手部被人为划分为六个区域：手掌、拇指、食指、中指、无名指和小指（见图3）。我们认为同一区域内的网格顶点相关性很强。这些顶点的运动强烈

---

会影响同一区域内的其他点，但对其他区域的顶点影响较小。例如，食指关节处的运动会导致指尖出现显著位移，但对手掌和其他手指的影响却很小。因此，我们假设对于每个顶点而言，它所在的手指或手掌区域就是感兴趣的区域。借助扩张螺旋卷积的大感受野特性[^11]，ROI层能够充分探索卷积中心所在各手部区域的全局特征，从而在预定义的手部区域内优化网格。

#### 3.4. 损失函数

我们采用$L_{1}$损失来分别处理3D网格损失$L_{mesh}$和2D姿态损失$L_{pose2D}$。受[^9]的启发，我们引入法向损失$L_{norm}$与边长损失$L_{edge}$，用以保留表面法向并约束游离顶点的位置。此外，我们参照[^14]和[^32]的做法，在3D和2D空间内同时实施一致性监督。具体形式如下：

 $$ \begin{aligned}\mathcal{L}_{mesh}&=||V-V^{*}||_{1},\\\mathcal{L}_{pose2D}&=||L^{p}-L^{p,*}||_{1},\\\mathcal{L}_{norm}&=\sum_{c\in C}\sum_{(i,j)\subset c}|\frac{V_{i}-V_{j}}{||V_{i}-V_{j}||_{2}}\cdot n_{c}^{\star}|,\\\mathcal{L}_{edge}&=\sum_{c\in C}\sum_{(i,j)\subset c}|||V_{i}-V_{j}||_{2}-||V_{i}^{\star}-V_{j}^{\star}||_{2}|,\\\mathcal{L}_{con3D}&=||V_{view1}-V_{view2}||_{1},\\\mathcal{L}_{con2D}&=||L_{view1}^{p}-L_{view2}^{p}||_{1},\end{aligned} $$

其中C、V分别表示网格的面集合和顶点集合；$n_c^\star$代表面c的单位法向量；*表示真实值。

我们的总体损失函数为$\mathcal{L}_{total} = \mathcal{L}_{mesh} + \mathcal{L}_{pose2D} + \mathcal{L}_{norm} + \mathcal{L}_{edge} + \mathcal{L}_{con3D} + \mathcal{L}_{con2D}$。

### 4. 实验

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

FreiHAND是目前规模最大的基于单色图像进行手部姿态与形状估计的数据集。它包含130,240张训练图像和3,960个评估样本。FreiHAND的数据来源于现实场景，涵盖了复杂姿态、自身遮挡以及物体遮挡等情况。同时，它是唯一一个同时标注了高精度3D关键点和网格模型的数据集。

我们在定量评估中采用了以下指标。

PA-MPJPE/MPVPE忽略全局变化，基于Procrustes分析[^12]计算以根节点为参考的预测坐标与真实坐标之间的欧几里得距离（单位：毫米），从而衡量每个关节/顶点的平均位置误差。为简洁起见，该指标简称为PJ/PV。

F-Score是两个网格在特定距离阈值下的精确度与召回率的调和平均值。

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'>PJ $\downarrow$</td><td style='text-align: center; word-wrap: break-word;'>PV $\downarrow$</td><td style='text-align: center; word-wrap: break-word;'>F@5 $\uparrow$</td><td style='text-align: center; word-wrap: break-word;'>F@15 $\uparrow$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Baseline</td><td style='text-align: center; word-wrap: break-word;'>6.8</td><td style='text-align: center; word-wrap: break-word;'>7.0</td><td style='text-align: center; word-wrap: break-word;'>0.720</td><td style='text-align: center; word-wrap: break-word;'>0.967</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>w/o DSC Layer</td><td style='text-align: center; word-wrap: break-word;'>6.8</td><td style='text-align: center; word-wrap: break-word;'>6.9</td><td style='text-align: center; word-wrap: break-word;'>0.723</td><td style='text-align: center; word-wrap: break-word;'>0.977</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>w/o ROI Layer</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.728</td><td style='text-align: center; word-wrap: break-word;'>0.978</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Ours</td><td style='text-align: center; word-wrap: break-word;'>6.6</td><td style='text-align: center; word-wrap: break-word;'>6.7</td><td style='text-align: center; word-wrap: break-word;'>0.734</td><td style='text-align: center; word-wrap: break-word;'>0.978</td></tr></table>

<div style="text-align: center;">Table 1. Ablation study of DSC Layer and ROI Layer with Kernel Size of 8. "Baseline" denotes the model with only Spiral Convolution Layers.</div>

这一指标能够对模型性能进行均衡评估，尤其在数据分布不均衡时尤为有用。F@5/F@15分别表示阈值为5毫米/15毫米的情况。

FPS用于衡量算法每秒能处理的帧数。

#### 4.2. 实验设置

我们将批量大小设为32，使用Adam优化器[^19]训练38个周期。初始学习率设为0.001，在第30个周期时学习率除以10。数据增强方式包括随机盒缩放、盒旋转、盒平移以及颜色抖动。我们采用PyTorch框架开展所有实验，训练时使用一块NVIDIA RTX 3090显卡，推理时使用一块NVIDIA RTX 2080 Ti显卡。

#### 4.3. 消融研究

DSC层和ROI层。表1展示了这两层对网络性能的影响。与DSC层相比，ROI层采用了卷积核更大的扩张螺旋卷积，从而能够覆盖更大的感受野。此外，通过将感受野限制在卷积中心所在的手部区域，ROI层减轻了相关性较低的区域中网格顶点所带来的影响。从表1的第一行和第二行可以看出，使用ROI层后，PV值降低了0.1毫米，F@5值增加了0.003，F@15值增加了0.01。DSC层采用了权重调整机制，使卷积能够适应不同位置的手部特征。如表1的第一行和第三行所示，动态螺旋卷积的性能优于普通螺旋卷积，使得PJ和PV值分别降低了0.1毫米和0.2毫米，而F@5和F@15值则分别增加了0.008和0.011。如表最后一行所示，两层结合使用能取得最佳的重建效果。

3D解码方法。如表2所示，与SpiralConv++和Depth-Separable SpiralConv相比，动态螺旋卷积能够降低3D解码器的PJ和PV值，同时提高F@5值。这些结果证明了……

---

![Image](images/33c6534887c1c6bdab3bd949abe6f57a9a365c5229f34496ffff5f0038125233.jpg)

<div style="text-align: center;">Figure 4. Several qualitative results of our predicted 2D pose, front view mesh and side view mesh on the test set of FreiHAND.</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td style='text-align: center; word-wrap: break-word;'>3D decoding</td><td style='text-align: center; word-wrap: break-word;'>PJ $\downarrow$</td><td style='text-align: center; word-wrap: break-word;'>PV $\downarrow$</td><td style='text-align: center; word-wrap: break-word;'>F@5 $\uparrow$</td><td style='text-align: center; word-wrap: break-word;'>F@15 $\uparrow$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>SpiralConv++[^5]</td><td style='text-align: center; word-wrap: break-word;'>6.8</td><td style='text-align: center; word-wrap: break-word;'>6.9</td><td style='text-align: center; word-wrap: break-word;'>0.723</td><td style='text-align: center; word-wrap: break-word;'>0.976</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Depth-Separable SpiralConv[^3]</td><td style='text-align: center; word-wrap: break-word;'>6.8</td><td style='text-align: center; word-wrap: break-word;'>6.9</td><td style='text-align: center; word-wrap: break-word;'>0.724</td><td style='text-align: center; word-wrap: break-word;'>0.977</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Dynamic Spiral Convolution (K=8)</td><td style='text-align: center; word-wrap: break-word;'>6.6</td><td style='text-align: center; word-wrap: break-word;'>6.7</td><td style='text-align: center; word-wrap: break-word;'>0.734</td><td style='text-align: center; word-wrap: break-word;'>0.978</td></tr></table>

<div style="text-align: center;">Table 2. Ablation study of 3D decoding.</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td style='text-align: center; word-wrap: break-word;'>K</td><td style='text-align: center; word-wrap: break-word;'>PJ $\downarrow$</td><td style='text-align: center; word-wrap: break-word;'>PV $\downarrow$</td><td style='text-align: center; word-wrap: break-word;'>F@5 $\uparrow$</td><td style='text-align: center; word-wrap: break-word;'>F@15 $\uparrow$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>2</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.728</td><td style='text-align: center; word-wrap: break-word;'>0.976</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>4</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.730</td><td style='text-align: center; word-wrap: break-word;'>0.976</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>8</td><td style='text-align: center; word-wrap: break-word;'>6.6</td><td style='text-align: center; word-wrap: break-word;'>6.7</td><td style='text-align: center; word-wrap: break-word;'>0.734</td><td style='text-align: center; word-wrap: break-word;'>0.978</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>16</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.731</td><td style='text-align: center; word-wrap: break-word;'>0.977</td></tr></table>

<div style="text-align: center;">Table 3. Ablation study of Dynamic Spiral Convolution.</div>

通过自适应调整不同位置顶点的卷积权重，能够显著改善重建效果。

动态螺旋卷积的卷积核大小。表3展示了不同K值下DSC层的效果。可以看出，当K=8时模型性能最佳。如果K值过小，可能会导致表达能力受限且适应能力不足；反之，若K值过大，则可能过度关注细节特征，从而忽略一些主要特征，进而对模型的泛化能力产生不利影响。

#### 4.4. 我们的M3DHMR可视化结果

如图1所示，在真实数据上的定性评估结果表明：在复杂姿态（第一行和第二行）、自身遮挡（第三行和第四行）以及物体遮挡（第五行和第六行）的情况下，我们的方法都能实现较高的重建精度。

我们从FreiHAND测试集中随机选取了一些样本，图4展示了我们预测的2D姿态、正面视图网格和侧面视图网格的综合定性结果。面对复杂姿态、物体遮挡、截断以及光照不佳等挑战，我们的方法仍能生成准确的2D姿态和3D网格。更多结果详见补充材料中的图S1。

#### 4.5. 与现有方法的比较

在表4中，我们使用FreiHAND数据集将我们的方法与几种最先进的手部网格恢复方法进行了对比。由于MobRecon中StackedResNet的实现不可用，我们采用了StackedResNet18并完整复现了MobRecon的原始结果。考虑到通过调整StackedResNet18的超参数即可实现Stack-ResNet34，我们便……

---

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td style='text-align: center; word-wrap: break-word;'></td><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;'>Backbone</td><td style='text-align: center; word-wrap: break-word;'>PJ $\downarrow$</td><td style='text-align: center; word-wrap: break-word;'>PV $\downarrow$</td><td style='text-align: center; word-wrap: break-word;'>F@5 $\uparrow$</td><td style='text-align: center; word-wrap: break-word;'>F@15 $\uparrow$</td><td style='text-align: center; word-wrap: break-word;'>FPS $\uparrow$</td></tr><tr><td rowspan="5">Non Real-Time Methods</td><td style='text-align: center; word-wrap: break-word;'>METRO [^22]</td><td style='text-align: center; word-wrap: break-word;'>CVPR 21</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.717</td><td style='text-align: center; word-wrap: break-word;'>0.981</td><td style='text-align: center; word-wrap: break-word;'>-</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>MeshGraphormer [^23]</td><td style='text-align: center; word-wrap: break-word;'>ICCV 21</td><td style='text-align: center; word-wrap: break-word;'>HRNet</td><td style='text-align: center; word-wrap: break-word;'>5.9</td><td style='text-align: center; word-wrap: break-word;'>6.0</td><td style='text-align: center; word-wrap: break-word;'>0.764</td><td style='text-align: center; word-wrap: break-word;'>0.986</td><td style='text-align: center; word-wrap: break-word;'>-</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>PointHMR [^18]</td><td style='text-align: center; word-wrap: break-word;'>CVPR 23</td><td style='text-align: center; word-wrap: break-word;'>HRNet</td><td style='text-align: center; word-wrap: break-word;'>6.1</td><td style='text-align: center; word-wrap: break-word;'>6.6</td><td style='text-align: center; word-wrap: break-word;'>0.720</td><td style='text-align: center; word-wrap: break-word;'>0.984</td><td style='text-align: center; word-wrap: break-word;'>-</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>HaMeR [^27]</td><td style='text-align: center; word-wrap: break-word;'>CVPR 24</td><td style='text-align: center; word-wrap: break-word;'>ViTPose</td><td style='text-align: center; word-wrap: break-word;'>6.0</td><td style='text-align: center; word-wrap: break-word;'>5.7</td><td style='text-align: center; word-wrap: break-word;'>0.785</td><td style='text-align: center; word-wrap: break-word;'>0.990</td><td style='text-align: center; word-wrap: break-word;'>-</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>HaMeR-170k [^27]</td><td style='text-align: center; word-wrap: break-word;'>CVPR 24</td><td style='text-align: center; word-wrap: break-word;'>ViTPose</td><td style='text-align: center; word-wrap: break-word;'>6.1</td><td style='text-align: center; word-wrap: break-word;'>5.8</td><td style='text-align: center; word-wrap: break-word;'>0.782</td><td style='text-align: center; word-wrap: break-word;'>0.990</td><td style='text-align: center; word-wrap: break-word;'>-</td></tr><tr><td rowspan="19">Real-Time Methods</td><td style='text-align: center; word-wrap: break-word;'>FreiHAND [^35]</td><td style='text-align: center; word-wrap: break-word;'>ICCV 19</td><td style='text-align: center; word-wrap: break-word;'>ResNet50</td><td style='text-align: center; word-wrap: break-word;'>11.0</td><td style='text-align: center; word-wrap: break-word;'>10.9</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;'>ObMan [^17]</td><td style='text-align: center; word-wrap: break-word;'>CVPR 19</td><td style='text-align: center; word-wrap: break-word;'>ResNet18</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>13.2</td><td style='text-align: center; word-wrap: break-word;'>0.436</td><td style='text-align: center; word-wrap: break-word;'>0.908</td><td style='text-align: center; word-wrap: break-word;'>20</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Boukhayma et al. [^1]</td><td style='text-align: center; word-wrap: break-word;'>CVPR 19</td><td style='text-align: center; word-wrap: break-word;'>ResNet50</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>13.0</td><td style='text-align: center; word-wrap: break-word;'>0.435</td><td style='text-align: center; word-wrap: break-word;'>0.898</td><td style='text-align: center; word-wrap: break-word;'>-</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>MobileHand [^13]</td><td style='text-align: center; word-wrap: break-word;'>ICONIP 20</td><td style='text-align: center; word-wrap: break-word;'>MobileNetV3</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>13.1</td><td style='text-align: center; word-wrap: break-word;'>0.439</td><td style='text-align: center; word-wrap: break-word;'>0.902</td><td style='text-align: center; word-wrap: break-word;'>-</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>YoutubeHand [^20]</td><td style='text-align: center; word-wrap: break-word;'>CVPR 20</td><td style='text-align: center; word-wrap: break-word;'>ResNet50</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.614</td><td style='text-align: center; word-wrap: break-word;'>0.966</td><td style='text-align: center; word-wrap: break-word;'>-</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>I2L-MeshNet [^25]</td><td style='text-align: center; word-wrap: break-word;'>ECCV 20</td><td style='text-align: center; word-wrap: break-word;'>ResNet50</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.681</td><td style='text-align: center; word-wrap: break-word;'>0.973</td><td style='text-align: center; word-wrap: break-word;'>33</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Pose2Mesh [^7]</td><td style='text-align: center; word-wrap: break-word;'>ECCV 20</td><td style='text-align: center; word-wrap: break-word;'>HRNet</td><td style='text-align: center; word-wrap: break-word;'>7.7</td><td style='text-align: center; word-wrap: break-word;'>7.8</td><td style='text-align: center; word-wrap: break-word;'>0.674</td><td style='text-align: center; word-wrap: break-word;'>0.969</td><td style='text-align: center; word-wrap: break-word;'>22</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>HIU-DMTL [^33]</td><td style='text-align: center; word-wrap: break-word;'>ICCV 21</td><td style='text-align: center; word-wrap: break-word;'>Hourglass</td><td style='text-align: center; word-wrap: break-word;'>7.1</td><td style='text-align: center; word-wrap: break-word;'>7.3</td><td style='text-align: center; word-wrap: break-word;'>0.699</td><td style='text-align: center; word-wrap: break-word;'>0.974</td><td style='text-align: center; word-wrap: break-word;'>-</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>CMR [^5]</td><td style='text-align: center; word-wrap: break-word;'>CVPR 21</td><td style='text-align: center; word-wrap: break-word;'>ResNet50</td><td style='text-align: center; word-wrap: break-word;'>6.9</td><td style='text-align: center; word-wrap: break-word;'>7.0</td><td style='text-align: center; word-wrap: break-word;'>0.715</td><td style='text-align: center; word-wrap: break-word;'>0.977</td><td style='text-align: center; word-wrap: break-word;'>30</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>I2UV-HandNet [^2]</td><td style='text-align: center; word-wrap: break-word;'>ICCV 21</td><td style='text-align: center; word-wrap: break-word;'>ResNet50</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.707</td><td style='text-align: center; word-wrap: break-word;'>0.977</td><td style='text-align: center; word-wrap: break-word;'>-</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Tang et al. [^30]</td><td style='text-align: center; word-wrap: break-word;'>ICCV 21</td><td style='text-align: center; word-wrap: break-word;'>ResNet50</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.724</td><td style='text-align: center; word-wrap: break-word;'>0.981</td><td style='text-align: center; word-wrap: break-word;'>39</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>MobRecon [^4]</td><td style='text-align: center; word-wrap: break-word;'>CVPR 22</td><td style='text-align: center; word-wrap: break-word;'>GhostStack</td><td style='text-align: center; word-wrap: break-word;'>8.8</td><td style='text-align: center; word-wrap: break-word;'>9.1</td><td style='text-align: center; word-wrap: break-word;'>0.597</td><td style='text-align: center; word-wrap: break-word;'>0.960</td><td style='text-align: center; word-wrap: break-word;'>-</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>MobRecon [^4]</td><td style='text-align: center; word-wrap: break-word;'>CVPR 22</td><td style='text-align: center; word-wrap: break-word;'>DenseStack</td><td style='text-align: center; word-wrap: break-word;'>6.9</td><td style='text-align: center; word-wrap: break-word;'>7.2</td><td style='text-align: center; word-wrap: break-word;'>0.694</td><td style='text-align: center; word-wrap: break-word;'>0.979</td><td style='text-align: center; word-wrap: break-word;'>-</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>MobRecon [^4]</td><td style='text-align: center; word-wrap: break-word;'>CVPR 22</td><td style='text-align: center; word-wrap: break-word;'>ResNet18</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.727</td><td style='text-align: center; word-wrap: break-word;'>0.979</td><td style='text-align: center; word-wrap: break-word;'>69</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>MobRecon [^4]</td><td style='text-align: center; word-wrap: break-word;'>CVPR 22</td><td style='text-align: center; word-wrap: break-word;'>ResNet34</td><td style='text-align: center; word-wrap: break-word;'>6.6</td><td style='text-align: center; word-wrap: break-word;'>6.7</td><td style='text-align: center; word-wrap: break-word;'>0.730</td><td style='text-align: center; word-wrap: break-word;'>0.979</td><td style='text-align: center; word-wrap: break-word;'>43</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>CLIP-Hand3D [^15]</td><td style='text-align: center; word-wrap: break-word;'>ACM MM 23</td><td style='text-align: center; word-wrap: break-word;'>ResNet50</td><td style='text-align: center; word-wrap: break-word;'>6.6</td><td style='text-align: center; word-wrap: break-word;'>6.7</td><td style='text-align: center; word-wrap: break-word;'>0.728</td><td style='text-align: center; word-wrap: break-word;'>0.981</td><td style='text-align: center; word-wrap: break-word;'>77</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>FastViT [^31]</td><td style='text-align: center; word-wrap: break-word;'>ICCV 23</td><td style='text-align: center; word-wrap: break-word;'>FastViT</td><td style='text-align: center; word-wrap: break-word;'>6.6</td><td style='text-align: center; word-wrap: break-word;'>6.7</td><td style='text-align: center; word-wrap: break-word;'>0.722</td><td style='text-align: center; word-wrap: break-word;'>0.981</td><td style='text-align: center; word-wrap: break-word;'>-</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>M3DHMR</td><td style='text-align: center; word-wrap: break-word;'>Ours</td><td style='text-align: center; word-wrap: break-word;'>ResNet18</td><td style='text-align: center; word-wrap: break-word;'>6.6</td><td style='text-align: center; word-wrap: break-word;'>6.7</td><td style='text-align: center; word-wrap: break-word;'>0.734</td><td style='text-align: center; word-wrap: break-word;'>0.978</td><td style='text-align: center; word-wrap: break-word;'>42</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>M3DHMR</td><td style='text-align: center; word-wrap: break-word;'>Ours</td><td style='text-align: center; word-wrap: break-word;'>ResNet34</td><td style='text-align: center; word-wrap: break-word;'>6.5</td><td style='text-align: center; word-wrap: break-word;'>6.6</td><td style='text-align: center; word-wrap: break-word;'>0.739</td><td style='text-align: center; word-wrap: break-word;'>0.980</td><td style='text-align: center; word-wrap: break-word;'>28</td></tr></table>

<div style="text-align: center;">Table 4. Results on the FreiHAND dataset.</div>

我们选用Stack-ResNet18和Stack-ResNet34作为骨干网络，以便公平比较MobRecon与M3DHMR的性能。基于ResNet34的M3DHMR在相机空间网格恢复任务中，于实时方法里取得了最佳性能。具体而言，M3DHMR的PA-MPJPE低至6.5毫米，PA-MPVPE低至6.6毫米，F@5值更是高达0.739。此外，其F@15值达到0.980，也优于大多数对比方法，仅略低于CLIP-Hand3D和FastViT。图5展示了我们的M3DHMR与其他两种最先进的实时方法的定性对比结果，可以看出该方法在细节重建方面表现更优。更多结果详见补充材料中的图S2。

### 5. 结论与讨论

本文提出了一种名为M3DHMR的单目3D手部网格恢复方法。首先，M3DHMR采用堆叠式沙漏结构来引入2D线索；随后，借助带有DSC层和ROI层的螺旋解码器，将2D线索转化为3D网格。通过自适应提取不同位置的局部特征，并充分挖掘每个手部区域的全局特征，该模型在FreiHAND数据集上评估时，于实时3D手部网格恢复任务中取得了业界领先的性能。

不过，在深度歧义问题上仍有改进空间。未来，我们计划探索结合数据分布先验的可能性，通过引入VAE、扩散模型等生成式模型来缓解深度歧义问题。

## 伦理说明

本研究使用公开可用的FreiHAND数据集进行单目3D手部网格恢复研究。原始数据集的收集遵循伦理研究准则，且已获得所有参与者的知情同意。本研究未开展额外的数据收集工作。我们承诺恪守负责任的数据使用规范，并强调在该研究的所有应用中保持伦理警觉的重要性。

## 参考文献

[^1]: A. Boukhayma, R. d. Bem, and P. H. 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]: P. Chen, Y. Chen, D. Yang, F. Wu, Q. Li, Q. Xia, and Y. Tan. I2uv-handnet: Image-to-uv prediction network for accurate and high-fidelity 3d hand mesh modeling. In Proceedings

---

图像

![Image](images/14983c7ee9b399c5002029b17b449fcef285b4854d1b99d59ad4e8d113b0d550.jpg)

<div style="text-align: center;">Figure 5. Qualitative comparisons of M3DHMR, CMR and MobRecon for predicting front view mesh on the test set of FreiHAND. The shortcomings of the latter two methods are marked with red circles.</div>

收录于IEEE/CVF国际计算机视觉会议论文集，第12929–12938页，2021年。

[^3]: X. Chen, Y. Liu, Y. Dong, X. Zhang, C. Ma, Y. Xiong, Y. Zhang, and X. Guo. Mobrecon: Mobile-friendly hand mesh reconstruction from monocular image. In 2022 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR), Jun 2022.

[^4]: X. Chen, Y. Liu, Y. Dong, X. Zhang, C. Ma, Y. Xiong, Y. Zhang, and X. Guo. Mobrecon: Mobile-friendly hand mesh reconstruction from monocular image. In Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, pages 20544–20554, 2022.

[^5]: X. Chen, Y. Liu, C. Ma, J. Chang, H. Wang, T. Chen, X. Guo, P. Wan, and W. Zheng. Camera-space hand mesh recovery via semantic aggregation and adaptive 2d-1d registration. In 2021 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR), Jun 2021.

[^6]: Y. Chen, Z. Tu, D. Kang, L. Bao, Y. Zhang, X. Zhe, R. Chen, and J. 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.

[^7]: H. Choi, G. Moon, and K. M. Lee. Pose2mesh: Graph convolutional network for 3d human pose and mesh recovery from a 2d human pose. In European Conference on Computer Vision (ECCV), 2020.

[^8]: M. Defferrard, X. Bresson, and P. Vandergheynst. Convolutional neural networks on graphs with fast localized spectral filtering. Advances in neural information processing systems,

29, 2016.

[^9]: L. Ge, Z. Ren, Y. Li, Z. Xue, Y. Wang, J. Cai, and J. 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.

[^10]: S. Gong, L. Chen, M. Bronstein, and S. Zafeiriou. Spiralnet++: A fast and highly efficient mesh convolution operator. In Proceedings of the IEEE/CVF international conference on computer vision workshops, pages 0–0, 2019.

[^11]: S. Gong, L. Chen, M. Bronstein, and S. Zafeiriou. Spiral-net++: A fast and highly efficient mesh convolution operator. In 2019 IEEE/CVF International Conference on Computer Vision Workshop (ICCVW), Oct 2019.

[^12]: J. C. Gower. Generalized procrustes analysis. Psychometrika, 40:33–51, 1975.

[^13]: L. Guan Ming, J. Prayook, and A. Wei Tech. Mobilehand: Real-time 3d hand shape and pose estimation from color image. In 27th International Conference on Neural Information Processing (ICONIP), 2020.

[^14]: J. Guo, J. Deng, N. Xue, and S. Zafeiriou. Stacked dense u-nets with dual transformers for robust face alignment. 2018.

[^15]: S. Guo, Q. Cai, L. Qi, and J. Dong. Clip-hand3d: Exploiting 3d hand pose estimation via context-aware prompting. In Proceedings of the 31st ACM International Conference on Multimedia. ACM, 2023.

[^16]: S. Han, B. Liu, R. Cabezas, C. D. Twigg, and R. Wang. Megatrack: monochrome egocentric articulated handtracking for virtual reality. ACM Transactions on Graphics, 39(4), 2020.

## [^17]: Y. Hasson, G. Varol, D. Tzionas, I. Kalevatykh, M. J. Black

---

I. Laptev和C. Schmid. 学习手部与操控物体的联合重建。载于CVPR会议论文集，2019年。

[^18]: J. Kim, M.-G. Gwon, H. Park, H. Kwon, G.-M. Um, and W. Kim. Sampling is Matter: Point-guided 3d human mesh reconstruction. In CVPR, June 2023.

[^19]: D. P. Kingma and J. Ba. Adam: A method for stochastic optimization. International Conference on Learning Representations (ICLR), 2015.

[^20]: D. Kulon, R. A. Guler, I. Kokkinos, M. M. Bronstein, and S. 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.

[^21]: I. Lim, A. Dielen, M. Campen, and L. Kobbelt. A simple approach to intrinsic correspondence learning on unstructured 3d meshes. In Proceedings of the European conference on computer vision (ECCV) workshops, pages 0–0, 2018.

[^22]: K. Lin, L. Wang, and Z. 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.

[^23]: K. Lin, L. Wang, and Z. Liu. Mesh graphormer. In ICCV, 2021.

[^24]: J. Masci, D. Boscaini, M. Bronstein, and P. Vandergheynst. Geodesic convolutional neural networks on riemannian manifolds. In Proceedings of the IEEE international conference on computer vision workshops, pages 37–45, 2015.

[^25]: G. Moon and K. M. Lee. I2l-meshnet: Image-to-lixel prediction network for accurate 3d human pose and mesh estimation from a single rgb image. In Computer Vision–ECCV 2020: 16th European Conference, Glasgow, UK, August 23–28, 2020, Proceedings, Part VII 16, pages 752–768. Springer, 2020.

[^26]: A. Newell, K. Yang, and J. Deng. Stacked hourglass networks for human pose estimation. In European Conference on Computer Vision (ECCV), pages 483–499. Springer, 2016.

[^27]: G. Pavlakos, D. Shan, I. Radosavovic, A. Kanazawa, D. Fouhey, and J. Malik. Reconstructing hands in 3D with transformers. In CVPR, 2024.

[^28]: J. Romero, D. Tzionas, and M. J. Black. Embodied hands: modeling and capturing hands and bodies together. ACM Transactions on Graphics, page 1–17, Dec 2017.

[^29]: M. Seeber, R. Poranne, M. Polleyfeys, and M. R. Oswald. Realistichands: A hybrid model for 3d hand reconstruction. In 2021 International conference on 3D vision (3DV), pages 22–31. IEEE, 2021.

[^30]: X. Tang, T. Wang, and C.-W. 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.

[^31]: P. K. A. Vasu, J. Gabriel, J. Zhu, O. Tuzel, and A. Ranjan. Fastvit: A fast hybrid vision transformer using structural reparameterization. In Proceedings of the IEEE/CVF International Conference on Computer Vision, 2023.

[^32]: L. Yang, S. Chen, and A. Yao. Semihand: Semi-supervised hand pose estimation with consistency. In Proceedings of the IEEE/CVF International Conference on Computer Vision, pages 11364–11373, 2021.

[^33]: X. Zhang, H. Huang, J. Tan, H. Xu, C. Yang, G. Peng, L. Wang, and J. Liu. Hand image understanding via deep multi-task learning. In Proceedings of the IEEE/CVF International Conference on Computer Vision, pages 11281–11292, 2021.

[^34]: Y. Zhou, M. Habermann, W. Xu, I. Habibie, C. Theobalt, and F. Xu. Monocular real-time hand shape and motion capture using multi-modal data. In Proceedings of the IEEE/CVF conference on computer vision and pattern recognition, pages 5346–5355, 2020.

[^35]: C. Zimmermann, D. Ceylan, J. Yang, B. Russell, M. Argus, and T. Brox. Freihand: A dataset for markerless capture of hand pose and shape from single rgb images. In Proceedings of the IEEE/CVF International Conference on Computer Vision, pages 813–822, 2019.
