
# 基于大规模照片级真实感渲染数据集的手部姿态理解

邓晓明 $^{ID}$、张银达、施健、朱玉莹、程大川、左德欣、崔兆鹏、谭平 $^{ID}$（IEEE高级会员）、常亮 $^{ID}$ 以及王宏安

摘要—手部姿态理解在人机交互和增强现实等应用中至关重要。近年来，基于深度学习的方法在该领域取得了显著进展。然而，高质量且大规模数据集的缺失阻碍了手部姿态相关任务的进一步改进，例如基于彩色图像的2D/3D手部姿态估计以及基于彩色图像的深度图估计。在本文中，我们开发了一个大规模且高质量的合成数据集PBRHand。该数据集包含数百万张照片级真实感的手部渲染图像，以及包括姿态、语义分割和深度在内的多种标注信息。基于该数据集，我们首先研究了渲染方法和所用数据库对三类手部姿态相关任务性能的影响：基于彩色图像的2D/3D手部姿态估计、基于彩色图像的深度图估计以及基于深度图的3D手部姿态估计。本研究结果表明，合成照片级真实感渲染数据集具有实际价值，且我们的新数据集能够提升现有最先进算法在这些任务上的性能。这种合成数据还使我们能够探索多任务学习，而要在真实数据中获取所有标注信息成本极高。评估结果显示，我们的方法在多个公开数据集上能够达到最先进的或具有竞争力的性能。

索引词—手部姿态估计；照片级真实感合成数据集；基于物理的渲染；多任务CNN。

## 一、引言

## A. 作为计算机视觉中的重要任务，手部姿态恢复对诸多应用场景而言至关重要

本稿于2019年7月18日收稿，2020年2月29日和2020年10月20日修订，2021年3月15日录用。于2021年4月7日发表，当前版本于2021年4月14日发布。本研究部分得到了国家重点研发计划项目（编号2019YFC1521100）以及中国科学院软件研究所杰出青年研究者计划的支持。负责协调本稿评审并批准其发表的副编辑是Senem Velipasalar博士。（邓晓明、张银达、施健对本工作贡献相同。）（通讯作者：邓晓明。）

邓晓明、朱玉莹、左德欣、王宏安任职于中国科学院软件研究所人机交互北京市重点实验室，北京100190，中国（电子邮箱：<mailto:xiaoming@iscas.ac.cn>；<mailto:hongan@iscas.ac.cn>）。

![Image](images/aea45bb45e3828357fe0e5020b001db8a52ef27588d5ae50a3c0352dcc0e0017.jpg)

<div style="text-align: center;">Photo-Realistic Rendering Hand mesh model</div>

<div style="text-align: center;">Fig. 1. The overview of our work. We build a large-scale photo-realistic hand pose database with a variety of hand shapes and poses, and render millions of synthetic images with different kinds of ground truths. Our dataset with multiple annotations enable us to design a multi-task CNN structure that predicts depth and 3D hand pose from input RGB image in a cascaded way.</div>

人机交互、增强现实和机器人技术领域[^1]。解决这一问题的最常用方法之一是基于深度学习的方法，这类方法通过大规模数据集来学习手部姿态。但基于深度学习的手部姿态估计方法面临的一个关键瓶颈是缺乏包含多样化且精确标注的大规模手部姿态数据集。现有的手部姿态理解数据集在帧数、受试者数量、标注层次以及标注精度方面都十分有限。例如，BigHand2.2M [^2]是目前公开可用的最大手部姿态数据集，但它仅包含深度和3D关节标注。为了收集BigHand2.2M数据，受试者需在手上佩戴基于标记点的追踪器以获取真实值，这会导致彩色图像受到干扰，无法用于基于色彩的手部姿态估计任务。RHD [^3]虽然包含多种标注信息，但仅有约4.4万张图像；此外，RHD的图像并非照片级真实感，与真实的彩色图像存在较大的域差异。收集大规模手部姿态数据集并非易事，既需要精确的3D手部姿态估计技术，也需要大量人力进行语义分割工作。

为降低构建真实数据集的成本，近期的研究广泛采用了合成数据[^3] [^4] [^5] [^6]。与真实数据相比，合成数据易于扩展规模，且能提供高质量的真实值。合成数据的另一个优势在于其具备多样的监督信息。例如，除了3D手部姿态的真实值外，还能从虚拟手部模型中获取许多其他类型的监督信息，比如深度和语义分割数据，这些信息对手部姿态估计可能具有重要作用。关于合成数据的主要担忧之一是输入端的域差异，即渲染出的合成数据与真实数据在色彩、深度等方面的差异；另一个问题是大规模数据集会对手部姿态理解相关任务产生何种影响。

---

高质量的基准真值。合成数据的另一个优势在于其监督信息的多样性。例如，除了3D手部姿态的基准真值外，还能从虚拟手部模型中获取多种监督信息，如深度图和语义分割结果，这些信息对姿态估计可能具有潜在价值。关于合成数据的主要担忧之一是输入端的域差异问题，比如渲染出的合成数据与真实数据在颜色、深度等方面的差异。另一个问题是大规模数据集会对手部姿态理解相关任务产生何种影响。

为解决这些问题，我们开发了一个名为PBRHand的大规模合成数据集（包含约552万张图像）。这些图像是由各种手部姿态下的带纹理手部网格渲染而成的。为确保图像的真实性，我们使用专业3D扫描仪和数字手套采集了高保真度的3D手部模型及姿态序列。我们随机选取了多种相机视角和环境光照贴图，并采用基于物理的渲染技术生成照片级真实感图像。至于真实值部分，我们生成了精确的3D手部骨骼姿态、像素级语义分割结果（如手指、手掌）以及深度图。

我们利用该数据集对卷积神经网络进行预训练，以完成三项手部姿态理解相关任务：从彩色图像中估计2D/3D手部姿态、从彩色图像中估计深度，以及从深度数据中估计3D手部姿态。实验表明，对于这些手部姿态相关任务，我们的数据集能够提升现有最先进模型的网络性能。我们还发现，对于从单张彩色图像中估计3D姿态的任务，该数据集使我们能够利用多种监督信息对模型进行预训练，在真实数据集上微调后能获得更好的性能（见图1）。具体而言，我们基于PBRHand提出了一种用于从彩色图像估计手部姿态的级联多任务深度神经网络，该网络能够有效利用辅助的深度恢复任务来学习。

与同样利用深度图进行手部姿态估计辅助监督的Weakly-sup [^7]相比，我们的级联多任务方法采用了不同的深度图使用方式。受基于深度图的手部姿态估计成功的启发，我们认为深度图/特征可作为手部姿态的重要输入；我们对不同级联形式（特征级联、输入/输出级联）的效果进行了深入分析，发现深度特征能够提升基于彩色图像的三维手部姿态估计精度（详见第VI.B节）。Weakly-sup [^7]提出了一种用于三维手部姿态估计的弱监督网络：该网络先从输入的彩色图像中预测三维手部姿态，再根据预测结果生成深度图，生成的深度图则作为三维姿态回归的弱监督信号。此外，如补充文档中的表II所示，我们的方法性能优于[^7]。

本研究的主要贡献如下：

1) 我们开发了一个高质量的合成手部姿态数据集，即PBRHand。该数据集包含大量具有多种真值信息（深度图、语义分割标签和手部关节坐标）的照片级真实感合成彩色图像；

这些真值可用于各类手部姿态相关任务。我们还证明了渲染质量对手部姿态估计的重要性；

2) 我们证实，在PBRHand上预训练的网络在三个任务上均能达到最先进的性能。

3) PBRHand还为我们探索多任务学习提供了可能。我们基于PBRHand提出了一种用于从彩色图像估计手部姿态的级联多任务深度神经网络。该网络能够有效借助辅助的深度恢复任务来提升三维手部姿态估计能力，在公开数据集上取得了最先进或具有竞争力的性能。

本文其余部分的结构如下：第II节介绍相关研究；第III节阐述合成手部姿态数据集的生成流程；第IV节研究该数据集对三类典型手部姿态相关任务的影响；第V节详细介绍我们的手部姿态估计多任务模型；第VI节展示对比实验与消融研究结果；第VII节给出结论。

### II. 相关工作

对于基于卷积神经网络的手部姿态估计而言，构建大规模数据集是关键问题。

一种思路是构建真实的手部姿态数据集，这类数据集中的图像由真实的彩色或深度相机拍摄，关节标注则通过模型拟合方法[^16]手动完成，或者结合这两种方法[^17]来完成。由于大规模数据集的手动标注往往需要耗费大量人力、标注结果不够准确，且难以扩展规模，因此几乎无法实现。ICVL、NYU和MSRA数据集是用于手部姿态性能评估的三大主要深度图像基准数据集。ICVL数据集[^17]采用人体姿态跟踪与手动优化相结合的方式进行标注。不过该数据集的帧数和受试者数量较少，且其标注准确性问题在[^18]中已被指出。MSRA数据集[^19]采用了相同的标注策略，其规模虽更大，但标注准确性依然不高。NYU数据集[^16]是一个规模更大的基准数据集，具有较广的视角覆盖范围以及丰富的关节活动变化。该数据集首先依靠基于模型的拟合，再通过粒子群优化算法来获取关节标注信息，后续还需手动调整标注并重新初始化。Oberweger等人[^18]也提出了一种用于为包含3D关节信息的手部深度视频打标的半自动化方法，目前该数据集仅包含4名受试者的约6.3万帧RGBD图像。近期，Yuan等人提出了BigHand2.2M[^2]。BigHand2.2M是目前规模最大的真实深度数据集，其手部关节标注是通过磁性标记完成的。不过该数据集在手部形状方面的多样性较差，仅有10名受试者；此外，它也不适用于基于彩色的手部姿态估计任务。用于基于彩色的手部姿态估计的数据集，如Stereo[^20]、Dexter+Object[^10]、Dexter Ego[^4]、MPII+NZSL[^21]，通常规模较小或仅包含部分标注信息。最近，FreiHands[^9]被创建为大规模的真实彩色图像数据集，包含手部姿态/形状标签；不过其背景为合成图像，标注过程为半自动化，仍需人工参与验证。

---

<div style="text-align: center;">TABLE I</div>

<div style="text-align: center;">DATASET COMPARISON. 'PARTSEG' IS ABBREVIATION FOR HAND PART SEGMENTATION. 'FINGERTIPS' MEANS 5 FINGERTIPS ARE LABELED, AND IT CAN BE EXTRACTED FROM 'JOINTS'. OUR DATASET HAS BETTER DATA VARIATIONS, QUALITY OF RENDERED IMAGES AND FULL ANNOTATIONS</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td style='text-align: center; word-wrap: break-word;'>Dataset</td><td style='text-align: center; word-wrap: break-word;'>Content</td><td style='text-align: center; word-wrap: break-word;'>Type</td><td style='text-align: center; word-wrap: break-word;'>Frames</td><td style='text-align: center; word-wrap: break-word;'>Subjects</td><td style='text-align: center; word-wrap: break-word;'>Viewpoints</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Stereo [^8]</td><td style='text-align: center; word-wrap: break-word;'>RGB, depth, joints</td><td style='text-align: center; word-wrap: break-word;'>real</td><td style='text-align: center; word-wrap: break-word;'>18K</td><td style='text-align: center; word-wrap: break-word;'>6</td><td style='text-align: center; word-wrap: break-word;'>3rd</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>FreiHands [^9]</td><td style='text-align: center; word-wrap: break-word;'>RGB, joints</td><td style='text-align: center; word-wrap: break-word;'>real</td><td style='text-align: center; word-wrap: break-word;'>170K</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>3rd</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Dexter+Object [^10]</td><td style='text-align: center; word-wrap: break-word;'>RGB, depth, fingertips</td><td style='text-align: center; word-wrap: break-word;'>real</td><td style='text-align: center; word-wrap: break-word;'>3,014</td><td style='text-align: center; word-wrap: break-word;'>2</td><td style='text-align: center; word-wrap: break-word;'>3rd</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Dexter Ego [^4]</td><td style='text-align: center; word-wrap: break-word;'>RGB, depth, fingertips</td><td style='text-align: center; word-wrap: break-word;'>real</td><td style='text-align: center; word-wrap: break-word;'>3,190</td><td style='text-align: center; word-wrap: break-word;'>4</td><td style='text-align: center; word-wrap: break-word;'>ego</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>FingerPaint [^11]</td><td style='text-align: center; word-wrap: break-word;'>depth, fingertips</td><td style='text-align: center; word-wrap: break-word;'>synthetic</td><td style='text-align: center; word-wrap: break-word;'>100k</td><td style='text-align: center; word-wrap: break-word;'>1</td><td style='text-align: center; word-wrap: break-word;'>full</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>HandNet [^12]</td><td style='text-align: center; word-wrap: break-word;'>depth, 6 joints</td><td style='text-align: center; word-wrap: break-word;'>real</td><td style='text-align: center; word-wrap: break-word;'>212k</td><td style='text-align: center; word-wrap: break-word;'>10</td><td style='text-align: center; word-wrap: break-word;'>3rd</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>MHP [^13]</td><td style='text-align: center; word-wrap: break-word;'>depth, joints</td><td style='text-align: center; word-wrap: break-word;'>real</td><td style='text-align: center; word-wrap: break-word;'>80k</td><td style='text-align: center; word-wrap: break-word;'>9</td><td style='text-align: center; word-wrap: break-word;'>3rd</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Bighand2.2M [^2]</td><td style='text-align: center; word-wrap: break-word;'>depth, joints</td><td style='text-align: center; word-wrap: break-word;'>real</td><td style='text-align: center; word-wrap: break-word;'>2.2M</td><td style='text-align: center; word-wrap: break-word;'>10</td><td style='text-align: center; word-wrap: break-word;'>full</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>RHD [^3]</td><td style='text-align: center; word-wrap: break-word;'>RGB, depth, joints, partseg</td><td style='text-align: center; word-wrap: break-word;'>Blender [^14]</td><td style='text-align: center; word-wrap: break-word;'>44K</td><td style='text-align: center; word-wrap: break-word;'>20</td><td style='text-align: center; word-wrap: break-word;'>full</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Our PBRHand</td><td style='text-align: center; word-wrap: break-word;'>RGB, depth, joints, partseg</td><td style='text-align: center; word-wrap: break-word;'>Mitsuba [^15]</td><td style='text-align: center; word-wrap: break-word;'>5.52M</td><td style='text-align: center; word-wrap: break-word;'>50</td><td style='text-align: center; word-wrap: break-word;'>full</td></tr></table>

另一种方法是构建合成数据集，这类方法在多种计算机视觉任务的卷积神经网络训练中已展现出良好效果，例如室内场景理解 [^5]、本质图像 [^6]、光流 [^22]、[^23]、物体姿态估计 [^24] 以及人体姿态估计 [^25]。这些方法利用带有真实标注的合成数据集进行网络预训练，随后再在真实数据集上微调。由于从真实受试者身上获取高质量手部形状与动作数据十分困难，且难以生成照片级逼真的图像来缩小真实图像与合成图像之间的差距，因此针对人手的合成数据生成尤其具有挑战性。Zimmermann和Brox [^3] 使用了一个名为RHD的渲染手部数据集，该数据集包含用于姿态估计的各种真实标注。不过该数据集的帧数（4.4万帧）和受试者数量（20人）都较为有限。相比之下，我们提供的数据集图像数量是RHD的125倍，且我们渲染的彩色图像比RHD中的彩色图像更具照片逼真度。SynthHands [^4] 包含了来自自中心视角的深度图像和彩色图像，这些图像是用Unity渲染而成的。该数据集是首个包含人手与物体交互信息的合成数据集。GAN-ratedDataset [^26] 利用几何一致的CycleGAN技术，将SynthHands中的合成图像转换为真实图像。该数据集包含超过33万张带2D和3D手部姿态标注的彩色手部图像。MSRC FingerPaint手部姿态数据集 [^11] 为一个受试者提供了10万帧合成深度图像，其手部姿态是通过对六种关节运动进行随机抽样得到的 [^2]。

本文提出的数据集与以往的数据集有所不同。它是首个包含照片级逼真的RGB图像、深度图像、语义分割图以及3D手部关节信息的大规模手部数据集。整个数据生成流程成本极低，且易于扩展。我们的实验表明，包含形状、姿态、纹理和光照变化的数据能够对手部姿态理解问题起到促进作用。

### III. PBRHAND手部姿态数据集

我们构建了一个大规模手部姿态数据集，命名为PBRHand（基于物理渲染的手部数据集）。该数据集包含数百万张照片级逼真的彩色图像以及各种精确的标注信息，有望为手部姿态相关任务提供帮助。近年来，深度学习方法已成功应用于手部姿态估计问题，目前已有多个优质数据集对外公开（见表I）。这些数据集为提升该任务的质量做出了重要贡献。不过，它们仍存在一些局限性。首先，对于真实数据而言，采集并标注用于训练复杂深度神经网络的大规模数据集成本极高。当前现有的真实数据集 [^4]、[^20] 仅包含数千帧图像且受试者数量很少，这限制了深度神经网络的泛化能力。最近，Zimmermann和Brox [^3] 构建了一个名为渲染手部姿态数据集（RHD）的合成数据集，该数据集包含的帧数、姿态和受试者数量更多。这类合成数据集的数据多样性通常优于现有的真实数据集。然而，由于他们使用的是低质量的3D人体模型和不真实的渲染方法，导致该数据集与真实世界图像之间存在较大差距。

为了进一步提升手部姿态理解的准确性，我们决定构建一个新的数据集。为使数据更加真实且多样化，我们首先利用专业设备从人类受试者身上采集手部模型和姿态数据。随后，我们对这些扫描得到的3D手部模型进行人工清理和标注。在此基础上，我们运用照片级真实感渲染技术，生成了数百万张包含多种真实标签的图像。总体而言，我们的PBRHand数据集包含了552万张合成彩色图像，涵盖了3D手部姿态、语义分割以及深度信息。图2展示了该照片级真实感手部数据集的一些示例。表I则对比了我们的数据集与其他数据集。

### A. 3D手部模型与姿态

为了收集高保真的网格模型，我们使用手持式3D扫描仪Artec $^{\circledR}$ Eva扫描仪 [^27] 来采集处于标准直立姿态下的手部密集3D点云数据（见图3(a)）。考虑到人类手部形状的多样性，我们选取了50名受试者的手部数据，其中包括30名男性和20名女性，他们的年龄、职业和种族各不相同。我们通过移动Eva扫描仪来扫描处于静止状态的手部，利用Eva采集软件中的“平滑笔刷”和“橡皮擦”工具对每一帧的点云数据进行平滑处理并去除噪声，随后使用“融合”工具将多次扫描结果合并为完整的网格模型。尽管Artec Eva扫描仪能为采集的网格提供彩色纹理，但我们发现生成的纹理较为模糊。

---

![Image](images/43a479994fda03012e2cabb3310ee1cd6f8307b30eda4d25228d4876872090cb.jpg)

<div style="text-align: center;">Fig. 2. Our photo-realistic hand dataset by posing real hand models with real hand motion data. Examples of rendered photo-realistic hand color images are shown on the top rows. Examples of hand poses, rendered depths and semantic segmentation are shown on the bottom rows.</div>

![Image](images/c97e6f8021ff35ac49b3c1662a83a6cec1c6b2e7badd9ebe4abc484147456dc0.jpg)

<div style="text-align: center;">(a)</div>

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

<div style="text-align: center;">(b)</div>

![Image](images/d53bc24a6bf62630b66e0d9ac51a2ff7e789becde24d8c228702240db6517867.jpg)

<div style="text-align: center;">(c)</div>

<div style="text-align: center;">Fig. 3. Hand model generation. We show captured hand point cloud with 3D scanner in (a), rewired mesh in (b), and mesh deformation under several poses in (c). We use real hand mesh models instead of hand meshes designed by artists, which are broadly used in previous hand pose estimation literature.</div>

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

<div style="text-align: center;">Fig. 4. Textured hand shape. left: original texture; right: improved by designer.</div>

在某些区域还存在一些瑕疵。因此，我们聘请专业设计师对手部纹理进行人工精细化处理，以确保其具有高度的真实感和丰富的细节（见图4）。为了简化骨骼绑定和纹理映射过程，我们利用非刚性ICP算法 [^28] 重新调整表面线条，使其符合标准手部网格模板的自然拓扑结构（见图3(b)）。在当前的手部模型中，我们并未加入手臂部分。要在保持真实感的同时添加手臂部分是一项极具挑战性的任务；采集手臂的3D模型，以及处理皮肤、姿态和与衣物的相互作用等问题都需要耗费大量精力。这将是未来研究的重要方向。随后，通过UV映射技术 [^29] 将点云数据拟合到带纹理的三角网格上。我们的手部模型纹理是由专业工程师根据真实手部纹理图像手动制作的。

为了采集逼真的手部姿态，我们参考NYU [^16]、Dexter+Object [^10] 和EgoDexter [^4] 等现有数据集，总结了1,840种用于人机交互的关键手部姿态。我们要求受试者佩戴Measurand $^{\circledR}$ ShapeHand手套来展示这些姿态，该手套能够捕捉骨骼姿态信息。这些关键姿态涵盖了常见的手势，如握持、捏合、所有手指一起外展、所有手指屈伸等。此外，我们还要求受试者自由活动手部，以进一步增加姿态的多样性。由于采集到的手部姿态数据通常含有噪声，我们便聘请专业设计师对局部关节的位置和方向进行精细化调整，从而使手部姿态更加准确，并减少瑕疵。

收集到的手部姿态会经过优化处理，随后通过绑定与变形技术半自动地重新映射到手部网格模型上[^30]，从而使手部网格能够自动转换为所收集的姿态集合。图3和图5展示了几种姿态下手部网格变形的示例。采集到的手部姿态通常包含噪声，因此我们会聘请专业设计师来优化局部关节的位置与方向。这能够减少模型重新映射过程中出现的网格穿透等手部网格瑕疵。我们首先通过调整关节的局部偏移量，将标准手部姿态手动对齐到手部网格（每位受试者仅一个网格）。接着我们在Autodesk $^{®}$ Maya中绑定骨骼与网格，通过变形技术即可在不同姿态下自动生成网格。不过变形过程可能会对平滑绑定的皮肤造成扭曲，因此我们聘请专业美术人员手动检查数据，调整皮肤权重并进行控制。

---

![Image](images/f7baef93005503d5ec495ee9cc367cff4b4c3002d1c5149dbe710b2532bbadfb.jpg)

<div style="text-align: center;">Fig. 5. Hand shapes and poses. With hand models of 50 subjects and 1,840 gestures, we synthesize 92K hand meshes with various hand shapes and poses.</div>

<div style="text-align: center;">TABLE II</div>

<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;'>Capture hand shape and post-process</td><td style='text-align: center; word-wrap: break-word;'>Create hand texture</td><td style='text-align: center; word-wrap: break-word;'>Rig and deform hand shape with pose</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Time</td><td style='text-align: center; word-wrap: break-word;'>10</td><td style='text-align: center; word-wrap: break-word;'>60</td><td style='text-align: center; word-wrap: break-word;'>15</td></tr></table>

<div style="text-align: center;">MANUAL WORK (IN MINUTE) OF HAND SHAPE CAPTURE AND TEXTURE CREATION FOR EACH SUBJECT</div>

对变形过程进行调整，确保绑定后的手部网格具备高质量。

此外，借助当前的数据采集框架，我们能够在合理的时间内采集到高质量的姿态与形状数据，并生成照片级真实的纹理。首先，我们利用Measurand $^{\circledR}$ ShapeHand手套在不到两小时的时间内采集了包含1,840个姿态的手部姿态集。接着，我们为50位受试者采集手部形状、创建手部纹理并重新映射手部姿态。为每位受试者进行的手动操作耗时约85分钟。表二列出了每位受试者手动操作的详细耗时。

凭借高保真度的手部网格与逼真的姿态，我们采用广泛使用的基于物理的渲染器Mitsuba [^15]来生成照片级真实的图像。我们选取距离手部模型质心不同随机距离的相机视角，这些距离分别为[^400]和[^800]毫米；同时选取3个相机位置，其天顶角和方位角分别为$[\frac{1}{6}\pi, \frac{2}{3}\pi]$与$[0, 2\pi)$。为了模拟逼真的光照效果，我们采集了20张HDR环境贴图，其中涵盖了室内外各种光照条件的场景。图6展示了这些环境贴图。透视相机的分辨率为$640 \times 480$，水平视场角为54度。给定相机位置后，我们的手部模型会通过路径追踪技术在随机选取的一部分环境贴图上进行渲染。借助手部网格、纹理、环境贴图以及随机选取的视角，我们通过照片级真实渲染获得了超过552万张手部图像。图2展示了我们数据集中的合成图像、深度图、分割结果及关节信息。

### B. 基于物理的渲染

为了验证照片级真实渲染是否有助于手部姿态理解任务，我们还进行了如下渲染：

![Image](images/11c86c67e41259680c43e36a407f886b198c0086fdeab6253c62565f81bc6977.jpg)

<div style="text-align: center;">Fig. 6. HDR environment maps used for rendering our photo-realistic hand images. They consist of 10 indoor scenes and 10 outdoor scenes under different lighting conditions.</div>

![Image](images/39dc48368f099d26360e608378baf90e357717f18cafc7fe486926af2b382cab.jpg)

<div style="text-align: center;">(a) PBRHand-OpenGL</div>

<div style="text-align: center;">(b) PBRHand</div>

<div style="text-align: center;">Fig. 7. Hand image rendered with different methods. (a) OpenGL. (b) Physically-based rendering.</div>

使用OpenGL进行带有定向光的非真实感渲染。我们用OpenGL渲染的数据集被命名为PBRHand-OpenGL。该渲染方式包含基础着色效果与多个定向光，但不包含全局光照或阴影。图7展示了使用OpenGL和基于物理的渲染的效果对比。为了更清晰地展示不同渲染方法对手部区域的影响，我们仅展示了手部区域。

### C. 标注

对于我们PBRHand数据集中的每个样本，我们提供了带有语义分割的渲染彩色图像、深度图像以及3D关节坐标。在建模手部形状时，设计人员会在标准姿势的手部网格上手动标注15个手部部位的分割信息，这些分割信息以纹理图的形式存储；而在手部姿态重定向过程中，不同姿势下的手部网格分割能够自动标注。语义分割也是通过渲染带有语义标签编码纹理图的手部网格反照率来生成的。深度信息则取自相机空间中3D位置的z值。

---

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

<div style="text-align: center;">(a) Hand pose space</div>

![Image](images/b92fb571c5e535abd2a9efa1cdc455a1371f15c369bc21e0003b1e6d10050227.jpg)

<div style="text-align: center;">(b) Hand shape space</div>

<div style="text-align: center;">Fig. 8. 2D t-SNE of hand pose and hand shape space for PBRHand, BigHand2.2 and RHD dataset.</div>

深度数据是通过“距离场”积分器渲染得到的，随后经过后处理，将光线距离转换为基于相机内参矩阵的深度值。在建模手部姿态时，手部网格会根据对应骨骼的姿态发生形变。我们通过变换矩阵和正向运动学来计算相机空间中的关节位置。

### D. 手部姿态/形状空间

参照Bighand2.2M [^2]的研究，我们对手部姿态/形状空间进行了可视化，并使用2D t-SNE对比了我们的PBRHand数据集与现有数据集。图8展示了我们PBRHand数据集、RHD [^3]以及BigHand2.2M [^2]投影得到的手部姿态空间和手部形状空间。我们发现，我们的数据集在手部形状空间的覆盖度更高，且我们的数据集与Bighand2.2M的手部姿态分布均优于RHD。这一结果与直觉相符：姿态空间比形状空间更简单，因为手部形状更难以捕捉，且不同受试者的手部形状也存在差异。

### IV. 与手部姿态理解相关的任务

在本节中，我们首先研究了三项基础的手部姿态相关任务：（1）从彩色图像中估计2D/3D手部姿态；（2）从彩色图像中估计深度；（3）从深度图像中估计3D姿态。针对这些任务，我们展示了用我们的合成数据集预训练的最先进模型，与用其他合成数据集预训练的模型相比的性能表现。

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

在本文中，我们在多个公开数据集上评估不同手部姿态理解任务的手部姿态估计性能：立体数据集 [^8]、MPII-NZSL数据集 [^21]、NYU数据集 [^16]、Dexter+Object数据集 [^10]、渲染手部姿态数据集（RHD） [^3]，以及Hands 2019挑战赛的任务3（Hands-2019） [^31]。本节中我们使用立体数据集、MPII-NZSL数据集和NYU数据集进行评估；在第V节中，我们使用立体数据集、RHD、Dexter+Object数据集和Hands 2019数据集进行评估。下文我们将简要介绍这些数据集并说明评估指标。

1) 立体手部姿态数据集（Stereo） [^8]：这是最大的公开真实图像数据集，包含使用彩色图像完全标注的3D手部关节信息。我们使用的是从RGBD相机采集的Stereo SK的彩色-深度子集。该数据集提供彩色和深度图像，以及21个手部关键点的3D标注信息。数据集分为包含3000张图像的评估集和包含15000张图像的训练集。

2) MPII+NZSL数据集 [^21]：包含2800张带有2D手部姿态标注的图像，其中训练集和测试集分别约有2000张和800张图像。

3) NYU手部数据集 [^16]：这是一个基于深度图像的手部姿态数据集。我们利用NYU数据集来比较我们扫描得到的手部形状与参数化MANO模型在基于深度图像的手部姿态估计中的效果。不过，我们并未对NYU数据集中的彩色图像进行评估，因为这些图像与深度图像对齐后会产生失真 [^3]。

4) 渲染手部姿态数据集（RHD）[^3]：这是一个合成数据集，包含41,258张训练图像和2,728张评估图像。这些图像是使用Blender渲染生成的。该数据集提供了2D和3D关节标注、深度图以及部件分割信息。

5) Dexter+Object数据集 [^10]：包含6个序列，涉及2名参与者以及与简单物体形状的各种交互情况。所有序列的指尖位置和立方体角点均经过人工标注。在Dexter+Object数据集上进行手部姿态估计极具挑战性，因为缺乏相应的训练数据集，且由于手与物体之间的交互会导致严重的遮挡现象。

6) 2019年手部识别挑战赛的任务3数据集（Hands-2019）[^31]：包含3名受试者操作4个物体的训练图像，以及5名不同受试者操作6种不同物体的测试图像。由于物体造成的严重遮挡现象，Hands-2019数据集同样具有较高难度。

a) 评估指标：我们开展了三项与手部姿态理解相关的任务，针对每项任务均采用文献中通用的评估指标。为了评估从彩色图像中得到的2D和3D手部姿态精度，我们遵循常用指标 [^3]，使用平均端点误差（EPE）、曲线下面积（AUC）以及不同阈值下的正确关键点百分比（PCK）来进行评估。

对于从彩色图像中得到的3D手部姿态，我们遵循 [^3] 的方法，估算相对于参考点的归一化3D关节坐标；该参考点可选择为手部根关节，或根据彩色图像的对齐深度所估算出的手部前景区域的3D质心（CoM）。在Stereo、RHD和Dexter+Object的评估中，我们以3D CoM作为参考点；而在Hands-2019的评估中，则以测试图像中提供的真实手腕位置作为参考点。评估时，通过将预测的归一化3D关节坐标与参考点相加来得到绝对关节位置。对于MPII+NZSL数据集，我们遵循 [^21]、[^32] 的规定，采用基于手尺寸归一化的PCK进行评估。对于从彩色图像中进行的深度估计，我们使用平均绝对误差（MAE）来评估手部前景区域中真实深度与估计深度之间的差异。为了评估基于深度图像的3D手部姿态，我们采用 [^17] 中提出的标准指标，即平均关节误差以及……

---

![Image](images/d2f27a33a557e75931acd526318886fcff487cd58ccac3b4e2d7bab03105fdf4.jpg)

<div style="text-align: center;">(a) 2D hand pose results with PoseNet.</div>

![Image](images/20ed59f33d88075ec2291e3b33831d05323ad7fac9b60f85408518a9f99ea86b.jpg)

<div style="text-align: center;">(b) 3D hand pose results with PoseNet + PosePrior.</div>

<div style="text-align: center;">Fig. 9. (a) 2D hand pose results with PoseNet. (b) 3D hand pose results with PoseNet + PosePrior. PoseNet and PoseNet + PosePrior are both pretrained on different datasets and finetuned on Stereo dataset.</div>

所有预测关节误差均在给定距离阈值内、且与真实值相符的测试图像数量。

### B. 基于彩色图像的2D/3D姿态估计

1) 方法：我们采用CHP3D中的网络架构 [^3] 来从单张彩色图像中估计2D/3D手部姿态。该网络由三个模块组成：HandSegNet、PoseNet和PosePrior网络。HandSegNet是一个用于分割手部掩码的分割网络；借助HandSegNet预测出的手部掩码，输入图像会被裁剪并调整大小，随后送入PoseNet以获取2D手部关节的得分图。PoseNet采用了类似于 [^33] 的级联编码器-解码器网络来预测输入图像的得分图。PosePrior则利用2D手部关节的得分图来恢复3D手部关节。

2) 训练：与CHP3D [^3]类似，我们首先用[^33]的预训练权重初始化PoseNet网络的前16层，其余层则使用随机权重初始化，随后在立体数据集[^8]和合成数据集上训练PoseNet。遵循[^3]的方法，我们利用PoseNet预测的得分图来训练PosePrior。我们保持PoseNet固定，并在立体手姿数据集（Stereo）[^8]上继续训练。为了凸显基于物理的渲染技术与不真实的OpenGL渲染技术之间的差异，我们在PBRHand + Stereo、PBRHand-OpenGL + Stereo以及RHD [^3] + Stereo数据集上分别进行训练。这些网络的批量大小设为16，优化器采用ADAM，前1万次迭代的学习率为0.0001，接下来的1万次迭代学习率降为0.00001，之后直至训练结束学习率保持在0.000001。

3) 实验：我们使用[^3]发布的代码进行训练，并在立体数据集[^8]上进行测试。首先，我们比较了在我们所构建的PBRHand数据集、PBRHand-OpenGL数据集以及RHD数据集上训练的PoseNet在2D关键点估计方面的性能。其次，我们比较了PoseNet + PosePrior在3D关节估计方面的性能。图9(a)和表III展示了在不同训练设置下，立体数据集上的2D姿态估计性能。

<div style="text-align: center;">TABLE III</div>

<div style="text-align: center;">PERFORMANCE OF 2D HAND POSE FROM COLOR IMAGE ON STEREO DATASET WITH DIFFERENT TRAINING DATASETS. '-' IN THE FIRST COLUMN MEANS NO PRETRAINING. AUC IS SHOWN IN PERCENTAGE POINTS</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td rowspan="2">Pre-train Dataset</td><td colspan="2">PoseNet</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>AUC(0-30pix.) $\uparrow$</td><td style='text-align: center; word-wrap: break-word;'>EPE (pix.) $\downarrow$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>76.1</td><td style='text-align: center; word-wrap: break-word;'>8.732</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>RHD</td><td style='text-align: center; word-wrap: break-word;'>79.9</td><td style='text-align: center; word-wrap: break-word;'>7.500</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>PBRHand</td><td style='text-align: center; word-wrap: break-word;'>80.8</td><td style='text-align: center; word-wrap: break-word;'>6.467</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>PBRHand-OpenGL</td><td style='text-align: center; word-wrap: break-word;'>76.9</td><td style='text-align: center; word-wrap: break-word;'>8.203</td></tr></table>

<div style="text-align: center;">TABLE IV</div>

<div style="text-align: center;">PERFORMANCE OF 3D POSE REGRESSION FROM COLOR IMAGE ON STEREO DATASET WITH DIFFERENT TRAINING DATASETS. '-' IN THE FIRST COLUMN MEANS NO PRETRAINING. AUC IS SHOWN IN PERCENTAGE POINTS</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td rowspan="2">Pre-train Dataset</td><td colspan="2">PoseNet + PosePrior</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>AUC(20-50mm) $\uparrow$</td><td style='text-align: center; word-wrap: break-word;'>EPE (mm) $\downarrow$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>97.9</td><td style='text-align: center; word-wrap: break-word;'>9.142</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>RHD</td><td style='text-align: center; word-wrap: break-word;'>98.7</td><td style='text-align: center; word-wrap: break-word;'>8.626</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>PBRHand</td><td style='text-align: center; word-wrap: break-word;'>99.3</td><td style='text-align: center; word-wrap: break-word;'>7.716</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>PBRHand-OpenGL</td><td style='text-align: center; word-wrap: break-word;'>97.8</td><td style='text-align: center; word-wrap: break-word;'>9.502</td></tr></table>

图9(b)和表IV则展示了在不同训练设置下，立体数据集上基于彩色图像的3D姿态估计性能。我们发现，在我们所构建的PBRHand数据集上预训练的3D姿态模型，其EPE和AUC（20-50mm）指标均优于未预训练模型、在RHD数据集[^3]上预训练的模型以及PBRHand-OpenGL数据集上预训练的模型。此外，在PBRHand上预训练的模型所得到的2D手姿结果也优于在RHD和PBRHand-OpenGL上预训练的模型。图10展示了在不同训练数据集下，立体数据集上的2D手姿结果。可以看出，使用该模型得到的2D手姿效果更佳。

---

![Image](images/be4cf0164de998550c069e9f222f75734815067b109c8c6cf574bb7dcfbc8407.jpg)

<div style="text-align: center;">(a) Input image</div>

(b) 在RHD上预训练的模型得到的手姿结果

(c) 在PBRHand-OpenGL上预训练的模型得到的手姿结果

(d) 在PBRHand上预训练的模型得到的手姿结果

<div style="text-align: center;">Fig. 10. Hand pose results on Stereo dataset with different training datasets. The pretrained model on PBRHand provides more reasonable hand skeleton joint structure.</div>

<div style="text-align: center;">TABLE V</div>

使用在不同训练数据集上训练的PoseNet，在MPII+NZSL数据集上基于彩色图像的2D手姿性能表现。“-”在第一列表示未进行预训练。AUC以百分点表示。

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td rowspan="2">Pre-train Dataset</td><td colspan="2">PoseNet</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>AUC(0-0.5 hand size) $\uparrow$</td><td style='text-align: center; word-wrap: break-word;'>EPE (pix.) $\downarrow$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>65.5</td><td style='text-align: center; word-wrap: break-word;'>12.197</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>RHD</td><td style='text-align: center; word-wrap: break-word;'>76.1</td><td style='text-align: center; word-wrap: break-word;'>12.197</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>PBRHand</td><td style='text-align: center; word-wrap: break-word;'>76.7</td><td style='text-align: center; word-wrap: break-word;'>11.803</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>PBRHand-OpenGL</td><td style='text-align: center; word-wrap: break-word;'>75.2</td><td style='text-align: center; word-wrap: break-word;'>12.708</td></tr></table>

在PBRHand上预训练的模型能够生成合理的手部骨骼关节，且与手部前景的对齐程度也优于在RHD和PBRHand-OpenGL上预训练的模型。

我们还测试了我们的PBRHand数据集对MPII+NZSL手姿数据集[^21]的影响。MPII+NZSL仅包含2D手姿标注，我们通过PoseNet评估不同合成数据集对2D手姿的影响。图11和表V展示了在不同数据集上训练的PoseNet模型在MPII+NZSL数据集上的2D姿态估计性能。我们发现，在PBRHand上训练的模型得到的2D手姿结果，优于未预训练模型、在RHD数据集上预训练的模型以及PBRHand-OpenGL数据集上预训练的模型。

因此，我们通过基于物理的渲染技术合成的PBRHand数据集，提升了基于彩色图像的手姿估计性能，超越了现有最先进的方法。

### C. 基于彩色图像的深度估计

1) 方法：我们采用堆叠式沙漏网络来从彩色图像中回归深度信息，这一做法与[^34]中描述的人体深度估计任务类似。该网络的具体结构如下：

![Image](images/879f872fd4671fb8d2ecbd9d1b0192ba3291f26355c650860e1787fcbdda19a7.jpg)

<div style="text-align: center;">Fig. 11. 2D hand pose results with PoseNet pretrained on different datasets and finetuned on MPII+NZSL dataset.</div>

<div style="text-align: center;">TABLE VI</div>

<div style="text-align: center;">PERFORMANCE OF DEPTH ESTIMATION FROM COLOR IMAGE (IN mm) ON STEREO DATASET WITH DIFFERENT TRAINING DATASETS</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td style='text-align: center; word-wrap: break-word;'>Training Data</td><td style='text-align: center; word-wrap: break-word;'>Stereo</td><td style='text-align: center; word-wrap: break-word;'>RHD+Stereo</td><td style='text-align: center; word-wrap: break-word;'>PBRHand+Stereo</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>MAE $\downarrow$</td><td style='text-align: center; word-wrap: break-word;'>5.877</td><td style='text-align: center; word-wrap: break-word;'>4.571</td><td style='text-align: center; word-wrap: break-word;'>4.541</td></tr></table>

将彩色图像的深度估计视为像素级回归问题。按照[^34]中的图像预处理步骤，我们首先将手部前景像素的深度值归一化到$[-1, 1]$。我们利用深度图找到手部区域的三维质心（CoM），然后通过减去质心并将结果除以常数100来对深度图进行归一化处理。该网络采用带有残差连接的卷积层以及3个堆叠的“沙漏”模块，每个后续模块都将前一个模块的输出作为输入。

2) 训练：训练过程分为两个阶段：预训练和微调。我们在合成数据集（PBRHand和RHD）上预训练模型，随后在Stereo姿态数据集[^8]上对预训练好的模型进行微调，这一做法与Zhang等人[^5]的研究类似。我们使用RMSProp优化器来训练和微调模型。在预训练阶段，初始学习率设为$5 \times 10^{-4}$，每训练8万步便将其平滑衰减至原来的0.9倍。预训练阶段和微调阶段共训练14万步。我们采用了旋转、添加噪声和亮度调整等数据增强手段。批量大小设定为16。

3) 实验：为了验证PBRHand对深度估计的效果，我们使用在PBRHand数据集、RHD数据集和Stereo数据集上训练的模型，在Stereo数据集[^8]上比较深度恢复性能。表VI展示了在Stereo数据集上的深度估计对比结果。可以看出，在PBRHand+Stereo数据集上训练的模型性能最佳。图12展示了若干定性结果。可见，用我们的PBRHand数据集预训练的模型能恢复出更精确的深度图像。

### D. 基于深度图像的手部三维姿态估计

在本实验中，我们旨在比较合成训练数据集——即PBRHand中的扫描手部模型和参数化手部模型MANO [^35]——对三维手部姿态估计的影响。

---

![Image](images/71fa18e48e28d47e778608033cb278d9071f493534bf12fc1f56aae5a2187c50.jpg)

2.7072

<div style="text-align: center;">(a)</div>

3.0745

<div style="text-align: center;">(b)</div>

<div style="text-align: center;">(c)</div>

<div style="text-align: center;">Fig. 12. Depth estimation from color image on stereo dataset. (a)(b)(c) show the predicted depth and error map of predicted depth using models pretrained on our PBRHand dataset, pretrained on RHD, and without pretraining, respectively. The model pretrained with our PBRHand dataset recovers more accurate depth images.</div>

由于原始的MANO模型不包含支持基于颜色的手部姿态相关任务的照片级真实纹理，因此我们通过深度数据来进行三维手部姿态估计的比较。在比较过程中，我们生成了两个合成训练数据集：PBRHand-Sub和MANO，两者均包含10个手部模型和1840种手部姿态。PBRHand-Sub数据集是我们完整PBRHand数据集的一个子集，采用扫描得到的手部形状模型；而MANO数据集中的手部形状模型则是通过MANO手部模型[^35]生成的。

2) 训练：我们在NYU数据集[^16]上进行比较实验。为了凸显扫描手部模型与MANO手部模型在三维手部姿态估计方面的差异，我们分别从零开始，在NYU数据集、PBRHand-Sub + NYU数据集以及MANO + NYU数据集上训练DenseReg [^36]。训练时批量大小设为40，使用ADAM求解器。初始学习率为0.001，动量的指数衰减率设为$\beta_{1} = 0.5$。训练过程中我们未采用数据增强手段。

1) 方法：我们使用DenseReg [^36]中的网络架构来进行基于单张深度图像的三维手部姿态估计。我们选择DenseReg [^36]作为基准模型，是因为DenseReg是已开源代码的最先进网络之一。该网络利用深度的二维和三维特性，通过像素级回归来恢复三维手部姿态。

3) 实验：我们使用由[^36]发布的代码进行训练，并在NYU手部数据集上测试。我们得到了三个分别在NYU数据集、PBRHand-Sub + NYU数据集以及MANO + NYU数据集上训练的DenseReg模型，并比较它们对3D手部姿态的估计性能。

![Image](images/832c326e4cff1bbd73e186d461cf7713092d0a3a7a56c880369192e37012a96a.jpg)

<div style="text-align: center;">Fig. 13. 3D hand pose results with DenseReg trained on NYU dataset, PBRHand-Sub + NYU dataset, and MANO + NYU dataset.</div>

<div style="text-align: center;">TABLE VII</div>

<div style="text-align: center;">PERFORMANCE OF 3D HAND POSE FROM DEPTH IMAGE ON NYU DATASET WITH DIFFERENT TRAINING DATASETS. AUC IS SHOWN IN PERCENTAGE POINTS</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td style='text-align: center; word-wrap: break-word;'>Dataset</td><td style='text-align: center; word-wrap: break-word;'>NYU</td><td style='text-align: center; word-wrap: break-word;'>MANO + NYU</td><td style='text-align: center; word-wrap: break-word;'>PBRHand-Sub + NYU</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Mean error (mm) $\downarrow$</td><td style='text-align: center; word-wrap: break-word;'>12.06</td><td style='text-align: center; word-wrap: break-word;'>12.55</td><td style='text-align: center; word-wrap: break-word;'>11.75</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>AUC(0-80mm) $\uparrow$</td><td style='text-align: center; word-wrap: break-word;'>64.5</td><td style='text-align: center; word-wrap: break-word;'>63.4</td><td style='text-align: center; word-wrap: break-word;'>66.5</td></tr></table>

图13和表VII对比了使用不同训练数据集时在NYU数据集上的3D手部姿态结果。用PBRHand-Sub + NYU数据集训练的模型，其性能优于用MANO + NYU数据集训练的模型以及仅在NYU数据集上训练的模型，这一结果表明我们的手部模型比MANO更贴近真实，且渲染数据对预训练更有益处。

### V. 基于彩色图像的多任务手部姿态估计

借助我们的数据集，我们进一步提出了一种用于手部姿态估计的多任务深度神经网络，该网络以级联方式同时预测深度图和手部关节位置。我们展示了我们的多任务模型及合成数据集与其他用其他合成数据集预训练的最先进模型相比的表现。图14展示了我们网络的基本结构。在第一阶段，网络从输入的手部图像中预测深度图；第二阶段，网络利用第一阶段得到的潜在特征来预测3D手部关节位置。我们选择将深度作为辅助任务，是因为深度与3D手部姿态估计密切相关[^2]。

### A. 数据准备

我们将训练样本记为$\{(I_i, D_i, J_i)\}_{i=1}^N$，其中$I_i$是第i个检测到的手部区域，$D_i$和$J_i$分别是对应的手部深度图以及相机坐标系下的3D手部关节位置。遵循常用的数据归一化方法[^3]，输入彩色图像被归一化为$[-1, 1]$。考虑到人手的大小，我们选取一个恒定值$a = 100$毫米来对深度和3D手部关节进行归一化。

---

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

<div style="text-align: center;">Fig. 14. Our cascaded multi-task network for hand pose estimation from a single color image. The network uses cropped and resized hand regions as input. Our network has two stages, the first stage for depth recovery, and the second stage for hand pose recovery, which iteratively generates depth and hand pose.</div>

深度图会先减去手部区域的平均深度，然后再用$\alpha$进行归一化。对于3D手部关节，我们首先利用深度图找到手部区域的3D质心（CoM）。随后，每个手部关节通过减去质心后再除以$\alpha$来进行归一化。这个质心仅用于裁剪手部区域，并不会直接作为网络的输入。网络的输出是相对于质心的3D姿态，质心仅用于与真实值进行比较。此后，我们将$D_i$和$J_i$分别表示为归一化后的深度图和关节位置。

### B. 级联多任务网络

我们的网络以分辨率为$128 \times 128 \times 3$的彩色图像作为输入。我们首先用几个卷积块提取图像特征。在深度预测阶段，我们使用U-net [^37]来生成潜在的深度特征。U-net以其提取低层和高层特征的能力而闻名，广泛应用于分割、检测和像素级回归任务。随后，深度特征会被传入几个卷积块以生成深度图。在关节预测阶段，网络先将图像特征和深度特征拼接起来，然后采用另一个U-net来融合这些输入特征。最后，经过几个卷积块、下采样层和全连接层后，网络输出归一化的3D手部关节位置。我们的网络以级联方式预测深度图和关节位置，其中关节位置不仅依赖于输入的图像特征，还依赖于潜在的深度特征。关于该网络的更多细节可在附录中找到。

### C. 损失函数

在训练阶段，所提出的级联网络的总损失函数定义如下：

 $$ L_{t o t a l}(\hat{J},\hat{D})=L_{p o s e}(\hat{J},J^{*})+\lambda_{d}L_{d e p t h}(\hat{D},D^{*}) $$

其中，损失 $L_{total}$ 是手部姿态损失 $L_{pose}$ 与深度恢复损失 $L_{depth}$ 的组合。参数 $\lambda_{d}$ 代表 $L_{pose}$ 和 $L_{depth}$ 的权重，其值设为1.0。

1) 手部姿态损失函数：我们采用欧几里得距离来衡量基准真值与估算出的3D手部关节之间的差异。

   $$ L_{pose}(\hat{\boldsymbol{J}},\boldsymbol{J}^{*})=\frac{1}{n}\sum_{i=1}^{n}||\hat{\mathbf{j}}_{i}-\mathbf{j}_{i}^{*}|| $$

其中，$\hat{J} = \{\hat{\mathbf{j}}_i\}$ 和 $J^* = \{\mathbf{j}_i^*\}$ 分别为预测的关节位置与基准真值关节位置，n为关节总数，在大多数数据集中通常为21个。

2) 深度恢复损失函数：借鉴图像回归相关工作 [^38] 的思路，我们采用 $L_{1}$ 范数来评估手部前景区域内基准真值深度图与估算深度图之间的损失。

   $$ L_{d e p t h}(\hat{\boldsymbol{D}},\boldsymbol{D}^{*})=\frac{1}{m}\sum_{i=1}^{m}|\boldsymbol{M}\odot(\hat{\mathbf{d}}_{i}-\mathbf{d}_{i}^{*})| $$

其中，$\hat{D} = \{\hat{\mathbf{d}}_i\}$ 和 $D^* = \{\mathbf{d}_i^*\}$ 分别为预测的深度图和真实深度图。M 是手部前景的二值掩码，m 是手部前景二值掩码中有效像素的数量，而 $\odot$ 表示逐元素乘法。

### D. 实现细节

我们的方法专注于手部姿态估计，手部区域的检测和裁剪方式遵循 [^39] 中的描述，裁剪后的彩色图像和深度图会被调整大小为 $128 \times 128$ 像素。在训练阶段，我们对训练数据集进行数据增强，包括对手部区域、深度图像以及手部关节的真实值进行二维旋转和缩放处理。我们采用以相机坐标系的 z 轴为中心的平面内旋转，旋转角度从 $[-5, 5]$ 度区间内随机选取。手部彩色图像的宽高比和缩放比例则随机取自 [0.84, 1.16] 区间。我们的实现基于 Tensorflow [^40]。优化器采用 RMSProp，学习率为 0.001，权重衰减为 0.9。批量大小设为 16，我们在 PBRHand 数据集上训练 10 个周期，随后在每个评估数据集的训练集上微调 20 个周期。

### VI. 实验

在本节中，我们首先将我们的多任务手部姿态估计模型与现有最先进的方法进行比较，随后对我们的方法进行消融研究。

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

我们首先评估我们的级联多任务网络，并在 Stereo 数据集上将其与最先进的方法进行比较（见图 15 和表 VIII）。我们的网络在…

---

![Image](images/3487632db44d8c1d033cf9a4c8b8dcc370a2daa270c371a217338e11ef2ab29c.jpg)

<div style="text-align: center;">Fig. 15. Comparison of different methods on stereo dataset. Our method outperforms all other methods and achieves the highest AUC.</div>

<div style="text-align: center;">TABLE Ⅷ</div>

<div style="text-align: center;">EPE AND AUC (BETWEEN 20 - 50mm) EVALUATION ON RHD AND STEREO DATASETS. OUR CASCADED NETWORK WITH PRETRAINING ON OUR DATASET SHOWS CONSISTENTLY BETTER PERFORMANCE THAN OTHERS. OURS: OUR CASCADED NETWORK. AUC IS SHOWN IN PERCENTAGE POINTS</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td style='text-align: center; word-wrap: break-word;'></td><td colspan="2">RHD</td><td colspan="2">Stereo</td></tr><tr><td style='text-align: center; word-wrap: break-word;'></td><td style='text-align: center; word-wrap: break-word;'>EPE $\downarrow$</td><td style='text-align: center; word-wrap: break-word;'>AUC $\uparrow$</td><td style='text-align: center; word-wrap: break-word;'>EPE $\downarrow$</td><td style='text-align: center; word-wrap: break-word;'>AUC $\uparrow$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>CHP3D+RHD [^3]</td><td style='text-align: center; word-wrap: break-word;'>35.60</td><td style='text-align: center; word-wrap: break-word;'>67.0</td><td style='text-align: center; word-wrap: break-word;'>12.2</td><td style='text-align: center; word-wrap: break-word;'>94.80</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Weakly-sup [^7]</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>88.7</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>99.4</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Spurr [^41]</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>84.9</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>98.6</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Ours+RHD</td><td style='text-align: center; word-wrap: break-word;'>17.35</td><td style='text-align: center; word-wrap: break-word;'>88.93</td><td style='text-align: center; word-wrap: break-word;'>7.03</td><td style='text-align: center; word-wrap: break-word;'>99.68</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Ours+PBRHand</td><td style='text-align: center; word-wrap: break-word;'>17.12</td><td style='text-align: center; word-wrap: break-word;'>90.39</td><td style='text-align: center; word-wrap: break-word;'>6.39</td><td style='text-align: center; word-wrap: break-word;'>99.79</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Ours wo pretrain</td><td style='text-align: center; word-wrap: break-word;'>17.35</td><td style='text-align: center; word-wrap: break-word;'>88.93</td><td style='text-align: center; word-wrap: break-word;'>7.07</td><td style='text-align: center; word-wrap: break-word;'>99.62</td></tr></table>

我们采用了PBRHand数据集，随后在Stereo训练集上进行微调。Weakly-sup [^7]、Latent2.5D [^32]、Spurr [^41]、Mueller等人[^4]以及CHP3D [^3]均属于基于颜色的手部姿态估计领域的先进方法，它们与我们的方法采用了相同的实验设置（即相同的训练和测试数据集）。在Stereo数据集上，我们网络的曲线下面积（AUC）均高于对比方法Weakly-sup [^7]、Latent2.5D [^32]、CHP3D [^3]、Spurr [^41]和Mueller [^4]的结果。更多评估结果可参见补充文档。

随后，我们利用合成的RHD数据集进一步验证合成数据及我们模型的有效性。表八展示了对比结果。为在该数据集上进行对比，我们分别用RHD和我们的PBRHand数据集对我们的级联模型进行预训练。评估时我们使用了RHD和Stereo两个数据集的测试集。我们首先在RHD或我们自己的数据集上训练模型，随后针对Stereo数据集进行微调。在Stereo数据集上，基于我们的PBRHand数据集预训练的模型（误差为6.39毫米）性能优于基于RHD预训练的模型（误差为7.03毫米），这一结果表明我们的合成数据集对预训练的贡献更大。为了对比不同模型，我们使用RHD对CHP3D [^3]和我们的模型进行预训练，随后在Stereo数据集上微调并测试。结果显示，我们的模型（误差为7.03毫米）表现更佳。

## 表九

DEXTER+OBJECT数据集上的EPE与AUC（0-100毫米区间）。在我们的数据集上预训练的级联网络性能始终优于其他模型。其中，“ ours”指我们的级联网络。**表示绝对3D姿态对应的EPE与AUC数值，此处以Latent 2.5D [^32]为单位；AUC以百分点表示。

<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;'>EPE $\downarrow$</td><td style='text-align: center; word-wrap: break-word;'>AUC $\uparrow$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Mueller [^4]</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>56.0</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Latent 2.5D [^32]</td><td style='text-align: center; word-wrap: break-word;'>45.54 $^{*}$</td><td style='text-align: center; word-wrap: break-word;'>57.00 $^{*}$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Ours</td><td style='text-align: center; word-wrap: break-word;'>43.31</td><td style='text-align: center; word-wrap: break-word;'>57.20</td></tr></table>

<div style="text-align: center;">TABLE X</div>

<div style="text-align: center;">COMPARISON OF MEAN JOINT ERRORS (IN mm) ON HANDS-2019 ONLINE CHALLENGE [^31]. OUR CASCADED NETWORK PRETRAINED ON PBRHAND PERFORMS BETTER THAN OTHERS. OURS: OUR CASCADED NETWORK</div>

<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;'>EXTRAP. $\downarrow$</td><td style='text-align: center; word-wrap: break-word;'>INTERP. $\downarrow$</td><td style='text-align: center; word-wrap: break-word;'>OBJECT $\downarrow$</td><td style='text-align: center; word-wrap: break-word;'>SHAPE $\downarrow$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>User:yhasson [^42]</td><td style='text-align: center; word-wrap: break-word;'>38.42</td><td style='text-align: center; word-wrap: break-word;'>7.38</td><td style='text-align: center; word-wrap: break-word;'>31.82</td><td style='text-align: center; word-wrap: break-word;'>15.61</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>User:lin84[^43]</td><td style='text-align: center; word-wrap: break-word;'>31.51</td><td style='text-align: center; word-wrap: break-word;'>19.15</td><td style='text-align: center; word-wrap: break-word;'>30.59</td><td style='text-align: center; word-wrap: break-word;'>23.47</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Ours</td><td style='text-align: center; word-wrap: break-word;'>36.70</td><td style='text-align: center; word-wrap: break-word;'>14.23</td><td style='text-align: center; word-wrap: break-word;'>40.51</td><td style='text-align: center; word-wrap: break-word;'>32.88</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Ours+PBRHand (User:Fractality)</td><td style='text-align: center; word-wrap: break-word;'>28.81</td><td style='text-align: center; word-wrap: break-word;'>6.61</td><td style='text-align: center; word-wrap: break-word;'>22.88</td><td style='text-align: center; word-wrap: break-word;'>20.76</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Ours+RHD</td><td style='text-align: center; word-wrap: break-word;'>30.31</td><td style='text-align: center; word-wrap: break-word;'>11.24</td><td style='text-align: center; word-wrap: break-word;'>30.59</td><td style='text-align: center; word-wrap: break-word;'>24.63</td></tr></table>

它比[^3]低5.17毫米（后者为12.2毫米），且性能也优于Weakly-sup [^7]和Spurr [^41]。我们还在RHD测试集上评估了CHP3D + RHD、Ours + RHD以及Ours + PBRHand这三种方法的性能。如表八所示，采用Ours + RHD时的3D EPE值为17.35毫米，采用Ours + PBRHand时为17.12毫米，二者分别比CHP3D + RHD的35.6毫米低18.25毫米和18.48毫米。

我们还在Dexter+Object数据集上评估了我们的方法，并与最先进的Latent 2.5D [^32]以及Mueller [^4]进行了比较。表九展示了数值评估结果。可以看出，在RHD+Stereo数据集上训练出的我们的方法，其性能优于Mueller [^4]（我们的AUC值：0.572，Mueller的AUC值：0.560）。

由于Latent 2.5D尚未发布相关代码，我们采用了该模型在RHD+Stereo数据集上训练后的报告得分。我们也用RHD+Stereo数据集训练了自己的模型，结果显示，在Dexter+Object数据集上，我们的方法取得了与Latent 2.5D相当的性能（我们的EPE值：43.31，AUC值：0.572；Latent 2.5D的EPE值：45.54，AUC值：0.570）。

最后，我们也在Hands-2019在线挑战赛[^31]上评估了我们的方法，该挑战赛由于物体遮挡问题而极具难度。对于Hands-2019，我们将手部姿态结果在线提交，并采用[^31]中的评估协议来计算Hands-2019测试集四个子集的平均关节误差（这些子集取决于训练集中是否包含手部形状或物体），即EXTRAP、INTERP、OBJECT和SHAPE（详情参见[^31]）。EXTRAP、OBJECT和SHAPE这三个数据子集用于验证模型对手部形状和物体的泛化能力，其中EXTRAP是Hands-2019竞赛中的关键测试子集。表X展示了与我们最先进方法的对比情况[^42]、[^43]（分别由“User:yhasson”于2019年10月9日和“User:lin84”于2019年10月7日提交）。他们的方法是在大规模合成数据集上训练网络，这些数据集包含抓取物体的手部[^42]或带有邻近物体的手部[^43]。

---

<div style="text-align: center;">TABLE XI</div>

<div style="text-align: center;">COMPARISON OF 3D EPE (IN mm) AND AUC (BETWEEN 20mm TO 50mm) ON STEREO AND RHD DATASETS USING OUR SINGLE TASK AND CASCADED MULTI-TASK METHODS WITH OR WITHOUT PRETRAIN. AUC IS SHOWN IN PERCENTAGE POINTS</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td rowspan="2"></td><td colspan="2">Stereo hand dataset</td><td colspan="2">RHD dataset</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>EPE $\downarrow$</td><td style='text-align: center; word-wrap: break-word;'>AUC $\uparrow$</td><td style='text-align: center; word-wrap: break-word;'>EPE $\downarrow$</td><td style='text-align: center; word-wrap: break-word;'>AUC $\uparrow$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>single wo pretrain</td><td style='text-align: center; word-wrap: break-word;'>8.93</td><td style='text-align: center; word-wrap: break-word;'>98.70</td><td style='text-align: center; word-wrap: break-word;'>18.77</td><td style='text-align: center; word-wrap: break-word;'>86.81</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>single w pretrain</td><td style='text-align: center; word-wrap: break-word;'>7.13</td><td style='text-align: center; word-wrap: break-word;'>99.64</td><td style='text-align: center; word-wrap: break-word;'>18.21</td><td style='text-align: center; word-wrap: break-word;'>87.90</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>cascade wo pretrain</td><td style='text-align: center; word-wrap: break-word;'>7.07</td><td style='text-align: center; word-wrap: break-word;'>99.62</td><td style='text-align: center; word-wrap: break-word;'>17.35</td><td style='text-align: center; word-wrap: break-word;'>88.93</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>cascade w pretrain</td><td style='text-align: center; word-wrap: break-word;'>6.39</td><td style='text-align: center; word-wrap: break-word;'>99.79</td><td style='text-align: center; word-wrap: break-word;'>17.12</td><td style='text-align: center; word-wrap: break-word;'>90.39</td></tr></table>

<div style="text-align: center;">TABLE XII</div>

<div style="text-align: center;">COMPARISON OF MEAN 3D EPE (IN mm) AND AUC (BETWEEN 0mm TO 100mm) ON DEXTER+OBJECT DATASET [^10]. WE USE DIFFERENT TRAINING DATA COMBINATION AS WELL AS OUR SINGLE TASK AND CASCADED MULTITASK NETWORKS. FROM THE TABLE WE CAN OBSERVE THAT OUR CASCADED NETWORK TRAINED ON PBRHAND ONLY PERFORMS THE BEST (HIGHEST AUC AND LOWEST EPE). AUC IS SHOWN IN PERCENTAGE POINTS</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td rowspan="2"></td><td colspan="2">single</td><td colspan="2">cascade</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>EPE $\downarrow$</td><td style='text-align: center; word-wrap: break-word;'>AUC $\uparrow$</td><td style='text-align: center; word-wrap: break-word;'>EPE $\downarrow$</td><td style='text-align: center; word-wrap: break-word;'>AUC $\uparrow$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Stereo</td><td style='text-align: center; word-wrap: break-word;'>50.04</td><td style='text-align: center; word-wrap: break-word;'>51.40</td><td style='text-align: center; word-wrap: break-word;'>52.35</td><td style='text-align: center; word-wrap: break-word;'>48.50</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>RHD</td><td style='text-align: center; word-wrap: break-word;'>49.05</td><td style='text-align: center; word-wrap: break-word;'>51.20</td><td style='text-align: center; word-wrap: break-word;'>48.80</td><td style='text-align: center; word-wrap: break-word;'>51.40</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>RHD + Stereo</td><td style='text-align: center; word-wrap: break-word;'>51.78</td><td style='text-align: center; word-wrap: break-word;'>50.40</td><td style='text-align: center; word-wrap: break-word;'>43.31</td><td style='text-align: center; word-wrap: break-word;'>57.20</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>PBRhand</td><td style='text-align: center; word-wrap: break-word;'>43.30</td><td style='text-align: center; word-wrap: break-word;'>57.40</td><td style='text-align: center; word-wrap: break-word;'>40.70</td><td style='text-align: center; word-wrap: break-word;'>59.53</td></tr></table>

与[^42]、[^43]中使用的合成数据相比，我们的PBR-Hand数据集并不包含物体，因此它与Hands-2019数据集存在域差异。在PBRHand（“User:Fractality”）上预训练的我们的方法，在EXTRAP、INTERP和OBJECT数据子集上的表现仍优于[^42]。与[^43]相比，我们的方法在所有四个测试数据子集上的表现都更优。我们还发现，与在RHD数据集上预训练相比，我们的级联网络在PBRHand上预训练时表现更好。这些结果表明了我们模型对手部形状和物体的泛化能力。

### B. 消融研究

为了更深入地理解该任务以及网络特性，我们利用多任务网络和单任务网络，开展了若干组有无预训练的比较实验。

1) 预训练是否有帮助？：从表十一中可以看出，在PBRHand数据集上进行预训练后，级联网络（经过微调）在Stereo和RHD数据集上的手部关节平均误差分别降低了0.68毫米和0.23毫米。从表十二中可以发现，对于采用相同网络但训练数据不同的情形，在PBRHand数据集上训练的网络在Dexter+Object数据集上的表现始终更优。由此可见，在PBRHand数据集上进行预训练，是提升单任务或多任务网络的基于颜色的手部姿态估计性能的有效途径。

2) 多任务是否有帮助？：为了评估用于手部姿态估计的多任务网络，我们将基线单任务网络与级联任务网络进行对比，二者采用相同的网络架构。二者的区别在于

![Image](images/192551951813c399027b5090cdbbe73b4fdc3ffa4bd1dcad480c93e682c53637.jpg)

<div style="text-align: center;">(a) Input image</div>

<div style="text-align: center;">(b) Ground truth pose</div>

<div style="text-align: center;">Fig. 16. Examples of results with our method on stereo dataset. (a) input image. (b) the ground truth pose. (c) hand pose with our cascaded network. (d) hand pose with single joint network w/o depth cascade.</div>

单任务网络不会采用辅助深度恢复任务，也不会使用深度损失。图16和表XI展示了有无多任务监督时3D手部关节的精度。我们可以观察到，采用级联网络的结果始终优于单任务网络的结果。在Stereo和RHD数据集上，与经过预训练的单任务网络相比，采用级联网络时手部姿态的平均误差分别降低了约2.72毫米和1.09毫米；而未经过预训练的级联网络与单任务网络相比，平均误差分别降低了约1.86毫米和1.42毫米。对于Dexter+Object数据集（见表XII），通过比较在相同数据集上训练的网络，我们可以发现我们的级联多任务网络表现更优。首先，它总体上优于单关节任务网络（仅在Stereo数据集上训练的情况除外，这可能是由于该数据集的规模较小且多样性不足所致）。一种可能的解释是，多任务级联训练能够提供更多线索（如深度特征），从而改善早期层的特征提取能力（即我们网络中的彩色图像特征）。结果表明，无论是否进行预训练，我们的级联多任务网络对训练都有帮助。

3) 特征级联与输入/输出级联：所提出的级联网络使用的是图像特征和深度特征，而非输入图像和输出深度。我们评估了不同级联输入对手部姿态估计性能的影响。我们比较了以下设置：$RGB + D$、$RGB_{feature} + D$、$RGB + D_{feature}$、D、$D_{feature}$以及所提出的$RGB_{feature} + D_{feature}$。RGB和$RGB_{feature}$分别表示输入的彩色图像以及通过我们网络前三个卷积层提取的特征。D和$D_{feature}$

---

![Image](images/d20e864df5de59b61d1066a1b95183fb5e0b1e2644c6c35fd02262b7f6033179.jpg)

<div style="text-align: center;">Fig. 17. Qualitative results on stereo and RHD datasets. From left to right: input color image and the predicted joint; ground truth depth; predicted depth image; difference between ground truth and the prediction.</div>

这些是借助深度恢复网络得到的恢复后的深度图，以及图14中通过第一个U-Net提取的深度感知特征。表XIII表明，特征级联能为联合预测产生最佳结果。

更多消融研究内容可参见补充文档。

### C. 运行时间与定性实验

我们的网络包含约2670万个参数，在搭载NVIDIA Titan X GPU的计算机上测试时，帧率可达180帧/秒，具备在嵌入式系统中实时运行的潜力。

图17展示了我们在Stereo和RHD数据集上的实验结果，该模型先在PBRHand数据集上预训练，随后在Stereo和RHD训练数据集上微调。更多定性结果……

## 表十三

级联评估。我们尝试了用于联合估计的不同数据组合。$RGB_{feature} + D_{feature}$能产生最佳结果，因此被选为网络结构。仅将D传入联合网络可提升深度预测效果，但无法得到最佳的联合预测结果。AUC数值以百分点表示。

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td style='text-align: center; word-wrap: break-word;'></td><td colspan="2">Depth</td><td colspan="2">Joint</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Cascade type</td><td style='text-align: center; word-wrap: break-word;'>RMSE $\downarrow$</td><td style='text-align: center; word-wrap: break-word;'>MAE $\downarrow$</td><td style='text-align: center; word-wrap: break-word;'>EPE $\downarrow$</td><td style='text-align: center; word-wrap: break-word;'>AUC $\uparrow$</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>RGB + D</td><td style='text-align: center; word-wrap: break-word;'>9.08</td><td style='text-align: center; word-wrap: break-word;'>7.59</td><td style='text-align: center; word-wrap: break-word;'>8.10</td><td style='text-align: center; word-wrap: break-word;'>99.17</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>RGB $_{feature}$ + D</td><td style='text-align: center; word-wrap: break-word;'>9.52</td><td style='text-align: center; word-wrap: break-word;'>7.41</td><td style='text-align: center; word-wrap: break-word;'>8.13</td><td style='text-align: center; word-wrap: break-word;'>99.32</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>RGB + D $_{feature}$</td><td style='text-align: center; word-wrap: break-word;'>15.46</td><td style='text-align: center; word-wrap: break-word;'>12.82</td><td style='text-align: center; word-wrap: break-word;'>8.55</td><td style='text-align: center; word-wrap: break-word;'>98.96</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>D</td><td style='text-align: center; word-wrap: break-word;'>8.42</td><td style='text-align: center; word-wrap: break-word;'>6.63</td><td style='text-align: center; word-wrap: break-word;'>7.78</td><td style='text-align: center; word-wrap: break-word;'>99.47</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>D $_{feature}$</td><td style='text-align: center; word-wrap: break-word;'>8.93</td><td style='text-align: center; word-wrap: break-word;'>6.94</td><td style='text-align: center; word-wrap: break-word;'>7.13</td><td style='text-align: center; word-wrap: break-word;'>99.59</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>RGB $_{feature}$ + D $_{feature}$</td><td style='text-align: center; word-wrap: break-word;'>8.68</td><td style='text-align: center; word-wrap: break-word;'>6.63</td><td style='text-align: center; word-wrap: break-word;'>7.07</td><td style='text-align: center; word-wrap: break-word;'>99.68</td></tr></table>

使用采集的真实数据所得的结果可参见补充文档。

---

![Image](images/b505bb37a1c3e8296526101f0c10eae78084b5bf4b240c883cf3eac219789302.jpg)

![Image](images/09747b8e0eb4124893831d6636171cd4acf535daefb833b4a88ca0a60135e610.jpg)

<div style="text-align: center;">Fig. 18. Full details of our multi-task cascaded network. Kernel size of the convolutional layers and deconvolutional layers is 3. Alpha value of the Leaky RELU [^44] activation function is 0.2. To avoid zero patterns caused by up-sampling, each deconvolutional layer is followed by two convolutional layers.</div>

### 七、结论

在本文中，我们构建了一个大规模的手部姿态数据集，其中包含照片级真实感渲染的彩色图像以及各种真值数据。基于该数据集，我们首先在三个与手部姿态相关的任务上进行验证，发现基于我们的照片级真实感渲染数据集进行预训练能够提升最先进模型的性能。借助该数据集，我们进一步设计了一种级联多任务网络，利用中间深度监督信息从彩色图像中恢复三维手部姿态。我们发现，该数据集通过提供多种真值数据来促进模型预训练，而我们的级联网络能够提升性能，从而改善手部姿态估计结果。

## 附录

## 我们的网络架构详情

图18展示了我们网络架构的详细信息。

## 参考文献

[^1]: A. Erol, G. Bebis, M. Nicolescu, R. D. Boyle, and X. Twombly, "Vision-based hand pose estimation: A review," Comput. Vis. Image Understand., vol. 108, nos. 1–2, pp. 52–73, Oct. 2007.

[^2]: S. Yuan, Q. Ye, B. Stenger, S. Jain, and T.-K. Kim, "BigHand2.2M benchmark: Hand pose dataset and state of the art analysis," in Proc. IEEE Conf. Comput. Vis. Pattern Recognit. (CVPR), Jul. 2017, pp. 2605–2613.

[^3]: C. Zimmermann and T. Brox, “Learning to estimate 3D hand pose from single RGB images,” in Proc. IEEE Int. Conf. Comput. Vis. (ICCV), Oct. 2017, pp. 4913–4921.

[^4]: F. Mueller, D. Mehta, O. Sotnychenko, S. Sridhar, D. Casas, and C. Theobalt, "Real-time hand tracking under occlusion from an egocentric RGB-D sensor," in Proc. IEEE Int. Conf. Comput. Vis. (ICCV), Oct. 2017, pp. 1154–1163.

[^5]: Y. Zhang et al., “Physically-based rendering for indoor scene understanding using convolutional neural networks,” in Proc. IEEE Conf. Comput. Vis. Pattern Recognit. (CVPR), Jul. 2017, pp. 5287–5295.

[^6]: J. Shi, Y. Dong, H. Su, and S. X. Yu, “Learning non-Lambertian object intrinsics across ShapeNet categories,” in Proc. IEEE Conf. Comput. Vis. Pattern Recognit. (CVPR), Jul. 2017, pp. 1685–1694.

[^7]: Y. Cai, L. Ge, J. Cai, and J. Yuan, "Weakly-supervised 3D hand pose estimation from monocular RGB images," in Proc. Eur. Conf. Comput. Vis., 2018, pp. 666–682.

[^8]: J. Zhang, J. Jiao, M. Chen, L. Qu, X. Xu, and Q. Yang, "3D hand pose tracking and estimation using stereo matching," 2016, arXiv:1610.07214. [Online]. Available: <http://arxiv.org/abs/1610.07214>

[^9]: C. Zimmermann, D. Ceylan, J. Yang, B. Russell, M. J. Argus, and T. Brox, "FreiHAND: A dataset for markerless capture of hand pose and shape from single RGB images," in Proc. IEEE/CVF Int. Conf. Comput. Vis. (ICCV), Oct. 2019, pp. 813–822.

[^10]: S. Sridhar, F. Mueller, M. Zollhöfer, D. Casas, A. Oulasvirta, and C. Theobalt, “Real-time joint tracking of a hand manipulating an object from RGB-D input,” in Proc. Eur. Conf. Comput. Vis., 2016, pp. 294–310.

[^11]: T. Sharp et al., “Accurate, robust, and flexible real-time hand tracking,” in Proc. 33rd Annu. ACM Conf. Hum. Factors Comput. Syst., Apr. 2015, pp. 3633–3642.

[^12]: A. Wetzler, R. Slossberg, and R. Kimmel, “Rule of thumb: Deep derotation for improved fingertip detection,” 2015, arXiv:1507.05726. [Online]. Available: <http://arxiv.org/abs/1507.05726>

[^13]: F. Gomez-Donoso, S. Orts-Escolano, and M. Cazorla, “Large-scale multiview 3D hand pose dataset,” 2017, arXiv:1707.03742. [Online]. Available: <http://arxiv.org/abs/1707.03742>

14] Blender. (2018). Blender. [在线]. 可访问：<http://www.blender.org>

## [^15]: W. Jakob. Mitsuba Renderer. Accessed: 2018. [Online]. Available: <http://www.mitsuba-renderer.org>

---

[^16]: J. Tompson, M. Stein, Y. Lecun, and K. Perlin, “Real-time continuous pose recovery of human hands using convolutional networks,” ACM Trans. Graph., vol. 33, no. 5, pp. 1–10, Sep. 2014.

[^17]: D. Tang, H. J. Chang, A. Tejani, and T.-K. Kim, "Latent regression forest: Structured estimation of 3D articulated hand posture," in Proc. IEEE Conf. Comput. Vis. Pattern Recognit., Jun. 2014, pp. 3786–3793.

[^18]: M. Oberweger, G. Riegler, P. Wohlhart, and V. Lepetit, “Efficiently creating 3D training data for fine-hand pose estimation,” in Proc. IEEE Conf. Comput. Vis. Pattern Recognit. (CVPR), Jun. 2016, pp. 4957–4965.

[^19]: X. Sun, Y. Wei, S. Liang, X. Tang, and J. Sun, "Cascaded hand pose regression," in Proc. IEEE Conf. Comput. Vis. Pattern Recognit. (CVPR), Jun. 2015, pp. 824–832.

[^20]: J. Zhang, J. Jiao, M. Chen, L. Qu, X. Xu, and Q. Yang, "A hand pose tracking benchmark from stereo matching," in Proc. IEEE Int. Conf. Image Process. (ICIP), Sep. 2017, pp. 982–986.

[^21]: T. Simon, H. Joo, I. Matthews, and Y. Sheikh, “Hand keypoint detection in single images using multiview bootstrapping,” in Proc. IEEE Conf. Comput. Vis. Pattern Recognit. (CVPR), vol. 2, Jul. 2017, pp. 1145–1153.

[^22]: N. Mayer et al., “A large dataset to train convolutional networks for disparity, optical flow, and scene flow estimation,” in Proc. IEEE Conf. Comput. Vis. Pattern Recognit. (CVPR), Jun. 2016, pp. 4040–4048.

[^23]: N. Mayer et al., “What makes good synthetic training data for learning disparity and optical flow estimation?” Int. J. Comput. Vis., vol. 126, no. 9, pp. 942–960, Sep. 2018.

[^24]: H. Su, C. R. Qi, Y. Li, and L. J. Guibas, “Render for CNN: Viewpoint estimation in images using CNNs trained with rendered 3D model views,” in Proc. IEEE Int. Conf. Comput. Vis. (ICCV), Dec. 2015, pp. 2686–2694.

[^25]: G. Rogez and C. Schmid, “MoCap-guided data augmentation for 3D pose estimation in the wild,” in Proc. Adv. Neural Inf. Process. Syst., 2016, pp. 3108–3116.

[^26]: F. Mueller et al., “GANerated hands for real-time 3D hand tracking from monocular RGB,” 2017, arXiv:1712.01057. [Online]. Available: <http://arxiv.org/abs/1712.01057>

[^27]: Artec. Artec Eva. Accessed: 2018. [Online]. Available: <https://www.artec3d.com>

[^28]: B. Amberg, S. Romdhani, and T. Vetter, “Optimal step nonrigid ICP algorithms for surface registration,” in Proc. IEEE Conf. Comput. Vis. Pattern Recognit., Jun. 2007, pp. 1–8.

[^29]: Wikipedia. UV Mapping. Accessed: 2018. [Online]. Available: <https://en.wikipedia.org/wiki/UV_mapping>

[^30]: I. Baran and J. Popović, “Automatic rigging and animation of 3D characters,” ACM Trans. Graph., vol. 26, no. 3, p. 72, Jul. 2007.

[^31]: Task 3 of Hands19 Challenge: RGB-Based 3D Hand Pose Estimation While Interacting With Objects. Accessed: 2019. [Online]. Available: <https://competitions.codalab.org/competitions/21116>

[^32]: U. Iqbal, P. Molchanov, T. Breuel, J. Gall, and J. Kautz, “Hand pose estimation via latent 2.5 D heatmap regression,” in Proc. Eur. Conf. Comput. Vis., 2018, pp. 118–134.

[^33]: S.-E. Wei, V. Ramakrishna, T. Kanade, and Y. Sheikh, “Convolutional pose machines,” in Proc. IEEE Conf. Comput. Vis. Pattern Recognit. (CVPR), Jun. 2016, pp. 4724–4732.

[^34]: G. Varol et al., “Learning from synthetic humans,” in Proc. IEEE Conf. Comput. Vis. Pattern Recognit. (CVPR), Jul. 2017, pp. 109–117.

[^35]: J. Romero, D. Tzionas, and M. J. Black, “Embodied hands: Modeling and capturing hands and bodies together,” ACM Trans. Graph., vol. 36, no. 6, pp. 1–17, Nov. 2017.

[^37]: O. Ronneberger, P. Fischer, and T. Brox, "U-net: Convolutional networks for biomedical image segmentation," in Proc. Int. Conf. Med. Image Comput. Comput.-Assist. Intervent., 2015, pp. 234–241.

[^36]: C. Wan, T. Probst, L. Van Gool, and A. Yao, “Dense 3D regression for hand pose estimation,” 2017, arXiv:1711.08996. [Online]. Available: <http://arxiv.org/abs/1711.08996>

[^38]: P. Isola, J.-Y. Zhu, T. Zhou, and A. A. Efros, “Image-to-image translation with conditional adversarial networks,” in Proc. IEEE Conf. Comput. Vis. Pattern Recognit. (CVPR), Jul. 2017, pp. 1125–1134.

[^39]: M. Oberweger and V. Lepetit, "DeepPrior++: Improving fast and accurate 3D hand pose estimation," in Proc. IEEE Int. Conf. Comput. Vis. Workshops (ICCVW), Oct. 2017, pp. 585–594.

[^40]: M. Abadi et al., “TensorFlow: Large-scale machine learning on heterogeneous distributed systems,” 2016, arXiv:1603.04467. [Online]. Available: <http://arxiv.org/abs/1603.04467>

[^41]: A. Spurr, J. Song, S. Park, and O. Hilliges, “Cross-modal deep variational hand pose estimation,” in Proc. IEEE/CVF Conf. Comput. Vis. Pattern Recognit., Jun. 2018, pp. 89–98.

[^42]: Y. Hasson et al., “Learning joint reconstruction of hands and manipulated objects,” in Proc. IEEE/CVF Conf. Comput. Vis. Pattern Recognit. (CVPR), Jun. 2019, pp. 11807–11816.

[^43]: L. Yang, S. Li, D. Lee, and A. Yao, “Aligning latent spaces for 3D hand pose estimation,” in Proc. IEEE/CVF Int. Conf. Comput. Vis. (ICCV), Oct. 2019, pp. 2335–2343.

[^44]: A. L. Maas, A. Y. Hannun, and A. Y. Ng, “Rectifier nonlinearities improve neural network acoustic models,” in Proc. ICML, 2013.

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

邓晓明于2001年和2004年分别获得武汉大学学士和硕士学位，并于2008年在中国科学院自动化研究所获得博士学位。在中科院计算技术研究所完成两年博士后研究后，他于2010年加入中科院软件研究所，现任副教授。2012年至2013年，他曾作为研究员在新加坡国立大学工作。他的主要研究方向为计算机视觉。

尤其是与三维重建、人体运动跟踪与合成以及深度学习相关的领域。

张印达于清华大学自动化系获得学士学位，在新加坡国立大学电气与计算机工程系获得硕士学位，导师分别为Tan教授和严水成教授；之后在普林斯顿大学获得博士学位，导师为Thomas Funkhouser教授。他目前是谷歌的研究科学家，主要研究方向包括三维上下文模型、三维深度学习以及场景理解。

![Image](images/af8aac729f979f12c169852801bda0140311b79bba9552c4059cdfd1fc50e6e7.jpg)

![Image](images/b1bc1d5bb32217293b7841c0fc57300d71b4dc5fe2b232cc5ccc155332588872.jpg)

史健于2017年在中国科学院大学获得博士学位。他目前是中国科学院自动化所的助理教授，主要研究计算机视觉与图形学问题，包括材质分离图像和光照估计。

![Image](images/358ee401dce21c066399e18e12f7e6508d29001ad10eb7ed566817700d48d9f7.jpg)

朱玉颖于2016年在中国科学技术大学获得学士学位。她目前在中国科学院软件所攻读硕士学位，主要研究方向为计算机视觉与人机交互。

![Image](images/376505e5c2dd43c82b470ae2fdaddf58a0b2808341af94b9eb03116affec4368.jpg)

程大川在中国科学院软件所获得硕士学位。他目前就职于字节跳动，主要研究方向为计算机视觉与场景光照估计。

---

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

<div style="text-align: center;">Dexin Zuo received the bachelor's degree from Nankai University in 2017. He is currently pursuing the master's degree with the Institute of Software, Chinese Academy of Sciences. His main research interest is computer vision and human-computer interaction.</div>

![Image](images/11db5ef03c79484c07c1717b4f84b5f93bc591c5f57e25648ed5c954d9474b7f.jpg)

![Image](images/31d9a464b05e883e3d6932a2d4c1d22a92e5619b12c5c380848df9b752c21528.jpg)

<div style="text-align: center;">Liang Chang received the bachelor's and master's degrees from Wuhan University, in 2003 and 2005, respectively, and the Ph.D. degree from the Institute of Automation, Chinese Academy of Sciences, in 2008. She is currently an Associate Professor with the School of Artificial Intelligence, Beijing Normal University. Her research interests are computer vision and machine learning.</div>

<div style="text-align: center;">Zhaopeng Cui received the Ph.D. degree from Simon Fraser University in 2017. He was a Senior Researcher at ETH Zurich. He is currently a Research Professor with the College of Computer Science, Zhejiang University. His research interests include 3D mapping and localization, 3D scene understanding, and image and video editing.</div>

![Image](images/235f510d6aa6c9c32bdaa118edc98ae794fcf9627c1e1c65d00ff8fca6db6148.jpg)

谭平（IEEE高级会员）分别于2000年和2003年在中国上海交通大学获得学士和硕士学位，并于2007年于香港科技大学获得博士学位。他曾担任新加坡国立大学的副教授。他目前是加拿大西蒙弗雷泽大学计算机科学学院的副教授。他的研究兴趣包括计算机视觉、计算机图形学和机器人技术。他曾担任CVPR的区域主席。

王宏安在中国科学院软件研究所获得计算机科学博士学位。他目前是中国科学院软件研究所教授，同时也是人机交互北京市重点实验室主任。他的研究兴趣是实时推理与智能用户交互。

![Image](images/0060618a556b9a30aae37e970a99a70eff04bfcab88097a3349a9949cd67a1df.jpg)

SIGGRAPH、SIGGRAPH Asia和IROS。他曾担任IEEE模式分析与机器智能汇刊（PAMI）、国际计算机视觉杂志（IJCV）、计算机图形学论坛（CGF）以及机器视觉与应用（MVA）的编委会成员。
