Pyramid Scene Parsing Network

scene parsing任务中存在的挑战是场景和标签多样性,而解决这个问题,文章从整合全局特征以及上下文的角度出发,提出了一个pyramid scene parsing network(PSPNet)

主要贡献:

1、PSPNet

2、基于deeply supervised loss的优化策略

首先分析了一波FCN的错误例子,指出缺陷,包括Mismatched Relationship,Confusion Categories,Inconspicuous Classes,主要都是与上下文的关系以及全局信息有关。

结构:

PSPNet:

中间c部分是主要部分:Pyramid Pooling Module,将Pooling层分为四个level,最上方红色的pooling核是最粗糙的level,代表global pooling,接下来的几个金字塔式排列的几个level的pooling将特征图分成不同的子区域,形成不同位置上的被pool过的representation。这样分层池化是因为这样包含了不同尺度和不同区域的信息,尽可能减少不同子区域间上下文信息的损失。每一个level的pooling层后再经过一个1×1的卷积进行降维,然后将分辨率低的特征图上采样到与原始的尺寸相同,将不同level产生的特征图串联起来,就成为最后的pyramid pooling global feature。

整个网络如上图,输入图片首先经过一个带有dilated策略的ResNet,得到特征图,尺寸是原图的1/8,再输入Pyramid Pooling Module,再经过一个卷积层产生最后的预测图。

Deep Supervision for ResNet-Based FCN:

具体就是用一个额外的loss来监督初始结果,并用后面的loss来学习残差。如图,除了主干上的softmax loss,在第四阶段后也加了一个loss,每个loss通过各自之前的层传播。辅助的loss用来优化学习过程,但主要学习方向的还是由主干上的loss主导,来增加权重以平衡辅助loss。在测试阶段丢弃辅助loss,只使用主干上的loss来进行预测。

这是提高性能的一种做法,可以与预训练结合,在深度增加的时候有一些作用。

实验:

PASCAL VOC 2012:

PASCAL VOC 2012

(下面部分是经过MS-COCO预训练的)

Cityscapes:

Cityscapes

你可能感兴趣的:(Pyramid Scene Parsing Network)