Leap Motion与Kinect的手势识别外文翻译资料

 2022-12-11 20:27:39

英语原文共 5 页,剩余内容已隐藏,支付完成后下载完整资料


毕业论文(设计)

英文翻译

原文标题 HAND GESTURE RECOGNITION WITH LEAP MOTION AND KINECT DEVICES

译文标题 基于Leap Motion与Kinect的手势识别

Leap Motion与Kinect的手势识别

Giulio Marin1, Fabio Dominio1, Pietro Zanuttigh1

1 帕多瓦大学信息工程系,意大利 帕多瓦

摘要:最近引入的如Leap Motion和Kinect的新型采集设备,使用于开发精确手势识别的手势信息描述成为可能。本文提出了一种新型手势识别方案,能够精确定位Leap Motion数据。通过向多类型SVM分类器计算和输入基于指尖的位置和方向的ad-hoc特征集,来实现对执行手势的识别。其中一组功能还能从Kinect提取深度计算结果并结合Leap Motion,以此来提高识别功能。实验结果表明,对两个美国人工字母表子集设备精确度的比较,和通过结合两个功能集表明,获得超高实时精度已成为可能。

关键词:深度,手势识别,Kinect,Leap Motion, SVM

1 引言

近年来,手势识别[1]吸引了越来越多的关注,因为在许多不同的领域,如人机交互、 机器人、 电脑游戏,自动手语翻译等的广泛应用。最初这些是依靠计算机视觉社区通过图像和视频[1,2]来解决问题的。最近引进的低成本的苏美尔深度相机,如飞行时间相机和微软的KinectTM[3],已经开辟了利用由这些设备获取的深度信息来改善手势识别性能的几种不同方法的方式。大多数方法是通过对一组相关功能从深度数据中提取应用机器学习技术来识别手势的。在[4]中,轮廓和单元占用特征用于构建形状描述符,然后基于动作图将其馈送到分类器。体积形状描述符和基于支持向量机的分类器由[5]和[6]使用。 [7]和[8]相反,比较手边缘点距手心的距离的直方图,以识别手势。在[9]和[10]的方法中,提取四种不同类型的特征并将其馈送到SVM分类器中。

最近引入的Leap Motion设备为手势识别的发展带来了新的机会。与Kinect不同,该设备明确地针对手势识别,并且直接计算手指的位置和手的方向。与诸如Kinect和类似的深度相机相比,它产生更有限量的信息(仅仅几个关键点而不是完整的深度图),并且其交互区域相当有限,但所提取的数据更准确(根据[11 ]精度为约200mu;m),并且不必执行图像处理任务来提取相关点。Leap Motion软件只识别几种运动模式,例如滑动和点击,但利用Leap Motion数据进行手势识别仍然是一个几乎未被探索的领域。参考手语识别的初步研究已经在[12]中提出,而在[13]中,作者使用该装置来控制机器人手臂。

本文介绍了首次尝试从Leap Motion获取的数据中检测手势的方法。 从传感器产生的数据中提取一组相关特征,并将其馈送到SVM分类器中以识别所执行的手势。使用Kinect也已经获得了相同的手势,并且本文给出了可以从两个设备的数据中获得的性能的比较,以及如何将它们组合在一起以提高识别准确度的方法。

本文按以下方式组织:第2节介绍了拟议系统的一般架构。第3节和第4节分别阐述从Leap Motion和Kinect数据中提取的特征描述符。然后分类算法在第5节中描述。实验结果在第6节,最后第7节得出结论。

2 总体概述

如图1给出了所提出的方法中的两个主要管线的总体概述,左侧是Leap Motion,右侧是Kinect设备。首先,从Leap Motion和Kinect的深度收集获取手的属性。然后从由两个设备获取的数据中提取一组相关特征。因为两个传感器提供不同的数据,所以从两个传感器中分别提取不同的特征集合。最后,多类支持向量机分类器应用于提取的特征,以识别所执行的手势。

图 1两种方法的框图

3 Leap Motion数据提取特点

与Kinect和其他类似设备不同,Leap Motion不返回完整的深度图,只返回一组相关的手势点和一些手势特征。图2突出显示了将在所提出的手势识别系统中使用Leap设备获取的数据,即:

bull;指尖的位置F,i = 1,...,N表示检测到的指针的3D位置(N是识别指针的数量)。 请注意,设备无法将每个3D位置与特定的手指关联。
bull;掌心C大致对应于3D空间中手掌区域的中心。
bull;基于两个单位向量的手方向,h从手掌中心指向手指,而n垂直于从手掌中心向下指向手(手掌)平面。 然而,这种估计不是很准确,取决于手指的安排。

图 2 Leap Motion数据收集

一个重要的发现是,虽然计算的3D位置是相当准确的(根据[11]中的研究,误差约为200mu;m),但是传感器并不总是能够识别所有的手指。不仅拍摄者彼此接触,而且折叠在手上或从摄像机视点隐藏,也不会被捕获,但在许多配置中,一些可见手指可能会丢失,特别是如果手不垂直于相机。此外,靠近手的突出物体,例如手镯或袖子的边缘,容易被手指混淆。这是非常关键的,因为在同一手势的不同执行中捕获的手指的数量可以变化。因此,简单地利用捕获数量的方法不能很好地工作。

还要注意的是,当前版本的Leap Motion软件不返回任何关于获取点和对应的手指之间匹配的信息,因此,值是随机排序的。在所提出的方法中,我们通过在相对于手方向h的指尖角的基础上对特征进行排序来处理这个问题。这对应于从大拇指到小指的顺序对它们排序。为了解决夹具未对准的问题,如图3所示,我们将由n描述并穿过C的平面划分为五个角区域Si = 1,...,5,并且根据手指投影之间的角度将每个捕获的手指分配给特定区域平面和手的方向h。注意,在扇区和指针之间没有一对一的匹配,即一些扇区S可以包含多于一个的指针,而其它的可以是空的。当两个手指位于相同的角度区域中时,如果尚未占据,则将两个手指中的一个分配给最近的相邻扇区,否则选择两个特征值之间的最大值。

图 3 手掌平面的角度区域

所有的特征值(角度除外)通过划分手心和中心点之间的距离值在区间[0,1]中被归一化 以使得该方法对于具有不同尺寸的不同手的人是稳健的。 当用户开始使用系统时,可以计算比例因子S。

因此,我们来介绍以下特性:

bull;指尖角,i = 1,...,5,其中是Fi在由n标识的平面上的投影,是对应于投影指向的方向到手的方向。实际捕获的手指数量会影响手的方向h,因此也会影响手指的角度。获得的值A已经被缩放到区间[0.5,1],以更好地区分有效间隔和已经被设置为0的缺失值。这些值也被用于将每个手指分配给相应的扇区。

bull;指尖距离Di = || Fi - C || / S,i = 1,...,5,是指尖距手心的3D距离。注意,如前所述,对于每个扇区存在至多一个特征值,并且缺失值已经被设置为0。

bull;指尖高度,i = 1,...,5表示指尖距离对应于手掌区域平面的距离,考虑到这样的事实,则手指可以属于由掌心平面定义的两个半空间中的任何一个。对于目标距离,每个扇区最多有一个特征值,并且缺失值已设置为0。注意,对于目标角度,值范围已缩放到区间[0.5,1]。

4 从数据提取特征

手势已通过Leap Motion和Kinect设备获得。对于Kinect数据的特征提取,我们采用由两个主要步骤构成的管线,即手首先从获取的深度和颜色数据提取,然后从对应于手的3D点计算两种不同类型的特征值。从颜色和深度数据中提取手特征可以使用[9]的方法进行:从深度图中的最近点开始分析,并且使用深度和3D距离上的阈值来提取候选手区域。此外,对手的颜色和尺寸进行进一步检查从而避免将更近的物体识别为手。

图 4 从两个设备提取的特征向量

然后,提取两种不同类型的特征。对于第一组特征,如在[9]中所描述的,建立来自手中心的手点的距离的直方图,即:

其中是对应于方向的手的角扇区,并且是点Xi和手中心之间的距离。有关直方图如何计算的详细描述,请参见[9]。我们还建立了一组参考直方图,每个手势g一个。与使用最大直方图的[9]不同,这里的特征值是当前直方图和参考直方图的移位版本之间的相关的最大值

其中g=1,...,G。注意,针对每一个候选手势执行计算,从而获得每个候选手势的不同特征值。 理想情况下与正确手势的相关性应当具有比其他特征更大的值。

第二特征集是基于手轮廓的曲率。该描述符基于多尺度积分算子,并如[9]和[10]中所述方式计算。多尺度描述符由Btimes;S条目Ci,i = 1,...,Btimes;S组成,其中B是仓的数量,S是所采用的水平尺度。

5 手势分类

根据第3节和第4节的特征提取方法可提供五个特征向量,分别描述从两个传感器提取的手部样本的相关属性。为了识别所执行的手势,所提取的特征被用于多类别支持向量机分类器中。每个获取的手势由两个特征集合描述。设置包含从Leap Motion数据提取的所有特征,而设置包含从Kinect数据提取的特征。通过连接两个集合[Vleap,Vkin]获得完整的特征集合。

为了识别手势,五个特征向量及其级联必须被分类为与所考虑的数据库的各种手势相对应的G类。所采用的分类算法为利用支持向量机(SVM)分类。已经使用基于一对一方法的多类SVM分类器[14],即使用一组G(G-1)/ 2二元SVM分类器来彼此测试每个类,并且每个输出对应一个特定手势。选择具有最大投票数的手势作为分类的输出。目前使用非线性高斯径向基函数(RBF)内核,同时通过网格搜索方法和对训练集的交叉验证来选择分类器参数。假设训练集包含来自M个用户的数据,为了执行网格搜索,我们用规则网格划分RBF内核的参数(C,gamma;)的空间,并且对于每对参数,训练集被分成两部分,一个包含M-1个用户进行培训,另一个用于验证和性能评估。我们重复每次用户用于验证过程的改变,并且选择给出最佳平均精度的几个参数。最后,我们用最优参数训练训练集的所有M个用户上的SVM。在[15]中已经提出了基于SVM的用于该任务的替代分类方案。

图 5实验结果的数据库中包含了来自美国手语(ASL)的手势

6 实验结果

为了评估所提出方法的性能,我们使用图6的设置获取了手势的数据集,可见于http://lttm.dei.unipd.it/downloads/gesture。 目前使用Leap Motion设备和Kinect传感器同时采集所执行的手势。数据库包含10个不同的手势(见图5),由14个不同的人执行。每个手势重复10次,总共1400个不同的数据样本。对于每个样本,第3节中报告的Leap Motion数据与Kinect提供的深度图和彩色图像一起获取。

图 6 获取设备

表1为利用第5部分介绍的分类算法从Leap Motion和Kinect的数据得到的准确度。我们允许获得大约76%精度的指尖距离特征,这样能够识别大多数姿势,但是G2和G3容易产生歧义。这是由于来自Leap Motion软件的手方向估计精度有限,导致这些手势的指纹与对应的角区域之间的匹配不可靠。一部分不准确性能通过其他两个特征解决,但是获得略微较低的总精度:从指尖角度计算为74.2%,从高程计算为73%。有趣的观察是,3个特征描述符捕获的执行手势的属性不同,通过将它们组合在一起,例如通过组合距离和高度来提高识别精度,可以达到大约80%的精度。如果通过将所有3个特征组合在一起,则可以获得81%的精度,这表示可以通过上述方法从Leap Motion数据获得最佳精度。

表 1 Leap Motion和Kinect的特征性能

Leap Motion

Kinect

功能

精度

功能

精度

指尖距离(D)

指尖角度(A)

指尖高度(E)

76.07%

74.21%

73

剩余内容已隐藏,支付完成后下载完整资料


资料编号:[27363],资料为PDF文档或Word文档,PDF文档可免费转换为Word

您需要先支付 30元 才能查看全部内容!立即支付