一种采用动作切分的手势识别系统和方法与流程

文档序号:13179431阅读:177来源:国知局
技术领域本发明属于数字图像和人机交互领域,尤其是涉及一种采用动作切分的手势识别系统和方法。

背景技术:
随着手机触摸操作和人体跟踪识别的发展,人们体会到了手势交互方式具有以人为中心的自然性,简洁性,和直接性等优势,基于人手智能输入的交互界面正在成为新的技术趋势,尤其是随着沉浸式虚拟现实新设备的兴起,各种交互方案被用来提高沉浸式体验,其中以手势交互最为简洁、直接、自然。手势识别作为一种人机交互手段,已广泛应用于增强现实,虚拟现实,体感游戏等场景,对于这些应用场景,操作手势是随机嵌入在连续动作流当中的,目前许多基于视觉的手势识别系统都假设输入的各个动作间存在停顿或已经切分好的独立手势,而在实时场景下的应用研究相对较少。公开号为CN102789568B的中国发明专利公开了一种基于深度信息的手势识别方法,通过在每个独立的人体区域上检测出手部轮廓信息,获取手部跟踪的运动轨迹,再利用隐马尔科夫模型对运动轨迹进行建模识别出手势,其在实时分析时限定轨迹长度以过滤手势轨迹。还有的方法是让用户在执行手势的时候通过点击按钮来切分手势的开始点和结束点。手并非刚体,具有柔性,运动中的手具有形状多变等特点,同一个人的同一种动作在不同观察角度或观察时刻下,其形态和持续时间都会有较大差异,不同的人更难以重现一模一样的动作,因此采用何种手势特征描述对基于视觉手势识别的效果和普适性具有很大影响。目前,手势模型有基于表观的手势模型和基于3D模型的手势模型,公开号为CN102880865B的中国发明专利提供了一种基于肤色与形态特征的动态手势识别方法,其根据人的皮肤颜色在YCrCb颜色空间中的分布特征对图像作阈值切分处理,并用椭圆拟合获得人手肤色块,再标记色块的重心,进而根据重心移动判断手部的移动,达到识别目的。综上所述,现有的手势识别交互方法存在以下缺点:(1)在实际应用条件下难以在复杂手势流中定位具有操作意义手势的开始和结束关键点;(2)同一种手势由于执行速度不同和动作幅度不同而不可避免地带有时空差异性,对识别的准确率和鲁棒性会造成很大影响。

技术实现要素:
针对以上技术的不足,提出了一种可以提高手势识别的精度以及效率的采用动作切分的手势识别系统及方法。本发明的技术方案如下:一种采用动作切分的手势识别系统,其包括:数据接口模块,数据接口模块包括手势数据流接口组件和头部姿态数据流接口;用于获取并管理头部姿态和手部姿态的原始数据;头部姿态估计模块,包括特征计算模块和姿态预定义模块,用于对头部姿态数据流接口发送来的原始数据用估计算法处理原始头部姿态数据并输出估计结果给动作分割模块;动作分割模块,包含自动分割模块、主动分割模块及缓冲区,根据头部姿态估计模块的输出估计结果,采用切分算法对手势数据进行切分处理;手势识别模块,用于对动作分割模块切分得到的手势序列进行手势识别。进一步的,所述数据接口模块负责管理头部姿态数据流和手势视频帧数据流,手势采集设备包括深度摄像机或者数据手套,头部姿态采集设备包括深度摄像机或者头戴传感器,所述头部姿态采集设备具有可编程的应用程序接口并能够进行据采集工作。进一步的,所述头部姿态估计模块所采用的特征描述为头部姿态角,头部姿态采集设备采集的数据经头部朝向向量计算后用来表达头部姿态的欧拉旋转角或面部朝向向量,头部或面部朝向ο(x,y,z)由以下公式求出:ο=z(α)·x(β)·z(γ)·P,其中z(α)表示头部绕参考坐标系z轴旋转α角度值,z(γ)表示头部绕参考坐标系z轴旋转γ角度值,x(β)表示头部绕参考坐标系x轴旋转β角度值,P(1,0,0)表示参考坐标系下的点。进一步的,所述主动分割模块采用基于头部姿态判定的方式,头部姿态指预先定义的脸部朝向或者头部动作,以代表手势开始的头部姿态作为切分的起始点,以代表手势结束的头部姿态作为切分的结束点;所述自动分割模块采用基于空手势模型的模板匹配方法,根据手势运动变化的速率变化判断不同手势间动作的拐点;自动切分的相关参数有SPOTTING_START切分开始点阈值,SPOTTING_END切分结束点阈值,DURATION手势长度阈值,当某一时刻t的表征手部运动的速率α(t)>SPOTTING_START时标记切分起始点,当α(t)<SPOTTING_END时,标记切分结束点,将切分得到的手势序列长度L(g)与DURATION进行比较,如果切分的手势序列持续时间过短,则丢弃该序列。进一步的,所述手势识别模块包括特征提取模块、分类模型模块、和匹配识别模块,特征提取模块用于对动作分割得到的数据进行特征提取和计算,分类模型模块用于建立手势分类模型,该模型对计算得到的特征进行训练学习,匹配识别模块用于根据手势输入特征和分类模型中学习到的特征进行匹配识别,该识别结果经量化输出映射为操作指令。进一步的,所述手势识别模块的匹配识别模块采用采用离散HMM隐马尔科夫模型或者DTW动态时间规整分类算法进行处理并输出识别结果。进一步的,所述特征提取模块采用将手势关节的局部四元数作为特征向量,计算步骤如下:先求出局部坐标系下的骨骼方向向量,再归一化;进而求出方向向量与三轴单位向量的夹角;得到三轴的夹角后,计算得到手势关节点特征的局部四元数表达。一种基于所述系统的采用动作切分的手势识别方法,其包括以下步骤:1)、首先选择一种数据的采集设备,并建立数据接口以提供实时的连续的手势数据源;2)、检测头部运动姿态即首势,并与预先定义的首势类型进行匹配;3)、如果检测到主动动作切分首势则根据开始切分首势信号调用数据接口采集手势数据,根据结束切分首势信号关闭数据接口停止采集数据;4)、如果检测到自动动作切分首势则调用数据接口开始采集数据,同时根据手部运动状态或空手势模型进行手势动作切分;5)、最后用识别算法对切分得到的手势序列进行手势识别。进一步的,所述步骤4)自动切分的步骤包括:将连续数据与抽象模板进行初步匹配,令Gt表示一段时长为t的输入手势,其本质是一个特征矩阵,行数为时间t内的采样数,每行为手势特征向量,该向量由所述四元数特征计算得到,模板库(g1,g2,…,gn)表示已知的n种抽象手势模板,S(Gt,gi)度量当前数据流和某种手势模板的相似性;当手部运动停止时,将手势序列Gt与模板(g1,g2,…,gn)特征进行比较,通过HillClimbing算法寻求局部最优解,如果在Gt中检测到已知的手势模板片段,则将其与该模板手势进行比较,若检测到相似点,则两者的相似性就会增加,直到出现相似性下降点即拐点就检测到动作片段的结束点,将其放入备选集中,对具有相似点的其它手势模板进行相同检测步骤,再取备选集中相似度量最大的片段作为切分的始末点,即可将输入手势转化为一组动作元序列。本发明的优点及有益效果如下:本发明使用用户无关和视觉无关特征作为手势的特征描述,使得不同的用户可以用相同的手势识别模型而不用额外训练新的手势模板库,通过与基于头部姿态估计的动作切分方法可以有效切分复杂手势序列,减少冗余数据,提高手势识别精度和效率。本发明提出的采用动作切分的手势识别方法和系统,可以提高手势识别的精度以及效率,能有效的解决实时场景下,连续动态手势的时空差异性问题和手势开始到结束间的手势切分问题。附图说明图1是本发明提供优选实施例手势识别系统结构框图;图2为本发明所参考的头部姿态角模型和实施例示意图;图3为本发明对应的头部姿态估计方法流程图;图4为本发明动作切分方法中的主动切分方法流程图。图5为本发明对动作切分方法中的自动切分方法流程图。图6为本发明采用动作切分的手势识别方法流程图。具体实施方式以下结合附图,对本发明作进一步说明:如图1所示一种采用动作切分的手势识别方法和系统,该系统主要包括:A1~A14:A1是与数据采集设备相适应的数据接口模块、A2是头部姿态估计模块、A3是动作切分模块、A4是手势识别模块,其中,数据接口模块包含了头部姿态数据流接口组件A5和手势数据流接口组件A6,头部姿态估计模块包含了特征计算组件A7和姿态预定义模板组件A8,动作切分模块包含了自动切分组件A9和主动切分组件A10,其中的缓冲区A11用来存放元手势片段,手势识别模块中包含了手势特征提取组件A12、手势类型与操作指令映射组件A13、经过训练得到的分类模型组件A14。以沉浸式虚拟现实场景为例,本发明的头部姿态角实施例示意图如图2b所示,头部姿态数据流接口对应的设备为包含惯性传感器的头戴显示器,此类产品在市面上已经有售,且基本都包含姿态角感应功能。头部姿态角模型示意图如图2a所示,头部坐标系相对参考坐标系的三个欧拉角关系反映了头部的姿态:头部坐标系与参考系水平面的夹角为俯仰角θ(pitch),当头部坐标系的正半轴位于过参考坐标系的原点的水平面之上时(抬头),俯仰角为正,否则为负。头部坐标系xb轴在水平面上的投影与参考坐标系xg轴之间的夹角为偏航角ψ(yaw),由xg轴逆时针旋转至头部xb的投影线时,偏航角为正,反之为负。头部坐标系zb轴与通过头部xb轴的铅垂面间的夹角为滚动角φ(roll),头部右歪脖子为正,反之为负。头部姿态估计算法流程如图3所示。B1~B3:以[0023]所述头戴传感器为例,B1为通过惯性传感器检测和捕捉头部姿态变化,并用构建的数据接口管理姿态角数据,B2为对所获取的姿态角数据进行特征提取,计算方法如下所示:ο=z(α)·x(β)·z(γ)·P(1)其中,ο(x,y,z)表示头部或脸部朝向向量,z(α)表示头部绕参考系z轴旋转α角度,z(γ)表示头部绕参考坐标系z轴旋转γ角度,x(β)表示头部绕x轴旋转β角度,用旋转矩阵表示:其中,头部绕各轴的旋转角度α,β,γ可由头戴惯性传感器的数据接口获得,将式子(2)—(5)带入(1)式当中即可得到头部朝向向量ο,其用来表示的头部姿态特征。B6~B5:根据预先定义的头部姿态向量集合Ο(νi)中的模板νi与实时提取的特征向量ο进行匹配,根据距离相似度原理判断ο的姿态类型并输出量化结果,最后根据当前姿态类型判定是否进入切分或者结束切分。A16~A17:将sobel二次定位结果,输入SVM车牌判断模型,得到真正的车牌块,并输出。B7:计时器用来记录发生切分姿态的时刻,统计器用来计算在阈值时段内的切分发生次数,通过这两块处理可以对切分信号进行扩充,即通过头部姿态变化或动作来产生切分依据。动作切分是使手势识别可以有效运用到实时场景如沉浸式虚拟现实中的必要手段,不像实验条件下的孤立手势识别,实时条件更为复杂,是含有过度手势和非操作手势的连续数据流,本发明从有效性和实时性出发,设计了两种切分方法,主动切分法基于头部姿态估计,可以像手势一样发挥用户的主观能动性而又不干扰手的正常操作,其特点是以用户为中心,切分准确度高;自动切分是对主动切分的补充,用于处理有效手势即元手势左右为空手势或停顿明显的简单情况。如图4所示为主动切分方法的实施流程图:C1~C5:当连续手势流原始数据通过数据接口引入系统时,根据所述方法判定头部姿态以确定切分点,切分后的数据就是元手势,即有效手势的序列片段。具体来说就是当检测到切分始点信号即头部姿态时调用数据接口将数据当前开始的数据引入待处理数据缓冲区域当中,当检测到切分末端信号时则关闭相关接口,停止对缓冲区的数据引入,切分结束即可得到待处理元手势数据,该数据将被传递给特征提取模块做下一步处理,主动切分模块继续监听来自头部姿态估计模块的切分信号。如图5所示为自动切分的方法流程图:D1~D7:连续数据与抽象模板进行初步匹配,Gt表示一段时长为t的动态手势,模板库(g1,g2,…,gn)表示已知的n种抽象手势模板,S(Gt,gi)度量当前数据流和某种手势模板的相似性。当手部运动停止时,将整串数据与模板进行比较,一旦检测到相似点,则两者的相似性就会逐步增加,直到相似性下降出现拐点时就检测到动作片段的结束点,再取全局相似度量最大的串作为切分的始末点,即可将手势转化为一组动作元序列。如图6所示为采用动作切分的手势识别方法流程图:E1~E3以沉浸式虚拟现实场景为例,所采用的头部姿态输入设备为带有惯性传感器的可以检测头部姿态角的头戴显示器,手势输入设备是可以进行骨骼跟踪的深度摄像机,通过头部姿态数据接口实时检测头部姿态并将估计结果转化为切分信号,手势数据接口参考切分信号对手势进行主动切分,如执行手势时,用户望向手臂,产生头部旋转变化,则产生开始切分信号,当用户结束手势并同时回正头部时,则产生结束切分信号,此过程对应E9~E12如果用户不想采用主动方式则可以选择进入自动手势切分模式E8,该模式以运动拐点判断切分位置,参考切分点并调用数据接口引入元数据流到数据缓冲区。E4~E5:将由[0031]获得的元数据进行手势预处理,再根据深度摄像机如Kinect跟踪骨骼得到的手势相关关节点数据进行特征提取计算,本实施例采用手势关节的局部四元数作为特征向量,计算方法如下:(1)先求出局部坐标系下的骨骼方向向量,再单位化。(2)再求出方向向量与三轴单位向量的夹角。(3)得到三轴的夹角后,计算得到局部四元数q。E6~E7:为了解决时空差异性引起的识别精度下降问题,本实施例采用动态时间规整DTW算法进行模型训练和匹配识别,可以很好的解决时间序列长度不相等的问题,具体过程为给定两条时间序列:R=<r1,r2,…,rm>和T=<t1,t2,…,tn>,DTW通过计算R和T之间的最优秀匹配φ=(φR,φT)使得匹配后对应元素的距离只和最小。对于最优匹配φ,φR=(φ1R,φ2R,…φKR),(1≤φiR≤m,1≤i≤K),并且φT=(φ1T,φ2T,…φKT),(1≤φiT≤n,1≤i≤K)。时间序列R和T之间的DTW距离定义如下:其中,d(i,j)表示R中第i个元素和T中第j个元素之间的距离,本实施例取d(i,j)=(Li+Lj)/2,其中Li和Lj表示元手势长度。最后通过基于距离的形似度度量来对手势进行分类,本实施例采用最近邻NN分类器进行分类。以上这些实施例应理解为仅用于说明本发明而不用于限制本发明的保护范围。在阅读了本发明的记载的内容之后,技术人员可以对本发明作各种改动或修改,这些等效变化和修饰同样落入本发明权利要求所限定的范围。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1