基于Leap Motion体感控制器的手部康复训练方法

申请号 CN201710736343.8 申请日 2017-08-24 公开(公告)号 CN107491648A 公开(公告)日 2017-12-19
申请人 清华大学; 发明人 张林宣; 姚荣; 龙腾;
摘要 本 发明 公开了一种基于Leap Motion体感 控制器 的手部康复训练方法,包括以下步骤:步骤A、向计算机主机内录入标准手部动作数据;步骤B、患者根据显示器播放的标准手部动作完成康复训练动作,在患者完成康复训练动作过程中实时获取患者手部动作的数据并传输给计算机主机;步骤C、对采集到的患者手部动作的数据进行处理,提取其中的有效数据,然后提取得到训练特征数据;步骤D、对患者完成的动作进行评价。本发明采用 虚拟现实 技术与 体感交互 技术的结合对患者的手部动作进行实时显示,患者可以在虚拟现实的环境中实时地看到自己的训练过程,提高患者的训练积极性,变传统的被动式训练为主动式训练,提高恢复训练效果的同时,降低了患者的康复成本。
权利要求

1.一种基于Leap Motion体感控制器的手部康复训练方法,基于手部康复训练系统,所述手部康复训练系统包括安装有Unity 3D软件的计算机主机(1)、Leap Motion体感控制器(2)以及与计算机主机(1)相连的显示器(3),其特征在于包括以下步骤:
步骤A、向计算机主机(1)内录入标准手部动作数据;
步骤B、患者根据显示器(3)播放的标准手部动作完成康复训练动作,在患者完成康复训练动作过程中Leap Motion体感控制器(2)实时获取患者手部动作数据并传输给计算机主机(1);
步骤C、计算机主机(1)对采集到的患者手部动作数据进行处理,提取其中的有效数据,然后对有效数据中的手部特征数据进行提取得到训练特征数据;
步骤D、比较训练特征数据和标准手部动作数据中的标准特征数据,对患者完成的动作进行评价。
2.根据权利要求1所述的基于Leap Motion体感控制器的手部康复训练方法,其特征在于在步骤B中,Leap Motion体感控制器(2)以每秒60的速率向计算机主机(1)发送帧数据,每一帧的帧数据包括手部实体数据和手指实体数据。
3.根据权利要求2所述的基于Leap Motion体感控制器的手部康复训练方法,其特征在于在步骤D中取出同一时间手部标准动作和患者动作的帧数据,进行静态动作评估,所述静态动作评估包括以下步骤:
步骤(1)、计算同一时间手部标准动作和患者动作的帧数据中手部的同一个骨骼的手部骨骼向量的夹θ的余弦值,其中该骨骼在手部标准动作帧数据中的坐标值为(x0,y0,z0)、在患者动作帧数据中的坐标值为(x1,y1,z1),
其中cos (θ)= x0*x1+y0*y1+z0*z1;
步骤(2)、计算帧数据中20个手部骨骼向量的余弦总和,
其中 ;
步骤(3)、计算静态评估结果,
值为 ,其中Scorecos的最
大值为100。
4.根据权利要求3所述的基于Leap Motion体感控制器的手部康复训练方法,其特征在于每20帧的帧数据组成一个集合,分别求取每一帧的帧数据的静态动作评估值,然后将这
20个值取平均值作为一个动态动作完成评估值,然后将得到的所有动态动作完成评估值进行平均得到最终动态动作完成评估值。
5.根据权利要求1所述的基于Leap Motion体感控制器的手部康复训练方法,其特征在于在步骤C中运用对比散度算法得到训练特征数据和标准特征数据,对比散度算法中学习率参数η为0.005-0.02,初始化可见层nv为600,隐藏层维度nh为1-3,训练周期J为20000-
50000。
6.根据权利要求5所述的基于Leap Motion体感控制器的手部康复训练方法,其特征在于对比散度算法中学习率参数η为0.01,初始化可见层nv和隐藏层维度nh分别为600和2,训练周期J为50000。
7.根据权利要求5所述的基于Leap Motion体感控制器的手部康复训练方法,其特征在于在步骤D中利用BP神经网络完成动作评估,动作评估包括以下步骤:
步骤(1)、运用matlab中的premnmx函数直接完成归一化要求,
,其中x表示归一化前的数据,y表示归一化后的数据, 和
分别表示本组数据中x的最大值和最小值;
步骤(2)、选择双曲线S型激活函数作为网络的激活函数;
步骤(3)、利用matlab中的newff,train函数完成BP神经网络的定义和训练;
步骤(4)、训练结束后,用sim函数进行有效性验证,如果预估结果与标准结果误差在允许范围内,则结束训练,系统有效性得到验证,否则继续对网络进行训练。
8.根据权利要求7所述的基于Leap Motion体感控制器的手部康复训练方法,其特征在于使用三重BP神经网络进行训练,网络参数设置如下:输入层节点数为1-3,隐含层节点数为20-100,输出层节点数为1,训练精度为0.005-0.01,学习速率设置为0.005-0.02。
9.根据权利要求8所述的基于Leap Motion体感控制器的手部康复训练方法,其特征在于网络参数中输入层节点数为1,隐含层节点数为40,输出层节点数为1,训练精度为0.01,学习速率设置为0.01。

说明书全文

基于Leap Motion体感控制器的手部康复训练方法

技术领域

[0001] 本发明涉及患者康复设备及信息智能处理领域,具体来说涉及一种适用于脑卒中患者康复的基于Leap Motion体感控制器的手部锻炼康复训练方法。

背景技术

[0002] 脑卒中,又称“中”或者“脑血管意外”,是一种急性脑血管疾病。它的发病原因一般是部分向大脑供血的血管(主要是动脉)被压迫或者爆裂,在几分钟内,该区域的神经细胞就会受到影响甚至在几小时内死亡,而这将直接导致受该大脑区域控制的身体部分不能正常工作。中风患者在患病以后生活会受到很大的影响,主要体现在随着手部无、偏瘫等症状的出现,患者无法完成一部分的生活必须行为,生活质量被大大降低,而且也大大加重了其家庭与个人的负担。现有的研究表明:在我国现有的中风患者中,伴随着运动功能障碍的患者高达75%,而在其中大部分的患者都出现了手部运动障碍问题,手部是正常生活中最常用的身体部位之一,手部的问题显然会很大程度地影响患者的生活质量。
[0003] 目前在我国的手部康复工程领域,对于手部偏瘫、无力、肿胀等症状的患者,主要采用医师指导动作,患者主动训练的方式进行手部康复,也推出了许多手部康复用的仪器辅助患者康复。但是这些手段占用了较多的医疗资源,在如今这个医疗资源紧缺的时代,这些康复手段浪费了医疗资源,也加重了患者的成本,带来了很多不便。但是如果患者缺乏医师的指导或良好的辅助工具帮助手部锻炼恢复,又无法精确地完成手部康复动作,而且对于患者的动作完成情况也缺乏反馈,容易造成训练效果差甚至加重病情的后果。
[0004] 申请号为201310133113.4的中国专利公开了一种基于Kinect传感器的上肢运动康复训练系统及其训练方法,利用虚拟现实技术,采用体感人机交互方式使患者摆脱了传统的鼠标键盘等交互设备对身体位置的限制,无需佩戴复杂的动作捕捉设备;患者通过文字和语音提示的方法进行训练动作的实时纠正、训练效果实时反馈,患者可以在没有治疗师的帮助下自主完成训练。但是其仅适用于上肢肩、肘、腕单关节活动度恢复训练以及综合控制协调能力的训练,对脑卒中患者手部康复则没有帮助。

发明内容

[0005] 本发明要解决的技术问题是提供一种基于Leap Motion体感控制器的手部康复训练方法,引导患者完成康复动作的同时,通过体感交互设备获取患者的手部动作数据,在虚拟现实的环境下实时显示手部真实动作和标准动作,通过对两个动作进行比较判断患者的康复情况并给出评估。
[0006] 为解决上述技术问题,本发明采用的技术方案是:一种基于Leap Motion体感控制器的手部康复训练方法,基于手部康复训练系统,所述手部康复训练系统包括安装有Unity 3D软件的计算机主机、Leap Motion体感控制器以及与计算机主机相连的显示器,其特征在于包括以下步骤:
步骤A、向计算机主机内录入标准手部动作数据;
步骤B、患者根据显示器播放的标准手部动作完成康复训练动作,在患者完成康复训练动作过程中Leap Motion体感控制器实时获取患者手部动作的数据并传输给计算机主机;
步骤C、计算机主机对采集到的患者手部动作的数据进行处理,提取其中的有效数据,然后对有效数据中的手部特征数据进行提取得到训练特征数据;
步骤D、比较训练特征数据和标准手部动作数据中的标准特征数据,对患者完成的动作进行评价。
[0007] 本发明的有益技术效果是:1、采用虚拟现实技术与体感交互技术的结合对患者的手部动作进行实时显示,患者可以在虚拟现实的环境中实时地看到自己的训练过程,可以很大程度地提高患者的训练积极性,变传统的被动式训练为主动式训练,提高恢复训练效果的同时,降低了患者的康复成本;2、针对传统手部康复辅助工具智能性不足的问题,本系统采用了神经网络技术对患者的康复训练情况进行评估,利用神经网络的特性保证了系统能够在不断的训练中完善,“智能”地为患者的康复训练提供反馈,保证了患者的康复训练质量。
[0008] 下面结合附图对本发明进行详细说明。

附图说明

[0009] 图1是本发明基于Leap Motion体感控制器的手部康复训练系统的结构示意图;图2是实际手部骨骼图;
图3是系统处理后的手部骨骼图;
图4是系统处理后的手部骨骼向量图;
图5是骨骼方向向量之间的夹
图6是本发明基于Leap Motion体感控制器的手部康复训练方法实施例二的流程图
[0010] 在附图中:1是计算机主机,2是Leap Motion体感控制器,3是显示器。

具体实施方式

[0011] 参见附图1,本发明提供了一种基于Leap Motion体感控制器的手部康复训练系统,关键在于:包括安装有Unity 3D软件的计算机主机1、实现体感交互和数据采集的Leap Motion体感控制器2以及与计算机主机1相连的显示器3。
[0012] 基于上述的手部康复训练系统,本发明提供了一种基于Leap Motion体感控制器的手部康复训练方法。
[0013] 实施例一:在本实施例中采用静态动作和动态动作完成对患者动作的评估。
[0014] 本实施例的手部康复训练方法包括以下步骤:步骤A、通过Leap Motion体感控制器2以及配套的Unity 3D软件向计算机主机1内录入标准手部动作数据。在此步骤中,Leap Motion体感控制器2以每秒60的速率向计算机主机1发送帧数据,每一帧的帧数据中均包括手部实体数据和手指实体数据。通过标准手部动作数据可以提取标准特征数据。
[0015] 步骤B、患者根据显示器3播放的标准手部动作完成康复训练动作,在患者完成康复训练动作过程中Leap Motion体感控制器2实时获取患者手部动作的数据并传输给计算机主机1。在此步骤中,Leap Motion体感控制器2也是以每秒60帧的速率向计算机主机1发送帧数据,每一帧的帧数据中均包括手部实体数据和手指实体数据。
[0016] 步骤C、计算机主机1对采集到的患者手部动作的数据进行处理,提取其中的有效数据,然后对有效数据中的手部特征数据进行提取得到训练特征数据。在此步骤中,参见附图2-4,实际的手部骨骼分布如附图2所示,手部有19个骨骼,在腕部还有两个骨骼,但是这两个骨骼在患者进行实际康复训练的时候,骨骼方向是非常接近的,只需算作一个方向,所以在本方法中,将这两个骨骼只算做了一个方向,系统处理后的手部骨骼图如附图3所示。具体的做法是用手腕的坐标减去手肘的坐标,再进行单位化。具体计算公式如下:
公式中 表示处理后的腕部向量, 表示患者腕部的坐标, 表示患者肘部
的坐标。系统处理后的手部骨骼向量图如附图4所示。
[0017] Leap Motion体感控制器2给计算机主机1发送的每一帧数据均包手部的各种实体数据,包括骨骼的方向向量,系统通过处理后得到20个单位骨骼向量用于后续处理。
[0018] 同理,对标准手部动作数据进行相同操作提取标准特征数据。
[0019] 步骤D、比较训练特征数据和标准特征数据,对患者完成的动作进行评价。在本步骤中取出同一时间手部标准动作和患者动作的帧数据,进行静态动作评估。
[0020] 静态动作评估包括以下步骤:步骤(1)、计算同一时间手部标准动作和患者动作的帧数据中手部的同一个骨骼的手部骨骼向量的夹角θ的余弦值,其中该骨骼在手部标准动作帧数据中的坐标值为(x0,y0,z0)、在患者动作帧数据中的坐标值为(x1,y1,z1)。参见附图5, 代表某一帧中手部标准动作的某一骨骼向量, 代表着同一帧中患者动作的同一骨骼向量,为 和 的夹角。
[0021] 其中cos (θ)= x0*x1+y0*y1+z0*z1。
[0022] 步骤(2)、计算帧数据中20个手部骨骼向量的余弦总和,其中 ;
步骤(3)、计算静态评估结果,为了保证最后结果的满分为100,在这一求和的结果上乘5,最终的静态评估结果值为:

[0023] 每20帧的帧数据组成一个集合,分别求取每一帧的帧数据的静态动作评估值,然后将这20个值取平均值作为一个动态动作完成评估值,然后将得到的所有动态动作完成评估值进行平均得到最终动态动作完成评估值。通过动态动作完成评估,可以基本判断出患者动作完成的趋势。
[0024] 实施例二:采用实施例一的方法,当患者的训练动作稍微滞后标准动作时,可能会给出较低的评分。在本实施例中,采用基于机器学习的手部数据处理,以达到减少训练动作滞后的影响,给出准确的评估结果。
[0025] 参见附图6,本实施例的手部康复训练方法包括以下步骤:步骤A、通过Leap Motion体感控制器2以及配套的Unity 3D软件向计算机主机1内录入标准手部动作数据。在此步骤中,Leap Motion体感控制器2以每秒60帧的速率向计算机主机1发送帧数据,每一帧的帧数据中均包括手部实体数据和手指实体数据。通过标准手部动作数据可以提取标准特征数据。
[0026] 步骤B、患者根据显示器3播放的标准手部动作完成康复训练动作,在患者完成康复训练动作过程中通过Leap Motion体感控制器2获取患者手部动作的数据并传输给计算机主机1。在此步骤中,Leap Motion体感控制器2以每秒60帧的速率向计算机主机1发送帧数据,每一帧的帧数据中均包括手部实体数据和手指实体数据。
[0027] 步骤C、计算机主机1对采集到的患者手部动作的数据进行处理,提取其中的有效数据,然后对有效数据中的手部特征数据进行提取得到训练特征数据。
[0028] 在本步骤中用RBM训练算法中的k步对比散度算法CDK得到训练特征数据和标准特征数据。本系统中采用的k步对比散度算法参数中学习率参数η选取为0.005-0.02,初始化可见层nv和隐藏层维度nh分别为600和1-3,训练周期J为20000-50000,通过这些参数的设定,经过多种参数的比对证明,本范围内的参数选取可以对手部的特征数据实现很好的提取,在之后的神经网络中得到很好的应用。其中,k步对比散度算法中学习率参数优选η为0.01,初始化可见层nv和隐藏层维度nh分别优选600和2,训练周期J优选50000。
[0029] 步骤D、在上一步得到压缩后的手部数据以后,将压缩后的两个特征数据和给出的标准评分作为训练数据,训练BP神经网络,在网络训练结束后,对网络的有效性进行验证,如果对给定的测试数据有效,结束训练,如果对给定的测试数据无效,则继续训练或者重新训练。
[0030] 在本步骤中,利用BP神经网络完成动作评估,动作评估包括以下步骤:步骤(1)、运用matlab中的premnmx函数直接完成归一化要求,保证即使单位不一致的数据也能变得在一个区间、便于后续处理,使不同大小的输入数据发挥同等的作用(由于训练数据的不确定性,可能出现输入数据的比重不一,归一化可以避免这一问题),便于直接使用之后的激活函数(一般的网络激活函数都对于定义域有一定的要求,而输入数据中可能有数据无法直接代入激活函数,归一化可以解决这一问题)。
[0031] ,其中x表示归一化前的数据,y表示归一化后的数据,和 分别表示本组数据中x的最大值和最小值。
[0032] 步骤(2)、由于双曲线S型激活函数的值域为(-1,1),选择双曲线S型激活函数作为网络的激活函数。
[0033] 步骤(3)、利用matlab中的newff,train函数完成BP神经网络的定义和训练;使用三重BP神经网络进行训练,网络参数中,输入层节点数为1-3,隐含层节点数为20-100,输出层节点数为1,训练精度为0.005-0.02,学习速率设置为0.005-0.02,在对网络的可用性进行验证表明,通过这样的参数设定,对于大部分的输入误差都控制在了3分以内(100分制),成功率在达到85%以上。更具体地,输入层节点数优选1,隐含层节点数优选40,输出层节点数优选1,训练精度优选0.01,学习速率设置优选0.01。
[0034] 步骤(4)、训练结束后,用sim函数进行有效性验证,如果预估结果与标准结果误差在允许范围内,则结束训练,系统有效性得到验证,否则继续对网络进行训练。
[0035] 本实施例中的流程图如附图6所示,BP神经网络训练结束后,根据患者的训练动作评分,如附图6中的虚线所示,可以更新患者的训练方案,患者完成指定动作训练。
[0036] 最后应当说明的是:以上实施例仅用以说明本发明的技术方案而非对其限制;尽管参照较佳实施例对本发明进行了详细的说明,所属领域的普通技术人员应当理解:依然可以对本发明的具体实施方式进行修改或者对部分技术特征进行等同替换;而不脱离本发明技术方案的精神,其均应涵盖在本发明请求保护的技术方案范围当中。
QQ群二维码
意见反馈