Dynamic Graph CNN for Learning on Point Clouds 解析

      该文章是最新出的一篇针对Point Clouds数据分类、分割的网路,它是受点云数据处理的鼻祖论文PointNet、PointNet++的启发所进行的修改,PointNet只是独立处理每个点,来实现permutation invariance,但忽视了点之间的局部特征。所以这篇文章主要提出了一个EdgeConv层来实现获取局部特征,解决PointNet所没有的处理局部特征的问题。

一、网络结构

该文章的网络结构和PointNet的相似,只是对其中的提取特征的结构进行了修改为EdgeConv

其中EdgeConv的设计是文章的创新之处。文章原文是这样描述的:输入为nxf的tensor,通过MLP按照给定的每一层的输出特征尺寸{a1,a2,...,an}计算边缘特征,最后沿着neighboring的边缘特征的方向做pooling操作生成新的tensor——n x an。

二、EdgeConv层介绍

为了细致的说明EdgeConv层的道理,文章针对EdgeConv举了一个例子,文中的图是这样的。

通俗的描述一下:

(1)图1,描述了一个关注点Xi和其邻近的一个点Xj的边缘特征的求解过程,图中的全连接操作只是一个示例。实际操作作者使用MLP操作。

(2)图2,假设一个关注点Xi周围的K个邻近点(图中K=5)。按照图例,需要按照图1的方式计算Xi和图中5个点的边缘特征。

(3)图3,将计算出的5个邻近点的边缘特征pooling到 点数 乘以 特征 的尺寸上。(公式如下,可以采取求和或max)

 

文章还针对h的选择和其中点的选择进行了讨论,主要分为四种;

(1)第一种,描述了一种2D图像的场景,如果我们的关注点Xi为一个图像的像素点,而Xj可以认为是其周围相连接的一些像素值,此时可以将边缘特征的计算过程写成如下。此时形式和一个卷积核的加权求和过程一致,

                                                          

(2)第二种,描述了一种仅考虑全局特征的形式,即只有关注点Xi的形式,也就是PointNet中提到的形式,此时

                                                      

所以说PointNet中使用MLP操作可以认识是EdgeConv中特殊的一种操作。

(3)第三种,描述了一种仅考虑局部特征的形式,即只有关注点和邻近点之间联系的操作,此时

                                                         

(4)最后一种,也是文章采用的一种,既考虑全局又考虑局部,即将上述(2)和(3)操作结合

                                            

三、EdgeConv理解图示

                                    

输入为NxF的张量,其中包括原数据Xi和与其附近的K个点。首先原数据的每个点和附件的K个点,通过MLP生成K个NxM特征,即NxKxM,最后通过一个pooling操作输出NxM特征。



  • 14
    点赞
  • 50
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值