Grid-GCN for Fast and Scalable Point Cloud Learning--CVPR2020--论文笔记

论文题目–《基于网格的图卷积网络的快速和可拓展的点云学习》

摘要:
由于点云数据的稀疏性和不规则性,直接利用点的方法非常的流行。在所有的基于点的模型之中,图卷积网络充分利用了数据之间的颗粒度,和数据之间的相互关系而表现出了显著的性能。但是在基于点的网络之中,数据结构的构建花费了大量的时间(例如最远点采样和邻居节点的查询),这些原因都限制了模型的速度和稳定性。在本文之中,提出了一种方法名叫Grid-GCN,用于快速和可拓展的点云学习。Grid-GCN用一个新的数据结构的策略,CAGQ.通过利用这个高效的网格空间,CAGQ不仅仅减低的时间复杂度,而且提升了其空间的覆盖率。于当前流行的FPS等方法,CAGQ提升了大约50倍的速度。再加上一个GCA的节点信息聚合模型,Grid-GCN实现了当前点云分类和点云分割的数据集上的最好效果。
1.相关介绍
点云数据在目前的自动驾驶,机器人,和无人驾驶飞行器等应用之中非常的流行。目前,无线雷达传感器能够每秒实时的反馈给现实世界数百万个点。当前有许许多多处理点云数据的方法。其中,体素模型是一种把点云数据转化到空间网格之中,然后,在空间网格之中利用卷积的方法去计算点云数据的方法,其中过得3D-卷积核在周围的邻居节点之中去收集信息。尽管网格数据结构是有效的,但是这其中需要高的体素分辨率去保证数据的粒度。计算机的计算能力里和内存需要随着这个体素分辨率的增加而增加,再加上,在点云之中有90%以上的空体素,高效的计算能力就会被浪费用于处理这些没有信息的体素。
另外一种模型就是基于点的模型。相对于体素模型,这种基于点的模型能够更加高效的计算,但是数据结构的效率低下。在本文之中介绍了一个Grid-GCN网络,他融合了这个体素模型的优点和基于点的模型的优点。在实现高效的数据结构的同时也实现了高效的计算能力,如图一所示,模型包含有很多个GridConv层,每一层有2个阶段,第一个阶段是数据结构的构建,对数据选择其中心点,然后对中心的点邻居进行采样。第二个阶段是在第一步的基础之上聚合选出来的邻居节点的信息到一个中心点之上。如图一:
Grid-GCN for Fast and Scalable Point Cloud Learning--CVPR2020--论文笔记_第1张图片
如图所示整个模型包含有好几个GridConv层,在每一层之中有2个步骤,分别是中心节点的采样,和中心节点周围邻居节点的选取。第二步是聚合查询到的节点的信息到中心。在得到需要的特征表示之后对点云进行分类或者点云分割任务。
为了实现以上提到的高效的数据结构,作者设计了一个(Coverage-Aware Grid Query)CAGQ模型该模型的作用是中心点的采样和邻居节点的查询。
同时作者还设计了一个模型名叫GCA(Grid Context Aggregation)其作用是对邻居查询节点的信息聚合。
在实验中证明了该方法在点云分类任务和点云分割任务中实现了高效的结果。

2.相关工作
基于体素的3D学习方法:
为了拓展2维图形之中卷积网络的成功,体素网络和其各种变体开始将点云数据和深度图转化到网格结构中,然后利用体素卷积的方法。虽然这个数据结构很高效,但是其计算效率低而且丢失了数据的粒度。
基于点的点云学习方法:
基于点的点云学习方法,是通过池化聚集点的特征而实现的。其计算复杂度随着点的增加而线性增长。这种方式的数据结构构建上的耗费已经成为了该方法的技术瓶颈。
点数据的数据结构策略:
大多数基于点的方法都是利用FPS对数据中心进行采样。FPS选择距离目标点距离最远的点。如果中心点不是特别的少,那么其时间复杂度为O(N方)。还有一个随机点采样(RPS)可能有一个最小的花费,为O(NlogN),但是对于密度的不平衡性很敏感。本文提出的CAGQ的方法和RPS有相同的时间复杂度,但是比这些方法都快。
基于点云学习的图卷积网络:
当下,图卷积网络已经广泛应用于点云学习。每个点都会生成一个局部图,然后GCN聚合点的信息根据局部图。基于空域的图卷积利用傅里叶变换来聚合点的特征信息。本文提出的模型考虑了覆盖范围和环境特征和语义信息。

3.方法
3.1方法总结
如图1所示整个模型包含有好几个GridConv层,在每一层之中有2个步骤,分别是中心节点的采样,和中心节点周围邻居节点的选取。第二步是聚合查询到的节点的信息到中心。在得到需要的特征表示之后对点云进行分类或者点云分割任务。
3.2CAGQ模型
如图2:
Grid-GCN for Fast and Scalable Point Cloud Learning--CVPR2020--论文笔记_第2张图片
给定一个点云,CAGQ的目标是去构建一个更好的点云结构。去进行一个中心点采样和邻居节点的查询。为了实现CAGQ,首先设置一个体素的大小(vx, vy, vz)。然后就可以匹配每一个点到对应的体素索引里面去
在这里插入图片描述
其中x,y,z是点的坐标。其中在每一个体素里面最多包含nv个点。
然后Ov代表所有的非空体素。然后我们去采样M个中心体素Oc,其中中心体素包含于非空体素。对于每一个中心体素Vi,定义体素的邻居π(vi)表示所有与中心体素vi相关联的邻居点。如图2中的d图,其中π(v(2, 1))就是红色方框中那个33的体素。然后我们将储存在π(vi)中的点叫做环境点。这样的话CAGQ就能够快速的检索每个中心体素Vi的环境点。
经过上诉步骤之后CAGQ在上诉的环境点中选取K个节点,作为查询到的邻居节点。然后计算选取节点的重心,作为当前组的中心节点。具体过程如图2所示。
上诉方法有两个值得考虑的事情,1,如何采样中心节点。2,对于邻接节点的查询如何选取。
为了解决第一个问题,我们提出了以下2种方法:
1.随机体素采样:每一个被占用的体素都有想用的选择的几率成为中心体素。
2.CAS(覆盖感知采样):这个覆盖感知采样的目标是一个中心体素能够更好地包括空间里面的体素个数。举个例子就是比如前面提到的中心体素其是一个3
3的大体素,然后我们的目标就是要让这个3*3的大体素包含更多的非空体素。就像是图2中的d图一样。然后CAS的具体方法就是先随机选择M个中心体素,我们称之为现任者,然后每次迭代,从没有选中的体素中选择一个作为挑战者,如果挑战者的覆盖范围比现任者的覆盖范围更加广的话,那么我们就用挑战者的体素去替换之前的现任者体素。这样不断迭代,就实现了中心体素节点的优化。
然后对于一个挑战者Vc和一个现任者Vi,其对应的公式可以如下来表示
Grid-GCN for Fast and Scalable Point Cloud Learning--CVPR2020--论文笔记_第3张图片
解释一下这个公式:其中λ是当前考虑的节点的邻居节点的个数。Cv是指当前考虑的体素的被覆盖的体素的个数。Hadd是指挑战者的覆盖增益。Hrmv是指删除当前中心体素之后的覆盖损失,然后在经过上诉计算之后如果Hadd>Hrmv,那么我们就用挑战者来代替现任者体素,经过这样的迭代,最终实现中心体素的最优化。其中β是一个根据实验要求的可调参数为了防止过度覆盖设置的。,如果设置β为0的话,那么可以发现每一次替换,都能实现空间覆盖的提升。具体的算法,可以带入到图2中的d图中,就可以知道这个公式的具体含义。
然后是解决第二个问题:
节点的查询:CAGQ也提供了2中策略进行节点的查询从邻居节点之中
1:cube query:随机的在环境节点之中随机选择K个点,作为查询节点。
2:. K-Nearest Neighbors:在环境节点之中利用KNN进行搜索。

3.3 Grid Context Aggregation(节点信息的聚合)
在这里,就是模型Gridconv里面的第二步,将查询到的邻居节点的信息进行聚合,来更新中心节点的特征信息。首先构建一个局部图G(V, E),然后其中的节点就是我们之前CAGQ查询到的节点。然后连接每一个查询到的节点到中心节点。然后更新节点的公式可以用如下公式表示:
在这里插入图片描述
其中e是边缘注意函数,M是多层感知机,A是聚合函数。
下图表示了不同GCN设计的各种策略。
Grid-GCN for Fast and Scalable Point Cloud Learning--CVPR2020--论文笔记_第4张图片
如图a表示对于节点上的特征信息仅仅利用一个多层感知机,而忽略边的信息。
b表示不仅仅考虑节点的特征信息,而且也考虑了边的信息,将两个节点边的信息经过一个多层感知机,得到边的特征然后再将两种信息相互融合下。得到最终的特征信息。
c图表示考虑了节点的特征信息,而且也考虑了边的信息,同时还考虑了各个节点与中心节点的语意信息
d图考虑了节点的特征信息,同时考虑边的相关信息的时候还加入了权重参数而且在考虑节点之间的语义信息的时候,将所有环境节点的语意特征融合形成了fcxt,在考虑fcxt和中心节点的语义关系。
关于其中边的权重,是指上一层该中心节点聚集到的节点的个数,上一层聚集到的节点个数越多,那么权重越大。具体可以用下图表示:
Grid-GCN for Fast and Scalable Point Cloud Learning--CVPR2020--论文笔记_第5张图片
如图所示,前一层聚集到的节点信息的个数越多,边的粗细会有明显的改变,权重也会发生相应的改变。

然后就是池化环境节点的语意信息:总的来说这样比c的方法在计算方面更加的高效,而且其包含的语意信息更加丰富,而不仅仅值包含有查询到的节点的语义信息,他包含所有的环境节点的语意信息。因此信息更加可靠。而且计算方便,不需要每一层一层的迭代。所以最终设计的GCN的边注意力函数模型可以如下表示:
在这里插入图片描述
如图第d种方法。就是该公式的描述。

4.对于CAGQ的分析
就是针对上诉提出的不同策略的实验分析。

5.实验
Grid-GCN for Fast and Scalable Point Cloud Learning--CVPR2020--论文笔记_第6张图片
Grid-GCN for Fast and Scalable Point Cloud Learning--CVPR2020--论文笔记_第7张图片

你可能感兴趣的:(论文笔记)