标题：手势输入方式
引　言
在虚拟现实中,手是用户模型中十分重要的动作与感知关系模型,人的行为特征[1 ,2 ]是人机交互的
重要研究内容。在虚拟环境中用手实现抓取、释放物体以及飞行、漫游、导航等三维交互任务和技术,以
往是利用人的触摸行为和计算机的反应来获得基于人机交互的手段,一般采用硬设备如空间球、6D 操
纵杆、6D 鼠标等来实现。但也可用人们的自然技能,通过计算机非接触式地(如数据手套和摄象机等)
观察用户的动作,实现人机交互,这是一种通过手势识别来了解用户意图的、有前途的三维交互新技术。
因为在VR 环境中抓握该环境中的物体,应与用户手在生活中的动作一致,这一切的研究都是基于运动
学、动力学以及反运动学;这一切还与使用手掌、拇指和每个手指的位置在抓握物体时运用自然、可信的
几何和物理特征有关;同时还要使用户能感知手抓握的作用力。显然这是一项十分艰巨的研究工作,但
它在人机交互困难的领域(如虚拟现实环境、遥控机器人和电信会议、哑语手势等) 使用户不需要训练就
可用人类自然技能,充分发挥手在交互过程中的自然性、灵活性和适应性。
国内外科学家对手势识别进行了大量研究。1994 年,Ramon M S 和Dannil T 研制了一种基于物理
约束的手抓取过程的手动作合成的控制与抓取系统[3 ] 。1995 年,Lee J intae 和Kunii Tosiyasv L 研究用
摄像机获得手的运动图像数据来自动分析三维手势[4 ] ,实现三维手势重构。1997 年,加拿大多伦多大
学的Sidney S F 研究的Glove TalkII[5 ,6 ]系统是目前最有影响的手势接口系统,他采用神经网络将用户
手势转换成手势语言参数,通过语言合成器合成为语言输出。我国高文等人,也进行了基于手势和人的
行为动作识别的手语合成技术的研究。
　手势识别的原理
1 　手势的概念手势是指在人的意识支配下,人手作出的各类动作,如手指弯曲、伸展和手在空间的运动等,可以是
收稿日期: 2000 - 05 - 15
基金项目: 行业基金项目(院编96311)
作者简介: 曾芬芳(1940 - ) ,女,湖南益阳人,华东船舶工业学院教授。
执行某项任务,也可以是与人的交流,以表达某种含义或意图。基于手势识别的三维交互输入技术,常
用的有基于数据手套的和基于视觉(如摄象机) 的手势识别。
人手有20 多个关节,其手势十分复杂,在VR(Virtual Reality) 中的交互过程,需分析手势的形成并
识别其含义。如用户以自然方式抓取环境中的物体,同时还可以对用户产生相关的感知反馈,如对具有
力反馈的手套,就能使人感知到抓取的物体的重量,对有触觉反馈的手套,能感知到用户所碰到的物体
的质感,如毛毯有多粗糙等。所以计算机要能对人手运动的灵活、复杂的手势进行识别是一项艰难而又
十分有意义的任务。
手势的分类早在40 年代,心理学家Quek[7 ] . ,Pavlovic[8 ]等人从人机接口的角度对手势进行研究,
按其功能分为:
手的运动
无意识的手运动
有意识的手运动(手势
交流手势
表动作
表符号(手语)
引用手语(如表示数字)
情态手势
执行任务(如抓握锤)2 　手势识别的原理手势不但由骨胳肌肉驱动,而且还受人的信念、意识的驱使,它涉及到人的思维活动的高级行为。
人机交互的研究目的之一是使机器对人类用户更方便,从用户产生手势到系统“感知”手势的过程[9 ]如
图1 所示。
图1 　系统“感知”手势的过程
Fig. 1 　Process of sensing gesture by the system
手的运动,是手势的表现形式。用户的操作
意图是用户要完成任务的内容, 即用户心理活
动(概念手势) G ,经过运动控制(变换) ,用手势
运动H 表达。由经感受设备(变换Thi) 将手的
运动H 变换为系统的输入信息I ,所以从G到I
的映射过程为:
Tgh : G → H , 即H > Tgh ( G)
Thi : H → I , 即I > Thi ( H)
Tgi : G → I , 即I > Thi ( Tgh ( G) ) > Tgi ( G)
其中, Tgh 为人体运动控制传送函数; Thi为输入设备传送函数。
手势识别的任务就是从系统输入I 推断、确定用户意图G ,显然是以上映射的逆过程。即
G = T- 1
gi ( I) ( 1 )
H = T- 1
hi ( I) ( 2 )
G = T- 1
gh ( H) ( 3 )
其中, T- 1
gi , T- 1
hi , T- 1
gh 是Tgi , Thi , Tgh 的逆变换。
所以手势识别可以采用H = T- 1
hi ( I) 时输入信息I ,得到手的运动H ,再由G = T- 1
gh ( H) 手势的表
示推断用户手势的概念意图,也可直接从G = T- 1
gi ( I) 求得概念手势G。
手势识别分为静态手势和动态手势的识别,目前的研究大都是在线静态手势识别,如Lee 研究的就
是静态孤立手势[10 ] 。动态手势识别难度大,一般采用关键帧方法,记录每个手势的始和终状态及手势的
运动轨迹,然后用内插算法重建帧,但仍需给予限制,如Davis研究的动态手势识别就规定开始时手必须
朝上等。　手势的输入手势的语法信息是通过手的构形、手的运动变化来传递。为了
给用户提供必要的视觉反馈信息, 使其在交互过程中看到自己的手
(图2 是用3DSMAX 绘制) ,同时也为了分析交互过程中手和虚拟对
象之间的相互作用关系,必须建立手几何模型和运动学模型。1 　手关节的描述人手是一个多肢节系统, 由27 块骨骼组成, 可看成由4 个相邻
手指、一个大拇指和手掌组成, 每个手指由指段和关节组成。因此手
是一种由关节相连的结构, 随着关节运动, 手的形状在不断变化。这
种变化可以通过指段和关节的状态空间位置的变化来描述[11 ] 。
每一个手指( Ⅱ - Ⅴ) 具有四个自由度,其中手指的
基部(MP) 有两个自由度,弯曲和旋转,手指的中间关节处(PIP)
和末端关节处(DIP) 分别各有一个自由度,主要是弯曲运动。大拇
指除了与其他四个手指一样具有四个自由度外, 还有一个外展运
动,所以大拇指具有五个自由度(拇指和手掌之间的一节也可不考
虑) 。外加手掌的前后左右运动二个自由度。所以手运动总共具有
23 个自由度,即状态空间为23 维。
从上述的分析可知,除大拇指外每个手指都具有四个自由度,
从而可以建立一条链,以协调手指的机构及运动。整个手可以以手掌为基础链接五个手指( Ⅰ - Ⅴ) ,在
指段MP 上链接指段PIP ,再链接指段DIP ,每条链可以获取四个参数。从而五个手指以手掌为根节点构
成一个树型结构,树中的每一个节点代表一个关节,关节通过指段具有相互关联的运动特性。
212 　手势的输入
手势的输入是实现手势交互的前提。它要求能够有效地跟踪手的运动, 又要方便用户手的运动, 既
要求准确确定手的位置、方位、手指弯曲角度,又要求对手的运动限制很少。就目前而言, 手势的输入有
基于数据手套的和基于视觉(摄象机) 等两种方式。
21211 　基于数据手套的手势输入
基于数据手套的手势输入[12 ] ,是根据戴在手上的具有位置跟踪器的数据手套利用光纤直接测量手
指弯曲和手的位置来实现手势输入的。本文使用5DT 公司生产的不带位置跟踪器的5th Glove 右手数据
手套,每个手指中间关节有一个传感器用于测量手指的平均屈伸度,在手腕部位还有一个2 轴倾斜传感
器测量手的转动(绕Z 轴旋转) 和倾斜(绕X 轴旋转) 两个角度,以探测手的上下摆动和旋转。该手套共
带有七个传感器,因此同一时刻只能读出七个角度值。5th Glove 还提供命令、报告数据、连续数据、模拟
鼠标等工作方式,可定义一指、二指和三指( Z 轴) 等手势来控制虚拟手的飞行、视点、运动速度等。
5th Glove 数据手套通过串行接口与微机连接在一起,以传送手运动信号,从而控制手动作。它能将
用户手的姿势(手势) 转化为计算机可读的数据, 因而使手去抓取或推动虚拟物体。人手在运动过程中
会碰撞物体,所以在系统中,虚拟手的交互操作除了实现抓取和释放物体等功能外, 还需实现了碰撞的
检测。
21212 　基于视觉的手势输入
基于视觉的手势输入是采用摄象机捕获手势图象,再利用计算机视觉技术对捕获的图象进行分析,
提取手势图象特征,从而实现手势的输入。这种方法使用户手的运动受限制较少,同时用户还可以直接
看到手的图象。基于视觉的输入所输入的原始数据是手的图象,采用重建三维模型来构建手势图象,调
节模型参数如手指弯曲角度的夹角等,以合成手的三维图形。根据手生成的图形和已获得的手图象匹
配,所得到的模型参数就构成了手势。1995 年,Lee J intae 和Kunii Tosiyasv l. 研究用立体图像数据自动
分析三维手势[4 ] 。它用摄像机拍摄手的运动图像,使用轮廓提取边界特征进行识别的方法,成功地提
取27 个交互作用手参数,实现了三维手势的重构。其实早在1981 年, Kroeger 采用两个摄象机实现了
一个获取手势的系统,它通过用户的手在与鼠标垫一般大小的“镜象盒”的3D 空间中来完成交互。两
个镜子被放在大约与前平面成45 度角的位置上,两个镜子代替单个镜子产生了一个虚拟视点,加上两
垂直平面上的两个摄象机共三个视点相交成直角,以提供给用户一个确定的工作空间,在这个空间内允
许用户与计算机交互。
　手势识别
手势识别作为三维输入的实质是识别出用户通过手势运动表达自己的意图。显然这是一个模式识
别问题,但又不完全相同。目前手势识别的图象分类算法很多,如Martin 采用句法模式识别方法[13 ] ,
Sun 采用模板匹配和查表的方法[14 ] ,Quek 使用贝叶斯分类器,Su 等人采用组合神经网络[15 ] ,Huang 等
人采用Hopfield 神经网络法,Boehm 等人使用SOM 法[16 ] ,Kin 采用模糊神经网络识别手势。从模式识
别的角度来看,不论是使用数据手套,还是摄象机来输入手势,不论手势的表示方法如何,不论采用什么
样的特征提取,都可以采用同样方法来识别手势。本文介绍传统几何学识别法和通过数据手套输入手
势的神经网络识别法。1 　几何识别法传统的几何分类法由于算法简单,实现的识别率可达到92 % ,与神经网络的方法相比,几何分类法
显示出了高识别速度和可靠性。它允许定义一个不同手势类别的特点的特征集,它估计一个局部最优的
线性分辨器,根据手势图象中提取的大量特征识别相应的手势类别。已知三个视图,每个视图有k 个特
征, 让n = 2 k ,及特征向量F = [ f 1 , …, f n ] ,手势类别Ω1 , …,Ωm 和它们的类别权w i0 , …, win (1 ≤i ≤
m) 。将下面的线性识别函数作用于特征向量F 上,并求其最大值,得到手势类别H( F) :
hi = w i0 + 6n
k = 1
wikf k
H( F) = { j : Pk : 1 ≤ k , j ≤ m : hk ( F) ≤ hj ( F) ) }
312 　神经网络识别法
31211 　神经网络识别手势的基本过程
手指关节角之间存在非线型偶合关系,
只能从手势的输入近似计算得到它的表示
H。为了提高系统的响应速度, 减小计算误
差,可直接根据输入的数据I 来识别用户作
出的手势G。图4 为神经网络离线训练和神
经网络在线识别静态手势的基本过程。
在训练阶段,使用采集到的手势样本对
神经网络进行训练,近似得逆变换T。手势在线识别阶段,神经网络对输入的手势数据进行处理,并将得
到的结果送判决器,由它判决或得到手势的类别或拒绝识别手势,有时手势数据也可以作为新的手势样
本添加到训练样本中,以使在适当时候对神经网络进行重新训练。
虚拟现实中用户是采用人的自然技能进行交互, 系统要实时在线地识别用户所作手势及意图。从
(1) 、(2) 、(3) 式可知,手势识别的任务是确定未知手势的逆映射T- 1
gi , T- 1
hi , T- 1
gh , 并运用它们识别手势。
因此需确定合适的数学模型,对已知模式样本进行训练,对手势进行分类,并将结果与已知类别比较,不
断修改模型,直到判断未知手势与哪一类已知手势相似与接近,或满足在一参数子区间。
本文采用5th Glove 数据手套输入手势建立了标准手势库,通过所读取的各指节弯曲角度作为神经
网络的输入节点值,库中存有手势:1 、2 、3 、4 、5 、6 、7 、8 、9 、10 、GOOD、BAD、OK 等, 这些手势分别用1 至
13 间的整数代替手势。然后对输入手势分别采用BP 神经网络[17 ] 和模糊神经网络方法进行了手势识
别。以下仅介绍模糊神经网络进行手势识别方法。
31212 　基于模糊神经网络的手势识别
在文献[18 ] 中采用多输入多输出(MIMO) 标准模糊神经网络模型来对手势进行识别,其网络结构
由五层组成:
第一层为输入层。该层的各个节点直接与输入向量的各分量X [ i ] 连接,它起着将输入值x = [ x 1 ,
x 2 , …, x n ] T 传送到下一层的作用。输入层节点数N1 = n = 7 ,即七维向量X[ n ] ,其中X [ i ] 分别为数
据手套中取出的各个角度值,值域为[ - 90 ,90 ] 。
第二层每个节点代表一个语言变量值。用于计算各输入分量属于各语言变量值模糊集合的隶属度
函数。所用隶属函数为高斯函数表示的正态分布函数,即:
μji
= e- ( X
i
- C
ij
)
2
/σ2
ij
其中i = 1 ,2 , …, n 是输入量的维数, j = 1 ,2 , …, Mi 是模糊分割数; Cij ,σij 分别表示隶属函数的中心
和宽度。该层的节点总数N2 = M1 ×M2 ×…×Mn . 系统将该层的每个输入层的节点模糊化为3 到5 个
分支节点,故共有节点21 至35 个。
第三层是归一层,它是一个中间过渡性的缓冲变量,它与规则层节点一一对应。它的每个接点代表
一条模糊规则,用于匹配模糊规则前件,计算出每条规则的适用度。如果利用两种合成算子,则有两种适
用度,即取小求解法或连乘求解法求a[ j ] 。该层节点总数N3 = m 。系统对每条规则a[ i ] ,有一个对应
的整型数组变量存放形成它的模糊层中的节点值的下标值,以作备用。
第四层的节点数与第三层相同,即N4 = m ,它所实现的是归一化计算,即
αj
=αj / 6m
i = 1
αi
, 　( j = 1 ,2 , …, m) ;
第五层是输出层,它所实现的是清晰化计算———求解结果,即
yi = 6m
j =1
wij αj , 　( i = 1 ,2 , …, r)
这里的w [ i ] [ j ] ,相当于y [ i ] 的第j 个语言值隶属函数的中心值,上式写成向量形式,则为Y = Wα,
其中
Y =
y1
y2
…
y r
, 　W =
w11 w12 … w1 m
w21 w22 … w2 m
… … … …
w r1 w r2 … w rm
, α =
α1
α2
…
αm
该系统的输出层节点数据结构为十三维的向量Y[ r ] , r = 13 ,其中, Y[ i ] 分别为该节点的输入节
点值与相应权值的乘积,标准库输出层的正确取值范围为0 到1 之间。该层的节点只有当输入层节点在
库中有匹配时才有有效值(约为1 的值) 。所以对于每个输入的手势,该层中最多有一个节点值约为1 ,当
隶属度函数小于允许误差EPS 时近似取为0 。而接近于1 以致达到误差允许范围内的节点下标值,即为
所识别的手势在标准手势库中对应的输出层下标值,例如:对于某个输入手势,有Y[3 ] = 0. 999999 ,达
到了误差允许范围, 则网络程序识别出该手势为“3”( 图5) ; 而对于另一个输入手势, 有Y[8 ]
42　华　东　船　舶　工　业　学　院　学　报2000 年
= 0. 9999998 , 则识别出该手势为“8”(图6) 。
图5 　手势表示“3”
Fig. 5 　Gesture of“3”
图6 　手势表示“8”
Fig. 6 　Gesture of“8”
　结束语
手势识别是VR 中三维人机交互输入的技术,它具有广阔的运用前景,国内外都有学者在进行研
究。自1995 年以来,笔者对手运动模型进行了分析和研究,并已设计了一个根据5th Glove 数据手套输
入手势,实现了一个虚拟手在虚拟环境中飞行、抓取、释放等的三维交互操作系统,其手势识别方法是分
别采用BP 神经网络和模糊神经网络,取得了较好的效果。从实验结果来看,后者比前者收敛速度更
快,识别能力更强。目前笔者正在尝试从摄象机获得手势并进行识别的研究。
参考文献:
[1 ] 　GREEN M , SUN H Q. Computer graphics modeling for virtual Environment [A ] . In Barfield Woodrow , Furness Ⅱ
Thomas A. : Virtual Environment and Advanced Interface Design[C] . U K: Oxford University ,1995 , 63 - 101.
[2 ] 　CARROLL J M. Human2computer interaction : psychology as a science of design[J ] . International Journal of Human -
computer Studies ,1997 , 46 : 501 - 522.
[ 3 ] 　RAMON M S , DANICL T. A hand control and automatic grasping system for synthetic actors[J ] . EUROGRAPHICS’
94 ,1994. 167 - 176.
[4 ] 　L EE J , KUNII T L. Model2based analysis of hand posture[J ] . Computer Graphics and Applications ,1995 ,5 (5) :77 -
86.
[5 ] 　FELS S S , HINTON G E. Glove2talk Ⅱ: a neural2network interface which maps gestures to parallel format speech syn2
thesizer controls[J ] . IEEETransaction on Neural Networks , 1997 , 8 (5) : 984 - 997.
[6 ] 　SIDENEY F S , HINTON G E. Glove2talk Ⅱ:a neural2network interface which maps gestures to parallel format speech
synthesizer controls[J ] . IEEETransaction on Neural Networks ,Sept 1998 , 9 (9) : 205 - 212.
[7 ] 　QUEK F K H. Toward a vision2based hand gesture interface[A] . Proceeding of VRST’94 :Virtual Reality Software &
Technology. River Edge[C] . NJ ,World Scientific Publishing Co. Inc ,1994 ,17 - 31.
[8 ] 　PABLOVIC V I. SHARMA R , HUANG T S. Visual interpretation of hand gesttures for human2computer interaction :
a review[J ] , IEEE Transactions on Pattern analysis and Machine Intelligence , 1997 , 19 (7) : 677 - 695.
[9 ] 　焦圣品. 虚拟现实中基于手势的交互技术[D] . 上海: 上海交通大学博士论文,1999.
[10 ] 　L EE J , KUNII T. Model2based analysis of hand posture[J ] , IEEE Computer Graphics and Application , 1995 , 15 (5) :
77 - 86.
[11 ] 　曾芬芳. 虚拟现实技术[M] . 上海:上海交通大学出版社,1997.
[12 ] 　曾芬芳,梁波林,刘　镇,等. 基于数据手套的人机交互环境设计[J ] . 中国图象图形学报, 2000 ,5 (2) : 153 - 157.
[13 ] 　BURDEA G, COIFFET P. Virtual Reality Technology[M] . USA : John Wiley &Son Inc. ,1994.
[14 ] 　SUN H Q. Hand interface in traditional modeling and animation tasks[J ] . Journal of Computer Science and Technolo2
gy , 1996 , 11 (3) : 286 - 295.
第6 期　曾芬芳等: 一种交互输入新技术———三维手势识别43
[15 ] 　SU M C , J EAN W F , CHANG H T. A static hand gesture recognition system using a composite neural network[J ] .
IEEE International Conference on Fuzzy Systems , Piscataway , 1996 , Part2 : 768 - 792.
[16 ] 　BOEHM K, BROLL W,SOKOL EWICZ M A. Dynamics gesture recognition using neural networks : a fundament for
advanced interaction construction[A] . Proceedings of SPIE —The International Society for Optical Engineering Belling2
ham[C] . USA : Society of Photo2Optical Instrumentation Engineers , 1994 , 2177 : 336 - 346.
[17 ] 　曾芬芳,王建华,别小川,等. 基于神经网络的手势识别[J ] . 机器人,1999 ,1 ,40 - 44.
[18 ] 　曾芬芳,黄国建. 基于模糊神经网络的手势识别[J ] . 小型微型计算机系统,2000 (7) ,706 - 709.
3D Gesture Recognition —A New Interactive Input Technology
ZEN G Fen2f ang , 　S U Yong , 　CHEN Jie
(Dept . of Electronics and Information , East China Shipbuilding Institute , Zhenjiang Jiangsu 212003 , China)
Abstract : Int roduces a new 3D interactive input technique based on digital glove and video input gesture
picked up by a camera. This technique analyses images with computer and recognizes input 3D images with
neural networks and geomet ry method. It is a new technique with broad application perspective.
Key words : virtual reality ; gesture recognition ; 3D interaction ; neural networks