本文是根据Deep Learning for 3D Point Clouds A Survey[1]和A Survey on 3D Object Detection Methods for Autonomous Driving Applications[2]两篇综述论文进行3D点云目标检测研究的讨论和总结。
目前主要应用点云和图像数据进行目标检测。不同的数据类型有不同的特点。
点云数据:三维点云提供了精确的几何体和对光照变化的鲁棒性;提供了相对速度定位和精确深度的结构和空间信息;但是点云具有稀疏性、无序性和局部敏感性。
图像:具有纹理信息,但是没有深度信息,受天气和光照变化大等。
**问题的关键:**如何把这两种数据进行融合,充分利用不同数据类型的优点,实现精确的目标定位,分类检测,和方向估计;并且可以减少计算量和内存消耗,实现实时性。
这里我按照A Survey on 3D Object Detection Methods for Autonomous Driving Applications这篇综述中的分类方法进行整理。
这个方法是用二阶段网络,第一个阶段是产生3D proposal,第二个阶段是对proposal进行精确调整,方向估计和类别分析。基于区域建议的方法可以分成基于多视图的方法、基于分割的方法、基于截锥的方法和其他方法。
这些方法将来自不同视图map(例如,LiDAR前视图、鸟瞰视图(BEV)和图像)的建议性特征进行融合,以获得3D旋转方框。这些方法的计算成本通常很高。所以怎样有效地融合不同模式的信息减少计算是一个需要解决的问题。
融合的方式的方法主要有三种类型:前期融合、后期融合和深度融合。
融合数据的方法:point-voxel融合、point-image融合。
前期融合:在过程开始时模式进行融合,从而创建依赖于所有模式的新的特征表示形式。如AVOD。
后期融合:模式是分开和独立地处理到融合发生的最后一个阶段。该方案不需要所有的模式都可用,因为它可以依赖于单一模式的预测。如[4]
深度融合:深度融合:在中提出,它在神经网络层中分层地混合了模态,允许来自不同模态的特征在各层之间交互,从而产生了更通用的融合方案。如[5]。
除了有效融合不同的数据方法,还研究如何使得输入的数据表示更具有鲁棒性,[6]通过引入空间通道注意(SCA)模块来探索多尺度上下文信息,该模块捕捉场景的全局和多尺度上下文,并突出有用的特征。他们还提出了一个扩展空间不采样(ESU)模块,通过组合多尺度低层特征来获得具有丰富空间信息的高层特征,从而生成可靠的3D对象建议。
CVPR2020中很多论文研究了如何将point-voxel融合,point-image融合。
其中点云数据的应用可以分为如下几类:投影的方法、体素的方法和直接应用点云原始数据的方法。
把点云数据投影成图像,如鸟瞰图(BEV),对点云数据进行编码[7],[8],[9]使用鸟瞰投影来生成3D建议。它们在输入表示形式上有所不同:第一个使用位于单元格内的点的最小,中值和最大高度值作为通道来编码2D输入单元格,而后两个使用高度,强度和密度通道。不同的编码形式都有一个相同的目标,就是减少信息的损失。
对象或场景以3D网格或体素表示形式表示,其中每个单元都有属性,例如二进制占用率或连续点密度。 这种方法的优点之一是它们明确地编码形状信息。 但是,结果是,大多数体积是空的,导致在处理这些空单元时效率降低。 另外,由于数据本质上是三维的,因此3D卷积是必需的,从而大大增加了此类模型的计算成本。为了减少计算成本,[10]应用了稀疏卷积算法降低模型的复杂性。
直接处理点云的原始数据的网络如PointNet和PointNet++。
这些方法首先利用现有的语义分割技术去除大部分背景点,然后在前景点上生成大量高质量的建议来节省计算量。与多视图方法[3]、[11]、[12]相比,这些方法具有更高的3D框召回率,更适合复杂的情况具有高度封闭和拥挤物体的场景。
CVPR2020中PointPainting[13]利用了语义分割信息。
这些方法首先利用现有的2D对象检测器来生成对象的2D候选区域,然后针对每个2D候选区域提取3D frustum proposal。虽然这些方法可以有效地提出三维物体的可能位置,但是the step-by-step pipeline使其性能受到二维图像检测器的限制。F-PointNets[14]是这方面的一项开创性工作。
还有一些其他的方法如VoteNet,提出了VoteNet直接对点云中对象的虚拟中心点进行投票的方法,并通过汇总投票特征来生成一组高质量的3D对象建议。 通过将2D对象检测线索(例如,几何和语义/纹理线索)融合到3D投票管道中,提出了ImVoteNet检测器。图卷积等。
CVPR2020中有把弱监督[15]应用到网络中的研究,因为KITTI数据集有一些局限性,如有限的传感器配置和照明条件:所有测量都是在白天且大部分在阳光充足的条件下,由同一组传感器获得的。另外,类别的数量非常不平衡汽车75%,骑自行车的人4%和行人的15%。此外,大多数场景对象遵循主要朝向,面向自我车辆。多样性的缺乏挑战了在更一般的情况下对当前方法的评估,从而降低了其在实际应用中的可靠性。
此外,还提出了一些多任务多传感器网络[16],不仅仅实现目标检测的任务,还可以同时实现目标跟踪、场景分割等任务。
此外,还有一些多尺度特征融合的研究[17]。主要目标就是实现表达能力更强的特征表示,和更加鲁棒的数据表示形式。
这些方法使用单阶段网络直接预测类概率并回归对象的3D边界框。 它们不需要区域提案的生成和后处理。 它们可以高速运行。 根据输入数据的类型,单次方法可以分为三类:基于BEV的方法,基于离散化的方法和基于点的方法。
这些方法主要采用BEV表示作为输入。[20]离散化具有等距像元的场景的点云,并以相似的方式对反射进行编码,从而得到规则的表示。然后,使用完全卷积网络(FCN)网络来估计对象的位置和航向角。具体的网络结构在相关的论文中。
这些方法将点云转换为规则的离散表示形式,然后应用CNN预测对象的类别和3D框。
这些方法直接将原始点云作为输入,如3DSSD(CVPR2020)
如LaserNet、Point-GNN等等。
•基于区域提议的方法是这两个类别中研究最频繁的方法,并且在KITTI测试3D和BEV基准上都大大优于单发方法。
•现有的3D对象检测器有两个限制。首先,现有方法的远程检测能力相对较差。其次,如何充分利用图像中的纹理信息仍然是一个未解决的问题。
•多任务学习是3D对象检测的未来方向。例如,MMF [18]学习交叉模式表示,以通过合并多个任务来实现最新的检测性能。
•3D对象跟踪和场景流估计是新兴的研究主题,自2019年以来逐渐引起越来越多的关注。
[1]Deep Learning for 3D Point Clouds A Survey
[2]A Survey on 3D Object Detection Methods for Autonomous Driving Applications
[3]Joint 3D Proposal Generation and Object Detection from View Aggregation
[4]Frustum PointNets for 3D Object Detection From RGB-D Data
[5]Deep Continuous Fusion for Multi-Sensor 3D Object Detection
[6] Voxelnet: End-to-end learning for point cloud based 3d object detection. CVPR (2018)
[7]Complex-YOLO: Realtime 3D Object Detection on Point Clouds.
[8]Vehicle detection and localization on bird’s eye view elevation images using convolutional neural network. IEEE2017
[9]BirdNet: a 3D Object Detection Framework from LiDAR information.
[10]Vote3deep: Fast object detection in 3d point clouds using efficient convolutional neural networks.IEEE2017
[11]Multi-view 3D object detection network for autonomous driving. CVPR(2017)
[12] RT3D: Real-time 3D vehicle detection in lidar point cloud for autonomous.IEEE RAI(2018)
[13]PointPainting: Sequential Fusion for 3D Object Detection.CVPR(2020)
[14]Frustum PointNets for 3D object detection from RGB-D data.CVPR(2018)
[15]DOPS: Learning to Detect 3D Objects and Predict their 3D Shapes.CVPR(2020)
[16]PnPNet: End-to-End Perception and Prediction with Tracking in the Loop.CVPR(2020)
[17]HVNet: Hybrid Voxel Network for LiDAR Based 3D Object Detection.CVPR(2020)
[18]Multi-Task Multi-Sensor Fusion for 3D Object Detection.
[19]Structure Aware Single-stage 3D Object Detection from Point Cloud.CVPR(2020)
[20]PIXOR: Real-time 3D object detection from point clouds.CVPR(2018)