RandLA-Net阅读笔记-cvpr2020

RandLA-Net: Efficient Semantic Segmentation of Large-Scale Point Clouds

Qingyong Hu1, Bo Yang1, Linhai Xie1, Stefano Rosa1, Yulan Guo2,3,*
Zhihua Wang1, Niki Trigoni1, Andrew Markham1
1University of Oxford, 2Sun Yat-sen University, 3National University of Defense Technology


github

作者知乎

目录

  • RandLA-Net: Efficient Semantic Segmentation of Large-Scale Point Clouds
    • Abstract
    • 1、Introduction
    • 2、Relate Work
    • 3、RandLA-Net
      • 3.1. Overview
      • 3.2. The quest for efficient sampling
      • 3.3. Local Feature Aggregation
        • 1、local spatial encoding (LocSE),
        • 2、attentive pooling,
        • 3、Dilated Residual Block
      • 3.4. Implementation
    • 4、Experiments
      • 4.1. Efficiency of Random Sampling
      • 4.2. Efficiency of RandLANet
      • 4.3. Semantic Segmentation on Benchmarks
        • (1) Evaluation on Semantic3D
        • (2) Evaluation on SemanticKITTI.
        • (3) Evaluation on S3DIS.
      • 4.4. Ablation Study
        • (1) Removing local spatial encoding (LocSE)
        • (2~4) Replacing attentive pooling by max/mean/sum pooling
        • (5) Simplifying the dilated residual block.
    • 5、Conclusion

Abstract

文章解决大场景下的高效率点云语义分割,因为依赖于昂贵的采样方法和复杂的预/后处理步骤,现存的方法只能操作小尺度的点云。我们提出的RandLA-net,是一个轻量级的对大尺度点云的高效分割网络。我们采用了随机采样而不是更复杂的采样策略,但是随机采样可能会丢失一些关键特征,为了解决这个问题,引入了一个全新的局部特征聚合模块来渐进地增加每一个点的感受野,因此保存了几何细节。实验证明我们的方法比现存方法快200x,在Semantic3d以及SemanticKITTI数据集上超越了SOTA的方法。

1、Introduction

在Pointnet使用share MLPS对点云进行处理,但是其无法获得更广泛的上下文信息(只有全局信息,而没有局部信息),为了学习更丰富的局部结构,许多专用的模块被提出

  • neighboring feature pooling
  • graph message passing
  • kernel-based convolution
  • attention-based aggregation

这些方法其中的大多数只能针对非常小的点云(e.g., 4k points or 11 meter
blocks),如果不使用block partition等预处理操作,不能应用于大场景的点云(200*200m)。这个限制的原因主要有三点:

  • 采样方法太复杂
  • 大多数现有的局部特征学习模块依赖于核或者图结构,这些是很花费计算资源的
  • 大尺度的场景有上百个物体,因为感受野(receptive fields)的限制,现存的方案要么不能捕获复杂的结构要么计算效率低下。

也有一些工作直接处理大规模点云,SPG现将点云处理为超图(super point)然后再应用于神经网络去学习每一个超点的语义标签;FCPN和PCT联合voxellization和point-leavel的网络去处理庞大的点云。因为他们的预处理或者后处理太复杂,很难在实时设备上部署。

在这篇文章中,作者提出直接处理大尺度点云的方案,不需要预处理/后处理,使用的随机采样,RS,为了解决随机采样的特征丢失问题,引入了局部特征聚合模块,LFA,通过逐渐地在每个神经层扩大感受野,以捕获越来越小的点集上的复杂局部结构。

LFA由以下构成:

for each 3D point, we firstly introduce a local spatial
encoding (LocSE) unit to explicitly preserve local geometric
structures. Secondly, we leverage attentive pooling to
automatically keep the useful local features. Thirdly, we
stack multiple LocSE units and attentive poolings as a dilated
residual block, greatly increasing the effective receptive
field for each point. Note that all these neural components
are implemented as shared MLPs, and are therefore
remarkably memory and computational efficient.

2、Relate Work

  • Projection and Voxel Based Networks
  • Point Based Networks
  • Learning for Large-scale Point Clouds

3、RandLA-Net

3.1. Overview

In our RandLA-Net, we propose to use the simple and fast approach of random sampling to greatly decrease point density, whilst applying a carefully designed local feature aggregator to retain prominent features.

RandLA-Net阅读笔记-cvpr2020_第1张图片

3.2. The quest for efficient sampling

现存的采样方法主要有

Heuristic Sampling

  • Farthest Point Sampling (FPS)
  • Inverse Density Importance Sampling (IDIS)
  • Random Sampling (RS)

Learning-based Sampling

  • Generator-based Sampling (GS)
  • Continuous Relaxation based Sampling (CRS)
  • Policy Gradient based Sampling (PGS)

作者比较了以上的6种方法,发现:

FPS, IDIS and GS are too computationally expensive
to be applied for large-scale point clouds,CRS approaches
have an excessive memory footprint and PGS is
hard to learn.

相比之下,RS具有以下优点:

1、它非常高效,因为它与输入点的总数无关。

2、它不需要额外的内存来进行计算。

因此选择RS作为采样模块,但是RS会丢失一些点特征,为了解决这个问题,提出LFA

3.3. Local Feature Aggregation

RandLA-Net阅读笔记-cvpr2020_第2张图片

主要包括三部分

1、local spatial encoding (LocSE),

RandLA-Net阅读笔记-cvpr2020_第3张图片

image-20200909093307228

2、attentive pooling,

RandLA-Net阅读笔记-cvpr2020_第4张图片

3、Dilated Residual Block

RandLA-Net阅读笔记-cvpr2020_第5张图片

RandLA-Net阅读笔记-cvpr2020_第6张图片

3.4. Implementation

堆叠多个LFA和random sampling模块;使用Adam优化器,学习率设置为0.01,每一个epoch减少5%;最近邻点数量K设置为16;为了并行训练,将点云采样到固定点数(10^5)对每一个点云作为其输入,整个过程不需要预处理/后处理等操作。

网络结构如下:

RandLA-Net阅读笔记-cvpr2020_第7张图片

多说一点,根据这个图可以看到,个人感觉这个网络和PointNet2的结构非常相似,

RandLA-Net阅读笔记-cvpr2020_第8张图片

PointNet2为了解决PointNet的缺失local feature的问题,提出了一个sampling,grouping的方法,通过对点云进行fps采样,在其邻域内对一个小的点集合进行PointNet特征提取,将采样点的邻域内的特征整合到采样点上。最后再通过skip link concatenation和插值方法(类似于cnn的1*1卷积)实现一个类似于上采样的操作;

在RandLA-net中,使用的是RS采样,然后对采样后的点的邻域点进行特征聚合,这是特征提取。特征提取完后,再进行特征反向传播来提高点的数量,并且通过share MLPs来降低特征的维度,最后再通过FC和Drop来获取每一个点的label

4、Experiments

4.1. Efficiency of Random Sampling

RandLA-Net阅读笔记-cvpr2020_第9张图片

4.2. Efficiency of RandLANet

RandLA-Net阅读笔记-cvpr2020_第10张图片

得益于random sampling 和基于MLP的LFA策略,RandLA-net能实现185s-4071frames粗略计算=22FPS

4.3. Semantic Segmentation on Benchmarks

(1) Evaluation on Semantic3D

RandLA-Net阅读笔记-cvpr2020_第11张图片

(2) Evaluation on SemanticKITTI.

RandLA-Net阅读笔记-cvpr2020_第12张图片

(3) Evaluation on S3DIS.

RandLA-Net阅读笔记-cvpr2020_第13张图片

相对于其他的方法(复杂且昂贵的采样,或分割点云为小的blocks),RandLA-net将整个房间作为输入并且能够直接(单阶段)高效推理每一个点的label。

4.4. Ablation Study

(1) Removing local spatial encoding (LocSE)

RandLA-Net阅读笔记-cvpr2020_第14张图片

(2~4) Replacing attentive pooling by max/mean/sum pooling

RandLA-Net阅读笔记-cvpr2020_第15张图片

(5) Simplifying the dilated residual block.

RandLA-Net阅读笔记-cvpr2020_第16张图片

RandLA-Net阅读笔记-cvpr2020_第17张图片

5、Conclusion

对于大尺度的语义分割,提出了轻量级的的网络。

采取了random sampling 而不是复杂的采样方案,并使用了一个LFA,local feature aggregation模块以从一个广阔的邻域中有效地保留有用的特征。

我们的工作可以拓展到大尺度的实例分割以及实时动态点云处理

你可能感兴趣的:(paper,深度学习,PointCloud,深度学习,Randla-net)