CN115421591B - 手势控制装置和摄像设备 - Google Patents
手势控制装置和摄像设备 Download PDFInfo
- Publication number
- CN115421591B CN115421591B CN202210976199.6A CN202210976199A CN115421591B CN 115421591 B CN115421591 B CN 115421591B CN 202210976199 A CN202210976199 A CN 202210976199A CN 115421591 B CN115421591 B CN 115421591B
- Authority
- CN
- China
- Prior art keywords
- target
- hand
- gesture
- portrait
- module
- 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
- 238000001514 detection method Methods 0.000 claims abstract description 87
- 238000004458 analytical method Methods 0.000 claims abstract description 81
- 239000003999 initiator Substances 0.000 claims description 28
- 230000009471 action Effects 0.000 claims description 26
- 230000001052 transient effect Effects 0.000 claims description 18
- 230000004044 response Effects 0.000 claims description 8
- 238000012549 training Methods 0.000 claims description 6
- 238000004364 calculation method Methods 0.000 abstract description 30
- 238000000034 method Methods 0.000 abstract description 25
- 230000008569 process Effects 0.000 abstract description 13
- 210000003128 head Anatomy 0.000 description 23
- 230000003068 static effect Effects 0.000 description 20
- 238000005516 engineering process Methods 0.000 description 14
- 238000003062 neural network model Methods 0.000 description 13
- 238000012545 processing Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 9
- 238000004422 calculation algorithm Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 5
- 210000004247 hand Anatomy 0.000 description 5
- 230000033001 locomotion Effects 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 230000000977 initiatory effect Effects 0.000 description 4
- 230000003993 interaction Effects 0.000 description 3
- 230000002452 interceptive effect Effects 0.000 description 3
- 238000005259 measurement Methods 0.000 description 3
- 230000035945 sensitivity Effects 0.000 description 3
- 230000000903 blocking effect Effects 0.000 description 2
- 238000012790 confirmation Methods 0.000 description 2
- 230000010365 information processing Effects 0.000 description 2
- 230000000087 stabilizing effect Effects 0.000 description 2
- 210000001015 abdomen Anatomy 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 210000001061 forehead Anatomy 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 210000003813 thumb Anatomy 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
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/764—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
-
- 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/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- 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/96—Management of image or video recognition tasks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/40—Scenes; Scene-specific elements in video content
-
- 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/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/107—Static hand or arm
- G06V40/113—Recognition of static hand signs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V2201/00—Indexing scheme relating to image or video recognition or understanding
- G06V2201/07—Target detection
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Databases & Information Systems (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- User Interface Of Digital Computer (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种手势控制装置和摄像设备,其中装置包括:多类目标检测模块,用于接收图像预览帧,并对图像预览帧进行目标检测,得到至少一个手部目标;手部跟踪模块,用于对手部目标进行跟踪,得到手部目标的手部跟踪信息;手势请求状态分析模块,用于基于手部跟踪信息确定手部目标的稳定状态,并根据手部目标的稳定状态,判断手部目标是否处于手势控制请求状态;手型分类模块,用于对处于手势控制请求状态的手部目标进行手型分类,得到与手部目标对应的手势类别;手势请求类型分析模块,用于基于手势类别与预设的指令手势类型的对比结果,得到手势控制指令。上述方案可以有效的降低手势识别过程中的算力消耗,并提高手势识别的准确率。
Description
技术领域
本发明涉及姿态识别技术领域,尤其是涉及一种手势控制装置和摄像设备。
背景技术
手势控制是诸多人机交互方式中较为自然、方便的一种,具有广阔的应用场景。作为手势控制的关键技术,手势识别在学术界和工业界都极具关注度。其中,静态手势识别是手势识别领域的关键组成部分。从处理数据类型方面讲,静态手势识别是基于单帧图像对特定的手型进行分类,从用户体验、技术成熟度、成本等其他方面讲,静态手势识别技术较为成熟,适用范围广。
目前,静态手势的识别通常是基于两个深度神经网络模型分别完成视频图像的目标检测和手型分类,但是,通过两个深度神经网络模型对视频图像中的每个数据帧中进行目标检测和型分类,会消耗很多算力,导致手势识别的总体计算量大,此外,在手势识别的过程中,常见的手型也易发生误触,导致手势识别的准确率较低。
发明内容
有鉴于此,本申请提供了一种手势控制装置和摄像设备,主要目的在于解决当前的手势识别方法总体计算量大,以及手势识别准确率低的技术问题。
根据本发明的第一个方面,提供了一种手势识别装置,该装置包括:
多类目标检测模块,用于接收图像预览帧,并对所述图像预览帧进行目标检测,得到至少一个手部目标;
手部跟踪模块,用于对所述手部目标进行跟踪,得到所述手部目标的手部跟踪信息;
手势请求状态分析模块,用于基于所述手部跟踪信息确定所述手部目标的稳定状态,并根据所述手部目标的稳定状态,判断所述手部目标是否处于手势控制请求状态;
手型分类模块,用于对处于所述手势控制请求状态的手部目标进行手型分类,得到与所述手部目标对应的手势类别;
手势请求类型分析模块,用于基于所述手势类别与预设的指令手势类型的对比结果,得到手势控制指令。
可选地,所述手势请求状态分析模块包括所述手部稳定性分析子模块和手势请求状态判别子模块,其中,所述手部稳定性分析子模块,用于基于所述手部目标的手部跟踪信息,判断所述手部目标的姿态是否稳定,以及判断所述手部目标的目标检测结果是否稳定;若所述手部目标的姿态稳定,且所述手部目标的目标检测结果稳定,则判定所述手部目标处于稳定状态;若所述手部目标的姿态不稳定和/或所述手部目标的目标检测结果不稳定,则判定所述手部目标不处于稳定状态;所述手势请求状态判别子模块,用于在所述手部目标处于稳定状态时,判定所述手部目标处于所述手势控制请求状态。
可选地,所述手部稳定性分析子模块,具体用于:基于所述手部目标的手部跟踪信息,将所述手部目标被创建时的手部目标的目标框作为稳定目标框,将当前数据帧中的所述手部目标的目标框作为当前目标框;计算所述当前目标框与所述稳定目标框的目标框交并比,并判断所述目标框交并比是否大于预设的交并比阈值;若所述目标框交并比大于所述交并比阈值,则判定所述手部目标的姿态稳定;若所述目标框交并比小于等于所述交并比阈值,则将所述当前目标框作为稳定目标框,并判定所述手部目标的姿态不稳定。
可选地,所述手部稳定性分析子模块,具体还用于:基于所述手部目标的手部跟踪信息,确定与所述手部目标对应的目标数据帧组,其中,所述目标数据帧组包括多个数据帧,所述多个数据帧中包括当前数据帧;获取所述手部目标在所述目标数据帧组内的每个数据帧中的目标框参数;计算所述手部目标的多个所述目标框参数之间的标准差,并判断所述标准差是否小于预设的标准差阈值;若所述标准差小于所述标准差阈值,则判定所述手部目标的姿态稳定;若所述标准差大于等于所述标准差阈值,则判定所述手部目标的姿态不稳定。
可选地,所述手部稳定性分析子模块,具体还用于:获取所述手部目标的手部跟踪信息中的所有数据帧,并统计未包含所述手部目标的数据帧的数量;根据所述未包含所述手部目标的数据帧的数量,得到丢失帧数量,并判断所述丢失帧数量是否小于预设的丢失帧数量阈值;若所述丢失帧数量小于所述丢失帧数量阈值,则判定所述手部目标的目标检测结果稳定;若所述丢失帧数量大于等于所述丢失帧数量阈值,则判定所述手部目标的目标检测结果不稳定。
可选地,所述装置还包括人像跟踪模块,其中,所述多类目标检测模块,还用于对所述图像预览帧进行目标检测,得到至少一个人像目标;所述人像跟踪模块,用于对所述人像目标进行跟踪,得到所述人像目标的人像跟踪信息;所述手势请求状态分析模块,还用于对所述人像目标和所述手部目标进行数据关联,并基于所述人像跟踪信息确定所述人像目标的稳定状态,以及根据所述人像目标的稳定状态、所述手部目标的稳定状态、以及所述人像目标和手部目标的关联数据,判断所述手部目标是否处于手势控制请求状态;所述手势请求类型分析模块,还用于基于所述人像目标和手部目标的关联数据,确定所述手势控制指令的指令发起者。
可选地,所述手势请求状态分析模块还包括人像手部关联子模块和人像稳定性分析子模块,其中,所述人像手部关联子模块,用于针对处于稳定状态的所述手部目标,对所述手部目标和所述人像目标进行数据关联;所述人像稳定性分析子模块,用于针对与所述手部目标关联的人像目标,基于所述人像目标的人像跟踪信息,判断所述人像目标的姿态是否稳定,并判断所述人像目标的目标检测结果是否稳定;所述手势请求状态判别子模块,具体用于针对处于稳定状态的所述手部目标,若与所述手部目标关联的人像目标的姿态稳定且目标检测结果稳定,则判定所述手部目标处于瞬时稳定状态;若所述手部目标处于瞬时稳定状态的时长大于预设时长,则判定所述手部目标处于手势控制请求状态。
可选地,所述人像手部关联子模块,具体用于:基于所述图像预览帧中的每个所述人像目标,确定与每个所述人像目标关联的手势候选区域;针对所述图像预览帧中的每个处于稳定状态的所述手部目标,判断所述手部目标与所述手势候选区域的重叠比例是否超过预设值;若所述手部目标与所述手势候选区域的重叠比例超过所述预设值,则将所述手部目标与所述手势候选区域对应的人像目标进行数据关联。
可选地,所述人像手部关联子模块,还用于:获取与所述人像目标关联的手部目标的数量,并将与所述人像目标关联的手部目标的数量与预设的人像手部关联阈值进行对比,其中,人像手部关联阈值为一个或两个;若与所述人像目标关联的手部目标的数量与所述人像手部关联阈值相同,则判定所述手部目标认证成功;若与所述人像目标关联的手部目标的数量与所述人像手部关联阈值不相同,则判定所述手部目标认证失败。
可选地,所述人像稳定性分析子模块,还用于:对与所述手部目标关联的人脸目标进行人脸识别,并判断所述人脸目标的人脸识别结果是否具有认证权限;若所述人脸目标的人脸识别结果具有认证权限,则判定所述人像目标认证成功;若所述人脸目标的人脸识别结果不具有认证权限,则判定所述人像目标认证失败。
可选地,所述手势请求状态判别子模块,还用于:针对任一个所述手部目标,在以下至少一种条件满足时,判定所述手部目标未处于所述瞬时稳定状态和/或未处于所述手势控制请求状态:所述手部目标的姿态不稳定、所述手部目标的目标检测结果不稳定、所述手部目标认证失败、所述手部目标未与任一个所述人像目标关联、与所述手部目标关联的人像目标的姿态不稳定、与所述手部目标关联的人像目标的目标检测结果不稳定、与所述手部目标关联的人像目标认证失败;若所述手部目标未处于所述瞬时稳定状态,则对所述手部目标处于瞬时稳定状态的时长进行清零操作。
可选地,所述手型分类模块,具体用于:基于处于所述手势控制请求状态的手部目标的目标框,在所述图像预览帧中裁剪出至少一个手部图像;将所述手部图像输入到预先训练的分类网络模型中,得到与所述手部目标对应的手势类别,其中,所述分类网络模型基于手部图像样本和手型类别标签训练得到。
可选地,所述手部目标包括单手手部目标和/或粘连型手部目标,所述手势控制指令的指令类型包括单手手势控制指令和/或粘连型手势控制指令。
可选地,所述多类目标检测模块分别与所述人像跟踪模块和所述手部跟踪模块连接,所述人像跟踪模块和所述手部跟踪模块分别与所述手势请求状态分析模块连接,所述手势请求状态分析模块分别与所述手型分类模块和所述手势请求类型分析模块连接,所述手型分类模块与所述手势请求类型分析模块连接。
可选地,所述装置还包括手势控制结果输出模块和/或手势控制结果响应模块,其中,所述手势控制结果输出模块分别与所述人像跟踪模块、所述手部跟踪模块和所述手势请求类型分析模块连接,用于输出手势控制结果;所述手势控制结果响应模块分别与所述人像跟踪模块、所述手部跟踪模块和所述手势请求类型分析模块连接,用于将所述手势控制结果发送至与所述手势控制装置连接的动作执行装置中;其中,所述手势控制结果包括所述手势控制指令、所述手势控制指令的指令类型和指令发起者、所述指令发起者对应的人像目标和手部目标、所述图像预览帧中的所有人像目标、所述图像预览帧中的所有手部目标、每个所述人像目标的人像标识和人像跟踪信息、每个所述手部目标的手部标识和手部跟踪信息中的至少一种信息。
根据本发明的第二个方面,提供了一种手势识别摄像设备,该摄像设备包括图像采集装置、动作执行装置以及如上述实施例所述的手势控制装置,其中,
所述图像采集装置,用于采集图像预览帧,并将所述图像预览帧发送至所述手势控制装置;
所述手势控制装置,用于接收所述图像预览帧,并对所述图像预览帧进行目标检测和手势识别,得到手势控制指令;
所述动作执行装置,用于执行与所述手势控制指令相对应的动作。
可选地,所述图像采集装置的输出端与所述手势控制装置的输入端连接,所述手势控制装置的输出端与所述动作执行装置的输入端连接。
可选地,所述摄像设备还包括手势控制结果响应装置,其中,所述手势控制结果响应装置连接在所述手势控制装置的输出端和所述动作执行装置的输入端之间,用于将所述手势控制装置输出的手势控制结果发送至所述动作执行装置中,其中,所述手势控制结果包括所述手势控制指令、所述手势控制指令的指令类型和指令发起者、所述指令发起者对应的人像目标和手部目标、所述图像预览帧中的所有人像目标、所述图像预览帧中的所有手部目标、每个所述人像目标的人像标识和人像跟踪信息、每个所述手部目标的手部标识和手部跟踪信息中的至少一种信息。
本发明提供的一种手势控制装置和摄像设备,通过识别并跟踪视频数据帧中的手部目标,并基于手部跟踪信息确定手部目标的稳定状态,进而根据手部目标的稳定状态,判断手部目标是否处于手势控制请求状态,只有当手部目标处于手势控制请求状态时,才对手部目标进行手型分类和判别,以得到手势控制指令。上述方案通过在手势识别时只对视频数据帧中处于稳定状态的手部目标进行手型分类,有效的减少了手势识别过程中对于算力的消耗,有效的降低了手势识别的总体计算量。此外,上述方法通过在手型分类之前先判定手部目标的稳定状态,可以有效的防止手型误触导致的手势识别错误,从而有效的提高了手势识别的准确率。
上述说明仅是本申请技术方案的概述,为了能够更清楚了解本申请的技术手段,而可依照说明书的内容予以实施,并且为了让本申请的上述和其它目的、特征和优点能够更明显易懂,以下特举本申请的具体实施方式。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1示出了本发明实施例提供的手势控制装置的结构示意图之一;
图2示出了本发明实施例提供的手势控制装置的结构示意图之二;
图3示出了本发明实施例提供的手势控制装置的结构示意图之三;
图4示出了本发明实施例提供的手势请求状态分析模块的结构示意图;
图5(a)示出了本发明实施例提供的手势候选区域的示意图之一;
图5(b)示出了本发明实施例提供的手势候选区域的示意图之二;
图6示出了本发明实施例提供的人像目标和手部目标数据关联的示意图;
图7示出了本发明实施例提供的摄像设备的结构示意图之一;
图8示出了本发明实施例提供的摄像设备的结构示意图之二。
具体实施方式
下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
手势控制是诸多人机交互方式中较为自然、方便的一种,具有广阔的应用场景。作为手势控制的关键技术,手势识别在学术界和工业界都极具关注度。手势识别通常可分为静态手势识别(或称手型识别)和动态手势识别这两种识别方式。从处理数据类型方面讲,静态手势识别是基于单帧图像对特定的手型进行分类,而动态手势识别则是基于连续的图像序列(视频片段) 对连贯的手部动作进行分类。而从用户体验、技术成熟度、成本等其他方面讲,静态手势识别技术较为成熟,其本身对硬件算力要求不高。但是,常见的手型易发生误触,以至于难以选择适当的静态手势作为控制手势。而动态手势则较为可靠、自然,但通常所需的计算量大、对硬件算力要求高,难以在中低端嵌入式平台满足实时性要求。
静态手势的实施通常有两个方案。其一是由一个深度神经网络模型完成手部检测和手型分类,总的推理较为高效,但通过一个模型处理两类不同任务,尤其是当应用还需要其他的目标检测(比如人脸、人头、头肩或人体等) 时,耦合性较高,整体训练难度较大,也不便扩展。其二是用两个深度神经网络处理,一个用于目标检测,另一个用于手型分类。两个模型分开训练,容易收敛,检测和分类相对容易得到较高的精度,另外,还可根据业务需要,同一个模型进行多种类别的目标检测,既不会额外增加计算开销,也便于应用扩展。考虑到大多数支持手势控制的智能移动终端(比如家庭机器人、智能会议平板、智能家居产品、智能车载设备等)所包含的功能通常不止是手势识别,因此第二种方案应被优先考虑。
目前,基于静态手势识别的手势控制技术也有诸多问题要解决。首先,现有的手势控制技术总体计算量大,对硬件算力要求高、成本高,这导致市面上大多数具备手势控制的产品价格颇高,极大地限制产品的销量以及手势控制技术的普及。其次,在手势识别的过程中,常见的手型也易发生误触,导致手势识别的准确率较低。
针对上述问题,在一个实施例中,如图1所示,提供了一种手势控制装置,该装置可以借助软件加通用硬件平台的方式来实现,也可以通过硬件实现,该手势控制装置包括以下模块:
多类目标检测模块10,用于接收图像预览帧,并对所述图像预览帧进行目标检测,得到至少一个手部目标。
其中,图像预览帧可以基于图像采集模块采集得到。具体的,根据应用场景的不同,图像采集模块可以是深度相机、普通相机、摄像头等设备或模块。在本实施例中,图像预览帧可以是图像采集模块实时拍摄的图像,也可以图像采集设备实时拍摄的视频流中的一个图像帧。
具体的,在接收到待处理的图像预览帧之后,可以通过预训练的深度神经网络模型对输入的图像预览帧进行目标检测,得到至少一个目标检测对象。其中,目标检测对象至少包括手部目标,此外,还可以包括其他人体部位目标,包括人脸、人头、头肩、人体等等。
在一个可选的实施例中,当待处理的图像预览帧中包括人体和手部等人体结构时,深度神经网络模型可以检测到图像预览帧中的至少一个人像目标和/或至少一个手部目标,其中,人像目标可以包括人脸、人头、头肩、人体等人体部位。进一步的,对于检测出的人像目标和手部目标等目标检测对象,可以用目标框框出来,其中,每个人像目标和手部目标均有与其对应的目标框和目标框数据,目标框数据中可以包括人像目标和手部目标的目标框在图像预览帧中的位置坐标等数据。此外,目标框还可以根据需要配置为显示状态或隐藏状态,例如,在对图像进行预览时,目标框可以配置为隐藏状态,在对图像进行后台处理或者演示希算法效果时,目标框可以配置为显示状态。
手部跟踪模块20,用于对所述手部目标进行跟踪,得到所述手部目标的手部跟踪信息。
其中,手部目标的手部跟踪信息可以为手部目标在多个数据帧中的轨迹,即手部跟踪信息中可以包括手部目标在多个数据帧中的目标框数据,此外,通过对手部目标进行跟踪,还可以得到手部标识,其中,手部标识可以为手部目标ID(Identity document,ID)。
具体的,可以基于多类目标检测模块10识别出的手部目标,生成手部目标框,然后,对手部目标以及生成的手部目标框进行实时的定位,并为手部目标赋予相应的手部标识,最后,基于手部标识对手部目标进行轨迹追踪。
手势请求状态分析模块30,用于基于所述手部跟踪信息确定所述手部目标的稳定状态,并根据所述手部目标的稳定状态,判断所述手部目标是否处于手势控制请求状态。
其中,手部目标的稳定状态可以包括手部目标处于稳定状态和手部目标不处于稳定状态这两种情况。在本实施例中,当手部目标处于稳定状态时,可以判定手部目标处于手势控制请求状态。在其他可选的实施例中,在判断手部目标是否处于手势控制请求状态时,还可以添加其他判断条件,例如,可以判断手部目标是否与人像目标进行了关联,或判断与手部目标关联的人像目标是否稳定等等,只有当所有条件都满足时,才判定手部目标处于手势控制请求状态。可以理解的是,在判断手部目标是否处于手势控制请求状态的条件中,至少包括手部目标是否处于稳定状态。
举例来说,当用户作出手势控制指令时,会使手部处于某种姿态且保持一定的时间,以使手势控制装置能够捕捉到包含手势控制指令的图像并进行目标检测和手势识别。若目标用户的手势处于不稳定的状态,如步行时正常的摆动状态,则可以判定目标用户并没有作出手势控制指令。基于此,在手部目标处于稳定状态时,手势控制装置可以判定用户有进行手势请求的意图,从而判定手部目标处于手势控制请求状态。
具体的,可以基于手部跟踪信息判断手部目标在获取的图像区域内的活动轨迹,进而判断手部目标是否处于相对稳定的位置,若手部目标的位置参数满足预先设定的变化量阈值,则可以判定手部目标处于稳定状态。
手型分类模块40,用于对处于所述手势控制请求状态的手部目标进行手型分类,得到与所述手部目标对应的手势类别。
其中,手势类别为基于用户的手部目标进行分类得到的手型种类。
具体的,对于手势请求状态分析模块30得到的手势请求状态分析结果,可以通过深度神经网络模型对处于手势控制请求状态的手部目标进行手型分类,而对于不处于手势控制请求状态的手部目标,可以将其设置为无效手势。通过这种方式,可以得到图像预览帧中所有的手部目标对应的手势类别,并且可以省去对那些不处于手势控制请求状态的手部目标进行手型分类所带来的算力消耗。其中,所述深度神经网络模型是基于手型图像和手型标签训练得到的,用于基于输入的手型图像输出得到对应的手势类别。
手势请求类型分析模块50,用于基于所述手势类别与预设的指令手势类型的对比结果,得到手势控制指令。
其中,所述手势控制指令为手势控制装置基于目标用户的手势姿态识别得到的指令信息,该指令信息可用于对与手势控制装置连接的动作执行装置进行操作控制。
具体的,通过将识别出的手势类别与预设的指令手势类型进行比对,即可以识别出图像预览帧中的手部目标是否发起了手势控制指令。在一个可选的实施例中,还可以识别出发起手势控制指令的指令类型和指令发起者,最后,基于发起手势控制指令的指令发起者,还可以得到发起手势控制指令的人像目标和手部目标。
在本申请的实施例中,所述多类目标检测模块10与所述手部跟踪模块20 连接,用于向所述手部跟踪模块20提供目标检测结果;手部跟踪模块20与所述手势请求状态分析模块30连接,用于向所述手势请求状态分析模块30 提供手部跟踪信息;所述手势请求状态分析模块30分别与所述手型分类模块 40和所述手势请求类型分析模块50连接,用于在手部目标处于稳定状态时向手型分类模块40提供手部目标以进行手型分类,以及在手部目标不处于稳定状态时向手势请求类型分析模块50提供无效手势的识别结果;所述手型分类模块40与所述手势请求类型分析模块50连接,用于向手势请求类型分析模块50提供与手部目标对应的手势类别,手势请求类型分析模块50用于基于与手部目标对应的手势类别,得到识别后的手势控制指令。
在本实施例中,可以采用两个深度神经网络模型对图像预览帧进行目标检测,以及对识别出的手部目标进行手型分类。在多类目标检测模块,可以采用第一深度神经网络模型进行多类目标检测,其中,现有的目标检测网络一般都支持多类目标检测,即一次推理可检测多类目标,只要训练阶段针对多类目标进行训练即可;在手型分类模块,可以采用第二深度神经网络模型进行手型分类,其中,分类任务也是深度神经网络模型较为常规的任务。在本实施例中,第一深度神经网络模型和第二深度神经网络模型可以采用比较典型的YOLO系列、SSD等网络。在手部跟踪模块,可以选择SORT(Simple Online And RealtimeTracking)算法对检测出的手部目标进行多目标跟踪,该算法为经典的基于检测的多目标跟踪算法,具有计算量小、运算速度快的特点。如果在应用需要且算力允许的情况下,也可以选用DeepSORT等其他跟踪算法。
本实施例提供的手势控制装置,通过识别并跟踪视频数据帧中的手部目标,并基于手部跟踪信息确定手部目标的稳定状态,进而根据手部目标的稳定状态,判断手部目标是否处于手势控制请求状态,只有当手部目标处于手势控制请求状态时,才对手部目标进行手型分类和判别,以得到手势控制指令。上述方案通过在手势识别时只对视频数据帧中处于稳定状态的手部目标进行手型分类,有效的减少了手势识别过程中对于算力的消耗,有效的降低了手势识别的总体计算量。此外,上述方法通过在手型分类之前先判定手部目标的稳定状态,可以有效的防止手型误触导致的手势识别错误,从而有效的提高了手势识别的准确率。
在一个实施例中,还提供了一种手势控制装置,该装置同样可以借助软件加通用硬件平台的方式来实现,也可以通过硬件实现。如图2和图3所示,该手势控制装置除包括多类目标检测模块10、手部跟踪模块20、手势请求状态分析模块30、手型分类模块40和手势请求类型分析模块50之外,还包括人像跟踪模块60,其中,人像跟踪模块60可用于对所述人像目标进行跟踪,得到所述人像目标的人像跟踪信息。
其中,人像目标的人像跟踪信息可以为人像目标在多个数据帧中的轨迹,即人像跟踪信息中可以包括人像目标在多个数据帧中的目标框数据,此外,通过对人像目标进行跟踪,还可以得到人像标识,其中,人像标识可以为人像目标ID(Identity document,ID)。
具体的,可以基于多类目标检测模块10识别出的人像目标,生成人像目标框,然后,对人像目标以及生成的人像目标框进行实时的定位,并为人像目标赋予相应的人像标识,最后,基于人像标识对人像目标进行轨迹追踪。
在本实施例中,当手势控制装置还包括人像跟踪模块60时,如图2和图 3所示,各模块执行的动作如下:多类目标检测模块10,用于对所述图像预览帧进行目标检测,得到至少一个人像目标和至少一个手部目标;手部跟踪模块20,用于对所述手部目标进行跟踪,得到所述手部目标的手部跟踪信息;人像跟踪模块60,用于对所述人像部目标进行跟踪,得到所述人像目标的人像跟踪信息;所述手势请求状态分析模块30,用于对所述人像目标和所述手部目标进行数据关联,并基于所述手部跟踪信息确定所述手部目标的稳定状态,基于所述人像跟踪信息确定所述人像目标的稳定状态,以及根据所述人像目标的稳定状态、所述手部目标的稳定状态、以及所述人像目标和手部目标的关联数据,判断所述手部目标是否处于手势控制请求状态;手型分类模块40,用于对处于所述手势控制请求状态的手部目标进行手型分类,得到与所述手部目标对应的手势类别;所述手势请求类型分析模块50,还用于基于所述手势类别与预设的指令手势类型的对比结果,得到手势控制指令,以及基于所述人像目标和手部目标的关联数据,确定所述手势控制指令的指令发起者。
其中,手部目标的稳定状态可以包括手部目标处于稳定状态和手部目标不处于稳定状态这两种情况,人像目标的稳定状态可以包括人像目标处于稳定状态和人像目标不处于稳定状态这两种情况。进一步的,在判定手部目标处于稳定状态后,还可以对处于稳定状态的手部目标和人像目标进行关联,以及对与手部目标关联的人像目标进行稳定性判定。即对于任意手部目标,只有当手部目标处于稳定状态,且有人像目标与该手部目标关联,且与该手部目标关联的人像目标也处于稳定状态时,才判定手部目标处于手势控制请求状态,进而对该手部目标继续执行手型分类和手势类型判别等后续处理。
举例来说,当用户作出手势控制指令时,会使手部处于某种姿态且保持一定的时间,以使手势控制装置能够捕捉到包含手势控制指令的图像并进行目标检测和手势识别。若目标用户的手势处于不稳定的状态,如步行时正常的摆动状态,则可以判定目标用户并没有作出手势控制指令。同理,当用户作出手势请求时,其身体也会处于一个稳定的状态,当用户的人像目标处于不稳定状态时,如正在行进时,可以判定用户没有进行手势请求的意图,从而可以判定用户并没有作出手势控制指令。因此,在手部目标和人像目标均处于稳定状态,且手部目标与人像目标具有关联关系时,手势控制装置可以判定用户有进行手势请求的意图,从而判定手部目标处于手势控制请求状态。
具体的,可以基于人像跟踪信息以及手部跟踪信息判断人像目标以及手部目标在获取的图像区域内的活动轨迹,进而判断人像目标以及手部目标是否处于相对稳定的位置,若人像目标以及手部目标的位置满足预先设定的变化量阈值,则可以判定人像目标以及手部目标处于稳定状态。进一步的,对人像目标和手部目标进行数据关联的方法有多种。例如,可以对图像预览帧中的人像目标进行人体关键点检测,得到人像目标对应的人体骨架,然后基于人体骨架,确定与人像目标关联的手部目标,得到人像目标和手部目标的关联数据。或者,也可以对人像目标预设一个手势候选区域,并判断手部目标与手势候选区域之间的位置关系是否满足预设关系,若该位置关系满足预设的位置关系时,则对人像目标和手部目标进行关联,得到人像目标和手部目标的关联数据。除上述两种关联方式外,还可以选择其他方式对人像目标和手部目标进行关联,可以理解的是,人像目标和手部目标的关联方式可以根据硬件平台的算力等实际情况进行选择,本实施例在此也不做具体限定。
本实施例提供的手势控制装置,通过识别并跟踪图像数据帧中的人像目标和手部目标,并基于人像跟踪信息和手部跟踪信息确定人像目标的稳定状态和手部目标的稳定状态,进而对人像目标和手部目标进行数据关联,以及根据人像目标的稳定状态、手部目标的稳定状态和人像手部的关联结果判断手部目标是否处于手势控制请求状态,只有当手部目标处于手势控制请求状态时,才对手部目标进行手型分类和判别,以得到手势控制指令的指令类型和指令发起者。上述方案无需对视频数据帧中的所有手部目标均进行手型分类,有效的减少了手势识别过程中对于算力的消耗,降低了静态手势识别对于硬件算力的要求,使静态手势识别技术易于在中低端嵌入式平台实施,有效的降低了硬件成本。此外,上述方法通过在手型分类之前对手部目标和人像目标进行关联,并分别判定手部目标的稳定状态和人像目标的稳定状态,可以有效的防止手型误触导致的手势识别错误,从而提高手势识别的准确率。
在一个实施例中,如图4所示,所述手势请求状态分析模块30包括手部稳定性分析子模块31、人像手部关联子模块32、人像稳定性分析子模块33 以及手势请求状态判别子模块34,其中:
手部稳定性分析子模块31,用于基于所述手部目标的手部跟踪信息,判断所述手部目标的姿态是否稳定,并判断所述手部目标的目标检测结果是否稳定;若所述手部目标的姿态稳定,且所述手部目标的目标检测结果稳定,则判定所述手部目标处于稳定状态;若所述手部目标的姿态不稳定和/或所述手部目标的目标检测结果不稳定,则判定所述手部目标不处于稳定状态。
具体的,基于手部目标的手部跟踪信息,可以判断手部目标的位置是否出现较大的位置变化,若手部目标的位置不超过预设的位置变化范围,则可以判定手部目标的姿态稳定。进一步的,若手部目标连续出现在多个数据帧中,或缺失手部目标的数据帧数量小于预设的丢失帧阈值,则可以判断所述手部目标的目标检测结果稳定状态。
人像手部关联子模块32,用于针对处于稳定状态的所述手部目标,对所述手部目标和所述人像目标进行数据关联。
具体的,对手部目标和人像目标进行数据关联的方式可以有多种。其中一种方式是,对图像预览帧中的人像目标进行人体关键点检测,得到人像目标对应的人体骨架,然后基于人体骨架,确定与人像目标关联的手部目标,最终得到人像目标和手部目标的关联数据。另外一种方式是,针对图像预览帧中的每个人像目标,确定一个与人像目标关联的手势候选区域,然后判断图像预览帧中的每个手部目标与各个手势候选区域的位置关系(例如,可以判断手部目标是否在任一个手势候选区域内,或者判断手部目标与任一个手势候选区域的重叠比例是否超过预设值),进而根据手部目标与手势候选区域之间的位置关系,对手部目标和手势候选区域进行关联,进一步的,由于手势候选区域与人像目标是关联的,这样一来,就实现了手部目标与人像目标的关联,从而得到了人像目标和手部目标的关联数据。可以理解的是,除了上述两种关联方式外,还可以选择其他方式对人像目标和手部目标进行关联,本实施例不再一一说明,此外,人像目标和手部目标的关联方式可以根据硬件平台的算力等实际情况进行选择,本实施例在此也不做具体限定。
人像稳定性分析子模块33,用于针对与所述手部目标关联的人像目标,基于所述人像目标的人像跟踪信息,判断所述人像目标的姿态是否稳定,并判断所述人像目标的目标检测结果是否稳定;若所述人像目标的姿态稳定,且所述人像目标的目标检测结果稳定,则判定所述人像目标处于稳定状态;若所述人像目标的姿态不稳定和/或所述人像目标的目标检测结果不稳定,则判定所述人像目标不处于稳定状态。
在本实施中,区别于非交互时的随意状态,用户在进行手势控制时,是处于一种刻意的状态,手势姿态相对稳定。因此,为保证手势控制可靠性并节省后续某些不必要的手型分类计算,还可以对人像稳定性进行分析。即在对手部目标和人像目标进行数据关联后,还可以将人像目标和手部目标的关联数据发送给人像稳定性分析子模块33,以通过人像稳定性分析子模块33判断与手部关联的人像目标是否处于稳定的状态。
具体的,基于人像目标的人像跟踪信息,可以判断人像目标的位置是否出现较大的位置变化,若人像目标的位置不超过预设的位置变化范围,则可以判定人像目标的姿态稳定。进一步的,若人像目标连续出现在多个数据帧中,或缺失人像目标的数据帧数量小于预设的丢失帧阈值,则可以判断所述人像目标的目标检测结果稳定状态。
手势请求状态判别子模块34,用于在所述手部目标处于稳定状态时,判定所述手部目标处于所述手势控制请求状态;或用于针对处于稳定状态的所述手部目标,若与所述手部目标关联的人像目标的姿态稳定且目标检测结果稳定,则判定所述手部目标处于瞬时稳定状态;若所述手部目标处于瞬时稳定状态的时长大于预设时长,则判定所述手部目标处于手势控制请求状态。
具体的,手势请求状态判别子模块34判断所述手部目标是否处于手势控制请求状态的判断条件有至少一个,其中,判断条件中至少包括手部目标是否处于稳定状态这一条。在一个可选的实施例中,当手部目标处于稳定状态时,可以直接判定手部目标处于手势控制请求状态。在另一个可选的实施例中,当手部目标处于稳定状态时,可以判断是否有人像目标与该手部目标关联,以及判断与该手部目标关联的人像目标是否处于稳定状态,只有当上述所有条件均满足时,才判定手部目标处于手势控制请求状态。在其他可选的实施例中,为了进一步增强判定的准确性,还可以在上述条件都满足时,只判定所述手部目标处于瞬时稳定状态,若所述手部目标处于瞬时稳定状态的时长大于预设时长(或手部目标处于瞬时稳定状态的数据帧数量大于预设数据帧数量阈值),才判定所述手部目标处于手势控制请求状态,其中,预设时长或预设数据帧的范围可以根据实际情况进行设置。基于上述手势请求状态判别子模块34执行的判断方法,可以对用户的手部目标是否处于手势控制请求状态进行判断,以判断用户当前是否为通过手势发出控制指令的状态。
在一个实施例中,所述手部稳定性分析子模块31,具体可用于执行以下操作:首先,基于所述手部目标的手部跟踪信息,将所述手部目标被创建时的手部目标的目标框作为稳定目标框,将当前数据帧中的所述手部目标的目标框作为当前目标框,随后,计算所述当前目标框与所述稳定目标框的目标框交并比,并判断所述目标框交并比是否大于预设的交并比阈值,若所述目标框交并比大于所述交并比阈值,则判定所述手部目标的姿态稳定,若所述目标框交并比小于等于所述交并比阈值,则将所述当前目标框作为稳定目标框,并判定所述手部目标的姿态不稳定。
其中,目标框交并比(IoU,Intersection over Uion)是对象类别分割问题的标准性能度量。基于给定的一组图像,IoU测量可以给出在该组图像中存在的对象的初始区域和当前区域之间的相似性。
具体的,可以获取出现手部目标的第一帧的图像预览帧,并基于图像预览帧以及手部目标跟踪信息得到手部目标的目标框,并将该目标框作为稳定目标框,其中,该稳定目标框标可以记为Bstable。进一步的,可以获取当前的图像预览帧中的手部目标的目标框,并将当前的图像预览帧中的手部目标的目标框作为当前目标框,其中,当前目标框标可以记为Bcurrent。进一步的,在进行手部姿态稳定性判定时,可以计算当前目标框Bcurrent与稳定目标框Bstable的IoU值,并判断该IoU值是否大于预设的交并比阈值Thand_iou,该交并比阈值Thand_iou可以基于实际情况进行设置,若所述目标框交并比大于所述交并比阈值Thand_iou,则判定所述手部目标的姿态稳定,若所述目标框交并比小于等于所述交并比阈值Thand_iou,则将所述当前目标框作为稳定目标框,并判定所述手部目标的姿态不稳定,且不对该手部目标进行后续的人像手部数据关联操作。本实施例基于目标框交并比可以判定初始的手部位置与当前的手部位置之间的位置偏差程度,在偏差程度小于预设的阈值时,确定手部处于的相对稳定的姿态,为后续的识别工作提供判断基础。
在一个实施例中,手部稳定性分析子模块31,具体还可用于执行以下操作:首先,基于所述手部目标的手部跟踪信息,确定与所述手部目标对应的目标数据帧组,随后,获取所述手部目标在所述目标数据帧组内的每个数据帧中的目标框参数,最后,计算所述手部目标的多个所述目标框参数之间的标准差,并判断所述标准差是否小于预设的标准差阈值,若所述标准差小于所述标准差阈值,则判定所述手部目标的姿态稳定,若所述标准差大于等于所述标准差阈值,则判定所述手部目标的姿态不稳定。
其中,所述目标数据帧组包括多个数据帧,所述多个数据帧中包括当前数据帧。所述目标框参数可以为手部显示框的坐标信息,可以为“中心坐标/左上角坐标+长+宽”的形式,也可以为“左上角坐标+右下角坐标”的形式。
具体的,基于手部目标的手部跟踪信息,可以将包含手部目标的多帧目标数据帧组合成为目标数据帧组。在实际应用时,目标数据帧组中包含的图像预览帧越多,姿态稳定的判定结果越精确。进一步的,可以获取所述手部目标在所述目标数据帧组内的每个数据帧中的目标框参数,并计算所述手部目标的多个所述目标框参数之间的标准差,当所述标准差小于所述标准差阈值时,可以判定所述手部目标的姿态稳定,当所述标准差大于等于所述标准差阈值时,可以判定所述手部目标的姿态不稳定,其中,标准差阈值可以基于实际情况设定,标准差阈值设定的越小,姿态稳定的判断精度越高。在实施例基于一组图像预览帧中手部显示框的位置坐标,得到多个图像预览帧中手部显示框位置坐标的标准差,在标准差小于预设的阈值时,确定手部处于的相对稳定的姿态,上述稳定性判定方法可为后续的识别工作提供判断基础。
在一个实施例中,所述手部稳定性分析子模块31,具体还可用于执行以下操作:首先,获取所述手部目标的手部跟踪信息中的所有数据帧,并统计未包含所述手部目标的数据帧的数量,然后,根据所述未包含所述手部目标的数据帧的数量,得到丢失帧数量,进而,判断所述丢失帧数量是否小于预设的丢失帧数量阈值,若所述丢失帧数量小于所述丢失帧数量阈值,则判定所述手部目标的目标检测结果稳定,若所述丢失帧数量大于等于所述丢失帧数量阈值,则判定所述手部目标的目标检测结果不稳定。
具体的,在进行手部目标跟踪时,可以将每个手部目标的手部标识记录到跟踪列表中,并基于连续的图像预览帧,基于手部目标的手部标识,持续的对识别出的手部目标进行跟踪,当手部目标在图像信息中消失时,与此时的图像信息对应的图像预览帧中就会缺失手部目标,可以将此时的图像预览帧确定为未包含所述手部目标的数据帧,并统计其数量。进一步的,手部跟踪属于多目标跟踪,多目标跟踪通常会为每个跟踪目标分配一个目标丢失帧数,记作skip_count,用以记录跟踪目标未成功关联到检测框的连续次数,并设定一个统一的最大丢失帧数阈值,记作Tmax_skip_count,当 skip_count≥Tmax_skip_count时,就认为该目标消失将其从跟踪列表移除。
进一步的,以手部目标跟踪丢失帧数作为衡量指标,可以基于预先设定的丢失帧数量阈值Tmax_skip_count,判断手部目标的目标检测结果是否为稳定的状态,即当所述丢失帧数量小于所述丢失帧数量阈值Tmax_skip_count 时,可以判定所述手部目标的目标检测结果稳定;当所述丢失帧数量大于等于所述丢失帧数量阈值Tmax_skip_count时,可以判定所述手部目标的目标检测结果不稳定,其中,丢失帧数量阈值的数值越小,手部目标的稳定性检测结果的精确度越高。进一步的,在手部目标的目标检测结果不稳定的情况下,认为该手部目标消失,并将其从跟踪列表移除,以节约后续的计算资源。在实施例中,若目标用户的手部从图像预览帧中消失,则认为用户并没有发出手势控制的意图,进而将将消失的手部目标从跟踪列表中移除,通过这种方式,可以在保证识别精确度的前提下,降低手势控制装置的计算压力。
在一个实施例中,所述人像手部关联子模块32,具体可用于执行以下操作:首先,基于所述图像预览帧中的每个所述人像目标,确定与每个所述人像目标关联的手势候选区域。然后,针对所述图像预览帧中的每个处于稳定状态的所述手部目标,判断所述手部目标与所述手势候选区域的重叠比例是否超过预设值。若所述手部目标与所述手势候选区域的重叠比例超过所述预设阈值,则将所述手部目标与所述手势候选区域对应的人像目标进行数据关联;若所述手部目标与所述手势候选区域的重叠比例没有超过所述预设阈值,则判定所述手部目标与所述手势候选区域对应的人像目标没有关联。
其中,本实施例所述的人像目标为人脸、人头、头肩、人体等其中至少一种。对于需要人、手数据关联的多人场景手势控制而言,本实施例只需其中一种即可。而具体选用哪一种,可根据实际应用需求而定,本发明不做限定。在此,仅以人头目标为例阐述具体的技术细节,至于其他类型的人像目标,也比较容易类比,将不予赘述。具体的,如图5(a)和图5(b)所示,所述手势候选区域为手势发起者上半身相关区域,其宗旨是,应涵盖手势发起者面向手势控制装置在胸前或肩头正式且自然地做出交互手势时手部可能出现的大部分区域。比如,竖直方向为腹部以上、额头以下,水平方向为两臂之间,在此基础上可进一步根据实际需要适当微调。具体的,手势候选区域可以为根据人体的结构及位置关系确定的人体各部位特别是手部在空间上的分布范围。可以根据特定的人像目标的人像目标的目标框确定出手势候选区域,然后基于所有识别出的手部目标,通过判断手部目标框与各手势候选区域的位置关系来将手部目标与手势候选区域关联起来。
根据上述描述,所述手势候选区域可由手势发起者相应的人像显示框计算得出。当手势发起者位置发生变化时,相应手势候选区域也会随之自动调整。以人像目标为人头目标为例,预设手势候选区域相对于人像显示框的竖直偏移比例Sy,手势候选区域相对人像显示框宽、高的比例分别为Sw、Sh,则对任意人像显示框(xhead,yhead,whead,hhead),相应的手势候选区域(xroi,yroi, wroi,hroi)计算公式为:
wroi=whead*Sw
hroi=hhead*Sh
xroi=xhead+whead/2-wroi/2
yroi=yhead+hhead*Sy
其中,xhead为人像显示框的中心坐标或左上角坐标的横坐标,xroi为手势候选区域的中心坐标或左上角坐标的横坐标,yhead为人像显示框的中心坐标或左上角坐标的纵坐标,xroi为手势候选区域的中心坐标或左上角坐标的纵坐标, whead为人像显示框的宽度,wroi为手势候选区域的宽度,hhead为人像显示框的高度,hroi为手势候选区域的高度。
在得到(xroi,yroi,wroi,hroi)的数值后,即可得到手势候选区域的范围数据。进一步的,基于(xroi,yroi,wroi,hroi)的值,可以计算得出手势候选区域的面积,同时,因为手部目标框是已知的,所以可以计算得出手部目标框的面积。
具体的,在手势候选区域宽度调节方面,有窄区域方案与宽区域方案,其中,图5(b)为手势候选区域宽度调节的窄区域方案,即将Sw设置稍小。
对于窄区域方案,可以基于三维光学密集点云测量系统(IoM)计算所述手部目标与所述手势候选区域的重叠比例。具体的,IoM计算公式为:
其中,IoM(A,B)为重叠比例,Intersection(A,B)表示目标A、B的重叠面积,SA、SB分别表示目标A、B的面积。具体的,可以将手势候选区域的面积记为SA,将手部目标框的面积记为SB,则可以计算得出手势候选区域的重叠比例。同时,可以预先设置针对重叠比例的预设阈值,作为判断手部目标与手势候选区域对应的人像目标是否存在关联的判断依据。
进一步的,图5(a)为手势候选区域宽度调节的宽区域方案,即将Sw设置稍大。可以通过判断手部目标框是否被手势候选区域包含,来判断手部目标与手势候选区域对应的人像目标是否存在关联。上述“宽区域方案”和“窄区域方案”可根据需要来进行选择,本实施例不做具体限定。
进一步的,对于窄区域方案,若所述手部目标与所述手势候选区域的重叠比例超过所述预设阈值,则将所述手部目标与所述手势候选区域对应的人像目标进行数据关联。若所述手部目标与所述手势候选区域的重叠比例没有超过所述预设阈值,则判定所述手部目标与所述手势候选区域对应的人像目标没有关联。而对于宽区域方案,若手部目标框被手势候选区域包含,则将所述手部目标与所述手势候选区域对应的人像目标进行数据关联。若手部目标框没有被手势候选区域包含,则判定所述手部目标与所述手势候选区域对应的人像目标没有关联。例如,如图6所示,通过对每个人像目标预设手势候选区域,可以判断图像预览帧中的手部目标2与人像目标1关联,手部目标3与人像目标2关联,则手部目标2和手部目标3可以继续执行后续的分类和手势判别处理,而手部目标1和手部目标4均无人像目标与之关联,则不进行后续处理。
本申请提供的实施例,能够基于人像显示框确定与人像显示框对应的手势候选区域,并基于手势候选区域与手部目标框的包含关系或重叠关系判断手部目标与手势候选区域对应的人像目标是否存在关联的关系。相较于现有技术中根据头部与手部的位置,基于人体骨架计算得出头部与手部是否存在关系的方式相比,有效的减少了手势识别过程中对于算力的消耗,降低了静态手势识别对于硬件算力的要求,使静态手势识别技术易于在中低端嵌入式平台实施,有效的降低了硬件成本。
在一个实施例中,所述人像手部关联子模块32,还可用于执行以下操作:首先,获取与所述人像目标关联的手部目标的数量,并将与所述人像目标关联的手部目标的数量与预设的人像手部关联阈值进行对比,若与所述人像目标关联的手部目标的数量与所述人像手部关联阈值相同,则判定所述手部目标认证成功,若与所述人像目标关联的手部目标的数量与所述人像手部关联阈值不相同,则判定所述手部目标认证失败,其中,人像手部关联阈值为一个或两个。
具体的,基于人像目标与手部目标的关联数据,可以得出人像目标关联的手部目标的数量,并将其与预设的人像手部关联阈值进行对比。进一步的,若与人像目标关联的手部目标的数量与预设的人像手部关联阈值不相同,则说明用户摆出的手势姿势与预设的手势控制指令一定不相同,因此可以判定手部目标认证失败,此时,可以省去后面的手型分类,从而节省算力。此外,若与人像目标关联的手部目标的数量大于两个,则说明将图像预览帧中其他人的手部判定为目标用户的手部,因此,也可以判定所述手部目标认证失败,并可以省去后面的手型分类,从而节省算力。
在一个实施例中,人像稳定性分析子模块33,用于针对与所述手部目标关联的人像目标,基于所述人像目标的人像跟踪信息,判断所述人像目标的姿态是否稳定,并判断所述人像目标的目标检测结果是否稳定;若所述人像目标的姿态稳定,且所述人像目标的目标检测结果稳定,则判定所述人像目标处于稳定状态;若所述人像目标的姿态不稳定和/或所述人像目标的目标检测结果不稳定,则判定所述人像目标不处于稳定状态。在本实施例中,基于人像目标的人像跟踪信息,判断人像目标的姿态是否稳定,以及判断人像目标的目标检测结果是否稳定的方法可以参照上述各实施例中判断手部目标的姿态是否稳定和目标检测结果是否稳定的操作步骤,本实施例在此不再赘述。
在一个实施例中,为了增加用户进行手势控制的便利性,手势控制装置可以只响应于具有特殊权限的手势发起者,或对已响应的手势发起者持续追踪,相应的人像目标可以选择为人脸目标,在此场景下,所述人像稳定性分析子模块33,具体可以执行以下步骤:对与所述手部目标关联的人脸目标进行人脸识别,并判断所述人脸目标的人脸识别结果是否具有认证权限,若所述人脸目标的人脸识别结果具有认证权限,则判定所述人像目标认证成功,若所述人脸目标的人脸识别结果不具有认证权限,则判定所述人像目标认证失败。
其中,对任意人脸目标,在初次手势请求状态分析后,若与之关联的手部目标被判别为处于手势请求状态,则通过人脸识别进行一次人脸认证。具体的,基于获取到的目标用户的人脸目标,并将人脸目标对应的图像与数据库中或本地存储的拥有认证权限的用户的人脸图像进行人脸识别匹配,判断目标用户是否具有认证权限。进一步的,若目标用户具有认证权限,则基于手型分类模块40和手势请求类型分析模块50,在手势控制请求有效的情况下予以相应的响应。另外,在后续各帧处理过程中,由于目标追踪和数据关联的存在,只要人脸目标未丢失,就无需再次人脸认证,以节省算力。进一步的,若目标用户没有认证权限,则不执行后续的操作,且在后续各帧处理过程中,只要人脸目标未丢失,则既不需要再次人脸认证,也无需手型分类等其他后续操作。
在本实施例中,基于目标用户的人脸信息确认目标用户是否具有发出控制指令的用户权限,在目标用户没有认证权限的情况下,停止针对目标用户的进一步识别操作,使本发明提供的方案能满足相应场景产品需求,并且能节省算力、十分高效,能够有效的减少手势识别过程中对于算力的消耗,降低了静态手势识别对于硬件算力的要求,使静态手势识别技术易于在中低端嵌入式平台实施,有效的降低了硬件成本。
在一个实施例中,所述手势请求状态判别子模块34,还可用于执行以下操作;针对任一个所述手部目标,在以下至少一种条件满足时,判定所述手部目标未处于所述瞬时稳定状态和/或未处于所述手势控制请求状态:所述手部目标的姿态不稳定、所述手部目标的目标检测结果不稳定、所述手部目标认证失败、所述手部目标未与任一个所述人像目标关联、与所述手部目标关联的人像目标的姿态不稳定、与所述手部目标关联的人像目标的目标检测结果不稳定、与所述手部目标关联的人像目标认证失败。若所述手部目标未处于所述瞬时稳定状态,则对所述手部目标处于瞬时稳定状态的时长进行清零操作。进一步的,在手部目标未处于所述瞬时稳定状态时,则清除稳定时长,重新基于多类目标检测模块获取图像预览帧,并基于人像跟踪模块和手部跟踪模块获取目标用户的人像目标的人像标识和人像跟踪信息以及手部目标的手部标识和手部跟踪信息,并基于上述信息重新进行手势控制请求状态判定操作。
具体的,对于每一个手部目标,统计其持续稳定状态的帧数nstable或稳定状态的时长tstable,并提前预设一个统一的持续稳定帧数Nstable或持续稳定时长 Tstable阈值,若nstable≥Nstable或tstable≥Tstable,则认为该手部目标处于处于所述瞬时稳定状态,判定目标用户处于手势请求状态,否则认为处于非手势请求状态。在所述手部目标未处于瞬时稳定状态的情况下,可以将持续稳定的帧数 nstable或持续稳定时长tstable进行清零,并重新进行手势控制请求状态判定操作。
在本申请的实施例中,只有在手部目标的姿态稳定、所述手部目标的目标检测结果稳定、所述手部目标认证成功、所述手部目标一个所述人像目标关联、与所述手部目标关联的人像目标的姿态稳定、与所述手部目标关联的人像目标的目标检测结果稳定、与所述手部目标关联的人像目标认证成功的情况下,判定手部目标处于瞬时稳定状态,并计算瞬时稳定状态的持续时间,在持续时间满足预设条件的情况下,才进行后续的识别判定操作,通过这种方式,提高了手势控制装置的识别精确度。而在现有的手势识别方案中,需要将画面中的所有的手部都要逐一进行手型分类,虽然单次手型分类处理速度较快,但当画面中人数较多时,手型分类总体耗时就变得很大,极易影响应用整体性能。考虑到实际多人场景中仅有个别用户处于手势请求状态,通过前述步骤手势请求状态分析,可以将大部分随意的、无手势控制意图的手部目标筛除,仅对个别“就绪”的手部进行手型分类,从而节省了不必要的计算消耗,提高了处理速度,进而保证了整体性能和体验。有效的减少了手势识别过程中对于算力的消耗,降低了静态手势识别对于硬件算力的要求,使静态手势识别技术易于在中低端嵌入式平台实施,有效的降低了硬件成本。
在一个实施例中,所述手型分类模块40,具体可以执行以下操作:首先,基于处于所述手势控制请求状态的手部目标的目标框,在所述图像预览帧中裁剪出至少一个手部图像。具体的,可以根据手部目标的图像信息,基于手部的轮廓,裁剪出手部目标的手部图像。然后,将所述手部图像输入到预先训练的分类网络模型中,得到与所述手部目标对应的手势类别,其中,所述分类网络模型基于手部图像样本和手型类别标签训练得到,用于基于接收到的手部图像,输出与手部图像对应的手势类别。
在一个实施例中,所述手部目标包括单手手部目标和/或粘连型手部目标,所述手势控制指令的指令类型包括单手手势控制指令和/或粘连型手势控制指令。其中,常见的单手手部目标的手型有数字1~9、“大拇指”、“OK”、“Gun”、“单手比心”、“ILoveYou”等等。这些手势在日常生活、交流中颇为常见,若从中选出若干语义自然、易理解、贴切的作为控制手势,则极易误触,即难以满足可靠性要求。相反,若刻意寻找一些日常罕见的单手手势作为控制手势,虽能满足可靠性、灵敏度要求,但又不够自然、语义不易被理解,学习成本高。也就是说,即便现有单手手型分类技术已较为成熟,但上述两难的问题也一定程度上限制了单手手势控制相关智能产品的普及。因此,基于本申请提供的实施例,可为上述问题提供一种可落地的解决方案。
具体的,首先,从常见的单手手型中选出若干语义贴切的作为控制手势,这符合上述自然、易理解的要求;进一步,为了避免误触,可为单手手势控制设定一个确认时间间隔,如2至3秒,即手势发起者在发起手势请求时须保持相应手势动作2至3秒,具体的确认时间间隔可以根据实际情况确定。该方式区别于非主观意图下的交际性手势,相应的误触概率会大大降低,提高了手势控制的可靠性。进一步的,通过修改手势请求状态判别环节的持续稳定帧数或持续稳定时长的值,即可调节手势控制灵敏度,而通过修改手部稳定性分析和人像稳定性分析环节相关稳定性阈值,也可以调节对请求者动作保持约束程度。提高手势识别的精准度。
进一步的,双手手势很容易选出一些语义贴合的手势,并且也容易进一步找出与交际性手势有足够区分度的手势,相应地,由于不易误触,故也可以实现较高的灵敏度。具体地,双手手势有可分为粘连型和非粘连型。粘连型双手手势需要作为单独的目标类型加以检测,然后再进一步分类。本申请的实施例,可以在多类目标检测开发模块对目标检测网络模型增加相应的类别进行训练。而在手型分类模块可以针对相应的手型训练相应的分类网络,以对相应的手型进行识别分类。
另外,非粘连型双手手势可以基于单手手型进行组合,在手势请求类型分析模块,将有效的双手手势与预设的双手指令手势进行比对,即可进行手势请求类型识别。此外,上述例子中设定持续稳定时长,可以过滤掉大多数非主观意图下不必进行分类推理计算的交际性手势,极大地提高了应用的整体性能,保证了手势控制的实时性,改善了用户体验。
在一个实施例中,如图2所示,所述手势控制装置还包括手势控制结果输出模块70,所述手势控制结果输出模块70分别与所述人像跟踪模块60、所述手部跟踪模块20和所述手势请求类型分析模块50连接,用于输出手势控制结果。在本实施例中,手势控制结果可以包括所述手势控制指令、所述手势控制指令的指令类型和指令发起者、所述指令发起者对应的人像目标和手部目标、所述图像预览帧中的所有人像目标、所述图像预览帧中的所有手部目标、每个所述人像目标的人像标识和人像跟踪信息、每个所述手部目标的手部标识和手部跟踪信息中的至少一种信息。进一步的,手势控制结果输出模块70可以对上述手势控制结果进行输出,以使得与手势控制装置连接的动作执行装置能够基于上述信息执行相应的操作。
在一个实施例中,如图3所示,所述手势控制装置还包括手势控制结果响应模块80,所述手势控制结果响应模块80分别与所述人像跟踪模块60、所述手部跟踪模块20和所述手势请求类型分析模块50连接,用于将所述手势控制结果发送至与所述手势控制装置连接的动作执行装置中。在本实施例中,所述手势控制结果可以包括所述手势控制指令、所述手势控制指令的指令类型和指令发起者、所述指令发起者对应的人像目标和手部目标、所述图像预览帧中的所有人像目标、所述图像预览帧中的所有手部目标、每个所述人像目标的人像标识和人像跟踪信息、每个所述手部目标的手部标识和手部跟踪信息中的至少一种信息。在本实施例中,可以直接基于手势控制结果响应模块80所得的手势控制结果对外围动作执行模块发起调用,而无需输出上述手势控制结果。此外,根据实际业务需求,手势控制结果响应模块80也可以直接输出上述手势控制结果,以使得与手势控制装置连接的动作执行装置能够基于上述信息执行相应的操作。
在一个实施例中,可以将手部跟踪模块与手势请求状态分析模块进行组合,从而将手部跟踪模块20和手势请求状态分析模块30整合成手部跟踪及请求状态分析模块,直接对外输出手部目标的手势控制请求状态,以节约计算资源。
进一步的,作为图1至图6所示装置的具体实现,本实施例提供了一种一种摄像设备,如图7所示,该摄像设备包括:图像采集装置、手势控制装置和动作执行装置。
其中,图像采集装置的输出端与所述手势控制装置的输入端连接,所述手势控制装置的输出端与所述动作执行装置的输入端连接。
具体的,所述图像采集装置,用于采集图像预览帧,并将所述图像预览帧发送至所述手势控制装置中。其中,图像采集装置可以为摄像装置,采集目标用户的多帧图像信息,并将多帧图像信息作为图像预览帧发送给手势控制装置。所述手势控制装置,用于接收所述图像预览帧,并对所述图像预览帧进行目标检测和手势识别,得到手势控制指令。其中,手势控制装置得到手势控制指令和手部目标的具体实现方式如图1至6所对应的手势控制装置的实现方式,这里不再赘述。所述动作执行装置,用于执行与所述手势控制指令相对应的动作。其中,动作执行装置可以为能够执行控制指令的下位机等设备。
在一个实施例中,所述摄像设备还包括手势控制结果响应装置,如图8 所示,所述手势控制结果响应装置连接在所述手势控制装置的输出端和所述动作执行装置的输入端之间,用于将所述手势控制装置输出的手势控制结果发送至所述动作执行装置中,其中,所述手势控制结果包括所述手势控制指令、所述手势控制指令的指令类型和指令发起者、所述指令发起者对应的人像目标和手部目标、所述图像预览帧中的所有人像目标、所述图像预览帧中的所有手部目标、每个所述人像目标的人像标识和人像跟踪信息、每个所述手部目标的手部标识和手部跟踪信息中的至少一种信息。在本实施例中,手势控制结果响应装置可以使动作执行装置能够基于手势控制结果执行相应的操作,如调整下位机的输出功能等等。
需要说明的是,本实施例提供的一种摄像设备所涉及各功能单元的其它相应描述,可以参考图1至图6中的对应描述,在此不再赘述。
基于这样的理解,本申请的技术方案可以以软件产品的形式体现出来,该待识别软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U 盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施场景所述的方法。
基于上述如图1至图6所示的装置,以及图7和图8所示的摄像设备实施例,为了实现上述目的,本实施例还提供了一种手势控制的实体设备,具体可以为个人计算机、服务器、智能手机、平板电脑、智能手表、或者其它网络设备等,该实体设备包括存储介质和处理器;存储介质,用于存储计算机程序。
可选的,该实体设备还可以包括用户接口、网络接口、摄像头、射频(RadioFrequency,RF)电路,传感器、音频电路、WI-FI模块等等。用户接口可以包括显示屏(Display)、输入单元比如键盘(Keyboard)等,可选用户接口还可以包括USB接口、读卡器接口等。网络接口可选的可以包括标准的有线接口、无线接口(如WI-FI接口)等。
本领域技术人员可以理解,本实施例提供的一种手势控制的实体设备结构并不构成对该实体设备的限定,可以包括更多或更少的部件,或者组合某些部件,或者不同的部件布置。
存储介质中还可以包括操作系统、网络通信模块。操作系统是管理上述实体设备硬件和待识别软件资源的程序,支持信息处理程序以及其它待识别软件和/或程序的运行。网络通信模块用于实现存储介质内部各组件之间的通信,以及与信息处理实体设备中其它硬件和软件之间通信。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本申请可以借助软件加必要的通用硬件平台的方式来实现,也可以通过硬件实现。通过应用本申请的技术方案,首先通过多类目标检测模块,接收图像预览帧,并对所述图像预览帧进行目标检测,得到至少一个手部目标。然后对每个所述手部目标进行跟踪,得到每个所述手部目标的手部跟踪信息。随后,基于所述手部跟踪信息确定所述手部目标的稳定状态,并根据所述手部目标的稳定状态,判断所述手部目标是否处于手势控制请求状态。再后,通过手型分类模块,对处于所述手势控制请求状态的手部目标进行手型分类,得到与所述手部目标对应的手势类别。最后,通过手势请求类型分析模块,基于所述手势类别与预设的指令手势类型的对比结果,得到手势控制指令。与现有技术相比,上述方案可以有效的减少手势识别过程中对于算力的消耗,降低静态手势识别对于硬件算力的要求,使静态手势识别技术易于在中低端嵌入式平台实施,有效的降低了硬件成本,此外,还能够提高手势识别的准确率。
本领域技术人员可以理解附图只是一个优选实施场景的示意图,附图中的模块或流程并不一定是实施本申请所必须的。本领域技术人员可以理解实施场景中的装置中的模块可以按照实施场景描述进行分布于实施场景的装置中,也可以进行相应变化位于不同于本实施场景的一个或多个装置中。上述实施场景的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
上述本申请序号仅仅为了描述,不代表实施场景的优劣。以上公开的仅为本申请的几个具体实施场景,但是,本申请并非局限于此,任何本领域的技术人员能思之的变化都应落入本申请的保护范围。
Claims (17)
1.一种手势控制装置,其特征在于,所述装置包括:
多类目标检测模块,用于接收图像预览帧,并对所述图像预览帧进行目标检测,得到至少一个手部目标和至少一个人像目标;
手部跟踪模块,用于对所述手部目标进行跟踪,得到所述手部目标的手部跟踪信息;
人像跟踪模块,用于对所述人像目标进行跟踪,得到所述人像目标的人像跟踪信息;
手势请求状态分析模块,用于基于所述手部跟踪信息确定所述手部目标的稳定状态,基于所述人像跟踪信息确定所述人像目标的稳定状态,对所述人像目标和所述手部目标进行数据关联,并根据所述手部目标的稳定状态、人像目标的稳定状态、以及所述人像目标和手部目标的关联数据,判断所述手部目标是否处于手势控制请求状态,其中,所述手势控制请求状态用于表征所述手部目标处于稳定状态,且有人像目标与所述手部目标关联,且与所述手部目标关联的所述人像目标也处于稳定状态;
手型分类模块,用于对处于所述手势控制请求状态的手部目标进行手型分类,得到与所述手部目标对应的手势类别;
手势请求类型分析模块,用于基于所述手势类别与预设的指令手势类型的对比结果,得到手势控制指令,并基于所述人像目标和手部目标的关联数据,确定所述手势控制指令的指令发起者。
2.根据权利要求1所述的装置,其特征在于,所述手势请求状态分析模块包括手部稳定性分析子模块和手势请求状态判别子模块,其中,
所述手部稳定性分析子模块,用于基于所述手部目标的手部跟踪信息,判断所述手部目标的姿态是否稳定,以及判断所述手部目标的目标检测结果是否稳定;
若所述手部目标的姿态稳定,且所述手部目标的目标检测结果稳定,则判定所述手部目标处于稳定状态;
若所述手部目标的姿态不稳定和/或所述手部目标的目标检测结果不稳定,则判定所述手部目标不处于稳定状态;
所述手势请求状态判别子模块,用于在所述手部目标处于稳定状态时,判定所述手部目标处于所述手势控制请求状态。
3.根据权利要求2所述的装置,其特征在于,所述手部稳定性分析子模块,具体用于:
基于所述手部目标的手部跟踪信息,将所述手部目标被创建时的手部目标的目标框作为稳定目标框,将当前数据帧中的所述手部目标的目标框作为当前目标框;
计算所述当前目标框与所述稳定目标框的目标框交并比,并判断所述目标框交并比是否大于预设的交并比阈值;
若所述目标框交并比大于所述交并比阈值,则判定所述手部目标的姿态稳定;
若所述目标框交并比小于等于所述交并比阈值,则将所述当前目标框作为稳定目标框,并判定所述手部目标的姿态不稳定。
4.根据权利要求2所述的装置,其特征在于,所述手部稳定性分析子模块,具体还用于:
基于所述手部目标的手部跟踪信息,确定与所述手部目标对应的目标数据帧组,其中,所述目标数据帧组包括多个数据帧,所述多个数据帧中包括当前数据帧;
获取所述手部目标在所述目标数据帧组内的每个数据帧中的目标框参数;
计算所述手部目标的多个所述目标框参数之间的标准差,并判断所述标准差是否小于预设的标准差阈值;
若所述标准差小于所述标准差阈值,则判定所述手部目标的姿态稳定;
若所述标准差大于等于所述标准差阈值,则判定所述手部目标的姿态不稳定。
5.根据权利要求2所述的装置,其特征在于,所述手部稳定性分析子模块,具体还用于:
获取所述手部目标的手部跟踪信息中的所有数据帧,并统计未包含所述手部目标的数据帧的数量;
根据所述未包含所述手部目标的数据帧的数量,得到丢失帧数量,并判断所述丢失帧数量是否小于预设的丢失帧数量阈值;
若所述丢失帧数量小于所述丢失帧数量阈值,则判定所述手部目标的目标检测结果稳定;
若所述丢失帧数量大于等于所述丢失帧数量阈值,则判定所述手部目标的目标检测结果不稳定。
6.根据权利要求2所述的装置,其特征在于,所述手势请求状态分析模块还包括人像手部关联子模块和人像稳定性分析子模块,其中,
所述人像手部关联子模块,用于针对处于稳定状态的所述手部目标,对所述手部目标和所述人像目标进行数据关联;
所述人像稳定性分析子模块,用于针对与所述手部目标关联的人像目标,基于所述人像目标的人像跟踪信息,判断所述人像目标的姿态是否稳定,并判断所述人像目标的目标检测结果是否稳定;
所述手势请求状态判别子模块,具体用于针对处于稳定状态的所述手部目标,若与所述手部目标关联的人像目标的姿态稳定且目标检测结果稳定,则判定所述手部目标处于瞬时稳定状态;若所述手部目标处于瞬时稳定状态的时长大于预设时长,则判定所述手部目标处于手势控制请求状态。
7.根据权利要求6所述的装置,其特征在于,所述人像手部关联子模块,具体用于:
基于所述图像预览帧中的每个所述人像目标,确定与每个所述人像目标关联的手势候选区域;
针对所述图像预览帧中的每个处于稳定状态的所述手部目标,判断所述手部目标与所述手势候选区域的重叠比例是否超过预设值;
若所述手部目标与所述手势候选区域的重叠比例超过所述预设值,则将所述手部目标与所述手势候选区域对应的人像目标进行数据关联。
8.根据权利要求6所述的装置,其特征在于,所述人像手部关联子模块,还用于:
获取与所述人像目标关联的手部目标的数量,并将与所述人像目标关联的手部目标的数量与预设的人像手部关联阈值进行对比,其中,人像手部关联阈值为一个或两个;
若与所述人像目标关联的手部目标的数量与所述人像手部关联阈值相同,则判定所述手部目标认证成功;
若与所述人像目标关联的手部目标的数量与所述人像手部关联阈值不相同,则判定所述手部目标认证失败。
9.根据权利要求6所述的装置,其特征在于,所述人像稳定性分析子模块,还用于:
对与所述手部目标关联的人脸目标进行人脸识别,并判断所述人脸目标的人脸识别结果是否具有认证权限;
若所述人脸目标的人脸识别结果具有认证权限,则判定所述人像目标认证成功;
若所述人脸目标的人脸识别结果不具有认证权限,则判定所述人像目标认证失败。
10.根据权利要求6-9任一项所述的装置,其特征在于,所述手势请求状态判别子模块,还用于:
针对任一个所述手部目标,在以下至少一种条件满足时,判定所述手部目标未处于所述瞬时稳定状态和/或未处于所述手势控制请求状态:所述手部目标的姿态不稳定、所述手部目标的目标检测结果不稳定、所述手部目标认证失败、所述手部目标未与任一个所述人像目标关联、与所述手部目标关联的人像目标的姿态不稳定、与所述手部目标关联的人像目标的目标检测结果不稳定、与所述手部目标关联的人像目标认证失败;
若所述手部目标未处于所述瞬时稳定状态,则对所述手部目标处于瞬时稳定状态的时长进行清零操作。
11.根据权利要求1所述的装置,其特征在于,所述手型分类模块,具体用于:
基于处于所述手势控制请求状态的手部目标的目标框,在所述图像预览帧中裁剪出至少一个手部图像;
将所述手部图像输入到预先训练的分类网络模型中,得到与所述手部目标对应的手势类别,其中,所述分类网络模型基于手部图像样本和手型类别标签训练得到。
12.根据权利要求1所述的装置,其特征在于,所述手部目标包括单手手部目标和/或粘连型手部目标,所述手势控制指令的指令类型包括单手手势控制指令和/或粘连型手势控制指令。
13.根据权利要求1所述的装置,其特征在于,所述多类目标检测模块分别与所述人像跟踪模块和所述手部跟踪模块连接,所述人像跟踪模块和所述手部跟踪模块分别与所述手势请求状态分析模块连接,所述手势请求状态分析模块分别与所述手型分类模块和所述手势请求类型分析模块连接,所述手型分类模块与所述手势请求类型分析模块连接。
14.根据权利要求1所述的装置,其特征在于,所述装置还包括手势控制结果输出模块和/或手势控制结果响应模块,其中,
所述手势控制结果输出模块分别与所述人像跟踪模块、所述手部跟踪模块和所述手势请求类型分析模块连接,用于输出手势控制结果;
所述手势控制结果响应模块分别与所述人像跟踪模块、所述手部跟踪模块和所述手势请求类型分析模块连接,用于将所述手势控制结果发送至与所述手势控制装置连接的动作执行装置中;
其中,所述手势控制结果包括所述手势控制指令、所述手势控制指令的指令类型和指令发起者、所述指令发起者对应的人像目标和手部目标、所述图像预览帧中的所有人像目标、所述图像预览帧中的所有手部目标、每个所述人像目标的人像标识和人像跟踪信息、每个所述手部目标的手部标识和手部跟踪信息中的至少一种信息。
15.一种摄像设备,其特征在于,所述摄像设备包括图像采集装置、动作执行装置以及如权利要求1-14任一项所述的手势控制装置,其中,
所述图像采集装置,用于采集图像预览帧,并将所述图像预览帧发送至所述手势控制装置中;
所述手势控制装置,用于接收所述图像预览帧,并对所述图像预览帧进行目标检测和手势识别,得到手势控制指令;
所述动作执行装置,用于执行与所述手势控制指令相对应的动作。
16.根据权利要求15所述的摄像设备,其特征在于,所述图像采集装置的输出端与所述手势控制装置的输入端连接,所述手势控制装置的输出端与所述动作执行装置的输入端连接。
17.根据权利要求16所述的摄像设备,其特征在于,所述摄像设备还包括手势控制结果响应装置,其中,
所述手势控制结果响应装置连接在所述手势控制装置的输出端和所述动作执行装置的输入端之间,用于将所述手势控制装置输出的手势控制结果发送至所述动作执行装置中,其中,所述手势控制结果包括所述手势控制指令的指令类型和指令发起者、所述指令发起者对应的人像目标和手部目标、目标数据帧中的所有人像目标、所述目标数据帧中的所有手部目标、每个所述人像目标的人像标识和人像跟踪信息、每个所述手部目标的手部标识和手部跟踪信息中的至少一种信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210976199.6A CN115421591B (zh) | 2022-08-15 | 2022-08-15 | 手势控制装置和摄像设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210976199.6A CN115421591B (zh) | 2022-08-15 | 2022-08-15 | 手势控制装置和摄像设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115421591A CN115421591A (zh) | 2022-12-02 |
CN115421591B true CN115421591B (zh) | 2024-03-15 |
Family
ID=84197573
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210976199.6A Active CN115421591B (zh) | 2022-08-15 | 2022-08-15 | 手势控制装置和摄像设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115421591B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117111873B (zh) * | 2023-10-23 | 2024-01-09 | 南昌市一境信息技术有限公司 | 一种基于cave环境的沉浸交互系统 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106326870A (zh) * | 2016-08-27 | 2017-01-11 | 上海盟云移软网络科技股份有限公司 | 一种虚拟现实系统的手部动作捕捉方法 |
CN108596092A (zh) * | 2018-04-24 | 2018-09-28 | 亮风台(上海)信息科技有限公司 | 手势识别方法、装置、设备和存储介质 |
CN110716648A (zh) * | 2019-10-22 | 2020-01-21 | 上海商汤智能科技有限公司 | 手势控制方法和装置 |
CN110781761A (zh) * | 2019-09-29 | 2020-02-11 | 哈尔滨工程大学 | 一种具有监督环节的指尖实时跟踪方法 |
CN111857356A (zh) * | 2020-09-24 | 2020-10-30 | 深圳佑驾创新科技有限公司 | 识别交互手势的方法、装置、设备和存储介质 |
CN111880660A (zh) * | 2020-07-31 | 2020-11-03 | Oppo广东移动通信有限公司 | 显示画面的控制方法、装置、计算机设备和存储介质 |
CN113253847A (zh) * | 2021-06-08 | 2021-08-13 | 北京字节跳动网络技术有限公司 | 终端的控制方法、装置、终端和存储介质 |
CN113553887A (zh) * | 2020-04-26 | 2021-10-26 | 华为技术有限公司 | 一种基于单目摄像头的活体检测方法、设备和可读存储介质 |
CN113946216A (zh) * | 2021-10-18 | 2022-01-18 | 阿里云计算有限公司 | 人机交互方法、智能设备、存储介质及程序产品 |
CN114879846A (zh) * | 2022-05-23 | 2022-08-09 | 北京字跳网络技术有限公司 | 触发位置的确定方法、装置、设备及介质 |
-
2022
- 2022-08-15 CN CN202210976199.6A patent/CN115421591B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106326870A (zh) * | 2016-08-27 | 2017-01-11 | 上海盟云移软网络科技股份有限公司 | 一种虚拟现实系统的手部动作捕捉方法 |
CN108596092A (zh) * | 2018-04-24 | 2018-09-28 | 亮风台(上海)信息科技有限公司 | 手势识别方法、装置、设备和存储介质 |
CN110781761A (zh) * | 2019-09-29 | 2020-02-11 | 哈尔滨工程大学 | 一种具有监督环节的指尖实时跟踪方法 |
CN110716648A (zh) * | 2019-10-22 | 2020-01-21 | 上海商汤智能科技有限公司 | 手势控制方法和装置 |
CN113553887A (zh) * | 2020-04-26 | 2021-10-26 | 华为技术有限公司 | 一种基于单目摄像头的活体检测方法、设备和可读存储介质 |
CN111880660A (zh) * | 2020-07-31 | 2020-11-03 | Oppo广东移动通信有限公司 | 显示画面的控制方法、装置、计算机设备和存储介质 |
CN111857356A (zh) * | 2020-09-24 | 2020-10-30 | 深圳佑驾创新科技有限公司 | 识别交互手势的方法、装置、设备和存储介质 |
CN113253847A (zh) * | 2021-06-08 | 2021-08-13 | 北京字节跳动网络技术有限公司 | 终端的控制方法、装置、终端和存储介质 |
CN113946216A (zh) * | 2021-10-18 | 2022-01-18 | 阿里云计算有限公司 | 人机交互方法、智能设备、存储介质及程序产品 |
CN114879846A (zh) * | 2022-05-23 | 2022-08-09 | 北京字跳网络技术有限公司 | 触发位置的确定方法、装置、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN115421591A (zh) | 2022-12-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9104242B2 (en) | Palm gesture recognition method and device as well as human-machine interaction method and apparatus | |
KR102465532B1 (ko) | 객체 인식 방법 및 장치 | |
US10318797B2 (en) | Image processing apparatus and image processing method | |
CN110434853B (zh) | 一种机器人控制方法、装置及存储介质 | |
US8582037B2 (en) | System and method for hand gesture recognition for remote control of an internet protocol TV | |
CN105825524A (zh) | 目标跟踪方法和装置 | |
CN102200830A (zh) | 基于静态手势识别的非接触控制系统和控制方法 | |
EP2840527A1 (en) | Image processing device and image processing method | |
CN109325456A (zh) | 目标识别方法、装置、目标识别设备及存储介质 | |
KR102530516B1 (ko) | 자동 수어 인식 방법 및 시스템 | |
US11429985B2 (en) | Information processing device calculating statistical information | |
CN115421591B (zh) | 手势控制装置和摄像设备 | |
CN111860082A (zh) | 信息处理方法、装置以及系统 | |
US20140369559A1 (en) | Image recognition method and image recognition system | |
CN112580472A (zh) | 一种快速轻量的人脸识别方法、装置、机器可读介质及设备 | |
CN115421590B (zh) | 一种手势控制方法、存储介质及摄像设备 | |
CN111986229A (zh) | 视频目标检测方法、装置及计算机系统 | |
CN115565241A (zh) | 手势识别对象确定方法及装置 | |
CN114257824A (zh) | 直播显示方法、装置、存储介质及计算机设备 | |
CN113282164A (zh) | 一种处理方法和装置 | |
Ueng et al. | Vision based multi-user human computer interaction | |
CN111007974A (zh) | 基于触摸笔的交互方法、终端及可读存储介质 | |
US11314968B2 (en) | Information processing apparatus, control method, and program | |
CN110007748B (zh) | 终端的控制方法、处理装置、存储介质及终端 | |
CN115061577A (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 |