zoukankan      html  css  js  c++  java
  • 扩张卷积(dilated convolution)

    最早出现在DeeplLab系列中,作用:可以在不改变特征图尺寸的同时增大感受野,摈弃了pool的做法(丢失信息);

    我们设: kernel size = k, dilation rate = d, input size = W1, output size = W2, stride=s, padding=p;

    Dilation convolution(扩张卷积)的原理其实也比较简单,就是在kernel各个像素点之间加入0值像素点,变向的增大核的尺寸从而增大感受野。

    结构如下:

    如上图所示,(a)是我们常见的卷积核,可以看成d=1的扩张卷积,核的尺寸为3,感受野为3;(b)是d=2的扩张卷积,核的尺寸上升为5=2*(3-1)+1,如果与(a)叠加使用的话感受野则为7;(c)是d=4的扩张卷积,核的尺寸上升为9=4*(k-1)+1,若与(a)(b)叠加则感受野区域为15;

     (1)经过dilation rate放大后,fliter大小上升为:k*(d-1)+1;

    (2)扩张卷积的输入和输出特征图的尺寸关系如下:

            {color{Purple}W_{2} = frac{ W_{1} + 2p -d(k-1)-1}{s} + 1 }

    ps:在s=1,k=3时,令d = p,则输出特征图尺寸不变

    扩张卷积可用于图像分割、文本分析、语音识别等领域;

     存在的问题棋盘效应(特征图不是处处可导!)

     解决方法:使用锯齿状的卷积核

  • 相关阅读:
    Spring注解@Component、@Repository、@Service、@Controller区别
    多线程基本知识
    分布式与集群的区别
    Top 10 Uses For A Message Queue
    redis 总结
    redis 学习
    线程控制-延时与守护
    kafka 教程(一)-初识kafka
    Kafka 教程(二)-安装与基础操作
    ZooKeeper-安装
  • 原文地址:https://www.cnblogs.com/zf-blog/p/12101300.html
Copyright © 2011-2022 走看看