點云網(wǎng)格簡化系統(tǒng)及方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及一種點云網(wǎng)格處理系統(tǒng)及方法,特別是關(guān)于一種點云網(wǎng)格簡化系統(tǒng)及 方法。
【背景技術(shù)】
[0002] 在點云網(wǎng)格處理中,網(wǎng)格處理的速度是和網(wǎng)格數(shù)量成正比的。為了提高運算的速 度,在保證證精度的前提下應該盡量降低網(wǎng)格的數(shù)量,因此網(wǎng)格簡化是網(wǎng)格處理中的重要 步驟。在網(wǎng)格的實際應用中,用戶可能只對網(wǎng)格的部分區(qū)域感興趣,并希望該區(qū)域有較高的 精度,而其它區(qū)域只要達到基本要求即可。網(wǎng)格簡化既要減少網(wǎng)格數(shù)量,又要保證模型形狀 特征。網(wǎng)格簡化的方法有很多種,但對于網(wǎng)格數(shù)目大,物體形狀復雜等情況,沒有很好的解 決方法。然而,現(xiàn)有的網(wǎng)格簡化算法大多只考慮了模型的幾何、拓撲信息,而沒有考慮模型 的封閉性問題。因此,網(wǎng)格簡化效果不佳,簡化不能很好的逼近原始網(wǎng)格。
【發(fā)明內(nèi)容】
[0003] 鑒于以上內(nèi)容,有必要提供一種點云網(wǎng)格簡化系統(tǒng)及方法,能夠利根據(jù)頂點法向 約束原則刪除不滿足約束的網(wǎng)格頂點,并采用局部重新三角網(wǎng)格化來達到網(wǎng)格簡化的效 果。
[0004] 所述法人點云網(wǎng)格簡化系統(tǒng)運行于計算機裝置中,該系統(tǒng)包括:網(wǎng)格輸入模塊,用 于接收點云三角網(wǎng)格化后的原始網(wǎng)格模型,以及接收根據(jù)網(wǎng)格簡化精度要求輸入的網(wǎng)格簡 化比例;法向面計算模塊,用于計算原始網(wǎng)格模型中每一個網(wǎng)格頂點的法向面,以及計算每 一個網(wǎng)格頂點到其法向面的距離;刪除點判定模塊,用于根據(jù)輸入的簡化比例和每一個網(wǎng) 格頂點到法向面的距離判定出對原始網(wǎng)格模型影響較小的點,以及從原始網(wǎng)格模型中將對 原始網(wǎng)格模型影響較小的點和包含該點的網(wǎng)格刪除;局部網(wǎng)格化模塊,用于當從原始網(wǎng)格 模型中刪除部份點之后,將原始網(wǎng)格模型中局部沒有網(wǎng)格的點重新進行局部三角網(wǎng)格化; 網(wǎng)格處理模塊,用于將局部網(wǎng)格化的網(wǎng)格與原來沒有刪除的網(wǎng)格和點結(jié)合組成一個新網(wǎng)格 模型,以及將該新網(wǎng)格模型進行平滑處理得到與原始網(wǎng)格具有幾何特征相似的簡化網(wǎng)格模 型。
[0005] 所述的點云網(wǎng)格簡化方法應用于計算機裝置中,該方法包括步驟:接收點云三角 網(wǎng)格化后的原始網(wǎng)格模型,并接收根據(jù)網(wǎng)格簡化精度要求輸入的網(wǎng)格簡化比例;計算原始 網(wǎng)格模型中每一個網(wǎng)格頂點的法向面,并計算每一個網(wǎng)格頂點到其法向面的距離;根據(jù)輸 入的簡化比例和每一個網(wǎng)格頂點到法向面的距離判定出對原始網(wǎng)格模型影響較小的點;從 原始網(wǎng)格模型中將對原始網(wǎng)格模型影響較小的點和包含該點的網(wǎng)格刪除;當從原始網(wǎng)格模 型中刪除部份點之后,將原始網(wǎng)格模型中局部沒有網(wǎng)格的點重新進行局部三角網(wǎng)格化;將 局部網(wǎng)格化的網(wǎng)格與原來沒有刪除的網(wǎng)格和點結(jié)合組成一個新網(wǎng)格模型,并將新網(wǎng)格模型 進行平滑處理得到與原始網(wǎng)格具有幾何特征相似的簡化網(wǎng)格模型。
[0006] 相較于現(xiàn)有技術(shù),本發(fā)明所述的點云網(wǎng)格簡化系統(tǒng)及方法,能夠利用網(wǎng)格頂點法 向面的距離約束來刪除對點云網(wǎng)格影響比較小的點和網(wǎng)格,并采用局部重新三角網(wǎng)格化來 達到網(wǎng)格簡化的效果。具有點云計算速度快且占用內(nèi)存少的優(yōu)點,可對任何形狀、任何類型 的點云網(wǎng)格進行補孔以及對復雜物件的點云進行不失真簡化處理。
【附圖說明】
[0007] 圖1是本發(fā)明點云網(wǎng)格簡化系統(tǒng)較佳實施例的運行環(huán)境示意圖。
[0008] 圖2是本發(fā)明點云網(wǎng)格簡化方法較佳實施例的流程圖。
[0009] 圖3采是用頂點刪除法來簡化點云網(wǎng)格模型的示意圖。
[0010] 圖4采用Delaunay網(wǎng)格化法進行局部網(wǎng)格化的示意圖。
[0011] 圖5是針對原始網(wǎng)格模型進行網(wǎng)格簡化處理的示意圖。
[0012] 主要元件符號說明
[0013] 計算機裝置 1
[0014] 點云網(wǎng)格簡化系統(tǒng) 10
[0015] 點云網(wǎng)格輸入模塊 101
[0016] 法向面計算模塊 102
[0017] 刪除點判定模塊 103
[0018] 局部網(wǎng)格化模塊 104
[0019] 網(wǎng)格處理模塊 105
[0020] 輸入設(shè)備 11
[0021] 存儲設(shè)備 12
[0022] 處理器 13
[0023] 掃描設(shè)備 2
[0024] 目標物件 3
【具體實施方式】
[0025] 參閱圖1所示,是本發(fā)明點云網(wǎng)格簡化系統(tǒng)佳實施例的運行環(huán)境示意圖。在本實 施例中,所述的點云網(wǎng)格簡化系統(tǒng)10安裝并運行于計算機裝置1中,該計算機裝置1還包 括,但不僅限于,輸入設(shè)備11、存儲設(shè)備12及處理器13。該計算裝置1安裝有操作系統(tǒng) (例如Windows操作系統(tǒng)或Linux操作系統(tǒng))以及各種應用系統(tǒng)(例如軟件程序及應用程 序等)。所述的計算機裝置1可以為一種個人計算機(PC)、工作站計算機(Workstation computer)、筆記本計算機(Notebook)、服務器(Server)或者其他電子計算裝置。
[0026] 所述的計算機裝置1連接有一種掃描設(shè)備2,該掃描設(shè)備2用于對目標物件3 (例 如電子元器件)進行掃描(例如激光掃描)來獲取該目標物件3的點云。所述的掃描設(shè)備 2可以為一種激光掃描儀、3D光學掃描儀或其它合適的電子掃描設(shè)備。
[0027] 所述的輸入設(shè)備11用于輸入需要簡化點云網(wǎng)格數(shù)量的簡化比例,例如按照0%至 100%之間的任何一比例來簡化點云的數(shù)量。所述的存儲設(shè)備12包括,但不僅限于,內(nèi)存、 硬盤以及外部存儲設(shè)備等。所述的處理器13包括,但不僅限于,中央處理器(CPU)、微處理 器或其它數(shù)據(jù)處理機等。
[0028] 在本實施例中,所述的點云網(wǎng)格簡化系統(tǒng)10包括,但不僅限于,點云網(wǎng)格輸入模 塊101、法向面計算模塊102、刪除點判定模塊103、局部網(wǎng)格化模塊104及網(wǎng)格處理模塊 105。本發(fā)明所稱的功能模塊是指一種能夠被計算機裝置1的處理器13所執(zhí)行并且能夠完 成固定功能的一系列程序指令段,其存儲于計算機裝置1的存儲設(shè)備12中。關(guān)于各功能模 塊101-105將在圖2的流程圖中作詳細描述。
[0029] 參閱圖2所示,是本發(fā)明點云網(wǎng)格簡化方法較佳實施例的流程圖。在本實施例中, 該方法應用于計算機裝置1中,能夠利用網(wǎng)格頂點法向面的距離約束來刪除對點云網(wǎng)格影 響比較小的點和網(wǎng)格,并采用局部重新三角網(wǎng)格化來達到網(wǎng)格簡化的效果。具有點云計算 速度快且占用內(nèi)存少的優(yōu)點,可對任何形狀、任何類型的點云網(wǎng)格進行補孔以及對復雜物 件的點云進行不失真簡化處理。
[0030] 步驟S21,網(wǎng)格輸入模塊101利用掃描設(shè)備2掃描目標物件3得到點云,并將所述 點云進行三角網(wǎng)格化得到原始網(wǎng)格模型。在本實施例中,網(wǎng)格輸入模塊101可以接收從輸 入設(shè)備11直接輸入的進行點云三角網(wǎng)格化后的網(wǎng)格模型。所述掃描設(shè)備2能夠?qū)δ繕宋?件3 (例如電子元器件)進行掃描來獲取該目標物件3的點云。所述的點云三角網(wǎng)格化就是 將點云數(shù)據(jù)進行三角形網(wǎng)格化得到三角網(wǎng)格化模型,如圖5A所示的原始網(wǎng)格模型包含許 多三角化的點云網(wǎng)格?,F(xiàn)有技術(shù)存在的許多點云三角網(wǎng)格化的方法來得到原始網(wǎng)格模型, 在此不作具體描述。
[0031] 步驟S22,云網(wǎng)格輸入模塊101接收使用者根據(jù)網(wǎng)格簡化的精度要求從輸入設(shè)備 11輸入的需要簡化點云網(wǎng)格數(shù)量的簡化比例。在本實施例中,使用者根據(jù)需要可以按照 0%至100%之間的任何一比例來簡化點云網(wǎng)格的數(shù)量,例如10%或50%等。如圖5B所示 的簡化網(wǎng)格模型的簡化比例為50%,而圖5C所示的簡化網(wǎng)格模型的簡化比例為10%。
[0032] 步驟S23,法向面計算模塊102計算原始網(wǎng)格模型中每一個網(wǎng)格頂點的法向面,并 計算每一個網(wǎng)格頂點到其法向面的距離。在本實例中,計算網(wǎng)格頂點的法向面按照如下算 法:假設(shè)原始網(wǎng)格模型中共享頂點v〇的三角形有k個,例如,分別為□ v0vlv2, □ v0v2v3… □ vOvk-lvk, □ vOvkvl,這些k個三角形的面積分別為Sl,S2,…,Sk,其法向量分別為nl, n2,···,'那么定義每一個網(wǎng)格頂點的法向面的法向量如下:
[0033]
搭每一個網(wǎng)格頂點的法向量單位化:
,定義每一個三角形
的中心點為__即 v0,
[0034] 其中,頂總vU的汰|n」囬m是經(jīng)過中心點?)法向為η的平面,當法向面計 算模塊102計算出頂點νΟ的法向面之后,就可以計算出頂點νΟ到法向面的距離 iftytance=〇〇-v〇r"。當所有網(wǎng)格頂點到其法向面的距離被計算出來后,其中,網(wǎng)格頂點 到其法向面的距離越大,說明這個網(wǎng)格頂點對整個網(wǎng)格模型的幾何特征影響越大。
[0035] 步驟S24,刪除點判定模塊103根據(jù)輸入的簡化比例和每一個網(wǎng)格頂點到法向面 的距離判定出對原始網(wǎng)格模型影響較小的點,并從原始網(wǎng)格模型中將該點和包含該點的網(wǎng) 格刪除。一般地,點云網(wǎng)格簡化實質(zhì)就是減少網(wǎng)格模型的點和面