kd-tree在三維點雲中的應用 Label: Research

kdtree在三維點雲中的應用包括但不限於:

  • 快速查找最近鄰點
  • 在點雲中進行快速的區域搜索
  • 用於三維點雲的歐式聚類

kdtree的構建就是按照某種順序將無序化的點雲進行有序化排列,方便進行快捷高效的檢索。

kdtree的構建算法如下:

  • 對於一個由n維數據構成的數據集,首先尋找方差最大的那個維度,設這個維度是d,然後找出在維度d上所有數據項的中位數m,按m劃分數據集,一分爲二,記這兩個數據子集爲 Di,Dr。
  • 對於每個子集,重複步驟1,直到子集中只有一個數據項爲止。

最近看到一篇文章自旋轉無人機的文章頗有受用,在此分享:A self-rotating, single-actuated UAV with extended sensor field of view for autonomous navigation | Science Robotics

這篇文章是關於無人機的視覺感知和環境探索。文章介紹了一種新型的無人機,名爲PULSAR,它可以通過自旋來擴展傳感器的視野,而不需要額外的能量消耗。PULSAR只需要一個電機就可以控制其三維位置,而且比基準四旋翼消耗的能量少了26.7%。PULSAR還配備了一種激光雷達傳感器,可以在全景視野中執行自主導航並檢測靜態和動態障礙物。

除了測程法,自主飛行和動態避障的另一個基本要求是表示飛行環境中靜態和動態障礙物的地圖。作者開發了一張地圖,稱爲增量k維森林(ikd-forest,見圖1),它是增量k維樹(ikd樹)的集合,每個樹都包含在一個體素中(立方邊長爲1 m)。ikd樹首先根據規定的分辨率(0.1 m)僅保留最中心的點,從而對相應體素中的點進行降採樣。然後,將保留的點組織成k維樹結構,以實現高效的最近鄰搜索。ikd樹具有增量更新(插入和刪除)和動態重新平衡的優點,這些優點都被ikd-forest繼承。此外,與將所有點構建到大樹中的 ikd 樹相比,ikd 森林實現了更高的效率,因爲每個體素中每個 ikd 樹的樹大小大大減少。

在ikd樹的每個節點上,它保存點座標。爲了區分動態對象上的點和靜態對象上的點,節點上還保存了兩個額外的時間特徵:命中點計數器和最後一個命中點時間戳。命中點計數器記錄與節點上的點(即最中心的點)太近(即在分辨率 0.1 m 內)的點數,儘管這些非最中心的點已被縮減採樣刪除。最後一個命中點時間戳表示最後一個命中點到達節點的時間戳。

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