本发明专利技术公开了一种支持用户自定义手势的多点触控应用程序开发方法,采用能够返回触点的二维坐标点数据的多点触控设备,设置一提供给开发者用于实现多点触控应用程序开发的工具箱,工具箱中包含手势标识注册模块、手势定义模块、手势导向模块以及手势描述和识别模块;开发者使用手势标识注册模块注册手势标识和配置手势状态;按照已配置的手势状态实现手势响应操作;使用手势定义模块为用户提供手势定义视图,由用户完成手势定义并将手势标识与已定义手势之间进行映射。本发明专利技术可以让开发者方便快捷的开发出多点触控应用程序,并能够让用户依据自己的习惯来定义手势;所提供的工具箱界面友好,交互性能强,体现了更加人性化、个性化的设计思想。
【技术实现步骤摘要】
本专利技术涉及多点触控设备,尤其涉及ー种支持用户自定义手势的多点触控应用程序开发方法。
技术介绍
在本领域中,多点触控设备是 已知的。多点触控设备能够在同一时刻能够检测到多个触点的设备,改变了单点触控环境下由手指点击的单一交互操作,使得用户可以同时用多个手指画出轨迹并映射到操作指令完成手势交互或者是多个用户之间的协同手势交互;这种“以用户为中心”自然高效的交互技术已经应用于众多领域,例如电子沙盘、电子指挥所、会议协同讨论、电子游戏、辅助教育等。目前基于多点触控的手势应用与研究,可以总结为三方面;其一,研究多点触控技术的具体实现原理,不同物理设备平台上的触点检测与追踪、触点空间位置的定位以及触点状态的检测,如按下、移动和释放状态;其ニ、与多点触控技术实现原理无关,而是借助于多点触控设备进行手势相关研究,手势描述与手势识别的方法与框架;其三,从人类エ效学角度提出多点手势和协同手势的设计规则。基于计算机视觉和模式识别的姿态识别方法研究中,将姿态分为静态姿势和动态姿势,姿态识别的对象可分为头部、脸部、眼睛、手部、身体等;并讨论适合某种姿势的识别方法,静态姿势识别方法一般分为模板匹配、模式识别以及神经网络的方法;动态姿势识别的方法一般分为基于压缩时间轴、基于动态时间规整、基于隐马尔可夫模型以及延时神经网络方法。以上所述方法中,多数应用于基于计算机视觉的手势识别中,且需要为手势的定义提供大量样本用以训练分类器;一旦有新的手势加入吋,需要提供大量的手势训练样本,此类方法使得手势扩展增加负担;此外,基于这种方法所定义的手势不能够由终端用户来指定,終端用户需要对手势操作进行学习和记忆,无法体现以用户为中心的人机交互理念。
技术实现思路
本专利技术是为避免上述现有技术所存在的不足之处,提供ー种支持用户自定义手势的多点触控应用程序开发方法,以使得开发者能够方便快捷地开发出多点触控应用程序;井能够让用户依据自己的习惯来定义手势,所提供的工具箱界面友好,交互性能强,体现了更加人性化、个性化的设计思想。本专利技术为解决技术问题采用如下技术方案本专利技术支持用户自定义手势的多点触控应用程序开发方法,采用支持多点触控的设备,所述多点触控设备能够返回触点的ニ维坐标点数据,其特征是设置ー提供给开发者用于实现多点触控应用程序开发的工具箱,所述工具箱中包含手势标识注册模块、手势定义模块、手势导向模块以及手势描述和识别模块;开发者按照以下步骤使用工具箱实现多点触控应用程序实例开发a)开发者在多点触控应用程序实例中使用所述手势标识注册模块注册手势标识和配置手势状态;按照已配置的手势状态实现手势响应操作; b)开发者在多点触控应用程序实例中使用所述手势定义模块为用户提供手势定义视图;由用户完成手势定义并将手势标识与已定义手势之间进行映射,可以将多个定义的手势映射到同一个手势标识,但不可将ー个定义的手势映射到多个手势标识;手势导向模块为用户定义手势提供消解ニ义性手势界面,导向用户定义出无ニ义性的手势。2、在所述手势描述和识别模块中,手势是由ー个或ー个以上元手势之间按照时序逻辑和空间位置逻辑约束组合而成;手势描述是由手势轨迹的形状特征、方向特征、时序逻辑特征和空间位置特征来表征;手势识别是由元手势个数相似度、形状相似度、方向相似度、时序逻辑和空间位置相似度匹配測度来衡量。3、所述元手势是不可再被分解的手势,按如下步骤获取元手势a)手势定义模块采集多点触控设备返回的触点空间位置ニ维坐标点数据,如果当前有多条轨迹,则判断各轨迹间的彼此时间间隔是否小于设定阈值,若时间间隔小于设定阈值,则视为有效数据;否则丢弃数据,并通知用户当前操作无效;b)利用关键轨迹点选取算法对步骤a)获得的有效数据进行重新采样,获得采样数据;c)对步骤b)得到的采样数据提取手势轨迹的形状特征和方向特征,从而获取元手势。4、所述手势轨迹的形状特征、方向特征、时序逻辑特征和空间位置特征分别为a)形状特征将元手势轨迹分为点、直线和曲线,计算点的尺寸大小、直线的斜率和曲线的曲率參数,以及元手势轨迹的长度作为形状特征的特征值;b)方向特征方向特征集合形式化描述为丨/>i+1-只I/ == (U.)},其中,Pi为元手势轨迹的相邻关键轨迹点;c)时序逻辑特征按照元手势之间的先后时序关系,限定为先后发生、同时发生或交叠发生的时序逻辑特征,时序逻辑描述为元手势i先于元手势j发生,即priority (Gi, Gj) = Ei彡Sj ;元手势i和元手势j同时发生;即chorus (Gi, Gj) = Si = Sj ;元手势i和元手势j交叠发生;即overlaps (Gi, Gj) = Si < Sj < Ei ;其中,Si和Ei分别为元手势i的起始和终止时间和分别为元手势j的起始和终止时间;d)空间位置特征是指时间序列相邻的元手势i和元手势j之间存在的空间位置关系;所述空间位置关系限定为相对于手势中心点的上下左右四个位置;其手势中心点通过计算手势所包含元手势坐标的中心的算木平均值而获得。与已有技术相比,本专利技术有益效果体现在I、本专利技术減少了多点触控应用程序开发者的工作量,提高开发效率,开发者无需负担手势定义与识别的工作,只需要为终端用户提供手势定义视图,同时为多点触控应用程序注册手势标识,配置手势状态以及实现手势响应操作;2、本专利技术降低用户的对大量手势的记忆难度,体现了以用户为中心的设计思想,为终端用户提供个性化定制手势接ロ,引导用户完成个性的手势定义操作,从而使得用户不需要对各种手势进行学习和记忆;3、本专利技术所提供的工具箱界面友好,交互性能好,可操作性強,同时也为日后程序的二次开发和手势扩展带来便捷,避免了在开发过程中需要大量手势训练样本用以识别各种手势的繁琐步骤。附图说明图I是本专利技术工具箱框架图;图2是旋转手势定义示例;具体实施方式 采用支持多点触控的设备PQLabs,该设备能够返回触点的ニ维坐标点数据,屏幕尺寸为42英寸,响应时间为7ms-12ms。设置ー提供给开发者用于实现多点触控应用程序开发的工具箱,工具箱框架如图I所示,分为三层,即手势抽象层、应用程序层和用户交互层,分别对应手势描述和识别模块、手势注册模块、手势定义模块及手势导向模块。手势抽象层主要提供手势描述与识别的方法;应用程序层主要提供给开发者注册手势标识和配置手势状态;用户交互层提供给用户对手势的定义并导向用户定义出无ニ义性的手势。本实施例中开发者按照以下步骤使用工具箱实现多点触控应用程序实例开发I、开发者使用手势标识注册模块注册手势标识和配置手势状态,按照已配置的手势状态实现手势响应操作;2、开发者使用手势定义模块为用户提供手势定义视图,由用户完成手势定义并将手势标识与已定义手势之间进行映射,可以将多个定义的手势映射到同一个手势标识,但不可将ー个定义的手势映射到多个手势标识;手势导向模块为用户定义手势提供消解ニ义性手势界面,导向用户定义出无ニ义性的手势。具体实施中,相应的设置也包括在手势描述和识别模块中,手势是由ー个或ー个以上元手势之间按照时序逻辑和空间位置逻辑约束组合而成;手势描述是由手势轨迹的形状特征、方向特征、时序逻辑特征和空间位置特征来表征;手势识别是由元手势个数相似度、形状相似度、方向相似度、时序逻辑相似本文档来自技高网...
【技术保护点】
【技术特征摘要】
【专利技术属性】
技术研发人员:刘晓平,李琳,张光刘,陆劲挺,谢文军,
申请(专利权)人:合肥工业大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。