摘要
文章提出了可以用于从点云的局部邻域中提取上下文特征得新方法pointweb。与以往的工作不同,我们更加考虑局部点之间的联系,能够根据局部区域的特征来扩展每个点的特征,从而能更好地表示区域的特征。同时提出了一种新的自适应特征调整(AFA)模块,用于寻找点与点之间的交互作用。对于每个局部区域,构建一个影响矩阵,将影响矩阵映射用于后面特征差别的映射根据自适应学习的影响指标,每个特征被同一区域的其他特征拉或推。调整后的特征与区域信息进行了很好的编码,有利于点云的分割和分类等识别任务。实验结果表明,该模型在语义分割和形状分类数据集上都取得了较好的效果。
介绍
- 我们通过自适应特征调整(AFA)实现每对3D点之间的信息交换。该模块在很大程度上增强了学习的逐点特征的表示能力。
- 提出了以AFA为核心模块的PointWeb框架。该算法在各种有竞争力的点云数据集上取得了最好的性能,从而证明了其有效性和通用性。
Our Method
探索局部区域内点之间的关系是本文的重点。特别地,在使用神经网络提取逐点特征(或简称点特征)后,进一步聚合这些局部特征有助于提高语义分割和分类任务的点云识别质量。
在我们的方法中,我们将R中的点紧密地连接起来,作为点的局部网络,并制定一个自适应特征调整(AFA)模块来学习每个点对其他点的影响,从而调整它们的特征。通过这种方法,我们将邻域上下文引入到点特征中,增强了特征对局部邻域的描述能力。图2概述了AFA模块。我们称整个网络为PointWeb,因为我们的方法通过密集连接点的网络有效地提取了本地邻居上下文。
Adaptive Feature Adjustment (AFA) Module
给定区域R及其特征集F = {F1, F2,…, FM},我们首先制定自适应特征调整(AFA)模块,通过学习局部邻域的上下文信息来增强F中的点特征。
其中F ‘i是改进版的Fi, ΔFi是通过特征调制器(记为fmod)从特征集F学习到的。
第二步是设置特征集 的modulator(调制器),以便在特征集F中有效地交换和进一步聚合信息。直观地说,局部区域的不同特征对每个Fi的增强产生不同的影响。我们的特征调制器通过自适应地学习F中每个特征对每个Fi的影响量来解决这个问题。表示为
其中,fimp是用于计算fj对Fi的影响的量而学习的函数,而frel表示fj如何与Fi相关。值得注意的是,我们还在调制器中加入了Fi的自影响。
使用MLP来计算 imp函数 记为Fimp。
其中g为结合特征Fi和Fj的函数,wij为Fj对Fi的影响指标。
建立g模型的一种简单方法是将这两个特征向量连接起来合成一个更长的向量。这个解决方案有一个明显的局限性,g完全包含Fi和Fj,即使Fj变化,也有一半的特征通道保持不变。这使得在计算fimp时Fi部分没有变化。另一个选择是将特征和**(Fi + Fj)作为g**。但是这个策略也是有问题的,这样会使得Fj对Fi的影响和Fi对Fj的影响是一样的。
基于这些考虑,我们因此建立了g(Fi, Fj) = Fi?Fj的模型,将两个特征向量之间的影响计算为两个特征向量的差值。
注意这里i = j是一个特殊情况,我们将g(Fi, Fi)设为Fi。因此,通过其自身特征Fi来估计Fi对自身的影响。
另一方面,考虑设计 relation function关系函数frel用于确定影响指标wij如何作用于Fi。一种简单的方法是直接将wij与Fj相乘。
则式(2)中的fmod函数变为:
使用这种朴素关系函数的点云识别任务的结果质量与baseline相比已经有所提高,通过多次实验可以发现使用不同的矢量形式得到进一步提升。
在数学上,我们将关系函数建模为:
此时,对于局部区域R中的每个feature Fi, feature adjustment的总体输出为:
这个公式就像在局部区域R中的一个力场(如图), R中的其他每个特征都对Fi施加一个力(在特征空间中),试图将Fi推向或推离自己。力的强度和方向由系数α(ji)决定,根据两个特征向量的差值自适应学习系数α(ji)。因此,输出的F‘i包含了整个区域的上下文信息,可以更好的描述区域的特征。
除Fimp和frel这两个函数外,还发现影响因子Wij = fimp(Fi, Fj) (j = 1, …), M) 从每个点云考虑对特征差异图进行操作。每个因子的长度等于特性中的通道数。考虑到两个点特征之间的相互作用在整个过程中可能存在差异,因此以每个点来影响因子,而是为局部区域中的每个特征来计算,这样可以很好地展示整个区域和所有通道的逐点影响图。Fi的影响图表示为
其中通道数记为C,影响图大小为C × m,特征调制器用矩阵形式表示为
式中⊙为逐元素乘法,e为全一向量,F(diff )为大小为C × m的特征差映射。
PointWeb with Local Feature Modulation
我们的框架是建立在PointNet++体系结构之上的,结构是由几个集合组成的层次网络。在每个模块的每个局部区域内,结合全局和局部特征进行点集识别。在PointNet++中,聚合每个局部区域信息的唯一操作是max pooling,而我们的PointWeb框架在每个局部区域的点特征之间构建一个全链接的点网络,然后通过学习确定它们之间的相互影响来整合区域信息。
PointWeb语义分割总体框架如下图所示。主要利用自适应特征调整(AFA)模块提升性能,即图中突出显示的框。每个分组层后面都有一个AFA模块局部的AFA模块示意图如前面的图所示
具体来说,在同一个局部区域中,每两个feature被链接形成一个web(图2 (b))。然后,考虑特征之间的相互作用,对特征进行更新(图2 c)。该框架根据区域特征将相同的特征分组到指定的不同局部区域中。
AFA模块可以看作是一个feature转换模块,在不改变feature数量和大小的情况下,在每个局部区域的空间和通道中交换和聚合上下文信息。然后将调整后的特征用于MLP和max pooling,进一步实现不同通道的信息集成。
总结
提出了用于三维点云处理和识别的自适应特征调整(AFA)模块和PointWeb体系结构。它在局部区域内设置了密集的点对连接,从而使每个点都能从所有其他点收集要素。与传统的不能感知局部上下文和与其他组件进行信息交互的方法相比,我们的框架能够更好地学习用于点云处理的特征表示。在三个有竞争力的数据集上用我们最先进的结果进行了广泛的实验,证明了我们方法的有效性和通用性。我们相信,所提出的模块原则上可以推动社区对3D场景理解的研究。