一种基于深度学习的动态手势识别方法及相关设备与流程

文档序号:33469798发布日期:2023-03-15 08:00阅读:184来源:国知局
一种基于深度学习的动态手势识别方法及相关设备与流程

1.本技术属于行为动作识别技术领域,具体涉及一种基于深度学习的动态手势识别方法及相关设备。


背景技术:

2.手势作为一种日常沟通方式,与表情、动作和其他沟通方式相比具有直观、自然和舒适的优点,因此,手势也是除语言外最常用的交流手段,是人机交互的重要组成。手势识别技术在物联网、无人机、智能驾驶、医疗救助、虚拟现实和增强现实等领域均有广泛应用,极具价值。在自动驾驶和无人机中,智能控制系统采集手势信息并对其进行分析,根据结果发出指令,实现对车辆或无人机的导航和交互控制;在虚拟现实和增强现实中,微软的ho l olens已经实现了通过双手在虚拟环境中为用户提供娱乐;而在医疗救助中,手势识别可以为听障人群提供帮助,实现聋哑人与聋哑人或聋哑人与正常人之间的交流。
3.手势根据状态可以分为动态手势和静态手势,而根据识别对象又可以分为二维平面手型手势和三维立体手势,通过对两种手势类型的重组,可以获得手势识别的三种主要分类:二维静态手型识别、二维动态手势识别和三维动态手势识别,其中,三维动态手势因具有较好的信息表达能力而成为近年来该领域的研究热点,而二维动态手势识别因数据规模较小且采集便利,成为众多实际应用场景的首选。
4.目前,针对于动态手势识别,基于深度学习的手势识别方法要么聚焦于提升识别准确率,例如文章“cont i nuous gesture segmentat i on and recogn it i on us i ng 3dcnn and convo l ut i ona l lstm”中通过组合resnet34+lstm+mob i l enet网络的方式,将手势识别的准确率提升到95%左右(jester数据集上),但这种组合式网络导致模型规模巨大,建模难度很大,网络参数超过6000万;另一类是c3d和mobi l enet为代表的单一网络和轻量化网络,这些网络的参数仅仅只有上述组合网络的一半(c3d)甚至十分之一(mobi l net2v),但这些轻量化网络导致的结果是准确率基本都在80%左右,与上述组合式网络相差甚远。另一方面,目前的手势识别方案主要关手势注识别过程,对于手势的开始阶段和结束阶段关注较少,导致模型运算量较大,影响识别效率。


技术实现要素:

5.本技术实施例的目的在于提出一种基于深度学习的动态手势识别方法、装置、计算机设备及存储介质,以解决现有手势识别方案中存在的模型规模大、建模难度大、识别准确率低以及模型运算量较大,影响识别效率的技术问题。
6.为了解决上述技术问题,本技术实施例提供一种基于深度学习的动态手势识别方法,采用了如下所述的技术方案:
7.一种基于深度学习的动态手势识别方法,包括:
8.响应手势识别指令,实时获取客户端上传的视频流;
9.将视频流导入预先训练好的手部检测模型,通过手部检测模型从视频流中提取手
势图像序列;
10.将手势图像序列以张量的形式输入预先训练好的手势识别模型,输出手势识别结果,其中,手势识别模型包括卷积单元、预测单元和整合单元,卷积单元基于通道分离卷积的c3d网络训练得到,预测单元基于bi-lstm网络训练得到,整合单元基于mobi l enetv2网络训练得到;
11.通过卷积单元对手势图像序列进行通道分离卷积运算,得到图像卷积序列特征;
12.通过预测单元预测手势图像序列中每一帧图像的前后相邻图像的手势特征,得到帧间手势动作特征;
13.通过整合单元对帧间手势动作特征进行整合,输出手势识别结果。
14.进一步地,其中,预先训练好的手部检测模型基于yo l ov5网络进行训练得到,将视频流导入预先训练好的手部检测模型,通过手部检测模型从视频流中提取手势图像序列,具体包括:
15.解析视频流,获取视频流中的关键帧图像;
16.将关键帧图像导入预先训练好的手部检测模型,以识别关键帧图像中的手部特征图像;
17.组合手部特征图像以构建手势图像序列。
18.进一步地,组合手部特征图像以构建手势图像序列,具体包括:
19.识别关键帧图像的手部特征图像,并手部特征图像存储到内存中;
20.当识别到的手部特征图像的数量满足预设的第一数值阈值n1时,清空当前存储的手部特征图像,其中,第一数值阈值n1为正整数;
21.持续识别剩余的手部特征图像,直至关键帧图像中所有的手部特征图像识别完成为止;
22.组合当前内存中的手部特征图像以构建手势图像序列。
23.进一步地,组合当前内存中的手部特征图像以构建手势图像序列,具体包括:
24.计算当前内存中的手部特征图像的数量,得到手部图像数量;
25.分别将手部图像数量与预设的第二数值阈值n2以及预设的第三数值阈值n3进行比对,其中,第二数值阈值n2和第三数值阈值n3均为正整数;
26.当手部图像数量等于第二数值阈值n2时,组合当前内存中的图像以构建手势图像序列;
27.当手部图像数量小于第二数值阈值n2时,向内存中添加预设的空白图像,直到当前内存中的图像数量等于第二数值阈值n2为止,组合当前内存中的图像以构建手势图像序列;
28.当手部图像数量大于第二数值阈值n2且手部图像数量小于或等于第三数值阈值n3时,采用预设的第一筛选规则对当前内存中的图像进行筛选,并组合筛选后的图像以构建手势图像序列;
29.当手部图像数量大于第三数值阈值n3时,采用预设的第二筛选规则对当前内存中的图像进行筛选,并组合筛选后的图像以构建手势图像序列。
30.进一步地,第一数值阈值n1、第二数值阈值n2和第三数值阈值n3之间的关系为:n3=2n2,n1=3n2。
31.进一步地,采用预设的第一筛选规则对当前内存中的图像进行筛选,并组合筛选后的图像以构建手势图像序列,具体包括:
32.获取第一筛选规则对应的筛选频率,得到第一筛选频率;
33.以第一筛选频率对当前内存中的图像进行筛选,得到第一筛选图像,并统计第一筛选图像的数量;
34.比对第一筛选图像的数量与第二数值阈值n2;
35.当第一筛选图像的数量等于第二数值阈值n2时,组合当前内存中的图像以构建手势图像序列;
36.当第一筛选图像的数量小于第二数值阈值n2时,向内存中添加空白图像,直到当前内存中的图像数量等于第二数值阈值n2为止,组合当前内存中的图像以构建手势图像序列。
37.进一步地,采用预设的第二筛选规则对当前内存中的图像进行筛选,并组合筛选后的图像以构建手势图像序列,具体包括:
38.获取第二筛选规则对应的筛选频率,得到第二筛选频率;
39.以第二筛选频率对当前内存中的图像进行筛选,得到第二筛选图像,并统计第二筛选图像的数量;
40.比对第二筛选图像的数量与第二数值阈值n2;
41.当第二筛选图像的数量等于第二数值阈值n2时,组合当前内存中的图像以构建手势图像序列;
42.当第二筛选图像的数量小于第二数值阈值n2时,向内存中添加空白图像,直到当前内存中的图像数量等于第二数值阈值n2为止,组合当前内存中的图像以构建手势图像序列。
43.为了解决上述技术问题,本技术实施例还提供一种基于深度学习的动态手势识别装置,采用了如下所述的技术方案:
44.一种基于深度学习的动态手势识别装置,包括:
45.视频上传模块,用于响应手势识别指令,实时获取客户端上传的视频流;
46.图像识别模块,用于将视频流导入预先训练好的手部检测模型,通过手部检测模型从视频流中提取手势图像序列;
47.手势识别模块,用于将手势图像序列以张量的形式输入预先训练好的手势识别模型,输出手势识别结果,其中,手势识别模型包括卷积单元、预测单元和整合单元,卷积单元基于通道分离卷积的c3d网络训练得到,预测单元基于bi-lstm网络训练得到,整合单元基于mobi l enetv2网络训练得到。
48.卷积运算模块,用于通过卷积单元对手势图像序列进行通道分离卷积运算,得到图像卷积序列特征;
49.手势预测模块,用于通过预测单元预测手势图像序列中每一帧图像的前后相邻图像的手势特征,得到帧间手势动作特征;
50.手势整合模块,用于通过整合单元对帧间手势动作特征进行整合,输出手势识别结果。
51.为了解决上述技术问题,本技术实施例还提供一种计算机设备,采用了如下所述
的技术方案:
52.一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述处理器执行所述计算机可读指令时实现如上述任一项所述的基于深度学习的动态手势识别方法的步骤。
53.为了解决上述技术问题,本技术实施例还提供一种计算机可读存储介质,采用了如下所述的技术方案:
54.一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机可读指令,所述计算机可读指令被处理器执行时实现如上述中任一项所述的基于深度学习的动态手势识别方法的步骤。
55.与现有技术相比,本技术实施例主要有以下有益效果:
56.本技术公开一种基于深度学习的动态手势识别方法及相关设备,属于行为动作识别技术领域。本技术的方案通过对传统深度学习手势识别方案中的综合网络模型进行改良,引入通道可分离c3d网络和mobi l enetv2网络极大的降低了网络模型的参数量,减小网络模型的规模,降低建模难度,引入双向bi-lstm网络提升了动态手势在时间轴上前后手势上的信息提取能力,从而更好的提取动态手势的特征信息,同时本技术的方案在进行手势识别之前,通过预先训练好的手部检测模型对输入的视频流进行手部关节点检测,以识别视频流中的手势图像,以降低后续手势识别模型的数据处理量,提升手势识别的效率和识别准确度。
附图说明
57.为了更清楚地说明本技术中的方案,下面将对本技术实施例描述中所需要使用的附图作一个简单介绍,显而易见地,下面描述中的附图是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
58.图1示出了本技术可以应用于其中的示例性系统架构图;
59.图2示出了根据本技术的基于深度学习的动态手势识别方法的一个实施例的流程图;
60.图3示出了根据本技术的基于深度学习的动态手势识别方法的另一个实施例的流程图;
61.图4示出了根据本技术的基于深度学习的动态手势识别方法中的逐通道卷积示意图;
62.图5示出了根据本技术的基于深度学习的动态手势识别方法中的逐点卷积示意图;
63.图6示出了根据本技术的基于深度学习的动态手势识别装置的一个实施例的结构示意图;
64.图7示出了根据本技术的计算机设备的一个实施例的结构示意图。
具体实施方式
65.除非另有定义,本文所使用的所有的技术和科学术语与属于本技术的技术领域的技术人员通常理解的含义相同;本文中在申请的说明书中所使用的术语只是为了描述具体
的实施例的目的,不是旨在于限制本技术;本技术的说明书和权利要求书及上述附图说明中的术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。本技术的说明书和权利要求书或上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。
66.在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本技术的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
67.为了使本技术领域的人员更好地理解本技术方案,下面将结合附图,对本技术实施例中的技术方案进行清楚、完整地描述。
68.如图1所示,系统架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
69.用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103上可以安装有各种通讯客户端应用,例如网页浏览器应用、购物类应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等。
70.终端设备101、102、103可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、电子书阅读器、mp3播放器(movi ng pi cture experts group aud i o layer i i i,动态影像专家压缩标准音频层面3)、mp4(movi ng pi cture experts group aud i o layer i v,动态影像专家压缩标准音频层面4)播放器、膝上型便携计算机和台式计算机等等。
71.服务器105可以是提供各种服务的服务器,例如对终端设备101、102、103上显示的页面提供支持的后台服务器,服务器可以是独立的服务器,也可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(content de l i very network,cdn)、以及大数据和人工智能平台等基础云计算服务的云服务器。
72.需要说明的是,本技术实施例所提供的基于深度学习的动态手势识别方法一般由服务器执行,相应地,基于深度学习的动态手势识别装置一般设置于服务器中。
73.应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
74.继续参考图2,示出了根据本技术的基于深度学习的动态手势识别方法的一个实施例的流程图。本技术实施例可以基于人工智能技术对相关的数据进行获取和处理。其中,人工智能(art i f i c i a l i nte l l i gence,ai)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。
75.人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、机器人技术、生物识别技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
76.目前,针对于动态手势识别,基于深度学习的手势识别方法,通常采用resnet34+lstm+mob i l enet组合网络的方式,这种组合式网络模型规模巨大,建模难度很大;或者采用c3d和mob i l enet为代表的单一网络和轻量化网络,这些轻量化网络识别准确率较低,只有在80%左右。另外,目前的手势识别方案主要关手势注识别过程,对于手势的开始阶段和结束阶段关注较少,导致模型运算量较大,影响识别效率。
77.为了解决上述问题,本技术公开一种基于深度学习的动态手势识别方法及相关设备,本技术通过对传统深度学习手势识别方案中的综合网络模型进行改良,引入通道可分离c3d网络和mob i l enetv2网络极大的降低了网络模型的参数量,减小网络模型的规模,降低建模难度,引入双向bi-lstm网络提升了动态手势在时间轴上前后手势上的信息提取能力,从而更好的提取动态手势的特征信息,同时本技术的方案在进行手势识别之前,通过预先训练好的手部检测模型对输入的视频流进行手部关节点检测,以识别视频流中的手势图像,以降低后续手势识别模型的数据处理量,提升手势识别的效率和识别准确度。
78.请参考图2和图3,所述的基于深度学习的动态手势识别方法,包括以下步骤:
79.s201,响应手势识别指令,实时获取客户端上传的视频流。
80.在本实施例中,服务器接收到客户端上传的的手势识别指令之后,响应手势识别指令,并实时获取客户端上传的视频流。其中,客户端与摄像装置连接,当服务器响应手势识别指令之后,客户端通过摄像装置实时获取摄像装所在场景的视频流,并将视频流上传,视频流携带有动态手势特征序列。
81.在本技术一种具体的实施例中,摄像装置可以是具有自动对焦、自动曝光、程序控制触发的数码摄像机,服务器可以是任意带有gpu能力的运行模块。
82.在本实施例中,基于深度学习的动态手势识别方法运行于其上的电子设备(例如图1所示的服务器)可以通过有线连接方式或者无线连接方式接收客户端上传的的手势识别指令。需要指出的是,上述无线连接方式可以包括但不限于3g/4g连接、wi fi连接、蓝牙连接、wi max连接、zi gbee连接、uwb(u l tra wi deband)连接、以及其他现在已知或将来开发的无线连接方式。
83.s202,将视频流导入预先训练好的手部检测模型,通过手部检测模型从视频流中提取手势图像序列。
84.其中,手势识别模型基于yo l ov5网络进行训练得到,yo l o系列网络模型是最为经典的目标检测研究领域网络模型,如活体检测、肢体检测、手势检测等等。yo l o系列网络模型采用最经典都得目标检测one-stage算法,也是目前各个领域使用得最多的目标检测网络,目前已经有5个较为成熟的版本。yo l ov5网络模型是yo l o系列的最新版本,在继承了原有yo l o系列网络模型优点的基础上,具有更优的检测精度和更快的推理速度,同时yo l ov5的检测帧率可到达50-60fps,因此足以满足实时性要求。
85.在本实施例中,基于yo l ov5网络预先训练一个手部检测模型,通过手部检测模型从视频流中提取手势图像序列。
86.在上述实施例中,本技术通过利用yo l ov5网络训练手部检测模型,使用手部检测推理模型检测视频中是否出现手部特征,当发现视频中检测出现手部特征时,采集含有手部特征信息的图像,且每隔一帧采集一张含有手部特征信息的图像,并将采集到的图像存放到内存中,当视频的图像帧检测不到手部特征时,此时停止采集图片。本技术通过预先
训练好的手部检测模型识别视频流中的手势图像,以降低后续手势识别模型的数据处理量,提升手势识别的效率和识别准确度。
87.s203,将手势图像序列以张量的形式输入预先训练好的手势识别模型,输出手势识别结果,其中,手势识别模型包括卷积单元、预测单元和整合单元,卷积单元基于通道分离卷积的c3d网络训练得到,预测单元基于bi-lstm网络训练得到,整合单元基于mob i l enetv2网络训练得到。
88.其中,本技术通过借鉴c3d网络和mob i l enetv2网络的结构,将mob i l enetv2中的通道可分离思想融入到c3d网络中,从而将c3d网络的规模大幅度降低,再用改进的c3d代替组合网络中的resnet34网络,且用mob i l enetv2代替原有的mob i l net网络。此外,传统深度学习手势识别组合式网络中的lstm仅有单项记忆功能,为了进一步加强上述记忆能力,了双向lstm(bi-lstm),也通过上述优化形成通道可分离c3d网络、双向bi-lstm网络和mob i l enetv2网络组合的联合手势识别深度识别模型,使得网络在保持识别识别准确率的同时,极大的降低了网络模型的参数量,减小网络模型的规模,降低建模难度。
89.在本实施例中,从视频流中提取手势图像序列后,将手势图像序列以张量的形式输入到改进的手势识别模型中,以便识别视频流中的动态手势动作,获得手势识别结果。此时的手势识别模型由通道可分离c3d网络、双向b i-lstm网络和mob i l enetv2网络构成。
90.s204,通过卷积单元对手势图像序列进行通道分离卷积运算,得到图像卷积序列特征。
91.其中,本技术通过借鉴c3d网络和mob i l enetv2网络的结构,将mob i l enetv2中的通道可分离思想融入到c3d网络中,通过改进的c3d网络训练卷积单元,降低了网络模型的参数量,减小网络模型的规模。通过卷积单元对手势图像序列进行通道分离卷积操作,通道分离卷积(depthwi se separab l e convo l ut i on),也叫深度可分离卷积,由逐通道卷积和逐点卷积两部分组成,参见图4和图5,其中,逐通道卷积卷积核只有一层,输入特征的一个通道与一个卷积核相乘得到输出特征的一个通道,逐点卷积就是1x1卷积,可以带来通道方向上的信息交流,并且改变输出特征的通道数。
92.在本实施例中,服务器通过卷积单元对手势图像序列进行通道分离卷积运算,得到图像卷积序列特征。
93.s205,通过预测单元预测手势图像序列中每一帧图像的前后相邻图像的手势特征,得到帧间手势动作特征。
94.在本实施例中,引入双向bi-lstm网络训练预测单元,通过预测单元预测手势图像序列中每一帧图像的前后相邻图像的手势特征,得到帧间手势动作特征。本技术通过引入双向bi-lstm网络提升了动态手势在时间轴上前后手势上的信息提取能力,从而更好的提取动态手势的特征信息。
95.s206,通过整合单元对帧间手势动作特征进行整合,输出手势识别结果。
96.在本实施例中,引入mob i l enetv2网络训练整合单元,通过整合单元对帧间手势动作特征进行整合和分类,获得视频流中的动态手势识别结果。本技术通过引入mob i l enetv2网络进一步降低了网络模型的参数量,减小网络模型的规模,mob i l enetv2网络引入了线性瓶颈(li near bott l eneck)和逆残差(i nverted res i dua l)来提高网络的表征能力,是一种轻量级的卷积神经网络。
97.在上述实施例中,本技术通过对传统深度学习手势识别方案中的综合网络模型进行改良,引入通道可分离c3d网络和mob i l enetv2网络极大的降低了网络模型的参数量,减小网络模型的规模,降低建模难度,引入双向bi-lstm网络提升了动态手势在时间轴上前后手势上的信息提取能力,从而更好的提取动态手势的特征信息,同时本技术的方案在进行手势识别之前,通过预先训练好的手部检测模型对输入的视频流进行手部关节点检测,以识别视频流中的手势图像,以降低后续手势识别模型的数据处理量,提升手势识别的效率和识别准确度。
98.进一步地,其中,预先训练好的手部检测模型基于yo l ov5网络进行训练得到,将视频流导入预先训练好的手部检测模型,通过手部检测模型从视频流中提取手势图像序列,具体包括:
99.解析视频流,获取视频流中的关键帧图像;
100.将关键帧图像导入预先训练好的手部检测模型,以识别关键帧图像中的手部特征图像;
101.组合手部特征图像以构建手势图像序列。
102.在上述实施例中,预先训练好的手部检测模型基于yo l ov5网络进行训练得到,yo l ov5网络是目前各个领域使用得最多的目标检测网络,目前已经有5个较为成熟的版本。服务器通过解析视频流,获取视频流中的关键帧图像,将关键帧图像导入预先训练好的手部检测模型,通过手部检测模型检测关键帧图像是否含有手部关节节点特征,含有手部关节节点特征的关键帧图像被确定为手部特征图像,通过上述识别方式识别关键帧图像中的所有手部特征图像,选择预定数量的手部特征图像组合以构建手势图像序列。
103.进一步地,组合手部特征图像以构建手势图像序列,具体包括:
104.识别关键帧图像的手部特征图像,并手部特征图像存储到内存中;
105.当识别到的手部特征图像的数量满足预设的第一数值阈值n1时,清空当前存储的手部特征图像,其中,第一数值阈值n1为正整数;
106.持续识别剩余的手部特征图像,直至关键帧图像中所有的手部特征图像识别完成为止;
107.组合当前内存中的手部特征图像以构建手势图像序列。
108.在本实施例中,服务器每识别一张手部特征图像,都会将手部特征图像存储到内存中,并且服务器会实时判断内存中图像的数量是否满足预设的第一数值阈值n1,如果内存中图像的数量达到第一数值阈值n1,且还有识别出来的手部特征图像需要进行存储,则清空当前存储的手部特征图像,并将后续识别出来的手部特征图像存储到内存中,直至关键帧图像中所有的手部特征图像识别完成为止,组合当前内存中的手部特征图像以构建手势图像序列。
109.在本技术一种具体的实施例中,视频流中可能会存在手部一直处在视频中,但又未做相应手势,导致采集很对无用的手部特征图像,产生内存溢出问题,针对这一问题,通过设定当内存的图像存储上限来解决,如设定第一数值阈值n1为108张,如果内存中存储的图像数量达到108张,且还有等待存储的其他图像时,清空当前内存中存储的图像,循环此操作,直至关键帧图像中所有的手部特征图像识别完成为止,停止图像识别,图像采集完成,通过当前内存中的手部特征图像以构建手势图像序列。
110.进一步地,组合当前内存中的手部特征图像以构建手势图像序列,具体包括:
111.计算当前内存中的手部特征图像的数量,得到手部图像数量;
112.分别将手部图像数量与预设的第二数值阈值n2以及预设的第三数值阈值n3进行比对,其中,第二数值阈值n2和第三数值阈值n3均为正整数;
113.当手部图像数量等于第二数值阈值n2时,组合当前内存中的图像以构建手势图像序列;
114.当手部图像数量小于第二数值阈值n2时,向内存中添加预设的空白图像,直到当前内存中的图像数量等于第二数值阈值n2为止,组合当前内存中的图像以构建手势图像序列;
115.当手部图像数量大于第二数值阈值n2且手部图像数量小于或等于第三数值阈值n3时,采用预设的第一筛选规则对当前内存中的图像进行筛选,并组合筛选后的图像以构建手势图像序列;
116.当手部图像数量大于第三数值阈值n3时,采用预设的第二筛选规则对当前内存中的图像进行筛选,并组合筛选后的图像以构建手势图像序列。
117.在本实施例中,当图像采集完成后,统计当前内存中的手部特征图像的数量,得到手部图像数量,分别将手部图像数量与预设的第二数值阈值n2以及预设的第三数值阈值n3进行比对,当手部图像数量等于第二数值阈值n2时,组合当前内存中的图像以构建手势图像序列,当手部图像数量小于第二数值阈值n2时,向内存中添加预设的空白图像,直到当前内存中的图像数量等于第二数值阈值n2为止,组合当前内存中的图像以构建手势图像序列,当手部图像数量大于第二数值阈值n2且手部图像数量小于或等于第三数值阈值n3时,采用预设的第一筛选规则对当前内存中的图像进行筛选,并组合筛选后的图像以构建手势图像序列,当手部图像数量大于第三数值阈值n3时,采用预设的第二筛选规则对当前内存中的图像进行筛选,并组合筛选后的图像以构建手势图像序列。其中,第一数值阈值n1、第二数值阈值n2和第三数值阈值n3之间的关系为:n3=2n2,n1=3n2。
118.在本技术一种具体的实施例中,第一数值阈值n1为108张,第二数值阈值n2为36张,第三数值阈值n3为72张,当内存中的图像数量为36张时,直接组合内存中的图像构建手势图像序列;当内存中的图像数量小于36张时,向内存中添加预设的空白图像,使得内存中的图像数量达到36张,组合当前内存中的图像构建手势图像序列。
119.进一步地,采用预设的第一筛选规则对当前内存中的图像进行筛选,并组合筛选后的图像以构建手势图像序列,具体包括:
120.获取第一筛选规则对应的筛选频率,得到第一筛选频率;
121.以第一筛选频率对当前内存中的图像进行筛选,得到第一筛选图像,并统计第一筛选图像的数量;
122.比对第一筛选图像的数量与第二数值阈值n2;
123.当第一筛选图像的数量等于第二数值阈值n2时,组合当前内存中的图像以构建手势图像序列;
124.当第一筛选图像的数量小于第二数值阈值n2时,向内存中添加空白图像,直到当前内存中的图像数量等于第二数值阈值n2为止,组合当前内存中的图像以构建手势图像序列。
125.在上述实施例中,当内存中的图像数量大于36张且小于或等于72张时,获取第一筛选规则对应的筛选频率,得到第一筛选频率,第一筛选频率为每间隔1帧选取1张手部特征图像进行保留,以第一筛选频率对当前内存中的图像进行筛选,得到第一筛选图像,并统计第一筛选图像的数量,当第一筛选图像的数量为36张时,组合当前内存中的图像构建手势图像序列;当第一筛选图像的数量小于36张时,向内存中添加预设的空白图像,使得内存中的图像数量达到36张,组合当前内存中的图像构建手势图像序列。
126.进一步地,采用预设的第二筛选规则对当前内存中的图像进行筛选,并组合筛选后的图像以构建手势图像序列,具体包括:
127.获取第二筛选规则对应的筛选频率,得到第二筛选频率;
128.以第二筛选频率对当前内存中的图像进行筛选,得到第二筛选图像,并统计第二筛选图像的数量;
129.比对第二筛选图像的数量与第二数值阈值n2;
130.当第二筛选图像的数量等于第二数值阈值n2时,组合当前内存中的图像以构建手势图像序列;
131.当第二筛选图像的数量小于第二数值阈值n2时,向内存中添加空白图像,直到当前内存中的图像数量等于第二数值阈值n2为止,组合当前内存中的图像以构建手势图像序列。
132.在上述实施例中,当内存中的图像数量大于72张时,获取第二筛选规则对应的筛选频率,得到第二筛选频率,第二筛选频率为每间隔2帧选取1张手部特征图像进行保留,以第二筛选频率对当前内存中的图像进行筛选,得到第二筛选图像,并统计第二筛选图像的数量,当第二筛选图像的数量为36张时,组合当前内存中的图像构建手势图像序列;当第二筛选图像的数量小于36张时,向内存中添加预设的空白图像,使得内存中的图像数量达到36张,组合当前内存中的图像构建手势图像序列。
133.在上述实施例中,本技术的方案在进行手势识别之前,通过预先训练好的手部检测模型对输入的视频流进行手部关节点检测,以识别视频流中的手势图像,并对手势图像进行筛选和组合,构建手势图像序列,通过将手势图像序列导入改进后的手势识别模型,以识别视频流中的动态手势,降低了手势识别模型的数据处理量,提升手势识别的效率和识别准确度。
134.本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机可读指令来指令相关的硬件来完成,该计算机可读指令可存储于一计算机可读取存储介质中,该计算机可读指令在执行时,可包括如上述各方法的实施例的流程。其中,前述的存储介质可为磁碟、光盘、只读存储记忆体(read-on l y memory,rom)等非易失性存储介质,或随机存储记忆体(random access memory,ram)等。
135.应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
136.进一步参考图6,作为对上述图2所示方法的实现,本技术提供了一种基于深度学习的动态手势识别装置的一个实施例,该装置实施例与图2所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。
137.如图6所示,本实施例所述的基于深度学习的动态手势识别装置600包括:
138.视频上传模块601,用于响应手势识别指令,实时获取客户端上传的视频流;
139.图像识别模块602,用于将视频流导入预先训练好的手部检测模型,通过手部检测模型从视频流中提取手势图像序列;
140.手势识别模块603,用于将手势图像序列以张量的形式输入预先训练好的手势识别模型,输出手势识别结果,其中,手势识别模型包括卷积单元、预测单元和整合单元,卷积单元基于通道分离卷积的c3d网络训练得到,预测单元基于bi-lstm网络训练得到,整合单元基于mob i l enetv2网络训练得到;
141.卷积运算模块604,用于通过卷积单元对手势图像序列进行通道分离卷积运算,得到图像卷积序列特征;
142.手势预测模块605,用于通过预测单元预测手势图像序列中每一帧图像的前后相邻图像的手势特征,得到帧间手势动作特征;
143.手势整合模块606,用于通过整合单元对帧间手势动作特征进行整合,输出手势识别结果。
144.进一步地,其中,预先训练好的手部检测模型基于yo l ov5网络进行训练得到,图像识别模块602具体包括:
145.视频流解析子模块,用于解析视频流,获取视频流中的关键帧图像;
146.手部检测子模块,用于将关键帧图像导入预先训练好的手部检测模型,以识别关键帧图像中的手部特征图像;
147.序列构建子模块,用于组合手部特征图像以构建手势图像序列。
148.进一步地,序列构建子模块具体包括:
149.图像存储单元,用于识别关键帧图像的手部特征图像,并手部特征图像存储到内存中;
150.图像清空单元,用于当识别到的手部特征图像的数量满足预设的第一数值阈值n1时,清空当前存储的手部特征图像,其中,第一数值阈值n1为正整数;
151.持续识别单元,用于持续识别剩余的手部特征图像,直至关键帧图像中所有的手部特征图像识别完成为止;
152.序列构建单元,用于组合当前内存中的手部特征图像以构建手势图像序列。
153.进一步地,序列构建单元具体包括:
154.数量统计子单元,用于计算当前内存中的手部特征图像的数量,得到手部图像数量;
155.数量比对子单元,用于分别将手部图像数量与预设的第二数值阈值n2以及预设的第三数值阈值n3进行比对,其中,第二数值阈值n2和第三数值阈值n3均为正整数;
156.第一结果子单元,用于当手部图像数量等于第二数值阈值n2时,组合当前内存中的图像以构建手势图像序列;
157.第二结果子单元,用于当手部图像数量小于第二数值阈值n2时,向内存中添加预
设的空白图像,直到当前内存中的图像数量等于第二数值阈值n2为止,组合当前内存中的图像以构建手势图像序列;
158.第三结果子单元,用于当手部图像数量大于第二数值阈值n2且手部图像数量小于或等于第三数值阈值n3时,采用预设的第一筛选规则对当前内存中的图像进行筛选,并组合筛选后的图像以构建手势图像序列;
159.第四结果子单元,用于当手部图像数量大于第三数值阈值n3时,采用预设的第二筛选规则对当前内存中的图像进行筛选,并组合筛选后的图像以构建手势图像序列。
160.进一步地,第一数值阈值n1、第二数值阈值n2和第三数值阈值n3之间的关系为:n3=2n2,n1=3n2。
161.进一步地,采用预设的第一筛选规则对当前内存中的图像进行筛选,并组合筛选后的图像以构建手势图像序列,具体包括:
162.获取第一筛选规则对应的筛选频率,得到第一筛选频率;
163.以第一筛选频率对当前内存中的图像进行筛选,得到第一筛选图像,并统计第一筛选图像的数量;
164.比对第一筛选图像的数量与第二数值阈值n2;
165.当第一筛选图像的数量等于第二数值阈值n2时,组合当前内存中的图像以构建手势图像序列;
166.当第一筛选图像的数量小于第二数值阈值n2时,向内存中添加空白图像,直到当前内存中的图像数量等于第二数值阈值n2为止,组合当前内存中的图像以构建手势图像序列。
167.进一步地,采用预设的第二筛选规则对当前内存中的图像进行筛选,并组合筛选后的图像以构建手势图像序列,具体包括:
168.获取第二筛选规则对应的筛选频率,得到第二筛选频率;
169.以第二筛选频率对当前内存中的图像进行筛选,得到第二筛选图像,并统计第二筛选图像的数量;
170.比对第二筛选图像的数量与第二数值阈值n2;
171.当第二筛选图像的数量等于第二数值阈值n2时,组合当前内存中的图像以构建手势图像序列;
172.当第二筛选图像的数量小于第二数值阈值n2时,向内存中添加空白图像,直到当前内存中的图像数量等于第二数值阈值n2为止,组合当前内存中的图像以构建手势图像序列。
173.本技术公开一种基于深度学习的动态手势识别装置,属于行为动作识别技术领域。本技术的方案通过对传统深度学习手势识别方案中的综合网络模型进行改良,引入通道可分离c3d网络和mob i l enetv2网络极大的降低了网络模型的参数量,减小网络模型的规模,降低建模难度,引入双向bi-lstm网络提升了动态手势在时间轴上前后手势上的信息提取能力,从而更好的提取动态手势的特征信息,同时本技术的方案在进行手势识别之前,通过预先训练好的手部检测模型对输入的视频流进行手部关节点检测,以识别视频流中的手势图像,以降低后续手势识别模型的数据处理量,提升手势识别的效率和识别准确度。
174.为解决上述技术问题,本技术实施例还提供计算机设备。具体请参阅图7,图7为本实施例计算机设备基本结构框图。
175.所述计算机设备7包括通过系统总线相互通信连接存储器71、处理器72、网络接口73。需要指出的是,图中仅示出了具有组件71-73的计算机设备7,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。其中,本技术领域技术人员可以理解,这里的计算机设备是一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的设备,其硬件包括但不限于微处理器、专用集成电路(app l icat ion specific i ntegrated ci rcuit,asi c)、可编程门阵列(fie l d-programmab l e gate array,fpga)、数字处理器(digita l signa l processor,dsp)、嵌入式设备等。
176.所述计算机设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述计算机设备可以与用户通过键盘、鼠标、遥控器、触摸板或声控设备等方式进行人机交互。
177.所述存储器71至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,sd或dx存储器等)、随机访问存储器(ram)、静态随机访问存储器(sram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、可编程只读存储器(prom)、磁性存储器、磁盘、光盘等。在一些实施例中,所述存储器71可以是所述计算机设备7的内部存储单元,例如该计算机设备7的硬盘或内存。在另一些实施例中,所述存储器71也可以是所述计算机设备7的外部存储设备,例如该计算机设备7上配备的插接式硬盘,智能存储卡(smart media card,smc),安全数字(secure digital,sd)卡,闪存卡(flash card)等。当然,所述存储器71还可以既包括所述计算机设备7的内部存储单元也包括其外部存储设备。本实施例中,所述存储器71通常用于存储安装于所述计算机设备7的操作系统和各类应用软件,例如基于深度学习的动态手势识别方法的计算机可读指令等。此外,所述存储器71还可以用于暂时地存储已经输出或者将要输出的各类数据。
178.所述处理器72在一些实施例中可以是中央处理器(central processing unit,cpu)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器72通常用于控制所述计算机设备7的总体操作。本实施例中,所述处理器72用于运行所述存储器71中存储的计算机可读指令或者处理数据,例如运行所述基于深度学习的动态手势识别方法的计算机可读指令。
179.所述网络接口73可包括无线网络接口或有线网络接口,该网络接口73通常用于在所述计算机设备7与其他电子设备之间建立通信连接。
180.本技术公开一种计算机设备,属于行为动作识别技术领域。本技术的方案通过对传统深度学习手势识别方案中的综合网络模型进行改良,引入通道可分离c3d网络和mobi l enetv2网络极大的降低了网络模型的参数量,减小网络模型的规模,降低建模难度,引入双向bi-lstm网络提升了动态手势在时间轴上前后手势上的信息提取能力,从而更好的提取动态手势的特征信息,同时本技术的方案在进行手势识别之前,通过预先训练好的手部检测模型对输入的视频流进行手部关节点检测,以识别视频流中的手势图像,以降低后续手势识别模型的数据处理量,提升手势识别的效率和识别准确度。
181.本技术还提供了另一种实施方式,即提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可读指令,所述计算机可读指令可被至少一个处理器执行,以
使所述至少一个处理器执行如上述的基于深度学习的动态手势识别方法的步骤。
182.本技术公开一种存储介质,属于行为动作识别技术领域。本技术的方案通过对传统深度学习手势识别方案中的综合网络模型进行改良,引入通道可分离c3d网络和mobi l enetv2网络极大的降低了网络模型的参数量,减小网络模型的规模,降低建模难度,引入双向bi-lstm网络提升了动态手势在时间轴上前后手势上的信息提取能力,从而更好的提取动态手势的特征信息,同时本技术的方案在进行手势识别之前,通过预先训练好的手部检测模型对输入的视频流进行手部关节点检测,以识别视频流中的手势图像,以降低后续手势识别模型的数据处理量,提升手势识别的效率和识别准确度。
183.通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本技术各个实施例所述的方法。
184.本技术可用于众多通用或专用的计算机系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络pc、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。本技术可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本技术,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
185.显然,以上所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例,附图中给出了本技术的较佳实施例,但并不限制本技术的专利范围。本技术可以以许多不同的形式来实现,相反地,提供这些实施例的目的是使对本技术的公开内容的理解更加透彻全面。尽管参照前述实施例对本技术进行了详细的说明,对于本领域的技术人员来而言,其依然可以对前述各具体实施方式所记载的技术方案进行修改,或者对其中部分技术特征进行等效替换。凡是利用本技术说明书及附图内容所做的等效结构,直接或间接运用在其他相关的技术领域,均同理在本技术专利保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1