陳續(xù)威,謝凱,劉波,張圳,白志君 長江大學(xué)電子信息學(xué)院
長江大學(xué)油氣信息處理與識別研究所,湖北 荊州434023
隨著復(fù)雜幾何模型建模的需求日益增加,快速建模技術(shù)也應(yīng)運(yùn)而生。在計(jì)算機(jī)圖形學(xué)領(lǐng)域,經(jīng)常采用多邊形網(wǎng)格來描述物體的幾何模型。對于小數(shù)據(jù)量的地質(zhì)模型,采用一般的建模技術(shù)足以滿足要求,但是對于復(fù)雜不規(guī)則的地質(zhì)模型(如包含斷層、褶曲、開挖邊界等),其網(wǎng)格通常由成千上萬個(gè)多邊形面片組成[1,2]。由于將多邊形映射為圖像的過程需要進(jìn)行大量計(jì)算,因而花費(fèi)的繪制時(shí)間相當(dāng)長,存儲量也特別大。隨著地質(zhì)學(xué)研究的深入,數(shù)據(jù)量龐大的復(fù)雜地質(zhì)模型通常不能滿足實(shí)時(shí)繪制的需要。為此,筆者對三維地質(zhì)模型的一種快速建模方法進(jìn)行了研究,以便能夠在保持較高逼真度的前提下實(shí)現(xiàn)運(yùn)算速度的大幅提升以及模型的大幅度簡化,從而滿足實(shí)時(shí)繪制的需要。
三維地質(zhì)模型的快速建模方法的基本原理是通過刪除一部分在精度范圍內(nèi)的頂點(diǎn),即減少運(yùn)算數(shù)據(jù)的方式,從而達(dá)到加快建模速度的目的[3,4]。三維地質(zhì)模型的快速建模方法流程圖如圖1所示。
讀取文件中的地質(zhì)網(wǎng)格數(shù)據(jù),將地質(zhì)數(shù)據(jù)進(jìn)行三角形細(xì)分后,任取一個(gè)交點(diǎn),計(jì)算出周圍所有三角形的法矢量,求出平均值,作為該點(diǎn)的法矢量,并進(jìn)行歸一化處理。依此類推,可以計(jì)算出所有網(wǎng)格點(diǎn)的單位法矢量。
對于復(fù)雜地質(zhì)體的網(wǎng)格模型,為了提高其建模的精確度,采用6個(gè)點(diǎn)(其中有2個(gè)重點(diǎn))畫2個(gè)三角形的方式進(jìn)行三角形細(xì)分(見圖2),可得到三角形面的個(gè)數(shù)為2*(columns*rows),對得到的三角形面片,根據(jù)其3個(gè)頂點(diǎn)可以唯一確定該三角面片的法矢量,具體方法如下[5]。
圖1 三維地質(zhì)模型的快速建模方法流程圖
設(shè)三角形的3個(gè)點(diǎn)分別為A、B、C(逆時(shí)針排列),其法矢量為→h,則:
三角形細(xì)分后,對網(wǎng)格面中的任意一個(gè)交點(diǎn)q,其周圍將存在n個(gè)(此處n=6)三角形(見圖2)。
設(shè)第i個(gè)三角形的單位法矢量為(i=1,2,…,n),則交點(diǎn)q的法矢量可用其周圍所有(此處為6個(gè))三角形面的法矢量的平均值來表示,若表示交點(diǎn)q的法矢量,則:
圖2 模型網(wǎng)格面及其三角形細(xì)分
由于的模值分布區(qū)間較大,不易后續(xù)處理,現(xiàn)對其進(jìn)行歸一化(即取模為1),設(shè)歸一化后的單位法矢量為,則:
式(3)即為平均后的單位法矢量,現(xiàn)將其定義為復(fù)雜地質(zhì)網(wǎng)格面交點(diǎn)q的單位法矢量。
某一點(diǎn)修正后的法矢量是由周圍所有網(wǎng)格交點(diǎn)的單位法矢量所共同決定的,算出其平均值,即為該點(diǎn)修正后的法矢量。為了提高復(fù)雜地質(zhì)模型處理后的逼真度,根據(jù)某一網(wǎng)格點(diǎn)周圍所有點(diǎn)的單位法矢量,求出其平均值作為該點(diǎn)修正后的法矢量。點(diǎn)q修正后的單位法矢量是周圍所有點(diǎn)單位法矢量的平均值(見圖3),由此可以算出周圍8個(gè)點(diǎn),,…,的單位法矢量。修正后的法矢量用表示,即:
圖3 網(wǎng)格交點(diǎn)及其法矢量平均
模型簡化算法是在給定精度ε的條件下,求出某一網(wǎng)格點(diǎn)與周圍點(diǎn)修正后的法矢量的夾角θ,將求得的夾角θ換算成弧度值后與設(shè)定的精度值ε進(jìn)行比較,由此決定是否刪除該網(wǎng)格點(diǎn)。
在一定的精度范圍ε內(nèi),利用模型簡化算法對所有點(diǎn)進(jìn)行有選擇性的刪除。從視覺效果看,當(dāng)多個(gè)點(diǎn)的法向量的方向近似相同時(shí),它們所構(gòu)成的曲面近似平緩,此時(shí)在一定精度范圍內(nèi),部分?jǐn)?shù)據(jù)是不必要的(見圖4)。在這種情況下,可以刪除不必要的數(shù)據(jù),從而實(shí)現(xiàn)地質(zhì)模型的快速建模。設(shè)置繪制精度為ε,周圍點(diǎn)的修正法矢量為(i=1,2,…,8),計(jì)算出某一網(wǎng)格點(diǎn) (非邊界點(diǎn))與周圍點(diǎn)的修正法向量所組成的夾角θi:
圖4 曲面的一維數(shù)學(xué)模型圖
設(shè):
當(dāng)δi(i=1,2,…,8)小于繪制精度ε時(shí),表明周圍的點(diǎn)與該網(wǎng)格點(diǎn)的修正法矢量相差不大,即周圍8個(gè)點(diǎn)對該點(diǎn)的影響是可以接受的,此時(shí)可以刪除該網(wǎng)格點(diǎn)。由于反余弦函數(shù)在 [-1,1]區(qū)間內(nèi)呈單調(diào)遞減,故可將表達(dá)式:
轉(zhuǎn)化為:
令N=cos(επ),則:
當(dāng)δi(i=1,2,…,8)不全小于繪制精度ε時(shí),則表明周圍的點(diǎn)中存在與該網(wǎng)格點(diǎn)的修正法矢量相差較大的點(diǎn),此時(shí)將保留該網(wǎng)格點(diǎn)。此外,邊界點(diǎn)將全部保留。
對處理后的數(shù)據(jù)進(jìn)行三角形網(wǎng)格重構(gòu),采用改進(jìn)后的分治算法,生成三角網(wǎng)。在重構(gòu)過程中,首先利用八叉樹算法[6]對已篩選過的地質(zhì)數(shù)據(jù)進(jìn)行分塊處理和存儲,若某塊內(nèi)的數(shù)據(jù)是不勻質(zhì)的,則再次進(jìn)行八叉樹劃分,塊內(nèi)的地質(zhì)數(shù)據(jù)勻質(zhì)時(shí)則不必再次分塊。然后,將分塊后的數(shù)據(jù)放到GPU線程塊中,再將非勻質(zhì)塊細(xì)分給每個(gè)塊內(nèi)線程,利用GPU同一線程塊的線程可以相互通信的優(yōu)勢,讓指向各個(gè)不同地質(zhì)信息數(shù)據(jù)的指針能夠在線程間并行移動(dòng),由此防止指針出現(xiàn)混亂。此外,每個(gè)線程塊還要進(jìn)行同步處理,保證每個(gè)線程都能完成其相應(yīng)的計(jì)算。
采用某地區(qū)的地質(zhì)體數(shù)據(jù)進(jìn)行試驗(yàn)以檢驗(yàn)上述方法。該模型為985×748的網(wǎng)格數(shù)據(jù),原始網(wǎng)格點(diǎn)數(shù)目為736780。對模型數(shù)據(jù)進(jìn)行了3次簡化,然后計(jì)算了簡化比、平均交互速度和對稱Hausdorff距離(見表1)。分析表1數(shù)據(jù)可知,隨著頂點(diǎn)數(shù)的減少,三角形面片數(shù)也減少,簡化比增加,平均交互速度增加,這說明建模速度加快。采用對稱Hausdorff距離來評估的模型的幾何相似度,對稱Hausdorff距離實(shí)際上是2個(gè)網(wǎng)格模型之間的最大誤差,對稱Hausdorff距離越小,2個(gè)網(wǎng)格模型之間的幾何相似度越大。從表1數(shù)據(jù)還可以看出,隨著刪除的頂點(diǎn)數(shù)的增加,對稱Hausdorff距離增大,幾何相似度下降。
表1 某地區(qū)地質(zhì)模型試驗(yàn)數(shù)據(jù)
為了直觀地表示試驗(yàn)結(jié)果中刪除的網(wǎng)格點(diǎn)和保留的網(wǎng)格點(diǎn),將該網(wǎng)格點(diǎn)轉(zhuǎn)化為985×748的平面圖像。對于每個(gè)模型,采用3種顯示方式,分別為點(diǎn)顯示(見圖5)、網(wǎng)格顯示(見圖6)和三角面片顯示(見圖7)??梢钥闯?,圖5和圖6清晰地顯示了保留的網(wǎng)格點(diǎn)。此外,從圖7的4幅圖片可以看出,雖然頂點(diǎn)數(shù)減少,但模型的相似度仍然較高。
提出一種通過對數(shù)據(jù)的簡化來實(shí)現(xiàn)三維地質(zhì)模型快速建模的算法,在一定的精度范圍內(nèi),根據(jù)三角形面片的法矢量對一些數(shù)據(jù)進(jìn)行刪除,在數(shù)據(jù)處理的過程中,利用GPU強(qiáng)大的計(jì)算能力,對處理后的數(shù)據(jù)進(jìn)行重構(gòu),達(dá)到快速建模的目的。試驗(yàn)結(jié)果表明,利用該方法能夠在保證較高相似度的前提下實(shí)現(xiàn)模型的簡化和建模速度的提高,因而該方法是可行的。
圖5 各模型點(diǎn)顯示圖
圖6 各模型網(wǎng)格顯示圖
圖7 各模型三角面片顯示圖
[1]Wang Gongwen,Zhu Yanyan,Zhang Shouting,et al.3Dgeological modeling based on gravitational and magnetic data inversion in the Luanchuan ore region [J].Journal of Applied Geophysics,2012,80(1):1~11.
[2]Tame C,Cundy A B,Royse K R,et al.Three-dimensional geological modelling of anthropogenic deposits at small urban sites:A case study from Sheepcote Valley [J].Journal of Environmental Management,2013,129(15):628~634.
[3]李舒,李偉波,宋世鵬 .三維地質(zhì)建模的應(yīng)用研究 [J].科學(xué)技術(shù)與工程,2008,24(8):9584~9587.
[4]劉少華,吳東勝,羅小龍,等 .復(fù)雜地質(zhì)體的三維建模與可視化方法的研究 [J].礦業(yè)研究與開發(fā),2007,27(2):56~58.
[5]Wycisk P,Hubert T,Gossel W,et al.High-resolution 3Dspatial modelling of complex geological structures for an environmental risk assessment of abundant mining and industrial megasites [J].Computers & Geosciences,2009,35(1):165~182.
[6]Jing Ming,Mao Pan,Honggang Qu,et al.GSIS:A 3Dgeological multi-body modeling system from netty cross-sections with topology [J].Computers & Geosciences,2010,36(6):756~767.