柳化松,孫 俊,王忠俊
(武漢理工大學 能源與動力工程學院 ,湖北 武漢 430063)
船舶輔機裝置復雜多樣,設備體積龐大,在真實的實驗培訓中,實驗室空間有限,不可能對所有的設備都細致講解,從而導致學生很難掌握船舶輔機設備原理知識與拆裝過程。增強現(xiàn)實技術(shù)(簡稱AR)是在虛擬現(xiàn)實技術(shù)(簡稱VR)的基礎(chǔ)上發(fā)展起來的,用戶在看到真實世界的同時也能看到和真實世界相融合的虛擬物體。AR系統(tǒng)不論是在視覺上,還是在交互上都能實現(xiàn)真實與虛擬的無縫實時結(jié)合,實現(xiàn)真正的虛實融合[1]。移動智能設備既具備電腦迅速的計算能力,也具備強大的圖像顯示能力,市場價格也被多數(shù)人所接受,這些都促使移動智能終端成為增強現(xiàn)實的理想平臺[2]。本文主要依托VR和AR,開發(fā)一套能夠在移動智能端實現(xiàn)虛實結(jié)合和人機交互性能的用于船舶設備虛擬實驗系統(tǒng)。
AR是在VR的基礎(chǔ)上衍生出來的,不僅集合了VR的沉浸感、交互感等特點,更是擺脫了VR的限制,建立了一種虛實融合的世界,帶給用戶不一樣的新鮮感[3]。AR應用在工業(yè)生產(chǎn)上,可以使用交互的方式將虛擬的產(chǎn)品與人們聯(lián)系起來,大大豐富了產(chǎn)品信息的傳遞方法。將AR應用在船舶設備虛擬實驗中,不僅可以模擬真實的環(huán)境,還可以對模型進行虛擬實驗操作。
本系統(tǒng)首先要保證系統(tǒng)功能的完整性,在完成船舶輔機設備虛擬三維模型與真實場景相融合的同時,還要保證三維虛擬模型物理動作自然連貫。另外要保證系統(tǒng)程序的可靠性與兼容性,使系統(tǒng)程序能穩(wěn)定運行在現(xiàn)有移動智能設備上。
基于移動智能端的AR船舶輔機實驗系統(tǒng)在使用過程中,不需要電腦設備,只需將系統(tǒng)安裝在移動智能端(手機和平板)上便能實現(xiàn)系統(tǒng)的所有操作[4]。進入增強現(xiàn)實平臺系統(tǒng)之后選擇相應的輔機設備,可以在模式選擇中選擇不同的模式進行學習訓練。AR系統(tǒng)功能框圖如圖1所示。
圖1 AR系統(tǒng)功能框圖
該系統(tǒng)主要包含2種模式。①教學模式。利用建模仿真等方法,可在相應的功能中查看設備的原理介紹,拆裝動畫等內(nèi)容。②學習模式。系統(tǒng)會模擬出真實的拆裝環(huán)境,按照選擇的輔機設備生成與之相對應的虛擬模型??稍诖谁h(huán)境中進行拆裝練習,系統(tǒng)還會根據(jù)拆裝效果給出相對應的評價。
基于移動智能端AR船舶輔機實驗系統(tǒng)的核心內(nèi)容是建立可智能交互的船舶輔機實驗增強現(xiàn)實平臺。用戶在該平臺與實驗系統(tǒng)進行相關(guān)交互操作,系統(tǒng)將數(shù)據(jù)庫模型資料和一些多媒體信息資料加載到增強現(xiàn)實平臺上[5]。然后用戶可以在移動智能設備上進行相關(guān)交互操作。選擇具有強大跨平臺能力和便捷開發(fā)方式的Unity3D開發(fā)引擎為增強現(xiàn)實系統(tǒng)的3D開發(fā)引擎,腳本開發(fā)語言為C語言,三維建模工具選擇性價比高并且易上手的3dmax。系統(tǒng)的開發(fā)流程示意圖如圖2所示。
圖2 開發(fā)流程示意圖
制作高質(zhì)量的三維模型,需要1∶ 1精準建模。但是對于船舶輔機這類結(jié)構(gòu)復雜的設備,精準建模會使模型文件變大。對模型進行移動旋轉(zhuǎn)等交互操作,要求三維模型不僅要真實,還要盡可能減少復雜度。因此,需要采取正確的建模方式和與之相對應的模型優(yōu)化方法,從而實現(xiàn)模型加載的實時性以及提高系統(tǒng)的運行速度。
影響虛擬實驗系統(tǒng)最終運行的3大因素為:模型的總個數(shù)、模型的總面數(shù)、模型的總貼圖量。本文主要對如下2方面進行研究。
1)對模型總個數(shù)進行優(yōu)化。由于船舶輔機設備結(jié)構(gòu)復雜,在進行初始建模時,一方面,要按照真實的船舶輔機設備結(jié)構(gòu)設置合理的父子層級關(guān)系,用不同的名字代表不同含義,避免模型結(jié)構(gòu)混亂,減少后期的工作量;另一方面,由于對模型的操作只是對整體操作,所以可以對模型進行合并使之成為整體,這就需要對模型的個數(shù)進行精簡。主要使用合并命令和塌陷命令。
2)對模型面數(shù)進行優(yōu)化。由于模型零件的整體操作,并不需要對零件模型的內(nèi)部結(jié)構(gòu)詳細說明。所以在進行模型搭建的過程中,可以對模型的面數(shù)進行精簡。主要有面片模型面的精簡、圓柱模型面的精簡、刪除模型之間的重貼面等方法。
增強現(xiàn)實系統(tǒng)的開發(fā)核心是實現(xiàn)虛實結(jié)合,而三維注冊技術(shù)是實現(xiàn)虛實結(jié)合最為關(guān)鍵的技術(shù)。虛實結(jié)合主要是讓虛擬物體與真實場景無縫結(jié)合,所涉及的技術(shù)內(nèi)容如圖3所示。
圖3 虛實結(jié)合技術(shù)內(nèi)容
在回放定位技術(shù)中,三維注冊技術(shù)決定了虛擬物體的回放準確度。通過對攝像機姿態(tài)進行實時跟蹤以定位虛擬圖形位于真實場景中的注冊位置。通常有基于跟蹤器的注冊技術(shù)、基于視覺的注冊技術(shù)?;诟櫰鞯淖约夹g(shù)一般采用專門的傳感器(如GPS、陀螺儀、加速器等)來進行,主要來記錄真實世界中觀察者的位置和方向,以保持虛擬空間和真實空間相對位置關(guān)系的連續(xù)性,從而實現(xiàn)精準的注冊。基于視覺的注冊技術(shù)由攝像機獲得真實場景的圖像,再利用計算機圖形算法從中提取跟蹤信息,從而判定攝像機的位置[6]。
在增強現(xiàn)實系統(tǒng)結(jié)構(gòu)中,攝像機獲取周圍真實環(huán)境的信息,跟蹤注冊系統(tǒng)則用于跟蹤觀察用戶的頭部方位和視線方向,虛擬場景生成要加入的虛擬圖形對象,虛實結(jié)合系統(tǒng)將虛擬場景和真實場景定位配準[7]。虛實結(jié)合過程示意圖如圖4所示。
圖4 虛實結(jié)合過程示意圖
在增強現(xiàn)實系統(tǒng)中三維注冊系統(tǒng)所要完成的主要任務是將創(chuàng)建的虛擬信息添加到世界坐標中的映射位置,經(jīng)過變換后在顯示模塊中顯示輸出[8]。虛擬信息(也叫增強信息)是AR系統(tǒng)呈獻給使用操作者的重要信息,利用這些信息可以幫助使用者順利完成系統(tǒng)操作。在本系統(tǒng)中虛擬信息的表現(xiàn)形式主要有:虛擬3D模型信息、文本信息、圖片信息等。系統(tǒng)中的虛擬3D模型信息主要為輔機各種設備的三維模型,文本信息主要包括設備的文字介紹、系統(tǒng)操作的智能文字提示信息等,智能提示功能也是系統(tǒng)的重要內(nèi)容之一。
在AR應用過程中,人們通常要實現(xiàn)自然和諧的交互操作??紤]到適用性與方便性,本系統(tǒng)專門定義了一種基于觸屏交互的手勢動作。在系統(tǒng)開發(fā)過程中,Unity中通常用 “(x,y,z)”的格式來描述物體的場景坐標信息。Transform組件用來描述物體在空間中所處的狀態(tài),主要包括物體的位置、旋轉(zhuǎn)和縮放。在系統(tǒng)設計過程中可以在Unity中通過給物體模型添加C語言腳本,依據(jù)Transform組件中位置的變化和接觸屏幕觸點的個數(shù)從而實現(xiàn)模型物體的移動、旋轉(zhuǎn)、縮放等多種交互功能[9]。基于這種判斷方法,系統(tǒng)自定義一種針對虛擬實驗的操作手勢。具體各種手勢動作定義如表1。
表1 自定義觸屏手勢
在進行觸屏交互操作時,系統(tǒng)會依據(jù)用戶給出的手勢信息自動識別在觸屏上交互操作時接觸點的個數(shù)以及交互手勢的方向,從而調(diào)用系統(tǒng)程序中相對應的運動函數(shù),實現(xiàn)對模型的交互操作。Leng1代表原始2個觸點之間的原始坐標點距離,Leng2代表2個觸點變化后的坐標點距離,具體的交互工作流程圖如圖5所示。
圖5 交互工作流程
以系統(tǒng)中的船舶輔機設備水位計為例,展示在教學模式下對船舶水位計的相關(guān)操作。操作界面示意圖如圖6所示。本系統(tǒng)涵蓋智能提示功能,考慮到對模型以及對船舶設備模型的拆裝不熟悉,在模型拆裝的關(guān)鍵步驟上會給予提示,以便提高學習效率。以輔機設備水位計來說,為了更好的實現(xiàn)智能提示的效果,在完成水位計每一個拆解步驟后,都會彈出一個提示框,給出下一步的拆裝提示,以便學生能更加快速的完成拆裝工作,拆裝提示示意圖如圖7所示。
圖6 操作界面示意圖
本文將AR與現(xiàn)代船舶輔機實驗相結(jié)合,開發(fā)一款基于AR船舶輔機設備實驗系統(tǒng),該系統(tǒng)解決了船舶輔機模型設備優(yōu)化、用戶與模型交互、智能提示等問題。在本系統(tǒng)中可以實現(xiàn)多模型的切換,并且不需要任何的輸入設備,用相應的手勢動作便能實現(xiàn)想要的功能。該系統(tǒng)不僅能在船舶教學上節(jié)省成本、提高效率,并在其他機械拆裝與維護方面有著很大的發(fā)展前景。