Proposal生成
球形Anchor
STD方法使用球形Anchor,不同的检测目标使用不同的球半径。因为球形Anchor没有方向,网络后期直接预测角度,所以Anchor的数量比传统的带方向的长方体Ancho少了50%减少到了16K左右,通过NMS方式(IoU是BEV投影上的)删除冗余的Anchor最终减少到500个左右。且球形Anchor比传统Anchor拥有更高的recall。
proposal 生成网络
在每个Anchor中收集点,输入PointNet进行分类前景、背景。
然后计算Anchor的中心偏移量和预定义大小的偏移量,对Anchor进行精修。
角度回归方面:定义了
N
a
N_a
Na个角度箱子(angle bins)。残差值根据bin的值进行回归。(实验中
N
a
=
12
N_a=12
Na=12)。
使用基于分类评分的NMS和面向BEV的IoU来消除冗余的proposals。在训练期间保留多达300个proposals,在测试期间保留100个proposals。
Anchor 类别定义
因为球形Anchor与传统Anchor不同,所以作者提出了一种新的方式——PointsIoU,使用两个区域相交区域内的点数与两个区域联合区域内的点数的商。 > 0.55 >0.55 >0.55则为前景,否则为背景。
Proposal特征提取
动机
因为效率的问题使用PointsPool 和 FC 替代了Point++中的3个SA模块,同时又有很好的效果。
PointsPool 层
总共分三个步骤:
- 在每个Proposal中选取N个点。每个点减去Proposal的中心并做刚性旋转到规范的位置下。
- 将Proposal体素化,每个体素中采样 N r = 35 N_r=35 Nr=35个点。体素特征包括点的标准坐标特征和语义特征。
- 使用VoxelNet中的VFE来抽取特征。
Box 预测网络
Box估计部分
使用两个FC层(通道数为(512,512))来抽取每个proposal的特征。
使用另外两个FC层来进行分类和回归预测。直接预测ground truth和proposal的偏移量
(
t
l
,
t
w
,
t
h
)
(t_l,t_w,t_h)
(tl,tw,th)和中心偏移
(
t
x
,
t
y
,
t
z
)
(t_x,t_y,t_z)
(tx,ty,tz)
IoU估计部分
TODO
损失函数
TODO
实验部分
TODO