1zb/deformable-convolution-pytorch

each kernel shares the same offsets?

ran337287 opened this issue · 3 comments

#According to test.py, the line 'offset=conv(inputs)' is to learn the offset of neighbor domain of each pixel, so the size of offsets is 118H*W. if the size of input is 1x3xHxW and the size of output is 1x4xHxW, does it means that there has 4 kernels,and each kernel shares the same offsets?

1zb commented

Hi, @ran337287. You can say there is only one kernel with shape (4, 3, kH, kW), or four kernels with shape (1, 3, kH, kW). Both are acceptable. So yes, in every spatial location (i, j) ( 0 < i < H, 0 < j < W), four kernels share the same offsets.

bkvie commented

One could probably change that by modifying conv2d( groups=1) although that would not be what the original paper intended.

bkvie commented

@1zb would it make sense to have individual offsets? So 4 kernels of shape (1,3, kH, kW) with 4 offsets?