资源预览内容
第1页 / 共7页
第2页 / 共7页
第3页 / 共7页
第4页 / 共7页
第5页 / 共7页
第6页 / 共7页
第7页 / 共7页
亲,该文档总共7页全部预览完了,如果喜欢就下载吧!
资源描述
216基于数据手套的虚拟手交互平台的设计与实现李懿, 陈卫东*, 罗刚, 鲁东明 浙江大学计算机科学与技术学院,浙江省杭州市,310027 摘 要: 交互性是虚拟现实环境的一大关键特性。目前的数据手套提供了一种有效的人机交互手段,因此,从这种设备出发,本文研究和探讨了基于数据手套的虚拟手交互平台的设计和实现。利用一些硬件设备以及相应的软件开发环境,建立了基于数据手套的虚拟手交互平台,实现了人手到虚拟手的动作映射和虚拟手对虚拟物体的抓取操作,并且实现了在文化遗址虚拟展示平台中的应用。文章包括三个主要部分。第一部分是关于虚拟交互场景中虚拟手的建模以及场景管理。第二部分介绍了改进的抓取规则以利于用户和环境进行交互操作。第三部分展示了一些利用虚拟手在平台中操纵虚拟物体进行活动的结果。 关键词: 数据手套;虚拟手;人机交互 1前言 数据手套作为一种新型的人机交互工具, 目前在越来越多的虚拟现实环境中的得到 了广泛应用。其目的在于能够通过内置的传感器,实时获取手部包括手掌、手指以及手 腕等处的各有效部位的弯曲、外展等角度的数据,以及在此基础上的对于手势的反演。 而人手部软组织的存在, 决定了人手无法和应用于机械手上的普通的刚性杆铰链无法相 比。手部某一个关节的运动,不仅会作用于对应的传感器的示数,而且通过软组织的相 互作用,使得其他的传感器示数也发生变化。这就要求为保证一定的精度,必须对求得 的逆映射进行解耦计算。而由于目前的数据手套技术尚处于发展的初级阶段,应用还没 有完全成熟,使得在对目标的计算过程中,对于响应的标定和解耦计算十分复杂,进行 实时处理时困难较大。 我们的工作目的在于,作为文化遗址虚拟展示平台的一部分,为虚拟展示平台提供 用户和平台之间的互动, 提供给用户一系列的交互手段以实现和场景中的物体对象之间 的交互,并以此为基础,以数据手套作为交互工具,以虚拟手和场景中的虚拟物体作为 研究对象,研究在虚拟现实环境下以数据手套为代表的新一代人机交互工具的应用和发 展,使得计算机能够适应于更为复杂的工作环境,提供自然、高效、具有真实沉浸感的 人机交互手段。 * 本项目受国家重点基础研究 973 项目 2002CB312106 资助 * 联系作者:李懿 Email: liyi9810857gmail.com 陈卫东 Email:chenwdzju.edu.cn 2172虚拟手建模 作为虚拟手交互平台中的一个重要构成, 虚拟手在用户和系统平台之间扮演了很好 的中间角色。用户的手势通过数据手套传感器的作用,经过一系列的分析和计算之后, 转换成为虚拟手中对应的手势数据, 并且通过虚拟手的活动展 现开来。 这种手势的输入就要求既能够有效地跟踪用户手的运 动, 又要方便用户手的运动; 既能够准确判定手的位置、 方向、 手指的弯曲角度等,又不能对手的运动产生限制。因此,数据 手套从某种意义上来说,能够满足这种要求,为虚拟手的运动 提供了很好的数据来源和驱动支持。 根据人手的骨骼解剖结构和运动特点1,同时结合数据 手套2的特点以及具有的某些局限,为能够比较简单并且有 效地控制虚拟手的运动, 我们设计了适合于我们的平台的虚拟 手模型。一个虚拟手由手掌、食指、中指、无名指和小指的各 三节指节以及拇指的两个指节及其对应的掌骨共 16 块组成部 分,并且每一块均简化成了刚体。同时,为了避免虚拟手的关节运动时因为指关节的弯 曲而造成脱节的现象,在每一个指关节处均添加了一个小圆球,保证手指各关节运动的 圆滑以及手指模型的完整,如图 1 所示。 对于虚拟手的模型构建,采用 了面向对象的方法,并且根据从数 据手套获得的关于手指各个关节 骨骼的运动状态实时更新各组成 部分的相对位置和方位。由于虚拟 手的各组成部分是相互关联的,关 节之间的弯曲和展合等运动会对 彼此产生一定的影响和牵连,而且 各手指的各个指节之间包括从手 指的根部到手指尖的运动也存在 着继承关系,因此对于虚拟手的建模采用了树形结构。虚拟手的各个组成部分可以被视 为不同的对象,并对其所具有的属性和操作进行封装。对象的属性包括几何参数、外观 参数及其父子对象等,对应的操作包括对几何和外观参数的读取、修改以及对其父子对 象的查询、增删等操作。在这个虚拟手模型中,手掌和各手指的根部指节为第一级子对 象,各手指的中部指节为对应的根部指节的子对象,尖部指节为对应的中部指节的子对 象。 这种树状模型结构的优点在于,在虚拟手操作虚拟物体的过程中,能够方便地实现 抓取、移动、释放等活动。如在进行抓取的检测过程中,如果满足虚拟手的抓取条件, 就可以将该物体作为虚拟手的第一级子对象加入到虚拟手的模型树中, 将虚拟物体的坐图 1. 虚拟手模型表示 图 2. 虚拟手的场景图表示 218标系和虚拟手的坐标系相绑定,实现虚拟物体和虚拟手的同一运动。而当抓取条件不再 满足时, 可以解除虚拟物体坐标系和虚拟手坐标系之间的绑定关系, 释放虚拟物体对象, 这样,就能够很方便地实现虚拟手对各种虚拟物体对象的操作。 在虚拟手平台中,虚拟手的数据结构表示是以树状场景图的形式出现的。以手掌根 部作为场景图的根结点, 根据手指关节的构成以及在模型中所表示的相对位置关系等逐 一将各个指节添加进场景图中,由此得到的场景图如图 2 所示。 3虚拟手对虚拟物体的操作 3.1 抓取操作规则 交互性操作是虚拟现实的一个最重要特征,能够给用户以“真实”的感受。在虚拟 环境下,交互操作是使用户获取沉浸感的重要手段。在现实生活中,人手对于物体的操 作有多种类型,主要包括了抓取、托举、牵引、推动等类型,而这些操作又与物体的形 状、大小、质量、表面粗糙程度等密切相关。在虚拟现实环境中利用数据手套驱动虚拟 手对虚拟物体对象进行操作的目的也就在于希望能够在这种环境下重现现实生活中人 手对于物体对象的操作方式,从而将生活中的真实场景引入到虚拟环境中来,以给用户 提供更为真实的“虚拟”体验。而由于设备的限制,目前我们还无法针对物体在碰撞受 力后会发生的形变进行计算,只能讨论针对虚拟物体的基本操作,并且认为虚拟手和虚 拟物体均是刚体。 虚拟手抓取操作一般是通过数据手套,把用户手的状态信息输入到计算机,用一个 虚拟手模拟用户的手在虚拟环境中的运动,以及对于虚拟物体对象的操作。为了实现虚 拟手对虚拟物体对象准确的抓取,并使抓取姿态更为真实自然,有必要建立某种抓取规 则。当虚拟手和虚拟物体之间的关系满足了抓取规则,则认为虚拟手抓住了物体;此时 将物体的基坐标系附着在虚拟手模型上,从而使手的运动带动虚拟物体的运动;一旦用 户松开手指,此时虚拟手和虚拟物体之间的关系不再满足抓取规则,从而附着关系被解 除,物体得到释放。 因此,制定合适的抓取规则对于成功实现虚拟手对虚拟物体的操作具有重要的意 义。我们对于虚拟手在在虚拟环境下的抓取规则进行了改进,并且应用此规则实现了虚 拟手对于虚拟物体的抓取、移动和释放等操作。 虚拟手操作过程中的抓取规则既不能过于简单,也不能过于复杂。规则过于简单, 会导致误抓现象,且抓取姿态也不真实自然,与现实差距较大。而过于复杂的规则会导 致计算耗时过大,产生严重的滞后,影响系统的性能,导致抓取困难。正因为如此,我 们对于基于点平面法向量的虚拟手抓取规则3进行了修正,使虚拟手能够准确地抓取 虚拟物体。该规则有两条,满足其中之一者,即可认为虚拟手抓住了物体。 规则 1. 必须有三个或者三个以上的手指(任意指节)与物体相接触,其中有一个 必须为大拇指(因为实际抓取过程中一般都使用大拇指) ;与物体接触的各手指所处平219面(或曲面)的法向量相互之间的夹角至少有一个大于某预定义的角度值(在这里设定 为 90 度) 。 规则 2 必须有两个或两个以上手指(任意指节)与物体相接触,而且手掌与物体相 接触;与物体相接触的各手指所处平面(或曲面)的法向量和手掌所处平面的法向量之间的夹角,至少有一个大于某预定义的角度值(在此该角度设定为 90 度)。 由于这种抓取规则的制定没有考虑实际的物体受力及力矩情况, 只是以手指或者手 掌与物体的接触情况以及在抓取物体时的姿态所近似体现出的对物体作用力的方向作 为判定条件,简化了判断过程,提高了计算判断的效率,同时也具有一定的准确性和真 实感。但由于没有了力的条件,和实际的抓取还是有一定的差距,因此作为对客观世界 中自然现象的模拟,这种抓取规则是稳定抓取的必要条件,而非充分条件。 3.2 抓取操作过程 在制定了抓取规则的基础上,假设虚拟物体 的几何形状和质量大小适合于抓取,则虚拟 环境下实现虚拟手的抓取操作可以分为如下 几步: (1)逐渐靠近虚拟物体:用户首先确定所需 抓取的虚拟物体,然后人手在虚拟环境中移 动,从而控制虚拟手向虚拟物体逐渐靠近。 (2)准备抓取虚拟物体:在虚拟手向虚拟物 体移动并靠近的过程中,调整人手的形状, 控制虚拟手的手掌和各手指的运动,形成一 定的形状准备抓取。 (3)抓取虚拟物体:用户通过调整手掌和各 手指的动作控制虚拟手的姿态,使其环绕虚 拟物体的外表面,并缓慢微调手势直至满足 抓取规则,从而抓取物体。 (4)操纵虚拟物体:一旦虚拟手抓住了虚拟 物体,则将虚拟物体的基坐标系与虚拟手的 坐标系相固化,将虚拟物体作为虚拟手场景 图的根节点的一个子节点加入虚拟手场景中,从而使虚拟手的运动带动虚拟物体的运 动。此时手指和手掌保持不动或仅有微小的动作(不破坏抓取规则) 。 (5)释放虚拟物体:进行实时的碰撞检测,当用户松开手指,抓取规则不再得到满足 时,解除相关坐标系之间的固化关系,在虚拟手场景图中删除虚拟物体子节点,释放物 体。 用算法流程图描述如图 3 所示。 图 3, 虚拟手抓取过程算法流程图 2204虚拟手交互平台 在对于虚拟手的手势抓取过程进行分析的基础上, 我们建立了一个基于数据手套的 虚拟手交互平台。 平台的硬件配置为5DT数据手套, FOB 电磁跟踪器, PC (Pentium 4 2.4G, 512MB RAM) 。 软件方面, 采用Windows2000 操作系统, 开发环境采用了Visual Studio.NET 2003,以 QT4作为界面工具,场景管理采用了 Cosmo 3D5 场景管理器以及 SOLID6 碰撞检测引擎。图 4 表示了交互平台中对于各种不同形状物体对象的抓取过程。 利用构建的虚拟手交互平台, 我们实现了在文化遗址展示场景中利用数据手套驱动 虚拟手进行叉鱼的动作,整个动作模拟了根据考古得到的前人的生活场景状态,模拟古 人的动作,在原始场景中,利用数据手套操纵虚拟手,利用虚拟鱼叉作为工具从小溪中 进行虚拟叉鱼,图 5 表明了操纵鱼叉的动作过程。 。 5结束语 本文在对虚拟手交互平台的特点进行分析研究的基础上, 构建了基于数据手套的虚 拟手模型,建立了数据手套到虚拟手的动作映射,并且定义了在虚拟场景环境中虚拟手 对虚拟物体的操作规则,实现了用户通过数据手套实现对虚拟手的驱动,以及利用虚拟 手对虚拟场景中的物体进行操作控制,并且实现了虚拟手对各种不同形状的物体的抓 取、移动、释放等动作。最后,利用现有的平台,实现了在文化遗址虚拟展示平台中利 用虚拟鱼叉进行虚拟叉鱼的动作。 a. 长方体 b. 球 c. 圆柱 d. 圆锥 图 4. 对于不同形状物体对象的抓取 图 5 虚拟手对于鱼叉的操作 221参考文献 1 Jintae Lee and Tosiyasu L. Kunii. Model-Based Analysis of Hand Posture. IEEE Computer Graphics and Applications, 1995, 15 (5) : 7786. 2 Fifth Dimension Technologies. Data gloves for the fifth dimension: Users Manual. Version 1.1. October 200
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号