Atrous convolution ,就是带洞的卷积,卷积核是稀疏的
下 图(b)是带洞卷积,可以跳着选,隔一个加一个。 ![1433065-20190126212014493-303008288.png](https://i-blog.csdnimg.cn/blog_migrate/3f4d3727570b744b55cc9c19daa48675.png)
The First Column | The Second Column |
---|---|
Dilated Convolutions | 翻译为扩张卷积或空洞卷积 |
atrous convolution 带洞卷积 | ![]() |
standard convolution | ![]() |
upsampling | 将变小的图像恢复到原始大小 |
dilated convolution 带洞卷积减少了核的大小, 可以达到节省内存的作用。 而且带洞卷积的有效性基于一个假设: 紧密相邻的像素几乎相同,全部纳入属于冗余, 不如跳H(hole size)个取一个。 | ![]() |
DenseNet Dense Block模块,其中层数为5, 即具有5个BN+Relu+Conv(3*3)这样的layer, 网络增长率为4,简单的说就是每一个layer输出的 feature map的维度为4。 | ![]() |
DenseNet-BC的网络结构参数 其中网络增长率K=32, conv 代表BN-ReLU-Conv | ![]() |
DenseNet在ImageNet上 DenseNet-BC和ResNet对比 | ![]() |
在空洞卷积中有个重要的参数叫rate, 这个参数代表了空洞的大小。 | ![]() |
当rate =1, 可以把红色的点想象成在原图上 的采样点就是原图不丢失任何信息采样 如图(a) | ![]() |
当rate=2, 可以把红色的点想象成在原图上 的采样点就是在原图上每隔一(rate-1)个像素采样, 如图b, 然后将采样后的图像与kernel做卷积, 这样做其实变相增大了感受野。 | ![]() |
当rate=4, 可以把红色的点想象成在原图上 的采样点 如图(C) | ![]() |
DeepLab V3 第一种延伸架构Going Deeper(Cascaded Module) | ![]() |
Output Stride=16 | 表示原本图片是feature map的16倍大 |
复制Resnet中最后一个Convolution Block (Block 4), 并连续接在后端(图中的Block 5 + 6 + 7), 以取得更多multi -scale cascade context。 这里为了维持相同的feature map大小 在后面的block上所使用的 Atrous Rate需要以指数成长。 | ![]() |
DeepLab V3 第二种延伸架构ASPP(Parallel Module) | ![]() |
DeepLab V3 第二种延伸架构ASPP(Parallel Module) 在最后的feature map上, 接上平行的Convolution Block, 每一个Block取用不同rate的Atrous Convolution, 最后将所有的资讯合并起来再做预测。 ASPP在原本的DeepLab就已经被提出了, 但是这边作者另外在ASPP后 接上了Batch Normalization, 另外加入了 前面Image Feature Map一起合并 做Global Average Pooling , 实验也证明这样的小技巧是有效的 | ![]() |
upsample意思为上采样, 简单来说就是pooling的逆过程, 所以pooling也就是下采样, 采样后数据数量减少 | ![]() |
下面解释FCN中是如何 实现upsample,FCN作者分为 FCN-32s,FCN-16s,FCN-8s三种 | ![]() |
image是原图像, conv1,conv2..,conv5为卷积操作, pool1,pool2,..pool5为pool操作 (pool就是使得图片变为原图的1/2), 注意con6-7是最后的卷积层, 最右边一列是upsample后 的end to end结果。 必须说明的是图中nx是指对应的 特征图上采样n倍(即变大n倍), 并不是指有n个特征图, 如32x upsampled 中的32x 是图像只变大32倍, 不是有32个上采样图像, 又如2x conv7是 指conv7的特征图变大2倍。 | ![]() |