论文阅读: 2005.U2Net

2021-12-06 21:50:54 浏览数 (1)

2005.09007:U2-Net: Going Deeper with Nested U-Structure for Salient Object Detection

  • 该网络用于轻量级的 SOD(显著目标检测,Salient Object Detection),能够取得出色的效果,同时模型文件较小,更适合于移动设备。

创新点

  • U-shape套娃:
    • 原有的U-shape架构套娃U-shape子架构,最终能取得十分出色的效果:
      • 原文表示甚至还能继续往下套娃(不过会too complicated to be implemented)。
      • 网络结构能做的更深,能够更好的利用更高分辨率下(更准确的说,多尺度下)的特征。
    • RSU(残差U形块,如图e):
      • 由于U型结构导致的计算开销很小,这是因为大多数操作是对下采样的特征进行。
      • 多尺度特征从逐渐下采样的特征图中提取,并通过逐渐上采样、拼接和卷积编码成高分辨率特征图。
      • 该过程减轻了由大规模直接上采样引起的精细细节的损失。
      • 参数L:
        • 更大的L会有更深的RSU块,更多的池化操作,更大范围的感受野和更丰富的局部和全局特征。
        • 使用不同L的RSU可以从具有任意空间分辨率的输入特征图中提取多尺度特征。
    • 第三步残差连接,也就是计算局部特征和多尺度特征的和。
  • 详细结构:
    • Backbone:
      • 结构中的一个个小U Net在文中称为U block,一共有11个(En_1~De_1):
      • En_1~En_4:U block的高度在逐渐降低(7,6,5,4),因为特征图的尺寸也在逐渐降低,如果此时高度仍不变的话则容易在深层造成特征丢失。实际上在代码中高度参数也是可以调整的,从而适应不同尺寸的原始输入,比如输入特征图尺寸更大的话则可以适当调高U block高度。
      • En_5~De_5: 此时由于特征图的尺寸已经很低了,因此U block中就没有再进行下采样上采样,防止特征损失,只使用空洞卷积来提取特征。
      • De_4~De_1: 与Encode部分基本对称,并且同样引入了skip connection。
    • Side Output:
      • 也就是中间Decoder的输出,在图中为S1~S6。由于低层的中间结果尺寸较低,因此也会采用双线性插值回原尺寸。最后对这六张结果(按通道)连接后进行1×1卷积压缩为单通道,获得最终的输出。
      • 这种利用中间结果的思想可能来源于HED(Holistically-Nested Edge Detection)。
    • Loss:
      • 直接使用的是BCE Loss,将六个side output与最终结果各自的bce loss进行平均。需要注意还是由于side output的尺寸较低,因此同样也会上采样再计算loss。

0 人点赞