CN112527113B - 手势识别及手势识别网络的训练方法和装置、介质和设备 - Google Patents
手势识别及手势识别网络的训练方法和装置、介质和设备 Download PDFInfo
- Publication number
- CN112527113B CN112527113B CN202011426908.0A CN202011426908A CN112527113B CN 112527113 B CN112527113 B CN 112527113B CN 202011426908 A CN202011426908 A CN 202011426908A CN 112527113 B CN112527113 B CN 112527113B
- Authority
- CN
- China
- Prior art keywords
- gesture recognition
- image
- key point
- feature
- hand
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 94
- 238000012549 training Methods 0.000 title claims abstract description 52
- 238000000605 extraction Methods 0.000 claims abstract description 37
- 238000013528 artificial neural network Methods 0.000 claims description 70
- 238000001514 detection method Methods 0.000 claims description 68
- 238000002372 labelling Methods 0.000 claims description 20
- 230000004927 fusion Effects 0.000 claims description 19
- 238000004590 computer program Methods 0.000 claims description 9
- 230000008859 change Effects 0.000 description 18
- 210000004247 hand Anatomy 0.000 description 18
- 238000010586 diagram Methods 0.000 description 10
- 230000000694 effects Effects 0.000 description 10
- 230000008901 benefit Effects 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 239000013598 vector Substances 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 230000008569 process Effects 0.000 description 4
- 206010028896 Needle track marks Diseases 0.000 description 3
- 238000007792 addition Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000007781 pre-processing Methods 0.000 description 3
- 238000013527 convolutional neural network Methods 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 230000035945 sensitivity Effects 0.000 description 2
- 210000000707 wrist Anatomy 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 210000000988 bone and bone Anatomy 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 210000003811 finger Anatomy 0.000 description 1
- 238000012804 iterative process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000005215 recombination Methods 0.000 description 1
- 230000006798 recombination Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 210000003813 thumb Anatomy 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/017—Gesture based interaction, e.g. based on a set of recognized hand gestures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2413—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
- G06F18/24133—Distances to prototypes
- G06F18/24137—Distances to cluster centroïds
- G06F18/2414—Smoothing the distance, e.g. radial basis function networks [RBFN]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/25—Fusion techniques
- G06F18/253—Fusion techniques of extracted features
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/44—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/20—Movements or behaviour, e.g. gesture recognition
- G06V40/28—Recognition of hand or arm movements, e.g. recognition of deaf sign language
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Computing Systems (AREA)
- Bioinformatics & Computational Biology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Molecular Biology (AREA)
- Evolutionary Biology (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Multimedia (AREA)
- Human Computer Interaction (AREA)
- Social Psychology (AREA)
- Psychiatry (AREA)
- User Interface Of Digital Computer (AREA)
- Image Analysis (AREA)
Abstract
本公开实施例公开了一种手势识别及手势识别网络的训练方法和装置、介质和设备,其中,手势识别方法包括:对图像序列中第一图像中手部的图像进行特征提取,得到第一特征;基于所述第一特征预测手部关键点,得到第一关键点预测结果;基于所述第一特征和至少一个第二特征、以及所述第一关键点预测结果和至少一个第二关键点预测结果进行手势识别,得到手势识别结果;其中,所述至少一个第二特征为对所述图像序列中所述第一图像邻近的至少一个第二图像中所述手部的图像进行特征提取对应得到的特征,所述至少一个第二关键点预测结果为基于所述至少一个第二特征预测手部关键点对应得到的关键点预测结果。本公开实施例可以提高手势识别结果的准确性。
Description
技术领域
本公开涉及计算机视觉技术,尤其是一种手势识别及手势识别网络的训练方法和装置、介质和设备。
背景技术
由于手势识别具有最直观的人机交互体验,被广泛应用于娱乐、自动驾驶等领域,例如,可用于车内娱乐系统互动和控制。手势识别很早就开始被研究。随着人工智能/深度学习技术的发展,使高准确度的视觉手势识别成为可能。
现有基于视觉的手势识别方法,较常见的是通过对人手局部区域图像进行特征提取和分类,来得到手势识别结果。
发明内容
为了解决上述技术问题,提出了本公开。本公开的实施例提供了一种手势识别及手势识别网络的训练方法和装置、介质和设备。
根据本公开实施例的一个方面,提供了一种手势识别方法,包括:
对图像序列中第一图像中手部的图像进行特征提取,得到第一特征;
基于所述第一特征预测手部关键点,得到第一关键点预测结果;
基于所述第一特征和至少一个第二特征、以及所述第一关键点预测结果和至少一个第二关键点预测结果进行手势识别,得到手势识别结果;
其中,所述至少一个第二特征为对所述图像序列中所述第一图像邻近的至少一个第二图像中所述手部的图像进行特征提取对应得到的特征,所述至少一个第二关键点预测结果为基于所述至少一个第二特征预测手部关键点对应得到的关键点预测结果。
根据本公开实施例的另一个方面,提供了一种手势识别网络的训练方法,所述手势识别网络用于实现本公开任一实施例所述手势识别方法,所述手势识别网络包括:用于进行特征提取的第一神经网络、用于预测手部关键点的第二神经网络、和用于进行手势识别的第三神经网络;所述方法包括:
将样本图像序列输入所述手势识别网络;
获取所述第二神经网络输出的、所述样本图像序列中第一样本图像对应的第一关键点预测信息,以及所述第三神经网络输出的、所述第一样本图像对应的第一手势识别信息;
获取所述第一关键点预测信息与第一样本图像标注的关键点标注信息之间的第一差异,以及所述第一手势识别信息与所述第一样本图像标注的手势类别信息之间的第二差异;
基于所述第一差异和所述第二差异,对所述手势识别网络进行训练。
根据本公开实施例的又一个方面,提供了一种手势识别装置,包括:
特征提取模块,用于对图像序列中第一图像中手部的图像进行特征提取,得到第一特征;
关键点预测模块,用于基于所述特征提取模块得到的所述第一特征预测手部关键点,得到第一关键点预测结果;
手势识别模块,用于基于所述特征提取模块得到的第一特征和至少一个第二特征、以及所述关键点预测模块得到的所述第一关键点预测结果和至少一个第二关键点预测结果,进行手势识别,得到手势识别结果;
其中,所述至少一个第二特征为对所述图像序列中所述第一图像邻近的至少一个第二图像中所述手部的图像进行特征提取对应得到的特征,所述至少一个第二关键点预测结果为基于所述至少一个第二特征预测手部关键点对应得到的关键点预测结果。
根据本公开实施例的又一个方面,提供了一种手势识别网络的训练装置,所述手势识别网络用于实现本公开任一实施例所述手势识别方法,所述手势识别网络包括:用于进行特征提取的第一神经网络、用于预测手部关键点的第二神经网络、和用于进行手势识别的第三神经网络;所述装置包括:
第一获取模块,用于在将样本图像序列输入所述手势识别网络后,获取所述第二神经网络输出的、所述样本图像序列中第一样本图像对应的第一关键点预测信息,以及所述第三神经网络输出的、所述第一样本图像对应的第一手势识别信息;
第二获取模块,用于获取所述第二神经网络输出的所述第一关键点预测信息与第一样本图像标注的关键点标注信息之间的第一差异,以及所述第三神经网络输出的所述第一手势识别信息与所述第一样本图像标注的手势类别信息之间的第二差异;
训练模块,用于基于所述第一差异和所述第二差异,对所述手势识别网络进行训练。
根据本公开实施例的又一个方面,提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序用于执行本公开上述任一实施例所述的手势识别方法。
根据本公开实施例的再一个方面,提供了一种电子设备,所述电子设备包括:
处理器;
用于存储所述处理器可执行指令的存储器;
所述处理器,用于从所述存储器中读取所述可执行指令,并执行所述指令以实现本公开上述任一实施例所述的手势识别方法。
基于本公开上述实施例提供的手势识别方法和装置、计算机可读存储介质和电子设备,通过对图像序列中的第一图像及邻近的至少一个第二图像进行特征提取,并分别基于提取到的特征进行关键点检测得到第一图像及邻近的至少一个第二图像的关键点预测结果,同时结合第一图像及邻近的至少一个第二图像的特征以及关键点预测结果进行手势识别,综合利用邻近的多帧图像中手部特征的时序变化信息和手部关键点的时序变化信息,不止考虑了某一时刻的手部姿态(即手势),还考虑了手部姿态的时序变化情况,能够得到准确、稳定的手势识别结果,能够有效提高手势识别结果的准确性和稳定性,从而提高了手势识别效果。另外,本公开实施例在手势识别过程中,结合了图像序列中第一图像及邻近的至少一个第二图像的关键点预测结果进行手势识别,相对于通过对单帧图像进行特征提取和分类进行手势识别的方式,可以降低对场景、背景、手部的表观特征等与手势无关的信息的敏感性,从而避免对场景、背景、手部的表观特征等与手势无关的信息差异对手势识别结果的影响,提高手势识别结果的准确性;结合了第一图像及邻近的至少一个第二图像的特征进行手势识别,相对于单纯通过手部关键点检测进行手势识别的方式,可以避免手部关键点检测结果不准确而影响手势识别结果,从而提高手势识别结果的准确性。
基于本公开上述实施例提供的手势识别网络的训练方法和装置、计算机可读存储介质和电子设备,将样本图像序列输入手势识别网络,该手势识别网络包括用于进行特征提取的第一神经网络、用于预测手部关键点的第二神经网络、和用于进行手势识别的第三神经网络,获取第二神经网络输出的第一样本图像对应的第一关键点预测信息,以及第三神经网络输出的第一样本图像对应的第一手势识别信息,然后获取第一关键点预测信息与第一样本图像标注的关键点标注信息之间的第一差异,以及第一手势识别信息与所述第一样本图像标注的手势类别信息之间的第二差异,进而,基于第一差异和第二差异,对手势识别网络进行训练。本公开实施例同时以样本图像标注的关键点标注信息和手势类别信息作为监督信息,同时基于样本图像的关键点预测信息与关键点标注信息之间的第一差异、以及第一手势识别信息与手势类别信息之间的第二差异对手势识别网络进行训练,可以实现对手势识别网络的多信息监督和训练,提高手势识别网络的训练效率和性能,从而使得利用训练得到的手势识别网络进行手势识别时,可以提高手势识别结果的准确性。
下面通过附图和实施例,对本公开的技术方案做进一步的详细描述。
附图说明
通过结合附图对本公开实施例进行更详细的描述,本公开的上述以及其他目的、特征和优势将变得更加明显。附图用来提供对本公开实施例的进一步理解,并且构成说明书的一部分,与本公开实施例一起用于解释本公开,并不构成对本公开的限制。在附图中,相同的参考标号通常代表相同部件或步骤。
图1是本公开所适用的一个场景图。
图2是本公开一示例性实施例提供的手势识别方法的流程示意图。
图3为本公开一示例性实施例提供的21个手部关键点一个的位置示意图。
图4是本公开另一示例性实施例提供的手势识别方法的流程示意图。
图5是本公开又一示例性实施例提供的手势识别方法的流程示意图。
图6是本公开再一示例性实施例提供的手势识别方法的流程示意图。
图7是本公开手势识别方法一应用实施例的流程示意图。
图8是本公开一示例性实施例提供的手势识别网络的训练方法的流程示意图。
图9是本公开一示例性实施例提供的手势识别装置的结构示意图。
图10是本公开另一示例性实施例提供的手势识别装置的结构示意图。
图11是本公开一示例性实施例提供的手势识别网络的训练装置的结构示意图。
图12是本公开一示例性实施例提供的电子设备的结构图。
具体实施方式
下面,将参考附图详细地描述根据本公开的示例实施例。显然,所描述的实施例仅仅是本公开的一部分实施例,而不是本公开的全部实施例,应理解,本公开不受这里描述的示例实施例的限制。
应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本公开的范围。
本领域技术人员可以理解,本公开实施例中的“第一”、“第二”等术语仅用于区别不同步骤、设备或模块等,既不代表任何特定技术含义,也不表示它们之间的必然逻辑顺序。
还应理解,在本公开实施例中,“多个”可以指两个或两个以上,“至少一个”可以指一个、两个或两个以上。
还应理解,对于本公开实施例中提及的任一部件、数据或结构,在没有明确限定或者在前后文给出相反启示的情况下,一般可以理解为一个或多个。
另外,本公开中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本公开中字符“/”,一般表示前后关联对象是一种“或”的关系。
还应理解,本公开对各个实施例的描述着重强调各个实施例之间的不同之处,其相同或相似之处可以相互参考,为了简洁,不再一一赘述。
同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本公开及其应用或使用的任何限制。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
本公开实施例可以应用于终端设备、计算机系统、服务器等电子设备,其可与众多其它通用或专用计算系统环境或配置一起操作。适于与终端设备、计算机系统、服务器等电子设备一起使用的众所周知的终端设备、计算系统、环境和/或配置的例子包括但不限于:个人计算机系统、服务器计算机系统、瘦客户机、厚客户机、手持或膝上设备、基于微处理器的系统、机顶盒、可编程消费电子产品、网络个人电脑、小型计算机系统﹑大型计算机系统和包括上述任何系统的分布式云计算技术环境,等等。
终端设备、计算机系统、服务器等电子设备可以在由计算机系统执行的计算机系统可执行指令(诸如程序模块)的一般语境下描述。通常,程序模块可以包括例程、程序、目标程序、组件、逻辑、数据结构等等,它们执行特定的任务或者实现特定的抽象数据类型。计算机系统/服务器可以在分布式云计算环境中实施,分布式云计算环境中,任务是由通过通信网络链接的远程处理设备执行的。在分布式云计算环境中,程序模块可以位于包括存储设备的本地或远程计算系统存储介质上。
申请概述
在实现本公开的过程中,发明人发现,现有基于视觉的手势识别方法,是通过对单帧图像中的人手局部区域图像进行特征提取和分类,来得到手势识别结果,对场景、背景、手部的表观特征等与手势无关的信息较敏感,导致手势识别效果较差。
本公开实施例综合利用邻近的多帧图像中手部特征的时序变化信息和手部关键点的时序变化信息,既考虑了当前时刻的手部姿态(即手势),还考虑了当前时刻之前和/或之后的手部姿态的时序变化情况,能够得到准确、稳定的手势识别结果,能够有效提高手势识别结果的准确性和稳定性,从而提高了手势识别效果。
示例性系统
本公开实施例可以应用于车辆、机器人、儿童玩具、终端设备、播放器等有手势控制的场景,通过对用户的手部进行手势识别,通过手势识别结果控制车辆、机器人、儿童玩具、终端设备、播放器等设备的运行。
图1是本公开所适用的一个场景图。如图1所示,本公开实施例应用于手势控制场景时,由图像采集模块101(例如摄像头等)采集得到图像序列输入本公开实施例的手势识别装置102;手势识别装置102,分别以该图像序列中的每一帧图像或者间隔若干帧选取的一帧图像作为第一图像,对第一图像中手部的图像进行特征提取得到第一特征;基于所述第一特征预测手部关键点得到第一关键点预测结果;基于所述第一特征和分别对图像序列中第一图像邻近的至少一个第二图像中所述手部的图像进行特征提取得到的至少一个第二特征、所述第一关键点预测结果和分别基于所述至少一个第二特征预测手部关键点得到的至少一个第二关键点预测结果,进行手势识别,得到手势识别结果并输出;控制装置103,基于手势识别装置102输出的手势识别结果,控制车辆、机器人、儿童玩具、终端设备、播放器等设备的运行。例如,在基于手势识别结果控制车辆运行的应用场景中,在用户手部做出左转、右转、停车、行驶等手势时,基于本公开实施例对包括用户手部的图像序列进行手势识别,若得到的手势识别结果为左转,则控制车辆左转行驶;若得到的手势识别结果为右转,则控制车辆右转行驶;若得到的手势识别结果为停车,则控制车辆停止行驶;若得到的手势识别结果为行驶,则控制车辆启动行驶;等等。本公开实施例对具体的应用场景不做限制。
示例性方法
图2是本公开一示例性实施例提供的手势识别方法的流程示意图。本实施例可应用在电子设备上,如图2所示,本实施例的手势识别方法包括如下步骤:
步骤201,对图像序列中第一图像中手部的图像进行特征提取,得到第一特征。
可选地,在其中一些实施方式中,本公开实施例中的图像序列,可以是单独设置的、或者电子设备上设置的图像采集模块(例如摄像头)采集的视频图像序列,也可以是从该视频图像序列中选取的其中一段图像序列,或者,还可以是从该视频图像序列中按照每间隔若干帧(例如1帧、2帧等)选取一帧的方式选取出的图像组成的图像序列,等等,本公开实施例对图像序列的具体来源不做限定。
可选地,在其中一些实施方式中,所述第一图像可以是图像序列中任意一帧需要进行手势识别的图像,可以是图像序列中包括的原始图像,也可以是对该原始图像进行预处理后得到的图像,其中的预处理例如可以包括但不限于:对原始图像进行转正、清晰度调整、按照预设大小进行尺寸调整等等,本公开实施例对第一图像是否为预处理后图像、以及预处理的方式不做限定。
步骤202,基于所述第一特征预测手部关键点,得到第一关键点预测结果。
其中,该第一关键点预测结果可以包括用于确定手部姿势的手部各关键点的位置信息,例如,可以包括手部各关键点的关键点标识(ID)和位置坐标,其中的关键点ID用于唯一标识一个手部关键点,可以是该关键点在手部关键点中的序号等,本公开实施例对此不做限制。
例如,在一种具体实现中,用于确定手部姿势的手部关键点包括预设数量的主要骨骼节点,分别位于指尖、各节指骨连接处、手腕等位置。以预设数量的主要骨骼节点为21个手部关键点为例进行示例性说明,如图3所示,为21个手部关键点一个的位置示意图,则第一关键点预测结果可以包括每个手部关键点的序号和位置坐标信息,例如可以表示为:1:(x1,y1);i:(xi,yi);…;21:(x21,y21),其中,i=1,…,20。本公开实施例对第一关键点预测结果的具体表示形式不做限制。
步骤203,基于所述第一特征和至少一个第二特征、以及所述第一关键点预测结果和至少一个第二关键点预测结果进行手势识别,得到手势识别结果。
其中,所述至少一个第二特征为对所述图像序列中所述第一图像邻近的至少一个第二图像中所述手部的图像进行特征提取对应得到的特征,所述至少一个第二关键点预测结果为基于所述至少一个第二特征预测手部关键点对应得到的关键点预测结果。
可选地,在其中一些实施方式中,可以预先设定各种可能的手势类别及其手势类别ID,其中,可能的手势类别例如可以包括但不限于以下任意一项或多项手势类别:平托、竖大拇指、手枪、OK、桃心、V字、五指张开、向左、向右、停止、继续等。手势类别ID用于唯一标识一个手势类别。本公开实施例对可能的手势类别不做限制。
可选地,在其中一些实施方式中,所述手势识别结果可以是识别出的手势类别的手势类别ID。
或者,在另一些实施方式中,所述手势识别结果也可以是各种手势类别的手势类别ID以及对应的概率,即第一图像中手部姿势可能是各种手势类别ID所标识的手势类别的概率,此时,可以以所述手势识别结果中概率最大的手势类别ID所标识的手势类别作为第一图像中手部的姿势。
本实施例中,同时结合第一图像及邻近的至少一个第二图像的特征以及关键点预测结果进行手势识别,综合利用邻近的多帧图像中手部特征的时序变化信息和手部关键点的时序变化信息,不止考虑了某一时刻的手部姿态(即手势),还考虑了手部姿态的时序变化情况,能够得到准确、稳定的手势识别结果,能够有效提高手势识别结果的准确性和稳定性,从而提高了手势识别效果。另外,本公开实施例在手势识别过程中,结合了图像序列中第一图像及邻近的至少一个第二图像的关键点预测结果进行手势识别,相对于通过对单帧图像进行特征提取和分类进行手势识别的方式,可以降低对场景、背景、手部的表观特征等与手势无关的信息的敏感性,从而避免对场景、背景、手部的表观特征等与手势无关的信息差异对手势识别结果的影响,提高手势识别结果的准确性;结合了第一图像及与该第一图像邻近的至少一个第二图像的特征进行手势识别,相对于单纯通过手部关键点检测进行手势识别的方式,可以避免手部关键点检测结果不准确而影响手势识别结果,从而提高手势识别结果的准确性。
可选地,在其中一些实施方式中,所述至少一个第二图像可以包括:位于第一图像之前且与第一图像邻近的至少一个图像、和位于第一图像之后且与第一图像邻近的至少一个图像。
在具体实现中,位于第一图像之前且与第一图像邻近的至少一个图像,可以是与第一图像相邻的至少一个图像,也可以是与至少一个图像间隔预设帧数的图像,其中预设帧数具体可以在完成一个手势动作所需的图像帧数范围内取值,例如可以是1~30帧。另外,位于第一图像之前且与第一图像邻近的至少一个图像,可以是连续的图像,也可以是不连续的图像,或者也可以是部分连续、部分不连续的图像。本公开实施例对至少一个第二图像中图像之间的连续性、以及至少一个第二图像与第一图像之间的连续性不做限制。
例如,在其中一个具体示例中,所述至少一个第二图像可以包括:位于第一图像之前且与第一图像直接相邻的M帧图像、和位于第一图像之后且与第一图像邻近的N帧图像,其中,M、N的取值分别为大于0的整数,且M与N的取值之和小于64。
本公开的发明人通过研究发现,正常情况下,完成每个手势动作通常需要1秒钟(s)的时间,则可以选取2~3s内的图像作为第一图像及其邻近的至少一个第二图像执行本实施例的手势识别方法进行手势识别。通常情况下,视频的帧率区间大概为25~30帧/秒(FPS),则可以选取50~90帧图像作为第一图像及其邻近的至少一个第二图像执行本实施例的手势识别方法进行手势识别。
本实施例中,同时选取位于第一图像前、后的邻近图像作为所述至少一个第二图像,用于辅助对第一图像进行手势识别,可以提供连续的手部特征和手部关键点信息作为参考信息,从而有助于获得有效的手部特征的时序变化信息和手部关键点的时序变化信息,进一步提高手势识别结果的准确性和稳定性,从而提高手势识别效果。
图4是本公开另一示例性实施例提供的手势识别方法的流程示意图。如图4所示,在上述图2所示实施例的基础上,步骤203可以包括如下步骤:
步骤2031,将第一特征和至少一个第二特征基于时序拼接,得到拼接特征。
在具体实现中,本公开实施例中的第一特征和第二特征,可以表示为向量的形式,此时第一特征和第二特征对应体现为第一特征向量和第二特征向量,则得到的拼接特征具体体现为拼接特征向量。
或者,本公开实施例中的第一特征和第二特征,也可以表示为图的形式,此时第一特征和第二特征对应体现为第一特征图和第二特征图,则得到的拼接特征具体体现为拼接特征图。本公开实施例对第一特征、第二特征和拼接特征的具体表示形式不做限定。
步骤2032,将第一关键点预测结果和至少一个第二关键点预测结果基于时序拼接,得到拼接关键点预测结果。
步骤2033,基于拼接特征和拼接关键点预测结果进行手势识别,得到手势识别结果。
本实施例中,将第一特征和至少一个第二特征基于时序拼接,得到的拼接特征可以反映出第一图像及其邻近的至少一个第二图像中手部特征的时序变化,将第一关键点预测结果和至少一个第二关键点预测结果基于时序拼接,得到的拼接关键点预测结果可以反映出第一图像及其邻近的至少一个第二图像中手部关键点之间的时序变化,同时基于拼接特征和拼接关键点预测结果进行手势识别,综合考虑了手部特征及其时序变化、以及手部关键点及其时序变化,使得由此得到手势识别结果更稳定、准确。
图5是本公开又一示例性实施例提供的手势识别方法的流程示意图。如图5所示,在上述图4所示实施例的基础上,步骤2033可以包括如下步骤:
步骤20331,将拼接特征和拼接关键点预测结果进行特征融合,得到融合特征。
可选地,在其中一些实施方式中,可以采用连接(concat)、相加(add)等方式,将所述拼接特征和所述拼接关键点预测结果进行拼接。
其中,采用连接方式将拼接特征和拼接关键点预测结果进行特征融合,即直接将拼接特征和拼接关键点预测结果作为两个特征x和y进行连接,若拼接特征和拼接关键点预测结果的维数分别为p和q,则将拼接特征和拼接关键点预测结果进行特征融合得到融合特征的维数为p+q。
采用相加方式将拼接特征和拼接关键点预测结果进行特征融合,即采用并行策略,将拼接特征和拼接关键点预测结果作为两个特征向量x和y组合成复向量,则将拼接特征和拼接关键点预测结果进行特征融合得到融合特征z=x+iy,其中i是虚数单位。
本公开实施例对特征融合的具体方式不做限制。
步骤20332,基于所述融合特征进行手势识别,得到所述手势识别结果。
本实施例中,将拼接特征和拼接关键点预测结果进行特征融合,得到的融合特征综合了拼接特征和拼接关键点预测结果信息,相对于拼接特征和拼接关键点预测结果具有更强的信息表达能力和判别性能,基于融合特征进行手势识别,可以提升手势分类性能,从而可以得到更准确的手势识别结果。
图6是本公开再一示例性实施例提供的手势识别方法的流程示意图。如图6所示,在上述各实施例的基础上,还可以包括如下步骤:
步骤301,依次检测图像序列中第一图像和至少一个第二图像中的手部。
其中,第二图像为图像序列中第一图像邻近的图像,例如可以包括:位于第一图像之前且与第一图像邻近的至少一个图像、和位于第一图像之后且与第一图像邻近的至少一个图像。
步骤302,对检测到的手部的检测框进行跟踪,得到同一手部的检测框形成的检测框轨迹。
本公开实施例中,手部的检测框为手部的外接框,包括从图像(第一图像、至少一个第二图像)中检测到的手部图像。
本公开各实施例中,可以通过深度学习算法进行手部检测和跟踪,本公开实施例对手部检测和跟踪的具体实现方式不做限制。
步骤303,对检测框轨迹设置用于标识该检测框轨迹的轨迹标识(track ID)。
可选地,在其中一些实施方式中,从图像序列中检测到手部后,可以获得手部的检测框,根据从图像序列中检测到的手部的检测框的大小和位置,可以确定同一手部的检测框,由同一手部的检测框形成一个检测框轨迹。若图像序列中检测到多个手部,则可以获得多个手部的检测框,通过分别对每个手部的检测框进行跟踪,不同手部的检测框形成不同的检测框轨迹,则对不同检测框轨迹分别设置不同的轨迹标识。
本实施例中,通过对第一图像和邻近的至少一个第二图像进行手部检测和检测框跟踪,并对跟踪形成的检测框轨迹对检测框轨迹设置轨迹标识,可以跟踪图像序列中的同一手部,以便于在第一图像和邻近的至少一个第二图像中针对同一个手部进行特征提取和关键点检测、并进行手势识别。
相应地,在其中一些实施方式中,上述图2所示实施例可以通过如下方式实现:
步骤304,对第一图像中携带目标轨迹标识的手部的检测框进行特征提取,得到第一特征。
其中的目标轨迹标识,为第一图像中存在的、需要进行手势识别的手部的检测框的一个轨迹标识。若第一图像中存在多个手部,则可以分别针对每个手部或者其中指定的手部执行本实施例的流程,此时,该步骤306中的目标轨迹标识即为需要进行手势识别的每个手部或者其中指定的手部的检测框的轨迹标识。其中,所述指定的手部可以根据具体应用场景的需求确定,例如,在自动驾驶场景,可以确定以驾驶员的手部为所述指定的手部,执行本实施例的流程进行手势识别;再如,在机器人、儿童玩具、终端设备、播放器等设备控制场景,可以确定以图像中最大的手部或者指定位置(例如,在图像中的居中位置)的手部执行本实施例的流程进行手势识别,等等,本公开实施例对需要进行手势识别的手部的数量以及确定方式不做限制。
步骤305,基于第一特征预测手部关键点,得到第一关键点预测结果。
其中,该第一关键点预测结果包括各关键点的关键点标识(ID)和位置坐标,其中的关键点ID用于唯一标识一个手部关键点,可以是该关键点在手部关键点中的序号等,本公开实施例对此不做限制。
例如,在一种具体实现中,以用于定位手部的21个主要骨节点作为手部关键点,分别位于指尖、各节指骨连接处、手腕,则第一关键点预测结果可以包括每个手部关键点的序号和位置坐标信息,例如可以表示为:1:(x1,y1);i:(xi,yi);…;21:(x21,y21),其中,i=1,…,20。本公开实施例对第一关键点预测结果的具体表示形式不做限制。
步骤306,针对第一图像中手部的检测框的目标轨迹标识,分别获取所述至少一个第二图像中目标轨迹标识的检测框的特征作为至少一个第二特征。
可选地,在其中一些实施方式中,可以预先提取所述至少一个第二图像中目标轨迹标识的检测框的特征并存储,则该步骤306中,可以获取预先存储的所述至少一个第二图像中目标轨迹标识的检测框的特征。
或者,在另一些实施方式中,也可以即时提取所述至少一个第二图像中目标轨迹标识的检测框的特征。
或者,在又一些实施方式中,也可以针对所述至少一个第二图像中位于第一图像之前的各帧图像(简称之前图像),在以该之前图像作为第一图像进行手势识别的过程中,存储对该之前图像中手部的检测框进行特征提取得到的特征(简称之前图像特征),则该步骤306中,可以获取预先存储的各之前图像的之前图像特征;针对所述至少一个第二图像中位于第一图像之后的帧图像(简称之后图像),即时提取对该之后图像中手部的检测框进行特征提取得到的特征(简称之后图像特征)。
步骤307,分别获取所述至少一个第二特征对应的关键点预测结果作为至少一个第二关键点预测结果。
与步骤306中一些实施方式相应地,可以存储基于所述至少一个第二特征预测手部关键点对应得到的关键点预测结果,则该步骤307中,可以获取预先存储的所述至少一个第二特征对应的关键点预测结果。
或者,与步骤306中另一些实施方式相应地,也可以即时基于所述至少一个第二特征预测手部关键点,得到对应的关键点预测结果。
或者,与步骤306中又一些实施方式相应地,也可以针对之前图像,存储基于之前图像特征预测手部关键点对应得到的关键点预测结果,则该步骤307中,可以获取之前图像对应的关键点预测结果;针对之后图像,即时基于之后图像特征预测手部关键点得到对应的关键点预测结果。
步骤308,基于所述第一特征和至少一个第二特征、以及所述第一关键点预测结果和至少一个第二关键点预测结果进行手势识别,得到手势识别结果。
本实施例中,基于目标轨迹标识确定需要进行手势识别的手部的检测框,对第一图像及邻近的至少一个第二图像中该手部的检测框进行特征提取和关键点预测,基于得到的第一特征和至少一个第二特征、以及第一关键点预测结果和至少一个第二关键点预测结果进行手势识别,得到该手部的手势识别结果,可以快速、准确定位图像序列中需要进行手势识别的手部进行手势识别,提高了手势识别结果的准确性和效率。
可选地,在其中一些实施方式中,本公开实施例可用于对一个图像中的多个手部进行手势识别,此时,第一图像中包括多个目标轨迹标识的检测框,可以分别针对第一图像中的各目标轨迹标识,执行上述步骤304~308的操作,得到各目标轨迹标识对应的手势识别结果。
基于本实施例,可以基于不同目标轨迹标识确定不同手部的检测框,从而实现对一个图像中多只人手的手势识别。识别出一个图像中多只人手的手势后,可以根据具体应用场景的需求,基于图像中多只人手的手势进行后续应用,例如,可以确定一个图像中所有的手势是否相同,可以基于一个图像中多数相同的手势控制设备运行,等等。
图7是本公开手势识别方法一应用实施例的流程示意图。本实施例以对图像序列中的每帧图像进行手势识别为例,对本公开实施例的手势识别方法进行说明。如图7所示,该应用实施例包括如下步骤:
步骤401,依次接收一个顺序的图像序列中的每帧图像(Ii)。
本应用实施例分别针对每帧图像(Ii)进行,其中,i=1,2,…n,n为大于1的整数。
步骤402,例如通过一个预先训练好的手部检测模型,检测图像(Ii)中的手部,得到手部的检测框(Bj)。
其中,j=1,2,…m,m为大于1的整数。
步骤403,对手部的检测框(Bj)进行跟踪,即匹配前、后帧图像中手部的检测框,得到同一手部的检测框形成的检测框轨迹,对每个手部的检测框轨迹设置一个轨迹标识Tj。
步骤404,例如通过一个卷积神经网络(CNN),分别针对每个轨迹标识Tj标识的检测框进行特征提取,得到特征(Fij)。
步骤405,基于特征(Fij)预测手部关键点,得到关键点预测结果(Kij)。
步骤406,根据轨迹标识Tj,选取图像序列中前、后帧图像中轨迹标识Tj相同的特征(Fij)和关键点预测结果(Kij),将轨迹标识Tj相同的特征(Fij)基于时序(沿着时间维度)拼接,得到拼接特征(IFij);将轨迹标识Tj相同的关键点预测结果(Kij)基于时序拼接,得到拼接关键点预测结果(KFij)。
例如,可以针对相同的轨迹标识Tj,将从每帧图像(Ii)提取得到的特征(Fij),和从其前、后各k帧图像中提取的特征拼接成一个特征序列[F(i-k),…F(i-1)j,Fij,F(i+1)j,…F(i+k)j],即拼接特征(IFij),其中2k+1为特征序列的长度,k为大于1的整数;将每帧图像(Ii)得到的关键点预测结果(Kij)和基于前、后各k帧图像得到的关键点预测结果拼接得到一个关键点预测结果序列[K(i-k)j,…K(i-1)j,Kij,K(i+1)j,…K(i+k)j],即拼接关键点预测结果(KFij),其中2k+1为关键点预测结果序列的长度。
本实施例中,引入特征序列[F(i-k),…F(i-1)j,Fij,F(i+1)j,…F(i+k)j]和关键点预测结果序列[K(i-k)j,…K(i-1)j,Kij,K(i+1)j,…K(i+k)j]作为双输入流用于手势识别,可以在不引入大量计算量的前提下同时利用两种维度的信息预测手势,提升手势预测结果的准确率。
步骤407,将拼接特征(IFij)和拼接关键点预测结果(KFij)进行特征融合,得到融合特征。
步骤408,基于融合特征进行手势识别,得到每帧图像(Ii)中轨迹标识Tj标识的检测框中手部的手势识别结果(HGij)。
可选地,在其中一些实施方式中,步骤407~408可以通过一个神经网络(ActionHead)实现。
图8是本公开一示例性实施例提供的手势识别网络的训练方法的流程示意图。其中的手势识别网络可用于实现本公开上述任一实施例所述手势识别方法,所述手势识别网络包括:用于进行特征提取的第一神经网络、用于预测手部关键点的第二神经网络、和用于进行手势识别的第三神经网络。如图8所示,该实施例手势识别网络的训练方法包括以下步骤:
步骤501,将样本图像序列输入手势识别网络。
步骤502,获取第二神经网络输出的、样本图像序列中第一样本图像对应的第一关键点预测信息,以及第三神经网络输出的、第一样本图像对应的第一手势识别信息。
其中,第一样本图像标注有关键点标注信息和手势类别信息。
步骤503,获取第一关键点预测信息与第一样本图像标注的关键点标注信息之间的第一差异,以及第一手势识别信息与第一样本图像标注的手势类别信息之间的第二差异。
步骤504,基于第一差异和第二差异,对手势识别网络进行训练。
上述图8所示实施例可以为一个迭代执行的过程。在其中一些实施方式中,可以根据至少一个样本图像序列中样本图像标注的关键点标注信息和手势类别信息,基于对应样本图像的第一关键点预测信息与关键点标注信息之间的第一差异、以及第一手势识别信息与手势类别信息之间的第二差异,对手势识别网络进行训练,即手势识别网络的网络参数进行调整,直到满足训练完成条件,例如,第一差异和第二差异之和小于预设阈值,或者对手势识别网络的训练次数(即迭代执行步骤501~504的次数)达到预设次数。
本实施例中,同时以样本图像标注的关键点标注信息和手势类别信息作为监督信息,同时基于样本图像的关键点预测信息与关键点标注信息之间的第一差异、以及第一手势识别信息与手势类别信息之间的第二差异对手势识别网络进行训练,可以实现对手势识别网络的多信息监督和训练,提高手势识别网络的训练效率和性能,从而使得利用训练得到的手势识别网络进行手势识别时,可以提高手势识别结果的准确性。
可选地,在其中一些实施方式中,在上述步骤501之后,还可以利用第一神经网络,对第一样本图像中手部的图像进行特征提取,得到第一样本特征;然后,利用第二神经网络,基于第一样本特征预测手部关键点,得到第一关键点预测信息;进而,利用第三神经网络,基于第一样本特征和至少一个第二样本特征、以及第一关键点预测信息和至少一个第二关键点预测信息进行手势识别,得到第一手势识别信息。其中,所述至少一个第二样本特征为对样本图像序列中第一样本图像邻近的至少一个第二样本图像中所述手部的图像进行特征提取对应得到的特征,所述至少一个第二关键点预测信息为基于所述至少一个第二样本特征预测手部关键点得到的关键点预测信息。
本实施例中,手势识别网络综合利用邻近的多帧样本图像中手部特征的时序变化信息和手部关键点的时序变化信息进行手势识别,得到手势识别信息,同时以样本图像标注的关键点标注信息和手势类别信息作为监督信息对手势识别网络进行训练,使得训练手势识别网络训练完成后,可以综合利用邻近的多帧图像中手部特征的时序变化信息和手部关键点的时序变化信息进行手势识别,从而能够得到准确、稳定的手势识别结果,有效提高手势识别结果的准确性和稳定性,从而提高手势识别效果。
可选地,在其中一些实施方式中,在上述步骤504中,可以基于第一差异,对第一神经网络和第二神经网络的网络参数进行调整,和/或,基于第一差异和第二差异,对第一神经网络、第二神经网络和第三神经网络的网络参数进行调整。
例如,假设第一差异表示为Lhg,第二差异表示为Lkps,则可以基于Loss=Lhg+Lkps,计算总损失函数Loss,基于该总损失函数Loss对第一神经网络、第二神经网络和第三神经网络的网络参数进行调整,以使总损失函数Loss小于预设阈值。
本实施例中,可以基于样本图像的关键点预测信息与关键点标注信息之间的第一差异对用于进行特征提取的第一神经网络和用于预测手部关键点的第二神经网络的网络参数进行调整,从而优化第一神经网络和第二神经网络的网络参数,提高特征提取和关键点预测性能;同时基于样本图像的关键点预测信息与关键点标注信息之间的第一差异、以及第一手势识别信息与手势类别信息之间的第二差异,对第一神经网络、第二神经网络和第三神经网络的网络参数进行调整,从而实现对整个手势识别网络的网络参数优化,提高手势识别网络的整体性能,由此实现对手势识别网络的多角度、多方式综合优化,提高了手势识别网络的训练效率和效果,以及提高了训练得到的手势识别网络的性能。
本公开实施例提供的任一种手势识别方法、手势识别网络的训练方法可以由任意适当的具有数据处理能力的设备执行,包括但不限于:终端设备和服务器等。或者,本公开实施例提供的任一种手势识别方法、手势识别网络的训练方法可以由处理器执行,如处理器通过调用存储器存储的相应指令来执行本公开实施例提及的任一种手势识别方法、手势识别网络的训练方法。下文不再赘述。
示例性装置
图9是本公开一示例性实施例提供的手势识别装置的结构示意图。该手势识别装置可以设置于终端设备、服务器等电子设备中,执行本公开上述任一实施例的手势识别方法。如图9所示,该手势识别装置包括:特征提取模块601、关键点预测模块602和手势识别模块603。其中:
特征提取模块601,用于对图像序列中第一图像中手部的图像进行特征提取,得到第一特征。
关键点预测模块602,用于基于特征提取模块601得到的第一特征预测手部关键点,得到第一关键点预测结果。
手势识别模块603,用于基于特征提取模块601得到的第一特征和至少一个第二特征、以及关键点预测模块602得到的第一关键点预测结果和至少一个第二关键点预测结果,进行手势识别,得到手势识别结果。
其中,所述至少一个第二特征为对图像序列中第一图像邻近的至少一个第二图像中所述手部的图像进行特征提取对应得到的特征,所述至少一个第二关键点预测结果为基于所述至少一个第二特征预测手部关键点对应得到的关键点预测结果。
基于本公开上述实施例提供的手势识别装置,同时结合第一图像及邻近的至少一个第二图像的特征以及关键点预测结果进行手势识别,综合利用邻近的多帧图像中手部特征的时序变化信息和手部关键点的时序变化信息,不止考虑了某一时刻的手部姿态(即手势),还考虑了手部姿态的时序变化情况,能够得到准确、稳定的手势识别结果,能够有效提高手势识别结果的准确性和稳定性,从而提高了手势识别效果。
图10是本公开另一示例性实施例提供的手势识别装置的结构示意图。如图10所示,在本公开上述图9所示实施例的基础上,该实施例的手势识别装置还包括:第一拼接模块604和第二拼接模块605。其中:
第一拼接模块604,用于将特征提取模块601得到的第一特征和至少一个第二特征基于时序拼接,得到拼接特征。
第二拼接模块605,用于将关键点预测模块602得到的第一关键点预测结果和至少一个第二关键点预测结果基于时序拼接,得到拼接关键点预测结果。
相应地,手势识别模块603,具体用于基于拼接特征和拼接关键点预测结果进行手势识别,得到手势识别结果。
可选地,在其中一些实施方式中,所述至少一个第二图像可以包括:位于第一图像之前且与第一图像邻近的至少一个图像、和位于第一图像之后且与第一图像邻近的至少一个图像。
可选地,在其中一些实施方式中,手势识别模块603,具体用于将拼接特征和拼接关键点预测结果进行特征融合,得到融合特征,并基于该融合特征进行手势识别,得到手势识别结果。
可选地,再参见图10,在上述实施例的手势识别装置中,还可以包括:检测模块606、跟踪模块607和设置模块608。其中:
检测模块606,用于依次检测第一图像和至少一个第二图像中的手部。
跟踪模块607,用于对检测模块606检测到的手部的检测框进行跟踪,得到同一手部的检测框形成的检测框轨迹。
设置模块608,用于对跟踪模块607形成的检测框轨迹设置用于标识该检测框轨迹的轨迹标识。
可选地,在其中一些实施方式中,特征提取模块601,具体用于对第一图像中所述手部的检测框进行特征提取,得到第一特征,另外,还用于针对第一图像中所述手部的检测框的目标轨迹标识,分别获取至少一个第二图像中目标轨迹标识的检测框的特征作为至少一个第二特征。关键点预测模块602,还用于分别获取至少一个第二特征对应的关键点预测结果作为所述至少一个第二关键点预测结果。
可选地,在其中一些实施方式中,第一图像中包括多个目标轨迹标识的检测框。相应地,特征提取模块601、关键点预测模块602、手势识别模块603、第一拼接模块604和第二拼接模块605,分别针对第一图像中的各目标轨迹标识,执行相应的操作,得到各目标轨迹标识对应的手势识别结果。
图11是本公开一示例性实施例提供的手势识别网络的训练装置的结构示意图。该手势识别网络的训练装置可以设置于终端设备、服务器等电子设备中,执行本公开上述任一实施例的手势识别网络的训练方法。所述手势识别网络包括:用于进行特征提取的第一神经网络、用于预测手部关键点的第二神经网络、和用于进行手势识别的第三神经网络。如图11所示,该手势识别网络的训练装置包括:第一获取模块701、第二获取模块702和训练模块703。其中:
第一获取模块701,用于在将样本图像序列输入所述手势识别网络后,获取第二神经网络输出的、样本图像序列中第一样本图像对应的第一关键点预测信息,以及第三神经网络输出的、第一样本图像对应的第一手势识别信息。
第二获取模块702,用于获取第二神经网络输出的第一关键点预测信息与第一样本图像标注的关键点标注信息之间的第一差异,以及第三神经网络输出的所述第一手势识别信息与第一样本图像标注的手势类别信息之间的第二差异。
训练模块703,用于基于第二获取模块702获取到的第一差异和所述第二差异,对手势识别网络进行训练。
本实施例中,同时以样本图像标注的关键点标注信息和手势类别信息作为监督信息,同时基于样本图像的关键点预测信息与关键点标注信息之间的第一差异、以及第一手势识别信息与手势类别信息之间的第二差异对手势识别网络进行训练,可以实现对手势识别网络的多信息监督和训练,提高手势识别网络的训练效率和性能,从而使得利用训练得到的手势识别网络进行手势识别时,可以提高手势识别结果的准确性。
可选地,在其中一些实施方式中,第一神经网络,具体用于对第一样本图像中手部的图像进行特征提取,得到第一样本特征。第二神经网络,具体用于基于第一神经网络得到的第一样本特征预测手部关键点,得到所述第一关键点预测信息。第三神经网络,具体用于基于第一样本特征和至少一个第二样本特征、以及第一关键点预测信息和至少一个第二关键点预测信息进行手势识别,得到所述第一手势识别信息。
其中,所述至少一个第二样本特征为对样本图像序列中第一样本图像邻近的至少一个第二样本图像中所述手部的图像进行特征提取对应得到的特征,所述至少一个第二关键点预测信息为基于所述至少一个第二样本特征预测手部关键点得到的关键点预测信息。
可选地,在其中一些实施方式中,所述基于所述第一差异和所述第二差异,对所述手势识别网络进行训练,包括:
基于所述第一差异对所述第一神经网络和所述第二神经网络的网络参数进行调整,和/或,基于所述第一差异和所述第二差异对所述第一神经网络、所述第二神经网络和所述第三神经网络的网络参数进行调整。
示例性电子设备
下面,参考图12来描述根据本公开实施例的电子设备。该电子设备可以是第一设备100和第二设备200中的任一个或两者、或与它们独立的单机设备,该单机设备可以与第一设备和第二设备进行通信,以从它们接收所采集到的输入信号。
图12图示了根据本公开实施例的电子设备的框图。
如图12所示,电子设备10包括一个或多个处理器11和存储器12。
处理器11可以是中央处理单元(CPU)或者具有数据处理能力和/或指令执行能力的其他形式的处理单元,并且可以控制电子设备10中的其他组件以执行期望的功能。
存储器12可以包括一个或多个计算机程序产品,所述计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。所述易失性存储器例如可以包括随机存取存储器(RAM)和/或高速缓冲存储器(cache)等。所述非易失性存储器例如可以包括只读存储器(ROM)、硬盘、闪存等。在所述计算机可读存储介质上可以存储一个或多个计算机程序指令,处理器11可以运行所述程序指令,以实现上文所述的本公开的各个实施例的手势识别方法或者手势识别网络的训练方法以及/或者其他期望的功能。在所述计算机可读存储介质中还可以存储诸如输入信号、信号分量、噪声分量等各种内容。
在一个示例中,电子设备10还可以包括:输入装置13和输出装置14,这些组件通过总线系统和/或其他形式的连接机构(未示出)互连。
例如,在该电子设备是第一设备100或第二设备200时,该输入装置13可以是上述的麦克风或麦克风阵列,用于捕捉声源的输入信号。在该电子设备是单机设备时,该输入装置13可以是通信网络连接器,用于从第一设备100和第二设备200接收所采集的输入信号。
此外,该输入设备13还可以包括例如键盘、鼠标等等。
该输出装置14可以向外部输出各种信息,包括确定出的距离信息、方向信息等。该输出设备14可以包括例如显示器、扬声器、打印机、以及通信网络及其所连接的远程输出设备等等。
当然,为了简化,图12中仅示出了该电子设备10中与本公开有关的组件中的一些,省略了诸如总线、输入/输出接口等等的组件。除此之外,根据具体应用情况,电子设备10还可以包括任何其他适当的组件。
示例性计算机程序产品和计算机可读存储介质
除了上述方法和设备以外,本公开的实施例还可以是计算机程序产品,其包括计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书上述“示例性方法”部分中描述的根据本公开各种实施例的手势识别方法或者手势识别网络的训练方法中的步骤。
所述计算机程序产品可以以一种或多种程序设计语言的任意组合来编写用于执行本公开实施例操作的程序代码,所述程序设计语言包括面向对象的程序设计语言,诸如Java、C++等,还包括常规的过程式程序设计语言,诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。
此外,本公开的实施例还可以是计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书上述“示例性方法”部分中描述的根据本公开各种实施例的手势识别方法或者手势识别网络的训练方法中的步骤。
所述计算机可读存储介质可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以包括但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
以上结合具体实施例描述了本公开的基本原理,但是,需要指出的是,在本公开中提及的优点、优势、效果等仅是示例而非限制,不能认为这些优点、优势、效果等是本公开的各个实施例必须具备的。另外,上述公开的具体细节仅是为了示例的作用和便于理解的作用,而非限制,上述细节并不限制本公开为必须采用上述具体的细节来实现。
本说明书中各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似的部分相互参见即可。对于系统实施例而言,由于其与方法实施例基本对应,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本公开中涉及的器件、装置、设备、系统的方框图仅作为例示性的例子并且不意图要求或暗示必须按照方框图示出的方式进行连接、布置、配置。如本领域技术人员将认识到的,可以按任意方式连接、布置、配置这些器件、装置、设备、系统。诸如“包括”、“包含”、“具有”等等的词语是开放性词汇,指“包括但不限于”,且可与其互换使用。这里所使用的词汇“或”和“和”指词汇“和/或”,且可与其互换使用,除非上下文明确指示不是如此。这里所使用的词汇“诸如”指词组“诸如但不限于”,且可与其互换使用。
可能以许多方式来实现本公开的方法和装置。例如,可通过软件、硬件、固件或者软件、硬件、固件的任何组合来实现本公开的方法和装置。用于所述方法的步骤的上述顺序仅是为了进行说明,本公开的方法的步骤不限于以上具体描述的顺序,除非以其它方式特别说明。此外,在一些实施例中,还可将本公开实施为记录在记录介质中的程序,这些程序包括用于实现根据本公开的方法的机器可读指令。因而,本公开还覆盖存储用于执行根据本公开的方法的程序的记录介质。
还需要指出的是,在本公开的装置、设备和方法中,各部件或各步骤是可以分解和/或重新组合的。这些分解和/或重新组合应视为本公开的等效方案。
提供所公开的方面的以上描述以使本领域的任何技术人员能够做出或者使用本公开。对这些方面的各种修改对于本领域技术人员而言是非常显而易见的,并且在此定义的一般原理可以应用于其他方面而不脱离本公开的范围。因此,本公开不意图被限制到在此示出的方面,而是按照与在此公开的原理和新颖的特征一致的最宽范围。
为了例示和描述的目的已经给出了以上描述。此外,此描述不意图将本公开的实施例限制到在此公开的形式。尽管以上已经讨论了多个示例方面和实施例,但是本领域技术人员将认识到其某些变型、修改、改变、添加和子组合。
Claims (9)
1.一种手势识别方法,包括:
对图像序列中第一图像中手部的图像进行特征提取,得到第一特征;
基于所述第一特征预测手部关键点,得到第一关键点预测结果;
基于所述第一特征和至少一个第二特征、以及所述第一关键点预测结果和至少一个第二关键点预测结果进行手势识别,得到手势识别结果,所述手势识别结果包括手势类别的手势类别ID;
其中,所述基于所述第一特征和至少一个第二特征、以及所述第一关键点预测结果和至少一个第二关键点预测结果进行手势识别,得到手势识别结果,包括:将所述第一特征和至少一个第二特征基于时序拼接,得到拼接特征;将所述第一关键点预测结果和至少一个第二关键点预测结果基于时序拼接,得到拼接关键点预测结果;基于所述拼接特征和所述拼接关键点预测结果进行手势识别,得到所述手势识别结果;
所述至少一个第二特征为对所述图像序列中所述第一图像邻近的至少一个第二图像中所述手部的图像进行特征提取对应得到的特征,所述至少一个第二关键点预测结果为基于所述至少一个第二特征预测手部关键点对应得到的关键点预测结果。
2.根据权利要求1所述的方法,其中,所述基于所述拼接特征和所述拼接关键点预测结果进行手势识别,包括:
将所述拼接特征和所述拼接关键点预测结果进行特征融合,得到融合特征;
基于所述融合特征进行手势识别,得到所述手势识别结果。
3.根据权利要求2所述的方法,还包括:
依次检测所述第一图像和所述至少一个第二图像中的手部;
对检测到的手部的检测框进行跟踪,得到同一手部的检测框形成的检测框轨迹;
对所述检测框轨迹设置用于标识所述检测框轨迹的轨迹标识。
4.根据权利要求3所述的方法,其中,所述对图像序列中第一图像中手部的图像进行特征提取,得到第一特征,包括:
对所述第一图像中所述手部的检测框进行特征提取,得到第一特征;
所述方法还包括:
针对所述第一图像中所述手部的检测框的目标轨迹标识,分别获取所述至少一个第二图像中所述目标轨迹标识的检测框的特征作为所述至少一个第二特征,以及分别获取所述至少一个第二特征对应的关键点预测结果作为所述至少一个第二关键点预测结果。
5.一种手势识别网络的训练方法,所述手势识别网络用于实现权利要求1-4任一所述手势识别方法,所述手势识别网络包括:用于进行特征提取的第一神经网络、用于预测手部关键点的第二神经网络、和用于进行手势识别的第三神经网络;所述方法包括:
将样本图像序列输入所述手势识别网络;
通过所述第一神经网络对第一样本图像中手部的图像进行特征提取,得到第一样本特征;通过所述第二神经网络,基于所述第一样本特征预测手部关键点,得到第一关键点预测信息;通过所述第三神经网络,基于所述第一样本特征和至少一个第二样本特征,以及所述第一关键点预测信息和至少一个第二关键点预测信息进行手势识别,得到第一手势识别信息;其中,所述至少一个第二样本特征为对样本图像序列中第一样本图像邻近的至少一个第二样本图像中所述手部的图像进行特征提取得到的特征,所述至少一个第二关键点预测信息为基于所述至少一个第二样本特征预测手部关键点得到的关键点预测信息;
获取所述第二神经网络输出的、所述样本图像序列中第一样本图像对应的第一关键点预测信息,以及所述第三神经网络输出的、所述第一样本图像对应的第一手势识别信息;
获取所述第一关键点预测信息与第一样本图像标注的关键点标注信息之间的第一差异,以及所述第一手势识别信息与所述第一样本图像标注的手势类别信息之间的第二差异;
基于所述第一差异和所述第二差异,对所述手势识别网络进行训练。
6.一种手势识别装置,包括:
特征提取模块,用于对图像序列中第一图像中手部的图像进行特征提取,得到第一特征;
关键点预测模块,用于基于所述特征提取模块得到的所述第一特征预测手部关键点,得到第一关键点预测结果;
手势识别模块,用于基于所述特征提取模块得到的第一特征和至少一个第二特征、以及所述关键点预测模块得到的所述第一关键点预测结果和至少一个第二关键点预测结果,进行手势识别,得到手势识别结果,所述手势识别结果包括手势类别的手势类别ID;
其中,所述基于所述第一特征和至少一个第二特征、以及所述第一关键点预测结果和至少一个第二关键点预测结果进行手势识别,得到手势识别结果,包括:将所述第一特征和至少一个第二特征基于时序拼接,得到拼接特征;将所述第一关键点预测结果和至少一个第二关键点预测结果基于时序拼接,得到拼接关键点预测结果;基于所述拼接特征和所述拼接关键点预测结果进行手势识别,得到所述手势识别结果;
所述至少一个第二特征为对所述图像序列中所述第一图像邻近的至少一个第二图像中所述手部的图像进行特征提取对应得到的特征,所述至少一个第二关键点预测结果为基于所述至少一个第二特征预测手部关键点对应得到的关键点预测结果。
7.一种手势识别网络的训练装置,所述手势识别网络用于实现权利要求1-4任一所述手势识别方法,所述手势识别网络包括:用于进行特征提取的第一神经网络、用于预测手部关键点的第二神经网络、和用于进行手势识别的第三神经网络;所述装置包括:
用于通过所述第一神经网络对第一样本图像中手部的图像进行特征提取,得到第一样本特征的功能模块;
用于通过所述第二神经网络,基于所述第一样本特征预测手部关键点,得到第一关键点预测信息的功能模块;
用于通过所述第三神经网络,基于所述第一样本特征和至少一个第二样本特征,以及所述第一关键点预测信息和至少一个第二关键点预测信息进行手势识别,得到第一手势识别信息的功能模块;其中,所述至少一个第二样本特征为对样本图像序列中第一样本图像邻近的至少一个第二样本图像中所述手部的图像进行特征提取得到的特征,所述至少一个第二关键点预测信息为基于所述至少一个第二样本特征预测手部关键点得到的关键点预测信息;
第一获取模块,用于在将样本图像序列输入所述手势识别网络后,获取所述第二神经网络输出的、所述样本图像序列中第一样本图像对应的第一关键点预测信息,以及所述第三神经网络输出的、所述第一样本图像对应的第一手势识别信息;
第二获取模块,用于获取所述第二神经网络输出的所述第一关键点预测信息与第一样本图像标注的关键点标注信息之间的第一差异,以及所述第三神经网络输出的所述第一手势识别信息与所述第一样本图像标注的手势类别信息之间的第二差异;
训练模块,用于基于所述第一差异和所述第二差异,对所述手势识别网络进行训练。
8.一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序用于执行上述权利要求1-4任一所述的手势识别方法或者权利要求5所述的手势识别网络的训练方法。
9.一种电子设备,所述电子设备包括:
处理器;
用于存储所述处理器可执行指令的存储器;
所述处理器,用于从所述存储器中读取所述可执行指令,并执行所述指令以实现上述权利要求1-4任一所述的手势识别方法或者权利要求5所述的手势识别网络的训练方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011426908.0A CN112527113B (zh) | 2020-12-09 | 2020-12-09 | 手势识别及手势识别网络的训练方法和装置、介质和设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011426908.0A CN112527113B (zh) | 2020-12-09 | 2020-12-09 | 手势识别及手势识别网络的训练方法和装置、介质和设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112527113A CN112527113A (zh) | 2021-03-19 |
CN112527113B true CN112527113B (zh) | 2024-08-23 |
Family
ID=74996829
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011426908.0A Active CN112527113B (zh) | 2020-12-09 | 2020-12-09 | 手势识别及手势识别网络的训练方法和装置、介质和设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112527113B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112987933A (zh) * | 2021-03-25 | 2021-06-18 | 北京市商汤科技开发有限公司 | 设备控制方法、装置、电子设备及存储介质 |
CN113238650B (zh) | 2021-04-15 | 2023-04-07 | 青岛小鸟看看科技有限公司 | 手势识别和控制的方法、装置及虚拟现实设备 |
CN113139480B (zh) * | 2021-04-28 | 2022-03-15 | 艾拉物联网络(深圳)有限公司 | 一种基于改进vibe的手势检测方法 |
CN113378770B (zh) * | 2021-06-28 | 2023-06-27 | 北京百度网讯科技有限公司 | 手势识别方法、装置、设备、存储介质 |
CN113378773B (zh) * | 2021-06-29 | 2023-08-08 | 北京百度网讯科技有限公司 | 手势识别方法、装置、设备、存储介质以及程序产品 |
CN113642413A (zh) * | 2021-07-16 | 2021-11-12 | 新线科技有限公司 | 控制方法、装置、设备及介质 |
CN116152919A (zh) * | 2022-12-27 | 2023-05-23 | 北京凌宇智控科技有限公司 | 手部姿态跟踪方法、装置、存储介质及设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108229318A (zh) * | 2017-11-28 | 2018-06-29 | 北京市商汤科技开发有限公司 | 手势识别和手势识别网络的训练方法及装置、设备、介质 |
CN108986801A (zh) * | 2017-06-02 | 2018-12-11 | 腾讯科技(深圳)有限公司 | 一种人机交互方法、装置及人机交互终端 |
CN111860082A (zh) * | 2019-04-30 | 2020-10-30 | 阿里巴巴集团控股有限公司 | 信息处理方法、装置以及系统 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106228121B (zh) * | 2016-07-15 | 2019-12-06 | 华中科技大学 | 手势特征识别方法和装置 |
CN110837766B (zh) * | 2018-08-17 | 2023-05-05 | 北京市商汤科技开发有限公司 | 手势识别方法、手势处理方法及装置 |
CN111382624B (zh) * | 2018-12-28 | 2023-08-11 | 杭州海康威视数字技术股份有限公司 | 动作识别方法、装置、设备及可读存储介质 |
CN111079570B (zh) * | 2019-11-29 | 2024-01-26 | 北京奇艺世纪科技有限公司 | 一种人体关键点识别方法、装置及电子设备 |
CN110991319B (zh) * | 2019-11-29 | 2021-10-19 | 广州市百果园信息技术有限公司 | 手部关键点检测方法、手势识别方法及相关装置 |
CN111062312B (zh) * | 2019-12-13 | 2023-10-27 | RealMe重庆移动通信有限公司 | 手势识别方法、手势控制方法、装置、介质与终端设备 |
CN111126339A (zh) * | 2019-12-31 | 2020-05-08 | 北京奇艺世纪科技有限公司 | 手势识别方法、装置、计算机设备和存储介质 |
CN111160375B (zh) * | 2019-12-31 | 2024-01-23 | 北京奇艺世纪科技有限公司 | 三维关键点预测及深度学习模型训练方法、装置及设备 |
CN111857356B (zh) * | 2020-09-24 | 2021-01-22 | 深圳佑驾创新科技有限公司 | 识别交互手势的方法、装置、设备和存储介质 |
-
2020
- 2020-12-09 CN CN202011426908.0A patent/CN112527113B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108986801A (zh) * | 2017-06-02 | 2018-12-11 | 腾讯科技(深圳)有限公司 | 一种人机交互方法、装置及人机交互终端 |
CN108229318A (zh) * | 2017-11-28 | 2018-06-29 | 北京市商汤科技开发有限公司 | 手势识别和手势识别网络的训练方法及装置、设备、介质 |
CN111860082A (zh) * | 2019-04-30 | 2020-10-30 | 阿里巴巴集团控股有限公司 | 信息处理方法、装置以及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN112527113A (zh) | 2021-03-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112527113B (zh) | 手势识别及手势识别网络的训练方法和装置、介质和设备 | |
Molchanov et al. | Online detection and classification of dynamic hand gestures with recurrent 3d convolutional neural network | |
CN111488773B (zh) | 一种动作识别方法、装置、设备及存储介质 | |
Han et al. | Enhanced computer vision with microsoft kinect sensor: A review | |
CN106648078B (zh) | 应用于智能机器人的多模态交互方法及系统 | |
CN104616028B (zh) | 基于空间分割学习的人体肢体姿势动作识别方法 | |
CN116171473A (zh) | 用于视听事件定位的双模态关系网络 | |
Masood et al. | Measuring and reducing observational latency when recognizing actions | |
US10990170B2 (en) | Eye tracking method, electronic device, and non-transitory computer readable storage medium | |
CN113822254B (zh) | 一种模型训练方法及相关装置 | |
Wan et al. | ChaLearn looking at people: IsoGD and ConGD large-scale RGB-D gesture recognition | |
US20240037187A1 (en) | Video domain adaptation via contrastive learning | |
Bhiri et al. | Hand gesture recognition with focus on leap motion: An overview, real world challenges and future directions | |
CN110349212A (zh) | 即时定位与地图构建的优化方法及装置、介质和电子设备 | |
CN113378770A (zh) | 手势识别方法、装置、设备、存储介质以及程序产品 | |
CN112308006A (zh) | 视线区域预测模型生成方法、装置、存储介质及电子设备 | |
CN114937285B (zh) | 动态手势识别方法、装置、设备及存储介质 | |
CN114513694A (zh) | 评分确定方法、装置、电子设备和存储介质 | |
US20240160929A1 (en) | Device for training and managing a visual scene graph model and control method thereof | |
Chaudhary et al. | Controlling a swarm of unmanned aerial vehicles using full-body k-nearest neighbor based action classifier | |
Constantin et al. | Interactive multimodal robot dialog using pointing gesture recognition | |
CN111611941B (zh) | 特效处理方法及相关设备 | |
KR20200052068A (ko) | 눈 추적 방법 및 장치 | |
CN114821630A (zh) | 静态手势识别方法及其系统和电子设备 | |
CN109725722B (zh) | 有屏设备的手势控制方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |