李婷云,劉建安,徐軼群
?
基于Videotrace的新型船舶模擬器仿真研發(fā)
李婷云1,劉建安1,徐軼群2
(1. 福建船政交通職業(yè)學(xué)院,福州 350007;2. 集美大學(xué)輪機(jī)工程學(xué)院,福建廈門 361021)
采用Videotrace和VRML語言開發(fā)新型船舶模擬器仿真系統(tǒng)。本文介紹了機(jī)艙三維建模、云服務(wù)器解析建模、虛擬場(chǎng)景的交互設(shè)計(jì)和仿真平臺(tái)的關(guān)鍵技術(shù)實(shí)現(xiàn),新型模擬器仿真系統(tǒng)具有良好的二次開發(fā)和交互擴(kuò)展功能,對(duì)于復(fù)合型船員培訓(xùn)模式的探索提供了重要探索意義。
Videotrace VRML 解析建模 云服務(wù)器 復(fù)合型船員 船舶模擬器
隨著現(xiàn)代科學(xué)技術(shù)和國際航運(yùn)業(yè)的不斷發(fā)展,船舶的智能化和自動(dòng)化程度越來越高,已由單一系統(tǒng)自動(dòng)化向計(jì)算機(jī)集中控制的船舶綜合自動(dòng)化方向發(fā)展,先進(jìn)國家正在進(jìn)行智能化船舶的研究。復(fù)合型人才的需求將會(huì)急劇增加[1]。復(fù)合型人才的培訓(xùn)模式將由以前的駕駛和輪機(jī)單一培訓(xùn)模式改為駕機(jī)合一的雙職培訓(xùn)模式。所以研發(fā)符合新時(shí)代要求的復(fù)合型船員培訓(xùn)需求的多船種多平臺(tái)多模式的駕機(jī)合一船舶模擬器也迫在眉睫。從國內(nèi)外研制船舶模擬器的歷史與現(xiàn)狀來看,以前受到計(jì)算機(jī)仿真技術(shù)等各方面條件的限制,模擬器功能和界面比較單一,雖然船舶模擬器系統(tǒng)和設(shè)備裝置的模型越來越逼真,但仿真的目的不僅僅是外觀逼真,更重要的是仿真操縱過程和控制邏輯,動(dòng)態(tài)過程的分析和交互操作的需求也日益增加。本文重點(diǎn)探討復(fù)合型船舶虛擬交互仿真平臺(tái)構(gòu)建的可行性,為將來培養(yǎng)新型船舶的復(fù)合型船員提供重要的培訓(xùn)模式。
Videotrace是Australian Centre for Visual Technologies公司開發(fā)的基于圖像序列或視頻的快速交互式三維建模軟件,通過輸入一段未標(biāo)定的二維序列圖片、視頻模式或視頻序列,系統(tǒng)能夠自動(dòng)地恢復(fù)出camera參數(shù)。只需要在少量的圖像上簡單勾畫出建模對(duì)象的大概輪廓或形體結(jié)構(gòu),通過云處理技術(shù)向服務(wù)器獲取自動(dòng)解析,云服務(wù)器解析出多幀之間用戶交互的對(duì)應(yīng)關(guān)系,從而迅速、逼真地構(gòu)建出三維交互模型和虛擬場(chǎng)景。
圖1 Videotrace建模流程
Videotrace允許用戶利用簡單直觀的交互操作快速重建出二維模型,使得從真實(shí)場(chǎng)景中逼真地重建三維模型的過程變得非常容易、方便。它將圖像信息、攝像機(jī)參數(shù)信息和用戶交互很好地結(jié)合起來,實(shí)現(xiàn)了高效的半自動(dòng)建模方式.系統(tǒng)提供的點(diǎn)與線段、直線與平面以及曲線與曲面的建模功能,能夠切實(shí)滿足船舶機(jī)艙中復(fù)雜場(chǎng)景的快速逼真的建模要求[2]。
云技術(shù)通過網(wǎng)絡(luò)將龐大的計(jì)算處理程序自動(dòng)分拆成無數(shù)個(gè)較小的子程序,由后臺(tái)服務(wù)器進(jìn)行分析計(jì)算,即Videotrace 云處理技術(shù)的核心是遠(yuǎn)程的大型云服務(wù)器。
該服務(wù)器對(duì)我們構(gòu)建的模型輪廓進(jìn)行解析處理,并把模型解析結(jié)果發(fā)回到用戶端,我們只需要耐心等待一下,即可用IE進(jìn)行瀏覽觀看。其最大的優(yōu)勢(shì)就是減少我們個(gè)人電腦的負(fù)擔(dān),將復(fù)雜化、系統(tǒng)化的處理過程都交給遠(yuǎn)程服務(wù)器來運(yùn)行,對(duì)用戶電腦的性能配置要求和空間需求降到很低。即在免費(fèi)的開放的服務(wù)器的軟件平臺(tái)上,一臺(tái)普通的電腦就可以進(jìn)行三維的復(fù)雜模型的開發(fā),建模的速度和精確度取決于云服務(wù)器。
本文對(duì)于復(fù)雜的不規(guī)則建模對(duì)象比如電動(dòng)機(jī)進(jìn)行視頻錄制,轉(zhuǎn)換成一段視頻序列,在Videotrace中對(duì)該段視頻序列進(jìn)行手動(dòng)交互式建模,利用點(diǎn)線面簡單素描勾勒出二維上的點(diǎn)和曲線之間的對(duì)應(yīng)關(guān)系,云處理服務(wù)器利用圖像信息和攝像機(jī)參數(shù)信息構(gòu)建三維計(jì)算機(jī)視覺模型,這個(gè)簡單的直觀模型利用云處理服務(wù)器解析塑造成一個(gè)逼真的3D模型,如圖2所示。有些Videotrace視頻場(chǎng)景中不可見的部分模型還可以通過手動(dòng)和自動(dòng)重建的方式進(jìn)行重組。
圖2 Videotrace服務(wù)器解析電動(dòng)機(jī)模型
機(jī)艙三維場(chǎng)景模型比較復(fù)雜繁多,根據(jù)部件尺寸、形狀、位置、運(yùn)動(dòng)關(guān)系將機(jī)艙分成幾大系統(tǒng),按照不同系統(tǒng)建立不同的文件,機(jī)艙部分仿真對(duì)象需要精細(xì)建模的,有些設(shè)備只是勾畫簡單輪廓,生成不同層次的設(shè)備模型庫。
機(jī)艙內(nèi)需要重點(diǎn)建模的仿真對(duì)象利用Videotrace的Export導(dǎo)出.WRL數(shù)據(jù)模型文件,再調(diào)入VRML編輯器進(jìn)行編輯交互處理,該文件模型具有良好的通用性、可擴(kuò)展性、二次開發(fā)能力、方便調(diào)用、交互操作控制、與web網(wǎng)頁的無縫銜接等優(yōu)點(diǎn),在網(wǎng)絡(luò)上傳輸?shù)氖悄P臀募皇且曨l圖像文件,故其傳輸量大大減小,即在普通電腦上借助視景仿真開發(fā)環(huán)境Vrmlpad或者文檔都能制作可在互聯(lián)網(wǎng)上實(shí)時(shí)渲染的3D場(chǎng)景模型。
本文系統(tǒng)中一些不需要精確建模的設(shè)備對(duì)象借助三維建模工具Solidworks和3D Max共同輔助開發(fā),視景仿真開發(fā)環(huán)境Vrmlpad、面向?qū)ο箝_發(fā)環(huán)境PHP,共同完成了駕機(jī)合一船舶虛擬仿真交互系統(tǒng).其中系統(tǒng)的主體框架由面向?qū)ο箝_發(fā)環(huán)境Window完成,并通過Vrmlpad應(yīng)用程序的Route接口驅(qū)動(dòng)實(shí)時(shí)視景仿真應(yīng)用。
機(jī)艙較大型的復(fù)雜模型比如主機(jī)模型不規(guī)則,紋理也較多,為了減小模型對(duì)計(jì)算機(jī)資源的占用,保證視景仿真的實(shí)時(shí)性,必須利用LOD算法對(duì)所建模型進(jìn)行優(yōu)化。在距離觀察者很遠(yuǎn)時(shí)只顯示大概輪廓,當(dāng)觀察者足夠接近模型時(shí)才調(diào)用詳細(xì)模型,這樣既可滿足設(shè)計(jì)需要,又可節(jié)省資源,提高VRML編程效率[3]。VRML的顏色插補(bǔ)器、法線插補(bǔ)器、坐標(biāo)插補(bǔ)器、位置插補(bǔ)器等能更真實(shí)地建立模型和場(chǎng)景,更準(zhǔn)確地定位模型、描述其運(yùn)動(dòng),達(dá)到很好的仿真效果,并且文件所占空間很小(一般為幾十KB)。根據(jù)Inline節(jié)點(diǎn)調(diào)入模型文件進(jìn)行整體組合,同時(shí)利用Javascript、Java等語言提供的接口與Javascript、Java集成,共同完成整體的動(dòng)態(tài)交互仿真功能。
當(dāng)學(xué)員在機(jī)艙虛擬場(chǎng)景中進(jìn)行瀏覽時(shí),在虛擬場(chǎng)景中進(jìn)行自由地縮放、移動(dòng)、旋轉(zhuǎn)各模型及三維場(chǎng)景,很清楚地了解設(shè)備的動(dòng)態(tài)特性并進(jìn)行交互操作,也可以通過右鍵選擇瀏覽錨點(diǎn)快速切換瀏覽場(chǎng)景。
機(jī)艙各個(gè)門室的開啟可以通過操作左鍵來進(jìn)行點(diǎn)擊觸碰,事件TOUCH里包含有數(shù)據(jù)信息,用來改變虛擬場(chǎng)景狀態(tài)的觸發(fā)器,學(xué)員在場(chǎng)景中漫游時(shí),事件會(huì)根據(jù)內(nèi)置Camera進(jìn)行實(shí)時(shí)變換場(chǎng)景模型,還可以根據(jù)遠(yuǎn)近距離和時(shí)間推移調(diào)用LOD函數(shù),機(jī)艙各個(gè)子系統(tǒng)仿真模型通過Inline節(jié)點(diǎn)和Anchor節(jié)點(diǎn)進(jìn)行調(diào)用,在虛擬仿真平臺(tái)上起著至關(guān)重要的作用,場(chǎng)景節(jié)點(diǎn)通過事件入口和出口接收和發(fā)出事件,傳遞交互操作數(shù)據(jù)和三維對(duì)象,經(jīng)過普通IE瀏覽器的解釋執(zhí)行和客戶端的實(shí)時(shí)渲染,顯示動(dòng)態(tài)變化的虛擬場(chǎng)景,再現(xiàn)猶如身臨其境的實(shí)船效果。
在服務(wù)器端要完成人機(jī)的信息實(shí)時(shí)交互和操作維護(hù),客戶端必須與服務(wù)器端進(jìn)行一系列的交互操作。除了VRML自身的交互功能節(jié)點(diǎn)、多媒體功能和網(wǎng)絡(luò)功能外,同時(shí)具有支持與Java 、JavaScript 等語言的接口功能,因此在具體的交互操作應(yīng)用時(shí)就具有更強(qiáng)更大的編輯設(shè)計(jì)能力,同時(shí)也可以更加方便、靈活對(duì)各種圖形和動(dòng)畫進(jìn)行有效的控制[4]。
JavaScript是一種解釋型的編程語言,可以直接嵌入到HTML語言中并動(dòng)態(tài)改變其各種事件屬性,輕松實(shí)現(xiàn)模型對(duì)象與用戶之間的交互;DOM技術(shù)可以非常直觀地將HTML文檔進(jìn)行統(tǒng)一模型化處理。
本系統(tǒng)主要是采用VRML語言與Java語言結(jié)合來實(shí)現(xiàn)的,其中Script節(jié)點(diǎn)是連接VRML和Java 的橋梁。Java是通過附加的封裝類實(shí)現(xiàn)VRML瀏覽器插件的安裝,程序自動(dòng)將這些類安裝到指定目錄下,通過這些類 Java 程序就能夠訪問VRML場(chǎng)景接受和發(fā)送事件,從場(chǎng)景中實(shí)時(shí)獲得指定點(diǎn)的坐標(biāo),得到指定地點(diǎn)的信息、動(dòng)態(tài)控制場(chǎng)景等功能,從頁面上得到VRML對(duì)象實(shí)現(xiàn)對(duì)VRML場(chǎng)景的完全控制 VRML[5]。
本文構(gòu)建的船舶虛擬仿真平臺(tái)主要是基于WEB的三維虛擬交互仿真,采用Dreamweaver和FrontPage實(shí)現(xiàn)HTML網(wǎng)頁制作輪機(jī)模擬器的系統(tǒng)界面和網(wǎng)絡(luò)發(fā)布,利用PHP腳本語言實(shí)現(xiàn)對(duì)網(wǎng)頁的管理和外部的鏈接通信,構(gòu)建二維和三維場(chǎng)景界面的無縫銜接。
系統(tǒng)是基于B/S(Browser/Server)模式的,其優(yōu)點(diǎn)在于客戶端可通過Internet直接訪問服務(wù)器端。對(duì)客戶端配置要求比較低(利用瀏覽器插件如Cosmo Player瀏覽vrml文件即可),由于瀏覽器是本地平臺(tái)提供的,實(shí)現(xiàn)了平臺(tái)的無關(guān)性和開放性;在服務(wù)器端主要有三個(gè)部分:1)網(wǎng)絡(luò)部分負(fù)責(zé)處理來自客戶端的請(qǐng)求包括保存用戶的登錄名和密碼;2)實(shí)現(xiàn)和客戶端的通訊上傳和下載相關(guān)文件資源,也可以修改和保存數(shù)據(jù)庫和新文件。3)從數(shù)據(jù)庫中取出原始數(shù)據(jù)來構(gòu)建虛擬環(huán)境。用Java Applet從數(shù)據(jù)庫中獲取數(shù)據(jù)并與VRML文件通信,獲得初始數(shù)據(jù)的VRML文件在瀏覽器中展現(xiàn)初始場(chǎng)景。Web頁面中提供了交互界面,允許學(xué)員輸入特定參數(shù)的值實(shí)現(xiàn)設(shè)備的動(dòng)態(tài)設(shè)計(jì)和系統(tǒng)結(jié)構(gòu)。獲取數(shù)據(jù)后的設(shè)備性能分析與優(yōu)化存取數(shù)據(jù)、處理優(yōu)化的數(shù)學(xué)模型和可靠性分析均可通過Java結(jié)合數(shù)據(jù)庫編程實(shí)現(xiàn),優(yōu)化解直接傳送給Applet[6],Applet與VRML文件及頁面數(shù)據(jù)進(jìn)行通信并使之實(shí)時(shí)顯示。
學(xué)員除了本地交互操作練習(xí)外還可以通過瀏覽器遠(yuǎn)程連接本模擬器的網(wǎng)絡(luò)服務(wù)器,實(shí)現(xiàn)遠(yuǎn)程訪問和下載輪機(jī)模擬器三維虛擬數(shù)據(jù)模型文件,并且通過接口調(diào)用操縱過程中的場(chǎng)景動(dòng)態(tài)效果數(shù)據(jù),并能夠通過服務(wù)器和交互界面把操縱的三維動(dòng)態(tài)效果場(chǎng)景信息與其他用戶進(jìn)行交互操作和動(dòng)態(tài)瀏覽。
本文系統(tǒng)地分析了當(dāng)今輪機(jī)模擬器培訓(xùn)存在的主要問題,通過比較論證,詳細(xì)闡述了虛擬輪機(jī)模擬器的研制開發(fā),使復(fù)合型船員需求培訓(xùn)模式和虛擬技術(shù)相結(jié)合,優(yōu)化和拓展新型船舶輪機(jī)模擬器的功能模塊,提高其使用效率。根據(jù)新型船舶模擬器的仿真需求,結(jié)合三維建模虛擬場(chǎng)景和交互控制操作等相關(guān)技術(shù),簡要分析了系統(tǒng)的建模過程和關(guān)鍵技術(shù),船舶模擬器虛擬平臺(tái)的整體框架設(shè)計(jì),并對(duì)系統(tǒng)的三維圖形化建模、子系統(tǒng)調(diào)用、模型庫管理和交互操作四個(gè)主要模塊的設(shè)計(jì)和實(shí)現(xiàn)進(jìn)行了詳細(xì)的總結(jié)和描述。需要指出,本文對(duì)輪機(jī)模擬器的研究技術(shù)也不完全成熟,目的是從航海教育培訓(xùn)角度提出新型船舶模擬器改進(jìn)和創(chuàng)新的理念與方法,從而可以合理利用教學(xué)資源、增強(qiáng)教學(xué)中的綜合感官效果、改善系統(tǒng)運(yùn)行的穩(wěn)定性、提高教學(xué)培訓(xùn)效果,積極與海上安全監(jiān)督部門及各航運(yùn)公司共同研究協(xié)商,在統(tǒng)一思想和行動(dòng)的基礎(chǔ)上,把握國內(nèi)外航海教育的市場(chǎng)信息走向與行業(yè)動(dòng)態(tài),做好培養(yǎng)航海復(fù)合型人才的試行工作。
[1] 劉正江. 培養(yǎng)復(fù)合型航海類專門人才大力支持國際航運(yùn)事業(yè)發(fā)展[J]. 航海教育研究, 2012, (12): 15.
[2] 姜翰青, 章國鋒等. 基于圖像序列的交互式快速建模系統(tǒng)[J]. 計(jì)算機(jī)輔助設(shè)計(jì)與圖形學(xué)學(xué)報(bào), 2008, (9): 15.
[3] 陳華, 陳福民, 基于VRML的虛擬場(chǎng)景的設(shè)計(jì)與實(shí)現(xiàn)[J]. 計(jì)算機(jī)工程與應(yīng)用, 2002, (3): 15.
[4] 胡琦. WEB3D虛擬現(xiàn)實(shí)技術(shù)在輪機(jī)模擬器中的應(yīng)用研究[D]. 華東師范大學(xué), 2011, (3): 1.
[5] 王汝傳, 姚旭敏, 王海艷, 劉麗. 基于Java和VRML虛擬場(chǎng)景通信方式的研究[J]. 系統(tǒng)仿真學(xué)報(bào), 2003, (7): 20.
[6] 莫雨帆. 虛擬現(xiàn)實(shí)漫游系統(tǒng)的研究和實(shí)現(xiàn)方法[D]. 武漢科技大學(xué), 2012, (5): 5.
The Development of A New Virtual Marine Simulator Based on Videotrace
Li Tingyun1, Liu Jian’an1, Xu Yiqun2
(1. Fujian Chuanzheng Communications College, Fuzhou 350007; 2. Jimei University Marine Engineering Institute, XiaMen 361021, Fujian, China)
TP391.9
A
1003-4862(2014)12-0067-03
2014-05-27
福建省交通廳橫向課題研究項(xiàng)目(項(xiàng)目編號(hào):201332)
李婷云(1983-),女,碩士研究生,講師。研究方向:船舶電氣,船舶模擬器虛擬仿真。