孔吉宏,丘恩華,呂毅松,羅茜,周鴻雁
(南方電網調峰調頻發電有限公司,廣東 廣州 510630)
隨著計算機技術的發展和5G 高速通信應用的深入,虛擬現實(VR)技術成為了當前的研究熱點之一。VR 技術可以借助一定的硬件環境,通過計算機生成可以給人體帶來感官刺激的虛擬環境,并在該環境下完成人機交互[1-11]。在VR 中,人體的視覺、聽覺、力覺、觸覺均得到了完整的反饋,消除了人與計算機之間的隔閡,做到了真正的人機交互。對于電力系統,從業人員經常處于危險作業環境下,相關人員只有具備足夠的專業技能、熟練的業務能力才能保證人身和設備的安全。目前,電力系統使用的培訓環境大多是小型化、離散化的,與實際的生產環境存在差距。若引入VR 技術,建立操作仿真平臺,可以大幅度提升電力系統的培訓水平。
基于以上背景,該文對虛擬現實技術中的軟硬件平臺搭建方法、手勢跟蹤識別算法進行了研究。針對某水電站設計了一套安全操作仿真平臺,通過虛擬環境模擬實際生產環境,提高從業人員的專業技能與實操能力[12-15]。
為了實現人體和水電站虛擬環境的交互,需要引入手部感知識別軟硬件系統。在此之前,應先建立虛擬環境下的手部模型,提供手的姿態、位置以及動作等信息。具體的屬性如表1 所示[16]。

表1 手部信息采集
手部模型的指尖方向向量、手掌方向和法向向量如圖1 所示。

圖1 手部模型示意圖
當前的手部跟蹤算法主要有兩類:1)檢測前跟蹤(TBD);2)檢測后跟蹤(DBT)。相較于DBT,TBD 算法需要保留手部的全部采集信息,然后對數據進行聯合處理。由于在進行特征判決時基于多幀數據信息,因此TBD 算法具有更高的檢測成功率,但其數據處理負荷更大,對于硬件的要求更高。該文面向的應用場景為電力生產,對于算法的識別精度有較高的要求,因此采用了TBD 算法。首先進行均值濾波:

其中,N是像素總量。均值濾波通過像素點(x,y)周圍的N個像素點構成濾波窗口,用均值替代原有的像素值,對原始的手部關節運動軌跡進行降噪,避免因為抖動而引起噪聲影響。經過均值濾波后,手部骨骼節點的空間坐標變為:

濾波完成后,對幀特征進行特征提取。首先定義手掌掌心坐標p、指尖坐標fi:

由此可以得到手勢序列的結構特征以及指尖到掌心的歐式距離:

由于手勢識別是通過連續的幀進行判別,因此可以借助連續序列來定義序列特征。對于式(3)和式(4)所定義的手部模型,當i=1,2,…,5 時,可以組成六元組Ti={p,f1,f2,f3,f4,f5}。利用該六元組的平均值、標準差和均方根作為序列特征:

除了結構特征和序列特征,在手勢的動態變化中,其空間特征也會發生改變。為了描述出這種改變,首先需要定義掌心到中指尖的向量為空間中的基向量:

根據基向量,可以得到手勢在空間中與x、y、z軸的夾角余弦值:

為了保證水電站安全操作仿真平臺功能的完整性,該文基于系統工程學的思想對平臺進行需求分析,設計了圖2 所示的系統功能模塊。

圖2 仿真平臺功能模塊圖
從圖2 中可以看出,系統包括設備學習、設備拆裝、水電站虛擬漫游和培訓內容考試四類。每個模塊的具體功能如下:
1)設備學習
電力系統的安全、穩定運行離不開設備的平穩運轉,建立水電站仿真操作平臺是為了讓全體運維人員深入了解運行設備。在水電站中,包含水輪機、發電機組、高壓斷路器、隔離開關等多種設備。通過引入虛擬現實系統進行設備虛擬化操作、巡視,學習設備的工作原理可以更優地提升運維人員的專業水平。
2)設備拆裝
該模塊可以為運維人員提供虛擬化的實操環境。運維人員通過對電力設備的拆裝,可以更細致地了解設備的內部結構,深入學習電力設備的運行機理,提升自身的技能水平。
3)水電站虛擬漫游
該模塊基于實際的水電站生產環境,采用虛擬現實技術構建虛擬的站內場景,對水電站進行1∶1真實展現。運維人員可以借助VR 設備,實現站內的沉浸式虛擬漫游。在漫游過程中,運維人員完成對站內重要設備、關鍵節點的巡視。
4)培訓內容考試
該模塊可以基于上述的設備學習、設備拆裝、虛擬漫游等培訓項目進行考核鑒定。通過虛擬現實技術配置實操題目,運維人員可以在虛擬環境中完成培訓與考核。該模塊的引入實現了整個仿真平臺業務流程的閉環。
為了實現圖2 描述的安全仿真平臺,需要借助VR 硬件,該文使用的是LED-CAVE。其可以通過手柄和數據手套上的70 多個傳感器記錄數據,生成目標的空間位置,借助雙目成像技術感知虛擬環境。LED-CAVE連接的PC作為軟硬件的結合點,共有8臺高性能圖形工作站,其中1臺作為主控機,另外7臺作為渲染集群機控制LED 主控設備進行湖面呈現,所有工作站均在局域網內,每臺機器的配置均如表2所示。

表2 計算機配置
從表2 可以看出,PC 上配置的軟件開發工具為Unity 和MiddleVR。Unity 是一款用于大型游戲設計的專業軟件,可以通過物理模擬、法線貼圖、動態陰影等資源完成場景渲染。在工作時,Unity 通過可視化工作流完成場景布局、資源綁定,極大地提升了VR 開發的效率。而MiddleVR 是一款專用VR 開發插件,其支持LED-CAVE 交互設備并提供了全面的設備接口。通過書寫配置文件,即可將軟硬件無縫結合,實現人與虛擬世界的交互。
在開發的過程中,為了將MiddleVR 添加到Unity項目中,因此需要將其鏈接到MiddleVR 的通用部分,以驅動攝像機和3D 節點的所有腳本及插件。在MiddleVR 安裝的數據文件夾中找到MiddleVR Unity,然后導入該數據包并添加MiddleVR 和Plugins兩個文件夾,具體的配置方法如圖3 所示。

圖3 UI交互配置圖
配置完成后,對編程環境進行交互配置。首先創建交互腳本:
using Unity;
using MiddleVR_Unity;
隨后,借助MidlleVR 中的設備管理器MiddleVR.VRDeviceMgr 添加所有的輸入設備,并在設備管理器中配置添加多個Wand。添加完成后,如需訪問他們的輸入數據,則只需通過調用命令來檢索Wand:
vrWand myWand=
MiddleVR.VRDeviceMgr.GetWand("MyWand Name");
由于MiddleVR 和Unity 使用了不同的坐標系,因此,當用戶從MiddleVR 的添加輸入設備獲取3D坐標(3D 矢量、四元數、矩陣)后,必須借助MVRTools.ToUnity(·)函數再將其轉換為Unity 坐標;當用戶從Unity GameObject 獲取3D 坐標并在MiddleVR 節點或跟蹤器上對其進行設置時,需要先借助SetPos itionVirtualWorld(·)函數從Unity 轉換為MiddleVR 坐標系。
如圖4 所示,穿戴好動作捕捉設備,進入系統程序調試完成之后,利用設備操縱場景中的虛擬人物進行動作,可以給系統使用者帶來真實的體驗感。

圖4 視界可達性與動作舒適性驗證
圖5 給出了虛擬手的操作示意圖。通過Unity 和MiddleVR 的交互接口完成虛擬手在場景中進行事件、響應操作,例如實現抓握、松手、五指動作指令等。圖中給出了拾取/放置、拆卸/裝配等操作的仿真圖示。

圖5 設備操作虛擬操作示意
為了評估該仿真操作平臺在進行設備操作時對于手部動作的識別精度,該文征集了102 名參培學員,針對13 種手部動作錄制了數據集。在該數據集中,每位參培學員針對同一動作錄制10 次,共得到了13 260 個視頻序列,每個序列的分辨率為640×480,長度1~2 s,幀率為每秒30 幀。
在分類時,文中使用支持向量機(SVM)算法,仿真使用的核函數為線性徑向基高斯函數。在仿真時,使用60%的樣本數據作為訓練集,其余40%的樣本數據作為測試集。完成上文所述的手部特征提取后,最終每個動作的識別準確度如表3 所示。

表3 該文算法的仿真結果
從表3 可以看出,該系統在進行手部動作識別時,對大多數的手部動作識別準確度均在85%以上,平均識別準確度達到了87.2%。但對于兩指捏、捏放這種相似動作,容易產生識別混淆,故而平臺在該動作的識別上仍有一定的優化空間。
該文基于某水電站的實際生產環境,利用VR 設備、Unity、MiddleVR 等軟硬件平臺進行虛擬化,并對手部的動作跟蹤和識別方法進行優化。在虛擬化后的環境下,從業人員可以實現設備操作、設備拆裝、虛擬漫游等功能,電力從業人員在該系統中,可以通過視覺、聽覺、觸覺等多種感官完成培訓,從而有效提升作業人員的培訓體驗和電力行業的培訓水平。該文的研究內容符合電力培訓的發展趨勢,具有較強的應用價值。