摘要
本文提出了一种基于自集成单级目标检测器(SE-SSD)的室外点云三维目标检测方法。我们的重点是利用我们的公式约束开发软目标和硬目标来联合优化模型,而不引入额外的计算在推理中。具体来说,SE-SSD包含一对teacher 和student ssd,在其中我们设计了一个有效的基于iou的匹配策略,从teacher中过滤软目标,并制定一致性损失对齐student的预测与他们。此外,为了最大限度地利用提炼出来的知识来集成teacher,我们设计了一种新的增强方案来产生形状感知的增强样本来训练student,目的是鼓励student推断出完整的物体形状。最后,为了更好地利用硬目标,我们设计了一个ODIoU损失来监督student与预测盒中心和方向的约束。我们的SE-SSD达到顶级性能相比之前所有出版的作品。此外,它还以超高的推理速度在KITTI基准测试中获得了最高的汽车检测精度(在BEV和3D排行榜上分别排名第一和第二)。
简介
为了支持自动驾驶,通常采用激光雷达传感器的3D点云来检测车辆附近的目标。这是一个强大的方法,因为点云随时可用,不管天气(雾还是阳光)和白天的时间(白天还是晚上)。因此,各种基于点云的3D检测器最近被提出。
为了提高检测精度,提取特征的质量是一个重要的因素。这适用于单级和两级探测器。例如,一系列的工作[24,4,25,23]集中于改进区域提议对齐的特征,以更好地细化第二阶段网络。此外,许多方法[3,10,29,12,33,19]试图通过融合RGB图像和3D点云来提取更有分辨力的多模态特征。对于单级检测器,point - gnn[26]采用了一种图神经网络来获得更紧凑的点云表示,而TANet[17]设计了一个精致的三重关注模块来考虑特征智能关系。虽然这些方法提供了重要的见解,但精细的设计往往是复杂的,可能会减缓推理,特别是对于两级探测器。
为了满足实际需求,特别是自动驾驶领域的需要,三维目标检测要求在高精度的基础上提高效率。因此,另一个工作流,例如SASSD[8]和Associate-3Ddet[5],旨在利用辅助任务或进一步的约束来改进特征表示,而不引入额外的计算开销在推理过程中。根据这一工作流程,我们制定了自集成单级目标检测器(SE-SSD),以解决仅基于激光雷达点云的具有挑战性的三维检测任务。
为了提高检测精度,同时追求高效率,我们以[27]为灵感,设计了一对teacher SSD和student SSD的SE-SSD框架。teacher SSD是student的合奏。它产生相对更精确的边界框和信心,作为软性目标来监督student。与人工标注的硬目标(标签)相比,来自teacher的软目标往往具有更高的熵,从而为student提供了更多的信息[9]来学习。因此,我们利用软目标和硬目标与我们的公式约束共同优化模型,而不产生额外的推理时间。为了使student预测的边界框和置信度更好地与软目标对齐,我们设计了一种有效的基于借据的匹配策略来过滤软目标并将其与student预测配对,并进一步制定一致性损失以减少两者之间的不对齐。
另一方面,为了使student SSD能够有效地探索更大的数据空间,我们在传统增强策略的基础上设计了一种新的增强方案,以形状感知的方式生成增强对象样本。通过该方案,我们可以鼓励模型从不完全信息中推断出完整的物体形状。它也是一个即插即用的3D探测器通用模块。此外,在监督训练中,硬目标仍然是必不可少的,因为它们是模型收敛的最终目标。为了更好地利用它们,我们制定了一种新的方向感知距离- iou (ODIoU)损失来监督student在预测的边界盒的中心和方向上的约束。总的来说,我们的SE-SSD是在完全监督的方式下训练的,以最好地提高检测性能,其中所有设计的模块只在训练中需要,所以在推理期间没有额外的计算。
总之,我们的贡献包括:(i)自组装单级目标检测器(SE-SSD)框架,通过我们制定的一致性约束进行优化,以更好地将预测与软目标对齐;(ii)一种新的增强方案,以产生形状感知的增强地物;(iii)一个方向感知的距离- iou (ODIoU)损失来监督探测器使用硬目标。我们的SE-SSD在KITTI基准测试[6]中获得了最先进的3D和BEV汽车检测性能,并在普通CPU-GPU上展示了超高的推理速度(32 FPS),明显优于所有之前发表的作品,如图1所示。
相关工作
总的来说,3D探测器分为两种类型:(i)单级探测器直接从输入特征中学习边界框和置信度,以及(ii)两级探测器使用第二阶段的区域提议对齐特征来细化第一阶段预测。因此,两级探测器往往可以从额外的级中获得更高的精度,而单级探测器通常由于网络结构更简单而运行得更快。近期趋势(见图1和表1)显示,单级检波器[8,31]的精度逐渐接近两级检波器[23,25,32]。这促使我们致力于开发一种单级探测器,并以高精度和高速为目标。
两阶段物体检测 :在这些两阶段的检测器中,PointRCNN[24]使用PointNet[21]融合语义特征和来自区域提议的原始点进行第二阶段的细化。Part-A2[25]利用基于体素的网络提取区域提案特征,以避免歧义,并进一步改进特征表示。类似地,STD[32]通过体素化将区域提议的语义特征转化为紧凑的表示,并减少锚点的数量以提高性能。PV -RCNN[23]同时利用基于点和体素的网络从区域提案内的体素和原始点中提取特征。3D-CVF[33]从多视角图像中获取语义,并在这两个阶段中融合点特征,而CLOCs PVCas[19]则融合图像和点的语义特征来改进预测的可信度。
单阶段物体检测:VoxelNet[38]提出体素特征编码层从点云中提取特征。PointPillar[11]将点云划分为柱子,以实现高效的特征学习。SECOND[30]改进了稀疏卷积[7,15],有效地从稀疏体素中提取特征。TANet[17]提出了三重注意模块,在特征提取中考虑了特征之间的关联。point - gnn[26]利用一个图神经网络来学习点特征。3DSSD[31]结合了特征采样和基于点的采样来改进分类。Associate-3Ddet[5]从完整的点云中提取特征,监督从不完整的点云中学习到的特征,鼓励模型从不完整的点云中推断。SA-SSD[8]采用与主干并行的辅助网络,通过回归盒中心和语义类来丰富特征。CIA-SSD[8]采用轻量级BEV网络提取鲁棒的空间语义特征,结合欠条感知的置信度修正和DI-NMS更好的后处理。SESS[34]受到[27]的启发,采用半监督策略来解决室内场景中的检测问题,以减少对人工标注的依赖。
与之前的工作不同,我们的目标是利用软目标和硬目标,通过我们的新约束和增强方案,在完全监督的方式中细化功能。此外,与所有之前的单级和两级探测器相比,我们的SE-SSD在KITTI基准[6]中获得了3D和BEV汽车检测的最高平均精度,并且表现出非常高的效率。
自组装单级检测器
总体框架
图2显示了我们的自集成单级目标检测器(SE-SSD)的框架,它有一个teacherSSD(左)和一个studentSSD(右)。不同于以往的室外三维目标检测工作,我们同时使用并训练了两个相同架构的ssd,这样student可以通过增强的样本探索更大的数据空间,并更好地利用老师预测的相关软目标进行优化。为了训练整个SESSD,我们首先用预先训练好的SSD模型对teacher和student进行初始化。然后,从一个输入点云开始,我们的框架有两个处理路径:
1。在第一个路径中(图2中的蓝色箭头),teacher从原始的输入点云产生相对精确的预测。然后,我们对预测结果应用一组全局变换,并将其作为软目标来监督studentSSD。
2。在第一个路径中(图2中的蓝色箭头),teacher从原始的输入点云产生相对精确的预测。然后,我们对预测结果应用一组全局变换,并将其作为软目标来监督studentSSD。
在第二个路径中(图2中的绿色箭头),我们通过与第一个路径相同的全局变换加上我们的形状感知数据增强(第3.4节)来干扰相同的输入。然后,我们将增加的输入输入给student,并使用我们的一致性损失(第3.2节)来训练它,以使student的预测与软目标相一致;(ii)当我们增加输入时,我们带着它的硬目标(图2(右上角)),用我们的方向感知距离-欠条损失(第3.3节)来监督student。
在培训中,我们对两个SSD模型进行迭代更新:使用上述两个损失优化student,使用标准指数移动平均(EMA)仅使用student参数更新teacher。这样,teacher就可以从student身上获得提炼的知识,产生软目标来监督student。所以,我们把最后一个经过训练的student称为自集成单级目标检测器。
Teacher & Student SSD架构 :该模型具有与[35]相同的结构,以有效地编码点云,但我们去掉了信心函数和DI-NMS。它包括稀疏卷积网络(SPConvNet)、BEV卷积网络(BEVConvNet)和多任务头(mhead)。BEV的意思是鸟瞰。在点云体素化后,我们找到每个体素的平均三维坐标和点密度作为初始特征,然后使用SPConvNet提取特征,该特征有四个块({2,2,3,3}子流形稀疏卷积[7]层),最后是一个稀疏卷积[15]层。接下来,我们将沿z方向稀疏的三维特征拼接成二维密集的特征,利用BEVConvNet进行特征提取。最后,我们使用MTHead回归边界框并进行分类。
一致性损失
在三维目标检测中,由于距离和目标遮挡形式的不同,预定义锚点的点云模式可能会有很大的差异。因此,相同硬目标的样本可能有非常不同的点模式和特征。相比之下,每个训练样本的软目标可以提供更多的信息,有助于揭示同一类[9]数据样本之间的差异。这促使我们将相对较精确的teacher预测作为软目标,利用它们来共同优化student与硬目标。据此,我们制定了一个一致性损失来优化student网络的软目标。
在计算一致性损失之前,我们首先设计了一种有效的基于借据的匹配策略,目的是对非常稀疏的户外点云预测的非轴向的teacher盒和student盒进行配对。为了获得高质量的软目标,我们首先过滤掉那些置信度小于τc的预测边界框(teacher和student),从而减少一致性损失的计算。接下来,我们计算每一对剩余student和teacher边界框之间的欠条,并过滤掉欠条小于阈值τI的对,从而避免使用不相关的软目标误导student;我们将N和n0分别表示为盒对的初始数量和最终数量。因此,我们只保留高度重叠的student-teacher对。最后,对于每个student盒,我们将其与拥有最大欠条的teacher边框盒配对,以增加软目标的信心。与硬目标相比,过滤后的软目标通常更接近student的预测,因为它们是基于相似的特征进行预测的。因此,软目标可以更好地引导student对预测进行微调,减少梯度方差,从而获得更好的训练。
与IoU loss不同,Smooth-L1loss[16]在预测中可以均匀地对待所有维度,不偏向任何一个特定的维度,不同维度对应的特征也可以均匀地优化。因此,我们用它来表示我们的边界盒一致性损失(),以最小化每对teacher和student边界盒之间的错位误差:
{x, y, z}, {w、l、h}, r表示中心的位置,大小和方向的边界框,分别预测的teacher(下标 t)或student(下标s),表示的 loss和 表示第 i 个student边界框与所有teacher边界框的最大 IoU。接下来,为了最小化student和teacher预测置信度的差异,我们制定了分类分数的一致性损失(Lc cls):
其中$ \mathcal{L}{\delta{c}}^{c}\delta_{c}$的平滑- l1损失,σ(cs)和σ(ct)分别表示student和teacher的sigmoid分类分数。这里我们采用sigmoid函数对两个预测置信值进行归一化,使归一化值之间的偏差保持在一个小范围内。结合式(1)(2),可得整体一致性损失为:
我们为两个术语设置了相同的权重。
Orientation-Aware Distance-IoU Loss
在有监督的硬目标训练中,经常采用平滑l1损失[16]约束边界盒回归。然而,在室外场景中,由于距离较长和遮挡,很难从稀疏点获取足够的信息来精确预测边界盒的所有维度。为了更好地利用回归边界盒的硬目标,我们设计了方向感知的距离- iou损失(ODIoU),以更加关注预测的边界盒与ground-truth边界盒之间的盒子中心和方向的对齐;参见图3。
受[36]的启发,我们对预测的三维中心和ground-truth边界盒之间的距离施加一个约束,以最小化中心不对准。更重要的是,我们对预测的BEV角设计了一种新的方位约束,旨在进一步减小预测的BEV角与ground-truth box的方位差。在三维物体检测中,这种约束对于鸟瞰图中非轴向盒的精确对齐具有重要意义。同时,我们也发现这种约束是进一步提高检测精度的重要手段。与Smooth-L1损失相比,我们的ODIoU损失增强了盒子中心和方向的对齐,容易从分布在物体表面的点来推断,从而获得更好的性能。总的来说,我们的ODIoU损失是这样表述的:
其中、分别表示预测的和真实的边界盒,c表示两个边界盒三维中心之间的距离(见图3中的), d表示两个边界盒所包围的最小长方体的对角线长度;为bpv与的BEV取向差;是一个超参数重量。
在我们的ODIoU损失公式中,是一个重要的术语,我们专门设计它来鼓励预测的边界盒旋转到与ground-truth方向平行的最近方向。当4r等于或时,也就是说,两个盒子的方向是相互垂直的,因此这一项达到最大值。当4r等于0、π或−π时,这一项达到其最小值,即0。如图4所示,我们可以进一步观察的梯度。当训练过程最小化这一项时,它的梯度将使趋于0、π或−π,这是使损失最小化的最近位置。这是因为梯度幅度与角度差正相关,从而促进了不同训练阶段的快速收敛和平滑微调。
此外,我们还分别使用Focal loss[14]和cross-entropy loss进行边界盒分类()和方向分类()。因此,培养studentSSD的总体损失是:
其中,为回归盒的ODIoU损失,损失权值为ω1、ω2、µ皮重超参数。此外,我们的SSD可以预先训练与SE-SSD相同的设置,但没有一致性损失和teacherSSD。
形状感知数据增强
数据扩充对于提高模型的可泛化性非常重要。为了使studentSSD能够探索更大的数据空间,我们设计了一个新的形状感知数据增强方案来提高我们的检测器的性能。我们的见解来自于观察,ground-truth物体的点云模式可能会由于遮挡、距离的变化和在实践中物体形状的多样性而显著变化。因此,我们设计了形状感知的数据增强方案来模拟点云在增强数据样本时受这些因素的影响。
通过设计,我们的形状感知数据增强方案是一个即插即用模块。首先,对于点云中的每个对象,我们找到它的ground-truth边界盒形质心,并将质心与盒面连接,形成金字塔体,将对象点划分为六个子集。由于lidarpoint主要分布在物体表面,分割就像一个物体拆卸,我们的增强方案通过像拆卸部件一样操纵这些被分割的点子集,有效地增强了每个物体的点云。
通过设计,我们的形状感知数据增强方案是一个即插即用模块。首先,对于点云中的每个对象,我们找到它的ground-truth边界盒形质心,并将质心与盒面连接,形成金字塔体,将对象点划分为六个子集。由于lidarpoint主要分布在物体表面,分割就像一个物体拆卸,我们的增强方案通过像拆卸部件一样操纵这些被分割的点子集,有效地增强了每个物体的点云。
此外,在形状感知增强之前,我们对输入点云进行了一组全局变换,包括随机平移、翻转和缩放;参见图2中的“全局转换”。
实验
我们在KITTI 3D和BEV对象检测基准[6]上评估我们的SE-SSD。这个广泛使用的数据集包含7481个训练样本和7518个测试样本。在此基础上,我们将训练样本进一步划分为3712个训练样本和3769个验证样本。我们的实验主要是在最常用的汽车类别上进行,以平均精度进行评价,IoU阈值为0.7。此外,基准在评估中有三个困难级别:简单,适中,和困难,基于对象大小,遮挡和截断级别,其中适中的平均精度是3D和BEV检测在KITTI网站上的官方排名度量。我们将在此作品发表后在GitHub上发布我们的代码。
图6显示了我们的SESSD模型对6种不同输入的3D边界框(第2行和第5行)和BEV边界框(第3行和第6行)的预测结果,展示了其高质量的预测结果。此外,为了更好地显示结果,我们将3D预测投影到相应的图像上(第1行和第4行)。更多的实验结果请参考补充材料。
实施细则
数据预处理 :我们只使用LiDAR点云作为输入,并将[0,70.4]、[- 40,40]和[- 3,1]米范围内的所有点分别沿着x、y和z,体素化为分辨率为[0.05,0.05,0.1]的网格。我们通过经验设置超参数p1=0.25, p2=0.05, p3=0.1(见第3.4节)。除了形状感知数据增强外,我们还采用了三种常用的数据增强方法:(i)混合[30],它从其他场景中随机抽取地面真实物体并将其添加到当前场景中;对个别地物点的局部增强,例如,随机旋转和平移;(iii)全局增强,包括随机旋转、平移和翻转。前两个用于预处理teacher和studentssd的输入。
训练详情 :我们采用ADAM优化器和余弦退火学习率[18],批量大小为4个,共60个epoch。我们跟随[27]来增加µt(Eq。(5))使用s型函数从0到1。设和(第3.2节)分别为0.3和0.7,ω1和ω2(Eq。(5))分别为2.0和0.2,EMA衰减重量为0.999, (Eq.(4))为1.25。
与最先进技术的比较
通过将我们的预测结果提交到KITTI服务器进行评估,我们得到了我们的模型在KITTI测试集上的3D和BEV平均精度,并与表1中列出的最新方法进行比较。
如表所示,我们的模型在三个难度级别的3D和BEV检测方法中均排名第一。此外,我们的模型推理速度在所有方法中排名第二,大约比最新的最佳两级检测器Deformable PV -RCNN[1]快2.6倍。在3D检测方面,与PV-RCNN[1]和变形PV-RCNN[23]相比,我们的单阶段模型在中度AP上显著提高了1.1点。对于单级检测器,我们的模型也大大优于之前的所有工作,在所有三个难度级别上,我们的模型平均优于之前的单级检测器SA-SSD[8] 2.8分,推理时间也更短(减少了约25%)。我们在APs上的巨大改进主要来自于通过利用软目标和硬目标来更好地优化模型,而我们的模型的高效率主要是由于我们所提出的方法的性质,即我们在SSD中细化特征,而不会在推理中引起额外的计算。
在BEV检测中,我们的模型也比最好的单级和两级检测器平均领先0.8点左右。此外,我们还计算了三个难度等级的平均精度(mAP),用于比较。我们更高的map表明SE-SSD与其他类型相比获得了更平衡的性能,因此我们的方法在实践中更有希望解决各种情况。此外,我们比较了我们的SE-SSD与最新的最好的两个单阶段和两阶段的方法KITTI val分裂。如表2所示,我们的3D和BEV中等召回点为11或40的ap均优于这些之前的方法。
接下来,我们提出了烧蚀研究,以分析我们提出的模块在SE-SSD上KITTI val分裂的有效性。表3总结了我们的一致性损失(“Cons损失”)、ODIoU损失(“ODIoU”)和形状感知数据增强(“SA-DA”)的消融结果。对于ODIoU损失,在这项消融研究中,我们用smooth - l1损失来替代它,因为我们不能像Cons损失和SA-DA那样简单地去除它。所有报告的ap都有40个召回点。
一致性损失的影响 : 如表3的第一行和第四行所示,我们的一致性损失将中度AP提高了0.9个点。这一巨大的改进表明,使用信息更丰富的软目标可以有助于更好的模型优化。对于简单AP的轻微增长,我们认为对简单子集的基线预测已经非常精确,因此已经非常接近硬目标。重要的是,通过在优化中结合硬标签和ODIoU损失,我们的SE-SSD进一步提高了中等和硬ap约2.6分,如表3中的第五行所示。这证明了通过利用硬目标和软目标以及我们设计的约束条件共同优化模型的有效性。
进一步,我们分别分析了一致性损失对边界盒(“reg”)和置信度(“cls”)的影响,以显示这两项损失的有效性。如表4所示,置信度对AP的增益较大,我们认为置信度优化可能更有效地缓解定位精度和分类置信度之间的偏差。同时,我们对盒子中心距离匹配策略上设计的盒子和置信度约束[34]进行了评估,得到了一个较低的AP (dist),我们认为其潜在原因与它们的设计有关,即寻址轴向对齐的盒子,因此不适合我们的任务。
消融研究
ODIoU 损失的影响 : 如表3中的第一行和第三行所示,与smooth - l1损失相比,我们的ODIoU损失将中度AP提高了约0.6个百分点。AP的增益比SA-DA模块的增益大,从而显示了盒心距离和方向差异对ODIoU损失的约束的有效性。同时,AP在硬子集上的增益也大于其他子集,这与我们的期望是一致的,即使是物体表面上稀疏的点也可以提供足够的信息来回归盒子中心和方向。
形状感知数据增强的效果 : 在表3中,前两行表明,我们的形状感知数据增强(SA-DA)方案在基线模型上平均提高了约0.5个点。SA-DA在预训练SSD的基础上,进一步提高了SE-SSD的中、硬ap约0.3个点,如表3最后两行所示。这些优点表明了该算法通过增强对象多样性和模型可泛化性来提高性能的有效性。
基于IOU的匹配策略 : 此外,我们比较了过滤软目标的不同方法,即,删除(i)使用NMS(“NMS filter”)彼此重叠的软目标,(ii)不与任何ground truth(“gt filter”)重叠,以及(iii)不与小于IoU阈值的student box(“stu filter”)重叠的软目标。从表5中我们可以看到,与其他策略相比,我们提出的“stu filter”在AP中获得了最大的收益,因为它为student的预测保留了最相关和信息最丰富的软目标。
运行时分析
SE-SSD的总体推断时间只有30.56ms,其中数据预处理时间为2.84ms,网络转发时间为24.33ms,后处理和生成最终预测时间为3.39ms。所有的评估都是在Intel Xeon Silver CPU和单个TITAN Xp GPU上完成的。与SA-SSD[8]相比,我们的方法获得了更快的推理速度,因为我们的BEVConvNet结构更简单,我们进一步优化了体素化代码。
结论
提出了一种新的用于室外三维点云的自集成单级目标检测器。主要贡献包括通过我们制定的与软目标的一致性约束优化的SE-SSD框架,用ODIoU损失来监督与硬目标的网络,以及形状感知数据增强方案来扩大训练样本的多样性。该系列实验验证了SE-SSD的有效性和所提出的各个模块的有效性,并显示了高效的优势。总的来说,我们的SE-SSD在KITTI基准中优于3D和BEV汽车检测的所有最先进的方法,并获得超高的推理速度。