陳麗娜
(河南商丘師范學(xué)院計(jì)算機(jī)科學(xué)系,河南商丘 476000)
數(shù)據(jù)可視化在科學(xué)計(jì)算中的重要性是顯而易見的,然而,隨著大規(guī)模數(shù)據(jù)集的出現(xiàn),現(xiàn)在流體力學(xué)對(duì)仿真的要求更加嚴(yán)格,這嚴(yán)重的挑戰(zhàn)了現(xiàn)在的可視化技術(shù)[1],而且這個(gè)問(wèn)題隨著復(fù)雜問(wèn)題的出現(xiàn)而更加嚴(yán)重。流場(chǎng)的一個(gè)重要特性是它的拓?fù)浣Y(jié)構(gòu),由Helman和Hesselink于1987年提出的流場(chǎng)拓?fù)淇梢暬ㄊ且环N從全局了解矢量場(chǎng)結(jié)構(gòu)的新技術(shù)[2],它是一種全局圖標(biāo)的構(gòu)造和映射方法。拓?fù)淇梢暬▽⒘鲌?chǎng)中精確的定量信息用一種簡(jiǎn)單的圖表描繪出來(lái)。拓?fù)淇梢暬募记刹粌H已經(jīng)被應(yīng)用到簡(jiǎn)單流場(chǎng)中,而且已經(jīng)被應(yīng)用到復(fù)雜的流場(chǎng)比如渦流場(chǎng)。由此就產(chǎn)生了一個(gè)問(wèn)題,因?yàn)闇u流場(chǎng)是復(fù)雜流場(chǎng),它有許多干擾,所以有很多臨界點(diǎn),完全的拓?fù)淇梢暬瘜?huì)使圖像成簇,很模糊,因而很難正確解釋流場(chǎng)的結(jié)構(gòu)。
多級(jí)拓?fù)淇梢暬椒ㄔ趪?guó)內(nèi)外文獻(xiàn)中被多次提到過(guò)[3-4],該方法是選擇部分臨界點(diǎn)代替全部臨界點(diǎn)來(lái)顯示場(chǎng)的結(jié)構(gòu),而這些選擇的臨界點(diǎn)必須能夠代表流場(chǎng)的結(jié)構(gòu)。通過(guò)顯示這些被選擇的臨界點(diǎn),一個(gè)簡(jiǎn)單的能夠保持流場(chǎng)結(jié)構(gòu)的拓?fù)涿枥L圖被給出,達(dá)到對(duì)拓?fù)鋱D像進(jìn)行簡(jiǎn)化的目的。這些方法已經(jīng)被應(yīng)用到諸如風(fēng)場(chǎng)等一些場(chǎng)中,比如氣象污染學(xué)家關(guān)心霧的變化和風(fēng)場(chǎng)的關(guān)系,為了清晰顯示流的拓?fù)潢P(guān)系,這就要求顯示清晰的風(fēng)場(chǎng)拓?fù)鋱D像,用來(lái)描述場(chǎng)的全局結(jié)構(gòu)。傳統(tǒng)的拓?fù)浜?jiǎn)化方法都是先對(duì)采樣數(shù)據(jù)進(jìn)行過(guò)濾,然后再對(duì)剩余的數(shù)據(jù)進(jìn)行可視化,這樣的結(jié)果是導(dǎo)致了臨界點(diǎn)的位置和類型都有可能改變,這不是我們所希望看到的。本文基于統(tǒng)計(jì)學(xué)的原理,提出了一種稱為“對(duì)距離過(guò)濾”的拓?fù)浜?jiǎn)化方法,并將其應(yīng)用到海洋流場(chǎng),同時(shí)對(duì)不同級(jí)別的拓?fù)淇梢暬Y(jié)果進(jìn)行了比較。該方法不僅可以快速的可視化流場(chǎng)的主要特征而不顯得混亂,更有利于保持復(fù)雜流場(chǎng)的全局信息。
矢量場(chǎng)拓?fù)淇梢暬椒ㄊ怯蒆elman and Hesselink提出,它是建立在臨界點(diǎn)理論基礎(chǔ)之上。一個(gè)矢量場(chǎng)的拓?fù)溆膳R界點(diǎn)和連接臨界點(diǎn)的積分曲線或曲面組成,它使用流線連接臨界點(diǎn),把流場(chǎng)分為不同的區(qū)域。臨界點(diǎn)是流場(chǎng)中那些速度為零的點(diǎn),臨界點(diǎn)附近矢量場(chǎng)的特性由臨界點(diǎn)矢量對(duì)其位置矢量的偏導(dǎo)數(shù)矩陣Jacobian(雅可比矩陣)決定[5-6],即:
這里下標(biāo)指的是偏導(dǎo),臨界點(diǎn)是根據(jù)復(fù)特征值來(lái)分類,假定臨界點(diǎn)是雙曲的,也就是說(shuō),特征值的實(shí)部非零,那么可以將臨界點(diǎn)分為5類(中心點(diǎn)是非雙曲型的臨界點(diǎn),這里不再考慮):
*鞍點(diǎn)(S):特征值的虛部為0,且實(shí)部互為相反數(shù),即:I1=I2=0;R1R2<0;
*排斥結(jié)點(diǎn)(RN):特征值的虛部為0,且實(shí)部都是正的,即:I1=I2=0;R1>0;R2>0;
*吸引結(jié)點(diǎn)(AN):特征值的虛部為0,且實(shí)部都是負(fù)的,即:I1=I2=0;R1<0;R2<0;
*排斥焦點(diǎn)(RF):特征值是共額復(fù)數(shù),且實(shí)部都是正的,即:I1=I2≠0;R1>0;R2>0;
*吸引焦點(diǎn)(AF):特征值是共額復(fù)數(shù),且實(shí)部都是負(fù)的,即:I1=I2≠0;R1<0;R2<0。
二維臨界點(diǎn)的分類圖如圖1所示。
傳統(tǒng)的拓?fù)淇梢暬记稍趹?yīng)用到一般流場(chǎng)時(shí),可以快速顯示場(chǎng)的結(jié)構(gòu),在側(cè)重考慮場(chǎng)的特殊結(jié)構(gòu)時(shí)顯示出了較大的優(yōu)越性。而對(duì)于復(fù)雜的流場(chǎng),可視化的結(jié)果圖像可能是成簇、混亂,難以正確解釋的。渦流場(chǎng)就是流在空間變化比較大的場(chǎng),這種場(chǎng)如果用拓?fù)湫畔?lái)表示的話,意味著在小的空間范圍內(nèi)將會(huì)有很多臨界點(diǎn),以致于臨界點(diǎn)太多而成簇,反而顯示不出場(chǎng)的結(jié)構(gòu)特性。
圖1 二維臨界點(diǎn)分類圖
但是,在研究時(shí)發(fā)現(xiàn),全局流的結(jié)構(gòu)可以用全部臨界點(diǎn)的一個(gè)子集來(lái)描述,這就是意味著:可以對(duì)流場(chǎng)抽取多級(jí)拓?fù)鋪?lái)進(jìn)行拓?fù)浜?jiǎn)化。在操作的時(shí)候,用來(lái)顯示多級(jí)拓?fù)浣Y(jié)構(gòu)的臨界點(diǎn),應(yīng)該局限于能描述一定比例流模式的那些點(diǎn),那些決定小空間范圍流模式的臨界點(diǎn)應(yīng)該被忽略,這樣就減少了臨界點(diǎn)的數(shù)量,同時(shí)又保證了流場(chǎng)主要的拓?fù)浣Y(jié)構(gòu)。
為了實(shí)現(xiàn)多級(jí)拓?fù)鋪?lái)進(jìn)行拓?fù)浜?jiǎn)化,傳統(tǒng)的方法是過(guò)濾原始數(shù)據(jù)產(chǎn)生衍生數(shù)據(jù),然后再對(duì)這些數(shù)據(jù)進(jìn)行可視化。也就是說(shuō),過(guò)濾掉不合條件的數(shù)據(jù)(比如說(shuō),一個(gè)“低通”的過(guò)濾可以用來(lái)限制一些高頻的模式,也就是那些小范圍空間的流的模式),然后對(duì)剩下的數(shù)據(jù)再進(jìn)行可視化,抽取臨界點(diǎn),那些被小范圍的干擾所引起的流已經(jīng)被過(guò)濾掉了。
盡管該方法概念上很容易理解,在某些情況下會(huì)取得我們所希望的結(jié)果。但是它有很多不足,由于對(duì)原始數(shù)據(jù)進(jìn)行了過(guò)濾,所以有時(shí)候盡管保持了流的主要的特征,但原始數(shù)據(jù)的臨界點(diǎn)和簡(jiǎn)化后抽取的臨界點(diǎn)沒有必然的關(guān)系,臨界點(diǎn)的位置和類型都有可能發(fā)生改變,這并不是我們所希望看到的。
本文提出了一種稱為“對(duì)距離過(guò)濾”的方法。該方法與傳統(tǒng)方法不同,它是先對(duì)原始數(shù)據(jù)進(jìn)行可視化產(chǎn)生臨界點(diǎn),然后再對(duì)臨界點(diǎn)進(jìn)行采集,過(guò)濾掉可以忽略的臨界點(diǎn),剩下的就是能保持流場(chǎng)結(jié)構(gòu)的臨界點(diǎn)(這里只對(duì)臨界點(diǎn)操作,不考慮流場(chǎng)周圍的附加信息)。該方法的原理是基于拓?fù)鋵W(xué)的知識(shí)。拓?fù)鋵W(xué)認(rèn)為:流的小范圍的干擾將產(chǎn)生一對(duì)臨界點(diǎn),鞍點(diǎn)和非鞍點(diǎn)[7-9]。比如說(shuō),一個(gè)二維的渦核的拓?fù)浣Y(jié)構(gòu)包含一個(gè)焦點(diǎn)和一個(gè)鞍點(diǎn)。這對(duì)臨界點(diǎn)的距離說(shuō)明了臨界點(diǎn)的大小,從流場(chǎng)中移走這個(gè)臨界點(diǎn)對(duì),不會(huì)改變剩下流場(chǎng)的結(jié)構(gòu),也就是說(shuō),包含一個(gè)鞍點(diǎn)和其他類型的臨界點(diǎn)的這樣的臨界點(diǎn)對(duì),可以從流場(chǎng)中移走,這稱為“對(duì)距離過(guò)濾”。
在具體實(shí)現(xiàn)的時(shí)候,“對(duì)距離過(guò)濾”可以分以下步驟:
(1)首先對(duì)臨界點(diǎn)進(jìn)行定位和分類。
(2)然后做所有鞍點(diǎn)和其他非鞍點(diǎn)類型的臨界點(diǎn)之間的距離矩陣。
(3)在位置上距離最小的臨界點(diǎn)對(duì)可以從流場(chǎng)中移走。這樣迭代實(shí)現(xiàn),直到剩下的臨界點(diǎn)對(duì)的距離大于所設(shè)定的初始值。
這里初始值的設(shè)置很重要,它取決于初始數(shù)據(jù)的大小。
對(duì)一特定海洋流場(chǎng),該區(qū)域大約有 5 000個(gè)采樣數(shù)據(jù)點(diǎn)(L=5 000),使用傳統(tǒng)的可視化技巧[9]所得到的圖像如圖2所示。使用該方法總共有 26個(gè)臨界點(diǎn),其中包括 13個(gè)鞍點(diǎn)和 13非鞍點(diǎn)。
圖2 一特定海洋流場(chǎng)的拓?fù)浣Y(jié)構(gòu)圖
而使用“對(duì)距離過(guò)濾”的方法,可以得到在不同的初始值的情況下的拓?fù)鋱D像。則簡(jiǎn)化后的圖像如圖3、4、5、6所示。
這里實(shí)現(xiàn)的時(shí)候,仍然和傳統(tǒng)的拓?fù)浞治龇ǖ牟襟E相同,即:首先使用二分法找出臨界點(diǎn)的位置,然后根據(jù)可比矩陣特征值的正負(fù)確定臨界點(diǎn)的類型,最后使用四階龍格-庫(kù)塔法繪制出積分曲線。只不過(guò)在確定臨界點(diǎn)并分類之后,需要再做所有鞍點(diǎn)和其他非鞍點(diǎn)類型的臨界點(diǎn)之間的距離矩陣,將距離小于某個(gè)特定初始值的那些臨界點(diǎn)對(duì)從流場(chǎng)中移走,剩下的那些臨界點(diǎn)對(duì)就是可以代表流場(chǎng)結(jié)構(gòu)的臨界點(diǎn)了。
由于采用的數(shù)據(jù)是離散的采樣數(shù)據(jù)進(jìn)行建模之后得到的網(wǎng)格數(shù)據(jù),所以這里初始值的選擇和網(wǎng)格大小有關(guān)。L*0.00 001也就是將鞍點(diǎn)和其他臨界點(diǎn)對(duì)的距離小于半個(gè)網(wǎng)格的臨界點(diǎn)對(duì)從圖像上移走;L*0.00 002是將鞍點(diǎn)和其他臨界點(diǎn)對(duì)的距離小于一個(gè)網(wǎng)格的臨界點(diǎn)對(duì)從圖像上移走;依次類推,這里簡(jiǎn)化到那種程度主要是依賴于經(jīng)驗(yàn)或者實(shí)際情況的需要。
從以上圖像可以看到,圖3、4、5、6中分別有 1個(gè)、3個(gè)、4個(gè)和 7個(gè)鞍點(diǎn)被過(guò)濾掉了。這里圖像上為了直觀,仍然保留了鞍點(diǎn)及其臨界點(diǎn),但是拓?fù)鋱D像被移去了。這里簡(jiǎn)化到圖6即可,可以保證小范圍的流結(jié)構(gòu)被過(guò)濾掉。
從以上可以看到,“對(duì)距離過(guò)濾”法可以簡(jiǎn)化流場(chǎng)的拓?fù)浣Y(jié)構(gòu),簡(jiǎn)化之后的流場(chǎng)仍能夠代表原來(lái)流場(chǎng)的主要結(jié)構(gòu),所以仍然有實(shí)際意義。傳統(tǒng)的拓?fù)淇梢暬椒?會(huì)造成的視覺的混亂,而使用該方法,混亂情況則可以被避免。另外,該方法還可以并行進(jìn)行,用戶可以交互,以此來(lái)觀察時(shí)變場(chǎng)的特征[10-11],并且可以對(duì)某些區(qū)域進(jìn)行放大以看到更詳細(xì)的信息,或者縮小以看到全局的信息。如今,隨著數(shù)據(jù)量的大量增加,有時(shí)候更關(guān)心的是全局的信息,因此,該簡(jiǎn)化方法更是簡(jiǎn)單實(shí)用的可視化技巧。
論文提出了一種簡(jiǎn)單實(shí)用的拓?fù)浜?jiǎn)化技巧,它給用戶提供了一種清晰的可以保持原來(lái)流全局特征的可視化機(jī)制。并將該方法應(yīng)用于特定的海洋流場(chǎng),同時(shí),對(duì)不同級(jí)別的拓?fù)淇梢暬Y(jié)果進(jìn)行了比較。
[1] 王國(guó)強(qiáng),陳家新.虛擬制造可視化環(huán)境技術(shù)研究現(xiàn)狀及發(fā)展趨勢(shì)[J].河南科技大學(xué)學(xué)報(bào):自然科學(xué)版,2004,25 (4):20-24.
[2]Helman JL,Hesselink L.Visualizing Vector Field Topology in Fluid Flows[J].IEEEComputer Graphics and App lications, 1991,11(3):36-46.
[3] De Leeuw W,Van Liere R.Multi-level Topology for Flow Visualization[J].Computers&Graphics,2000,24(3):325-331.
[4] 吳克勤,楊冠杰,尚海霞.與物理特征相關(guān)的平面向量場(chǎng)的拓?fù)浜?jiǎn)化及壓縮[J].計(jì)算機(jī)輔助設(shè)計(jì)與圖形學(xué)學(xué)報(bào), 2006,(18):656-660.
[5] Tricoche X,Scheuermann G,Hagen H.A Topology Simplification Method for 2D Vector Fields[J].IEEE Visualization'00 Proceedings,IEEE Computer Society Press,Los Alamitos,2000(5):359-366.
[6] 張 文,李曉梅.基于流線紋理合成的2D矢量場(chǎng)可視化[J].中國(guó)圖像圖形學(xué)報(bào),2001,6(3):280-284.
[7] 劉占平,汪國(guó)平,董士海.一種新的VolumeLIC可視化方法[J].中國(guó)圖像圖形學(xué)報(bào),2001,6(5):470-474.
[8] 陳麗娜,楊冠杰.快速檢測(cè)流場(chǎng)中渦核區(qū)域的角度函數(shù)法[J].工程圖學(xué)學(xué)報(bào),2008(1):146-149.
[9] 陳麗娜.用拓?fù)浣Y(jié)構(gòu)分析法實(shí)現(xiàn)平面向量場(chǎng)可視化[J].西南民族大學(xué)學(xué)報(bào):自然科學(xué)版,2009(1):183-186.
[10] Reinders F.Feature-Based Visualization of Time-Dependent Data[D].PhD Thesis:Delft University of Technology,The Netherlands,2001.
[11] Reinders F,Post F H,Spoelder H JW.Visualization of time-dependent Data Using Feature Tracking and Event Detection [J].The Visual Computer,2001(5):55-71.