【文献翻译】PCT:Point Cloud Transformer

摘要

不规则的区域和无序性给设计用于点云处理的深度神经网络带来了挑战。本文提出了一种用于点云学习的新型框架——点云转换器(PCT)。PCT基于Transformer,在自然语言处理方面取得了巨大的成功,在图像处理方面显示出巨大的潜力。它对于处理一系列点具有固有的排列不变性,这使得它非常适合于点云学习。为了更好地捕捉点云中的局部上下文,我们通过支持最远点采样和最近邻搜索来增强输入嵌入。大量的实验表明,PCT在形状分类、部分分割、语义分割和正常估计任务上达到了最先进的性能。

1. 引言

直接从点云中提取语义是机器人、自动驾驶、增强现实等应用的迫切需求。与二维图像不同,点云是无序的、无结构的,这使得设计处理它们的神经网络具有挑战性。
Qi等人开创了PointNet在点云上的特征学习,使用多层感知器(MLPs)、最大池化和刚性转换来确保在排列和旋转下的不变性。受卷积神经网络(convolutional neural networks, CNNs)在图像处理领域取得的强大进展的启发,最近的许多研究都考虑定义卷积算子来聚合点云的局部特征。这些方法要么对输入点序列进行重新排序,要么对点云进行体素化,以获得用于卷积的规范域。近年来,自然语言处理中的主流框架Transformer被应用于图像视觉任务,其性能优于流行的卷积神经网络。
Transformer是一个解码器-编码器结构,它包含三个主要模块,分别用于输入(单词)嵌入、位置(顺序)编码和自我注意。自我注意模块是该模块的核心组件,它基于全局上下文对输入特征生成精细化的注意特征。首先,自我注意将输入嵌入和位置编码的总和作为输入,通过训练好的线性层,为每个单词计算query、key和value三个向量。然后,将任意两个词的查询与关键向量进行匹配(点生成),得到两个词之间的注意权值。最后,将注意力特征定义为具有注意力权重的所有值向量的加权和。显然,每个单词的输出注意特征都与所有的输入特征相关,使其能够学习全局上下文。Transformer的所有操作都是并行的、顺序无关的。从理论上讲,它可以取代卷积神经网络中的卷积运算,具有较好的通用性。
受Transformer在视觉和NLP任务上的成功启发,我们基于传统Transformer的原理,提出了一种用于点云学习的新颖框架PCT。PCT的关键思想是利用Transformer固有的阶不变特性,避免了需要定义点云数据的阶数,并通过注意机制进行特征学习。如图1所示,注意权值分布与部分语义高度相关,不会随着空间距离的变化出现严重衰减的情况。
点云和自然语言是完全不同的数据类型,因此我们的PCT框架必须为此进行一些调整。这些包括:

  • 基于坐标的输入嵌入模块。在Transformer中,位置编码模块用于表示自然语言中的词序。这可以区分同一个词在不同位置的位置,反映词与词之间的位置关系。然而,点云并没有固定的顺序。在我们的PCT框架中,我们将原始位置编码和输入嵌入合并到一个基于坐标的输入嵌入模块中。它可以生成可区分的特征,因为每个点都有表示其空间位置的唯一坐标。
  • 优化的offset-attention模块。我们提出的偏移注意模块方法是对原有的自我注意的有效升级。它的工作原理是用自我注意模块输入与注意特征之间的偏移量来代替注意特征。这有两个好处。首先,通过刚性变换,同一物体的绝对坐标可以完全不同。因此,相对坐标通常更可靠。其次,拉普拉斯矩阵(度矩阵和邻接矩阵之间的偏移量)在图卷积学习中被证明是非常有效的。从这个角度,我们把点云看作一个图,用“float”邻接矩阵作为注意图。此外,在我们的工作中的注意力地图将被缩放为所有行的和为1。所以度矩阵可以理解为单位矩阵。因此,偏移-注意优化过程可以近似理解为一个拉普拉斯过程,将在3.3节详细讨论。此外,我们还做了足够的对比实验,在第4节介绍了偏移注意和自我注意,以证明其有效性。
  • 邻居嵌入模块。显然,句子中的每个词都包含着基本的语义信息。然而,这些点的独立输入坐标与语义一致性的关系很弱。注意机制可以有效地捕获全局特征,但可能会忽略局部几何信息,这也是点云学习的关键。为了解决这一问题,我们使用邻域嵌入策略来改进点嵌入。它还通过考虑包含语义信息的局部点组之间的注意而不是单个点之间的注意来辅助注意模块。

通过上述调整,PCT更加适合于点云特征学习,并在形状分类、部分分割和正常估计任务上取得了最先进的性能。本文的主要贡献总结如下:

  1. 我们提出了一种新的基于 Transformer 的点云学习框架PCT,该框架适用于非结构化、无序和不规则域的点云数据。
  2. 我们提出了带有隐式拉普拉斯算子和归一化优化的偏移注意算法,该算法具有置换不变性,与Transformer中原有的自注意模块相比更适合于点云学习。
  3. 大量的实验表明,带有显式局部上下文增强的PCT在形状分类、部分分割和正常估计任务中取得了最先进的性能。

2. 用于点云的Transformer

在本节中,我们首先展示了PCT学习的点云表示如何应用于点云处理的各种任务,包括点云分类、部分分割和正态估计。随后,我们详细介绍了PCT的设计,首先介绍了PCT的原始版本,直接将原始Transformer应用于点云。然后,我们解释了完整的PCT,其特殊的注意机制和邻居聚合,以提供增强的局部信息。
编码器 PCT的总体架构如图所示。PCT旨在将输入点转换(编码)到一个新的高维特征空间,该空间可以表征点之间的语义亲和性,作为各种点云处理任务的基础。PCT的编码器首先将输入坐标嵌入到新的特征空间中。然后将嵌入的特征输入到4个堆叠的注意模块中,学习每个点的语义丰富的判别表示,再通过线性层生成输出特征。总的来说,PCT的编码器几乎与原始Transformer具有相同的设计理念,除了位置嵌入被丢弃之外,因为点的坐标已经包含了这个信息。读者可以参考[26]了解原始NLP Transformer的详细信息。
在这里插入图片描述

PCT架构。该编码器主要包括一个输入嵌入模块和四个叠加注意模块。解码器主要由多个线性层组成。每个模块上面的数字表示其输出通道。MA-Pool连接Max Pool和Average-Pool。LBR结合线性,BatchNorm和ReLU层。LBRD意味着LBR后面是Dropout层。

形式上,给定一个输入点云 P ∈ R N × d P \in R^{N \times d} PRN×d,包含 N N N 个点具有 d d d 维特征的点,首先通过 input Embedding 模块学习 d e d_e de 维嵌入特征 F e ∈ R N × d e F_e \in R^{N \times d_e} FeRN×de。再将各注意层的注意输出通过特征维串接起来,形成 PCT 输出的逐点 d o d_o do 维特征 F o ∈ R N × d o F_o∈R^{N \times d_o} FoRN×do,然后进行线性变换: F 1 = A T 1 ( F e ) F_1=AT^1(F_e) F1=AT<

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值