一种基于Leap Motion的动态手势识别方法技术

技术编号:20623439 阅读:128 留言:0更新日期:2019-03-20 14:49
本发明专利技术公开了一种基于LeapMotion的动态手势识别方法,包括如下步骤:用Leap Motion传感器采集动态手势的手部关键点的三维位置信息;通过计算某一时刻手部关键点的速率,结合阈值法判断手势的起始点和结束点,并将位于起始点和结束点之间的手势数据流作为动态手势的原始数据;通过特征预处理和SVD奇异值分解,实现手势数据中冗余信息的去除,得到手势特征矩阵;利用Kmeans对手势特征矩阵进行重编码,并为每一种手势训练一个HMM模型,实现手势分类。本发明专利技术基于Leap Motion,利用阈值法实现准确、高效的手势数据分割;通过SVD实现原始数据的降维,提高HMM训练的效率,实现准确、实时的手势识别。

A Dynamic Gesture Recognition Method Based on Leap Motion

The invention discloses a dynamic gesture recognition method based on LeapMotion, which includes the following steps: acquiring three-dimensional position information of key points of dynamic gesture by Leap Motion sensor; judging the starting point and ending point of gesture by calculating the speed of key points of hand at a certain time, combining with threshold method, and taking the gesture data flow between the starting point and the ending point as dynamic. The original data of gesture; the redundant information in gesture data is removed by feature preprocessing and SVD singular value decomposition, and the gesture feature matrix is obtained; the gesture feature matrix is re-coded by Kmeans, and an HMM model is trained for each gesture to realize gesture classification. The method is based on Leap Motion and achieves accurate and efficient segmentation of gesture data by threshold method, reduces dimensionality of original data by SVD, improves the efficiency of HMM training, and achieves accurate and real-time gesture recognition.

【技术实现步骤摘要】
一种基于LeapMotion的动态手势识别方法
本专利技术涉及人工智能及人机交互
,具体涉及一种基于LeapMotion的动态手势识别方法。
技术介绍
随着机器学习和计算机视觉技术的发展,在人机交互领域,与传统的键盘和鼠标相比,动态手势识别技术具有更高的舒适度和效率,得到了广泛的关注和研究。与基于数据手套的动态手势识别技术相比,基于视觉的动态手势识别技术具有交互自然、直观、方便快捷等优点,使得自然、友好的人机交互成为可能。由于动态手势具有多变的形状,且手指间存在严重的重叠,使用单目传感器难以捕捉丰富的动态手势信息,这限制了基于单目传感器的动态手势识别技术的发展。在动态手势识别技术中,对于采集的连续手势数据,如何采用一种准确、高效的方式界定手势的起始点和结束点,关系到手势识别系统的准确率和实时性。对于复杂的动态手势,提取的手势数据在时间维度上具有高维特性,且存在冗余数据,导致训练手势分类器需要花费较长时间。此外,动态手势是不固定时长的一串动作序列,选择的手势分类识别方法需具有很好的时间规整能力,否则会导致手势分类准确率较低。因此,专利技术一种能够准确界定并识别手势的实时动态手势识别方法是目前函待解决的问题。
技术实现思路
本专利技术的目的是为了解决现有技术中的上述缺陷,提供一种基于LeapMotion的动态手势识别方法。本专利技术的目的可以通过采取如下技术方案达到:一种基于LeapMotion的动态手势识别方法,所述的动态手势识别方法包括如下步骤:动态手势数据采集,用LeapMotion传感器采集动态手势的手部关键点的三维位置信息;手势分段,通过计算某一时刻手部关键点的速率,结合阈值法判断手势的起始点和结束点,并将位于起始点和结束点之间的手势数据流作为动态手势的原始数据;手势特征处理,通过特征预处理和SVD奇异值分解,实现动态手势的原始数据中冗余信息的去除,得到手势特征矩阵;手势识别,利用Kmeans聚类算法对手势特征矩阵进行重编码,并为每一种手势训练一个HMM模型,实现手势分类识别。进一步地,所述的手势分段过程如下:通过计算第i时刻手部关键点j的速率Vij并与预设阈值Aj比较,当第i时刻手部关键点j的速率Vij满足Vij<Aj,1≤j≤n,即可判定该时刻为动态手势的起始点或者结束点,将位于起始点和结束点范围内的手势数据流作为动态手势的原始数据,即手势样本X,每一个手势样本X定义为:其中表示为第j个关键点在i时刻的三维坐标值,n为动态手势的关键点个数,t为该手势样本的时间长度,手势样本X是大小为3n×t的矩阵。进一步地,所述的第i时刻手部关键点j的速率Vij采用如下公式计算:其中,Δt为i时刻与(i-1)时刻的时间差。进一步地,所述的特征预处理中将每一个手势样本X在时间维度上进行规整,得到规整后的矩阵G,具体为:对于每一个手势样本X,计算相应时间段内手势各关键点在不同坐标轴上的最大值和最小值在i时刻第j个关键点的坐标经规整后的坐标值为采取的计算公式如下:进一步地,所述的SVD奇异值分解实现手势数据中冗余信息的去除,具体为:将矩阵G表示为:G=U∑VT;对GTG进行特征值分解,得到酉矩阵V,然后对GGT进行特征值分解,得到酉矩阵U,求出矩阵∑,最后提取酉矩阵U中左侧的r列向量构成手势特征矩阵Gsvd,实现矩阵G在时间维度的压缩。进一步地,所述的手势识别过程如下:将手势特征矩阵Gsvd分解为多个3n维的列向量,并将所有手势样本X分解后的所有列向量进行Kmeans聚类,最后将手势特征矩阵Gsvd的每一个列向量替换为聚类后所属的类别,得到向量G';经上述处理后得到的每一种手势所有样本的所有向量G'用于训练一个HMM模型,从而实现手势分类。本专利技术相对于现有技术具有如下的优点及效果:(1)本专利技术利用LeapMotion传感器高精度地采集动态手势数据,利用阈值法实现准确、高效的手势数据分割;(2)本专利技术通过SVD奇异值分解实现原始手势数据的降维,显著地减少训练隐马尔科夫模型HMM的迭代计算量,提高模型的训练效率;(3)本专利技术结合Kmeans聚类算法对手势特征矩阵进行重编码并训练HMM模型,实现准确、实时的手势识别。附图说明图1为一种基于LeapMotion的动态手势识别方法的总体流程图;图2为一种基于LeapMotion的动态手势识别方法的手势特征处理流程图;图3为一种基于LeapMotion的动态手势识别方法的手势识别流程图。具体实施方式为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。实施例如图1所示,一种基于LeapMotion的动态手势识别方法,该方法依次包括:动态手势数据采集阶段、手势分段阶段、手势特征处理阶段以及手势识别阶段。(1)动态手势数据采集阶段:用LeapMotion传感器采集动态手势数据,得到动态手势的26个手部关键点的三维位置信息。本专利技术定义10种动态手势,对应0-9共10个阿拉伯数字的书写过程。本专利技术采用的26个手部关键点包括:19个关节点、5个指尖点、掌心点和手腕点。(2)手势分段阶段:通过计算第i时刻手部关键点j的速率Vij并与阈值Aj比较,当第i时刻手部关键点j的速率Vij满足Vij<Aj(1≤j≤n),即可判定该时刻为动态手势的起始点或者结束点,将位于起始点和结束点范围内的手势数据流作为动态手势的原始数据X,每一个手势样本X定义为:其中表示为第j个关键点在i时刻的三维坐标值,n为动态手势的关键点个数,本专利技术取n=26,t为该手势样本的时间长度,手势样本X是大小为3n×t的矩阵。第i时刻手部关键点j的速率Vij采用如下公式计算:其中,Δt为i时刻与(i-1)时刻的时间差。(3)手势特征处理阶段:如图2所示,手势特征处理阶段包括特征预处理和SVD奇异值分解,实现手势数据中冗余信息的去除,得到手势特征矩阵Gsvd。其中,特征预处理将每一个手势样本X在时间维度上进行规整,得到规整后的矩阵G,具体为:对于每一个手势样本X,计算相应时间段内手势各关键点在不同坐标轴上的最大值和最小值在i时刻第j个关键点的坐标经规整后的坐标值为采取的计算公式如下:其中,SVD奇异值分解,实现手势数据中冗余信息的去除,具体为:将矩阵G表示为:G=U∑VT;对GTG进行特征值分解,得到酉矩阵V,然后对GGT进行特征值分解,得到酉矩阵U,求出矩阵∑。最后提取酉矩阵U中左侧的r列向量构成手势特征矩阵Gsvd,实现矩阵G在时间维度的压缩。(4)手势识别阶段:如图3所示,手势识别阶段利用Kmeans聚类算法对手势特征矩阵进行重编码,并为每一种手势训练一个HMM模型,从而实现手势分类,具体为:将手势特征矩阵Gsvd分解为多个3n维的列向量,并将所有手势样本分解后的所有列向量进行Kmeans聚类,最后将Gsvd的每一个列向量替换为聚类后所属的类别,得到向量G';经上述处理后得到的每一种手势所有样本的所有向量G'用于训练一个HMM模型,从而实现手势分类。综上所述,本实施例公开了一种基本文档来自技高网...

【技术保护点】
1.一种基于Leap Motion的动态手势识别方法,其特征在于,所述的动态手势识别方法包括如下步骤:动态手势数据采集,用Leap Motion传感器采集动态手势的手部关键点的三维位置信息;手势分段,通过计算某一时刻手部关键点的速率,结合阈值法判断手势的起始点和结束点,并将位于起始点和结束点之间的手势数据流作为动态手势的原始数据;手势特征处理,通过特征预处理和SVD奇异值分解,实现动态手势的原始数据中冗余信息的去除,得到手势特征矩阵;手势识别,利用Kmeans聚类算法对手势特征矩阵进行重编码,并为每一种手势训练一个HMM模型,实现手势分类识别。

【技术特征摘要】
1.一种基于LeapMotion的动态手势识别方法,其特征在于,所述的动态手势识别方法包括如下步骤:动态手势数据采集,用LeapMotion传感器采集动态手势的手部关键点的三维位置信息;手势分段,通过计算某一时刻手部关键点的速率,结合阈值法判断手势的起始点和结束点,并将位于起始点和结束点之间的手势数据流作为动态手势的原始数据;手势特征处理,通过特征预处理和SVD奇异值分解,实现动态手势的原始数据中冗余信息的去除,得到手势特征矩阵;手势识别,利用Kmeans聚类算法对手势特征矩阵进行重编码,并为每一种手势训练一个HMM模型,实现手势分类识别。2.根据权利要求1所述的一种基于LeapMotion的动态手势识别方法,其特征在于,所述的手势分段过程如下:通过计算第i时刻手部关键点j的速率Vij并与预设阈值Aj比较,当第i时刻手部关键点j的速率Vij满足Vij<Aj,1≤j≤n,即可判定该时刻为动态手势的起始点或者结束点,将位于起始点和结束点范围内的手势数据流作为动态手势的原始数据,即手势样本X,每一个手势样本X定义为:其中表示为第j个关键点在i时刻的三维坐标值,n为动态手势的关键点个数,t为该手势样本的时间长度,手势样本X是大小为3n×t的矩阵。3.根据权利要求2所述的一种基于LeapMotion的动态手势识别方法,其特征在于,所述的第i时...

【专利技术属性】
技术研发人员:周智恒许冰媛陈曦
申请(专利权)人:华南理工大学淮北幻境智能科技有限公司东莞市易联交互信息科技有限责任公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1