对卷积层dilation膨胀的作用的理解,caffe-ssd dilation Hole算法解析

本文深入解析图像分割方法Deeplab及Hole算法,介绍如何通过修改VGG16网络结构,使用dilation方法实现更dense的scoremap,提升特征图密度,以增强模型对图像细节的捕捉能力。
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.youkuaiyun.com/cai13160674275/article/details/71155295

先转一篇大佬的博客论文阅读笔记:图像分割方法deeplab以及Hole算法解析


下面是caffe-ssd的vgg16输出后的变化,减少了一个pooling,stride=1,然后下一层采用了 dilation方法,作用按上面博客说是

既想利用已经训练好的模型进行fine-tuning,又想改变网络结构得到更加dense的score map.

即想让输出的feature map更加的稠密,于是用了hole算法,


下面一个图能说明作用

这里写图片描述

上图的颜色其实有问题,应该这么看,图a的输出0123对于图b输出的0246,然后再下一层(c)采用hole算法,c的第三个输出来自0,2,4这对应a中输出的123,所以c层有a的下一层的所有内容,同时又增加到7个输出(相比与原始a的下一层的2个输出),所以输出变得dense了


 
  1. layer {
  2. name: "pool5" //和vgg16的差别,修改了输出
  3. type: "Pooling"
  4. bottom: "conv5_3"
  5. top: "pool5"
  6. pooling_param { //注意这个pooling层,步长为 1,pad为 1那么pool层保持原fmap不变,所以 300* 300的图像到这里是 19* 19300/ 16
  7. pool: MAX
  8. kernel_size: 3
  9. stride: 1
  10. pad: 1
  11. }
  12. }
  13. layer {
  14. name: "fc6" //全连接层
  15. type: "Convolution"
  16. bottom: "pool5"
  17. top: "fc6"
  18. param {
  19. lr_mult: 1.0
  20. decay_mult: 1.0
  21. }
  22. param {
  23. lr_mult: 2.0
  24. decay_mult: 0.0
  25. }
  26. convolution_param {
  27. num_output: 1024
  28. pad: 6
  29. kernel_size: 3 // 6×( 3 -1)+ 1= 13,所以pad= 6
  30. weight_filler {
  31. type: "xavier"
  32. }
  33. bias_filler {
  34. type: "constant"
  35. value: 0.0
  36. }
  37. dilation: 6 //膨胀系数 http://blog.youkuaiyun.com/jiongnima/article/details/ 69487519 这篇博客讲的很清楚,理解为放大,没有的地方变成 0
  38. }
  39. }




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值