曹力,吳小威,李琳,3
(1.合肥工業(yè)大學(xué) 計(jì)算機(jī)與信息學(xué)院,安徽,合肥 230601; 2.工業(yè)安全與應(yīng)急技術(shù)安徽省重點(diǎn)實(shí)驗(yàn)室, 安徽,合肥 230009; 3.安全關(guān)鍵工業(yè)測(cè)控技術(shù)教育部工程研究中心,安徽,合肥 230009)
近年來(lái),隨著低成本頭戴式顯示器(head-mouted display,HMD)的出現(xiàn),沉浸式虛擬現(xiàn)實(shí)(virtual reality,VR)設(shè)備在普通用戶中得以普及. VR環(huán)境是一個(gè)類似于真實(shí)世界的三維空間,其交互方式主要存在導(dǎo)航、選擇、操縱和系統(tǒng)控制4種類型[1-2].
導(dǎo)航是指在虛擬環(huán)境中將用戶從一個(gè)地方帶到另一個(gè)地方. 操縱通常指修改對(duì)象的位置和方向. 系統(tǒng)控制主要負(fù)責(zé)改變系統(tǒng)的交互模式和系統(tǒng)狀態(tài).
選擇技術(shù)是允許用戶在虛擬環(huán)境中選擇一個(gè)或多個(gè)對(duì)象的技術(shù). 在早期的探索中,以虛擬手技術(shù)[3]最受歡迎,因?yàn)槠淠軌驕?zhǔn)確地反映手部的動(dòng)作使得交互精確自然,但其交互范圍有限. 為此,Poupyprev等[4]提出了go-go技術(shù)來(lái)擴(kuò)大虛擬手在場(chǎng)景中的可達(dá)范圍. 由于光線投射技術(shù)在遠(yuǎn)距離很難選中目標(biāo),Liang等[5]提出了用圓錐光束代替光線的圓錐投射(cone-casting)方法. 但該方法無(wú)法消除選擇歧義,因此并不適用于密集場(chǎng)景. Mendes等[6]則基于圓錐投射技術(shù),利用迭代細(xì)化的方式解決了圓錐投射技術(shù)選擇的精確度問(wèn)題,但交互過(guò)程過(guò)于繁瑣. Kopper等[7]使用了一種四菜單細(xì)化的SQUAD技術(shù),通過(guò)四菜單選項(xiàng)逐步選取目標(biāo),但該方法選擇效率低且破壞了VR交互的沉浸感. Mingyu KimBong等[8]則考察了凝視交互在VR中的表現(xiàn)并測(cè)試了交互過(guò)程中用戶的眩暈感和疲勞感. 現(xiàn)有的選擇技術(shù)很難在選擇精度和選擇范圍之間達(dá)到較好的平衡.
觸覺(jué)由于能使用戶產(chǎn)生更真實(shí)的沉浸感,在交互過(guò)程中有著不可替代的作用. 以Htc Vive為代表的手柄可以靠震動(dòng)來(lái)為交互提供觸覺(jué)反饋,但這種震動(dòng)產(chǎn)生的反饋并不能讓用戶感到真實(shí)的觸覺(jué). Project GROPE[9]在1967年使用機(jī)械臂為用戶觸摸和抓取VR場(chǎng)景中的虛擬對(duì)象時(shí)提供觸覺(jué)反饋,但是由于硬件設(shè)備的高成本、大尺度和安全問(wèn)題,導(dǎo)致此類交互系統(tǒng)大多數(shù)只能停留在實(shí)驗(yàn)階段. Hinckley等[10]則開(kāi)創(chuàng)了使用被動(dòng)道具作為觸覺(jué)反饋的被動(dòng)觸覺(jué)(passive haptic)的概念. 但該方法需要現(xiàn)實(shí)世界和虛擬世界的一對(duì)一映射,所以給定的物理環(huán)境可能不支持所有虛擬場(chǎng)景的交互需求. 而當(dāng)感官?zèng)_突時(shí),視覺(jué)占主導(dǎo)地位,Luv Kohli等[11]基于此提出了一種通過(guò)扭曲虛擬空間將多個(gè)虛擬對(duì)象映射到一個(gè)物理對(duì)象的重定向觸摸技術(shù)(redirected touching)為交互提供觸覺(jué)反饋. 而Mahdi Azmandian等[12]則創(chuàng)建了一個(gè)用于重新利用被動(dòng)觸覺(jué)的框架,稱為觸覺(jué)重定向(haptic retargeting). 該方法通過(guò)重復(fù)利用用戶附近的物理對(duì)象,允許單個(gè)物理對(duì)象為多個(gè)不同的虛擬物體提供觸覺(jué)反饋. Lung-Pan Cheng等[13]基于觸覺(jué)重定向,使用相同的稀疏觸覺(jué)代理(sparse hAptic proxy)為不同的場(chǎng)景提供觸覺(jué)反饋. 但是現(xiàn)有的觸覺(jué)重定向方法由于重定向距離的原因不支持連續(xù)交互.
智能平板是人們已經(jīng)非常熟悉的交互設(shè)備,它使用觸摸屏進(jìn)行導(dǎo)航、選擇、操縱和系統(tǒng)控制已經(jīng)有了成熟的交互范式. 因此,本文希望將平板設(shè)備的交互范式應(yīng)用到HMD環(huán)境中,以解決HMD-VR環(huán)境下的綜合交互問(wèn)題. Medeiros等[2]在CAVE環(huán)境下曾經(jīng)利用智能平板設(shè)備設(shè)計(jì)了一套交互系統(tǒng),在導(dǎo)航、選擇、操縱和系統(tǒng)控制方面均有很好的表現(xiàn),但在HMD環(huán)境下用戶無(wú)法看到平板設(shè)備并與之交互. 為了在HMD環(huán)境下可以直觀高效地使用平板設(shè)備,本文進(jìn)行了以下創(chuàng)新工作.
(1)設(shè)計(jì)了一個(gè)平面輔助物的物理對(duì)象,使用單深度相機(jī)跟蹤用戶的手部和平面輔助物并分別映射到虛擬場(chǎng)景中. 通過(guò)虛擬手與虛擬平面的交互來(lái)實(shí)現(xiàn)智能平板的交互范式;
(2)為了滿足用戶在虛擬空間與真實(shí)空間觸覺(jué)一致性的要求,本文提出了一種觸覺(jué)重定向方法,使得交互操作可以在相鄰目標(biāo)間連續(xù)切換,并能有效防止切換時(shí)的虛擬手抖動(dòng).
本文設(shè)計(jì)的HMD-VR交互系統(tǒng)利用平面輔助物將智能平板的交互范式引入到HMD環(huán)境中,不僅符合人們的使用習(xí)慣,還可以為用戶提供虛實(shí)一致的觸覺(jué)反饋,系統(tǒng)設(shè)計(jì)如圖1所示. 平面輔助物可以是任意附有人工標(biāo)記的平面對(duì)象,如圖2所示. 小型深度相機(jī)安裝在HMD前方、并向下傾斜15°左右,消除由于深度相機(jī)和用戶眼睛之間的位置差異帶來(lái)的視覺(jué)差異.
圖1 交互系統(tǒng)的組成Fig.1 Components of the interaction system
圖2 平面輔助物Fig.2 The planar-aid
由于HMD-VR環(huán)境下,用戶無(wú)法看到物理場(chǎng)景中的手和平面輔助物,導(dǎo)致難以進(jìn)行位置準(zhǔn)確的交互行為. 因此本文通過(guò)深度相機(jī)Cam來(lái)跟蹤Pp(平面輔助物,位置以pp表示)和Hp(用戶右手,位置以hp表示,本文中用戶用左手拿起Pp,用右手與虛擬平面上的按鈕交互),并分別映射到虛擬場(chǎng)景成為Hv(虛擬手,位置以hv表示)和Pt(虛擬平面,位置以pt表示),如圖3所示.
圖3 Hp和Pp的跟蹤和同步Fig.3 Tracking and synchronizing Hp and Pp
如圖4和圖5所示,本文同步了Pp和Pt的位置,并且利用渲染到紋理技術(shù)將用戶前方的場(chǎng)景映射到Pt上作為第二視角. 如此,既方便用戶與場(chǎng)景的交互,又避免了Pt對(duì)場(chǎng)景的遮擋.
根據(jù)具體的虛擬現(xiàn)實(shí)應(yīng)用,用戶可以選擇站立或坐著使用該系統(tǒng),不建議進(jìn)行較大范圍的晃動(dòng)或走動(dòng),以避免設(shè)備發(fā)生較大偏移導(dǎo)致映射失敗,這與智能平板的用戶使用要求亦是一致的.
將智能平板交互范式引入HMD-VR環(huán)境的核心問(wèn)題在于虛實(shí)一致,故本文采用了位置跟蹤和觸覺(jué)重定向技術(shù)達(dá)成這一目標(biāo),并針對(duì)需求進(jìn)行了改進(jìn)與優(yōu)化.
圖4 物理場(chǎng)景中用戶拿起平面輔助物Fig.4 The user picks up the planar-aid in physical scene
圖5 虛擬場(chǎng)景中的虛擬平面Fig.5 The virtual plane in virtual scene
在虛實(shí)注冊(cè)領(lǐng)域,很多學(xué)者已經(jīng)取得了不錯(cuò)的進(jìn)展. 其中,基于標(biāo)識(shí)的注冊(cè)方法是在場(chǎng)景中放置人工標(biāo)識(shí),對(duì)該標(biāo)識(shí)進(jìn)行識(shí)別和跟蹤[14]. 通過(guò)跟蹤和繪制虛擬手,LeapMotion可以與VR中的虛擬物體交互. 但是由于無(wú)法提供觸覺(jué)反饋,LeapMotion交互的沉浸感并不高. 因此LeapMotion常用來(lái)恢復(fù)手部姿態(tài)和獲取手部位置[15]. 本文采用了文獻(xiàn)[14]中的人工標(biāo)識(shí)方法追蹤平面輔助物,利用文獻(xiàn)[15]的方法恢復(fù)手部姿態(tài)和捕獲手的位置.
本文通過(guò)位于Oc點(diǎn)的Cam跟蹤Pp的位置,如圖6所示.
圖6 空間映射Fig.6 Space mapping
Pp位于深度相機(jī)坐標(biāo)系下,其位置坐標(biāo)為pp(x,y,z),Pt位于虛擬場(chǎng)景中的世界坐標(biāo)系下,其位置坐標(biāo)為pt(x0,y0,z0). 由于Pp和Pt處于不同坐標(biāo)系,故需要通過(guò)坐標(biāo)系變換矩陣M將pp轉(zhuǎn)換為世界坐標(biāo)系下,然后通過(guò)過(guò)渡矩陣M1消除Pp和Pt在同一坐標(biāo)系下的位置差異,同步pp和pt的位置.其中
過(guò)程如式(1)所示.
pt′=pp′MM1
(1)
其中pt′、pp′為pt、pp的齊次坐標(biāo)描述。通過(guò)Cam,跟蹤到了Hp的位置hp,由于Hp和Pt處于不同坐標(biāo)系,同理可通過(guò)坐標(biāo)系變換矩陣M′和過(guò)渡矩陣M1進(jìn)行如下變換:
(2)
其中,pt′、hp′分別為pt、hp的齊次坐標(biāo)描述。由式(1)和(2)可知,Pp、Hp可通過(guò)坐標(biāo)變換與Pt處于同一交互空間.
本文因?yàn)椴捎昧瞬煌姆椒ú杉趾推矫孑o助物的位置信息,因此虛擬手與虛擬平面位置之間存在初始誤差. 位置上的差異會(huì)引起虛實(shí)不一致,影響用戶的交互體驗(yàn),降低沉浸感.
因此,本文提出一種校準(zhǔn)算法消除初始誤差,算法如下.
算法1初始誤差校準(zhǔn)算法
輸入:hp、pp-右手和平面輔助物的位置信息
輸出:pt-正確的虛擬平面位置
Step 1:用戶拿起Pp后通過(guò)人工標(biāo)識(shí)跟蹤其位置信息pp
Step 2:將右手展開(kāi),掌心部位貼放在Pp中心處,此時(shí)Cam捕獲到的Hp的位置hp可以作為Pp的精確位置
Step 3:計(jì)算出初始誤差Offset =hp-pp,生成持久化數(shù)據(jù)
Step 4:pp經(jīng)過(guò)誤差補(bǔ)償后作為Pt的位置pt,即:pt=pp+Offset
智能平板的唯一交互方式就是手部接觸,觸覺(jué)與視覺(jué)的高度統(tǒng)一是高效交互的保證. 在本系統(tǒng)中用戶接觸的對(duì)象為輔助物平板Pp,其映射物為虛擬平面Pt. 在HDM-VR環(huán)境下,用戶的直覺(jué)操作目標(biāo)是虛擬平面Pt,故在虛擬世界中不希望Pt尺寸過(guò)小影響交互的效率和準(zhǔn)確性,在真實(shí)空間中則不希望Pp尺寸過(guò)大給用戶帶來(lái)負(fù)擔(dān). 因此,如圖7所示,Pp和Pt之間存在一定尺寸差異,在交互時(shí)可能會(huì)出現(xiàn)Hp探出Pp邊界以外而無(wú)法獲得觸覺(jué)反饋的情況. 本文使用觸覺(jué)重定向技術(shù)[12]解決Pp和Pt的尺寸差異造成的位置上和觸覺(jué)上的不一致,并為用戶的交互提供實(shí)時(shí)的觸覺(jué)反饋.
圖7 Pp和Pt的尺寸差異Fig.7 The size difference between Pp and Pt
觸覺(jué)重定向有兩個(gè)先決條件,即必須先確定Pr(物理目標(biāo),位置以pr表示)和Pv(虛擬目標(biāo),位置以pv表示)的位置.Pr始終位于Pp范圍內(nèi),Pv則必須由用戶自己選擇. 因此,為了讓用戶能夠自由地選擇重定向目標(biāo),本文設(shè)計(jì)了一種重定向目標(biāo)選擇方法,允許用戶使用凝視和手部動(dòng)作來(lái)選擇重定向目標(biāo).
本文使用如圖8所示的狀態(tài)機(jī)來(lái)協(xié)助用戶選擇重定向目標(biāo). 用戶的3種狀態(tài)切換如下.
(a) 尋找目標(biāo)狀態(tài):用戶觀察虛擬平面Pt,尋找Pt上想要交互的功能按鈕Bi={b1,b2,b3,…,bn},此時(shí)判斷凝視時(shí)間是否達(dá)到閾值t(時(shí)間閾值,本文中t值設(shè)為2 s,以適應(yīng)一般用戶的行為習(xí)慣),如果是進(jìn)入(b),
(b) 凝視狀態(tài):判斷用戶右手Hp是否抬起到指定高度H(高度閾值,本文中H值初步設(shè)為100 cm,H值可靈活調(diào)整,以適應(yīng)用戶身高),如果是進(jìn)入(c),
(c) 確定目標(biāo)狀態(tài):確定重定向目標(biāo)Pv=Bi,當(dāng)交互完成時(shí)返回(a).
圖8 重定向目標(biāo)選擇狀態(tài)機(jī)Fig.8 State machine for selecting haptic retargeting objects
圖9說(shuō)明了觸覺(jué)重定向的具體過(guò)程. 虛擬手
圖9 重定向過(guò)程中Hp和Hv的位置變化Fig.9 Positions of Hp and Hv in the process of haptic retargeting
Hv和物理手Hp最初均位于H0處(本文把確定重定向目標(biāo)的瞬間用戶右手Hp的位置作為H0,在一次重定向過(guò)程中其位置不變),在虛擬手Hv移向Pv過(guò)程中,重定向算法逐漸使得虛擬手Hv朝著Hp遠(yuǎn)離物理目標(biāo)Pr的方向上偏移. 在VR場(chǎng)景中視覺(jué)占主導(dǎo)地位,Hv移動(dòng)方向上的偏移會(huì)誘導(dǎo)用戶的物理手Hp移向物理目標(biāo)Pr來(lái)校正Hv的移動(dòng)軌跡. 最終,當(dāng)Hp觸碰到Pr時(shí)虛擬手Hv抵達(dá)Pv.
觸覺(jué)重定向過(guò)程需要獲取手的初始位置H0、Pv的位置pv和Pr的位置pr,具體重定向的過(guò)程如下.
假設(shè)應(yīng)將虛擬場(chǎng)景點(diǎn)pv映射到物理場(chǎng)景點(diǎn)pr,此時(shí)計(jì)算總偏移量T,
T=pv-pr
(3)
當(dāng)Hp開(kāi)始從初始位置H0向Pv移動(dòng)時(shí),偏移量T逐漸被加到虛擬手的位置hv上,即
α=Ds/(Ds+Dp)
(4)
W=αT
(5)
hv=hv+W
(6)
α為位移比,范圍從0~1,Hp位于H0時(shí)為0,當(dāng)物理手Hp到達(dá)物理目標(biāo)Pr時(shí)為1,其中Ds=|hp-H0|,Dp=|hp-pr|.
然而,利用重定向技術(shù)為本文的交互系統(tǒng)提供觸覺(jué)反饋還存在以下問(wèn)題:首先,切換重定向目標(biāo)時(shí)虛擬手會(huì)有明顯的抖動(dòng)現(xiàn)象. 這不僅會(huì)給用戶帶來(lái)視覺(jué)上的沖突,更會(huì)破壞交互的沉浸感;其次,觸覺(jué)重定向在沒(méi)有足夠重定向距離時(shí)不適合與相鄰目標(biāo)連續(xù)交互. 這不僅會(huì)降低交互的效率,更會(huì)降低交互體驗(yàn). 本文針對(duì)以上兩個(gè)問(wèn)題,提出了下述解決方案.
用戶在交互期間可能在虛擬手Hv已被加上一定偏移量的情況下,做出切換重定向目標(biāo)的決定. 由公式(3)(5)(6)可知,重定向目標(biāo)Pv改變,則總偏移量T改變,W會(huì)瞬間改變. 此時(shí)虛擬手Hv會(huì)發(fā)生明顯的抖動(dòng). 為了解決上述問(wèn)題,本文提出了以下方法.
算法2虛擬手抖動(dòng)優(yōu)化算法
輸入:hp、hv、pv-右手和虛擬目標(biāo)的位置信息
輸出:W-幀間平滑的虛擬手位置偏移量
Step 1:用向量Wt保存當(dāng)前hp與hv的位置偏移量Wt=hp-hv,初始時(shí)Wt=Vector3(0,0,0)
Step 2:確定重定向目標(biāo)Pv后計(jì)算總偏移量,即:T=pv-pr
Step 3:計(jì)算實(shí)時(shí)偏移量W=αT+(1-α)Wt,W作為Hv的位置增量,hv=hv+W
Step 4:用戶選擇新的虛擬目標(biāo)PvN時(shí)將當(dāng)前W存入Wt中,Wt=W,記PvN位置為pvN
Step 5:計(jì)算當(dāng)前總偏移量T′=pvN-pr
Step 6:用戶將Hv移向Pv過(guò)程中,計(jì)算W=αT′ +(1-α)Wt,W作為Hv的位置增量,hv=hv+W
Step 7:完成交互后,Wt=Vector3(0,0,0)
Step 8:重復(fù)上述Step1~Step7
為了驗(yàn)證提出的重定向算法的可行性、正確性,本文分別使用了文獻(xiàn)[12]和本文的算法在交互期間切換重定向目標(biāo),并記錄了切換前后的5幀內(nèi)虛擬手Hv的位置坐標(biāo)和連續(xù)幀畫(huà)面,對(duì)比兩種重定向算法的實(shí)際表現(xiàn),如表1所示.
表 1 虛擬手坐標(biāo)Tab. 1 Positions of virtual hand
表1中坐標(biāo)單位均為m,兩種算法均在第3幀將重定向目標(biāo)由視角縮小按鈕切換為視角放大按鈕. 并且為了方便觀察和對(duì)比,此處及本文后續(xù)部分均以垂直角度展示虛擬平面及其內(nèi)容. 從表1可以看出,文獻(xiàn)[12]的重定向算法在切換目標(biāo)前后虛擬手的位置變化并不平滑,經(jīng)計(jì)算第2與第3幀之間出現(xiàn)了7.62 cm的虛擬手抖動(dòng)幅度. 而本文的重定向算法在切換重定向目標(biāo)前后虛擬手的位置變化平滑,有效地解決了切換重定向目標(biāo)時(shí)虛擬手的抖動(dòng)問(wèn)題.
觸覺(jué)重定向技術(shù)由于其算法設(shè)計(jì)上的缺陷無(wú)法與相鄰目標(biāo)連續(xù)交互. 若一次交互完成時(shí)立即切換重定向目標(biāo),則Hp和Pp之間沒(méi)有足夠的重定向距離,此時(shí)重定向過(guò)程中Hp和Hv的移動(dòng)速度差異過(guò)大,會(huì)造成用戶感官上的強(qiáng)烈沖突. 而在智能平板的交互范式中,為了保證用戶的交互效率,功能按鈕之間皆彼此相鄰. 因此,為了適應(yīng)智能平板的交互范式,本文提出了一種基于觸覺(jué)重定向的相鄰目標(biāo)連續(xù)交互方法.
算法3相鄰目標(biāo)連續(xù)交互算法
輸入:hp、hv、pv-右手和虛擬目標(biāo)的位置信息
輸出:W-正確的虛擬手位置偏移量
Step 1:用戶確定重定向目標(biāo)Pv后,用向量P0保存當(dāng)前Pv的位置pv,即P0=pv
Step 2:當(dāng)交互完成后,用戶切換Pv時(shí)用Wh保存此時(shí)刻Hp與Hv的位置偏移量,Wh=hp-hv
Step 3:用向量HpC保存用戶切換Pv時(shí)刻Hp的位置,HpC=hp
Step 4:用向量P1保存新的PvN位置pvN,P1=pvN
Step 5:計(jì)算P0和P1的距離d,d=|P0-P1|,如果距離d小于D(本實(shí)驗(yàn)中D的值為5cm),則判斷為相鄰物體,進(jìn)入(Step 6),否則進(jìn)入(Step 7)
Step 6:計(jì)算偏移量W=Wh+(hp-HpC),作為Hv的位置增量,hv=hv+W
Step 7:計(jì)算實(shí)時(shí)偏移量W=αT+(1-α)Wt,作為Hv的位置增量,hv=hv+W
Step 8:重復(fù)上述Step 1~Step 7
實(shí)驗(yàn)環(huán)境為Window10x64,Unity3D引擎2018.2.0(64bit),硬件平臺(tái)為Intel(R) Core(TM) i7-7770,內(nèi)存16GB,NVIDIA GeFoce1070 GTX顯卡. 采用的頭戴式虛擬現(xiàn)實(shí)設(shè)備(HMD)是應(yīng)用最為廣泛的HTC Vive,采用LeapMotion作為跟蹤手和平面輔助物的深度相機(jī). 平面輔助物的尺寸為15 cm×20 cm,對(duì)應(yīng)的虛擬平面的尺寸為18 cm×30 cm.
為了符合人們使用智能平板的習(xí)慣,本文設(shè)計(jì)了一個(gè)三維場(chǎng)景及交互界面,可以實(shí)現(xiàn)導(dǎo)航、選擇、操縱和系統(tǒng)控制功能,如圖10所示. 可以看到在平板上的交互對(duì)象皆為相鄰對(duì)象,此情況下文獻(xiàn)[12]的觸覺(jué)重定向方法無(wú)法順利完成交互.
圖10 用戶交互界面Fig.10 The user interface of interaction
系統(tǒng)控制功能:用戶可以通過(guò)主界面上的系統(tǒng)控制功能切換交互模式和使用其他系統(tǒng)命令.
導(dǎo)航功能:用戶可以在導(dǎo)航模式下可以使用箭頭按鈕在場(chǎng)景內(nèi)自由移動(dòng).
選擇功能:在選擇模式下,用戶可以使用輪盤(pán)控制虛擬平面上的視角,在右下角滑動(dòng)手指進(jìn)行視角的縮放,尋找到目標(biāo)后點(diǎn)擊目標(biāo)完成選中操作,此時(shí)目標(biāo)處于高亮狀態(tài),如圖10(c)所示.
操縱功能:用戶選中目標(biāo)后進(jìn)入操縱模式. 用戶可以使用輪盤(pán)移動(dòng)目標(biāo),使用右下角按鈕繞任意軸上旋轉(zhuǎn)目標(biāo),在一定范圍內(nèi)對(duì)目標(biāo)的位置和角度進(jìn)行精確調(diào)整.
為了測(cè)試本文交互系統(tǒng)的具體交互表現(xiàn),本實(shí)驗(yàn)邀請(qǐng)了20名年齡分布在20~25歲的志愿者來(lái)進(jìn)行交互系統(tǒng)的任務(wù)測(cè)試,并在測(cè)試后給予一定酬勞. 他們中既有不熟悉VR交互環(huán)境的一般參與者,也有了解VR交互的研究人員,但毫無(wú)疑問(wèn)他們都非常熟悉智能平板設(shè)備的交互方式. 測(cè)試過(guò)程分為以下3個(gè)階段:①介紹交互系統(tǒng)的基本使用方法;②介紹具體測(cè)試任務(wù);③開(kāi)始任務(wù)測(cè)試.
為了測(cè)試本文交互系統(tǒng)在中遠(yuǎn)距離大場(chǎng)景中的綜合交互能力,參與者需在如圖11所示40 m×40 m大小的虛擬場(chǎng)景中依次完成導(dǎo)航(Navigation,Nav)、選擇(Selection,Sel)和操縱(Manipulation,Ma)功能的測(cè)試,測(cè)試期間交互模式的切換由系統(tǒng)控制功能提供. 參與者需要從圖11中所示的初始位置Pos0依次移動(dòng)到指定位置Pos1和Pos2. 如圖12所示,Pos2附近預(yù)先放置了3個(gè)大小和形狀均不同的目標(biāo)物體T1,T2,T3,參與者需要依次選中3個(gè)目標(biāo),之后需要分別將目標(biāo)移動(dòng)到指定位置PosM1,PosM2,PosM3并繞Y軸旋轉(zhuǎn)180°. 若導(dǎo)航時(shí)偏移指定點(diǎn)2 m以上,或選擇時(shí)連續(xù)兩次未選中,或操縱時(shí)未移動(dòng)到指定位置,或旋轉(zhuǎn)角度誤差達(dá)到20°以上均定義為交互失敗. 實(shí)驗(yàn)記錄下每位參與者分別在導(dǎo)航、選擇和操縱過(guò)程中完成任務(wù)的時(shí)間和失敗次數(shù). 本實(shí)驗(yàn)中,Pos0~Pos1的距離S1為21.7 m,Pos1~Pos2的距離S2為9.7 m,T1~PosM1的距離d1為9.06 m,T2~PosM2的距離d2為8.34 m,T3~PosM1的距離d3為2.17 m,導(dǎo)航模式下導(dǎo)航速度為0.1 m/frame.
圖11 實(shí)驗(yàn)主場(chǎng)景Fig.11 The main scene for tests
圖12 交互目標(biāo)Fig.12 The interaction objects
本文的交互系統(tǒng)在平面輔助物為交互提供實(shí)時(shí)觸覺(jué)反饋的情況下,用戶與虛擬平面的交互方式可以完全與智能平板的操作方式相一致,符合智能平板的交互習(xí)慣. 為了驗(yàn)證本文交互系統(tǒng)(planar-aid interaction,PAI)與智能平板交互(tablet interaction,TI)的一致性,本實(shí)驗(yàn)采用了真實(shí)智能平板做了對(duì)比實(shí)驗(yàn). 本文將實(shí)驗(yàn)場(chǎng)景完整地移植到智能平板設(shè)備(型號(hào):華為榮耀Play,Android8.0),并為其設(shè)計(jì)了相同的交互系統(tǒng). 本實(shí)驗(yàn)先讓20名參與者使用本文交互系統(tǒng)在HMD環(huán)境下完成任務(wù)測(cè)試并記錄相關(guān)數(shù)據(jù). 適當(dāng)休息后,讓20名參與者在現(xiàn)實(shí)場(chǎng)景中直接使用智能平板完成相同的測(cè)試任務(wù)并記錄相關(guān)數(shù)據(jù),結(jié)果如圖13所示.
圖13 實(shí)驗(yàn)結(jié)果統(tǒng)計(jì)與分析Fig.13 Statistics and analysis of tests
從交互的成功率上看,PAI和TI的交互成功率都很高. PAI和TI的交互失敗次數(shù)相仿且主要集中在操作步驟繁瑣的選擇和操縱過(guò)程. 因?yàn)镻AI和TI具有相同交互范式,所以失敗情況有相似的分布.
從完成任務(wù)所需時(shí)間上來(lái)看,PAI和TI在完成導(dǎo)航、選擇和操縱的平均時(shí)間均十分接近. 且PAI交互系統(tǒng)中選擇和操縱的交互時(shí)間均呈現(xiàn)遞減的規(guī)律,前者是因?yàn)槌跏家暯俏挥赑os2處,交互剛開(kāi)始要花費(fèi)更多的時(shí)間調(diào)整視角;后者是因?yàn)槟繕?biāo)在到達(dá)指定位置的距離上d1>d2>d3造成的,而這一點(diǎn)在TI交互系統(tǒng)中也得到了相同的體現(xiàn).
由此可見(jiàn),本文的觸覺(jué)重定向方法對(duì)相鄰物體的連續(xù)交互有很好的支持,使得本文交互系統(tǒng)更加接近智能平板的交互效率. 因此本文交互系統(tǒng)和智能平板在完成交互任務(wù)的表現(xiàn)上具有一致性.
為了測(cè)試本文交互系統(tǒng)在中遠(yuǎn)距離大場(chǎng)景下的具體交互表現(xiàn),本文也與另外兩種交互系統(tǒng)作了對(duì)比實(shí)驗(yàn),分別是虛擬現(xiàn)實(shí)應(yīng)用市場(chǎng)上使用最為廣泛的Htc vive手柄交互系統(tǒng)(ray-casting interaction,RI),以及控制桿+凝視的交互系統(tǒng)(gaze interaction,GI).
在RI交互系統(tǒng)中,以點(diǎn)到點(diǎn)的跳躍形式進(jìn)行導(dǎo)航,通過(guò)射線進(jìn)行目標(biāo)選擇,通過(guò)近距離接觸式抓取進(jìn)行操縱,由手柄上的按鈕執(zhí)行系統(tǒng)控制. GI交互系統(tǒng)中,由控制桿進(jìn)行導(dǎo)航和操縱,凝視時(shí)間達(dá)到閾值后完成選擇操作,通過(guò)控制桿上的按鈕執(zhí)行系統(tǒng)控制. 本實(shí)驗(yàn)中,控制桿的導(dǎo)航速度和本文交互系統(tǒng)保持一致,為0.1 m/frame,而凝視時(shí)間閾值設(shè)置為2 s.
本實(shí)驗(yàn)讓20名參與者分別使用以上兩種交互系統(tǒng)完成測(cè)試任務(wù)并記錄相關(guān)數(shù)據(jù). 為了防止疲勞累積,參與者使用一種交互系統(tǒng)完成任務(wù)后便休息5 min. 本文統(tǒng)計(jì)了PAI、GI和RI 3種交互系統(tǒng)完成任務(wù)花費(fèi)的時(shí)間和失敗情況,統(tǒng)計(jì)結(jié)果如圖14和表2所示.
圖14 平均交互時(shí)間對(duì)比Fig.14 Comparison of average interaction time
表2 交互失敗次數(shù)統(tǒng)計(jì)Tab. 2 Statistics of interaction failures
由圖15可知,在導(dǎo)航時(shí)間上PAI、GI和RI的表現(xiàn)沒(méi)有較大的差異,平均導(dǎo)航時(shí)間均在9 s左右. 在選擇任務(wù)上,本文發(fā)現(xiàn)GI和RI花費(fèi)的時(shí)間呈上升趨勢(shì),而且在T1和T2上的選擇時(shí)間上小于PAI,卻在T3的選擇時(shí)間上大于PAI. 本實(shí)驗(yàn)中,因?yàn)門(mén)1、T2和T3的尺寸遞減,根據(jù)費(fèi)茨定律(Fitts′law)[16],交互的時(shí)間與目標(biāo)的截面大小有關(guān),面積越大花費(fèi)的時(shí)間越少,因此GI和RI容易受目標(biāo)尺寸影響,且以RI交互系統(tǒng)受到的影響最為明顯. 而對(duì)于PAI,選擇時(shí)間雖然也一定程度受到目標(biāo)尺寸的影響,但并沒(méi)有GI和RI明顯. 因此,在中遠(yuǎn)距離場(chǎng)景中,GI和RI在大尺寸目標(biāo)的選擇表現(xiàn)上占優(yōu),而在小尺寸目標(biāo)的選擇上PAI的表現(xiàn)要更加優(yōu)秀.
在操縱方面,本文發(fā)現(xiàn)PAI操縱目標(biāo)花費(fèi)的時(shí)間遠(yuǎn)小于GI. 通過(guò)平面輔助物引入智能平板的交互范式,PAI可以方便快速地移動(dòng)和旋轉(zhuǎn)物體,在短時(shí)間內(nèi)完成操縱任務(wù). GI由于操作復(fù)雜、繁瑣所以需要更長(zhǎng)的時(shí)間. 而RI則由于無(wú)法精確移動(dòng)和操縱物體,因此無(wú)法完成本實(shí)驗(yàn)中的操縱任務(wù).
受目標(biāo)尺寸影響的不僅僅是交互時(shí)間,還有交互的成功率. 如圖15所示,本文統(tǒng)計(jì)了交互失敗的次數(shù),其中RI和GI的失敗次數(shù)要明顯高于PAI. 而且,由表2可知交互失敗次數(shù)主要集中在GI和RI對(duì)T3的選擇上. 一方面由于T3截面太小,導(dǎo)致GI和RI很難選中;一方面是因?yàn)門(mén)1和T3之間存在遮擋. GI和RI無(wú)法很好地處理遮擋問(wèn)題,直接降低了兩者對(duì)T3的選擇成功率. 而對(duì)于PAI來(lái)說(shuō),由于可以視角可以穿過(guò)遮擋物體,選擇的成功率未受遮擋問(wèn)題影響.
圖15 交互失敗次數(shù)及分布Fig.15 Statistics of interaction failures and distribution
從交互表現(xiàn)而言,本文交互系統(tǒng)通過(guò)平面輔助物引入智能平板的交互范式,在中遠(yuǎn)距離VR大場(chǎng)景下可以更好地滿足用戶的交互需求,提供高效地導(dǎo)航、選擇、操縱和系統(tǒng)控制.
從交互體驗(yàn)而言,對(duì)于未引入平面輔助物的GI和RI,因?yàn)闊o(wú)法為交互提供觸覺(jué)反饋,因此交互的沉浸感并不高. 而引入了平面輔助物的PAI交互方式,不僅提升了交互能力,且得益于實(shí)時(shí)的觸覺(jué)反饋,交互的沉浸感得到很大提升.
本調(diào)查問(wèn)卷旨在了解參與者對(duì)以上3種交互方式的感受和體驗(yàn),問(wèn)卷主要包含以下陳述.
S1:使用本交互方式完成任務(wù)的過(guò)程中我感到頭暈,惡心;
S2:使用本交互方式讓我體驗(yàn)到高度的沉浸感;
S3:使用本交互方式可以滿足我的交互需求;
S4:使用本交互方式讓我感到很疲勞.
對(duì)于以上陳述,參與者從1~5五個(gè)分段中給出自己的評(píng)分,1分代表完全不同意,5分代表完全同意,各交互方式的平均得分結(jié)果如圖16所示.
圖16 調(diào)查問(wèn)卷結(jié)果Fig.16 Results of the questionnaire
由圖16統(tǒng)計(jì)結(jié)果可以發(fā)現(xiàn)在眩暈感和疲勞感方面,參與者普遍認(rèn)為GI帶來(lái)了嚴(yán)重的眩暈感和不適感. 因?yàn)樾枰l繁控制視角來(lái)切換交互目標(biāo)和維持視點(diǎn)不動(dòng)來(lái)完成交互,GI不僅讓參與者感到暈眩,也會(huì)帶來(lái)更多疲勞. RI則因?yàn)樵谥薪嚯x交互方便快捷,參與者無(wú)明顯異樣感受. 而PAI則因?yàn)榻换ゲ僮骺梢栽谔摂M平面上輕松完成,符合人們使用智能平板的習(xí)慣,無(wú)明顯眩暈感和疲勞感.
在交互能力方面,PAI和GI均可以滿足用戶的交互任務(wù). 但可以發(fā)現(xiàn)參與者普遍認(rèn)為RI的綜合交互能力較弱. 雖然RI在中近距離交互方便快捷,但是RI無(wú)法操縱物體以及在遠(yuǎn)距離目標(biāo)選擇上存在一定困難. 在沉浸感方面,參與者普遍認(rèn)為GI和RI交互體驗(yàn)的沉浸感較低. 因?yàn)镚I和RI交互沒(méi)有觸覺(jué)反饋,因此交互感受不夠真實(shí)、自然. 而PAI由于為交互提供了真實(shí)的觸覺(jué)反饋,具有很強(qiáng)的沉浸感和較好的交互體驗(yàn).
目前,利用平面輔助物將智能平板的交互范式引入到虛擬場(chǎng)景并利用觸覺(jué)重定向技術(shù)提供觸覺(jué)反饋的VR交互方案是十分新穎的. 本文的交互系統(tǒng)保證了較高的交互效率,并提高了用戶的沉浸感和交互體驗(yàn),很好地解決了VR大場(chǎng)景下中遠(yuǎn)距離的綜合交互問(wèn)題. 本文對(duì)觸覺(jué)重定向的相關(guān)算法進(jìn)行了改進(jìn),解決了切換重定向目標(biāo)時(shí)虛擬手的抖動(dòng)問(wèn)題;并且本文針對(duì)觸覺(jué)重定向存在的缺陷提出了相鄰目標(biāo)連續(xù)交互方法,提高了交互的靈活性和交互效率.
本文方法在VR大場(chǎng)景下中遠(yuǎn)距離交互上有著很好的表現(xiàn),且交互效率和交互體驗(yàn)不會(huì)受遮擋問(wèn)題影響,但重定向目標(biāo)的選擇方法不夠自然. 未來(lái),希望能夠通過(guò)檢測(cè)用戶手部的運(yùn)動(dòng)軌跡準(zhǔn)確預(yù)測(cè)用戶的交互意圖,進(jìn)一步提升用戶的交互體驗(yàn).