杂志的下一篇文章
一类多项式函数全局最小化的自适应过程
下一篇特刊文章
存储效率高的轨迹群集和k个-鲁棒隐私保护时空数据库的神经网络
期刊上的上一篇文章
基于阈值的历史连续查询的修剪优化
特刊上一篇文章
基于加权约束递归神经网络的经济相关数据预测
 
 
订购文章重印
字体类型:
宋体 佐治亚州 宋体,Verdana
字体大小:
澳大利亚 澳大利亚 澳大利亚
行距:
列宽:
背景:
第条

基于三维骨骼关节数据的实时手臂手势识别

通过
乔治奥斯·帕拉斯基沃普洛斯(Georgios Paraskevopoulos)
1,
Evaggelos Spyrou公司
2,3,*,
迪米特里奥斯·斯古罗普洛斯
2,
西奥多罗斯·吉安娜科普洛斯
2
菲沃斯·米洛纳斯
4
1
希腊佐格拉夫Iron Polytechnieou 9,157 73,雅典国立技术大学电气与计算机工程学院
2
信息与电信研究所,NCSR Demokritos,Neapoleos 10,153 41 Ag.Paraskevi,Greece
塞萨利大学计算机科学与电信系,希腊拉米亚351 00拉米亚老国道3公里
4
希腊科尔夫Platia Tsirigoti 7,491 00,Ionian大学信息学系
*
信件应寄给的作者。
算法 2019,12(5), 108;https://doi.org/10.3390/a12050108
收到日期:2019年3月29日/修订日期:2019年5月9日/接受日期:2019年5月15日/发布日期:2019年5月20日
(本文属于特刊挖掘人文数据2019)

摘要

:
本文研究了几种机器学习技术,提出了一种使用Kinect传感器进行实时手势识别的方法。我们提出了一种新的特征提取方法,使用提取骨架关节的测量值。提出的特征提取骨骼关节的角度和位移,因为后者移动到3D空间。我们定义了一组手势并构造了一个真实的数据集。我们训练手势分类器的假设是,它们应该应用于已知用户和未知用户并进行评估。11种分类方法的实验结果证明了我们的方法在所提出的数据集上的有效性和潜力,并与最先进的研究工作进行了比较。

1.简介

姿势和手势都可以用于交流,因为它们能够传达某种意义。姿势和手势识别旨在识别人类执行的此类有意义的表情。这些表情通常包括手、手臂、头部、面部表情,在某些情况下还包括整个身体的运动。他们的认可通常旨在促进人与计算机之间的接口。目前的应用范围从手语到游戏、医疗应用,甚至虚拟现实。通常,用户站在摄像机前,他/她的身体的某些部位会被检测和跟踪。然后提取特征并与模型进行比较,以便转换为一些预定义的手势。
在这项工作中,我们提出了一种手臂手势识别方法,该方法引入了一组新的特征。更具体地说,我们使用Kinect传感器及其软件开发工具包(SDK)提取和跟踪骨骼关节。使用这些关节的子集(对于我们要识别的手势集有意义),我们提取它们的三维坐标。然后,我们计算上述坐标集和描述特定手势的整个视频帧集的一组统计特征。在下文中,术语“手势”应指可能涉及手、手腕和肘部的手臂手势。我们研究了一些著名的机器学习算法在这些特征上的使用。此外,我们采用了两个真实场景。我们考虑这样一种方法可能被(a)一组有限的已知用户和(b)一组无限的已知和未知用户使用的情况。前一种情况对应于系统的所有用户都是预先已知的情况;即,系统应设计为仅在其上工作。后一种情况是,系统预先接受了一组可用用户的培训,但还需要使用以前未见过的用户。我们认为,这两种情况都可能涉及到实际场景,因为它们可能适合实际用户的需求,因此都需要解决和评估。
我们还提出了一个新的手势数据集,用于评估上述算法和场景。这组特征的定义是为了在语义上有意义,以反映小的手势变化到小的特征变化,并需要恒定的时间(就复杂性而言)。此外,我们还调查了手动过滤来自“恶作剧”用户的数据集,这些用户无法(有意或无意)提供可靠的手势,这是否会显著改善结果,同时值得付出努力。由于我们的最终目标是使用经过训练的模型实时提取特征并对相应的手势进行分类,因此我们在通用硬件架构中对我们的方法进行评估,更具体地说,是根据手势识别所需的时间进行评估。我们讨论了哪些算法适合在现实生活和实时应用中采用,以及精度和响应性之间的权衡。最后,我们与最新技术进行了广泛的比较,并讨论了与本文目标相似的研究工作。我们应该澄清,我们的方法不执行任何时间分割来检测可能手势的开始和结束;相反,我们认为这个问题已经解决了,即我们使用预先分割的视频,目的只是识别每个片段的手势。请注意,每个片段最多只能包含一个手势。
本文的其余部分组织如下:第2节介绍了利用骨骼数据进行手势识别的相关研究工作。第3节介绍了Kinect SDK和建议的特征提取方法。数据集和实验结果如所示第4节,其中我们还包括对最先进技术的讨论和比较。最后第5节,我们得出结论并讨论未来工作的计划。

2.相关工作

在过去的几年里,许多研究工作都集中在手势识别问题上。在本节中,我们展示了试图识别类似手势的作品,与本作品中识别的手势相似,并重点介绍了包括(但不限于)手臂手势的作品。
传统的机器学习方法,如人工神经网络(ANN)、支持向量机(SVM)、决策树(DT)或K近邻分类器(KNN)已经得到了广泛的应用。Bhattacharya等人[1]使用示例手势标记识别过程的开始,避免时间分割。他们的方法在三维骨骼关节坐标上使用SVM和DT。Lai等人[2]选择脊椎关节作为参考,计算肘部和手部的距离,并将其用作特征。为了识别手势,他们使用了KNN分类器。Mangera等人[]利用提取的序列关键帧和神经网络级联计算出的三维关节,首先对手势侧(左/右)进行分类,然后进行相应的手势识别。米兰达等人[4]使用SVM识别独特的关键姿势。他们将手势建模为关键姿势的序列,并使用决策森林进行识别。Ting等人[5]使用4D四元数描述关节,使用SVM识别手势。
由于一般来说,手势是速度不同的时间序列(例如,当由不同用户执行时),动态时间扭曲算法(DTW)[6]已经在许多作品中被利用,因为它能够精确地解决这个问题。Celebi等人[7]对每个人标准化的3D点使用动态时间扭曲(DTW)。Reyes等人[8]提出了一种以颈部为参考点的三维关节DTW特征加权变化。Ribó等人[9]提出了一种基于DTW、KNN分类器和一些启发式算法来提高性能的类似方法。Ibañez等人[10]使用三维关节,并将DTW与HMM进行比较,获得相同的精度。
隐马尔可夫模型(HMM)和高斯混合模型(GMM)也被频繁使用,因为它们能够解决时间模式识别问题。Anuj等人[11]通过将跟踪的关节投影到附加到用户的坐标系并与用户的方向对齐,将三维跟踪问题减少到二维。他们基于规则的方法基于HMM和自适应阈值。Gonzalez–Sanchez和Puig提出的技术[12]依赖于背景差分和头部/手部检测。手和头的3D位置与GHMM一起使用。Gu等人[13]对聚集的3D关节集使用HMM。Tran和Trivedi[14]检测头部和手,然后通过在过程中施加运动学约束来训练GMM。最后,尹和戴维斯[15]基于HOG和运动特征跟踪手并导出表示手形状的特征向量。然后,他们使用HMM的分层模型进行实时识别。
第5节我们总结了上述方法,重点介绍了使用的特征、应用的学习算法、处理的手势以及在每个数据集上实现的准确性。可以看出,在这项工作中,我们评估了传统的机器学习算法,如SVM、KNN、HMM、GMM和树模型。然而,我们应该在此提及,在过去几年中,研究工作已经转向基于深度学习的方法。后者能够学习特征,而不是使用算法计算特征。Lin等人[16]提出使用三维卷积神经网络(CNN)提取的深层时空特征和基于长短期记忆网络(LSTM)的骨架信息模型。王和王[17]采用两流递归神经网络,对动作的时间动态和空间配置进行建模。Mathe等人[18]使用CNN的原始骨骼数据,而Zhang等人[19]使用了3D CNN和卷积LSTM。然而,正如我们稍后将在第5节与基于特征的方法(如本文中提出的方法)产生的简单模型相比,深度学习方法通常会导致更复杂的模型,需要更多的计算资源。

3.手臂姿势识别

众所周知,姿势和手势都可以用来表达意思。我们可以将姿势定义为暂时停止运动,身体关节在空间中呈现出不同的形态。另一方面,手势的定义可能更复杂。根据韦氏词典(https://www.merriam-webster.com/dictionary/手势)手势可以被定义为“通常是身体或肢体的运动,表达或强调一种想法、情感或态度”,也可以被定义成“肢体运动作为一种表达方式的使用”。在科学文献中,对手势有几种定义。在计算机视觉和模式识别领域,Mitra和Acharya对手势的通用定义[20]已形成如下:“手势是一种富有表现力的、有意义的身体运动,包括手指、手、手臂、头部、面部或身体的物理运动,目的是:(1)传递有意义的信息或(2)与环境交互。”在这项工作的背景下,我们关注手势的子集,这可以称为“手势”[21]. 更具体地说,我们可以将手臂手势定义为一组(子)手臂关节(即手、腕、肘)从某一点的转移A类到点B类,使用模糊预定义的轨迹。

3.1. Microsoft Kinect SDK

为了提取骨骼数据,我们使用Microsoft Kinect[22]相机,它提供实时RGB、深度和骨骼跟踪信息,并基于Shotton等人的工作[23],为任何背景下的每个人提供了一个稳健的算法,无需校准步骤。人体由关节的结构图描述,表示其主要身体部位(例如手臂、腿、头、肩等)。对于每个关节,实时提取相应的三维坐标。图1我们描述了使用Kinect SDK提取的人体骨骼关节。我们应该注意到,在这项工作中,我们只对左右肘、手和手腕感兴趣。正如我们已经讨论过的,这些数据由每个关节的id和3D坐标组成。我们应该注意,关节是按层次结构组织的,其中隐含着父子关系;例如,根是髋关节中心,它的子代是脊柱、左堆和右堆等等。

3.2. 手势识别

所提议的一系列功能部分受到了盛的启发[24],他的作品扩展了鲁宾的作品[25]从二维空间到三维空间。更具体地说,让J型表示给定的接头。然后,通过 J型 c(c) J型 第页 我们相应地表示其子关节和父关节。还让 F类 , = 1 , 2 , , N个 表示给定的视频帧和 v(v) ( J型 ) = v(v) x个 , ( J型 ) , v(v) , ( J型 ) , v(v) z(z) , ( J型 ) 与三维坐标对应的向量J型在帧处 F类 此外,让 V(V) ( J型 ) 成为所有人的集合 v(v) ( J型 ) .签署人 B类 ( V(V) ( J型 ) ) 我们表示的3D边界框 V(V) ( J型 ) ,由 B类 ( V(V) ( J型 ) ) b条 B类 ( V(V) ( J型 ) ) 它两侧的两个不同长度。提取的特征如所示表1注意,每个特征都是针对给定关节计算的J型并且可能涉及不同的帧子集。符号总结如下表2.
更具体地说,我们提取了前两帧之间的空间角度(即。, F类 1 F类 2 ),最后两帧(即。, F类 N个 1 F类 N个 )以及第一帧和最后一帧(即。, F类 1 F类 N个 ),在所有情况下都使用对应向量的内积。此外,我们提取了总矢量角和平方总矢量角 F类 1 F类 N个 使用相应向量的内积,即。, v(v) 1 ( J型 ) v(v) N个 ( J型 ) 总矢量位移是对应于初始和最终位置的矢量差的大小J型,而总位移是J型在任意两个给定的连续帧内。同样,最大位移是J型在任意两个给定帧内。最后,我们为所有帧中关节的所有位置集建立了一个3D边界框,并相应地估计其对角线的长度和角度。请注意,从骨骼数据来看,我们只使用了关节的子集(即其3D坐标)。另外,请注意, J型 { 左肘,右肘,左手,右手,左腕,右腕}。标有*的特征仅使用HandLeft和/或HandRight计算。
也在两个父关节和子关节之间,即。, { J型 第页 , J型 } ,(或同等 { J型 , J型 c(c) } )我们计算初始和最终(即 F类 1 F类 N个 平均和最大角度(即 F类 1 , , F类 N个 ). 角度 θ 第页 c(c) 在这些计算中使用的是
θ 第页 c(c) = 余弦 1 第页 c(c) 2 + b条 第页 c(c) 2 c(c) 第页 c(c) 2 2 第页 c(c) b条 第页 c(c) ,
哪里
第页 c(c) 2 = v(v) x个 ( J型 ) v(v) x个 ( J型 c(c) ) 2 + v(v) ( J型 ) v(v) ( J型 c(c) ) 2 ,
b条 第页 c(c) = v(v) x个 ( J型 )
c(c) 第页 c(c) 2 = v(v) x个 ( J型 第页 ) 2 + v(v) ( J型 ) v(v) ( J型 第页 ) 2 .
注意,对于三角形的公式,我们使用带坐标的参考点 ( v(v) x个 , J型 第页 , 0 , 0 ) (可以使用任何给定的点)。该三角形的可视化表示如所示图1b、 其中 第页 c(c) , b条 第页 c(c) c(c) 第页 c(c) 已绘制。最后,在HandLeft(HL)和HandRight(HR)之间,我们提取最大值
d日 最大值 = 最大值 , j个 d日 v(v) 人力资源 , v(v) j个 HL公司 ,
和平均距离,
d日 意思是 = 1 F类 ( J型 ) , j个 d日 v(v) 人力资源 , v(v) j个 HL公司 ,
在手势中。d日我们表示欧几里德距离和 F类 ( J型 ) 是每个手势的帧数,也用作特征。距离d日HL和HR之间的关系如所示图1b。
根据[24]提取的特征应该被定义为满足以下标准:(a)它们需要恒定的时间;(b) 小的手势变化应该反映为对提取特征的小变化;(c)特征应具有语义意义。对于(a),上述提取的特征允许非常快速的特征提取,因为计算需要恒定的时间(即。, O(运行) ( 1 ) )每帧更新。符合标准(b)和(c),因为我们选择使用角度和位移相关特征,能够区分轻微的关节运动。此外,它们还包含关节执行手势的方式的良好语义表示,即作为一组相互连接但又不连续的点。

4.实验结果

4.1. 数据集

为了评估所提出的方法,我们构建了一个由10名用户(7名男性和3名女性)组成的真实数据集,这些用户都是22至36岁的人,身高从155厘米到190厘米不等。我们为双手定义了一组“滑动”(向上/向下/向内/向外滑动),从而产生了八种不同的手臂姿势。在“向上滑动”手势中,用户从双臂靠近臀部开始。然后,其中一只手臂垂直移动,手掌朝上,直到到达头部,然后返回。在“插入”手势中,用户开始时双臂紧贴臀部。然后,其中一只手臂垂直移动,手掌朝上,直到到达肩膀中心和臀部中心的大约中间。然后,它转向另一只手的方向,进行水平运动,手掌朝向它,直到它与连接肩膀中心和臀部中心的假想线对齐。然后,通过对角线运动,它返回到原来的位置。图2我们展示了一系列RGB和骨骼帧,用于同一用户用右手执行的“刷入”和“刷上”手势。“向外滑动”和“向下滑动”以及左手手势可能很容易想到,因为它们与上述对称。请注意,手掌的方向并不重要,但是,用户被指示执行上述更改,以便生成的手势更加“自然”
用户坐在Kinect前面;他们的距离约为2米,以确保骨骼被提取出来。从与手势对应的每个序列中,我们提取RGB-D原始数据和骨骼数据。请注意,RGB-D数据仅用于可视化目的,因为提议的方法仅依赖于骨骼数据。我们首先向用户演示了这些手势,以便他们在手势收集过程之前变得熟悉。在这个过程中,我们要求所有用户执行每个手势至少10次,然后我们手动清理数据集,让用户决定在他们觉得执行错误时“删除”一些已执行的手势。其中一名用户“调皮捣蛋”;他被要求在数据集生成过程中引入错误,因为我们想观察这些错误的影响。超过50%的手势都是故意做出的,而不是按照指示的正确方式做出的(例如,不完整、非常快/很慢、执行错误等)。该过程总共导致820个手势,其中约7.5%是上述用户的恶作剧行为的结果。请注意,除了恶作剧的用户外,没有一个用户有意伤害实验,他被明确指示这样做。
为了处理每个手势前后的“噪音模式”,并避免昂贵的时间分割步骤,用户配备了一个切换按钮,当按下该按钮时,相应地初始化/结束手势的录制。我们通过测试5-10次,让每个用户熟悉这个过程。通过这种方式,我们能够将手势与其他动作隔离开来。对于每个手势,我们记录了相关的骨骼数据并提取了中描述的特征集第3.2节这些手势中涉及的所有关节,即肘部、手腕和手。

4.2. 实验

我们已经对一组广泛使用的分类器进行了实验,这些分类器来自Scikit-learn工具箱[26]:(a)支持向量机[27]线性(LSVM)和非线性(RBFSVM,即具有径向基函数核);(b) k-最近邻分类[28]; (c) 朴素贝叶斯(NB)[29]; (d) 二次判别分析[30]; (e) 线性判别分析[30]; (f) 决策树(DT)[31]; (g) 随机森林(RF)分类器[32]; (h) 极随机树[33](它们是使用每个特征的随机阈值进行训练的集合,虽然倾向于生成更复杂的树,但需要的训练时间更少);(i) AdaBoost公司[34]使用DT(ABDT)和ET(ABDT)分类器。
为了对提出的方法进行实验评估,我们进行了两系列广泛的实验。第一个实验的目的是调查一组已知用户的性能。换句话说,我们将学习方法应用于一组“封闭”的用户,因此我们能够使用来自所有用户的训练和测试示例手势(当然,示例手势可能不会出现在两组中)。第二个实验的目的是调查一组未知用户的性能,即训练和测试集由不同用户的手势样本组成。通过这种方式,我们旨在研究我们的方法的泛化。实验是使用scikit-learn API进行的[26].
在每个实验中,分类器都使用最佳参数值集进行训练,该参数值集是通过交叉验证确定的。对于第一个实验,我们使用分层K折交叉验证程序评估了上述算法( K(K) { , 5 , 7 , 10 , 13 , 15 , 17 , 20 } ). 相应结果如所示图3,而最佳参数设置在表3我们可以观察到,ET分类器在RF之后取得了最佳性能。这表明集成树打包方法对于在由我们的特征构建的特征空间中分离样本是最佳的。尽管如此,其余分类器仍具有足够的性能,这给了我们权衡的灵活性(例如,计算复杂性的分类准确性)。
对于我们的第二个实验,我们选择了第一个实验中最准确的方法,即ET。我们对由1到9个用户组成的训练集进行了实验,而其余的样本则保留用于构建测试集。由于我们没有很好的启发式方法来在训练集和测试集中分割用户,因此我们考虑了每一种可能的组合,并用训练集中给定数量的用户计算了每个组合的平均准确度。这个实验有两个目标:(a)估计我们的方法对看不见的用户的泛化能力;以及(b)调查哪一个是最小用户数,以便在实际应用中获得可用的结果。
我们开始了这一系列的实验,使用了“留一个”(用户)的情况。对于这个实验,我们为测试集保留了一个用户的样本,同时在其他用户的样本上训练算法。表4我们看到了 F类 1 每个未知用户的手势分类得分。我们列出了 F类 1 每个手势的详细评分和平均值。
在下一个实验中,我们计算了训练集中用户数的平均分类精度。表4我们可以观察到,正如预期的那样,淘气的用户的分类分数要低得多,我们重复了这个实验,让这个用户完全从数据集中过滤掉。两个实验的结果在图4正如预期的那样,在没有恶意用户的情况下,系统的整体准确性要高得多,但由于我们包含了更多的用户,上述情况下的性能差异有所下降。值得注意的是,我们只使用了3-4个用户就能够训练出具有足够性能的分类器。图5图6我们分别绘制了每个手势的平均分类准确度,并将其作为训练中使用的用户数的函数,这些用户包括调皮的用户和不包括调皮用户的用户。此信息可用于更有效地设计自然用户界面(NUI),例如,通过将识别率较高的手势分配给最常见的操作。
最后,由于所提出方法的最终目标是实时识别手势,我们使用不同的体系结构进行了一系列实验,考虑到分类器可能(a)在功能强大的桌面处理器上运行,(b)在资源有限的系统上运行,如Raspberry Pi。我们构建了一个基准,其中 80 % 将数据集的 20 % 作为测试数据。我们对测试数据中的每个样本进行了1000次分类,并计算了每个分类器对样本所需的平均时间。结果如所示图7我们可以观察到,最准确的分类器,即ET和RF,比其他分类器慢得多,在桌面系统上的分类时间约为100 ms,在覆盆子Pi 2上的分类速度约为300 ms。然而,我们认为,尽管这些分类时间比其他算法慢,但ET分类器仍然可以在实时场景中使用,而不会影响用户体验。

4.3. 与最新技术的比较

为了评估所提方法的效率,我们使用MSR动作数据集进行了比较[35]. 该数据集包含20个手势,由10名受试者执行,每个动作执行2-3次,并使用与Kinect类似的深度传感器进行捕获。我们与李等人的工作进行了比较[35],它们是数据集的作者。我们还将其与Miranda等人的上述工作进行了比较[4],仅报告了测试III的结果表5根据建议的评估程序,对三个不同的数据集(即AS1、AS2和AS3)进行了三项测试,即测试I、II和III。在测试一和测试二中,所有受试者的样本都用于训练和测试(分别为1/3–2/3和1/2–1/2),而在测试三中,一半受试者用于训练,剩下的用于测试。我们可以观察到,我们的方法在使用AS3数据集时表现很好,在使用AS1时取得了令人满意的结果,而在使用AS2时,其性能下降。这是由于每个数据集中涉及的手势的复杂性。AS3由更简单的手势组成,这些手势更接近于我们在数据集中使用的手势,而AS2则由更复杂、更精细的手势组成。这些手势无法通过使用聚合特征进行一致和准确的识别。此外,AS1位于中间。我们还必须注意,我们的方法在测试III上表现良好,该测试评估了看不见的用户的性能,这是设计NUI时的一个主要问题。实验表明,我们的方法优于Li等人的方法[35]在AS1和AS3两者中并且平均而言。然而,Li等人的方法在测试I和II中取得了更好的结果,主要是因为我们的方法在AS2中表现最差。当然,由于在测试三评估中只考虑看不见的对象,我们觉得我们的方法与这两种方法相比具有优越性[35]而且[4]是MSR数据集评估的最显著结果。
我们还对[7],也用于评估[,9]. 该数据集包含与我们的数据集相似的手势,与MSR数据集的手势相比,这些手势要简单得多。相应结果如所示表6可以看出,通过识别所有示例,我们的方法表现出了出色的性能。终于到了表7我们将我们的系统与[36]. 该数据集由与我们相似的手势组成,并被分为三个子集:RotationDB、RelaxedDB和Rotation/RelaxedDB。对于第一个子集,用户通过相对于摄影机的位置插入旋转变形。对于第二个子集,用户以一种更轻松的方式执行手势,插入比手势需要更多的关节运动(例如,在执行刷子时搔搔头)。第三个子集包含两种类型的失真。我们可以观察到,我们的系统优于[36]对于这两种类型的注入畸变。最后,我们使用自己的数据集和Mathe等人的深度学习方法进行了比较[18]它使用卷积神经网络(CNN)。本案例的结果见表8可以看出,所提议的基于特征的方法显示了准确性,与CNN相比略有提高。请注意,在每种情况下,都遵循了所用数据集的评估协议,以确保研究工作之间的公平比较。

5.结论与讨论

在本文中,我们提出了一种旨在实时识别一组简单手势的方法。我们提出了一组从骨骼关节的三维位置提取的新特征,并使用几种著名的机器学习方法对其进行了评估。我们还介绍了一个由RGB、深度和骨骼数据组成的数据集,用于几种手势。
我们的方法是基于以下假设进行评估的:(a)一组有限的已知用户可以使用手势驱动的NUI,即训练集和测试集都将使用所有用户的手势示例构建;和(b)未知(以前看不到的)用户,即训练和测试集将不会有普通用户。实验结果表明,当使用ET进行分类时,我们的方法能够获得令人满意的结果,优于最先进的方法。此外,我们调查了恶作剧用户的影响,即(有意或无意)未能成功模仿示例手势的用户。我们表明,通过对这些用户的数据集进行清理,我们能够显著提高准确性。最后,我们比较了不同CPU结构下训练分类器的预测时间。
表9我们总结了第2节可以观察到,所包含的大多数研究工作并没有提出关节的一组特征;相反,它们使用关节坐标和许多情况下的启发式,这限制了它们扩展到其他手势的能力。此外,在大多数情况下进行的评估较差,大多数情况下仅限于3-5名受试者。使用自定义数据集和非公开数据集可实现高准确率。另一方面,我们提出了一种可扩展的方法,该方法使用特征,不依赖于启发式,并使用更大的用户集进行评估。
未来的工作将侧重于通过添加更复杂的手势和现有手势的更多示例来扩展手势集。我们还致力于研究更多的机器学习方法,并向更多的用户扩展我们的数据集。我们还打算在智能会议室的背景下使用这种方法[37]在物联网生态系统中开发[38]. 其中,它可以作为控制室内设备(例如HVAC、灯光、投影仪等)的替代手段,并将转换为公开的web服务。当然,在这种情况下,需要对执行的手臂手势进行时间分割或连续识别。这样的分割可以通过查找参与者的静态位置来执行[39],通过应用由连续视频帧组成的滑动窗口卷[40],甚至通过使用聚类和关键帧提取以完全无监督的方式[41].
我们应该注意到,为了避免上述时间分割的计算昂贵的任务,手势识别的初始化可能会被触发,例如,使用预定义的姿势,这也应作为选择要控制的设备的手段。我们计划进行定量和定性评估,也就是说,在智能环境中使用这种方法时,还要评估用户体验。最后,在完成上述功能后,我们计划由实际用户进行评估。我们计划调查的问题之一是,对于无法成功执行(某些)预定义手势的用户,即患有限制、残疾或帕金森氏症等疾病的人,所提议的方法的有效性。
最后,我们应该注意到,手势识别领域的研究已经转向使用原始RGB-D数据的深度学习方法,例如,在Zhang等人的工作中[19]和复杂的深层网络架构。然而,尽管这些方法能够实现更高的准确率,通常不需要手工制作的特征,但它们通常会生成需要大量数据进行训练的更复杂模型。此外,此类模型可能无法使用低端硬件(如Raspberry Pi)实时运行推断,这在多个物联网项目中经常采用。另一方面,如果模型运行在功能更强大的服务器上,则原始数据流的网络开销可能是一个瓶颈。因此,我们认为在未来几年内,结合传统机器学习方法的手工特征仍将用于数据或计算受限的应用程序。

作者贡献

概念化、G.P.和E.S。;数据管理,G.P。;调查,D.S。;方法,E.S。;监督、E.S.、T.G.和P.M。;验证,D.S。;书面原稿、G.P.、E.S.和T.G。;写作审查和编辑、G.P.、E.S.、T.G.和P.M。

基金

我们感谢SYNTELESIS项目“基于物联网和云计算的创新技术和应用”(MIS 5002521)对这项工作的支持,该项目是根据“研究和技术部门战略发展行动”实施的,由“竞争力、企业家精神和创新”业务计划(国家战略参考框架2014-2020)资助,由希腊和欧洲联盟(欧洲区域发展基金)共同资助。

利益冲突

作者声明没有利益冲突。

工具书类

  1. 巴塔查里亚,S。;Czejdo,B。;Perez,N.使用运动传感器数据进行机器学习的手势分类。2012年11月30日至12月1日在印度加尔各答举行的2012年第三届信息技术新兴应用国际会议记录。[谷歌学者]
  2. 赖,K。;Konrad,J。;Ishwar,P.使用kinect的手势驱动计算机界面。2012年4月22日至24日,美国新墨西哥州圣达菲,西南地区图像分析与解释研讨会(SSIAI)会议记录。[谷歌学者]
  3. 曼格拉,R。;Senekal,F。;Nicolls,F.用于上身手势识别的级联神经网络。2014年8月14日至15日,捷克共和国布拉格,机器视觉和机器学习国际会议记录。[谷歌学者]
  4. 米兰达,L。;维埃拉,T。;马丁内斯(D.Martinez)。;Lewiner,T。;维埃拉,A.W。;Campos,M.F.通过关键姿势学习和决策森林从深度数据实时识别手势。2012年8月22日至25日,巴西乌罗普雷托,第25届IEEE图形、模式和图像会议(SIBGRAPI)会议记录。[谷歌学者]
  5. H.Y.Ting。;西姆(Sim,K.S.)。;阿巴斯,F.S。;Besar,R.使用Kinect传感器进行基于视觉的人体手势识别。第八届机器人、视觉、信号处理电源应用国际会议; 施普林格:新加坡,2014年。[谷歌学者]
  6. Albrecht,T。;Muller,M.动态时间扭曲(DTW)。音乐与运动信息检索; 施普林格:德国柏林/海德堡,2009年;第70-83页。[谷歌学者]
  7. Celebi,S。;艾丁,A.S。;特米兹,T.T。;Arici,T.使用带有加权动态时间扭曲的骨架数据进行手势识别。《VISAPP会议记录》,西班牙巴塞罗那,2013年2月21日至24日;第620-625页。[谷歌学者]
  8. Reyes,M。;多明格斯,G。;Escalera,S.深度数据手势识别动态时间扭曲中的特征权重。2011年11月6日至13日,西班牙巴塞罗那,2011年IEEE国际计算机视觉研讨会(ICCV Workshops)会议记录。[谷歌学者]
  9. Ribó,A。;Warcho,D。;Oszust,M.使用动态时间扭曲和最近邻分类器对骨骼数据进行手势识别的方法。《国际情报杂志》。系统。申请。 2016,8, 1–8. [谷歌学者] [交叉参考]
  10. 伊巴内兹(Ibanez,R.)。;索里亚,Á。;Teyseyre,A。;Campo,M.Kinect的简单手势识别。高级工程师软件。 2014,76, 171–180. [谷歌学者] [交叉参考]
  11. Anuj,A。;马利克,T。;Das,P.P。;Majumdar,A.K.通过手动测量对应用程序进行稳健控制。第五届计算机视觉第五届全国模式识别、图像处理和图形会议(NCVPRIPG)会议记录,印度巴特那,2015年12月16-19日。[谷歌学者]
  12. Gonzalez-Sanchez,T。;Puig,D.使用深度相机进行实时身体手势识别。电子。莱特。 2011,47, 697–698. [谷歌学者] [交叉参考]
  13. 顾毅。;Do,H。;欧,Y。;Sheng,W.通过运动传感器进行人体手势识别。2012年12月11日至14日,中国广州,IEEE机器人和仿生学国际会议(ROBIO)会议记录。[谷歌学者]
  14. Tran,C。;Trivedi,M.M.,智能空间中交互的三维姿势和手势识别。IEEE传输。Ind.通知。 2012,8, 178–187. [谷歌学者] [交叉参考]
  15. Yin,Y。;Davis,R.用于自然人机交互的实时连续手势识别。2014年7月28日至8月1日,澳大利亚墨尔本,IEEE视觉语言与以人为本计算研讨会(VL/HCC)会议记录。[谷歌学者]
  16. 林,C。;Wan,J。;梁,Y。;Li,S.Z.基于掩蔽Res-C3D网络和骨架LSTM的改进融合模型的大尺度孤立手势识别。2018年5月15日至19日,中国西安,第13届IEEE自动人脸和手势识别国际会议记录。[谷歌学者]
  17. Wang,H。;Wang,L.使用两流递归神经网络建模动作的时间动力学和空间配置。2017年7月21日至26日,美国夏威夷州火奴鲁鲁IEEE计算机视觉和模式识别会议(CVPR)会议记录。[谷歌学者]
  18. 数学,E。;Mitsou,A。;斯皮鲁,E。;Mylonas,P.使用卷积神经网络进行手臂手势识别。2018年9月6日至7日在西班牙萨拉戈萨举行的2018年第13届语义和社交媒体适应与个性化(SMAP)国际研讨会论文集。[谷歌学者]
  19. 张,L。;朱,G。;沈,P。;宋,J。;Shah,S.A.公司。;Bennamoun,M.使用3DCNN和卷积LSTM学习手势识别的时空特征。2017年7月21日至26日在美国夏威夷州火奴鲁鲁举行的IEEE计算机视觉和模式识别会议记录;第3120–3128页。[谷歌学者]
  20. 密特拉,S。;Acharya,T.手势识别:一项调查。IEEE传输。系统。人类网络。C部分申请。版次。 2007,37, 311–324. [谷歌学者] [交叉参考]
  21. 王,S.B。;夸托尼,A。;莫伦西,L.P。;Demirdjian,D。;Darrell,T.隐藏手势识别的条件随机字段。2006年6月17日至22日,美国纽约州纽约市,IEEE计算机学会计算机视觉和模式识别会议记录;第2卷,第1521-1527页。[谷歌学者]
  22. Zhang,Z.微软kinect传感器及其效果。IEEE多媒体杂志 2012,19, 4–10. [谷歌学者] [交叉参考]
  23. 肖顿,J。;夏普,T。;Kipman,A。;Fitzgibbon,A。;费诺奇,M。;A.布莱克。;库克,M。;Moore,R.单深度图像中部分实时人体姿势识别。Commun公司。ACM公司 2013,56, 116–124. [谷歌学者] [交叉参考]
  24. 盛,J。Adaboost在三维手势识别中的研究; 多伦多大学计算机科学系:加拿大安大略省多伦多市,2003年。[谷歌学者]
  25. D.鲁宾。通过示例指定手势; ACM:美国纽约州纽约市,1991年;第25卷,第329-337页。[谷歌学者]
  26. 佩德雷戈萨,F。;瓦罗佐,G。;Gramfort,A。;米歇尔,V。;蒂里昂,B。;格里塞尔,O。;布隆德尔,M。;普雷滕霍弗,P。;Weiss,R。;杜堡,V。;等。Scikit-learn:Python中的机器学习。J.马赫。学习。物件。 2011,12, 2825–2830. [谷歌学者]
  27. 瓦普尼克,V.N。统计学习理论; 威利:美国新泽西州霍博肯,1998年。[谷歌学者]
  28. 封盖,M.T。;Hart,E.P.最近邻模式分类。IEEE传输。Inf.理论 1967,13, 21–27. [谷歌学者] [交叉参考] [绿色版本]
  29. 多明戈斯,P。;Pazzani,M.关于简单贝叶斯分类器在零损失下的最优性。机器。学习。 1997,29, 103–130. [谷歌学者] [交叉参考]
  30. 麦克拉克伦,G。判别分析与统计模式识别; 威利:霍博肯,新泽西州,美国,2004年。[谷歌学者]
  31. 布雷曼,L。;弗里德曼,J。;斯通,C.J。;奥申,R.A。分类和回归树; 泰勒和弗朗西斯:阿宾顿,英国,1984年。[谷歌学者]
  32. Breiman,L.《随机森林》。机器。学习。 2001,45, 5–32. [谷歌学者] [交叉参考]
  33. 格茨,P。;Ernst,D。;Wehenkel,L.极端随机树。机器。学习。 2006,63, 3–42. [谷歌学者] [交叉参考] [绿色版本]
  34. 弗伦德,Y。;Schapire,R.E.在线学习的决策理论概括及其在助推中的应用。计算学习理论; 施普林格:柏林/海德堡,德国,1995年;第23-37页。[谷歌学者]
  35. 李伟(Li,W.)。;张,Z。;基于一包三维点的动作识别。2010年6月13日至18日,美国加利福尼亚州旧金山,计算机视觉和模式识别国际会议(CVPR)研讨会论文集。[谷歌学者]
  36. 阿里奇,T。;Celebi,S。;艾丁,A.S。;使用特征预处理和加权动态时间扭曲的鲁棒手势识别。多媒体工具应用。 2014, 3045–3062. [谷歌学者] [交叉参考]
  37. 斯菲卡斯,G。;阿卡西亚迪斯,C。;Spyrou,E.使用物联网方法创建智能房间。2016年5月18日至20日在希腊塞萨洛尼基举行的第九届希腊人工智能会议《人工智能和物联网研讨会(AI-IoT)会议记录》。[谷歌学者]
  38. Pierris,G。;Kothris,D。;斯皮鲁,E。;Spyropoulos,C.SYNAISTHISI:当前物联网生态系统的支持平台。《泛希腊信息学会议记录》,希腊雅典,2015年10月1日至3日;ACM:美国纽约州纽约市,2015年。[谷歌学者]
  39. 彭,X。;Wang,L。;蔡,Z。;乔,Y.超向量表示的动作和手势时间点提取。欧洲计算机视觉会议; 施普林格:瑞士查姆,2014年。[谷歌学者]
  40. 北卡罗来纳州卡姆戈兹。;哈德菲尔德,S。;O.科勒。;Bowden,R.使用卷积三维神经网络进行用户依赖的连续手势识别。在2016年12月4日至8日于墨西哥坎昆举行的第23届国际模式识别会议记录中。[谷歌学者]
  41. 哈查,T。;Ogiela,M.R.全身运动识别——采用启发式R-GDL方法的无监督学习方法。数字。信号处理。 2015,46, 239–252. [谷歌学者] [交叉参考]
图1。()使用Kinect软件开发工具包(SDK)提取人体骨骼三维关节。(b条)给定节点的可视化表示J型,其父级 J型 第页 和它的孩子 J型 c(c) ; , b条 , c(c) , d日 ,用于方程式(2)–(6)和参考点 ( v(v) x个 , J型 第页 , 0 , 0 ) .
图1。()使用Kinect软件开发工具包(SDK)提取人体骨骼3D关节。(b条)给定节点的可视化表示J型,其父级 J型 第页 和它的孩子 J型 c(c) ; , b条 , c(c) , d日 ,用于方程式(2)–(6)和参考点 ( v(v) x个 , J型 第页 , 0 , 0 ) .
算法12 00108 g001
图2。对齐的RGB和骨骼图像()向上滑动和(b条)由同一用户执行的刷入手势。
图2。对齐的RGB和骨骼图像()向上滑动和(b条)由同一用户执行的刷入手势。
算法12 00108 g002
图3。 K(K)-对所有机器学习方法和以下几个值的交叉验证结果进行折叠K(K).
图3。 K(K)-对所有机器学习方法和以下几个值的交叉验证结果进行折叠K(K).
算法12 00108 g003
图4。平均准确度与训练集中的用户数(有/无淘气用户)。
图4。平均准确度与训练集中的用户数(有/无淘气用户)。
算法12 00108 g004
图5。每个手势的平均准确度与训练集中的用户数之比,以及淘气的用户。
图5。每个手势的平均准确度与训练集中的用户数之比,以及淘气的用户。
算法12 00108 g005
图6。每个手势的平均准确度与训练集中的用户数之比,不包括淘气的用户。
图6。在没有恶意用户的情况下,每个手势的平均准确度与训练集中的用户数量之比。
算法12 00108 g006
图7。比较几种体系结构中样本分类所需的平均时间。
图7。比较几种体系结构中样本分类所需的平均时间。
算法12 00108 g007
表1。从骨骼关节提取的拟议特征(标有*的特征仅使用HandLeft和/或HandRight计算)。
表1。从骨骼关节提取的拟议特征(标有*的特征仅使用HandLeft和/或HandRight计算)。
功能名称涉及的框架方程式
空间角度 F类 2 , F类 1 电弧炉 v(v) 2 ( J型 ) · v(v) 1 ( J型 ) v(v) 2 ( J型 ) · v(v) 1 ( J型 )
空间角度 F类 N个 , F类 N个 1 电弧炉 v(v) N个 ( J型 ) · v(v) N个 1 ( J型 ) v(v) N个 ( J型 ) · v(v) N个 1 ( J型 )
空间角度 F类 N个 , F类 1 电弧炉 v(v) N个 ( J型 ) · v(v) 1 ( J型 ) v(v) N个 ( J型 ) · v(v) 1 ( J型 )
总矢量角 F类 1 , , F类 N个 = 1 N个 电弧炉 v(v) ( J型 ) · v(v) 1 ( J型 ) v(v) ( J型 ) v(v) 1 ( J型 )
平方总矢量角 F类 1 , , F类 N个 = 1 n个 电弧炉 v(v) ( J型 ) · v(v) 1 ( J型 ) v(v) ( J型 ) v(v) 1 ( J型 ) 2
总矢量位移 F类 N个 , F类 1 v(v) N个 ( J型 ) v(v) 1 ( J型 )
总排水量 F类 1 , , F类 N个 = 1 n个 v(v) ( J型 ) v(v) 1 ( J型 )
最大排量 F类 1 , , F类 N个 最大值 = 2 , , N个 v(v) ( J型 ) v(v) 1 ( J型 )
边界框对角线长度 F类 1 , , F类 N个 B类 ( V(V) ( J型 ) ) 2 + b条 B类 ( V(V) ( J型 ) ) 2
边界框角度 F类 1 , , F类 N个 阿卡坦 b条 B类 ( V(V) ( J型 ) ) B类 ( V(V) ( J型 ) )
表2。本文中使用的符号及其描述。
表2。本文中使用的符号及其描述。
符号定义
J型给定的关节
J型 c(c) , J型 第页 的子/父关节J型分别为
F类 给定的视频帧, = 1 , , N个
v(v) J型 三维坐标向量J型 F类
v(v) x个 , ( J型 ) , v(v) , ( J型 ) , v(v) z(z) , ( J型 ) 的三维坐标 v(v) J型
J型 设置所有关节
V(V) J型 所有向量的集合 v(v) J型 , J型 J型 , = 1 , 2 , , N个
B类 ( ) 一组向量的3D边界框
B类 ( ) , b条 B类 ( ) 侧面的长度 B类 ( )
表3。最佳分类器参数( α :学习率;n个:邻居数量;e(电子):估计数;:搜索算法;d日:最大深度;:点之间的度量第页q个;(f):最大特征数;第页:正则化参数)。
表3。最佳分类器参数( α :学习率;n个:邻居数量;e(电子):估计数;:搜索算法;d日:最大深度;:点之间的公制第页q个;(f):最大特征数;第页:正则化参数)。
分类器参数
ABDT公司 e(电子) = 103 , α = 621.6
ABET公司 e(电子) = 82 , α = 241.6
数据传输时间 d日 = 48 , (f) = 49
电子技师 d日 = 17 , (f) = 70 , e(电子) = 70
KNN公司 n个 = 22 , = k个 d日 _ t吨 第页 e(电子) e(电子) , = = 1 n个 ( 第页 q个 )
LSVM(LSVM) C = 0.0091
质量保证机构 第页 = 0.88889
RBFSVM公司 C = 44.445 , γ = 0.0001
射频 d日 = 27 , (f) = 20 , e(电子) = 75
表4。 F类 1 每个手势分别得分并求平均值 F类 1 为一个(用户)不做实验的所有手势打分。
表4。 F类 1 每个手势分别得分并求平均值 F类 1 为一个(用户)不做实验的所有手势打分。
用户1用户2用户3用户4用户5用户6用户7用户8用户9用户10
LH-扫掠0.760.8310.8210.801110.96
左侧刮水0.380.920.84110.921111
LH-扫掠0.610.930.86110.89110.971
LH-刮水0.690.9010.8410.83110.970.96
右侧扫掠0.7810.95-110.9210.871
右侧刮水0.6410.67-11110.890.96
右侧扫掠0.6110.80-110.95110.95
右侧扫掠0.4010.95- 1110.961
平均0.620.940.880.9210.920.9910.960.97
表5。使用MSR行动数据集对最新研究成果进行比较[35]. 结果表示准确度(%)。
表5。使用MSR行动数据集对最新研究成果进行比较[35]. 结果表示准确度(%)。
测试I测试II测试III平均。
 [35]我们的 [35]我们的 [35]我们的 [4] [35]我们的
AS1公司89.5085.3693.3091.3972.9089.2893.5085.2388.68
AS2公司8972.9092.9084.4071.9073.205284.6076.84
AS3公司96.3093.6996.3098.8179.2097.4795.4090.6096.66
平均。91.6083.9894.1791.5374.6786.6580.3084.2487.39
表6。使用以下数据集与最先进的研究工作进行比较[7].
表6。使用以下数据集与最先进的研究工作进行比较[7].
 [7] [] [9]我们的
科目(%)96.795.689.4100
表7。与[36].
表7。与[36].
旋转DBRelaxed数据库旋转/松弛DB
 [36]我们的 [36]我们的 [36]我们的
累计(%)不适用98.0197.1398.7496.6497.98
表8。与最先进的研究工作的比较[18],使用我们自己的数据集。
表8。与最先进的研究工作的比较[18],使用我们自己的数据集。
 [18]我们的
科目(%)9196
表9。最新技术的报告结果(按字母顺序)。第二栏(方法)总结了所使用的功能和学习方法。在第三栏(手势)中,与我们的工作相关的手势以粗体显示。第4列(Acc.(s.))显示了所用数据集达到的最佳精度以及括号中的受试者数量。
表9。最新技术的报告结果(按字母顺序)。第二栏(方法)总结了所使用的功能和学习方法。在第三栏(手势)中,与我们的工作相关的手势以粗体显示。第4列(Acc.(s.))显示了所用数据集达到的最佳精度以及括号中的受试者数量。
裁判。方法手势账户评论/缺点
[11]2D投影关节轨迹、规则和HMM滑动(左、右)、圆形、,手动升起,推动95.4 (5)启发式,不可扩展的规则,不同
不同动作的特点
[1]3D关节、规则、SVM/DT中性、T形、T形倾斜/磨尖(左,右)95.0 (3)使用示例手势来避免分割
 [7]标准。三维关节,Weig。DTW公司俯卧撑、下拉、,刷卡96.7(不适用)评估非常有限
[12]头部/手部检测,GHMM向上/向下/左侧/拉伸(L、R、B)、折叠(B)98.0(不适用)依靠头部/手部检测
[13]簇状节理来,走,坐,起,挥(L)85.0 (2)评估非常有限,速度较高时失败
[10]HMM、DTW圆圈、伸长率、冲孔、游泳、,滑动(左、右),粉碎96.0 (4)有限的评估
[2]与参考接头的差异,KNN刷卡(,R(右)、B)、推动(L、R、B),敲入/敲出97.2 (20)对时间错位敏感
[]3D关节、速度、ANNS公司刮水(左、右),俯卧撑(左、右),下拉(左、右),波(L,R)95.6(不适用)不适用于使用双手的手势
[4]姿势序列,决策森林张开双臂,转到下一个/上一个。第页,升高/降低右臂,
再见,日本人。招呼,把手举在前面/侧面
91.5 (10)姿势建模需要额外的努力,仅限于
由独特的关键姿势组成的手势
[8]三维运动类型,特征加权DTW跳跃、弯曲、拍打,招呼,注意68.0 (10)检测到手势的开始/结束
[9]3D关节、DTW和KNN滑动(左、右),俯卧撑(左、右),下拉(左、右),波(L,R)89.4(不适用)依赖于启发式
确定的参数
[5]4D四元数,SVM滑动(左、右)、拍打、挥舞、画圆/勾号98.9 (5)有限的评估
[14]头部/手部检测,运动约束,GMM打孔(左,右)、拍子、波浪(左,左)、哑铃卷曲(左,R)93.1 (5)依靠头部/手部检测
[15]手的运动和HOG特征,分级HMMS公司刮水(左、右)、圆圈、波浪、点、手掌向前、抓握66.0 (10)低于平均水平的表现
关于连续手势
我们的新颖的功能集向上/向下/向内/向外滑动(左、右)95.0 (10)可扩展,不使用启发式

分享和引用

MDPI和ACS样式

Paraskevopoulos,G。;Spyrou,E。;斯古罗普洛斯,D。;詹纳科普洛斯,T。;迈洛纳斯,P。使用3D骨骼关节数据实时识别手臂姿势。算法 2019,12, 108.https://doi.org/10.3390/a12050108

AMA风格

Paraskevopoulos G、Spyrou E、Sgoropoulos D、Giannakopoulos T、Mylonas P。使用3D骨骼关节数据实时识别手臂姿势。算法. 2019; 12(5):108.https://doi.org/10.3390/a12050108

芝加哥/图拉宾风格

Paraskevopoulos、Georgios、Evaggelos Spyrou、Dimitrios Sgouropoulos、Theodoros Giannakopoulos和Phivos Mylonas。2019.“使用3D骨骼关节数据进行实时手臂手势识别”算法12,编号5:108。https://doi.org/10.3390/a12050108

请注意,从2016年第一期开始,该杂志使用文章编号而不是页码。请参阅更多详细信息在这里.

文章指标

返回页首顶部