【文献笔记】PointWeb
参考笔记:
https://blog.csdn.net/m0_69412369/article/details/143106494
https://www.cnblogs.com/A-FM/p/PointWeb.html
注:本文的大部分内容是转载而来
CVPR 2019:PointWeb: Enhancing Local Neighborhood Features for Point Cloud Processing
论文:https://ieeexplore.ieee.org/document/8954075
代码:https://github.com/hszhao/PointWeb
目录
1. 文章概要
2. PointWeb框架
2.1 核心理念:局部区域的上下文整合
2.2 Adaptive Feature Adjustment
2.2.1 影响函数 Impact Function
2.2.2 关系函数 Relation Function
2.2.3 图解 AFA
3. PointWeb用于点云语义分割任务的整体架构
3.1 整体架构流程
3.2 Set Abstraction Level 流程
3.3 代码
1. 文章概要
本文研究如何有效聚合局部特征,提高点云数据的识别性能,提出了一种新的处理点云的方法 PointWeb,旨在从局部邻域中提取上下文特征。与之前的方法不同, PointWeb 通过密集连接局部邻域中的每个点,从而基于该区域的特性来调整每个点的特征。主要创新点包括引入了自适应特征调整模块(AFA:Adaptive Feature Adjustment),它通过学习点与点之间的交互来增强点云的局部特征。这一调整使得每个特征可以根据该区域内其他点的特征进行拉动或推送,从而更好地表达区域信息,提升点云分割和分类等任务的性能
图中展示了本文方法如何通过引入 AFA 模块增强局部区域内的特征整合能力,相较于传统方法,能够更全面地捕捉点云的上下文信息
(a)PointNet++:这是一种分层网络,通过共享多层感知器(MLP)来处理局部特征,特征聚合是通过 最大池化MaxPool 实现的。黄色箭头表示特征从中心点传播到其他点
(b)DGCNN:该方法将每个中心点与其最近的 K 个邻居连接,并通过计算中心点与邻居之间的特征差来聚合信息,最终通过 MLP + 最大池化MaxPool 进行处理。蓝色点表示整合了配对信息的特征
(c)PointWeb: 通过自适应特征调整模块 AFA ,将局部区域内的所有点连接起来,使得每个点都可以与该区域内的其他点进行特征交互。红色点表示整合了区域信息的特征。与直接从中心点到其他点进行聚合不同,AFA 自适应地学习每个点对其他点的影响,从而在整个区域内聚合特征
2. PointWeb框架
PointWeb 的设计旨在解决传统点云处理方法中局部区域信息整合不足的问题,通过引入自适应特征调整模块 AFA ,该框架显著增强了局部邻域特征的表达能力。相比之下,传统方法只关注中心点与其最近邻居之间的关系,忽略了邻域内各点之间的交互,这种设计使得 PointWeb 在点云语义分割、点云分类等任务上表现优异
2.1 核心理念:局部区域的上下文整合
传统点云模型 PointNet++、DGCNN 在处理局部领域时,通常只聚合中心点、邻居点之间的简单特征,如通过最大池化或连接最近邻的点
这种做法的局限在于:
-
特征交互有限:中心点与邻居点之间的特征交互通常是单向的,没有充分利用邻域中所有点之间的上下文关系
-
信息整合不充分:最大池化虽然有效,但无法精确表达局部邻域中的细微几何信息
为了解决这些问题,PointWeb 通过在局部邻域内互联所有点,使得邻域内所有点进行特征交换,这样就可以充分捕捉局部特征和上下文信息
2.2 Adaptive Feature Adjustment
Adaptive Feature Adjustment 是 PointWeb 的关键创新点。它的主要作用是学习点与点之间的关系,并根据这种关系自适应地调整各个点的特征
AFA 的工作原理可以分为以下几个步骤:
-
输入特征的提取:对于给定的局部邻域
,假设该区域有
个点,每个点的特征为
,这些特征最初由 MLP 提取
-
密集连接所有点:不同于仅连接中心点和最近邻居的做法,PointWeb 将局部区域内的每个点两两连接,构成一个完全连接的网络
-
自适应特征调整:AFA 通过学习每个点与其他点之间的特征差异,动态调整每个点的特征。特征调整的公式如下:
:表示调整后的点特征