论文阅读:Deep Sensor Fusion with Pyramid Fusion Networks for3D Semantic Segmentation

0、摘要

摘要:对于自动驾驶汽车来说,环境感知的鲁棒性是一个巨大的挑战,这使得各种各样的传感器如相机、激光雷达和雷达至关重要。在理解所记录的传感器数据的过程中,三维语义分割起着重要的作用。因此,本文提出了一种基于金字塔的激光雷达与摄像机深度融合体系结构,以改进交通场景的三维语义分割。独立的传感器主干提取相机图像和激光雷达点云的特征图。一种新型的金字塔融合骨干网将这些不同尺度的特征映射进行融合,并将多模态特征组合到特征金字塔中来计算有价值的多模态、多尺度特征。金字塔融合头将这些金字塔特征聚合起来,并在后期融合步骤中进一步细化,结合传感器主干的最终特征。该方法在两个具有挑战性的户外数据集上进行评估,并研究了不同的融合策略和设置。它优于最近基于距离视图的激光雷达方法,以及迄今为止提出的所有融合策略和架构。

1、引言

        语义场景理解在许多机器人任务中起着至关重要的作用。为了全面理解复杂的三维场景,开发和组合不同的传感器模式是至关重要的。相机和激光雷达传感器的融合是一个很有前途的互补组合。相机提供了高分辨率的图像,但没有几何信息,而激光雷达点云提供了有价值但稀疏的三维几何信息,随着距离的增加,这些信息变得更加稀疏。因此,相机图像与三维点云的融合具有很大的潜力。

        三维场景理解的一个重要方面是三维语义分割,它为每个单独的三维点分配一个类标签。虽然利用深度信息来提高图像语义分割的方法很多,但利用相机信息来提高三维语义分割的研究却很少。一般来说,为了使用卷积神经网络(CNN),人们已经提出了不同的点云表示方法,例如基于投影的[1]、[2]或基于点的[3]、[4]。一个很有前途的基于投影的表示是基于球形投影的距离视图,因为它允许与相机图像的直观融合。

        常用的策略[5]有原始输入数据的融合(早期融合)、特征映射的融合(深度融合)和预测的融合(后期融合)。早期和晚期融合只在一个尺度上融合一次,而深度融合提供了在多个位置和尺度上融合的可能性。在图像处理中,特征金字塔是识别多尺度内容的常用方法。因此,它们是多尺度深度特征融合的一个很好的起点。

        基于这些发现,我们提出了一种新的基于金字塔的深度融合方法,如图1所示,利用激光雷达和相机的多尺度融合来改进3D语义分割。利用一种新型的金字塔融合骨干网,将距离视点空间的激光雷达特征与变换后的摄像机特征在特征金字塔内进行不同尺度的融合。提出的金字塔融合头将多模态、多尺度特征进行聚合,并在融合后期进行细化。整个金字塔融合网络显著提高了结果。综上所述,我们的贡献是:

  • 一种模块化多尺度深度融合结构,由可交换传感器主干网新型金字塔融合网络组成。
  • 距离视场中激光雷达与相机多尺度特征融合的金字塔融合骨干网
  • 一个金字塔融合头,用于聚合和细化多模型、多尺度的金字塔特征。

2、相关工作

A. 2D语义分割

        全卷积网络(Fully Convolutional Networks, FCNs)[6]是语义分割任务的先驱网络体系结构。全卷积体系结构是为端到端像素级预测而设计的,因为它们用卷积取代了cnn的全连接层。由于最初的FCN努力捕捉场景的全球上下文[7],新的建筑出现了[7]-[9],基于金字塔特征进行多尺度的上下文聚合,在保留细节的同时收集全局上下文。

        PSPNet[7]应用了金字塔池模块(PPM),它结合了最后一个特征映射的不同比例。因此,网络能够捕捉场景的上下文和细节。像HRNetV2[9]这样的进一步的方法利用了特征提取主干中已经存在的金字塔特征。对于全景图像分割的相关任务,EfficientPS[8]通过应用双向特征金字塔网络(FPN)[10]结合了自底向上和自顶向下不同尺度的特征。然后使用语义头,包含大尺度特征提取器(Large Scale Feature extraction, LSFE)、密集预测单元(Dense Prediction Cells, DPC)[11]和失配校正模块(Mismatch Correction Module, MC)三个模块来捕获大尺度特征和小尺度特征,用于语义分割;

B. 3D 语义分割

        与将cnn应用于规则网格排列的图像数据相比,cnn不能直接应用于三维点云。因此,已经开发了几种表示和专门的体系结构。

        直接处理非结构化原始数据的先锋方法是PointNet[3],它应用一个共享的多层感知器来提取每个输入点的特征。由于它必须对任何输入排列保持不变,所以使用对称操作来聚集特征。它的后续产品PointNet++[4]通过点的递归分层分组利用特征之间的空间关系。

        不处理原始点云的方法将它们转换成离散空间,如2D或3D网格。基于球面投影的一种高效且有前途的二维网格表示方法是所谓的距离视图。SqueezeSeg[12]是最早利用这种表示方式进行道路对象分割的方法之一。最新的方法是SqueezeSegV3[13],它使用空间自适应卷积来抵消距离视图变化的特征分布。RangeNet++[1]提出了一种高效的基于knn的后处理步骤,以克服球面投影带来的一些缺陷。与之前的方法相比,SalsaNext[2]改进了网络架构的各个方面,例如解码时的像素洗牌层和Lov´asz-Softmax-Loss[14]的使用。在[15]中使用了卷积的另一种适应。该方法采用轻量化的谐波密集卷积对距离图进行实时处理,取得了良好的效果。此外,利用多重表示的混合方法出现了[16],[17]。

C. 3D 多传感器融合

        多传感器融合对计算机视觉的不同任务不断获得关注。主要解决了相机与激光雷达结合的三维目标检测问题。对于密集预测(如语义分割)所需要的密集特征融合,目前只有为数不多的著作[18]-[21]进行了研究。

        在[18]中,基于稠密感兴趣区域的融合应用于多种任务,包括三维目标检测。另一种三维目标检测方法[19]应用连续卷积结合密集相机和激光雷达鸟瞰特征。连续融合层将多尺度图像特征与网络中不同尺度的激光雷达特征图融合在一起。

        提出了基于LaserNet++[20]的目标检测和语义分割算法。该算法首先通过残留网络对摄像机图像进行处理。应用投影映射,摄像机特性被转换为距离视图。然后将拼接后的特征图送入LaserNet[22]。Fusion3DSeg[21]对相机和激光雷达特性采用迭代融合策略。在Fusion3DSeg中,相机和距离视图特征采用迭代深度聚合策略进行迭代多尺度特征融合。最后的特征与来自3D分支的基于点的特征进一步结合,而不是常用的基于knn的后处理[1]。

        与[18]相比,本文提出的[19]是模块化的,各个传感器主干网相互独立,因为没有图像特征反馈给激光雷达主干网。此外,提出了一种新的双向金字塔融合策略。另一边的LaserNet++[22]只融合一次,不应用多尺度融合。Fusion3DSeg[21]是最相关的工作,采用的是迭代融合策略,与我们的自下而上和自上而下的并行金字塔策略有很大的不同。

3、基于金字塔融合网络的三维语义分割

        本文提出的深度传感器融合方法由四个主要组成部分组成,在下一节中介绍。首先是激光雷达和摄像机主干,它们计算单个传感器数据的特征,然后是一种新型的金字塔融合主干,以自顶向下和自底向上的方式在不同尺度上融合两种模式的编码器特征。金字塔融合头结合这些特征,并在融合后期将它们与两个传感器主干解码器的最终输出进行融合。总体架构如图2a所示。该方法的模块化和训练策略的选择使得该方法能够在不影响其他目标的情况下处理摄像机不可用、切换主干网或传感器,并联合预测摄像机和激光雷达的语义分割。因此,两个主干网都对其传感器数据进行预训练,并在训练整个融合架构时冻结。因此,主干网仍然能够预测单个传感器语义,作为相机不可用或额外的相机分割的后备。 

 A. Lidar Backbone

        激光雷达主干基于[21],[23]的球面投影计算输入点云的特征,这些特征在距离视图中表示。它的架构是由EfficientPS[8]驱动的,并适应于范围视图。由于距离图像的分辨率比相机图像小,特别是垂直方向上,前两个阶段的下采样步长只在水平方向上进行。此外,我们使用EfficientNet-B1[24]作为编码器,并删除了最后三个阶段。因此,双向FPN只有三个阶段而不是四个,输出通道减少到128个,因为EfficientNet-B1使用的特征通道比EfficientNet-B5少。如图2a所示,计算得到的第三阶段、第四阶段和第六阶段的特征图被提供给金字塔融合主干,用于与相机特征进行融合。由于去掉了FPN阶段,相应的DPC模块[8]也从语义头中删除了。头部提供其输出特征的后期融合的金字塔融合头。

B. Camera Backbone

        我们研究的第一个主干仍然是EfficientPS,但使用了原始的Efficient-B5作为编码器。与激光雷达主干网相比,EfficientPS几乎没有改变作为相机主干网的使用。同样,第三阶段、第四阶段和第六阶段的输出被提供给金字塔融合主干。对于金字塔融合头的后期融合步骤,使用语义头的输出。

        此外,使用底层ResNet101[25]的PSPNet被选为另一个主干。来自ResNet101的层conv3_4、conv4_23和conv5 _3的三个特征映射被作为金字塔融合主干的输入提供。PPM的输出提供给后期的融合步骤。

C. Pyramid Fusion Network

        融合体系结构的关键部分是金字塔融合网络,它融合了激光雷达和相机的特性。融合模块将特征转换为公共空间,然后是融合步骤,将两种模式结合起来。金字塔融合主干在不同尺度上应用这些模块,并以自顶向下和自底向上的方式聚合和组合得到的融合特征,如图2b所示。这些多模态、多尺度的特征在后期融合阶段被金字塔融合头结合并进一步细化。

Feature Transformation

为了实现激光雷达和相机的融合,需要一个公共空间。因此,需要从摄像机图像到距离视图空间的特征投影。此外,投影必须适用于不同的特征地图比例尺。为了解决这个问题,我们使用了Fusion3DSeg的可伸缩投影scalable projection[21],[26]。一般的想法是基于点云的3D点创建一个从相机图像到范围视图坐标的映射。每个点都可以投影到距离视图以及相机图像中,在相机图像和距离视图坐标之间创建所需的链接。

Fusion Module

        通过融合模块进行特征变换和融合,如图3所示。首先,将两个传感器特征图裁剪到重叠的视场,因为只有在这一区域才可能进行融合。通过上述特征变换将相机特征空间转换为距离视图空间,然后通过学习后的特征投影将激光雷达与相机特征空间对齐,由一个倒置残差块(IRB)[8]实现。激光雷达的特征是双线性上采样,因为它们的特征地图分辨率比相机小,这允许融合来自两个传感器的不同特征。在距离视图空间中对齐的激光雷达和摄像机特征被连接起来,接着是一个或多个残差块用于学习融合。该模块旨在利用不同类型和数量的块应用不同的融合策略。我们研究了一种基于瓶颈残留块(BRB)[27]的瓶颈融合策略和一种基于irb的倒置残留融合策略。

 Pyramid Fusion Backbone

        该融合模块被整合到双向FPN中,在不同尺度上融合两种模式,然后通过自底向上和自顶向下的聚合计算多模态、多尺度特征。从激光雷达主干中,将如图2b所示的三种不同尺度的特征图传递给各自对应的融合模块。然后,将特征图上采样到目标输出分辨率,并与来自三种不同尺度的摄像机主干特征图进行融合。然后将得到的三个特征图以自底向上和自顶向下的特征金字塔的形式进行聚合,以计算多尺度特征。通过这种方式,不同规模的多模式特征的聚合开始了,一方面,有了细节,并融入了越来越多的上下文,另一方面,有了上下文,并添加了越来越多的细节。最后将两个锥体输出进行组合,得到的多模态、多尺度的锥体特征传递给金字塔融合头。

Pyramid Fusion Head

融合头的第一步类似于激光雷达主干的语义头,它结合了来自双向FPN和本例中来自金字塔融合主干的三个特征映射。后者融合了来自两个编码器的特征,一个额外的后期融合步骤,融合来自激光雷达和摄像机解码器的最终特征,以进一步改善金字塔融合网络的特征。因此,通过两个额外的融合模块,将相机和激光雷达主干的最后一个特征图与金字塔融合主干的聚合特征进行融合,如图2a所示。

最后的特征图被输入到1x1卷积,然后是softmax激活函数,用于对距离视图输入进行像素级分类。将基于knn的后处理[1]应用于三维语义分割。

4、评价

以下评估是在两个具有挑战性的大型户外数据集SemanticKITTI[28]和PandaSet[29]上进行的,在这两种情况下,报告了两个传感器重叠视场的平均相交(mIoU),以研究我们的方法,并将其与其他最先进的方法进行比较。

SemanticKITTI 是一个点式标注数据集,基于360◦激光雷达扫描的Velodyne-HDL64E,从KITTI Vision Benchmark[30]里程计任务。它包含22个注释序列和19个类的大约43,000个扫描。从这些序列中,只有前11个有公开的地面真相。我们在正式验证序列08上报告我们的结果。由于不存在用于测程任务的语义标记图像,因此使用来自语义分割挑战[31]的数据对摄像机主干进行预训练。它包含200张带注解的图像,我们使用0 - 149张用于训练,其余的用于验证。

PandaSet提供了Pandar64的6080个逐点注释的激光雷达扫描,以及来自前端中心摄像机的相应摄像机图像。为了与其他方法[23]的可比性,我们将已标记的类分组为14个类的子集,并遵循[23]中提出的数据分割。

A. Implementation Details

该方法在混合精度模式下进行训练,在多达4个特斯拉V100 gpu上使用分布式数据并行训练。在训练过程中,使用加权交叉熵损失对网络进行优化,权值wc = log (nc/n),其中n定义总点或像素数,每个类c的值为nc。此外,使用poly学习速率调度程序将学习速率衰减1−(i/imax)0.9,其中i表示迭代。如果没有另外说明,则使用权重衰减为0.0001的SGD优化器。

Lidar backbone这两个数据集的批量大小都为16,SemanticKITTI的初始学习速率为0.07,PandaSet的初始学习速率为0.001。后者经过了Adam的优化。为了减少过拟合,在两个数据集上分别应用概率为0.5的随机水平翻转和随机种植(作物大小为64 × 1024)。

Camera Backbone这两个网络都使用来自cityscape[32]的预先训练的权值,并以4个批处理进行进一步训练。对于EfficientPS,初始学习速率是0.0007被应用,而对于PSPNet是0.0001被使用。随机水平翻转和概率为0.5的高斯模糊,以及大小为300×600的随机作物和从[−5◦,5◦]均匀绘制的角度随机旋转。如果没有说明,则EfficientPS被用作相机的骨干。

Deep Fusion在对两个主干进行预训练和冻结后,对SemanticKITTI上的融合方法进行批数为16的训练,学习率为0.07。在PandaSet上,批量大小设置为8,初始学习率为0.001,使用Adam优化器。对于数据增加,随机水平翻转的概率为0.5。距离视图中重叠视场的分辨率分别为45×485和61×266。由于传感器体积小,重叠部分不采用随机裁剪。由于PandaSet中不存在语义标记的相机图像,所以相机主干不会为相应的实验冻结。为了考虑到前训练,我们将EfficientPS的学习率设置为0.0001,而PSPNet的学习率设置为0.001。

B. Pyramid Fusion Networks

        我们评估的第一个实验研究了所提出的方法及其组件对SemanticKITTI的影响。结果如表1所示。两个重要的基线分别是激光雷达主干作为单传感器基线和后期融合策略作为融合基线,将两个主干的最终特征图与所提出的融合模块进行融合。加入我们的融合骨干PFB显著改善了结果,这强调了多模态特征的价值,此外,强调了我们的多尺度融合策略的好处,它优于后期融合。迄今为止,激光雷达主干的语义头被用作金字塔头来聚合金字塔特征。部署我们的融合头PFH,包括一个额外的晚期融合步骤,进一步改善了结果。总的来说,PyFu的表现分别优于两个基线的3.9%和2.7%,推理时间为48毫秒。下一步研究融合模块内部的不同融合策略,结果如表II所示。首先,评估了不同策略对金字塔骨架PFB的影响。使用BRB + BB[27]的瓶颈融合策略优于依赖irb的反向融合策略。这也适用于整个金字塔融合网络。

        另一个实验是在PandaSet上进行的,以研究不同的相机主干。如前所述,由于没有语义标记的图像数据存在,相机主干是用PandaSet上的整体架构进行训练的。虽然在这种情况下没有联合激光雷达和相机分割是可能的,但它表明,我们的方法也可以训练没有语义标记的图像。表三显示,作为相机主干的EfficientPS显著优于PSPNet,在基线上取得了+8.8%的显著改善。尽管如此,激光雷达基线在两种情况下的表现都明显优于此,这证实了所提出的架构在不同的摄像机主干下工作良好。EfficientPS还提供了另一个优势,它需要更少的内存,使其能够以原始分辨率处理相机图像。否则,将执行初始降采样的2倍,这将降低性能。在SemanticKITTI上,PSPNet作为骨干网络工作得最好,mIoU值为61.9%。对于后者和SemanticKITTI, LF步骤没有提供任何改进。最后,图4显示了这两个数据集在三个不同场景下的定性结果。

 C. Quantitative Results

        下一步,我们的方法将进一步与基于距离视图的最先进的方法进行比较,以评估摄像机和激光雷达融合的好处,SemanticKITTI的结果如表4所示。它在总体上优于所有激光雷达方法,而且在大多数单个类中也优于所有激光雷达方法。值得一提的是,主要的改善部分来自融合,而不是来自已经较好的基线。这再次强调了相机功能在改善3D语义分割方面的价值。接下来,与其他深度融合方法的比较研究了我们的融合架构和策略,见表4。金字塔融合策略优于所有其他融合方法,PyFu和Fusion3DSeg[21]的卓越性能突出了多尺度传感器融合的好处。与后者相比,尤其对于摩托车类、其他车辆类和围栏类都取得了明显较好的效果。在[21]中,对其他方法进行了基于knn的后处理的重叠视场的评价。Razani等人的[15]无法计算,因为没有可用的代码。

        最后,将PyFu与PandaSet上的其他融合方法进行了比较。再一次,我们的方法表现最好,比其他所有方法都好得多。在个体类别中,尤其是卡车(+22.4%)、其他车辆(+10.9%)和道路障碍物(+9.1%),PyFu的效果显著最好。在这些情况下,我们的激光雷达骨干性能也优于Fusion3DSeg的激光雷达骨干。然而,它表明所提出的融合策略能够进一步改进已经很强的类。对于汽车,人,建筑和背景类,我们的方法实现了最好的结果,尽管有更好的性能,Fusion3DSeg的激光雷达骨干。如果我们的方法不能为类实现最好的结果,另一个主干也比我们的工作得更好。然而,金字塔融合策略显著地减少了差异。总的来说,这显示了我们的融合策略和架构的巨大潜力。

        

5、结论

        在本工作中,我们提出了一种新的基于金字塔的融合架构PyFu,该架构融合了激光雷达和相机在多尺度上的特征,以改善三维语义分割。金字塔融合骨干网通过自顶向下和自底向上的策略融合多尺度特征,以增强对多模态信息的利用。它利用灵活的融合模块和可互换的策略。一个金字塔融合头聚集了金字塔的特征,并在后期的融合步骤中细化它们。在两个具有挑战性的户外数据集上,PyFu优于其他激光雷达的距离视图和融合方法。结果强调了一般传感器融合的重要性,特别是所提出的融合架构的优点。它还强调,所提出的金字塔结构最好地利用了传感器融合。综上所述,该方法在利用相机图像改进三维点云语义分割方面具有巨大的潜力。

自己总结:

1、感觉思路很简洁,多层特征融合,三层金字塔都是很成熟的思路,但是固定原来的网络然后在训练是怎么做到的?

2、融合模块,添加前向和后向,这是提升来源?为什么效果会这么好?

3、数据对齐部分有点疑惑,数据维度都不一样,图片画的没看懂

猜你喜欢

转载自blog.csdn.net/qq_53086461/article/details/130464942
今日推荐