手势识别的方法及系统的制作方法
【技术领域】
[0001] 本发明属于人机交互技术领域,尤其涉及一种手势识别的方法及系统。
【背景技术】
[0002] 随着信息技术的发展,人机交互活动逐渐成为人们日常生活中的一个重要组成部 分。鼠标、键盘、遥控器等传统的人机交互设备在使用的自然性和友好性方面都存在一定的 缺陷,因此用户迫切希望能通过一种自然而直观的人机交互模式来取代传统设备单一的基 于按键的输入和控制方式。
[0003] 现有基于手势识别的人机交互模式由于其自然性、直观性、简洁性等特点,被应用 的越来越广泛。然而,虽然现有基于手势识别的人机交互模式对特定的静态手势具有较高 的识别率,但是该手势识别只能在手势结束之后进行识别,影响了手势识别的实时性。
【发明内容】
[0004] 鉴于此,本发明实施例提供一种手势识别的方法及系统,以实现手势的实时识别, 并提尚手势识别的正确率。
[0005] 第一方面,本发明实施例提供了一种手势识别的方法,所述方法包括:
[0006] 当检测到手势起始坐标时,记录从所述手势起始坐标开始的运动轨迹信息;
[0007] 从所述运动轨迹信息中提取固定特征信息;
[0008] 通过预设的手势识别模型对所述固定特征信息进行识别,并输出识别结果;
[0009] 判断所述识别结果中是否存在错误识别的样本;
[0010] 若存在,从所述错误识别的样本中提取特定特征信息;
[0011] 通过所述预设的手势识别模型对所述特定特征信息进行识别,并输出识别结果。
[0012] 第二方面,本发明实施例提供了一种手势识别的系统,所述系统包括:
[0013] 手势数据采集模块,用于当检测到手势起始坐标时,记录从所述手势起始坐标开 始的运动轨迹信息;
[0014] 固定特征提取模块,用于从所述运动轨迹信息中提取固定特征信息;
[0015] 第一识别模块,用于通过预设的手势识别模型对所述固定特征信息进行识别,并 输出识别结果;
[0016] 判断模块,用于判断所述识别结果中是否存在错误识别的样本;
[0017] 特定特征提取模块,用于在所述判断模块判断结果为是时,从所述错误识别的样 本中提取特定特征信息;
[0018] 第二识别模块,用于通过所述预设的手势识别模型对所述特定特征信息进行识 另IJ,并输出识别结果。
[0019] 本发明实施例与现有技术相比存在的有益效果是:本发明实施例通过采集手势数 据,提取固定特征信息以及特定特征信息,通过手势识别模型对所述固定特征信息以及特 定特征信息进行识别,获得识别结果。由于所述手势识别模型可根据所述固定特征信息以 及特定特征信息识别手势,从而不需要手势完成后再进行识别,实现了手势识别的实时性。 另外,在第一次识别后,通过检测错误样本,提取错误样本中的特定特征信息以及对所述特 定特征信息进行二次识别,可有效改进现有手势误识别的问题,极大的提高手势识别的正 确率,具有较强的易用性和实用性。
【附图说明】
[0020] 为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述 中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些 实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些 附图获得其他的附图。
[0021] 图1是本发明实施例提供的手势识别方法的实现流程示意图;
[0022] 图2是本发明实施例提供的建立三维坐标系的示意图;
[0023] 图3是本发明实施例提供的计算方向角的示意图;
[0024] 图4是本发明实施例提供的手势区域划分的示例图;
[0025] 图5是本发明实施例提供的手势识别系统的组成结构示意图。
【具体实施方式】
[0026] 以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具 体细节,以便透切理解本发明实施例。然而,本领域的技术人员应当清楚,在没有这些具体 细节的其它实施例中也可以实现本发明。在其它情况中,省略对众所周知的系统、装置、电 路以及方法的详细说明,以免不必要的细节妨碍本发明的描述。
[0027] 为了说明本发明所述的技术方案,下面通过具体实施例来进行说明。
[0028] 请参阅图1,为本发明实施例提供的手势识别方法的实现流程,该手势识别方法可 适用于各类终端设备,如个人计算机、平板电脑、手机等。该手势识别方法主要包括以下步 骤:
[0029] 步骤S101,当检测到手势起始坐标时,记录从所述手势起始坐标开始的运动轨迹 信息。
[0030] 在本发明实施例中,检测手势起始坐标之前,需要建立与图像输入设备平行的三 维坐标系。如图2所示,以图像输入设备的中心为原点,图像输入设备所在的平面为XY(即 Z = 0)平面。其中,X轴平行于图像输入设备的长边且指向屏幕正方向的右方,Y轴平行于 图像输入设备短边且指向屏幕正方向的上方,Z轴垂直于XY平面且指向远离屏幕的方向。 通过建立好的三维坐标系记录手势的运动轨迹信息。所述运动轨迹信息包括运动方向、运 动速度、运动轨迹坐标等。
[0031] 进一步的,本发明实施例还包括:
[0032] 设置采样频率(如每秒钟采集15次),当检测到手势的X、Y、Z坐标低于某特定值 (在图像输入设备的检测范围内)且手势的运动速度从零连续变化到某一阈值时,将运动 速度为零或者所述某一阈值时的运动轨迹坐标作为所述起始坐标。当手势的运动速度由另 一阈值连续变化到零时,将该运动速度为零时的运动轨迹坐标作为所述终止坐标,即手势 结束,停止数据采集,由此分割出一次完整的手势。
[0033] 另外,需要说明的是,本发明实施例中完成手势的媒介可以是人身体的一部分 (例如,手),也可以特定形状的工具,例如制成手掌形状的引导棒或者带有传感器的手套 等,在此不做限制。
[0034] 在步骤S102中,从所述运动轨迹信息中提取固定特征信息。
[0035] 具体的可以是,根据第一预设时间间隔,计算所述运动轨迹信息中相邻运动轨迹 坐标之间的方向角;
[0036] 按照预设的方向角范围与编码值的对应关系,对计算获得的所述方向角进行编码 获得编码值;
[0037] 将获得的所述编码值进行组合后获得所述固定特征信息。
[0038] 在本发明实施例中,所述方向角由相邻两时刻的坐标向量与X正轴按逆时针方向 所组成的角表示,如图3所示。由于每个手势都有一个主要的运动平面,这里默认为X0Y平 面,为了表达方便,将所有手势的运动轨迹信息投影到X0Y平面,则相邻两时刻的采样点位 置分别为Pt (Xt,Yt,0)和Pt+1 (Xt+1,Yt+1,0),设方向角为0 t,则0亦计算过程如下:
[0040] 由计算过程可知,9 tG [0, 360),然后对方向角进行量化编码,将[0, 360)均分为 8份,即[0, 45)编码为1,[45, 90)编码为2, [90, 135)编码为3,以此类推,[315, 360)编码 为8。因此每个手势都可以用1至8的数字编码构成,并将所述数字编码按顺序组合后作为 手势的固定特征信息输入到手势识别模型中进行训练。
[0041] 在步骤S103中,通过预设的手势识别模型对所述固定特征信息进行识别,并输出 识别结果。
[0042] 在本发明实施例中,所述预设的手势识别模型可以为隐马尔科夫模型,所述隐马 尔可夫模型由模型的隐状态数、观测值数、状态转移概率矩阵、观测概率矩阵、初始状态概 率矩阵和持续时间六个参数确定。
[0043] 示例性的,可以将采集的0~9的数字手势和A~Z的字母手势作为样本集,每个 手势取其中60%的数据用于模型训练(即取60%的数据