1. [20 CPRR]CascadePSP: Toward Class-Agnostic and Very High-Resolution Segmentation via Global and Local Refinement

作者:image.png

CascadePSP: a general segmentation refinement model that refines any given segmentation from low to high resolution. It can be easily appended to any existing methods to improve their segmentation.

代码:Github

方法部分:

Refinement Module

这篇文章的核心模块是 Refinement Module ,它的结构如下:
image.png
输入是原始的 RGB 图像和三个 scale 的 粗糙预测 (resize成相同大小);
输出是 output strides (OS) 为 {8, 4, 1} 的三个refine 后的 mask。

这个模块的训练方式值得看一下:
对于OS 8 / 4 / 1 三个输出监督是不同的,
OS 8 直接用 cross-entropy loss
OS 4 用 cross-entropy 和 L1+L2 loss
OS 1 用 L1+L2 loss
除此之外对于 OS 1 还使用了一个 gradient level 上的 L1 loss。做法是使用一个 3 × 3 mean filter followed by a Sobel operator。
[20 CVPR] CascadePSP - 图4,其中[20 CVPR] CascadePSP - 图5是 3 × 3 mean filter,[20 CVPR] CascadePSP - 图6是 gradient operator approximated by a Sobel operator。
最终损失函数表达为:
[20 CVPR] CascadePSP - 图7

关于 [20 CVPR] CascadePSP - 图8 这块的实现参见 sobel_op.py

Global Cascade Refinement

image.png

第一层的三个粗糙图输入是把一个复制了三份。

Local Cascade Refinement

然后这个就可以接收 Global 的三个输出作为输入进行分块,然后分别增强,最后合成。
image.png

实验效果:

从效果来看 Gloabl Step 似乎已经有不少提升,Local step 应该过于耗时,性价比可能不高。
image.png