張慧 鮑飛 張學(xué)亞 沈毅
1. 北京市安全生產(chǎn)科學(xué)技術(shù)研究院 北京 101100 2. 中安華邦(北京)安全生產(chǎn)技術(shù)研究院股份有限公司 北京 100124
虛擬現(xiàn)實(VR)是一種允許用戶與計算機(jī)模擬環(huán)境進(jìn)行交互的技術(shù)。近年來,虛擬現(xiàn)實技術(shù)被廣泛應(yīng)用于教育和培訓(xùn),通常與其沉浸式、高度可視化、三維(3D)環(huán)境聯(lián)系在一起。虛擬現(xiàn)實技術(shù)作為一種新型的學(xué)習(xí)媒介,可以為學(xué)習(xí)者提供具有交互性的實時體驗,有效地提高學(xué)習(xí)效果。在虛擬環(huán)境中實踐突發(fā)事件演練任務(wù)有助于促進(jìn)培訓(xùn)和幫助將知識轉(zhuǎn)移到現(xiàn)實生活中。同時,虛擬現(xiàn)實可以有效地解決實際設(shè)備帶來的時間、空間和安全約束問題。
虛擬現(xiàn)實場景中立體視差的生成屬于計算機(jī)視覺研究領(lǐng)域的研究熱點。這項技術(shù)有著廣泛的應(yīng)用,包括虛擬現(xiàn)實場景監(jiān)控,虛擬人機(jī)交互,等等。然而,虛擬現(xiàn)實場景具有獨特的特點,因此其人臉再現(xiàn)較為困難。它還受到其他東西的影響,比如光線和遮蔽物。當(dāng)前基于透視的 LOD 四叉樹已經(jīng)形成了多種立體視差虛擬現(xiàn)實場景。目前,關(guān)于視點相關(guān) LOD 四叉樹在立體視差生成虛擬現(xiàn)實場景中的應(yīng)用研究還不多。利用視點相關(guān)的 LOD 四叉樹技術(shù),可以很容易地獲得許多未標(biāo)記的虛擬現(xiàn)實場景。利用視點相關(guān) LOD 四叉樹技術(shù)捕捉虛擬現(xiàn)實場景的重要組成部分、外觀、空間模式等,并在坐標(biāo)系中表示相應(yīng)的坐標(biāo)位置??偟膩碚f,有一些重要的部分和空間模式,包括軀干的中心點,左右手腕的空間模式,左右地理,等等。利用中心點設(shè)置極點,通過坐標(biāo)變換可以有效地轉(zhuǎn)換其他節(jié)點。最后,得到下列公式(1)所示的坐標(biāo):
套接字在英語中是插座的意思。對于使用 TCP/IP 協(xié)議完成的計算機(jī)之間的通信,套接字提供了兩者之間的通信接口。它是一個基本的運行單元,是雙方的相互協(xié)議。它的功能被打包在 DLL 中,并通過相應(yīng)的功能完成。有兩種類型的套接字 :其一是流接口,通過對網(wǎng)絡(luò)傳輸層的分析和處理,為接收端和發(fā)送端提供一定順序、無重復(fù)、無記錄的邊界數(shù)據(jù)流交互,更適合處理大量的數(shù)據(jù)。它還支持發(fā)送方和接收方之間的數(shù)據(jù)通信,但在傳輸過程中,不能保證數(shù)據(jù)包的可靠性、附屬性和不可重復(fù)性[1]。
虛擬現(xiàn)實多人協(xié)同應(yīng)急演練涉及多部門、多人在同一空間和時間維度上的活動。靜態(tài)的三維場景和動態(tài)的變化需要在不同的參與者之間同步進(jìn)行。突發(fā)事件多人協(xié)同應(yīng)急演練虛擬仿真系統(tǒng)需要滿足以下要求:
(1)參與者的狀態(tài)同步。參與者可以通過系統(tǒng)看到三維場景和其他參與者,并可以實時看到其他參與者的位置和運動變化。
(2)場景狀態(tài)和事件同步。在事故發(fā)生后,需要對不同參與者之間的事故相關(guān)信息進(jìn)行實時同步。
(3)場景生成與仿真。突發(fā)事件處置場景的范圍很廣,涉及的元素和人員很多。如何生成一個大型的地形系統(tǒng),如何模擬各種真實的物體和元素是該系統(tǒng)的一個重要問題。
(4)參與者對身體狀態(tài)的感知。參與者的身體狀態(tài)包括健康狀態(tài)和身體狀態(tài):健康狀態(tài)表明身體的健康程度,包括身體是否受傷,以及周圍的有害氣體是否對身體有害; 身體狀態(tài)表明參與者的行動能力,參與者在行動過程中將消耗身體能量,他們需要恢復(fù)身體能量來繼續(xù)行動后的身體消耗。每個參與者的身體狀態(tài)需要在不同參與者之間實時同步。
(5)參與者之間的溝通。溝通和聯(lián)絡(luò)使參與者之間能夠進(jìn)行有效的溝通,這有利于參與者之間的合作活動。溝通包括兩種形式:文字、電話語音。
(6)多人合作。在應(yīng)急演練過程中,有些活動需要多人完成,如兩人一起關(guān)門、一起開門、多人一起滅火、多人一起搶救傷員等,參與者需要分配好動作和活動周期才能成功完成這些活動。
(7)虛擬現(xiàn)實模擬。通過建模與模擬的設(shè)備和技術(shù),模擬和再現(xiàn)了真實的突發(fā)事件指揮環(huán)境和事故現(xiàn)場環(huán)境[2]。
突發(fā)事件多人協(xié)同應(yīng)急演練系統(tǒng)分為三個層次:表示層、服務(wù)層和存儲層:
表示層采用3d 的三維場景渲染、粒子系統(tǒng)、動畫、聲音等模塊,實現(xiàn)了三維場景渲染、水、火、煙霧、爆炸等事故特效、人物動畫、語音通信以及通過 JSON 消息的服務(wù)層通信。
服務(wù)層提供登錄、腳本策劃、演練計劃和演練管理、參與者狀態(tài)同步、參與者身體狀態(tài)感知、參與者虛擬、實時語音通信、環(huán)境模擬、日志服務(wù)等功能。系統(tǒng)數(shù)據(jù)結(jié)構(gòu)包括三維場景、演練角色、演練事件、語音錄制、評分等信息。系統(tǒng)狀態(tài)同步利用套接字技術(shù)實現(xiàn)了 TCP 網(wǎng)絡(luò)服務(wù),并給出了實現(xiàn)方法。在演練過程中,以指令的形式將參與者的演練操作傳輸?shù)窖菥毞?wù)器。基于套接字技術(shù),實現(xiàn)了鉆機(jī)服務(wù)器的網(wǎng)絡(luò)通信廣播和高速網(wǎng)絡(luò)傳輸。在字符虛擬過程中,統(tǒng)一行為樹 AI 是一個高性能的邏輯判斷框架,它提供了基本的人工智能支持。目前,支持的特征包括感知、決策、行動等。參與者的虛擬功能是通過統(tǒng)一的行為樹實現(xiàn)的。每個虛擬參與者對應(yīng)一個行為樹,該行為樹根據(jù)參與者的狀態(tài)和行為被組織成不同的判斷邏輯節(jié)點。整個演練過程通過日志信息按時間順序記錄,包括演練過程中發(fā)生的所有事件信息、參與者的狀態(tài)變化以及其他動態(tài)內(nèi)容。與日志對應(yīng)的時間由時間片表示。Net 框架對日志信息進(jìn)行定時和保存。
存儲層包括三個部分:系統(tǒng)數(shù)據(jù)結(jié)構(gòu)、三維模型和三維場景文件,提供數(shù)據(jù)存儲服務(wù)。數(shù)據(jù)結(jié)構(gòu)以 XML 文件形式保存,三維模型和三維場景數(shù)據(jù)以文件形式存儲,方便程序調(diào)用。
平臺包括兩部分內(nèi)容:后臺管理系統(tǒng)和前端虛擬仿真VR演練系統(tǒng)。
后臺管理系統(tǒng)是在 Windows 10操作系統(tǒng)上進(jìn)行開發(fā),實現(xiàn)了基于虛擬現(xiàn)實的突發(fā)事件多人協(xié)同應(yīng)急演練系統(tǒng)的開發(fā)與運行,主要實現(xiàn)用戶、應(yīng)急演練任務(wù)、演練腳本、演練計劃等管理。前端虛擬仿真VR演練系統(tǒng)主要通過 unity3d2017、3dmax2016等軟件開發(fā),并借助HTC、Pico等VR硬件設(shè)備,進(jìn)行多人協(xié)同虛擬仿真演練。硬件環(huán)境為 CPU i7-7500k,內(nèi)存8Gb,顯卡 NVIDIA geforce gtx1060,系統(tǒng)可以在 PC、 平板 等平臺上發(fā)布,運行平穩(wěn),效果較好。實踐證明,該系統(tǒng)具有良好的可移植性,可以在多種硬件和軟件平臺上運行[3]。
從多人協(xié)作和虛擬現(xiàn)實的角度,分析了多人協(xié)作在城市運行突發(fā)事件應(yīng)急演練中的應(yīng)用需求,設(shè)計了突發(fā)事件多人協(xié)同應(yīng)急演練系統(tǒng)。測試結(jié)果表明,該系統(tǒng)能夠滿足近百人在線協(xié)同應(yīng)急演練的需求,為參與者提供了一個可重復(fù)、安全、高效的應(yīng)急演練仿真培訓(xùn)平臺,有效地提高了參與者的應(yīng)急響應(yīng)能力。