【点云处理之论文狂读前沿版12】—— Adaptive Graph Convolution for Point Cloud Analysis

摘要

  • 问题: 标准的卷积操作无法在3D点间有区分地表示特征对应关系
  • 方法: 本文提出Adaptive Graph Convolution(AdaptConv),根据3D点动态学习的特征生成自适应的kernel
    1. 与使用固定/等向的kernel相比,AdaptConv提高了point cloud卷积的灵活性,有效并精确地得到不同语义部分点间的多种关系
    2. 与使用注意力权重的方法不同,AdaptConv使得卷积操作更加具有自适应性,而不是简单的为neighboring points分配不同的权重
  • 代码: PyTorch版本

引言

Graph CNNs根据点间的空间/特征相似性将point cloud表示为graph数据,并将images上的2D卷积推广到3D点上。

标准的Graph CNNs通常会在每对点上使用共享权重函数抽取这对点的对应边特征,这会导致得到一个固定/同向的卷积kernel,当作用在所有点对上后,会忽略掉不同特征的对应关系。

该项工作的关键贡献在于AdaptConv能够在graph卷积内使用,而不是基于结果特征的权重函数

此外,还开发了一些特征卷积设计,能够更加灵活地进行适应性卷积。

方法

Adaptive graph convolution

X = { x i ∣ i = \mathcal{X}=\left\{x_{i} \mid i=\right. X={xii= 1 , 2 , … , N } ∈ R N × 3 1,2, \ldots, N\} \in \mathbb{R}^{N \times 3} 1,2,,N}RN×3为输入点云, F = { f i ∣ i = 1 , 2 , … , N } ∈ R N × D \mathcal{F}=\left\{f_{i} \mid i=1,2, \ldots, N\right\} \in \mathbb{R}^{N \times D} F={fii=1,2,,N}RN×D为对应的特征,其中 x i x_{i} xi表示第第 i i i个点的 ( x , y , z ) (\mathbf{x}, \mathbf{y}, \mathbf{z}) (x,y,z)坐标,在其他情况下,还可以和其他特征进行结合。

然后根据给定的点云计算有向图 G ( V , E ) \mathcal{G}(\mathcal{V}, \mathcal{E}) G(V,E),其中 V = { 1 , … , N } \mathcal{V}=\{1, \ldots, N\} V={1,,N} E ⊆ V × V \mathcal{E} \subseteq \mathcal{V} \times \mathcal{V} EV×V 表示顶点和边的集合。通过包含self-loop的 k k k-nearest neighbors (KNN)构造graph。

在给定输入的 D D D维特征后,AdaptConv layer会产生一组新的 M M M维特征,点的数量和输入相同。与之前的graph convolution层相比,更能精确地反应局部结构特性。

x i x_{i} xi是graph convolution的中心点, N ( i ) = { j : ( i , j ) ∈ E } \mathcal{N}(i)=\{j:(i, j) \in \mathcal{E}\} N(i)={j:(i,j)E}是相邻点的索引。由于点云的不规则性,之前的方法通常会在 x i x_{i} xi的所有neighbored points上应用固定的kernel函数,用于捕获patch的几何信息。但是,不同的neighbored points可能会得到对应 x i x_{i} xi不同的特征,特别是当 x i x_{i} xi位于显著区域,比如角或者边处。 在这种情况下,固定的kernel可能无法从graph convolution得到用于分类或分割的几何表示信息。

在本文的方法中,设计了一种自适应性kernel,用于计算每对点之间的显著关系。对于 M M M维输出特征的每一个通道,AdaptConv会动态地生成一个kernel,使用的是应用在points特征 ( f i , f j ) \left(f_{i}, f_{j}\right) (fi,fj) 上的函数:
e ^ i j m = g m ( Δ f i j ) , j ∈ N ( i ) . \hat{e}_{i j m}=g_{m}\left(\Delta f_{i j}\right), j \in \mathcal{N}(i) . e^ijm=gm(Δfij),jN(i).
其中 m = 1 , 2 , … , M m=1,2, \ldots, M m=1,2,,M表示 M M M个输出维度的一个,对应于一个单独的filter。 Δ f i j = [ f i , f j − f i ] \Delta f_{i j}=\left[f_{i}, f_{j}-f_{i}\right] Δfij=[fi,fjfi]用于捕获全局结构和局部领域特征, [ ⋅ , ⋅ ] [\cdot, \cdot] [,]是拼接操作, g ( ⋅ ) g(\cdot) g()是特征映射函数,即 M L P MLP MLP

与2D卷积中的计算一样,将 D D D维输入和对应的filter权重进行卷积得到 M M M维输出中的一维,本文将adaptive kernel和对应的点 ( x i , x j ) \left(x_{i}, x_{j}\right) (xi,xj)进行卷积:
h i j m = σ ⟨ e ^ i j m , Δ x i j ⟩ , h_{i j m}=\sigma\left\langle\hat{e}_{i j m}, \Delta x_{i j}\right\rangle, hijm=σe^ijm,Δxij,
其中 Δ x i j \Delta x_{i j} Δxij被定义为 [ x i , x j − x i ] \left[x_{i}, x_{j}-x_{i}\right] [xi,xjxi]相似性, ⟨ ⋅ , ⋅ ⟩ \langle\cdot, \cdot\rangle ,表示两个向量的内积,输出为 h i j m ∈ R h_{i j m} \in \mathbb{R} hijmR σ \sigma σ是非线性激活函数。

如图2所示,第 m m m个adaptive kernel e ^ i j m \hat{e}_{i j m} e^ijm与对应点 x j ∈ R 3 x_{j} \in \mathbb{R}^{3} xjR3的spatial relations Δ x i j \Delta x_{i j} Δxij结合,表示kernel的大小应当与内积相匹配,即特征映射 g m : R 2 D → R 6 g_{m}: \mathbb{R}^{2 D} \rightarrow \mathbb{R}^{6} gm:R2DR6。存储每个通道的 h i j m h_{i j m} hijm,得到连接点 ( x i , x j ) \left(x_{i}, x_{j}\right) (xi,xj)间的边特征 h i j = h_{i j}= hij= [ h i j 1 , h i j 2 , … , h i j M ] ∈ R M \left[h_{i j 1}, h_{i j 2}, \ldots, h_{i j M}\right] \in \mathbb{R}^{M} [hij1,hij2,,hijM]RM

最后,通过利用邻域内所有边特征的聚合函数得到central point x i x_{i} xi的输出特征:
f i ′ = max ⁡ j ∈ N ( i ) h i j , f_{i}^{\prime}=\max _{j \in \mathcal{N}(i)} h_{i j}, fi=jN(i)maxhij,
其中max是以通道为单位的max-pooling函数。总之,AdaptConv的convolution weights被定义为defined as Θ = ( g 1 , g 2 , … , g M ) \Theta=\left(g_{1}, g_{2}, \ldots, g_{M}\right) Θ=(g1,g2,,gM)

Feature decisions

就是利用特征去寻找空间关系。

如果输入 x i ∈ R E x_i \in \mathbb{R}^E xiRE包含了更多的信息,那就是另外的选项,在实验中会考虑到。

将空间信息 Δ x i j \Delta x_{i j} Δxij替换为特征信息 Δ f i j \Delta f_{i j} Δfij,会得到不同的 e ^ i j m \hat{e}_{i j m} e^ijm,这个也是可以考虑的选项。

本文选择使用 Δ x i j \Delta x_{i j} Δxij作为变换域有着如下的考虑:

  1. 点特征已经被用于生成adaptive kernel了,在使用特征进行卷积会导致特征信息的冗余
  2. 特征的维度高,MLP在高维空间中学习起来很困难
  3. 消耗内存大,计算复杂度高

Network architecture

graph的结构在每一层都是动态更新的

实验

Classifcation

Part segmentation

Indoor scene segmentation

Ablation studies

Adaptive convolution vs Fixed kernels & Feature decisions

Robustness test

Efficiency

Visualization and learned features

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值