專利名稱:三維掃描系統(tǒng)中三維散亂點集的曲面三角剖分構造方法
技術領域:
本發(fā)明涉及一種三維掃描系統(tǒng)中三維散亂點集的曲面三角剖分構造方法。
背景技術:
逆向工程(Reverse Engineering,RE)技術是20世紀80年代后期出現在先進制造領域里的新技術,其一般包括四個基本環(huán)節(jié)三維形體檢測與轉換(物理數據的獲得)、數據預處理(點云處理、識別、多視拼接),CAD模型的建立(曲面重構)、CAM制件成型,其基本流程圖如附圖1所示。在三維形體檢測與轉換的過程中,通過三維數字化掃描儀對實物模型表面進行三維快速掃描測量,在滿足離散采樣速度和數據質量的前提下,獲取產品的三維離散數據,對數據進行三角剖分是逆向工程中曲面重建中的非常關鍵的承上啟下的一環(huán),直接影響重構成功與否和CAD模型的質量,對其后續(xù)環(huán)節(jié)起著非常關鍵的制約作用。逆向工程的數字化過程中,對用三維掃描系統(tǒng)(附圖2)直接獲取的點云還原曲面時,由于對所有獲得的點云數據存在不規(guī)則性,普通的曲面重建算法不太適用,需對3D散亂點進行三角剖分,所以三角剖分是曲面重建中的重要環(huán)節(jié)之一。目前關于3D散亂點集的直接的三角剖分算法不多,“Triangulation of scattered data in 3D space.(B.K.Choi,H.Y.Shin,Y.I.Yoon,et al.CAD,1988,20(5)239~248)”中提出的一種增量算法是較好的一種方法,得到廣泛應用,但該算法要求能找到一點對所有的散亂點均可見,要輕易地找到這個向量并不簡單。
發(fā)明內容
本發(fā)明提供一種能夠降低時間復雜度且簡潔合理的三維掃描系統(tǒng)中三維散亂點集的曲面三角剖分構造方法,本發(fā)明所產生三角網格具有高的光順特性,同時具有較好的保形性。
本發(fā)明采用如下技術方案一種三維掃描系統(tǒng)中三維散亂點集的曲面三角剖分構造方法,用快速測量系統(tǒng)獲取海量數據點云,然后對這些點云數據進行過濾處理和無縫拼接,并對拼接后的點云進行三角剖分,上述對拼接后的點云進行三角剖分的步驟如下對三維散亂點進行預處理,再進行初始三角剖分,此后按增量方式,在初始剖分得到的三角形區(qū)域以外逐點加入新點,形成新的剖分,直至點集處理完畢,最后對形成的基本網格運用曲率最小優(yōu)化準則對其進行優(yōu)化處理,得到了三維散亂點集的最終三角剖分;上述對基本網格運用曲率最小優(yōu)化準則對其進行優(yōu)化的處理采用如下方法對于基本網格中四個頂點不共面的凸四邊形(A,B,C,D),分別進行凸四邊形(A,B,C,D)所存在的兩種三角形剖分T1、T2,并進行曲率κ1、κ2的估算,當||κi||=minj=1,2(||κj||)]]>時,則以該三角形剖分Ti作為該四邊形的最優(yōu)剖分;對于基本網格中四個頂點共面的凸四邊形(A,B,C,D),按Lawson邊交換準則來確定該四邊形的最優(yōu)剖分。
與現有技術相比,本發(fā)明具有如下優(yōu)點本發(fā)明提出的三角剖分算法主要用于所有開曲面的3D散亂點集的三角剖分方面,該算法簡化了目前廣泛采用的數據結構,使之更加簡潔合理,減少了算法的空間復雜度;提出一種新的基于曲面曲率的優(yōu)化準則,使得產生的三角網格能有高的光順特性,同時具有較好的保形性。同時改進和修改了部分數據結構,降低了Choi的算法時間及空間復雜度,極大的提高了網格的生成速度和三角剖分的質量。能更好的應用于三維掃描系統(tǒng)中的散亂點集的曲面重構。
與平面投影法不同,直接剖分算法是直接根據3D散亂點構造三角剖分。實用的直接剖分算法不多,“Triangulation of scattered data in 3D space.(B.K.Choi,H.Y.Shin,Y.I.Yoon,et al.CAD,1988,20(5)239~248)”提出的一種增量算法是較好的一種方法,得到廣泛應用。但該算法在對點集的預處理時,須找到一個能看見所有點的向量,理論上對所有單值曲面都能做到,而當面對一個散亂點集時,要輕易地找到這個向量并不簡單。該算法雖提供了較好的數據結構,但為了減少算法空間復雜度,還可以再作簡化。本發(fā)明對Choi數據結構的改進,提出了最小曲率優(yōu)化準則,降低了算法的時空復雜度,加快了三角網格的構建速度,同時保證了后續(xù)構建曲面的光順性和保型性。
本發(fā)明探討三角剖分算法,提出曲率最小最小優(yōu)化準則。輸入是不需要附加結構和組織順序的未知曲面采樣點集,輸出是該點集的三角剖分,即未知曲面的一個線性逼近。算法須滿足單值開曲面。具體的優(yōu)點如下(1)數據結構是曲面三角剖分中的重要方面之一,本專利改進和修改了部分數據結構,降低了算法空間復雜度。
(2)曲面三角剖分算法中另一個重要的方面是優(yōu)化準則,本專利從曲面曲率估計入手,提出曲率最小優(yōu)化準則,使得剖分具有較好的保形性??臻g形狀優(yōu)化準則主要著眼于保形性,光順準則主要著眼于曲面的光順性。
(3)剖分結果較好由于采用了曲率最小優(yōu)化準則,其出發(fā)點是曲面的內在特性即曲率,因而得到的3D曲面上散亂點集的三角剖分保形性好,可以滿足重構的要求。剖分中凸四邊形的曲率最小保證原曲面光順處有很好的光順度,與分治采樣方法結合可以得到理想的剖分結果。
(4)算法具有較好的時空復雜度,更加簡潔合理的數據結構。與Choi算法相比,本算法改剖分的數據結構LTL為TL,將其由六維變成了三維,大大降低了空間復雜度。同時修改了TBL,得以方便地在剖分中即時更新TL和EL,簡化了剖分過程的搜索。采用這種數據結構降低了算法的時間復雜度。
(5)適用面廣本算法點集預處理簡單可靠,對任意的單值曲面都可實施。雖然預處理是投影到二維平面上進行的,但優(yōu)化是直接在3D空間進行的,故本算法依然是一種直接剖分算法。
圖1是逆向工程流程圖。
圖2是光柵式三維掃描系統(tǒng)組成圖。
圖3是頂點、邊、三角形及其法矢、點與邊的關系圖。
圖4是臨時邊界表(TBL)。
圖5是邊界表BL。
圖6是算法整體流程圖。
圖7是初始TL、EL和TBL的形成。
圖8是新點加入時TL、EL和TBL的更新。
圖9是四個半圓柱面和一球相交的剖分結果。
圖10是一個人臉模型的剖分結果。
具體實施例方式
一種三維掃描系統(tǒng)中三維散亂點集的曲面三角剖分構造方法,用快速測量系統(tǒng)獲取海量數據點云,然后對這些點云數據進行過濾處理和無縫拼接,并對拼接后的點云進行三角剖分,上述對拼接后的點云進行三角剖分的步驟如下對三維散亂點進行預處理,再進行初始三角剖分,此后按增量方式,在初始剖分得到的三角形區(qū)域以外逐點加入新點,形成新的剖分,直至點集處理完畢,最后對形成的基本網格運用曲率最小優(yōu)化準則對其進行優(yōu)化處理,得到了三維散亂點集的最終三角剖分;上述對基本網格運用曲率最小優(yōu)化準則對其進行優(yōu)化的處理采用如下方法對于基本網格中四個頂點不共面的凸四邊形(A,B,C,D),分別進行凸四邊形(A,B,C,D)所存在的兩種三角形剖分T1、T2,并進行曲率κ1、κ2的估算,當||κi||=minj=1,2(||κj||)]]>時,則以該三角形剖分Ti作為該四邊形的最優(yōu)剖分;對于基本網格中四個頂點共面的凸四邊形(A,B,C,D),按Lawson邊交換準則來確定該四邊形的最優(yōu)剖分。
對上述三維散亂點進行預處理采用將散亂點集P中所有點Pi(xi,yi,zi)(i=1,2,…,m)投影到X-Y平面上,得到散亂點集P中所有點Pi(xi,yi,zi)(i=1,2,…,m)的投影點,以各投影點的X坐標值的平均值作為X-Y平面上的中心Pc在X-Y平面上X坐標值,以各投影點的Y坐標值的平均值作為X-Y平面上的中心Pc在X-Y平面上Y坐標值,在根據散亂點集P中所有各點Pi(xi,yi,zi)(i=1,2,…,m)至中心Pc的遠近,對散亂點集P中所有各點Pi(xi,yi,zi)(i=1,2,…,m)以升序方式進行重新排序,對到中心Pc距離相同的各點按逆時針排序,得到預處理后的點集V。
下面結合附圖示例對本發(fā)明的具體實施方式
作進一步描述。根據上述方法,在基于x86的PC機上的Matlab平臺下運行的,CPU為P41.8Ghz,執(zhí)行內存64Mb實現了對3D散亂點集的三角剖分。主要包括以下步驟1)初始三角剖分a)點集預處理散亂點集P中所有點Pi(xi,yi,zi)(i=1,2,…,m),得到X-Y平面上的中心(xc,yc)=(∑xi/m,∑yi/m),Pi在X-Y平面上與(xc,yc)的距離為di=‖(xi,yi)-(xc-yc)‖,以di的升序將Pi重新排序,再對具有相同d值的點按逆時針排列而得到V,以后的處理都是對V進行的。
b)初始TBL從V中取出V1、V2賦給TBL(為簡單起見,以下以數組表示),則此時TBL=[1,2]。當TBL中增加一點Vi,判斷它與邊V1V2的關系,若Vi.O.V1V2,則距TBL的首點較近,插入頭部,否則插入尾部;若Vi.R.V1V2,則將TBL逆向,再將Vi插入TBL頭部;若Vi.L.V1V2,則直接將Vi插入TBL頭部。若Vi.O.V1V2,再取下一點加入TBL,否則就形成了初始TBL。此時TBL只有點號,邊界邊號暫時為空。由初始TBL可以確定初始TL、EL。
設TBL的長度為k,即有k個頂點,則有k-2個三角形和2k-3條邊。這些三角形為(Vh、Vi、Vi+1)(i=2,3,…,k-1),它們組成了初始TL;根據TL,就很容易獲得EL,將TL中相鄰兩個頂點形成一條邊,將其頂點存入EL,這是一條有向邊,其方向為由第一頂點指向第二個頂點。根據這個方向,將其左右的三角形號再存入EL中相應位置。接著由EL再行完成TBL。過程如附圖7所示。
通過以上步驟就得到了點集的初始剖分。
2)主剖分a)加入新點從初始剖分開始,按順序逐個將點加入到剖分中,不斷形成新的剖分,直至點集處理完畢,這個過程稱為主剖分。經過主剖分就得到點集的基本剖分,即優(yōu)化前的剖分。
當將一個新點VN加入到剖分時,主要有兩步首先從TBL形成的凸多邊形中找到所有從VN可見的邊,即在TBL中找到VN的最左點VL和最右點VR,然后更新所有的數據結構,下面分別敘述。
對于VN,搜索TBL,若其中一點Vi滿足VN.L.Vi-1Vi且VN.R.ViVi+1,則停止搜索,Vi即為VN的VL;相反地,若有VN.R.Vi-1Vi且VN.L.ViVi+1,則停止搜索,Vi即為VN的VR。
若VL、VR之間有j個點,則由于新點的插入,將生成j+1個新三角形。在已有k個三角形的TL中增加的第一個新三角形為trk+1=(VL,VN,VL+1),k+1為這個三角形的索引號。trk+1有兩條新邊VLVN和VNVL+1及一條已有邊VL+1VL,在TBL中將節(jié)點VL右邊值賦為eL,將EL中該邊右邊三角形號賦為k+1,接著將VN插入TBL于VL之后,此時兩新邊都成為邊界邊。將新邊直接加入到EL,并將它們的索引號存入TBL中相應位置,這樣一個新三角形的三條邊都處理完畢。繼續(xù)處理下一個新三角形trk+2=(VL+1,VN,VL+2),它只有一條新邊VNVL+2,其余兩條為已有邊,同樣,由TBL中VN和VL+1右邊的邊索引號,在EL中將這兩條邊右邊三角形號賦為k+2,新邊則直接加入到EL。接著將VL+1從TBL中刪去,且節(jié)點VN右邊值應更改為新邊的索引號。如此不斷進行,直至最后一個新三角形trk+i+1=(VR- 1,VN,VR)。這樣由于新三角形生成,TL和EL都得到更新,相應地,TBL也被更新了,VL與VR之間的所有點都從TBL中刪去,代之為VN。對具體的插入一新點時,過程如附圖8所示。
上述的過程說明了一個新點加入時如何更新EL、TL、TBL以形成新的剖分。
通過以上步驟就得到了點集V的剖分,為了正確反映點集拓撲,在邊界處應去除不合法的三角形,即邊界剪裁。
b)邊界剪裁邊界剪裁就是根據實際邊界刪去不合法的三角形。
實際邊界點是按逆時針順序輸入的,首先據此建立初始BL,其每個節(jié)點形式為Vi|0,接下來在EL中搜索邊ViVi+1,若ViVi+1∈E,則將其右邊的三角形號填入BL中相應節(jié)點位置tri;否則需執(zhí)行軌跡生成,直至ViVi+1∈E。本文的軌跡生成算法依次搜索被軌跡邊所穿過的凸四邊形,實行邊交換,直至完成。經過上述過程就建立了BL,據此就可以進行剪裁。剪裁時搜索BL,若鄰接兩條邊界邊ViVi+1、Vi+1Vi+2有相同的右邊三角形tri=(Vi,Vi+1,Vi+2),則從TL中刪去tri,并立即更新BL,即刪去Vi+1這個節(jié)點,同時更新EL。更新EL十分簡單,在EL中搜索右邊有三角形的邊界邊,將該邊右邊的三角形號置0(表示該三角形已被刪去)即可。
3)優(yōu)化因為曲率是曲面不變的內在特性之一,也是幾何光順性的判據之一,因此考慮剖分的優(yōu)化就從曲率入手。對凸四邊形(A,B,C,D),存在兩種剖分T1、T2,分別估計其曲率κ1、κ2,當||κi||=minj=1,2(||κj||)]]>時,則以Ti作為該四邊形的最優(yōu)剖分,并稱該準則為曲率最小優(yōu)化準則。具體優(yōu)化方法是將曲率最小準則與Delaunay準則相結合,方法如下若形成凸四邊形的兩個相鄰三角形共面,則按Lawson邊交換準則,即最小內角最大準則;否則按式(1)估計凸四邊形兩種剖分的曲率,然后按曲率最小準則優(yōu)化。
這里提出的優(yōu)化準則,就優(yōu)化時間耗費來說,略大于標量積最大、JND準則,而遠小于最小平均曲率、最小高斯曲率、光順準則、空間優(yōu)化準則等。
優(yōu)化時按順序搜索EL中的邊,若某邊左右兩個三角形構成凸四邊形,則按上述方法優(yōu)化,一旦某Q被優(yōu)化成Qa時,原來兩個三角形發(fā)生了變化,TL得到更新,同時Q的4條邊的左右三角形也發(fā)生了變化,EL也得到更新,顯然更新時將對EL搜索4次。遍歷一次EL即進行了一次優(yōu)化,直至EL中再無需要優(yōu)化的邊則完成整個剖分的優(yōu)化。
位于一曲面∑上的凸四邊形Q=(V1,V2,V3,V4),對角線為V2V4,(V2,V3,V4)和(V1,V2,V4)的重心C1、C2及法矢n1、n2。
經過優(yōu)化后,就得到V的最終剖分。大量的實驗結果表明應用本文算法能獲得保形剖分。附圖9和附圖10,前者示出了四個半圓柱面和一球相交的剖分結果,共248點,其內外邊界點各為8和72個,整個剖分耗時13.5秒;后者是一個人臉模型,共5000點,其中外邊界點為196個,共耗時5960秒,由于圖10不但點數較多而且曲率變化較劇烈,故優(yōu)化時間較長。
權利要求
1.一種三維掃描系統(tǒng)中三維散亂點集的曲面三角剖分構造方法,用快速測量系統(tǒng)獲取海量數據點云,然后對這些點云數據進行過濾處理和無縫拼接,并對拼接后的點云進行三角剖分,其特征在于對拼接后的點云進行三角剖分的步驟如下對三維散亂點進行預處理,再進行初始三角剖分,此后按增量方式,在初始剖分得到的三角形區(qū)域以外逐點加入新點,形成新的剖分,直至點集處理完畢,最后對形成的基本網格運用曲率最小優(yōu)化準則對其進行優(yōu)化處理,得到了三維散亂點集的最終三角剖分;上述對基本網格運用曲率最小優(yōu)化準則對其進行優(yōu)化的處理采用如下方法對于基本網格中四個頂點不共面的凸四邊形(A,B,C,D),分別進行凸四邊形(A,B,C,D)所存在的兩種三角形剖分T1、T2,并進行曲率κ1、κ2的估算,當||κi||=minj=1,2(||κj||)]]>時,則以該三角形剖分Ti作為該四邊形的最優(yōu)剖分;對于基本網格中四個頂點共面的凸四邊形(A,B,C,D),按Lawson邊交換準則來確定該四邊形的最優(yōu)剖分。
2.根據權利要求1上述的三維掃描系統(tǒng)中三維散亂點集的曲面三角剖分構造方法,其特征在于對三維散亂點進行預處理采用將散亂點集P中所有點Pi(xi,yi,zi)(i=1,2,…,m)投影到X-Y平面上,得到散亂點集P中所有點Pi(xi,yi,zi)(i=1,2,…,m)的投影點,以各投影點的X坐標值的平均值作為X-Y平面上的中心Pc在X-Y平面上X坐標值,以各投影點的Y坐標值的平均值作為X-Y平面上的中心Pc在X-Y平面上Y坐標值,在根據散亂點集P中所有各點Pi(xi,yi,zi)(i=1,2,…,m)至中心Pc的遠近,對散亂點集P中所有各點Pi(xi,yi,zi)(i=1,2,…,m)以升序方式進行重新排序,對到中心Pc距離相同的各點按逆時針排序,得到預處理后的點集V。
全文摘要
本發(fā)明提出了一種三維掃描系統(tǒng)中三維散亂點集的曲面三角剖分構造方法,針對快速測量系統(tǒng)獲取海量數據點云,對經過過慮處理和拼接后的點云進行三角剖分,其三角剖分步驟如下對三維散亂點進行預處理,再進行初始三角剖分,此后按增量方式,逐點加入新點,形成新剖分,至點集處理完畢,最后對形成的基本網格運用曲率最小優(yōu)化準則進行優(yōu)化處理,得到該點集的最終三角剖分;上述對基本網格運用曲率最小優(yōu)化準則優(yōu)化采用如下方法基本網格中,空間凸四邊形(A,B,C,D)存在的兩種剖分T
文檔編號G06T11/00GK1835021SQ200610039550
公開日2006年9月20日 申請日期2006年4月14日 優(yōu)先權日2006年4月14日
發(fā)明者達飛鵬, 唐琦, 張永春 申請人:東南大學