
# 基于模型的单目视频三维手部姿态估计

Martin de La Gorce，IEEE学生会员；David J. Fleet，IEEE高级会员；Nikos Paragios，IEEE会士

摘要—本文提出了一种基于模型的三维手部跟踪新方法，该方法利用单目视频实现三维手部姿态、手部纹理以及光照条件的动态估计，其过程通过最小化一个目标函数来完成。该目标函数源自逆问题建模，能够充分利用时间维度的纹理连续性和阴影信息，同时有效处理严重的自遮挡现象以及时变光照问题。我们采用拟牛顿法高效完成最小化过程，并严格推导了该目标函数的梯度表达式。文中特别着重分析了现有建模中常被忽略的自遮挡边界处的可见性变化相关项，为此我们引入了新型遮挡力，实验表明纳入所有梯度项后该方法性能会得到显著提升。定性与定量实验结果均证明了该方法的应用潜力。

关键词—手部跟踪；基于模型的从阴影恢复形状；生成式建模；姿态估计；变分建模；梯度下降。

## 1 引言

H $_{AND}$ 手势为人机交互提供了一种丰富的非语言交流形式。为此，手部跟踪和手势识别是核心的使能技术。数据手套通常用作输入设备，但价格昂贵，且往往会限制自由活动。作为一种替代方案，基于视觉的跟踪是一种颇具吸引力、非侵入式的途径。

然而，快速且精准的基于视觉的手部姿态跟踪极具挑战性。人手约有30个自由度，因此可能的手部姿态状态空间极为庞大，要从海量状态中找出与图像匹配度最高的姿态，计算开销极大。虽然利用近期估计出的姿态来预测当前姿态可优化状态空间的搜索效率，但该方法对手部跟踪往往效果不佳——因为手部运动速度快且轨迹复杂，导致预测结果的方差较大。此外，单目跟踪问题还会受到固有深度不确定性及反射歧义的影响，进而产生多个局部最优解。

另一个挑战在于可用视觉线索的匮乏。人手通常呈肤色，仅依靠颜色很难区分手部的不同部位；即便能获取手部轮廓，它也只能提供关于各手指相对位置的有限信息。由于手部表面纹理少且常发生自遮挡现象，光流估计的可靠性较低；而边缘信息也常因背景杂乱而难以辨识。例如，图1的第一列展示了食指姿态不同的手部图像，其他列则对应这些图像的边缘图和轮廓图——随着食指移动，这些图并无明显变化，因此无法可靠地约束手部姿态。对于手部这类颜色较为均匀的物体而言，我们认为阴影是重要的视觉线索。不过，阴影尚未被广泛应用于关节物体的跟踪领域（可参考[^1]、[^2]）。主要原因在于阴影约束需要精确的曲面形状模型；将手部简化为少量椭球或圆柱体的简单几何模型，其细节程度往往不足以提取有效的阴影约束，而曲面遮挡也会进一步干扰阴影线索的利用。

针对单目手部追踪，目前已提出两种互补的方法。判别性方法旨在通过分类或回归技术从单帧图像中恢复手部姿态（例如，[^3]、[^4]、[^5]、[^6]）。这类分类器是通过离线生成的合成模型数据，或是通过相机从少量已知姿态中获取的数据来训练的。由于手部自由度的数量庞大，要对整个状态空间进行密集采样是不切实际的。因此，这些方法或许最适合用于粗略初始化，或是识别有限数量的预定义姿态。

生成式方法则利用三维关节手模型，将其投影与观测到的图像对齐以实现姿态恢复（例如，[^7]、[^8]、[^9]、[^10]、[^11]）。模型的投影是实时合成的，而模型与图像之间的配准可以通过局部搜索来完成。多种线索，如到边缘的距离、分割出的轮廓[^12]、[^13]，或是光流[^1]，都可以用来指导配准过程。

---

![Image](images/0345b1ee0186b118316ab43722b57250ab1e74c85d8ef5563727b4802b82ae55.jpg)

<div style="text-align: center;">Fig. 1. Two hand pictures in the first column and their corresponding edge map and segmented silhouette in the two other columns. Edge and silhouette provide little information to disambiguate the two different index poses.</div>

该方法在[^14]中被提出，它结合了判别性与生成式方法，但并不使用在线合成技术。系统会预先生成一组可能的姿态，从而限定可追踪的姿态范围。

毫不意外的是，在相关的人体全身姿态追踪问题上也存在类似的挑战。对于全身追踪而言，由于人体形状和外观存在显著差异，很难构建合适的似然模型（例如，参见[^15]）。有趣的是，除了[^16]中关于裸体人群的身体形状与姿态估计的最新研究外，阴影信息在人体姿态追踪中的应用并不广泛。

本文主张采用在几何和外观方面都更为复杂的生成式手部模型，并结合精心设计的基于梯度的优化方法。我们提出了一种全新的“先分析后合成”的手部追踪问题求解框架，该框架同时纳入了阴影和纹理信息，并能处理自遮挡问题。给定一个参数化的手部模型以及定义明确的图像形成过程，我们的目标就是找到能够生成与观测图像尽可能相似的合成图像的手部姿态参数。我们的相似性度量（即目标函数）仅仅是图像域内残差之和。采用基于三角网格的模型有助于构建精确的阴影模型；通过对手部纹理进行建模，我们便能得到一种能够自然捕捉关键视觉线索的方法，而无需在目标函数中添加额外的人为设定项。

在跟踪过程中，我们会针对每一帧通过最小化目标函数来确定手部参数和光照参数。随后，每一帧都会更新手部纹理；而在下一帧拟合模型姿态和光照时，该纹理则保持静态。与依赖光流方法的[^1]所述方法不同，我们的目标函数在建模时并未假设帧间位移较小，因此能够适应较大的位移和不连续性。我们借助准牛顿下降法并利用目标函数的梯度来确定最优手部姿态。具体而言，我们首次详细推导了深度不连续性附近区域的梯度，结果表明由于遮挡现象的存在，梯度中会出现重要的项。这种对遮挡边界附近连续性的分析，对于三维人体全身姿态估计而言同样具有重要意义，但目前尚无人涉足。

![Image](images/a67abf66f4303e5d832e0e29df83fd3722ef80f928c3900b78ca773406b58441.jpg)

<div style="text-align: center;">Fig. 2. (a) The skeleton. (b) The deformed hand triangulated surface.</div>

最后，我们在涉及严重自遮挡和平面外旋转的复杂序列上测试了我们的方法。我们还引入了带有三维真实值的序列，以便进行定量的性能分析。

## 2 生成模型

### 2.1 合成

我们的“分析-合成”方法需要一个图像生成模型，该模型需以三维手部姿态、表面纹理以及光源为输入。该模型源自计算机动画和图形学中的经典概念。

参照[^17]的做法，我们用一个三维、闭合且可定向的三角化曲面来建模手部表面。该表面网格由1,000个面片组成（见图2b）。根据底层关节骨骼的姿态变化，该网格会通过骨架子空间变形技术[^18]、[^19]发生形变。该骨骼由18根骨头构成，拥有22个自由度；每个自由度对应一个关节角度，其取值范围被限定以避免出现不符合现实的手部姿态。手部姿态由一个向量$\theta$表示，其中包含22个关节参数、3个平移参数，以及一个用于定义手腕相对于摄像机的全局位置和方向的四元数。为了适应不同的手部形状和大小，我们还加入了54个缩放参数（每根骨头3个），这些参数被称为形态参数。它们会在校准过程中被估算出来（详见第4.1节），并需满足限制各手指内部相对长度的线性约束。

由于手部纹理相对较少，因此阴影效果对于建模手部外观至关重要。在此，我们采用Gouraud着色模型，并假设物体遵循朗伯反射规律。我们还引入了自适应反照率函数，用以模拟纹理以及其他无法用常规方式建模的外观特性。光源模型包含环境光和一个远距离点光源，它由四维向量L来描述，其中三个元素代表方向分量，一个元素代表环境分量。表面网格上每个顶点的辐照度，等于环境系数与顶点处表面法线和光源方向的点积之和。每个面上的辐照度则是通过双线性插值得到的。将反射率与辐照度相乘，便能得到表面上各点的外观。

---

![Image](images/bfac8898065be56b5ce1cc7451efedc8fc41f5e1328df7aebc100e393430de5d.jpg)

<div style="text-align: center;">Fig. 3. Adjacent facets of the triangulated surface mesh project to two triangles in the 2D texture map  T. Since the shared edge projects to distinct segments in the texture map, one must specify constraints that the texture elements along the shared edge be consistent. This is done here using seven linear equality constraints.</div>

随后通过双线性插值得到面部图像。将反射率与辐照度相乘，就能得出表面各点的外观表现。

纹理（反照率变化）可以通过两种方式来处理。第一种方式是为网格表面的每个顶点指定一个RGB三元组，然后基于这些顶点在网格面上进行线性插值。这种方法概念上很简单，但计算效率较低，因为需要大量小面片才能精确模拟平滑表面的辐射效果。第二种方法在计算机图形学中被广泛应用，即把RGB反射率（纹理）图像映射到表面上。该技术能在面片数量相对较少的情况下保留细节。

与计算机视觉中以往使用带纹理模型的方法（例如[^20]）不同，我们的公式（第3节）要求表面反射率在整個表面上保持连续。通过对离散化后的纹理进行双线性插值，我们确保了每个面片内反射率的连续性。然而，由于手部属于封闭曲面，无法在整个表面与二维平面之间定义连续的双射映射。因此，没有简单的方法能确保纹理在手部整个表面上的连续性。

遵循[^21]和[^22]的做法，我们采用基于贴片的纹理映射技术。每个面片对应纹理图中的一个三角形区域，这些三角形尺寸统一且顶点坐标为整数。如图3所示，索引为奇数的面片被映射到正方形对角线左上方的三角形区域，索引为偶数的面片则被映射到右下方的三角形区域。由于我们使用双线性插值，需要在对角线边缘之外预留一些纹理像素（纹素），以处理坐标非整数的点（见图3）。因此，对于3D网格边缘上的点而言，这种表示方式是冗余的：3D网格的边缘属于两个相邻面片，所以在纹理图中会出现两次；而每个顶点平均会出现六次（根据网格的欧拉特性）。为此我们引入了约束条件，以确保纹理图中映射到同一3D网格边缘或顶点的各点之间的RGB值保持一致。通过强制这种一致性，我们也保证了纹理在网格边缘处的连续性。

采用双线性纹理映射时，可以通过两组线性约束来确保一致性。第一组约束规定纹理图中坐标均为整数的网格边缘上的点，其强度值必须保持一致。第二组约束要求纹理沿纹理图中三角形面片的边缘进行线性插值。只要纹理沿每条边缘的插值都是线性的，且纹理图中坐标均为整数的点的强度值保持一致，那么每条边缘上的所有点就能实现映射一致性。由于双线性插值在垂直和水平边缘上本身就是线性的，因此在定义第二组约束时只需考虑对角线边缘即可。设T表示离散纹理图像，$(i+1, j)$和$(i, j+1)$分别表示纹理图中三角形面片对角线边缘上相邻的两个坐标为整数的点。利用双线性纹理映射，边缘上坐标非整数的点$(i+1-\lambda, j+\lambda), \lambda \in (0, 1)$的纹理强度可由下式给出：

 $$ \lambda(1-\lambda)(T_{i,j}+T_{i+1,j+1})+\lambda^{2}T_{i,j+1}+(1-\lambda)^{2}T_{i+1,j}. $$

对该表达式关于$\lambda$求两次导数后可以发现：当且仅当满足下述线性约束时，该表达式才关于$\lambda$呈线性。

 $$ T_{i,j}+T_{i+1,j+1}=T_{i+1,j}+T_{i,j+1}. $$

第二组约束是针对对角线边缘上的那些点。最后，用T表示有效纹理的线性子空间，即其RGB值满足一系列线性约束，以确保表面上的连续性。

给定网格几何结构、光源以及纹理贴图，就可以确定每个二维图像点x处的模型图像。首先，与光线追踪类似，我们确定三角化表面网格与从相机中心出发并穿过x点的光线之间的第一个交点。如果不存在交点，则x处的图像由背景决定。每个可见交点的外观是根据光源以及可见面顶点处的信息计算得出的。实际上，图像是在离散网格上计算的，借助三角形光栅化技术结合深度缓冲区，就能高效地完成图像合成。

当背景是静态的时，我们直接假定已有现成的背景图像。否则，我们会采用一个概率模型，该模型中背景像素颜色是从背景密度$p_{bg}(\cdot)$中抽取的（例如，可以通过用户交互在第一帧中学习得到该密度）。

至此，手部图像的生成过程定义完毕。令$I_{\text{syn}}(\mathbf{x}; \theta, L, T)$表示在给定姿态$\theta$、纹理T以及光源L下，点x处包含手部与背景的合成图像。

### 2.2 目标函数

我们的任务是估计能够生成与观测图像$\theta$最匹配的合成图像$I_{syn}()$的姿态参数$I_{obs}()$、纹理T以及光源L。我们的目标函数基于这两幅图像之间的简单差异度量。首先，定义残差图像R为

---

![Image](images/ae3e528234a4e6a1554b1753c794f97fb7eaf0c83b6e2c121d94c7edee8c8829.jpg)

<div style="text-align: center;">Fig. 4. The observed image  $I_{obs}$, the synthetic image  $I_{syn}$, and the residual image R.</div>

 $$ R(\mathbf{x};\theta,T,L)=\rho(I_{s y n}(\mathbf{x};\theta,L,T)-I_{o b s}(\mathbf{x})), $$

其中$\rho$可以是传统的平方误差函数，也可以是鲁棒误差函数，比如[^23]中使用的Huber函数。图4展示了一对观测图像与合成图像及其对应的残差图像示例。在我们的实验中，选择$\rho$为常规的平方误差函数，因此隐含地假设像素误差服从独立同分布的高斯分布。但与这一独立同分布假设相反，实际中相邻误差往往高度相关，这主要是由于模型的简化所致。不过，随着生成模型质量的提升——这也是本文的目标——这些相关性会变得不那么显著。

当背景通过假设的颜色分布$p_{bg}$来概率性地定义时，我们将图像域$\Omega$（$\mathbb{R}^2$的一个连续子集）划分为由给定姿态下的手部所覆盖的区域$S(\theta)$，以及背景区域$\Omega\backslash S(\theta)$。此时，残差可以用背景颜色密度表示为

 $$ R(\mathbf{x};\theta,L,T)=\left\{\begin{aligned}&\rho\big(I_{s y n}(\mathbf{x};\theta,L,T)-I_{o b s}(\mathbf{x})\big),\forall\mathbf{x}\in S(\theta)\\ &-\log p_{b g}\big(I_{o b s}(\mathbf{x})\big),\forall\mathbf{x}\in\Omega\backslash S(\theta).\end{aligned}\right. $$

图11（第3行和第6行）展示了以这种方式计算的似然函数的残差函数示例。

我们的差异度量E定义为残差误差在图像域$\Omega$上的积分：

 $$ E(\theta,T,L)=\int_{\Omega}R(\mathbf{x};\theta,L,T)\;d\mathbf{x}. $$

这种简单的差异度量方式比那些结合了光流、轮廓或检测边缘与合成边缘之间的倒角距离等异质线索的复杂度量方式更可取。首先，它避免了针对不同线索调整权重的问题，而这往往颇具挑战性；尤其是，不同线索误差的简单加权和会隐含地假设（通常并不成立）不同线索中的误差是统计独立的。其次，公式(5)中的度量方式无需通过阈值设定来预先判断边缘的相关性，也无需通过分割来确定轮廓区域，更无需确定光流中的不连续点位置。第三，公式(5)是关于$\theta$的连续函数；而基于边缘距离的度量方式（如对称倒角距离）则不具备这一特性。

通过改变积分域，手部区域内的残差积分可以被重新表示为对表面可见部分的连续积分。随后，它可以通过对可见面中心点的有限加权和来近似。大多数关于3D可变形模型的文献都采用了这种方法，并假设每个面的可见性是二值的（完全可见或完全隐藏），且能从深度缓冲区中获取相关信息（例如，参见[^20]）。遗憾的是，此类离散化处理方式会在$\theta$变化时导致近似函数出现不连续性。当表面发生移动或形变时，遮挡边界附近面的可见状态很可能发生改变，进而造成残差之和的不连续。这对基于梯度的优化而言是个难题。为了保持离散化函数相对于$\theta$的连续性，可见性状态不应是二值的，而应是实值且平滑变化的——即随着表面被遮挡或显露出来而平滑过渡。实践中，这种处理方式实现起来颇为繁琐，且梯度的推导也很复杂。因此，与多数关于3D可变形模型的文献不同，我们在推导泛函梯度的表达式时，保留了连续图像域中的表述形式。

为了估计每个新图像帧的姿态$\theta$和光照参数L，或是更新纹理T，我们需寻找目标函数的最小值。在跟踪过程中，优化分为两步：首先，我们针对$\theta$和L最小化公式(5)，从而将模型与新图像对齐；接着，我们针对纹理T最小化误差函数，以得到最优的纹理更新结果。

## 3 参数估计

同时估计姿态参数$\theta$和光源参数L是一项极具挑战性的非线性、非凸、高维优化问题。全局优化在此场景下并不现实，因此我们采用高效的拟牛顿局部优化方法。这就要求我们能够高效计算出公式(5)中E关于$\theta$和L的梯度。

E关于光照参数L的梯度很容易推导得出。合成图像$I_{syn}()$和残差$R()$都是光照参数L的平滑函数。因此，我们可以交换微分与积分的顺序，从而得到相应结果。

 $$ \begin{align*}\frac{\partial E}{\partial L}(\theta,L,T)&=\frac{\partial}{\partial L}\int_{\Omega}R(\mathbf{x};\theta,L,T)d\mathbf{x}\\&=\int_{\Omega}\frac{\partial R}{\partial L}(\mathbf{x};\theta,L,T)d\mathbf{x}.\end{align*} $$

通过对生成过程应用链式法则，计算$\frac{\partial R}{\partial L}(\mathbf{x};\theta,L)$的过程十分简单。

求能量E关于姿态参数$\theta$的梯度并非易事。在遮挡边界处，残差函数是不连续的，因此情况尤为如此。结果就是，对于这部分点而言，$R(x;\theta,L,T)$不可微分，所以我们无法交换求导与积分的顺序。不过，尽管残差不连续，能量函数在$\theta$上仍然保持连续性。因此，E关于$\theta$的梯度可以解析地确定。其推导过程将是下一节的重点。

---

![Image](images/ad079933363fe71817886bfa72bbd8327c11da953b12a35f01ee76f568f32ab2.jpg)

![Image](images/993122051a9ff9172d41e88032ba6ad18246fdacf122f2fc2276502be2e8efa1.jpg)

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

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

<div style="text-align: center;">Fig. 5. (a) Example of a segment crossing the occlusions boundary  $\Gamma_{\theta}$. (b) A curve representing the residual along this segment.</div>

### 3.1 关于姿态和光照的梯度

上述生成过程的设定十分讲究，目的是确保场景辐射在手部区域是连续的。我们进一步假设背景和观测图像已知且连续。因此，除了自遮挡以及由$\Gamma_{\theta}$表示的遮挡边界外，残差误差在空间上处处连续。

#### 3.1.1 一维示意图

为了阐明梯度推导背后的核心思路，我们首先考虑一条穿过自遮挡边界的线段上的二维残差函数，如图5所示。在这条线段上，除自遮挡位置$\beta$外，残差函数处处连续。据此，我们将线段上的残差分为两部分：边界左侧的残差$r_0$和右侧的残差$r_1$：

 $$ r(x,\theta)=\left\{\begin{array}{l}r_{0}(x,\theta),x\in[0,\beta(\theta)]\\ r_{1}(x,\theta),x\in(\beta(\theta),1].\end{array}\right. $$

相应地，能量就是左侧$r_{0}$的积分与右侧$r_{1}$的积分之和：

 $$ E=\int_{0}^{\beta(\theta)}r_{0}(x,\theta)d x+\int_{\beta(\theta)}^{1}r_{1}(x,\theta)d x. $$

需要注意的是，$\beta$是姿态参数$\theta$的函数。直观来讲，当$\theta$发生变化时，积分E会受到两方面的影响。首先，残差函数$r_0$和$r_1$会发生变化，比如由于阴影变化所致。其次，边界位置$\beta$也会移动。

从数学角度看，E关于$\theta$的全导数由两项组成：

 $$ \frac{d E}{d\theta}=\frac{\partial E}{\partial\theta}+\frac{\partial E}{\partial\beta}\frac{\partial\beta}{\partial\theta}. $$

第一项是在$\theta$固定的情况下，E关于$\beta$的偏导数，它对应于除不连续点外所有区域的残差导数积分：

 $$ \frac{\partial E}{\partial\theta}=\int_{[0,1]\backslash\{\beta\}}\frac{\partial r}{\partial\theta}(x,\theta)\;d x. $$

式(9)中的第二项取决于E关于边界位置$\beta$的偏导数。利用微积分基本定理，这一项可简化为遮挡边界两侧残差之差，再乘以边界位置$\beta$对姿态参数$\theta$的导数。由式(8)可知：

 $$ \frac{\partial E}{\partial\beta}\frac{\partial\beta}{\partial\theta}=\left[r_{0}(\beta,\theta)-r_{1}(\beta,\theta)\right]\frac{\partial\beta}{\partial\theta}. $$

虽然残差$r(x,\theta)$在$\theta$处关于$\beta$是不连续的函数，但能量E仍是$\theta$的可微函数。

#### 3.1.2 一般的二维情形

二维情况是三维示例的推广。与一维情况类似，残差图像在几乎所有地方都是空间连续的，只有遮挡边界上的点除外。在这些点上，手部会遮挡背景或其他手部部位（见图5a）。设$\Gamma_{\theta}$为边界点集合，即图像域中深度不连续性的支撑集。由于我们处理的是三角化表面网格，因此$\Gamma_{\theta}$可以分解为一组线段。更确切地说，$\Gamma_{\theta}$是三角化表面中所有可见边缘投影的并集，这些边缘将朝前面的面与朝后面的面分隔开。对于$\Gamma_{\theta}$中的任意点x，相应的边缘投影会在局部将图像域划分为两个$\Omega\backslash\Gamma_{\theta}$子区域，即遮挡侧和近遮挡侧（见图5）。

沿着$\Gamma_\theta$，残差图像$R()$关于x和$\theta$是不连续的。为了推导$\nabla E$，我们需要定义一个新的残差$R^+(\theta,x)$，它通过连续性将$R()$扩展到遮挡点$\Gamma_\theta$上。具体做法是在$R()$中复制来自近遮挡侧的$\Omega\backslash\Gamma_\theta$内容。通过构造$R^+$，我们恢复了边界点附近被遮挡面的残差。给定边界线段上的一个点x，其外法向量为$\hat{n}_{\Gamma_\theta}(\mathbf{x})$（即如图5a所示朝向近遮挡侧），我们定义：

 $$ R^{+}(\theta,\mathbf{x})=\lim_{k\to\infty}\biggl(R\biggl(\theta,\mathbf{x}+\frac{\hat{n}_{\Gamma_{\theta}}(\mathbf{x})}{k}\biggr)\biggr). $$

可以将$R^+(\theta, \mathbf{x})$在$\Gamma_\theta$上的取值理解为：如果近遮挡表面可见而非遮挡表面可见时我们所得到的残差。

当姿态参数$\theta_j$以无穷小步长$d\theta_j$变化时，x附近的遮挡轮廓$\Gamma_\theta$也会以无穷小步长$v_j(\mathbf{x})$ $d\theta_j$移动（关于边界速度<http://doi.ieeecomputersociety.org/10.1109/TPAMI.2011.33>的定义，可参见附录中的式(7)，该附录可在计算机协会数字图书馆的$v_j$中找到）。此时，x附近的残差会出现不连续性，在$R^+(\theta,\mathbf{x})$和$R(\theta,\mathbf{x})$之间跳跃。不过，发生这种跳跃的表面积也是无穷小的，且与$v_j(\mathbf{x})\hat{n}_{\Gamma_\theta}(\mathbf{x})$ $d\theta_j$成正比。这种跳跃会导致在图像域$\Omega$上积分后E产生无穷小的变化。

与一维情况类似，可以用两项来表示泛函梯度$\nabla_{\theta}E \equiv \left( \frac{\partial E}{\partial \theta_1}, \ldots, \frac{\partial E}{\partial \theta_n} \right)$：

 $$ \begin{align*}\frac{\partial E}{\partial\theta_{j}}=&\int_{\Omega\backslash\Gamma_{\theta}}\frac{\partial R}{\partial\theta_{i}}(\mathbf{x};\theta,L,T)d\mathbf{x}\\&-\int_{\Gamma^{\theta}}\underbrace{\left[R^{+}(\mathbf{x};\theta,T,L)-R(\mathbf{x};\theta,L,T)\right]\hat{n}_{\Gamma_{\theta}}(\mathbf{x})}_{f_{or}(x)}v_{i}(\mathbf{x})d\mathbf{x}.\end{align*} $$

第一项反映了残差在$\Omega\backslash\Gamma_\theta$中平滑变化所引起的能量变化。它对所有位置处残差R关于$\theta$的偏导数进行积分，但遮挡轮廓$\Gamma_\theta$处的偏导数无定义，因此不予考虑。本文于2026年10月19日14:15:34 UTC从IEEE Xplore发布，受相关限制约束。

---

要在$\frac{\partial R}{\partial \theta_i}$上对$\Omega \setminus \Gamma_\theta$进行解析推导，需要对定义生成过程的函数应用链式法则。

公式(13)中的第二项描述了由于遮挡轮廓移动而产生的能量变化。它通过对遮挡轮廓两侧的残差之差进行积分，再乘以姿态变化时边界的法向速度来得到。这里，$f_{oc}$是一个向量场，其方向垂直于曲线，大小与曲线两侧残差之差成正比。这些遮挡力解释了当$\theta$变化时遮挡轮廓的位移现象。它们与二维活动区域所产生的力类似[^24]，这是因为我们在计算泛函梯度时保持了图像域$\Omega$的连续性。由于表面被三角剖分，$\Gamma_{\theta}$就对应一组图像线段，因此我们可以将公式(13)改写成类似于[^25]中针对活动多边形的梯度流形式。我们的遮挡力也与多视图重建中的梯度流具有相似性[^26]、[^27]，其中某些项用于描述遮挡边界处可见性的变化。在他们的公式中，重建的表面并未附加阴影和纹理信息，这导致了推导过程中的显著差异。

#### 3.1.3 计算$\nabla_{\theta}E$

对E的自然数值近似方法是先在离散像素位置对R进行采样，然后再求和，即：

 $$ E(\theta,T,L)\approx\tilde{E}(\theta,T,L)\equiv\sum_{\mathbf{x}\in\Omega\cap\mathbb{N}^{2}}R(\mathbf{x};\theta,L,T). $$

类似地，人们也可以对公式(13)中梯度$\nabla_{\theta}E$的两项进行离散化处理。对$\Omega\backslash\Gamma_{\theta}$的积分可以通过在$\Omega\cap\mathbb{N}^{2}$内的图像像素上求和来近似；而沿轮廓$\Gamma_{\theta}$的积分则可以通过在每个线段上选取固定数量的点来采样近似。设$\nabla_{\theta}E$为通过这种方式得到的梯度的数值近似。

不过这种方法存在几个实际问题。首先，近似梯度并非近似目标函数的精确梯度，即$\nabla_{\theta}E \neq \nabla_{\theta}E$。大多数基于梯度的迭代优化方法需要直接数值评估目标函数，以确保每次迭代中能量都会下降。这类方法要求梯度与目标函数保持一致。

另一种思路是尝试计算近似目标函数的精确梯度，即$\nabla \vec{E}$。遗憾的是，由于遮挡边缘处的混叠现象（也就是公式(14)中采样产生的离散噪声），$\vec{E}(\theta, T, L)$并非$\theta$的连续函数。例如，当遮挡边界穿过像素中心时就会出现不连续性。由于这些不连续性，无法计算出精确的导数，数值差分近似结果很可能出错。

### 3.2 能量E的可微离散化

为了获得可精确求导的能量E的数值近似，我们考虑采用抗锯齿技术对E进行近似。这样得到的能量离散化结果记为$\bar{E}$，它在$\theta$上是连续的，且可以利用链式法则以封闭形式求导，得到$\nabla_{\theta}\bar{E}$。这种抗锯齿技术的灵感来源于不连续边缘过绘法[^28]。我们在此用它来构造一个新的残差函数，记为$\bar{R}$。

抗锯齿技术会逐渐混合遮挡边界两侧的余差。对于靠近遮挡边缘片段的点x，我们会计算出一个与到该片段的有符号距离成比例的混合权重：

 $$ w(\mathbf{x})=\frac{(\mathbf{x}-q(\mathbf{x}))\cdot\hat{n}}{m a x(|\hat{n}_{x}|,|\hat{n}_{y}|)}, $$

其中 $q(\mathbf{x})$ 是附近片段上的一个点，$\hat{n} = (\hat{n}_x, \hat{n}_y)$ 是该片段的单位法向量（指向边界的近遮挡侧）。将有符号距离除以 $max(|\hat{n}_x|, |\hat{n}_y|)$ 只是为了方便，这样我们就能根据式(13)中定义的遮挡力来解释梯度 $\nabla_\theta \bar{E}$ 的各项含义。详细的推导过程见附录A，该附录可在计算机协会数字图书馆的 <http://doi.ieeecomputersociety.org/10.1109/TPAMI.2011.33> 中查看。

设图像片段 $\widetilde{V}_m\widetilde{V}_n$ 由端点 $\widetilde{V}_m$ 和 $\widetilde{V}_n$ 定义。对于 $\widetilde{V}_m\widetilde{V}_n$，我们定义一个抗锯齿区域，记为 $\mathcal{A}$，它是遮挡侧靠近该片段的一组点（详见附录中的图1，该图可在计算机协会数字图书馆的 <http://doi.ieeecomputersociety.org/10.1109/TPAMI.2011.33> 中查看），也就是那些投影到该片段上且权重 $w(\mathbf{x})$ 落在[0,1)区间内的点：

 $$ \mathcal{A}=\{\mathbf{x}\in\mathbb{R}^{2}|w(\mathbf{x})\in[0,1),~q(\mathbf{x})\in\overline{{\bar{V}_{m}\bar{V}_{n}}}\}. $$

对于该区域内的每个点，我们将抗锯齿余差定义为遮挡侧和可见侧余差的线性组合：

 $$ \begin{aligned}\bar{R}(\mathbf{x};\theta,L,T)&=w(\mathbf{x})R(\mathbf{x};\theta,L,T)\\&\quad+(1-w(\mathbf{x}))R(q(\mathbf{x});\theta,L,T).\end{aligned} $$

这种混合并非相对于线段对称，而是偏向遮挡侧。这一特性使得我们可以利用Z缓冲区来处理遮挡问题（详情见 [^28]）。对于所有位于抗锯齿区域外的点，我们令 $\bar{R}(\mathbf{x};\theta,L,T)=R(\mathbf{x};\theta,L,T)$。

利用这个抗锯齿余差图像 $\bar{R}$，我们定义了目标函数的新近似形式，记为 $\bar{E}$：

 $$ \bar{E}(\theta,T,L)=\sum_{\mathbf{x}\in\Omega\cap\mathbb{N}^{2}}\bar{R}(\mathbf{x};\theta,L,T). $$

这种抗锯齿技术使得 $\bar{R}$ 以及相应的 $\bar{E}$ 即使沿遮挡边界也相对于 $\theta$ 保持连续。

其他抗锯齿方法还有过采样 [^29] 或A缓冲 [^30]。当遮挡边界穿过像素中心时，这些方法或许能减小余差跳变幅度——随着 $\theta$ 的变化，这种跳变可能变得肉眼难以察觉——但余差在 $\theta$ 上仍不连续。我们在式(17)中采用的边缘重叠法确保了 $\bar{R}$ 以及相应的 $\bar{E}$ 相对于 $\theta$ 的连续性。

为了推导出 $\nabla_{\theta}\bar{E}$，我们利用链式法则对 $\bar{R}$ 求导。

 $$ \nabla_{\theta}\bar{E}=\sum_{\mathbf{x}\in\Omega\cap\mathbb{N}^{2}}\frac{\partial}{\partial\theta}\bar{R}(\mathbf{x};\theta,L,T). $$

采用导数乘法的逆向排序方式（在算法微分中称为伴随编码），2026年10月19日14时15分34秒UTC，源自IEEE Xplore。受相关限制约束。

---

结合文献 [^31]）中的结果，我们得到梯度的评估结果，其计算成本与目标函数的评估成本相当。

$\bar{E}$关于$\theta$的梯度，即$\nabla_{\theta}\bar{E}$，是解析解$\nabla_{\theta}E$的一种可能的离散化形式。对反走样过程关于$\theta$求导后得到的各项会沿边缘求和，这些项可被理解为式(13)中遮挡力的一种可能离散化形式。相关解释见附录A，该附录可在计算机协会数字图书馆的<http://doi.ieee.computersociety.org/10.1109/TPAMI.2011.33>中查看。这种方法相较于3.1.3节讨论的方法的优势在于：$\nabla_{\theta}\bar{E}$正是$\bar{E}$的精确梯度，且两者均可进行数值计算。这还使得人们能够通过与$\nabla_{\theta}\bar{E}$上的差商直接比较，来验证所得到的梯度$\bar{E}$的正确性。差商虽然容易产生数值误差且效率较低，但有助于发现梯度计算中的错误。

### 3.3 模型配准

#### 3.3.1 序列二次规划

在跟踪过程中，通过最小化近似目标函数$\bar{E}$，将手部模型与每一帧新图像进行配准。设$P = [\theta, L]^T$包含未知的姿态和光照参数，假设我们通过外推前一帧的估计值来获得初始猜测值。随后，我们在一组用于约束关节限制的线性约束条件下，通过最小化关于P的$\bar{E}$来优化姿态和光照参数的估计值。

 $$ \tilde{P}=\underset{P}{a r g m i n}\bar{E}(P)s.t.A P\leq b $$

利用目标函数的梯度，我们采用序列二次规划方法$\tilde{E}(P)$来最小化[^32]，该方法采用了改进的Broyden-Fletcher-Goldfarb-Shanno（BFGS）海森矩阵近似算法。这使得我们能够将广为人知的BFGS拟牛顿法与直线型关节限制约束相结合。主要包含四个步骤：

1. 利用二次规划来确定下降方向。该过程使用能量梯度以及基于改进BFGS算法得到的海森矩阵近似$\tilde{H}_{t}$（详见附录B，该附录可在计算机协会数字图书馆的<http://doi.ieeecomputersociety.org/10.1109/TPAMI.2011.33>中查看）：

   $$ \begin{aligned}\Delta_{P}&=\underset{\Delta_{P}}{argmin}\Biggl(\frac{d\bar{E}}{d P}(P_{t})\Delta_{P}+\frac{1}{2}\Delta_{P}^{t}\tilde{H}_{t}\Delta_{P}\Biggr)\\&s.t.A(P_{t}+\Delta_{P})\leq b\end{aligned} $$

2. 随后沿该方向执行线搜索：

   $$ \lambda^{*}=\underset{\lambda}{a r g m i n}\bar{E}(P_{t}+\lambda\Delta_{P})\quad s.t.\lambda\leq1. $$

不等式$\lambda \leq 1$可确保我们始终处于线性约束子空间中。

3. 更新姿态和光照参数。

   $$ P_{t+1}=P_{t}+\lambda^{*}\Delta_{P}. $$

4. 利用改进的BFGS公式更新近似海森矩阵$\tilde{H}_{t+1}$。

重复上述步骤直至收敛。

为了用良好的初始猜测值来启动搜索，我们首先沿着由前两个姿态估计值线性外推得到的直线执行一维搜索。此次一维搜索中得到的每个局部最小值都可作为SQP方法在完整姿态空间中的起点。通常只能找到一个起始点，但如果存在多个起始点，则会比较SQP方法的结果并选取最优解。一旦模型适配到新帧，我们便会更新纹理，该纹理会在下一帧的配准过程中被使用。

### 3.4 纹理更新

将图像映射到静态3D表面有多种方法。或许最简单的方法是：针对每个3D表面点，依次执行以下操作：1）计算其投影图像坐标；2）通过将其深度与深度缓冲区中的值进行比较来判断其可见性；3）若该点可见，则对图像坐标处的图像强度进行插值，再通过用插值后的强度除以该点的模型辐照度来恢复反照率。由于多种原因，这种方法并不适用于我们的方案。首先，我们希望为手的隐藏区域建模纹理，因为这些区域在下一帧中可能会变得可见。其次，我们的纹理更新机制必须避免背景色的逐渐污染，或是手部不同部位之间的相互污染。

在此，我们将纹理估计表述为最小化与跟踪任务所用相同的目标泛函，同时结合平滑正则化项（该正则化项与姿态和光照无关）。也就是说，对于纹理T，我们对其进行最小化运算。

 $$ E_{t e x t u r e}(T)=\bar{E}(\theta,L,T)+\beta E_{s m}(T), $$

约束条件是T需满足确保表面连续性的线性约束，即 $\in \mathbb{T}$（详见第2.1节）。为简化起见，平滑度量被定义为纹理中相邻像素（纹素）之间差值的平方和。也就是：

 $$ E_{s m}(T)=\sum_{i}\sum_{j\in\mathcal{N}_{T}(i)}\|T_{i}-T_{j}\|^{2}, $$

其中 $\mathcal{N}_T(i)$ 表示纹素i的邻域。在更新纹理时，我们选择 $\rho$（它出现在R的定义中，因此也涉及 $\bar{R}$ 和 $\bar{E}$）采用截断二次函数，而非用于模型拟合的二次函数。这有助于在手模型拟合不够精确时，避免背景色污染手部纹理。利用迭代加权最小二乘法，可以高效地对函数 $E_{\text{texture}}(T)$ 进行最小化运算，其中 $T \in \mathbb{T}$。平滑项能够有效地将颜色扩散到那些不直接参与成像的纹素上，这些纹素要么属于被遮挡的部分（见图6），要么是由于纹理混叠现象导致的。为提高鲁棒性，在计算 $\Omega$ 时，我们还会从积分域 $E(\theta, L, T)$ 中移除遮挡边界附近的像素；同时，我们也会限制第一帧中的纹理与后续纹理估计值之间的差异。

---

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

<div style="text-align: center;">Fig. 6. Observed image and extracted texture mapped on the hand under the camera viewpoint and two other viewpoints. The texture is smoothly diffused into regions that are hidden from the camera viewpoint.</div>

![Image](images/2c196d16913755b9a5287f3244e8af8dbc682c0b0edfeea4c155e413ca0f0a73.jpg)

<div style="text-align: center;">Fig. 7. Estimation of the pose, lighting, and morphological parameters in the first frame. (a) The input image, the synthetic image given rough manual initialization, and its corresponding residual. (b) The result obtained after convergence.</div>

## 4 实验结果

我们将所提出的手部姿态跟踪方法应用于具有大量关节运动和遮挡现象的序列，以及用于与最先进的手部跟踪器进行对比的两个序列（参见 [^14]）。最后，我们还报告了在合成序列以及获取了真实数据的真实序列上的定量结果。虽然计算需求取决于图像分辨率，但对于 $640 \times 480$ 分辨率的图像，我们在C++和Matlab环境下实现的算法在2 GHz工作站上每帧的处理时间约为40秒。

### 4.1 初始化

第一帧需要有一个良好的姿态初始猜测值。人们可以使用判别性方法来获取粗略的初始值（例如，[^3]）。不过由于这超出了我们当前方法的范围，我们便直接假定已有先验知识。具体而言，我们假设手部在初始化时大致与图像平面平行（见图7）。我们还假设手部的颜色（反照率）在初始状态下于整个手部表面保持一致，因此初始的手部外观仅由姿态和光照决定。RGB手部颜色、手部姿态、形态参数以及光源信息会利用拟牛顿法同时估算出来（见图中第2行，见图7）（参见视频1，该视频可在计算机协会数字图书馆的<http://doi.ieeecomputersociety.org/10.1109/TPAMI.2011.33>中查看）。背景图像或其直方图也由用户提供。一旦在第一帧中估算出形态参数，它们在后续序列中便保持固定不变。

### 4.2 手指弯曲与遮挡力

在第一个序列中（见图8和视频2，可在计算机协会数字图书馆的<http://doi.ieee.computersociety.org/10.1109/TPAMI.2011.33>中查看），每个手指依次弯曲，最终会遮挡其他手指以及手掌。背景图像是静态的，获取自手部不可见的帧。

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

<div style="text-align: center;">Fig. 8. Improvement due to self-occlusion forces: Rows 2-4 are obtained using our method. Rows 5-7 are obtained by summing the residual on the triangulated surface. Each row shows, from top to bottom: 1) the observed image, 2) the final synthetic image, 3) the final residual image, 4) a synthetic side view at 45 degrees, 5) the final synthetic image with residual summed on surface, 6) the residual for visible points on the surface, and 7) the synthetic side view.</div>

该背景图像获取自手部不可见的帧。每帧包含$640 \times 480$个像素。需要注意的是，尽管我们在目标函数中并未使用任何与边缘相关的显式术语，但合成手部图像的边缘仍与输入图像的边缘相匹配。合成图像与观测图像中的边缘不对齐时，会在这些边缘之间的区域产生较大的残差，进而对手部施加指向可减小这种不对齐程度的力，从而形成遮挡效果。

为了说明遮挡力带来的改进效果，我们在计算能量梯度时直接去掉遮挡力项。结果就是该算法无法长时间追踪手部运动。

将式(18)中的能量最小化过程与2.2节所述的方法进行对比也很有意思，后者是对3D网格表面上的误差进行求和。这些3D点均匀分布在表面上，且在拟牛顿法的每一步中都会计算它们的二进制可见性。为了适应求和域的变化（从图像变为表面），每个点对应的误差会按照3D三角形面与其投影之间的表面积比值的倒数来加权。为与初始代价函数保持一致，我们也会将背景相关的误差纳入考量。这一设定还防止了手部远离相机而导致其投影缩小的情况。在计算能量梯度时，我们会加入手部与背景之间的遮挡力，以解释背景可见性的变化。理想情况下，两种方法计算出的目标函数应相等；它们之间的差异受积分离散化所产生的误差限制。对于这两种方法，我们最多分别执行100次迭代，这通常足以实现收敛。

---

![Image](images/906920fba9c6869efd0a960a0c1dc4f812e57e3e3552826d67384b9644bee9b4.jpg)

<div style="text-align: center;">Fig. 9. Recovery from failure of the sum-on-surface method (Section 4.2) by our method with occlusion forces.</div>

该点的权重由三维三角形面与其投影之间的表面积比值的倒数决定。为了与初始代价函数保持一致，我们也会将背景相关的误差纳入考量。这一设定还防止手部从摄像头前退缩，从而避免其投影缩小。在计算能量梯度时，我们会考虑手部与背景之间的遮挡力，以反映背景可见性的变化。理想情况下，两种方法中计算出的目标函数应相等；它们之间的差异受积分离散化所产生的误差限制。对于这两种方法，我们最多使用100次迭代，这通常足以实现收敛。

![Image](images/d1df52b58bc2639fb97c703715a754f9f405cb2cddec6c6563431128b3d59454.jpg)

<div style="text-align: center;">Fig. 10. Sequence 2: Each row shows, (a)-(g): (a) the observed image, (b) the final synthetic image with limited pose space, (c) the final residual image, (d) the synthetic side view with an angle of 45 degrees, (e) the final synthetic image with full pose space, (f) the residual image, and (g) the synthetic side view.</div>

![Image](images/f580bd083bee39ec9050068b879800371e4737da8bad921e03932e24989e129c.jpg)

<div style="text-align: center;">Fig. 11. Sequence 3: Each row shows, from top to bottom: (a) the observed image, (b) the final synthetic image with limited pose space, (c) the final residual image, (d) the synthetic side view with an angle of 45 degrees, (e) the final synthetic image with full pose space, (f) the residual image, and (g) the synthetic side view.</div>

另一种方法能产生合理的结果（见图8，第5–7行），但当手指弯曲并遮挡手掌时，它无法恢复手指末端的精确位置。这一点在图8的第3列中尤为明显，其中小指的大部分区域缺失。我们的方法（第2–4行）则能在整个序列中给出准确的姿态估计。另一种方法之所以失败，是因为当手指弯曲时，手部/背景轮廓对手指尖端位置的提示作用有限。残余误差集中在合成手指的外端附近。只有依靠自遮挡力才能将手指拉向该区域。

我们进一步验证了我们的方法：将另一种方法估计出的手部姿态（见图8第3列，第5–7行）作为带遮挡力的跟踪器的初始状态（见图9及视频3，该视频可在计算机协会数字图书馆的<http://doi.ieeecomputersociety.org/10.1109/TPAMI.2011.33>处查看）。初始姿态及对应的残差显示在第1列。经过25次和50次迭代后的姿态分别显示在第2列和第3列，此时姿态已被正确恢复。

### 4.3 Stenger序列 [^14]

第二组和第三组序列（图10和图11，视频4和5，可在计算机协会数字图书馆的<http://doi.ieeecomputersociety.org/10.1109/TPAMI.2011.33>中查看）由Stenger提供，用于与他的最先进手部追踪器[^14]进行直接比较。这两组

---

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

![Image](images/a1597f489fe222697484cd6f1089d11341bd8094b2fcff90b982a86350cc109b.jpg)

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

<div style="text-align: center;">Fig. 12. Sequence 4: Two hands. The rows depict four frames of the sequence, corresponding to (a) the observed images, (b) images synthesized using the estimated parameters, and (c) the residual images.</div>

序列的尺寸均为$320 \times 240$像素。在序列2中，手部在旋转的同时会张开和闭合；在序列3中，食指保持指向状态，而手部则以刚性方式旋转。这两组序列都存在较大的帧间位移，因此很难为最小化过程给出良好的初始猜测值。此外，手指之间也经常相互接触。这颇具挑战性，因为我们的优化框架并不禁止手部各部位相互穿透。最后，序列3中的背景是动态的，因此能量函数是依据公式(4)来表达的。

出于计算方面的考虑，Stenger等人[^14]采用了一种状态空间降维方法，该方法针对每个序列单独进行调整（序列2采用8维降维——其中2维用于描述关节活动，6维用于描述整体运动；序列3则采用6维刚性运动降维）。我们分别在启用和禁用姿态空间降维的情况下测试算法（分别对应第2-4行和第5-7行）。在姿态空间降维中，会在成对或成组的关节角度之间定义线性不等式关系。这使我们能够在限制姿态空间的同时，保留足够的姿态变化自由度以实现精细配准。对于这些序列，我们在第一帧之后便不再更新纹理。采用姿态空间降维时，我们的姿态估计结果在定性上与Stenger的结果相似，不过随时间变化更为平滑。若不采用姿态空间降维，Stenger的技术在计算上会变得不切实际，而我们的方法仍能产出良好结果。无需进行离线训练以及针对特定序列的姿态空间降维，正是我们方法的主要优势。

### 4.4 遮挡

序列4（见图12和视频6，可在计算机协会数字图书馆中通过<http://doi.ieeecomputersociety.org/10.1109/TPAMI.2011.33>获取）展示了两只手的跟踪过程，其中左手会逐渐遮挡右手，导致明显的遮挡现象。系统会同时估计两只手的纹理和姿态参数，并且像处理单只手一样对一只手遮挡另一只手的情况进行建模。图12表明，由于光照和纹理模型的作用，合成图像与观测图像相似。即便存在较大程度的遮挡，第2行中右手的环指和小指仍能被正确识别。尽管双手会发生平移运动，我们在进行姿态估计时仍保留了每只手上的全部28个自由度。

### 4.5 自然图像上的定量性能评估

以往关于手部姿态跟踪的研究主要依赖定性演示来进行评估，而在此我们

![Image](images/19926d315874d1288d854222613f3b3e2365253bd446bfdb4cde8d0beee4a8f0.jpg)

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

![Image](images/c576106681cba837b5a39bb63a8bea338f6a6d5fd25e7a904e3e871197496170.jpg)

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

<div style="text-align: center;">Fig. 13. Distance between reconstructed and ground truth 3D locations: (a) the distances for each of the finger tips and (b) the distances for each of the metacarpophalangeal point and the palm basis.</div>

引入了对双目序列的定量测量方法（见视频7，可在计算机协会数字图书馆中通过<http://doi.ieeecomputersociety.org/10.1109/TPAMI.2011.33>获取），通过该序列我们可以在多个基准点上估算出3D真实值。

手部图像由两台同步校准的摄像机拍摄（见图14的第1行和第4行）。为了获取手部的3D真实测量数据，我们逐帧手动标记出手上的11个基准点位置，即每个指尖、每个掌指（MP）关节以及手掌基部。这些位置在图14的左上角图像中有所展示。根据两个视角下的这些2D位置，我们通过三角测量法得到3D真实值[^33]。

手部跟踪仅使用右侧图像序列进行。对于这11个基准点，我们分别计算3D真实值与重建手表面上的估计位置之间的距离。由于我们的模型全局尺寸未必与手的实际尺寸相符，因此在每一帧中我们都允许对估计出的手部应用简单的缩放变换，以最小化3D真实点与恢复位置之间的平方距离之和。缩放后各点的残余欧几里得误差如图13所示。

在340-360帧中，拇指尖的误差较大；240-350帧中，中指的误差较大。在这些时间段内，优化算法无法准确追踪中指（见图14第3列）和拇指（见图14第4列）的位置。尽管估计出的姿态与用于跟踪的右视图一致（见图14第3行第1-3列的残差），但50-150帧间拇指的误差也很大。这反映了单目估计深度的固有难题。图14的最后一行展示了从左摄像机视角合成的手部模型，其中的深度误差十分明显。

### 4.6 合成图像上的定量性能评估

我们使用合成图像来测量定量性能。该图像序列是用Poser©软件生成的（见视频8，可在计算机协会数字图书馆中通过<http://doi.ieeecomputersociety.org/10.1109/TPAMI.2011.33>获取）。Poser中使用的手部模型在三角化曲面和关节参数化方面与我们模型存在一定差异。为了获得逼真的序列，我们在渲染过程中启用了环境光遮蔽和阴影效果，而这些在我们跟踪器中并未被显式建模。图15的第1行展示了该序列中的几帧画面。

---

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

<div style="text-align: center;">Fig. 14. Binocular Video, which can be found in the Computer Society Digital Library at <http://doi.ieeecomputersociety.org/10.1109/TPAMI.2011.33>: The columns show frames 2, 220, 254, and 350. Each row, (a)-(e), depicts: (a) the image from the right camera, (b) the corresponding synthetic image, (c) the residual for the right view, (d) the observed left image (not used for tracking), and (e) the synthetic image seen from the left camera.</div>

在我们的跟踪器中对此进行了显式建模。图15的第1行展示了该序列中的几帧图像。

通过测量重建的3D表面与真实3D表面之间的距离，可以获得对估计姿态的定量评估。为了可视化手部表面可见部分上的深度误差，我们定义了距离图像$D_{s}$：

 $$ D_{s}(p)=\inf_{q\in S_{g}}\left(\Pi_{S_{s}}^{-1}(p),q\right)\text{if}p\in\Omega_{s},\quad\infty\text{otherwise}, $$

其中$S_g$表示真实的手部表面，$S_s$表示重建的手部表面，而$\Omega_s$则是图像平面上表面$S_s$的轮廓。此外，$\Pi_{S_s}^{-1}$是投影到表面$S_s$上的反投影函数，即该函数将$\Omega_s$中的每个点p映射到3D表面$S_s$上对应的点。为了应对上文提到的尺度不确定性问题，我们对重建的表面应用以相机光学中心为固定点的尺度变换，从而使$S_s$中可见点的平均深度等于$S_g$中可见点的平均深度，即：

 $$ \begin{array}{r}{\frac{\int_{p\in\Omega_{s}}\Pi_{S_{s}}^{-1}(p)\cdot\hat{z}d p}{\int_{p\in\Omega_{s}}1d p}=\frac{\int_{p\in\Omega_{s}}\Pi_{S_{g}}^{-1}(p)\cdot\hat{z}d p}{\int_{p\in\Omega_{g}}1d p},}\end{array} $$

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

其中$\hat{z}$与光轴对齐，$\Omega_g$是真实图像中的轮廓，而$\Pi_{S_g}^{-1}$则是投影到表面$S_g$上的反投影函数。

图15展示了我们的跟踪器以及[^10]中描述的手部跟踪器的性能。当前方法明显更加精确。

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

![Image](images/a1458045db97b9ea8f6b9932bb1c0cffd16c1891b1f1e2eedd1d4f1f43b17962.jpg)

<div style="text-align: center;">Fig. 15. Synthetic sequence: (a) Depicts individual frames. (b)-(e) Depict tracking results, i.e., (b) estimated pose, (c) residual image, (d) side view superimposing ground truth and the estimated surfaces, and (e) distance image  $D_{s}$. (f)-(i) Depict results obtained with the method in [^10], i.e., (f) generative image of [^10] at convergence, (g) log-likelihood per pixel according to [^10], (h) a side view superimposing ground truth and estimated surfaces, and (i) distance image  $D_{s}$.</div>

尽管在图15的第3行中模型轮廓与真实情况相符，但手部表面的误差仍然显著，例如中指和无名指部分。[^10]中的方法依赖于仅由手部轮廓决定的匹配代价，因此容易产生歧义。利用阴影和纹理信息可以解决其中的许多歧义。最后，图16绘制了两种方法下$D_{s}(p)$中各点的中位距离$\Omega_{s}$随时间的变化情况。同样可以看出，在大多数帧中我们的方法都优于[^10]中的方法。

## 5 讨论

我们提出了一种从单目图像中恢复3D手部姿态的新方法。具体而言，我们构建了一个详细的生成模型，该模型包含多边形网格以准确建模形状，并考虑了阴影效果。我们估计模型参数（即形状、姿态、纹理和光照），这些参数通过变分公式确定。为了妥善处理遮挡问题，文中提供了目标函数的严格数学表述。通过准牛顿技术，我们在各种图像序列上进行了估算，其中一些序列包含真实数据，所采用的手部模型具有28个关节自由度。

---

![Image](images/cc5d91e2486088ed878be22f7fe09fa2026b090afc85159b8e9ddcd248b935a5.jpg)

<div style="text-align: center;">Fig. 16. Comparison, through all frames of the video, of the median of the distances  $D_{s}(p)$ over the point in  $\Omega_{s}$ with our method and the one in [^10].</div>

该模型能够提供最先进的姿态估计结果，但未来仍需进一步工作，以将其扩展为可应用于长图像序列的全自动技术。具体而言，目前该方法在以下几种情况下仍容易收敛到较差的局部最小值，从而导致无法准确追踪手部姿态：

1. 偶尔会出现反射歧义，仅凭单个时刻的图像信息难以解决。

2. 手指的快速运动有时会降低我们基于前几帧简单外推所得的初始猜测的有效性。

3. 手指的快速运动有时会降低我们基于先前帧的简单外推法所得到的初始猜测结果的准确性。

4. 有时整个手指会被遮挡。这种情况下，手部该区域的姿态估计将缺乏图像依据。

5. 投射阴影仅被建模为纹理，因此着色模型很难很好地处理动态投射阴影（从上文的一些实验中便可看出这一点）。虽然建模投射阴影很有吸引力，但这会导致在合成阴影边界处出现不连续的残差函数$\theta$，而这类边界往往极其复杂，难以用解析方法处理。

6. 模型手指之间的碰撞或相互穿插会在离散化后的合成图像中沿交界线产生走样现象。

针对自碰撞导致的可见性变化，可以利用沿这些边界的作用力来处理，但目前尚未采用这种方法，因此在这些情况下优化过程可能无法收敛。一种解决方案是添加非线性非凸约束来防止碰撞发生。

当我们的优化算法无法追踪手部姿态时，我们缺乏重新初始化姿态或探索多种姿态假设的机制，比如利用判别性方法。典型手部运动的动力学模型，和/或典型手部姿态的隐式模型，或许也能帮助解决由歧义性和局部极小值引发的这些问题。最后同样重要的是，采用涉及手部部件间高阶交互作用的离散优化方法[^34]，并显式建模可见性[^35]，可能是提升计算效率、找到更优能量极小值的有前景的途径。

## 致谢

本研究得到了加拿大自然科学与工程研究理事会（NSERC）以及加拿大高等研究院（CIFAR）授予David J. Fleet的经费支持。Martin de La Gorce在本研究开展期间任职于巴黎中央理工学院。

## 参考文献

[^1]: S. Lu, D. Metaxas, D. Samaras, and J. Oliensis, "Using Multiple Cues for Hand Tracking and Model Refinement," Proc. IEEE CS Conf. Computer Vision and Pattern Recognition, vol. 2, pp. 443-450, 2003.

[^2]: A.O. Bălan, M. Black, H. Haussecker, and L. Sigal, "Shining a Light on Human Pose: On Shadows, Shading and the Estimation of Pose and Shape," Proc. IEEE Conf. Computer Vision, pp. 1-8, 2007.

[^3]: R. Rosales, V. Athitsos, L. Sigal, and S. Scarloff, "3D Hand Pose Reconstruction Using Specialized Mappings," Proc. IEEE Conf. Computer Vision, vol. 1, pp. 378-385, 2001.

[^4]: N. Shimada, "Real-Time 3-D Hand Posture Estimation Based on 2-D Appearance Retrieval Using Monocular Camera," Proc. IEEE ICCV Workshop Recognition, Analysis, and Tracking of Faces and Gestures in Real-Time Systems, pp. 23-30, 2001.

[^5]: V. Athitsos and S. Sclaroff, "Estimating 3D Hand Pose from a Cluttered Image," Proc. IEEE CS Conf. Computer Vision and Pattern Recognition, pp. 432-442, 2003.

[^6]: T.E. de Campos and D.W. Murray, "Regression-Based Hand Pose Estimation from Multiple Cameras," Proc. IEEE CS Conf. Computer Vision and Pattern Recognition, vol. 1, pp. 782-789, 2006.

[^7]: T. Heap and D. Hogg, "Towards 3D Hand Tracking Using a Deformable Model," Proc. Int'l Conf. Automatic Face and Gesture Recognition, pp. 140-145, 1996.

[^8]: J. Rehg and T. Kanade, "Model-Based Tracking of Self-Occluding Articulated Objects," Proc. IEEE Int'l Conf. Computer Vision, pp. 612-617, 1995.

[^9]: B. Stenger, P.R.S. Mendonça, and R. Cipolla, "Model-Based Hand Tracking Using an Unscented Kalman Filter," Proc. British Machine Vision Conf., vol. 1, pp. 63-72, 2001.

[^10]: M. de La Gorce and N. Paragios, "A Variational Approach to Monocular Hand-Pose Estimation," Computer Vision and Image Understanding, vol. 114, no. 3, pp. 363-372, 2010.

[^11]: E. Sudderth, M. Mandel, W. Freeman, and A. Willsky, "Visual Hand Tracking Using Nonparametric Belief Propagation," Proc. IEEE Conf. Computer Vision and Pattern Recognition Workshop, pp. 189-196, 2004.

[^12]: H. Ouhaddí and P. Horain, "3D Hand Gesture Tracking by Model Registration," Proc. Int'l Workshop Synthetic-Natural Hybrid Coding and 3D Imaging, pp. 70-73, 1999.

[^13]: Y. Wu, J.Y. Lin, and T.S. Huang, "Capturing Natural Hand Articulation," Proc. IEEE Int'l Conf. Computer Vision, pp. 426-432, 2001.

[^14]: B. Stenger, “Model-Based Hand Tracking Using a Hierarchical Bayesian Filter,” PhD dissertation, Univ. of Cambridge, Mar. 2004.

[^15]: M. Brubaker, L. Sigal, and D. Fleet, “Video-Based People Tracking,” Handbook of Ambient Intelligence and Smart Environments, Springer, 2009.

[^16]: A.O. Bălan, L. Sigal, M.J. Black, J.E. Davis, and H.W. Haussecker, "Detailed Human Shape and Pose from Images," Proc. IEEE Conf. Computer Vision and Pattern Recognition, pp. 1-8, 2007.

[^17]: M. Bray, E. Koller-Meier, L. Van Gool, and N.N. Schraudolph, "3D Hand Tracking by Rapid Stochastic Gradient Descent Using a Skinning Model," Proc. European Conf. Visual Media Production, pp. 59-68, 2004.

[^18]: N. Magnenat-Thalmann, R. Laperrière, and D. Thalmann, "Joint-Dependent Local Deformations for Hand Animation and Object Grasping," Proc. Graphics Interface '88, 1988.

[^19]: J.P. Lewis, M. Cordner, and N. Fong, "Pose Space Deformation: A Unified Approach to Shape Interpolation and Skeleton-Driven Deformation," Proc. ACM SIGGRAPH, pp. 165-172, 2000.

[^20]: V. Blanz and T. Vetter, “A Morphable Model for the Synthesis of 3D Faces,” Proc. ACM SIGGRAPH, pp. 187-194, 1999.

[^21]: M. Soucy, G. Godin, and M. Rioux, "A Texture-Mapping Approach for the Compression of Colored 3D Triangulations," The Visual Computer, vol. 12, no. 10, pp. 503-514, 1996.

授权许可使用范围仅限于：上海科技大学。下载时间为2026年10月19日UTC时间14:15:34，下载自IEEE Xplore平台。下载受相关限制。

---

[^22]: C. Hernández, “Stereo and Silhouette Fusion for 3D Object Modeling from Uncalibrated Images under Circular Motion,” PhD dissertation, Ecole Nationale Supérieure des Télécomm., May 2004.

[^23]: H. Sidenbladh, M.J. Black, and D.J. Fleet, "Stochastic Tracking of 3D Human Figures Using 2D Image Motion," Proc. European Conf. Computer Vision, vol. 2, pp. 702-718, 2000.

[^24]: N. Paragios and R. Deriche, "Geodesic Active Regions for Supervised Texture Segmentation," Proc. IEEE Int'l Conf. Computer Vision, vol. 2, pp. 926-932, 1999.

[^25]: G. Unal, A. Yezzi, and H. Krim, "Information-Theoretic Active Polygons for Unsupervised Texture Segmentation," Int'l J. Computer Vision, vol. 62, no. 3, pp. 199-220, 2005.

[^26]: P. Gargallo, E. Prados, and P. Sturm, "Minimizing the Reprojection Error in Surface Reconstruction from Images," Proc. IEEE Int'l Conf. Computer Vision, pp. 1-8, 2007.

[^27]: A. Delaunoy, E. Prados, P. Gargallo, J.-P. Pons, and P. Sturm, "Minimizing the Multi-View Stereo Reprojection Error for Triangular Surface Meshes," Proc. British Machine Vision Conf., 2008.

[^28]: P.V. Sander, H. Hoppe, J. Snyder, and S.J. Gortler, “Discontinuity Edge Overdraw,” Proc. Symp. Interactive 3D Graphics, pp. 167-174, 2001.

[^29]: F.C. Crow, "A Comparison of Antialiasing Techniques," IEEE Computer Graphics and Applications, vol. 1, no. 1, pp. 40-48, Jan. 1981.

[^30]: L. Carpenter, "The A-Buffer, an Antialiased Hidden Surface Method," ACM SIGGRAPH Computer Graphics, vol. 18, no. 3, pp. 103-108, 1984.

[^31]: A. Griewank, Evaluating Derivatives: Principles and Techniques of Algorithmic Differentiation. SIAM, 2000.

[^32]: A. Conn, N. Gould, and P. Toint, Trust-Region Methods. SIAM, 2000.

[^33]: R. Hartley and A. Zisserman, Multiple View Geometry in Computer Vision. Cambridge Univ. Press, 2000.

[^34]: N. Komodakis and N. Paragios, “Beyond Pairwise Energies: Efficient Optimization for Higher-Order mrls,” Proc. IEEE Conf. Computer Vision and Pattern Recognition, pp. 2985-2992, 2009.

[^35]: C. Wang, M. de La Gorce, and N. Paragios, "Segmentation, Ordering and Multi-Object Tracking Using Graphical Models," Proc. IEEE Int'l Conf. Computer Vision, pp. 747-754, 2009.

![Image](images/1594bd49d6f01dfbc1b71371137d7d7f3282cbe386af6f8966ced4bb16dae656.jpg)

Martin de La Gorce于2004年获得巴黎高等电子学院工程师文凭，2005年获得卡尚高等师范学院应用数学、计算机视觉与统计学习专业硕士学位，2009年获得巴黎中央理工学院应用数学专业博士学位。他现就职于Image Metrics公司，该公司是娱乐行业领先的3D面部动画企业。他的研究成果曾在各类国际会议（CVPR、BMVC）上展示，并发表于《计算机视觉与图像理解期刊》（CVIU）。他的研究方向包括图像处理、计算机视觉以及人机交互。他是IEEE的学生会员。

![Image](images/565aa8f8e115ca50e80c6e6e96cd26a9a4c3f35b2539fc5525c8067186ae9033.jpg)

大卫·J·弗利特于1991年在多伦多大学获得计算机科学博士学位。1991年至1998年间，他在金斯顿的皇后大学任教；1999年至2003年，他担任帕洛阿尔托研究中心（PARC）的区域经理及研究科学家。2004年，他加入多伦多大学，成为计算机科学教授。他的研究方向包括计算机视觉、图像处理、视觉感知以及视觉神经科学。他发表了多篇研究论文、书籍章节，并撰写了一本专著，内容涉及光流估计与立体视差、运动分析中的概率方法、图像序列中的外观建模、运动感知与人类立体视觉、手部追踪、人体姿态追踪、潜变量模型，以及基于物理的人体运动分析等。1996年，他荣获阿尔弗雷德·P·斯隆研究奖学金。他曾获得ICCV '99、CVPR '01、UIST '03和BMVC '09等会议的最佳论文奖。2010年，由于他与迈克尔·布莱克及赫德维格·西登布拉德在人体姿态追踪领域的研究成果，他荣获科恩德里克奖。他曾担任多届计算机视觉与机器学习会议的区域主席。他是2003年IEEE计算机视觉与模式识别会议的程序联合主席，也将担任2014年欧洲计算机视觉会议的联合主席。他曾担任《IEEE模式分析与机器智能汇刊》的副编辑及执行副编辑，目前是RPAMI顾问委员会的成员。他是IEEE的高级会员。

尼科斯·帕拉吉奥斯是巴黎中央理工学院的教授，负责应用数学系的医学成像与计算机视觉小组。他同时隶属于INRIA Saclay Ile-de-France，领导GALEN小组——这是ECP与INRIA之间的联合研究团队。在此之前，他曾在国立桥路学校担任教授（2004-2005年），并在西门子企业研究院（新泽西州普林斯顿，1999-2004年）担任项目经理、高级研究科学家及研究科学家。他曾在纽约大学（2004年）和耶鲁大学（2007年）等多所机构担任兼职或访问职务。他共同编辑了四本书，在医学成像与计算机视觉领域最负盛名的期刊和会议上发表了150多篇论文，拥有17项已获授权的美国专利以及20多项待批专利。他是IEEE会士，担任《IEEE模式分析与机器智能汇刊》（TPAMI）的副编辑、《计算机视觉与图像理解杂志》（CVIU）的区域编辑，同时也是《国际计算机视觉杂志》（IJCV）、《医学图像分析杂志》（MedIA）、《数学成像与视觉杂志》（JMIV）以及《成像与视觉计算杂志》（IVC）的编委会成员。他的研究方向包括图像处理、计算机视觉、医学图像分析以及人机交互。（<http://vision.mas.ecp.fr>）

![Image](images/2fa3eb20625b3d3536661e62878032743bb05c5abb4b3f45c790a0de6d47b07a.jpg)

如需了解有关此主题或其他任何计算主题的更多信息，请访问我们的数字图书馆：<https://www.computer.org/publications/dlib>。
