英语原文共 5 页
基于leapmotion的动态手势识别
魏璐,IEEE会员,郑彤,朱景辉
摘要
动态手势识别是模式识别和计算机视觉社区中一项至关重要且具有挑战性的任务。本文提出了一种适用于表示动态手势的水平特征向量,并提出了一种用Leap Motion控制器(LMC)识别动态手势的令人满意的解决方案。这些在其他论文中没有报道。计算具有深度信息的特征向量并将其馈送到隐藏条件神经场(HCNF)分类器以识别动态手势。该方法的系统框架包括两个主要步骤:特征提取和HCNF分类器的分类。所提出的方法在两个动态手势数据集上进行评估,其中帧使用LMC获取。对于Handicraft-Gesture数据集,识别率为95.0%,和对于LeapMotion-Gesture3Ddatase,识别率为89.5%。实验结果表明,该方法适用于某些动态手势识别任务。
关键词: 深度数据,动态手势识别,隐藏条件神经场(HCNF),leapmotion控制器(LMC)。
- 引言
随着人机交互中许多交互式应用的发展,人类行为识别在模式识别和计算机视觉社区中越来越多地引起了人们的注意。动态手势识别是人类行为识别。然而,由于形状的高度可变性和手指之间的严重遮挡,该任务具有挑战性。
利用单眼视频传感器很难捕获如此丰富的动态手势,并且这种缺点限制了基于视频的手势识别的性能。近年来,创新的深度传感器,如Leap Motion控制器(LMC)[1]和Microsoft Kinect传感器[2],提供场景的三维(3-D)深度数据,为对象分割做出了很大贡献。和3-D手势识别[3]。而且,波特等人。在[4]中证明了用LMC识别手势的潜力。因此,在本文中,我们通过LMC识别动态手势。与Kinect传感器和其他深度传感器不同,LMC的输出是深度数据,包括手掌方向,指尖位置,手掌中心位置和其他相关点。因此,不需要额外的计算工作来获得这些信息。此外,LMC的定位精度高于其他深度传感器(约为0.2 mm [5])。最近,LMC被应用于研究人员的手势识别。例如,马林等人。使用LMC和Kinect传感器来识别美国手语(ASL)[1]和Xu等人。使用LMC识别十个简单的动态手势[6]。
已有几种手势识别系统[3],[7]。在[2]中,提取深度数据的细胞占用特征和轮廓特征,并将其输入基于动作图的分类器。在[8]中,提出了局部占用模式特征并将其输入到动作集合集模型中。在[9]中,面向图的定向梯度特征向量被提取并输入到基于SVM的分类器中。
此外,几种分类器通常用于手势识别[3],[10],如隐马尔可夫模型(HMM)[11],[12],条件随机场(CRF)[13],隐藏条件随机场(HCRF)[14],[15],动态时间扭曲[16]。在[17]中,王等人。引入HCRF以识别人类手势(例如,头部手势和手臂手势)。在[18]中,提出了隐藏条件神经场(HCNF)模型,它通过结合神经网络中使用的门函数来扩展HCRF。以前,HCNF只是应用于语音识别。但是,我们首次尝试在动态手势识别中使用HCNF。
在本文中,我们通过动态手写识别方法来了解LMC。基本框架图如图1所示。从深度数据中提取特征向量,并根据基于HCNF的数据进行动态识别动态手势。
II. 系统框架
动态手势识别被认为是顺序建模和分类的问题。本文特别提供了深度数据帧序列分类的解决方案,以及手势识别中的相应手势模型。所提方法的系统框架(如图1所示)包括两个步骤:1.特征提取,2.使用HCNF分类器进行分类。
- 特征提取
不像Kinect传感器,LMC输出深度数据帧,包括定位,处理,缩放数据,帧时间戳,旋转等。因此,LMC的特征提取时间小于Kinect传感器。本文中使用的特征基于手掌方向,手掌法线,指尖位置和深度数据框中的手掌中心位置数据(如图2所示),包括:
- 手掌方向D表示从手掌位置指向手指的单位方向矢量。
- Palm法线N是手掌的法线向量。
- 指尖位置Fi,i = 1,...,5,代表各个指尖的三维位置。
- 手掌中心位置C代表三维空间中的中心位置。
所提出的特征向量包含单个特征和双重特征。单指特征源于[1]中的工作,并且为了描述相邻指尖之间的相互作用,我们提出了双指特征。所有特征值都标准化为区间[0,1]。
这两种类型的特征描述如下:
1.单指特征:a)指尖距离Dfi =||Fi-C||/ M,i = 1,...,5,是指尖与指尖之间和掌中心的欧几里德距离。 M是欧几里德距离中心指针和中间指针。注意,除以M将指尖距离归一化到区间[0,1],同时使得该方法适用于不同角度的方法。尺度因子M可以在完全用于系统的情况下完全打开。
b)指尖角度Afi =ang;(Fpi-C,D)/pi;,i = 1,...,5,其中Fpi是Fi通过N在平面上的投影,是与投射的指尖相对于手掌方向的方向对应的角度D指数角用pi;标准化。
c)指尖高度Efi = sgn((Fi -FP i)·Delta;N)||Fi-FPi||/ M,i = 1,...,5,从对应于手掌区域的平面开始指尖。
2.双指特征:a)相邻的指尖距离Dafi =||Fi-Fi 1||/ M,i = 1,...,4,是相邻指尖之间的欧氏距离。
b)相邻的指尖角Aafi =ang;(Fi-Fi 1)/pi;,i = 1,...,4是相邻指尖之间的绝对角度。
建议的特征向量有两个主要的好处。首先,单指标功能有助于解决错误标记问题,这通常是由于在不同位置执行动态手势造成的。其次,双指特征有助于区分相邻指尖之间不同类型的相互作用。
- 使用HCNF分类器
HCNF的分类用于时间序列的分类(例如,语音识别)。本文中,基于aHCNF的分类器被用于识别动态手抄.HCN具有HCRF的优点,但也可以考虑不同类型的特征。
1.HCNF的图形结构:HCNF的图形结构如图3所示。通过引入门函数,HCNF是HCRF的扩展。从HCNF中,我们将观测值x映射到类标签y,其中xi是前一节中提出的特征向量。
AHCNF计算条件标签的条件概率由如下公式给出一组观测值。
(1)
其中s = {s1,s 2,...,sm},每个siisin;S捕获每个类的特定结构,S是模型中隐藏状态的集合。每个观察xi具有隐藏变量si = {gi,m i}的向量,其在特征向量序列上未被观察到。此外,gi对应于在观察中的提取结构,并且对应于每个子提取的混合成分。这两种隐藏变量可以捕捉表面变化。由theta;参数化的势函数psi;(y,s,x;theta;)isin;R测量标签,一组观察和隐藏状态的配置之间的兼容性。 psi;(y,s,x;theta;)如下所示
(2)
其中F1n(y,s,x)和F2n(y,s,x)是确定模型中特征的函数。 F1n(y,s,x)是从帧t中提取的原始观察特征函数,F2n(y,s,x)是从帧t和t-1.F1n(y,s,x)中提取的过渡特征函数和F2n(y,s,x)定义为
(3)
(4)
其中f1特征依赖于模型中的单个隐藏变量值,f2特征取决于值对,omega;和nu;是theta;的分量是对应于y,s和g的三元组的权重向量,如图4所示。 3.在我们的手势识别任务中,我们使用无向图结构编码特征x = {x1,x 2,...,xm}之间的空间一致性,其中隐藏变量{s1,s 2,..., sm}对应于图形中的顶点和图形边缘(si,sj)isin;E对应于变量si和sj之间的链接。 因此,f1和f2分别对应于图中的顶点和边缘,因此表示图的结构。 f1和f2定义为
(5)
(6)
此外,G(x)是一个门函数,定义如下:
(7)
在HCNF中,观察特征函数使用K门函数来考虑特征之间的非线性。 它允许HCNF能够考虑不同类型的功能。
2.训练:我们在训练参数时使用以下目标函数:
(8)
其中N是训练序列的总数。 logP(y|x,theta;)是数据的对数似然。对于我们的实验,我们使用准牛顿梯度上升方法来搜索最佳参数值theta;=argmaxtheta;L(theta;)。
- 推论:在[19],Sung等人。使用N最佳推理算法边缘化隐藏状态。虽然算法给出了合理的结果,但它不适合动态手势识别。因此,我们决定使用维特比算法进行推理。这意味着隐藏状态s在推理中不会被边缘化。
III.实验
A.动态手势数据集
我们使用LMC构建了两种动态手势数据集,即LeapMotion-Gesture3D数据集和Handicraft-Gesture数据集。每个数据集的所有深度数据帧都是使用LMC的特定API获取的。
- LeapMotion-Gesture3D数据集:目前大多数动态手势数据集都是用Kinect传感器捕获的,例如MSRGesture3D数据集[2]。为了比较我们的手势识别方法与其他方法的性能,我们建立了一个具有LMC的数据集,名为LeapMotion-Gesture3D,它模仿MSRGesture3D数据集。 此数据集包含ASL定义的手势子集。数据集中有12个手势:浴室,蓝色,芬兰,绿色,饥饿,牛奶,过去,猪和商店。
2.手工艺 - 手势数据集:为了用更实用的手势评估我们的方法,我们建立了一个名为Handicraft-Gesture的数据集。 该数据集包括十个手势,这些手势源自陶器技能,即捅,捏,拉,刮,拍,按压,切割,圆形,按键敲击,割草。 十个手势如图4所示。在两个数据集中,深度数据以60帧的持续时间被捕获。有10个主题用于构建数据集,每个数据集执行三次。因此,LeapMotion-Gesture3D和 Handicraft-Gesture数据集包含360和300个深度数据序列。
B.实验结果
我们实验中使用的评估指标是六次测试的平均识别准确度。在每个测试中,属于七个随机选择的对象的手势用于训练,并且属于其余三个对象的手势用于测试。因此,训练集和测试集中都没有出现主题。第一组实验使用基于HCNF的分类器评估了LeapMotion-Gesture3D数据集的不同特征的突出性。 实验结果总结在表I和表II中。表II分别显示了[1],[16]和[20]中的特征集的识别精度。
由于精度低,速度,加速度,链码,手距,侧倾和偏航特征不适合描述手指之间具有丰富相对运动的动态手势的特征。另外,我们没有使用指尖位置的特征,因为我们的方法中已经使用的Df和Daf的特征是基于指尖位置的信息。
单指标特征在[1]中提出。因此,单指特征的结果与[1]中的结果类似。为了描述相邻指针之间的相互作用,我们提出了双指特征。表I还显示,双指特征比单指特征获得更高的分数。此外,单指特征与双指特征的组合可以获得高强度,如表III所示。此外,我们已经进行了一系列实验来选择隐藏状态数和门数的最佳组合,以及不同的设置具有相应的识别精度列于表IV中。 LeapMotion-Gesture3D数据集的最佳准确度为0.895,发生在7个隐藏状态和12个门。
在[17]中,Wang等人通过实验证明,HCRF在某些手势识别任务中优于CRF和HMM。此外,HCNF通过结合神经网络中使用的门函数来扩展HCRF。由于HCRF通过对线性加权特征求和来计算假设的得分,因此不能考虑对手势识别至关重要的特征之间的非线性。与HCRF相比,HCNF可以包含任何类型的功能,更适合我们的任务。表III比较了使用基于HCRF的分类基于HCNF的分类器与相同的特征向量的识别精度。基于HCNF的分类器在我们的实验中优于基于HCRF的分类器。
表V将所提方法的性能与[2]和[21]中提出的方法进行了比较。在MSRGesture3D数据集上,我们的方法的准确性高于其他两种方法。值得指出的是,我们的方法仅使用LMC,而另外两种方法使用Kinect传感器。也就是说,我们的方法可以很好地解决动态手势识别任务,只需使用低成本的LMC。
此外,我们使用HandicraftGesture数据集测试了我们提出的方法。HandicraftGesture数据集的最佳精确度为0.950,发生在4个隐藏状态和12个门。结果与LeapMotion-Gesture3D数据集上的结果类似。表VI显示双指特征比单指特征获得更高的分数。 此外,单指
以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。