
# CrossInfoNet：基于多任务信息共享的手部姿态估计

杜阔 $^{1}$ 林向波 $^{2*}$ 孙毅 $^{2}$ 马晓红 $^{2}$

大连理工大学，中国

 $^{1}$<mailto:dummy2728@mail.dlut.edu.cn>, $^{2}${linxbo,lslwf,maxh}@dlut.edu.cn

## 摘要

本文聚焦于利用卷积神经网络（CNN）从单张深度图中进行基于视觉的手部姿态估计问题。我们的主要贡献在于设计了一种名为CrossInfoNet的新型姿态回归网络架构。所提出的CrossInfoNet将手部姿态估计任务拆解为手掌姿态估计子任务和手指姿态估计子任务，并采用双分支交叉连接结构来共享子任务间的有益互补信息。我们的研究灵感来源于多任务信息共享机制，该机制在以往基于深度数据的手部姿态估计研究中鲜有探讨。此外，我们提出了一种热图引导的特征提取结构以获取更优质的特征图，并对整个网络进行端到端的训练。我们通过大量的对比实验以及与四种公开手部姿态数据集上的最先进方法对比，验证了所提CrossInfoNet的有效性。相关代码可在$^{1}$获取。

### 1. 引言

基于视觉的3D手部姿态估计研究是计算机视觉、虚拟现实和机器人领域的研究热点。该领域已有数十年的研究历史，近年来取得了显著进展 [^3] [^6] [^19]。然而，由于关节灵活性高、局部自相似性以及严重遮挡等挑战，该问题仍未得到彻底解决。针对基于视觉的手部姿态估计，研究者们开展了诸多工作。输入数据从单一的RGB图像 [^2] [^7]、立体RGB图像 [^24] [^27]，发展到深度图，并取得了诸多成果 [^26] [^30] [^39]。近期，人们对RGB图像的兴趣似乎再度兴起 [^24] [^48] [^18] [^25]。已发表的手部姿态估计方法可分为两大类：基于生成模型的方法 [^29] [^35]，以及基于判别学习的方法 [^11] [^32] [^36] [^38]。得益于数据量和计算能力的提升，深度CNN展现出了强大的能力，目前已成为主流方法。

2017年，基于深度图的手部姿态估计“百万手部图像挑战赛”（HIM2017） [^44] 吸引了众多研究团队的关注。竞赛总结论文中讨论的问题 [^43] 也正是我们所关注的。

首先，将深度图视为2D图像并直接回归3D关节坐标是一种常用的手部姿态估计流程。尽管将2.5D深度图转换为3D体素形式能保留更多信息 [^12] [^17]，但这种方式存在参数负载大且仍存在信息缺失的问题。在我们的研究中，我们倾向于认同[^39]的观点，即利用2D CNN的优势，尝试从2D输入中挖掘更多信息。

其次，设计有效的网络受到了最多关注。在机器学习中，通过共享信息，多任务学习比单任务学习能保留更多内在信息。同时学习多个任务有助于提升模型的泛化能力[^28]。不过，基于CNN的手部姿态估计领域对多任务学习的重视程度仍显不足。正如[^39]所述，他们首次尝试在多任务框架下融合整体回归与热图检测这两种手部姿态估计结果。受此启发，我们为多任务框架下的手部姿态估计设计了全新的CNN结构。分层模型是手部姿态估计网络的一种，在竞赛中表现优异；它通常将姿态估计问题拆解为子任务，分别处理不同手指或不同类型的关节[^4] [^16] [^47]。直观而言，手掌关节之间的联系要比更灵活的手指关节更为紧密。全局手部姿态主要由手掌关节的状态决定，而局部手部姿态则体现在手指关节的动作上。基于这些认知，我们为多任务框架设计了新的分层模型。所提出的架构包含两条分支，分别对应手掌关节回归子任务和手指关节回归子任务。通过两条分支之间的交叉连接，

---

可使一条分支中的噪声转化为另一条分支中的补充增强信息。这有助于各分支像多任务信息共享机制那样专注于各自的子任务。

第三，输出表示可分为概率密度图（热图）或每个关节的3D坐标。由于2D深度图与3D关节坐标之间的映射关系高度非线性，这会阻碍学习过程，导致网络无法准确估计关节坐标。相比之下，采用热图作为输出表示能提供比单个关节位置更多的关节相关信息，从而帮助网络获取更好的特征图。[^43]中的分析指出，基于热图的方法优于直接坐标回归方法。不过，在基于热图的方法中，最终的关节坐标通常需要通过对热图执行最大值运算来推断。最大值运算不可微分，必须作为后处理步骤而非端到端训练的一部分来处理。综合两种表示方式的优势，我们提出了一种热图引导的特征提取网络结构。实际上，我们的思路巧妙地运用了多任务参数共享机制。

综上所述，针对基于深度CNN的单深度图手部姿态估计，我们的工作具有以下贡献：

• 我们提出了一种多任务框架下的新型手部姿态回归网络。该网络利用了多任务学习中的信息共享机制，采用分层模型将最终任务拆解为手掌关节回归子任务和手指关节回归子任务。通过分支交叉连接生成的“注意力掩码”可引导一条分支专注于手掌关节回归，另一条分支专注于手指关节回归。由于“注意力掩码”增强了子任务特征，因此能有效提升估计精度。

• 本文提出了一种基于热图引导的特征提取结构。该结构能够将更有效的特征从热图检测任务迁移到联合回归任务中，同时不丧失端到端训练的优势。

我们实现了多个基线模型来探究多任务设置中的信息共享机制，这将为该类问题提供有价值的见解。我们还在常用数据集上开展了大量实验，并将性能与最先进的方法进行对比。

### 2. 相关工作

综述。

基于视觉的手部姿态估计领域成果丰硕。由于我们的研究聚焦于基于单张深度图的深度卷积神经网络手部姿态估计，因此讨论范围将限定在与本研究密切相关的工作上。更多详细内容请参阅 [^8] [^33] [^43]。

姿态参数化：手部姿态估计的目标是确定关节坐标。直接回归这些坐标是模型输出姿态表示时的自然选择 [^4] [^10] [^12] [^22] [^23] [^46]。然而，由于每个关节仅需从输入中回归一个三维坐标，输入与输出的三维坐标之间的高度非线性映射会阻碍学习过程。为解决这一问题，Tompson等人 [^38] 首次采用每个手部关节的二维热图作为姿态参数，再通过后处理将其转换为三维坐标。他们发现，这种中间热图表示不仅降低了所需的学习容量，还提升了泛化性能。Ge等人 [^11] 通过利用多视角卷积神经网络来估计每个视角的二维热图，对该方法进行了扩展。Moon等人 [^17] 采用三维热图作为手部姿态参数。Wan等人 [^39] 将姿态参数分解为二维热图、三维热图和单位三维方向矢量场。随后，通过带有变体均值漂移后处理的投票机制，将这些不同输出转换为三维关节坐标。与他们的方案不同，我们的工作是在热图约束下进行三维坐标回归。这种策略有助于模型学习更好的特征图，无需后处理即可获得精确的关节坐标。

模型设计：近年来，根据人手运动学或形态学来设计网络取得了颇具竞争力的成果[^44]。结构化方法会将手部运动的物理约束嵌入到模型中或损失函数里[^16] [^31] [^46]。分层模型会根据手部结构将姿态估计问题划分为多个子任务。Chen等人[^40]在其多区域提取步骤中应用了针对每个手指和关节类型（跨手指）的约束，每个区域包含一组关节。随后将提取出的特征区域进行分层整合，再利用迭代级联方法来回归手部姿态。Madadi等人[^16]设计了一种分层结构的CNN，用五个分支来建模每个手指，另设一个分支来建模手掌方向。所有分支的最后一层会被拼接成一层以预测所有关节。Zhou等人[^47]根据日常操作中的不同手指功能设计了一个三分支网络：一个分支与拇指相关，一个分支用于建模食指，最后一个分支代表其余三个手指。这些分层模型各有其独特特点。在此我们探索一种新型的双分支模型，其中一个分支用于手掌关节回归，另一个分支用于手指关节回归。常识告诉我们，手指关节比手掌关节更灵活。如果我们用两组不同的参数分别来表示相对稳定的手掌姿态和灵活的手指姿态，回归任务将会更容易实现。

---

![Image](images/caa8bf504936e5fbe469a8349b145537d2eefe79a9676486c9b594be42bc9208.jpg)

<div style="text-align: center;">Figure 1. Overall network architecture with multi-task information sharing setup. We use the heat maps to highlight the regions with salient features in the first two modules. In the output part, the red dot represents the estimated joint positions.</div>

此外，我们在两个分支之间设计了交叉连接，这有助于每个分支专注于自身的任务。

多任务信息共享：通过相关任务之间的信息共享，多任务学习能让模型在各项任务上具备更好的泛化能力[^28]。深度神经网络中的多任务学习已在诸多应用中取得成功，比如人体姿态估计领域。Xia等人[^41]提出同时解决人体分割和姿态估计这两项任务。他们训练了两个全卷积神经网络（FCN），其中估计出的姿态为物体级的形状先验，用以约束局部区域；而局部区域的分割结果则限制了姿态位置的变化。最终通过全连接条件随机场（FCRF）将这两项任务融合。Nie等人[^20]提出了互学习机制，以使模型适配人体分割和姿态估计任务。该机制通过整合来自另一任务的信息来有效利用相互间的益处，从而生成更强大的表征。尽管多任务学习已在诸多应用中得到有效运用，但在基于CNN的手部姿态估计领域却尚未受到足够重视。据我们所知，[^39]是首个明确宣称在多任务框架下开展手部姿态估计的研究。在他们的研究中，将手部姿态参数分解为2D热图、3D热图和单位3D方向矢量场。这三种表征被视为三项任务，通过多任务网络级联来进行估计。最终利用基于均值偏移算法的后处理来融合这些估计结果。我们的工作同样建立在多任务学习框架之上，但与[^39]的研究存在显著差异。我们将手部关节分为两组：一组为手掌关节，另一组为手指关节。关节回归任务被拆解为手掌关节回归子任务和手指关节回归子任务。通过两个子任务回归分支之间的交叉连接来实现信息共享。

### 3. 方法

手是一种具有多个关节的复杂物体，其自由度很高，因此很难精确估计手的姿态。为了应对从输入的深度数据到输出的手部关节坐标之间的高度非线性映射关系，可以将手部姿态估计问题拆分成多个子任务，每个子任务负责估计某一部分或某一组关节。这正是设计分层模型来完成该任务的原因。在此，我们提出了一种名为CrossInfoNet、采用信息共享架构的新型分层模型，如图1所示。第一部分是初始特征提取模块，在该模块中，我们将热图作为约束条件来学习更优质的特征图，从而得到所有初始关节特征。第二部分是特征细化模块，该模块将任务拆分为两个子任务：一个子任务负责估计掌部关节，另一个子任务负责估计手指关节。该模块中的信息共享策略能够引导网络从对应任务中获取有用的线索，从而有效提升手部姿态估计的性能。最后一部分是关节坐标回归模块。

我们在后续章节中详细介绍相关内容。第3.1节描述了基于热图引导的初始特征提取模块；第3.2节介绍了没有信息共享机制、包含两个独立子任务的基准网络；第3.3节详细说明了如何通过两个子任务之间的交叉信息共享来提供互补信息；第3.4节介绍了损失函数，第3.5节给出了具体的实现细节。

---

![Image](images/b77b8431b86869b7087ba5e4cefb97bba8d07b6d2f107c760051e50ab7aeb559.jpg)

<div style="text-align: center;">Figure 2. The initial feature extraction module. This network takes 2D depth map as input with the size of  $96 \times 96$ and outputs the feature maps T with the size of  $12 \times 12$. We use 2D heat maps with the size of  $24 \times 24$ as supervision to guide the feature extractions.</div>

#### 3.1. 基于热图引导的特征提取

当使用浅层CNN进行特征提取时，得到的结果往往不尽如人意。针对这一问题，我们设计了一种全新的两阶段特征提取网络，分别命名为初始特征提取模块和特征精炼模块。在初始特征提取模块中，我们选用了包含四个残差模块的ResNet-50 [^15]骨干网络，因其效率极高，如图2所示。为了获取更多信息，我们采用特征金字塔结构来融合不同的特征层。我们将用于回归初始关节位置的特征图记为T。与以往基于热图的检测方法不同，此处热图仅作为约束条件来指导特征提取，不会传递到后续模块。得到的具有256个通道的特征图T将被输入到特征精炼模块中。残差块的核大小为$3 \times 3$，最大池化层的核大小则为$2 \times 2$，步长为2。我们使用具有$3 \times 3$个滤波器的卷积层来获取所有关节的热图输出。

#### 3.2. 基准特征细化架构

现有的一些手部姿态估计方法会设计树状分支，每个分支负责一个独立的子任务，或者在后处理阶段利用一个任务的输出提取手部特征来辅助另一个任务。这些方法既无法提取出强大的特征，也无法增强模型性能。为了充分利用所提取的信息，我们提出了一种基于多任务信息共享的新型特征细化模块。在介绍我们的新型多任务特征细化模块之前，我们先给出基准多任务架构，如图3所示。

在所有关节中，手掌关节的活动空间比手指关节更小，因此这两部分的回归复杂度也有所不同。如果我们用两组不同的参数集来表示手掌姿态和手指姿态，手部的姿态就能更容易地被回归出来。因此，我们将手掌关节回归与手指关节回归分为两个独立的分支。特征图

![Image](images/e47de0ed8fa1c953a0518e14adb63486731c5e34a4059948d13ced3dfc7aede8.jpg)

<div style="text-align: center;">Figure 3. The baseline feature refinement module connected with the joint coordinate regression module. The kernel size of residual block is set to  $3 \times 3$ and the dimension of full-connected layer is set to 2048.</div>

![Image](images/35299534050b76b196a92fbed52db4c00a3975a96a8562304e40f613f59789ea.jpg)

<div style="text-align: center;">Figure 4. The palm joints subset (blue boxes) and the finger joints subset (red boxes) on different datasets.</div>

来自初始特征提取模块的T被输入到残差块中，以便在不同分支中提取手掌或手指更本质的局部特征。随后，将手掌分支中全连接层的输出$f_{p}$与手指分支中的输出$f_{f}$拼接起来，以此估算所有关节坐标。我们将这种架构称为基线网络。由于ICVL、NYU和MSRA数据集的标签协议不同，关节子集也存在差异，如图4所示。HAND 2017基于帧的挑战数据集的划分方式与MSRA数据集一致。

#### 3.3. 新特征精炼架构

基线网络仅考虑从两个分支中分别回归手掌和手指姿态，这与基于通用分支的网络并无本质区别。除了输入特征T外，两者间几乎没有共享信息。然而，在手掌回归分支中存在残留的手指特征。这些手指特征对手掌姿态回归而言可能是噪声，但对手指姿态回归却有益处。手指分支中也是如此。为了充分利用两个分支间有用的“噪声”信息，我们尝试设计一种多任务信息共享的网络结构。双任务交叉缝合网络[^28]是一种通用的多任务网络，如图5(a)所示。它利用多个交叉缝合单元通过惰性融合来借鉴另一任务的知识。不过，惰性交叉缝合可能会导致子任务间的相互干扰，而且惰性交叉缝合对子任务的了解并不清晰——它们的相似性和可靠性差异显著。

---

![Image](images/fad4ae4055526c789a1b8ac720307a7808f3963ac86762dfee345bce62523c29.jpg)

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

![Image](images/ae3d7ac4e0334c0e57b591ddcf2952c0dbb939c518cd973ad34ca1fa12d46866.jpg)

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

<div style="text-align: center;">Figure 5. Network comparisons with Cross-stitch Network</div>

关系。

我们希望主动引导子任务之间的交互方式。通过受控的信息共享，与同一目标相关的特征应被合并并增强。图5(b)展示了所提出的多任务信息共享机制：它利用“跳过线”从全局手部特征中减去手掌特征，从而分离出手掌和手指（Finger）；接着用“交叉线”将两个分支中的手指特征拼接起来。这样既能减少来自手掌的干扰，又能进一步增强手指特征，反之亦然。

详细的网络结构如图6所示。初始特征T包含手掌相关特征和手指相关特征。通过T与手掌姿态主导特征$P_0$之间的减法运算以及跳跃连接，我们得到残余的手指特征$F_-,$，将其视为手指的“注意力掩码”。这个掩码对手掌姿态回归而言可能是“噪声”，但对手指姿态回归却有益处，它能引导分支提取更精细的特征。同理，我们也能得到手掌的“注意力掩码”$P_-.$。通过交叉连接，$P_0$会与$P_-$拼接在一起，形成增强后的手掌特征$P_1$。采用类似的过程也能获得增强后的手指特征$F_1$。通过这种方式，我们的新网络架构在不同子任务之间建立了关联。后续残差模块会输出特征$F_2$和$P_2$。最终，通过最后的回归模块来估算3D手部关节坐标。网络参数如图6所示，主要的姿态回归流程则在算法1中进行了描述。

#### 3.4. 损失函数

我们采用真实值与估计关节坐标之间的均方误差作为损失函数。在初始特征提取模块中，我们利用热图作为约束，引导网络实现更好的全局特征提取。

```pseudo
// Algorithm 1: joint regression with multi-task information sharing.

Input:
```

符号说明：
*：空间卷积运算符
⊗：特征拼接运算符
$p_{0}, p_{1}$：不同阶段用于提取手掌特征的卷积层
$f_{0}, f_{1}$：不同阶段用于提取手指特征的卷积层
$f_{c}$：用于回归关节位置的全连接层
$T \in T^{w \times h \times c}$：回归特征
1：$P_{0} = T \times p_{0}$；$F_{0} = T \times f_{0}$ 初步特征
2：$F_{-} = T - P_{0}$；$P_{-} = T - F_{0}$ 残余特征
3：$P_{1} = P_{0} \otimes P_{-}$；$F_{1} = F_{0} \otimes F_{-}$ 增强特征
4：$P_{2} = P_{1} \times p_{1}$；$F_{2} = F_{1} \times f_{1}$ 最终特征
5：$J_{p} = f_{c}(P_{2})$；$J_{f} = f_{c}(F_{2})$ 关节坐标
6：$J = J_{p} \otimes J_{f}$ 最终关节坐标
输出：J

热图检测损失定义如下：

 $$ L_{h t}=\sum_{n=1}^{A}\sum_{u,v}\left\|H_{n}^{a*}(u,v)-H_{n}^{a}(u,v)\right\|^{2} $$

其中A表示整只手的关节数量。$H_{n}^{a*}$和$H_{n}^{a}$分别代表关节n的真实热图和估计热图。

在特征细化模块中，我们引入了两个约束$L_{bp}$和$L_{bf}$，用于提取初步的手掌特征$P_{0}$和手指特征$F_{0}$。它们的定义如下：

 $$ L_{b p}=\sum_{n=1}^{P}\sum_{u,v}\left\|H_{n}^{p*}(u,v)-H_{n}^{p}(u,v)\right\|^{2} $$

 $$ {\cal L}_{b f}=\sum_{n=1}^{F}\sum_{u,v}\left\|H_{n}^{f*}(u,v)-H_{n}^{f}(u,v)\right\|^{2} $$

其中$H_{n}^{p*}$和$H_{n}^{f*}$分别代表第n个手掌关节和第n个手指关节的真实热图，$H_{n}^{p}$和$H_{n}^{f}$则为相应的网络输出。

在回归模块中，我们使用三种损失来监督每个子任务的最终输出以及整个手部关节。它们分别是手掌关节回归损失$L_{ep}$、手指关节回归损失$L_{ef}$以及整个手部关节回归损失$L_{a}$。

 $$ L_{ep}=\sum_{n=1}^{P}\left\|J_{n}^{p^{*}}-J_{n}^{p}\right\|_{2}^{2} $$

 $$ L_{e f}=\sum_{n=1}^{F}\left\|J_{n}^{f^{*}}-J_{n}^{f}\right\|_{2}^{2} $$

 $$ L_{a}=\sum_{n=1}^{A}\left\|J_{n}^{a^{*}}-J_{n}^{a}\right\|_{2}^{2} $$

其中$J_{n}^{p*}$和$J_{n}^{p}$表示第n个手掌关节的真实3D坐标和估计3D坐标，$J_{n}^{f*}$和$J_{n}^{f}$为

---

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

<div style="text-align: center;">Figure 6. The new feature refinement module connected with the joint regression module. It is designed based on multi-task information sharing mechanism. The kernel size of the residual block is set to  $3 \times 3$ and the dimension of full-connected layer is set to 2048.</div>

真实3D坐标和估计3D坐标，$J_{n}^{a*}$和$J_{n}^{a}$则表示第n个手指关节的真实3D坐标和估计3D坐标。

总损失函数如下：

 $$ L=\alpha\times(L_{ht}+L_{bp}+L_{bf})+\beta\times(L_{ep}+L_{ef}+L_{a}) $$

其中 $\alpha, \beta$ 是用于平衡检测损失和回归损失的因子。在我们的实验中，$\alpha$ 和 $\beta$ 分别被设置为 0.01 和 1。

#### 3.5. 实现细节

首先从原始图像中裁剪出手部区域，并将其缩放为固定大小 $96 \times 96$。裁剪区域内的深度值会被归一化到 [-1, 1] 区间，标签也会被归一化以保持与裁剪后的深度图对应。训练过程中我们会应用在线数据增强技术，包括随机旋转（[-180, 180] 度）、平移（[-10, 10] 像素）以及缩放（[0.9, 1.1]）。

所提出的网络采用端到端的方式进行训练。所有权重均从均值为零的正态分布中初始化，标准差为 $\sigma = 0.01$。我们选用 Adam 算法来训练模型，初始学习率为 $1e^{-3}$，批量大小为 128，权重衰减系数为 $1e^{-5}$。每个训练周期学习率会乘以 0.96，为了防止过拟合，dropout 率被设为 0.6。

我们的网络是基于 Tensorflow [^1] 实现的，训练与测试均在 RTX 2080 TI GPU 上进行。模型共训练了 110 个周期：在 ICVL 数据集上训练时间为 15 小时，在 NYU 和 MSRA 数据集上分别为 6.5 小时，而在 HANDS 2017 挑战赛数据集上则需 3 天。测试时，该模型在单张 GPU 上的运行速度可达 124.5 fps。

### 4. 实验与结果

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

ICVL 数据集。ICVL 数据集 [^34] 包含 33 万帧训练数据和 1.5 千帧测试数据。训练集由 2.2 万帧原始数据以及额外 30 万帧经过平面内旋转的增强数据组成。该数据集标注了 16 个关节点。我们使用完整帧进行训练，而在自我对比实验中仅使用原始的 2.2 万帧数据。

NYU 数据集。NYU 数据集 [^38] 包含来自三个不同视角的 7.2 万帧训练数据和 8 千帧测试数据。训练集采集自受试者 A，测试集则来自受试者 A 和 B。以往的大多数研究仅使用视角 1 以及标注的 14 个关节点进行训练和测试，为了便于比较，我们也采用相同的设置。

MSRA 数据集。MSRA 数据集 [^32] 包含 7.65 万张带有 21 个标注关节点的深度图像。该数据集涉及 9 名受试者，每人有 17 种不同的手势。按照通用的评估协议 [^32]，我们同样采用留一受试者法来评估结果。

HANDS 2017 挑战赛基于帧的数据集。该数据集 [^44] 包含 95.7 万帧训练深度图像和 29.5 万帧测试深度图像，这些图像取自 BigHand2.2M [^45] 和 FHAD [^9] 数据集。训练集包含 5 名受试者，测试集则包含 10 名受试者，其中有 5 名是未出现过的受试者。该数据集标注了 21 个关节点。

评估指标。我们使用两种指标来评估不同 3D 手部姿态估计方法的性能：其一是每个关节处真实值与预测 3D 关节位置之间的平均 3D 距离误差；其二是低于某一阈值时的成功帧百分比，这一设定与 [^37] 保持一致。

---

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td rowspan="2">Strategy</td><td colspan="2">Average 3D distance error (mm)</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>ICVL</td><td style='text-align: center; word-wrap: break-word;'>NYU</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Base</td><td style='text-align: center; word-wrap: break-word;'>9.28</td><td style='text-align: center; word-wrap: break-word;'>11.17</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Base+HM</td><td style='text-align: center; word-wrap: break-word;'>9.08</td><td style='text-align: center; word-wrap: break-word;'>10.84</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Cross</td><td style='text-align: center; word-wrap: break-word;'>8.79</td><td style='text-align: center; word-wrap: break-word;'>10.57</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Cross+HM</td><td style='text-align: center; word-wrap: break-word;'>8.48</td><td style='text-align: center; word-wrap: break-word;'>10.08</td></tr></table>

<div style="text-align: center;">Table 1. Self-comparison results on average 3D distance error (mm). Base: baseline network without the heat-map constraints; Base + HM: baseline network with the heat-map constraints; Cross: cross-connection network without the heat-map constraints; Cross + HM: cross-connection network with the heat-map constraints.</div>

#### 4.2. 自我对比

我们在ICVL $^{[34]}$和NYU $^{[38]}$数据集上进行了消融实验。为了评估热图约束的优势，我们比较了加入与未加入热图约束的基线网络的结果。为了展示多任务信息共享网络的性能，我们将其与基线网络进行了对比。

如表1所示，在ICVL数据集上，加入热图约束的基线网络将平均3D距离误差降低了0.2毫米（从9.28降至9.08）；在NYU数据集上则降低了0.33毫米（从11.17降至10.84），相比之下未加入热图约束的网络误差更大。这证明热图约束能够促使模型提取更好的特征，从而降低估计误差。接着，基于已加入热图约束的初始特征提取网络，我们比较了两种不同特征细化模块对平均3D距离误差的影响。与基线模型中采用的两个独立分支相比，所提出的带有交叉连接机制的模型在ICVL数据集上将误差显著降低了0.60毫米（从9.08降至8.48），在NYU数据集上则降低了0.76毫米（从10.84降至10.08）。显然，这项对比实验的结果支持了我们的观点：多任务信息共享能够实现更精准的手部姿态估计。

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

通过全面的自我对比可以得出结论：所提出的采用交叉连接双分支架构以及热图引导的初始特征提取的多任务信息共享模型，在手部姿态估计任务中表现最佳。

我们将所提出的Cross-InfoNet在三个公开3D手部姿态数据集上的性能，与大多数最先进方法进行了对比，其中使用深度图（2D）作为输入的方法包括：潜在随机森林（LRF）[^34]、基于模型的方法（DeepModel）[^46]、反馈循环训练（Feedback）[^23]、Lie-X [^42]、带细化功能的DeepPrior（DeepPrior）[^22]、改进版DeepPrior（DeepPrior++）[^21]、区域集成网络（Ren-4x6x6 [^14]、

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td rowspan="2">Methods</td><td colspan="3">Mean error (mm)</td><td rowspan="2">Input</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>ICVL</td><td style='text-align: center; word-wrap: break-word;'>NYU</td><td style='text-align: center; word-wrap: break-word;'>MSRA</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Feedback [^23]</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>15.97</td><td style='text-align: center; word-wrap: break-word;'>2D</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Lie-X [^42]</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>14.51</td><td style='text-align: center; word-wrap: break-word;'>2D</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>LRF [^34]</td><td style='text-align: center; word-wrap: break-word;'>12.58</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>2D</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>DeepModel [^46]</td><td style='text-align: center; word-wrap: break-word;'>11.56</td><td style='text-align: center; word-wrap: break-word;'>17.04</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>2D</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>DeepPrior [^22]</td><td style='text-align: center; word-wrap: break-word;'>10.4</td><td style='text-align: center; word-wrap: break-word;'>19.73</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>2D</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Ren-4x6x6 [^14]</td><td style='text-align: center; word-wrap: break-word;'>7.63</td><td style='text-align: center; word-wrap: break-word;'>13.39</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>2D</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Ren-9x6x6 [^40]</td><td style='text-align: center; word-wrap: break-word;'>7.31</td><td style='text-align: center; word-wrap: break-word;'>12.69</td><td style='text-align: center; word-wrap: break-word;'>9.7</td><td style='text-align: center; word-wrap: break-word;'>2D</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>DeepPrior++ [^21]</td><td style='text-align: center; word-wrap: break-word;'>8.1</td><td style='text-align: center; word-wrap: break-word;'>12.24</td><td style='text-align: center; word-wrap: break-word;'>9.5</td><td style='text-align: center; word-wrap: break-word;'>2D</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Pose-Ren [^4]</td><td style='text-align: center; word-wrap: break-word;'>6.79</td><td style='text-align: center; word-wrap: break-word;'>11.81</td><td style='text-align: center; word-wrap: break-word;'>8.65</td><td style='text-align: center; word-wrap: break-word;'>2D</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>DenseReg [^39]</td><td style='text-align: center; word-wrap: break-word;'>7.3</td><td style='text-align: center; word-wrap: break-word;'>10.2</td><td style='text-align: center; word-wrap: break-word;'>7.2</td><td style='text-align: center; word-wrap: break-word;'>2D</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>CrossInfoNet(Ours)</td><td style='text-align: center; word-wrap: break-word;'>6.73</td><td style='text-align: center; word-wrap: break-word;'>10.08</td><td style='text-align: center; word-wrap: break-word;'>7.86</td><td style='text-align: center; word-wrap: break-word;'>2D</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>3DCNN [^12]</td><td style='text-align: center; word-wrap: break-word;'>-</td><td style='text-align: center; word-wrap: break-word;'>14.1</td><td style='text-align: center; word-wrap: break-word;'>9.6</td><td style='text-align: center; word-wrap: break-word;'>3D</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>SHPR-Net [^5]</td><td style='text-align: center; word-wrap: break-word;'>7.22</td><td style='text-align: center; word-wrap: break-word;'>10.78</td><td style='text-align: center; word-wrap: break-word;'>7.76</td><td style='text-align: center; word-wrap: break-word;'>3D</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>HandPointNet [^10]</td><td style='text-align: center; word-wrap: break-word;'>6.94</td><td style='text-align: center; word-wrap: break-word;'>10.54</td><td style='text-align: center; word-wrap: break-word;'>8.5</td><td style='text-align: center; word-wrap: break-word;'>3D</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Point-to-Point [^13]</td><td style='text-align: center; word-wrap: break-word;'>6.3</td><td style='text-align: center; word-wrap: break-word;'>9.1</td><td style='text-align: center; word-wrap: break-word;'>7.7</td><td style='text-align: center; word-wrap: break-word;'>3D</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>V2V [^17]</td><td style='text-align: center; word-wrap: break-word;'>6.28</td><td style='text-align: center; word-wrap: break-word;'>8.42</td><td style='text-align: center; word-wrap: break-word;'>7.59</td><td style='text-align: center; word-wrap: break-word;'>3D</td></tr></table>

<div style="text-align: center;">Table 2. Comparisons with state-of-the-art methods on three datasets. Mean error indicates the average 3D distance error.</div>

<table border=1 style='margin: auto; word-wrap: break-word;'><tr><td style='text-align: center; word-wrap: break-word;'>Methods</td><td style='text-align: center; word-wrap: break-word;'>Testing on single GPU (fps)</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>V2V [^17]</td><td style='text-align: center; word-wrap: break-word;'>3.5</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>DenseReg [^39]</td><td style='text-align: center; word-wrap: break-word;'>27.8</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>Point-to-Point [^13]</td><td style='text-align: center; word-wrap: break-word;'>41.8</td></tr><tr><td style='text-align: center; word-wrap: break-word;'>CrossInfoNet (Ours)</td><td style='text-align: center; word-wrap: break-word;'>124.5</td></tr></table>

<div style="text-align: center;">Table 3. Comparison of inference time while testing.</div>

Ren-9x6x6 [^40]）、姿态引导型REN（Pose-Ren）[^4]、密集回归网络（DenseReg）[^39]；使用点云或体素（3D）作为输入的方法包括：3DCNN [^12]、SHPRNet [^5]、HandPointNet [^10]、Point-to-Point [^13]、V2V [^17]。用于对比的部分方法的结果是取自在线可获取的预测标签，其余结果则摘录自相关论文。

如表2和图7所示，在ICVL和NYU数据集上，我们的结果优于那些以深度图为输入的最先进方法。与采用3D输入的方法相比，我们的结果虽不如V2V [^17]和Point-to-Point [^13]，但相比3DCNN [^12]和SHPR-Net [^5]有更大的提升。在MSRA数据集上，我们的方法与最优的3D CNN方法结果相当；在该数据集上DenseReg [^39]的表现优于我们的方法。不过，当阈值设定为10毫米以下时，我们的方法在成功帧百分比指标上表现更佳。我们的方法在三个数据集上的定性结果如图8所示。

尽管在ICVL和NYU数据集上，采用3D输入的V2V和Point-to-Point方法表现更好，且在MSRA数据集上采用2D输入的DenseReg方法表现更优，但它们在测试数据上的推理时间比我们的方法更长。

---

![Image](images/eaa75d9e1b7e65d3fb96bda4a12ad99e3772708d915ed0bb0afd32c6ab5c46ea.jpg)

<div style="text-align: center;">Figure 7. Comparisons with state-of-the-art methods. Top row: the percentage of good frames over different error thresholds. Bottom row: 3D distance errors per hand joints. Left: NYU [^38] dataset. Middle: ICVL [^34] dataset. Right: MSRA [^32] dataset.</div>

![Image](images/1c5a44f2dd00fd9846d6275c202ec36f7b53243855675b8e68e9aba591482543.jpg)

<div style="text-align: center;">Figure 8. The qualitative results of our method on three datasets. Left: ICVL [^34] dataset. Middle: NYU [^38] dataset. Right: MSRA [^32] dataset. Ground truth is shown in blue, and the estimated pose is shown in red.</div>

关于推理时间的对比结果列在表3中。

我们还在2019年2月2日于HANDS 2017基于帧的挑战数据集上测试了该方法的表现[^44]。我们的方法获得了第一名，且在未见数据上的表现最佳。

### 5. 结论

本研究旨在探索一种高效的CNN网络，以从深度数据输入中获取手部关节坐标。我们设计的双分支交叉连接网络通过多任务设置下的信息共享，分层回归手掌姿态和手指姿态；该网络还利用热图引导来获取更优的特征图。实验结果证明，所提出的策略有助于获得更准确的结果，且该方法在三个3D手部姿态数据集上的表现优于以往的大多数研究。此外，与所有往届参赛者相比，所提出的方法在手部姿态估计挑战中也取得了最佳成绩。我们希望本研究能为手部姿态估计的网络设计提供新思路。

## 参考文献

## [^1]: Martín Abadi, Paul Barham, Jianmin Chen, Zhifeng Chen, Andy Davis, Jeffrey Dean, Matthieu Devin, Sanjay Ghemawat, Geoffrey Irving, Michael Isard, et al. Tensorflow: a system for large-scale machine learning. In OSDI, volume 16, pages 265–283, 2016

---

[^2]: Vassilis Athitsos and Stan Sclaroff. Estimating 3d hand pose from a cluttered image. In Computer Vision and Pattern Recognition, 2003. Proceedings. 2003 IEEE Computer Society Conference on, volume 2, pages II–432. IEEE, 2003.

[^3]: Seungryul Baek, Kwang In Kim, and Tae-Kyun Kim. Augmented skeleton space transfer for depth-based hand pose estimation. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pages 8330–8339, 2018.

[^4]: Xinghao Chen, Guijin Wang, Hengkai Guo, and Cairong Zhang. Pose guided structured region ensemble network for cascaded hand pose estimation. Neurocomputing, 2018.

[^5]: Xinghao Chen, Guijin Wang, Cairong Zhang, Tae-Kyun Kim, and Xiangyang Ji. Shpr-net: Deep semantic hand pose regression from point clouds. IEEE Access, 6:43425–43439, 2018.

[^6]: Chiho Choi, Sang Ho Yoon, Chin-Ning Chen, and Karthik Ramani. Robust hand pose estimation during the interaction with an unknown object. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, pages 3123–3132, 2017.

[^7]: Martin de La Gorce, David J Fleet, and Nikos Paragios. Model-based 3d hand pose estimation from monocular video. IEEE transactions on pattern analysis and machine intelligence, 33(9):1793–1805, 2011.

[^8]: Ali Erol, George Bebis, Mircea Nicolescu, Richard D Boyle, and Xander Twombly. Vision-based hand pose estimation: A review. Computer Vision and Image Understanding, 108(1-2):52–73, 2007.

[^9]: Guillermo Garcia-Hernando, Shanxin Yuan, Seungryul Baek, and Tae-Kyun Kim. First-person hand action benchmark with rgb-d videos and 3d hand pose annotations. In The IEEE Conference on Computer Vision and Pattern Recognition (CVPR), June 2018.

[^10]: Liuhao Ge, Yujun Cai, Junwu Weng, and Junsong Yuan. Hand pointnet: 3d hand pose estimation using point sets. In CVPR, June 2018.

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

[^12]: Liuhao Ge, Hui Liang, Junsong Yuan, and Daniel Thalmann. 3d convolutional neural networks for efficient and robust hand pose estimation from single depth images. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, volume 1, page 5, 2017.

[^13]: Liuhao Ge, Zhou Ren, and Junsong Yuan. Point-to-point regression pointnet for 3d hand pose estimation. In ECCV, September 2018.

[^14]: Hengkai Guo, Guijin Wang, Xinghao Chen, Cairong Zhang, Fei Qiao, and Huazhong Yang. Region ensemble network: Improving convolutional network for hand pose estimation. In Image Processing (ICIP), 2017 IEEE International Conference on, pages 4512–4516. IEEE, 2017.

[^15]: Kaiming He, Xiangyu Zhang, Shaoqing Ren, and Jian Sun. Deep residual learning for image recognition. In Proceedings

IEEE计算机视觉与模式识别会议论文集，第770–778页，2016年。

[^16]: Meysam Madadi, Sergio Escalera, Xavier Baró, and Jordi Gonzalez. End-to-end global to local cnn learning for hand pose recovery in depth data. arXiv preprint arXiv:1705.09606, 2017.

[^17]: Gyeongsik Moon, Ju Yong Chang, and Kyoung Mu Lee. V2v-posenet: Voxel-to-voxel prediction network for accurate 3d hand and human pose estimation from a single depth map. In CVPR, June 2018.

[^18]: Franziska Mueller, Florian Bernard, Oleksandr Sotnychenko, Dushyant Mehta, Srinath Sridhar, Dan Casas, and Christian Theobalt. Generated hands for real-time 3d hand tracking from monocular rgb. In The IEEE Conference on Computer Vision and Pattern Recognition (CVPR), June 2018.

[^19]: Franziska Mueller, Dushyant Mehta, Oleksandr Sotnychenko, Srinath Sridhar, Dan Casas, and Christian Theobalt. Real-time hand tracking under occlusion from an egocentric rgb-d sensor. In Proceedings of International Conference on Computer Vision (ICCV), volume 10, 2017.

[^20]: Xuecheng Nie, Jiashi Feng, and Shuicheng Yan. Mutual learning to adapt for joint human parsing and pose estimation. In Proceedings of the European Conference on Computer Vision (ECCV), pages 502–517, 2018.

[^21]: Markus Oberweger and Vincent Lepetit. Deepprior++: Improving fast and accurate 3d hand pose estimation. In ICCV Workshops, Oct 2017.

[^22]: Markus Oberweger, Paul Wohlhart, and Vincent Lepetit. Hands deep in deep learning for hand pose estimation. In Computer Vision Winter Workshop, 2015.

[^23]: Markus Oberweger, Paul Wohlhart, and Vincent Lepetit. Training a feedback loop for hand pose estimation. In Proceedings of the IEEE International Conference on Computer Vision, pages 3316–3324, 2015.

[^24]: Paschalis Panteleris and Antonis Argyros. Back to гб: 3d tracking of hands and hand-object interactions based on short-baseline stereo. Hand, 2(63):39, 2017.

[^25]: Paschalis Panteleris, Iasonas Oikonomidis, and Antonis A. Argyros. Using a single rgb frame for real time 3d hand pose estimation in the wild. 2018 IEEE Winter Conference on Applications of Computer Vision (WACV), pages 436–445, 2018.

[^26]: Chen Qian, Xiao Sun, Yichen Wei, Xiaoou Tang, and Jian Sun. Realtime and robust hand tracking from depth. In Proceedings of the IEEE conference on computer vision and pattern recognition, pages 1106–1113, 2014.

[^27]: Romer Rosales, Vassilis Athitsos, Leonid Sigal, and Stan Sclaroff. 3d hand pose reconstruction using specialized mappings. In Computer Vision, 2001. ICCV 2001. Proceedings. Eighth IEEE International Conference on, volume 1, pages 378–385. IEEE, 2001.

[^28]: Sebastian Ruder. An overview of multi-task learning in deep neural networks. arXiv preprint arXiv:1706.05098, 2017.

## [^29]: Toby Sharp, Cem Keskin, Duncan Robertson, Jonathan Taylor, Jamie Shotton, David Kim, Christoph Rhemann, Ido Leichter, Alon Vinnikov, Yichen Wei, et al. Accurate, robust

---

以及灵活的实时手部追踪。载于第33届ACM人机交互年度会议论文集，第3633–3642页。ACM出版社，2015年。

[^30]: Jamie Shotton, Ross Girshick, Andrew Fitzgibbon, Toby Sharp, Mat Cook, Mark Finocchio, Richard Moore, Pushmeet Kohli, Antonio Criminisi, Alex Kipman, et al. Efficient human pose estimation from single depth images. IEEE Transactions on Pattern Analysis and Machine Intelligence, 35(12):2821–2840, 2013.

[^31]: Xiao Sun, Jiaxiang Shang, Shuang Liang, and Yichen Wei. Compositional human pose regression. In The IEEE International Conference on Computer Vision (ICCV), volume 2, page 7, 2017.

[^32]: Xiao Sun, Yichen Wei, Shuang Liang, Xiaoou Tang, and Jian Sun. Cascaded hand pose regression. In The IEEE Conference on Computer Vision and Pattern Recognition (CVPR), June 2015.

[^33]: James S Supancic, Gregory Rogez, Yi Yang, Jamie Shotton, and Deva Ramanan. Depth-based hand pose estimation: data, methods, and challenges. In Proceedings of the IEEE international conference on computer vision, pages 1868–1876, 2015.

[^34]: Danhang Tang, Hyung Jin Chang, Alykhan Tejani, and Tae-Kyun Kim. Latent regression forest: Structured estimation of 3d articulated hand posture. In Proceedings of the IEEE conference on computer vision and pattern recognition, pages 3786–3793, 2014.

[^35]: Danhang Tang, Jonathan Taylor, Pushmeet Kohli, Cem Keskin, Tae-Kyun Kim, and Jamie Shotton. Opening the black box: Hierarchical sampling optimization for estimating human hand pose. In Proceedings of the IEEE international conference on computer vision, pages 3325–3333, 2015.

[^36]: Danhang Tang, Tsz-Ho Yu, and Tae-Kyun Kim. Real-time articulated hand pose estimation using semi-supervised transductive regression forests. In Proceedings of the IEEE international conference on computer vision, pages 3224–3231, 2013.

[^37]: Jonathan Taylor, Jamie Shotton, Toby Sharp, and Andrew Fitzgibbon. The vitruvian manifold: Inferring dense correspondences for one-shot human pose estimation. In Computer Vision and Pattern Recognition (CVPR), 2012 IEEE Conference on, pages 103–110. IEEE, 2012.

[^38]: Jonathan Tompson, Murphy Stein, Yann Lecun, and Ken Perlin. Real-time continuous pose recovery of human hands using convolutional networks. ACM Transactions on Graphics (ToG), 33(5):169, 2014.

[^39]: Chengde Wan, Thomas Probst, Luc Van Gool, and Angela Yao. Dense 3d regression for hand pose estimation. In The IEEE Conference on Computer Vision and Pattern Recognition (CVPR), June 2018.

[^40]: Guijin Wang, Xinghao Chen, Hengkai Guo, and Cairong Zhang. Region ensemble network: towards good practices for deep 3d hand pose estimation. Journal of Visual Communication and Image Representation, 2018.

[^41]: Fangting Xia, Peng Wang, Xianjie Chen, and Alan L Yuille. Joint multi-person pose estimation and semantic part segmentation. In CVPR, volume 2, page 7, 2017.

[^42]: Chi Xu, Lakshmi Narasimhan Govindarajan, Yu Zhang, and Li Cheng. Lie-x: Depth image based articulated object pose estimation, tracking, and action recognition on lie groups. International Journal of Computer Vision, 123:454–478, 2017.

[^43]: Shanxin Yuan, Guillermo Garcia-Hernando, Björn Stenger, Gyeongsik Moon, Ju Yong Chang, Kyoung Mu Lee, Pavlo Molchanov, Jan Kautz, Sina Honari, Liuhao Ge, et al. Depth-based 3d hand pose estimation: From current achievements to future goals. In The IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2018.

[^44]: Shanxin Yuan, Qi Ye, Guillermo Garcia-Hernando, and Tae-Kyun Kim. The 2017 hands in the million challenge on 3d hand pose estimation. arXiv preprint arXiv:1707.02237, 2017.

[^45]: Shanxin Yuan, Qi Ye, Bjorn Stenger, Siddhant Jain, and Tae-Kyun Kim. Bighand2.2m benchmark: Hand pose dataset and state of the art analysis. In The IEEE Conference on Computer Vision and Pattern Recognition (CVPR), July 2017.

[^46]: Xingyi Zhou, Qingfu Wan, Wei Zhang, Xiangyang Xue, and Yichen Wei. Model-based deep hand pose estimation. In Proceedings of the Twenty-Fifth International Joint Conference on Artificial Intelligence, pages 2421–2427. AAAI Press, 2016.

[^47]: Yidan Zhou, Jian Lu, Kuo Du, Xiangbo Lin, Yi Sun, and Xiaohong Ma. Hbe: Hand branch ensemble network for real-time 3d hand pose estimation. In Proceedings of the European Conference on Computer Vision (ECCV), pages 501–516, 2018.

[^48]: Christian Zimmermann and Thomas Brox. Learning to estimate 3d hand pose from single rgb images. In The IEEE International Conference on Computer Vision (ICCV), Oct 2017.
