四指紧握拇指伸直然后弯曲的手势是食指弯曲伸直什么意思思

以下试题来自:
问答题简答题拇指和食指弯曲成圆圈,其余三个手指伸直是通用的表示OK的手势,对还是错?为什么?
OK的手势并非各地能用;实际上,在巴西、意大利南部、希腊、德国以及前苏联的部分地区,这一手势语被认为是下流或粗俗的。
为您推荐的考试题库
您可能感兴趣的试卷
你可能感兴趣的试题
1.问答题 美国是山楂花、玫瑰花;巴西是卡特兰;英国是蔷薇花、玫瑰花;瑞士是火绒草;希腊是橄榄。2.问答题 中国是牡丹;日本是樱花;朝鲜是金达莱、木槿花;韩国是木槿花;马来西亚是扶桑。3.问答题
1、爱整洁、守秩序;
2、性格直、办事快;
3、重节约、讲正统。
1、时间观念强,惯于准时赴约;
2、尊重长辈,并以此为豪;
3、非常重视在打招呼时,采用礼貌用语。
1、法律严明,法制观念极强;
2、讲究信誉,重视时间观念;
3、极端自卑,非常尊重传统;
4、待人热情,十分注重感情。虚拟手自动手势选择方法
专利名称虚拟手自动手势选择方法
技术领域本发明涉及一种虚拟手自动手势选择方法,属于智能人机交互领域。
背景技术计算技术的巨大进步,使得人们可以借助图形技术和多种交互设备在虚拟环境中进行各种交互仿真实验和设计工作。在虚拟环境人机交互中像在现实世界中一样的直接操作是一个重要技术方面。虚拟手手势的动画是直接操作的基础设施。目前虚拟手手势的行为都是基于数据手套等设备通过对人的真实手指动作跟踪而获得的,这样的虚拟手的缺陷在于以下几点。其一,它依赖人的生理行为和生理感知,在交互中造成很大的认知负荷,也无法提供交互的其它语义信息,比如抓握的特征信息以及抓握的手势和深度信息;其二,基于碰撞检测算法,其算法复杂度很高,尽管人们提出了各种各样的改进算法来提高其效率,并没有克服其固有的复杂度,因而,在个人计算机上尚无法完全实现实时交互。
本发明的目的是解决现有虚拟手技术所带来的认知负荷高的问题,从而提出了一种虚拟手自动手势选择方法。本发明的主要内容是根据生产和生活经验知识抽取出一套基本手势;构造具有真实感的虚拟手几何和手势动画。将虚拟手在虚拟环境中设计为主动对象,设计虚拟手的手势动态选择的算法,使得在虚拟环境交互过程中虚拟手根据用户交互意图的表达自主地转换手势。本发明的目的是通过下述技术方案实现的。一种虚拟手自动手势选择方法,包括(I)为虚拟手设计一套在生产中和生活中常用的基本手势,形成虚拟环境基本手势集,用符号GesSet表示。所谓的手势是指参与抓握动作的手指组合和手指形态。GesSet= {Pnt, 2fNip, 3fNip, 4fNip, 5fNip, AGrab, PGrab, Grasp}。其中,Pnt 为指点手势,指点手势为手背朝上,食指伸直摆放,拇指与手掌在同一平面并张开与食指成直角摆放其余三指指尖自然弯曲向下;2fNip代表用拇指和食指合作的捏手势;3fNip代表拇指、食指和中指合作的捏手势;4fNip代表用拇指与除小指外的其它四指合作构成的捏手势;5fNip代表用拇指与其它四指合作构成的捏手势;AGrab代表除拇指外其余并拢弯曲的四指所构成的抓握手势,拇指所指方向垂直于其余手指所在的每个平面,也称为偏握手势;PGrab代表拇指与其余并拢的四指相对,拇指所在平面平行于其它弯曲四指各手指所在平面的抓握手势,也称为对握手势;Grasp代表五指均匀侧向张开然后弯曲握紧的抓握手势。设定指点手势Pnt为初始手势,任何抓握手势都是从此手势转化而来。在4个捏手势中(2fNip, 3fNip, 4fNip,5fNip),都是拇指指尖与其它参与捏手势的部分手指指尖相对。定义相关参数定义虚拟手局部坐标系定义虚拟手的掌心某一点为虚拟手局部坐标系原点,用Oh表示;定义穿过坐标原点且与指点手势的食指矢量同方向的轴为虚拟手局部坐标系的主轴,用Major11表示;定义在手掌平面上穿过坐标原点与主轴正交的轴线且与拇指指尖所指方向成锐角的方向为虚拟手局部坐标系的副轴方向,用Minor11表示;定义穿过坐标原点与MajorH-MinorH平面即手掌平面正交且从手背指向手心的的方向为第三轴方向,用The3thAxisH表示,此三个轴构成右手定则。定义手指的3个关节点和指尖顶点。对于拇指,从根部到指尖顺序分别是拇指第一关节点、拇指第二关节点,拇指第三关节点和拇指指尖顶点,分别用0T1、O12& O13& O14表示。Oti和Ot2之间的距离、Ot2和Ot3之间的距离、Ot3和Ot4之间的距离分别用1T1、1T2、I13表示。食指的3个关节点和指尖顶点,从根部到指尖顺序分别是食指第一关节点、食指第二关节点、食指第三关节点和食指指尖顶点,分别用0n、O12, O13& O14表示。O11和O12之间的距离、O12和O13之间的距离、O13和O14之间的距离分别用I11U12和I13表示。中指的3个关节点和中指指尖顶点,从根部到指尖顺序分别是中指第一关节点、中指第二关节点,中指第三关节点和中指指尖顶点,分别用0M1, Om2, Om3& Om4表示。Omi和Om2之间的距离、Om2和Om3之间的距离、Om3和Om4之间的距离分别用ImiUm2Um3表示。无名指的3个关节点,从根部到指尖顺序分别是无名指第一关节点、无名指第二关节点、无名指第三关节点和无名指指尖顶点,分别用0K1、0K2、0K3、Oe4表示。Oei和Oe2之间的距离、Oe2和Oe3之间的距离、Ok3和Oe4之间的距离分别用1K1、1K2、Ik3表示。小指的3个关节点,从根部到指尖顺序分别是小指第一关节点、小指第二关节点,小指第三关节点和小指指尖顶点,分别用Osi、0S2, 0S3、Os4表示。Osi和Os2之间的距离、Os2和Os3之间的距离、Os3和Os4之间的距离分别用1S1、1S2、Is3表示。各手指的第一关节点到第二关节点的部分称为第一指节,第二关节点到第三关节点的部分称为第二指节,第三关节点到指尖顶点的部分称为第三指节。定乂 5 个矢里 VeCjjTi、VeCjjn、V6。腿1、V 。服丄、veC其中,Vθ表原点到梅宇曰的第一关节点On的矢量,vecHT1=0n-0H ;vecHI1表示原点Oh到食指的第一关节点O11到的矢量,vecHI1=0n-0H -,Yecmi表示原点Oh到中指的第一关节点Om的矢量,vecHM1=0m_0H ;vecHE1表示原点Oh到无名指的第一关节点Oki的矢量,vecHK1=0K「0H ;vecHS1表示原点Oh到小指的第一关节点 Osi 的矢量,vecHS1=0sl-0H。定义拇指的3种状态和2种状态转换方式。拇指的3种状态分别用Sti、St2和St3表示;2种状态转换方式分别用Tn和Tt2表示。拇指的状态Sn是拇指与食指并拢,拇指指尖所指方向与Major11轴方向相同;拇指的状态St2是拇指与食指分开,拇指指尖指向与Minora轴方向相同;拇指的状态St3是拇指与食指分开,拇指指尖指向与The3thAxisH轴方向相同。拇指的状态转换方式Tn是拇指在MajorH-MinorH平面的转动,即拇指从状态Sn向状态St2转换或从状态St2向状态Sn转换的运动过程;拇指的状态转换方式Tt2是拇指在MinorH-The3thAxisH平面上的旋转运动,即拇指从状态St2向状态St3转换或从状态St3向状态St2转换的运动过程。定义手指的运动方式定义拇指各指节的旋转角度。拇指从状态St2开始,拇指的第一指节至第三指节的旋转角度分别用θ Τ12& θ Τ22和θ Τ32表示;拇指从状态St3开始,拇指的第一指节至第三指节的旋转角度分别用θη3、ΘΤ23和ΘΤ33表示。定义除拇指外其它四指的运动方式。第一种运动方式是食指、无名指和小指在MajorH-MinorH平面内的侧向移动,中指在MajorH_MinorH平面上没有侧向运动;第二种运动方式是食指、中指、无名指和小指分别由伸直状态朝向手心的弯曲运动和其逆运动。在第一种运动方式中,食指、无名指和小指在MajorH-MinorH平面的侧向移动角度分别用Θ IS、Θ ES和Θ ss表示。在第二种运动方式中,食指的第一指节至第三指节的旋转角度分别用θ n、9 12和Θ 13表示;中指的第一指节至第三指节的旋转角度分别用ΘΜ1、和表示;无名指的第一指节至第三指节的旋转角度分别用θ Κ1、θ Κ2和θ Κ3表示;小指的第一指节至第三指节的旋转角度分别用QS1、0S2和0S3表示。在上述参数定义的基础上,对虚拟环境基本手势集GesSet中的8种手势进行描述。指点手势Pnt为手背朝上,食指伸直摆放,拇指自然伸展,处于状态ST2,其余三指指尖自然弯曲向下;因此指点手势Pnt的参数描述为Pnt={vecm4=MajorH, θ Π2= θ η,
Γ) _ Γ)Γ) _ Γ)Γ) _ Γ)Γ) _ Γ)Γ) _ Γ)Γ) _ Γ)Γ) _ Γ)Γ) _ Γ)Γ) _ Γ)
θ R2= θ 18,θ R3= θ 19,θ SI= θ 17,θ S2= θ 18,θ S3= θ I9I ;其中,VeCm4 表示从食指的第一关节点
O11 到拇指指尖 O14 的矢量;θ η、Θ 12、Θ 13、Θ 14、Θ 15、Θ 16、Θ 17、Θ 18、Θ 19 均为
之间的某一定值。拇指和食指合作的捏手势2fNip的描述为初始状态为指点手势Pnt,拇指从状态St2转换到状态ST3,然后拇指和食指相对运动直到指尖中心接触为止。捏手势2fNip的终止状态参数描述为2fNip= {norm((O11-On) X (Ot2-Oti)) =norm((O12-Oti) X (Ot2-Oti)),
θ 113= θ 21
ΘΤ23=Θ22,θ T33= θ 23
θ Il= θ 24
ΘΙ2=Θ25,θ 13= θ 261 ;其中,ηθΓΠ1(·)中的各参数
为矢量,norm( ·)表不取该矢量的方向;9 21、Θ 22、Θ 23、Θ 24、Θ 25、Θ 26均为[O, 180。]之间的某一定值。姆指、食指和中指合作的捏手势3fNip的描述为初始状态为指点手势Pnt,姆指从状态St2转换到状态ST3,同时中指伸直与食指并拢,其它手指状态不变。然后食指和中指与姆指做并彳丁相对运动,分别做向内弯曲直到姆指指尖与食指和中指指尖接触为止。捏手势 3fNip 的终止状态参数描述为3fNip={norm((0n+0M1-20T1) X (O12-On)) =norm((0I2+0M2-20n) X (0Τ2_0Τ1) ),θ Τ13- θ 21
9 Τ23- θ 22,θ Τ33- θ 23,θ η_ θ 24,θ Ι2_ θ 25,θ Ι3_ θ 26,θ Μ1_ θ 34,ΘΜ2=Θ35,%3=03J;其中,021、0 22、0 23、0 24、0 25、0 26、0 34、θ35、Θ 36 均为
之间的某一定值。拇指与除小指外的其它四指合作构成的捏手势4fNip的描述为初始状态为指点手势Pnt,拇指从状态St2转换到状态ST3,同时中指和无名指伸直与食指并拢,小指状态不变。然后食指、中指和无名指与姆指做并彳丁相对运动,分别做向内弯曲直到姆指指尖与中指指尖接触为止。捏手势4fNip的终止状态参数描述为4fNip= {norm((Omi-Oti) X (Ot2-Oti)) =
norm ( (Om2-Ot1) X (0Τ2—0T2) ),,θ T13— Θ 21 Τ23_
Il_ ^ 24,
I2~ 9 25,
I3_ 9 26,
9 Ml- 9 34,9 M2- 9 35,^ M3- ^ 36,^ El- ^ 44,^ E2_ ^ 45,^ E3_ ^ 46^ ;其中,^ 21、^ 22、^ 23、^ 24、^ 25、θ 26、θ 34、θ 35、θ 36、θ 44、θ 45、θ 46 均为
之间的某一定值。拇指与其它四指合作构成的捏手势5fNip的运动过程描述为初始状态为指点手势Pnt,姆指从状态St2转换到状态St3,然后姆指与食指、中指、无名指以及小指并彳丁相对运动,各手指冋步向内做弯曲运动,直到姆指指尖与其余四指指尖接触为止。捏手势5fNip的终止状态参数描述为5fNip= {norm((0M1+0E1-20T1) XX (0T2-
\ \Γ) _ Γ)Γ) _ Γ)Γ) _ Γ)Γ) _ Γ)Γ) _ Γ)Γ) _ Γ)Γ) _ Γ)Γ) _ Γ)
wTl/ / , ,
M2一 35,9 M3- 9 36,9 El- 9 44,^ E2_ ^ 45,^ E3_ ^ 46,^ SI- ^ 54,^ S2_ ^ 55,^ S3- ^ 56^ ;其中,^ 21、日 22、^ 23、9 24、9 25、9 26、9 34、9 35、9 36、9 44、9 45、9 46、9 54、9 55、9 56 均为[ ,180° ]之间的某一定值。偏握手势AGrab是拇指与其余并拢弯曲的四指的每个手指所在平面垂直的手势,其描述为初始状态为指点手势Pnt,姆指保持状态St2不变,中指、无名指和小指冋时伸直并保持与食指并找,然后食指、中指、无名指和小指并行同步向内弯曲至最大角度。抓握手势 AGrab 的终止状态参数描述为AGrab= { θ Τ12= Θ 61,θ Τ22= Θ 62,θ Τ32= Θ 63,θ η= θ 1Max,
Q=QQ=QQ=QQ=QQ=QQ=QQ=QQ=Q
12 2Max, 13 3Max, Ml IMax, M2 2Max, M3 3Max, Rl IMax, R2 2Max, R3 3Max,
θ SI= θ 1MaX,θ S2= θ 2MaX,θ S3= θ 3MaJ ;其中,θ 61& θ 62 & θ 63 均为[ ,180° ]之间的某一定值;
Θ 1Max& Θ 2Max& 93^分别为各手指第一指节、第二指节、第三指节的最大弯曲角度。对握手势PGrab是拇指与其它四指相扣形成的手势,其描述为初始状态为指点手势Pnt,拇指转换到状态St3,中指、无名指和小指伸直与食指并拢,然后拇指与其余四指并彳丁相对运动,食指、中指、无名指和小指并彳丁冋步向内做弯曲运动,冋时姆指向内做弯曲运动,直到姆指指尖和中指指尖相接触为止。对握手势PGrab的终止状态参数描述为PGrab- { θ Τ13- Θ 71,θ Τ23- Θ 72,θ Τ33- Θ 73,θ η- Θ 74,θ Ι2- Θ 75,θ Ι3- Θ 76,θ Μ1- Θ 74,θ Μ2- Θ 75
9 M3- 9 76,9 El- 9 74,^ E2_ ^ 75,^ E3_ ^ 76,^ SI- ^ 74,^ S2_ ^ 75,^ S3- ^ 76^ ;其中,日 71、日 72、^ 73、
Θ 74、Θ 75、Θ 76均为
之间的某一定值;抓握手势Grasp是五指均匀散开并同时向内做弯曲运动的手势,其描述为初始状态为指点手势Pnt,拇指转换到状态St3,其余四指伸直与手掌共面并侧向张开,然后拇指与其余四指并彳丁向内做弯曲运动,直到姆指与中指和无名指指尖接触为止。抓握手势Grasp的终止状态参数描述为Grasp={
n3 u 81, u T23 82, T33 83, IS SMax
Il 84,G I2~ G 85,G Ι3- θ 86 ; θ Μ1- Θ 87,θ Μ2- Θ 88,θ Μ3- Θ 89 ; Θ RS-- ^ SMax,^ El- ^ 90,^ E2_ ^ 91,
^ E3= ^ 92 ; ^ SS=_ ^ SMax
^ Sl= ^ 93
^ S2= ^ 94 ^ S3= ^ 95^ ° 上述角度等式中右侧均为某常数值。其中,9 81、9 82、9 83、9 84、^ 85、^ 86、^ 87、^ 88、^ 89、^ 9(1、^ 91、^ 92、^ 93、^ 94、^ 95
之间的某一定值;0_!£是食指在MajorH-MinorH平面的侧向移动的最大角度;_ θ SMax是无名指和小指在MajorH-MinorH平面的侧向移动的最大角度。(2)设计虚拟手的手势选择方法,具体操作步骤为步骤一、用零件特征自身的端面作为分割平面,构造零件的二叉空间分割树,用符号BSPTree表示。通过该零件的二叉空间分割树BSPTree,将零件及零件外围空间分割成若干特征子空间。所述特征是一些特定的三维几何形状,是组成零件对象的基本单位。所述特定的三维几何形状包括长方体、圆柱体或圆柱体的一部分、孔、槽、球体或球体的一部分、圆锥体或圆锥体的一部分。为每个特征定义笛卡尔局部坐标系将每个特征的几何中心点定义为该特征的局部坐标系的原点;每个特征的中心轴线均作为该特征的笛卡尔局部坐标系的坐标轴,以及描述其三维空间占有的尺寸数据等参数,同时它有由表面面片所构成的视觉表不。步骤二、针对步骤一得到的每个特征子空间,构造该特征子空间所包含的特征的一个空间分割,该分割集用符号FeaSpaceClass表示,FeaSpaceClass= (C1, C2,…,C其中,C1, C2,…,Cn分别表不该特征被分割成的η个特征子区域。
所述构造某一特征子空间包含的特征的一个空间分割FeaSpaceClass的具体方法为步骤2. I :获取该特征子空间所包含的特征的端面数量如果所述特征为长方体,其端面有6个;如果是圆柱体,其端面有2个;如果是圆柱体经纵向剖分,则其端面有3个;如果球体,其端面数为O个;如果是球体的一部分,其端面有I个;如果圆锥体,其端面有I个;如果圆锥体的一部分,其端面有2个。步骤2. 2 :将步骤2. I得到的所述特征的端面加以区分,分为开放端面和封闭端面,获得开放端面的数量。所述开放端面是指该特征端面也是整个零件的边界表面;所述封闭端面是指该特征端面与该零件的另一个特征的端面共面,即是另一个特征端面的一部分而非零件的边界表面。每个特征的开放端面的数量用Num_0penFC表示。步骤2. 3 :依次对每个开放端面做如下操作将穿过开放端面的轴线与该开放端面的交点作为起点,用符号Of表示,沿轴线向零件内部方向取σ长度,做一与所述开放端面平行的截面,将该截面与所述开放端面之间的部分作为特征端面子区域Cpl & j ^ Num_OpenFC, Num_0penFC=n-l, σ 是一人为设定值,0〈σ & 50mm。步骤2. 4 :将剩余部分作为特征中心子区域Cn。经过上述步骤的操作,即完成对该特征子空间所包含的特征的一个空间分割FeaSpaceClass 的构造。步骤三、用户通过简单三维输入设备对虚拟手进行位姿操控,使其接近目标零件,并使虚拟手的方向为非背对目标零件的某一朝向,此时虚拟手为指点手势。然后,确定虚拟手的食指指尖O14所处的特征子空间,将该特征子空间包含的特征确定为当前待抓握的特征。步骤四、设计一组用于判断虚拟手的抓握位置的指标,并根据该组指标的具体取值综合判断虚拟手的抓握位置;具体为步骤4. I :设计指标①至指标④,分别用符号Metric1至Metric4表示。每个指标的取值将是特征子区域集合FeaSpaceClass中的某个特征子区域Ci或者为空。指标①是虚拟手的原点与特征的距离指标,用符号Metric1表示;获取距离Metric1的取值方法为从虚拟手局部坐标系原点Oh做垂直于特征主轴的一个平面,交主轴上一点,用符号O’H表示,当点Oh与点O’H之间的距离小于某一人为预先设定阈值时,确定点O’H所在特征子区域Ci, I & i & η,即Ci e FeaSpaceClass,则指标Metric1=Ci,否则为空。指标②是虚拟手的食指指尖与特征表面距离指标,用符号Metric2表示;获取距离Metric2的取值方法为过食指指尖O14做垂直于特征主轴的平面,该平面与特征表面相交,求交线上与O14点距离最近点,用符号O' Itip表示,当点O14与点O’ Itip之间的距离小于某一人为预先设定阈值时,确定点O’ Itip所在特征子区域Ci,则指标Metric2=Ci,否则为空。指标③是虚拟手的食指光线投射指标,用符号Metric3表示。获取食指光线投射指标Metric3的取值方法为沿从食指指根O11到指尖O14的矢量方向投射一条光线穿越特征近表面的一点,用符号P表示,确定点P所在特征子区域Ci,则指标Metric3=Ci,否则为空。指标④是虚拟手的Τ1ιθ3 Αχ 8Ι^
(即手心的朝向方向)与特征的某一个轴线(用符号Axf表示)对齐的指标,用符号Metric4表示;获取角度距离Metric4的取值方法为若I The3thAxisH · Axf |彡I- σ 3,σ 3是某一人为设定值,O ^ σ 3 & O. 5,被选择特征在Axf
1轴方向上有一端面FCp该端面的中心点(用符号O0表示)与虚拟手的原点间的距离(用符号d3表示)小于某个阈值,即4 = &/Χ σ4,确定点%所在特征子区域Ci,则指标Metric4=Ci,否则为空。步骤4. 2 :为每个特征子区域Ci定义一个权值变量,用Wi表示,Wi的初值均为O ;根据Metric1至Metric4的取值,改变特征子区域Ci的权值变量Wi赋值。每当一个指标取值Ci,则将Wi值加I。步骤4. 3 :选取特征子区域集合FeaSpaceClass中的权值变量Wi取值最大的特征子区域Ci,将该特征子区域作为虚拟手所要抓握的部位。若有多个特征子区域的权值变量Wi取相同的最大值,则操作虚拟手使其位姿被进一步调整,直到有某个特征子区域取得唯一的权值为止。步骤五、根据选取规则从虚拟环境基本手势集GesSet中选择一个手势。所述选取规则具体为步骤5. I :根据零件的质量(用符号Wgtp表示)选择手势,具体为如果wgtP Swci, Wtl为以人为设定值,Okg & Wtl彡Ikg,则确定手势类型为捏手势2fNip、3fNip、4fNip、5fNip,然后执行步骤5.2 ;否则,则确定手势类型为抓握手势AGrab、PGrab、Grasp,然后执行步骤5. 3。步骤5. 2 :当 Okg & Wgtp ( W1Iig 时,选择用 2fNip 手势;当 W1Iig & wgtP ( w2kg 时,选择用 3fNip 手势;当 w2kg & Wgtp ( w3kg 时,选择用 4fNip 手势;当 w3kg & wgtP ( w4kg时,选择用4fNip手势;其中,W1 & w2〈w3〈w4〈w。。步骤5. 3 :当虚拟手所要抓握的特征子区域为球体时,选择抓握手势G否则,根据虚拟手所要抓握的特征子区域的截面半径(用符号r表示)选择是抓握手势AGrab或者PGrab,具体为当Omm & r ^ 15mm时,选择用偏握手势AG当15mm & r ^ 40mm时,选择用对握手势PGrab。有益效果本发明提出的一种虚拟手自动手势选择方法与已有技术相比较,具有以下优点①降低了人工操作的负荷,极大地提高了工作效率;②降低了计算复杂度,可以做到实时人机交互。
图I为本发明具体实施例中8种虚拟手势的示意图;其中,(a)为Pnt手势;(b)为2fNip手势;(c)为3fNip手势;Cd)为4fNip手势;Ce)为5fNip手势;(f)为AGrab手势;(g)为PGrab手势;(h)为Grasp手势;图2为本发明具体实施例中某一轴零件的特征及特征截面示意图;其中,I-特征A的截面FC1 ;2-特征A ;3_特征B的截面FC2 ;4~特征B ;5_特征C的截面FC3 ;6-特征C ;7-特征D的截面FC4 ;8-特征D ;9_特征E的截面FC5 ;10_特征E ;11-特征E的截面FC6;图3为本发明具体实施例中虚拟手抓握轴零件特征D的示意图。
具体实施例方式下面结合附图和实施示例对本发明做进一步说明。一种虚拟手自动手势选择方法,包括 (I)为虚拟手设计一套在生产中和生活中常用的基本手势,形成虚拟环境基本手势集,用符号GesSet表示。所谓的手势是指参与抓握动作的手指组合和手的形态。GesSet= {Pnt, 2fNip, 3fNip, 4fNip, 5fNip, AGrab, PGrab, Grasp}。其中,Pnt 为指点手势,指点手势为手背朝上,食指伸直摆放,拇指张开与手掌在同一平面并与食指成正交,其余三指指尖自然弯曲向下;2fNip代表用拇指和食指合作的捏手势;3fNip代表拇指、食指和中指合作的捏手势;4fNip代表用拇指与除小指外的其它四指合作构成的捏手势;5fNip代表用拇指与其它四指合作构成的捏手势;AGrab代表拇指所指方向垂直于其余并拢弯曲的四指每个手指所在平面的抓握手势,也称为偏握手势;PGrab代表拇指与其余四指相扣,拇指所在平面平行于其它弯曲四指各手指所在平面的抓握手势,也称为对握手势;Grasp代表五指均匀侧向张开并向内弯曲的抓握手势。设定指点手势Pnt为初始手势,任何抓握手势都是从此手势转化而来。在4个捏手势中(2fNip,3fNip, 4fNip, 5fNip),都是拇指指尖与其它参与捏手势的手指指尖相对。定义相关参数定义虚拟手局部坐标系定义虚拟手的掌心一点为虚拟手局部坐标系原点,用Oh表示;定义穿过中心点Oh与指点手势的食指所指方向同向的轴为虚拟手局部坐标系的主轴方向,用Major11表示;定义在手掌平面上与主轴正交的轴线且其与拇指指尖所指方向夹角为锐角的方向为虚拟手局部坐标系的副轴方向,用Minora表示;定义与MajorH_MinorH平面即手掌平面正交且从手背指向手心的的方向为第三轴方向,用The3thAxisH表示,此三个轴构成右手定则。定义拇指的3个关节点和指尖顶点,从根部到指尖顺序分别是拇指第一关节点、拇指第二关节点,拇指第三关节点和拇指指尖顶点,分别用0T1、0T2、0T3、O14表示。On和Ot2之间的距离、Ot2和Ot3之间的距离、Ot3到Ot4的距离分别用1T1、1T2、It3表示。食指的3个关节点和指尖顶点,从根部到指尖顺序分别是食指第一关节点、食指第二关节点、食指第三关节点和食指指尖顶点,分别用0η、012、013、O14表示。O11和O12之间的距离、O12和O13之间的距离、O13到O14的距离分别用ln、I12和I13表示。中指的3个关节点和中指指尖顶点,从根部到指尖顺序分别是中指第一关节点、中指第二关节点,中指第三关节点和中指指尖顶点,分别用0M1、0M2、0M3、Om4表示。Omi和Om2之间的距离、Om2和Om3之间的距离、Om3到Om4的距离分别用1Μ1、1Ε& 1Μ3表示。无名指的3个关节点,从根部到指尖顺序分别是无名指第一关节点、无名指第二关节点、无名指第三关节点和无名指指尖顶点,分别用0Κ1、0Ε2, 0Ε3& Oe4表示。Oei和Oe2之间的距离、Oe2和Oe3之间的距离、Oe3和Oe4之间的距离分别用1K1、1K2、Ie3表示。小指的3个关节点,从根部到指尖顺序分别是小指第一关节点、小指第二关节点,小指第三关节点和小指指尖顶点,分别用Osi, Os2, Os3& Os4表示。Osi和Os2之间的距离、Os2和Os3之间的距离、Os3和Os4之间的距离分别用1S1、Is2& Is3表示。各手指的第一关节点到第二关节点的部分称为第一指节,第二关节点到第三关节点的部分称为第二指节,第三关节点到指尖顶点的部分称为第三指节。定义5 个矢量 vecHT1、vecHI1、vecHM1、vecHE1& vecHS1 ;其中,vecHT1 表示原点 Oh 到拇指的第一关节点On的矢量,vecT1H=0n-0H ;vecHI1表示原点Oh到食指的第一关节点O11到的矢量,vecI1H=0n-0H -,Yecmi表示原点Oh到中指的第一关节点Om的矢量,vecM1H=0M「0H ;vecHE1表示原点Oh到无名指的第一关节点Oki的矢量,vecE1H=0E1-0H ;vecHS1表示原点Oh到小指的第一关节点 Osi 的矢量,vecslH=0sl-0H。定义拇指的3种状态和2种状态转换方式。拇指的3种状态分别用Sti、St2和St3表示;2种状态转换方式分别用Tn和Tt2表示。拇指的状态Sn是拇指与食指并拢,拇指指尖所指方向与Major11轴方向相同;拇指的状态St2是拇指与食指分开,拇指指尖指向与Minora轴方向一致;拇指的状态St3是拇指与食指分开,拇指指尖指向与The3thAxisH轴方向相同。拇指的状态转换方式Tn是拇指在MajorH-MinorH平面的转动,即拇指从状态Sn向状态St2转换或从状态St2向状态Sn转换的运动过程;拇指的状态转换方式Tt2是拇指在MinorH-The3thAxisH平面上的旋转运动,即拇指从状态St2向状态St3转换或从状态St3向状态St2转换的运动过程。定义手指的运动方式定义拇指各指节的旋转角度。拇指从状态St2开始,在MajorH_MinorH平面的运动时,拇指的第一指节至第三指节的旋转角度分别用θ Τ12、ΘΤ22和θ Τ32表示;拇指从状态St3开始,在MinorH-The3thAxisH平面上运动时,拇指的第一指节至第三指节的旋转角度分别
用 9 Τ13、θ Χ23 和 9 Τ33表示。定义除拇指外其它四指的运动方式。第一种运动方式是食指、无名指和小指在MajorH-MinorH平面内的侧向移动,中指在MajorH_MinorH平面上没有侧向运动;第二种运动方式是食指、中指、无名指和小指分别由伸直状态朝向手心的弯曲运动。在第一种运动方式中,食指、无名指和小指在MajorH-MinorH平面的侧向移动角度分别用Θ IS、θ κ和Θ ss表示。在第二种运动方式中,食指的第一指节至第三指节的旋转角度分别用ΘΙ2和O13表示;中指的第一指节至第三指节的旋转角度分别用0M1、012和0IB表示;无名指的第一指节至第三指节的旋转角度分别用θ Κ1、9 Κ2和Θ R3表示;小指的第一指节至第三指节的旋转角度分别用0S1、0S2和0S3表示。在上述参数定义的基础上,使用定义的参数对虚拟环境基本手势集GesSet中的8种手势进行描述。指点手势Pnt如图I (a)所示,为手背朝上,食指伸直摆放,拇指自然伸展,处于状态ST2,其余三指指尖自然弯曲向下;因此指点手势Pnt的参数描述为Pnt= Ivec1114=MajorH,
θ El= θ 4,θ R2= θ 5,θ R3= θ 6,θ SI= θ 4,θ S2= θ 5,θ S3= θ 61 ;其中,VeCm4 表不从食指的第一关
节点O11到拇指指尖O14的矢量;θ η、Θ 12、Θ 13、Θ 4、Θ 5、Θ 6均为
之间的某一定值。拇指和食指合作的捏手势2fNip如图I (b)所示,其运动过程描述为初始状态为指点手势Pnt,姆指从状态St2转换到状态St3,然后姆指和食指相对运动直到指尖中心接触为止。捏手势2fNip的终止状态参数描述为2fNip= {norm((Oi1-Oti) X (Ot2-Oti) ) =norm(
(O12-0T1) X (0Τ2—0Τ1) ),θ Τ13— θ 21
9 Τ23~ 9 22,9 Τ33— ^ 23,^ Il- ^ 24,^ Ι2~ ^ 25,^ Ι3— ^ 26^ ;其中,
norm( ·)中的各参数为矢量,norm( ·)表示取该矢量的方向;Θ 21、Θ 22、Θ 23、Θ 24、Θ 25、Θ 26均为
之间的某一定值。
拇指、食指和中指合作的捏手势3fNip如图1(c)所示,其运动过程描述为初始状态为指点手势Pnt,姆指从状态St2转换到状态St3,然后食指和中指与姆指相对运动直到指尖中部接触为止。捏手势3fNip的终止状态参数描述为3fNip= {norm((0n+0M1-20T1) X (0T2—0Τ1)) —norm ((0Ι2+0Μ2—20Τ1) X (0Τ2—0Τ1)),θ Τ13- θ 31,θ Τ23- θ 32,θ Τ33- θ 33,θ η- θ 3 4,θ Ι2- θ 35,
9 Ι3_ 9 36,9 Ml- 9 37,^ M2- ^ 38
^ M3- ^ 39^ ;其中,^ 31、^ 32、^ 33、^ 34、^ 35、^ 36、^ 37、^ 38、^ 39
之间的某一定值。拇指与除小指外的其它四指合作构成的捏手势4fNip如图I (d)所示,其运动过程描述为初始状态为指点手势Pnt,拇指从状态St2转换到状态St3,然后拇指与食指、中指以及无名指相对运动直到指尖中部接触为止。捏手势4fNip的终止状态参数描述为4fNip
_ {ηΟ Π ((〇μι 〇τι) X (0^2 〇τι) ) _ΠΟ!ΓΠ1 ( (0j^2X (0j2 〇τι) ),,Q 丁13_ ^ 41
^ T23_ ^ 42,^ T33_ ^ 43,
Γ) _ Γ)Γ) _ Γ)Γ) _ Γ)Γ) _ Γ)Γ) _ Γ)Γ) _ Γ)Γ) _ Γ)Γ) _ Γ)Γ) _ Γ)
其中,θ 41、θ 42、θ 43、θ 44、θ 45、θ 46、θ 47、θ 48、θ 49、θ 5。、θ 51、θ 52 均为
某一定值。拇指与其它四指合作构成的捏手势5fNip如图I (e)所示,其运动过程描述为初始状态为指点手势Pnt,拇指从状态St2转换到状态ST3,然后拇指与食指、中指、无名指以及小指相对运动直到指尖中部接触为止。捏手势5fNip的终止状态参数描述为5fNip={norm ((0M1+0E1-20T1) X (O12-O11)) =norm ((0M2+0E2-20T1) X (O12-O11)),,θ T13= θ 53, θ T23= Θ 54,
fl — ΩQ _ Γ)Γ) _ Γ)Γ) _ Γ)Γ) _ Γ)Γ) _ Γ)Γ) _ Γ)Γ) _ Γ)Γ) _ Γ)
55,U Il一 U 56, U 12一 U 57,
63,9 Ε3_ 9 64
G S1- θ 65,θ S2_ ^ 66
^ S3- ^ 67^ ;其中,^ 53、θ 54、θ 55& θ 56、θ 5γ、θ 5g& θ 5g、θ 6(|&θ 61 & θ 62、θ 63、θ 64、θ65、θ 66、θ67 均为
之间的某一定值。拇指与其余并拢弯曲的四指各手指所在平面垂直的抓握手势AGrab如图I (f )所示,其运动过程描述为初始状态为指点手势Pnt,拇指运动到状态St2,其余四指伸直,然后食指、中指、无名指和小指并行同步弯曲至最大角度。抓握手势AGrab的终止状态参数描述
为:AGrab-{ θ Τ12- Θ 68,θ Τ22- θ 69,θ Τ32- θ 70, θ η- θ 1Max, θ Ι2- θ 2Max, θ Ι3- θ 3Max, θ Μ1- θ 1Max,
θ , r0 — θ 0, r ,θ , r0— θ r,, r ,—,θ DO — θ r ,θ D。一 θ r,, r ,一^ O O 一 ^ r ,θ一 θ r,, r ^ ·
M3 3Max, Rl IMax9 R2 2Max
R3 3Max, SI IMax9 S2 2Max9 S3 3Max」,
其中,θ 68& θ 69& θ 70均为
之间的某一定值;Θ 1Max、Θ 2Max、Θ 3Max分别为各手指第一指节、第二指节、第三指节的最大弯曲角度。拇指与其它四指相扣形成的抓握手势PGrab如图I (g)所示,其运动过程描述为初始状态为指点手势Pnt,拇指转换到状态St3,其余四指伸直,然后拇指与其余四指相对运动,食指、中指、无名指和小指并彳丁冋步弯曲运动。抓握手势PGrab的终止状态参数描述为PGrab- { θ Τ13- Θ 71,θ Τ23- Θ 72,θ Τ33- Θ 73,θ η- Θ 74,θ Ι2- Θ 75,θ Ι3- Θ 76,θ Μ1- Θ 74,θ Μ2- Θ 75,
Q M3- Q 76,Q El- Q 74,^ E2_ ^ 75,^ E3_ ^ 76,^ SI- ^ 74,^ S2_ ^ 75,^ S3- ^ 76^ ;其中,^ 71、Θ 72、Θ 73、
Θ 74、Θ 75、Θ 76均为
之间的某一定值;五指均匀散开并向内弯曲的抓握手势Grasp如图I (h)所示,其运动过程描述为初始状态为指点手势Pnt,拇指转换到状态St3,其余四指伸直与手掌共面并侧向张开,然后姆指与其余四指并彳丁向内弯曲做相对运动,直到姆指与中指和无名指指尖接触为止。抓握手势 Grasp 的终止状态参数描述为Grasp={ θ Τ13= Θ 77,θ Τ23= θ 78,θ Τ33= θ 79 ; θ IS= θ SMax
Q Il_ Q 80, Q Ι2_ Q 81
Q Ι3_ ^ 82 ; ^ Ml_ ^ 80, ^ Μ2_ ^ 81
^ Μ3_ ^ 82 ; ^ RS__ ^ SMaxj ^ El- ^ 80
Q Ε2= Q 81,Q R3= 9 82 ; 9 SS=_ ^ SMax^ ^ SI= ^ 8。,^ S2= ^ 81,^ S3= ^ 82^
上述角度等式中右侧均为某常数值。其中,Θ 77、Θ 78、Θ 79、Θ 80& Θ 81、Θ 82均为
之间的某一定值;Θ SMax是食指在MajorH-MinorH平面的侧向移动的最大角度;_ Θ SMax是无名指和小指在MajorH_MinorH平面的侧向移动的最大角度。 (2)图2中是一个轴零件,包括特征A (2)、特征B (4)、特征C (6)、特征D (8) 和特征E (10)。 虚拟手抓握一个轴零件(如图2所示)的手势选择过程如下步骤一、用零件特征自身的端面作为分割平面,构造零件的二叉空间分割树BSPTree0首先选择特征C (6)的截面FC3 (5)作为第一层分割平面,分割空间成左右两个部分。特征A (2)、特征B (4)将被包含在左子树所代表的子空间内,特征C (6)、特征D (8)和特征E (10)将被包含在右子树所代表的子空间内。取特征B (4)的截面FC2 (3)和特征D (8)的截面FC4 (7)作为第二层分割平面分别对左右两个子空间继续分割,其中特征A
(2)和特征B (4)分别落在其中的一个子空间内,同样,特征C (6)也落在其中一个子空间内,但特征D (8)和特征E (10)仍然在一个子空间内。取特征E (10)的截面FC5 (9)继续分割D (8)和特征E (10)所在的子空间为左右两个子空间,这样,D (8)和特征E (10)将分别被一个子空间所包含。如上将零件及零件外围空间分割成5个特征子空间,每个特征子空间中仅包含一个特征。步骤二、针对步骤一得到的每个特征子空间,构造该特征子空间所包含的特征的一个空间分割FeaSpaceClass。以特征A (2)为例,构造它的一个空间分割FeaSpaceClass的具体方法为步骤2. I :获取该特征子空间所包含的特征的端面数量特征A (2)有2个端面。步骤2. 2 :将步骤2. I得到的所述特征的端面进行区分,特征A (2)有I个开放端面截面FCi (I)和I个封闭端面。步骤2. 3 :依次对每个开放端面做如下操作将穿过开放端面的轴线与该开放端面的交点作为起点,用符号Of表示,沿轴线向零件内部方向,取20mm,该端点用符号Os表示,经过Os点做一与所述开放端面平行的截面,将该截面与所述开放端面之间的部分作为特征子区域C1。步骤2. 4 :将剩余部分作为特征子区域C2。经过上述步骤的操作,即完成对特征A (2)的一个空间分割FeaSpaceClass的构造。采用同样方法,特征B (4)、特征C (6)、特征D (8)均只构造出I个特征子区域,特征E (10)构造出2个特征子区域。步骤三、用户通过简单三维输入设备对虚拟手进行位姿操控,使其接近目标零件,并使虚拟手的方向为非背对目标零件的某一朝向,此时虚拟手为指点手势。然后,继续移动虚拟手使食指指尖O14处于包含特征D (8)的特征子空间,于是将特征D (8)确定为当前待抓握的特征。步骤四、设计一组用于判断虚拟手的抓握位置的指标,并根据该组指标的具体取值综合判断虚拟手的抓握位置;具体为步骤4. I :设计指标①至指标④,分别用符号Metric1至Metric4表示。每个指标的取值将是特征子区域集合FeaSpaceClass中的某个特征子区域Ci或者为空。指标①是虚拟手的原点与特征的距离指标,用符号Metric1表示;获取距离Metric1的取值方法为从虚拟手局部坐标系原点Oh做垂直于特征主轴的一个平面,交主轴上一点,用符号0’H表示,当点Oh与点O’H之间的距离小于某一人为预先设定阈值时,确定点O’H所在特征子区域为C1,指标Metric1=Cp指标②是虚拟手的食指指尖与特征表面距离指标,用符号Metric2表示;获取距离Metric2的取值方法为过食指指尖O14做垂直于特征主轴的平面,该平面与特征表面相交,求交线上与O14点距离最近点,用符号O’ Itip表示,当点O14与点O’ Itip之间的距离小于某一人为预先设定阈值时,确定点O’ Itip所在特征子区域为C1,指标Metric2=Cp指标③是虚拟手的食指光线投射指标,用符号Metric3表示。获取食指光线投射指标Metric3的取值方法为沿从食指指根O11到指尖O14的矢量方向投射一条光线穿越特征近表面的一点,用符号P表示,确定点P所在特征子区域为C1,指标Metric3=C1O指标④是虚拟手的The3thAxisH轴(即手心的朝向方向)与特征的某一个中心轴线(用符号Axf表示)对齐的指标,用符号Metric4表示;获取角度距离Metric4的取值方法为若|The3thAXisH*AXF| ^l-O3, σ 3是某一人为设定值,O彡σ 3 & O. 5,被选择特征轴方向Axf为空,指标Metric4的值为空。步骤4. 2 :为特征D (8)特征子区域C1定义一个权值变量F1, F1的初值为O ;根据Metric1至Metric4的取值,使特征子区域C1的权值变量F1取值为3。步骤4. 3 :选取特征子区域集合FeaSpaceClass中的权值变量最大的特征子区域C1,将该特征子区域作为虚拟手所要抓握的部位。步骤五、根据选取规则从虚拟环境基本手势集GesSet中选择一个手势。所述选取规则具体为步骤5. I :根据零件的质量wgtP=5kg选择手势,具体为wgtP&w0, W0=Ikg,因此确定手势类型为抓握手势AGrab、PGrab& Grasp,然后执行步骤 5. 3。步骤5. 3 :根据虚拟手所要抓握的特征子区域的截面半径r=30mm选择用对握手势PGrab。经过上述步骤的操作,即完成虚拟手的手势选择。以上所述的具体描述,对发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例,用于解释本发明,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
1.一种虚拟手自动手势选择方法,其特征在于其包括
(1)为虚拟手设计一套在生产中和生活中常用的基本手势,形成虚拟环境基本手势集,用符号GesSet表示;所谓的手势是指参与抓握动作的手指组合和手指形态;GesSet= {Pnt, 2fNip, 3fNip, 4fNip, 5fNip, AGrab, PGrab, Grasp};其中,Pnt 为指点手势,指点手势为手背朝上,食指伸直摆放,拇指与手掌在同一平面并张开与食指成直角摆放其余三指指尖自然弯曲向下;2fNip代表用拇指和食指合作的捏手势;3fNip代表拇指、食指和中指合作的捏手势;4fNip代表用拇指与除小指外的其它四指合作构成的捏手势;5fNip代表用拇指与其它四指合作构成的捏手势;AGrab代表除拇指外其余并拢弯曲的四指所构成的抓握手势,拇指所指方向垂直于其余手指所在的每个平面,也称为偏握手势;PGrab代表拇指与其余并拢的四指相对,拇指所在平面平行于其它弯曲四指各手指所在平面的抓握手势,也称为对握手势;Grasp代表五指均匀侧向张开然后弯曲握紧的抓握手势;设定指点手势Pnt为初始手势,任何抓握手势都是从此手势转化而来;在4个捏手势中2fNip, 3fNip, 4fNip,5fNip,都是拇指指尖与其它参与捏手势的部分手指指尖相对;
(2)设计虚拟手的手势选择方法,具体操作步骤为
步骤一、用零件特征自身的端面作为分割平面,构造零件的二叉空间分割树,用符号BSPTree表示;通过该零件的二叉空间分割树BSPTree,将零件及零件外围空间分割成若干特征子空间;
所述特征是一些特定的三维几何形状,是组成零件对象的基本单位;所述特定的三维几何形状包括长方体、圆柱体或圆柱体的一部分、孔、槽、球体或球体的一部分、圆锥体或圆锥体的一部分;为每个特征定义笛卡尔局部坐标系将每个特征的几何中心点定义为该特征的局部坐标系的原点;每个特征的中心轴线均作为该特征的笛卡尔局部坐标系的坐标轴,以及描述其三维空间占有的尺寸数据等参数,同时它有由表面面片所构成的视觉表示;
步骤二、针对步骤一得到的每个特征子空间,构造该特征子空间所包含的特征的一个空间分割,该分割集用符号FeaSpaceClass表示,FeaSpaceClass= (C1, C2,…,C其中,C1, C2,…,Cn分别表不该特征被分割成的η个特征子区域;
步骤三、用户通过简单三维输入设备对虚拟手进行位姿操控,使其接近目标零件,并使虚拟手的方向为非背对目标零件的某一朝向,此时虚拟手为指点手势;然后,确定虚拟手的食指指尖O14所处的特征子空间,将该特征子空间包含的特征确定为当前待抓握的特征;
步骤四、设计一组用于判断虚拟手的抓握位置的指标,并根据该组指标的具体取值综合判断虚拟手的抓握位置;具体为
步骤4. I :设计指标①至指标④,分别用符号Metric1至Metric4表示;每个指标的取值将是特征子区域集合FeaSpaceClass中的某个特征子区域Ci或者为空;
指标①是虚拟手的原点与特征的距离指标,用符号Metric1表示;获取距离Metric1的取值方法为从虚拟手局部坐标系原点Oh做垂直于特征主轴的一个平面,交主轴上一点,用符号O' H表示,当点Oh与点O' H之间的距离小于某一人为预先设定阈值时,确定点O' η所在特征子区域Ci, I & i & η,即Ci e FeaSpaceClass,则指标Metric1=Ci,否则为空;
指标②是虚拟手的食指指尖与特征表面距离指标,用符号Metric2表示;获取距离Metric2的取值方法为过食指指尖O14做垂直于特征主轴的平面,该平面与特征表面相交,求交线上与O14点距离最近点,用符号O' Itip表示,当点O14与点O' Itip之间的距离小于某一人为预先设定阈值时,确定点O' _所在特征子区域Ci,则指标Metric2=Ci,否则为空;指标③是虚拟手的食指光线投射指标,用符号Metric3表示;获取食指光线投射指标Metric3的取值方法为沿从食指指根O11到指尖O14的矢量方向投射一条光线穿越特征近表面的一点,用符号P表示,确定点P所在特征子区域Ci,则指标Metric3=Ci,否则为空;指标④是虚拟手的The3thAxiSl^^与特征的某一个轴线Axf对齐的指标,用符号Metric4表示;获取角度距离Metric4的取值方法为若| The3thAxisH .Axf | & 1_σ3,σ3是某一人为设定值,O & σ 3 & O. 5,被选择特征在Axf轴方向上有一端面FCp该端面的中心点Ofj-与虚拟手的原点间的距尚d3小于某个阐值,即d3 = dist (Ofj-,0H) ^ σ 4,确定点Ofj所在特征子区域Ci,则指标Metric4=Ci,否则为空;
步骤4. 2 :为每个特征子区域Ci定义一个权值变量,用Wi表示,Wi的初值均为O ;根据Metric1至Metric4的取值,改变特征子区域Ci的权值变量Wi赋值;每当一个指标取值Ci,则将Wi值加I ;
步骤4. 3 :选取特征子区域集合FeaSpaceClass中的权值变量Wi取值最大的特征子区域Ci,将该特征子区域作为虚拟手所要抓握的部位;若有多个特征子区域的权值变量Wi取相同的最大值,则操作虚拟手使其位姿被进一步调整,直到有某个特征子区域取得唯一的权值为止;
步骤五、根据选取规则从虚拟环境基本手势集GesSet中选择一个手势;
所述选取规则具体为
步骤5. I :根据零件的质量Wgtp选择手势,具体为
如果Wgtp ( W07W0为以人为设定值,Okg & W0 ^ Ikg,则确定手势类型为捏手势2fNip、3fNip、4fNip、5fNip,然后执行步骤5. 2 ;否则,则确定手势类型为抓握手势AGrab、PGrab,Grasp,然后执行步骤5.3 ;步骤 5. 2 :当 Okg & Wgtp ( W1Iig 时,选择用 2fNip 手势;当 W1Iig & wgtP ( w2kg 时,选择用 3fNip 手势;当 w2kg & Wgtp ( w3kg 时,选择用 4fNip 手势;当 w3kg & wgtP ( w4kg 时,选择用 4fNip 手势;其中,W1 & w2〈w3〈w4〈w。;
步骤5. 3 :当虚拟手所要抓握的特征子区域为球体时,选择抓握手势G否则,根据虚拟手所要抓握的特征子区域的截面半径r选择是抓握手势AGrab或者PGrab,具体为
当Omm & r ^ 15mm时,选择用偏握手势AG当15mm & r ^ 40mm时,选择用对握手势 PGrab。
2.如权利要求I所述的一种虚拟手自动手势选择方法,其特征在于所述虚拟环境基本手势集GesSet中的8种手势的相关参数定乂为
定义虚拟手局部坐标系定义虚拟手的掌心某一点为虚拟手局部坐标系原点,用OH表示;定义穿过坐标原点且与指点手势的食指矢量同方向的轴为虚拟手局部坐标系的主轴,用Major11表示;定义在手掌平面上穿过坐标原点与主轴正交的轴线且与拇指指尖所指方向成锐角的方向为虚拟手局部坐标系的副轴方向,用Minor11表示;定义穿过坐标原 点与MajorH-MinorH平面即手掌平面正交且从手背指向手心的的方向为第三轴方向,用The3thAxisH表示,此三个轴构成右手定则;
定义手指的3个关节点和指尖顶点;对于拇指,从根部到指尖顺序分别是拇指第一关节点、拇指第二关节点,拇指第三关节点和拇指指尖顶点,分别用On、Ot2、Ot3、Ot4表示;0T1和Ot2之间的距离、Ot2和Ot3之间的距离、Ot3和Ot4之间的距离分别用1T1、1T2、I13表示;食指的3个关节点和指尖顶点,从根部到指尖顺序分别是食指第一关节点、食指第二关节点、食指第三关节点和食指指尖顶点,分别用O11、O12、O13、O14表示;0η和O12之间的距离、O12和O13之间的距离、O13和O14之间的距离分别用I11U12和I13表示;中指的3个关节点和中指指尖顶点,从根部到指尖顺序分别是中指第一关节点、中指第二关节点,中指第三关节点和中指指尖顶点,分别用0M1, Om2, Om3、Om4表示;0Μ1和Om2之间的距离、Om2和Om3之间的距离、Om3和Om4之间的距离分别用1Μ1、1 2、1Μ3表示;无名指的3个关节点,从根部到指尖顺序分别是无名指第一关节点、无名指第二关节点、无名指第三关节点和无名指指尖顶点,分别用Oki、0E2、Oe3&Oe4表示;0Ε1和Oe2之间的距离、Oe2和Oe3之间的距离、Oe3和Oe4之间的距离分别用1K1、Ik2、Ie3表示;小指的3个关节点,从根部到指尖顺序分别是小指第一关节点、小指第二关节点,小指第三关节点和小指指尖顶点,分别用Osi, 0S2, 0S3、Os4表示;0S1和Os2之间的距离、Os2和Os3之间的距离、Os3和Os4之间的距离分别用1S1、Is2, Is3表示;各手指的第一关节点到第二关节点的部分称为第一指节,第二关节点到第三关节点的部分称为第二指节,第三关节点到指尖顶点的部分称为第三指节;
定乂 5个矢里V eCjjTi、V eCjjii、V
。服丄、V ec^g^ ;其中,V θ 表原点Oh到梅 日的一关节点Oti的矢量,vecHT1 = Oti-Oh ;vecHI1表示原点Oh到食指的第一关节点O11到的矢量,Vgchii = O11-Oa ;vecHM1 表示原点 Oh 到中指的第一关节点 Omi 的矢量,vecHM1 = Omi-Oh ;vecHE1表示原点Oh到无名指的第一关节点Oki的矢量,vecHE1 = Oei-Oh ;vecHS1表示原点Oh到小指的第一关节点Osi的矢量,vecHS1 = Osi-Oh ;
定义拇指的3种状态和2种状态转换方式;拇指的3种状态分别用Sn、St2和St3表示;2种状态转换方式分别用Tn和Tt2表示;拇指的状态Sn是拇指与食指并拢,拇指指尖所 指方向与Major11轴方向相同;拇指的状态St2是拇指与食指分开,拇指指尖指向与Minor11轴方向相同;拇指的状态St3是拇指与食指分开,拇指指尖指向与方向相同;拇指的状态转换方式Tn是拇指在MajorH-MinorH平面的转动,即拇指从状态Sn向状态St2转换或从状态St2向状态Sn转换的运动过程;拇指的状态转换方式Tt2是拇指在MinorH-The3thAxisH平面上的旋转运动,即拇指从状态St2向状态St3转换或从状态St3向状态St2转换的运动过程;
定义手指的运动方式
定义拇指各指节的旋转角度;拇指从状态St2开始,拇指的第一指节至第三指节的旋转角度分别用θ Τ12、θ Τ22和θ Τ32表示;拇指从状态St3开始,拇指的第一指节至第三指节的旋转角度分别用0 Τ13、θ Τ23和θ Τ33表示; 定义除拇指外其它四指的运动方式;第一种运动方式是食指、无名指和小指在MajorH-MinorH平面内的侧向移动,中指在MajorH_MinorH平面上没有侧向运动;第二种运动方式是食指、中指、无名指和小指分别由伸直状态朝向手心的弯曲运动和其逆运动;在第一种运动方式中,食指、无名指和小指在MajorH-MinorH平面的侧向移动角度分别用Θ IS、Θ ES和0SS表示;在第二种运动方式中,食指的第一指节至第三指节的旋转角度分别用θη、ΘΙ2和ΘΙ3表示冲指的第一指节至第三指节的旋转角度分别用ΘΜ1、θκ和ΘΜ3表示;无名指的第一指节至第三指节的旋转角度分别用θ Κ1、θ Κ2和θ Κ3表示;小指的第一指节至第三指节的旋转角度分别用9S1、0S2和0S3表示。
3.如权利要求2所述的一种虚拟手自动手势选择方法,其特征在于所述虚拟环境基本手势集GesSet中的8种手势的参数描述为
指点手势Pnt为手背朝上,食指伸直摆放,拇指自然伸展,处于状态ST2,其余三指指尖自然弯曲向下;因此指点手势Pnt的参数描述为 Pnt=Ivec1114 = Majora, θ Τ12 = θ η, θ Τ22 = θ 12, θ Τ32 = θ 13, θ η = θ 14, θ Ι2 = θ 15,9 13 — 9 16, θ Μ1 — ^17, θ J12 — θ 18, θ Μ3 — θ 19, θ R1 — θ 17, θ R2 — θ 18, θ Ε3 — θ 19, θ S1=θ 17
0S2= θ 18
θ S3 = θ I9I ;其中,Vec1114表示从食指的第一关节点O11到拇指指尖O14的矢量;θ η、Θ 12、Θ 13、Θ 14、Θ 15、Θ 16、Θ 17、Θ 18、Θ 19 均为[O, 180° ]之间的某一定值;拇指和食指合作的捏手势2fNip的描述为初始状态为指点手势Pnt,拇指从状态Sk转换到状态St3,然后姆指和食指相对运动直到指尖中心接触为止;捏手势2fNip的终止状态参数描述为2fNip= {norm((O11-O11) X (O12-O11)) = norm((O12-O11) X (O12-O11)), θ Τ13 =θ 21,θ Τ23 = θ 22, θ Τ33 = θ 23, θ η = θ 24,θ Ι2 = θ 25, θ Ι3 = θ 26};其中,norm( ·)中的各参数为矢量,norm( ·)表示取该矢量的方向;9 21、Θ 22、Θ 23、Θ 24、Θ 25、Θ 26均为[O, 180° ]之间的某一定值;
姆指、食指和中指合作的捏手势3fNip的描述为初始状态为指点手势Pnt,姆指从状态St2转换到状态St3,同时中指伸直与食指并拢,其它手指状态不变;然后食指和中指与姆指做并彳丁相对运动,分别做向内弯曲直到姆指指尖与食指和中指指尖接触为止;捏手势 3fNip 的终止状态参数描述为3fNip= {norm((0n+0M1-20T1) X (O12-On))=norm ( (0I2+0M2—20T1) X (0T2—0T1) ) , θ Τ13 — θ 21Τ23 —
23,9 Il — 9 24,9 12 —9 25,9 13 — 9 26
9 Ml — ^ 34
^ M2 — ^ 35
^ M3 — ^ 36 ^ ;其中,日 21、θ 22& θ 23& θ 24、θ 25、θ 26&θ 34 & θ 35、θ 36均为
之间的某一定值;
拇指与除小指外的其它四指合作构成的捏手势4fNip的描述为初始状态为指点手势Pnt,拇指从状态St2转换到状态ST3,同时中指和无名指伸直与食指并拢,小指状态不变;然后食指、中指和无名指与姆指做并彳丁相对运动,分别做向内弯曲直到姆指指尖与中指指尖接触为止;捏手势4fNip的终止状态参数描述为4fNip= {norm((Omi-Oti) X (Ot2-Oti))=norm ( (Om2-Oti) X (0Τ2—0T2)),,θ τ 3 —
25,9 13 - 9 26,^ Ml — ^ 34
^ M2 — ^ 35,^ M3 — ^ 36
^ El — ^ 44
^ E2 — ^ 45,^ E3 — ^ 46^ ;其中,Θ 21、Θ 22、Θ 23、Θ 24、Θ 25、Θ 26、Θ 24、Θ 35、Θ 36、Θ 44、Θ 45、Θ 46 均为
之间的某一定值;
拇指与其它四指合作构成的捏手势5fNip的运动过程描述为初始状态为指点手势Pnt,姆指从状态St2转换到状态St3 ,然后姆指与食指、中指、无名指以及小指并打相对运动,各手指冋步向内做弯曲运动,直到姆指指尖与其余四指指尖接触为止;捏手势 5fNip 的终止状态参数描述为5fNip= {norm ((0M1+0E1-20T1) X (Ot2-Oti))=norm ( (O1^Or2K)ti) X (0Τ2—0T1)), Θ T13 — Θ 21,Θ T23 — ^ 22T33 —
23,9 11 —
2412 —G 25,G I3 一 Θ 26
G M1 — Θ 34
Θ 12 一 ^ 35
^ M3 一 ^ 36,^ El 一 ^ 44
^ E2 一 ^ 45
^ E3 一 ^ 46,9 SI — 9 54,Θ S2 — Q 55,^ S3 — ^ 56^ ;其中,^ 21、^ 22、^ 23、^ 24、^ 25、^ 26、^ 34、^ 35、^ 36、Θ 44、9 45、9 46、9 54、9 55、9 56 均为
之间的某一定值;
偏握手势AGrab是拇指与其余并拢弯曲的四指的每个手指所在平面垂直的手势,其描述为初始状态为指点手势Pnt,姆指保持状态St2不变,中指、无名指和小指冋时伸直并保持与食指并扰,然后食指、中指、无名指和小指并彳丁冋步向内弯曲至最大角度;抓握手势AGrab 的终止状态参数描述为=AGrab= { θ T12 = Θ 61,θ Τ22 = Θ 62,θ Τ32 = Θ 63,θ η = Θ 1Max,R = P)Ω —— QQ __ QQ __ QQ __ QQ __ QQ __.12 — 2ΜΑΧ, 13 — 3Max, Ml — IMax
M2 — 2Max, M3 — 3Max, Rl — IMax
R2 —.9 2Max,9 R3 — ^ 3Max,^ SI — ^ IMax,^ S2 — ^ 2Max,^ S3 — ^ 3Max^ ;其中,^ 61、^ 62、^ 63 均为[ο, 180° ]之间的某一定值;01Max、Θ 2Max& 03_分别为各手指第一指节、第二指节、第三指节的最大弯曲角度;
对握手势PGrab是拇指与其它四指相扣形成的手势,其描述为初始状态为指点手势Pnt,拇指转换到状态St3,中指、无名指和小指伸直与食指并拢,然后拇指与其余四指并行相对运动,食指、中指、无名指和小指并打冋步向内做弯曲运动,冋时姆指向内做弯曲运动,直到姆指指尖和中指指尖相接触为止;对握手势PGrab的终止状态参数描述为PGrab={ θ T13—G 71,G Τ23 — θ 72
G Τ33 — G 73,^ Il — ^ 74
^ 12 — ^ 75
^ 13 — ^ 76
^ Ml — ^ 74
^ M2 —.9 75,G M3 — Θ 76
^ Rl — G 74, Θ R2 — θ 75,Θ R3 — θ 76, Θ S1 — θ 74, Θ S2 — θ 75,Θ S3 — Θ 76};其中,Θ 71、Θ 72、Θ 73、Θ 74、Θ 75、Θ 76 均为[O,180° ]之间的某一定值;
抓握手势Grasp是五指均匀散开并同时向内做弯曲运动的手势,其描述为初始状态为指点手势Pnt,拇指转换到状态St3,其余四指伸直与手掌共面并侧向张开,然后拇指与其余四指并彳丁向内做弯曲运动,直到姆指与中指和无名指指尖接触为止;抓握手势Grasp的终止状态参数描述为=Grasp= { θ T13 = Θ 81,θ Τ23 = Θ 82,θ Τ33 = θ 83 ; Θ IS = Θ SMax,θ n =Ο 84, Ο 12 — Ο 85, Ο 13 — ^ 86 ; ^ Ml — ^ 87
^ M2 — ^ 88, ^ M3 — ^ 89 ; ^ ES — _ ^ SMax, ^ El —.9 90,9 R2 — 9 91,9 R3 — ^ 92 ; ^ SS — _ ^ SMax,^ SI — ^ 93,^ S2 — ^ 94,^ S3 — ^ 95^ ;上述角度等式中右侧均为某常数值;其中,Θ 81、Θ Θ 83、Θ 84、Θ Θ 86、Θ 87、Θ %、Θ 89、Θ 9Q、Θ 91、Θ 92& Θ 93& θ 94& Θ 95均为[O,180° ]之间的某一定值;Θ SMm是食指在Maj0rH_Min0rH平面的侧向移动的最大角度;-θ SMax是无名指和小指在MajorH-MinorH平面的侧向移动的最大角度。
4.如权利要求I至3之一所述的一种虚拟手自动手势选择方法,其特征在于所述构造某一特征子空间包含的特征的一个空间分割FeaSpaceClass的具体方法为
步骤2. I :获取该特征子空间所包含的特征的端面数量如果所述特征为长方体,其端面有6个;如果是圆柱体,其端面有2个;如果是圆柱体经纵向剖分,则其端面有3个;如果球体,其端面数为O个;如果是球体的一部分,其端面有I个;如果圆锥体,其端面有I个;如果圆锥体的一部分,其端面有2个;
步骤2. 2 :将步骤2. I得到的所述特征的端面加以区分,分为开放端面和封闭端面,获得开放端面的数量;所述开放端面是指该特征端面也是整个零件的边界表面;所述封闭端面是指该特征端面与该零件的另一个特征的端面共面,即是另一个特征端面的一部分而非零件的边界表面;每个特征的开放端面的数量用Num_OpenFC表示;
步骤2. 3 :依次对每个开放端面做如下操作将穿过开放端面的轴线与该开放端面的交点作为起点,用符号Of表示,沿轴线向零件内部方向取σ长度,做一与所述开放端面平行的截面,将该截面与所述开放端面之间的部分作为特征端面子区域Cpl & j ( Num_OpenFC, Num_0penFC=n-l, σ 是一人为设定值,0〈σ ^ 50mm ;
步骤2. 4 :将剩余部分作为特征中心子区域Cn ;经过上述步骤的操作,即完成对该特征子空间所包含的特征的一个空间分割FeaSpaceC lass 的构造。
本发明涉及一种虚拟手自动手势选择方法,属于计算机应用领域。本发明包括(1)为虚拟手设计一套常用的基本手势;(2)设计虚拟手的手势选择方法,具体为①用零件特征自身的端面作为分割平面,构造零件的二叉空间分割树BSPTree;根据BSPTree将零件及零件外围空间分割成若干特征子空间。②针对步骤①得到的每个特征子空间,构造该特征子空间所包含的特征的一个空间分割FeaSpaceClass。③初步确定虚拟手的当前待抓握的零件特征。④设计一组用于判断虚拟手的抓握位置的指标,并根据该组指标的具体取值综合判断虚拟手的抓握位置。⑤根据选取规则选择一个手势。本发明方法的优点是降低了人工操作的负荷和计算复杂度,极大地提高了工作效率,可以做到实时人机交互。
文档编号G06F3/01GKSQ
公开日日 申请日期日 优先权日日
发明者程成 申请人:北京理工大学

我要回帖

更多关于 无名指弯曲黄暴手势 的文章

 

随机推荐