1. 程式人生 > 其它 >點雲神經網路:point_net(一)

點雲神經網路:point_net(一)

三維資料的表述形式一般分為下列四種:

(1)點雲:由N NN個D DD維的點組成,當這個D = 3 D=3D=3的時候一般代表著( x , y , z ) (x,y,z)(x,y,z)的座標,當然也可以包括一些法向量、強度等別的特徵。這是今天主要講述的資料型別。
(2)Mesh:由三角面片和正方形面片組成。
(3)體素:由三維柵格將物體用0和1表徵。
(4)多角度的RGB影象或者RGB-D影象。
點雲優勢:

(1)點雲更接近於裝置的原始表徵(即雷達掃描物體直接產生點雲)。
(2)點雲的表達方式更加簡單,一個物體僅用一個N × D 的矩陣表示。
pointnet出現之前,點雲在深度學習裡的應用:

(1)基於3DCNN的體素模型:先將點雲對映到體素空間上,在通過3DCNN進行分類或者分割。但是缺點是計算量受限制,目前最好的裝置也大致只能處理32 × 32 × 32 32\times32\times3232×32×32的體素;另外由於體素網格的立方體性質,點雲表面很多特徵都沒有辦法被表述出來,因此模型效果差。
(2)將點雲對映到2D空間中利用CNN分類
(3)利用傳統的人工點雲特徵分類,例如:
normal 法向量
intensity 鐳射雷達的取樣的時候一種特性強度資訊的獲取是鐳射掃描器接受裝置採集到的回波強度,此強度資訊與目標 的表面材質、粗糙度、入射角方向,以及儀器的發射能量,鐳射波長有關
local density 區域性稠密度
local curvature 局部曲率
linearity, planarity and scattering propesed by Dimensionality based scale selection in 3D lidar point clouds
verticality feature proposed by Weakly supervised segmentation-aided classification of urban scenes from 3d LiDAR point clouds
1.POINTNET

點雲所具有的兩個非常重要的特性:

(1)permutation invariance 置換不變性

point cloud is a set of unordered points.點雲是無需點的集合

(2)transformation invariance

point cloud rotations should not alter classification results.點雲旋轉不改變分類結果

2. 基於點雲的置換不變性

簡單來說,置換不變性就是點的排序不影響物體的性質

因此針對點雲的置換不變性,其設計的網路必須是一個對稱的函式。

最簡單的是max函式,即是一個對稱函式:

[1,2,3]

[1,3,2]=====>max()=====>[2,3,3]

[2,2,2]

改變上述三個座標的排序,並不影響最終的輸出結果。

但是這樣做,每個點損失的特徵太多了,輸出的全域性特徵僅僅只是三個座標軸上最大的那個特徵,因此我們不妨先將點雲上的每個點對映到一個高維的空間,目的是使得再次做max操作,損失的資訊不會那麼多。

此時我們發現,當我們將點雲的每個點先對映到一個冗餘的高維空間後,再去進行max的對稱函式操作,損失的特徵就沒那麼多了。由此,就可以設計出這PointNet的雛形,稱之為PointNet(vanilla)。

3.基於點雲的旋轉不變性

因此對於普通的PointNet(vanilla),如果先後輸入同一個但是經過不同旋轉角度的物體,它可能不能很好地將其識別出來。在論文中的方法是新引入了一個T-Net網路去學習點雲的旋轉,將物體校準,剩下來的PointNet(vanilla)只需要對校準後的物體進行分類或者分割即可。