夏偉+呂曉琪+王月明+張信雪
摘 要: 為了實現海量、多維、時序等特點的海洋環境數據三維動態可視化表達,設計基于OSGEarth三維虛擬可視化平臺,并詳細闡述該系統的體系結構。將幾何著色器應用于對數據的渲染著色,同時利用GPU強大的處理能力加快渲染的速度;通過坐標變換,將數據可視化的結果緊密貼合在三維地球表面上;通過人機交互機制,進一步實現了海洋環境數據的動態可視化。實驗表明,該方法具有一定的可操作性,可以為海洋環境數據的動態可視化及分析提供技術平臺。
關鍵詞: 三維動態可視化; OSGEarth; 幾何著色器; 坐標變換; 人機交互; 海洋環境數據
中圖分類號: TN919?34 文獻標識碼: A 文章編號: 1004?373X(2018)04?0176?04
Abstract: To achieve the 3D dynamic visualization representation of massive and multidimensional marine environment data in time series, the 3D virtual visualization platform based on OSGEarth is designed, and the architecture of the system is described in detail. The geometry shader is applied to the color rendering of data. Meanwhile, the powerful processing capability of GPU is utilized to accelerate the rendering speed. The date visualization results are closely attached to the surface of the three?dimensional earth by means of coordinate transformation. The dynamic visualization of marine environment data is further realized by using the human?computer interaction mechanism. The experimental results show that the method is feasible and can provide the technology platform for dynamic visualization and analysis of marine environment data.
Keywords: 3D dynamic visualization; OSGEarth; geometry shader; coordinate transformation; human?computer interaction; marine environment data
0 引 言
近年來,隨著海洋科學技術的發展,面向海洋領域的應用日益加深,對于海洋環境數據的分析與表達已經成為一個研究熱點。為了有效地分析探究海洋環境數據的內在規律以及發展變化,三維動態可視化系統的研發已經成為一種趨勢。目前,針對海洋領域數據的統一管理與三維動態可視化表達,國內外學者都展開了相關研究,如肖如林等分析三維虛擬地球在海洋數據處理方面應用的優勢,并在此基礎上,研發了一套三維海洋信息操作平臺系統,實現了大量海洋環境數據的集成和可視化[1];涂超等采用插值法連續生成了海洋溫度的三維空間數據場,融合可視化技術,提出海洋溫度場的三維可視化方法[2];王想紅等基于NetCDF數據模型,實現了海洋環境數據三維可視化[3];Dunne等按照OGC數據傳輸標準,將多波束聲納數據集成到World Wind,實現了網絡三維表達[4];何亞文等重點介紹了時空可視化的方法,并提出了中國南海的海洋環境數據的可視化架構原型系統,突出了面向過程的可視化方法[5];李久松等結合VC++和CG著色語言,提出了包括探針功能、線模式等面向海洋、大氣數據的模式分析法,實現了海洋大氣數據向三維空間圖像的動態演變,在實時動態的可視化圖形的基礎上得到海洋大氣數據的動態變化過程[6];馮杭建等研究了基于海洋GIS的中國海岸帶及近海觀測數據的多維動態表達[7]。綜上所述,數據的可視化以及動態的可視化已經有較多的研究,但都局限于二維或者局部三維的可視化表達,沒能夠直觀地反應出全球海洋環境數據的動態宏觀特征。本文基于OSGEarth三維虛擬可視化平臺,以海量、多維、時序的海洋環境數據為研究對象,設計實現了海洋環境數據的三維動態可視化系統。對海洋環境信息的三維動態可視化表達與分析研究具有重大的現實意義和指導價值。
1 系統設計
本文以三維虛擬地球為平臺,實現了海洋數據的動態交互可視化的表達。系統主要包括數據層、服務層、渲染實現層以及顯示交互層,具體的框架結構如圖1所示。
數據層是建設海洋三維可視化原型系統的基礎,主要是指系統可加載的各類數據,包括全球數字正射影像圖(DOM)、全球數字高程圖(DEM)、海洋標量數據以及海洋矢量數據等。數據層還包括由其他系統或數據服務商提供的數據服務,該層數據可被渲染實現層直接調用繪制,也可通過服務層的數據服務進行加載。服務層用于管理和發布各類數據服務,實現多源數據的請求與響應。渲染實現層提供數據可視化及交互環境,主要包括功能接口實現層及交互控制層,其中前者是根據系統功能需求,設計系統所要執行操作的接口,確定接口參數,按照接口參數數據類型,將不同數據文件的讀取信息進行轉換,并傳入接口,實現具體圖形的繪制;而后者則響應用戶操作,結合三維可視化模塊實現自由交互。顯示層是三維場景渲染與顯示的載體,利用MFC通過獨立應用程序方式展現海洋環境信息,為用戶提供友好的交互平臺。endprint
2 動態可視化的實現
為了實現海洋數據的動態可視化,本文以海洋環境數據作為處理對象,利用幾何著色器將數據值映射為網格頂點的高度坐標,并得到對應點的顏色值,再通過顏色映射的方法實現海洋環境數據信息可視化效果。通過時間序列的表達方式,最后實現交互式的動態播放效果。具體的流程圖如圖2所示。
2.1 坐標變換
在全球數據動態可視化中,基礎網格結構往往會頻繁地發生變換[8],而球面網格因涉及大量的坐標變換等計算,導致網格重構速度較慢。為了解決該問題,本文在預處理階段僅生成一塊具有一定密度的平面網格,而在頂點著色器中利用GPU的強大并行處理能力對各頂點進行拉伸使之貼合地球表面。其具體步驟如下:
圖3中,平面網格的橫坐標對應地球緯度,縱坐標對應地球經度。數據值在完成坐標轉換后,采樣點已經具有三維坐標,且任意經緯度上的采樣點,都只有惟一的高度坐標與之對應。
2.2 交互式動態表達
因為海洋環境數據具有多維性、時序性的特點,為了實現數據融合后的動態可視化[9?10],本文依據時間序列對海洋環境數據采用幀動畫方法計算出每幀的圖像,并通過交互的方式選擇自動播放序列時間幀的圖像或者單個時間幀的圖像。具體的流程如圖4所示。
為了實現海量、多維、多時間的海洋環境數據交互動態可視化,首先,通過實時地調取不同時間點上的海洋環境數據,根據時間序列的順序在內存中生成繪制數據,并按一定的時間間隔將其傳輸至GPU中進行渲染繪制,最后顯示渲染結果;其次,通過對時間軸的控制來選擇數據是否連續播放,如果選擇連續播放,實現了海洋環境數據的動態表達,并且時間軸上的標尺隨時間的變化而變動位置;如果將時間軸上的標尺固定在某一時間段,那么就可以針對這一時間段的數據結果進行觀察分析。時間軸表現形式如圖5所示。
3 實驗結果分析
根據上述研究工作,本文設計并實現了海洋多特征遙感數據可視化原型系統。開發平臺所使用的操作系統為Windows 7,開發語言為Visual Studio C++ 2010,以OpenSceneGraph作為三維圖形引擎,三維地球顯示采用OSGEarth數字地球引擎,顏色映射表法,渲染功能使用GLSL著色語言編寫。實驗測試硬件配置如下:CPU為Intel i7,內存為8 GB,顯卡為英偉達GTX760TI。實現了海洋環境數據的可視化表達。數據覆蓋范圍為180°W~180°E,90°S~90°N,可視化窗口分辨率為1 920×1 080像素。
圖6為將本文方法應用于上述海洋環境數據的可視化結果,可以看出,利用顏色顏射的方法可以實現海洋環境數據的可視化,通過坐標轉換可以將其緊密貼合在三維地球表面。其中,圖6a)為海表溫度動態可視化效果,顏色深淺表示溫度高低,紅色表示溫度高,藍色表示溫度低,符合實際情況。同時,通過動態連續播放可以觀察全球溫度場的變化情況,從而給相關人員研究全球溫度場的變化提供思路與技術借鑒。圖6b)為葉綠素a濃度動態可視化效果,顏色深淺表示濃度高低,紅色表示濃度高,藍色表示濃度低,通過研究發現葉綠素a濃度與世界漁場的分布有關,從而根據動態可視化的結果可以為研究漁業發展提供相應的幫助。
4 結 語
本文針對海洋環境數據的多維、時序的特點,詳細闡述了可視化系統的結構框架,以及動態可視化實現流程。為了滿足可視化逼真的效果,通過坐標變化將可視化的結果緊密貼合在三維地球表面,通過人機交互機制,動態地將海洋環境數據進行可視化表達。結合對海量數據的管理、可視化等方法和虛擬地球場景,充分展現了研究對象在時間和空間上的變化情況,使科研和業務預報人員能夠同時從不同的要素來觀察整個海洋環境要素的時空變化,增強了系統的交互性。
參考文獻
[1] 肖如林,蘇奮振,杜云艷,等.三維虛擬地球的海洋信息適用性分析及原型研究[J].地球信息科學學報,2010,12(4):555?561.
XIAO Rulin, SU Fenzhen, DU Yunyan, et al. Analysis of 3D virtual globes′ applicability in marine information and the prototype system study [J]. Geo?information science, 2010, 12(4): 555?561.
[2] 涂超.海洋溫度場的三維可視化[J].武漢大學學報(工學版),2007,40(6):126?128.
TU Chao. 3D visualization of ocean temperature field [J]. Engineering journal of Wuhan University, 2007, 40(6): 126?128.
[3] 王想紅,劉紀平,徐勝華,等.基于NetCDF數據模型的海洋環境數據三維可視化研究[J].測繪科學,2013,38(2):59?61.
WANG Xianghong, LIU Jiping, XU Shenghua, et al. Visualization of marine environment data based on NetCDF data model [J]. Science of surveying and mapping, 2013, 38(2): 59?61.
[4] DUNNE D, SUTTON G. 3D web mapping integrating marine data into NASA world wind [J]. Hydro international, 2006, 10(9): 7?9.endprint
[5] HE Yawen, SU Fenzhen, DU Yunyan, et al. Web?based spatiotemporal visualization of marine environment data [J]. Chinese journal of oceanology & limnology, 2010, 28(5): 1086?1094.
[6] 李久松,常曉峰,田豐林,等.海洋和大氣數據多模式動態可視化系統的設計和實現[J].海洋科學,2014,38(1):10?14.
LI Jiusong, CHANG Xiaofeng, TIAN Fenglin, et al. The design and actualization of multimodal dynamic visualization system of marine and atmospheric data [J]. Marine sciences, 2014, 38(1): 10?14.
[7] 馮杭建,高錫章.中國海岸帶及近海觀測數據多維動態表達[J].浙江大學學報(理學版),2010,37(4):482?488.
FENG Hangjian, GAO Xizhang. Multi?dimensional and dynamic representation on marine measured data in China′ coastal zone and offshore [J]. Journal of Zhejiang University (Science edition), 2010, 37(4): 482?488.
[8] 董文,張新,江毓武,等.基于球體的海洋標量場要素的三維可視化技術研究[J].應用海洋學學報,2010,29(4):571?577.
DONG Wen, ZHANG Xin, JIANG Yuwu, et al. Sphere based ocean environment scalar field element 3D visualization technology research [J]. Journal of applied oceanography, 2010, 29(4): 571?577.
[9] 孔倩倩,韓勇,李文慶,等.海洋標量數據多維多模式動態可視化系統設計實現[J].微計算機信息,2011,27(5):177?179.
KONG Qianqian, HAN Yong, LI Wenqing, et al. A multi?dimension and animated visualization system for marine scalar field data with multi?mode [J]. Microcomputer information, 2011, 27(5): 177?179.
[10] 詹芳芳,胡偉,袁國棟.二維LIC矢量場可視化算法的研究及改進[J].計算機科學,2013,40(9):257?261.
ZHAN Fangfang, HU Wei, YUAN Guodong. Improvement of 2D LIC algorithm for vector field visualization [J]. Computer science, 2013, 40(9): 257?261.endprint