吳向榮,李郅明,黃錦龍,賈峰,余肖翰,劉曉春(.國家海洋局廈門海洋預報臺,福建廈門36000;.蘇州市數(shù)字城市工程研究中心有限公司,江蘇蘇州5000)
?
海洋水動力數(shù)值預報產品三維可視化表達探討
吳向榮1,李郅明1,黃錦龍1,賈峰1,余肖翰1,劉曉春2
(1.國家海洋局廈門海洋預報臺,福建廈門361000;2.蘇州市數(shù)字城市工程研究中心有限公司,江蘇蘇州215000)
摘要:利用可視化及虛擬現(xiàn)實技術,實現(xiàn)了海洋預報結果三維可視化,將數(shù)值預報結果所要表達的內容以直觀的三維形式展示出來,提供一個直觀、生動、動態(tài)、逼真且多方位、多角度預報結果展示平臺,并通過對海洋水動力要素(海浪、潮位、海流)可視化表達方法探討分析,說明海洋預報三維可視化研究具有廣闊的應用前景,必將成為海洋預報結果展示發(fā)展趨勢。
關鍵詞:數(shù)值預報;虛擬現(xiàn)實;虛擬海洋環(huán)境;可視化
海洋環(huán)境預報、海洋災害預警服務是以實時海洋觀測資料為基礎,采用先進的數(shù)值模擬技術為手段,對未來海洋環(huán)境演變做出預測,并且對即將可能發(fā)生的海洋災害做出預警。海洋環(huán)境預報、海洋災害預警服務為協(xié)助海洋行政主管部門在海洋防災減災工作方面提供了科技支撐,提高了海洋職能部門的決策能力,極大地降低了海洋災害給社會經濟造成的損失,保障人民生命、財產安全。
但是,隨著海洋經濟的快速發(fā)展,當前的海洋環(huán)境預報和海洋災害預警服務已經不能滿足經濟發(fā)展的要求,尤其是海洋環(huán)境預報產品以及海洋環(huán)境預警信息二維形式表達,在刻畫復雜海洋環(huán)境及海洋環(huán)境要素時空關系方面存在不足,給政府職能部門和海洋管理部門的使用帶來不便,同時也不利于普通大眾對海洋數(shù)值預報信息的認知,阻礙了海洋數(shù)值預報信息的普及。
三維可視化技術為海洋數(shù)值預報要素的表達提供了新的發(fā)展方向,愈來愈多的研究者開始探索如何將三維可視化技術應用于海洋環(huán)境要素的分析、處理與表達,這也是海洋環(huán)境和信息多維動態(tài)可視化研究的熱點之一。目前,海洋要素的三維可視化研究主要體現(xiàn)在海岸帶場景建模、海浪等要素的三維模擬等方面。如Damien等研究了一種自適應網格模型來生成海面效果,并將PM譜與Gerstner模型相結合從而生成深海波浪[1];Pozzer等研究了如何采用凹凸紋理映射方法來對海浪進行建模的方法,最終利用固體空間動畫技術對海浪進行三維動畫模擬[2];王勝正在構建了一個新穎的海浪模擬架構基礎上,研究了一個基于統(tǒng)計模型與FFT的波浪生成方法[3];Google也于2009年初推出了可以大范圍展現(xiàn)海底地形的Google Ocean[4]。但是,這些研究主要是面向海洋環(huán)境或單一要素的可視化,且功能較為單一,沒有將海洋水動力多要素集成進來。另外,基于真實數(shù)據場的數(shù)值預報三維可視化研究還相對較少,鮮有基于三維技術構建海洋預報信息可視化產品的案例。為解決現(xiàn)有數(shù)值預報結果單一、抽象的局限性,本文對海洋預報三維可視化進行了初探,將三維可視化技術及虛擬現(xiàn)實技術應用于海洋預報工作中,以數(shù)值預報結果作為水動力要素本底數(shù)據,通過可視化模型計算,模擬海洋真實場景(海面起伏、潮漲潮落、礁石岸線淹沒等),并利用三維建模技術再現(xiàn)海岸和海面景觀,最終加上實際光照條件下的光影效果,將實時動態(tài)的海洋場景與靜態(tài)的岸邊景物相結合,模擬展示預報結果,為決策部門和廣大市民提供一個直觀、生動、動態(tài)、逼真且多方位、多角度的預報結果展示平臺。
海洋水動力數(shù)值預報產品三維可視化將科學可視化和虛擬現(xiàn)實技術相結合,在虛擬地理環(huán)境中實現(xiàn)數(shù)值預報產品科學可視化,并支持交互式操作,在對預報產品進行科學可視化同時,還增強了用戶的沉浸感。
目前大多數(shù)的海洋數(shù)值預報產品表達主要是以二維圖形方法進行展現(xiàn),輔助以經緯度網格線和簡單的二維地圖作為背景。本文探討不只是將海洋現(xiàn)象的科學可視化從二維提升到三維,而且還引入了虛擬現(xiàn)實技術,構建了三維虛擬地理環(huán)境,同時又增加了時間維,將各項預報信息按時間進行動態(tài)顯示。
2.1虛擬現(xiàn)實技術
基于三維可視化技術,同時結合海岸帶高程數(shù)據、海岸帶及近岸遙感影像數(shù)據、岸線數(shù)據、水深地形數(shù)據等,研究構建海岸帶三維地形與海洋水體環(huán)境的方法,并選擇典型的海岸陸地景觀(如房屋、道路、綠地等)建立三維模型,構建出虛擬的近海海洋三維場景要素,以生成一個逼真的海洋虛擬環(huán)境。
三維海洋環(huán)境建模在海洋預報中起著重要的作用,通過基于數(shù)字高程模型(DEM)和數(shù)字正射影像(DOM)構建海岸帶模型,可以準確地模擬海水對海岸線及陸地的淹沒情況,從而為海洋災害預防和減災提供定量定性的輔助決策服務。
2.2數(shù)據場的可視化映射技術
海洋預報產品可視化系統(tǒng)主要研究在三維虛擬地理環(huán)境中實現(xiàn)對海洋數(shù)據的科學可視化,幫助用戶理解那些錯綜復雜且以規(guī)模龐大的數(shù)字形式呈現(xiàn)的海洋現(xiàn)象。
由于系統(tǒng)所用的數(shù)據是以NetCDF格式輸出的數(shù)值預報結果數(shù)據集,所以需要先將這些數(shù)據集處理為三維空間數(shù)據場模型,然后實現(xiàn)對三維數(shù)據場的可視化。這需要對數(shù)值預報模擬模型生成的數(shù)據進行預處理,針對每種數(shù)據的特點進行數(shù)據集的自適應歸一化處理;結合不同的海洋要素可視化方法進行數(shù)據映射,形成幾何數(shù)據、圖像數(shù)據;再利用OpenGL繪制三維場景,將不同時刻的數(shù)據進行動態(tài)加載,從而實現(xiàn)動態(tài)顯示。
以基礎地理數(shù)據、遙感影像數(shù)據、海岸帶及近岸高程數(shù)據、水深地形數(shù)據等為基礎,以海洋水動力數(shù)值模式輸出信息產品為支撐,引入實時三維可視化技術及虛擬現(xiàn)實技術,構建出虛擬的海洋場景要素,搭建逼真的基于真實海洋地理信息數(shù)據的交互式三維海洋虛擬環(huán)境,探討海洋水動力要素可視化方法,包括海浪、潮位、海流等海洋要素的展示。分析海洋數(shù)值模式輸出數(shù)據格式,再通過OpenGL三維可視化技術,構建海面網格,進行海洋環(huán)境要素建模,網格賦值、添加紋理渲染,從而將抽象、難于理解的海洋水動力數(shù)值預報結果以三維圖形圖像的形式予以展示(見圖1)。
圖1 系統(tǒng)框架圖
3.1海洋場景可視化建模
三維海洋場景的虛擬建模主要包括海洋地理環(huán)境數(shù)據處理和利用獲得的信息進行三維建模兩個重要部分。本文研究的三維海洋虛擬場景的建模需要獲得海岸帶的坐標、高程和重要場景信息并對其進行預處理。對擬建模的海洋地理環(huán)境進行三維數(shù)據采集,包括DEM數(shù)據、戶外紋理采集等。利用DEM數(shù)據構建出三維地形模型;戶外采集的地物紋理經過處理后用于構建三維實體模型,包括建筑物、道路、林木等實體模型共同組成地物模型集;將地物模型和三維地形進行匹配,并運用此數(shù)據進行幾何網格建模,為紋理映射做準備;同時結合遙感影像數(shù)據和實地圖像數(shù)據,與幾何網格互相匹配形成最終的三維海洋場景模型。該場景可以直觀清晰的展現(xiàn)地形的起伏情況以及城市建筑物的分布情況,從而可以更準確地模擬出海洋預報結果的參照物,為海洋災害預防和減災提供輔助決策服務(見圖2)。
在構建三維地形模型中,可采用GRID格式的DEM或TIN格式的DEM。由于本系統(tǒng)建模地區(qū)面積不大,為了較好的表現(xiàn)復雜地形,在綜合研究后,最終選擇采用TIN格式的DEM來構建三維地形模型。TIN數(shù)據能充分利用地貌的點、線來較好地表示復雜地形,并可根據實地情況和不同地形選取合適的采樣點個數(shù),有效地進行地形分析和繪制立體圖。但其數(shù)據存儲與操作復雜,一般適于表示較小區(qū)域的高精度地形,而且在模型構造和紋理映射上也會耗費大量計算時間。但近年來計算機軟硬件技術發(fā)展迅速,多數(shù)支持圖形顯示的硬件都對三角網構建進行了優(yōu)化,在TIN數(shù)據的快速生成、壓縮存儲以及應用等方面已經取得了突破性進展。
3.2海洋水動力數(shù)值預報結果可視化
探討海洋水動力要素可視化模擬方法(包括海浪模擬、潮位模擬和海流模擬),分析數(shù)值預報模式輸出格式,探索海洋水動力要素數(shù)值模式模擬結果可視化的方法并予以實現(xiàn),借助三維可視化技術將難理解的、抽象的海洋水動力數(shù)值模擬結果數(shù)據通過三維圖形、圖像等表達形式進行展示。
3.2.1海浪可視化
海浪三維可視化的基本過程是:首先對海浪數(shù)值模式輸出的預報數(shù)據進行處理,進行坐標轉換,然后提取海浪點,并構建海面網格;再利用海浪譜,構建海浪波;進而對海面進行紋理映射及光照處理,渲染后即可得到海浪的可視化結果。最后利用OpenGL繪制三維場景,將時間作為另外一維加入,通過迭代更新網格點的參數(shù)值,得到海浪的動態(tài)表示。主要步驟如下:
(1)數(shù)據處理
為了減少數(shù)據冗余,提高效率,將海浪場預報的樣本數(shù)據沿地形范圍截??;同時將海浪場的坐標與海洋場景地理環(huán)境坐標統(tǒng)一至同一坐標系統(tǒng),并根據浪高值,將海洋點和陸地點區(qū)分開,提取海浪點。
(2)構建海面網格
本文采用基于視點的多分辨率劃分的網格模型[5]來構建海面網格,其基本思想是:以觀察者的視點作參照點,距離參照點近的地方分辨率較高,距離參照點遠的地方分辨率劃分較低。整個海面可以劃分成大量平鋪不等的正方形,由于網格隨著視點移動而變化,避免了對無窮海域的剪裁,節(jié)省存儲空間。如何把握網格劃分粒度則需要在實驗中反復測試,在實時性和真實感之間選取最佳效果。使用基于視點的多分辨率網格劃分結構對海面進行繪制,它能基于視點實時高效的生成多層次網格,離視點近的海面劃分的網格小,數(shù)目多,相反離視點遠的海面劃分的網格大,數(shù)目就少。這樣視點近處的海面就呈現(xiàn)出較好的真實感,視點遠處的海面被自動地進行了平滑。所以采用基于視點原理的不規(guī)則網格拓撲結構繪制海浪,當視點變化移動時,海浪的繪制速度和逼真度并不會降低,也沒有明顯的圖像跳躍現(xiàn)象。該方法由于采用多層不規(guī)則網格,計算量相對較小,通過鼠標、鍵盤實時選取控制模擬區(qū)域,便于實現(xiàn)。
(3)海浪建模
海浪模型的建立是海浪模擬的基礎,它很大程度上決定了海浪模擬效果的優(yōu)劣。目前,常用的海浪建模方法主要有:基于動力模型、基于幾何造型、基于海浪譜和基于粒子系統(tǒng)4種。綜合考慮效率和效果兩個指標,選擇基于海浪譜建模方法。
海浪譜又稱為“能量譜”,是用來表示作為隨機過程的海浪的能量與各組成波的分布關系。海浪譜通常根據定點波剖面記錄,通過特殊的譜分析方法計算得到?;诤@俗V的建模方法采用適當?shù)暮@俗V反演方法模擬海浪,通常采用線性迭加法。這種方法概念清晰,計算快速方便,且模擬結果和海浪譜比較吻合,利用率較高。目前,F(xiàn)FT方法(快速傅利葉變換)是線性疊加法中應用較多的?;诤@俗V建模方法的核心思想是模擬生成一個與真實海面有相同譜性的高度場。而通過FFT則可以合成一個類似海浪譜分布的高度場?;贔FT變化的海浪模擬,是眾多海浪模擬方法中效果比較逼真的一種模擬方法。且與基于動力模型方法比較起來,其計算量小,更適合實時虛擬海浪的生成,具有一定真實性。
(4)海浪渲染
如果只通過波高來表現(xiàn)海浪的起伏,形成的動態(tài)海面只是一個粗糙的輪廓,缺乏真實感,為了生成更加逼真的海浪,必須對海浪模型進行實時渲染,即添加海面紋理,進行紋理映射及光照處理等海浪渲染手段,才可得到逼真的海浪可視化效果。同時利用OpenGL技術繪制三維場景,將時間作為另外一維加入,主要表現(xiàn)為海浪場預報數(shù)據的動態(tài)顯示和更新。從而可以通過迭代更新網格點的參數(shù)值,得到海浪的動態(tài)表示(見圖3)。
圖2 地形和建筑物可視化
圖3 海浪可視化效果展示
3.2.2潮位可視化
潮位的變化,描述的是海洋表面高度周期性的漲落現(xiàn)象。潮位的可視化著重表現(xiàn)海洋漲落潮過程的起伏形態(tài),對潮間帶沙灘、巖石、堤防等淹沒程度及范圍的變化過程,并添加各種光照效果以營造出較真實的場景。潮位模擬可視化實現(xiàn)的過程為:
(1)數(shù)據處理
統(tǒng)一高程:由于基礎地理信息數(shù)據高程采用的是85黃零,模擬潮位數(shù)據需統(tǒng)一到85黃零高程基面。
高、低潮處理:潮位數(shù)據包括整點數(shù)據以及高、低潮數(shù)據。高、低潮數(shù)據代表著一天中海面高度漲落的極值現(xiàn)象,不可忽略,為了能夠將高、低潮準確地體現(xiàn)出來,將高、低潮數(shù)據按時間填充到整點的潮位數(shù)據中。
潮位網格賦值:建立潮位網格,網格坐標采用與基礎地理信息數(shù)據統(tǒng)一的坐標系。
(2)潮位可視化方法
潮位網格賦值完成后,基于潮位值構建海面網格,并添加紋理進行渲染,從而得到海面的表達。然后隨著時間變化將海面的高度按照潮位值進行變化,從而達到潮位的三維可視化。
(3)動態(tài)顯示
將整點時間和高潮時刻潮位情景按順序連續(xù)顯示,實現(xiàn)動態(tài)效果,并實時顯示預報時間、潮位值及高、低潮等信息(見圖4)。
3.3.3海流可視化
海流屬于流體的運動,是海水在海洋中的流動。對于流體的運動,現(xiàn)實中是無法直觀表現(xiàn)的。流體的運動在計算機實現(xiàn)方面,計算機是要通過圖形來表現(xiàn)可見物的,不可見的流體需要借助其他符號或物體來表現(xiàn)。在傳統(tǒng)的預報中,流場通過歐拉法的靜態(tài)圖像進行展示,使用符號和顏色表達。對于海流的表現(xiàn)形式,本研究采用幾何體——三維箭頭的方式,用箭頭的方向指示海流的方向,箭頭的長度與流速大小成比例,顏色表達流速的大小。
目前在動態(tài)顯示方面,基于歐拉法的流場無法表現(xiàn)出海水運動位置變化以及海水運動等效果。為提高流場運動模擬的真實效果,本研究采用拉格朗日法追蹤流體中各質點的運動過程,從而展現(xiàn)流體中各水質點隨時間變化的運動軌跡及其運動速度和方向。具體做法為通過Delaunays三角形化方法實現(xiàn)網格自動剖分和局部加密網格將流場劃分生成非結構化網格,并在流場中布設一定量水質點作為跟蹤目標,采用射線尋址掃描的方法來尋找質點運動的位置,經轉換及函數(shù)插值算法,著重對流速矢量分布進行合理地控制及流場幾何邊界的處理,以矢量箭頭表示當前時刻的流速和流向,隨著時間的推移,跟蹤所有水質點的位置變化,從而營造出海流運動以及海水輻聚、輻散等效果(見圖5)。
圖4 潮汐可視化效果展示
圖5 海流可視化效果展示
本研究利用三維可視化技術,構建基于真實地理數(shù)據的虛擬海洋場景,探討了海洋水動力要素可視化展示方法,通過浪、潮、流的可視化將海洋水動力數(shù)值預報結果所要表達的內容以直觀的三維形式展示出來。本文研究的海洋水動力數(shù)值預報結果三維可視化是海洋預報三維可視化展示的一次有效嘗試,但是由于預報模式網格空間分辨率較粗,數(shù)據稀疏且變化不大,無法細致體現(xiàn)出局部變化情況。因受計算能力的限制,同時考慮到用戶的操作等待時間不能過長,部分可視化模塊的實現(xiàn)只能選擇計算相對簡單的仿真技術,如果為了追求逼真度,需大規(guī)模、頻繁地使用如粒子系統(tǒng)等復雜的仿真技術,其計算量將急劇增長,這對仿真系統(tǒng)的穩(wěn)定性影響是災難性的。因此本研究不管是在數(shù)值預報的精細化程度和準確率上,還是在虛擬現(xiàn)實技術應用上,都有很大的提升空間。
隨著科技的發(fā)展海洋預報三維可視化必將是未來預報的發(fā)展趨勢,其應用前景是廣闊的。用三維場景來展示預報,使得數(shù)值預報的計算結果一目了然,并且預報數(shù)據與實測數(shù)據作比對,實時視頻與模擬場景作進一步參照,將使海洋預報三維可視化系統(tǒng)成為一個直觀、生動、動態(tài)、逼真且多方位、多角度的預報結果展示平臺。
參考文獻:
[1] Hinsinger D, Neyret F, Cani M -P. Interactive Animation of Ocean Waves[C]. Proceedings of the 2002 ACM SIGGRAPH/EG Symposium on Computer Animation (SCA), 2002: 161-166.
[2] Pozzer C T, Pellegrino R S M. Procedural solid-space techniques for modeling and animating waves[J]. Computer & Graphics, 2002, 26(6): 877-885.
[3]王勝正.一種實時的3D動態(tài)海洋模擬新方法[J].計算機應用,2007, 27(5): 1147-1149.
[4]劉金,姜曉軼,李四海.數(shù)字海洋水體模型建立與三維可視化技術研究[J].海洋通報. 2009, 28(4): 141-146.
[5]王金華,嚴衛(wèi)生,劉旭琳.一種簡化虛擬海洋環(huán)境建模與渲染方法[J].系統(tǒng)仿真學報, 2009, 21(12): 3985-3988, 3996.
[6]張中偉,汪慶偉.虛擬現(xiàn)實及其在海洋技術中的應用[J].黑龍江科技信息, 2008, (21): 15, 59.
[7]韓李濤,朱慶,侯澄宇.構建虛擬海洋環(huán)境若干問題探討[J].海洋通報, 2006, 25(4): 85-91.
[8]尹寶瑞.基于OpenGL虛擬海洋環(huán)境仿真[D].哈爾濱:哈爾濱工程大學, 2010.
[9]張承慧,馬同星,姬鵬.基于WebGIS技術的海洋環(huán)境在線監(jiān)測信息系統(tǒng)[J].應用基礎與工程科學學報, 2006, 14(1): 129-136.
[10]周思躍,龔振邦.虛擬現(xiàn)實定義的探討[J].計算機仿真, 2006, 23 (9): 219-222.
[11]唐澤圣.三維數(shù)據場可視化[M].北京:清華大學出版社, 1999.
[12]姚志強,李建勝,陳景偉,等.一種基于GPU的實時水波模擬方法[J].測繪科學, 2008, 33(S1): 92-94.
[13]趙新華,孫堯.虛擬現(xiàn)實技術在虛擬海洋環(huán)境中的應用[J].應用科技, 2006, 33(10): 56-59.
[14] Latta L. Building a million particle system [C].// Game Developers Conference. San Francisco: Think Services Game Group, 2004.
[15]劉洋.虛擬海浪實時仿真技術研究[D].秦皇島:燕山大學. 2007.
[16]徐俊波.基于OpenGL的科學可視化算法研究與實現(xiàn)[D].哈爾濱:哈爾濱工程大學, 2005.
[17]王成恩,姜傳彥,武新宇.基于幾何圖形的矢量場可視化技術[J].東北大學學報(自然科學版), 2011, 32(3): 327-330.
[18]呂珍.基于OpenGL的流場數(shù)據可視化技術[D].武漢:武漢理工大學, 2007.
Discussion for marine forecast 3-D visualization
WU Xiang-rong1, LI Zhi-ming1, HUANG Jin-long1, JIAFeng1, YU Xiao-han1, LIU Xiao-chun2
(1. Xiamen Marine Forecast Station of SOA, Xiamen 361008 China; 2. Suzhou Digital City Engineering Research Center Co.,LTD, Suzhou 215000 China)
Abstract:Based on the visualization and virtual reality technology, the marine forecast results shown in a 3D visualization way are realized. The expression of numerical prediction results in the form of 3D intuitively could provide the public an intuitive, vivid, dynamic, realistic and multi-faceted, multi-angle forecasting results showing platform. Through discussion of the visual display method of marine hydrodynamic elements including wave, tide, currents and so on, it illustrate 3D visualization research of marine forecast has a board application prospect, and will certainly become the trend of marine forecast results show.
Key words:numerical forecast; virtual reality; virtual marine environment; visualization
作者簡介:吳向榮(1974-),女,高級工程師,碩士研究生,主要從事海洋觀測預報工作。E-mail:wxr_xm@163.com
基金項目:國家海洋局海洋公益性行業(yè)科研專項(201005036)
收稿日期:2014-06-11
DOI:10.11737/j.issn.1003-0239.2015.02.012
中圖分類號:P317.4
文獻標識碼:A
文章編號:1003-0239(2015)02-0079-06