avatar

Catalog
卷积之空洞卷积与形变卷积

最近看了空洞卷积核形变卷积,这里大致记录一下。

Convolution Filter

普通卷积中,卷积核是方形的,例如 3X3,在图片上扫描得到特征图。个人认为大小卷积核,3*3,9X9区别在于:

  • 感受野变化

    • 9*9 感受野明显是非常大的,对应的提取到的特征更加的整体性;
    • 3*3 卷积是可以堆叠形成9X9的感受野,但是更多的卷积层堆叠,提取到的特征也就会更加的细腻

    对于姿态估计任务来说,看到的更多,人更整体似乎会更好

  • 计算量的变化

    3*3卷积核参数为9,9X9参数为81,参数翻了9倍,计算量大,需要更多的显存

Dilated Convolutions

参考:https://blog.csdn.net/qq_36338754/article/details/96969208?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.nonecase&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.nonecase

初步认识

空洞卷积,也称扩张卷积、膨胀卷积,可以在不增加参数量的情况下起到大卷积核的效果。最早是用于语义分割的,

顾名思义,在卷积核中注入空洞,扩大了感受野,

img

几个要点

1594301948766

dilated设置为2时,3*3卷积核感受野为7X7, 设置为4,感受野为9X9

Note:

  • 红点表示感受野中心

  • 外围图像表示感受野

  • 扩张卷积不会影响图像尺寸,卷积之后图像尺寸计算依然是:

Pytorch 中空洞卷积实现

python
1
2
3
import torch.nn as nn
conv1 = nn.Conv2d(1, 1, 3, stride=1, bias=False, dilation=1) # 普通卷积
conv2 = nn.Conv2d(1, 1, 3, stride=1, bias=False, dilation=2) # dilation就是空洞率,即间隔

Deform Convolution

形变卷积顾名思义,卷积核不再一定是方形了,在原来方形的基础上增加了一个offest 偏移量,于是可以发生形变,如下图:

1594303449207

卷积核可以任意的变形。

1594303485745

偏移量是通过一个普通的卷积层计算得到。

1594307447854

看以看出随着训练,形变卷积核采样位置的变化,在形成一个个形状,而不在是方形了。

多尺度

借鉴于别人—-在深度学习很多计算机视觉任务中,都用到了多尺度,这是在模仿人眼观察物体,

  • 近大远小
  • 远景完整,但是模糊
  • 近景细节丰富,但是不完整

以上是对空对卷积、形变卷积的初步理解,后续有改进、错误会及时更新

Author: 星星泡饭
Link: https://luoyou.art/2020/07/09/%E5%8D%B7%E7%A7%AF%E4%B9%8B%E7%A9%BA%E6%B4%9E%E5%8D%B7%E7%A7%AF%E4%B8%8E%E5%BD%A2%E5%8F%98%E5%8D%B7%E7%A7%AF/
Copyright Notice: All articles in this blog are licensed under CC BY-NC-SA 4.0 unless stating additionally.
Donate
  • 微信
    微信
  • 支付寶
    支付寶

Comment