溫 魯, 李曉彬, 李亞偉,, 宋 磊
(1.武漢理工大學 交通學院, 湖北 武漢 430063; 2.山東交通學院 船舶與輪機工程學院, 山東 濟南 250357)
三維視景仿真是船舶操縱模擬器的重要組成,由于三維視景系統(tǒng)本身具有精度高、真實性強、實時性好的特點,因此在船舶操縱模擬器中占重要地位[1-2]。以往在三維視景仿真時,數(shù)據(jù)采集較慢且地形圖獲取較困難,而采用Google Earth獲取地形圖則能避免以上問題,且只需經(jīng)過等高線和矢量化方法的處理,就可得到能夠用于生成三維視景模型的數(shù)字高程模型(Digital Elevation Model, DEM)。在船舶操縱模擬器的研究上,國內(nèi)船舶研究機構起步較晚[3-4],廖河樹[5]全面系統(tǒng)地介紹了大型船舶操縱模擬器的系統(tǒng)組成,對航海模擬器的研制、開發(fā)和使用提供了支持。施朝健等[6]對國內(nèi)船舶操縱模擬器三維視景仿真系統(tǒng)的技術性能標準進行調查和分析,將船舶操縱模擬器分成3個級別(C1~C3)。王勝正等[7]針對船舶操縱模擬器中的虛擬現(xiàn)實系統(tǒng)進行研究,改進視景系統(tǒng)中海浪渲染方法、分布式渲染技術以及投影圖像校正與融合技術。本文重點研究從矢量化角度進行三維地形建模的過程,將通過Google Earth獲取的地形圖像轉換成矢量化的格式文件,運用WinTopo、MapInfo和FME軟件把矢量化的地形文件轉換成DEM地形文件,再利用Multigen Creator的紋理映射和多細節(jié)層次(Levels of Detail, LOD)技術完成上海洋山港港區(qū)三維地形模型的建立,最后利用Vega實現(xiàn)對上海洋山港港區(qū)三維地形模型的渲染及驅動[8-9]。
通過Google Earth獲取真實地形圖,運用WinTopo獲取矢量化的地圖,在WinTopo中設置地理參考點,以保證地理設置的精確性;然后將矢量化的地圖導入MapInfo中,獲取ArcView圖形文件(.shp),并轉化為MapInfo version 2.x格式的文件(*.tab);再通過MapInfo中的Vertical Mapper模塊,將*.tab格式的文件計算生成數(shù)字化柵格文件(*.grd);最后運用FME將生成的數(shù)字化柵格文件轉換成DEM數(shù)據(jù)格式文件。此后,即可在Creator中通過New Project工具把DEM數(shù)據(jù)庫轉換成DED格式的數(shù)據(jù)庫[9-10]。整個三維地形模型設計流程如圖1所示。
圖1 三維地形模型設計流程圖
洋山深水港位于杭州灣口、長江口外的浙江省嵊泗崎嶇列島(洋山景區(qū)),由大、小洋山等數(shù)十個島嶼組成,如圖2所示。
圖2 洋山深水港組成
洋山港區(qū)的地理位置特別,地形數(shù)據(jù)的實地測量比較困難。通過Google Earth獲取真實地形外貌地圖,按照一定的地理比例大小,獲取小洋山和大洋山的相對位置及洋山港區(qū)的大體輪廓規(guī)劃,如圖3所示。將Google Earth獲得的地形圖像進行格式轉換,并生成高度逼真的等高線圖。
圖3 洋山深水港區(qū)規(guī)劃
圖4 洋山港方案文本文件
以小洋山為例,通過WinTopo打開獲取的地形圖像,通過WinTopo中的“矢量化”工具設置“地理參考”;應用多段線編輯工具,將等高線、河岸、河底等地理信息以多段線的形式手動描繪出來,再用賦值工具將多段線賦值并定義顏色以示區(qū)分。在繪制完成后,點擊“矢量化另存為”命令,將圖像另存為.wtx格式的方案文本文件,如圖4所示,其中數(shù)字為設置的等高線高度值。
再次利用WinTopo打開.wtx格式的方案文本文件,并將其另存為ArcView圖形文件,格式為.shp。圖形文件如圖5所示。
圖5 ArcView圖形文件
利用MapInfo打開ArcView圖形文件(.shp),另存為MapInfo version 2.x格式的文件(*.tab)。然后再通過MapInfo打開*.tab格式的文件。利用MapInfo的Vertical Mapper模塊,將數(shù)據(jù)計算生成數(shù)字化柵格文件(*.grd)。圖6為生成的地形散點圖。圖7為生成的數(shù)字化柵格地形圖。
圖6 地形散點圖
圖7 地形柵格圖
利用FME將第1.3節(jié)生成的地形數(shù)字化柵格文件(*.grd)轉換成DEM格式的地形文件。圖8為FME打開的地形數(shù)字化柵格文件。
圖8 FME中的地形數(shù)字化柵格文件
利用Multigen Creator將DEM格式的數(shù)據(jù)轉化成DED格式的高程數(shù)據(jù),然后利用Terrain菜單中的New Project工具,加載DED地形數(shù)據(jù)文件,如圖9所示。使用地形窗口中的Texture面板,為三維地形模型應用地形紋理,并根據(jù)海拔高度的不同,映射不同的紋理圖案[11]。
圖9 三維地形模型的生成
由于港口覆蓋貨物裝卸、堆存、轉運和旅客集散用的陸地,包括進港陸上通道(鐵路、道路、運輸管道等)、碼頭前方裝卸作業(yè)區(qū)和港口后方區(qū),因此應用LOD技術對三維港口中的不同物體,在不同的細節(jié)上建立一組三維港口模型。生成的港口三維地形模型如圖10所示,即為上海洋山港港區(qū)的三維視景仿真圖。將圖10與圖11的上海洋山港口地形圖進行對比分析發(fā)現(xiàn),建立的三維地形模型具有較高的逼真度。
圖10 上海洋山港港區(qū)三維地形模型
圖11 上海洋山港港口地形圖
由于上海洋山港三維地形已在軟件Multigen Creator中建模完成,因此只需在Vega中創(chuàng)建一個新文件(格式為.adf),并導入相應的模塊進行調試即可[12]。調試渲染后的上海洋山港港區(qū)三維視景仿真效果如圖12所示,與圖13的上海洋山港港區(qū)實景照片進行對比發(fā)現(xiàn),建立的上海洋山港港區(qū)三維視景仿真具有較高的逼真度與實時性。
圖12 上海洋山港港區(qū)視景仿真圖
圖13 上海洋山港實景
以上海洋山港港區(qū)為研究區(qū)域,將由Google Earth獲取的地形圖形經(jīng)過等高線處理、矢量化分析以及Multigen Creator的渲染、紋理映射、LOD技術的處理,建立可靠的三維地形模型,并經(jīng)過Vega的渲染及驅動,建立上海洋山港港區(qū)的三維地形模型庫。
通過Vega對上海洋山港港區(qū)三維模型的渲染及調試驅動,得到具有較高的精細度、逼真度和實時性的三維視景模型,可用于船舶操縱模擬器的三維視景仿真系統(tǒng)中。