PointConv:三維點雲卷積操作

摘要

與常規密集網格所代表的圖像不同,3D點雲數據是不規則且無序的,因此很難將卷積操作應用到3D點雲數據。在本文中,我們將動態濾波器擴展成爲新的名爲PointConv的卷積操作,PointConv可以用於點雲數據,創建深度卷積網絡。我們將卷積核視爲由權重和密度函數組成的3D點的局部座標的非線性函數。對於給定點,通過核密度估計利用多層感知機網絡和密度函數來學習權重函數。這項工作最重要的貢獻是爲有效計算權重函數提出的新構想,這使我們能夠大幅度擴展網絡並顯著提高網絡性能。學習的卷積核可用於計算3D空間中任何點集上的平移不變和置換不變卷積。此外,PointConv還可以用作反捲積運算符,將子採樣點雲中的特徵傳播回其原始分辨率。ModelNet40,ShapeNet和ScanNet上的實驗表明,基於PointConv構建的深度卷積神經網絡能夠在3D點雲的語義分割基準上達到最高水準。此外,我們將CIFAR-10轉換爲點雲的實驗表明,構建在PointConv上的網絡可以達到2D圖像中具有類似結構的卷積網絡的性能。

論文鏈接:https://arxiv.org/abs/1811.07246
源碼鏈接:https://github.com/DylanWusee/pointconv 

主要貢獻

將卷積核視爲由權重和密度函數組成的3D點的局部座標的非線性函數。對於給定點,通過核密度估計利用多層感知機網絡和密度函數來學習權重函數。這項工作最重要的貢獻是爲有效計算權重函數提出的新構想,這使我們能夠大幅度擴展網絡並顯著提高網絡性能。

本文的工作貢獻是:

1、提出了PointConv:PointConv是一種密度重加權卷積,它能夠在任何一組3D點上完全逼近3D連續卷積。

2、引入了一種有效提高存儲效率的方法來實現PointConv,能夠使用改變求和順序的重構來大大提高存儲器效率。最重要的是,它允許它擴展到現代CNN的規模。該方法可以實現與2D卷積網絡中相同的平移不變性,以及點雲中點的排序的不變性

3、將PointConv擴展到反捲積—PointDeconv,獲得更好的分割結果,而大多數先進算法不能實現反捲積操作。

算法框架

1、3D點雲的卷積

在這裏插入圖片描述

圖1 圖像中的局部區域和點雲之間的差異

3D點雲數據的表達方式與圖形完全不同,如圖一所示。3D點之間沒有前後順序之分,因此,在3D點雲上的卷積操作應該具有排列不變性。由此提出了一種稱爲PointConv的置換不變卷積運算。

在3D空間中,可以把連續卷積算子的權重看做關於一個3D參考點的局部座標的連續函數。

在這裏插入圖片描述

W和F均爲連續函數,(x, y, z)是3D參考點的座標,(δx, δy, δz)表示鄰域 G 中的 3D 點的相對座標。點雲可以被視爲來自連續空間的非均勻樣本。上式可以離散化到一個離散的3D點雲上。

在這裏插入圖片描述

其中,S 表示逆密度係數函數。然後使用逆密度對學到的權重進行加權,補償不均勻採樣。函數 W 的輸入是以 (x, y, z) 爲中心的 3D 鄰域內的 3D 點的相對座標,輸出是每個點對應的特徵 F 的權重。使用多層感知機近似權重函數w。S 是一個關於密度的函數,輸入是每個點的密度,輸出是每個點對應的逆密度係數。使用核化密度估計近似逆密度S,核化密度估計後帶有使用多層感知機實現的非線性變換。

PointConv中的MLP的權重在所有點之間共享,以便維持置換不變性。逆密度尺度S(δx, δy, δz)的計算過程爲:首先使用核密度估計(KDE)估計離線點雲中每個點的密度,然後將密度輸入到一維非線性變換的多層感知機中。使用非線性變換的原因是使網絡自適應地決定是否使用密度估計。

在這裏插入圖片描述

圖2 PointConv操作

圖2展示了K個3D點組成的鄰域上執行PointConv操作的流程。Cin,Cout爲輸入特徵和輸出特徵的通道數,k,cin,cout表示索引。輸入是點Plocal的鄰域位置,其可以通過減去局部區域的質心的座標和局部區域的特徵Fin來計算。 我們使用核爲1的卷積構成多層感知機。權重函數的輸出是W,密度尺度爲S。在卷積後,K近鄰鄰域的特徵Fin被編碼到輸出特徵Fout中,如等式(4)所示。

在這裏插入圖片描述

2、反捲積操作

對於分割任務,需要逐點預測。爲了獲得所有輸入點的特徵,需要一種將特徵從二次採樣點雲傳播到更密集的點的方法。 PointNet ++建議使用基於距離的插值來傳播特徵,這並未充分利用反捲積操作來捕獲來自粗糙層的傳播信息的局部相關性。

該文建議添加一個基於PointConv的PointDeconv層來解決這個問題。如圖3所示,PointDeconv由兩部分組成:插值和PointConv。首先,採用插值來傳播先前層的粗糙特徵,通過從3個最近點線性插值特徵來進行插值。

在這裏插入圖片描述

圖 3 反捲積操作

然後,使用跳躍連接將插值特徵與來自卷積層的具有相同分辨率的特徵連接起來。然後在連接特徵上應用Point-Conv以獲得最終的反捲積輸出。直到所有輸入點的特徵已傳播至原始分辨率。

3、高效PointConv

該文證明了PointConv可以簡化爲兩個標準操作:矩陣乘法和 2D 卷積,證明部分見原文,大大降低了卷積操作的內存佔用量,單層卷積層的內存佔用變爲原來的1/64。高效PointConv卷積操作如圖4所示:

在這裏插入圖片描述

圖 4 高效PointConv

主要結果

爲了評估PointConv網絡,在幾個廣泛使用的數據集上,包括Model-Net40 ,ShapeNet和ScanNet進行了實驗。爲了證明PointConv能夠完全接近常規卷積,還報告了CIFAR-10數據集的結果。這裏簡要介紹,具體結果請看論文。

ModelNet40上的分類,在表1中,PointConv在基於3D輸入的方法中實現了最先進的性能。

在這裏插入圖片描述

ShapeNet部分分割,使用IoU評估PointConv網絡。見表2,類別平均mIoU爲82.8%,實例平均mIoU爲85.7%,與其他先進算法相同。

在這裏插入圖片描述

 

語義場景標籤,使用Scan-Net數據集評估PointConv處理包含大量噪聲數據的真實點雲的能力。mIoU是所有類別中IoU的平均值。見表3,PointConv在很大程度上優於其他算法。

在這裏插入圖片描述

CIFAR-10的分類,該文稱PointConv可以與2D CNN等效,那麼基於PointConv的網絡的性能應該等同於圖像CNN的性能。爲了驗證這一點,使用CIFAR-10數據集作爲比較基準。將CIFAR-10中的每個像素視爲具有xy座標和RGB特徵的2D點。實驗表明,CIFAR-10上的PointConv確實具有與2D CNN相同的學習能力。表4顯示了圖像卷積和Point-Conv的結果。從表中可以看出,CIFAR-10上PointCNN的準確率爲80.22%,遠遠低於圖像CNN。但是,對於5層網絡,使用PointConv的網絡能夠達到89.13%,這與使用圖像卷積的網絡類似。而且,與VGG19結構相比,PointConv也可以實現與VGG19相比的精確度。

在這裏插入圖片描述

Abstract

Unlike images which are represented in regular dense grids, 3D point clouds are irregular and unordered, hence applying convolution on them can be difficult. In this paper, we extend the dynamic filter to a new convolution operation, named PointConv. PointConv can be applied on point clouds to build deep convolutional networks. We treat convolution kernels as nonlinear functions of the local coordinates of 3D points comprised of weight and density functions. With respect to a given point, the weight functions are learned with multi-layer perceptron networks and density functions through kernel density estimation. The most important contribution of this work is a novel reformulation proposed for efficiently computing the weight functions, which allowed us to dramatically scale up the network and significantly improve its performance. The learned convolution kernel can be used to compute translation-invariant and permutation-invariant convolution on any point set in the 3D space. Besides, PointConv can also be used as deconvolution operators to propagate features from a subsampled point cloud back to its original resolution. Experiments on ModelNet40, ShapeNet, and ScanNet show that deep convolutional neural networks built on PointConv are able to achieve state-of-the-art on challenging semantic segmentation benchmarks on 3D point clouds. Besides, our experiments converting CIFAR-10 into a point cloud showed that networks built on PointConv can match the performance of convolutional networks in 2D images of a similar structure.

 

請各位關注公衆號。更多的文章可以關注公衆號查看。
  這裏寫圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章