3D Object Detection Learning

从一般的2D目标检测到3D目标检测.

先看几篇论文.

Range-Aware Attention Network for LiDAR-based 3D Object Detection with Auxiliary Point Density Level Estimation

http://arxiv.org/abs/2111.09515

Abs

近年来,用于自动驾驶的激光雷达数据三维物体检测技术取得了长足进步,在最先进的方法中,将点云编码成鸟瞰图(BEV,bird’s eye view)已被证明是既有效又高效的方法。与透视图(perspective views)不同,鸟瞰图保留了物体之间丰富的空间和距离信息。然而,在 BEV 中,虽然同类型的远距离物体看起来并不更小,但它们包含的点云特征却更稀疏。这一事实削弱了使用共享权重卷积神经网络(CNN)提取 BEV 特征的能力.

为了应对这一挑战,我们提出了范围感知注意力网络 (RAANet),它能提取有效的 BEV 特征并生成出色的 3D object detection 输出.

范围感知注意力(RAA)卷积显著改善了对远近物体的特征提取

此外,我们还提出了一种用于点密度估计(point density estimation)的新型辅助损失,以进一步提高 RAANet 对遮挡物体的检测精度。值得注意的是,我们提出的 RAA 卷积是轻量级的,可以集成到任何用于检测 BEV 的 CNN 架构中.

nuScenes 和 KITTI 数据集上进行的大量实验表明,在基于激光雷达(LiDAR-based 3D object detection)的三维物体检测方面,我们提出的方法优于最先进的方法,在 nuScenes 激光雷达帧上进行的测试中,完整版的实时推理速度为 16 Hz,精简版为 22 Hz。

Intro

随着处理单元的快速改进,得益于深度神经网络的成功,自动驾驶的感知能力近年来得到了蓬勃发展。通过激光雷达传感器进行 3D 物体检测是自动驾驶的重要功能之一。

早期的研究采用了三维卷积神经网络(CNN),这种网络处理速度慢,内存需求大。

为了降低内存要求并提供实时处理,最近的方法利用了体素化(voxelization)和鸟瞰投影(BEV)。

体素化(Voxelization)作为三维点云(3D point clouds)的一种预处理方法得到了广泛应用,因为结构更合理的数据可提高计算效率和性能精度

一般来说,体素化将点云划分为均匀分布的体素网格,然后将三维激光雷达点分配到各自的体素上。输出空间保留了物体之间的欧氏距离,并避免了边界框的重叠。

这些特点使得无论物体与激光雷达的距离如何,都能将物体的尺寸变化控制在一个相对较小的范围内,从而有利于在训练过程中进行形状回归

在本文中,我们提出了距离感知注意力网络(RAANet),其中包含新型的范围感知注意力卷积层(RAAConv),设计用于LiDAR BEV的目标检测。RAAConv 由两个独立的卷积分支和注意力图组成,对输入特征图的位置信息敏感.

我们的方法受到BEV图像特性的启发,随着物体和自我车辆之间距离的增加,点变得越来越稀疏理想情况下,对于BEV特征图,不同位置的元素应由不同的卷积核处理。但是,应用不同的内核会显着增加计算费用。

为了在BEV特征提取过程中利用位置信息,在避免繁重计算的同时,将BEV特征图视为稀疏特征和密集特征的组合。我们应用两个不同的卷积核来同时提取稀疏和密集特征。

每个提取的特征图的通道大小都是最终输出的一半。同时,根据输入形状生成范围和位置编码。然后,根据相应的特征图以及范围和位置编码计算每个范围感知注意力热图。最后,将注意力热图应用于特征图以增强特征表示。从两个分支生成的特征图按通道concat为 RAAConv 输出。

此外,遮挡的影响也不容忽视,因为同一物体在不同的遮挡量下可能具有不同的点分布。因此,我们提出了一个高效的辅助分支,称为辅助密度水平估计模块(ADLE),允许RAANet考虑遮挡。由于注释各种遮挡是一项耗时且昂贵的任务,因此我们设计了ADLE来估计每个对象的点密度水平。如果没有遮挡,则近处物体的点密度水平高于远处物体的点密度水平

但是,如果附近的物体被遮挡,则其点密度水平会降低。因此,通过结合距离信息和密度水平信息,我们能够估计遮挡信息的存在。ADLE仅用于训练阶段,用于提供密度信息指导,在推理状态下可以删除,以提高计算效率。

主要贡献:

  1. 我们提出了RAAConv层,它允许基于LiDAR的探测器提取更具代表性的BEV特征。此外,RAAConv 层可以集成到任何用于 LiDAR BEV 的 CNN 架构中。
  2. 我们提出了一种新的用于点密度估计的辅助损失,以帮助主网络学习与遮挡相关的特征。该密度水平估计器进一步提高了RAANet对被遮挡物体的检测精度。
  3. 我们提出了范围感知注意力网络(RAANet),它集成了前面提到的RAA和ADLE模块。RAANet通过基于ground truth生成各向异性(anistropic)高斯热图,进一步优化,

相关工作

大多数目标检测工作可以分为两大类:有锚点和无锚点的目标检测。此外,在早期阶段存在对点云数据进行编码的工作],但它们超出了目标检测网络重构的范围。

Object detection with anchors

固定形状的锚回归方法,以便可以提取中间特征

two-stage:RCNN家族

one-stage:YOLO,Retinanet,SSD

YOLO:将目标检测重新定义为单一回归问题,该问题采用端到端神经网络进行单次前向传播来检测目标

SSD:Liu等开发了一种多分辨率锚点技术,用于检测尺度混合物的物体,并在一定程度上学习偏移量,而不是学习锚点。

RetinaNet:Lin等提出了一种焦点损失,以解决密集和小目标检测问题,同时处理类不平衡和不一致。

Zhou和Tuzel(VoxelNet)以及Lang等(PointPillars)提出了用于点云的神经网络,这为3D检测任务开辟了新的可能性。

Object detection without anchors

为了解决锚点回归带来的计算开销和超参数冗余问题,并有效地处理点云编码,无锚点目标检测已在许多工作中得到应用。无锚点目标检测可分为两大类,即基于中心的方法和基于关键点的方法

基于中心的方法:基于中心的方法:在这种方法中,对象的中心点用于定义正样本和负样本,而不是IoU。该方法通过预测从正样本到物体边界的四个距离来生成边界框,从而大大降低了计算成本。

基于关键点的方法:通过几个预定义的方法或自学习模型定位关键点,然后生成边界框来对对象进行分类。

为了提取具有代表性的特征,我们重点关注两个主要组成部分:范围感知特征提取遮挡监督

我们提出的范围感知注意力网络(RAANet)的主要架构如图所示

image-20231119161935219

我们结合了CenterNet的思想来构建一个无锚探测器,并引入了两个新颖的模块:距离感知注意力卷积层(RAAConv)和辅助密度级估计模块(ADLE)。

区域建议网络 (RPN) 将该 BEV 特征图作为输入,并使用多个下采样和上采样模块来生成高维特征图。

除了主要任务中的检测头外,我们还提出了一个辅助任务,用于点密度水平估计,以实现更好的检测性能。

RAAConv 首先利用两组卷积核来提取每个分支的中间特征图。

然后,将热图 fa 和 fb 分别乘以可学习标量 γa 和 γb。γa 和 γb 初始化为 1.0,并在训练过程中逐渐学习它们的值

VoxelNet: End-to-End Learning for Point Cloud Based 3D Object Detection

abs

准确检测三维点云中的物体是自主导航、看家机器人和增强/虚拟现实等许多应用中的核心问题。点云数据 高度稀疏

为了将高度稀疏的激光雷达点云与区域建议网络(RPN)连接起来,现有的大部分工作都集中在手工制作的特征表示上,例如鸟瞰投影。

在这项工作中,我们不再需要对三维点云进行人工特征工程,而是提出了一种通用的三维检测网络—VoxelNet,它将特征提取和边界框预测统一为一个单一阶段、端到端可训练的深度网络

相关工作

3D传感器技术的快速发展促使研究人员开发有效的表示来检测和定位点云中的物体,当有丰富而详细的 3D 形状信息可用时,这些手工制作的特征会产生令人满意的结果。

然而,它们无法适应更复杂的形状和场景,也无法从数据中学习所需的不变性,导致自主导航等不受控制的场景的成功有限。

鉴于图像提供了详细的纹理信息,许多算法从 2D 图像推断出 3D 边界框,然而,基于图像的三维检测方法的精度受深度估计精度的限制。

网络结构

所提出的VoxelNet由三个功能块组成:(1)特征学习网络(Feature learning network),(2)卷积中间层(Convolutional middle layers),(3)区域建议网络(Region proposal network)。

Feature learning network

Voxel Partition

image-20231119112120958

Stacked Voxel Feature Encoding

用V表示一个体素(Voxel),

RPN

image-20231119112203016

RPN层有两个分支,一个用来输出类别的概率分布(通常叫做Score Map),一个用来输出Anchor到真实框的变化过程(通常叫做 Regression Map)

高效实现

我们初始化一个 K × T × 7 维张量结构来存储体素输入特征缓冲区,其中 K 是非空体素的最大数量,T 是每个体素的最大点数,7 是每个点的输入编码维度

这些点在处理之前是随机的。对于点云中的每个点,我们检查相应的体素是否已经存在。

协同感知 3D检测任务

综述

Collaborative Perception in Autonomous Driving:Methods,Datasets and Challenges

协作感知对于解决自动驾驶中的遮挡和传感器故障问题至关重要。

自动驾驶感知可分为个体感知和协作感知。虽然个体感知随着深度学习的发展取得了长足的进步,但一些问题也限制了其发展。首先,个体感知在感知相对全面的环境时经常会遇到遮挡。其次,车载传感器在感知远处物体时存在物理限制。此外,传感器噪音也会降低感知系统的性能。为了弥补个体感知的不足,协作或合作感知利用了多个代理之间的互动,受到了广泛关注。

协同感知是一种多agent系统,其中agent共享感知信息,以克服自我视听的视觉局限。在单个感知场景中,自我视听只能检测到附近物体的部分遮挡和远处稀疏的点云。在协作感知场景中,ego AV通过接收其他agent的信息来扩大视野。通过这种协作方式,ego AV不仅能检测到远处和被遮挡的物体,还能提高在密集区域的检测精度

image-20231122203934187

长期以来,协作感知一直是人们关注的焦点。之前的工作专注于构建协作感知系统,以评估该技术的可行性。然而,由于缺乏大型公共数据集,它没有得到有效的推进。近年来,随着深度学习的发展和大规模协作感知数据集的公众关注和研究激增。

考虑到通信中的带宽限制,大多数研究人员致力于设计新颖的协作模块,以实现精度和带宽之间的权衡

在协作感知场景中,自我 AV 通过接收来自其他智能体的信息来扩展视野。通过这种协作方式,自我AV不仅可以检测远处和被遮挡的物体,还可以提高密集区域的检测精度。

为了总结这些技术和问题,我们回顾了自动驾驶中的协同感知方法,并从方法、数据集和挑战方面对近年来的进展进行了全面综述。我们还注意到近年来发表了一些关于协作感知的综述。

Collaboration scheme

早期融合

早期协作在网络输入端采用原始数据融合,也称为数据级或低级融合

因此,早期协作可以从根本上克服个体感知中的遮挡和长距离问题,并最大程度地促进绩效。

在自动驾驶场景中,自我车辆接收并转换来自其他智能体的原始传感器数据,然后聚合车载转换后的数据。原始数据包含最全面的信息和实质性的代理描述。因此,早期协作可以从根本上克服个体感知中的遮挡和长距离问题,并最大程度地促进绩效

考虑到早期协作的高带宽,一些工作提出了中间协作感知方法来平衡性能-带宽的权衡。在中间协作中,其他智能体通常会将深层语义特征转移到自我载体。自我车辆融合特征以做出最终预测。中间协作已成为最流行的多智能体协作感知灵活性选择。然而,特征提取往往会造成信息丢失和不必要的信息冗余,这促使人们探索合适的特征选择和融合策略。

中期

考虑到早期协作的高带宽,一些研究提出了中间协作感知方法,以平衡性能与带宽之间的权衡。在中间协作中,其他代理通常会将深层语义特征传输给自我车辆。

晚期

后期或对象级协作在网络输出端采用预测融合。每个代理单独训练网络并相互共享输出。自我车辆在空间上转换输出,并在后处理后合并所有输出。后期协作比早期和中期协作更节省带宽,也更简单。然而,后期的合作也有局限性。由于单个输出可能是嘈杂和不完整的,因此后期协作总是具有最差的感知性能

原始数据融合(Raw Data Fusion)

早期协作在输入阶段采用原始数据融合。由于点云是不规则的,可以直接汇总,因此早期的协同工作通常采用点云融合策略

第一个早期的协同感知系统 Cooper选择激光雷达数据作为融合目标。只需提取位置坐标和反射值,就能将点云压缩成较小的尺寸。在代理之间进行交互后,Cooper 利用变换矩阵重构接收到的点云,然后将自我点云集concat起来,进行最终预测。

customized communication mechanism

早期协作中的原始数据融合拓宽了自我飞行器的视野,也造成了高带宽压力。为了缓解上述问题,越来越多的工作 发展了中间协作

最初的中间协作方法遵循一种贪婪的通信机制,以获取尽可能多的信息。一般来说,它们会与通信范围内的所有代理共享信息,并将压缩后的完整特征图放入集体感知信息(CPM,collective perception message)中。然而,由于特征稀疏和代理冗余,贪婪通信可能会极大地浪费带宽。

Who2com 建立了首个带宽限制下的通信机制,通过三阶段握手实现。具体来说,Who2com 使用一般注意力函数计算代理之间的匹配分数,并选择最需要的代理,从而有效减少带宽

在 Who2com 的基础上,When2com引入了缩放一般注意力来决定何时与他人交流。这样,自我代理只有在信息不足时才会与他人交流,从而有效地节省了协作资源。

除了选择合适的通信代理外,通信内容对于减少带宽压力也很重要。FPVRCNN 中提出了初始特征选择策略.具体来说,FPV-RCNN 采用检测头生成proposals,并只选择proposals中的特征点。

关键点选择模块减少了共享深度特征的冗余,为初始proposals提供了有价值的补充信息。

Where2comm 也提出了一种新颖的空间信心感知通信机制。其核心思想是利用空间置信度图来决定共享特征和通信目标在特征选择阶段Where2comm 选择并传输满足高置信度和其他agent请求的空间元素。在agent选择阶段,自我代理只与能提供所需特征的代理通信。通过发送和接收感知关键区域的特征,Where2comm 节省了大量带宽,并显著提高了协作效率

Feature Fusion

Feature fusion module is crucial in intermediate collaboration. After receiving CPMs from other agents, the ego vehicle can leverage different strategies to aggregate these features.

可行的融合策略能够捕捉特征之间的潜在关系,提高感知网络的性能。根据基于特征融合的思想,我们将现有的特征融合方法分为传统融合、基于图的融合和基于注意力的融合。

传统融合

在协同感知研究的早期阶段,研究人员倾向于使用传统的策略来融合特征,如concat、求和和线性加权。中级协作将这些不变的置换操作应用于深度特征,因其简单性而实现了快速推理。

第一个中间协同感知框架 FCooper提取了低级体素和深度空间特征。基于这两级特征,F-Cooper 提出了两种特征融合策略:体素特征融合(VFF)和空间特征融合(SFF)。

这两种方法都采用元素最大值(element-wise maxout)来融合重叠区域的特征。由于体素特征更接近原始数据,因此 VFF 与原始数据融合方法一样能够进行近距离物体检测。同时,SFF 也有其优势。

受 SENet的启发,SFF 选择选择部分信道来减少传输时间消耗,同时保持可比的检测精度

考虑到 F-Cooper忽略了低置信度特征的重要性,Guo 等人提出了 CoFF 来改进 F-Cooper。CoFF 通过测量重叠特征的相似度和重叠面积对其进行加权。相似度越小,距离越大,邻近特征提供的补充信息就越直观。

此外,还添加了一个增强参数,以提高弱特征的值。

实验表明,简单而高效的设计使 CoFF 大大提高了 F-Cooper 的性能。

传统的融合方法虽然简单,但并没有被最近的方法所抛弃。Hu 等人提出了协作式纯相机三维检测(CoCa3D),证明了协作在增强基于相机的三维检测方面的潜力。

图融合

基于图的融合:尽管传统的中间融合很简单,但它们忽略了多方agent之间的潜在关系,无法推理从发送方到接收方的信息。图神经网络(GNN)能够传播和聚合来自邻居的信息,最近的研究表明,图神经网络在感知和自动驾驶方面非常有效。

V2VNet 首先利用空间感知图神经网络(GNN)对代理之间的通信进行建模,在 GNN 信息传递阶段,V2VNet 利用变分图像压缩算法来压缩特征。在跨车辆聚合阶段,V2VNet 首先补偿时间延迟,为每个节点创建初始状态,然后对从邻近代理到自我车辆的压缩特征进行扭曲和空间变换,所有这些操作都在重叠视场中(overlapping fields of view)进行。在特征融合阶段,V2VNet 采用平均运算来聚合特征,并利用卷积门控递归单元(ConvGRU)更新节点状态。虽然 V2VNet与 GNN 相比性能有所提高,但标量值协作权重无法反映不同空间区域的重要性。受此启发,DiscoNet 提出使用矩阵值边缘权重来捕捉高分辨率的代理间注意力。在信息传递过程中,DiscoNet 将特征串联起来,并为特征图中的每个元素应用矩阵值边缘权重。此外,DiscoNet 还将早期融合和中期融合结合在一起,通过对特征图中的每个元素应用矩阵值边缘权重。zhou 等人提出了另一种基于 GNN 的广义感知框架 MP-Pose。在信息传递阶段,MP-Pose 利用空间编码网络编码相对空间关系,而不是直接扭曲特征。受图形注意网络(GAT)的启发,MP-Pose 进一步使用动态交叉注意编码网络来捕捉代理之间的关系,并像 GAT 一样聚合多个特征。

Attention-based

除了图形学习,注意力机制也已成为探索特征关系的有力工具.注意机制可根据数据域分为通道注意、空间注意和通道与空间注意

在过去的十年中,注意力机制在计算机视觉领域发挥了越来越重要的作用 ,并激发了协作感知研究

为了捕捉特征图中特定区域之间的相互作用,Xu 等人提出了 AttFusion,并首先在准确的空间位置采用自注意操作。具体来说,AttFusion 引入了单头自注意融合模块,与传统方法 F-Cooper和基于图的方法 DiscoNet相比,实现了性能和推理速度之间的平衡

除了传统的基于注意力的方法,基于变换器的方法也能激发协作感知。Cui 等人提出了基于点transformer的 COOPERNAUT,这是一种用于点云处理的自注意力网络。

接收到信息后,ego agent会使用下采样块和点transformer block来聚合点特征。这两种操作都保持了信息的排列不变性。更重要的是,COOPERNAUT 将协同感知与控制决策相结合,这对自动驾驶的模块联动具有重要意义

与 V2V 协作相比,V2I 可以利用大量基础设施提供更稳定的协作信息,但目前很少有研究关注这一场景

Xu 等人提出了首个统一转换器架构(V2X-ViT),它同时涵盖了 V2V 和 V2I。为了在不同类型的agent之间建立互动模块,V2X-ViT 提出了一个新颖的异构多代理关注模块(HMSA)来学习 V2V 和 V2I 之间的不同关系。此外,还引入了多尺度窗口注意模块(MSwin),以捕捉高分辨率检测中的长距离空间交互。

定制损失函数:虽然 V2V 通信为自我车辆提供了相对丰富的感知视野,但共享信息的冗余性和不确定性带来了新的挑战。

以往的协作感知研究大多侧重于协作效率和感知性能,但所有这些方法都假设了完美的条件。在现实世界的自动驾驶场景中,通信系统可能存在以下问题

1) 定位错误;2) 通信延迟和中断;3) 模型或任务差异;4) 隐私和安全问题

协同感知数据集

V2X-SimV2X-Sim [37, 38]是一个全面的模拟多代理感知数据集。它由交通模拟 SUMO [29] 和 CARLA 模拟器 [18] 生成,数据格式遵循 nuScenes [6]。V2X-Sim 配备了 RGB 摄像头、激光雷达、GPS 和 IMU,收集了 100 个场景共 10,000 个帧,每个场景包含 2-5 辆车。V2X-Sim 中的帧分为 8,000/1,000/1,000 帧,用于训练/验证/测试。V2X-Sim 的基准支持三个关键的感知任务:检测、跟踪和分割,需要注意的是,所有任务都采用鸟瞰(BEV)表示法,并以二维 BEV 生成结果。

  • OPV2V:OPV2V[79]是另一个针对V2V通信的模拟协同感知数据集,它是通过协同模拟框架OpenCDA[74]和CARLA模拟器[18]收集的。整个数据集可通过提供的配置文件进行重现。OPV2V 包含 11,464 帧激光雷达点和 RGB 摄像机。OPV2V 的一个显著特点是提供了一个名为 “卡尔弗城 “的仿真测试集,可用于评估模型的泛化能力。其基准支持三维物体检测和 BEV 语义分割,目前只包含一种类型的物体(车辆)。
  • V2XSetV2XSet [78] 是一个大规模的 V2X 感知开放模拟数据集。该数据集格式与 OPV2V [79]类似,共有 11,447 个帧。与 V2X 协作数据集 V2X-Sim [37] 和 V2I 协作数据集 DAIR-V2X [82]相比,V2XSet 包含更多场景,并且该基准考虑了不完美的真实世界条件。该基准支持 3D 物体检测和 BEV 分割,有两种测试设置(完美和嘈杂)供评估。
  • DAIR-V2X:作为第一个来自真实场景的大规模 V2I 协同感知数据集,DAIR-V2X [82] 对自动驾驶的协同感知意义重大。DAIR-V2X-C 集可用于研究 V2I 协作,VIC3D 基准可用于探索 V2I 物体检测任务。与主要关注激光雷达点的 V2X-Sim [37] 和 V2XSet [78]不同,VIC3D 物体检测基准同时提供了基于图像和基于激光雷达点的协作方法。
  • V2V4Real:V2V4Real [77] 是首个大规模真实世界多模式 V2V 感知数据集,由俄亥俄州哥伦布市的一辆特斯拉汽车和一辆福特 Fusion 汽车收集而成,覆盖 410 公里的道路。该数据集包含 20,000 个 LiDAR 帧和超过 240,000 个三维边界框注释,涉及五个不同的车辆类别。此外,V2V4Real 还提供了三个合作感知任务的基准,包括三维物体检测、物体跟踪和域适应。

数据集

KITTI

nuScenes

nuScenes数据集(发音为/nuõsiõnz/)是Motional(前身为nuTonomy)团队开发的一个用于自动驾驶的公共大规模数据集。Motional正在使无人驾驶汽车成为一种安全、可靠和可访问的现实。通过向公众发布我们的一部分数据,Motional旨在支持公众对计算机视觉和自动驾驶的研究。

为此,我们收集了波士顿和新加坡的1000个驾驶场景,这两个城市以交通密集和极具挑战性的驾驶环境而闻名。20秒长的场景是手动选择的,以展示一组多样而有趣的驾驶动作、交通状况和意外行为。nuScenes的丰富复杂性将鼓励开发能够在每个场景有几十个物体的城市地区安全驾驶的方法。收集不同大陆的数据进一步使我们能够研究计算机视觉算法在不同地点、天气条件、车辆类型、植被、道路标记以及左右交通中的通用性。

所有检测结果均按照平均精度 (mAP)、平均平移误差 (mATE)、平均比例误差 (mASE)、平均方向误差 (mAOE)、平均速度误差 (AVE)、平均属性误差 (AAE) 和 nuScenes 检测得分 (NDS) 进行评估。

The Waymo opendataset

学习资料

  1. 3D Object Detection | Papers With Code
  2. patrick-llgc/Learning-Deep-Learning: Paper reading notes on Deep Learning and Machine Learning (github.com)
  3. 3D Object Detection Overview | Stereolabs
  4. 系列二:3D Detection目标检测系列论文总结(2023年更) - 知乎 (zhihu.com)
  5. 3D点云HuangCongQing/3D-Point-Clouds: 🔥3D点云目标检测&语义分割(深度学习)-SOTA方法,代码,论文,数据集等 (github.com)
-------------本文结束感谢您的阅读-------------
感谢阅读.

欢迎关注我的其它发布渠道