1. 引言
我国在推动智能网联汽车发展进程中,已将车路协同纳入顶层设计。与之相应,路端感知系统也构成了实现该战略的核心基石,其重要性不言而喻[1]。依托路端感知系统,可实时采集更完整的交通动态信息,这一能力能有效填补单车智能在远距离感知稳定性不足、存在感知盲区等方面的短板。三维目标检测作为环境感知的关键任务,在汽车工业领域和学术领域引起了广泛的关注,各类先进感知算法的提出为高效的智能交通提供了坚实的技术基础。
基于深度学习的三维目标检测方法相较于传统方法具有较强的鲁棒性,能够更好地适应计算量较大的场景,在目标检测领域中已经占据了主导地位[2]。基于深度学习的三维目标检测算法主要分为三类:基于图像、基于点云和基于多模态数据融合。
基于图像的方法首先在二维平面内进行检测,随后通过深度估计等方法将结果映射到三维空间,代表模型为SMOKE [3]、FCOS3D [4]、FCOS3D++ [5]等。这种方法能够获取丰富的特征信息且成本较低,但容易受到光照条件的影响,且无法适应远距离检测任务。
基于点云的目标检测方法具有较大的感知范围且不受光照条件影响,可以全天候的进行检测任务。现阶段,基于点云的目标检测方法大致可分为两类:一类是基于点的处理方法,另一类是基于体素的方法。对于基于点的检测网络而言,其会直接对原始点云进行特征提取,随后构建出3D检测框。PointNet [6]、PointNet++ [7]使用多层感知机学习点云特征学习点云特征为基于点的检测方法提供了可行的思路,最大限度的保留了点云的几何信息,有助于精确捕捉小目标。但这种方法计算量较大、成本高,且容易受到点云密度不均匀的影响,导致检测性能不稳定。基于体素的3D检测器一般会先对非结构化点云做预处理,将其转变为紧凑的规则柱体或体素网格,随后通过3D或2D卷积神经网络提取特征,最终生成3D目标候选框[8],典型模型包括VoxelNet [9]、SECOND [10]、PointPillars [11]等。这种方法提高了点云数据的处理效率,降低了计算复杂度,但体素化操作可能导致细节信息丢失,影响对小目标的检测效果。基于多模态融合的三维目标检测将图像和点云两种数据相结合,充分利用了图像的语义信息和点云的深度信息,典型模型包括PointFusion [12]、MLOD、AVOD-Net [13]等。这种方法提高算法的鲁棒性和检测精度,适合复杂场景下的检测任务,但硬件成本高、数据量大,对系统的标定和同步提出了更高的要求。
经过综合考虑,本文使用路端激光雷达进行三维目标检测。依据当前复杂的交通情况以及点云的稀疏性和无序性,现有的基于点云的目标检测算法难以胜任十字路口场景下远距离车辆和行人的检测任务,这对自动驾驶的大规模商业化落地产生了一定的影响。为了进一步提高在交通路口场景下对远距离车辆和行人等目标的检测精度,本文提出了一种基于点的单阶段、可实现端到端训练的路端三维目标检测算法。为了能够在交通路口场景下的稀疏点云中提取更多有效的特征信息,本文采用了一种面相任务的、针对实例的感知下采样方法,能够在减少内存占用和计算开销的同时分层地提取更重要的前景点信息。另外,为了能够进一步精确地预测实例目标的中心,本文还引入了一种联合上下文信息的中心感知模块。为了能够提高远距离目标的检测精度,提升检测效率,选择采用了稀疏检测头。所提算法在公开路端数据集DAIR-V2X-I [14]上的实验结果表明了算法的优越性。
2. 理论分析
2.1. 网络结构
如图1所示为本文所提算法的网络结构图,主要针对路端检测任务进行设计优化。算法主要由点云特征提取网络、中心感知模块和候选框检测头等模块组成。该方法首先将路端原始点云进行下采样,然后将点云送入到几个集合抽象层提取点的特征,通过进行实例感知下采样,保留前景点的同时逐步降低内存成本,提高计算效率。将提取到的特征输入到中心感知模块进行中心预测和聚合,用于确定目标中心位置。最后,使用三维目标检测头来实现目标分类以及三维检测框的位置、尺寸大小和目标朝向角等参数的回归。
Figure 1. Network structure diagram
图1. 网络结构图
2.2. 实例感知下采样方法
交通路口场景下的目标检测任务点云数据规模庞大,为了实现高效的目标检测任务,需要通过逐步下采样来减少内存和计算开销。然而,较为激进的下采样方法可能会导致大量前景点信息的丢失,降低检测精度。通过相关研究发现,经过多次随机下采样之后,实例召回率显著下降,表明大量前景点丢弃。基于欧几里得距离的下采样(D-FPS)和基于特征距离的下采样(Feat-FPS)在早期阶段都能获得较好的实例召回率,但在最后一层编码时仍会丢失大量的前景点。在路端远距离检测任务中,对于行人和非机动车这样的小目标来说检测精度会有所下降。为了能够尽可能的保留前景点,本文选择合理的利用每个点的潜在语义信息,因为学习到的点特征可能包含更丰富的语义信息,分层聚合在每个层中运行。根据这一思想,本文采用以下两种面向任务的采样方法,即将前景语义先验知识引入到网络训练管道中。
2.2.1. 实例感知采样
实例感知采样的流程如下:首先,在逐点语义学习的基础上执行选择性下采样。为增强此过程的有效性,网络额外引入一个辅助分支,该分支的作用是充分挖掘潜在特征中的语义信息。随后,编码层叠加两个MLP层,以估计每个点的语义类别。在监督方面,模型使用从原始边界框标注转换得到的逐点语义标签作为真值,并采用常规交叉熵损失进行优化。
(1)
式中,C代表类别的总数量,si则对应关键标签。在推理阶段,算法会筛选并保留前景得分排名前k的点,将这些点作为代表点传入下一个编码层,最终实现较高的实例召回率。
2.2.2. 中心感知采样
考虑到实例中心位置估计是目标检测任务的关键,本文选用中心感知下采样策略,在该策略中,距离实例中心越近的点,所获权重越高。相应地,实例i的软掩码可定义如下:
(2)
式中,
,
,
,
,
,
六个变量,分别编码了点与边界框前、后、左、右、上、下各表面的距离。据此,我们得到一个归一化的遮罩值:该值在点位于边界框质心处时取得最大值1,并随着点向边界框表面移动而逐渐减小,直至在边界框表面处为0。在训练过程中使用掩码根据空间位置对检测框内的点赋予不同的权重,从而隐式地将几何先验融合到网络训练中。其中加权交叉熵损失计算公式如下:
(3)
通过将掩码与前景点损失项相乘,能够提高靠近中心区域的点的概率。值得注意的是,在推理阶段,边界框并非必要条件。当模型训练达到预期标准后,仅需从下采样后的结果中筛选并保留得分最高的前k个点。
2.3. 上下文实例中心感知
2.3.1. 上下文中心预测
受2D图像检测领域中上下文预测技术的成功案例启发,进而尝试借助边界框周边的上下文线索开展中心预测任务。具体而言,实例中心偏移的预测遵循[15]的方法来确定。与此同时,为最小化中心预测的不确定性,算法中额外引入了正则化项。具体来说,每个实例的所有投票都是根据周围的干扰进行聚合的,其中ci是第i个实例的平均目标。中心预测损失函数如下:
(4)
(5)
其中,
表示从点
到中心点的地面真值偏移,
是一个指标函数,用于确定该点是否用于估计实例中心。
用于预测实例中心的点数。
2.3.2. 基于中心的实例聚合
首先,通过PointNet++模块从偏移后的中心点学习实例的潜在表示。具体地,将相邻点转换至局部规范坐标系后,利用共享MLP结合对称函数完成特征聚合;最终,将聚合后的中心点特征输入提案生成头,完成分类边界框的预测。提案需被编码为涵盖位置、大小及方向的多维表示形式,最后借助设定了特定IOU阈值的3D NMS后处理操作,实现结果过滤。
2.4. 损失函数
在训练过程中,由于框架中使用了多任务损失来进行联合优化,所以总损失Ltotal由下采样策略损失Lsample、中心预测损失Lcent、分类损失Lcls和包围框生成损失Lbox四部分组成:
(6)
此外,包围框生成损失可以进一步分解为位置损失、尺寸损失、角度箱损失、角度分辨率损失、角点损失等组成:
(7)
3. 实验
3.1. 实验数据集
本文选择使用大规模开源路端3D检测数据集DAIR-V2X-I进行算法的评估和验证,数据集由多个十字路口真实场景下的图像数据和激光雷达点云数据组成。该数据集包含10084个图像和点云样本,其中公开训练集及验证集共7481个样本[16],主要类别有小汽车、自行车、行人等共计15类。该数据集依据目标的截断程度与遮挡程度,将所有目标划分为简单、中等、困难三个不同的检测等级。在本次实验中,模型训练阶段使用训练集输入数据,后续的实验验证环节则依赖验证集完成结果校验。
现有的目标检测算法及框架大部分基于KITTI数据集数据格式进行开发测试,这里用到的DAIR-V2X-I路端感知数据集与KITTI数据集在数据结构及格式上存在较大差异,为了方便开展实验研究,将DAIR-V2X-I路端感知数据集转化为应用更加普遍的KITTI数据集格式。并且,对数据集DAIR-V2X-I原有的10分类进行合并操作,将手推车(Barrowlist)、三轮车(Tricyclist)和摩托车(Motorcyclist)与骑行者(Cyclisy)进行合并同时将标注形式转换为KITTI数据集标注形式,方便后续的数据读取和评价指标计算。
3.2. 实验设置
本实验依托3D目标检测框架OpenPCDet开展,所采用的软硬件环境配置如下:硬件方面,搭载AMD EPYC 7542 32核处理器(主频2.89 GHz)、NVIDIA GeForce RTX 3090显卡(24G 显存)及54 GB内存;软件方面,系统为Ubuntu 20.04.2 LTS,配套Python 3.7、Cuda 11.2与Pytorch 1.10.0。采用Adam优化器,权重衰减值为0.01,动量为0.9,学习率衰减值为0.1,批次大小为4,最大迭代次数为80。根据数据集的特点设置点云范围、包围框大小,以及中心高度,对汽车(Car)、行人(Pedestrian)和骑行者(Cyclist)这3类目标进行检测。
3.3. 实验结果及分析
所提算法在路端感知数据集DAIR-V2X-I上进行实验,然后使用平均精度值(AP)和每秒帧数(FPS)对3D目标检测性能进行评估。实验中IOU阈值按目标类别差异化设置:汽车类别的IOU阈值设定为0.7,行人与骑行者两类目标的IOU阈值则统一设置为0.5。为了评估所提算法的性能,将此文所提算法与另外三种经典检测算法在DAIR-V2X-I验证集上进行对比试验,实验结果如表1所示。其中加粗字体代表最佳检测结果。
Table 1. Comparison results between the proposed algorithm and classical algorithms on the DAIR-V2X-I validation set
表1. 所提算法与经典算法在DAIR-V2X-I验证集上的对比结果
|
汽车 |
行人 |
骑行者 |
mAP |
FPS |
简单 |
中等 |
困难 |
简单 |
中等 |
困难 |
简单 |
中等 |
困难 |
SECOND |
87.73 |
77.91 |
78.03 |
60.81 |
55.68 |
55.86 |
80.62 |
61.80 |
61.63 |
65.32 |
25.71 |
3DSSD |
87.15 |
77.03 |
77.01 |
56.42 |
55.53 |
55.51 |
76.62 |
57.15 |
57.03 |
62.13 |
32.54 |
PointPillars |
87.28 |
77.86 |
77.97 |
59.12 |
57.53 |
57.96 |
80.16 |
60.32 |
59.73 |
65.43 |
30.32 |
本文 |
87.88 |
78.02 |
78.10 |
60.92 |
57.93 |
56.54 |
80.32 |
61.93 |
61.91 |
65.51 |
36.74 |
由表1可知:所提算法在DAIR-V2X-I验证集上进行实验,与3DSSD相比,在汽车、行人、骑行者的检测精度在简单检测难度下分别提高了0.73百分点、4.5百分点、3.7百分点,在中等检测难度下分别提高了0.99百分点、2.4百分点、4.9百分点,在困难检测难度下分别提高了1.09百分点、1.03百分点、4.88百分点,mAP提高了3.38百分点,FPS提高了4.2 fram/s。
所提算法在DAIR-V2X-I验证集上对不同类别目标均取得了一定的检测精度提升,尤其是在行人和骑行者两类小目标上提升幅度更为显著。这一结果反映出本文设计的实例感知下采样策略在保持整体检测性能的同时,对小体积目标的特征表达具有更强的鲁棒性。其原因主要体现在以下三个方面。
首先,行人和骑行者目标在点云中往往只包含极少的点数,且这些点受距离、遮挡和扫描角度的影响较大。传统的随机采样(RS)和基于几何距离的最远点采样(D-FPS)策略容易在多层下采样过程中丢失这些稀疏但关键的前景点,导致特征学习阶段缺乏语义显著性。而本文提出的实例感知下采样方法通过引入语义先验,引导网络在采样时优先保留具有前景属性的点,从源头上降低了前景点被误舍弃的概率。
其次,本文在点特征提取过程中引入了多层语义聚合机制,使得模型能够在较深层特征空间中保留来自不同尺度的语义线索。对于小目标而言,局部几何特征的完整性至关重要,多尺度聚合使模型在特征表达上更具判别性,从而提高了对远距离及被遮挡小目标的识别能力。
最后,中心感知模块的引入在特征回归阶段进一步增强了对目标中心位置的建模能力。对于尺寸较小、形态差异大的行人和骑行者类别,准确估计中心点可以有效抑制由点云不均匀分布带来的误检与偏移,提高了整体定位精度和边界一致性。
综上,所提算法通过实例感知下采样与中心感知机制的协同作用,显著改善了传统方法在小目标检测任务中的特征丢失与定位偏差问题,从而在复杂交通场景下实现了更优的检测性能和更强的泛化能力。
3.4. 可视化结果与分析
为直观展示所提算法在复杂交通路口场景下对不同类别目标(尤其是远距离小目标)的检测能力,本文在DAIR-V2X-I路端感知数据集上对检测结果进行可视化分析,结果如图2和图3所示。其中,红色框标注汽车检测结果,蓝色框标注行人检测结果,绿色框标注骑行者检测结果,点云视图与对应真实场景图像的联动展示可清晰反映算法的检测效果。
图2上半部分为点云场景的检测结果可视化,下半部分为对应真实路侧场景图像。在该交通路口场景中,无论是路口待行区的近距离车辆,还是道路远端的车辆,红色检测框均能准确包围目标,体现了算法对不同距离汽车目标的鲁棒检测能力;对于斑马线上的行人(蓝色框)和非机动车道的骑行者(绿色框),即使目标在场景中像素占比小、点云点数少,算法仍能精准识别并标注,验证了实例感知下采样策略对小目标前景点的有效保留。
Figure 2. Detection results in DAIR-V2X-I roadside scenes 1
图2. DAIR-V2X-I路侧场景1检测结果
Figure 3. Detection results in DAIR-V2X-I roadside scenes 2
图3. DAIR-V2X-I路侧场景2检测结果
图3同样采用“点云检测视图 + 真实场景图像”的展示形式,聚焦另一典型交通路口场景。在车辆密集、行人与骑行者穿插的路口环境中,算法对汽车、行人、骑行者的检测框无明显误检、漏检情况,且检测框与目标的空间贴合度较高,说明中心感知模块有效提升了实例中心估计的精确性;针对道路远端的小型车辆和行人,算法仍能稳定输出检测结果,进一步佐证了本文下采样策略在保留远距离前景点信息上的优势——相比传统采样易丢弃小目标点云的问题,实例感知下采样可针对性保留行人、骑行者等小目标的关键语义点,从而在可视化结果中体现出对这类目标更突出的检测性能提升。
4. 结论
引用实例感知下采样策略和实例中心估计,提出一种单阶段三维目标检测算法,旨在解决现阶段点云目标检测算法对远距离目标检测精度差、误检、漏检等问题。为了能够提高在十字路口场景下的检测精度,采用了实例感知下采样策略和中心感知模块。本研究在DAIR-V2X路端数据集上开展实验,验证了所提算法的有效性。结果显示,该算法对三类目标的检测精度均有提升,且检测速度达到36.74 FPS,满足实时性需求,实现了检测精度与检测速度的良好平衡。