原文链接:https://arxiv.org/pdf/2210.09615.pdf
I 引言
目前的融合主要有决策级融合和特征级融合。前者的性能往往受限,后者更加流行。特征级融合中,RoI融合与点级/体素级融合均会因为3D到2D的投影而损失信息,且融合粒度较粗,只能建立多模态特征之间的大致关系。
为解决这一问题,本文提出同态特征融合和交互策略(HMFI)。首先图像体素提升模块(IVLM)使用点云作为深度提示,将图像像素提升为体素。然后基于自注意力的查询融合机制(QFM)自适应地组合图像与点云特征:每个点云体素网格会查询所有图像体素特征,并与原始点云体素特征融合,得到联合特征。体素特征交互模块(VFIM)则从物体级别出发,在3D RoI增强点云与图像同态表达的一致性;具体来说,进行体素RoI池化后,可以得到RoI特征对的集合,使用余弦相似度损失强制两模态的RoI特征一致。
3 方法
3.1 框架概述
模型如下图所示。首先使用点编码网络提取点云特征,池化得到体素特征
P
∈
R
X
P
×
Y
P
×
Z
P
×
C
F
P\in \mathbb{R}^{X_P\times Y_P\times Z_P\times C_F}
P∈RXP×YP×ZP×CF;图像
I
~
∈
R
W
I
~
×
H
I
~
×
3
\tilde{I}\in \mathbb{R}^{W_{\tilde{I}}\times H_{\tilde{I}}\times 3}
I~∈RWI~×HI~×3输入ResNet-50主干提取图像特征
F
∈
R
W
F
×
H
F
×
C
F
F\in \mathbb{R}^{W_F\times H_F\times C_F}
F∈RWF×HF×CF。
图像体素提升模块(IVLM)将图像特征
F
F
F提升到3D同态图像体素空间,得到
I
∈
R
X
I
×
Y
I
×
Z
I
×
C
F
I\in \mathbb{R}^{X_I\times Y_I\times Z_I\times C_F}
I∈RXI×YI×ZI×CF。查询融合机制(QFM)将同态点云体素
P
P
P与图像体素
I
I
I进行融合,得到融合表达
P
∗
∈
R
X
P
×
Y
P
×
Z
P
×
C
F
P^\ast \in \mathbb{R}^{X_P\times Y_P\times Z_P\times C_F}
P∗∈RXP×YP×ZP×CF。最后,使用检测模块在
P
∗
P^\ast
P∗生成边界框并预测物体类别。同时,体素特征交互模块(VFIM)基于检测结果进行物体级别的特征交互,以提高跨模态的语义一致性。
3.2 图像体素提升模块
下图为本文的提升方法。首先将像素提升为棱台特征
G
G
G,然后将图像像素特征
F
m
,
n
∈
R
C
F
F_{m,n}\in\mathbb{R}^{C_F}
Fm,n∈RCF根据其深度区间值
D
m
,
n
D_{m,n}
Dm,n沿像素射线投影到3D空间。
深度区间是将深度图
D
∈
R
W
F
×
H
F
×
R
D\in\mathbb{R}^{W_F\times H_F\times R}
D∈RWF×HF×R(由点云投影到图像上得到)进行线性增长深度离散化(LID)得到的。使用图像特征
F
F
F与深度分布
D
D
D的外积得到棱台特征
G
∈
R
W
F
×
H
F
×
R
×
C
F
G\in\mathbb{R}^{W_F\times H_F\times R\times C_F}
G∈RWF×HF×R×CF:
G
m
,
n
=
F
m
,
n
⊗
D
m
,
n
G_{m,n}=F_{m,n}\otimes D_{m,n}
Gm,n=Fm,n⊗Dm,n最后使用三线性插值将棱台特征
G
G
G转换到3D空间,得到图像体素特征
I
I
I。
具体来说,为得到图像体素特征
I
i
∈
R
C
F
I_i\in \mathbb{R}^{C_F}
Ii∈RCF,需要基于校准矩阵
C
M
CM
CM,在
G
G
G内采样相应的特征。对应位置为
G
i
p
=
C
M
⋅
I
i
p
G_i^p=CM\cdot I_i^p
Gip=CM⋅Iip(
G
i
p
,
I
i
p
∈
R
3
G_i^p,I_i^p\in\mathbb{R}^3
Gip,Iip∈R3表示第
i
i
i个网格对应的3D位置),最后使用三线性插值采样位置
G
i
p
G_i^p
Gip周围的棱台特征得到
I
i
I_i
Ii。
3.3 查询融合机制
查询融合机制(QFM)使每个点云体素能感知所有图像体素,选择性地融合图像体素特征。使用点云体素特征
F
P
F_P
FP作为查询,图像体素特征
F
I
F_I
FI作为键和值,通过注意力机制得到融合体素特征
P
∗
P^\ast
P∗。
具体来说,
F
P
∈
R
M
×
C
F
F_P\in\mathbb{R}^{M\times C_F}
FP∈RM×CF为所有非空点云体素特征;由于图像体素特征更加密集,为减小计算复杂度,使用3D最大池化以比例因数
λ
\lambda
λ下采样,得到信息最丰富的特征
I
∗
∈
R
X
I
λ
×
Y
I
λ
×
Z
I
λ
×
C
F
I^\ast\in\mathbb{R}^{\frac{X_I}{\lambda}\times\frac{Y_I}{\lambda}\times\frac{Z_I}{\lambda}\times C_F}
I∗∈RλXI×λYI×λZI×CF,然后拉平为
F
I
∈
R
L
×
C
F
F_I\in\mathbb{R}^{L\times C_F}
FI∈RL×CF,其中
L
=
X
I
λ
×
Y
I
λ
×
Z
I
λ
L=\frac{X_I}{\lambda}\times\frac{Y_I}{\lambda}\times\frac{Z_I}{\lambda}
L=λXI×λYI×λZI。
然后通过多头注意力:
Q
i
=
F
P
⋅
W
i
Q
∈
R
M
×
d
k
,
K
i
=
F
I
⋅
W
i
K
∈
R
L
×
d
k
,
V
i
=
F
I
⋅
W
i
V
∈
R
L
×
d
v
Q_i=F_P\cdot W_i^Q\in\mathbb{R}^{M\times d_k},K_i=F_I\cdot W_i^K\in\mathbb{R}^{L\times d_k},V_i=F_I\cdot W_i^V\in\mathbb{R}^{L\times d_v}
Qi=FP⋅WiQ∈RM×dk,Ki=FI⋅WiK∈RL×dk,Vi=FI⋅WiV∈RL×dv
A
M
=
Concat
(
head
1
,
head
2
,
⋯
,
head
r
)
W
O
A_M=\textup{Concat}(\textup{head}_1,\textup{head}_2,\cdots,\textup{head}_r)W^O
AM=Concat(head1,head2,⋯,headr)WO
head
i
=
softmax
(
Q
i
K
i
T
d
k
)
V
i
\textup{head}_i=\textup{softmax}\left(\frac{Q_iK^T_i}{\sqrt{d_k}}\right)V_i
headi=softmax(dkQiKiT)Vi 最后,将非空点云体素
F
P
F_P
FP与
A
M
A_M
AM拼接得到
F
P
∗
∈
R
M
×
2
C
F
F_P^\ast\in\mathbb{R}^{M\times2C_F}
FP∗∈RM×2CF,并还原到3D空间中,得到
P
∗
∈
R
X
P
×
Y
P
×
Z
P
×
2
C
F
P^\ast\in\mathbb{R}^{X_P\times Y_P\times Z_P\times 2C_F}
P∗∈RXP×YP×ZP×2CF作为3D目标检测器的输入。
3.4 体素特征交互模块
考虑到不同模态间物体级别的表达应该相似,可以使用体素特征交互模块(VFIM)进行
P
P
P和
I
I
I之间的特征交互。如下图所示,从3D检测头采样
N
N
N个3D提案
B
=
{
B
1
,
B
2
,
⋯
,
B
N
}
B=\{B_1,B_2,\cdots,B_N\}
B={B1,B2,⋯,BN},并在
P
P
P和
I
I
I中进行体素RoI池化,得到相应的RoI特征集合
P
B
=
{
P
B
1
,
P
B
2
,
⋯
,
P
B
N
}
P_B=\{P_{B_1},P_{B_2},\cdots,P_{B_N}\}
PB={PB1,PB2,⋯,PBN}与
P
I
=
{
P
I
1
,
P
I
2
,
⋯
,
P
I
N
}
P_I=\{P_{I_1},P_{I_2},\cdots,P_{I_N}\}
PI={PI1,PI2,⋯,PIN}。
为增大RoI特征对
(
P
B
i
,
P
I
i
)
(P_{B_i},P_{I_i})
(PBi,PIi)之间的相似度,使用编码器
Ω
\Omega
Ω和MLP预测器
Ψ
\Psi
Ψ将RoI特征编码到度量空间中:
e
P
=
Ω
(
P
B
i
)
,
p
P
=
Ψ
(
e
P
)
;
e
I
=
Ω
(
I
B
i
)
,
p
I
=
Ψ
(
e
I
)
e_P=\Omega(P_{B_i}),p_P=\Psi(e_P);e_I=\Omega(I_{B_i}),p_I=\Psi(e_I)
eP=Ω(PBi),pP=Ψ(eP);eI=Ω(IBi),pI=Ψ(eI),然后使用余弦相似度使特征距离最小化:
CosSim
(
p
,
e
)
=
−
p
∥
p
∥
2
∗
e
∥
e
∥
2
\textup{CosSim}(p,e)=-\frac{p}{\|p\|_2}\ast \frac{e}{\|e\|_2}
CosSim(p,e)=−∥p∥2p∗∥e∥2e 使用对称相似性约束损失:
L
vfim
=
1
2
CosSim
(
p
P
,
StopGrad
(
e
I
)
)
+
1
2
CosSim
(
p
I
,
StopGrad
(
e
P
)
)
L_\textup{vfim}=\frac{1}{2}\textup{CosSim}(p_P,\textup{StopGrad}(e_I))+\frac{1}{2}\textup{CosSim}(p_I,\textup{StopGrad}(e_P))
Lvfim=21CosSim(pP,StopGrad(eI))+21CosSim(pI,StopGrad(eP))
3.5 损失函数
总的损失函数为
L
total
=
L
rpn
+
L
rcnn
+
γ
L
vfim
L_\textup{total}=L_\textup{rpn}+L_\textup{rcnn}+\gamma L_\textup{vfim}
Ltotal=Lrpn+Lrcnn+γLvfim其中
L
rpn
L_\textup{rpn}
Lrpn与
L
rcnn
L_\textup{rcnn}
Lrcnn分别为区域提案网络和提案细化网络的训练目标,且
L
rpn
=
w
1
L
cls
+
w
2
L
reg
L_\textup{rpn}=w_1L_\textup{cls}+w_2 L_\textup{reg}
Lrpn=w1Lcls+w2Lreg分类损失使用focal损失,以平衡正负样本,边界框回归损失使用SmoothL1损失。提案细化网络的损失
L
rcnn
L_\textup{rcnn}
Lrcnn由IoU指导的置信度预测损失与边界框回归损失之和,即
L
rcnn
=
L
iou
+
L
refine
L_\textup{rcnn}=L_\textup{iou}+L_\textup{refine}
Lrcnn=Liou+Lrefine
4 实验
4.3 KITTI数据集上的结果
KITTI测试集:本文的方法能达到SotA,且在自行车的检测性能上能大幅超过其余方法。
综合来看,本文的HMFI方法能比其余方法更好地平衡精度与效率。
4.4 Waymo Open数据集上的结果
实验表明,本文的方法有比其余方法更好的性能,特别是在行人和自行车的检测上;且对于激光雷达点数较少的物体,检测性能很好。
4.5 消融研究
实验表明HMFI的三个重要组件(QFM、IVLM、VFIM)均能带来性能提升。