掌桥专利:专业的专利平台
掌桥专利
首页

一种基于轻量级神经网络的手语识别方法、系统及手套

文献发布时间:2024-04-18 19:55:22


一种基于轻量级神经网络的手语识别方法、系统及手套

技术领域

本发明涉及手势识别技术领域,更具体地,涉及一种基于轻量级神经网络的手语识别方法、系统及手套。

背景技术

手语是一种规范化的手势,是用手势比量动作,根据手势的变化模拟形象或者音节以构成的一定意思或词语,它是听力障碍或者无法言语的人互相交际和交流思想的一种手的语言。随着计算机的不断发展,人工智能算法的不断发展,计算机对聋哑人的手语动作进行翻译渐渐成为可能。手语机器翻译指通过计算机算法,自动区分手语表达中的各类手势、动作以及手势和动作之间的切换,最终将表达的手语翻译成文字或语音形式。

现阶段的主流的手语翻译算法是基于计算机视觉的模板匹配、隐马尔可夫模型(Hidden Markov Model,HMM)和朴素贝叶斯分类器等方法。这类方法通过摄像头获取手势的图像信息,然后对采集下来的图像数据进行处理,从中分离出手势的特征,并对手势信息进行解读。然而,基于计算机视觉的手语翻译算法目前仍存在一系列难题,例如,手势图像获取的过程中容易受到光线、环境等因素影响,使获取得到的图像数据中的手语信息不清晰,或因为部分手指动作出现遮挡,从而造成准确率严重下降的情况。此外,由于基于计算机视觉的手语翻译算法十分复杂,需要计算三维空间中的信息导致数据计算量大,难以满足实时翻译的需求。

目前还有提出利用数据手套来获取手语动作中的手部数据信息,其中数据手套包含加速度传感器、惯性传感器、弯曲度传感器,来分别获取聋哑人在做手语动作的时候的以手掌为坐标原点的手部三轴角速度信息,三轴加速度信息以及每一根手指的弯曲度信息。但是,大量的传感器也会导致每一个手语动作都会产生大量的数据,为后续手语动作的分类识别带来繁重的计算,繁杂的计算将会带来较大的时间延时,仍然难以满足实时翻译的需求。

发明内容

本发明为克服上述现有技术所述的利用数据手套来获取手语动作中的手部数据信息存在计算量大、手势识别时延长的缺陷,提供一种基于轻量级神经网络的手语识别方法、系统,以及一种手语识别手套。

为解决上述技术问题,本发明的技术方案如下:

一种基于轻量级神经网络的手语识别方法,包括以下步骤:

S1、以预设的采样周期采集手语动作数据;

S2、对采集的手语动作数据进行有效数据判断,得到有效的手语动作数据;

S3、将所述有效的手语动作数据输入轻量级神经网络进行手语识别,得到手语识别结果;

其中,所述轻量级神经网络包括采用非对称并行卷积结构的浅层卷积神经网络,或基于遗传算法(Genetic Algorithm,GA)对平滑因子进行寻优的PNN神经网络(Probabilistic Neural Network,概率神经网络)。

进一步地,本发明还提出一种基于轻量级神经网络的手语识别系统,应用本发明提出的手语识别方法。其中包括:

数据采集模块,用于以预设的采样周期采集手语动作数据;

有效数据判断模块,用于对采集的手语动作数据进行有效数据判断,输出有效的手语动作数据;

手语识别模块,其上搭载有轻量级神经网络,用于将所述有效的手语动作数据输入轻量级神经网络进行手语识别,输出手语识别结果;

其中,所述轻量级神经网络包括采用非对称并行卷积结构的浅层卷积神经网络,或基于遗传算法对平滑因子进行寻优的PNN神经网络。

进一步地,本发明还提出一种手语识别手套,应用本发明提出的手语识别方法。其中,所述手套中手指对应表面配置有弯曲度传感器;所述手套上还配置有惯性测量单元、主控单元和通信单元。

所述惯性测量单元包括三轴加速度计和三轴陀螺仪;

所述主控单元用于控制所述弯曲度传感器和所述惯性测量单元根据预设的采样周期采集手语动作数据,以及用于对采集的手语动作数据进行有效数据判断,得到有效的手语动作数据;

所述通信单元用于将所述有效的手语动作数据传输至外置的终端,通过所述终端上搭载的轻量级神经网络进行手语识别,得到手语识别结果;其中,所述轻量级神经网络包括采用非对称并行卷积结构的浅层卷积神经网络,或基于遗传算法对平滑因子进行寻优的PNN神经网络。

与现有技术相比,本发明技术方案的有益效果是:本发明通过对采集的手语动作数据进行有效数据判断,用于过滤冗余信息或无效信息,以降低手语识别的计算量;本发明还通过采用轻量级神经网络进行手语识别,选用非对称并行卷积结构的浅层卷积神经网络,或基于遗传算法对平滑因子进行寻优的PNN神经网络作为轻量级神经网络,有效缩短手语识别时延,以满足实时手语识别任务的需要。

附图说明

图1为实施例1的基于轻量级神经网络的手语识别方法的流程图。

图2为实施例1的有效数据判断流程图。

图3为实施例1的手语动作状态划分流程图。

图4为实施例1的基于非对称并行卷积结构的浅层卷积神经网络的架构图。

图5为实施例1的非对称卷积模块的架构图。

图6为实施例1的PNN神经网络的架构图。

图7为实施例2的测试验证的手语动作示意图。

图8为实施例2的测试集手语识别测试准确率示意图。

图9为实施例3的手语识别系统的架构图。

图10为实施例3的手语识别系统的硬件架构示意图。

图11为实施例4的手语识别手套的结构示意图。

具体实施方式

附图仅用于示例性说明,不能理解为对本专利的限制;为了更好说明本实施例,附图某些说明可能省略是可以理解的。

下面结合附图和实施例对本发明的技术方案做进一步的说明。

实施例1

本实施例提出一种基于轻量级神经网络的手语识别方法,如图1所示,为本实施例的基于轻量级神经网络的手语识别方法的流程图。

本实施例提出的基于轻量级神经网络的手语识别方法中,包括以下步骤:

S1、以预设的采样周期采集手语动作数据。

S2、对采集的手语动作数据进行有效数据判断,得到有效的手语动作数据。

S3、将所述有效的手语动作数据输入轻量级神经网络进行手语识别,得到手语识别结果。

本实施例中,所述轻量级神经网络包括采用非对称并行卷积结构的浅层卷积神经网络,或基于遗传算法对平滑因子进行寻优的PNN神经网络。

本实施例中,通过对采集的手语动作数据进行有效数据判断,用于过滤冗余信息或无效信息,以降低手语识别的计算量。同时,本实施例中的轻量级神经网络选用非对称并行卷积结构的浅层卷积神经网络,或基于遗传算法对平滑因子进行寻优的PNN神经网络,以满足实时手语识别任务的需要。

其中,选用非对称并行卷积结构的浅层卷积神经网络进行手语识别的情况,其使用并行结构来对低层次特征进行反复利用,能够以较低的参数和运算量成本来实现更高的精度,降低手势识别时延。

而选用基于遗传算法对平滑因子进行寻优的PNN神经网络进行手语识别的情况,其采用遗传算法作为寻优算法来寻找最优平滑因子,能够在满足较低计算量的情况下,进一步提高手语识别精度。

在具体实施过程中,可选地采用配置有传感器和通信模块的手套作为数据采集端,以预设的采样周期采集手语动作数据并通过有线通信或无线通信进行数据传输。

在一可选实施例中,S2步骤中,对采集的手语动作数据进行有效数据判断时,包括以下步骤:

S211、当接收到结束标识后,判断当前有效判别值是否大于预设的第一阈值,若是,则判定当前时刻进入手语准备状态,并执行S212步骤;否则重复执行S211步骤。

S212、判断当前有效判别值是否大于预设的第二阈值:若是,则判定当前时刻进入手语有效状态,并执行S213步骤;

若否,则设定等待时间并开始计时,且在计时期间持续检测当前有效判别值是否大于第二阈值:若当前有效判别值在所述等待时间内保持小于第二阈值,或当前有效判别值在计时期间任一时刻内大于第二阈值,则判定当前时刻进入手语有效状态,并执行S213步骤;否则重复执行S212步骤。

S213、将手语有效状态持续时间内采集的手语动作数据作为有效数据进行存储,并在手语有效状态持续判断当前有效判别值是否小于预设的第三阈值,若否,则重复执行S213步骤;若是,则判定当前时刻进入手语结束状态,将存储的所有有效数据作为有效的手语动作数据输出,并输出结束标识。

其中,在上述S211~S213任一步骤中的当前有效判别值为根据预设的权重对当前时刻采集的手语动作数据进行计算得到。

如图2所示,为本实施例的有效数据判断流程图。

本实施例中,将每个手语动作划分为4个阶段,包括:上一手语结束状态(状态A)、当前手语准备状态(状态B)、当前手语有效状态(状态C)、当前手语结束状态(状态D)。

其中,当接收到结束标识,表示当前处于上一手语结束状态A,此时持续判断当前有效判别值是否大于预设的第一阈值T1:当有效判别值大于第一阈值T1,即有效判别值增大至大于第一阈值T1时,表示当前手部动作从静止变为运动状态,则可以判定手语动作从上个手语结束状态A进入当前手语准备状态B。

进入当前手语准备状态B后,本实施例根据当前有效判别值是否大于预设的第二阈值T2,对当前时刻是否为有效手语进行判定,其中:

当有效判别值大于第二阈值T2,则表示手部处于运动状态,此时判定进入当前手语有效状态C;

当有效判别值小于第二阈值T2且持续一定时间,则表示当前手语准备动作完成之后,对应手部总是处于静止的状态,此时判定进入当前手语有效状态C;

当在计时期间出现有效判别值在大于第二阈值T2的情况,表示手部在短暂的静止之后重新运动起来,此时判定进入当前手语有效状态C。

当进入当前手语有效状态C时,启动有效数据存储,并作为下一阶段的手语识别计算的数据来源。且进入当前手语有效状态C后,重复判断当前有效判别值是否小于预设的第三阈值T3,当有效判别值小于第三阈值T3时,表示手部恢复静止状态,此时进入当前手语结束状态D,将存储的所有有效数据作为有效的手语动作数据输出,并输出结束标识。此时进入上一手语结束状态A,跳转执行S211步骤。

本实施例通过阈值法可以判断并提取手语动作中的有效数据的所在有效时间区间,实现冗余手语动作数据的筛除。其中,第一阈值T1、第二阈值T2、第三阈值T3可根据大量实验数据设定,用于判定当前手部状态为运动状态或静止状态。

进一步地,在一可选实施例中,所述手语动作数据包括通过弯曲度传感器采集的手指弯曲度值,以及通过惯性传感器采集的手部角度、手部角速度和手部加速度。则本实施例中根据预设的权重对当前时刻采集的手语动作数据进行有效判别值计算,依次包括以下步骤:

分别对当前的手指弯曲度值、手部角度和手部角速度进行差分运算,获得相应的差分值。

对当前的手指弯曲度值、手部角度和手部角速度各自的差分值分别进行指数运算处理,得到相应的指数运算值。

对当前的手指弯曲度值、手部角度和手部角速度各自的指数运算值,以及手部加速度的绝对值,分别按预设的权重进行加权累加,得到当前有效判别值。

作为示例性说明,手指弯曲度的指数运算值、手部角度差分值的指数运算值和手部加速度的绝对值对应的权值为1,手部角速度的指数运算值对应的权值为0.3。

在另一可选实施例中,S2步骤中,对采集的手语动作数据进行有效数据判断时,包括以下步骤:

设定有效数据判断的检测周期;在一检测周期中,通过差值法计算当前检测周期内采集的所有手语动作数据的变化量;判断当前检测周期的变化量是否大于预设的第四阈值T4:若是,则判定当前处于动作状态,对当前检测周期内采集的所有手语动作数据作为有效的手语动作数据输出,并进入下一检测周期;若否,则判定当前处于静止状态,并进入下一检测周期。

如图3所示,为本实施例的手语动作状态划分流程图。

其中,可选地将S1步骤采集的手语动作数据载入缓存区,并根据数据类型存储在相应的缓存区变量中,当到达预设的检测周期时,通过与缓存区变量差值计算得到数据的变化量。

本实施例中通过设定检测周期,定时读取S1步骤中采集的手语动作数据,并通过差值法来计算一整个检测周期内的所有数据的变化量,再将当前判断周期的变化量与预设的第四阈值T4进行对比,当变化量小于第四阈值T4时,则判定手部处于静止状态,用户未做手势动作;当变化量大于第四阈值T4时,则判定手部处于动作状态,用户开始做出手势动作,此时可选地对采集的手语动作数据标记有效手语标识符,在完成有效的手语动作数据传输后,重新返回检测状态,等待下一个手势动作的开始。

进一步地,在一可选实施例中,S2步骤中还包括对有效的手语动作数据进行数据预处理。其中包括以下步骤:

S221、假设对一个手语动作采样N次得到手语动作数据A,表示为A={A

S222、利用数据A构造扩充序列B,再对扩充序列B压缩为由n组数据组成的序列C;其表达式为:

式中,n

S223、根据预设的量化等级对序列C中的手语动作数据值进行量化操作。

本实施例中考虑到每个手语动作的持续时间相较于采样周期较长,每一个手语动作都将会产生大量的数据,但是,大量的数据会使得数据传输量及数据处理量增多,从而降低对手语动作识别响应的实时性。因此,为了提高数据的传输效率和处理效率,同时降低后续的神经网络出现过拟合的概率,本实施例通过对数据进行压缩和量化预处理。

作为示例性说明,将数据A中的N组数据压缩为5组数据,经过压缩后数据的格式的表示形式如下表1所示。

表1有效手语动作数据压缩后的数据格式

进一步地,对经过压缩的数据进行量化时,对于手指弯曲度值,可选地根据手指基本无弯曲、手指90°弯曲、手指完全弯曲这三个情况设定3个量化等级,对采集的手指弯曲度数据在进行压缩之后进行量化操作。对于手部传感数据,即手部角度、手部角速度和手部加速度数据,根据数据的取值为“小于负数设定值的数据”、“负数设定值与正数设定值之间的数据”、“大于正数设定值的数据”这3个量化等级,对采集的手部传感数据进行压缩之后进行量化操作。

进一步地,在一可选实施例中,针对采用非对称并行卷积结构的浅层卷积神经网络作为轻量级神经网络的情况,所述浅层卷积神经网络种包括初始化层,并行设置的第一卷积支路和第二卷积支路,对并行支路的输出进行合并的转换层,以及用于数据识别的识别层。

其中,所述初始化层包括依次连接的第一非对称卷积模块、最大池化层和第二非对称卷积模块;所述初始化层的输出端分别与所述第一卷积支路和第二卷积支路的输入端连接。

所述第一卷积支路包括依次连接的第三非对称卷积模块和二维卷积层。

所述第二卷积支路包括依次连接的最大池化层和第四非对称卷积模块。

所述第一卷积支路和第二卷积支路的输出端分别与所述转换层的输入端连接,所述转换层用于对并行支路的输出进行特征相加和维度转换,将连续的维度范围展平为一维的特征向量后输入所述识别层中。

所述识别层包括依次连接的全连接层和softmax层,所述全连接层用于对特征向量进行分类,得到手语分类任务对应类别数的矩阵后通过softmax层进行识别,输出得到手语识别结果。

如图4所示,为本实施例的基于非对称并行卷积结构的浅层卷积神经网络的架构图。

作为示例性说明,经过预处理的数据并转化成张量(Tensor)数据格式后,输入如图4所示的浅层卷积神经网络。其中初始化层的输入为14×5的特征图,进入输入通道为1,输出通道为32的第一非对称卷积模块,然后通过2×1(步长为2×1)的最大池化层进行降采样,得到7×5×32的输出尺寸,再进入第二非对称卷积模块,其输入通道为32,输出通道为32,得到输出尺寸为7×5×32的特征图。

7×5×32的特征图分别进入两条支路,每条支路进行如下处理:

第一卷积支路中,首先进入1层第三非对称卷积模块,其输入通道为32,输出通道为32,然后通过输入通道为32,输出通道为8的3×1(步长为2×1)的二维卷积模块,得到3×5×8的输出特征图。

第二卷积支路中,首先通过3×1(步长为2×1)的最大池化模块降采样得到输出尺寸3×5×32,再通过一层输入通道为32,输出通道为8的第四非对称卷积模块,得到3×5×8的输出特征图。

将上述两支路得到的特征矩阵相加,并经view进行维度转换,将连续的维度范围展平为一维张量,变为1×1×120的一维特征矩阵作为提取出的特征向量。最后,将1×1×120的一维特征矩阵经过一层全连接层(FC,Full Connection)处理得到手势分类任务对应类别数的矩阵,进入Softmax层,成功实现n个手语手势的分类识别。在本实施例中,Softmax层神经元个数为手势类别共计n=17个,可以根据式实际应用场合需要,训练和识别出更多的手势类别。

本实施例采用非对称并行卷积结构,对第二层卷积采取并行架构,分路线进行不同的卷积运算,最后将两支路得到的矩阵进行相加运算,完成特征提取,实现对低层次特征进行反复利用,保证针对小尺寸图像特征的卷积,不会因为层数退化。

进一步地,本实施例所述浅层卷积神经网络中,任一非对称卷积模块中包括依次连接的1×1卷积核、非线性变换函数、两层CBL卷积块、1×1卷积核和非线性变换函数。

优选地,所述非对称卷积模块中的非线性变换函数采用ReLU6函数。

其中,输入数据经过1×1卷积核改变其通道数量和通道信息后,通过ReLU6函数进行非线性变换,得到第一输出。将第一输出输入依次连接的两层CBL卷积块中进行特征提取,得到第二输出。将第二输出输入1×1卷积核中进行通道混洗,再通过ReLU6函数进行非线性变换,生成特征向量并输出。

其中所述CBL卷积块包括依次连接的3×1的非对称分组卷积层、BN层和非线性变换函数。

优选地,所述非对称分组卷积层以相同的间距进行填充。

优选地,所述CBL卷积块中的非线性变换函数采用Leaky ReLU函数。

本实施例采用非对称卷积模块,并使用较小卷积核代替传统的非对称卷积模块中的较大卷积核,相比于一个普通的5×1的卷积架构,本实施例采用的非对称卷积模块能够在减少参数的同时,增加了三次非线性变换,提高了网络的拟合能力,并且针对小尺寸图像,较小的卷积核可以获得更高的准确度和更少的计算量。

如图5所示,为本实施例的非对称卷积模块的架构图,其中,Gconv2即为本实施例的CBL卷积块。本实施例的非对称卷积模块中包含的2个3×1的非对称分组卷积核并不会增加更多的参数和运算成本开销,并且还能取得更好的拟合效果。

同时,为了让卷积层专注于扩大或缩小通道,而池化层专注于缩小高度,随着网络层层数变深时,特征图高度逐渐变小,计算量缓慢增加,本实施例中所有的卷积层都以相同的间距进行填充(padding),并在每层卷积核后接BN层(Batch Normalization),随后通过ReLU6进行非线性激活,既增强了特征的表达能力,又拥有很好的数值分辨率,避免激活值过大。

作为示例性说明,BN层的计算公式为:

其中,F

而LeakyReLU计算公式为:

其中,f(·)为LeakyReLU函数。

在另一可选实施例中,针对采用基于遗传算法对平滑因子进行寻优的PNN神经网络作为轻量级神经网络的情况,所述PNN神经网络包括依次连接的输入层、模式层、求和层和输出层。

其中,所述输入层中配置有与判断手势类别所需的特征种类数量相等的神经元,用于接收有效的手语动作数据中的特征矢量,并对数据进行归一化处理后传递给模式层。

所述模式层配置有与训练样本数量相等的神经元,用于计算由输入的特征矢量与预设的训练样本中每一个样本的欧氏距离决定的高斯函数值。本实施例中的模式层属于径向基层。

其中,对于输入的特征矢量x与第j个训练样本T

式中,k表示训练样本T

则求取由欧氏距离决定的高斯函数值表示为:

式中,δ为PNN神经网络的平滑因子。平滑因子对PNN神经网络分类识别能力有着至关重要的影响,本实施例中,平滑因子通过遗传算法寻优处理得到。

所述求和层配置有与训练样本类别数相等的神经元,用于求取相同类别的输入特征矢量对应的模式层节点输出之和。

所述输出层配置有1个神经元,用于基于贝叶斯决策理论,根据后验概率最大原则,取对应的最大概率max{prob_x

本实施例中所采用的PNN神经网络是基于统计原理的神经网络模型,其理论基础是贝叶斯最小风险原则,其计算流程与最大后验概率准则极为类似。

如图6所示,为本实施例的PNN神经网络的架构图。

作为示例性说明,在具体实施过程中,特征矢量x可以选取d=16个特征量,分别为:手势动作前半段5个手指单独的弯曲程度数据归一化后的均值;手势动作后半段5个手指单独的弯曲程度归一化的均值;每一轴的加速度绝对值之和在三轴数据之和中的占比,每一轴的角速度绝对值之和在三轴数据之和中的占比。

可识别手语手势类别m设置为10个(具体数量可以根据实际需要调整),每个手势重复50组作为训练样本,则共计500组训练样本。求和层神经元个数为手势类别数加上1个未识别类别,即共计11个类别标签。其中,未识别类别作为错误预案,避免面对不在数据库范围内的手势时系统产生误判断,进而避免对语义产生误导,影响交流。

此外,传统PNN采用人工设定平滑系数容易导致识别率低和误分类的问题,其次平滑系数对分类结果影响巨大并且难以确定,对此本实施例采取遗传算法作为寻优算法来寻找最优平滑因子,提高神经网络识别精度。

作为示例性说明,本实施例将验证集数据在PNN网络中识别精度作为适应度函数值,以超参数平滑因子为染色体,在0~1的范围内随机选取200个染色体数值构成种群,进行遗传算法迭代优化,找到最高适应度的染色体作为PNN网络的实际平滑因子。

实施例2

本实施例应用实施例1提出的基于轻量级神经网络的手语识别方法进行验证。

本实施例采用数据采集手套作为数据采集端,该数据采集手套以绝缘手套为基础,根据手指的长度,配有3根长度为112.23mm的Flex 4.5弯曲度传感器,2根长度为77mm的Flex 2.2弯曲度传感器,将该5根弯曲度传感器贴合在绝缘手套中每根手指表面上。手套上还安装有IMU(Inertial Measurement Unit,惯性测量单元)进行数据采集,优选为六轴IMU传感器。

各个弯曲度传感器的输出端以及IMU传感器的输出端分别与数据采集主控单元的输入端连接。

作为示例性说明,本实施例采用型号为ESP32-WROOM-32双核微控制器作为手语数据采集主控单元,用于控制数据的采集、传输与接收,配合WIFI串口无线通信模块进行数据传输,将采集的数据传输至FPGA+CPU双核异构数据计算单元中进行手语识别,其中FPGA是可编程逻辑门阵列单元,CPU优选低功耗的嵌入式架构;该双核异构数据计算单元中部署有采用非对称并行卷积结构的浅层卷积神经网络。

本实施例选择了17个常用的手语动作用于测试验证,其中训练集由六个人作出手语动作并进行数据采集,其中对每个手语动作共采集35组数据作为测试集。实际使用时,仅需采集更多的手语动作用于训练即可。如图7所示,为本实施例的测试验证的手语动作示意图。

在数据计算单元的训练中,采用非对称并行卷积结构的浅层卷积神经网络在自采集的测试集上的表现如图8所示。由图可知,除了“你”和“自己”这两个类别的手语翻译的准确度较低,其余的手语翻译结果的准确度均满足使用需求,且对于非测试集采集人员的手语翻译的准确率与测试集采集人员的手语翻译的准确率基本一致,均有很好的通用性。

实施例3

本实施例提出一种基于轻量级神经网络的手语识别系统,应用实施例1提出的基于轻量级神经网络的手语识别方法。如图9所示,为本实施例的手语识别系统的架构图。

本实施例提出的基于轻量级神经网络的手语识别系统中,包括:

数据采集模块,用于以预设的采样周期采集手语动作数据。

有效数据判断模块,用于对采集的手语动作数据进行有效数据判断,输出有效的手语动作数据。

手语识别模块,其上搭载有轻量级神经网络,用于将所述有效的手语动作数据输入轻量级神经网络进行手语识别,输出手语识别结果。

其中,所述轻量级神经网络包括采用非对称并行卷积结构的浅层卷积神经网络,或基于遗传算法对平滑因子进行寻优的PNN神经网络。

在一可选实施例中,所述数据采集模块包括绝缘手套,所述绝缘手套中手指对应表面配置有弯曲度传感器。所述绝缘手套上还配置有惯性测量单元(IMU)和主控单元,所述惯性测量单元包括三轴加速度计和三轴陀螺仪。所述主控单元用于控制数据的采集,以及用于将采集的数据通过有线通信或无线通信传输至有效数据判断模块。

如图10所示,为本实施例的手语识别系统的硬件架构示意图。

作为示例性说明,本实施例中的数据采集模块以绝缘手套为基础,根据手指的长度,配有3根长度为112.23mm的Flex 4.5弯曲度传感器,2根长度为77mm的Flex 2.2弯曲度传感器,将该5根弯曲度传感器贴合在绝缘手套中每根手指表面上。手套上还安装有惯性测量单元进行数据采集,优选型号为采用MPU6050六轴IMU传感器。

进一步地,对于弯曲传感器的数据采集,考虑到弯曲度传感器的阻值会随着该传感器的弯曲度的增加而不断增加,其阻值随着弯曲度的增大而增大,可选地将弯曲度传感器与分压电阻串联,并通过主控单元自带的模数转换模块读取通电后弯曲度传感器两端的电压,并对采集得到的分压值进行滑动中值滤波去除噪声,经过计算弯曲度传感器的分压值和总电压值VCC的比值,得到弯曲度传感器在当前姿态下的电阻值,最后映射为对应的弯曲度值。

而数据采集模块上配置的MPU6050六轴IMU传感器中可选地内置有数字运动处理器,将加速度计和陀螺仪测量出的原始数据经过内部姿态解算处理之后直接输出为可用的四元数,如欧拉角(航向角、横滚角和俯仰角)和手部的加速度,并且同样存储在数据缓存器(FIFO)中。

MPU6050提供SPI和I2C通信接口,在本实施例中,MPU6050作为从机可选地使用I2C与主控单元通信。主控单元直接读取MPU6050的数据缓存器中特定地址的数据,得到手部的角度,手部角速度和手部加速度值。由于读取得到的手部加速度有较大的高斯噪声,本实施例可选地使用卡尔曼滤波处理后得到较为准确的加速度值。

本实施例数据采集模块选用如型号为ESP32-WROOM-32等双核微控制器(MCU)作为数据采集模块的主控单元,用于控制数据的采集、传输与接收,其内部电路各个组成部分为自主设计的数据采集电路,将电路制成PCB电路板,并对以上各个传感器通过相应接口进行连接。此外,还可选用Arduino微控制器作为数据采集模块的主控单元,具有计算资源少,功耗低,成本低等特点。

进一步可选地,有效数据判断模块可装配于绝缘手套上,在手语动作采集端完成数据采集和数据预处理,由主控单元将有效数据判断模块输出的有效的手语动作数据通过有线或无线通信传输至手语识别模块,以降低传输的数据量,提高数据传输效率。

进一步可选地,主控单元上配置有通信模块,所述通信模块可选地采用基于TCP协议的WIFI通信模块,或采用HC-05蓝牙模块,用于将数据传输至手语识别模块。

作为示例性说明,针对选用ESP32-WROOM-32等双核微控制器作为数据采集模块的主控单元的情况,可进一步选用ESP8266作为无线通信服务端,而ESP 32-WROOM-32主控单元上所集成的无线通信端作为客户端。当客户端检测到有效手语动作并预处理结束后,通过指定的主机IP地址和端口号对服务端发出连接请求。服务端接收到客户端的连接请求后,服务端与客户端之间建立一个稳定的TCP通信连接,并将预处理后所获得的压缩、量化之后的数据使用TCP通信从客户端传输到服务端,待数据的传输完毕后,TCP连接通道将会关闭,等待下一次传输。

作为另一示例性说明,数据采集模块主控单元(前端)和手语识别模块(后端)均通过串口连接有HC-05蓝牙模块,用于在前端与后端之间建立蓝牙通信连接,二者蓝牙匹配连接后即可通信。为了保证前端数据都能够准确无误地被后端接收,可选用停止等待ARQ协议来传输数据,即一次发送一个分组,接收端在接收到分组之后给发送端发送确认信号,发送端收到确认信号之后再发送下一个分组。后端在接收到协议帧之后,通过帧解算即可得到相应数据。

进一步可选地,所述手语识别模块部署在采用FPGA+CPU或FPGA+ARM的双核异构计算平台。其中,FPGA用于对神经网络模型的硬件计算加速,CPU用于对数据访问与传输的控制。

进一步可选地,对于搭载有PNN神经网络的手语识别模块,设计有加速IP核,其中包含了数据输入、欧氏距离计算、高斯函数计算和数据输出功能。所述IP核连接至AXI HP接口,通过AXI总线与双核异构计算平台中的DDR存储器进行数据交互,并采用突发模式进行数据传输。

作为示例性说明,所述双核异构计算平台搭载在PYNQ-Z2开发板上,可使用Python在Xilinx的ZYNQ平台上进行开发。其中,PYNQ提供自建overlay硬件库的功能,方便从PL端的python环境中调用FPGA上运行的加速IP核,使之作为可执行的操作,方便对手语识别模块中的浅层卷积神经网络的调试修改工作。其中浅层卷积神经网络可直接部署在PS端,且加速IP核设计部分可采用Vivado HLS高层次综合工具进行FPGA设计。进一步地,可采用Vivado HLS高层次综合工具搭建卷积运算IP核,对神经网络卷积运算部分进行优化设计,实现在FPGA上进行卷积运算的目的。

进一步可选地,系统还包括语音合成模块,用于根据手语识别模块输出的手语识别结果,从存储器中调用与识别结果匹配的语音片段进行实时播放,配合喇叭等语音播放器实现手语识别结果的实时播放,以达到与人同步语言沟通的效果。

作为示例性说明,所述语音合成模块选用串口波特率为9600bps的语音播放器,文字数据传输格式采用GB231编码体系。只需要通过串口发送神经网络输出的手语类别对应的字符编码,该模块即可实现语音的合成以及播报功能。

进一步可选地,系统还包括显示模块,用于将手语识别模块输出的手语识别结果进行可视化显示。

作为示例性说明,选用常规显示屏与双核异构计算平台相连接,根据所述双核异构计算单元的识别结果输出与语音同步的文字字幕到显示屏上。

实施例4

本实施例提出一种手语识别手套,应用实施例1提出的手语识别方法。如图11所示,为本实施例的手语识别手套的结构示意图。

本实施例提出的手语识别手套可选地采用绝缘手套,其中,手套中手指对应表面配置有弯曲度传感器,且手套上还配置有惯性测量单元、主控单元和通信单元。

本实施例中,所述惯性测量单元包括三轴加速度计和三轴陀螺仪。

所述主控单元用于控制所述弯曲度传感器和所述惯性测量单元根据预设的采样周期采集手语动作数据,以及用于对采集的手语动作数据进行有效数据判断,得到有效的手语动作数据。

所述通信单元用于将所述有效的手语动作数据传输至外置的终端,通过所述终端上搭载的轻量级神经网络进行手语识别,得到手语识别结果;其中,所述轻量级神经网络包括采用非对称并行卷积结构的浅层卷积神经网络,或基于遗传算法对平滑因子进行寻优的PNN神经网络。

作为示例性说明,本实施例的手套中手指对应表面配有3根长度为112.23mm的弯曲度传感器,2根长度为77mm的弯曲度传感器。

作为示例性说明,本实施例的惯性测量单元采用六轴IMU传感器。

作为示例性说明,本实施例的主控单元采用型号为ESP32-WROOM-32双核微控制器。

作为示例性说明,本实施例的通信单元采用基于TCP协议的WIFI通信模块,或采用HC-05蓝牙模块。

作为示例性说明,本实施例提出的外置的终端为PYNQ-Z2开发板,其上搭载有FPGA+CPU双核异构计算平台,用于利用其上搭载的轻量级神经网络进行手语识别。

显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。

相关技术
  • 一种基于双流时空图卷积神经网络的手语识别方法及系统
  • 一种基于双流时空图卷积神经网络的手语识别方法及系统
技术分类

06120116397593