王 蓓
(聊城大學(xué)東昌學(xué)院,山東 聊城 252000)
設(shè)計合適的船舶導(dǎo)航系統(tǒng)交互界面,是有效規(guī)范與管理船舶航行路徑,保障船舶安全穩(wěn)定航行的重要條件[1–2]。
吳瀟燦等[3]提出基于計算機輔助技術(shù)的船舶組合導(dǎo)航系統(tǒng)交互界面設(shè)計方法;古毅杰等[4]提出基于視覺感知技術(shù)的船舶組合導(dǎo)航系統(tǒng)交互界面設(shè)計方法。二者均可較好完成船舶導(dǎo)航系統(tǒng)交互界面設(shè)計,但是一旦船舶航行的海洋環(huán)境較為復(fù)雜,便無法準(zhǔn)確獲知船舶航行狀況。將AR 技術(shù)應(yīng)用于船舶導(dǎo)航系統(tǒng)交互界面設(shè)計中,對船舶航行環(huán)境實施合理有效的三維模擬,實時高效地將船舶航行圖像展示于船舶駕駛?cè)藛T面前,可使船舶駕駛?cè)藛T準(zhǔn)確獲知船舶航行情況,以便及時糾偏。為此,本文研究AR 技術(shù)下船舶導(dǎo)航系統(tǒng)交互界面設(shè)計方法,更好保障船舶安全穩(wěn)定航行。
在實際工作中,船舶導(dǎo)航的主要目的是通過使用合理的計算機以及互聯(lián)網(wǎng)技術(shù),對船舶的航行路線以及環(huán)境信息實施有效采集,從而為船舶在航行過程中選擇更合適的航行路線,并合理避障。而想要獲取較為理想的船舶導(dǎo)航效果,設(shè)計出一種較為合理的船舶導(dǎo)航交互界面是比較關(guān)鍵的一環(huán)。鑒于AR 技術(shù)在視覺呈現(xiàn)方面的優(yōu)勢,本文基于AR 技術(shù)對船舶導(dǎo)航系統(tǒng)交互界面進行合理設(shè)計,使用AR 技術(shù)對船舶航行的環(huán)境實施有效的三維可視化模擬,快速將船舶航行環(huán)境展示于用戶面前,使用戶獲得較為理想的視覺體驗。設(shè)計的船舶導(dǎo)航系統(tǒng)交互界面架構(gòu)如圖1 所示。在實際工作中,可采用觸發(fā)相應(yīng)傳感器的方式,連接船舶航行信息終端,高效采集船舶導(dǎo)航過程中需要用到的各種環(huán)境信息,并以采集到的各種信息為可靠依據(jù),應(yīng)用AR 技術(shù),完成船舶航行環(huán)境三維可視化模型構(gòu)建,并在船舶導(dǎo)航系統(tǒng)交互界面完成相應(yīng)顯示。
圖 1 船舶導(dǎo)航系統(tǒng)交互界面架構(gòu)Fig. 1 Interactive interface architecture of ship navigation system
以往在對船舶航行環(huán)境執(zhí)行三維虛擬模型構(gòu)建時,多通過與OSG 相似的三維性質(zhì)圖形設(shè)計程序完成,該類軟件程序雖可較好完成船舶航行環(huán)境三維虛擬模型的虛擬顯示以及模型交互,但在模型構(gòu)建方面的性能稍顯薄弱,具體表現(xiàn)為一旦所需構(gòu)建的船舶航行環(huán)境三維虛擬模型較為復(fù)雜時,便無法獲得較為清晰的船舶航行環(huán)境虛擬模型[5]。為充分利用其在模型虛擬顯示與交互方面的優(yōu)勢,并摒除其在三維虛擬模型構(gòu)建方面劣勢,對實際船舶航行與管理方面的產(chǎn)生不良影響,本文在對船舶航行環(huán)境實施三維虛擬模型構(gòu)建時,應(yīng)用三維模型構(gòu)建效果較好的SolidWorks,Unity3D 以及3dMaxd 三種軟件完成船舶航行環(huán)境虛擬模型構(gòu)建,并在模型構(gòu)建完成后,利用OSG 軟件程序完成三維模型虛擬顯示以及交互。具體的船舶航行環(huán)境三維虛擬模型構(gòu)建流程可歸結(jié)為:
1)通過觸發(fā)圖像采集傳感器方式,連接艦船航行信息終端,采集艦船航行環(huán)境信息,將采集到的環(huán)境信息經(jīng)有效預(yù)處理后,加載到SolidWorks 軟件對除海洋外的其他艦船航行環(huán)境場景實施有效的三維虛擬場景初始模型構(gòu)建。
2)海洋三維虛擬場景初始模型構(gòu)建。由于對艦船駕駛?cè)藛T來講,首先映入眼簾的會是海面,而海面并不完全靜止,因而在進行艦船航行環(huán)境三維虛擬場景模型構(gòu)建時,對海面這一場景實施三維建模時,要區(qū)別于其他場景建模。以往在對海面實施建模時,多數(shù)只是繪制一個二維平面,并將其放入SolidWorks 軟件進行簡單處理,真實感極低。如此,最終呈現(xiàn)于艦船駕駛?cè)藛T眼中的艦船航行環(huán)境很大程度上會是失真狀態(tài),無法更加全面地了解艦船航行環(huán)境,并對其安全性做出合理預(yù)判?;诖?,對海洋的模擬采用多個連續(xù)面向海面逼近的方式,將其首先模擬成一種含有多個采樣點的網(wǎng)格,之后根據(jù)各采樣點的相應(yīng)采樣值,獲取相應(yīng)的高度值表征海面。采樣點最終高度的求解過程可描述為:
式中:Height(a,b),Hplanar(a,b)分別為采樣點處的最終高度以及海平面高度;f(a,b)為海量的高度采樣值。
依據(jù)上述論述,可將具體的海洋建模過程簡單描述如下:利用LOD 技術(shù)構(gòu)建一個維度是二維的海平面網(wǎng)格;創(chuàng)立高度場,并將海平面網(wǎng)格中的點當(dāng)作采樣點執(zhí)行相應(yīng)的高度場高度求解操作,確定各海平面網(wǎng)格點的三維性質(zhì)坐標(biāo),得到最終的三維海平面;加入光照以及反射等效果增強海洋模型的真實感。
經(jīng)過上述操作,將所構(gòu)建的其他場景初始模型與海洋場景初始模型在3dMax 中導(dǎo)入,并使用3dMax將二者連接融合在一起,構(gòu)建完整的船舶航行環(huán)境三維虛擬場景初始模型,之后依次完成相應(yīng)的紋理貼圖、模型渲染等,便可獲得完整的擁有豐富紋理以及色彩信息的船舶航行環(huán)境三維虛擬場景模型。
3)艦船航行路徑三維建模與加載。艦船航行路徑數(shù)據(jù)通過服務(wù)器使用MySQL 數(shù)據(jù)庫實施合理管理,在對航行路徑實施三維建模時,由客戶端向服務(wù)器發(fā)送航行路徑數(shù)據(jù)調(diào)用請求,請求通過后,服務(wù)器以相應(yīng)的SQL 語句為有效數(shù)據(jù)獲取媒介獲取艦船航行路徑數(shù)據(jù),并將艦船航行路徑數(shù)據(jù)以JSON 格式重新發(fā)送給客戶端,客戶端在接收到數(shù)據(jù)后,采用Unity3D 軟件中的三維視景程序構(gòu)建航行路徑三維虛擬模型,并利用Unity3D 內(nèi)置的UGUI 系統(tǒng)將航行路徑加載到相應(yīng)的航行環(huán)境三維虛擬場景模型中,獲得最終的航行環(huán)境三維虛擬模型。
因常規(guī)的紋理貼圖方式,只能簡單地將所構(gòu)建三維模型的材質(zhì)特征表征出來,對于模型表面存在的某些細小的線條輪廓特征,并不能給予很好的呈現(xiàn)。為此,針對上述問題,使用能夠較好體現(xiàn)模型細小輪廓特征的法線貼圖方式對所構(gòu)建的航行環(huán)境三維虛擬場景初始模型進行合理貼圖,凸顯模型表面的細小輪廓特征,從而使構(gòu)建的艦船航行環(huán)境三維虛擬場景模型更加逼真形象。貼圖原理如圖2 所示。
圖 2 法線貼圖原理Fig. 2 Principle of normal mapping
E標(biāo)記模型表面存在一個空貼圖,將其圖形坐標(biāo)標(biāo)記為(i,j), (i,j)上存在的像素標(biāo)記為Vi,j,將E合理附著貼合于低面數(shù)模型,并從E中隨意挑選一個Vi,j按低面數(shù)模型表面擁有的法線方向?qū)ふ腋呙鏀?shù)模型表面,只要追趕到,便對該位置存在的法線執(zhí)行有效記錄操作,用N(x,y,z)標(biāo)記該法線,按照此種方式不間斷進行記錄,直到完成整個貼圖。在實際的工作中,因法線通過三維向量記載,故通常將所獲法線記錄結(jié)果放入RGB 通道實施合理存儲,用Ux,Uy,Uz分別標(biāo)記x軸、y軸與z軸的法線向量,若其滿足式(1)則對其執(zhí)行有效的向量歸化處理,將其歸化到像素灰度區(qū)間[0,255]。利用上述方法,可快速完成船舶航行環(huán)境三維虛擬場景模型貼圖操作,顯著提升模型逼真程度。
以往在對三維虛擬模型執(zhí)行合理渲染操作時,多采用雙線性光強插值或雙線性法向插值方法完成相關(guān)渲染操作,但是前者雖具有較少的計算量,卻不適應(yīng)高光狀況下的模型渲染,后者雖然具有較好的高光效果,運算復(fù)雜度卻很高。若在對三維模型執(zhí)行合理渲染時,能夠按不同情形,充分結(jié)合二者優(yōu)勢對模型實施合理渲染,將收獲較為理想的模型渲染效果。為此,基于2 種算法對其實施相應(yīng)改進。使用改進插值算法完成船舶航行環(huán)境三維虛擬模型渲染,具體的算法流程如圖3 所示。該模型渲染算法的主要思想為:對三維模型執(zhí)行有效的高光以及非高光多邊形區(qū)分操作,并通過雙線性光強插值方法實施合理計算,判別當(dāng)前多邊形是否處于高光狀態(tài),若是,便利用雙線性法向插值法完成相應(yīng)計算。如此,既能降低模型渲染工作中的運算復(fù)雜度,又能保障渲染完成的模型具有較好的高光效果。
圖 3 模型渲染流程Fig. 3 Model rendering process
以某大型貨船的導(dǎo)航系統(tǒng)為實驗對象,應(yīng)用本文方法對其實施交互界面設(shè)計,驗證本文方法在船舶導(dǎo)航系統(tǒng)交互界面設(shè)計方面的優(yōu)勢。該艘貨運船所使用導(dǎo)航系統(tǒng)的各項參數(shù)狀況如表1 所示。
表 1 導(dǎo)航系統(tǒng)各項參數(shù)情況Tab. 1 Parameters of ship navigation system
圖4 為應(yīng)用本文方法對船舶導(dǎo)航系統(tǒng)交互界面實施合理設(shè)計后,獲得的電子海圖顯示界面。可以看出,應(yīng)用本文方法可以實現(xiàn)船舶導(dǎo)航系統(tǒng)交互界面設(shè)計,設(shè)計完成后,在電子海圖顯示界面,不僅可將船舶航行整體環(huán)境狀況以及航行路線清晰呈現(xiàn)給駕駛?cè)藛T,還可將船舶航行的近景環(huán)境狀況同步呈現(xiàn),更好滿足實際需要。
圖 4 電子海圖顯示界面Fig. 4 Electronic chart display interface
圖5 為應(yīng)用本文方法對船舶導(dǎo)航系統(tǒng)交互界面實施合理設(shè)計時,獲得的部分船舶航行環(huán)境場景三維虛擬模型渲染效果??梢钥闯觯瑧?yīng)用本文方法對海面小島以及海浪的三維模型實施合理渲染后,小島的倒影以及浪花的飛濺狀態(tài)都能夠被較為逼真地呈現(xiàn)出來,可收獲較為理想的模型渲染效果。將其應(yīng)用于實際工作中,可使船舶駕駛?cè)藛T在AR 技術(shù)電子海圖顯示界面看到更為清晰逼真的船舶航行環(huán)境狀況以及航行路徑,更好保障航行的安全性。
圖 5 模型渲染效果Fig. 5 Model rendering effect
為進一步驗證本文方法在船舶導(dǎo)航系統(tǒng)交互界面設(shè)計方面的有效性,繪制不同天氣狀況下,顯示在導(dǎo)航系統(tǒng)交互界面的航行環(huán)境近景圖像效果對比圖,如圖6 所示??梢钥闯觯疚奶岢龅腁R 技術(shù)下船舶導(dǎo)航系統(tǒng)交互界面設(shè)計方法,在實際工作中能夠更好保障航行環(huán)境圖像在各種天氣狀況下的清晰度,即使在極端天氣下,界面顯示的圖像清晰度也都在0.6 以上,能夠更好滿足長時間的航行需求。
圖 6 界面顯示圖像效果Fig. 6 Interface display image effect
應(yīng)用本文方法可以設(shè)計出較為理想的船舶導(dǎo)航交互界面,將航行環(huán)境以及路線狀況精準(zhǔn)、清晰地呈現(xiàn)于駕駛?cè)藛T面前,達到有效控制船舶航行路線,保證船舶航行安全的目的。