CN114253395B - 一种用于电视控制的手势识别系统及其识别方法 - Google Patents
一种用于电视控制的手势识别系统及其识别方法 Download PDFInfo
- Publication number
- CN114253395B CN114253395B CN202111332445.6A CN202111332445A CN114253395B CN 114253395 B CN114253395 B CN 114253395B CN 202111332445 A CN202111332445 A CN 202111332445A CN 114253395 B CN114253395 B CN 114253395B
- Authority
- CN
- China
- Prior art keywords
- gesture
- module
- hand
- palm
- detection
- 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
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
- 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
-
- 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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Biophysics (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Software Systems (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Human Computer Interaction (AREA)
- User Interface Of Digital Computer (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种用于电视控制的手势识别系统及其识别方法,手势识别系统包括用于输入图像数据的图像输入模块、用于检测图像数据中手掌的手掌检测模块、手掌关键点定位模块、手势识别模块和结果输出模块,手势识别方法为基于手势识别系统进行手势识别并控制电视;本发明通过电视机顶盒预设的摄像头等图像采集设备采集数据,使用图像识别算法,识别出手型,转换成相应的电视操控命令,如播放/暂停、静音/播放、快进、快退等功能,不需要遥控器就可以随时随地的快速控制电视;本发明具有手势识别算法速度快、精度高,实用性相对更佳且体验也更好的优点。
Description
技术领域
本发明涉及手势识别领域,特别是一种用于电视控制的手势识别系统及其识别方法。
背景技术
目前电视的播放、快进等功能基本都是通过遥控器完成。但是遥控器时常会出现不在身边或者找不到等情况,可以通过手势控制替代遥控器的部分功能,随时随地控制电视,提升用户体验。
手势控制技术是指通过各种传感器采集能表征手势特征的数据,再结合算法,将展示的手势特征数据映射到提前设定的手势类型上,每种不同的手势,给定不同的执行命令,通过执行器,即可达到手势控制的目的。
手势控制电视的一种技术方案是通过电视机顶盒中的预设的摄像头采集图像数据,使用视觉算法技术,识别出对应的手势,转换成相应的电视操控命令。
目前的手势识别主要有以下方案:
1、通过传感器直接采集手势姿态的数据,如使用手套,通过组合各种传感器的数据即可直接识别出手势。
2、使用摄像头采集图像,再使用图像识别技术识别出手势,该方法主要有
a.直接使用传统图像识别技术,二值化找轮廓识别,或者使用hog+svm等进行识别。
b.使用目标检测算法直接检测手并分出类别,可以是一阶段或多阶段目标检测。
c.分别使用模型检测手掌并得到关键点,根据得到的关键点设计规则或者使用模板匹配方法判断出手型。
d.其他一些算法综合使用降低误识别,如结合人体姿态和热力图等。
但是上述的这些现有方案均存在各自的问题:
1、通过手套采集信号的情况,成本较高,动辄上万,该手套需要实体和手接触,和电视遥控器并无区别,不适用于电视控制;
2、对于使用图像算法的手势识别技术:
a.没有对无效的检测手进行过滤,会导致无效的关键点检测和手势识别,引起更多误检问题,同时浪费算力,降低算法实时性;
b.当图像中手较多时,不能很好的跟踪识别有效手势,且识别算法运行时间随着手个数增加而增加,无法达到实时性;
c.对于识别的结果没有后处理操作,直接输出结果,误检较多,实际使用体验感差。
所以,现有控制电视的手势识别方法均存在很大的不足,其实用性不高且体验较差。
发明内容
本发明的目的在于,提供一种用于电视控制的手势识别系统及其识别方法。本发明具有手势识别算法速度快、精度高,实用性相对更佳且体验也更好的优点。
本发明的技术方案:一种用于电视控制的手势识别系统,包括用于输入图像数据的图像输入模块、用于检测图像数据中手掌的手掌检测模块、手掌关键点定位模块、手势识别模块和结果输出模块;
所述手掌检测模块包括用于检测并计算手的位置的检测计算模块和用于手过滤的过滤模块;
所述人手关键点定位模块包括匹配模块、调度模块和关键点检测模块;
所述手势识别模块包括规则模块和滤波模块;
所述结果输出模块用于输出经滤波模块滤波处理后的最终输出手势。
前述的用于电视控制的手势识别系统中,系统流程如下:
A、图像输入模块输入图像数据;
B1、检测计算模块检测图像数据中的手掌并计算手的位置;
B2、过滤模块过滤掉无效的手;
C1、匹配模块匹配并更新人手包围盒;所述人手包围盒包括手掌和手指;
C2、调度模块调度指定数量的手进行关键点检测;
C3、关键点检测模块使用关键点测模型检测调度后的手,得到手的21个关键点;
D1、手势识别模块将手的关键点分类呈预设的手势类型;
D2、规则模块结合手型方向和相关的手势规则过滤疑似手型;
D3、滤波模块对手势识别模块输出的结果进行滤波;
E、结果输出模块输出最终的输出手势。
前述的用于电视控制的手势识别系统中,步骤A所述的图像输入模块输入图像数据,其具体内容为:
从摄像头等图像获取设备中获取当前帧图像数据,经过预处理后输入检测计算模块;
所述预处理具体为将图像数据处理为模型输入的数据大小和类型,输入720p的数据需要先resize再pad到模型的输入大小256*128,再减去图像的均值并归一化到0-1之间输入模型进行推理。
前述的用于电视控制的手势识别系统中,所述手掌检测模块使用轻量化目标检测模型,输出手掌的包围矩形、置信度分数以及手掌的七个关键点的位置;所述手掌的包围矩形只包括手掌;
所述轻量化目标检测模型的具体内容为:在SSD的检测框架上结合mobilenet模块设计,使用depthwise convolution配合卷积核进行特征提取,将输入数据处理后输出为两个不同尺寸的特征图;在特征图下每个点采用不同尺寸的正方形anchor;特征图上的每个点回归十八个点并输出手掌的置信度分数;
所述手掌检测模块使用手掌检测网络输出手掌的7个关键点和置信度分数;所述手掌检测网络可以是mebilenet、ssd、yolo等模型或其他网络;
所述检测计算模块根据求得的手掌的七个关键点计算出当前手的旋转角度;
手掌中指和腕部的关键点构成向量A,向量A与y轴的夹角为手的旋转角度;设包围矩形的中心坐标为(cx1,cy1),宽、高分别为w1、h1;将cy1向手指方向偏移,得到手的中心坐标为(cx2,cy2),将w1、w2乘以一定系数,得到手的宽高w2、h2;输出手的中心坐标、手的旋转角度、手的宽和高;
所述过滤模块以手掌的七个关键点和求得的手的宽为基础,过滤掉朝向向下和宽过小的手;
满足(y1-y2)/w>0.2的为朝向向上的,其中y1为五个手指关键点高度方向y的均值,y2为手掌腕部关键点在高度方向的值,w手掌的宽度。
前述的用于电视控制的手势识别系统中,所述匹配模块对人手的位置在相邻帧进行跟踪并将上一帧检测的手和当前帧检测的手进行合并,合并后的手使用IOU进行匹配;若IOU大于阈值0.5,则上一帧的手覆盖当前帧的手并输出;反之IOU不大于阈值0.5,则同时输出上一帧和当前帧的手;所述匹配模块能增强手掌检测的稳定性解决部分目标漏检的问题。
前述的用于电视控制的手势识别系统中,所述调度模块通过一个缓存池,将每帧检测到的有效手(匹配模块输出)加入缓存池中,加入时和缓存池中的有效手进行匹配,匹配成功缓存池中的有效手替换为当前帧的有效手,匹配失败则直接加入到缓存池中,保证缓存池中的目标都是最新帧的手;上一帧的手势结果反馈到当前帧,对于上一帧的有效手势施加奖励,无效的手势施加惩罚,再结合手的分数、大小以及中心度等选取适合电视机顶盒性能的检测个数,以保证在手数目较多时既能实时响应又能保证每一个手都有机会进行关键点检测并识别,对于识别到的手势通过奖励跟踪检测,保证有效手势快速稳定的检出并识别;
所述调度模块的具体流程如下:
C2.1加入检测数据:将上一帧的手势检测结果、检测数据和当前帧的检测数据一起加入缓存池;所述手势检测结果为手势的类型包括快进、快退、播放/暂停、静音/开音和无效,所述检测数据包括手的旋转矩形框、手的ROI图像数据、当前帧的时间戳和置信度分数;所述时间戳可通过读取系统时间取得,用来计算进入缓存池的持续时间;
C2.2缓存池清理:对于缓存池中待检的手势检测数据进行清理,删除时间戳距离当前时刻超过预设的超时时间t1的所有手势检测数据及预设时间t2内未被匹配过的手势检测数据;
C2.3判断缓存池是否已满:设定缓存池最大容量并判断是否已满,若已满,执行步骤C2.4,反之则执行步骤C2.5;
C2.4清理目标:清理匹配次数最少的手势检测数据直至缓存池未满;
C2.5目标匹配:将当前帧待加入的手势检测数据和缓存池中的手势检测数据进行逐一匹配,匹配IOU大于IOU阈值时,当前帧的手势检测数据替换缓存池中被匹配的手势检测数据,手势检测数据的等待时间不替换;未被匹配的手势检测数据直接加入缓存池中,等待时间初始化为0;
C2.6获取待检目标:上一帧的手势结果反馈到当前帧,上一帧有效的手势检测数据施加奖励,无效的手势检测数据施加惩罚,结合手的分数、大小及中心度选取检测个数,对识别到的手势通过奖励跟踪检测,检出并识别有效手势;
C2.7更新等待时间:缓存池中未被选取的待检目标等待时间加1。
前述的用于电视控制的手势识别系统中,步骤C2.6获取待检目标中施加奖励和施加惩罚的具体内容为:对于上一帧的手势结果是快进、快退、播放/暂停、静音/开音的(即有效手势),手的结构体分数加上对应奖励比例的分数;对于无效手势,手的结构体分数减去对应惩罚比例的分数。
前述的用于电视控制的手势识别系统中,步骤C2.6获取待检目标中结合手的分数、大小及中心度选取检测个数的具体内容为:
设定手的结构体分数为score、分数比例SR为1、大小取手的矩形框的宽为width、宽度比例WR为5、手的矩形框中心(x_cenetr,y_center)、中心度比例CR为2、奖励比例RR为10、惩罚比例PR为2、等待时间time、等待时间比例TR为1;
对于上一帧的手势结果是有效手势的,调度分数=score*SR+width*WR-|x_center-0.5|*CR-|y_center-0.5|*CR+RR+time*TR;
对于上一帧的手势结果是无效手势的,调度分数=score*SR+width*WR-|x_center-0.5|*CR-|y_center-0.5|*CR-PR+time*TR;
计算缓存池中所有的待检手的调度分数,将调度分数排序后,选取指定个数的高调度分数的待检手。
前述的用于电视控制的手势识别系统中,所述关键点检测模块将调度模块得出的待检目标结合关键点检测模型进行手的21个关键点检测,输出手的21个关键点、左右手类型和关键点的分数;21个关键点可以是2D或3D坐标;
所述关键点检测模型通过特征提取网络提取特征后,使用三个分支分别输出关键点位置、左右手标签、关键点分数;所述关键点的分数为是否有手的分数,变成一个分类问题,就是分类的分数;关键点的分数没有目标值,无法监督训练,因此采用是否有手的分类分数进行替代;
所述特征提取网络包括mobilelite。
前述的用于电视控制的手势识别系统中,所述手势识别模块采用基于MLP的神经网络,将手关键点坐标原点平移到手腕处,再将手的21个关键点的三维归一化坐标值输入MLP中输出手势类别,除有效手势类型外全部作为无效手势类型;所述有效手势类型包括快进、快退、播放/暂停和静音/开音。
前述的用于电视控制的手势识别系统中,所述规则模块能结合手型方向规则和手势规则过滤疑似手型,降低误判;
所述手型方向规则能通过手掌法向量拟合判断手掌的朝向,过滤非意图的手势,降低错误触发;
所述手势规则能对通过手型方向规则筛选的手势,继续过滤疑似手型。
前述的用于电视控制的手势识别系统中,针对复杂背景或者移动小物体导致的虚警问题,所述滤板模块能有效滤除虚警,保证手势的可靠和稳定,其具体流程如下:
D3.1信息过滤:对输入的数据信息进行过滤,滤除手势分数小于0.5的数据信息和非有效手势;所述非有效手势为手势识别模块输出的背景类;
D3.2历史记录超时擦除:当历史记录中的存储时间超过超时时间t1时,将该条历史记录清除;
D3.3历史记录为空判断:不为空,执行步骤D3.4;为空,执行步骤D3.9;
D3.4和历史记录匹配:对当前帧的每一个手势都在历史记录中遍历匹配;
D3.5历史次数满足判断:判断手势的匹配次数是否大于C1,若是,执行步骤D3.6;若否,执行步骤D3.9;所述C1为历史记录匹配次数阈值;
D3.6持续时间满足判断:判断当前帧的手势在历史记录中的持续时间是否大于t2,若是,执行步骤D3.7;若否,则执行步骤D3.9;所述t2为该类型的手势在历史记录中记录的最早时间到当前手势的时间差阈值;
D3.7加入历史记录;
D3.8输出结果:输出手势,结束流程;
D3.9输出为空:输出空值,结束流程。
前述的用于电视控制的手势识别系统中,步骤D3.4和历史记录匹配的具体匹配方式为:判断手势位置是否匹配,手势类型是否匹配,手势位置和手势类型都匹配则匹配次数加1,否则和历史记录中的下一条记录进行匹配,直到当前帧的所有手势和历史记录中的所有手势都匹配完毕。
一种用于电视控制的手势识别方法,基于一种用于电视控制的手势识别系统进行手势识别并实现电视的控制。
与现有技术相比,本发明通过电视机顶盒预设的摄像头等图像采集设备采集数据,使用图像识别算法,识别出手型,转换成相应的电视操控命令,如播放/暂停、静音/播放、快进、快退等功能,不需要遥控器就可以随时随地的快速控制电视;
通过加入过滤模块、匹配模块、调度模块、规则模块以及滤波模块,使得手势识别算法速度快、精度高、效果好;
调度模块能在用户体验和系统流畅性之间取得良好的平衡,保证了用户体验;
过滤模块、匹配模块、调度模块、手势识别模块及规则模块的相互结合作用,对用户意图进行多重判断,降低错误触发,增强识别的稳定性。
因此,本发明具有手势识别算法速度快、精度高,实用性相对更佳且体验也更好的优点
附图说明
图1是本发明的系统流程图;
图2是本发明的调度模块流程图;
图3是本发明的滤波模块流程图;
图4是本发明实施例中手掌7个关键点的位置图;
图5是本发明实施例中的手的21个关键点的位置图;
图6是本发明实施例中的手掌法向量判断方向示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的说明,但并不作为对本发明限制的依据。
实施例。一种用于电视控制的手势识别系统,如图1-3所示,包括用于输入图像数据的图像输入模块、用于检测图像数据中手掌的手掌检测模块、手掌关键点定位模块、手势识别模块和结果输出模块;
所述手掌检测模块包括用于检测并计算手的位置的检测计算模块和用于手过滤的过滤模块;
所述人手关键点定位模块包括匹配模块、调度模块和关键点检测模块;
所述手势识别模块包括规则模块和滤波模块;
所述结果输出模块用于输出经滤波模块滤波处理后的最终输出手势。
系统流程如下:
A、图像输入模块输入图像数据;
B1、检测计算模块检测图像数据中的手掌并计算手的位置;
B2、过滤模块过滤掉无效的手;
C1、匹配模块匹配并更新人手包围盒;
C2、调度模块调度指定数量的手进行关键点检测;
C3、关键点检测模块使用关键点测模型检测调度后的手,得到手的21个关键点;
D1、手势识别模块将手的关键点分类呈预设的手势类型;
D2、规则模块结合手型方向和相关的手势规则过滤疑似手型;
D3、滤波模块对手势识别模块输出的结果进行滤波;
E、结果输出模块输出最终的输出手势。
步骤A所述的图像输入模块输入图像数据,其具体内容为:
从摄像头等图像获取设备中获取当前帧图像数据,经过预处理后输入检测计算模块;
所述预处理具体为将图像数据处理为模型输入的数据大小和类型,输入720p的数据需要先resize再pad到模型的输入大小256*128,再减去图像的均值并归一化到0-1之间输入模型进行推理。
所述手掌检测模块使用轻量化目标检测模型,输出手掌的包围矩形、置信度分数以及手掌的7个关键点的位置,见附图4;
所述轻量化目标检测模型的具体内容为:在SSD的检测框架上,加入了mobilenet的模块设计,使用5*5的更大感受野的depthwise convolution配合1*1的卷积核进行特征提取加速,原本的SSD六个尺度下的级联特征改为两个尺度的级联特征,输入为256*128的尺寸下,最后两个特征图尺寸为32*16和16*8,使用正方形的anchor,在32*16的特征图下每个点采用2个不同尺寸的anchor,在16*8的特征图下每个点采用6个不同尺寸的anchor,共计1792个anchor;两个级联的特征图上的每个点回归十八个点和输出手掌的置信度分数;
特征图上的每个点两个分支分别输出十八个点和手掌的置信度分数,十八个点前四个点用于解码手掌的包围矩形,后十四个点用以解码手掌七个关键点的位置;
手掌的包围矩形解码过程如下:四个点的前两个点为该包围矩形的中心点(x,y)和预先生成的anchor中心点偏差,四个点的后两个点为该包围矩形宽高和预先生成的anchor宽高的比值,通过中心点和宽高即可计算出包围矩形的位置;
七个关键点位置解码如下:后十四个点每两个点一组,为关键点(x,y)和预先生成的anchor宽高的比值;
所述置信度分数即为目标检测中目标的分类分数;
所述检测计算模块根据求得的手掌的七个关键点计算出当前手的旋转角度;
手掌的关键点0->2构成向量A,向量A与y轴的夹角为手的旋转角度;设包围矩形的中心坐标为(cx1,cy1),宽、高分别为w1、h1;将cy1向手指方向偏移,得到手的中心坐标为(cx2,cy2),将w1、w2乘以一定系数,得到手的宽高w2、h2;输出手的中心坐标、手的旋转角度、手的宽和高;
所述过滤模块以手掌的七个关键点和求得的手的宽为基础,过滤掉朝向向下和宽过小的手;
满足(y1-y2)/w>0.2的为朝向向上的,其中y1为手掌的关键点{1,2,3,4}高度方向y的均值,y2为手掌的关键点{0}在高度方向的值,w手掌的宽度。
所述匹配模块对人手的位置在相邻帧进行跟踪并将上一帧检测的手和当前帧检测的手进行合并,合并后的手使用IOU进行匹配;若IOU大于阈值0.5,则上一帧的手覆盖当前帧的手并输出;反之IOU不大于阈值0.5,则同时输出上一帧和当前帧的手;所述匹配模块能增强手掌检测的稳定性解决部分目标漏检的问题。
所述调度模块通过一个缓存池,将每帧检测到的有效手(匹配模块输出)加入缓存池中,加入时和缓存池中的有效手进行匹配,匹配成功缓存池中的有效手替换为当前帧的有效手,匹配失败则直接加入到缓存池中,保证缓存池中的目标都是最新帧的手;上一帧的手势结果反馈到当前帧,对于上一帧的有效手势施加奖励,无效的手势施加惩罚,再结合手的分数、大小以及中心度等选取适合电视机顶盒性能的检测个数,以保证在手数目较多时既能实时响应又能保证每一个手都有机会进行关键点检测并识别,对于识别到的手势通过奖励跟踪检测,保证有效手势快速稳定的检出并识别;
所述调度模块的具体流程如下:
C2.1加入检测数据:将上一帧的手势检测结果、检测数据和当前帧的检测数据一起加入缓存池;所述手势检测结果为手势的类型包括快进、快退、播放/暂停、静音/开音和无效,所述检测数据包括手的旋转矩形框、手的ROI图像数据、当前帧的时间戳和置信度分数;所述时间戳可通过读取系统时间取得,用来计算进入缓存池的持续时间;
C2.2缓存池清理:对于缓存池中待检的手势检测数据进行清理,删除时间戳距离当前时刻超过预设的超时时间t1的所有手势检测数据及预设时间t2内未被匹配过的手势检测数据;
C2.3判断缓存池是否已满:设定缓存池最大容量并判断是否已满,若已满,执行步骤C2.4,反之则执行步骤C2.5;
C2.4清理目标:清理匹配次数最少的手势检测数据直至缓存池未满;
C2.5目标匹配:将当前帧待加入的手势检测数据和缓存池中的手势检测数据进行逐一匹配,匹配IOU大于IOU阈值时,当前帧的手势检测数据替换缓存池中被匹配的手势检测数据,手势检测数据的等待时间不替换;未被匹配的手势检测数据直接加入缓存池中,等待时间初始化为0;
C2.6获取待检目标:上一帧的手势结果反馈到当前帧,上一帧有效的手势检测数据施加奖励,无效的手势检测数据施加惩罚,结合手的分数、大小及中心度选取检测个数,对识别到的手势通过奖励跟踪检测,检出并识别有效手势;
C2.7更新等待时间:缓存池中未被选取的待检目标等待时间加1。
步骤C2.6获取待检目标中施加奖励和施加惩罚的具体内容为:对于上一帧的手势结果是快进、快退、播放/暂停、静音/开音的(即有效手势),手的结构体分数加上对应奖励比例的分数;对于无效手势,手的结构体分数减去对应惩罚比例的分数。
步骤C2.6获取待检目标中结合手的分数、大小及中心度选取检测个数的具体内容为:
设定手的结构体分数为score、分数比例SR为1、大小取手的矩形框的宽为width、宽度比例WR为5、手的矩形框中心(x_cenetr,y_center)、中心度比例CR为2、奖励比例RR为10、惩罚比例PR为2、等待时间time、等待时间比例TR为1;
对于上一帧的手势结果是有效手势的,调度分数=score*SR+width*WR-|x_center-0.5|*CR-|y_center-0.5|*CR+RR+time*TR;
对于上一帧的手势结果是无效手势的,调度分数=score*SR+width*WR-|x_center-0.5|*CR-|y_center-0.5|*CR-PR+time*TR;
计算缓存池中所有的待检手的调度分数,将调度分数排序后,选取指定个数的高调度分数的待检手。
所述关键点检测模块将调度模块得出的待检目标结合关键点检测模型进行手的21个关键点检测,输出手的21个关键点、左右手类型和关键点的分数;21个关键点可以是2D或3D坐标;手的21个关键点位置见附图5;
所述关键点检测模型通过特征提取网络mobilelite提取特征后,使用三个分支分别输出关键点位置、左右手标签、关键点分数;所述关键点的分数为是否有手的分数,变成一个分类问题,就是分类的分数。
手的21个关键点位置,具体为:0、手腕关节点1、大拇指指掌关节点2、大拇指第一指间关节点3、大拇指第二指间关节点4、大拇指指尖5、食指指掌关节点6、食指第一指间关节点7、食指第二指间关节点8、食指指尖9、中指指掌关节点10、中指第一指间关节点11、中指第二指间关节点12、中指指尖13、无名指指掌关节点14、无名指第一指间关节点15、无名指第二指间关节点16、无名指指尖17、小指指掌关节点18、小指第一指间关节点19、小指第二指间关节点20、小指指尖。
所述手势识别模块采用基于MLP的神经网络,将手关键点坐标原点平移到手腕处,再将手的21个关键点的三维归一化坐标值输入MLP中输出手势类别,除有效手势类型外全部作为无效手势类型;所述有效手势类型包括快进、快退、播放/暂停和静音/开音。
所述规则模块能结合手型方向规则和手势规则过滤疑似手型,降低误判;
所述手型方向规则能通过手掌法向量拟合判断手掌的朝向,过滤非意图的手势,降低错误触发;所述手掌法向量判断方向示意图见附图6;具体内容如下:
根据手的关键点,令关键点5->17构成向量v1,0->9构成向量v2,使用外积求出v1和v2的垂线为z,那么z即为手掌平面拟合出的法向量,可以根据手掌拟合出的法向量过滤一些非意图的手势,降低错误触发;
对于手势分类结果执行以下操作:
对于快进和快退手势,期望的手掌法向量平行摄像头方向,摄像头方向为关键点的z轴,计算手掌法向量方向,设定角度阈值30,当法向量与z轴夹角绝对值小于30度时,为有效手势,否则进行过滤;
对于播放手势,期望的手掌法向量与摄像头夹角为45度,摄像头方向为关键点的z轴,计算手掌法向量方向,设定角度阈值20,当法向量与z轴夹角绝对值小于65度大于25度时,为有效手势,否则进行过滤;
对于静音手势,期望的手掌法向量垂直摄像头,摄像头方向为关键点的z轴,计算手掌法向量方向,设定角度阈值30,当法向量与z轴夹角绝对值小于120度大于60度时,为有效手势,否则进行过滤;
所述手势规则能对通过手型方向规则筛选的手势,继续过滤疑似手型,具体内容如下:
对于快进手势,计算关键点4和6之间的距离为d1,手的宽度为w1,计算关键点2->4构成的向量与x轴正向夹角为ang1,那么对于满足条件:d1>w1*0.3且ang1<70则通过规则,否则为无效手势进行过滤;
对于快退手势,计算关键点4和6之间的距离为d2,手的宽度为w1,计算关键点2->4构成的向量与x轴负向夹角为ang2,那么对于满足条件:d2>w1*0.3且ang2<70则通过规则,否则为无效手势进行过滤;
对于静音手势,计算关键点5和8之间的距离为d3,手的宽度为w1,计算关键点d1>w1*0.8则通过规则,否则为无效手势进行过滤。
针对复杂背景或者移动小物体导致的虚警问题,所述滤板模块能有效滤除虚警,保证手势的可靠和稳定,其具体流程如下:
D3.1信息过滤:对输入的数据信息进行过滤,滤除手势分数小于0.5的数据信息和非有效手势;所述非有效手势为手势识别模块输出的背景类;
D3.2历史记录超时擦除:当历史记录中的存储时间超过超时时间t1时,将该条历史记录清除;
D3.3历史记录为空判断:不为空,执行步骤D3.4;为空,执行步骤D3.9;
D3.4和历史记录匹配:对当前帧的每一个手势都在历史记录中遍历匹配;
D3.5历史次数满足判断:判断手势的匹配次数是否大于C1,若是,执行步骤D3.6;若否,执行步骤D3.9;所述C1为历史记录匹配次数阈值;
D3.6持续时间满足判断:判断当前帧的手势在历史记录中的持续时间是否大于t2,若是,执行步骤D3.7;若否,则执行步骤D3.9;所述t2为该类型的手势在历史记录中记录的最早时间到当前手势的时间差阈值;
D3.7加入历史记录;
D3.8输出结果:输出手势,结束流程;
D3.9输出为空:输出空值,结束流程。
步骤D3.4和历史记录匹配的具体匹配方式为:判断手势位置是否匹配,手势类型是否匹配,手势位置和手势类型都匹配则匹配次数加1,否则和历史记录中的下一条记录进行匹配,直到当前帧的所有手势和历史记录中的所有手势都匹配完毕。
一种用于电视控制的手势识别方法,基于上述的一种用于电视控制的手势识别系统进行手势识别并实现电视的控制。
Claims (7)
1.一种用于电视控制的手势识别系统,其特征在于:包括用于输入图像数据的图像输入模块、用于检测图像数据中手掌的手掌检测模块、手掌关键点定位模块、手势识别模块和结果输出模块;
所述手掌检测模块包括用于检测并计算手的位置的检测计算模块和用于手过滤的过滤模块;
所述手掌关键点定位模块包括匹配模块、调度模块和关键点检测模块;
所述手势识别模块包括规则模块和滤波模块;
所述结果输出模块用于输出经滤波模块滤波处理后的最终输出手势;
所述手掌检测模块使用轻量化目标检测模型,输出手掌的包围矩形、置信度分数以及手掌的七个关键点的位置;所述手掌的包围矩形只包括手掌;
所述检测计算模块根据求得的手掌的七个关键点计算出当前手的旋转角度;
所述过滤模块以手掌的七个关键点和求得的手的宽为基础,过滤掉朝向向下和宽过小的手;
所述匹配模块对人手的位置在相邻帧进行跟踪并将上一帧检测的手和当前帧检测的手进行合并,合并后的手使用IOU进行匹配;若IOU大于阈值0.5,则上一帧的手覆盖当前帧的手并输出;反之IOU不大于阈值0.5,则同时输出上一帧和当前帧的手;
系统流程如下:
A、图像输入模块输入图像数据;
B1、检测计算模块检测图像数据中的手掌、计算手的位置并算出人手包围盒;所述人手包围盒包括手掌和手指;
B2、过滤模块过滤掉无效的手;
C1、匹配模块匹配并更新人手包围盒;
C2、调度模块调度指定数量的手进行关键点检测;
C3、关键点检测模块使用关键点检测模型检测调度后的手,得到手的21个关键点;
D1、手势识别模块将手的关键点分类呈预设的手势类型;
D2、规则模块结合手型方向和相关的手势规则过滤疑似手型;
D3、滤波模块对手势识别模块输出的结果进行滤波;
E、结果输出模块输出最终的输出手势。
2.根据权利要求1所述的一种用于电视控制的手势识别系统,其特征在于,所述调度模块能优选出部分手进行关键点检测和识别,其具体流程如下:
C2.1加入检测数据:将上一帧的手势检测结果、检测数据和当前帧的检测数据一起加入缓存池;所述手势检测结果为手势的类型,所述检测数据包括手的旋转矩形框、手的ROI(region of interes感兴趣区域)图像数据、当前帧的时间戳和置信度分数;
C2.2缓存池清理:对于缓存池中待检的手势检测数据进行清理,删除时间戳距离当前时刻超过预设的超时时间t1的所有手势检测数据及预设时间t2内未被匹配过的手势检测数据;
C2.3判断缓存池是否已满:设定缓存池最大容量并判断是否已满,若已满,执行步骤C2.4,反之则执行步骤C2.5;
C2.4清理目标:清理匹配次数最少的手势检测数据直至缓存池未满;
C2.5目标匹配:将当前帧待加入的手势检测数据和缓存池中的手势检测数据进行逐一匹配,匹配IOU大于IOU阈值时,当前帧的手势检测数据替换缓存池中被匹配的手势检测数据,手势检测数据的等待时间不替换;未被匹配的手势检测数据直接加入缓存池中,等待时间初始化为0;
C2.6获取待检目标:上一帧的手势结果反馈到当前帧,上一帧有效的手势检测数据施加奖励,无效的手势检测数据施加惩罚,结合手的分数、大小及中心度选取检测个数,对识别到的手势通过奖励跟踪检测,检出并识别有效手势;
C2.7更新等待时间:缓存池中未被选取的待检目标等待时间加1。
3.根据权利要求2所述的一种用于电视控制的手势识别系统,其特征在于:所述关键点检测模块将调度模块得出的待检目标结合关键点检测模型进行手的21个关键点检测,输出手的21个关键点、左右手类型和关键点的分数;
所述关键点检测模型通过特征提取网络提取特征后,使用三个分支分别输出关键点位置、左右手标签、关键点分数;所述关键点的分数为是否有手的分数,变成一个分类问题,就是分类的分数。
4.根据权利要求3所述的一种用于电视控制的手势识别系统,其特征在于:所述手势识别模块采用基于MLP的神经网络,将手关键点坐标原点平移到手腕处,再将手的21个关键点的三维归一化坐标值输入MLP中输出手势类别,除有效手势类型外全部作为无效手势类型;所述有效手势类型包括快进、快退、播放/暂停和静音/开音。
5.根据权利要求4所述的一种用于电视控制的手势识别系统,其特征在于:所述规则模块能结合手型方向规则和手势规则过滤疑似手型;
所述手型方向规则能通过手掌法向量拟合判断手掌的朝向,过滤非意图的手势;
所述手势规则能对通过手型方向规则筛选的手势,继续过滤疑似手型。
6.根据权利要求5所述的一种用于电视控制的手势识别系统,其特征在于,所述滤波模块能滤除虚警,其具体流程如下:
D3.1信息过滤:对输入的数据信息进行过滤,滤除手势分数小于0.5的数据信息和非有效手势;所述非有效手势为手势识别模块输出的背景类;
D3.2历史记录超时擦除:当历史记录中的存储时间超过超时时间t1时,将该历史记录清除;
D3.3历史记录为空判断:不为空,执行步骤D3.4;为空,执行步骤D3.9;
D3.4和历史记录匹配:对当前帧的每一个手势都在历史记录中遍历匹配;
D3.5历史次数满足判断:判断手势的匹配次数是否大于C1,若是,执行步骤D3.6;若否,执行步骤D3.9;所述C1为历史记录匹配次数阈值;
D3.6持续时间满足判断:判断当前帧的手势在历史记录中的持续时间是否大于t2,若是,执行步骤D3.7;若否,则执行步骤D3.9;所述t2为该类型的手势在历史记录中记录的最早时间到当前手势的时间差阈值;
D3.7加入历史记录;
D3.8输出结果:输出手势,结束流程;
D3.9输出为空:输出空值,结束流程。
7.根据权利要求1-6任一项所述的一种用于电视控制的手势识别系统的一种用于电视控制的手势识别方法,其特征在于:基于所述的一种用于电视控制的手势识别系统进行手势识别并实现电视的控制。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111332445.6A CN114253395B (zh) | 2021-11-11 | 2021-11-11 | 一种用于电视控制的手势识别系统及其识别方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111332445.6A CN114253395B (zh) | 2021-11-11 | 2021-11-11 | 一种用于电视控制的手势识别系统及其识别方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114253395A CN114253395A (zh) | 2022-03-29 |
CN114253395B true CN114253395B (zh) | 2023-07-18 |
Family
ID=80790741
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111332445.6A Active CN114253395B (zh) | 2021-11-11 | 2021-11-11 | 一种用于电视控制的手势识别系统及其识别方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114253395B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104992171A (zh) * | 2015-08-04 | 2015-10-21 | 易视腾科技有限公司 | 一种基于2d视频序列的手势识别及人机交互方法和系统 |
JP2017027600A (ja) * | 2015-07-23 | 2017-02-02 | 株式会社リコー | 手振り識別方法と装置 |
CN107589850A (zh) * | 2017-09-26 | 2018-01-16 | 深圳睛灵科技有限公司 | 一种手势移动方向的识别方法及系统 |
CN109145803A (zh) * | 2018-08-14 | 2019-01-04 | 京东方科技集团股份有限公司 | 手势识别方法及装置、电子设备、计算机可读存储介质 |
CN109871799A (zh) * | 2019-02-02 | 2019-06-11 | 浙江万里学院 | 一种基于深度学习的驾驶员玩手机行为的检测方法 |
CN109948542A (zh) * | 2019-03-19 | 2019-06-28 | 北京百度网讯科技有限公司 | 手势识别方法、装置、电子设备和存储介质 |
KR20210004360A (ko) * | 2019-07-04 | 2021-01-13 | 한양대학교 산학협력단 | 공중 제스쳐 인식 장치 및 방법 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9069386B2 (en) * | 2010-05-11 | 2015-06-30 | Nippon Systemware Co., Ltd. | Gesture recognition device, method, program, and computer-readable medium upon which program is stored |
-
2021
- 2021-11-11 CN CN202111332445.6A patent/CN114253395B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017027600A (ja) * | 2015-07-23 | 2017-02-02 | 株式会社リコー | 手振り識別方法と装置 |
CN104992171A (zh) * | 2015-08-04 | 2015-10-21 | 易视腾科技有限公司 | 一种基于2d视频序列的手势识别及人机交互方法和系统 |
CN107589850A (zh) * | 2017-09-26 | 2018-01-16 | 深圳睛灵科技有限公司 | 一种手势移动方向的识别方法及系统 |
CN109145803A (zh) * | 2018-08-14 | 2019-01-04 | 京东方科技集团股份有限公司 | 手势识别方法及装置、电子设备、计算机可读存储介质 |
CN109871799A (zh) * | 2019-02-02 | 2019-06-11 | 浙江万里学院 | 一种基于深度学习的驾驶员玩手机行为的检测方法 |
CN109948542A (zh) * | 2019-03-19 | 2019-06-28 | 北京百度网讯科技有限公司 | 手势识别方法、装置、电子设备和存储介质 |
KR20210004360A (ko) * | 2019-07-04 | 2021-01-13 | 한양대학교 산학협력단 | 공중 제스쳐 인식 장치 및 방법 |
Also Published As
Publication number | Publication date |
---|---|
CN114253395A (zh) | 2022-03-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103926999B (zh) | 手掌开合手势识别方法和装置、人机交互方法和设备 | |
CN102063618B (zh) | 互动系统中的动态手势识别方法 | |
US8373654B2 (en) | Image based motion gesture recognition method and system thereof | |
CN102855461A (zh) | 在图像中检测手指的方法及设备 | |
Bhuyan et al. | Fingertip detection for hand pose recognition | |
CN102402289B (zh) | 一种基于机器视觉的手势鼠标识别方法 | |
CN104899600A (zh) | 一种基于深度图的手部特征点检测方法 | |
JP2014524070A5 (zh) | ||
CN103376890A (zh) | 基于视觉的手势遥控系统 | |
CN101976330A (zh) | 手势识别方法和系统 | |
MacLean et al. | Fast hand gesture recognition for real-time teleconferencing applications | |
CN105975934A (zh) | 一种用于增强现实辅助维修的动态手势识别方法及系统 | |
CN111325137A (zh) | 暴力分拣检测方法、装置、设备及存储介质 | |
Qi et al. | Computer vision-based hand gesture recognition for human-robot interaction: a review | |
CN111027370A (zh) | 一种多目标跟踪及行为分析检测方法 | |
CN105335711A (zh) | 一种复杂环境下指尖检测方法 | |
CN114792443A (zh) | 一种基于图像识别的智能设备手势识别控制方法 | |
Hu et al. | Trajectory image based dynamic gesture recognition with convolutional neural networks | |
Michel et al. | Gesture recognition supporting the interaction of humans with socially assistive robots | |
Sulyman et al. | REAL-TIME NUMERICAL 0-5 COUNTING BASED ON HAND-FINGER GESTURES RECOGNITION. | |
Al-Saedi et al. | Survey of hand gesture recognition systems | |
CN114253395B (zh) | 一种用于电视控制的手势识别系统及其识别方法 | |
Ayumi et al. | A comparison of SVM and RVM for human action recognition | |
Surya et al. | Cursor Movement Based on Object Detection Using Vision Transformers | |
Guo et al. | Gesture recognition for Chinese traffic police |
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 |