论文名称:Panoptic Feature Pyramid Networks
论文作者:Alexander Kirillov, Ross Girshick, Kaiming He, Piotr Dollár
发行时间:Submitted on 8 Jan 2019, last revised 10 Apr 2019
论文地址:https://arxiv.org/abs/1901.02446
代码开源:暂未开源
1. 概要
这篇paper更适合作为baseline, 将 Semantic Segmentation(语义分割) 和 Instance Segmentation(实例分割) 结合在了一个FPN + Mask R-CNN 的框架中,即Panoptic(全景分割). writers通过大量实验验证了有效性. 结构比较干净, 值得一看.
2. Panoptic Feature Pyramid Network
从 Mask R-CNN with FPN 入手,增加了两个分支来处理语义分割和全景分割.
2.1. Feature Pyramid Network
简要对 FPN 结构进行介绍
FPN结构:
以标准的网络结构–ResNet作为骨架来生成多尺度的特征.
2.2. Instance Segmentation branch
writers直接在Mask R-CNN上增加了一个branch来输出 Instance Segmentation
由于在特征金字塔中不同尺度的feature的channel的维度是相同的, 直接使用Faster R-CNN来对不同尺度的feature进行RoI Pooling, 然后利用共享的网络分支对每个区域预测得到 box 和 class label.
2.3. Semantic Segmentation branch
writers在原Mask R-CNN上增加了一个branch来输出 Semantic Segmentation
该 branch 将 特征金字塔的各层通过不同次数的连续上采样来放到同一尺寸,其中上采样操作的组成有:
- conv
- GN
- RELU
- 双线性插值
然后对这些各层的同一尺度的features按元素求和后, 再通过一个的conv和的双线性插值的上采样及softmax来生成为原始图片分辨率下的各个 class label.
3. Inference and Training
3.1. Panoptic inference
由于在Panoptic FPN中, 实例分割和语义分割的输出可能会有重叠, 故提出 post-processing 来解决之.
3.1.1. post-processing
该方法的思想类似NMS(Non-Maximum Supression):
- 针对不同实例(instance)的置信度(confidence score)来解决重叠问题
- 解决实例分割和语义分割之间的重叠问题来利于instance的区分(这句话笔者不是很理解,原文是"resolving overlaps between instance and semantic segmentation outputs in favor of instances")
- 去除被标记为"other"或比给定的阈值低的stuff regions
3.2. Joint training
在联合训练的过程中:
- 针对 Instance Segmentation:
- : classfication loss
- : bound-box loss
- : mask loss
- 其中:
- 和是由样本的RoI进行归一化得到的
- 则是由前景(foreground)经过归一化得到的
- : instance loss,
- 针对 Semantic Segmentation:
- : semantic loss, 是通过对每个像素上预测的 class label 和其对应的 Ground Truth labels之间的cross-entropy loss(交叉熵)并按照已经标注了的图像的像素数量进行归一化操作.
最终, 模型的loss为:
通过对和进行tuning来训练模型.
4. 总结
writers提出在一个model中同时对语义分割和实例分割进行训练, 方法简介较干净. 并且做到了只训练一个model, 就做到了之前为这两个任务分别做一个模型的效果, 且节约了约一半的计算, 很适合作为baseline.