深度学习在图像和点云融合方面的综述性文章,后续的工作准备用训练的方法替换融合中的模块,所以本周找了这篇文章进行阅读。(作者分别来自滑铁卢,中山,北航,文章本身的质量应该是可以保证的。)
《Deep Learning for Image and Point Cloud Fusion in Autonomous Driving: A Review》(arxiv.2004.05224 )
Motivation
激光和视觉的融合是一个比较重要的课题,但是目前缺少相关的总结性的文章,为了对最近几年应用在图像点云融合上的方法做一个系统的总结,作者将流行的不同融合方向的方法在公开数据集上进行了测试,认为目前学术上的方法和工业实现具有比较大的差距,并且提出了自己的改进方向。
Contribution
1.作者认为本文是第一篇关于自动驾驶中基于深度学习的图像和点云融合方法的综述,包括的任务有深度补全,动态和静态物体检测,语义分割,跟踪定位和在线的多传感器外参矫正。 2.对这些任务的融合方法进行了回顾,并且介绍了近6年来的最先进的方法的概述和性能对比。 3.提出了一个之前被忽视的问题: 端到端方法在未知环境的检测和如何在传感器未知的情况下融合,这两个问题在实际工业中十分重要,并且还介绍了可能的研究趋势。
Content
-
综述组成部分
如下图,首先介绍了深度学习在图像和点云中的各自的方法,然后介绍了针对深度补全,动态物体检测,静态物体检测,语义分割,目标追踪和在线传感器矫正这几个任务中所用到的融合激光和相机的方法,最后分别总结了挑战和未来的方向。
-
深度学习技术在图像和点云应用的简单回顾
A. 图像中的应用
简单介绍了下CNN
B. 点云中的应用
因为点云的数据组织具有稀疏的、不规则的、无序的、连续的特征,所以常用的点云处理方法一般分成五类: 第一类是基于体积表示的方法(体素格),这类方法兼容于常用的3D卷积方法,虽然最新的方法可以减少过拟合、方向敏感性,并且能捕获物体的内部结构。但是,体积表示在体素化过程中失去了空间分辨率和细粒度的 3D 几何形状,这限制了其性能,此外,尝试增加其空间分辨率(更密集的体素)会导致计算和内存占用量立方增长,无法进行扩展。
第二类是基于索引树表示的方法(KDtree和八叉tree).
第三类是二维视角的表示方法,这个方法的核心思想是将点云投影到多个二维平面,投影后的多个二维图像可以通过标准的2D卷积处理,并且最终通过视图池层进行融合,这做法可以同时解决平移不变性问题和正交不变性问题,置换不变问题是通过将点云转换为图像来解决的,平移不变问题是通过聚合来自不同视图的特征来实现的。
第四类是基于图表示的方法,将点云表示成图,然后在空间域和光谱域上进行卷积操作,对于空间域上的图卷积,由MLP对空间相邻点进行卷积,谱域图卷积将卷积扩展为通过拉普拉斯谱对图进行谱滤波。
第五类是基于点表示的方法,这种方法直接对点云中的点操作,这个方向的早期工作使用共享的MLP 来处理点云 ,而最近的工作集中在为点定义专门的卷积操作。
点云直接学习的开创性工作之一是 PointNet ,它采用独立的 T-Net 模块来对齐点云和共享 MLP 来处理单个点以进行逐点特征提取,PointNet 的计算复杂度随着输入的数量线性增加,与基于体积的方法相比,它更具可扩展性。为了实现正交不变性,所有点都由相同的共享 MLP 提取逐点特征。这些特征通过对称操作(即最大池化)聚合,它们也是正交不变的,特征提取过程定义为:
然而,PointNet 无法在不同级别提取局部点间几何。为了解决这个问题,pointnet++ 是将点分组为多个集合并在本地应用 PointNets,扩展了 PointNet 以从不同级别提取特征。为了降低 PointNet++ 的计算和内存成本,RandLA-Net 将随机点采样模块和基于注意力的局部特征聚合模块分层堆叠,以在保持高效率的同时逐步增加感受野。
与基于point-net方法不同的是,通过在逐点卷积中建模稀疏相邻点关系,逐点卷积旨在将标准 2D 离散卷积推广到连续 3D 空间,主要挑战是将标准卷积中的离散权重滤波器替换为连续权重函数,这个连续的权重函数是使用 PointConv 中的 MLP 和 KPConv 和 PCNN 中的相关函数来近似(PCNN将卷积核定义为具有权重的3D点,KPConv 想法类似,但使用线性相关函数), 最终通用的3D的逐点卷积函数可以定义为:
\[(\mathcal{F} * h)(x)=\sum_{x_{i} \in \mathcal{N}_{x}} h\left(x_{i}-x\right) f_{i}\\ h是每个点的核函数,Xi和Fi分别是第i个邻点和对应的特征\]-
深度补全
深度完成的目的是将样本稀疏的不规则深度提升到密集的规则深度,这有助于下游感知模块, 这个任务通常可以表示为:
下面给出了基于这个任务融合方法的历史时间线和性能对比表:
A. 单目和激光的融合
图像引导深度补全背后的思想是密集的RGB/颜色信息包含相关的3D几何体。因此,可以利用图像作为深度上采样的参考。
1). 信号级别融合: “Sparse-to-dense”方法提出了一个基于Resnet的自动编码器网络,然而,这种方法需要像素级的深度地面真值,难以获得,为了解决这个问题,有人提出了一种基于模型的自监督框架,该框架只需要一系列图像和稀疏深度图像进行训练,这种自监督是通过采用稀疏深度约束、光度损失和平滑度损失来实现的,但是这个问题是假定对象是静止的,此外,生成的深度输出模糊,输入深度也可能无法保留。为了实时生成清晰的密集深度图,尝试将RGB-D图像送入卷积空间传播网络(CSPN),该CSPN旨在直接提取图像相关的亲和矩阵,以较少的运行时间在关键测量中产生显著更好的结果。CSPN++为了减少计算量,提出动态选择卷积核大小和迭代次数,此外,CSPN++采用加权组装来提高其性能。 2). 特征级别融合: 以guidenet举例,GuideNet在编码器的不同阶段将图像特征融合到稀疏深度特征,以指导稀疏深度的上采样,从而在KITTI深度完成基准中实现最佳性能。这些方法的局限性在于缺乏具有密集深度地面真值的大规模数据集。 3)多层融合: 指的是同时进行特征级和信号级的融合,这种网络一般由一个全局分支和一个局部分支组成,用于并行处理RGB-D数据和深度数据,然后根据置信度图进行融合。
B. 双目和激光的融合
主要是基于特征级别的融合,最具有开创性的工作是用两级CNN从双目视差和点云计算高精度稠密视差图。CNN的第一阶段利用激光雷达和立体视差产生融合视差。第二阶段,将融合后的视差图像与左侧RGB图像在特征空间中进行融合,以预测最终的高精度视差。最后,根据该高精度视差重建三维场景,这种方法的瓶颈是缺乏大规模的带标注的双目激光雷达数据集。Li-darStereoNet通过无监督学习方案避免了这个问题,该方案采用图像扭曲/光度损失、稀疏深度损失、平滑度损失和平面拟合损失进行端到端训练。
-
动态物体检测
目标检测(3D)的目的是定位、分类和估计3D空间中的定向边界框。有两种主要的目标检测方法:顺序和一步。基于序列的模型按时间顺序由提案阶段和三维边界框(bbox)回归阶段组成。在提议阶段,提议可能包含感兴趣对象的区域。在bbox回归阶段,根据从3D几何体提取的区域特征对这些方案进行分类。然而,序列融合的性能受到各个阶段的限制。另一方面,一步模型由一个阶段组成,其中2D和3D数据以并行方式处理。
下图展示了动态物体检测的发展流程和经典网络结构:
如上所述,总共是分成时间序列和一步模型两大类方法,时间序列又分成2D和3D,2D又可以细分为基于结果级融合(结果级融合背后的直觉是使用现成的2D对象检测器来限制3D对象检测的3D搜索空间,这大大减少了计算量并提高了运行时间。然而,由于整个管道取决于2D对象检测器的结果,因此受到基于图像的检测器的限制), 特征级融合和混合融合,3D可以分成特征级融合和混合融合,一步模型主要是特征级融合,各个类别的典型方法对比性能如下:
并且根据PCR的不同,总结他们的优缺点如下:
-
静态道路目标
静止道路对象可分为道路上的对象(例如路面和道路标记)和标志对象(例如交通标志)。下面两张图分别给出了在车道/道路检测和交通标志识别(TSR)中的典型模型体系结构的比较:
车道线检测的经典结构:
交通标志检测的经典结构:
-
语义分割
2D/3D语义分割旨在预测每像素和每点类别标签,而实例分割也关注单个实例。下图显示了3D语义分段网络和典型模型架构的时间线:
-
目标追踪
分成DBT(基于检测的跟踪)和DFT(无检测跟踪)的方法,性能对比表如下:
-
未来方向
总体的方向有三个: 2D到3D,单任务到多任务,信号级到混合级。
尚未解决的问题有: 如何更好的表示融合的数据组织形式(点云/图像/即时信息); 如何更好的编码时间信息; 什么是更合理的学习模式; 什么时候应该用端到端的方法; 如何减轻激光和视觉的耦合程度; 如何提升全天气场景的性能; 如何如何处理对抗性攻击和corner case; 如何解决开放集目标检测问题;如何平衡速度-精度权衡.
Conclusion
这篇文章对激光和视觉融合中的端到端方法的应用介绍的比较全面,不过受限于篇幅,每个方法都很省略,针对后续感兴趣的方向,可以按照这个综述的思路找到合适的方法进行对比。