论文学习

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

三维点云大场景下的问题

  1. 点云的几何结构复杂且经常包含了大量的物品类别和巨量的数据规模。
  2. GPU运算的限制、GPU内存的限制导致的落地难度。
  3. 小区块分割的方法无法很好的体现广域的特征,也有将一个物体“切断”导致的识别错误问题。

需求

  1. 找出更高效的降采样方法,减少内存占用和运算损耗
  2. 找出一个高效的方法进行局部特征提取和聚合,以获取和保留几何特征

常用的降采样方案

启发式采样算法

  1. Farthest Point Sampling (FPS):
    每次选取最远的点作为下一个采样点。
    优势:覆盖性好,有很好的采样效果。
    劣势:时间复杂度$\Theta (n^2)$,可扩展性差。
  2. Inverse Density Importance Sampling (IDIS):
    计算点的密度,在高密度区域多采样,低密度区域少采样,且尽量保留低密度的点。
    优势:密度控制,较好地保留特征。
    劣势:时间复杂度$\Theta (n)$,对噪声数据敏感。
  3. Random Sampling (RS):
    随机取样。
    优势:时间复杂度$\Theta (1)$,没有多余的内存占用。
    劣势:可能会丢失有用的特征。

基于机器学习的采样算法

  1. Generator-based Sampling (GS):
    生成一个子集以近似替代原始点云。
    优势:任务特异性,数据驱动的采样。
    劣势:需要使用FPS进行拟合,增大计算量。
  2. Continuous Relaxation based Sampling (CRS):
    通过参数化方法为数据降低数量。
    优势:差异化的端到端训练。
    劣势:空间复杂度高,占用空间过大。
  3. Policy Gradient based Sampling (PGS):
    通过马尔可夫决策过程进行采样,学习采样的概率分布得到一个采样规则。
    优势:学习一个高效的采样规则。
    劣势:巨大的可行域,有可能落入局部最优解。

解决方案

随机取样是比较合适的方法,问题在于如何保留特征。

使用KNN算法找到数据集合中的邻居,对邻居的信息编码,提取为一些特征并和原始的点的特征合并后,由学习算法赋予不同的特征以权重,进而进行数据池化

为保证更多的信息和邻居数据不会被随机抽样的过程丢失,选择使用多次的局部特征提取和池化,更好的聚合数据特征并使得单个点所关联的点的范围更大,有利于更好的分类。

Reference

  1. 基于三维点云场景的语义及实例分割 - Bilibili
  2. RandLA-Net: Efficient Semantic Segmentation of Large-Scale Point Clouds
  3. Farthest Point Sampling (FPS)算法核心思想解析