一种面向多设备的手势交互方法_5

文档序号:8298798阅读:来源:国知局
rPara和AirValue、AirTrencU AirTrace三个参数之一在取值范围内的一组赋值生成一个手势,在取值范围的所有赋值组合构成隔空手势集G&; .1.3将GtwcJP G &取并集得到通用手势集G ; .1.4分解通用手势集G,得到点手势集Gptjint、线手势集Glim、面手势集Gsurf■、轨迹手势集Gtrare,方法是: .1.4.1Gpoint= G ; .1.4.2Gt_h中的每一个手势执行以下操作:若手势的TouchPara参数赋值为Distance、Angle、Trend、Trace,则手势加入Gline,若TouchPara参数赋值为Trace,则手势加入Gtrace; .1.4.3G&中的每一个手势执行以下操作:若手势的Shape参数赋值来自Shape_Surface子集,则手势加入Gsmfaee^P G line,若手势的Shape参数赋值来自Shape_Line子集,则手势加入匕^;若手势的AirTrace参数不为空,则加入G trace; 第二步,多设备进行手势集指定,方法是: .2.1交互设备表示SEi,其中i = 1,2,- ,m,…,η ;n为交互设备的数量,m为支持隔空手势的设备数量,E1,…,Em为支持隔空手势交互的设备,Em+1,…,EnS支持触摸交互的设备;为每种设备指定手势集Gi,初始化为空集;每个设备并行执行2.2和2.3 ; .2.2根据设备支持的手势交互类型匹配手势集,若交互设备支持触摸交互,令Gi =GiU G t_h;若交互设备支持隔空交互,令Gi= GiU G也;若交互设备支持辅助交互,且辅助设备为交互笔,令Gi= GiH Gtrace; .2.3从交互设备的驱动程序获取识别到的手势参数类型,若驱动程序输出的参数仅有线参数,令Gi= GiPl G line;若驱动程序输出的参数仅有面参数,令G i= G i Π Gsurface; 第三步,应用程序进行手势映射,方法是: .3.1根据应用程序的应用手册确定该应用程序的功能集合; .3.2为应用程序的功能集合中的元素分别映射相应的手势,如果应用程序有源代码或二次开发接口,则执行3.2.1,否则执行3.2.2: .3.2.1为应用程序加入功能与手势相映射的源代码或二次开发代码,转第四步; .3.2.2通过基于鼠标事件的多点触摸手势交互中间件进行映射,执行第四步; 第四步,多设备进行手势识别,方法是: .4.1设备Em+1,-,Ej,…,En并行进行手势识别,j取值为区间[m+1,η]中的整数,E」进行手势识别的过程是: .4.1.1 以三元组定义触摸手势参数 TouchParaj= (TouchState,Sum, TouchValue []),其中TouChValue[]为五元数组,对应有序集合TPARA中的五个参数;以四元组定义触摸手势识别结论 TouchResultj= (TouchState, Sum,TouchPara, Value);将 TouchPara」和TouchResultj的所有元素置空; .4.1.2Ej运行专属的驱动程序,捕捉手部数据,输出手势参数,写入TouchPara」,若TouchValue[]中的元素没有输出值,则维持空值; .4.1.3对触摸手势参数进行识别,得到识别出的手势编号Gestp方法是: .4.1.3.1令临时参数temp = O ; .4.1.3.2 若 TouchParaj.TouchValue[temp]不为空,则将有序集合 TPARA 的第 temp个元素写入 TouchResultj.TouchPara,令 TouchResult」.TouchPara = TouchParaj.TouchValue [temp],转 4.1.3.4 ;否则令 temp = temp+1 ;.4.L 3.3 若 temp〈5,转 4.1.3.2 ;否则,转 4.6 ; .4.1.3.4将识别结论TouchResultj的取值与手势集G 的手势取值逐项对比,若四个元素的取值与匕中某一个手势的四个对应参数取值完全相同,则将该手势的Tid值写入Gestp 转 4.L 4 ;否则,转 4.6 ; .4.1.4将Gest/专送给设备E j:当前活动的应用程序,将该手势映射为设定的功能; .4.2确定一台计算机主机负责隔空手势的整合,并将交互设备E1,…,Eni与主机通过局域网连接; .4.3设备E1,…,Ek,...,Em并行进行手势识别,k取值为区间[l,m]中的整数,Ek进行手势识别的过程是: .4.3.1 以四元组定义隔空手势参数 AirParak= (Shape,AirValue [],AirTrend[],AirTrace []),将 AirParak.Shape 的值简记为 ks,数组 AirValue []、AirTrend []和AirTrace[]的长度为Pnumks;以五元组定义隔空手势识别结论AirResult k= (Shape,AirPara, AirValue,AirTrend, AirTrace),将识别出的手势编号记为AirGestk;以四元组定义传输结论 TranResultk= (k,ParaNum, AirGest k, TransTime),其中参数数量 ParaNum指得到的形状参数的数量,TransTime指向主机发送传输结论时的系统时间,将AirParak、AirResultk和TranResult k的所有元素置空; .4.3.2Ek运行专属的驱动程序,捕捉手部数据,输出手势参数,写入AirParak,若AirValue[]、AirTrend[]、AirTrace[]中的元素没有输出值,则维持空值; .4.3.3对隔空手势参数进行识别,得到识别出的手势编号AirGestk,方法是: .4.3.3.1令临时参数tempi = 0,将AirParak.AirTrace []中的非空元素数量写入ParaNum ; .4.3.3.2 若 AirParak.AirTrace [tempi]不为空,则将有序集合 APARAks的第 tempi 个元素写入 AirResultk.AirPara,令 AirResultk.AirTrace = AirParak.AirTrace [tempi],车专.4.3.3.10 ;否则令 tempi = templ+1 ;.4.3.3.3 若 templ〈Pnumks,转 4.3.3.2 ;否则,转 4.3.3.4 ; .4.3.3.4 令 tempi = 0,将 AirParak.AirTrend[]中的非空元素数量写入 ParaNum ; .4.3.3.5 若 AirParak.AirTrend[tempi]不为空,则将有序集合 APARAks的第 tempi 个元素写入 AirResultk.AirPara,令 AirResultk.AirTrend = AirParak.AirTrend[tempi],车专.4.3.3.10 ;否则令 tempi = templ+1 ;.4.3.3.6 若 templ〈Pnumks,转 4.3.3.5 ;否则,转 4.3.3.7 ; .4.3.3.7 令 tempi = O,将 AirParak.AirValue []中的非空元素数量写入 ParaNum ; .4.3.3.8 若 AirParak.AirValue [tempi]不为空,则将有序集合 APARAks的第 tempi 个元素写入 AirResultk.AirPara,令 AirResultk.AirValue = AirParak.AirValue [tempi],车专.4.3.3.10 ;否则令 tempi = templ+1 ;.4.3.3.9 若 templ〈Pnumks,转 4.3.3.8 ;否则,转 4.6 ; .4.3.3.10将识别结论AirResultk的取值与手势集Gk中的手势取值逐项对比,若五个元素的取值与Gk中某一个手势的五个对应参数取值完全相同,则将该手势的Aid值写入AirGestk,否则,转 4.6 ;.4.3.4 将 k,ParaNum,AirGestk, TransTime 四个值写入 TranResultk,将 TranResultk传输到主机; .4.4主机在E1,…,Em中确定对隔空手势操作进行响应的设备E act,下标act为对隔空手势操作进行响应的设备的编号,方法是: .4.4.1比较接收到的几组TranResultk的TransTime值,将TransTime值最小的TranResultk的 k 值写入 act ; .4.4.2主机向Eart发送信息,由其负责响应隔空手势操作; .4.5设备Eart将AirGest art传送给当前活动的应用程序,将该手势映射为设定的功能; .4.6结束。
2.根据权利要求1所述的一种面向多设备的手势交互方法,其特征在于:所属参数Sum取值为2+、3+、4+或5+,分别表示不少于2个、不少于3个、不少于4个或不少于5个。
3.根据权利要求1所述的一种面向多设备的手势交互方法,其特征在于:所述参数Trend中的Num部分取值Time或Second ;取值Time时,Mot1n取值Move,表示单点按下一小段时间后再沿着Direct1n方向移动;取值Second时,表示一点按下后不动,第二点接着按下并沿着Direct1n方向做Mot1n类型的运动。
4.根据权利要求1所述的一种面向多设备的手势交互方法,其特征在于:所述参数Trace取值为圆形、正方形、“V”形、“Z”形、“? ”形、“ X ”形、左半圆、右半圆、上半圆或下半圆。
5.根据权利要求1所述的一种面向多设备的手势交互方法,其特征在于:所述步骤 4.4.1为比较接收到的几组TranResultk的ParaNum值,若ParaNum值最大的TranResult k只有一个,则将ParaNum值最大的TranResultk的k值写入act ;若ParaNum值最大的TranResultk多于一个,比较ParaNum值最大的几个TranResult k的TransTime值,将TransTime 值最小的 TranResultk的 k 值写入 act。
【专利摘要】本发明公开了一种能够兼容多种交互设备的基于通用手势集的手势交互方法,包括:生成通用手势集,多设备进行手势集指定,应用程序进行手势映射,多设备进行手势识别。
【IPC分类】G06F3-01, G06F3-0488
【公开号】CN104615366
【申请号】CN201410852337
【发明人】凌云翔, 燕厚仪, 张国华, 李本先, 范林军, 张耀鸿
【申请人】中国人民解放军国防科学技术大学, 中国人民武装警察部队警官学院
【公开日】2015年5月13日
【申请日】2014年12月31日
当前第5页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1