在线客服系统

期刊库

教育   经济   科技   财会   管理   
医学   法学   文史   工业   建筑   
农学   水利   计算机   更多>>
 首 页    论文大全   论文精品    学术答疑    论文检测    出书咨询    服务流程    诚信通道    关于我们 

一种基于改进DTW算法的动态手势识别方法(2)

人气指数: 发布时间:2013-09-04 09:32  来源:http://www.zgqkk.com  作者: 何超 胡章芳 王艳
分享到:

 

  我们设R=(r1,r2,r3,…,rn)为手势测试序列,T=(t1,t2,t3,…,tm)为手势模板序列,n,m都是手势帧的时序标号,通过非线性映射匹配时间序列,因此一个映射可以用一系列有序元素表示:(i1,j1),(i2,j2),(i3,j3),…,(if,jf),元素(i,j)表示测试序列R第i帧的特征向量与模板序列T第j帧的特征向量之间的映射,f映射个数定义d(i,j)为r(i)与t(j)之间的距离,则一个映射R和T的总开销D可以表示为D=∑fk=1d(ik,jk)。(3)一个映射也可以描述为在一个2维网格上的一条路径,用参考模板序列r(i)作为横坐标i轴,测试模式序列t(j)作为纵坐标j轴,建立直角坐标系如图2所示。网格中的每个节点(i,j)-交叉点,表示r(i)与t(j)的映射。在这个2维网格中,每一条路径就是一个算式(3)的总开销D,其中最小开销的路径就是这2个序列的最佳匹配。

  图2路径示意图为了寻找最佳路径,若寻找所有可能的路径,则计算量太大,基于Bellman原理的动态规划算法减少计算复杂度。Bellman原理指出,从节点(i0,j0)经过节点(i,j)到节点(if,jf)的最优路径是由节点(i0,j0)到节点(i,j)的最优路径与由节点(i,j)到终点(if,jf)的最优路径的串联。这样,如果给出了(i0,j0)到(i,j)的最佳路径,我们只需要寻找最佳(i,j)到(if,jf)的路径,而不是(i0,j0)到(if,jf)的路径。如果我们用Dmin(ikjk)表示到节点(ik,jk)的最小开销,则Dmin(ikjk)可以运用前面的节点表示如下,Dmin(ikjk)=min(D(ik-1jk),

  D(ikjk-1),D(ik-1jk-1))+d((ik,jk)。(4)当所有元素在时间上有序排列,前面的节点都在当前节点的左边和底部,如图3所示。最后,这2个序列的最小路径开销是Dmin(if,jf),测试序列在所有模板中寻找具有最小路径开销的模板序列作为匹配结果。

  图3相邻节点示意图2.1全局路径限制

  DTW虽然算法简洁,但运算量仍然很大[9],对DTW算法的全局路径限制可以减少算法的运算量,提高算法速度。

  由于匹配过程中限定了路径的斜率,因此许多格点实际上是到达不了的,路径约束如图4所示。因此,菱形之外的格点对应的帧匹配距离是不需要计算的。另外,也没有必要保存所有的帧匹配距离矩阵和累积矩阵,因为每一列各格点上的匹配计算只用到了前一列的3个网格,如图3。充分利用这2个特点可以减少计算量和对储存空间的需要。

  图4路径约束示意图如图4所示,把实际的动态路径分为3段:(1,Xa),(Xa+1,Xb)和(Xb+1,N),其中直线1和2的斜率为2,直线3和4的斜率为0.5,根据平行四边形的斜率可以得到Xa=13(2M-N),Xb=23(2N-M)。为了可以进行动态规划,由此也得出对M和N长度的限制条件,2M-N≥3

  2N-M≥2。(5)当不满足条件时,认为两者的差别实在太大,无法进行动态规划匹配。这样,i轴上的每一帧不再需要与j轴上的每一帧进行比较,而只是与j轴上[ymin,ymax ]间的帧进行比较,ymin和ymax的计算如式(6)(8)所示。 ymin=12x

  ymax=2x(x≤Xa),(6)

  ymin=12x

  ymax=12x+M-12N(Xa

  ymin=2x+M-12N

  ymax=12x+M-12N(x≥Xb)。(8)也可能会出现Xa>Xb的情况,此时规划匹配的3段为(1,Xb),(Xb+1,Xa)和(Xa+1,N)。

  2.2加权距离

  传统的DTW算法在计算特征之间的距离时对每个特征同等对待[10],然而,不是所有的骨骼点同等参与手势识别。比如,手势"右手向右移动"中的左手骨骼点的运动是无意义的,同等的计算其运动位移将增加噪声。因此,我们根据手势类中参与骨骼点的贡献度的不同引入加权距离。

  在每一个具体手势分类中,每一个骨骼点的贡献度是不同的,为了推断一个骨骼点对一个手势类中的贡献度,通过计算它通过的位移Dgj,即Dgj=∑Nn=2Distj(fgn,fgn-1),(9)式(9)中:g为手势分类;j为骨骼点;n是骨骼帧数;Distj()为通过手势类g中2个连续的特征向量计算j的距离。

  计算出所有的位移,为了防止加参数化的加权距离模型输出太高或者太低的权重,设定阈值Da和Db排列这些位移,即Dgj=Da0≤Dgj

  Dgj-T1T2-T1(Db-Da)+DaT1≤Dgj

  Db其他。(10)用wgj表示骨骼点j在手势分类g中的权重,利用骨骼点的总位移,wgj可以表示为wgj=1-e-βDgj∑k(1-e-βDgj)。(11)骨骼点的权重可以根据不同的手势分类而改变,比如右手向右边移动这个手势,右手骨骼点有很大的权重,而左手骨骼点上的权重很小。从式(11)可以看出,式中只有一个参数β,通过选择β值最小化类里差异,同时最大化类间的差异。我们定义Dmn(β)作为手势类M和手势类N的所有采样的加权平均DTW代价,其通过给出的β来计算权重。然后这2个类之间的差异就是所有Dmn(β)的平均数:DB(β)=∑m∑nDmn(β)n≠m。(12)类里的差异就是分类g(其他的也遵循)的所有样本序列的DTW的平均,表示为R(β)=DBDw,(13)式(3)中:β是DTW开销计算中寻找加权距离的模型参数。当R有最大值时,获得的β和β*就是最佳的,如式(14)所示:β*=arg maxR(β)。(14)3实验结果分析

  3.1光照、复杂背景环境下鲁棒性验证

  为了验证该方法在光照、复杂背景方面的鲁棒性,分别在光照较强,光照较暗和背景有人的条件下进行了实验。以手势"双手向两边运动"为例,结果如图5-7。在这些环境下,都可以有效地获得正确的识别结果。

  图5复杂背景图6光线较暗图7光线较强3.2实时性和正确性验证

  本文定义了8个动态手势,每个手势对应一个手势类,选用了10名志愿者分别对每个手势正常做12次,一共采集960个手势样本,其中160个样本用来训练模板,800个用来测试。分别采用传统的DTW算法和改进的DTW算法对采集的动态手势数据与模板手势数据进行匹配,比较两者的处理时间和识别率。

  本文以手势1"右手向右移动"和手势3"双手向两边移动"为例计算其平均处理时间(单位:ms),如图8所示。

  图8耗时对比图从实验结果图8中可以看出,改进的DTW算法与传统的DTW算法相比,耗时减少25%~30%。

  表1为每个手势经过100次测试后的平均识别率对比。

  表1动态手势识别率表格

  动态手势测试数传统的DTW改进的DTW正确

  个数识别

  率/%正确

  个数识别率

  /%右手向上移动10081819999左手向上移动10080809898右手向左移动10075759999左手向右移动1007878100100右手向右移动10079799797左手向左移动10075759898双手向两边移动10065659595双手向中间移动10063639393


期刊库(http://www.zgqkk.com),是一个专门从事期刊推广、投稿辅导的网站。
  本站提供如何投稿辅导,寻求投稿辅导合作,快速投稿辅导,投稿辅导格式指导等解决方案:省级投稿辅导/国家级投稿辅导/核心期刊投稿辅导//职称投稿辅导。


  【免责声明】本文仅代表作者本人观点,与投稿辅导_期刊发表_中国期刊库专业期刊网站无关。投稿辅导_期刊发表_中国期刊库专业期刊网站站对文中陈述、观点判断保持中立,不对所包含内容的准确性、可靠性或完整性提供任何明示或暗示的保证。请读者仅作参考,并请自行承担全部责任。

 
QQ在线咨询
投稿辅导热线:
180-1501-6272
微信号咨询:
fabiaoba-com
咨询电话:18015016272 投稿邮箱:zgqkk365#126.com(#换成@)
本站郑重声明:文章只代表作者观点, 并不意味着本站认同。所载文章、数据仅供参考,使用前请核实,风险自负。
部分作品系转载,版权归原作者或相应的机构   若某篇作品侵犯您的权利,请来信告知.版权:周口博闻教育咨询有限公司 
Copyright © 2005-2023 . 期刊库 版权所有