1.一种基于MLP和CNN的多输入融合深度网络的手势识别方法,其特征在于,包括如下步骤:步骤1.获取原始手势图像数据,并构建原始手势图像数据集;
步骤2.对原始手势图像数据集中各幅原始手势图像数据进行预处理,分别提取每幅原始手势图像中所包含的21个手部关键点的特征数据以及手势图片数据;
将从每幅原始手势图像中提取到的21个手部关键点的特征数据和手势图片数据,以及每幅原始手势图像对应的标签,共同组成一组样本数据;
将所有原始手势图像对应的样本数据组成样本数据集,并分为训练数据集和测试数据集;
步骤3.搭建多输入融合深度网络模型;
多输入融合深度网络包括特征提取模块、特征融合模块以及分类模块;
所述特征提取模块包括两个分支网络,分别是针对21个手部关键点特征提取的MLP分支网络以及针对手势图片特征提取的CNN分支网络;
两个分支网络的输出分别与特征融合模块相连,特征融合模块与分类模块相连;
步骤4.训练及测试多输入融合深度网络模型;
利用步骤2中训练数据集中的样本数据训练多输入融合深度网络;
其中,MLP分支网络的输入为21个手部关键点的特征数据,MLP分支网络的输出为对应于手部关键点的特征数据的第一特征向量;
CNN分支网络的输入为手势图片,CNN分支网络的输出为第二特征向量;
特征融合模块用于将第一、第二特征向量组合起来,并经过分类模块预测输出预测结果;
利用测试数据集中的样本数据对训练好的多输入融合深度网络进行测试;
步骤5.对于待识别的手势图像,提取图像包含的21个手部关键点的特征数据以及手势图片数据,利用训练及测试好的多输入融合深度网络进行手势识别,得到识别结果。
2.根据权利要求1所述的多输入融合深度网络的手势识别方法,其特征在于,所述步骤1具体为:获取不同光照强度以及不同背景下捕捉的手势图像,剔除其中模糊不清的手势图像,将收集好的手势图像进行分类打标签,建立原始手势图像数据集。
3.根据权利要求1所述的多输入融合深度网络的手势识别方法,其特征在于,所述步骤2中,手部关键点的特征数据的提取方法如下:首先利用目标检测框架从原始手势图像中检测识别手部的21个手部关键点像素坐标;
对原始数据集采用欧几里得距离归一化处理,具体步骤如下:定义手腕位置对应的手部关键点为基准手部关键点并将其设为原点,其余20个手部关键点与原点间的横、纵轴方向的距离绝对值作为对应手部关键点的新坐标;
分别计算各个手部关键点的新坐标到原点坐标的欧几里得距离,如公式(1)所示;
其中,i=0,1,…,19,20;
ρi表示第i个手部关键点的新坐标(xi,yi)与原点坐标(x0,y0)之间的欧几里得距离;
根据公式(1)中得到的ρi,由公式(2)进一步归一化处理;
ki=(ρi‑μ)/σ (2)
其中,ki为手部第i个手部关键点经过欧几里得归一化处理后的数值,即手部关键点特征数据;μ、σ分别表示21个手部关键点经欧式距离处理后的均值和标准差;
μ、σ的计算方式如公式(3)、公式(4)所示;
其中,n取值为20。
4.根据权利要求1所述的多输入融合深度网络的手势识别方法,其特征在于,所述步骤2中,手势图片数据的提取过程如下:利用图像分割技术显示目标检测框架检测的手势关键点及轮廓,然后进行膨胀操作,接着去除杂乱背景,并将图片调整为统一尺寸大小,完成对原始手势图像的预处理。
5.根据权利要求1所述的多输入融合深度网络的手势识别方法,其特征在于,所述步骤3中,CNN分支网络的结构如下:CNN分支网络包含九层网络结构,分别是一个输入层、三个卷积层、三个最大池化层以及两个全连接层;其中,各层网络结构的连接结构分别如下:定义三个卷积层分别为第一卷积层、第二卷积层以及第三卷积层;
定义三个最大池化层分别为第一最大池化层、第二最大池化层以及第三最大池化层;
定义两个全连接层分别为第一全连接层以及第二全连接层;
其中,输入层、第一卷积层、第一最大池化层、第二卷积层、第二最大池化层、第三卷积层、第三最大池化层、第一全连接层以及第二全连接层依次连接;
输入层的输入为预处理后的手势图片,输入尺寸大小为64×64×3;
第一卷积层、第二卷积层以及第三卷积层分别包含16、32、64个滤波器,第一卷积层、第二卷积层以及第三卷积层的卷积核的大小均为3×3;
第一最大池化层、第二最大池化层以及第三最大池化层采用最大池化,设置步长为2;
第一全连接层的神经元个数为32,第二全连接层的神经元个数为类别的数量;
所述步骤3中,MLP分支网络的结构如下:
MLP分支网络由三层全连接层构成;
定义三层全连接层分别为第三全连接层、第四全连接层以及第五全连接层;则第三全连接层、第四全连接层以及第五全连接层依次连接;
第三全连接层作为MLP分支网络的输入层,包含21个神经元,输入为预处理后得到的21个手部关键点特征数据;第四全连接层为隐藏层,包含16个神经元;
第五全连接层为MLP分支网络的输出层,神经元的个数设置为类别的数量。
6.根据权利要求5所述的多输入融合深度网络的手势识别方法,其特征在于,所述步骤3中,定义第一特征向量为Tout,第二特征向量为Jout;
特征融合模块对两个分支网络提取的特征信息合理融合,引入自适应的特征权重ω1、ω2,使模型根据数据的特征分布来自行决定权重参数,在特征融合模块以不同的权重来融合特征;
融合的手势特征Cf使用公式(5)计算得来:
其中, 代表Sum Fusion融合方式,权重ω1、ω2由公式(6)得到:其中,i=1,2,j=1,2,ωi为归一化的权重,且∑ωi=1,αi为初始化的权重参数;
分类模块包括两个全连接层;
定义两个全连接层分别为第六全连接层以及第七全连接层;
最终经过特征融合模块融合后的手势特征Cf经过两层全连接层完成最终的分类;
其中,第六全连接层包含32个神经元;
第七全连接层作为输出层,使用Softmax分类函数,神经元的个数设置为类别的数量。
7.根据权利要求1所述的多输入融合深度网络的手势识别方法,其特征在于,所述步骤4中,多输入融合深度网络的训练过程如下:将步骤2得到的21个手部关键点的特征数据作为分支网络MLP的输入,经过三层全连接层进行特征提取,得到一个第一特征向量,标记为特征向量Tout;
将步骤2得到的手势图片数据作为分支网络CNN的输入,经过CNN网络提取特征后,得到一个第二特征向量,标记为输出特征向量Jout;
通过特征融合模块使用自适应特征融合的方法将两个分支网络的输出特征向量组合起来,然后进一步经过全连接神经网络使用softmax分类器进行预测分类;
在训练过程中使用Dropout防止过拟合,使得模型收敛速度加快;
使用分类交叉熵损失函数,计算方法如公式(2)所示:其中,m是手势类别的数量, 表示模型的预测输出,yi表示真实的标签;
设定模型训练次数,模型使用Adam优化器进行训练;
根据预测输出与对应的分类标签进行计算,得出分类损失函数Loss值;当Loss值不再下降时停止训练更新,保存模型以及权重参数;
最后从保存的模型权重中读取参数,得到训练好的多输入融合深度网络模型。
8.一种基于MLP和CNN的多输入融合深度网络的手势识别系统,其特征在于,包括:图像采集模块,用于获取原始手势图像数据并构建原始手势图像数据集;
数据预处理模块,用于对原始手势图像数据集中各幅原始手势图像数据进行预处理,分别提取每幅原始手势图像中所包含的21个手部关键点的特征数据以及手势图片数据;
将从每幅原始手势图像中提取到的21个手部关键点的特征数据和手势图片数据,以及每幅原始手势图像对应的标签,共同组成一组样本数据;
将所有原始手势图像对应的样本数据组成样本数据集,并分为训练数据集和测试数据集;
模型搭建及训练测试模块,用于搭建、训练以及测试多输入融合深度网络模型;
多输入融合深度网络包括特征提取模块、特征融合模块以及分类模块;
所述特征提取模块包括两个分支网络,分别是针对21个手部关键点特征提取的MLP分支网络以及针对手势图片特征提取的CNN分支网络;
两个分支网络的输出分别与特征融合模块相连,特征融合模块与分类模块相连;
利用训练数据集中的样本数据训练多输入融合深度网络;
其中,MLP分支网络的输入为21个手部关键点的特征数据,MLP分支网络的输出为对应于手部关键点的特征数据的第一特征向量;
CNN分支网络的输入为手势图片,CNN分支网络的输出为第二特征向量;
特征融合模块用于将第一、第二特征向量组合起来,并经过分类模块预测输出预测结果;
利用测试数据集中的样本数据对训练好的多输入融合深度网络进行测试;
预测模块,对于待识别的手势图像,用于提取图像包含的21个手部关键点的特征数据以及手势图片数据,利用训练及测试好的多输入融合深度网络进行手势识别得到识别结果。
9.一种计算机设备,包括存储器和一个或多个处理器,所述存储器中存储有可执行代码,其特征在于,所述处理器执行所述可执行代码时,实现如权利要求1至7任一项所述的多输入融合深度网络的手势识别方法。
10.一种计算机可读存储介质,其上存储有程序,其特征在于,该程序被处理器执行时,实现如权利要求1至7任一项所述的多输入融合深度网络的手势识别方法。