PSPNet-Pyramid Scene Parsing Network-金字塔场景解析网络
论文地址: https://arxiv.org/abs/1612.01105
Github: https://github.com/hszhao/PSPNet
Abstract
在这篇文章中,利用pyramid pooling module和PSPNet,通过聚合不同区域的上下文信息,挖掘出了全局上下文信息的承载力。
1. Introduction
(1)指出FCN存在问题,没有利用整体的场景上下文信息,导致:
- Mismatched Relationship
- Confusion Categories
- Inconspicuous Classes
(2)主要贡献:
- 提出了一种金字塔场景解析网络,以便在基于FCN的像素预测框架中嵌入困难场景的上下文特征。
- 基于深度监督损失为深度ResNet开发了一种有效的优化策略。
- 为最先进的场景解析和语义分割构建了一个实用的系统,其中包含了所有关键的实现细节。
2. Related Work
- DNN/FCN
- dilated convolution可以扩大感受野。本文基于FCN and dilated network.
- Other work mainly proceeds in two directions:
(1)with multi-scale feature ensembling
(2) based on structure prediction. (利用CRF进行后处理)
3. Pyramid Scene Parsing Network
3.1 Pyramid Pooling Module
如Fig.3:论文中金字塔池化模块融合了4种不同金字塔尺度的特征。红色高亮表示的最粗粒度的级别是全局池化。对Feature Map采用4个不同尺度pooling kernels进行池化,池化后的结果再进行1×1卷积,将通道数降低为Feature Map通道数的1/N,其中N为金字塔的层数(尺度的个数,论文中为4)。然后将低维的feature maps利用双线性插值进行上采样得到和Feature Map一样的size。最后,将不同尺度金字塔池化并上采样的feature maps和原来的Feature Map进行concatenate。
注意:
金字塔池化模块的层数和每层的size是可以修改的。论文中金字塔池化模块是4层,每层的size分别是1×1,2×2,3×3,6×6。
对于池化的类型(max和average), 作者做了大量实验,其区别Table 1所示:
3.2 Network Architecture
如图Fig.3:
- Fig.3(a):Imput Image
- Fig.3(b):Feature Map(the size is 1/8 of Input Image),got by ResNet with dilated network
- Pyramid Pooling Module
- Final Prediction
4. 深度监督训练
预训练的深度网络性能很好,然而增加深度可能导致额外的优化难度。ResNet通过每个模块的跨层连接解决该问题,后一层主要学习前面层的残差。相反,我们提出了通过额外损失监督生成初始结果,然后利用最终损失学习残差。这样,将网络优化分解为两个简单易解决的问题。
深度监督ResNet101的例子如Figure 4所示,除了使用softmax损失训练最终分类器的主线,第4阶段后使用了另一个分类器,并且让两个损失函数后向传播到前面所有层。辅助损失有助于优化过程,而主线损失负主要责任,我们增加了平衡辅助损失的权值。在测试阶段,我们去除该辅助分支的loss而仅使用优化后的主线预测。
5. Implementation Details
参数 | 设置 |
---|---|
平台 | Caffe |
学习率 | 采用“poly”策略,即 l r = l r b a s e ∗ ( 1 − i t e r m a x i t e r ) p o w e r lr=lr_{base}*(1-\frac{iter}{max_iter})^{power} lr=lrbase∗(1−maxiteriter)power,其中 l r b a s e = 0.01 lr_{base}=0.01 lrbase=0.01, p o w e r = 0.9 power=0.9 power=0.9, m o m e n t u m = 0.9 momentum=0.9 momentum=0.9, w e i g h t d e c a y = 0.0001 weightdecay=0.0001 weightdecay=0.0001 |
迭代次数 | ImageNet上设置150K,PASCAL VOC上设置30K,Cityscapes设置90K |
数据增强 | 随机镜像翻转,尺寸在0.5-2之间缩放,角度在-10°和10°之间随机旋转、随机的高斯模糊 |
batchsize | 16 |
辅助loss的权重 | w e i g h t = 0.4 weight=0.4 weight=0.4 |
参考:1. https://arxiv.org/abs/1612.01105
2. https://mp.weixin.qq.com/s?__biz=MzI5OTY0NzA5Ng==&mid=2247484209&idx=1&sn=65816a2914e6c9b7ffaff0e49a9aeb6c&chksm=ec922a26dbe5a330984eb4d1bca676f6b2b18dbef31df3c31c58b789ee945570218534ebe7c5&mpshare=1&scene=1&srcid=1014NlHkv1ztGRL4gsdImKkF#rd