【ECCV 2024】SparseOcc纯稀疏占用网络
category
type
status
slug
date
summary
tags
password
icon
作者: 小智老师,西安交通大学人工智能在读博士, CVPR OCC挑战赛亚军. 研究方向感知3D-Det,3DOcc,4DOcc等.
写在前面
传统自动驾驶由感知、规划、控制三部分构成,感知模块一定程度决定了后续规划和控制的效果,在自动驾驶中扮演至关重要的角色。感知模块在长时间的发展中,主要以3D目标检测,点云分割占据主导地位,但这两类型任务,都只关注于3D场景中的局部信息,如3D目标检测只检测路上的前景物体(行人、车等),3D点云分割则受限于传感器原因,只对物体表面进行感知,两种方法都缺乏对于3D场景的全面理解和感知。除此之外,针对复杂的自动驾驶路面信息,3D目标检测、点云分割都难以感知到未在数据集中出现的极端情况(corner case),阻碍了自动驾驶进一步的发展。基于以上问题,3D场景占据成为自动驾驶感知模块的又一解决方案,其将3D场景分割成一个个的网格,并对此进行分割、语义理解。这种3D占据的场景表达,提供了更为细致和全面的3D场景理解,并且相较于3D目标检测而言,3D占据表达还可以作为一种场景理解的中间媒介,更适合下游任务如路径规划、端到端驾驶、场景生成等任务的实现。
1. 研究背景与动机
1.1 占用预测在自动驾驶中的重要性
占用预测在自动驾驶领域扮演着至关重要的角色。它涉及到理解和预测车辆周围环境的3D结构,这对于路径规划、避障和决策制定等任务至关重要。准确的占用预测能够提供丰富的几何细节,超越了传统的3D边界框表示方法,为自动驾驶系统提供了更为精确的环境理解能力。
统计数据显示,自动驾驶车辆在进行环境感知时,需要处理和解释大量的3D数据。这些数据不仅包括车辆周围的物体,还包括自由空间。有效的占用预测能够使自动驾驶系统提前识别出可供行驶的区域和潜在的障碍物,从而提高行驶的安全性和效率。
1.2 现有方法的局限性
尽管占用预测的重要性不言而喻,但现有方法在实现过程中仍存在一些局限性。这些方法通常构建密集的3D体积来表示场景,忽略了场景的固有稀疏性,导致计算成本高昂。例如,在一个典型的城市驾驶场景中,超过90%的体素是空的,这意味着大量的计算资源被浪费在处理这些空体素上。此外,现有方法大多只能进行语义占用预测,无法区分不同的实例,这限制了它们在处理复杂场景时的能力。
1.3 全稀疏3D占用预测的提出
鉴于现有方法的局限性,研究者提出了全稀疏3D占用预测方法。这种方法的核心思想是利用场景的稀疏性,通过仅对非空区域进行建模来显著减少计算资源的消耗。全稀疏3D占用预测方法不仅能够提高计算效率,还能够实现实时的推理速度,这对于自动驾驶系统来说是至关重要的。
此外,全稀疏3D占用预测方法还能够区分不同的实例,实现从语义占用到实例占用的统一,即全景占用预测。这种全景占用预测方法能够为自动驾驶系统提供更加丰富和细致的环境信息,从而提高系统的决策能力和避障性能。通过引入稀疏体素解码器和掩膜Transformer,全稀疏3D占用预测方法能够在保持高效率的同时,实现对场景的高精度建模。
2. SparseOcc网络架构
2.1 稀疏体素解码器
SparseOcc网络的核心组件之一是稀疏体素解码器,它负责从粗到细地重建场景的稀疏几何形状。这一过程仅对非自由区域进行建模,从而显著节省计算资源。具体来说,稀疏体素解码器采用由粗到细的结构,每一层以体素token的稀疏集合为输入,并在每层的最后估计每个体素的占用分数,根据占用分数进行稀疏化处理。
在实验中,SparseOcc网络能够在保持实时推理速度的同时,实现对场景的高精度建模。例如,在Occ3D-nus数据集上,SparseOcc网络实现了34.0的RayIoU,同时保持了17.3 FPS的实时推理速度。这一结果表明,稀疏体素解码器在处理稀疏数据时的高效性,以及其在占用预测任务中的准确性。
此外,稀疏体素解码器的设计还考虑了类别不平衡问题,为不同类别的体素分配不同的损失权重。这一策略使得模型能够更加关注那些在场景中较少出现的类别,从而提高了整体的预测性能。
2.2 掩码Transformer
SparseOcc网络的另一个关键组件是掩码Transformer,它基于Mask2Former框架,使用稀疏实例查询在稀疏空间中预测物体的掩码和标签。掩码Transformer的设计包括三个主要步骤:多头自注意力(MHSA)、掩码引导的稀疏采样和自适应混合。
掩码Transformer的创新之处在于掩码引导的稀疏采样机制,这一机制通过在预测的掩码内随机选择体素来生成3D采样点集合,并将其投影到图像上采样特征。这种方法不仅减少了计算负担,而且使得时间建模变得更加容易,因为只需要对采样点进行变换即可。
在掩码Transformer中,类别预测使用带Sigmoid激活函数的线性分类器,而掩码预测则通过将查询嵌入转化为掩码嵌入,并与稀疏体素嵌入进行点乘来实现。这种设计使得掩码Transformer能够在稀疏体素解码器定义的稀疏3D空间内进行预测,从而避免了对整个3D场景的密集预测。
2.3 网络输入与输出
SparseOcc网络的输入是多视图图像,这些图像通过图像编码器(包括主干网络和特征金字塔网络FPN)进行处理,以提取2D特征。这些2D特征随后被用作稀疏体素解码器的输入,以预测稀疏的3D几何占用和嵌入。
网络的输出包括稀疏体素的占用预测和每个体素的语义/实例标签。这些输出不仅提供了场景的几何信息,还提供了关于场景中各个物体的详细信息,包括它们的位置、大小和类别。
在输出阶段,SparseOcc网络还采用了一种新的评估指标——Ray-level mIoU(RayIoU),以解决传统体素级mIoU标准中沿深度的不一致惩罚问题。RayIoU通过将查询光线投影到预测的3D占用体积中,来评估预测的3D占用体积的质量。这一指标能够更公平、合理地评估占用预测的性能,特别是在处理稀疏数据时。
3. 方法细节
3.1 稀疏3D表示的重建
在SparseOcc网络中,稀疏3D表示的重建是通过稀疏体素解码器来实现的。该解码器采用了一种自底向上的策略,从粗糙的体素表示开始,逐步细化到更精细的表示。这一过程涉及到以下几个关键步骤:
- 初始体素化:首先,网络接收到的2D特征图通过一个初始体素化步骤,将2D信息扩展到3D空间中。这一步骤生成了一个粗略的3D体素表示,其中每个体素包含一个初始的占用概率分数。
- 迭代细化:随后,稀疏体素解码器通过一系列迭代细化步骤,逐步提高体素表示的分辨率和准确性。在每个迭代步骤中,网络都会对当前的体素表示进行更新,提高占用预测的精度。
- 稀疏性维持:为了维持稀疏性,解码器在每个细化步骤后都会进行稀疏化处理。这一处理基于预测的占用概率,仅保留那些具有较高占用概率的体素,而将其他体素置为无效。这种基于top-k的稀疏化策略有效地减少了计算负担,同时保留了关键的几何信息。
- 实验数据:在Occ3D-nus数据集上的实验结果显示,SparseOcc网络能够在保持实时推理速度的同时,实现对场景的高精度建模。具体来说,网络在17.3 FPS的推理速度下,实现了34.0的RayIoU,这一指标衡量了预测占用体积与真实占用体积之间的一致性。
3.2 稀疏实例查询
稀疏实例查询是SparseOcc网络的另一个核心组成部分,它负责在稀疏的3D表示中预测每个目标实例的掩码和标签。这一过程涉及到以下几个关键步骤:
- 实例查询生成:网络首先生成一组稀疏的实例查询,这些查询代表了潜在的目标实例。每个查询都是一个向量,包含了目标实例的位置、尺度和其他相关属性的信息。
- 掩码预测:然后,网络使用掩码Transformer来预测每个实例查询对应的掩码。这一过程涉及到对稀疏体素表示的解码,以及对2D特征的采样。掩码Transformer的设计允许它在稀疏的3D空间内进行预测,避免了对整个3D场景的密集预测。
- 类别预测:在掩码预测的同时,网络还对每个实例查询进行类别预测。这一步骤使用了带Sigmoid激活函数的线性分类器,为每个实例查询分配一个类别标签。
- 性能指标:在评估稀疏实例查询的性能时,SparseOcc网络采用了Ray-level mIoU(RayIoU)作为主要指标。这一指标能够更公平、合理地评估占用预测的性能,尤其是在处理稀疏数据时。
3.3 掩码引导的稀疏采样
掩码引导的稀疏采样是SparseOcc网络中的一个创新机制,它使得稀疏实例查询能够以完全稀疏的方式与2D特征交互,从而避免了对昂贵的密集特征或全局注意力的需求。这一机制包括以下几个关键步骤:
- 掩码预测:首先,网络使用掩码Transformer对稀疏体素解码器的输出进行掩码预测。这一步骤生成了一个初步的掩码表示,用于指导后续的稀疏采样。
- 稀疏采样点选择:基于预测的掩码,网络在掩码内随机选择一组体素作为稀疏采样点。这些采样点代表了潜在的目标实例,并将用于对2D特征的采样。
- 特征采样:选择的稀疏采样点被投影到2D特征图上,用于采样特征。这一步骤有效地将3D空间中的稀疏信息与2D空间中的特征信息相结合,为实例掩码的预测提供了丰富的上下文信息。
- 时间建模:在处理时间序列数据时,掩码引导的稀疏采样还涉及到跨时间戳的特征聚合。网络利用采样点的灵活性,将它们wrap到以前的时间戳来对图像特征进行采样,从而实现了有效的时间建模。
- 效率提升:掩码引导的稀疏采样机制显著提高了网络的计算效率。它避免了对整个3D场景的密集预测,减少了计算负担,同时保持了预测的准确性。在Occ3D-nus数据集上的实验结果表明,SparseOcc网络在保持实时推理速度的同时,实现了对场景的高精度建模。
4. 评估指标
4.1 RayIoU的引入
在评估3D占用预测模型的性能时,传统的voxel-level mIoU指标存在局限性,尤其是在处理稀疏数据时。为了解决这一问题,SparseOcc网络引入了RayIoU评估指标,该指标通过模拟激光雷达的射线投射来评估预测的3D占用体积。
RayIoU的核心思想是将查询光线投射到预测的3D占用体积中,并计算光线与任何表面相交之前所经过的距离。对于每个查询光线,只有当其类别预测正确,并且深度预测误差在一定阈值内时,才被视为真正例(True Positive)。这种方法不仅能够更公平、合理地评估占用预测的性能,而且还能够更好地处理稀疏数据。
在Occ3D-nus数据集上的实验结果表明,SparseOcc网络在实现34.0的RayIoU的同时,保持了17.3 FPS的实时推理速度。这一结果证明了RayIoU评估指标的有效性,以及SparseOcc网络在稀疏3D占用预测任务中的优越性能。
4.2 传统mIoU的局限性
传统的mIoU评估指标在3D占用预测中存在几个主要的局限性。首先,mIoU是基于voxel级别的评估,它需要对整个3D体积进行密集的预测,这在计算上非常昂贵,尤其是在处理大规模场景时。其次,mIoU在评估时没有考虑深度方向上的不一致惩罚,这可能导致模型倾向于预测厚表面以获得更高的指标,即使这并不意味着性能的实际提升。
此外,mIoU评估指标通常只关注当前时刻的可见区域,忽略了场景补全能力。这意味着,即使模型能够准确地预测出可见区域的占用状态,它也可能无法有效地补全场景中不可见或被遮挡的部分。
4.3 PQ指标在全景占用预测中的应用
全景占用预测(Panoptic Occupancy Prediction)任务要求模型不仅要区分不同类别的物体,还要区分同一类别内的不同实例。为了评估模型在这一任务上的性能,研究者引入了全景质量(Panoptic Quality,PQ)指标。
PQ指标结合了识别准确度(Recognition Quality)和分割准确度(Segmentation Quality)两个方面,以提供一个全面的评估。识别准确度关注模型对不同类别和实例的识别能力,而分割准确度则关注模型对实例边界的预测精度。
在SparseOcc网络的实验中,PQ指标被用来评估模型在全景占用预测任务上的性能。通过比较不同模型在PQ指标上的表现,研究者可以更全面地理解模型在处理复杂场景时的能力,以及模型在区分不同实例方面的性能。
总的来说,PQ指标为全景占用预测任务提供了一个有效的评估工具,它能够帮助研究者更好地理解和比较不同模型的性能,从而推动这一领域的发展。
5. 实验结果与分析
5.1 SparseOcc的性能表现
SparseOcc网络在多个标准数据集上进行了广泛的实验,以评估其在3D占用预测任务中的性能。实验结果表明,SparseOcc在保持实时推理速度的同时,能够实现对场景的高精度建模。
- 实时推理速度:在Occ3D-nus数据集上,SparseOcc网络实现了17.3 FPS的实时推理速度,这一速度对于自动驾驶系统来说是至关重要的。快速的推理速度意味着系统能够在动态变化的环境中做出快速反应,从而提高行驶的安全性。
- 高精度建模:在相同的数据集上,SparseOcc网络实现了34.0的RayIoU,这是衡量预测占用体积与真实占用体积之间一致性的指标。高RayIoU表明SparseOcc网络能够有效地捕捉场景的几何细节,为自动驾驶系统提供了准确的环境理解能力。
- 类别不平衡处理:SparseOcc网络通过为不同类别的体素分配不同的损失权重,有效地处理了类别不平衡问题。这一策略使得网络能够更加关注那些在场景中较少出现的类别,从而提高了整体的预测性能。
5.2 与现有技术的比较
SparseOcc网络与现有技术相比,在多个方面展现出了显著的优势。以下是与现有技术的比较结果:
- 计算效率:SparseOcc网络通过利用场景的稀疏性,显著减少了计算资源的消耗。与基于密集体积的方法相比,SparseOcc网络在保持高精度的同时,大幅降低了计算成本。
- 实例区分能力:SparseOcc网络不仅能够进行语义占用预测,还能够区分不同的实例,实现全景占用预测。这一能力使得SparseOcc网络在处理复杂场景时,能够提供更加丰富和细致的环境信息。
- 推理速度:SparseOcc网络的推理速度远高于现有技术,这使得它更适合实时应用,如自动驾驶。快速的推理速度意味着系统能够在动态环境中做出快速反应,提高行驶的安全性和效率。
5.3 消融实验
为了进一步理解SparseOcc网络中不同组件的作用,研究者进行了一系列的消融实验。以下是消融实验的主要发现:
- 稀疏体素解码器的影响:当移除稀疏体素解码器时,网络的性能显著下降。这表明稀疏体素解码器在捕捉场景的几何细节方面起到了关键作用。
- 掩码Transformer的作用:消融掩码Transformer后,网络在实例区分任务上的性能大幅下降。这证明了掩码Transformer在实现全景占用预测中的重要作用。
- 掩码引导的稀疏采样机制:当移除掩码引导的稀疏采样机制时,网络的计算效率显著下降,同时预测精度也受到影响。这表明该机制在提高计算效率和预测精度方面起到了关键作用。
- RayIoU评估指标的有效性:通过与传统的mIoU评估指标进行比较,消融实验表明RayIoU能够更公平、合理地评估占用预测的性能,尤其是在处理稀疏数据时。
总的来说,消融实验的结果进一步验证了SparseOcc网络中各个组件的有效性,以及网络在3D占用预测任务中的优越性能。
6. 总结
本文全面解析了SparseOcc网络在全稀疏3D占用预测领域的创新与优势。通过细致的分析,我们可以看到SparseOcc网络在自动驾驶环境感知中的巨大潜力。
6.1 技术创新
SparseOcc网络通过引入稀疏体素解码器和掩码Transformer,有效地利用了场景的稀疏性,显著提高了占用预测的计算效率。这种全稀疏的网络架构不仅减少了计算资源的消耗,而且能够实现实时的推理速度,这对于自动驾驶系统来说是至关重要的。此外,SparseOcc网络还能够区分不同的实例,实现全景占用预测,这在复杂场景的理解中显示出了巨大的优势。
6.2 性能表现
在多个标准数据集上的实验结果表明,SparseOcc网络在保持实时推理速度的同时,能够实现对场景的高精度建模。特别是在Occ3D-nus数据集上,SparseOcc网络实现了34.0的RayIoU,同时保持了17.3 FPS的实时推理速度,这一结果远远超过了现有技术。
6.3 评估指标的改进
SparseOcc网络还引入了新的评估指标RayIoU,以解决传统voxel-level mIoU在处理稀疏数据时的局限性。RayIoU通过模拟激光雷达的射线投射来评估预测的3D占用体积,能够更公平、合理地评估占用预测的性能。此外,全景质量(PQ)指标的应用也为全景占用预测任务提供了一个有效的评估工具。
6.4 未来展望
尽管SparseOcc网络在全稀疏3D占用预测领域展现出了显著的优势,但仍有进一步改进和优化的空间。未来的工作可以集中在如何进一步提高网络的泛化能力,以及如何更好地处理类别不平衡问题。此外,将SparseOcc网络应用于更多的实际自动驾驶场景,以及与其他传感器数据(如激光雷达、毫米波雷达)的融合,也是未来研究的重要方向。
总的来说,SparseOcc网络为自动驾驶领域的3D占用预测提供了一种高效、准确的解决方案,其创新的技术方法和优异的性能表现,预示着它在未来自动驾驶技术发展中将发挥重要作用。
上一篇
动手学控制理论
下一篇
端到端-理论与实战视频课程
Loading...