点云特征学习(三)--DGCNN论文阅读笔记

点云特征学习(三)–DGCNN论文阅读笔记

一,挑战

在DGCNN算法之前,基于深度学习的点云特征学习算法有:PointNet,PointNet++,PointCNN等。这些算法都能够较好地处理点云数据。但是,这些特征学习方法只是从离散点云的角度的特征出发,没有考虑物体的拓扑结构。点云这种数据结构是离散的,缺乏拓扑信息(也就是单个点与点之间的关联并没有显式建立,但是他们之间应该是有实际意义的)。自然而然地,如果能够通过某种方式建立点与点之间的拓扑关系,应该可以增强表征的能力。这里,存在的一个挑战就是如何表现点云中的拓扑结构,并加以利用。

二,方法

在这里插入图片描述
论文中给出了整个DGCNN的网络图,根据分割以及分类任务,分成了两个pipeline。从网络图中可以看出来,整篇文章的创新点主要在于Edge Conv。

2.1 Edge Conv

EdgeConv在网络的每一层上动态构建图结构,将每一点作为中心点来表征其与各个邻点的edge feature,再将这些特征聚合从而获得该点的新表征。

EdgeConv实现的实际就是通过构建局部邻域(这种局部邻域既可以建立在坐标空间,也可以建立在特征空间),对每个点表征。

将多个EdgeConv模块首尾相接不断堆叠也就是为了获得多层次、具有更加丰富语义的表征。

Edge Conv的输入为 N ∗ F N*F NF, 输出为 N ∗ F ’ N*F’ NF

具体而言,构建图结构,顶点就是点云各个点,通过对每个点KNN,连接其K近邻,构建边的关系。

顶点集合:
在这里插入图片描述
其中初始状态 F 表示点的三维坐标信息。当然更一般的情况, F 表示神经网络某一层输出的点的特征空间维度信息。

在这里插入图片描述
如上图所示,表征分为2步:

1,根据图结构计算edge feature。
2,聚合edge feature,对其对应的中心点表征新的特征。

展开来说:

1,如何计算edge feature?
在这里插入图片描述
对于函数 h h h 以及聚合函数的选择,论文中给出了五种选择:

选择一:
在这里插入图片描述

图结构中每个点的邻点是固定的K个,可以按照类似卷积来实现。这里的聚合操作是 求和。

选择二:
在这里插入图片描述
与PointNet类似,只考虑点自身,不考虑邻域邻点信息。所以,文中指出,PointNet可以视为Edgconv的特例。

选择三:
在这里插入图片描述
在这里插入图片描述
选择四:
在这里插入图片描述
这只编码局部信息,将形状视为一个小斑块的集合,并失去了全局结构。

选择五:
在这里插入图片描述
EdgeConv选择的就是这个方案,既考虑了局部邻域的global信息 ,又考虑了local neighborhood信息 。

接着送入多层感知机,得到了edge feature:
在这里插入图片描述

2.2 图结构的动态更新

不断重新计算各个点在每一层特征空间的近邻是recompute graph的关键。在特征空间中计算一个成对的距离矩阵,然后为每个单点取最近的 k 个点。这是DGCNN和GCN的最大不同,GCN是在坐标空间构建好图结构后整体图结构就固定了,没有动态更新的过程。

2.3 特点

1,排列不变性
这里选择了与PointNet相同的Maxpooling函数解决排列不变,不再解释。

2,部分平移不变性
在这里插入图片描述
从文中给出了公式推导可以看出,平移不变性仅仅针对左项。

1,EdgeConv可以有效建模点云局部领域的特征
2,可以通过堆叠(实际中就是池化操作)基于某个中心点相对于其邻点的edge feature来获得该局部邻域的global feature
3,在多层深度网络中,在特征空间提取的邻域信息可以潜在表示在原空间(比如坐标空间)非常远的距离。(摘自原文:the distances in deeper layers carry semantic information over long distances in the original embedding.)

在这里插入图片描述
关于第三点的解释:在最左边一列表示原始坐标空间,离红点的远近完全就是取决于欧式距离。在右二列表示Layer3输出的特征空间,离红点近的点已经不是欧式距离了,而是具有一定相似语义的点,比如飞机的两翼、两个喷气泵等。

参考博客:https://zhuanlan.zhihu.com/p/267895014?utm_source=qq

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值