惠鐸鐸,馬 進,柳 平,胡文東
(1.第四軍醫大學 航空航天醫學教育部重點實驗室,陜西 西安 710032;2.95503 部隊,貴州 遵義 563127)
從20世紀80年代起,經過國家的批準,民航總局引入了國外先進的飛行員選拔技術和人才,自此才建立起我國的民航飛行員選拔系統[1]。經過多年的努力和發展,目前我國已經形成一系列比較全面的民航飛行員選拔體系,并且飛行員選拔的技術和研究還在持續不斷的發展中。相對于快速發展的飛行員選拔技術,VR技術的飛速發展使人們在工作和生活的方方面面發生了巨大變化。將VR技術應用于飛行員心理選拔技術中,將現代的高科技技術融入到民航飛行員心理選拔領域,使飛行員心理選拔技術變得更加完善。將VR技術應用于民航飛行員心理選拔中目前在國內外比較少見,文中將VR技術應用于民航飛行員心理選拔中,旨在探索為被試塑造一個身臨其境的場景來進行情緒穩定性及手眼協調能力的測試,以期在原有儀器檢測的基礎上有所改進[2]。
VR技術簡稱虛擬現實技術,是在計算機圖形學、傳感技術、顯示技術、計算機動畫模擬與仿真技術、人機交互技術、心理學、人工智能等學科的基礎之上發展起來的,其中“現實”泛指客觀上可能存在或不存在于世界上的任何環境或事物,它在實際操作中也許是可實現的,也有可能難以實現或根本無法實現。而“虛擬”則是指用計算機生成的意思[3]。借助于該技術的發展,用戶在計算機創造的虛擬世界中體驗到身臨其境的感覺,還可同虛擬世界中的物體進行交互作用。
在文中研究的系統中,利用VR技術開發出一套可用于民航飛行員選拔中的心理測試軟件,旨在進一步優化和提高現有民航飛行員選拔中飛行員心理穩定性選拔的準確性[4]。將采用VR技術實現一個立體的三維空間,在該空間中利用VR設備塑造一種強大心理壓力的氣氛,同時讓被試利用外接駕駛桿來操縱立體空間上的圖形[5]。
實現VR技術的平臺是當前最流行的3D開發軟件Unity。Unity3D是由Unity Technologies開發創建的如三維視頻游戲、建筑可視化、實時三維動畫等類型互動內容的多平臺的綜合型游戲開發工具[6],是一個全面整合的專業游戲引擎,其開發效率出類拔萃,是一款優秀的軟件開發平臺。文中所用的Unity軟件開發版本為5.1.1,外接虛擬現實設備型號為索尼HMZ-T1,外接游戲桿操縱設備為賽鈦客X52pro。
在該系統中,首先使用Unity開發平臺,在塑造好的背景空間中,利用網格建模技術[7],設置5條形狀不同但是長度和坡度等效的軌跡,建立一個由游戲桿控制的3D小球,使該小球在軌跡上運行,計算其從開始點到小球掉落下的距離,同時計算小球偏離軌跡中心的距離,經過計算后,用來作為考察被試的成績[8]。總測試時間為3分鐘。在測試系統中,所使用的數據庫為Access2007。
該測試在設計過程中主要分為三部分,分別為登錄界面、測試界面和數據記錄。系統基本框架流程如圖1所示。
當系統進入登錄界面時,被試填寫基本信息后選擇相應的軌跡點擊開始按鈕進入測試,同時將基本信息寫入數據庫。進入測試后首先獲取外設和場景對象,等待被試進行操作[9]。在測試界面中,最上方是測試時間倒計時條,測試總時間為3分鐘,被試使用駕駛桿操縱小球,使小球在自動生成的軌跡上運動[10]。小球每掉落一次,將在數據庫中記錄一次數據,直到測試時間結束。小球離起點的距離越長,得分會越高;程序實時記錄下來的小球距離軌跡中心點的距離越小,得分會越高。圖2是系統的測試界面[11]。

圖1 基本框架流程

圖2 測試界面
該測試軟件的開發平臺是在Unity開發平臺中利用軟件及硬件協作[12],使用游戲桿操控小球的同時利用虛擬現實技術實現模擬真實的立體空間,以實現有壓力的心理氛圍。軟件的開發平臺是用.NET語言在VS2010平臺上開發出來的,硬件采用的是索尼HMZ-T1頭戴顯示設備和賽鈦客X52pro[13]。
(1)使用外接游戲桿控制虛擬小球。
在該測試軟件中,利用Unity開發平臺自帶的重力系統為小球設置剛體屬性,在開發軟件的Component選項中選擇physics子菜單中的rigidbody選項,并在Inspector面板中設置剛體的具體屬性。軟件中小球的剛體屬性設置如圖3所示。
設置外接游戲桿的屬性,在Unity軟件中的Edit菜單中選擇Project settings子菜單中的Input選項,在Inspector面板中的具體設置如圖4所示。
控制小球的腳本如下:
void Start()
{
rigibody target.GetComponent
rigibody.maxAngularVelocity=1000f;
drivehandleforce=150;
}
//Update is called once per frame
void Update()
{
if(PublicApplicationData.isstart==true)
{
x=-Input.GetAxis("Horizontal")*drivehandleforce*Time.deltaTime;
z=-Input.GetAxis("Vertical")*drivehandleforce*Time.deltaTime;
rigibody.AddForce(-z,0, x, ForceMode.Force);
}
}

圖3 剛體屬性設置

圖4 外接游戲桿設置
在Unity開發平臺中,Start()函數只在程序開始時運行一次,Update()函數在程序運行的每幀都運行。在后臺初始化函數void Start()中,得到場景中的對象,使用GetComponent方法:rigibody=target.GetComponent
(2)利用VR技術實現立體視覺效果。
人的兩只眼有一定距離,這就造成物體的影像在兩眼中有一些差異[14],由于物體與眼的距離不同,兩眼的視角會有所不同。由于視角的不同,所看到的影像也會有所差異,大腦會根據這種差異感覺到立體的景象。為了達到模擬人眼立體視覺的效果,在Unity開發平臺中創建兩個攝像機模擬人的兩只眼睛[15],且兩只攝像機之間的水平距離約為人兩眼的瞳孔距離,將場景中的小球對象設置為焦點,使用LookAt()函數使攝像機聚焦在對象上。這樣兩個攝像機設置后,會將測試場景以不同角度的分屏幕顯示出來,如圖3所示。外接索尼頭戴顯示器HMZ-T1,通過HMDI高清接口連接電腦和設備,打開索尼頭戴顯示器開關,將其設置為并排3D顯示,HMDI會將電腦中屏幕顯示的并排場景傳輸給索尼頭戴顯示設備,通過索尼頭戴顯示設備中的兩個OLED屏幕,就可以體驗模擬人眼的逼真3D場景。實現腳本如下:
void Update()
{
leftCameraPosition.z=leftCameraPosition.z+Eyesdistance;
rightCameraPosition.z=rightCameraPosition.z-Eyesdistance;
Left_Camera.transform.localPosition=leftCameraPosition;
Right_Camera.transform.localPosition=rightCameraPosition;
}
(3)數據庫錄入的實現。
該軟件是用C#開發的,所以數據庫的錄入依然引用C#的數據開發包,在程序的開始聲明引用如下:
using System;
using System.Data;
using System.Data.Odbc;
存儲數據腳本如下:
void StoreData(string path,string command)
{
string connection="Driver={Microsoft Access Driver (*.mdb)};DBQ="+path;
OdbcConnection odbcconnection=new OdbcConnection(connection);
OdbcCommand odbccommand=new OdbcCommand(command, odbcconnection);
odbcconnection.Open();
odbccommand.ExecuteNonQuery();
odbcconnection.Close();
if(odbcconnection.State!=ConnectionState.Closed)
{
odbcconnection.Close();
}
odbcconnection.Dispose();
}
對基于VR技術開發的心理測試軟件的軟件需求和軟件設計進行了詳細說明,同時對開發過程中的核心關鍵技術進行了分析和研究,將關鍵算法予以細致的說明。目前VR技術在各個領域應用越來越廣泛,
將這種新興技術融入傳統的民航飛行員心理測評領域,使傳統行業借助于新技術得到更大發展,具有非常重要的現實意義。
[1] 孫景泰,李 珠.我國現役飛行員心理品質模型的研究[J].健康心理學雜志,2001,9(3):217-219.
[2] 中國民用航空局民用航空醫學中心.中國民航初始飛行學員心理選拔系統的研發[M].北京:中國民用航空局民用航空醫學中心,2009.
[3] 郭為民,羅曉利.國內外飛行人員心理選拔研究述評[J].國際航空,1995(2):28-31.
[4] 張利利,馬 進,李曉京.基于C/S模式的心理檢測與指導系統[J].微型電腦應用,2015,31(9):79-80.
[5] 韓 楊,李曉京,馬 進,等.民航飛行學員與大學生基本認知能力的比較[J].中國健康心理學雜志,2013,21(3):447-449.
[6] 武國城.對空軍飛行學員心理選拔工作的看法和建議[J].中華航空醫學雜志,1994,5(1):17-20.
[7] GERTMAN D I,BLACKMAN H S.Human reliability and safety analysis data handbook[M].New York:John Wiley&Sons,Inc.,2007.
[8] JOHNSON R,LEEN M,DAN G,et al.Adaptive level of autonomy for UAV supervisory control[R].[s.l.]:[s.n.],2005.
[9] DAVID B,LAWRENCE J.Workload-matched adaptive automation support of air traffic controller information processing stage[R].Virginia:Langley Research Center,2002.
[10] DEARDEN A,HARRISON M,WRIGHT P.Allocation of function:scenarios context and the economics of effort[J].International Journal of Human-Computer Studies,2000,52(2):289-318.
[11] 邱宜均,貝恩渤,劉立新.少年運動員幾項紙筆心理運動能力測驗的編制與研究[J].武漢體育學院學報,1992(3):40-44.
[12] 王 丹.基于游戲引擎3D GAMESTUDIO的虛擬校園系統設計與實現[D].成都:西南交通大學,2010.
[13] 惠鐸鐸,馬 進,李曉京,等.基于Opengl的飛行團隊協作能力評價系統開發[J].計算機技術與發展,2016,26(1):134-136.
[14] 惠鐸鐸,李曉京,文治洪,等.心理運動能力測評系統的開發應用[J].計算機技術與發展,2014,24(12):180-182.
[15] 惠鐸鐸,胡文東,李曉京,等.心理運動能力測試軟件的開發與應用[J].計算機技術與發展,2014,24(4):155-157.