還是緊接着上一文章的思路繼續介紹3D特征點的基本概念問題,還是這個表格:
| Feature Name | Supports Texture / Color | Local / Global / Regional | Best Use Case |
|---|---|---|---|
| PFH | No | L | |
| FPFH | No | L | 2.5D Scans (Pseudo single position range images) |
| VFH | No | G | Object detection with basic pose estimation |
| CVFH | No | R | Object detection with basic pose estimation, detection of partial objects |
| RIFT | Yes | L | Real world 3D-Scans with no mirror effects. RIFT is vulnerable against flipping. |
| RSD | No | L | |
| NARF | No | L | 2.5D (Range Images) |
NARF (Normal Aligned Radial Feature)
這是一個局部特征點,NARF功能擴展了SIFT(Lowe)的一些概念。主要的參考文獻:
- Object recognition from local scale-invariant features (http://ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=790410&tag=1)
輸入格式:
(1)場景的深度圖像RI。
(2)NARF不僅是描述符,還是檢測器。可以首先在數據集上運行興趣點檢測器再進行描述子描述
http://docs.pointclouds.org/trunk/classpcl_1_1_narf_keypoint.html
工作原理:
(1)迭代深度圖像RI中的所有興趣點。
(2)對於每個點,Pi通過沿着法線看它來創建一個小圖像補丁。法線是圖像塊的局部坐標系的Z軸,其中Pi位於(0,0)。 Y軸是世界坐標系Y軸。 X軸相應對齊。圍繞Pi的半徑r內的所有鄰居都被轉移到該局部坐標系中。
(3)具有n個光束的星形圖案投射在圖像塊上。對於每個波束,計算[-0.5,0.5]中的分數。如果在梁下方的細胞中存在大量強度變化,則束具有高分。這是通過將每個單元與下一個單元進行比較來計算的。另外,靠近中心的細胞有助於得分具有更高的重量(中間2個,邊緣1個)。
(4)最后,計算補片的主導方向,使其對法線周圍的旋轉不變。
有關特征計算的更多詳細信息,請參閱原始文件:https://www.willowgarage.com/sites/default/files/icra2011_3dfeatures.pdf

簡短概述
(1)對於深度圖像RI中的每個關鍵點Pi,對Pi周圍的所有鄰居進行采樣,並將它們轉換為局部坐標系,其中Pi為O.
(2)在圖像塊上投射星形圖案並計算每個光束下的強度變化以獲得光束的分數。 在計算中,更靠近中心的光束具有更大的權重。 分數歸一化為[-0.5,0.5]。
(3)迭代所有光束並找到圖像塊的主要方向。
RSD (Radius-based Surface Descriptor)
是一種局部特征點
輸入格式:
(1)由一組帶有方向信息點P組成的點雲。帶有方向意味着所有點都具有正常的n法線。
(2)此功能不使用顏色信息。
工作原理:
(1)迭代點雲P中的點。
(2)對於輸入雲中的每個點Pi(i是迭代索引),收集具有半徑r的Pi周圍的球體內的所有相鄰點。這個集合稱為Pik(k為k個鄰居)
(3)對於Pik中的每個鄰居Pikj,計算Pi和Pikj之間的距離以及它們的法線之間的角度。這些值被分配給表征點Pi處的曲率的直方圖。
(4)使用這些值,可以通過兩個點擬合具有近似半徑rc的假想圓(見圖)。請注意,當兩個點位於平面上時,半徑將變為無窮大。
(5)由於查詢點Pi可以是多個圓的一部分,其鄰居僅保持最小和最大半徑並將其分配給Pi作為輸出。該算法接受最大半徑參數,在該參數之上,點將被視為平面。

簡短概述
(1)對於P樣本中的每個點Pi,Pi周圍的所有k個鄰居。
(2)根據距離d和無向法線的角度將所有鄰居分配到直方圖。
(3)假設與每個鄰居的Pi對描述一個圓(見圖)。 找到Pi描述的所有球體的最小和最大半徑及其鄰域。
(4)得到的直方圖和半徑組可以與其他點雲的組合進行比較,以便找到對應關系。
ESF (Ensemble of Shape Functions)(拓展一個特征點)
是一種局部特征點,參考文章
- A3, D2, D3 shape description functions: Matching 3D Models with Shape Distributions (Osada et. al.)
- D2 improvements (IN, OUT, MIXED): Using Shape Distributions to Compare Solid Models (Ip et. al.)
輸入格式:
(1)由一組點P組成的點雲。
(2)此功能不使用顏色信息。
工作原理:
(1) 啟動一個循環,從點雲P中采樣20,000點。
(2) 每次迭代都會對三個隨機點Pri,Prj,Prk進行采樣。
(3) D2:對於D2函數,計算Pri和Prj之間的距離。然后檢查連接兩點的線是否完全位於表面(IN),表面外(OUT)或兩者(MIXED)。在先前計算的距離箱處增加D2的子組合圖之一(IN,OUT或MIXED)。當采樣三個點時,可以在該迭代中計算另外兩個距離。
(4) D2比率:還有另一個直方圖,可以捕獲位於表面和自由空間中的每條線的各部分之間的比率。
(5) D3:對於D3函數,計算Pri,Prj和Prk之間三角形區域的平方根。這相當於D2,因為該區域也分為IN,OUT和MIXED。增加D3直方圖的相應直方圖區間。
(6) A3:對於A3函數計算三點之間的角度。此功能再次分為IN,OUT和MIXED。這次使用與角度相反的線。增加相應的A3直方圖bin。
(7)在循環結束時,我們得到一個包含10個子圖形(每個64個子區)的全局描述符:D2(IN,OUT,MIXED,比率),D3(IN,OUT,MIXED),A3(IN,OUT,MIXED) 。
閱讀整篇論文以獲取更多信息:http://ieeexplore.ieee.org/xpl/articleDetails.jsp?numumber = 6181760

簡短概述:
(1)開始一個從點雲P中隨機抽樣20,000點的循環。每輪樣本三點Pri,Prj,Prk。
(2)對於兩個點對,計算彼此之間的距離,並檢查兩者之間的線是否位於表面上,外部或與物體相交(IN,OUT或MIXED)。在D2的三個子圖表中的一個中增加與計算的距離對應的bin。
(3)對於前一行,找到位於表面或外部的那條線的部分之間的比率。結果應該是0表示完全在外面,1表示完全在表面上,並且來自MIXED線的所有值都在它們之間分布。增加D2比率直方圖的對應bin。
(4)對於三元組,建立一個三角形並計算兩側之間的角度,並將角度的一側分為三角形(IN,OUT,MIXED)。增加A3的IN,OUT或MIXED子組合圖中的相應角度箱。
(5)對於前一個三角形,計算區域的平方根,並將區域分為IN,OUT或MIXED。增加D3的IN,OUT或MIXED子組合圖中的相應區域bin。
注意:以上內容如有錯誤或者需要補充的,請留言!同時歡迎大家關注微信公眾號,積極分享投稿,做到大家一起分享,拒絕只做個伸手黨!或者加入3D視覺微信或QQ交流群,一起交流分享! 投稿或聯系群主郵箱:dianyunpcl@163.com
原創不易,轉載請聯系群主,注明出處

