Relation-Shape Convolutional Neural Network for Point Cloud Analysis(CVPR 2019)


代碼:https://github.com/Yochengliu/Relation-Shape-CNN

文章:https://arxiv.org/abs/1904.07601

作者直播:https://www.bilibili.com/video/av61824733

作者維護了一個收集一系列點雲論文、代碼、數據集的github倉庫:https://github.com/Yochengliu/awesome-point-cloud-analysis

這篇paper是CVPR 2019 Oral & Best paper finalist

Abstract & Introduction

在點雲中,由於不規則點中隱含的形狀很難捕捉,使得點雲分析非常具有挑戰性。在本文中,作者針對點雲數據提出了RS-CNN,即Relation-Shape Convolutional Neural Network,其核心思想是從幾何拓撲中學習點雲關系信息。RS-CNN在多個數據集中都取得了SOTA的表現。
主要貢獻如下:

  • 提出了一種新型的從關系中學習的卷積算子關系形狀卷積。它可以顯式地對點的幾何關系進行編碼,從而在很大程度上提高了對形狀的感知能力和魯棒性。即,RS-Conv
  • 提出一個具有關系形狀卷積的深層層次結構,即,RS-CNN。將規則網格CNN擴展到不規則配置,實現點雲的上下文形狀感知學習。即,基於RS-Conv設計的RS-CNN
  • 在三個任務中對具有挑戰性的基准進行廣泛的實驗,以及深入的經驗和理論分析,證明RS-CNN達到了SOTA的水平。即,精度高效果好(modelnet40 93.6)

Shape-Aware Representation Learning

首先,作者歸納了一個通用的卷積公式

\[f_{P_{sub}}=\sigma(\mathcal{A}(\{\tau(f_{x_{j}}),\forall x_j\})),d_{ij}<r\forall(x_j) \in \mathcal{N}(x_i) \]

其中,\(x\)表示3D點,\(f_{x_j}\)表示\({x_j}\)的特征向量,\(d_{ij}\)\(x_i\)\(x_j\)之間的歐式距離Euclidean distance,\(\tau\)用於轉化單點特征,\(\mathcal{A}\)表示聚合函數,\(\sigma\)為激活函數。在這個公式中,\(\mathcal{A}\)\(\tau\)的定義很關鍵,也就是這篇paper的創新所在。

首先,如果將這個公式套用在2D圖像當中,則\(\tau(f_{x_{j}})=W_j \cdot f_{x_j}\),其中\(w_j\)為learnable weight(可以理解為卷積核),“\(\cdot\)”表示點乘,\(\mathcal{A}\)表示求和,其實就是一個卷積操作。而傳統卷積有兩個問題,1是不具備置換不變性,2是沒有學習到形狀信息。因此,作者對\(\mathcal{A}\)\(\tau\)進行了修改,使其處理點雲信息時,具有置換不變性,以及能夠學習到形狀信息。置換不變性在pointnet中已經實現,就是用max來表示\(\mathcal{A}\),那么剩下的就是學習形狀信息,那么如何學習形狀信息?就是通過這個\(\tau\)實現的。
為了捕獲形狀信息(或者關系信息),作者將\(\tau\)定義為:

\[\tau(f_{x_{j}})=W_{ij} \cdot f_{x_j}=\mathcal{M}(h_{ij})\cdot f_{x_j} \]

\(\mathcal{M}\)用於將兩個點的關系映射為high-level的信息(\(\mathcal{M}\)實際上就是MLP,將低維特征映射成高維特征,而低維特征就是點的位置關系,比如兩個點間的距離,相對坐標等),而\(h_{ij}\)就是低維特征。
RS-Conv的流程圖如下:

  1. 首先通過FPS進行采樣,得到質心\(X_i\)
  2. 在球形領域尋找近鄰,\(X_j\)
  3. 對於每個鄰居點j,計算j和i的low-level信息,即\(h_{ij}\)\(h_{ij}\)的表示方法很多,作者在論文中將其定義為\(h_{ij}=[3D-Ed,x_i-x_j,x_i,x_j]\),即將兩點間的歐式距離(1維),相對坐標(3維),i的坐標(3維)和j的坐標(3維)進行拼接,得到一個10維的low-level信息。
  4. 使用MLP將\(h_{ij}\)映射成高維信息,即\(\mathcal{M}(h_{ij})\),得到\(W_{ij}\),注意,這邊映射成高維信息的\(W_{ij}\)的維度要和\(f_{x_j}\)的特征維度相同,才可以進行點乘操作
  5. 將得到的\(W_{ij}\)\(f_{x_j}\)進行點乘。
  6. max操作,聚合所有近鄰的信息作為質心\(x_i\)的新特征,接着為了實現更強大的形狀感知表示,將\(x_i\)進行進一步的通道提升映射。即上圖中的channel-raising mapping

以上就是RS-Conv的操作過程。有點復雜,類比成2D圖像的卷積的話,一個明顯的區別是RS-Conv的卷積核\(W_{ij}\)是通過\(h_{ij}\)(即低維關系信息)學習來的,這也是本文的最大創新點,但實際上,這個操作在其他論文中也有出現,比如GACnet,DGCNN只是他們定義\(h_{ij}\)的方式不同。
網絡結構如下

比較簡單,不贅述,具體如何實現需要看代碼。

實驗

Shape classification.

Shape part segmentation

Normal estimation

消融實驗


雖然在modelnet40上取得了93.6的結果,但是看消融實驗可知,作者加入了很多trick才得到這樣的精度,比如Pointnet++中的多尺度,以及voting test(具體是啥暫不明了),如果去除多尺度和voting test只能達到92.2的精度。雖說創新點少,但論文中那么多的分析也需要大量的積累才能做到。

聚合函數,即\(\mathcal{A}\)的消融實驗

對於low-level信息,即\(h_{ij}\)的消融實驗

總結

在這項工作中,作者提出了RS-CNN,即 Relation-Shape Convolutional Neural Network,它將規則的網格CNN擴展到不規則的配置來進行點雲分析。 RS-CNN的核心是一種從低維信息中學習relation的新型的卷積運算器。通過這種方式,可以對點的空間布局進行明確的推理,從而獲得判斷形狀的意識。此外,還可以獲得良好的幾何關系支撐,如對剛性變換的魯棒性。因此,RS-CNN可以實現上下文感知的形狀學習,具有很高的學習效率。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM