极简笔记 DeepLab系列比较
极简笔记 DeepLab系列比较
之前有写deeplabv3+的论文笔记,因为最近要写调研报告,就大致浏览了deeplab系列的论文,了解发展过程。本篇包含了很多其他笔记的摘要,会在最后列出。
DeepLabv1:
https://arxiv.org/pdf/1412.7062v4.pdf
首次提出atrous conv和网络最后加CRF的操作。
- 主要是对原有VGG网络进行了一些变换:
1. 将原先的全连接层通过卷基层来实现。
2. VGG网络中原有5个max pooling,先将后两个max pooling去除(看别的博客中说,其实没有去除,只是将max pooling的stride从2变为1),相当于只进行了8倍下采样。
3. 将后两个max pooling后的普通卷基层,改为使用带孔卷积。
- 为了控制视野域(同时减少计算量),对于VGG中的第一个fully connected convlution layer,即7*7的卷基层,使用3*3或4*4的卷积来替代。 计算时间减少了2-3倍。
- 其他训练信息 损失函数:交叉熵之和。
- 训练数据label:对原始Ground Truth进行下采样8倍,得到训练label。
- 预测数据label:对预测结果进行双线性上采样8倍,得到预测结果。
DeepLabv2
https://arxiv.org/pdf/1606.00915.pdf
进一步提出ASPP结构适应多尺度变换,在encoder部分使用不同rate的atrous convolution之后加和,(6,12,18,24的rate组合比2,4,8,12的好)。网络backbone从vgg换到了resnet,性能提升。
DeepLabv3
https://arxiv.org/pdf/1706.05587.pdf
使用Multigrid通过交替atrous rate防止结果出现网格化现象。舍弃了CRF。
上图是cascaded module的结构。block1~block4都是ResNet的block,block5~block7是对block4的复制,但是他们的atrous rate不同。
上图是parallel module的结构。和原来的deeplab v2中的ASPP的主要区别是,增加了image pooling(就是global average pooling,受启发于PSPNet),把sum变成了concate,除此之外还增加了BN(batch normalization)帮助训练。
DeepLabv3+
详见之前的一篇笔记 极简笔记 DeepLabv3+
参考笔记:
1. https://zhuanlan.zhihu.com/p/36052038
2. https://zhuanlan.zhihu.com/p/27828221