基于细分特征值法的快速三维动态手势识别方法及系统的制作方法

文档序号:10569522阅读:385来源:国知局
基于细分特征值法的快速三维动态手势识别方法及系统的制作方法
【专利摘要】基于细分特征值法的快速三维动态手势识别方法及系统,针对现有技术中存在的问题,本发明设计了一个外观小巧的硬件平台,用加速度计来采集用户手势的3轴加速度,陀螺仪来采集用户手势的3轴角速度,磁力计来采集用户手势的3轴磁感应强度,使用滤波算法来消除数据误差之后再进行姿态解算,求出实时的三个姿态角(航向角、横滚角、俯仰角),然后将这些信息数据通过本发明所提出的特征分析算法,在确保一定的精确度和实时性的基础上,分别对移动、旋转、打钩、画叉、晃动、敲击等自身具有一定区分度的三维动态手势进行识别,从而实现相应的应用。
【专利说明】
基于细分特征值法的快速三维动态手势识别方法及系统
技术领域
[0001] 本发明属于人机交互技术领域,尤其涉及一种动态手势识别方法及系统。
【背景技术】
[0002] 人工智能的发展促使着与其相关的应用层出不穷,其中作为人工智能的重要内 容一一人机交互技术,也受到越来越多的关注。人机交互研究的是人类如何与机器进行沟 通,从而控制机器,自如地实现人们所希望的功能。过去传统的人机交互方式有按键、键盘、 触摸屏和语音技术等。但上述方式都在效率、准确性、自然性上存在诸多局限,这也使得人 们开始寻找效率更高、交互更加自然的方式。
[0003] 现有的人机交互技术存在以下缺点:
[0004] (1)机械键盘交互是最成熟,但同时也是最低效的交互方式,因其成本、损耗、低效 等各种原因,正在被移动设备慢慢淘汰;
[0005] (2)触摸屏操作作为近几年新兴的人机交互方式,以其操作简洁、符合用户习惯、 学习成本低、可多点触控等优点,成为新一代移动设备有效的交互方式。但是,触控技术不 可避免的需要用户在触模板上进行操作,限制了触控技术的应用场景和范围。
[0006] (3)语音识别目前也是一种非常成熟的交互方式,识别率较高,尤其是随着iPhone 中Siri的出现,基于自然语音的识别技术使得语音交互方式迈上了一个新的台阶。然而,语 音交互方式会受到地区语言差异以及个人语音差异的影响,同时,自然语音识别需要时刻 联网、能耗高的缺点,大大限制了语音技术在可穿戴设备中的应用。
[0007] 随着各方面技术的进步,人们希望得到更好的人机交互体验,对交互的实时性、识 别率等硬性指标的要求也越来越苛刻,甚至开始希望通过一些自身的微小信息,例如手指 信息、声波信息、眼珠信息、脑电波信息、肌肉信息等来实现与机器的沟通。这促使许多专家 学者不断地寻找挖掘更便捷、更快速、更准确、更自然的人机交互方式,并开始关注利用人 类自身的身体语言来实现机器控制,而其中手势作为变化方式最多、最能够表达人们意愿 的方式之一,成为了关注的重点。在脑电波控制世界的时代来临之前,手势是最有可能改变 传统人机交互方式的研究切入点。因为手势是身体姿态最多变、最具有表达性的一项,它可 以最大可能地表达人们的想法和意愿。不通过任何媒介,直接利用一个简单的手势动作就 可以操控生活,是目前人们所追求的理想人机交互方式。这种全新的操作方式,使得人类在 这个物物相连的互联智能时代,真正实现用自己的手来掌控自己的生活。手势也会将人机 交互方式从传统的平面二维识别技术扩展到了空间三维识别技术,实现更多技术发展的可 能性。本发明所要做的三维动态手势识别技术,搭配一个集成了三轴加速度计、三轴陀螺 仪、磁力计、处理芯片和低功耗蓝牙的微型硬件平台,来与PC端或其他终端实现友好的人机 交互方式。
[0008] 手势识别技术的发展过程中产生过几种主流的解决方案,例如:基于数据手套的 方案:起步最早,也是最直接处理问题的一种方案。该方案具有数据量小、速度高、受环境影 响较小和能够直接获取手势数据等诸多优点。但是要求用户穿戴复杂的手套,大大降低了 用户体验,并且对附着其上的传感器披覆较高硬度的保护层在技术上有一定难度,而相对 脆弱的设备在携带上也存在不方便。基于机器视觉的处理方案:当前最热门的手势识别技 术解决方案,也就是摄像头图像处理,比如说微软的Kinect。最大的优点是用户无需佩戴任 何设备,人机交互性好。但是这种技术对于空间、环境有比较大的限制性,因此除了一些大 型的体感游戏使用,在生活中的推广度并不高。基于SEMG的方案:处在多学科交叉的领域, 除了和数据手套方案一样需要用户佩戴电极外,和机器视觉的方案类似,该方案也容易受 外部环境和用户等因素的干扰。外部环境的干扰包括电磁环境的干扰和环境湿度变化造成 的测量电极接触电阻的变化。同时,用户的身体和精神状态在不同的情况下具有不同的基 准值,导致系统难以标定。

【发明内容】

[0009] 为了解决现有技术中问题,本发明设计了一个外观小巧的硬件平台,用加速度计 采集用户手势的3轴加速度,陀螺仪来采集用户手势的3轴角速度,磁力计来采集用户手势 的3轴磁感应强度,使用滤波算法来消除数据误差之后再进行姿态解算,求出实时的三个姿 态角(航向角、横滚角、俯仰角),然后将这些信息数据通过本发明所提出的特征分析算法, 在确保一定的精确度和实时性的基础上,分别对移动、旋转、打钩、画叉、晃动、敲击等自身 具有一定区分度的三维动态手势进行识别,从而实现相应的应用。
[0010] 本发明通过如下技术方案实现:
[0011] -种基于细分特征值法的快速三维动态手势识别方法,其特征在于,所述方法将 手势定义为敲击类、旋转类、晃动类、移动类、打钩类、画叉类等六大类型,所述方法包括:
[0012] S1:采用差分法从所有读取到的原始数据中截取从手势的起点到终点的段落;
[0013] S2:对切割下来的数据段进行坐标系的转换,从机体坐标系转换到用户坐标系;
[0014] S3:计算变换后数据的手势长度、手势能量、波峰数、角速度能量最大轴、角速度单 边性,并利用这五个特征量来构造一个手势大类的预分类器,所述预分类器利用手势能量 来进行粗分类,利用波峰数来区分敲击类和移动类,利用角速度能量最大轴来识别旋转类, 利用线性判别函数计算细分值f来区分晃动类、打钩类、画叉类;线性判别函数为;
[0015] f = a*LEN+b*E+c*P+d,
[0016] 其中,LEN为手势长度,E为手势能量,P为加速度波峰数,a,b,c,d为常系数;
[0017] S4:进一步地进行手势细化分,识别出移动类和旋转类手势的运动方向。
[0018] 作为本发明的进一步改进,所述差分法进行手势切割具体为,在一个长度为N的窗 口内对加速度和角速度的两两时刻前后数值变化量求和得到经过平滑窗口处理后的加速 度和角速度差分值:
其中zr表时刻下的三轴加速度值,v、c表 示k时刻下的三轴角速度值;设定一个阈值,所述差分值超过了所述阈值的时间点是手势的 起点,在识别出起点后,若所述差分值出现了小于所述阈值了的时刻点是手势的终点;若加 速度和角速度分别检测出来的起点或终点时刻差值如果超过m个采样时间点,则认为该起 点或终点无效,反之则有效,其中,m为预设值。
[0021] 作为本发明的进一步改进,所述波峰数包括加速度波峰数、角速度波峰数和姿态 角波峰数。
[0022] 作为本发明的进一步改进,所述手势长度LEN为手势起点到终点的采样数;手势能 量E为起点到终点之间加速度和角速度绝对值之和;波峰数为每个手势动作的加速度或角 速度或者姿态角的波峰数;角速度单边性反映在某轴上的角速度呈现出单符号性,3个角速 度中只要其中一个满足单边性,就认为其整体角速度满足了单边性;角速度能量最大轴为 max(Ewx、Ewy、Ewz)所在的坐标轴,判断轴即为判断旋转轴,其中,角速度能量最大值E wx、Ewy、 Ewz 为:
[0024]其中,gxi,gyi,gzi为手势数据在x、y、z轴上的角速度。
[0025]作为本发明的进一步改进,所述预分类器具体为:当手势能量E小于预设的第一阈 值,则进行加速度波峰数判断,当加速度波峰数小于预设的第二阈值时,则将手势判断为敲 击类,否则,判断为移动类;当手势能量E大于或等于预设的第一阈值,则进行角速度能量最 大轴判断,若为Y轴,则将手势判断为旋转类,若不为Y轴,则进行细分特征值f的计算,若f大 于〇则进一步根据姿态波峰数和手势能量将手势识别为晃动类或画叉类,若f?小于或等于〇 则进一步判断角速度单边性,若角速度单边性为否,则将手势判断为打钩类。
[0026]作为本发明的进一步改进,所述步骤S4包括:对于移动类手势,首先通过判断x轴 和z轴加速度平均幅值谁更大来判断出上下还是左右移动,再根据具体的波峰波谷出现的 顺序来识别是具体的上、下、左、右。
[0027] 作为本发明的进一步改进,所述步骤S4包括:对于旋转类手势,观察y轴角速度波 峰波谷出现的先后顺序就能识别出用户当前是在顺时针旋转还是逆时针旋转,如果y轴角 速度先波谷后波峰,则是逆时针旋转,反过来先波峰后波谷则是顺时针旋转。
[0028] 作为本发明的进一步改进,所述步骤S4之前还包括对原始数据进行数据融合,再 进行姿态解算,求出实时的姿态角,所述数据融合算法为互补滤波或梯度下降法。
[0029]本发明还提供了一种基于细分特征值法的快速三维动态手势识别方法,所述手势 为用户根据自己的喜好定义的一系列的较复杂的手势序列,所述方法首先利用本发明的手 势识别方法识别出所述手势序列中的每一个手势,然后利用隐性马尔科夫模型HMM识别出 用户定义的手势序列。
[0030]本发明还提供了一种基于细分特征值法的快速三维动态手势识别系统,所述系统 包括手势识别的硬件平台和接收端;其中,所述手势识别的硬件平台作为手势数据的采集 设备,其包括3轴加速度计、3轴陀螺仪和3轴磁力计、MCU微处理器、蓝牙模块、锂电池充电电 路、锂电池以及电源开关;所述3轴加速度计测量加速度、3轴陀螺仪测量角速度和3轴磁力 计测量磁场,获得手势的原始数据;所述硬件平台通过无线通信的方式将采集到的原始数 据传送给所述接收端;所述接收端根据本发明的基于细分特征值法的快速三维动态手势识 别方法进行数据处理及手势识别。
【附图说明】
[0031] 图1是本发明的手势识别系统的硬件平台及PC接收端硬件框图;
[0032] 图2是本发明的手势识别方法的具体实现方案流程图;
[0033] 图3是机体坐标系b系和用户坐标系n系示意图;
[0034] 图4是手势长度计算流程图;
[0035]图5是手势预分类结构图;
[0036]图6是移动类手势细划分流程图;
[0037]图7是旋转类手势细划分流程图。
【具体实施方式】
[0038]下面结合【附图说明】及【具体实施方式】对本发明进一步说明。
[0039] 本发明的手势识别硬件平台及PC接收端硬件框图如附图1所示。手势识别硬件平 台外观精致小巧,不附加任何按键,可以手拿,也可以作为手环或者指环穿戴在手上,作为 智能可穿戴式设备来进行手势控制。其上集成了 9轴传感器模块(3轴加速度计测量加速度、 3轴陀螺仪测量角速度和3轴磁力计测量磁场)、MCU微处理器、蓝牙模块、锂电池充电电路、 锂电池以及电源开关等。通过锂电池给平台进行供电,当电量过低时使用MiniUsb接口给电 池进行充电。
[0040] 手势识别的硬件平台作为手势数据的采集设备,通过蓝牙通信的方式将采集到的 9轴传感器数据以及解算后的3轴姿态数据传送给接收端进行数据处理及手势识别。蓝牙通 信技术可以用别的无线通信技术来代替,例如RF,wifi等。接收端可以是PC机,也可以是智 能终端,接收端包括了无线通信模块。
[0041] 因为对实时性需求较高,本发明采用的细分特征值法,其要求每个动作之间的特 征量或特征量集合相互独立,因此在选择手势动作时,需要对手势进行大量的样本观察和 分析,通过样本采集和波形观察,最终确定了可以采用特征识别法的以下的6大类动作,共 10个动作,如表1所示:
[0042]表1手势集定义
[0044] 上述的手势动作之间具有一定的区分度,它们各自的传感器信息所构成的特征量 之间具有比较高的可识别性,因此可以根据不同手势的特征值建立不同的分类器。首先根 据计算出来的特征值对六大类手势进行预分类,识别出其所在的类别,再设计算法针对旋 转类和移动类动作进行细划分,识别出运动的方向,从而是想利用细分特征值分析法快速 高效地实现手势的分类和识别。
[0045] 基于运动传感器的手势识别方法的具体实现方案如附图2所示,采用细分特征值 法,首先需要切割出手势的有效时间段,即从所有读取到的原始数据中截取从手势的起点 到终点的段落,然后再对切割下来的数据段进行坐标系的转换,从机体坐标系转换到用户 坐标系。进行了切割和坐标系转换之后的手势数据段才能用来提取特征进行手势识别。 [0046][差分法进行手势切割]
[0047] 在某一个时刻k下,当前加速度和角速度相对于上一时刻k_l下的差值的绝对值之 和即为当前的加速度和角速度的差分值: _ _ A \r^C- \rocc I . \racc /acc . ryacc r^accj
[0048] Xk -Xk-\\+Yk ~Zk-l\ ⑴
[0049] = |ZT - XZ\^\Y:sr-Y^|z- ~Z-1 ⑵ _〇]其中,^r'、zr表示k时刻下的三轴加速度值,v、c、z严表示让时 刻下的三轴角速度值。
[0051 ] k时刻与k_l时刻的加速度变化值A a。。和角速度变化量A agr就是当前时刻下的加 速度和角速度差分值,这个差分值可以看出手势前后的波动情况,只要设定一个阈值,那么 就可以认为超过了这个阈值的时间点是手势的起点,在识别出起点后,若差分值出现了小 于阈值了的时刻点,就是手势的终点。
[0052]但是这种计算方法下用户无意识下手势瞬间的抖动会造成判断结果出现偏差,因 此我们将单点的差分法进行算法优化,变成滑动窗口的差分法。我们在一个窗口(长度为N) 内对加速度和角速度的两两时刻前后数值变化量求和,并适当提高阈值,提高对手势起点 和终点的判别精确度,隔离抖动误差的效果更好。在这种情况下再去进行判断,可以有效地 提高准确性,减少判断失误。由于本发明中采用的运动传感器采样率为f = 50Hz,而据大量 样本统计可知一个手势大概是Is左右,也就是50个采样点左右,因此根据经验设窗口长度 为N=7-10均可。经过平滑窗口处理后的加速度和角速度差分值分别为:
[0053] a_v = x(\xr -x-1+\rr -rr|+|zr -zn|) ⑶ k=i t+N
[0054] - S (|zr - XZ | + |f- - YkZ | + |z-' - z-1) (4) k=i
[0055] 因为同时采用的加速度和角速度一个窗口长度内的差分值来作为判断依据,而加 速度和角速度不一定能够同时在一个时刻上到达阈值,因此还需要再增加一个判断条件, 即加速度和角速度分别检测出来的起点或终点时刻差值如果超过5个采样时间点,则认为 该起点或终点无效。综上所述,当且仅当同时满足下面的判断条件:
[0056] AaccN(M)>8thi,M=Ai,Ai+l, . . . ,Ai+N (5)
[0057] A agrN(M) >8th2,M=A2,A2+l,. . . ,A2+N (6)并且 IA1-A21〈5,贝丨jA=min(Ai,A2)为 手势起点。
[0058]若满足下面判断条件:
[0059] AaccN(M)<8thi,M=Bi,Bi+l, . . . ,Bi+N (7)
[0060] AagrN(M)<Sth2,M = B2,B2+l,? ? ?,B2+N (8)并且 | BrB21〈5,贝丨,B2)为 手势终点。
[0061][手势数据坐标系转换]
[0062] 由上文可以得知,传感器坐标系是机体坐标系b系,它随着传感器运动而改变,"东 北天":用户坐标系(即地理坐标系)n系则固定保持不变。机体坐标系b系和用户坐标系n系 分别如附图3所示。
[0063] 用户在做手势动作的途中会随时改变传感器机体坐标系,而后续利用特征分析法 制定的一套判断标准是不变的,此时如果仍使用机体坐标系下测量出的原始数据来进行判 断显然是错误的。因此首先应该把手势切割后的所有有效测量数据通过旋转矩阵转换到用 户坐标系下,才能对这些数据使用同一套判断标准。如上文介绍,归一化后的四元数可以描 述刚体的定点运动,因此借助四元数即可轻松实现向量的坐标系转换,b坐标系到n坐标系 的转换矩阵如下: \-2{q]+q:) 2(抓 n) 2(級' + 制2)
[0064] ^ = 2{q[q1+qnq?) 1 -- 2(q{ + q:) 2(q2q:, - q.^qx) - , + Cj{)CjA) +心) (9)
[0065]已知上式,就可以将数据进行坐标系转换,公式如下:
[0066] ' (|〇)
[0067]由转换矩阵的可逆性,可求出机体坐标系到用户坐标系的转换矩阵,从而将运动 传感器采集到的手势数据进行机体到用户坐标系的转换。
[0068][细分特征值法实现手势识别]
[0069]本发明定义的手势集中各个手势都有其自己相较于其它手势而言的比较明显的 特征,因此采用特征分析法能够快速、准确地对其进行识别。而特征分析法的关键在于选取 具有代表意义的特征量来设计预分类器,先识别手势所属的大类,再具体细划分手势具体 的动作。不同的数据采集方式所构成的特征量是不同的,因为使用的是运动传感器,采集到 的数据是加速度、角速度和磁感应强度,以及由姿态解算求出的姿态角,因此构成特征量的 数据即为上述这些运动数据。
[0070] 手势动作之间具有一定的区分度,它们各自的传感器数据信息所构成的特征量之 间具有比较高的可辨识性,因此可以根据不同手势的特征值建立不同的分类器,利用特征 分析法即可快速实现手势的分类和识别。
[0071] 选取合适有效的特征量是特征分析法区分手势的关键,好的特征量能直接降低手 势识别算法的复杂度,并能提高识别准确率,由此为基础来设计一个合理有效的分类器。经 过大量样本采集和观测,本研究定义了五个特征量,分别是手势长度、手势能量、波峰数(包 括加速度波峰数、角速度波峰数和姿态角波峰数)、角速度能量最大轴、角速度单边性,并利 用这五个特征量来构造一个手势大类的预分类器,以此来首先识别当前的用户手势属于哪 一大类:
[0072 ] (1)手势长度:手势起点到终点的采样数;
[0073] LEN = B-A (11)其中,A、B为数据段的起点和终点。本发明采样频率是f = 50Hz,大量试验证明,手势长度必须大于20个采样点才有效,若小于20个采样点则不认为是 一个手势,手势长度计算流程如附图4所示。
[0074] (2)手势能量:起点到终点之间加速度和角速度绝对值之和; B.
[0075] E = ^([gY/1 + |g"- + [ + |aY/1 + |<3VI- + \azi -g|) ( 12).
[0076] 其中,A、B为数据段的起点和终点;gxi,gyi,gzi为手势数据在x、y、z轴上的角速度; axi,ayi,azi为手势数据在x、y、z轴上的加速度。
[0077] (3)波峰数:每个手势动作的加速度或角速度或者姿态角的波峰数以及波峰波谷 的先后出现次序都会有所差异,波峰数可以反映出手势的来回运动次数。
[0078] 计算时易将轻微抖动也算进去,因此本发明给变化量设定了一个阈值,加速度阈 值设为±〇. 7gm/s2,角速度阈值设为± 12dps,姿态角阈值设为± 30°,并且规定超过阈值的 采样点数大于5才有效。先分别计算单轴上的波峰数(单轴上波峰数与波谷数的较大值),总 的波峰数等于三轴波峰数之和。
[0079] (4)角速度能量最大值:每个轴上的角速度能量计算分别公式为: E'rx= y~! |gn_ 1 i^--A
[0080] \Ky=t,\Sr,\ (13) i~A E^=Y\s:i\
[0081 ]因此角速度能量最大轴即max(Ewx、Ewy、Ewz)所在的坐标轴,判断轴即为判断旋转 轴,旋转轴的准确判断对于识别旋转类手势十分关键;
[0082] (5)角速度单边性:反映在某轴上的角速度呈现出单符号性,3个角速度中只要其 中一个满足单边性,就认为其整体角速度满足了单边性。
[0083] 确定了以上这5个特征值之后,就可以根据各类手势的特征值规律,来设计手势动 作的预分类器,结构图如附图5所示。手势预分类结构图用于识别当前用户的手势属于哪一 大类,而对于其中的移动类和旋转类,还需要再进一步结合具体的特征量来进行细划分。从 附图5可以看出,敲击类和移动类通常速度都比较慢,动作维持时间短,因此手势能量小。而 对于能量较大的剩余手势中,若角速度能量最大轴出现在y轴,则明显是旋转类。但对于晃 动、画叉和打钩的分类,总体而言,前两类的长度、能量和加速度波峰数大于打钩,但由于手 势存在随意性,人们在做这些手势时容易产生类似的单个特征量,因此不能只用某个特征 量来进行区分。本发明设计了一个线性判别函数,将三个特征量换算为一种细分特征值f, 在单个特征量区分的基础上再用判别函数来进行区分,从而使分类准确度达到最高。根据 特征量样本得到的线性判别分类函数为:
[0084] f = a*LEN+b*E+c*P+d (14)
[0085] 式中LEN为手势长度,E为手势能量,P为加速度波峰数,a,b,c,d为常系数。
[0086]通过上文所述的预分类器,已经可以较精确地识别出当前用户手势属于哪一大 类,但是对于旋转类和移动类,还需要进一步地进行手势细化分,识别出其机体的运动方 向。
[0087] 1.移动类细划分出上、下、左、右:
[0088] 在观察移动类手势的特征量时发现,如果手势是向左右两个方向移动的,那么水 平面上的加速度发生的变化比较大,而其中对于向左的手势动作,x轴加速度先出现波谷再 出现波峰,向右移动的x轴加速度则刚好相反,先出现波峰再出现波谷;如果手势是上下移 动的,则垂直方向上的加速度发生的变化比较大,其中向上运动时z轴加速度先出现波峰再 出现波谷,向下运动时z轴加速度先出现波谷再出现波峰。
[0089] 因此可以首先通过判断x轴和z轴加速度平均幅值谁更大来判断出上下还是左右 移动,再根据具体的波峰波谷出现的顺序来识别是具体的上、下、左、右。加速度在一个手势 有效长度A-B时间段内的平均幅值计算公式如下:
(15) (16)
[0092] 其中,A、B分别是手势动作数据段的起点和终点;axl、azl分别是手势在x轴、z轴下 的加速度;AM X、AMZ分别是手势在x轴、z轴中的加速度平均幅值。
[0093] 通过判断手势在x轴、z轴中的加速度平均幅值AMX、AMZ哪个更大,可以得到手势当 前是集中在水平面运动还是垂直面运动,然后再根据x轴和z轴上各自加速度的波峰波谷出 现的顺序来判断具体的运动方向,流程图如附图6所示。
[0094] 2.旋转类手势细划分为顺时针和逆时针两个方向:
[0095] 因为旋转类手势是发生在水平面上的,因此只要观察y轴角速度波峰波谷出现的 先后顺序就能识别出用户当前是在顺时针旋转还是逆时针旋转,如果y轴角速度先波谷后 波峰,则是逆时针旋转,反过来先波峰后波谷则是顺时针旋转,流程图如附图7所示。
[0096]通过在以上理论分析,我们可以更进一步地实现内容丰富、形式多样化的功能应 用。
[0097] 一、可自定义的复杂手势识别
[0098]类似于编码原理,用户可以根据自己的喜好把一系列的较复杂的手势设定为快捷 键快速打开某些应用。由于复杂手势识别需要大量复杂的实时计算和储存,单纯在手势识 别硬件平台上无法完成,因此需要将消除误差后的传感器数据以及姿态解算后的数据通过 蓝牙传输到智能终端,在智能终端中进行复杂手势的识别。复杂手势识别技术可以由以下 几种方式之一来实现。
[0099] 1.基于隐性马尔科夫模型(HMM)的手势识别
[0100] 隐性马尔科夫模型(Hidden Markov Model-HMM)是一个由马尔科夫过程和一个一 般随机过程组成的双重随机过程,HMM在语音识别中的应用已相当成熟,由于手势序列和语 音序列很相似,因此HMM也逐渐被用于手势识别中,并且获得了比较高的识别精度。HMM分别 用三种算法解决三个问题:
[0101 ]评估问题一一前后向算法:求给定模型下观测序列的概率;
[0102] 解码问题一一Viterbi算法:求给定模型下对应于观测序列的状态序列;
[0103] 训练问题一一Baum-Welch算法:产生该状态序列的最优模型;
[0104] 首先训练好一个手势库储存在智能终端,包含了数字012 - 9和英文小写字母 abc…,以及一些特殊的图形(画叉,打钩,问号…),每一种手势对应一种HMM模型A。用户可 以为每一种手势自定义一个快捷功能(例如打钩表示立刻播放最喜爱的歌曲)。在开启快捷 键模式下,用户输入相应手势后,硬件平台便利用蓝牙传输模块将传感器数据传输到智能 终端,智能终端对数据进行评估和解码,识别出用户的手势,从而进行相应的操作。
[0105] 复杂手势识别中的HMM算法可以用别的手势识别算法来取代,例如模板匹配法、神 经网络、支持向量机(SVM)等。
[0106] 2.结合语音的手势识别
[0107]先用手势画出笔画,然后通过语音确定要写的字或句段。智能终端中可保存用户 的自造词包,以后对应用户的口音可直接打出确定的字、句或实现相应的功能。
[0108] 二、体感游戏
[0109] 目前大部分的智能终端都包含有体感游戏,因此可以结合硬件平台上的传感器, 把9轴模块滤波处理后的数据通过蓝牙发送给智能终端,即可把手势识别硬件平台当做迷 你游戏手柄来使用。此外,目前市面上流行的基于机器视觉的体感游戏(如kinect)灵敏度 仍不够,体验效果不佳,但是通过在智能终端上集成摄像头,再结合硬件平台,大体定位出 硬件平台的位置,再进一步通过硬件平台上的陀螺仪等数据进行精细定位,在很大程度上 提高了识别精度和灵敏度。
[0110] 三、AR现实增强
[0111] 结合智能终端上的摄像头以及手势识别硬件平台,在智能终端上实现AR现实增强 的效果。实现过程:
[0112] 首先硬件平台的形状和颜色都是为了摄像头更好定位而设计。圆形的色圈,简单 的轮廓外形,都有利于摄像头对硬件平台更快,更准确的定位,为AR技术的实现做好虚拟物 品定位准备,其次就是只能终端预先存好虚拟物品素材,最后就在摄像画面显不的同时,在 标定位置显示出相应的文字或者虚拟物品。
[0113] 现实效果包括:
[0114] 1.摄像对硬件平台的定位跟踪,终端上的摄像画面随着硬件平台的移动而改变。
[0115] 2.摄像头可以对持有硬件平台的人定位,并通过衣服图库的选取实现用户换衣试 衣体验,让终端变成试衣镜。
[0116] 3.通过对硬件平台的定位,还可以实现硬件平台的变身,例如变成一捧花,一个茶 壶,一把剑等等,达到神奇的AR效果。
[0117] 四、控制PPT等应用的播放
[0118] PC端广泛存在需要方向性控制的操作,如PPT的播放、图片的切换、网页的上下滑 动等,传统的鼠标控制在距离上限制较大,操控性低,影响人与PC端的友好交互。
[0119]目前流行的控制PPT的播放方式(其他应用类似)有两种:通过键盘或者PPT翻页 笔。当通过键盘控制PPT播放时,操纵者必须站在电脑旁边,这样就不利于与讲台下的观众 进行交流与互动,用户体验性差;虽然使用PPT翻页笔可以实现远程操控PPT,但是其同样是 以按键的形式,必须随时拿在手上,用户体验同样不是太好。
[0120] 通过分析,我们发现PPT的操控命令大致存在四种:开始播放,上翻页,下翻页以及 结束播放。于是我们定义了四种手势,分别与这四种命令相对应,
[0121] 最终通过手势就达到了控制PPT播放的目的,且由于手势识别硬件平台精致小巧, 可直接穿戴在手上,不影响正常的手势交流,进一步提高了用户体验。
[0122] 五、手语识别系统
[0123] 由于先天或者后天的不幸导致我们身边可能有残疾的朋友,往往需要学习手语才 能和他们进行交流。手语的研究有助于改善和提高聋哑人的生活学习和工作条件,为他们 提供更好的服务。
[0124] 通过穿戴手势识别硬件平台,采集手语样本,然后通过自定义复杂手势识别对每 种手语进行建模,最后进行手语识别。通过借助于智能终端强大的计算能力以及对识别算 法的改进,可以达到很高的识别精度,极大的改善聋哑人的生活质量,使得其可以用手语和 正常人进行交流。
[0125] 以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定 本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在 不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的 保护范围。
【主权项】
1. 一种基于细分特征值法的快速三维动态手势识别方法,其特征在于:所述方法将手 势定义为敲击类、旋转类、晃动类、移动类、打钩类、画叉类等六大类型,所述方法包括: S1:采用差分法从所有读取到的原始数据中截取从手势的起点到终点的段落; S2:对切割下来的数据段进行坐标系的转换,从机体坐标系转换到用户坐标系; S3:计算变换后数据的手势长度、手势能量、波峰数、角速度能量最大轴、角速度单边 性,并利用这五个特征量来构造一个手势大类的预分类器,所述预分类器利用手势能量来 进行粗分类,利用波峰数来区分敲击类和移动类,利用角速度能量最大轴来识别旋转类,利 用线性判别函数计算细分值f来区分晃动类、打钩类、画叉类;线性判别函数为; f = a*LEN+b*E+c*P+d, 其中,LEN为手势长度,E为手势能量,P为加速度波峰数,a,b,c,d为常系数; S4:进一步地进行手势细化分,识别出移动类和旋转类手势的运动方向。2. 根据权利要求1所述的手势识别方法,其特征在于:所述差分法进行手势切割具体 为,在一个长度为N的窗口内对加速度和角速度的两两时刻前后数值变化量求和得到经过 平滑窗口处理后的加速度和角速度差分值:示k时刻下的三轴角速度值;设定一个阈值,所述差分值超过了所述阈值的时间点是手势的 起点,在识别出起点后,若所述差分值出现了小于所述阈值了的时刻点是手势的终点;若加 速度和角速度分别检测出来的起点或终点时刻差值如果超过m个采样时间点,则认为该起 点或终点无效,反之则有效,其中,m为预设值。3. 根据权利要求1所述的手势识别方法,其特征在于:所述波峰数包括加速度波峰数、 角速度波峰数和姿态角波峰数。4. 根据权利要求1所述的手势识别方法,其特征在于:所述手势长度LEN为手势起点到 终点的采样数;手势能量E为起点到终点之间加速度和角速度绝对值之和;波峰数为每个手 势动作的加速度或角速度或者姿态角的波峰数;角速度单边性反映在某轴上的角速度呈现 出单符号性,3个角速度中只要其中一个满足单边性,就认为其整体角速度满足了单边性; 角速度能量最大轴为ma X(Ewx、Ewy、Ewz)所在的坐标轴,判断轴即为判断旋转轴,其中,角速度 能量最大值Ewx、E Wy、EWZ为:其中,gxi,gyi,gzi为手势数据在x、y、z轴上的角速度。5. 根据权利要求1所述的手势识别方法,其特征在于:所述预分类器具体为:当手势能 量E小于预设的第一阈值,则进行加速度波峰数判断,当加速度波峰数小于预设的第二阈值 时,则将手势判断为敲击类,否则,判断为移动类;当手势能量E大于或等于预设的第一阈 值,则进行角速度能量最大轴判断,若为Y轴,则将手势判断为旋转类,若不为Y轴,则进行细 分特征值f的计算,若f大于〇则进一步根据姿态波峰数和手势能量将手势识别为晃动类或 画叉类,若f小于或等于〇则进一步判断角速度单边性,若角速度单边性为否,则将手势判断 为打钩类。6. 根据权利要求1所述的手势识别方法,其特征在于:所述步骤S4包括:对于移动类手 势,首先通过判断X轴和z轴加速度平均幅值谁更大来判断出上下还是左右移动,再根据具 体的波峰波谷出现的顺序来识别是具体的上、下、左、右。7. 根据权利要求1所述的手势识别方法,其特征在于:所述步骤S4包括:对于旋转类手 势,观察y轴角速度波峰波谷出现的先后顺序就能识别出用户当前是在顺时针旋转还是逆 时针旋转,如果y轴角速度先波谷后波峰,则是逆时针旋转,反过来先波峰后波谷则是顺时 针旋转。8. 根据权利要求1所述的手势识别方法,其特征在于:所述步骤S4之前还包括对原始数 据进行数据融合,再进行姿态解算,求出实时的姿态角,所述数据融合算法为互补滤波或梯 度下降法。9. 一种基于细分特征值法的快速三维动态手势识别方法,所述手势为用户根据自己的 喜好定义的一系列的较复杂的手势序列,其特征在于:所述方法首先利用如权利要求1-9任 一项所述的识别方法识别出所述手势序列中的每一个手势,然后利用隐性马尔科夫模型 HMM识别出用户定义的手势序列。10. -种基于细分特征值法的快速三维动态手势识别系统,所述系统包括手势识别的 硬件平台和接收端;其中,所述手势识别的硬件平台作为手势数据的采集设备,其包括3轴 加速度计、3轴陀螺仪和3轴磁力计、MCU微处理器、蓝牙模块、锂电池充电电路、锂电池以及 电源开关;所述3轴加速度计测量加速度、3轴陀螺仪测量角速度和3轴磁力计测量磁场,获 得手势的原始数据;所述硬件平台通过无线通信的方式将采集到的原始数据传送给所述接 收端;所述接收端采用如权利要求1-9任一项所述的基于细分特征值法的快速三维动态手 势识别方法进行数据处理及手势识别。
【文档编号】G06K9/00GK105929940SQ201610227105
【公开日】2016年9月7日
【申请日】2016年4月13日
【发明人】韩啸, 张钦宇, 刘易, 谢国超, 赵国钦, 刘元震
【申请人】哈尔滨工业大学深圳研究生院
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1