HRNet:Deep High-Resolution Representation Learning for Human Pose Estimation[1902.09212v1]
- 论文题目:Deep High-Resolution Representation Learning for Human Pose Estimation
- 论文地址:http://arxiv.org/abs/1902.09212v1
- 代码:https://github.com/leoxiaobin/deep-high-resolution-net.pytorch
- CVPR2021
1、摘要简介
-
本文聚焦于人类姿态估计,现有方法大都是连接一个高分辨率到低分辨率卷积序列的子网络,将输入图像下采样为低分辨率表示,然后再从编码的低分辨率表示中恢复高分辨率表示(一般利用空洞卷积)。本文相反保留高分辨率,从一个高分辨率的子网作为第一阶段开始,逐步将高分辨率到低分辨率的子网逐个添加,形成更多的阶段,并将多分辨率并行连接进行多次多尺度融合,使得预测的关键点热图更加准确。两个好处:
- 1、并行连接多分辨率子网络,不是串联的高到低到高
- 2、大多数融合方案是聚合了低级和高级表示,本文通过重复的多尺度融合,在相同深度和相似级别的低分辨率表示帮助下提高高分辨率表示,反之亦然,从而使得高分辨率表示也有丰富的姿势估计。
-
本文针对于单人姿态估计,这是其他相关姿态估计如多人/视频/跟踪等问题的基础。在PoseTrack数据集[1]上同样展示了该网络在视频姿势跟踪方面的优势。
2、相关工作
-
单人姿势估计一般为两种主流方法:【回归关键点的位置】 和 【估算关键点热图,热值最高的位置作为关键点】
-
High-to-low and low-to-high:高到低到高的过程旨在生成低分辨率和高分辨率表示(低升高采用空洞卷积以消除空间分辨率损失)
-
- (a) Hourglass沙漏状网络 (b) 级联金字塔网络 (c) SimpleBaseline 低到高过程的转置卷积 (d) 空洞卷积
- 在a中上下采样过程对称,在bcd中,分类网络(ResNet / VGGNet)的一部分从高到低的过程是
heavy
,低到高是light
,ab中相同分辨率层之间的虚线主要用于融合低级别和高级别特征,在b中右边的refinenet
结合了通过卷积处理的低级和高级特征。
-
Multi-scale fusion:
- 简单如a及其扩展,通过
skip connection
聚合输出。 - b中全局网络产生多分辨率,细化网络通过卷积处理组合各分辨率特征
- 本文采用重复多尺度融合,想法来自
deep fusion
深度融合及其扩展。
- 简单如a及其扩展,通过
3、
-
输入
H*W*3
图像,输出H'*W',{H1,H2..,Hk}
k个关键点热图,Hk
表示第k个关键点的位置置信度。茎部网络由两个下采样的跨步卷积组成,主体网络以输入相同的分辨率输出特征图,以及一个回归器用于估计选择关键点位置并转换为全分辨率的热图。 -
顺序多分辨率子网络:
-
\(N_{sr}\),
s
表示阶段数,r
表示分辨率索引(对应的分辨率为第一层的\(\frac{1}{2^{r-1}}\)大小),从高到低S
阶段(eg.4)
。
-
-
并行多分辨率子网络:
- 从高分辨率子网作为第一阶段开始,逐步将高分辨率添加到低分辨率子网中并形成新的阶段,同时将其并行连接。因此,后一阶段并行子网的分辨率由前一阶段的分辨率和一个较低分辨率组成。
(eg.4)
- 从高分辨率子网作为第一阶段开始,逐步将高分辨率添加到低分辨率子网中并形成新的阶段,同时将其并行连接。因此,后一阶段并行子网的分辨率由前一阶段的分辨率和一个较低分辨率组成。
-
重复多尺度融合:
- 在并行子网中引入交换单元,使得各子网重复从其他并行子网中接受信息。
(eg.3)
比如将第三阶段划分为(例如3个)几个交换块,每个块由3个并行卷积单元组成,每个并行单元之间有一个交换单元: - \(C^{b}_{sr}\)表示\(C_{sr}\)的第
b
个交换块中的并行卷积单元,\(ε^{b}_{s}\)则是相应的交换单元,如图是三个交换块构造。
- 在并行子网中引入交换单元,使得各子网重复从其他并行子网中接受信息。
-
交换公式:省略
s和r
,输出的分辨率[Y1,Y2..,Ys]
与宽度和输入[X1,X2..,Xs]
相同,每个输出都是输入映射的合集,
。跨阶段的交换单元有一个额外的输出映射:。a(Xi,k)
表示上采样或者下采样Xi
从分辨率i
到分辨率k
;如果i=k,则a(Xi,k)=Xi
。- 采用3x3卷积进行下采样,例如步长=2两倍下采样,两次连续步长=2四倍下采样;上采样则使用1x1卷积后的简单最近邻采样来对齐通道数
- 简单来说就是这样,上图融合三分辨率的例子;最后一层还有一个额外的输出:
- 这些个f就是一系列操作,也就是图中所示的卷积上采样等操作。对高分辨率到低分辨率,低分辨率到高分辨率,同分辨率到同分辨率,操作均不同,具体可见上图。
-
热图估计:
- 简单的用最后一个交换单元输出的高分辨率表示回归热图,损失函数用均方差。
-
HRNet:
- 包含四个阶段,四个平行的子网络,其分辨率逐渐降低到一半,因此宽度(通道数)增加到两倍。第一阶段包含四个残差单元(ResNet50相同),第234阶段包含1、4、3个交换块,每一个交换块里包含4个残差单元,每个单元包含两个3x3卷积在每种分辨率上,每个分辨率中还有一个交换单元,因此一共有8个交换单元,即进行了8次多尺度融合。
-
HRNet32和HRNet48,32和48表示最后三个阶段的高分辨率自网络的宽度(C),对于32而言其他三个并行子网的宽度为64,128,256。
4、实验结果