论文及代码详解——可变形卷积(DCNv1)

论文:《Deformable Convolutional Networks》

论文详解

Deformable Convolution


普通卷积的数学表达
普通的二维卷积包括两个步骤:
1)在输入特征图x上使用regular gird R进行采样;
2)以w加权的采样值的总和。网格R定义接收域的大小和扩张。例如,

R = { ( − 1 , − 1 ) , ( − 1 , 0 ) , … , ( 0 , 1 ) , ( 1 , 1 ) } \mathcal{R}=\{(-1,-1),(-1,0), \ldots,(0,1),(1,1)\} R={(1,1),(1,0),,(0,1),(1,1)}
定义了一个dilation=1, 3x3的卷积。
对于输出特征图 y y y上的每个位置 p 0 p_0 p0
Eq(1)

y ( p 0 ) = ∑ p n ∈ R w ( p n ) ⋅ x ( p 0 + p n ) , \mathbf{y}\left(\mathbf{p}_0\right)=\sum_{\mathbf{p}_n \in \mathcal{R}} \mathbf{w}\left(\mathbf{p}_n\right) \cdot \mathbf{x}\left(\mathbf{p}_0+\mathbf{p}_n\right), y(p0)=pnRw(pn)x(p0+pn),

其中 p n p_n pn穷举了 R \mathcal{R} R中的所有位置。


可变形卷积的数学表达
在可变形卷积中,regular grid R用偏移量 { Δ p n ∣ n = 1 , … , N } \left\{\Delta \mathbf{p}_n \mid n=1, \ldots, N\right\} { Δpnn=1,,N}进行增广, 其中 N = ∣ R ∣ N=|\mathcal{R}| N=R

上述的式子就变成了:

Eq(2)

y ( p 0 ) = ∑ p n ∈ R w ( p n ) ⋅ x ( p 0 + p n + Δ p n ) \mathbf{y}\left(\mathbf{p}_0\right)=\sum_{\mathbf{p}_n \in \mathcal{R}} \mathbf{w}\left(\mathbf{p}_n\right) \cdot \mathbf{x}\left(\mathbf{p}_0+\mathbf{p}_n+\Delta \mathbf{p}_n\right) y(p0)=pnRw(pn)x(p0+pn+Δpn)

现在,采样是在不规则和偏移位置 p n + ∆ p n p_n+∆p_n pn+pn上。由于偏移量 ∆ p n ∆p_n pn通常为分数阶,因此通过双线性插值实现式(3)为:

Eq(3)

x ( p ) = ∑ q G ( q , p ) ⋅ x ( q ) \mathbf{x}(\mathbf{p})=\sum_{\mathbf{q}} G(\mathbf{q}, \mathbf{p}) \cdot \mathbf{x}(\mathbf{q}) x(p)=qG(q,p)x(q)

其中 p p p表示任意(分数)位置(对于Eq. (2) p = p 0 + p n + ∆ p n p = p_0 +p_n +∆p_n p=p0+pn+pn), q q q 枚举特征映射x中所有积分空间位置,G(·,·)为双线性插值核。注意G是二维的。它被分成两个一维的核:

Eq(4)

G ( q , p ) = g ( q x , p x ) ⋅ g ( q y , p y ) G(\mathbf{q}, \mathbf{p})=g\left(q_x, p_x\right) \cdot g\left(q_y, p_y\right) G(q,p)=g(qx,px)

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

zyw2002

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值