本發(fā)明實施例涉及三維重建技術(shù)領(lǐng)域,尤其涉及一種三維點云的曲面重建方法和裝置。
背景技術(shù):
三維重建技術(shù)在業(yè)內(nèi)又被稱為網(wǎng)格重構(gòu)技術(shù),或者曲面重建技術(shù)。它是指在給定一組散亂的空間數(shù)據(jù)點X,且已知這些空間數(shù)據(jù)點位于未知的曲面U的前提下,求得一個三角網(wǎng)格曲面S,使得這個三角網(wǎng)格曲面S能較好的逼近原曲面U。三維重建技術(shù)在逆向工程、醫(yī)學掃描數(shù)據(jù)立體成像、交互曲面建模、三維傳真等領(lǐng)域有著廣泛的應(yīng)用。
三角化是三維重建技術(shù)中的一個重要操作?,F(xiàn)有的三角化過程主要有:Delaunay三角化算法、貪婪投影三角化算法,以及八叉樹算法。無論采用何種算法,由于原始采集數(shù)據(jù)有散亂、均勻和密集之分,各種算法進行三維重建時會不同程度的存在冗余,計算量較大,運行效率不高的弊病。
技術(shù)實現(xiàn)要素:
針對上述技術(shù)問題,本發(fā)明實施例提供了一種三維點云的曲面重建方法和裝置,以提高曲面重建的運行效率。
一方面,本發(fā)明實施例提供了一種三維點云的曲面重建方法,所述方法包括:
對點云數(shù)據(jù)進行平滑重采樣;
對平滑重采樣后的點云數(shù)據(jù)進行空間下采樣;
對下采樣后點云數(shù)據(jù)進行曲面三角化。
另一方面,本發(fā)明實施例還提供了一種三維點云的曲面重建裝置,所述裝置包括:
平滑重采樣模塊,用于對點云數(shù)據(jù)進行平滑重采樣;
下采樣模塊,用于對所述點云數(shù)據(jù)進行空間下采樣;
三角化模塊,用于對所述點云數(shù)據(jù)進行曲面三角化。
本發(fā)明實施例提供的三維點云的曲面重建方法和裝置,通過對點云數(shù)據(jù)進行平滑重采樣,對平滑重采樣后的點云數(shù)據(jù)進行空間下采樣,以及對下采樣后的點云數(shù)據(jù)進行曲面三角化,提高了曲面重建過程的運行效率。
附圖說明
通過閱讀參照以下附圖所作的對非限制性實施例所作的詳細描述,本發(fā)明的其它特征、目的和優(yōu)點將會變得更明顯:
圖1是本發(fā)明第一實施例提供的三維點云的曲面重建方法的流程圖;
圖2是本發(fā)明第二實施例提供的三維點云的曲面重建方法的流程圖;
圖3是本發(fā)明第三實施例提供的三維點云的曲面重建方法中離散點剔除處理的流程圖;
圖4是本發(fā)明第四實施例提供的三維點云的曲面重建方法中平滑重采樣處理的流程圖;
圖5是本發(fā)明第五實施例提供的三維點云的曲面重建方法中下采樣處理的流程圖;
圖6是本發(fā)明第六實施例提供的三維點云的曲面重建方法中三角化處理的流程圖;
圖7是本發(fā)明第七實施例提供的三維點云的曲面重建裝置的結(jié)構(gòu)圖。
具體實施方式
下面結(jié)合附圖和實施例對本發(fā)明作進一步的詳細說明??梢岳斫獾氖牵颂幩枋龅木唧w實施例僅僅用于解釋本發(fā)明,而非對本發(fā)明的限定。另外還需要說明的是,為了便于描述,附圖中僅示出了與本發(fā)明相關(guān)的部分而非全部結(jié)構(gòu)。
第一實施例
本實施例提供了三維點云的曲面重建方法的一種技術(shù)方案。在該技術(shù)方案中,該三維點云的曲面重建方法包括:對點云數(shù)據(jù)進行平滑重采樣;對點云數(shù)據(jù)進行空間下采樣;對點云數(shù)據(jù)進行曲面三角化。
參見圖1,該三維點云的曲面重建方法包括:
S11,對點云數(shù)據(jù)進行平滑重采樣。
可以理解的是,原始采集的點云數(shù)據(jù)并沒有經(jīng)過任何的處理。直接利用這樣的原始數(shù)據(jù)進行曲面模型,其結(jié)果生成的曲面的表面難免出現(xiàn)孔洞、突起這樣不平滑的現(xiàn)象。
在本實施例提供的曲面重建方法中,首先對原始的點云數(shù)據(jù)進行平滑重采樣。經(jīng)過上述平滑重采樣之后,由重采樣后的點云數(shù)據(jù)構(gòu)成的曲面具有更為光滑的表面,不需要再單獨對表面上的孔洞、突起等異常情形進行修復(fù)。
優(yōu)選的,在平滑重采樣的過程中,采用移動最小二乘算法,對原始點云數(shù)據(jù)進行平滑重采樣。
另外,在本實施例中,點云數(shù)據(jù)可以是激光雷達LiDAR點云數(shù)據(jù),也可以是多視圖立體(Multi-view Stereo,MVS)點云數(shù)據(jù)。
S12,對所述點云數(shù)據(jù)進行空間下采樣。
一般來說,原始的點云數(shù)據(jù)的數(shù)據(jù)量是海量的。這一點首先體現(xiàn)在,原始點云數(shù)據(jù)中包括的位置點的個數(shù)是海量的。而在實際的曲面確定中,并不是所有的點的存在都很重要。因此,為了降低曲面重建的計算量,提高曲面重建的運行效率,對點云數(shù)據(jù)進行空間下采樣。
優(yōu)選的,在對點云數(shù)據(jù)進行空間下采樣時,采用預(yù)先給定的體素網(wǎng)格對所述點云數(shù)據(jù)進行空間下采樣。
S13,對所述點云數(shù)據(jù)進行曲面三角化。
在對點云數(shù)據(jù)進行空間下采樣之后,點云數(shù)據(jù)的數(shù)據(jù)量明顯降低。此時,在對點云數(shù)據(jù)進行曲面三角化,曲面重建的運行效率將大為提高。
優(yōu)選的,在對所述點云數(shù)據(jù)進行曲面三角化時,首先估計模型的指示函數(shù)和提取等值面,再通過求解泊松問題完成曲面三角化。
本實施例通過對點云數(shù)據(jù)進行平滑重采樣,對所述點云數(shù)據(jù)進行空間下采樣,以及對所述點云數(shù)據(jù)進行曲面三角化,顯著提高了曲面重建的運行效率。
第二實施例
本實施例以本發(fā)明上述實施例為基礎(chǔ),進一步的提供了三維點云的曲面重建方法的另一種技術(shù)方案。在該技術(shù)方案中,所述三維點云的曲面重建方法還包括:在對所述點云數(shù)據(jù)進行平滑重采樣之前,剔除點云數(shù)據(jù)中的離群點。
參見圖2,該三維點云的曲面重建方法包括:
S21,剔除點云數(shù)據(jù)中的離群點。
由于激光掃描過程中通常會產(chǎn)生密度不均勻的點云數(shù)據(jù)集,且測量中的誤差會產(chǎn)生稀疏的離群點。離群點指的是一些與被測物體點云相距較遠的離散點。離群點的存在可能會增加曲面重建過程的計算量,另外還可能還會導(dǎo)致錯誤的數(shù)值,反過來有可能導(dǎo)致點云拼接過程失敗。因此,在本實施例中,在運行正常的曲面重建過程之前,首先在點云數(shù)據(jù)中剔除離群點。
具體的,根據(jù)所述點云數(shù)據(jù)中各個空間點與同它相鄰的臨近點之間的平均空間距離,及高斯分布特征來判斷所述點云數(shù)據(jù)中哪些點是離群點。更為具體的,首先計算點云數(shù)據(jù)中各個點與其臨近點之間的平均距離。然后通過將上述平均距離與預(yù)設(shè)的距離閾值進行比較,判定哪些離散點是離群點。最后將認定的離群點從所述點云數(shù)據(jù)中剔除。
S22,對點云數(shù)據(jù)進行平滑重采樣。
S23,對所述點云數(shù)據(jù)進行空間下采樣。
S24,對所述點云數(shù)據(jù)進行曲面三角化。
本實施例通過在對點云數(shù)據(jù)進行平滑重采樣之前,剔除所述點云數(shù)據(jù)中的離群點,使得在對曲面進行重建時采用的樣本點云數(shù)據(jù)中不再包含離群點,從而使得曲面重建的計算量更小,運行效率更高。
第三實施例
本實施例以本發(fā)明上述實施例為基礎(chǔ),進一步的提供了三維點云的曲面重建方法中離散點剔除的一種技術(shù)方案。在該技術(shù)方案中,剔除所述點云數(shù)據(jù)中的離群點包括:計算所述點云數(shù)據(jù)中每個點與其臨近點之間的平均距離;若所述平均距離超出預(yù)設(shè)的距離閾值,判定所述點為離群點;將所述離群點從所述點云數(shù)據(jù)中剔除。
參見圖3,剔除所述點云數(shù)據(jù)中的離群點包括:
S31,計算所述點云數(shù)據(jù)中每個點與其臨近點之間的平均距離。
具體的,根據(jù)如下公式計算上述平均距離:
其中,K為點Pi在三維空間中的臨近點個數(shù),di是離散點Pi與其在三維空間中的臨近點之間的平均距離,Pj則是上述點Pi在三維空間中的臨近點。
S32,若所述平均距離超出預(yù)設(shè)的距離閾值,判定所述點為離群點。
一般來講,空間中各個點與其臨近點的平均距離呈現(xiàn)高斯分布。根據(jù)平均距離的上述統(tǒng)計特征,首先計算上述平均距離的均值和方差。具體的,根據(jù)如下公式計算平均距離的均值μ:
其中,di是空間點Pi的平均距離,N是所述點集中點的總個數(shù)。
另外,根據(jù)如下公式計算平均距離的標準差σ:
其中,di是空間點Pi的平均距離,N所有點集中點的總數(shù),μ是所述平均距離的均值。
進而,滿足如下不等式的空間點Pi可以被認定為離群點:
|di-μ|>λσ
其中,di是空間點Pi的平均距離,μ是所述平均距離的均值,σ是平均距離的標準差,λ是閾值系數(shù)。而且,閾值系數(shù)的取值大于零。一般來講,λ的取值越大,識別得到的離群點的數(shù)量越少。
S33,將所述離群點從所述點云數(shù)據(jù)中剔除。
由于已經(jīng)從點云數(shù)據(jù)中識別出離群點,所以可以從點云數(shù)據(jù)中將上述離群點剔除。
本實施例通過計算所述點云數(shù)據(jù)中各個點與其臨近點之間的平均距離,若所述平均距離超出預(yù)設(shè)的距離閾值,判定所述離散點為離群點,以及將所述離群點從所述點云數(shù)據(jù)中剔除,實現(xiàn)了從點云數(shù)據(jù)中對離群點的剔除。
第四實施例
本實施例以本發(fā)明上述實施例為基礎(chǔ),進一步的提供了三維點云的曲面重建方法中重采樣的一種技術(shù)方案。在該技術(shù)方案中,對點云數(shù)據(jù)進行平滑重采樣包括:計算點云集中每個點的法向量;利用MLS,根據(jù)自定義參數(shù)對點云數(shù)據(jù)進行曲面擬合。
參見圖4,對點云數(shù)據(jù)進行平滑重采樣包括:
S41,計算點云集中每個點的法向量。
優(yōu)選的,根據(jù)所述點云集中各個點的臨近點相互之間的位置,求得該點的法向量。具體的,找出一個空間點與其相鄰的空間點,然后根據(jù)此點及其鄰近點計算協(xié)方差矩陣,將協(xié)方差矩陣中最小特征值所對應(yīng)的特征向量作為這個點的法向量。
S42,利用MLS算法,根據(jù)自定義參數(shù)對點云數(shù)據(jù)進行曲面擬合。
在本實施例中,利用MLS算法進行曲面擬合,得到擬合以后的曲面。在上述曲面擬合的過程中,需要使用一些自定義參數(shù)。示例性的,這些自定義參數(shù)包括:多項式擬合次數(shù),高斯權(quán)重系數(shù)等。在點集中各個點所定義的平面局部鄰域內(nèi),根據(jù)點密度均勻取點,以取出的點在擬合曲面上的投影為重采樣后的點。
本實施例通過計算點云集中每個點的法向量,利用MLS算法,根據(jù)自定義參數(shù)對點云數(shù)據(jù)進行多項式擬合,通過上采樣方法實現(xiàn)了對點云數(shù)據(jù)的重采樣。
第五實施例
本實施例以本發(fā)明上述實施例為基礎(chǔ),進一步的提供了三維點云的曲面重建方法中下采樣的一種技術(shù)方案。在該技術(shù)方案中,對所述點云數(shù)據(jù)進行空間下采樣包括:建立由3D包圍盒組成的三維體素網(wǎng)格,以及將每個包圍盒內(nèi)的所有點都由位于此包圍盒內(nèi)的點集的重心來近似。
參見圖5,對所述點云數(shù)據(jù)進行空間下采樣包括:
S51,建立由3D包圍盒組成的三維體素網(wǎng)格。
在本實施例中,通過一個給定的三維體素網(wǎng)格進行點云數(shù)據(jù)的空間下采樣。具體的,首先建立一個三維體素網(wǎng)格。所述三維體素網(wǎng)格由一組很小的3D包圍盒構(gòu)成。每個3D包圍盒在空間中具有一定的體積,占據(jù)一定的空間。而且,在三維體素網(wǎng)格的建立過程中,3D包圍盒的體積大小應(yīng)當考慮整個點云數(shù)據(jù)的空間密度。
S52,將每個包圍盒內(nèi)的所有點都由位于此包圍盒內(nèi)的點集的重心來近似。
完成了上述三維體素網(wǎng)格的建立之后,對點云數(shù)據(jù)進行下采樣。具體的,在上述三維體素網(wǎng)格的一個3D包圍盒中的點云數(shù)據(jù)的空間點,求取它們的重心,然后利用求取得到的重心取代該包圍盒中的所有空間點。需要注意的是,在重心求取的過程中,一個包圍盒中的空間點具有相同的地位,并不會因為位置不同而對于不同的空間點應(yīng)用不同的權(quán)重。
本實施例建立由3D包圍盒組成的三維體素網(wǎng)格,以及將每個包圍盒內(nèi)的所有點都由位于此包圍盒內(nèi)的點集的重心來近似,實現(xiàn)了對點云數(shù)據(jù)的空間下采樣。
第六實施例
本實施例以本發(fā)明上述實施例為基礎(chǔ),進一步的提供了三維點云的曲面重建方法中三角化的一種技術(shù)方案。在該技術(shù)方案中,對所述點云數(shù)據(jù)進行泊松曲面重建包括:估計點云模型的指示函數(shù)和提取等值面;求解泊松問題完成曲面重建。
參見圖6,對所述點云數(shù)據(jù)進行曲面三角化包括:
S61,估計點云模型的指示函數(shù)和提取等值面。
若點位于模型內(nèi),指示函數(shù)定義為1,否則,定義為0。等值面提取方法為:首先,選擇一個等值,使得提取的等值面來對樣本點的位置進行逼近,然后通過計算指示函數(shù)來提取相應(yīng)的等值面。
S62,求解泊松問題完成曲面重建。
泊松曲面重建主要包括以下步驟:定義梯度場、估計向量場及解泊松問題。泊松曲面重建的過程,實際上是使重建曲面的梯度場逼近向量場的過程。當梯度場與原始的向量場之間的差異最小時,即可認為完成了上述泊松曲面的重建過程。
本實施例通過泊松曲面重建對經(jīng)過下采樣后的點云數(shù)據(jù)進行曲面重建。此方法是一種基于隱函數(shù)的三角網(wǎng)格重建算法,該類方法通過對點云數(shù)據(jù)進行最優(yōu)化的插值處理來獲得近似曲面,實現(xiàn)了對點云數(shù)據(jù)的曲面重建。
第七實施例
本實施例提供了三維點云的曲面重建裝置的一種技術(shù)方案。在該技術(shù)方案中,所述三維點云的曲面重建裝置包括:重采樣模塊72、下采樣模塊73,以及三角化模塊74。
所述重采樣模塊72用于對點云數(shù)據(jù)進行平滑重采樣。
所述下采樣模塊73用于對所述點云數(shù)據(jù)進行空間下采樣。
所述三角化模塊74用于對所述點云數(shù)據(jù)進行曲面三角化。
優(yōu)選的,所述三維點云的曲面重建裝置還包括:離群點剔除模塊71。
所述離群點剔除模塊71用于在對所述點云數(shù)據(jù)進行平滑重采樣之前,剔除所述點云數(shù)據(jù)中的離群點。
優(yōu)選的,所述重采樣模塊72具體用于:利用移動最小二乘算法,對所述點云數(shù)據(jù)進行平滑重采樣。
優(yōu)選的,所述下采樣模塊73具體用于:利用給定的體素網(wǎng)格對所述點云數(shù)據(jù)進行空間下采樣。
優(yōu)選的,所述三角化模塊74具體用于:利用泊松曲面重建算法,對所述點云數(shù)據(jù)進行曲面三角化。
優(yōu)選的,所述離群點剔除模塊包括:平均距離計算單元、離群點判定單元,以及剔除單元。
所述平均距離計算單元用于計算所述點云數(shù)據(jù)中各個點與其臨近點之間的平均距離。
所述離群點判定單元用于當所述平均距離超出預(yù)設(shè)的距離閾值之時,判定所述離散點為離群點。
所述剔除單元用于將所述離群點從所述點云數(shù)據(jù)中剔除。
優(yōu)選的,所述點云數(shù)據(jù)包括:激光雷達LiDAR點云數(shù)據(jù),或者多視圖立體MVS點云數(shù)據(jù)。
以上所述僅為本發(fā)明的優(yōu)選實施例,并不用于限制本發(fā)明,對于本領(lǐng)域技術(shù)人員而言,本發(fā)明可以有各種改動和變化。凡在本發(fā)明的精神和原理之內(nèi)所作的任何修改、等同替換、改進等,均應(yīng)包含在本發(fā)明的保護范圍之內(nèi)。