女人荫蒂被添全过程13种图片,亚洲+欧美+在线,欧洲精品无码一区二区三区 ,在厨房拨开内裤进入毛片

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

三維點云數據的兩種結構Kdtree和Octree

新機器視覺 ? 來源:機器視覺智能檢測 ? 作者:機器視覺智能檢測 ? 2022-03-14 10:57 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

三維點云數據用于表征目標表面的海量點集合,但是各個離散點之間并沒有拓撲關系,一般通過建立點云的空間索引來實現基于鄰域關系的快速查找。在三維點云數據中用的較為廣泛的兩種結構分別是Kdtree和Octree。

目錄

什么是Kdtree

什么是Octree

對比總結

什么是Kdtree?

1. Kdtree的原理

Kdtree是一種劃分k維數據空間的數據結構,在一個K維數據集合上構建一棵Kdtree代表了對該K維數據集合構成的K維空間的一個劃分,即樹中的每個結點就對應了一個K維的超矩形區域。主要用于多維空間關鍵數據的搜索。

2. Kdtree的創建

Kdtree的創建就是按照某種順序將無序化的點云進行有序化排列,方便進行快捷高效的檢索。算法流程如下:

(1) 在K維數據集合中選擇具有最大方差的維度,然后在該維度上選擇中值m為中心對該數據集合進行劃分,得到兩個子集合;同時創建一個樹結點node,用于存儲;

(2)對兩個子集合重復(1)步驟的過程,直至所有子集合都不能再劃分為止;如果某個子集合不能再劃分時,則將該子集合中的數據保存到葉子結點。

根據上述算法步驟,以二維數據創建Kdtree為例,輸入數據列表為{(2,3),(5,4),(9,6),(4,7),(8,1),(7,2)};劃分的二維分割圖如下:

27db7468-965a-11ec-952b-dac502259ad0.jpg

首先統計X和Y方向上的方差,選取方差較大的X維度作為初始分割軸,對X軸上的數值{2,5,9,4,8,7}取中值X=7作為分割線,生成左子樹{(2,3),(5,4),(4,7)},生成右子樹{(9,6),(8,1)},更新分割軸Y,分別在左右子樹中找到中位數(5,4)和(9,6),依次迭代如下圖:

27f2d900-965a-11ec-952b-dac502259ad0.png

3. Kdtree的搜索

Kdtree的搜索方法有以下兩種:

范圍搜索:給定搜索點和搜索距離的閾值,從數據集中找出所有與搜索點距離小于閾值的數據;

最近鄰搜索:給定查詢點和正整數K,從數據集中找到距離查詢點最近的K個數據,當K=1時,就是最近鄰搜索。

以最近鄰搜索算法為例,其流程如下:

(1)將查詢數據Q從根結點開始,按照Q與各個結點的比較結果向下訪問Kdtree,直至達到葉子結點。
其中Q與結點的比較指的是將Q對應于結點中的k維度上的值與中值m進行比較,若Q(k) < m,則訪問左子樹,否則訪問右子樹。達到葉子結點時,計算Q與葉子結點上保存的數據之間的距離,記錄下最小距離對應的數據點,記為當前最近鄰點和最小距離Distance。

(2)進行回溯操作,該操作是為了找到離Q更近的“最近鄰點”。即判斷未被訪問過的分支里是否還有離Q更近的點,它們之間的距離小于Distance。

如果Q與其父結點下的未被訪問過的分支之間的距離小于Distance,則認為該分支中存在離P更近的數據,進入該結點,進行(1)步驟一樣的查找過程,如果找到更近的數據點,則更新為當前的最近鄰點,并更新Distance。

如果Q與其父結點下的未被訪問過的分支之間的距離大于Distance,則說明該分支內不存在與Q更近的點。

回溯的判斷過程是從下往上進行的,直到回溯到根結點時已經不存在與P更近的分支為止。

4. Kdtree的注意事項

a.對子空間進行劃分時,怎樣確定在哪個維度上劃分?

輪流劃分法:如果這次選擇在第i維上進行數據劃分,那下一次就在第j(j≠i)維上進行劃分,例如:j = (i mod k) + 1。

但是這樣忽略了不同屬性數據之間的分散程度,有的屬性值比較分散,有的屬性值比較集中。當數據的分布在某一個維度較為集中,出現下圖的現象,第一次劃分將數據分為左右兩個子集合,安裝輪流的交替原則,第二次劃分的軸并不能很好的分割數據:

2806861c-965a-11ec-952b-dac502259ad0.png

方差統計法:統計樣本在每個維度上的數據方差,選出對應方差最大值的那個維度。因為方差大說明在該坐標軸上的數據點較為分散。

但是理論上空間均勻分布的點,在一個方向上分割之后,通過計算方差下一次分割就不會出現在這個方向上了,不過特殊情況如下:

281519ca-965a-11ec-952b-dac502259ad0.png

方差優化法:初始維度的劃分依據數據方差范圍最大的那一維作為分割維度,之后也是選中這個維度的中間節點作為軸點,然后進行分割,分割出來的結果如下圖所示:

2823d762-965a-11ec-952b-dac502259ad0.png

b.在某個維度上劃分時,怎樣確保樹盡量平衡?

中位數法:找到該維度上數據的中位數,然后將數據點與中位數進行比較,得到兩個子集合的個數基本相同。

c.怎樣判斷未被訪問的分支里有離搜索數據更近的點?

從幾何空間上,通過判斷以搜索數據為中心和以記錄的當前距離為半徑的超球面與樹分支代表的超矩形之間是否相交。如下圖所示:

28377114-965a-11ec-952b-dac502259ad0.png

星號為搜索數據,綠色的點為疑似最近點,以搜索點和疑似最近點構成的圓與所在分割區域的矩形有交集,則需要回溯根節點中未被訪問的分支。

什么是Octree

1. Octree的原理

Octree是一種用于描述三維空間的樹狀數據結構。八叉樹的每個節點表示一個正方體的體積元素,每個節點有八個子節點,將八個子節點所表示的體積元素加在一起就等于父節點的體積。能夠很好的壓縮點云節省存儲空間。

通過對三維空間的幾何實體進行體元剖分,每個體元具有相同的時間和空間復雜度,通過循環遞歸的劃分方法對大小為(2n?2n?2n)的三維空間的幾何對象進行剖分,從而構成一個具有根節點的方向圖。在八叉樹結構中如果被劃分的體元具有相同的屬性,則該體元構成一個葉節點;否則繼續對該體元剖分成8個子立方體,依次遞剖分,對于(2n?2n?2n)大小的空間對象,最多剖分n 次,如下圖所示:

2844b8e2-965a-11ec-952b-dac502259ad0.png

2. Octree的創建

(1)設定最大遞歸深度

(2)找出場景的最大尺寸,并以此尺寸建立第一個立方體

(3)依序將單位元元素丟入能被包含且沒有子節點的立方體

(4)若沒有達到最大遞歸深度,就進行細分八等份,再將該立方體所裝的單位元元素全部分擔給八個子立方體

(5)若發現子立方體所分配到的單位元元素數量不為零且跟父立方體是一樣的,則該子立方體停止細分,因為根據空間分割理論,細分的空間所得到的分配必定較少,若是一樣數目,則再怎么切數目還是一樣,會造成無窮切割的情形。

(5)重復3,直到達到最大遞歸深度。

Octree的葉子節點代表了分辨率最高的情況。例如分辨率設成0.01m,那么每個葉子就是一個1cm見方的小方塊。如下圖所示:

285a7966-965a-11ec-952b-dac502259ad0.png

當分辨率較高時,方塊很小;分辨率較低時,方塊很大。以斯坦福課程中的兔子模型為例:

286dc732-965a-11ec-952b-dac502259ad0.png

對比總結

由于三維點云的數據量較大,使用Kdtree和Octree進行檢索可以較少時間消耗,確保點云的關聯點尋找和配準處于實時的狀態。

Kdtree在鄰域查找上比較有優勢,但在大數據量的情況下,若劃分粒度較小時,建樹的開銷也較大,但比八叉樹靈活些。在小數據量的情況下,其搜索效率比較高,但在數據量增大的情況下,其效率會有一定的下降,一般是線性上升的規律。

Octree算法實現簡單,但大數據量點云數據下,其使用比較困難的是最小粒度(葉節點)的確定,粒度較大時,有的節點數據量可能仍比較大,后續查詢效率仍比較低,反之,粒度較小,八叉樹的深度增加,需要的內存空間也比較大(每個非葉子節點需要八個指針),效率也降低。而等分的劃分依據,使得在數據重心有偏斜的情況下,受劃分深度限制,其效率不是太高。

如果將Octree和Kdtree結合起來的應用,應用八叉樹進行大粒度的劃分和查找,而后使用Kdtree樹進行細分,效率會有一定的提升,但其搜索效率變化也與數據量的變化有一個線性關系。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 數據
    +關注

    關注

    8

    文章

    7252

    瀏覽量

    91697
  • 云數據
    +關注

    關注

    0

    文章

    118

    瀏覽量

    16845

原文標題:激光點云的組織形式

文章出處:【微信號:vision263com,微信公眾號:新機器視覺】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    VirtualLab:光學系統的三維可視化

    元件和探測器的位置,以及快速了解光在系統內的傳播。所應用的三維視圖建模技術可與經典的光線追跡相媲美。 如何生成一個系統視圖文檔 一個光學系統的三維視圖可以通過兩種不同的方式生成: 1.使用“光線結果
    發表于 05-30 08:45

    三維數據重構-三維掃描儀測量渦輪葉片尺寸

    三維掃描技術以高達0.01mm級精度、每秒百萬點數據采集能力,推動尺寸檢測從抽檢向全檢轉型,為航空航天、汽車制造等高精度行業提供可追溯、可量化的質量保障體系。
    的頭像 發表于 02-27 11:36 ?302次閱讀

    結構三維成像方面DLP LightCrafter 4500如何連續投射彩色圖?

    結構三維成像方面,DLP LightCrafter 4500 如何連續投射彩色圖?一般我們生成張不同相移的灰度圖,然后合成24bit,依次投射灰度圖,但是這樣并不是一張RGB彩色圖的效果。我們希望直接投射出24bit 彩色
    發表于 02-25 08:23

    三維測量在醫療領域的應用

    技術可以對CT(計算機斷層掃描)、MRI(磁共振成像)等醫學影像進行三維重建,生成病灶或器官的三維模型。 這些模型為醫生提供了更為直觀、立體的視覺信息,有助于醫生更準確地了解患者的解剖結構和病變情況。 醫學影像分析 : 通過
    的頭像 發表于 12-30 15:21 ?652次閱讀

    三維測量數據處理流程

    一系列的處理步驟才能轉化為有用的信息。 1. 數據采集 三維測量數據處理的第一步是數據采集。這一步驟涉及到使用各種傳感器和設備來獲取三維空間
    的頭像 發表于 12-30 15:06 ?728次閱讀

    三維測量軟件的使用技巧

    需要哪些功能,如處理、三維建模、數據分析等。 軟件兼容性 :確保軟件能夠與現有的硬件設備兼容,如三維掃描儀、CAD軟件等。 用戶界面 :
    的頭像 發表于 12-30 15:05 ?778次閱讀

    三維掃描與建模的區別 三維掃描在工業中的應用

    三維掃描與建模的區別 三維掃描與建模是兩種不同的技術,它們在操作過程、輸出結果及應用領域上存在顯著的區別。 操作過程 : 三維掃描 :主要通過激光或光學掃描設備,獲取實物表面的形狀、紋
    的頭像 發表于 12-19 14:55 ?1073次閱讀

    三維激光掃描儀的數據可視化技術

    反射時間來獲取目標物體的空間坐標信息。這種非接觸式的測量方法能夠快速采集大量的數據,形成高精度的三維模型。這些數據包括物體的幾何形狀、紋
    的頭像 發表于 11-28 10:15 ?807次閱讀

    數字孿生三維可視化場景如何搭建?

    數字孿生 三維可視化 場景是一強大的工具,能夠幫助我們模擬和展示現實世界中的復雜環境和系統。從數據采集到交互設計,通過一系列步驟,可以有效地搭建出逼真動態的數字孿生三維場景。
    的頭像 發表于 11-06 14:40 ?581次閱讀

    基于深度學習的三維分類方法

    近年來,云表示已成為計算機視覺領域的研究熱點之一,并廣泛應用于自動駕駛、虛擬現實、機器人等許多領域。雖然深度學習技術在處理常規結構化的二網格圖像數據方面取得了巨大成功,但在處理不規
    的頭像 發表于 10-29 09:43 ?1549次閱讀
    基于深度學習的<b class='flag-5'>三維</b><b class='flag-5'>點</b><b class='flag-5'>云</b>分類方法

    什么是三維分割

    是世界的一結構三維數據表示,通常由激光雷達傳感器、立體相機或深度傳感器采集。它由一系列
    的頭像 發表于 10-29 09:21 ?624次閱讀

    友思特方案 基于三維實現PCB裝配螺絲視覺檢測

    三維是完成精密化 PCB 檢測的最新視覺技術。友思特 Saccde Vision 視覺掃描系統,采用先進的三維成像技術和算法輸出直觀點云圖,進一步確保了PCB生產的可靠性與穩定性能
    的頭像 發表于 08-28 16:35 ?610次閱讀
    友思特方案  基于<b class='flag-5'>三維</b><b class='flag-5'>點</b><b class='flag-5'>云</b>實現PCB裝配螺絲視覺檢測

    如何實現三維地圖可視化交互系統

    三維地圖可視化 交互系統是一基于三維地圖技術的交互式應用程序,可以呈現地理信息和空間數據的立體化展示,并提供用戶友好的交互功能。以下是古河
    的頭像 發表于 07-19 18:20 ?2095次閱讀

    起點,經過,終點,三點xyz,畫三維圓弧。

    大家好!已知,起點,經過,終點,三點xyz,畫三維圓弧。在三維圖片框里面畫。該如何實現?甚至三維
    發表于 07-17 21:33

    三維可視化的魅力與應用

    三維可視化是一強大的工具,它融合了藝術、科學和技術,通過在三維空間中呈現數據、概念和想法,為人們提供了一直觀而生動的方式來理解和探索信息
    的頭像 發表于 07-17 14:19 ?531次閱讀
    主站蜘蛛池模板: 梅河口市| 鄱阳县| 淄博市| 河北省| 永清县| 永嘉县| 潮州市| 蓬莱市| 海淀区| 伊通| 会理县| 逊克县| 天全县| 华池县| 全椒县| 桃源县| 湟源县| 昭平县| 金华市| 木兰县| 上蔡县| 宿州市| 沐川县| 潜山县| 石楼县| 丘北县| 桐城市| 浦县| 太保市| 资溪县| 澎湖县| 乌兰浩特市| 冷水江市| 桃园县| 曲周县| 东乡族自治县| 宿州市| 广元市| 且末县| 手游| 林西县|