辜昕宇,曹 鋒,劉傳誼
(江西師范大學(xué)科學(xué)技術(shù)學(xué)院,江西 南昌 332020)
目前,對船舶航行視景數(shù)字化的相關(guān)研究較少[1-2]。陳立家等[3]提出航海模擬器視景快速建模方法,利用傾斜攝影方式采集船舶視景圖像后,實際應(yīng)用過程中受船舶視景圖像傾斜角度、清晰度等因素影響,導(dǎo)致該方法建立的船舶視景模型逼真度不足。趙盼等[4]提出Creator 的視景建模方法,該方法以Creator 軟件為基礎(chǔ),并結(jié)合TerraVista 軟件,建立船舶虛擬環(huán)境視景仿真模型。該方法在實際應(yīng)用過程中無法及時呈現(xiàn)船舶運動狀態(tài),因此應(yīng)用效果不佳。
為了解決上述問題,本文提出基于VR 技術(shù)的船舶航行視景數(shù)字化三維建模方法。
船舶航行環(huán)境由水文、航道條件、港口設(shè)備等組成,對于船舶航行視景數(shù)字化三維場景來說,主要建模的對象包括視覺可見部分、水體、不同種類地標(biāo)物、船舶等,設(shè)計以上不同三維場景的節(jié)點組織,如表1 所示。

表1 船舶航行視景數(shù)字化三維場景節(jié)點組織Tab.1 Organization of digital 3D scene nodes for ship navigation scenery
通過節(jié)點組織的設(shè)計,確定了船舶航行視景數(shù)字化三維場景的組成部分,用于構(gòu)建船舶航行視景的數(shù)字化三維模型。
1.2.1 水面與陸域物標(biāo)三維建模方法
利用VR 技術(shù)中的3D MAX 三維建模軟件建立水面與陸域物標(biāo)三維模型,將水面與陸域物標(biāo)的平面坐標(biāo)、尺度、材質(zhì)等參數(shù)輸入到3D MAX 三維建模軟件內(nèi),生成水面與陸域物標(biāo)等高程數(shù)據(jù)和紋理特征[5]。
1)水面模型參數(shù)
平面坐標(biāo):北緯30.123 456°,東經(jīng)120.654 321°。
尺度:1∶5 000。
材質(zhì):使用透明材質(zhì)和反射屬性,以模擬真實的水面效果。
2)陸域物標(biāo)模型參數(shù)
平面坐標(biāo):北緯30.123 789°,東經(jīng)120.654 987°。
尺度:1∶2 000。
材質(zhì):使用磚墻紋理材質(zhì)。
對其進行貼圖處理后,得到水面與陸域物標(biāo)三維模型如圖1 所示。

圖1 地物標(biāo)三維模型Fig.1 3D model of landmark
建立船舶龍門吊、港口建筑物等三維模型,從該模型內(nèi)可清楚為用戶呈現(xiàn)地物位置,有效為用戶提供船舶航行視景地物信息。
1.2.2 基于Creator 的地形地貌三維建模
按照船舶航行視景仿真需求,使用VR 中Creator 軟件建立不同分辨率的三維地形,其構(gòu)建過程如下:
1)設(shè)置層次細(xì)節(jié)模型參數(shù)
采用規(guī)則網(wǎng)格建立地形模型,并將層次細(xì)節(jié)模型數(shù)量設(shè)置為3。
2)設(shè)置投影方式參數(shù)
Creator 軟件提供5 種投影方式,其中Trapezoidal是方位角映射,映射時地形地貌中心點位置最精準(zhǔn),離中心點越遠,則地形地貌越扭曲[6]。
3)地形地貌建模
使用Delaunay 轉(zhuǎn)換算法生成地形地貌模型,該算法可采集海底每個地形的高程點,依據(jù)每個地形的高程點,可在Creator 軟件內(nèi)生成地形地貌模型
4)紋理映射處理
地形地貌模型生成完畢后,將海底地形紋理圖片導(dǎo)入到Creator 軟件內(nèi),依據(jù)投影方式將紋理圖像投射到對應(yīng)的坐標(biāo)位置,完成地形地貌三維模型構(gòu)建,如圖2 所示。

圖2 地形地貌三維模型Fig.2 3D model of terrain and landform
1.2.3 船舶虛擬環(huán)境建模
船舶虛擬環(huán)境建模是船舶航行視景數(shù)字化三維建模的關(guān)鍵,使用VR 技術(shù)建立船舶虛擬環(huán)境模型,其詳細(xì)過程如下:
1)船舶初始三維模型生成
建立船舶三維模型是得到其航行視景數(shù)字化的基礎(chǔ),將現(xiàn)實中的船舶在虛擬的三維數(shù)字空間重構(gòu),是一個實物虛擬化的過程。在建立船舶三維模型時,需要將海量的船舶參數(shù)轉(zhuǎn)換成VR 可用的數(shù)據(jù)[7],本文使用PDM 技術(shù),將船舶參數(shù)從CAD 轉(zhuǎn)化成VR 后,生成船舶初始三維模型。
2)船舶網(wǎng)格模型重建
將初始的船舶三維模型空間分割為10 個正方體[8],使用指示函數(shù)判斷每個正方體的定點是否位于船舶三維模型空間內(nèi)部,在正方體內(nèi)部生成1 000 個等值三角面,對等值三角面進行表面重采樣后,生成網(wǎng)格面,完成船舶網(wǎng)格模型重建。
3)紋理映射
令Qi表示船舶三維模型的三角面片,I為輸入的船舶實景圖像序列,利用能量函數(shù)來選擇船舶三維模型的最優(yōu)紋理,表達公式為:

當(dāng)式(1)數(shù)值最小時,其對應(yīng)的船舶實景圖像即為最優(yōu)紋理貼圖圖像。
4)船舶虛擬環(huán)境生成
將紋理貼圖后的船舶數(shù)字化三維模型導(dǎo)入到船舶虛擬展示畫面中,將船舶模型縮小至1∶50,使船舶數(shù)字化三維模型更加接近實際狀況,具體船舶虛擬環(huán)境模型如圖3 所示。

圖3 船舶數(shù)字化三維模型Fig.3 Digital 3D model of ships
建立船舶網(wǎng)格模型,并對該網(wǎng)格模型進行紋理貼圖后,得到船舶數(shù)字化三維模型。
1.2.4 船舶運動仿真模型建立
若要獲得船舶航行動態(tài)三維畫面,需要建立船舶空間運動平移方程、空間繞坐標(biāo)軸運動方程以及船舶三自由度運動非線性方程,利用以上方程得到船舶數(shù)字化三維動態(tài)數(shù)據(jù)。
令H表示船體的動量,P表示船舶重心速度,則船舶空間運動平移方程如下:
式中:m表示船舶的質(zhì)量;R′表示船舶重心坐標(biāo)位置向量;d表示積分,t表示自變量; ψ表示一定維度的常矩陣; δ表示船舶舵角。
令GΣ表示船舶空間運動回旋向量,其方程如下:
式中,J表示船舶對原點不在重心坐標(biāo)系的慣量矩陣。
當(dāng)船舶出現(xiàn)橫搖、首搖和橫蕩情況時,建立其三自由度非線性方程,表達式如下:
式中:Y、N、A分別表示船舶橫蕩外力矩、首搖外力矩和橫搖外力矩;下角標(biāo)I、H、L、D分別對應(yīng)流體慣性、粘性、舵和外力干擾。
通過式(2)~式(4)可獲得船舶在虛擬環(huán)境中運動數(shù)字化數(shù)值。
以某水上運輸港口作為實驗對象,該港口貨物吞吐量超過23 000 萬噸,屬于大型集裝箱運輸港口,港口有起重機械314 臺、門機128 臺、龍門吊24 臺。通過RIEGL 航空激光雷達收集該港口的高程數(shù)據(jù),Canon數(shù)字相機收集船舶視景三維實拍圖像。使用ArcGIS 處理和分析地形數(shù)據(jù)。通過AutoCAD 進行船舶的三維建模,采用Blender 對船舶模型進行網(wǎng)格劃分、拓?fù)湔{(diào)整和表面細(xì)分等操作。使用Adobe Photoshop 進行紋理調(diào)整、修復(fù)和映射等操作。通過Unity3D 將地形模型、船舶網(wǎng)格模型和紋理貼圖等組合到一起,構(gòu)建船舶航行視景的數(shù)字化三維模型。使用本文方法建立該港口內(nèi)船舶的航行視景數(shù)字化三維模型,分析本文方法實際應(yīng)用效果。
為了驗證本文方法重建船舶網(wǎng)格模型能力,在船體流線上選擇10 個測試點,分析本文方法重建船舶網(wǎng)格前后該10 個測試點與實際船舶參數(shù)偏差數(shù)值,結(jié)果如表2 所示。

表2 重建船舶網(wǎng)格前后測試點參數(shù)偏差數(shù)值Tab.2 Parameter deviation value of test point before and after reconstruction of ship grid
分析可知,在船舶網(wǎng)格在重建之前,10 個測點偏差數(shù)值位于0.97~4.21 cm,而使用本文方法對船舶網(wǎng)格進行重建后,其最大偏差僅為0.05 cm,最小偏差為0。該結(jié)果說明本文方法對船舶網(wǎng)格進行重建后,可有效修復(fù)船舶三維模型的偏差,使建立的船舶三維模型更加精準(zhǔn)。
使用本文方法建立的船舶數(shù)字化三維模型模擬船舶右回旋,驗證本文方法對船舶航行視景數(shù)字化呈現(xiàn)效果,結(jié)果如圖4 所示。
分析可知,使用本文方法可有效呈現(xiàn)船舶右回旋時的運行軌跡,為用戶呈現(xiàn)船舶右回旋時不同方向上的航跡,為船舶航行提供數(shù)字化呈現(xiàn)方式,說明本文方法具備較為顯著的應(yīng)用效果。
本文提出基于VR 技術(shù)的船舶航行視景數(shù)字化三維建模方法,經(jīng)過實驗驗證得出以下結(jié)論:
1)使用本文方法重建船舶網(wǎng)格之后,測試點的偏差范圍明顯縮小,最大偏差僅為0.05 cm,最小偏差甚至為0。說明本文方法能夠有效修復(fù)船舶三維模型的偏差,提高船舶模型的準(zhǔn)確性和精度。
2)本文方法能夠呈現(xiàn)船舶航行視景數(shù)字化效果,為船舶航行提供了數(shù)字化的呈現(xiàn)方式,具有實際應(yīng)用價值。