PraNet:Learning Feature Pyramids for Human Pose Estimation

PyraNet 认为人体姿态的估计的难点在于不同关节部位的尺度不同,如上图 (a)手和头的比例大于脚的比例,在(b)中脚的比例大于头的比例,为此,PyraNet 基于Hourglass 网络,设计金字塔子网络去提取关节的多尺度信息,提升人体姿态估计的准确性

什么是 PyraNet ?

  • PyraNet 认为人体姿态的估计的难点在于不同关节部位的尺度不同,如上图 (a)手和头的比例大于脚的比例,在(b)中脚的比例大于头的比例
  • 为此,PyraNet 基于 Hourglass 网络,设计金字塔子网络去提取关节的多尺度信息,提升人体姿态估计的准确性

PyraNet 的网络结构?

  • (a) 具有 n 个沙漏网络堆的网络体系结构。每个沙漏堆栈的细节如(b)所示。在每个沙漏的末端生成身体关节位置的得分图,并且在每个沙漏堆栈中附加一个平方误差损失

PyraNet 的 Pyramid Residual Modules (PRMs)?

  • PRM:PyraNet 设计了 3 个 PRM 模块,每个模块都分为两部分,第一部分是原始的 Hourglass 的残差链接模块,第二部分是多分支的金字塔池化模块
  • 金字塔残差模块:由多分支 3 个 PRM 模块使用不同的方式提取多尺度特征

PyraNet 如何生成输入特征的金字塔?

  • Drawing 2023-04-20 21.52.14.excalidraw
  • DCNNs 一般应用 max-pooling 和 average-pooling 来降低 feature maps 的分辨率,编码其平移不变性. 但,pooling 采用至少为 2 的整数因子,会导致 feature maps 的分辨率降低很快,很粗糙;不能很好的生成金字塔
  • PyraNet 采用 fractional max-pooling 来逼近传统图像金字塔的平滑和下采样处理,以得到不同分辨率 feature maps
  • PyraNet 的金字塔是多分支多层次的,每个层次的分辨率计算方式如下,其中 Sc[2M,1]S_c\in [2^{-M},1] 表示相对于输入特征的分辨率,例如 c=0,表示该层输出特征分辨率与输入分辨率一样,当 M=1,c=C 时,该层输出分辨率是输入的一半

    sc=2McC,c=0,,C,M1s_c=2^{-M\frac{c}{C}},\quad c=0,\cdots,C,M\geq1

参考:

  1. Learning Feature Pyramids for Human Pose Estimatio - 知乎
  2. 论文阅读理解 - Learning Feature Pyramids for Human Pose Estimation - 腾讯云开发者社区-腾讯云