HRNet:Deep High-Resolution Representation Learning for Visual Recognition

HRNet 设计了并行的多分辨率分支,提取特征的同时,保持高分辨率,同时设计不同分支之间的特征融合,获得多尺度特征

什么是 HRNet ?

  • HRNet-20230408143808
  • 计算机很多任务是“位置敏感”类型的,比如分割、目标检测、关键点检测,通常的做法是下采样提取语义特征后,通过上采样恢复高分辨率,但是这样的做法会丢失位置信息。
  • HRNet 设计了并行的多分辨率分支,提取特征的同时,保持高分辨率,同时设计不同分支之间的特征融合,获得多尺度特征

HRNet 的网络结构?

  • HRNet-20230408143809
  • HRNet 的结构可分为 4 种类型
  • BasicBlock:每个 stage 的基本结构,由多个分支组成
  • FuseLayer:用于融合不同分支的特征
  • TransitionLayer:使用当前分支产生新的分支
  • BottleNeck:使用不同的操作处理多分支输出,如只取最高分辨率的分支,所有分支上采样至最高分辨率 concat 等

HRNet 的 FuseLayer 模块?

  • HRNet-20230408143809-1
  • 用于融合不同分支的特征,HRNet 设计了 3 个分支,每个分支都有上采样、维持分辨率、下采样 3 种可能去向,最高分辨率的分支,只能维持分辨率和下采样,由此设计了一下不同分支的操作HRNet-20230408143810

HRNet 的 TransitionLayer 模块?

  • HRNet-20230408143810-1
  • 基于已有分支,产生新的分支,相当于融合多尺度特征得到某个分辨率特征,并进一步整合这个分辨率特征。新分支的分辨率是比以前分支分辨率都小的一个分支

HRNet 的 Neck 设计?

  • HRNet-20230408143811
  • HR 设计了 3 种方式去使用 4 分支的输出,分别对应 HRNetv1、HRNetv2、HRNetv2p,(a)只使用最高分辨率的特征;(b)将所有分辨率的 feature map (小的特征图进行 upsample)进行 concate,主要用于语义分割和面部关键点检测;©在 HRNetV2的基础上,使用了一个特征金字塔,主要用于目标检测
  • 对于分类任务,HRNet 设计另一个特殊的 neck,对每个 backbone 的输出分支进行降采样操作,同时从上到下逐级融合相加,最后用一个1x1conv 控制输出类别HRNet-20230408143811-1

不同分别率的特征对结果的影响?

  • 研究不同分辨率的特征图如何影响人体姿态估计性能。作者训练了两个 HRNetV1 网络。网络输出从高到低分辨率的四个特征图,最低分辨率特征图上的热图预测质量太低,AP 分数低于 10 分。实验表明,分辨率确实会影响关键点预测质量

多分辨率特征融合对结果的影响?

  • 研究了网络的三种变体。(a)无中间融合模块:多分辨率支路之间除了最终融合模块外没有融合。(b)跨阶段融合单元:每个阶段内的相同分辨率支路之间没有融合。(c)跨阶段阶段和内融合模块:这是 HRNet 的结构。多分辨率融合模块很有帮助,并且更多的融合会带来更好的性能

保持高分辨率对结果的影响?

  • 将低分辨率特征图与高分辨率特征图融合做了对比试验。结果表明 HRNetV2 的低分辨率并行卷积中聚合表示对于提高准确度至关重要

参考:

  1. 一文读懂HRNet - 知乎
  2. HR-Net 高分辨率网络对计算机视觉任务的影响 - 知乎