APP下载

头戴式VR环境中基于平板设备的交互方案

2020-08-05火净泽吴小威杜劭勋

关键词:平板物体精度

李 琳, 火净泽, 吴小威, 杜劭勋

(1.合肥工业大学 计算机与信息学院,安徽 合肥 230601; 2.工业安全与应急技术安徽省重点实验室,安徽 合肥 230601)

虚拟现实(virtual reality,VR)环境的硬件选择与系统设计一直是人们关注的焦点。目前,VR显示设备种类主要有头盔显示器(head-mounted display,HMD)、3D立体眼镜及CAVE(Cave Automatic Virtual Environment)沉浸式系统等[1]。由于VR环境中交互的场景是一个类似于真实环境的三维空间,使用传统的鼠标、键盘等指点设备难以契合空间需求,因此自然的交互方式成为人们对VR应用的主要研究热点。

早期的VR交互设计思路主要分为虚拟手掌(virtual hand)[2]与虚拟指向(virtual pointing)[3]2类。虚拟手掌是通过穿戴一个具有传感器的手套实现VR中对手掌的实时同步;虚拟指向利用手持式设备,通过发出射线指向物体进行交互。早期,由于虚拟手掌能够准确地反映现实中手部的动作,交互既精确又自然,因而更受欢迎;随着技术的发展,由于VR环境范围的限制使得其无法与远处的物体进行交互,其交互的速度也相对较慢。根据文献[4]的研究,直接交互往往比用手远距离地与物体交互有着更好的表现,因此,虚拟指向技术逐渐成为VR交互技术的研究主流之一。虚拟指向技术的典型代表是光线投射(ray-casting)[5],该技术解决了交互速度慢的问题,且能够与范围外的物体进行交互,但仍然存在一些缺陷。比如,当VR场景中物体较为密集时,其并不能精准地选中目标;当物体距离选择位置较远时,人手的抖动会导致选择精度降低;根据费茨定律(Fitts’ Law)[6]可知,当物体截面很小时交互时间会变长,远处的物体很难被选中。因此,光线投射方法只适用于一些特定的VR环境。

在HMD的VR环境下,文献[7]提出了基于圆锥的投射技术,利用迭代细化(iterative refinement)方式进行场景物体选择,该方案有效提高了距离外物体的选择精度,然而用户为了选择一个距离外的物体不得不进行多次位置跳转,这样的交互方式并不友好;文献[8]通过采用手柄代替虚拟手掌的方式进行物体的交互;文献[9]基于Google公司的Cardboard,通过使用一种可穿戴设备来识别用户的手部移动和手势,从而与物体进行交互;文献[10]提出了一种新的解决方案,该方案将智能手表模拟为虚拟手柄,通过对手表的操作使虚拟手柄发出射线,进而与物体进行交互;文献[11]对漫游交互中耦合(coupled)、解耦(decoupled)及死区(dead zone)3种不同方案进行比较,并对VR环境下的游戏控制方案进行了评估。

在CAVE沉浸式系统等非HMD的VR环境下,文献[12]在平板研究的基础上进行扩展,通过给平板加上传感器来追踪平板的位置,利用平板作为第二视角与CAVE场景中的物体进行交互,具体交互方式为:在平板前方绑定一个虚拟摄像机,反映平板朝向的空间视图;现实中平板上负责显示虚拟相机捕捉到的内容,平板同时拥有多个操作按钮并且支持手势,从而使交互变得非常容易。该交互方式的速度与精度都很高,然而,这种直接操控现实中平板的方式不能在HMD VR环境下使用,原因是该环境下用户并不能直接看到现实中平板上的内容。

本文提出一种新的交互方案,将平板设备绑定在HMD环境下的定位手柄上,通过现实场景中的平面触摸交互,实现对虚拟场景中平板的同步操控,进而与VR场景中的物体交互,在确保交互速度、精度及范围都处于较高平衡的前提下,提高交互的灵活性,增强用户的交互体验。

1 系统设计

1.1 环境搭建

为了让设计方案能够准确、正常地工作,本文选择的VR设备为应用最广泛的HTC Vive。HTC Vive定位器能够实时地定位手柄的位置与旋转角度,笔者将平板设备固定在手柄上方,以达到实时捕捉平板位置和角度的目的。VR测试场景采用Unity3D结合SteamVR Plugin插件进行开发。通信软件同时运行在平板端和PC端,负责平板端和PC端的数据通信;同时在VR环境中添加1个虚拟平板(virtual tablet),通过位置更新与同步绘制使其与现实中的平板完全一致,增强用户视觉与触觉的同步感,从而实现操控现实中的平板与VR环境中的物体交互的功能。基于平板设备的HMD系统环境示意图如图1所示。

图1 基于平板设备的HMD系统的环境示意图

1.2 功能组织

本文交互方案软件的核心功能由APP端和PC端组成,如图2所示。

图2 APP端和PC端系统的功能模块说明

APP端功能包括手势识别、复位功能及通信模块。

(1) 手势识别。用户可以在平板屏幕上单指滑动来控制视角的移动;通过双指在不同方向上滑动来控制视角的缩放,改变与待交互物体的距离;通过点击操作来选择待交互的物体。

(2) 复位功能。为了加快选择物体的速度和提高用户使用体验,用户可以在选择完毕后通过单击平板上的按钮来启用此功能使视角快速返回到原点附近以便于快速选择下一个待交互物体。

(3) 通信模块。该模块包含数据传递与事件传递,数据传递指在APP端的手势识别数据和返回功能的监测数据会以预定的格式发送到PC端,事件传递指APP端的物体交互等事件以预定的格式发送到PC端。

PC端功能包括虚拟平板、通信模块和计时模块:① 虚拟平板模块是通过纹理渲染(render texture)技术生成虚拟平板,用户对现实平板的操作都会实时同步到虚拟平板上,给用户一种在虚拟场景中操作平板的真实感、沉浸感;② 通信模块包含数据处理与事件响应功能,数据处理是将APP端的数据经处理传到PC端,事件响应负责同步响应APP端的事件;③ 计时模块用于测试时的计时操作。

2 同步机制

2.1 虚实配准

由于在HTC Vive设备中拥有可自由定位的Vive手柄,本文在Vive手柄上绑定平板设备,并将原本在VR场景里显示的Vive手柄模型替换为平板模型,实现平板在VR场景中的实时追踪。相关效果如图3所示,相关描述公式为:

图3 虚实配准效果

PosT(X,Y,Z)=PosH(X,Y,Z)

(1)

RotT(X,Y,Z)=RotH(X+30,Y,Z)

(2)

其中,PosT(X,Y,Z)、PosH(X,Y,Z)分别为虚拟平板和右手柄在Unity3D中的位置坐标;RotT(X,Y,Z)、RotH(X,Y,Z)分别为虚拟平板和右手柄在Unity3D中的方向。

PosH(X,Y,Z)与RotH(X,Y,Z)的每个参数初值均为0。

2.2 画面同步

在真实平板与虚拟平板同步的基础上,还需要在虚拟的平板模型上面实时地显示出相关的场景画面。本文使用一个选择相机(select camera,SC)来实现现实与虚拟平板的画面同步。SC不同于给用户提供视野的主相机(main camera,MC),其拍摄到的画面只会通过纹理渲染技术将该画面渲染到平板模型的屏幕上。SC与MC是互相独立的,对SC的操控并不会影响MC。SC的朝向设置为虚拟平板的正前方朝向,显示的内容即为SC的视角内容。由于SC与虚拟平板相绑定,当虚拟平板改变位置时,SC反映的内容也会随之变化,类似平板背后存在一个摄像头,跟着平板的位置变化。相关描述公式为:

PosSC(X,Y,Z)=PosT(X,Y,Z)

(3)

RotSC(X,Y,Z)=RotT(X+60,Y+180,Z)

(4)

其中,PosSC(X,Y,Z)为SC在Unity3D中的位置坐标;RotSC(X,Y,Z)为SC在Unity3D中的方向。

2.3 操作同步

现实中对平板设备的操作需要实时同步通信至VR场景所处的PC端,本文采用局域网内的TCP/IP通信,PC端作为服务端,负责处理接收到的操作数据,并对VR场景中的SC进行相应操作,以达到操作同步。通信双方分别为安装在平板设备上的客户端和附加在VR场景中的服务端。客户端负责实时监测用户对平板的操作,并将相应操作信息发送给服务端;服务端负责接收数据,对数据进行处理分析,并根据操作类型作出相应的操作。通信的内容为操作类型与相关参数,具体格式要求如下:

通信内容=操作类型+分隔符+附加参数1+

分隔符+附加参数2+…+分隔符。

其中,操作类型、含义及其附加参数见表1所列。

表1 操作类型详细参数

3 交互设计

3.1 用户与现实中平板的交互

用户与平板的交互体现在对平板的手势操作上,手势所对应的操作种类主要分为手指定位、滑动、点击、缩放及复位5类,如图4所示。

图4 手势操作

手指定位操作,指用户通过使用单手指在屏幕上滑动让虚拟平板定位手指的位置,通过在虚拟平板上手指接触的位置处添加色块,并在一定的时间后渐变消失,来实时标记用户手指接触的位置;点击操作,类似鼠标单击的操作,手在单击屏幕上的一个点以后,系统会进行物体选中的判定,并将判定的结果通信传输至PC端;缩放操作,即调整屏幕上显示的视图范围,此功能在虚拟环境中体现为SC向前方/向后方移动,“放大”为相机向前方移动,“缩小”为相机向后方移动;滑动操作,为平面操作,其改变SC在其视图方向垂直面上的位置;复位操作,为恢复SC的位置,实现多次交互的可能。

3.2 用户与VR场景中物体的交互

本文通过将整个VR场景中的操作模式划分为SC控制模式和观看模式来区分选择物体前、后的交互环境。其中SC控制模式是在选择物体之前,用户通过操作现实中的平板来操控VR场景中的SC,并通过SC与场景中的物体进行交互,在该模式下用户可以改变视角的方向,但其位置并不会被改变。观看模式是在物体选择以后,用户通过平板上方观察选中的物体,并可以点击返回按钮来返回SC控制模式。

在SC控制模式中,当用户对平板进行单击操作时,会在渲染的近截面上与单击的坐标相同位置处,垂直于近截面向视角方向发射一条长度变化的射线,用来模拟单击的选择效果,如图5所示。接着系统会判断射线所碰撞到的第1个物体,并将其作为选中的物体保存。平板上的客户端会根据单击的结果将选中目标信息通过网络传输给服务端,服务端接收目标信息后与之交互。

图5 单击选择物体

4 实验设计与结果

本文实验召集了10名用户进行交互方案的学习与测试,用户中既有不熟悉VR交互环境的一般用户,也有拥有丰富VR交互经验的开发者。所有用户的身高相似,年龄在20~25岁之间,每日使用电子产品的时间分布为:小于1 h、1~4 h、大于4 h。

学习与测试过程分为以下4个阶段:① 介绍整个研究与应用以及设备操作的相关说明;② 设备操作培训;③ 开始测试任务;④ 测试后满意度调查。

实验设计的交互内容为在VR环境中摆放与相机距离分别为0、8、18、28、40 m的球体、立方体及圆柱体,其中圆柱体横截面积最大,立方体次之,球体最小。由于物体间存在遮挡现象,因此实验中对远距离物体选择的精度会受到影响。横截面积最大的圆柱体受遮挡影响最明显,立方体次之,球体最小。对每个物体,用户均做选择操作3次,这样就能够得到不同形状(横截面积)的物体在相同距离下交互效率与精度的差异,以及相同形状的物体在不同距离下交互效率与精度的差异。近年来人机交互领域的常用交互方案见表2所列。表2中,CI表示接触式交互(contact interaction);RI表示光线投射交互(raycast interaction);NI表示导航式交互(navigation interaction)。

表2 近年来常用的交互方案

本文同时在相同的环境下分别采用平板式交互(tablet interaction,TI)、CI、RI及迭代细化的光线投射交互(iterative refinement raycast interaction,IRRI)进行测试,测试内容与物体交互顺序均相同,各方案的程序界面截图如图6所示。

图6 4种交互方案程序界面

4.1 交互范围分析

4种方案的交互范围是影响交互数据测试结果的一个因素。TI方案和IRRI方案交互范围为全部VR场景物体,RI方案能够选择到远截面形成的球体内所有不被遮挡的物体,CI方案能够选择到HMD VR划定范围内的所有物体。

由于圆柱体的高度与用户的最高身高一致,第1个圆柱后的其余圆柱均被遮挡,RI方案无法实现测试。由于距离为8 m的物体超出了CI方案的移动范围,CI方案仅能选择到距离为0 m的3种物体。

4.2 交互效率分析

本文通过记录用户多次选择到规定物体所花费的平均时间来反映交互效率。由PC端设置的计时模块记录用户从开始交互到作出交互操作的时间。

4种方案下用户选择球体、立方体及圆柱体时与物体距离、花费时间的关系如图7所示。图7中,横轴的距离类别D1~D5表示与相机距离分别为0、8、18、28、40 m。

图7 4种方案交互效率对比

从图7可以看出,4种方案的特征大致相同,距离物体越远,与物体交互所花费的时间越久。其中,球体花费的时间最长,立方体次之,圆柱最短。根据费茨定律,物体交互时间与其截面大小有关,面积越大花费时间越短,理论上花费时间从长到短的顺序应该为球体、立方体、圆柱体,实验结果与之相符。

由图7可知,距物体的距离对4种方案的影响是不同的。TI方案和IRRI方案的交互时间并不会随距离的增加而受到显著影响;而RI方案则会使交互时间大大增加,在远距离时其受到手部抖动的影响更大,更难选中,同时也会花费更多的时间;CI方案由于仅仅能够与划定范围内的物体交互,因此其交互时间与距离的关系并不能得到体现。

经对比发现,CI方案是所有方案中最快的,但同时又是交互范围最小的,因此其仅适用于交互范围很小的环境;本文使用的TI方案平均用时最短,交互范围也达到最大,交互效率最高;IRRI方案平均用时比TI方案多0.9 s左右,交互效率也很高,并且交互范围最大;IRRI方案与TI方案均能适应复杂的交互环境。

4.3 交互精度分析

本文通过记录用户选择物体时的命中率均值反映交互精度,并结合环境得出其适用性。4种方案交互精度对比如图8所示。

图8中,横轴的距离类别D1~D5含义与图7一致。

图8 4种方案交互精度对比

由图8可知,对于TI方案与IRRI方案,距离物体的远近并不会影响物体的命中率,因此这2种方案的命中率也始终保持在一个较高的均值附近,适用性较好;RI方案的命中率会随距离的增加显著下降,实验证明,由于远处的球体被前面的球体遮挡了一部分,距离为40 m处的球体已不可能被射线精准命中,这反映了该方案对于小物体/远距离物体选择的缺陷,适用性一般;对于CI方案,其命中率始终为100%,然而其仅适用于距离为0 m的物体,因此适用性不高。

由实验结果可知,TI方案的命中率为100%,适用性较好;IRRI方案命中率接近100%,适用性也较好。

4.4 用户满意度调查

4种方案用户满意度调查结果如图9所示。在满意度调查中,满意度共划分为非常满意、满意、一般、不满意及非常不满意5个层次。从图9可以看出,本文TI方案具有较高的用户友好度。对于IRRI方案,虽然其效率与精度比较好,但是大部分用户表示这种不断改变用户位置的方案严重破坏了他们的沉浸感,部分用户反映位置的突然改变会使自己迷失方向。

图9 4种方案用户满意度调查结果

5 结 论

平板设备在HMD VR领域的使用是一个非常有前景的方案。本文提出的通过平板设备与HMD VR环境中物体进行交互的手段,将三维空间的交互转化为二维平面的交互,从而解决了用户在三维空间中交互时的不适应问题;同时采取同步触摸的位置保证了现实中触觉与虚拟中视觉的一致性,在不破坏用户沉浸感的前提下实现精准交互。实验结果表明,本文方案拥有高的交互效率、精度及范围,适用性较好,且用户友好度很高。随着平板设备的普及,该方案的普及度以及可行性都会得到提高,因此,该方案很适合作为HMD VR环境下的一种人-机交互方案。

后续研究将对该方案进行改进,使其实现更多交互功能,并优化用户的使用体验;在更复杂的场景中,支持对小型物体群与快速移动物体的交互是未来工作的重点。

猜你喜欢

平板物体精度
热连轧机组粗轧机精度控制
属于你的平板电脑
深刻理解物体的平衡
出彩的立体声及丰富的画面层次 华为|平板M6
基于DSPIC33F微处理器的采集精度的提高
10%平板电脑市场销量下滑
以工匠精神凸显“中国精度”
揭开物体沉浮的秘密
为什么同一物体在世界各地重量不一样?
The Apple of Temptation