1.图像分割中的传统做法
为了增大感受野,通常都会选择pooling操作,但是也会丢失一部分信息
2. DeepLab系列方法
通过设置dilated参数可以得到不同感受野的特征(3*3,7*7,15*15)
空洞卷积的优势:
图像分割任务中(其他场景也适用)需要较大感受野来更好完成任务
通过设置dilation rate参数来完成空洞卷积,并没有额外计算
可以按照参数扩大任意倍数的感受野,而且没有引入额外的参数
应用简单,就是卷积层中多设置一个参数就可以了
4.感受野
如果堆叠3个3*3的卷积层,并且保持滑动窗口步长为1,其感受野就是7*7的了, 这跟一个使用7*7卷积核的结果是一样的,那为什么非要堆叠3个小卷积呢?
假设输入大小都是h*w*c,并且都使用c个卷积核(得到c个特征图),可以来计算一下其各自所需参数:
很明显,堆叠小的卷积核所需的参数更少一些,并且卷积过程越多,特征提取也会越细致,加入的非线性变换也随着增多,还不会增大权重参数个数,这就是VGG网络的基本出发点,用小的卷积核来完成体特征提取操作。
5.SPP-Layer
SPP的具体实现方法如图所示,在最后一个卷积层之后插入一个SPP层(或替换原卷积层之后的池化层),在最后一个卷积层之后的特征图上,划分粗细尺度不同的几级均匀网格(特征图的各通道切片上,网格划分的方式一致)。各级网格对特征图进行了不同尺度的划分,构成了特征图的金字塔结构。对每级网格中的每个单元,使用最大值池化或平均值池化,池化之后的结果融合在一起,构成长度固定的特征向量。在SPP的过程中,对于不同大小的图像,同一层级网格单元格的数量是相同的,每个单元格的尺寸和整个图像的尺寸成正比,这样就保证了无论输入图像的尺寸如何,经过SPP层之后,都能变成同样维度的特征向量。向量的总维数为kxM,其中k表示SPP输入特征图的通道数(即最后一个卷积层卷积核的个数),M表示在每个切片上,各级网格单元格数量之和。图8-5中使用了3个均匀网格,网格的尺寸分别是4×4、2×2和1×1,图中特征图的通道数为256,经过SPP层之后,图像的特征向量变换成(4×4+2×2+1×1)×256维,维度和输入图像的分辨率及宽高比都无关。
5.常用的多尺度特征提取方法
6.ASPP(atrous convolution SPP)
其实就是跟SPP差不多,只不过引入了不同倍率的空洞卷积
7.deepLabV3+
整体网络架构:
- 效果提升不算多
- Backbone可以改进
- 创新不多所以不是4版