一种手势识别方法及系统转让专利
申请号 : CN202110540651.X
文献号 : CN113064545B
文献日 : 2022-04-29
发明人 : 史元春 , 喻纯 , 杨欢
申请人 : 清华大学
摘要 :
权利要求 :
1.一种手势识别方法,其特征在于,所述方法包括:获取用户用于操作屏幕的待识别手势的第一手势数据,所述第一手势数据包括:构成所述待识别手势的至少一根手指在所述屏幕上操作时采集得到的触控点ID编号、至少一个操作事件类型和至少一组定位信息,所述定位信息包括:横坐标、纵坐标和采集到所述操作事件类型的时间戳,每个所述操作事件类型对应一组所述定位信息;
对所述第一手势数据进行预处理,至少得到所述待识别手势的触控点ID编号的ID数量、每个触控点ID编号对应的布尔值和每个触控点ID编号对应的数据点集向量,所述数据点集向量由所述操作事件类型和所述定位信息构成;
利用所述待识别手势的触控点ID编号的ID数量、每个触控点ID编号对应的布尔值和每个触控点ID编号对应的数据点集向量,从预设的手势库中确定与所述待识别手势相匹配的样本手势,并将其作为所述待识别手势的最终识别结果,其中,所述手势库中包含预设的多个样本手势和每个样本手势对应的经过所述预处理的第二手势数据。
2.根据权利要求1所述的方法,其特征在于,所述对所述第一手势数据进行预处理,至少得到所述待识别手势的触控点ID编号的ID数量、每个触控点ID编号对应的布尔值和每个触控点ID编号对应的数据点集向量,包括:确定所述待识别手势的触控点ID编号的ID数量,所述ID数量与构成所述待识别手势的手指数量一致;
确定所述待识别手势的每个触控点ID编号对应的数据点集,所述数据点集包含至少一个操作事件类型和至少一组定位信息,所述数据点集中的数据按时间戳由前至后的时间顺序排列;
针对所述待识别手势的每个触控点ID编号,基于所述触控点ID编号的数据点集中的时间戳,判断所述触控点ID编号的数据点集中最后预设时长的横坐标和纵坐标是否发生变化,并根据判断结果确定所述触控点ID编号对应的布尔值;
针对所述待识别手势的每个触控点ID编号,将所述触控点ID编号对应的数据点集转化为向量,得到对应的数据点集向量。
3.根据权利要求1所述的方法,其特征在于,所述利用所述待识别手势的触控点ID编号的ID数量、每个触控点ID编号对应的布尔值和每个触控点ID编号对应的数据点集向量,从预设的手势库中确定与所述待识别手势相匹配的样本手势,并将其作为所述待识别手势的最终识别结果,包括:
从预设的手势库中,确定触控点ID编号的ID数量与所述待识别手势相同,且各触控点ID编号的布尔值与所述待识别手势相同的至少一个第一样本手势;
针对每一个所述第一样本手势,计算所述待识别手势和所述第一样本手势的数据点集向量之间的相似度;
确定所述相似度最小且在阈值范围内的所述第一样本手势为第二样本手势,将所述第二样本手势作为所述待识别手势的最终识别结果。
4.根据权利要求1所述的方法,其特征在于,构建所述手势库的过程,包括:获取多个样本手势,及获取每个所述样本手势对应的第二手势数据;
针对每个所述样本手势,对所述样本手势的第二手势数据进行预处理,得到所述样本手势的触控点ID编号的ID数量、每个触控点ID编号对应的布尔值和每个触控点ID编号对应的数据点集向量;
针对每个所述样本手势,将所述样本手势的触控点ID编号的ID数量、每个触控点ID编号对应的布尔值和每个触控点ID编号对应的数据点集向量存储至手势库中。
5.根据权利要求2所述的方法,其特征在于,所述针对所述待识别手势的每个触控点ID编号,将所述触控点ID编号对应的数据点集转化为向量,得到对应的数据点集向量,包括:针对所述待识别手势的每个触控点ID编号,将所述触控点ID编号对应的数据点集进行L2范数归一化,得到对应的数据点集向量。
6.根据权利要求3所述的方法,其特征在于,所述针对每一个所述第一样本手势,计算所述待识别手势和所述第一样本手势的数据点集向量之间的相似度,包括:针对每一个所述第一样本手势,计算所述待识别手势和所述第一样本手势的数据点集向量之间的余弦距离或欧式距离,将其作为所述待识别手势和所述第一样本手势的数据点集向量之间的相似度。
7.一种手势识别系统,其特征在于,所述系统包括:获取单元,用于获取用户用于操作屏幕的待识别手势的第一手势数据,所述第一手势数据包括:构成所述待识别手势的至少一根手指在所述屏幕上操作时采集得到的触控点ID编号、至少一个操作事件类型和至少一组定位信息,所述定位信息包括:横坐标、纵坐标和采集到所述操作事件类型的时间戳,每个所述操作事件类型对应一组所述定位信息;
预处理单元,用于对所述第一手势数据进行预处理,至少得到所述待识别手势的触控点ID编号的ID数量、每个触控点ID编号对应的布尔值和每个触控点ID编号对应的数据点集向量,所述数据点集向量由所述操作事件类型和所述定位信息构成;
匹配单元,用于利用所述待识别手势的触控点ID编号的ID数量、每个触控点ID编号对应的布尔值和每个触控点ID编号对应的数据点集向量,从预设的手势库中确定与所述待识别手势相匹配的样本手势,并将其作为所述待识别手势的最终识别结果,其中,所述手势库中包含预设的多个样本手势和每个样本手势对应的经过所述预处理的第二手势数据。
8.根据权利要求7所述的系统,其特征在于,所述预处理单元包括:第一确定模块,用于确定所述待识别手势的触控点ID编号的ID数量,所述ID数量与构成所述待识别手势的手指数量一致;
第二确定模块,用于确定所述待识别手势的每个触控点ID编号对应的数据点集,所述数据点集包含至少一个操作事件类型和至少一组定位信息,所述数据点集中的数据按时间戳由前至后的时间顺序排列;
处理模块,用于针对所述待识别手势的每个触控点ID编号,基于所述触控点ID编号的数据点集中的时间戳,判断所述触控点ID编号的数据点集中最后预设时长的横坐标和纵坐标是否发生变化,并根据判断结果确定所述触控点ID编号对应的布尔值;
转化模块,用于针对所述待识别手势的每个触控点ID编号,将所述触控点ID编号对应的数据点集转化为向量,得到对应的数据点集向量。
9.根据权利要求7所述的系统,其特征在于,所述匹配单元包括:第一确定模块,用于从预设的手势库中,确定触控点ID编号的ID数量与所述待识别手势相同,且各触控点ID编号的布尔值与所述待识别手势相同的至少一个第一样本手势;
计算模块,用于针对每一个所述第一样本手势,计算所述待识别手势和所述第一样本手势的数据点集向量之间的相似度;
第二确定模块,用于确定所述相似度最小且在阈值范围内的所述第一样本手势为第二样本手势,将所述第二样本手势作为所述待识别手势的最终识别结果。
10.根据权利要求8所述的系统,其特征在于,所述转化模块具体用于:针对所述待识别手势的每个触控点ID编号,将所述触控点ID编号对应的数据点集进行L2范数归一化,得到对应的数据点集向量。
说明书 :
一种手势识别方法及系统
技术领域
背景技术
智能终端时所使用的手势也越来越多样化。因此,为保证用户的使用体验,如何准确的识别
多样化的手势是目前亟需待解决的问题。
发明内容
一个操作事件类型和至少一组定位信息,所述定位信息包括:横坐标、纵坐标和采集到所述
操作事件类型的时间戳,每个所述操作事件类型对应一组所述定位信息;
据点集向量由所述操作事件类型和所述定位信息构成;
配的样本手势,并将其作为所述待识别手势的最终识别结果,其中,所述手势库中包含预设
的多个样本手势和每个样本手势对应的经过所述预处理的第二手势数据。
向量,包括:
间顺序排列;
变化,并根据判断结果确定所述触控点ID编号对应的布尔值;
识别手势相匹配的样本手势,并将其作为所述待识别手势的最终识别结果,包括:
对应的数据点集向量;
据点集向量之间的相似度。
点ID编号、至少一个操作事件类型和至少一组定位信息,所述定位信息包括:横坐标、纵坐
标和采集到所述操作事件类型的时间戳,每个所述操作事件类型对应一组所述定位信息;
点集向量,所述数据点集向量由所述操作事件类型和所述定位信息构成;
待识别手势相匹配的样本手势,并将其作为所述待识别手势的最终识别结果,其中,所述手
势库中包含预设的多个样本手势和每个样本手势对应的经过所述预处理的第二手势数据。
时间戳由前至后的时间顺序排列;
纵坐标是否发生变化,并根据判断结果确定所述触控点ID编号对应的布尔值;
势;
手势的触控点ID编号的ID数量、每个触控点ID编号对应的布尔值和每个触控点ID编号对应
的数据点集向量;利用待识别手势的触控点ID编号的ID数量、每个触控点ID编号对应的布
尔值和每个触控点ID编号对应的数据点集向量,从预设的手势库中确定与待识别手势相匹
配的样本手势,并将其作为待识别手势的最终识别结果。本方案中,预先构建包含多个样本
手势和样本手势对应的第二手势数据的手势库。利用待识别手势的触控点ID编号及其相关
数据,从手势库中确定与待识别手势相匹配的样本手势作为最终识别结果,以实现准确识
别多样化的手势,进而提高用户的使用体验。
附图说明
发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据
提供的附图获得其他的附图。
具体实施方式
本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他
实施例,都属于本发明保护的范围。
明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没
有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过
程、方法、物品或者设备中还存在另外的相同要素。
户在操作智能终端时所使用的手势也越来越多样化。因此如何准确的识别多样化的手势是
目前亟需待解决的问题。
手势库中确定与待识别手势相匹配的样本手势作为最终识别结果,以实现准确识别多样化
的手势。
控点。具体而言,一次完整的手势的起始为屏幕上第一个触控点落下,终止为屏幕上最后一
个触控点离开后延迟指定时长(例如100ms),若该指定时长内无新的触控点在屏幕上产生,
则为一次手势终止。
下‑>第一个触控点离开‑>100ms内新的触控点落下‑>新的触控点离开。
就是说,当前有N根手指与屏幕接触,则该屏幕上会有N个触控点。
用户通过双指操作屏幕时,屏幕上存在2个触控点,该2个触控点的触控点ID编号分别为1和
2(此处的编号形式仅仅用于举例)。
点ID编号分别为1、2和3,则触控点ID编号的ID数量为3,触控点ID编号1、2和3分别对应用户
的3根手指。
标和采集到操作事件类型的时间戳,每个操作事件类型对应一组定位信息。
至少一组定位信息。
手指离开或手指滑动等,一个触控点ID编号可采集到多个操作事件类型。
的时间即为该操作事件类型的时间戳。
ID编号(用于指示哪根手指)、横坐标、纵坐标、时间戳和操作事件类型。在一次手势中,会连
续多次采集上述提及的操作事件的相关信息,通过所采集到的相关信息构成该手势的手势
数据。
坐标、纵坐标和时间戳。
能相同,但该任意两点之间的操作事件类型、横坐标、纵坐标和时间戳中的任意一项或多项
可能不同。
操作事件类型为触控点离开,其余点的操作事件类型为触控点滑动,各个点的横坐标、纵坐
标和时间戳指示操作事件在屏幕上的位置和发生时间。
手势的手势数据可以看作触控点ID编号为1的单指滑动数据点集和触控点ID编号为2的单
指滑动数据点集交错组合在一起构成的。
由各触控点ID编号对应的数据点集交错组合在一起构成的。
的布尔值,及将触控点ID编号对应的数据点集转化为向量得到对应的数据点集向量,即数
据点集向量由操作事件类型和定位信息构成。
尔值,可反映该触控点ID编号对应的手指是否在屏幕上停顿,当该触控点ID编号对应的布
尔值为TRUE时表示对应的手指不在屏幕上停顿,当该触控点ID编号对应的布尔值为FALSE
时表示对应的手指在屏幕上停顿。
ID1所对应的操作事件类型的总数量;
事件类型的总数量。
匹配的样本手势,并将其作为待识别手势的最终识别结果。
预处理的第二手势数据,构建手势库。
得到该样本手势的触控点ID编号的ID数量、每个触控点ID编号对应的布尔值和每个触控点
ID编号对应的数据点集向量;针对每个样本手势,将该样本手势的触控点ID编号的ID数量、
每个触控点ID编号对应的布尔值和每个触控点ID编号对应的数据点集向量存储至手势库
中。
势。
中,确定各触控点ID编号的布尔值与待识别手势相同的至少一个第一样本手势。即对于每
一个第一样本手势,该第一样本手势的ID数量与待识别手势的ID数量相同,且该第一样本
手势的各触控点ID编号的布尔值与该待识别手势相同(即第一样本手势和待识别手势之间
相同编号的触控点ID编号所对应的布尔值相同)。
势的数据点集向量之间的余弦距离或欧式距离,将其(余弦距离或欧式距离)作为待识别手
势和该第一样本手势的数据点集向量之间的相似度。
编号相同的数据点集向量之间的相似度,得到多个相似度,将多个相似度进行求平均计算
(也可按照权重计算的方式)所得到的值作为待识别手势和该第一样本手势之间的相似度。
识别手势的最终识别结果。
相匹配的样本手势作为最终识别结果,以实现准确识别多样化的手势,进而提高用户的使
用体验。
骤:
个手指所执行的操作事件对应的操作事件类型和定位信息混合在一起。
和定位信息进行分类,从而确定每个触控点ID编号对应的数据点集(也就是操作事件类型
和对应的定位信息)。
作事件类型和定位信息,及确定ID2对应的操作事件类型和定位信息。
化,并根据判断结果确定触控点ID编号对应的布尔值。
确定触控点ID编号对应的布尔值。
为TRUE;若该触控点ID编号的数据点集中最后预设时长的横坐标和纵坐标均未发生变化,
确定该触控点ID编号对应的布尔值为FALSE。
戳)对应的横坐标和纵坐标,逐一将每个待比较时间戳与最后一个时间戳的坐标进行比较
(横坐标与横坐标比较,纵坐标与纵坐标比较);如果任意一个待比较时间戳与最后一个时
间戳的坐标不同(横坐标和/或纵坐标不同),则确定该触控点ID编号的数据点集中最后预
设时长的横坐标和/或纵坐标发生变化;如果所有待比较时间戳与最后一个时间戳的坐标
相同,则确定该触控点ID编号的数据点集中最后预设时长的横坐标和纵坐标均未发生变
化。
坐标,逐一将每个待比较时间戳与最后一个时间戳的坐标进行比较。
到该触控点ID编号对应的数据点集向量。
述步骤S301至步骤S304,在此不再进行赘述。
利用所得到的相关数据,从手势库中确定与待识别手势相匹配的样本手势作为最终识别结
果,以实现准确识别多样化的手势,进而提高用户的使用体验。
和匹配单元403;
号、至少一个操作事件类型和至少一组定位信息,定位信息包括:横坐标、纵坐标和采集到
操作事件类型的时间戳,每个操作事件类型对应一组定位信息。
量,数据点集向量由操作事件类型和定位信息构成。
手势相匹配的样本手势,并将其作为待识别手势的最终识别结果,其中,手势库中包含预设
的多个样本手势和每个样本手势对应的经过预处理的第二手势数据。
处理,得到样本手势的触控点ID编号的ID数量、每个触控点ID编号对应的布尔值和每个触
控点ID编号对应的数据点集向量;针对每个样本手势,将样本手势的触控点ID编号的ID数
量、每个触控点ID编号对应的布尔值和每个触控点ID编号对应的数据点集向量存储至手势
库中。
相匹配的样本手势作为最终识别结果,以实现准确识别多样化的手势,进而提高用户的使
用体验。
后的时间顺序排列。
生变化,并根据判断结果确定触控点ID编号对应的布尔值。
利用所得到的相关数据,从手势库中确定与待识别手势相匹配的样本手势作为最终识别结
果,以实现准确识别多样化的手势,进而提高用户的使用体验。
本手势的数据点集向量之间的相似度。
相关数据,从手势库中确定与待识别手势相匹配的样本手势作为最终识别结果,以实现准
确识别多样化的手势,进而提高用户的使用体验。
系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法
实施例的部分说明即可。以上所描述的系统及系统实施例仅仅是示意性的,其中所述作为
分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或
者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根
据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术
人员在不付出创造性劳动的情况下,即可以理解并实施。
软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些
功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业
技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应
认为超出本发明的范围。
一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明
将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一
致的最宽的范围。