一種基于三維散亂稠密點(diǎn)云的三角網(wǎng)格重構(gòu)方法
【專利摘要】本發(fā)明公開了一種面向三維散亂稠密點(diǎn)云,基于三維Delaunay四面體剖分和網(wǎng)格生長(zhǎng)法的三角網(wǎng)格重構(gòu)方法及其理論基礎(chǔ)。該理論是基于著名的三角網(wǎng)格重構(gòu)算法Crust算法理論的進(jìn)一步推導(dǎo)出的粗略分離特性。本發(fā)明基于三維散亂稠密點(diǎn)云的三角網(wǎng)格重構(gòu)方法,要求在兩個(gè)距離近或曲率大的對(duì)頂曲面部分采樣稠密。原理為:先對(duì)所有點(diǎn)云進(jìn)行三維Delaunay四面體剖分,再根據(jù)粗略分離特性通過(guò)判斷三角形的交叉值抽取出屬于物體表面的部分三角形面片,再?gòu)闹羞x擇初始前沿三角形,最后從初始前沿三角形不斷擴(kuò)展形成整個(gè)曲面的三角網(wǎng)格。本發(fā)明著重改善以往三角網(wǎng)格剖分算法速度慢的問(wèn)題,從而提高算法速度,并且生成的三角網(wǎng)格質(zhì)量良好,適應(yīng)性廣。
【專利說(shuō)明】—種基于三維散亂稠密點(diǎn)云的三角網(wǎng)格重構(gòu)方法【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及對(duì)來(lái)自三維掃描設(shè)備的三維散亂點(diǎn)云進(jìn)行曲面重構(gòu),主要是面向三維散亂點(diǎn)云的三角網(wǎng)格重建技術(shù)和方法。
【背景技術(shù)】
[0002]隨著信息化社會(huì)的到來(lái),無(wú)論是在科學(xué)研究上,還是在工程應(yīng)用中,三維幾何模型已經(jīng)成為一種重要的數(shù)據(jù)表示形式。從曲面的三維采樣點(diǎn)恢復(fù)出曲面的三維幾何模型稱之為曲面重建。通過(guò)對(duì)三維散亂點(diǎn)云的網(wǎng)格重建是曲面重建的一種重要方式。網(wǎng)格重建技術(shù)應(yīng)用廣泛,包括有限元分析、計(jì)算機(jī)圖形學(xué)、科學(xué)計(jì)算可視化、生物醫(yī)學(xué)、地理信息系統(tǒng)、逆向工程、博物館考古的傳播、特效、虛擬世界等。
[0003]目前的三維測(cè)量設(shè)備能夠在短時(shí)間內(nèi)得到數(shù)萬(wàn)乃至幾十萬(wàn)數(shù)據(jù)點(diǎn),一方面,可以反映更精細(xì)復(fù)雜的曲面特征,但另一方面,對(duì)曲面構(gòu)造的效率和效果提出了更高的要求。
[0004]只要采樣點(diǎn)足夠,三角網(wǎng)格理論上可以直接逼近任何復(fù)雜的曲面,也可以在三角網(wǎng)格基礎(chǔ)上進(jìn)行曲面重構(gòu)。
【發(fā)明內(nèi)容】
[0005]本發(fā)明的目的在于:提出了一種新的面向三維散亂點(diǎn)云的三角網(wǎng)格重構(gòu)方法及其理論,該方法基于提出的粗 略分離特性理論,結(jié)合三維Delaunay四面體剖分和三角網(wǎng)格生長(zhǎng)法進(jìn)行三角網(wǎng)格剖分,著重改善以往三角網(wǎng)格重構(gòu)方法速度慢的問(wèn)題,從而提高算法速度,并且生成的三角網(wǎng)格質(zhì)量良好,適應(yīng)性廣。
[0006]為了達(dá)到上述目的,本發(fā)明基于三維散亂稠密點(diǎn)云的三角網(wǎng)格重構(gòu)方法,步驟是:先對(duì)所有點(diǎn)云進(jìn)行三維Delaunay四面體剖分,再根據(jù)粗略分離特性通過(guò)判斷三角形交叉值抽取出屬于物體表面的部分三角形面片來(lái)初始化網(wǎng)格曲面,然后選擇初始前沿三角形,最后從前沿三角形擴(kuò)展形成整個(gè)三角網(wǎng)格曲面。
[0007]具體步驟如下:
[0008]第一步:導(dǎo)入三維散亂點(diǎn)云數(shù)據(jù);
[0009]第二步:對(duì)導(dǎo)入點(diǎn)云數(shù)據(jù)進(jìn)行三維Delaunay四面體剖分,所有形成的三角形都為Delaunay三角形,計(jì)算每個(gè)三角形的交叉值;
[0010]第三步:根據(jù)粗略分離特性通過(guò)判斷交叉值抽取部分三角形初始化三角網(wǎng)格曲面;
[0011]第四步:選擇初始前沿三角形,從初始前沿三角形不斷擴(kuò)展網(wǎng)格曲面,完善沒(méi)有抽取出來(lái)的物體表面三角形,直到輸出整個(gè)重構(gòu)三維網(wǎng)格曲面。
[0012]其中,第三步的過(guò)程為:選取交叉值〈-0.2的三角形,選出物體表面的三角形;建立一個(gè)空棧,每條前沿邊依次加進(jìn)這個(gè)空棧,形成前沿邊棧。
[0013]第四步包括如下步驟:
[0014]步驟4.1:對(duì)每條前沿邊,定義一個(gè)以搜索點(diǎn)為球心的搜索球,搜索球內(nèi)的候選點(diǎn)與前沿邊組成的Delaunay三角形都為候選三角形;如果在搜索范圍內(nèi)沒(méi)有找到候選點(diǎn),則該前沿邊被認(rèn)為是邊界邊;
[0015]其中,所述搜索球的定義為:選擇與前沿三角形在同一平面上并且與前沿邊構(gòu)成正三角形的點(diǎn)為搜索球球心,前沿邊長(zhǎng)度為半徑的搜索球;
[0016]步驟4.2:從候選三角形里選取和前沿三角形夾角最大的唯一三角形,使之成為新的前沿三角形。檢查新的前沿三角形的各條邊原來(lái)是否是前沿邊,如果原來(lái)是前沿邊,則跳出前沿邊棧變?yōu)榉乔把剡叄蝗绻瓉?lái)不是前沿邊,則變?yōu)榍把剡叄覍⑿碌那把剡吶霔!?br>
[0017]步驟四不斷重復(fù),直到前沿邊棧為空停止。
[0018]本發(fā)明面向三維散亂稠密點(diǎn)云,是基于三維Delaunay四面體剖分和網(wǎng)格生長(zhǎng)法的三角網(wǎng)格重構(gòu)方法及其理論基礎(chǔ)。該理論是基于著名的三角網(wǎng)格重構(gòu)算法Crust算法的理論進(jìn)一步推導(dǎo)出的粗略分離特性。該方法要求在兩個(gè)距離近或曲率大的對(duì)頂曲面部分采樣稠密。該方法的原理如下:先對(duì)所有點(diǎn)云進(jìn)行三維Delaunay四面體剖分,再根據(jù)粗略分離特性通過(guò)判斷三角形的交叉值抽取出屬于物體表面的部分三角形面片,再?gòu)闹羞x擇初始前沿三角形,最后從初始前沿三角形不斷擴(kuò)展形成整個(gè)曲面的三角網(wǎng)格。三角網(wǎng)格重構(gòu)方法無(wú)論是在科學(xué)研究上,還是在工程應(yīng)用中都有重要意義。本發(fā)明著重改善以往三角網(wǎng)格重構(gòu)方法速度慢的問(wèn)題,并且生成的三角網(wǎng)格質(zhì)量良好,適應(yīng)性廣。
【專利附圖】
【附圖說(shuō)明】
[0019]圖1是二維空間和三維空間中的中軸。
[0020]圖1 (a)是二維空間中的中軸示例。
[0021]圖1 (b)是三維空間中的中軸示例。
[0022]圖2是局部特征值LFS (P)的定義。
[0023]圖3是交叉角的定義。
[0024]圖3 Ca)是二維空間中的交叉角示意圖。
[0025]圖3 (b)是三維空間中的交叉角示意圖。
[0026]圖4是根據(jù)公共邊的兩個(gè)關(guān)聯(lián)VOTonoi點(diǎn)的位置,該公共邊關(guān)聯(lián)的兩個(gè)外接圓相交情況的三種分類。
[0027]圖5是定理I的證明圖示。
[0028]圖6是本發(fā)明理論部分第(ii)部分一些討論的圖示。
[0029]圖7是前沿系列和搜索系列的定義圖示。
[0030]圖8是本發(fā)明算法中各步驟中間結(jié)果圖。
[0031]圖8 Ca)是本發(fā)明算法實(shí)例手模型的點(diǎn)云數(shù)據(jù)模型。
[0032]圖8 (b)是本發(fā)明算法對(duì)導(dǎo)入點(diǎn)云數(shù)據(jù)進(jìn)行Delaunay四面體剖分的結(jié)果圖。
[0033]圖8 (c)是本發(fā)明算法形成的初始網(wǎng)格曲面。
[0034]圖8 (d)是本發(fā)明算法實(shí)例的三角剖分結(jié)果,即形成的最終三角網(wǎng)格曲面?!揪唧w實(shí)施方式】
[0035]本發(fā)明是基于三維散亂稠密點(diǎn)云的三角網(wǎng)格重構(gòu)方法,技術(shù)方案是:先對(duì)所有點(diǎn)云進(jìn)行三維Delaunay四面體剖分,再根據(jù)粗略分離特性通過(guò)判斷三角形交叉值抽取出屬于物體表面的部分三角形面片來(lái)初始化網(wǎng)格曲面,然后選擇初始前沿三角形,最后從前沿三角形擴(kuò)展形成整個(gè)三角網(wǎng)格曲面。具體步驟為:第一步:導(dǎo)入三維散亂點(diǎn)云數(shù)據(jù);第二步:對(duì)導(dǎo)入點(diǎn)云數(shù)據(jù)進(jìn)行三維Delaunay四面體剖分,所有形成的三角形都為Delaunay三角形,計(jì)算每個(gè)三角形的交叉值;第三步:根據(jù)粗略分離特性通過(guò)判斷交叉值抽取部分三角形初始化三角網(wǎng)格曲面;第四步:選擇初始前沿三角形,從初始前沿三角形不斷擴(kuò)展網(wǎng)格曲面,完善沒(méi)有抽取出來(lái)的物體表面三角形,直到輸出整個(gè)重構(gòu)三維網(wǎng)格曲面。
[0036]本發(fā)明提出了一種面向三維散亂稠密點(diǎn)云的三角網(wǎng)格重構(gòu)方法及其理論,其特征在于以下方面:
[0037](I)基于Crust算法理論的粗略分離特性,包括交叉角的粗略分離特性和交叉值的粗略分離特性。在二維曲線重構(gòu)問(wèn)題中,當(dāng)采樣稠密尤其是在兩段距離近或曲率大的對(duì)頂曲線部分時(shí),曲線上兩個(gè)臨近采樣點(diǎn)形成的Delaunay邊的交叉角趨向于鈍角或直角,其它邊的交叉角趨向于銳角或直角,這種性質(zhì)被稱為交叉角的粗略分離特性。其對(duì)應(yīng)的交叉值也有粗略分離特性,稱為交叉值的粗略分離特性。當(dāng)采樣密度逐步降低時(shí),這種分離特性逐步變得不明顯。粗略分離特性在三維曲面重建中和在二維曲線重建問(wèn)題中大致相同,唯一的不同是由于少部分VOTonoi點(diǎn)位于曲面附近而不是中軸上,曲面上三角形的交叉角可能是銳角。
[0038](2)本發(fā)明提出的一種面向三維散亂稠密點(diǎn)云的三角網(wǎng)格重構(gòu)方法是基于粗略分離特性理論,包括以下五個(gè)步驟:第一步:導(dǎo)入三維散亂點(diǎn)云數(shù)據(jù);第二步:對(duì)導(dǎo)入點(diǎn)云數(shù)據(jù)進(jìn)行三維DeIaunay四面體剖分,所有形成的三角形都為DeIaunay三角形,計(jì)算每個(gè)三角形的交叉值;第三步:根據(jù)粗略分離特性通過(guò)判斷交叉值抽取部分三角形初始化三角網(wǎng)格曲面;第四步:選擇初始前沿三角形,從初始前沿三角形不斷擴(kuò)展網(wǎng)格曲面,完善沒(méi)有抽取出來(lái)的物體表面三角形,直到輸出整個(gè)重構(gòu)三維網(wǎng)格曲面。
[0039]本發(fā)明的實(shí)施例是在以本發(fā)明技術(shù)方案為前提下進(jìn)行實(shí)施的,給出了詳細(xì)的實(shí)施方式和具體的操作過(guò)程,但本發(fā)明的保護(hù)范圍不限于下述實(shí)施例。實(shí)例選取一只手模型的三維點(diǎn)云數(shù)據(jù),有5029個(gè)數(shù)據(jù)采樣點(diǎn)。
[0040]步驟1:輸入與曲面相關(guān)的三維散亂點(diǎn)云數(shù)據(jù),原始通過(guò)三維掃描儀得到的點(diǎn)云數(shù)據(jù)是以文件的形式存儲(chǔ),每個(gè)點(diǎn)都是三維坐標(biāo)X,Y,Z的形式,其輸入顯示如附圖8 (a)所
/Jn ο
[0041]步驟2:對(duì)輸入點(diǎn)云進(jìn)行Delaunay四面體剖分,最外層的多面體形成點(diǎn)云凸殼,每個(gè)三角形都是Delaunay三角形,那么物體表面的三角形就包含在這些Delaunay三角形中。如果物體是完全凸的,那么點(diǎn)云凸殼就是重構(gòu)曲面。一般情況下掃描出來(lái)的物體,因?yàn)橛姓`差,不會(huì)形成凸集。每個(gè)Delaunay四面體包含四個(gè)屬性:點(diǎn)、邊、三角形和四面體。然后計(jì)算每個(gè)Delaunay三角形的交叉值。附圖8 (b)為該手模型點(diǎn)云的Delaunay四面體剖分結(jié)果,最外層的多面體為點(diǎn)云凸殼。
[0042]步驟3:通過(guò)判斷交叉因子抽取部分三角形初始化三角網(wǎng)格曲面。從步驟2形成的Delaunay結(jié)構(gòu)中,抽取部分三角形作為種子三角形來(lái)初始化三角網(wǎng)格曲面是本算法的關(guān)鍵,抽取規(guī)則很簡(jiǎn)單,即抽取那些交叉因子滿足一定條件的Delaunay三角形。根據(jù)算法理論和實(shí)踐經(jīng)驗(yàn),選取交叉值〈-0.2的三角形(因?yàn)?0.2可以滿足一般條件下的采樣密度,當(dāng)采樣點(diǎn)密度稀疏時(shí),可調(diào)整交叉值變小)。通過(guò)這一步可以選出大量的物體表面的三角形。如圖8 (c)為通過(guò)這一步選出的物體表面的部分三角形。
[0043]這些三角形被稱為已接受三角形,只關(guān)聯(lián)一個(gè)已接受三角形的邊稱為前沿邊。建立一個(gè)空棧,每條前沿邊依次加進(jìn)這個(gè)空棧,形成前沿邊棧。關(guān)聯(lián)前沿邊的已接受三角形稱為前沿三角形,前沿邊的點(diǎn)稱為前沿點(diǎn),不屬于已接受三角形的點(diǎn)稱為自由點(diǎn),前沿點(diǎn)和自由點(diǎn)的并集稱為候選點(diǎn)集。這一系列定義見附圖7所示。
[0044]步驟4:根據(jù)前沿邊擴(kuò)展剩余的物體表面的三角形。這一步驟是對(duì)前沿邊棧的一個(gè)循環(huán)過(guò)程,循環(huán)過(guò)程在前沿邊棧為空時(shí)結(jié)束。這一步分為以下兩小步。
[0045]步驟4.1:候選三角形的選取。對(duì)每條前沿邊,定義一個(gè)以搜索點(diǎn)為球心的搜索球,搜索球內(nèi)的候選點(diǎn)與前沿邊組成的Delaunay三角形都為候選三角形。如果在搜索范圍內(nèi)沒(méi)有找到候選點(diǎn),則該前沿邊被認(rèn)為是邊界邊。搜索球大小的確定很關(guān)鍵,它影響擴(kuò)展三角形的速度和質(zhì)量。大的搜索半徑可以找到附近較多的候選三角形,但容易導(dǎo)致找到的候選三角形多而擴(kuò)展速度變慢。小的搜索半徑,有利于擴(kuò)展速度,但容易導(dǎo)致候選三角形不充足。搜索球的半徑和局部采樣的密度有關(guān)。本發(fā)明算法中選擇與前沿三角形在同一平面上并且與前沿邊構(gòu)成正三角形的點(diǎn)為搜索球球心,前沿邊長(zhǎng)度為半徑的搜索球。這樣通過(guò)前沿邊的長(zhǎng)度可以估計(jì)局部采樣密度從而把搜索球控制在一個(gè)適當(dāng)?shù)姆秶鷥?nèi)。這一步形成的三角片是有重疊的。
[0046]步驟4.2:這一步的目的是從候選三角形里選取和前沿三角形夾角最大的唯一三角形,使之成為新的前沿三角形。檢查新的前沿三角形的各條邊原來(lái)是否是前沿邊,如果原來(lái)是前沿邊,則跳出前沿邊棧變?yōu)榉乔把剡?;如果原?lái)不是前沿邊,則變?yōu)榍把剡?,且將新的前沿邊入棧?br>
[0047]步驟4不斷重復(fù),直到前沿邊棧為空停止。圖8 (d)為手模型點(diǎn)云的數(shù)據(jù)的最終重構(gòu)三角網(wǎng)格曲面。
[0048]本發(fā)明的算法理論如下:
[0049]本發(fā)明算法理論是基于曲面重構(gòu)算法中Crust算法理論中的中軸,局部特征值LFS(P)和r-采樣等概念,概念介紹如下。三維曲面重構(gòu)問(wèn)題在二維空間中變成了二維曲線重構(gòu)問(wèn)題。
[0050]定義I (流形,Manifold):是局部具有歐氏空間性質(zhì)的空間。而實(shí)際上歐氏空間就是流形最簡(jiǎn)單的實(shí)例。
[0051]定義2 (中軸):設(shè)RnSn維實(shí)數(shù)空間,W為Rn*的流形,定義PSRn中的點(diǎn)集,P中有兩個(gè)或兩個(gè)以上的點(diǎn)距離W最近且相等,點(diǎn)集P就是W的中軸。
[0052]換句話說(shuō),中軸可以定義為至少有一個(gè)到物體表面距離最近的點(diǎn)的集合。附圖1(a) (b)分別給出了 R2和R3空間中中軸的示意圖。圖1(a)中虛線展示了光滑曲線的中軸,可以看出,根據(jù)曲面的形狀,中軸有可能是不連續(xù)的,可能部分在W內(nèi)部,部分在W外部(可能延伸到無(wú)窮遠(yuǎn)),需要注意的是曲面W允許有多個(gè)連通域。圖1(b)展示了一個(gè)三維手模型的中軸,在三維空間中,中軸是二維曲面。
[0053]定義3 (局部特征值):設(shè)Rn為η維實(shí)數(shù)空間,W為Rn中的流形,P為曲面W上任一點(diǎn),LFS(p)表示P到W中軸的最短歐幾里得距離。如附圖2所示。
[0054]定義4(r_采樣/r-sample):設(shè)Rn為η維實(shí)數(shù)空間,W為Rn中的流形,若S是W上的一個(gè)采樣點(diǎn)集合,P為曲面W上任一點(diǎn),如果它到離他最近的采樣點(diǎn)的歐式距離不大于r.LFS (p),則采樣S滿足為r-采樣條件,稱S為W的一個(gè)r_采樣。
[0055]在r-采樣中,因?yàn)楫?dāng)r > I時(shí)對(duì)點(diǎn)云的重構(gòu)會(huì)出現(xiàn)歧義,所以本發(fā)明中的算法都是在Kl的大前提下。
[0056]對(duì)輸入二維(三維)點(diǎn)集進(jìn)行Delaunay三角(四面體)剖分后形成的最外層多邊形(多面體)形成了點(diǎn)集的凸殼。位于點(diǎn)集凸殼上的邊(三角形)只關(guān)聯(lián)一個(gè)Delaunay三角形(四面體),除此之外剩余的邊(三角形)都是兩個(gè)相鄰Delaunay三角形(四面體)的公共邊(三角形),每個(gè)Delaunay三角形(四面體)都關(guān)聯(lián)一個(gè)Voronoi點(diǎn),即該三角形外接圓(四面體外接球)的圓(球)心,則公共邊(三角形)關(guān)聯(lián)兩個(gè)Voronoi點(diǎn)。
[0057]定義5(交叉角):以點(diǎn)集的非凸殼上的公共邊(三角形)的一個(gè)頂點(diǎn)為角的頂點(diǎn),該點(diǎn)與該公共邊(三角形)兩個(gè)關(guān)聯(lián)VOTonoi點(diǎn)的連線為角的兩條邊,定義該角為該公共邊(三角形)的交叉角,用d表示。3 的范圍是[0,π ),三維空間和二維空間中的交叉角分別見附圖3 (a)、(b)所示。
[0058]定義6 (交叉值):公共邊(三角形)的交叉角的余弦值稱為該公共邊(三角形)的交叉值。它的范圍是(-1,1]。
[0059]我們知道公共邊是它所關(guān)聯(lián)的兩個(gè)外接圓的公共弦。設(shè)Vl和V2是公共邊關(guān)聯(lián)的兩個(gè)Voronoi點(diǎn)。
[0060]根據(jù)公共邊關(guān)聯(lián)的兩個(gè)VOTonoi點(diǎn)是否同時(shí)包含在該公共邊關(guān)聯(lián)的其中一個(gè)外接圓中,和是否同時(shí)位于該公共邊的同一側(cè)可以分為三類,分別見附圖4 (a)、(b)、(c),分別對(duì)應(yīng)(a)類、(b)類、(C)類。
[0061]對(duì)于(a)、(b)兩類,V1和V2同時(shí)位于公共邊的同一側(cè),或者同時(shí)位于公共邊關(guān)聯(lián)的其中一個(gè)外接圓中,他們的交叉角很明顯一定是銳角。對(duì)于(C)類,交叉角可能是銳角,直角或者鈍角。
[0062]討論:接下來(lái)我們分類討論平面域內(nèi)的交叉角:
[0063](i)當(dāng)公共邊是兩個(gè)鄰近點(diǎn)連線的邊時(shí)
[0064]當(dāng)公共邊是兩個(gè)鄰近點(diǎn)連線的邊時(shí),它關(guān)聯(lián)的兩個(gè)外接圓不可能出現(xiàn)(a)和(b)類的交叉情況,所以我們只考慮公共邊關(guān)聯(lián)的兩個(gè)VOTonoi點(diǎn)位于該公共邊兩側(cè)的情況。
[0065]定理1:在二維空間中,Kl時(shí),兩個(gè)鄰近點(diǎn)連線的公共邊的交叉角必定是鈍角。
[0066]證明:見附圖5,S1S2是鄰近采樣點(diǎn)的連線,P是原曲線上的點(diǎn),根據(jù)r采樣和局部特征值的定義可知,PS1 ≤r*LFS(P),PV1≥LFS(P),PV2≥LFS(P),那么r〈l時(shí),以P為圓心,LFS(P)為半徑畫圓,S1包含在該圓中,所以角0大于90度。(ii)當(dāng)公共邊不是兩個(gè)鄰近點(diǎn)連線的邊時(shí)
[0067]當(dāng)公共邊不是兩個(gè)鄰近點(diǎn)連線的邊時(shí),公共邊關(guān)聯(lián)的兩個(gè)外接圓的交叉情況可能出現(xiàn)(a) (b) (c)三類中的任何一類。前兩類中的交叉角都是銳角,所以我們只考慮最后一類。
[0068]在二維曲線重構(gòu)問(wèn)題中,采樣點(diǎn)通常傾向于找位于其最近對(duì)面曲線段的采樣點(diǎn)來(lái)形成Delaunay三角形。設(shè)SpS2是兩個(gè)分別位于兩條最近相對(duì)曲線段上的采樣點(diǎn),S3、S4是S2的兩個(gè)鄰近點(diǎn)。接下來(lái),我們分類討論最后一類的交叉角(不考慮對(duì)稱情況)。
[0069]假設(shè)曲線時(shí)局部平滑的和采樣是稠密的,則兩個(gè)鄰近采樣點(diǎn)間的距離遠(yuǎn)遠(yuǎn)小于兩條最近相對(duì)曲線間的距離,且三個(gè)鄰近點(diǎn)形成的角為鈍角,此時(shí),交叉角趨向于銳角,見附圖 6 (a)。
[0070]當(dāng)采樣稀疏時(shí),如果采樣點(diǎn)距離其對(duì)面的線段較近,交叉角可能出現(xiàn)鈍角,見附圖6 (b)。此外,不管S3、S4是否是S2的兩個(gè)鄰近點(diǎn),在兩段對(duì)頂?shù)姆浅澢那€段之間的公共邊的交叉角可能是鈍角,見附圖6 (C)。
[0071](iii)當(dāng)兩個(gè)采樣點(diǎn)連線的邊不是公共邊,而是位于凸殼上的邊時(shí)
[0072]因?yàn)橥箽ど系倪?三角形)沒(méi)有交叉角,我們規(guī)定他們的交叉角為直角,交叉值為O0
[0073]總之,在二維曲線重構(gòu)問(wèn)題中,當(dāng)采樣稠密尤其是在兩段距離近或曲率大的對(duì)頂?shù)那€部分時(shí),曲線上兩個(gè)臨近采樣點(diǎn)形成的Delaunay邊的交叉角趨向于鈍角或直角,其它邊的交叉角趨向于銳角或直角,這種性質(zhì)被稱為交叉角的粗略分離特性。其對(duì)應(yīng)的交叉值也有粗略分離特性,稱為交叉值的粗略分離特性。當(dāng)采樣密度逐步降低時(shí),這種分離特性逐步變得不明顯。
[0074]粗略分離特性在三維曲面重建中和在二維曲線重建問(wèn)題中大致相同,唯一的不同是由于少部分VOTonoi點(diǎn)位于曲面附近而不是中軸上,曲面上三角形的交叉角可能是銳角。
[0075]以上所述,僅為本發(fā)明較佳的【具體實(shí)施方式】,但本發(fā)明的保護(hù)范圍并不局限于此,任何熟悉本【技術(shù)領(lǐng)域】的技術(shù)人員在本發(fā)明披露的技術(shù)范圍內(nèi),根據(jù)本發(fā)明的技術(shù)方案及其發(fā)明構(gòu)思加以等同替換或改變,都應(yīng)涵蓋在本發(fā)明的保護(hù)范圍之內(nèi)。
【權(quán)利要求】
1.一種基于三維散亂稠密點(diǎn)云的三角網(wǎng)格重構(gòu)方法,其特征在于,先對(duì)所有點(diǎn)云進(jìn)行三維Delaunay四面體剖分,再根據(jù)粗略分離特性通過(guò)判斷三角形交叉值抽取出屬于物體表面的部分三角形面片來(lái)初始化網(wǎng)格曲面,然后選擇初始前沿三角形,最后從前沿三角形擴(kuò)展形成整個(gè)三角網(wǎng)格曲面。
2.根據(jù)權(quán)利要求1所述基于三維散亂稠密點(diǎn)云的三角網(wǎng)格重構(gòu)方法,其特征在于,具體步驟如下: 第一步:導(dǎo)入三維散亂點(diǎn)云數(shù)據(jù); 第二步:對(duì)導(dǎo)入點(diǎn)云數(shù)據(jù)進(jìn)行三維Delaunay四面體剖分,所有形成的三角形都為Delaunay三角形,計(jì)算每個(gè)三角形的交叉值; 第三步:根據(jù)粗略分離特性通過(guò)判斷交叉值抽取部分三角形初始化三角網(wǎng)格曲面;第四步:選擇初始前沿三角形,從初始前沿三角形不斷擴(kuò)展網(wǎng)格曲面,完善沒(méi)有抽取出來(lái)的物體表面三角形,直到輸出整個(gè)重構(gòu)三角網(wǎng)格曲面。
3.根據(jù)權(quán)利要求2所述基于三維散亂稠密點(diǎn)云的三角網(wǎng)格重構(gòu)方法,其特征在于, 第二步的過(guò)程為: 選取交叉值〈-0.2的三角形,選出物體表面的三角形;建立一個(gè)空棧,每條前沿邊依次加進(jìn)這個(gè)空棧,形成前沿邊棧; 第四步包括如下步驟: 步驟4.1:對(duì)所述前沿邊棧內(nèi)的棧頂前沿邊,定義一個(gè)以搜索點(diǎn)為球心的搜索球,搜索球內(nèi)的候選點(diǎn)與前沿邊組成的Delaunay三角形都為候選三角形;如果在搜索范圍內(nèi)沒(méi)有找到候選點(diǎn),則該前沿邊被認(rèn)為是邊界邊; 其中,所述搜索球的定義為:選擇與前沿三角形在同一平面上并且與前沿邊構(gòu)成正三角形的點(diǎn)為搜索球球心,以前沿邊長(zhǎng)度為半徑的搜索球;步驟4.2:從候選三角形里選取和前沿三角形夾角最大的唯一三角形,使之成為新的前沿三角形;檢查新的前沿三角形的各條邊原來(lái)是否是前沿邊,如果原來(lái)是前沿邊,則跳出所述前沿邊棧變?yōu)榉乔把剡?;如果原?lái)不是前沿邊,則變?yōu)榍把剡叄覍⑿碌那把剡吶霔?;?duì)所述前沿邊棧內(nèi)的每一前沿邊依次重復(fù)步驟4.1和4.2,直至所述前沿邊棧為空停止。
【文檔編號(hào)】G06T17/30GK103440683SQ201310309518
【公開日】2013年12月11日 申請(qǐng)日期:2013年7月22日 優(yōu)先權(quán)日:2013年4月28日
【發(fā)明者】張強(qiáng), 周東生, 許艷 申請(qǐng)人:大連大學(xué)