收藏 分销(赏)

基于Leap Motion的手语识别算法优化.pdf

上传人:自信****多点 文档编号:2083341 上传时间:2024-05-15 格式:PDF 页数:6 大小:2.41MB
下载 相关 举报
基于Leap Motion的手语识别算法优化.pdf_第1页
第1页 / 共6页
基于Leap Motion的手语识别算法优化.pdf_第2页
第2页 / 共6页
亲,该文档总共6页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

1、SOFTWARE2023软 件第 44 卷 第 8期2023 年Vol.44,No.8基金项目:江苏高校“青蓝工程”资助;基于 SAAS 平台的物料管理系统研发作者简介:杜淑颖(1981),女,江苏沛县人,硕士,副教授,研究方向:机器学习、信息安全;何望(1995),男,江苏宝应人,硕士,研究方向:图像识别、云计算。基于 Leap Motion 的手语识别算法优化杜淑颖1,2 何望2(1.徐州生物工程职业技术学院信息管理学院,江苏徐州 221000;2.中国矿业大学计算机科学与技术学院,江苏徐州 221116)摘要:Leap Motion 设备产生的数据在虚拟环境中可以进行手势识别。通过识别和

2、跟踪用户的手来生成虚拟 3D 手部模型,从而获取手势信息。本文设计了一种基于隐马尔可夫模型(Hidden Markov Model,HMM)分类算法来学习从 Leap Motion 中所获取的手势信息的系统,根据手势特征的重要性赋予不同权值,可进一步提高分类准确率,实现手语信息的识别输入。测试结果表明,识别准确率为 86.1%,手语打字输入识别速度为每分钟 13.09 个字符,可显著提高聋哑人与正常人之间沟通的便捷性。关键词:Leap Motion;手势识别;隐马尔可夫模型;手语翻译 中图分类号:TP309 文献标识码:A DOI:10.3969/j.issn.1003-6970.2023.0

3、8.002本文著录格式:杜淑颖,何望.基于Leap Motion的手语识别算法优化J.软件,2023,44(08):009-014Optimization of Sign Language Recognition Algorithm Based on Leap MotionDU Shuying1,2,HE Wang2(1.School of Information Management,Xuzhou Vocational College of Bioengineering,Xuzhou Jiangsu 221000;2.School of Computer Science and Techno

4、logy,China University of Mining and Technology,Xuzhou Jiangsu 221116)【Abstract】:The data generated by the Leap Motion device can be used for gesture recognition in a virtual environment.Gesture information is obtained by recognizing and tracking the users hand to generate a virtual 3D hand model.Thi

5、s paper designs a system based on the Hidden Markov Model(HMM)classification algorithm to learn the gesture information obtained from Leap Motion,and assigns different weights according to the importance of gesture features,which can further improve the classification accuracy.rate to realize the re

6、cognition input of sign language information.The test results show that the recognition accuracy rate is 86.1%,and the sign language typing input recognition speed is 13.09 characters per minute,which can significantly improve the convenience of communication between the deaf-mute and normal people.

7、【Key words】:Leap Motion;gesture recognition;Hidden Markov Model;sign language translation基金项目论文0 引言近年来,手势识别由于在不同领域的广泛应用而受到关注,如人机交互、虚拟人技术、电脑游戏、教育、手语翻译、虚拟手术以及家庭康复等。在工业环境中,手势识别可用于需要高精度的领域1,如控制机器人的触臂实现工业抓取设备等。Leap Motion 控制器可以在虚拟现实(VR)环境中实现手势控制,控制器会跟踪操作员的手以及手指的移动路线并且在所连接的系统上进行对应的识别操作2。Leap Motion 的工作原理类

8、似于电脑鼠标或触摸屏,但其操作是基于视频识别,Leap Motion 使用两个红外摄像头可以识别并模拟人手,并将其数据呈现在三维空间中3。Leap Motion 由于其手势识别模拟的特性也曾被广泛应用于阿拉伯语、印度语、土耳其语、希腊语、泰语、印度尼西亚语以及英语的手语识别4,Ameur 等人使用支持向量机(SVM)在表示指尖与手掌中心坐标的空间特征描述符上进行训练5,实现了约 81%准确率的手语识别。Chuan 等人使用对指尖之间的平均距离、相邻指尖之间的传播距离和两个相邻指尖之间的三重传播区域进行 SVM 训练,实现了 79.83%的识别10软 件第 44 卷 第 8 期SOFTWARE准

9、确率6。Hisham 和 Hamouda 使用手掌和骨骼特征数据集进行动态时间规整计算7,实现动态手势识别,达到了 96.4%的准确率。Lu 等人利用隐条件神经场(HCNF)分类器识别动态手势识别8,在动态手势数据集上实现了 89.5%的准确率。本文在 Leap Motion 设备的基础上建立了一个手语识别的系统,该系统使用 Leap Motion 记录用户的手势动作,并在 VR 环境中识别相应的手势,再对手势数据使用隐马尔可夫模型(Hidden Markov Model,HMM)进行分类8,该分类用于以无监督的方式识别手势序列。该系统最终应用于手语识别以及手语方式打字输入。1 Leap Mo

10、tion 手势特征提取及识别1.1 Leap Motion 介绍Leap Motion 有两个单色红外摄像头和三个红外发光二极管(LED)。这些 LED 会生成一个 3D 点模型,并且 Leap Motion 可以从单色红外摄像机获得 2D 图像来生成用户手的空间模型9。与处理完整人体骨骼的微软 Kinect 不同,Leap Motion 只跟随用户的手,并且可以预测手指、手掌或手腕的位置,以防它们被遮挡。Leap Motion 可以处理 25 600mm 的距离,150宽,让用户在空间中自由地执行手势。使用红外摄像机,可以设置每个手点的坐标。为了识别手势,需要通过确定前臂、手腕、手和手指的部

11、位来处理大量数据10。Leap Motion 软件从 3D 图像中接收 3D 空间骨架,对其进行分析并聚合成某些包含相应手部信息的对象。Leap Motion 控制器具有 3 个主要的手部对象:完整的手臂、手掌和手指。全臂物体提供有关手在空间中的位置、长度和宽度的信息。手对象保存有关手(左或右)位置和那只手的手指列表的信息。手势处理所需的 Leap Motion 最重要的部分是指尖对象,这也会保存每个人的基本骨骼数据。虽然 Leap Motion 设备能够识别人手,但它不能直接识别用户显示的手势,它只能模拟人手的空间模型,但该设备不具备根据这些数据判断用户何时显示单指手势的功能10。如图 1

12、所示,Leap Motion 设备展示了人手的 3D 空间模型。有了这个模型,就可以得到每只手的坐标、转动角度、骨骼或手掌中心等必要信息。如果此设备始终位于用户面前的相同位置并且用户将显示相同的手势,则该设备将可以采集与实际情况几乎相同的数据。Leap Motion 中前臂和空间中每个手指的位置都可以看到不带有任何运动的每个手势。如果设备具有运动手势的指示,并且可以将 Leap Motion 中的数据记录到数据库中,那么可以将其用作识别该手势的模型数据。识别静态手势只需要 3 个自由度(Degrees of Freedom,DoF):偏差、倾斜和俯仰。如果前臂和手指之间的角度相似,则识别出显示

13、的静态手势,这将导致某种运动的动态手势的识别是类似的。手势数据库包含每个手势的典型空间数据。当用户显示动态手势时,算法会检查每个图像帧的空间数据如何变化,如果变化与数据库中的数据相似,则识别出动态手势。1.2 手势识别系统架构连续识别手势所需的数据量会根据手势的数量呈指数增长。对于连续十个或更多的手势,手势识别系统的算法需要较长的时间,平均大约半分钟。然而,实际手语系统中的手势使用量是不确定的,又由于在线上训练需要大量计算资源,因此该系统是使用基于云的网络服务实现的。为了实现相对应的识别系统,本文采用了微服务架构(A Case of the Service-Oriented Architect

14、ure,SOA),SOA 将应用程序定义为一组松散耦合的服务11,如图 2 所示手势识别系统与网络服务的连接使得在多台计算机之间轻松分配系统所需的资源成为可能,所有手势识别数据都存储在远程手势数据库中。通过启动向同一个数据库发送请求的多个服务,可以管理算法训练,同时,还可以记录新手势、开展研究和应用识别新手势的算法。1.Leap Motiondevice2.GestureRecognition App(client)3.GestureRecognition Microservice4.GestureDatabase图 2 系统架构Fig.2 System architecture图 1 Lea

15、p Motion 手部模型Fig.1 Leap Motion hand model11杜淑颖 何望:基于 Leap Motion 的手语识别算法优化网络服务提供了从不同环境轻松访问手势识别系统的途径。Leap Motion 设备可用于使用 Unity 或 Unreal Engine 游戏引擎创建的游戏,并可轻松集成到任何Windows 应用程序或网页中。作为网络服务推出的手势识别系统允许多种不同的系统与其进行通信12。目前,由于安装更简单,使用了简单对象访问协议(Simple Object Access Protocol,SOAP),但系统可以轻松扩展以接受具象状态传输数据请求,此功能将允许从

16、任何环境访问手势识别系统。Leap Motion 设备记录的数据存储在 Microsoft 结构化查询语言(Microsoft Structured Query Language,MS SQL)数据库中,允许创建个性化的手势收集。1.3 手势识别Leap Motion 可以持续显示用户手部轮廓,当我们想要在手势开始时过滤掉这些镜头的序列时,会出现所有数据都发送到手势识别系统上无法很好被识别的问题,这种情况是由于某些手势可能由几种其他类型的手势组成13。比如在切换手势过程中,连续影像中的很多帧是手势切换的过程影像,并不是需要识别的目标内容。为了解决这个问题,将系统的状态作如下定义:(1)开始(S

17、tart):系统正在等待用户开始移动。如果指针开始移动,则不会开始转换到 Waiting 状态。(2)等待状态改变(Waiting Until the State Changes):如果系统没有看到手,则系统返回到开始状态。如果用户不移动手,系统进入静止手势锁定状态。(3)固定手势锁定状态(Stationary Gesture Lock State):用户在两秒钟内没有移动手并且手势是固定的,记录的手部模型数据被保存并转换为手势识别状态;如果用户在两秒钟内移动手,系统状态将更改为运动检测状态。(4)运动检测状态(Motion Detection State):如果设备无法跟随用户的手部,则保存

18、记录的手部模型数据,并将系统状态更改为手势识别状态。(5)手势识别状态(Gesture Recognition State):在此状态下捕获的数据被发送到手势识别子系统。当子系统返回结果时,将结果呈现给用户,系统进入数据清除状态。(6)数据清除状态(Data Clearing State):清除不需要的数据并进入开始状态。1.4 特征提取和预处理Leap Motion 控制器返回以真实世界坐标为单位的数据(以 mm 为单位)来代表 Leap Motion 参考系内的位置14。如图 3 所示,数据表示关键手部特征的 x、y 和 z 坐标(手腕位置、手掌位置、掌骨位置、手指的近端、中间和远端骨骼和

19、指尖位置)。本文介绍的特征提取方法如图 4 所示。提取了 4 种类型的手部特征,即指尖距手形心的 3D 位置、指尖在手掌平面上方的高度、两者之间的夹角、指尖到手掌中心的向量以及指尖角,其中指尖角是表示投射在手掌上的指尖方向的角度。Leap Motion 控制器包括 11 个手指关节的 3D 位置。对于每个手势,我们计算 7 个主要手顶点之间的欧几里得距离,代表拇指、食指、中指、无名指和小指的尖端位置、手掌位置和手腕位置。7 个顶点之间总共有21 个距离。此外,还生成了角度特征,代表 3 个不同顶点中任意一个之间的角度,代表另外 35 个特征。总共提取了 56 个特征(21 个距离和 35 个角

20、度)。为了使所有特征统一,应用了基于 z 分数的归一化,它通过减去均值并将其除以标准差来归一化数据。Fingertip PositionsPalm CenterHand OrientationPositionsDistancesElevationsAnglesTrainingHMM classifierRecognized sign图 4 特征提取方法图Fig.4 Feature extraction method diagram其中,手部运动的运动学模型描述如式(1)所示:coscossinsincoscossincossinsincos sinsinsinsincossinsinsinco

21、ssinsincoscoscosxuyvzw+=(1)图 3 Leap Motion 位置数据Fig.3 Leap Motion position dataArmBonesDistalIntermediateProximalMetacarpalPinkyRingMiddlelndexTip PositionThumbPalm PositionWrist Position12软 件第 44 卷 第 8 期SOFTWARE此处xyz 是 3D 坐标分量,uvw 是速度分量,是滚动角,是俯仰角,是手的偏转角。手模型的质心总速度 V 计算公式如式(2)所示:222Vuvw=+(2)各角度计算如式(3)

22、、式(4)、式(5)所示:arctanwu=(3)22arctanvvw=+(4)()arccos coscos=(5)其中 为迎角,为侧滑角,为全迎角。指尖距离代表指尖到手掌中心的距离,在模型中的定义如式(6)所示:Di=|Fi-C|,i=1,5 (6)此处 Fi是每个指尖的 3D 位置,并且 C 是与 3D 参考系中手掌中心相关联的 3D 位置。1.5 马尔可夫分类隐马尔可夫模型(HMM)被正式定义为 5 元组,表示具有一组状态和状态之间的转移概率的给定过程,如式(7)所示:Q=N,M,A,(7)这里 N 表示唯一可能状态的数量,除非通过一系列不同的可观察符号 M(也称为发射),否则无法直

23、接观察到这些状态;表示这些发射的离散/连续概率,A表示状态转换的概率,是起始概率。马尔可夫链的状态11,ttqqq=由观测数据的序列11,ttyyy=隐式定义。给定观察序列11,ttyyy=代表在时间 i 观察到的特征向量以及每个手势的单独 HMM,那么手语识别问题可以简单地通过计算来解决,如式(8)所示:()argmax,TTiiiQP yq=(8)这里的 i 对应的是第 i 个手势。使用观测序列和状态序列()11,TTP yq的联合概率可以找到观测序列()1TP y的概率,如式(9)所示:()()()()()()()()()()()()111111111111111111111111111

24、1121,TTTTTTTTTTTTTTTTTTTTTTTTTttttttP yqP yqyqP yqP yqyqP qyqP yqP yqP qqP yqP qP qqP yq=(9)这里 P(q1)是 q 在时间 1 的初始状态概率分布,P(qt q(t-1)是给定 q 在时间 t+1 的情况下 q 在时间 t 的概率,P(yt qt)是发射概率。我们使用前向-后向算法计算给定状态 qt的观察到的部分序列1ty的概率()1,ttP y q作为乘积中的条件概率,如式(10)、式(11)、式(12)所示:()()()11111,tttttttP y qP yyqP yq=(10)()()()11

25、1111,tttttttP y q qP qqP yq=(11)()()()1111111,tttttttqP yqP qqP yq=(12)我们得到以下方程如式(13)所示:()()()()111111,tttttttttqP y qP yqP qqP yq=(13)我们定义()()1,tqtP y q=,则式(13)可写为如式(14)所示:()()()()11qttttrrtP yQqQq Qrt=(14)这里 Qt是时间 t 的状态空间。我们计算从时间 t+1 到序列末尾的部分概率,给定qt如式(15)所示:()()()()1111qrttttrttP yQr P Qr Qq+=+=(1

26、5)这里()()1TqtttP yQq+=和 Qt是 t 时刻的状态。然后计算观察到的序列()1TP y的概率如式(16)所示:()()()()111,ttttTtTttqqqqP yP q yytt+=(16)对应于给定观察序列1ty的最可能状态序列1tq由概率1(|)ttP qy定义,1(|)ttP qy前向-后向变量的乘积,并通过观察序列的联合分布进行归一化,如式(17)所示:()()()()()()()()()()111111111,TtTtTttttttttTtTTTP q yP yqP qP yqP y qP yqP qyP yP yP y+=()()()()()()()()()(

27、)111111111,TtTtTttttttttTtTTTP q yP yqP qP yqP y qP yqP qyP yP yP y+=(17)最可能的状态是通过最大化 qt的1(|)ttP qy来测量的。计算出观察序列后,通过应用 Baum-Welch 算法进行 HMM 训练,计算转移矩阵 A 和发射矩阵 B 的值。在 HMM 训练之后,得到与该特征对应的最佳似然手势 Q 使用维特比算法找到向量序列(),TTiiP yq。2 实验分析2.1 参数与数据试点研究的参与者是 12 人,年龄在 20 48 岁之间(平均值:27.2),在使用计算机设备方面具有不同的经验15。所有受试者都是健康的(

28、没有已知的视力或 VR 疾病)并且不了解手语系统表达,因此,受试13杜淑颖 何望:基于 Leap Motion 的手语识别算法优化者接受了大约 1h 的事前培训,以了解手语的表达方式以及熟悉开发的系统和所使用的 VR 设备。实验使用了一台装有 Microsoft Windows 10 系统的传统台式计算机和 Leap Motion 设备,在正常的室内照明条件下放置在桌子上。在研究之前,参与者被要求取下戒指、手表,防止此类装饰物会影响结果。使用 Oculus Rift DK2 设备向受试者显示代表受试者手的三维空间模型的 Leap Motion 控制器的输出。参与者被要求执行由TC148(全国残

29、疾人康复和专用设备标准化技术委员会)归口上报及执行的国家标准中国手语基本手势中的 24 个手势(如图 5 所示)。每个手势执行 10 次,总共产生 2880 个数据样本。我们在 Leap Motion 环境中记录了参与者手部的手势,并拍摄了手部显示的真实手势,随后,对本研究的数据进行了分析。为了评估结果的准确性,实验使用独立于主题的交叉验证策略将收集的数据集划分为训练集和测试集,并将结果进行平均化处理以获得结果精度。图 5 手语字母表的字母手势Fig.5 Letter gestures of the sign language alphabet2.2 结果如图 6 所示显示了手势及其 Leap

30、 运动表示的示例。图 6 识别标志示例Fig.6 Example of identification mark这些实验是使用分层 10 倍交叉验证来实施的,并使用宏观准确性(对类别和折叠进行平均)性能测量进行评估。手势识别的结果如图 7 所示。平均识别准确率为 86.18.2%。在打字实验中,在前期训练期间,受试者学习了如何使用由软件应用程序和 Leap Motion 控制器组成的研究系统,然后他们的任务是每个全拼词打 3 遍。全字母组合以随机顺序呈现。如果出现错误,受试者被指示忽略错误并继续输入短语。我们使用每分钟字数(WPM)作为性能衡量标准,使用最小字符串距离(MSD)作为错误率。获得的

31、结果如图8 和图 9 所示,总结如下:3.090.53WPM 和 16.58 5.52MSD。Typing Speed(WPM)S1S2S3S4S5S6S7S8S9S10 S11 S12Subjects11.523.532.554.545.5图 8 所有受试者的手势打字表现Fig.8 Gestural typing performance of all subjects2.3 评估本文对手势标志的识别准确率达到了 86.1%,这些结果处于其他作者所达到的准确度范围内。并且参与本次研究的受试者并不是有经验的手语使用者,因此,手语手势的质量可能会对识别的准确性产生不利影响,且本次研究使用完整的句子

32、(全字母组合),这对图 7 手势识别的准确性Fig.7 Accuracy of gesture recognitionRecognition Accuracy(%)SignsA Z WY G L F O I J D V H U X P E C B S R K Q M T N60657085807590859014软 件第 44 卷 第 8 期SOFTWARE于受试者来说是一项更困难的任务。此外,使用头戴式 Oculus Rift DK 显示器将手势视图作为手的 3D 模型呈现给受试者,因此受试者在实验过程中无法看到他们的实际手,这可能会使手势任务变得更加困难。在分析记录的手势识别数据后,本文发

33、现检测手指之间的间隙存在问题。小间隙(1cm 或更小)的理解很少,例如,很难区分 C 和 O 标志的手势。需要精确拇指位置的手势也更难以确定。拇指经常被其他手指覆盖,这降低了 E、M、N、T、H、K、S、V 和 X 标志识别的准确性。某些手势的识别需要非常精确的手部3D 图像。这在 P 手势的手势中很明显,此时手指仅部分折叠(未握在拳头中),但手掌上的设备已识别出手指完全弯曲。字母 R 手势也存在这个问题,即手指必须交叉,但手指呈凹形,这种手势对应于手语中的字母 U。在某些情况下,部分折叠的手指被视为完全折叠。我们的研究揭示了用于手势分析的 Leap Motion 设备算法中的缺陷。当 Lea

34、p Motion 设备看不到某些手指时就会出现问题,则无法捕获指尖位置,导致手势识别错误。手势识别是作为互联网上的微服务实现的。通过网络将数据从 Leap Motion 设备发送到微服务并不会显著增加手势识别的持续时间。平均而言,Leap Motion 手势数据批量的大小范围为 500 1500 字节,将此量传输到网络服务不需要大量资源或速度。通过过滤这些数据和执行手势识别功能,最大的减慢发生在网络服务本身,整个过程不超过 200ms。3 结论本文以 Leap Motion 为硬件设备基础,针对手势识别进行研究,对手势数据进行采集并设计了一种基于隐马尔可夫模型的分类算法对手势内容进行分类,将手

35、势识别运用在手语表达内容翻译中,运用区分手指、手掌及手势动作的方法识别不同表达含义,取得了良好的效果。在后续研究中,将注重于构建更加丰富的场景和手势,实现更加复杂的识别内容和场景,提高识别准确率。参考文献1 王天然,王琦,王青山.基于迁移学习的跨对象手语手势识别方法J.计算机科学,2023,50(S1):129-133.2 赵世昊,周建华,伏云发.注意力机制CNN结合肌电特征矩阵的手势识别研究J/OL.电子测量与仪器学报:1-102023-07-01.3 ABDALLAH K A,CHRISTY D S,KAORI Y.Hand Gesture Recognition by Hand Land

36、mark ClassificationJ.International Symposium on Affective Science and Engineering,2022.4 黄山河,陈鹏飞,杨涛,等.基于Leap Motion的手势识别及在大型结构件虚拟安装中的应用J.现代雷达,2023,45(4):91-96.5 孔若思,姚寿文,王瑀,等.面向大范围手势捕捉的Leap Motion数据结构体优化J.重庆理工大学学报(自然科学),2022,36(1):143-150.6 包文运,胡建垠,黄培德,等.VR环境下基于Leap Motion的三维模型空间位姿自适应调整方法J.计算机应用与软件,2

37、021,38(7):67-72+99.7 TIAN Y,ZHUANG C Z,CUI J D,et al.Gesture Recog nition Method Based on Misalignment Mean Absolute Deviation and KL DivergenceJ.EURASIP Journal on Wireless Communications and Networking,2022:1-21.8 吴碧霄.基于视觉的手势识别及其应用研究D.广州:华南理工大学,2022.9 张妍.基于隐马尔可夫模型的分布式算术码研究D.西安:长安大学,2022.10 李鹏,罗爱静,

38、闵慧,等.采用隐马尔可夫模型的蛋白质复合物识别研究J.计算机科学与探索,2021,15(10):1980-1989.11 胡宗承,段晓威,周亚同,等.基于多模态融合的动态手势识别研究J.计算机工程与科学,2023,45(4):665-673.12 马凯凯,段鹏松,孔金生.WiGNet:一种适用于无线感知场景的手势识别模型J.西安交通大学学报,2023,57(5):194-203.13 张继凯,张然,赵君,等.基于改进的Mask R-CNN的手势分割与识别方法J.计算机应用与软件,2022,39(10):155-161.14 贾志淳,李想,于湛麟,等.基于二阶隐马尔可夫模型的云服务QoS满意度预测J.计算机科学,2019,46(9):321-324.15 柳村,冯秀芳.基于无线信号和改进TCN的手势识别方法J.计算机工程与设计,2022,43(8):2317-2324.图 9 所有受试者的手势打字错误率Fig.9 Gestural error rate for all subjects051025201540353045S1S2S3S4S5S6S7S8S9S10 S11 S12SubjectsErrors(MSD)50

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 学术论文 > 论文指导/设计

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服