发布时间:2024-06-18 08:01
论文:《HigherHRNet: Scale-Aware Representation Learning for Bottom-Up Human Pose Estimation》
论文链接:https://arxiv.org/pdf/1908.10357.pdf
代码链接:https://github.com/HRNet/HigherHRNet-Human-Pose-Estimation
姿态估计前言知识:姿态估计-前言知识_error:404..的博客-CSDN博客
HigherHRNet详解之实验复现:HigherHRnet详解之实验复现_error:404..的博客-CSDN博客
HigherHRNet详解之源码解析:
自下而上的人体姿态估计方法由于尺度变化的挑战而难以为小人体预测正确的姿态。本文提出了一种新的自下而上的人体姿势估计方法HigherHRNet,用于使用高分辨率特征金字塔学习尺度感知表示。
该方法配备了用于训练的多分辨率监督和用于推理的多分辨率聚合,能够解决自下而上的多人姿势估计中的尺度变化挑战,并能更精确地定位关键点,尤其是对于小人物。 HigherHRNet中的特征金字塔包括HRNet的特征图输出和通过转置卷积进行上采样的高分辨率输出。
所谓尺度,实际上就是对信号的不同粒度的采样,通常在不同的尺度下我们可以观察到不同的特征。举个例子
上图可以看出不同分辨率下的特征是有所不同的,所以尺度是会影响性能的。
2D人体姿势估计旨在定位人体解剖学关键点(例如肘部,腕部等)或部位。 作为人类行为理解的基本技术,近年来受到越来越多的关注,其次自上而下方法普遍比自自底向上方法性能好。
引言中强调过多尺度的问题,这也是影响自底向上方法的一个较大的问题,但是自顶向下的方法就不会被影响,主要是因为自顶向下首先会语义分割出人,然后根据人的边界框的大小来将所有人标准化为大致相同的比例(关于自顶向下和自底向上方法区分可以参考之前博客),所以多尺度问题(小尺度)也将是本文所挑战的问题之一。
当然,每种方法都有各自的优点,自底向上方法由于不经过语义分割阶段,所以检测效率更高,而且更适用于实时姿态估计。
以下是原文部分翻译,值得去读一下:
预测小尺度人体的关键点主要有两个挑战。一种是应对尺度变化,即在不牺牲大人体性能的情况下提高小人体的性能。另一种是生成高质量的高分辨率热图,以精确定位小型人群的关键点。以前的自下而上的方法主要集中于对关键点进行分组,并且仅使用特征图的单一分辨率(即输入图像分辨率的1/4)来预测关键点的热图。这些方法忽略了尺度变化的挑战,并在推理过程中依赖图像金字塔(a)。特征金字塔是处理次尺度变化的基本组件,但是,自顶向下的特征金字塔中分辨率较低的特征图通常会遇到第二个挑战。 PersonLab 通过提高输入分辨率来生成高分辨率的热图(b)。尽管随着输入分辨率的提高,小型人体的性能将持续提高,但是当输入分辨率太大时,大型人员的性能将开始下降。为了解决这些挑战,至关重要的是,以自然而简单的方式为自下而上的关键点预测生成空间上更准确且具有尺度感知的热图,而又不会牺牲计算成本。
(a)使用图像金字塔进行热图预测。 (a)通过对图像进行上采样来生成更高分辨率和空间上更准确的热图。 PersonLab 的最新工作依赖于扩大输入图像的大小来生成高质量的特征图。 (c)我们的HigherHRNet使用高分辨率特征金字塔。
在本文中,提出了一个尺度感知的高分辨率网络(HigherHRNet)来应对这些挑战。 HigherHRNet通过新的高分辨率特征金字塔模块生成高分辨率热图。与传统的特征金字塔从1/32分辨率开始并使用具有横向连接的双线性上采样逐渐将特征图分辨率提高到1/4有所不同,高分辨率特征金字塔直接从1/4分辨率开始,这是backbone中最高分辨率的特征。通过反卷积生成甚至更高分辨率的特征图 图(c)。在HRNet的1/4分辨率路径上构建高分辨率要特征金字塔,以使其高效。为了使HigherHRNet能够处理尺度变化,进一步提出了一种多分辨率监督策略,以将不同分辨率的训练目标分配给相应的特征金字塔级别。最后,在推理过程中引入了一种简单的“多分辨率热图聚合”策略,以生成尺度感知的高分辨率热图。
本文贡献:
•尝试解决尺度变化的挑战。
•提出HigherHRNet,它可以在训练阶段生成具有多分辨率监督的高分辨率特征金字塔,并在推理阶段生成多分辨率热图聚合,以预测有利于小型人体的尺度感知的高分辨率热图。
•模型优于其他所有自下而上的方法。 尤其是中型人体的识别。
本文采用HRNet作为我们的基础网络来生成高质量的特征图。 并且添加了一个反卷积模块,以生成更高分辨率的特征图以预测热图。如果对HRNet不熟悉可以先去看看HRNet。
网络使用HRNet作为backbone,随后是一个或多个反卷积模块以生成多分辨率和高分辨率热图。 多分辨率监督用于训练
热图的分辨率对于预测小型人群的关键点很重要。 1.大多数人体姿势估计都是通过ground truth 热图来预测高斯平滑的热图,2.再将未标准化的高斯核应用于每个关键点位置。 高斯核会影响关键点的精确定位,特别是对于属于小人物的关键点。 可通过减少高斯核的标准偏差来优化(优化困难,放弃优化)。
于是通过以更高的分辨率预测热图来解决此问题,但不同分辨率下标准偏差不变。 自下而上的方法通常以输入图像的分辨率1/4预测热图。但是,分辨率还不够,于是在HRNet最后通过反卷积来增加分辨率(HigherHRNet = HRNet+反卷积)
反卷积模块将来自HRNet的特征和预测热图扩大两倍,生成具有两种分辨率的特征金字塔。 反卷积模块还通过添加额外的1×1卷积来预测热图。
一般而言,包含较小人体的数据集需要较大分辨率的特征图才能进行预测,如果需要更大特征图,可以叠加反卷积模块, 实验表明一个反卷积在COCO上性能最好
通过使用关联嵌入的简单方法高精度地解决分组问题。 分组过程通过将tags具有小的L2距离的关键点分组,将无身份的关键点聚类为多个个体。
使用4×4反卷积(也称为转置卷积),然后使用BatchNorm和ReLU来学习对输入特征图进行上采样。 并且在反卷积之后进一步添加4个基本残差块,以细化上采样的特征图,
反卷积模块的输入是来自HRNet或以前的反卷积模块的特征图和预测的热图的串联。 每个反卷积模块的输出特征图也可用于以多尺度方式预测热图
在训练过程中引入了多分辨率监督以处理尺度变化,1.将ground truth关键点位置转换为所有分辨率的热图上的位置,以生成具有不同分辨率的ground truth热图。 2.然后,将具有相同标准偏差(默认情况下使用标准偏差= 2,且不放缩<特征金字塔的不同分辨率适合于预测不同尺度的关键点>)的高斯核应用于所有这些ground truth热图。 在更高分辨率的特征图上,需要相对较小的标准偏差(与特征图的分辨率相比)以更精确地定位小人物的关键点。
在HigherHRNet中的每个预测尺度上,计算该尺度的预测热图与其关联的ground truth热图之间的均方误差。 热图的最终损失是所有分辨率的均方误差之和。
tagmap的训练与HigherHRNet中的热图不同。 仅以最低分辨率预测标签图,而不使用所有分辨率。 这是因为学习标记图需要全局推理,它更适合于以较低的分辨率预测标记图。 其次,更高的分辨率无法很好地预测标签图,甚至无法收敛。
热图聚合策略使用双线性插值法将具有不同分辨率的所有预测热图上采样到输入图像的分辨率,并平均所有尺度的热图以进行最终预测。以前的方法仅使用单个尺度或单个阶段的热图进行预测。因为本文考虑了尺度问题。
最后贴一张higherHRNet与其他方法比较的图。
想要更详细了解HigherHRNet建议读原文。