參考筆記:
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 通過學習每個點與其他點之間的特征差異,動態調整每個點的特征。特征調整的公式如下:
:表示調整后的點特征