没有合适的资源?快使用搜索试试~ 我知道了~
Shitong Luo*1, Jiahan Li*1,2, Jiaqi Guan*3Yufeng Su3, Chaoran Cheng3, Jian Peng3, Jianzhu Ma21 HeliXon Research2 Peking University3 University of Illinois Urbana-Champaign189320通过学习方向进行消息传递的等变点云分析0luost26@gmail.com,majianzhu@pku.edu.cn0摘要0等变性一直是从计算机视觉到物理建模等各个领域的长期关注。大多数先前的方法在普遍性、简洁性和表达性方面存在困难——有些是为特定数据类型而特别设计的,有些过于复杂而无法访问,有些则牺牲了灵活的变换。在这项工作中,我们提出了一种新颖且简单的框架,基于消息传递(图神经网络)方案实现了点云分析的等变性。我们发现,通过为每个点引入一个方向,可以将每个点的相对位置与整个点云的全局姿态解耦。因此,我们扩展了当前的消息传递网络,增加了一个模块来学习每个点的方向。在聚合点的邻居的信息之前,网络根据点的学习方向转换邻居的坐标。我们提供了正式的证明来展示所提框架的等变性。从实证上看,我们证明了我们提出的方法在点云分析和物理建模任务上具有竞争力。代码可在https://github.com/luost26/Equivariant-OrientedMP上找到。01. 引言03D点云已成为表示各种3D对象(如3D场景[1, 4, 8,36]、分子[12, 15, 28]和物理粒子[7,31])的普遍数据结构。为了捕捉点之间的几何关系,消息传递网络(图神经网络)[9]及其变体,如DGCNN[33]和PointNet++[24],已成为建模3D点云数据的标准工具。3D点云的一个特点是大多数标量0* 相等贡献。0图1.所提方法的示意图。首先,它学习了点云中每个点的方向。通过在信息聚合之前投影邻居点的相对坐标,该模型成功地解耦了全局旋转并实现了等变性。0点云的特征对全局旋转和平移是不变的,而点云的向量特征对全局旋转和平移是等变的。例如,形状的类别和其部分的语义不受它们在3D空间中的姿态的影响,每个点的法向量与形状一起旋转。因此,设计一种新型的消息传递网络,以保持点云的不变性和等变性,对于计算机视觉和其他科学领域都具有广泛的影响。传统消息传递网络模型中的关键模块是使用3D坐标差异(x j − x i )构建从点 j到点 i的消息,这些差异通常通过非等变层(如常规MLP)进行转换。因此,很明显,这些模型的输出对于点云的旋转不是等变的。最近,已经提出了两条值得注意的方法线来解决等变性问题:基于张量场的神经网络[7, 31]和基于向量的神经网络[5, 10, 27,29]。张量场网络在3D空间中使用连续卷积操作,模型中的滤波器被限制为可学习的径向函数和球谐函数的复合。尽管实现了等变性,但它们的空间和时间复杂度很高,因为需要即时计算大量的球谐函数。张量场网络的复杂公式也使其对社区的可访问性较低。基于向量的神经网络是张量场网络的一个很好的替代方法。向量神经网络的核心部分是线性层,它以3D空间中的向量列表作为输入,并输出输入向量的多个线性组合。输出向量由于线性组合的性质对于输入的旋转是等变的。然而,由于向量网络的全连接层线性组合输入向量,不同维度的向量被分离开来,这就禁止了灵活的向量变换,并阻碍了维度之间的信息流动。此外,基于向量的神经网络无法对关键的几何关系(如角度)进行建模,因为向量传播是线性的。01 注意,不变性是等变性的特例。189330近年来,已经提出了两条值得注意的方法线来解决等变性问题:基于张量场的神经网络[7, 31]和基于向量的神经网络[5,10, 27,29]。张量场网络在3D空间中使用连续卷积操作,模型中的滤波器被限制为可学习的径向函数和球谐函数的复合。尽管实现了等变性,但它们的空间和时间复杂度很高,因为需要即时计算大量的球谐函数。张量场网络的复杂公式也使其对社区的可访问性较低。基于向量的神经网络是张量场网络的一个很好的替代方法。向量神经网络的核心部分是线性层,它以3D空间中的向量列表作为输入,并输出输入向量的多个线性组合。输出向量由于线性组合的性质对于输入的旋转是等变的。然而,由于向量网络的全连接层线性组合输入向量,不同维度的向量被分离开来,这就禁止了灵活的向量变换,并阻碍了维度之间的信息流动。此外,基于向量的神经网络无法对关键的几何关系(如角度)进行建模,因为向量传播是线性的。0为了解决这个挑战,我们引入了一种新的等变消息传递模型,通过在消息传递过程中学习每个点的方向。整个学习过程包括三个关键步骤。首先,它学习每个点的方向矩阵。其次,我们将这两个点之间的相对位置向量投影到学习到的方向上,这将两个点的相对位置与全局旋转解耦。接下来,通过一些特定的网络架构,将投影后的相对位置差集成到神经消息中。最后,我们可以基于消息传递层的输出特征以及学习到的方向获得不变性和等变性属性。0与以前的等变模型相比,我们的方法更简单但更灵活。具体而言,我们可以通过对投影后的相对位置向量应用任意变换来扩展我们的模型,而基于向量的网络只允许向量的线性组合。0总结一下,我们的主要贡献包括:(1)我们提出了一种新的等变点云分析框架,并对等变性进行了形式化的表述和证明。(2)我们通过使用该框架来增强经典的点云网络,包括DGCNN和RS-CNN,展示了该框架的普适性。(3)我们在包括点云分类、分割、法线估计和多体建模在内的各种任务上进行了大量实验,并证明了所提出的方法具有竞争性能。02. 相关工作0点云的消息传递网络消息传递神经网络(也称为图神经网络)[9]已成为处理点云上的机器学习任务的标准架构。代表性模型包括PointNet++ [24],DGCNN [33],RS-CNN [21],PointCNN [20,35]等等[6]。对于点云中的每个点,首先应用消息传递层来聚合来自其邻居点的特征和相对位置的信息。通过使用标准神经网络(如MLPs),将聚合的信息转换为点表示。根据定义,直接使用MLPs处理坐标不具有旋转等变性,可以观察到3D对象的旋转可能会导致这些模型的不同预测。最近,设计能够保持等变性和不变性属性的新深度学习架构引起了越来越多的关注。0通过方向估计实现等变性估计物体的规范方向是解耦全局旋转并实现等变性的一种方式。PointNet[23]构建了一个基于标准MLPs的子网络,用于为每个输入形状估计一个3x3矩阵形式的规范方向。然而,该矩阵不限于正交旋转矩阵,也不等变于输入。PointNet只能通过数据增强实现近似等变性。GC-Conv[38]使用主成分分析(PCA)在不同尺度上定义规范方向,但其方向依赖于手工制作的先验知识,这在许多实际应用中是不可用的。LGR-Net[42]依赖于法线向量作为额外的输入,可以看作是每个点的一种特殊形式的方向。然而,在大多数情况下,法线向量很难获取甚至没有定义。四元数等变胶囊网络[43]使用四元数表示逐点方向。然而,它需要初始方向作为输入,而我们的方法可以完全端到端地学习方向。其他工作[3,19,26,30,32]主要属于这一类,主要关注姿态估计,大部分需要通过地面真实规范姿态进行监督,并且只能通过数据增强实现等变性。0基于向量的网络实现等变性最近,基于向量的神经网络已经成为实现等变性的新方法[5,10, 27,29]。它们将标准神经网络中的标量激活推广为向量激活。为了处理这些向量激活,设计了基于向量的线性层,它以向量列表作为输入,并输出输入向量的多个线性组合,从而使整个网络等变。189340对于激活函数,GVP[10]根据其范数对向量进行缩放。因此,通过这样的激活层传递的向量仍然是输入向量的线性组合。VNN[5]引入了一个非线性层,输出两组向量并将其中一组投影到另一组。由于这两组向量都对输入等变,所以投影向量也是等变的。基于向量的网络的主要限制来自于线性组合,因为它们的全连接层线性组合输入向量。这限制了灵活的向量变换,并阻碍了向量维度之间的信息流动。0其他等变网络 张量场网络[7, 22,31]是另一类可以实现等变性的工作。它们依赖于将卷积核约束为球谐函数族。通过限制可学习函数的空间,与这些卷积核相关的特征在旋转和平移下可证明是等变的。然而,为不规则点云计算球谐函数需要占用大量空间,导致空间和时间复杂度高。同时,许多工作致力于设计不变算子[2,11,16,17,25,28,34],基于旋转不变度量,如距离和角度。03.预备知识03.1.符号0我们将点云表示为X = (x1, ...,xN),其中每个点表示为3D向量xi ∈R3。点i的方向定义为3x3旋转矩阵Oi。优化后的方向矩阵应满足正交约束,即Oi� = Oi−1和单位行列式(detOi =1)2。03.2.等变性0设G表示一个变换群(例如旋转群、置换群等),g ∈G表示群中的一个特定变换,Tg(x): X →X表示将变换g应用于输入x ∈X的函数。如果存在一个输出域上的变换函数Sg(y): Y →Y,使得对于所有输入x ∈ X,以下方程成立,则函数f: X →Y对G是等变的:0f(Tg(x)) = Sg(f(x)). (1)0在点云分析中,我们考虑以下类型的等变性:0•旋转和平移不变性:点云和逐点语义标签的形状类别属于这种等变性。具体来说,02我们可以始终选择右手定向,使得行列式为1而不是-1。0G是刚性变换(旋转和平移)的群,其元素可以用旋转矩阵和平移向量表示:(R,t)。输入域上的变换函数定义为T(R, t)(X) = (Rx1 + t,..., RxN +t)。输出域(形状类别和语义标签的域)上的变换函数简单地是一个恒等变换:S(R, t)(c) =c。换句话说,无论应用于X的旋转和平移如何,点云X的类别或语义标签c保持不变。0•旋转等变性和平移不变性:点云的逐点法线向量和物理粒子的速度属于这一类。特别地,G也是刚性变换的群。T(R, t)定义为T(R, t)(X) = (Rx1 + t, ..., RxN + t),S(R,t)定义为S(R, t)(v1, ..., vN) = (Rv1, ..., RvN)。这里,vi ∈R3可以表示逐点法线向量或N体系统建模问题中的速度。0•排列等变性和不变性:这些等变性类型不是本文关注的重点,因为大多数消息传递网络对于点特征是排列等变的,对于全局特征是不变的。它们可以与上述几何等变性简单地结合在一起。我们在这里明确地陈述它们以便清楚:G是排列群,排列被表示为对{1,...,N}的双射映射σ。变换函数为Tσ(X) =(xσ(1),...,xσ(N))。对于点特征,输出是等变的:Seqvσ(Y)=(yσ(1),...,yσ(N))。对于全局特征,输出是不变的:Sinvσ(y) = y。0根据这些定义,不变性是等变性的一种特殊情况。在本文中,我们同时使用“等变性”和“不变性”这两个术语来区分情况,但有时我们也使用“等变性”作为一个泛指,既包含等变性又包含不变性的概念。03.3. 直观理解:点的固有方向0我们方法背后的一个关键直觉是:在考虑其上下文时,点云中的每个点都具有固有方向,尽管单个点本身是完全对称的。如图4所示,椅子的座位至少有两个固有方向:“UP”和“FRONT”——“UP”是座位面朝的方向,“FRONT”是椅子背面的相反方向。如果将椅子表示为点云,则座位上的点继承了这些方向,我们可以用一个旋转矩阵Oi来表示方向,其中我们假设第一列和第二列向量分别表示“UP”和“FRONT”。这些旋转矩阵在椅子的全局旋转下自然等变。假设点i在座位上,点j是点云中的任意其他点,则Oi^T(xj−xi)实质上将两点的全局坐标差转换为j相对于i的相对位置,以i的固有方向来表示。Oi^T(xj−xi)的第一个分量表示点j相对于座位的高度,第二个分量表示点在椅子前方的距离。因此,Oi^T(xj−xi)对于椅子的姿态是不变的,并且可以经过任意变换而不破坏不变性。这个概念在图2中有所说明。请注意,无论椅子如何旋转,黄色圆圈相对于FRONT-UP方向的相对坐标保持不变。然而,在大多数实际应用中,我们对每个点的方向没有先验知识。因此,有必要设计一个可以以端到端方式学习每个点方向的网络。The central idea of this work is to learn orientations formessage passing. This section elaborates on each buildingblock, organized as follows:189350图2.“固有方向”概念的示意图。黄点的坐标为x1,黑点的坐标为x2。箭头是黑点固有方向O2的两个基向量。无论全局旋转R如何变化,黄点相对于x2和O2的位置保持不变。0本文的核心思想是学习消息传递的方向。本节按照以下方式详细介绍每个构建模块:04. 方法0•在第4.1节中,我们详细介绍了方向学习的原理,并提出了一种神经网络架构来学习方向。0•在第4.2节中,我们展示了如何将设计的架构应用于学习方向的消息传递网络,并且如何保持等变性。0•在第4.3节中,我们制定了用于估计等变性和不变性属性的读出层。04.1. 学习方向0如第3.3节介绍的那样,点的方向是固有的和上下文相关的。点对方向可以表示为正交方向矩阵Oi ∈ R3×3(i = 1, ...,N)。因此,为了学习有效的点对方向,应该有一个子网络:(1)捕捉每个点的上下文,(2)输出正交的方向矩阵。0(i = 1, ...,N)。因此,为了学习有效的点对方向,应该有一个子网络:(1)捕捉每个点的上下文,(2)输出正交的方向矩阵。0为了实现目标(1)和(3),我们采用了GVP-GCN[10,27](一种基于向量的图神经网络)的变体,通过点云的k最近邻图估计每个点的两个等变向量特征。随后,我们利用Gram-Schmidt过程从向量中构建方向矩阵[44],实现了目标(2)。下面是学习方向的网络描述:设X = (x1, ...,xN)表示输入点云。将点云作为初始标量和向量特征全为零的输入,传递给第一个基于向量的图卷积层,记为V-GConv:0(H(1), V(1)) ← V-GConv1(X, 0, 0)。 (2)0这里,H(1) = (h(1)1, ..., h(1)N)是点云的标量特征,V(1) ={(v(1)11, v(1)12, ...), ..., (v(1)N1, v(1)N2,...)}表示其向量特征。接下来,通过一系列的V-GConv层迭代更新标量和向量特征:0(H(ℓ), V(ℓ)) ← V-GConvℓ(X, H(ℓ−1), V(ℓ−1))。 (3)0最后一层对每个点输出两个向量,表示为V(L) = {(v(L)11,v(L)12), ..., (v(L)N1,v(L)N2)}。有关V-GConv层的详细信息请参见补充材料。然后,我们使用Gram-Schmidt过程对每个点的两个向量进行归一化和正交化处理:0ui1 ← v(L)i10∥v(L)i1∥,(4)0u'i2 ← v(L)i2 - �v(L)i2, ui1�ui1,(5)0ui2 ← u'i20∥u'i2∥,(6)0这里�∙ ,∙�是两个向量的内积。最后,通过将两个正交单位向量(ui1,ui2)及其叉乘组合,构建点对方向矩阵:0Oi ← [ui1, ui2, ui1 × ui2] (i = 1, ..., N)。 (7)0以这种方式构建的方向矩阵满足本节开头总结的三个要求。特别地,V-GConv层使得学习到的方向能够感知其上下文并保证等变性。Gram-Schmidt正交化和公式7确保了学习到的方向的正交性。学习到的方向的等变性在以下命题中正式说明:189360图3.带有方向的消息传递及其等变性的示意图。请注意,适当的旋转矩阵R应满足约束R�R = I。0命题1. 学习方向的网络f ort(x1, ..., xN) = (O1, ...,ON)对旋转是等变的,对平移是不变的,满足f ort(Rx1 + t,..., RxN + t) = (RO1, ..., RON)。0证明请参见补充材料。0扩展:学习全局方向点云的学习点对方向的网络可以用于学习全局方向。我们首先构建点云的层次结构:X(L) = {¯x} � X(L−1) � ... � X(1) �X,其中¯x = 1/N ∑xi。第ℓ个V-GConv层(ℓ
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 4
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- zigbee-cluster-library-specification
- JSBSim Reference Manual
- c++校园超市商品信息管理系统课程设计说明书(含源代码) (2).pdf
- 建筑供配电系统相关课件.pptx
- 企业管理规章制度及管理模式.doc
- vb打开摄像头.doc
- 云计算-可信计算中认证协议改进方案.pdf
- [详细完整版]单片机编程4.ppt
- c语言常用算法.pdf
- c++经典程序代码大全.pdf
- 单片机数字时钟资料.doc
- 11项目管理前沿1.0.pptx
- 基于ssm的“魅力”繁峙宣传网站的设计与实现论文.doc
- 智慧交通综合解决方案.pptx
- 建筑防潮设计-PowerPointPresentati.pptx
- SPC统计过程控制程序.pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功