论文一起读 | Point Transformer V3: 简化设计,实现更快、更强的三维点云处理模型

文摘   科技   2024-11-01 14:23   广东  

导读

本文是VCC任俊泉同学对论文 Point Transformer V3: Simpler, Faster, Stronger 的解读,该工作来自香港大学、上海人工智能实验室、香港中文大学(深圳)、北京大学和麻省理工学院,并已被发表在计算机视觉顶级会议CVPR 2024上。 

项目主页: 
https://github.com/Pointcept/PointTransformerV3/

该工作提出了 Point Transformer V3 ,一种用于三维点云处理的先进方法,其核心是简化复杂模块的设计并提升效率,该方法在多个下游任务中达到了最先进的性能。该方法通过点云序列化的注意力机制来高效处理大规模点云数据,并能够在不牺牲性能的前提下,显著降低内存使用和计算开销,同时实现更大的感受野和更快的推理速度。

注:本文图片均来自原论文与其项目主页。



I


 引言 

近年来,深度学习模型在多个领域(如2D视觉和自然语言处理)取得了显著进展,其主要原因在于对大规模数据的有效利用、模型参数的增加以及计算资源的扩展。然而,相较于这些领域,3D点云处理的发展却相对滞后。这主要归因于3D点云数据的规模有限,以及现有模型在精度和效率之间的权衡。尤其是在基于Transformer架构的3D模型中,通常需要在计算效率和模型精度上做出妥协,这限制了这些模型的应用范围。


针对上述挑战,本导读论文提出了Point Transformer V3 (PTv3),旨在通过简化设计并提高计算效率来打破这一传统瓶颈。与前代模型不同,PTv3并不着眼于创新复杂的注意力机制,而是通过对点云数据的规模化处理,在扩大感受野的同时保持了较高的效率。具体而言,PTv3在模型设计中引入了点云序列化方法,借助空间填充曲线(如Z-order和Hilbert曲线)将点云数据转化为序列化结构,从而提升了对点云数据局部关系的捕捉能力,并大幅降低了邻域查询的计算复杂度。此外,PTv3采用了简化的注意力机制,并通过引入条件位置编码 (xCPE),有效减少了传统相对位置编码在计算资源上的消耗,从而在保持高精度的同时显著提升了推理速度。

II


 技术贡献 

本工作主要贡献如下:

  • 提出了Point Transformer V3 (PTv3) 模型,该模型可以作为三维点云分类,分割,与检测等任务的骨干(backbone)模型;

  • 提出了一种新的点云序列化编码方法,利用空间填充曲线(如Z-order和Hilbert曲线)来组织点云数据;

  • 在序列注意力机制的基础上,提出了序列洗牌机制 (Shuffle Order),在多个注意力层之间随机打乱点云的序列化顺序,防止模型过拟合于单一的点云排列模式;

  • 提出了新的条件位置编码 (xCPE) 来替代相对位置编码,xCPE可以简化点云中位置关系的建模,同时保持相对较高的计算效率。

如下表所示,该方法与先前的三维点云处理方法相比不但达到了较好的准确率,还兼具了计算高效性、内存高效性的特性。下文将对PTv3的方法进行介绍并展示更为详细的结果数据。

表1 
PTv3与其他方法的模型效率对比

III


 方法介绍 

在PTv1中,K-最近邻(KNN)算法被用于构建局部结构,这引入了计算上的复杂性。PTv2通过减少KNN的使用频率来缓解这一问题。如图1,尽管有所改进,KNN仍然占用了28%的前向计算时间,这带来显著的计算负担。此外,点云中的相对位置编码(RPE)必须通过计算成对的欧几里得距离,并使用学习层或查找表将这些距离映射为嵌入,这进一步导致了计算效率低下,占用了26%的前向计算时间。这些低效操作在扩展模型时带来了诸多困难。

图1 PTv2每个组件的延迟树状图


PTv3打破传统的点云处理范式,不再将点云视为无序的数据集,而是选择将其序列化为结构化的格式。PTv3由点云序列化技术和序列局部注意力网络两部分组成。第一部分的目标是通过空间填充曲线(如Z-order曲线和Hilbert曲线)对点云进行序列化,使得点云数据的空间关系在结构化的序列中得以保留,同时提高处理效率。第二部分则引入了简化的局部补丁注意力机制,分组点云进行局部的注意力操作,并引入了多种机制增强不同补丁间的交互,从而高效地重建点云的全局特征。


点云序列化编码
空间填充曲线(Space-filling curves)是一种遍历高维离散空间中每个点的路径曲线,并在一定程度上保持空间邻近性。数学上,空间填充曲线可以表示为双射函数,其中n为空间的维度(在点云处理中为3维,也可扩展至更高维度)。在本方法中,主要使用两种代表性的空间填充曲线:Z-order曲线和Hilbert曲线。Z-order曲线具有计算高效的特点,而Hilbert曲线则具有更强的空间邻域保留能力,如图2所示:

图2 不同的空间填充曲线


以Z-order曲线为例,这种空间映射是由点的莫顿码决定的:即将每个点云坐标的二进制表示按位交错排列,即取各坐标的第1位组成新的数的高位,取第2位组成次高位,依此类推;假设一个点的坐标为 其二进制为    则  的莫顿码为: 

将所有点的莫顿码按大小进行排序,可以得到点云的一个序列,这是空间中的一条折线,如图3所示,箭头表示了各个点的排列顺序:

图3 Z-order曲线构建


基于双射性质,图2中展示的四种曲线的编码,都可以用映射函数:  表示,通过 将点的位置投影到网格大小为的离散空间中,得到该点的编码。此外,该编码方法还适用于批处理点云数据。通过为每个点分配一个64位整数记录其序列化编码,将后k位分配给位置编码,剩余的高位分配给批次索引b,即
根据序列化编码对点进行排序,使得批处理后的点云数据按照所选的空间填充曲线的模式排序。

序列化局部注意力
序列化的点云使得补丁划分变得格外简单和高效,如图4所示。在对点云进行序列化编码后,即可按照编码大小对点云进行重排序,得到的特征向量。然后按照设定的补丁大小K,对特征向量进行填充(填充点在计算中被屏蔽),使得特征向量长度能够被K整除。

图4 补丁部分

因此,得到  的点云特征,  可以被K整除;进一步,  将变形为 其中 最后,对形状为  的特征向量使用自注意力计算方法完成每个补丁内独立的注意力计算。

在此基础上,不同补丁之间的交互对于模型整合点云的信息至关重要。这个设计能够克服不重叠架构的局限性,并使补丁局部注意力机制真正发挥作用。基于这一洞察,导读论文探索了以下几种补丁交互的设计方案,如图5所示:

图5 点云交互机制


其中,图5(a)为标准的补丁划分;图5(b)为补丁空洞划分机制[1],点云分组通过特定的步长错位,从而有效地将模型的感受野扩展到邻近点之外;图5(c)为补丁移位划分,借鉴了图像Transformer中的补丁移位策略[3],能加强局部点之间的交互;图5(d)为序列切换策略,在不同的注意力层之间动态地改变点云的序列化模式,能够防止模型过拟合于单一的序列化模式。图5(e) Shuffle Order为随机序列策略,引入了随机打乱序列化模式的机制,该策略确保每一层注意力感受野不会局限于单一模式,从而进一步增强模型泛化能力。

此外,针对相对位置编码的低效和复杂,导读论文还提出了增强版的条件位置编码(xCPE),通过在注意力层前使用稀疏卷积层并配合跳跃连接来实现。实验证明,xCPE在性能上得到了充分的发挥,尽管相比标准条件位置编码 (conditional positional encoding,CPE) [2]增加了几毫秒的延迟,但性能提升弥补了这个代价。

模型结构

PTv3的总体结构沿用了U-Net框架,其编码器部分的结构如图6所示,包括点云嵌入,序列化编码模块,以及一系列的注意力模块和下采样结构。其中N为一个编码内注意力模块的个数,S为编码器个数。

图6 网络结构


IV


 部分结果展示 

点云语义分割任务

表二展示了PTv3在三个室内场景数据集下的语义分割结果,表三展示了该方法在三个室外场景数据集下的语义分割结果,指标采用了语义分割的mIoU(平均交并比)。从结果可以看出,PTv3在室内和室外常用数据集中的语义分割性能都做到了SOTA的表现。

表2 室内场景语义分割

表3 室外场景语义分割


点云实例分割任务

表4展示了PTv3在ScanNet数据集以及ScanNet200数据集的实例分割任务结果,可以看出PTv3表现出最先进的性能。

表4 室内实例分割结果

模型效率

表5为PTv3与相关方法的对比,分别从平均时延和内存消耗来评估模型效率。结果表明,PTv3在所有测试场景中不仅表现出最低的延迟,同时也保持了合理的内存消耗。

表5 相关方法模型效率对比

V


 总结与展望 
近年来,神经网络与点云处理技术的快速发展为自动驾驶、机器人导航、3D感知等领域注入了新的活力。如何高效处理和表示大规模点云数据对这些应用至关重要,然而现有的点云处理方法在计算效率和模型精度之间的平衡上仍有局限性。本文提出的 Point Transformer V3 (PTv3) 有效缩小了这一差距,使得在保证高精度的同时,大幅提升了模型的效率和扩展性,尤其在复杂的室内外3D场景下表现优异。

在未来,基于PTv3的点云处理方法有望在更多3D感知、模拟等任务中展现广阔的应用前景。作者展望了一种结合策略,即在扩展模型参数的同时,扩大数据和任务范围,例如从所有可用数据中学习、多任务框架、多模态任务等。这样的一体化策略可以充分释放3D表示学习中规模化的潜力。

VI


 思考与讨论 
Q: 和Shift Order机制相比,论文提出的Shuffle Order机制的优势是什么? 
A: Shuffle Order机制通过随机打乱点云的序列化顺序,使得每层注意力机制都基于不同的点云排列。与Shift Order机制相比,这种完全随机的顺序改变可以更有效地防止模型过拟合于某一种特定的排列模式,从而提升模型的泛化能力,尤其在面对多种数据分布时能够更具鲁棒性。 

Q: 作者用序列化邻居代替了准确的K-最近邻 (KNN),用xCPE代替了相对位置编码 (RPE),这样做的好处是什么?
A: 首先,序列化邻居和xCPE位置编码大大降低了计算消耗和内存消耗,在处理大规模点云数据时能得到显著的效率提升。最重要的是,KNN和RPE的计算复杂度随着数据规模的增加呈指数级增长,限制了模型在同时处理大规模数据时的表现。改进后,PTv3能够将注意力机制的感受野扩张到常规范围 (16或24) 外。如表6所示,PTv3选取1024的补丁后获得了最佳性能。

6 补丁大小对性能的影响


以下是开放性问题,欢迎读者朋友留言讨论: 
Q: 在优先考虑效率的背景下,PTv3重新采用了点积注意力机制,这种机制通过工程优化已非常成熟。但与向量注意力机制相比,PTv3在模型扩展深度和收敛速度上存在局限性。其原因归结为点积和Softmax操作引发的“注意力陷阱”,是否存在新的注意力机制能够在保证效率的前提下,提升模型的收敛速度和扩展能力?

-- End--



导 读 | 任俊泉
审 核 | 徐鹏飞
编 辑 | 申金、余鑫泉


参考文献

[1] PengShuai Wang. Octformer: Octree-based transformers for 3D point clouds. ACM Transactions on Graphics (SIGGRAPH). 42(4), 155:1-155:11, 2023.

[2] Xiangxiang Chu, Zhi Tian, Bo Zhang, Xinlong Wang, Chunhua Shen. Conditional positional encodings for vision transformers. The International Conference on Learning Representations (ICLR). 2023.

[3] Ze Liu, Yutong Lin, Yue Cao, Han Hu, Yixuan Wei, Zheng Zhang, Stephen Lin, and Baining Guo. Swin transformer: Hierarchical vision transformer using shifted windows. International Conference on Computer Vision (ICCV). 9992-10002, 2021.



深圳大学可视计算研究中心
Visual Computing Research Center
----------------------------------
https://vcc.tech


中心以计算机图形学、计算机视觉、可视化、机器人、人工智能、人机交互为学科基础,致力促进多个学科的深入交叉与集成创新,重点推进大规模静动态数据获取与优化融合、多尺度几何建模与图像处理、可视内容生成与仿真渲染、复杂场景重建与识别理解、三维移动协同感知与人机交互、智能模拟学习与强化认知、海量信息可视化与可视分析等方面的科学研究。

📫
转载及合作:szuvcc@gmail.com


深圳大学可视计算研究中心
深圳大学可视计算研究中心致力于大力提升可视计算科学研究与高等教育水平,以计算机图形学、计算机视觉、人机交互、机器学习、机器人、可视化和可视分析为学科基础,促进多个学科的深入交叉和集成创新。详见官网: vcc.tech
 最新文章