DeepPose
摘要
这篇博客介绍了DeepPose,这是首个基于深度神经网络(DNN)的人体姿态估计框架,其核心思想是通过端到端回归直接预测人体关节坐标,摒弃了传统方法依赖手工特征和图形模型的局限性。针对传统算法在遮挡、复杂背景和小关节定位中的不足,DeepPose提出级联回归的方法:初始阶段利用全局低分辨率图像预测粗略关节点位置,后续级联阶段通过高分辨率局部图像块逐步修正误差,实现从粗到细的优化。为消除尺度差异,DeepPose对输入图像使用了归一化,且对级联网络进行独立训练,每个阶段参数分离以适配不同的输入尺度。该方法在LSP、FLIC等数据集上较传统方法定位误差降低20%-30%,尤其在遮挡场景下鲁棒性显著提升。但级联结构计算成本较高,且依赖初始预测的准确性。未来改进方向可结合热力图回归与级联优化,或引入轻量化网络提升实时性。
Abstract
This blog introduces DeepPose, the first deep neural network (DNN)-based framework for human pose estimation. Its core innovation lies in directly predicting joint coordinates through end-to-end regression, eliminating the reliance on handcrafted features and graphical models inherent in traditional methods. To address the limitations of conventional algorithms in handling occlusions, complex backgrounds, and small joint localization, DeepPose proposes a cascaded regression approach: the initial stage predicts rough joint positions using global low-resolution images, while subsequent cascaded stages iteratively refine errors via high-resolution local image patches, achieving coarse-to-fine optimization. To mitigate scale variance, DeepPose employs input normalization and independently trains cascaded networks with separated parameters to adapt to different input scales. Evaluations on datasets like LSP and FLIC demonstrate a 20%-30% reduction in localization errors compared to traditional methods, with marked robustness improvements in occlusion scenarios. However, the cascaded structure incurs higher computational costs and heavily depends on the accuracy of initial predictions. Future improvements may integrate heatmap regression with cascaded refinement or adopt lightweight networks for real-time performance. This work pioneers a regression-based paradigm for pose estimation, bridging the gap between global context awareness and local precision.
文章信息
Title:DeepPose: Human Pose Estimation via Deep Neural Networks
Author: Alexander Toshev, Christian Szegedy
Source:https://arxiv.org/abs/1312.4659
引言
人体姿态估计问题,被定义为人体关节定位问题。其难点在于人体关节的灵活性、某些关节小而模糊及遮挡问题。如下图,许多关节不可见,而我们可以通过看到的人物姿势和其余可见关节预测不可见的关节,并预测人体姿态。这也说明了全局推理的必要性。

早期的研究基本是基于部件模型(如Pictorial Structures)仅能建模身体局部关系,无法全局推理整体姿态 。例如,遮挡的关节位置需通过其他可见部位推测,但传统模型缺乏这种整体关联能力。为保持推理效率,一些模型采用树状结构拓扑,仅建模相邻关节的约束关系,忽视远距离关节的相互作用(如头与脚的关联)。另外,传统方法多将姿态估计视为分类问题,生成离散的姿态类别,难以实现连续空间中的高精度定位。
2012年AlexNet在ImageNet上的成功验证了深度神经网络(DNN)在图像分类任务中的潜力 。此后,DNN逐步扩展至目标检测(如R-CNN)和定位任务,但姿态估计尚未被充分探索 。
作者利用深度神经网络来进行人体姿态评估,将姿态估计视为一个联合回归问题。通过全卷积网络(如AlexNet)提取整图特征,可隐式学习关节间的空间依赖关系。另外,作者提出级联的方法来对关节点位置进行多次修正以提高精准率。
DeepPose
归一化
人体在图像中的尺度差异(如近景全身像与远景小尺寸人像)会导致关节点绝对坐标的数值范围差异巨大。通过边界框归一化,将关节点坐标转换为相对于人体边界框中心的比例值,可统一不同尺度下的坐标分布,使模型无需适应绝对像素值的变化,专注于学习姿态的空间关系。直接回归关节点绝对坐标需要模型同时学习空间位置和尺度变换,而归一化将问题简化为相对位置回归,归一化后的坐标仅需预测相对偏移量,模型更易收敛。另外,归一化后的数据分布更均匀,梯度下降过程中参数的更新方向更稳定,可有避免止训练时梯度爆炸问题。
用边框b对于图像进行归一化:

其中, y i {\mathbf{y}}_{i} yi 表示第 i i i 个关节在图像中的绝对坐标,具体为 ( x i , y i ) (x_i,y_i) (xi,yi);
b b b 是边框信息,定义为 b = ( b c , b w , b h ) b=(b_c,b_w,b_h) b=(bc,bw,bh), b c b_c bc 是边界框的中心坐标 ( b c x , b c y ) (b_{cx},b_{cy}) (bcx,bcy), b w b_w bw 和 b h b_h bh 是边框的宽和高。
按照上面的公式可以将关节点的坐标转化为相对坐标,相对坐标在[-0.5,0.5]范围内,实现中也可加上0.5,归一化到[0,1]。
网络结构
作者将姿态估计视为回归问题,并用深度神经网络来预测关节点位置。

上图展示了DeepPose的总体结构:左边是初始阶段,粗略预测全局所有的关节点位置,其中蓝色是卷积层,绿色是全连接层,池化层和归一层没有需要学习的参数,图中没有展示。图中右边是精细化级联网络,其结构与初始阶段的网络完全一致,但每一级的网络参数是独立的,精细化级联网络对上一级预测的关节点位置进行修正,得到更准确的位置。
在初始阶段(Initial Stage),模型通过归一化人体边界框坐标构建尺度不变的输入,利用卷积网络直接回归所有关节点的坐标;在后续级联阶段(Cascade),模型基于初始预测结果对局部图像区域进行精细化裁剪,通过多层级联DNN逐步修正关节点位移量,最终输出精确的关节点位置。
下面分别介绍初始网络和精细化计量网络的具体细节:
初始网络(粗略估计所有关节点位置)
用 C 表示卷积层,用LRN表示局部响应标准化层,用P 表示池化层,用 F 表示全连接层。只有C 层和F 层包含可学习的参数,而其余的是无参数的。

对于 C 层,尺寸定义为宽度×高度×深度,其中前两个维度具有空间意义,而深度定义了滤波器的数量。如果我们将每层的大小写在括号中,那么网络可以简洁地描述为 C ( 55 × 55 × 96 ) − L R N − P − C ( 27 × 27 × 256 ) − L R N − P − C ( 13 × 13 × 384 ) − C ( 13 × 13 × 384 ) − C ( 13 × 13 × 256 ) − P − F ( 4096 ) − F ( 4096 ) C\left( { {55} \times {55} \times {96}}\right) - {LRN} - P - C\left( { {27} \times {27} \times {256}}\right) -{LRN} - P - C\left( { {13} \times {13} \times {384}}\right) - C\left( { {13} \times {13} \times {384}}\right) -C\left( { {13} \times {13} \times {256}}\right) - P - F\left( {4096}\right) - F\left( {4096}\right) C(55×55×96)−LRN−P−C(27×27×256)−LRN−P−

最低0.47元/天 解锁文章
9285

被折叠的 条评论
为什么被折叠?



