【语义分割】PSPNet

论文传送门

https://arxiv.org/pdf/1612.01105.pdf

文章贡献

  • 提出了一个金字塔场景分析网络 (pyramid scene parsing network),能将难解析场景的语境特征嵌入基于FCN预测框架中
  • 对基于深度监督损失函数的 ResNet 提出了一种有效的优化策略
  • 构建了一个实用的场景分析和语义分割系统,其中包括所有关键的实现细节

概述

场景解析 (Scene Parsing) 的难度与场景的标签密切相关。目前场景解析多数依赖于 FCN ,但由于 FCN 缺乏合适的策略利用全局场景类别线索

  • 语境关系不匹配 (Mismatched Relationship):语境关系在对复杂场景的理解中极为重要。例如下图第一行,在水面上有很大的概率是 'boat' 而不是 'car' ,因此,缺乏收集语境信息的能力会增大错误分类的概率
  • 类别混淆 (Confusion Categories):许多类别标签在分类时容易出现混淆。例如下图第二行,FCN 把大厦的一部分识别成建筑物,但这应该只是一者,不能两者兼有。可以利用类别之间的关系解决上述问题
  • 不明显的类别 (Inconspicuous Classes):模型可能会忽略小的物体,相反,大的物体因超过FCN的感受野导致预测不连续。例如下图第三行,枕头与床单外观相似,难以被分割。为提高对非常小或非常大的对象的识别能力,应该特别注意包含不明显类别物体的不同子区域

针对这些存在的问题,作者提出了能将像素特征进行扩展的pyramid scene parsing networkPSPNet)模块,该模块能够聚合不同区域的上下文信息,从而提高获取全局信息的能力,此外,作者还提出了一种深度监督损失函数的优化策略(optimization strategy with deeply supervised loss) 

网络结构

Pyramid Pooling Module

论文提出了一个具有层次全局优先级,包含不同尺度、不同子区域间关系的分层全局信息,称为Pyramid Pooling Module (PSP模块) ,如下图 (c) 所示

  • 红色突出显示为最粗糙的层级,通过全局池化生成单个 bin 输出
  • 后面三行是不同尺度的池化特征,每一层输出包含不同尺度的特征图
  • 为保持全局特征的权重,在每个金字塔层级后使用 1x1 卷积,当某个层级维数为 N 时,即可将语境特征的维数降到原始特征的 1/N
  • 通过双线性插值直接对低维特征图进行上采样,使其与原始特征图尺度相同
  • 将 N 个不同尺度的特征图拼接为最终的金字塔池化全局特征

 网络整体架构

  • 图 (a) 中输入图像,使用带有扩展网络策略且预训练过的 ResNet 模型来提取特征图,特征图尺寸为输入图像的1/8
  • 图 (c) 通过 Pyramid Pooling Module 来获取语境信息,最终将 N 个不同尺度特征图融合为全局特征
  • 最后,在(d)中通过一层卷积层生成最终的预测图

损失函数

论文在 ResNet101 的基础上进行改进,除了最后 softmax 做 loss1 之外,还会在第四级残差模块res4b22 处用辅助函数 loss2 来监督产生的初试结果,两个 loss 一起传播,通过给予不同权重来优化参数。实验证明,这样做可以加快训练的进程。测试阶段,放弃辅助函数 loss2 ,只通过主分支来优化最终的预测。

版权声明:本文为CSDN博主「Andrew Xiao」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/m0_60875396/article/details/122592357

Andrew Xiao

我还没有学会写个人说明!

暂无评论

发表评论

相关推荐

PsROI Pooling 深入理解,附代码

faster rcnn 和 rfcn 的最大不同点在于rfcn采用了PsROI Pooling 保留了局部区域的位置敏感性。 输入batch_size N 的批次训练图像。 假设我们通过 RPN 层网络获取了 M 个 rois, 每个 ro