人像分割论文SINet: Extreme Lightweight Portrait Segmentation Networks及其PyTorch实现

SINet: Extreme Lightweight Portrait Segmentation Networks with Spatial Squeeze Modules and Information Blocking Decoder
PDF: https://arxiv.org/pdf/1911.09099.pdf
PyTorch代码: https://github.com/shanglianlm0525/PyTorch-Networks

1 Information Blocking Decoder(信息块解码)

编码–解码结构广泛应用于语义分割任务中. 编码器从输入图像中提取语义特征,解码器恢复原始分辨率和局部细节; 但是编码–解码结构中经常采用的高分辨率特征联通会对细节恢复带来干扰; 于是作者在高分辨率和低分辨率融合时加入attention机制,即通过计算低分辨率的置信度,选择性地融合二者特征.

结构:
低分辨率feature map (C * W * H) 经过 pointwise convolution卷积获得 (c * W * H) , 接着 bilinear upsampling得到 和高分辨率feature map (c * W W^{'} * H H^{'} ) ,使用softmax得到每个类别的概率和每个像素基于类别的概率, 最后 1-c 得到 information blocking map (1 * W * H)
在这里插入图片描述

2 Spatial Squeeze module (空间压缩模块)

a. 选择average pooling 而不是dilated convolution增大感受野,是因为后者会带来较大时延以及带来的栅格效应(grid effects);
**b.**多分支结构对GPU计算不友好,因此压缩特征图减少时延;
在这里插入图片描述

3 SINet(网络结构)

使用 带有ds-conv 卷积的 Squeeze-and-Excite 模块,而不是步长为2的S2-module下采样特征图,因为后者更慢;

在这里插入图片描述
PyTorch代码:



发布了270 篇原创文章 · 获赞 344 · 访问量 65万+

猜你喜欢

转载自blog.csdn.net/shanglianlm/article/details/103931852
今日推荐