【Deformable Convolution】可变形卷积记录

every blog every motto: You can do more than you think.
https://blog.csdn.net/weixin_39190382?type=blog

0. 前言

可变形卷积记录

1. 正文

预印版:
Deformable Convolutional Networks v1
Deformable ConvNets v2: More Deformable, Better Results
发表版:
Deformable Convolutional Networks

1.1 简介

在这里插入图片描述

  • a普通卷积
  • b,c,d 可变卷积
    在图a标准卷积核参数中添加一个方向参数(图b绿色箭头),使得卷积核可以变为任意形状。
    其中,b,c是可变卷积的特殊形式。

1.2 为什么要用可变形卷积

我们知道,卷积核的目的是为了提取输入的特征,在传统卷积中卷积核通常是固定尺寸。这种卷积核存在的最大问题是对未知变化的适应性,泛化能力不强。

在这里插入图片描述

  • 最上层的图像是大小不同物体的激活单元
  • 中间层是为了得到顶层激活单元所进行的采样过程。
    • 左图是标准的3*3采样
    • 右图是非标准的采样,依然是3*3
  • 最下层是为了得到中间层进行的采样。

可以发现,可变形卷积在采样时更贴近物体的形状和尺寸,而标准卷积无法做到。

1.3 实现

如前所述,可变形卷积在传统卷积的基础上增加了卷积核的方向向量,使得卷积核的形态更贴近物体,那么该过程是如何实现的?

  1. 开始和正常卷积一样,利用传统卷积提取特征图
  2. 把得到的特在图作为输入,对特征图再施加一个卷积,这么做的目的是为了得到可变形卷积的偏移量
  3. 上面两个特在图相加
  4. 偏移层是2N,是因为在平面上做移动,需要改变x和y两个方向。
  5. 在训练时,用于生成特征图的卷积核和用于生成偏移量的卷积核是同步学习的

注意: 特征图里面的值是浮点数,而坐标是整数。这里面需要涉及到类型转换,具体参考后面链接

请添加图片描述


请添加图片描述


参考9中,介绍了v2版本增加了对偏移增加权重,比较有意思,有兴趣的可以看下。

  • v1中引入的offset是要寻找有效信息的区域位置
  • v2中引入权重系数是要给找到的这个位置赋予权重,这两方面保证了有效信息的准确提取。

参考

[1] Deformable Convolutional Networks v1
[2] Deformable ConvNets v2: More Deformable, Better Results
[3] Deformable Convolutional Networks
[4] https://blog.csdn.net/LEEANG121/article/details/104234927
[5] https://blog.csdn.net/scut_salmon/article/details/97050908
[6] https://blog.csdn.net/mykeylock/article/details/77746499
[7] https://blog.csdn.net/kevin_zhao_zl/article/details/89319756
[8] https://blog.csdn.net/jiangqixing0728/article/details/126269423
[9] https://www.jianshu.com/p/55ddeb498c65

猜你喜欢

转载自blog.csdn.net/weixin_39190382/article/details/129086512
今日推荐