基于5点数据手套的虚拟手精确控制方法
2015-12-26王增辉曹福毅
李 波,王增辉,曹福毅
(沈阳工程学院 a.信息学院;b.科技处,辽宁 沈阳 110136)
基于5点数据手套的虚拟手精确控制方法
李波a,王增辉a,曹福毅b
(沈阳工程学院 a.信息学院;b.科技处,辽宁 沈阳 110136)
摘要:数据手套中的传感器数目直接决定数据手套的价值。为了能够使传感器较少的数据手套达到传感器较多的数据手套同样的精确控制能力,以5点数据手套为研究对象,提出了精确的数据手套的控制方法,达到了14点数据手套的控制能力,大幅度提高了数据手套的应用范围,有效降低了数据手套的使用成本。
关键词:数据手套;DOF;DH连杆算法
随着计算机技术的发展,虚拟现实[1]技术获得了越来越多的应用。虚拟现实中的人机交互需求变得越来越迫切。
数据手套是常见的虚拟现实输入设备[2],其作用是对手部的姿态数据进行提取。数据手套的基本运行原理是根据内置在手套中的弯曲传感器对手指的动作幅度进行检测。根据数据手套中安装的传感器的数量不同,分为5点、14点、18点、28点等多种类型。传感器的数目越多,价格越昂贵。不同类型的数据手套价格差异很大,达到了10万元等级。
目前在数据手套的应用中,只能在数据手套的固有传感器点数的基础上进行手势识别应用[3],无法突破点数限制。对于普通科研院校而言,14点以上的数据手套太过昂贵,难以承担。如果能够用价格较为低廉的5点数据手套模拟出多点数据手套的运行效果,无疑会大幅度降低科研项目的开发成本,提高科研资金的使用效率。
1系统架构
使用3DMAX软件进行三维建模,通过Creator软件组织三维模型,通过OSG进行程序控制,最终完成了通过数据手套控制虚拟模型的目的。3DMAX是目前最为常见的三维建模软件,建模效率高,易用性好;MultiGen Creator是美国MultiGen-Paradigm公司推出的一款专业的、交互式的虚拟现实建模软件,其功能强大,兼容性强,被广泛应用于工业建模、地形创建[4]等领域;OSG(OpenSceneGraph)是近几年新兴起的一款基于OpenGL和C++技术渲染接口,能够方便地对三维场景进行渲染。该系统的架构如图1所示。
图1 系统架构
系统的基本实现过程如下:
1)使用3DMAX制作虚拟手模型;
2)使用osg将虚拟手模型导入到虚拟空间中;
3)从模型中分解出手部的14个重要关节位置,其中拇指占2个,其他每个手指占3个;
4)通过osg捕获到每个关节,以达到通过编程控制手部动作的目的;
5)从数据手套中读取数据,并依据这些数据分析出对应的手部姿态;
6)从手部姿态数据库中确定当前姿态,并确定手部每个关节的姿态数据;
7)根据关节的姿态数据更新虚拟手模型的关节数据,使虚拟手形成新的手部姿态;
8)更新屏幕,将新的手部姿态绘制出来。
2实现方法
2.1 手部三维建模
手部建模的目的是在虚拟环境中建立具有控制作用的手部模型。该项目采用的方式是使用3DMAX建立基本的手部三维模型,然后通过MultiGen Creator软件进行二次加工,通过creator软件将3DMAX建好的三维模型进行组织化,以便于程序操作,其三维模型如图2所示。
图2 手部三维模型
2.2 关节分解
关节分解的目的是将手中的全部14个关节从模型中分离出来,并分别为每个关节建立独立的坐标系。这样在进行矩阵转换时就可以直接在每个关节的局部坐标系下进行矩阵计算,然后再转化到世界坐标系中,能够降低运算量,方便通过程序进行控制。手部关节的坐标系如图3所示。
图3 关节坐标系建立
由此可知,手指的指尖相对于根部关节的运动变换矩阵为:
DOF(Degree of Freedom,自由度)可用于表示每个关节的运动情况。通过DOF可以控制每个关节节点的转动情况,这样就可以把每个手指的运动转化为几个DOF运动的组合。借助Creator软件可以在建模时就将手部三维模型的组织结构规划为多个DOF节点的组合,然后通过程序直接访问这些DOF节点,以达到控制手指运动的目的。
手部模型在Creator中进行规划后的组织结构如图4所示。将14个关节分别映射为d2至d16,共14个DOF节点。考虑到手腕和大拇指根部的运动,将d1和d2两个DOF节点进行保留,以便日后进行二次开发。
OSG中提供了DofTransform节点,用于对DOF节点进行控制。将OSG中提供的DofTransform节点和Creator中创建的DOF节点进行一一对应后,就可以通过程序对DOF节点进行控制,完成手部姿态的变化。
2.3 手部运动数据提取
5点数据手套的每个手指中只有一个弯曲传感器,能够获取到一个弯曲数据。这个数据只能反应手指较为粗略的弯曲情况,而不能体现出手指上每个关节的具体弯曲程度。为达到手部姿态精确识别的目的,需要将每个手指的一个弯曲数据映射为多个关节的弯曲数据,就需要进行姿态辨认。
图4 手部模型组织结构
2.4 姿态辨认
每个手指的姿态可以表示为手指上每个关节的弯曲数据,如:
T手指=aT关节1+bT关节2+cT关节1
T手指表示手指的弯曲度,可以直接从数据手套中读取出来。T关节表示某个关节的弯曲度,对于拇指关节,T关节3=0。在手指达到某个弯曲度的情况下,每个关节的弯曲情况并不相同,参数a、b和c分别反应这3个关节在达到某个弯曲度时的权重情况。实际上,每个手指的运动情况并不是一维的,而是在立体空间上6个方向的运动。但是对于5点数据手套而言,无法测量这些数据。考虑到除了拇指和食指的根关节之外,其他的手指关节均可认为是一维的线性弯曲运动,因此在匹配手势的基础上将所有手指关节的运动简化为一维运动。
姿态辨认的目的是为了将从数据手套获取到的弯曲数据映射为手指关节的转动数据。为了达到这一目的,建立了一个专门用于存储手部姿态数据的数据库,并将每个手指的弯曲数据和手指关节的姿态数据对应起来。这样,在从数据手套读取到某个手指的弯曲数据后就可以直接从数据库中查找该手指对应的关节转动数据,既提高了姿态辨认的准确率,又降低了运算量。
2.5 关节操作
通过姿态辨认获取到每个关节的运动数据后,就可以直接将这些数据传入到虚拟场景中,更新对应的DOF节点的旋转数据,并将更新后的姿态渲染出来。
3实验结果
应用虚拟手控制方法后,可以通过5点数据手套精确灵活地控制手部模型的运动,实验效果如图5所示。14点数据手套控制效果如图6所示。由此可见,两种控制效果极为相近。
图5 5点手势控制效果
图6 14点手势控制效果
4结论
该虚拟手控制方法能够有效地通过数据手套同步控制虚拟手的运动,用5点数据手套达成了14点数据手套的操作效果,有效地降低了硬件成本。姿态数据库的引入能够在一定程度上克服数据手套的数据不精确问题,提高系统的运行速度和鲁棒性。此虚拟手控制方法可以用于虚拟装配、人体动画等多个领域。但是,该技术也存在一些缺点。由于5点数据手套自身数据的局限性,导致其数据和14个关节的匹配难以达
到完美,并且无法完全反应手指在三维空间的6个方向上的运动情况。此外,现有的姿态数据库也难以体现不同个人在手部姿态上的不同。因此,还需要进一步完善姿态数据库,提高姿态的辨识率和准确率,并添加对个人的姿态的识别。
参考文献
[1]赵沁平.虚拟现实综述[J].中国科学(F辑:信息科学),2009,39(1):2-46.
[2]高龙琴,王爱民,黄唯一,等.基于18传感器数据手套手部交互模型的建立[J].传感技术学报,2007,20(3):523-527.
[3]蔡兴泉,郭天航,臧坤,等.基于无线数据手套的手势识别方法研究[J].系统仿真学报,2014,26(1):72-75.
[4]李波,王祥凤,曹福毅.大规模地形数据生成方法研究[J].沈阳工程学院学报:自然科学版,2013,9(3):263-265.
[5]John J Craig.Introduction to Robitcs Mechanics and Control[M].Third Edition.Boston:Addision-Wesley Publishing Company,2002.
(责任编辑张凯校对佟金锴)
Virtual Hand Accuracy Control Methodbased on Data Glove with five points
LI Boa,WANG Zeng-huia,CAO Fu-yib
(a.College of Information,b.Science and Technology Department,Shenyang Institute of
Engineering,Shenyang 110136,Liaoning Province)
Abstract:The price of a data glove depends on the number of sensors in it.In order to acquire the accuracy of data gloves with much more sensors by data gloves with less sensors,this article presented a method to improve the data glove control accuracy.This method was experimented on a data glove with 5 sensors,and the accuracy of data gloves with 14 sensors was acquired successfully.Experiments showed that this method could improve the control accuracy of data glovesapparently,and could cut the cost of data gloves efficiently.
Key words:data glove;DOF;DH connecting rod algorithm
作者简介:李波(1980-),男,山东青岛人,讲师,博士,主要从事虚拟现实与仿真技术方面的研究。
基金项目:沈阳市科技计划项目(F13-307-4-00);沈阳工程学院科研课题(LGXS-1408)
收稿日期:2014-11-26
中图分类号:TP391.9
文献标识码:A
文章编号:1673-1603(2015)02-0155-04
DOI:10.13888/j.cnki.jsie(ns).2015.02.014