使用了adaptive channel mixing和adaptive space mixing,即ACM和ASM,从两个维度充分利用了采样点特征
三:具体实现细节
adaptive 3D feature sampler
首先将C2~C5的feature maps投射到3D feature space上,利用如下公式计算每层的
z
j
z_j
zj(其中的
S
b
a
s
e
S_{base}
Sbase=4,也就是C2的缩放倍数),同时将每个特征图的长宽rescale成
W
/
S
b
a
s
e
W/S_{base}
W/Sbase和
H
/
S
b
a
s
e
H/S_{base}
H/Sbase,对齐
x
−
x-
x−和
y
−
a
x
i
s
y-axis
y−axis
构造好了3D特征空间,queries也仿照了conditional Detr中的解耦思想,q_content和posotional vector。重点来了,posotional vector不是(x, y, w, h),而是利用下面公式转化为了(x, y, z, r),分别代表中心坐标,bounding box面积的log,bounding box的长宽比的log。这样就将posotional vector转换到了3D坐标系中,方便后面的采样:
根据q_content,生成x, y, z的offsets,加到原先的坐标上作为最终采样点坐标,利用公式如下:
现在每一个query都在3D feature space中找到了
P
i
n
P_{in}
Pin个采样点坐标了,那么就差特征融合了。根据(x, y)做线性插值,可以在四个特征面上各得到一个特征向量,最后利用z坐标计算采样点离每个特征面的距离远近,softmax后作为每个特征向量的权重,最后相加作为采样点的特征。利用的公式如下 :
每个query得到了
P
i
n
P_{in}
Pin个采样点特征,难免有点少。作者利用了grouping mechanism,类似multi-heads,最终得到的采样结果是(num_queries, num_groups,
P
i
n
P_{in}
Pin, feature_dim/num_groups)