System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本申請涉及圖像數據處理,特別是涉及一種三維模型網格是否重復的判斷方法、裝置及存儲介質。
技術介紹
1、在航天、汽車、船舶等工業制造領域,以及三維建模與游戲開發領域,物體的詳細形態被精確地以三維模型的形式存儲。網格,作為三維模型的基本組成單元,由頂點、邊和面(多邊形)構成,它們共同定義了物體的形狀、表面和細節。如圖1所示的汽車三維模型,其前擋風玻璃、車門等各個部件均是由網格精心構建而成,這些網格共同定義了汽車的整體結構和細節。同樣地,在圖2所展示的一棵樹的三維模型中,每一片葉子也都是由多個網格元素組成的(如圖3所示),它是整棵樹三維模型不可或缺的組成部分。
2、在三維建模的過程中,為了提高存儲效率和模型利用率,通常會識別并合并那些相同的網格部分。例如,在圖1的汽車模型中,如果四個輪子相同,則僅需存儲一個輪子的網格,然后通過復制和定位來構建四個輪子。同樣地,在圖2的樹模型中,盡管葉子數量眾多,但只需存儲一組代表性的葉子網格,然后通過復制和變換來填充整棵樹。
3、然而,在現有技術中,網格去重算法是按照包圍盒、面積、邊的長度等屬性來判斷是否是重復網格的,通過這些判斷條件容易造成誤判,導致一些并不是重復(相同)的網格,被判斷為了重復網格,最后造成模型的準確性發生了很大的下降。例如包圍盒存在模糊性,包圍盒是一種簡單且快速的初步篩選工具,用于確定兩個對象是否可能相交或重疊。然而,它僅考慮了對象的最小外接矩形,忽略了內部的具體形狀和細節。因此,即使兩個網格的包圍盒完全相同或高度重疊,它們的實際形態仍可能存在顯著差異,從而
4、針對上述的現有技術中三維模型網格是否相同的判斷方法容易造成誤判的技術問題,目前尚未提出有效的解決方案。
技術實現思路
1、本公開的實施例提供了一種三維模型網格是否重復的判斷方法,以至少解決現有技術中存在的容易造成誤判的技術問題。
2、根據本公開實施例的一個方面,提供了一種三維模型網格是否重復的判斷方法,包括:分別計算三維模型中的第一網格和第二網格的特征向量和特征值,得到第一網格的第一特征向量和第一特征值,第二網格的第二特征向量和第二特征值;若第一特征值與第二特征值不同,則判斷第一網格和第二網格為不同的網格,否則根據第一特征向量和第二特征向量判斷第一網格和第二網格是否為相同的網格;其中,根據第一特征向量和第二特征向量判斷第一網格和第二網格是否為相同的網格包括:根據第一特征向量計算第一網格的第一局部坐標系,根據第二特征向量計算第二網格的第二局部坐標系;根據第一局部坐標系和第二局部坐標系,確定兩個網格之間的變換矩陣;從第一網格中通過采樣的方式抽取n個頂點坐標,并根據變換矩陣計算得到n個第一中間坐標點;對n個第一中間坐標點中的每一個點,在第二網格中查找是否有與第一中間坐標點相同的點,若沒有相同的點,則該第一中間坐標點為誤差點,計算所有誤差點的數量和s;計算誤差率,若r小于第一誤差率閾值,則判斷第一網格和第二網格在第一誤差率閾值范圍內是相同的網格;其中,n和s均為非負整數,且s小于等于n。
3、根據本公開實施例的另一個方面,還提供了一種存儲介質,存儲介質包括存儲的程序,其中,在程序運行時由處理器執行以上任意一項所述的方法。
4、根據本公開實施例的另一個方面,還提供了一種三維模型網格是否重復的判斷裝置,包括:計算模塊,用于分別計算三維模型中的第一網格和第二網格的特征向量和特征值,得到第一網格的第一特征向量和第一特征值,第二網格的第二特征向量和第二特征值;判斷模塊,用于判斷第一網格和第二網格是否為相同的網格,包括:若第一特征值與第二特征值不同,則判斷第一網格和第二網格為不同的網格,否則根據第一特征向量和第二特征向量判斷第一網格和第二網格是否為相同的網格;其中,根據第一特征向量和第二特征向量判斷第一網格和第二網格是否為相同的網格包括:根據第一特征向量計算第一網格的第一局部坐標系,根據第二特征向量計算第二網格的第二局部坐標系;根據第一局部坐標系和第二局部坐標系,確定兩個網格之間的變換矩陣;從第一網格中通過采樣的方式抽取n個頂點坐標,并根據變換矩陣計算得到n個第一中間坐標點;對n個第一中間坐標點中的每一個點,在第二網格中查找是否有與第一中間坐標點相同的點,若沒有相同的點,則該第一中間坐標點為誤差點,計算所有誤差點的數量和s;計算誤差率,若r小于第一誤差率閾值,則判斷第一網格和第二網格在第一誤差率閾值范圍內是相同的網格;其中,n和s均為非負整數,且s小于等于n。
5、根據本公開實施例的另一個方面,還提供了一種三維模型網格是否重復的判斷裝置,包括:處理器;以及存儲器,與處理器連接,用于為處理器提供處理以下處理步驟的指令:分別計算三維模型中的第一網格和第二網格的特征向量和特征值,得到第一網格的第一特征向量和第一特征值,第二網格的第二特征向量和第二特征值;若第一特征值與第二特征值不同,則判斷第一網格和第二網格為不同的網格,否則根據第一特征向量和第二特征向量判斷第一網格和第二網格是否為相同的網格;其中,根據第一特征向量和第二特征向量判斷第一網格和第二網格是否為相同的網格包括:根據第一特征向量計算第一網格的第一局部坐標系,根據第二特征向量計算第二網格的第二局部坐標系;根據第一局部坐標系和第二局部坐標系,確定兩個網格之間的變換矩陣;從第一網格中通過采樣的方式抽取n個頂點坐標,并根據變換矩陣計算得到n個第一中間坐標點;對n個第一中間坐標點中的每一個點,在第二網格中查找是否有與第一中間坐標點相同的點,若沒有相同的點,則該第一中間坐標點為誤差點,計算所有誤差點的數量和s;計算誤差率,若r小于第一誤差率閾值,則判斷第一網格和第二網格在第一誤差率閾值范圍內是相同的網格;其中,n和s均為非負整數,且s小于等于n。
6、在本公開實施例中,采用特征值檢驗法加抽樣檢測法相結合的方式,通過先使用特征值進行第一輪篩選,排除不同的網格,然后對特征值相同的網格,進一步通過特征向量,采用抽樣檢測的方式進行判斷,從而實現了提高三維模型網絡是否相同的判斷準確率的技術效果。進而解決了現有技術中三維模型網格是否相同的判斷方法容易造成誤判的技術問題。
本文檔來自技高網...【技術保護點】
1.一種三維模型網格是否重復的判斷方法,其特征在于,包括:
2.根據權利要求1所述的方法,其特征在于,所述N的值根據以下方式確定:
3.根據權利要求2所述的方法,其特征在于,所述采樣的方式包括:
4.根據權利要求1所述的方法,其特征在于,所述第一特征向量包括三個特征軸向量,和,其中:
5.根據權利要求4所述的方法,其特征在于,所述根據所述第一特征向量計算所述第一網格的第一局部坐標系,根據所述第二特征向量計算所述第二網格的第二局部坐標系包括:
6.根據權利要求5所述的方法,其特征在于,所述根據所述第一局部坐標系和所述第二局部坐標系,確定兩個網格之間的變換矩陣包括:
7.根據權利要求6所述的方法,其特征在于,所述從所述第一網格中通過采樣的方式抽取N個頂點坐標,并根據所述變換矩陣計算得到N個第一中間坐標點包括:
8.一種存儲介質,其特征在于,所述存儲介質包括存儲的程序,其中,在所述程序運行時由處理器執行權利要求1至7中任意一項所述的三維模型網格是否重復的判斷方法。
9.一種三維模型網格是否重
10.一種三維模型網格是否重復的判斷裝置,其特征在于,包括:
...【技術特征摘要】
1.一種三維模型網格是否重復的判斷方法,其特征在于,包括:
2.根據權利要求1所述的方法,其特征在于,所述n的值根據以下方式確定:
3.根據權利要求2所述的方法,其特征在于,所述采樣的方式包括:
4.根據權利要求1所述的方法,其特征在于,所述第一特征向量包括三個特征軸向量,和,其中:
5.根據權利要求4所述的方法,其特征在于,所述根據所述第一特征向量計算所述第一網格的第一局部坐標系,根據所述第二特征向量計算所述第二網格的第二局部坐標系包括:
6.根據權利要求5所述的方法,其特征在于,所...
【專利技術屬性】
技術研發人員:趙天,劉暢,劉國慶,李強,朱圓圓,
申請(專利權)人:北京圜暉科技有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。