CN111414837A - 手势识别方法、装置、计算机设备及存储介质 - Google Patents
手势识别方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN111414837A CN111414837A CN202010182641.9A CN202010182641A CN111414837A CN 111414837 A CN111414837 A CN 111414837A CN 202010182641 A CN202010182641 A CN 202010182641A CN 111414837 A CN111414837 A CN 111414837A
- Authority
- CN
- China
- Prior art keywords
- finger
- state
- determining
- palm
- 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.)
- Pending
Links
Images
Classifications
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Image Analysis (AREA)
- Human Computer Interaction (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Biology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Psychiatry (AREA)
- Social Psychology (AREA)
- General Health & Medical Sciences (AREA)
- Multimedia (AREA)
- Medical Informatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- User Interface Of Digital Computer (AREA)
- Health & Medical Sciences (AREA)
Abstract
本发明实施例公开了一种手势识别方法、装置、计算机设备及存储介质。其中,方法包括:确定手部图像中的手部关节信息,其中,手部关节信息包括与手部图像中目标手掌的各关节点的坐标;根据目标手掌的各关节点的坐标确定目标手掌中每根手指的状态,并基于每根手指的状态确定手势识别结果。本发明实施例的方案,可以识别更多的手势以及提高识别手势的准确性。
Description
技术领域
本发明实施例涉及计算机技术领域,尤其涉及一种手势识别方法、装置、计算机设备及存储介质。
背景技术
手势识别是指检测和识别人类的手势并将其转换为语义上有意义的命令的过程,由于基于视觉传感器的手势识别人机交互体验感较好,而得到了广泛的应用。
现阶段,基于视觉传感器的手势识别主要通过视觉传感器采集手部图像,进一步的对手部图像进行分割并对分割结果进行分析,从而得到手势识别结果。
现有技术的方法中,手部图像的分割效果直接影响了最终的手势识别结果;然而对于复杂背景下的手部图像,手部分割准确率较低,从而导致手势识别结果的准确率较低。
发明内容
本发明实施例提供一种手势识别方法、装置、计算机设备及存储介质,以可以识别更多的手势以及提高识别手势的准确性。
第一方面,本发明实施例提供了一种手势识别方法,该方法包括:
确定手部图像中的手部关节信息,其中,所述手部关节信息包括与所述手部图像中目标手掌的各关节点的坐标;
根据所述目标手掌的各关节点的坐标确定所述目标手掌中每根手指的状态,并基于每根所述手指的状态确定手势识别结果。
第二方面,本发明实施例还提供了一种手势识别装置,该装置包括:
手部关节信息确定模块,用于确定手部图像中的手部关节信息,其中,所述手部关节信息包括与所述手部图像中目标手掌的各关节点的坐标;
手势识别结果确定模块,用于根据所述目标手掌的各关节点的坐标确定所述目标手掌中每根手指的状态,并基于每根所述手指的状态确定手势识别结果。
第三方面,本发明实施例还提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如本发明实施例中任一实施例所述的手势识别方法。
第四方面,本发明实施例还提供了一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行如本发明实施例中任一实施例所述的手势识别方法。
本发明实施例通过确定手部图像中的手部关节信息,其中,手部关节信息包括与手部图像中目标手掌的各关节点的坐标;根据目标手掌的各关节点的坐标确定目标手掌中每根手指的状态,并基于每根手指的状态确定手势识别结果,可以识别更多的手势以及提高识别手势的准确性。
附图说明
图1是本发明实施例一中的一种手势识别方法的流程图;
图2是本发明实施例一中适用的一种手部图像示意图;
图3是本发明实施例二中的一种手势识别方法的流程图;
图4是本发明实施例三中的一种手势识别方法的流程图;
图5是本发明实施例三中的一种手势识别方法的流程图;
图6是本发明实施例四中的一种手势识别装置的结构示意图;
图7是本发明实施例五中的一种计算机设备的结构示意图。
具体实施方式
下面结合附图和实施例对本发明实施例作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明实施例,而非对本发明实施例的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明实施例相关的部分而非全部结构。
实施例一
图1是本发明实施例一中的一种手势识别方法的流程图,本实施例可适用于对手部图像中的手势进行识别,从而得到手势识别结果的情况;该方法可以由手势识别装置来执行,该装置可以通过软件和/或硬件的方式实现,并集成在计算机设备中。具体的,参考图1,该方法具体包括如下步骤:
S110、确定手部图像中的手部关节信息,其中,手部关节信息包括手部图像中目标手掌的各关节点的坐标。
具体的,本发明实施例中涉及到的手部图像为包含一只手掌的图像。需要说明的是,本发明实施例中对手部图像中包含的手掌的数量不作限定。其中,手部关节信息中包括手部图像中目标手掌的各关节点的坐标。需要说明的是,本发明实施例中涉及到的目标手掌可以为手部图像中的任意一只或多只手掌,本发明实施例中对其不作限定。
具体的,目标手掌中可以包括21个关节点。为了更好地理解本发明实施例,图2中列举了本发明实施例中适用的一张手部图像示意图;图2中使用数字0-20对手部图像中目标手掌的手部关节信息进行标注。
需要说明的是,图2中仅是为了便于理解本发明实施例,对手部图像中的各个关节点使用数字0-20进行标号,其并不是对本发明实施例的限定,本领域技术人员还可以通过其他方式对手部图像中的各个关节点进行标注。
S120、根据目标手掌的各关节点的坐标确定目标手掌中每根手指的状态,并基于每根手指的状态确定手势识别结果。
具体的,获取到目标手掌的各关节点的坐标之后,可以进一步的根据目标手掌的各关节点的坐标确定目标手掌中每根手指的状态,并根据目标手掌每根手指的状态确定目标手掌的手势识别结果。其中,目标手掌中每根手指的状态可以包括伸直状态或者弯曲状态。
可选的,在根据目标手掌的各关节点的坐标确定目标手掌中每根手指的状态之前,还可以包括:根据各关节点中的参考关节点的坐标和其他关节点中的任意一个关节点的坐标确定目标手掌的倾斜角度。
其中,参考关节点可以为为目标手掌中的任意一个关节点,例如,手掌根部关节点(图2中的0号关节点),或者中指根部关节点(图2中的9号关节点),本发明实施例中对其不加以限制。
具体的,目标手掌的倾斜角度即为参考关节点和其余各关节点中任意一个关节点的连线与竖直方向的夹角。需要说明的是,本发明实施例中目标手掌的倾斜角度可以为任意角度,例如0度、45度或者80度等,本发明实施例中对其不作限定。
优选的,根据各关节点中的参考关节点的坐标和其他关节点中任意一个关节点的坐标确定目标手掌的倾斜角度,可以包括:基于手掌根部关节点的坐标以及中指根部关节点坐标确定手掌根部关节点与中指根部关节点的连线;将连线与竖直方向的夹角作为目标手掌的倾斜角度。
具体的,本发明实施例中可以根据手掌根部关节点坐标以及中指根部关节点坐标确定手掌根部关节点与中指根部关节点的连线,并将该连线与竖直方向的夹角作为目标手掌的倾斜角度。
这样设置的好处在于,通常情况下,中指的指向与手掌的指向相同,因此将手掌根部关节点与中指根部关节点的连线,与竖直方向的夹角作为手掌的倾斜角度的精度较高。需要说明的是,本发明实施例中也可以将手掌根部关节点和其他关节点中任意一个关节点的连线,与竖直方向的夹角作为手掌的倾斜角度,本发明实施例中对其不作限定。
在本发明实施例的另一个例子中,可以根据小拇指根部关节点坐标以及中指根部关节点坐标确定小拇指根部关节点与中指根部关节点的连线,并将该连线与竖直方向的夹角作为目标手掌的倾斜角度。需要说明的是,本发明实施例中,还可以通过其他关节点的坐标确定目标手掌的倾斜角度,本发明实施例中不再对其进行赘述,其并不是对本发明实施例的限定。
在本发明实施例的一个具体例子中,若目标手掌的手掌根部关节点坐标为(1,0),中指根部关节点坐标为(0,11),则手掌根部关节点与中指根部关节点的连线方程为y=-11x+11,进一步的可以确定该连线与竖直方向的夹角为45度,即目标手掌的倾斜角度为45度。
进一步的,根据目标手掌的各关节点的坐标确定目标手掌中每根手指的状态,包括:若目标手掌的倾斜角度不等于设定阈值,则根据倾斜角度将手部图像进行旋转,以使手掌图像中的目标手掌旋转至竖直方向;基于旋转后的目标手掌中每根手指的各关节点的坐标,确定每根手指的状态,其中,每根手指的状态包括伸直状态或者弯曲状态。
需要说明的是,本发明实施例中涉及到的设定阈值可以为0度或者180度,本发明实施例中对其不作限定。可以理解的是,当目标手掌的倾斜角度不等于设定阈值,即倾斜角度不等于0度时,可以认为目标手掌的方向不是竖直方向。
在本发明实施例的一个具体例子中,若确定目标手掌的倾斜角度为45度,则将目标手掌顺时针旋转45度即可将目标手掌旋转至竖直方向;进一步的,基于旋转后的目标手掌中每根手指的各关节点的坐标,确定目标手掌的每根手指是弯曲状态还是伸直状态。
可选的,基于目标手掌中每根手指的各关节点的坐标,确定每根手指的状态,可以包括:针对旋转后的目标手掌中的每根手指,若指尖的纵坐标均大于第一关节点、第二关节点以及手指根部关节点的纵坐标则手指的状态为伸直状态;若指尖的纵坐标小于第一关节点、第二关节点或者手指根部关节点的纵坐标,则手指的状态为弯曲状态。
具体的,根据目标手掌的倾斜角度将目标手掌旋转至竖直方向之后,若中指指尖的纵坐标大于中指第一关节点、第二关节点以及中指根部关节点的纵坐标,则可以确定中指的状态为伸直状态;若中指指尖的纵坐标小于中指第一关节点、第二关节点以及中指根部关节点的纵坐标,则可以确定中指的状态为弯曲状态。需要说明的是,中指指尖可以为图2中的关节点“12”、中指第一关节点可以为图2中的关节点“11”、中指第二关节点可以为图2中的关节点“10”、中指根部关节点可以为图2中的关节点“9”。
这样设置的好处在于,将目标手掌旋转至竖直方向之后,仅根据每根手指各关节点的纵坐标的关系即可判断出每根手指的状态,降低了手指状态判断难度的同时,也可以降低计算量,减少算法执行时间。
进一步的,可以根据目标手掌每根手指的状态确定手势识别结果。示例性的,若根据上述方法,确定目标手掌的五根手指,仅有食指和中指为伸直状态,其余手指均为弯曲状态,则可以确定手势识别结果为“剪刀手”。
在本发明实施例的一个具体例子中,也可以根据目标手掌每根手指的状态和倾斜角度确定手势识别结果。示例性的,若根据上述方法,确定目标手掌的五根手指,仅有大拇指为伸直状态,其余手指均为弯曲状态,且目标手掌的倾斜角度为120度至240度中任意一个值,则可以确定手势识别结果为“点赞”。本实施例的方案,通过确定手部图像中的手部关节信息,其中,手部关节信息包括与手部图像中目标手掌的各关节点的坐标;根据各关节点中的手掌根部关节点坐标和其他关节点中任意一个关节点的坐标确定目标手掌的倾斜角度;确定目标手掌中每根手指的状态,并基于每根手指的状态和倾斜角度确定手势识别结果,可以准确的识别目标手掌的手势。
在上述技术方案的基础上,根据目标手掌的各关节点的坐标确定目标手掌中每根手指的状态,还可以包括:目标手掌的倾斜角度等于设定阈值,则基于目标手掌中每根手指的各关节点的坐标,确定每根手指的状态。
具体的,若设定阈值为0度,当目标手掌的倾斜角度等于设定阈值,即等于0度时,目标手掌的方向即为竖直方向,此时,无需对目标手掌进行旋转,直接可以根据目标手掌中每根手指的各关节点的坐标,确定每根手指的状态。
这样设置的好处在于,通过将目标手掌的倾斜角度与设定阈值进行比较,当目标手掌的倾斜角度等于设定阈值时,可以唯一地确定目标手掌的方向,无需对目标手掌进行旋转,仅根据目标手掌中每根手指的各关节点的坐标,即可确定每根手指的状态,可以减少计算量,快速地获取每根手指的状态。
相应的,基于目标手掌中每根手指的各关节点的坐标,确定每根手指的状态,还可以包括:针对目标手掌中的每根手指,若指尖的纵坐标均大于第一关节点、第二关节点以及手指根部关节点的纵坐标则手指的状态为伸直状态;若指尖的纵坐标小于第一关节点、第二关节点或者手指根部关节点的纵坐标,则手指的状态为弯曲状态。
实施例二
图3是本发明实施例二中的一种手势识别方法的流程图,本实施例在上述实施例的基础上对本发明实施例进行细化。具体的,确定手部图像中的手部关节信息,可以包括:通过普通相机获取包含手部的场景图像;通过第一机器学习算法模型从场景图像中检测手部位置,并得到手部图像;通过第二机器学习算法模型检测手部图像中的手部关节信息。具体的,参考图3,该方法具体包括如下步骤:
S310、通过普通相机获取包含手部的场景图像。
其中,普通相机可以为如手机等数码产品中集成的摄像头、彩色工业相机或者数码相机等任意一种相机,本发明实施例中对其不作限定。具体的,可以通过彩色相机获取包含手部的场景图像。其中,场景图像可以为人行走时的图像、人挥手的图像或者景区游客拍照图像等任意一种包含人的图像,本发明实施例中对其不作限定。
这样设置的好处在于,仅通过普通相机即可获取到包含手部的场景的图像,无需通过3D(3-Dimension,三维)深度相机采集手部图像,不会增加硬件开销,并且也不会影响手势识别结果的准确性。
进一步的,通过第一机器学习算法模型从场景图像中检测手部位置,并得到手部图像。其中,第一机器学习算法模型可以为SSD、RCNN、Fast-RCNN、Faster-RCNN或者Mask-RCNN等任意一种目标检测网络,本发明实施例中对其不作限定。
在本发明实施例的一个具体例子中,将通过普通相机获取的包含手部图像的场景图像,输入至Faster-RCNN目标检测网络中,Faster-RCNN目标检测网络对场景图像中的手掌进行检测,并输出手部图像。
S320、通过第二机器学习算法模型检测手部图像中的手部关节信息。
具体的,将通过第一学习算法模型检测到的手部图像输入至第二机器学习模型中,从而检测到手部图像中的手部关节信息。其中,第二机器学习模型为Mobile-Net,本发明实施例中对其输出层进行回归,从而可以得到手部图像中的手部关节信息。
需要说明的是,本发明实施例中还可以通过其他机器学习算法模型得到手部图像中的手部关节信息,本发明实施例中对其不再进行赘述。
S330、根据各关节点中的参考关节点坐标和其他关节点中任意一个关节点的坐标确定目标手掌的倾斜角度。
S340、根据目标手掌的各关节点的坐标确定目标手掌中每根手指的状态,并基于每根手指的状态确定手势识别结果。
需要说明的是,现有技术中的方法中,可以通过3D深度相机采集手部图像的深度图,进一步的根据深度图进行手部边缘提取,从而得到手势识别结果。这种方法虽然也可以得到精确的手势识别结果,但是其需要通过3D深度相机采集手部图像的深度图,导致硬件开销大量增加。本发明实施例中涉及到的方案,无需通过3D深度相机采集手部图像的深度图,通过普通相机采集包含手部的场景图像,以及通过机器学习算法模型获取到的手部关节信息,进一步的即可确定精确的手势识别结果,与现有技术的方法相比,节省了大量的硬件开销。
实施例三
图4是本发明实施例三中的一种手势识别方法的流程图,本实施例在上述实施例的基础上对本发明实施例进行细化。具体的,基于每根手指的状态确定手势识别结果,包括:根据每根手指的状态对每根手指进行编码,得到编码结果;基于编码结果以及倾斜角度确定手势识别结果。具体的,参考图4,该方法具体包括如下步骤:
S410、确定手部图像中的手部关节信息。
S420、根据各关节点中的参考关节点坐标和其他关节点中任意一个关节点的坐标确定目标手掌的倾斜角度。
S430、确定目标手掌中每根手指的状态。
S440、根据每根手指的状态对每根手指进行编码,得到编码结果。
具体的,通过上述各实施例中涉及到的方法确定目标手掌中每根手指的状态之后,可以根据每根手指的状态对每根手指进行编码,从而得到编码结果。示例性的,可以用“1”表示手指的状态为伸直状态,可以用“0”表示手指的状态为弯曲状态,进一步的可以得到整个手掌的状态编码,可以看出,如图2所示的手掌图像的手掌状态编码为“11111”,其中,手掌状态编码从左至右分别对应目标手掌的拇指、食指、中指、无名指和小指。
需要说明的是,本发明实施例中还可以通过其他方式对每根手指的状态进行编码,本发明实施例中对其不作限定。
S450、基于编码结果以及倾斜角度确定手势识别结果。
具体的,可以基于S440中确定的编码结果以及目标手掌的倾斜角度确定目标手掌的手势识别结果。
可选的,基于编码结果以及倾斜角度确定手势识别结果,可以包括:若编码结果以及倾斜角度符合目标手势的预设识别规则,则将目标手势作为手势识别结果。
具体的,若目标手掌的编码结果以及倾斜角度与目标手势的预设识别规则相匹配,则目标手势即为手势识别结果。
需要说明的是,现有技术的方法中,通常采用模板匹配或分类的算法识别手势结果,这种方法需要预先录入大量的手势样本,并进行模型训练;当扩充手势类别时,需要补录训练样本并重新训练,费时费力;其次对于非定义手势,使用分类算法往往也会给出一个分类结果,并不能识别出该手势所代表的含义,导致得出错误识别结果。
本实施例的方案,通过设定识别规则来确定手势识别结果,相对于现有技术的方法,本发明实施例的方案方便手势扩展,增加新手势时补充识别规则即可,无需进行样本扩充和重新训练。
需要说明的是,本发明实施例中的目标手势的预设识别规则可以为:One(一):手掌状态编码为“01000”,手掌倾斜角度任意角度;Two(二):手掌状态编码为“01100”,手掌倾斜角度为任意角度;Insult(侮辱):手掌状态编码为“00100”,手掌倾斜角度为任意角度;Rock(摇滚):手掌状态编码为“11001”,手掌倾斜角度为任意角度;ThumbUp(点赞):手掌状态编为“10000”,手掌倾斜角度范围为(120°,240°)、(300°,360°)或者(0°,60°),并且5号关节点位置在17号关节点上方;ThumbDown(喝倒彩):手掌状态编码为“10000”,手掌倾斜角度范围为(120°,240°)、(300°,360°)或者(0°,60°),并且5号关节点位置在17号关节点下方;Heart(双手比心):两个手掌状态编码均为“11000”,手掌倾斜角度任意,两个手掌的4,8号关节点相交,并且单个手掌的4号和8号关节点不相交。需要说明的是,本发明实施例中涉及到的具体关节点的编号与图2中的关节点编号相对应。
需要说明的是,目标手势还可以包括其他手势,本发明实施例中对其不再进行赘述,其并不是对本发明实施例的限定。
在本发明实施例的另一个具体例子中,可以将多张手部图像独立输入至机器学习算法模型中,从而得到每张手部图像中的手掌的倾斜角度和编码结果,可以实现对多手的组合手势的识别。本实施例的方案,根据每根手指的状态对每根手指进行编码,得到编码结果;基于编码结果以及倾斜角度确定手势识别结果,可以获取到整个手掌的编码结果,为快速的识别目标手掌的手势提供依据。
为了更好地理解本发明实施例,图5是本发明实施例三中适用的的一种手势识别方法的流程图,具体的参考图5,该方法具体包括如下步骤:
S510、通过普通相机采集前方场景图像。其中,前方场景图像即为包含手部图像的场景图像。
S520、通过机器学习算法模型从前方场景图像中检测手部位置。
具体的,可以通过机器学习算法模型从前方场景图像中检测到手部位置,即确定手部图像。
S530、获取手部关节信息。
具体的,将得到的手部图像输入至关节识别机器学习算法模型,从而得到手部关节信息,其中手部关节信息包括手部图像中手掌的各关节点的坐标。
S540、根据手部关节信息计算手掌的倾斜角度。
具体的,根据手部关节信息计算手掌的倾斜角度。示例性的,可以根据图2中0号和9号关节点之间连线与竖直方向的夹角最为手掌的倾斜角度。
S550、将手掌旋转至手掌方向竖直。
具体的,根据S540得到手掌的倾斜角度,对包含关节信息的手掌进行旋转至手掌方向竖直。
S560、确定每根手指的状态。
具体的,根据S550步骤得到的垂直手掌中每根手指的关节点坐标位置关系,判断每根手指是伸直状态还是弯曲状态。
S570、根据每根手指的状态对每根手指进行编码,得到编码结果。
具体的,根据每根手指伸直或弯曲的结果,对每根手指的状态进行编码,从而得到编码结果。
S580、根据编码结果以及手掌的倾斜角度,结合预设识别规则,得到手势识别结果。现有技术中,手势识别一般可分为三个基本步骤:手势分割、手势分析和手势识别。手势分割是手势识别过程中关键的一步,手势分割的效果直接影响到下一步手势分析及最终的手势识别。目前最常用的手势分割方法主要包括:基于普通单目视觉的手势分割和基于多目立体深度视觉的手势分割。基于普通单目视觉的手势分割算法主要基于人类手部颜色特征、纹理特征、轮廓形状特征及与背景相对的运动特征加以分割提取;基于多目立体视觉的手势分割,主要通过3D相机获取手部图像深度图,根据深度图得到人体部位与相机的前后关系来作分割提取;第二步手势分析对分割出来的手部进行特征提取,如手掌外形、特征点、手指弯曲程度等;最后手势识别算法对手部手势分析提取出来的特征作最后的识别,现有的识别算法则多基于模板匹配或分类算法。近年来,随着深度学习技术的飞跃进步,很多算法直接将手势分割结果作为输入,利用深度神经网络直接作分类来进行手势识别。
现有手部检测方法大多基于表观特征或运动信息,在复杂背景下对手部检测的准确性都不高,给后续手势识别带来了较大的困难;若使用3D深度相机则会带来使用场景受限及成本上升等问题。同时,现有手势分析算法得到手部信息单一,往往只有外部形状和颜色纹理信息,不利于后续手势识别;现有手势识别算法只能应对单手识别的情况,对于双手组合手势一般无能为力。现有手势识别算法多是使用模板匹配或分类的算法,这种方法需要预先大量录入样本进行模型训练,在扩充手势类别时,需要补录训练样本并重新训练,费时费力;其次对于非定义手势,使用分类算法往往也会给出一个分类结果,这时会给出错误结果。
本方案的技术方案,首先通过普通相机采集包含手部图像的前方场景图像,可以降低硬件成本;通过机器学习算法模型从前方场景图像中得到手部图像;通过机器学习算法从手部图像中得到手掌的各关节信息,并根据关节信息计算手掌的倾斜角度;接着旋转手掌,并确定每根手指的状态,根据每根手指的状态对每根手指进行编码,得到编码结果;最后根据编码结果以及手掌的倾斜角度,结合预设识别规则,得到手势识别结果,可以对前方场景图像中的手势进行准确识别可以创建多手的组合手势识别,解决了现有技术中只能对单手手势进行识别的情况,并且当增加新手势时,仅对识别规则进行补充即可,无需进行样本扩充和重新训练。
实施例四
图6是本发明实施例四中的一种手势识别装置的结构示意图,该装置可以执行本发明实施例中任意实施例中涉及到的手势识别方法,该装置可以通过软件和/或硬件的方式实现。具体的,该装置包括:手部关节信息确定模块和手势识别结果确定模块620。
其中,手部关节信息确定模块610,用于确定手部图像中的手部关节信息,其中,手部关节信息包括与手部图像中目标手掌的各关节点的坐标;
手势识别结果确定模块620,用于根据目标手掌的各关节点的坐标确定目标手掌中每根手指的状态,并基于每根手指的状态确定手势识别结果。
本实施例的方案,通过手部关节信息确定模块确定手部图像中的手部关节信息,其中,手部关节信息包括与手部图像中目标手掌的各关节点的坐标;通过手势识别结果确定模块根据目标手掌的各关节点的坐标确定目标手掌中每根手指的状态,并基于每根手指的状态确定手势识别结果,可以识别更多的手势以及提高识别手势的准确性。
可选的,本实施例中涉及到的手势识别装置还包括:倾斜角度确定模块,用于根据各关节点中的参考关节的点坐标和其他关节点中任意一个关节点的坐标确定目标手掌的倾斜角度。
可选的,手势识别结果确定模块620包括:第一手指状态确定单元,用于当目标手掌的倾斜角度不等于设定阈值时,根据倾斜角度将手部图像进行旋转,以使手掌图像中的目标手掌旋转至竖直方向;基于旋转后的目标手掌中每根手指的各关节点的坐标,确定每根手指的状态,其中,状态包括伸直状态或者弯曲状态。
可选的,手势识别结果确定模块620还包括:第二手指状态确定单元,用于当目标手掌的倾斜角度等于设定阈值时,基于目标手掌中每根手指的各关节点的坐标,确定每根手指的状态。
可选的,第一手指状态确定单元或者第二手指状态确定单元,还具体用于针对目标手掌中的每根手指或者旋转后的目标手掌中的每根手指,若指尖的纵坐标均大于第一关节点、第二关节点以及手指根部关节点的纵坐标则手指的状态为伸直状态;若指尖的纵坐标小于第一关节点、第二关节点或者手指根部关节点的纵坐标,则手指的状态为弯曲状态。
可选的,手部关节信息确定模块610,还具体用于通过普通相机获取包含手部的场景图像;通过第一机器学习算法模型从场景图像中检测手部位置,并得到手部图像;通过第二机器学习算法模型检测手部图像中的手部关节信息。
可选的,倾斜角度确定模块,还具体用于基于手掌根部关节点的坐标以及中指根部关节点坐标确定手掌根部关节点与中指根部关节点的连线;将连线与竖直方向的夹角作为目标手掌的倾斜角度。
可选的,手势识别结果确定模块620,还包括编码结果获取单元,用于根据每根手指的状态对每根手指进行编码,得到编码结果;基于编码结果以及倾斜角度确定手势识别结果。
可选的,手势识别结果确定模块620,还具体用于若编码结果以及倾斜角度符合目标手势的预设识别规则,则将目标手势作为手势识别结果。
本发明实施例所提供的手势识别装置可执行本发明任意实施例所提供的手势识别方法,具备执行方法相应的功能模块和有益效果。
实施例五
图7为本发明实施例五提供的一种计算机设备的结构示意图,如图7所示,该计算机设备包括处理器70、存储器71、输入装置72和输出装置73;计算机设备中处理器70的数量可以是一个或多个,图7中以一个处理器70为例;计算机设备中的处理器70、存储器71、输入装置72和输出装置73可以通过总线或其他方式连接,图7中以通过总线连接为例。
存储器71作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中的手势识别方法对应的程序指令/模块(例如,手势识别装置中的手部关节信息确定模块610和手势识别结果确定模块620)。处理器70通过运行存储在存储器71中的软件程序、指令以及模块,从而执行计算机设备的各种功能应用以及数据处理,即实现上述的手势识别方法。
存储器71可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储器71可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器71可进一步包括相对于处理器70远程设置的存储器,这些远程存储器可以通过网络连接至计算机设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置72可用于接收输入的数字或字符信息,以及产生与计算机设备的用户设置以及功能控制有关的键信号输入。输出装置73可包括显示屏等显示设备。
实施例六
本发明实施例六还提供一种包含计算机可执行指令的存储介质,计算机可执行指令在由计算机处理器执行时用于执行一种手势识别方法,该方法包括:
确定手部图像中的手部关节信息,其中,手部关节信息包括手部图像中目标手掌的各关节点的坐标;
根据目标手掌的各关节点的坐标确定目标手掌中每根手指的状态,并基于每根手指的状态确定手势识别结果。
当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上的方法操作,还可以执行本发明任意实施例所提供的手势识别方法中的相关操作。
通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例的方法。
值得注意的是,上述手势识别装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
Claims (12)
1.一种手势识别方法,其特征在于,包括:
确定手部图像中的手部关节信息,其中,所述手部关节信息包括所述手部图像中目标手掌的各关节点的坐标;
根据所述目标手掌的各关节点的坐标确定所述目标手掌中每根手指的状态,并基于每根所述手指的状态确定手势识别结果。
2.根据权利要求1所述的方法,其特征在于,在根据所述目标手掌的各关节点的坐标确定所述目标手掌中每根手指的状态之前,还包括:
根据所述各关节点中的参考关节点的坐标和其他关节点中的任意一个关节点的坐标确定所述目标手掌的倾斜角度。
3.根据权利要求2所述的方法,其特征在于,所述根据所述目标手掌的各关节点的坐标确定所述目标手掌中每根手指的状态,包括:
若所述目标手掌的倾斜角度不等于设定阈值,则根据所述倾斜角度将所述手部图像进行旋转,以使所述手掌图像中的目标手掌旋转至竖直方向;
基于旋转后的目标手掌中每根手指的各关节点的坐标,确定每根手指的状态,其中,所述状态包括伸直状态或者弯曲状态。
4.根据权利要求2所述的方法,其特征在于,所述根据所述目标手掌的各关节点的坐标确定所述目标手掌中每根手指的状态,还包括:
若所述目标手掌的倾斜角度等于设定阈值,则基于目标手掌中每根手指的各关节点的坐标,确定每根手指的状态。
5.根据权利要求3或4所述的方法,其特征在于,所述基于每根手指的各关节点的坐标,确定每根手指的状态,包括:
针对目标手掌中的每根手指或者旋转后的目标手掌中的每根手指,若指尖的纵坐标均大于第一关节点、第二关节点以及手指根部关节点的纵坐标则所述手指的状态为伸直状态;
若指尖的纵坐标小于第一关节点、第二关节点或者手指根部关节点的纵坐标,则所述手指的状态为弯曲状态。
6.根据权利要求1所述的方法,其特征在于,所述确定手部图像中的手部关节信息,包括:
通过普通相机获取包含手部的场景图像;
通过第一机器学习算法模型从所述场景图像中检测手部位置,并得到手部图像;
通过第二机器学习算法模型检测所述手部图像中的手部关节信息。
7.根据权利要求2所述的方法,其特征在于,所述根据所述各关节点中的参考关节点的坐标和其他关节点中的任意一个关节点的坐标确定所述目标手掌的倾斜角度,包括:
基于手掌根部关节点的坐标以及中指根部关节点坐标确定所述手掌根部关节点与中指根部关节点的连线;
将所述连线与竖直方向的夹角作为所述目标手掌的倾斜角度。
8.根据权利要求2所述的方法,其特征在于,所述基于每根所述手指的状态确定手势识别结果,包括:
根据每根手指的状态对每根手指进行编码,得到编码结果;
基于所述编码结果以及所述倾斜角度确定手势识别结果。
9.根据权利要求8所述的方法,其特征在于,基于所述编码结果以及所述倾斜角度确定手势识别结果,包括:
若所述编码结果以及所述倾斜角度符合目标手势的预设识别规则,则将所述目标手势作为手势识别结果。
10.一种手势识别装置,其特征在于,包括:
手部关节信息确定模块,用于确定手部图像中的手部关节信息,其中,所述手部关节信息包括与所述手部图像中目标手掌的各关节点的坐标;
手势识别结果确定模块,用于确定所述目标手掌中每根手指的状态,并基于每根所述手指的状态确定手势识别结果。
11.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1-9中任一所述的手势识别方法。
12.一种包含计算机可执行指令的存储介质,其特征在于,所述计算机可执行指令在由计算机处理器执行时用于执行如权利要求1-9中任一所述的手势识别方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010182641.9A CN111414837A (zh) | 2020-03-16 | 2020-03-16 | 手势识别方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010182641.9A CN111414837A (zh) | 2020-03-16 | 2020-03-16 | 手势识别方法、装置、计算机设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111414837A true CN111414837A (zh) | 2020-07-14 |
Family
ID=71491182
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010182641.9A Pending CN111414837A (zh) | 2020-03-16 | 2020-03-16 | 手势识别方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111414837A (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111880714A (zh) * | 2020-07-31 | 2020-11-03 | Oppo广东移动通信有限公司 | 页面控制方法及相关装置 |
CN112000224A (zh) * | 2020-08-24 | 2020-11-27 | 北京华捷艾米科技有限公司 | 一种手势交互方法及系统 |
CN113190109A (zh) * | 2021-03-30 | 2021-07-30 | 青岛小鸟看看科技有限公司 | 头戴式显示设备的输入控制方法、装置及头戴式显示设备 |
CN113449610A (zh) * | 2021-06-08 | 2021-09-28 | 杭州格像科技有限公司 | 一种基于知识蒸馏和注意力机制的手势识别方法和系统 |
CN113706606A (zh) * | 2021-08-12 | 2021-11-26 | 新线科技有限公司 | 确定隔空手势位置坐标的方法及装置 |
CN114063772A (zh) * | 2021-10-26 | 2022-02-18 | 深圳市鸿合创新信息技术有限责任公司 | 手势识别方法、装置、设备及介质 |
CN114663920A (zh) * | 2022-05-23 | 2022-06-24 | 云账户技术(天津)有限公司 | 手势识别的方法、装置、服务器和计算机可读存储介质 |
WO2023077665A1 (zh) * | 2021-11-05 | 2023-05-11 | 深圳市鸿合创新信息技术有限责任公司 | 手掌位置确定方法、装置、电子设备及存储介质 |
CN113706606B (zh) * | 2021-08-12 | 2024-04-30 | 新线科技有限公司 | 确定隔空手势位置坐标的方法及装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109683710A (zh) * | 2018-12-20 | 2019-04-26 | 北京字节跳动网络技术有限公司 | 一种手掌法向量确定方法、装置、设备及存储介质 |
CN110569817A (zh) * | 2019-09-12 | 2019-12-13 | 北京邮电大学 | 基于视觉实现手势识别的系统和方法 |
-
2020
- 2020-03-16 CN CN202010182641.9A patent/CN111414837A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109683710A (zh) * | 2018-12-20 | 2019-04-26 | 北京字节跳动网络技术有限公司 | 一种手掌法向量确定方法、装置、设备及存储介质 |
CN110569817A (zh) * | 2019-09-12 | 2019-12-13 | 北京邮电大学 | 基于视觉实现手势识别的系统和方法 |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111880714A (zh) * | 2020-07-31 | 2020-11-03 | Oppo广东移动通信有限公司 | 页面控制方法及相关装置 |
CN111880714B (zh) * | 2020-07-31 | 2022-05-17 | Oppo广东移动通信有限公司 | 页面控制方法及相关装置 |
CN112000224A (zh) * | 2020-08-24 | 2020-11-27 | 北京华捷艾米科技有限公司 | 一种手势交互方法及系统 |
CN113190109A (zh) * | 2021-03-30 | 2021-07-30 | 青岛小鸟看看科技有限公司 | 头戴式显示设备的输入控制方法、装置及头戴式显示设备 |
CN113449610A (zh) * | 2021-06-08 | 2021-09-28 | 杭州格像科技有限公司 | 一种基于知识蒸馏和注意力机制的手势识别方法和系统 |
CN113706606A (zh) * | 2021-08-12 | 2021-11-26 | 新线科技有限公司 | 确定隔空手势位置坐标的方法及装置 |
CN113706606B (zh) * | 2021-08-12 | 2024-04-30 | 新线科技有限公司 | 确定隔空手势位置坐标的方法及装置 |
CN114063772A (zh) * | 2021-10-26 | 2022-02-18 | 深圳市鸿合创新信息技术有限责任公司 | 手势识别方法、装置、设备及介质 |
WO2023077665A1 (zh) * | 2021-11-05 | 2023-05-11 | 深圳市鸿合创新信息技术有限责任公司 | 手掌位置确定方法、装置、电子设备及存储介质 |
CN114663920A (zh) * | 2022-05-23 | 2022-06-24 | 云账户技术(天津)有限公司 | 手势识别的方法、装置、服务器和计算机可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111414837A (zh) | 手势识别方法、装置、计算机设备及存储介质 | |
Nai et al. | Fast hand posture classification using depth features extracted from random line segments | |
CN109829368B (zh) | 手掌特征的识别方法、装置、计算机设备及存储介质 | |
CN103294996B (zh) | 一种3d手势识别方法 | |
Zhu et al. | Vision based hand gesture recognition using 3D shape context | |
CN108475113B (zh) | 用于检测用户的手部姿态的方法、系统和介质 | |
CN103971102A (zh) | 基于手指轮廓和决策树的静态手势识别方法 | |
JPWO2009147904A1 (ja) | 手指形状推定装置、手指形状の推定方法及びプログラム | |
CN110837792B (zh) | 一种三维手势识别方法及装置 | |
CN111401318B (zh) | 动作识别方法及装置 | |
WO2012163124A1 (zh) | 基于空间运动的输入方法及终端 | |
WO2017114002A1 (zh) | 一维手写文字输入设备和一维手写文字输入方法 | |
CN106503619B (zh) | 基于bp神经网络的手势识别方法 | |
CN111444488A (zh) | 一种基于动态手势的身份认证方法 | |
CN107357414B (zh) | 一种点击动作的识别方法及点击动作识别装置 | |
Alam et al. | Implementation of a character recognition system based on finger-joint tracking using a depth camera | |
Chowdhury et al. | Gesture recognition based virtual mouse and keyboard | |
Plouffe et al. | Natural human-computer interaction using static and dynamic hand gestures | |
CN110569775A (zh) | 一种识别人体姿势的方法、系统、存储介质及电子设备 | |
CN107292295B (zh) | 手势分割方法及装置 | |
CN114445853A (zh) | 一种视觉手势识别系统识别方法 | |
Bhuyan et al. | Trajectory guided recognition of hand gestures having only global motions | |
Dhamanskar et al. | Human computer interaction using hand gestures and voice | |
CN112016370A (zh) | 基于形态学的静态手势识别方法 | |
Tsai et al. | Reverse time ordered stroke context for air-writing recognition |
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 |