可变性卷积的认识
可变形卷积
Deformable Convolution。
可变形卷积由微软亚洲研究院的研究团队提出的:
(1)DCNv1
- 论文地址: https://arxiv.org/abs/1703.06211
https://arxiv.org/abs/1703.06211
(2)DCNv2: More Deformable, Better Results
- 论文链接:
https://arxiv.org/abs/1811.11168https://arxiv.org/abs/1811.11168
标准卷积
传统卷积是对输入特征图的每一个位置施加相同的权重,并在固定的感受野上进行计算。这种固定的几何结构对空间上存在复杂变形(如旋转、缩放、非刚性变形等)的目标存在局限性。
Deformable Convolution
可变形卷积的核心思想是引入自适应的空间位移(offsets),灵活应对几何变形,从而更好的捕捉和建模物体细节。
图解可变形卷积
1.DCNv1
1.实现步骤:
- 学习偏移量:通过额外的卷积层来学习卷积核在每个位置的偏移量(offsets)。
- 采样和卷积:根据学习到的偏移量对输入特征图进行采样,进而完成卷积操作。
图解:
-
Conv: 用于生成特征图和偏移量的卷积层。
-
Offset Field: 通过卷积生成的偏移量,用于指导后续的可变形卷积如何“变形”。
-
2N:
-
对于 N 大小的卷积核(如 3 x 3 的核 N=9),需要生成 N 个偏移向量。
-
偏移向量包含 x 和 y 两个方向,因此偏移量的维度是 2 x N。
-
-
Deformable Convolution: 最终结合偏移量后,在输入特征图上进行自适应采样的卷积操作。
-
偏移量共享,权重独立;
数解可变形卷积
采样点集合
- 卷积核的采样点集合 R 公式如下表示:k 是卷积核大小
- 如果考虑膨胀卷积:d 是膨胀率, d = 1 就是不膨胀
于是就有了上面的R: 3 x 3,且 d = 1:
标准卷积
- 标准卷积操作公式
- p_0:中心位置坐标
:卷积核的采样点集合。
:相对于中心点
的第 n 个采样点的位置。
:卷积核在第 n 个位置的权重。
:输入特征图 x 在位置
处的像素值。
可变形卷积
该公式是可变形卷积操作,其中p_0表示中心位置坐标:
-
:卷积核第 n 个位置的偏移量,它通过额外的卷积层动态学习得到。
非整数位置
- 学习到的偏移位置并非整数,通过双线性插值计算得到。
实验效果
- 标准卷积和可变形卷积的效果对比:数据来自论文
- 可变形卷积通过将采样位置与感兴趣的实例对齐来帮助更好地进行特征采样,并更好地处理比例、旋转和纵横比的变化。