文章目錄
- 一、簡介
- 二、實現代碼
- 三、實現效果
- 參考資料
一、簡介
Open3D為我們提供了一種點云多平面探測的算法,該算法使用基于魯棒統計的方法進行平面補丁檢測。該算法具體過程:首先將點云細分為更小的塊(使用八叉樹),然后嘗試為每個塊匹配一個平面。如果平面通過了魯棒平面性測試,那么它就被接受;此外通過取中位數位置和中位數法線來實現平面的擬合。而為了平面提取過程的魯棒性,首先我們需要求出各點法線與擬合平面法線之間的夾角分布,
如果這個分布的擴散太大(即,所有相關的點法線之間有太多的方差),那么該平面將會被拒絕
;其次,計算擬合平面到各點的距離分布,如果誤差分布過高,則該平面也將被拒絕
。在找到一組初始平面后,使用迭代過程將平面增長并合并為更小的穩定平面集。最后,這些平面可以使用其相關點集的二維凸包進行邊界劃分,并提取平面補丁。
相關參數:
normal_variance_threshold_deg
:控制點法線之間分布的方差閾值,大于該閾值將會被拒絕。
coplanarity_deg
:點距離平面的共面性角度,值