首页 / 一种基于时空网络的手势识别方法及系统

一种基于时空网络的手势识别方法及系统实质审查 发明

技术领域

[0001] 本发明涉及一种手势识别方法及系统,尤其是基于时空网络的手势识别方法及系统。

相关背景技术

[0002] 手势识别技术作为一种自然、直观的交互方式,已经被广泛应用于智能家居、虚拟现实、人机交互、游戏等领域。计算机视觉技术是实现手势识别的基础技术之一,通过对手势图像进行分析和处理,可以提取出手势的特征信息,实现手势的识别和分类。机器学习技术则是实现手势识别的核心技术之一,通过对大量手势数据进行学习和训练,让计算机具备识别和理解手势的能力。传感器技术则是实现手势识别的重要手段之一,包括摄像头、红外传感器、陀螺仪、加速度计等技术,可以获取手势所包含的动态信息,实现更加精准和准确的手势识别。
[0003] 现有的手势识别技术在实际应用时存在一些挑战,例如提取手势的特征信息的准确度和手势识别的实时性等方面,需进一步进行研究。

具体实施方式

[0027] 下面结合附图对本发明的技术方案作进一步说明。
[0028] 定义手势语义的基本准则如下:首先,手势语义通过动作分类进行划分,每个手势类别应与一个明确的动作含义对应。其次,动作一致性要求相同类别的手势在动作上保持一致,以确保模型能够准确区分不同的动作。此外,空间位置也是一个重要的准则,因为不同手部位置或手指位置的手势可能具有不同的含义,模型需要能够识别并区分不同位置的手势。最后,时间序列提供了额外的语义信息,手势的不同动作顺序和持续时间等信息应该被模型捕捉到,以提高对手势序列的理解能力。
[0029] 如图1所示,所述基于时空网络的手势识别方法,包括如下步骤:
[0030] 步骤1,构建实验数据集。
[0031] 在构建本地数据集的过程中,对采集到的图像数据进行调整,确保其符合主流数据集中的图像大小、标签等信息,使本地数据集与主流数据集的格式保持一致,让后续的数据处理和模型训练更加顺利。随后,将本地数据集与主流数据集进行融合,在引入更多种类和变化的样本的同时,使得模型能够更好地学习和理解不同的特征和模式,具体包括如下步骤:
[0032] 步骤1.1,确定手势集中所要包含的手势类别;
[0033] 步骤1.2,根据实际需要设置图像采集的相关参数(如每个动作采集多少张图像,一张图像包含多少帧数据);
[0034] 步骤1.3,打开图像采集设备进行采集工作,采集过程中利用轻量级识别模型进行手部关键点标注,手部关键点如图2所示,同时将各个点的空间坐标信息进行保存;
[0035] 步骤1.4,采集完毕后即本地数据集构建完毕,接着将本地数据集与目前主流的数据集进行结合,从而构成本发明的实验用数据集。
[0036] 步骤2,构建卷积神经网络结构和注意力模块,将实验数据集作为输入。
[0037] 构建卷积神经网络结构,将步骤1所得的实验数据集作为卷积神经网络模块和注意力模块的输入;利用卷积核进行自适应提取特征,提取后的特征经过最大池化层的池化操作,降低数据维度,并保留主要的特征信息,将降维后的特征数据与注意力模块的特征进行融合作为长短时记忆网络的输入,同时更新网络的权重并计算相关误差。
[0038] 如图3所示,注意力模块(APAM),通过平均池化和最大池化的有机结合,改善了对手部特征信息的提取和理解能力,同时提高了模型在复杂任务上的性能,使模型的决策过程更加透明和可解释。具体包括如下步骤:
[0039] 步骤2.1,构建出卷积神经网络结构;
[0040] 步骤2.2,将步骤1中所得数据集作为卷积神经网络和注意力模块的输入;
[0041] 步骤2.3,卷积神经网络与注意力模块同时进行特征提取,待执行完毕之后将特征提取所得数据进行整合,作为长短时记忆网络的输入;
[0042] 步骤2.4,计算误差并更新网络权重。
[0043] 步骤3,构建长短时记忆网络模块,网络输入为步骤2特征提取过后的数据。
[0044] 长短时记忆网络模块包括两个级联的长短时记忆网络,对步骤2的特征进行时间序列建模,具体包括如下步骤:
[0045] 步骤3.1,构建长短时记忆网络;
[0046] 步骤3.2,将步骤2.3所得的经过卷积神经网络特征提取后的数据信息作为长短时记忆网络的输入;
[0047] 步骤3.3,利用长短时记忆网络针对卷积神经网络提取到的特征进行时间序列建模;
[0048] 步骤3.4,输出结果并计算相关误差;
[0049] 步骤3.5,更新网络权重。
[0050] 步骤4,获得时空网络识别模型。
[0051] 传统的卷积神经网络结构通过多个卷积层和池化层的堆叠,最终通过全连接层输出预测结果。相比之下,如图4所示,时空网络在传统卷积神经网络结构的基础上引入了长短时记忆网络,其卷积神经网络部分包括输入层、卷积层和池化层,以及额外的卷积层和池化层,用于进一步提取重要的特征。而长短时记忆网络部分包括输入层、长短时记忆网络层以及额外的长短时记忆网络层,用于增加模型的深度和容量。最后,全连接层接收这些特征并输出结果;具体包括如下步骤:
[0052] 步骤4.1,将步骤3.4所得结果利用多类交叉熵损失函数进行判断,多类交叉熵损失函数公式如下所示:
[0053]
[0054] 其中:h=[h0,…,hc‑1]是概率分布,hi表示样本属于第i类的概率,y=[y0,…,yc‑1],当样本分类正确属于第i类时yi=1,否则yi=0;
[0055] 步骤4.2,满足准确率要求则将时空网络模型输出并用于手势识别;
[0056] 步骤4.3,准确率不满足要求,更新网络权重并继续训练,直至达到准确度要求。
[0057] 步骤5,利用获得的时空网络识别模型,进行手势识别。
[0058] 打开图像采集设备(例如摄像头),待检测人员做出相关手势,摄像头捕捉到实时的图像流,并将其传输到识别模型进行处理,模型会对手势进行分类和识别,并输出相应的识别结果,过程自动进行。在进行图像采集时,可使用高清摄像头或者具有较高分辨率的单目相机。最低要求的分辨率应为800×600。将摄像头放置在稍高于被检测者头部水平位置的位置上(如固定在支架上,避免过度的俯视与仰视效果),摄像头倾斜的角度约为30至45度,提供较好视野的同时,确保摄像头能够捕捉足够的细节。在实际部署时,根据手势特点以及场景等因素,微调摄像头的角度。
[0059] 在图像采集后,对采集到的手势图像进行预处理操作,如图像增强、去噪、归一化等,以消除图像中的噪声、模糊以及变形。这样可以提高图像特征的可靠性和一致性,使得后续的特征提取和建模过程更加准确和稳定。
[0060] 具体包括如下步骤:
[0061] 步骤5中,利用获得的时空网络识别模型,进行手势识别,包含以下步骤:
[0062] 步骤5.1,结合获得的时空网络识别模型,编写手势识别程序;
[0063] 步骤5.2,打开数据采集设备;
[0064] 步骤5.3,对着数据采集设备做出手势,等待识别结果。
[0065] 步骤6,输出识别结果。
[0066] 步骤6.1,利用轻量级识别模型中的手势识别模块进行手部位置检测;
[0067] 步骤6.2,利用步骤6.1提及的手势识别模块进行手部关键点检测,并将其连接显示出完整的手部骨架;
[0068] 步骤6.3,等待手势识别程序的判定结果,结果显示窗口左侧会陈列出需要进行检测的手势类别名称;
[0069] 步骤6.4,程序返回手势识别的判定结果,内容包括判定出的手势所属类别以及该类别的准确度,所属类别即步骤6.3中所提及的类别名,准确度会以进度条的形式在步骤6.3提及的各类别名称底层显示,进度条越长准确度越高。
[0070] 如图5至图7所示为三个手势识别结果示意图,能够识别出数字0~10以及左右,如图5所示为识别手势结果为类别“3”,进度条表示识别的准确率;图6所示为识别结果为类别“10”;图7所示为识别结果为类别“右”。
[0071] 本发明所述的基于时空网络的手势识别系统,包括时空网络模型,用于根据输入的手势图像,输出手势识别结果;
[0072] 所述时空网络模型包括卷积神经网络模块、注意力模块和长短时记忆网络模块;手势图像经过卷积神经网络和注意力模块后得到第一特征和第二特征,第一特征和第二特征整合后作为长短时记忆网络模块的输入。
[0073] 本发明所述的电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述计算机程序被加载至处理器时实现所述的基于时空网络的手势识别方法。
[0074] 所述计算机可读存储媒体可包括RAM、ROM、EEPROM、CD‑ROM或其它光盘存储装置、磁盘存储装置或其它磁性存储装置、快闪存储器或可用来存储指令或数据结构的形式的所要程序代码并且可由计算机存取的任何其它媒体。
[0075] 处理器用于执行存储器存储的计算机程序,以实现上述实施例涉及的方法中的各个步骤。

当前第1页 第1页 第2页 第3页