ECCV2020语义分割——Deep FusionNet for Point Cloud Semantic Segmentation

it2024-02-22  80

Deep FusionNet for Point Cloud Semantic Segmentation

(一)动机 Motivation(二)创新 Innovation(三)网络 FusionNet3.1 Point Cloud Representation3.2 Neighborhood Aggregations3.3 Inner-voxel Aggregation3.4 Down/Up-sampling3.5 Architecture and Sparse Implementation (四)实验 Experiments(五)总结 Conclusions

(一)动机 Motivation

现有方法不足:

尽管基于体素的卷积对于特征聚合很有用,但是如果体素包含来自不同类的点,则它们会产生模棱两可或错误的预测。其他方法(例如PointNet和逐点卷积)可能会采用不规则点进行特征学习。但是它们的高内存和计算成本(例如用于邻域搜索和球查询)限制了它们进行大规模点云处理的能力和准确性。

将许多原始点转移到一个体素上,当体素由不同类别的点组成时,这将在对象边界处产生模棱两可或错误的预测(图1(c))。

在训练大规模点云的深度和鲁棒网络方面受到限制(图1(a)),因为它们在邻域搜索,采样和球查询操作中具有很高的内存和计算复杂性。

基于点的卷积的方法学习近似权重函数或内插卷积权重。与可以直接索引具有固定邻域相对位置的内核的体积卷积相比,在这些点状卷积中,随着点的不规则散布,邻居的位置变得不可预测。因此,必须动态计算相邻点的内核。额外的存储成本和矩阵乘法将限制对大规模点云有效网络的训练,并且由于特征聚合不足而在某些对象中可能产生错误的预测(图1(b))。

(二)创新 Innovation

提出了一种深度融合网络架构(FusionNet),该架构具有一个独特的基于体素的“ mini-PointNet”点云表示形式和一个用于大规模3D语义分割的新特征聚合模块(融合模块)。FusionNet充分利用了稀疏属性,减少了内存占用。可以在一个GPU上对于一百万个点进行训练,达到大规模语义KITTI基准测试的最新精度。与现有的体素网络相比,当体素具有不同类别的点时,FusionNet可以预测逐点标签并避免那些模棱两可/错误的预测。FusionNet具有更有效的特征聚合操作(包括有效的邻域体素聚合和细粒度的内部体素点级聚合)。这些操作有助于为大规模点云分割产生更高的准确性。继承了体素卷积网络的所有优点(在有效性和效率方面),同时能够学习点状特征以进行准确的标签预测。

(三)网络 FusionNet

3.1 Point Cloud Representation

3.2 Neighborhood Aggregations

有两种类型的特征聚合可以将信息从邻域体素传播到当前体素:

体素特征聚合点特征聚合。

体素特征聚合:

将常规卷积用于体素特征聚合, 常规的基于体素的卷积也比许多现有的逐点卷积模型更有效。这些模型需要额外的内存和计算来学习或内插点卷积的权重核,以及通过KNN搜索或球查询从不规则点云中定位邻点。

为了减少内存占用并开发深度神经网络以用于大规模点云的分割,使用稀疏子流形卷积层进行基于体素的聚合,以仅在激活的体素上计算卷积(图2(a)的步骤ii)。这种方法有助于最大程度地减少所需的内存。

点特征聚合:



Voxel-MLP(图3(b))类似于在PointNets 和逐点卷积中广泛使用的原始MLP模块(图3(a))进行分割。但是,这些现有模型中的球查询,采样或KNN邻域搜索需要O(n2)时间复杂度来进行不规则点云中的点选择。尽管可以使用k-d树来加快O(nlog(n))复杂度,但为每层构建k-d树也将花费额外的内存和计算量。

在Voxel-MLP中,可以从邻域体素中更有效地直接访问所有邻域点(通过对每个点使用O(1)时间复杂度的哈希映射-总O(n))。Voxel-MLP的感受野由与卷积聚合相同的内核大小控制。例如,将内核大小设置为3时,将从27个邻域体素中选择邻域点。

3.3 Inner-voxel Aggregation

挑战:

体素级聚合仅学习粗粒度体素特征,当体素由不同类别的点组成时,这些特征通常会在对象边界处产生模糊/错误的预测。

解决方案:

设计了内部体素聚合,用于细粒度点级特征聚合和标签预测。


内部体素集合循环后,体素级特征和点特征被融合。然后将它们发送到下一个FusionNet模块/层以进行进一步聚合。

3.4 Down/Up-sampling

下采样和上采样在神经网络中进行分割至关重要,因为它们有助于捕获不同分辨率和感受野中的金字塔特征。对于常规体素,使用卷积和步长(例如2)的转置卷积进行下采样和上采样。这些类似于现有图像分割模型(例如UNet )。

图4说明了严格遵循体素水平采样的点特征下采样。体素级下采样后,体素的大小将扩大以获得较低分辨率的表示形式。

为了实现点级下采样,通过重新采样以获取新的“ mini-PointNet”来减少每个体素中的点数。

将每个体素的点数减半,同时确保至少一个有效点以避免新的空体素(图4(c))。与慢速迭代最远采样策略[37](对于大型点云有时需要1-2秒)相比,FusionNet中的点采样是在每个体素中独立实现的,并且可以由GPU并行计算,速度快(比最远的采样策略快10–100倍)。基于体素的采样可确保每个有效体素至少具有一个点,并避免出现新的空体素。这对于稀疏点云或区域(例如,距离远的点非常稀疏的LiDAR点云)尤其重要。基于体素的下采样可以保持点级和体素级网络之间的一致性,这是随机采样和最远采样策略无法实现的。对于点向上采样,使用PointNet 中提出的点插值来恢复高分辨率点表示。

3.5 Architecture and Sparse Implementation

Architecture:

使用的3D UNet主干网与<<4d spatio-temporal convnets: Minkowski convolutional neural networks>>和<< 3d semantic segmentation with submanifold sparse convolutional networks.>>相同。在每个金字塔级别,都使用一个FusionNet模块来替换卷积层。点级和体素级要素都通过串联紧密连接到先前的图层。

Sparse Implementation:

图5说明了稀疏数据结构中的点和体素的存储。每个体素及其点可以通过哈希映射快速访问。

体素的坐标(包括batch ID)用作哈希图的键,查询坐标直接指向每个体素和“ mini-PointNet”的位置。与密集的常规卷积网络相比,FusionNet充分利用了稀疏性以最大程度地减少其内存需求。PointNets 和逐点卷积网络不同,后者需要较高的计算复杂度才能进行邻域搜索。由于FusionNet利用regular- voxel representation和哈希映射来实现O(1)点/体素索引,因此它更适合于大规模的点云分割任务。

(四)实验 Experiments







(五)总结 Conclusions

提出了一种具有新型特征聚合模块的深度融合网络架构(FusionNet),用于大规模3D语义分割。FusionNet利用独特的基于体素的“ mini-PointNet”进行点云表示和学习。它既可以实现邻域体素特征聚合,又可以实现细粒度的逐点特征学习。因此,与基于体素的卷积网络相比,FusionNet可以产生更准确的逐点预测。而且,与流行的逐点卷积相比,它以更低的内存和计算成本实现了更有效的特征聚合。当前,系统的一部分(哈希映射)是在CPU上实现的,这限制了运行速度。将来,可尝试使用GPU哈希映射,这将大大加速FusionNet实时应用程序。
最新回复(0)