Advertisement

【论文阅读笔记】PointNet++: Deep Hierarchical Feature Learning on Point Sets in a Metric Space

阅读量:

PointNet++: 深入的层次式特征学习在度量空间中的应用

  • (一)论文链接:
  • (二)研究重点:
  • (三)点集划分方法:
  • (四)问题定义:
  • (五)PointNet综述:
  • (六)层次化点特征提取:
    • [6.1] 抽样层设计:

    • [6.2] 特征融合机制:

    • (七)Density Adaptive PointNet Layers:

      • 7.1 MSG:
      • 7.2 MRG:
    • (八)PointNet++ 用于语义分割:

    • (九)实验结果:

(一)论文地址:

https://arxiv.org/abs/1706.02413

(二)核心思想:

在这里插入图片描述

作为将深度学习引入点云识别与分割领域的开创性方法,PointNet接收无序排列的点云数据,并通过多层感知机(MLP)计算每个采样点处的特征向量;这些特征向量随后经过最大值池化操作整合所有采样点处的特征信息。

但是这也导致了一个问题——由于PointNet在处理3D物体细节时显得力不从心,在复杂环境中其表现尤为明显。

基于PointNet的方法论之上,在此基础上作者增加了层级神经网络模型(Hierarchical Neural Network)。该模型通过递归的方式将PointNet技术应用于嵌套分区的点集,并将其作为基础模块进行处理。采用层次化处理策略,在度量空间中对各个采样点组进行分层处理,并各子区域输出特征被传递至下一层级单元。从而层层累进生成更高层次的特征表示。同时通过运用空间度量原理来识别图像中的局部特征

由此设计的网络被作者称为 PointNet ++,可用于点云识别和分割;

(三)生成点集的重叠分区:

在欧几里得空间内,在每个区域划分时都会形成一个邻域球体,在这个过程中涉及的参数主要包含质心位置参数以及尺度参数两个要素;

为了在输入点集中均匀分布地覆盖整个集合,在使用最远点采样(FPS)算法选择质心时,其表现优于固定步长的空间扫描方法中的3维卷积;其中局部感受野主要取决于输入数据及其度量,并因此表现出更高的效率。

在2D数据中,图像中的像素呈现均匀分布特征,在此基础上卷积核能够采用固定的尺寸。然而,在点云数据中各个空间区域的密度呈现出显著差异这一特点,则使得卷积核无法直接应用固定尺寸策略。

为了解决这一问题,作者设计了一种基于多尺度邻域的方法以增强网络模型的鲁棒性以及对细节特征的有效捕捉能力。在训练过程中采用随机丢包机制以实现自适应地加权不同尺度检测到的模式进而通过随机丢包(Dropout)技术自适应地加权不同尺度检测到的模式使得 PointNet++ 能够高效、可靠地处理点云该方法显著提高了 PointNet++ 在处理大规模点云数据时的稳定性和效率。

(四)问题陈述:

X=(M,d) 为离散度量空间(discrete metric space),其中 M\subseteq R^n 属于欧氏空间中的点集(可能存在不均匀的空间密度),而 d 为该空间的度量函数;

那么整个网络需要学习的映射就是输入为 X 的映射 f

(五)回顾 PointNet:

在这里插入图片描述

对于该网络PointNet来说,它接收一个无序点集 \lbrace x_1,x_2,…,x_n\rbrace;那么该映射 f 的定义就是:

在这里插入图片描述

其中 h\gamma 通常都是 MLP(多层感知机)构成的神经网络;

此采用多层感知机提取点特征求索,并借助最大池化整合全局特征的方式。尽管在点云识别领域已取得显著进展,然而未能有效捕获局部细节信息的能力尚待提升。

(六)分层点集特征学习:

PointNet 通过单一的最大池化层来聚合整体特征;然而作者提出了一种基于点层次化的分组策略,并从局部到整体逐步提取特征信息;

如果将点云转换成 2D 图像,这个过程就可以表示为:

在这里插入图片描述
  1. 采样层:从输入点云中提取点集,并确定局部区域的质心。
  2. 分组层:通过搜索质心周围相邻的点来生成局部区域集合。
  3. PointNet层:采用了mini-PointNet结构来计算局部区域的特征向量。

该抽象层的输入规模由一个 N×(d+C) 矩阵构成。其中包含 N 个数据点的空间维度是 d 维,在这一层中每个数据点还带有 C 维特征向量。

输出大小为 N^{'}×(d+C^{'})N^{'} 为次采样点的数目,C^{'} 为新的特征维度;

6.1 Sampling Layer:

给定输入为无序的离散时间序列数据 \{x_1, x_2, \dots, x_n\},我们采用迭代最远采样算法(iterative farthest point sampling)从输入数据集中选择 m 个具有代表性的样本构成一个新的子集 \{x_{i_1}, x_{i_2}, \dots, x_{i_m}\};其中每个代表样本 x_{i_j} 是从当前已选中的代表样本集合 \{x_{i_1}, x_{i_2}, \dots, x_{i_{j-1}}\} 之外的所有原始数据集中与已有代表样本最远的那个样本;

这样就生成了 m 个局部区域的质心;

6.2 Grouping Layer:

该层的功能是将上一层产生的质心子集对应到各局部区域中的点集合。其中输入包括一个大小为 N×(d+C) 的矩阵以及一组大小为 N^{'}×d 的局部区域质心坐标。

该层的功能是将上一层产生的质心子集对应到各局部区域中的点集合。其中输入包括一个大小为 N×(d+C) 的矩阵以及一组大小为 N′×d 的局部区域质心坐标。

该输出由大小为N^{'}×K×(d+C)的矩阵构成;其中每个局部区域包含其内部所有相邻点及其特征信息;具体而言,在本实现中,默认选择的是基于球体模型的局部区域,在半径范围内提取所有满足条件的空间点;其中最大可选取点数量不超过预先设定好的常数值K

6.3 PointNet Layer:

这层包括了大小为 N^{'}×K×(d+C)N^{'} 个子区域的特征矩阵;其中变量d表示每个点相对于所在子区域质心的位置。

这一层使用 PointNet 对每个区域进行特征提取,输出为 N^{'}×(d+C^{'}) 大小的矩阵;

(七)Density Adaptive PointNet Layers:

在理想情况下,我们期望尽量全面地扫描到一个点集,以便于在密集采样区域获取最细致的细节信息

然而,在稀疏区域执行这种近距离检查可能会导致局部图案受损。基于此建议,在较大范围内探索较大的尺度模式,并开发了两种基于密度自适应的 PointNet 层。

7.1 MSG:

Multi-scale grouping (MSG) 的核心概念在于通过Grouping Layer采用多层次的空间分辨率进行特征提取,并通过融合不同尺度的特征信息实现整体特征的构建

在这里插入图片描述

此外,在实验过程中,并非仅仅依赖传统的数据处理方式。作者采用了Random Input Dropout该方法,并将其定义为通过在每次迭代中随机丢弃部分输入点的方式处理数据。

作者在区间[1,p]内随机选取\theta作为每个输入点是否丢失的概率,在实验中设置p=0.95以避免出现空集的情况;

7.2 MRG:

该方法通过应对MSR问题而引入了多层次采样的机制。

在这里插入图片描述

左侧为set abstraction层对上一层特征进行处理以获得L_{i-1}特征的结果;右侧则采用局部区域原点并通过单个PointNet Layer完成特征提取。

(八)PointNet++ 用于语义分割:

在集合抽象层中进行操作时会进行下采样处理;然而,在分割任务中我们希望能够获取每个点的具体特征信息;一种直接的方法是将所有点均作为质心节点选取其局部区域(即m=n),但这种做法会导致计算开销显著增加

为了求解这一问题, 作者建议可以通过将特征从子采样点传递到原始点的方式进行, 即采用k邻近加权插值方法对N_i进行处理, 然后将所得结果与上一层特征N_{i-1}进行融合, 如此循环往复, 最终获得原始点集的特征

在这里插入图片描述

实验中 k=3,p=2

(九)实验结果:

在这里插入图片描述

全部评论 (0)

还没有任何评论哟~