CN102831404B - 手势检测方法及系统 - Google Patents
手势检测方法及系统 Download PDFInfo
- Publication number
- CN102831404B CN102831404B CN201210290338.6A CN201210290338A CN102831404B CN 102831404 B CN102831404 B CN 102831404B CN 201210290338 A CN201210290338 A CN 201210290338A CN 102831404 B CN102831404 B CN 102831404B
- Authority
- CN
- China
- Prior art keywords
- colour
- gesture
- window
- image
- skin
- 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
Landscapes
- Image Analysis (AREA)
Abstract
本发明提供一种手势检测方法,包括如下步骤:检测一种预定义的运动方式,用于确定检测感兴趣区域;在所述的感兴趣区域内,依据多尺度滑动窗口方案做检测,首先基于窗口图像的肤色隶属度图像提取局部均值特征,使用预先训练的Ada-Boost分类器做分类,对于通过Ada-Boost分类器的窗口图像,进一步基于其灰度图提取点对特征,并使用随机森林分类器对其分类;对各个类别的目标手势窗口进行聚类,输出手势所在的准确位置及手势形状。本发明还提供一种手势检测系统。本发明中的手势检测方法及系统,实施简单、快速、稳定,且具有实时性、抗干扰、识别精度高等优势。
Description
技术领域
本发明涉及基于视觉和图像的目标检测和识别及人机交互领域,尤其涉及一种适用于电视嵌入平台的手势检测方法及系统。
背景技术
基于手势识别的体感控制技术,已经成为目前一种重要的人机交互手段。其通过普通摄像头采集用户的动作画面,通过模式识别算法,对图像中的手部特征进行检测和定位,并识别出手部的形状,将这种识别信息转化为操作信号,反馈给智能电视等终端,并触发相应的操作命令,如电视节目的切换,音量的调节,简单的游戏互动等。手势识别技术基于智能终端所配备的摄像头,在终端安装相应的识别软件,即可完成以上操作,因而在硬件成本和操作方式上都具有极大的优势,因而该技术正在逐渐成为智能电视的标配模块。
根据手势识别的研究和应用的发展过程,大致可以划分为以下几种技术手段:
(1)基于数据手套或佩戴物:通过用户佩戴特制的手套或者标识物,通过摄像头来进行识别,手套本身是特殊设计的,具有明显的特征,因而可以降低检测和识别算法的复杂性,但是这种佩戴式的操作方式,显然难以满足自然的人机交互的需要,因而该方法始终未得到广泛的应用;
(2)基于3D深度相机:代表技术为微软的KINECT产品,其通过三维扫描设备,获取操作者的动态三维模型,因为其工作在3D空间,因而避免了2D空间中存在的颜色干扰、图像分割等大量的难题。但是3D扫描设备体积较大,硬件成本较高,所需的运算能力更高,因而难以集成并应用到大众化的智能终端如电视、手机等设备上;
(3)基于普通摄像头2D图像识别的技术:由于这种技术是基于普通摄像头来实现的,因而也是最具有大规模应用潜力的技术,但是该技术的缺点也非常明显:a)对于单纯基于肤色特征的手势检测技术而言,环境的光照很容易改变手部的颜色特征,使得检测变得困难;b)对于基于形状特征的手势检测而言,复杂背景中存在的类似目标物体很容易造成误检;c)对于融合多种特征的手势检测算法而言,虽然其在检测精度方面有所提升,但还是不能从根本上解决光照及背景的影响问题,更重要的,随着算法复杂度的提升,其运算量急剧增加,显然难以满足现有的智能电视等终端的需要。
综上,目前的手势识别算法由于其本身的复杂性以及所需的大量的视频处理,在现有的智能终端如智能电视的嵌入式平台上很难得到流畅的运行。
因而如何开发简单快速而稳定的手势识别算法,使其可以在低运算能力的嵌入式平台上得以应用已成为目前急需解决的问题,而对于所有的手势交互系统而言,手势的检测是至关重要的第一步。
发明内容
为了克服上述技术问题,本发明提供一种适用于电视嵌入平台的手势检测方法及系统,所述手势检测方法,包括如下步骤:检测一种预定义的运动方式,用于确定检测感兴趣区域;在所述感兴趣区域内对预定义手势进行多尺度滑动窗口检测;从每个窗口图像的肤色隶属度图像中提取局部均值特征;用Ada-Boost分类器对所述局部均值特征来做手势-背景的分类,若被分类为手势,则相应窗口作为候选目标窗口;对所述候选目标窗口,基于窗口图像的灰度图像提取点对特征;使用随机森林分类器对所述点对特征做分类,得到相应于各类手势的目标窗口;对所述各类手势的目标窗口进行聚类处理;输出成功检测到的手势类别及其所在的准确位置。
优选地,所述预定运动方式为往返性挥手运动。
优选地,所述挥手动作的检测是通过肤色隶属度图像的绝对差分图像的积分图来来实现的。
优选地,其特征在于,通过字典法来实现所述肤色隶属度图像的快速计算。
优选地,通过更新率来计算肤色运动积分图像,其步骤包括:对当前帧视频,先使用字典法计算肤色隶属度图;与上一帧的肤色隶属度图像做差分,得到绝对差分图;所述差分图结合上一帧状态的积分图像,使用更新率,计算当前帧状态的肤色运动积分图像。
优选地,所述多尺度滑动窗口检测的步骤,包括:基于所述字典法计算感兴趣区域的肤色隶属度图像;基于肤色的进行窗口滤波;基于点对特征和随机森林分类器进行决策阶段。
优选地,所述窗口滤波的执行步骤,包括:基于窗口图像的肤色隶属度图像提取局部均值特征;
使用预先训练的AdaBoost分类器对局部均值特征做分类,从而实现基于肤色的窗口过滤,最后形成一系列候选目标窗口。
优选地,所述对各类手势的目标窗口进行聚类的步骤,还包括:对聚类后形成的窗口簇进行置信度分析;置信度小于阈值者被过滤;置信度大于等于阈值的窗口簇的代表窗口用于确定所述手势的位置。
此外,本发明提供一种手势检测系统,包括:运动检测模块、肤色滤波模块、决策模块以及输出模块。运动检测模块,通过肤色运动积分图像来检测一种规律性的挥手行为,根据所述挥手行为的发生区域,确定感兴趣区域;肤色滤波模块,计算所述感兴趣区域的肤色隶属度图像,使用多尺度滑动窗口的方法,从每个窗口图像对应的隶属度图像中提取若干局部均值特征,使用Ada-Boost分类器对局部均值特征做分类,以此排除部分背景窗口;决策模块,提取点对特征,使用预先训练得到的随机森林分类器做手势-背景以及手势-手势分类得到各个手势所对应的目标图像窗口;输出模块,对各类手势的目标窗口进行聚类等后处理,输出成功检测到的手势类别及其所在的准确位置。
本发明的优势体现在:1)通过简单自然的挥手动作,可以稳定地定位到目标操作手所在的大致区域,避免了背景颜色及无关操作手部目标的干扰;2)考虑到操作者手部运动范围不会太大,因而将后续的手势检测和手形的识别限定在某一个较小的图像范围内,从而大大降低了系统的处理数据量;3)采用运算量较低的算法,如运动检测,肤色窗口滤波,点对描述和随机森林分类,来提高运算效率,尤其大量减少了浮点运算量;通过以上几点,使得该算法可以在低运算能力的嵌入式平台上稳定、流畅的运行。
附图说明
图1是本发明手势检测系统的结构示意图。
图2是本发明手势检测系统的流程示意图。
图3是本发明中CbCr空间肤色模型图。
图4是本发明中通过“挥手”检测确定检测感兴趣区域的流程图。
图5是本发明中通过肤色运动积分图像检测手势感兴趣区域的示意图。
图6是本发明中肤色隶属度图、局部均值、以及通过学习选择出来的局部特征的示意图。
图7是本发明中随机森林分类器的示意图。
图8是本发明中手势分类结果的示例。
具体实施方式
如图1所示,为本发明一种手势检测系统10的结构示意图。手势检测系统应用于智能电视平台系统等,该类智能电视平台系统至少包括用于捕捉用户手势的视频图像的摄像头以及用于存储各类设定的存储装置。
手势检测系统10,包括运动检测模块11、肤色滤波模块12、决策模块13以及输出模块14。
运动检测模块11,通过肤色运动积分图像来检测一种规律性的挥手行为,一旦检测到,就可以根据该行为的发生区域,来确定一个手势检测的感兴趣区域,后续的手势检测都在该感兴趣区域内进行。
在本实施方式中,通过这种自然而有特定运动规律的动作,准确地判断出手部的大致区域,从而设定检测感兴趣区域,考虑到用户操作习惯,其手部运动范围不会太大,因而后续的处理将只在该区域内进行,从而大大减少了所需处理的图像数据量。
在其他实施方式中,“挥手”的动作也可以设置为其他容易执行且容易识别的动作。
肤色滤波模块12,计算感兴趣区域的肤色隶属度图像,使用多尺度滑动窗口办法,从每个窗口图像对应的隶属度图像中提取若干局部均值特征,然后使用Ada-Boost分类器来分类。据此,可以过滤掉大部分的非肤色背景窗口,大大提高处理效率。在本实施方式中,Ada-Boost分类器是通过对诸多的局部均值特征进行Boosting选择获得的,最终只有少量有效的特征被保留下来应用于该Ada-Boost分类器,训练以所有预定义手势样本为正样本,以背景样本的截图为负样本。在本实施方式中,AdaBoost分类器即为本实施方式中所采用的肤色滤波器。
在其他实施方式中,肤色滤波模块可以根据环境的状况,决定是否需要关闭,例如,在有色光源条件下无法确定肤色时可以关闭。
在本实施方式中,局部均值特征提取的源图像是肤色隶属度图。特征提取是通过计算窗口图像肤色隶属度图中小矩形区域的亮度均值来实现的,特征向量的元素是非负的实数。
局部均值特征的计算如图6所示:首先计算感兴趣区域的肤色隶属度图像;对感兴趣区域内的每一个滑动窗口,根据AdaBoost分类器所用的相关特征,获得滑动窗口内的一系列子窗口;对每一个子窗口,计算相关肤色隶属度图的平均亮度,即其中像素值之和除以子窗口面积;最终窗口内的局部均值特征形成特征向量作为AdaBoost分类器的输入。其中AdaBoost分类器是通过训练获得的,训练过程事实上是也是获取有效子窗口的过程:对标准窗口图像,使用多尺度的、多长宽比例的窗口在其中滑动,滑动经过的窗口按照时间先后顺序生成一个子窗口序列;训练过程中,根据子窗口序列在正负样本中提取局部均值特征;经过AdaBoost训练过程,只有少量特征被用到,即只有少量子窗口被应用到;这些子窗口在上述的(分类过程中所应用到的)局部均值特征提取中被应用到。
采用局部均值特征,一方面因为使用的是均值信息,比较稳定;另一方面因为使用了积分图像协助计算,计算速度比较快。
决策模块13,在感兴趣区域内对通过肤色滤波的窗口图像,提取点对特征,使用预先训练得到的随机森林分类器做手势-背景以及手势-手势分类,得到所有的预定义手势的图像窗口,以及窗口图像所对应的手势类别。
在本实施方式中,点对特征是从窗口图像的灰度图像中获取的,根据随机森林所用的特征,确定一个点对序,据此序列计算每一个特征向量:首先根据窗口图像尺寸调整序列中点对的坐标,对调整后的每一个点对,比较前后两个点的亮度,若前者亮度大,则相应元素取值为1,反正为0;这样特征向量中的每个元素都取离散值,0或者1。随机森林分类器的学习过程事实上也是点对的选择过程,训练时候所用的点对可以通过随机选取获得,点对数目非常庞大,但是通过学习,最终只有少量被保存下来,这些保存下来的都是区分能力相对比较强的;在实际检测应用中,只有被保留下来的点对才会被应用于特征提取。
点对特征对于光照变化不敏感,因此描述方法稳定,并且特征提取和基于随机森林的分类基本上都是整数操作,有利于在嵌入式平台的实现。
在本实施方式中,随机森林分类器,是给定特征集合(具体到本专利中是指从样本中提取到的点对特征)及其所对应的标签之后,依据于随机森林学习算法(有监督机器学习方法的一种),学习得到的分类器,它由若干棵随机树组成,每棵随机树事实上都是一棵决策树。
输出模块14对各类手势的目标窗口进行聚类等后处理,输出成功检测到的手势类别,及其所在的准确位置。
发明所提出的手势检测系统,简而言之,大致可分为以下几个步骤执行:(1)先进行“挥手”动作的检测;(2)在感兴趣区域内,进行滑动窗口检测,从窗口图像的隶属度图像中提取若干局部均值,并使用预先训练的Ada-Boost分类器,对局部均值进行分类,并通过分类,过滤大部分背景窗口;(3)在过滤后的候选手势区域窗口中,对每个窗口提取点对特征描述;(4)使用随机森林分类器进行分类;(5)对各类手势的目标窗口进行聚类等处理,输出成功检测到的手势类别,及其所在的准确位置。
图1的具体执行方式如图2所示,为本发明一种手势检测方法的流程图。
在步骤S201中,运动检测模块11检测预定义的运动方式,用于确定检测感兴趣的区域。
在本实施方式中,该预定义运动方式为挥手。一方面这种规律性的挥手运动符合用户操作习惯,另一方面,由于优先采用肤色隶属度图像,该方法不仅利用了肤色,还利用了时间轴上的运动信息,比单纯使用肤色或者单纯使用单帧的运动信息,更加稳定更加有效;在肤色失效的情况下(比如有色光源),可以使用灰度图像代替肤色隶属度图像,虽然成效有一定的打折,但是还算是比较有效的。也就是说,可以根据环境状况来确定使用何种源图像来计算运动积分图像。
在步骤S202中,肤色滤波模块12获取一帧视频图像。
在步骤S203中,在感兴趣区域内进行多尺度滑动窗口手势检测,对每个窗口图像首先从隶属度图像中提取若干局部均值特征,并基于局部均值特征做窗口滤波,过滤掉大部分背景窗口。
在步骤S204中,决策模块13对于通过肤色滤波器的窗口,从窗口图像中提取点对特征。
在步骤S205中,决策模块13利用随机森林对点对特征进行分类,从而确定被分类窗口是未被过滤掉的背景还是预定义手势中的某一类。
在步骤S206中,输出模块对各类手势的目标窗口进行聚类等后处理,输出成功检测到的手势类别,及其所在的准确位置。
在本实施方式中,后处理不仅包括对窗口簇的聚类,还包括对窗口簇的置信度分析,对窗口簇选取代表窗口等操作。在本实施方式中,被分类为手势的,根据分类结果可以知道究竟是属于哪一类手势。比如共有L类手势,每一类有若干个目标图像窗口,对每类的窗口进行聚类得到若干个窗口簇。在本实施方式中,聚类是指将同一类别手势的窗口放在一起进行分析,可参照图8的示例,显示了部分聚类后的结果。
置信度是指窗口簇的可信任程度,用于去除干扰信息。在本实施方式中,通过设定置信度阈值,保留置信度大于等于阈值的窗口簇,计算这些被保留簇的代表窗口,用以确定所述手势的位置。
在本实施方式中,代表窗口可以选择为窗口簇的均值窗口。
在步骤S207中,判断是否检测到某类预定义手势。其中,若检测到某类预定义手势,则执行步骤S208;否则,若没有检测到任何预定义手势则执行步骤S209。
在步骤S209中,判断当前时刻距离感兴趣区域被初始化是否超过一定时间。若超时,则返回步骤S201重新做挥手动作检测;若未超时,则返回步骤S202,重新获取一帧视频图像进行检测。
在本实施方式中,初始化是指上一次挥手检测确定感兴趣区域的时间,由于确定感兴趣的区域后,对于以后的视频图像就不再做运动检测了,而是在这个区域内做手势检测;但是时间久了,这个区域可能就失效了,比人操作者移动位置了;所以需要重新做挥手检测,再确定一个新的感兴趣区域。
本发明中的“挥手”行为检测和手势检测是交替进行的,而非同时进行。在系统“空闲”期,对“挥手”动作的检测会一直在执行,当检测到“挥手”动作后,会认为用户要进行手势操作,从而开启检测模块,在“挥手”所产生的感兴趣区域内进行详细检测,此时系统进入“忙碌”期,期间不再进行“挥手”行为检测。如果在一定时期内不曾检测到手势,或者用户手放下达到一定时间,则已有的感兴趣区域将会失效,此时系统重新进入“空闲”期,开启“挥手”检测模块。
以下将针对算法实现中所涉及到的具体细节进行详细阐述,分为(一)肤色隶属度图像计算方法;(二)挥手动作检测;(三)基于肤色的窗口滤波;(四)随机森林分类;(五)对滑动窗口分类结果的后处理,共五个部分。
(一)肤色隶属度图像的计算方法
请参照图3,肤色在Cb和Cr分量子空间中呈现如图3所示的椭圆形分布,
即肤色的像素值主要集中于如下所示的集合Ω当中:
像素点的颜色值越是位于椭圆的内部等高线,该点是肤色点的可能性越大,反之越是位于椭圆的外部等高线,该点是肤色点的可能性越小。根据这一特点,对像素点的CbCr分量(x,y),计算并通过转移函数做转化,可以得到该像素点的肤色隶属度;对一幅彩色图像来说,对所有点计算肤色隶属度,可以得到一个肤色隶属度图像,图像中像素点的亮度值越大,代表该点是肤色点的可能性越大。从d(x,y)到隶属度f(x,y)的转化可以通过f(x,y)=255?exp(c1d(x,y)),或者f(x,y)=255/(1+c2d(x,y))等类似函数。肤色隶属度图像不同于基于肤色的分割图像,前者对像素点是否是肤色点给出了模糊度量,具有更好的连续性。
但是依照如上方法,来计算肤色隶属度图像,首先需要计算像素值所在的椭圆等高线等级,然后通过转移函数来映射为隶属度,其中所涉及到的浮点乘法和除法都比较多。因此我们提出了一种近似计算的办法:如图3所示,在CbCr二维空间中,将包括椭圆在内的一个较大矩形邻域U进行网格剖分,形成若干个网格单元;计算隶属度函数f(x,y)在每个网格单元上的积分,并除以网格单元的面积,来做归一化,该归一化值作为网格单元上的肤色隶属度均值;将所有网格单元上的肤色隶属度均值提前计算并做存储形成字典;对于一幅彩色图像中的任意一个像素点,如果其CbCr分量不在区域U当中,则其肤色隶属度为0,否则,计算它所在的网格单元,从字典中获取其上的肤色隶属度均值,作为该点的肤色隶属度值。
使用这种改进的字典法,可以实现快速的彩色图像到肤色隶属度图像的转换,从而满足嵌入式平台整形运算和低运算量的需要。
(二)基于“挥手”动作的手部感兴趣区域检测
请参阅图4和图5,分别为以“挥手”动作检测来确定感兴趣区域的流程图和示意图。
本发明系统以“挥手”动作来启动检测模块,并据此动作来确定手势感兴趣区域。所谓的“挥手”动作就是手部在小范围内左右往返的规律性晃动,由于该动作可以很自然的执行,且具有显著的区分性,因而非常适合作为一种启动检测的讯号,更重要的,通过这种启动动作的定义,可以极大的降低从整幅图像中检测手部特征的难度,避免单纯依靠肤色、形状等特征所带来的光照、背景等不利因素的影响,具有极高的稳定性;同是缩小了后续手势检测的搜索范围,可以大幅度地提高检测效率。
在步骤S401中,在开始“挥手”检测之时,首先获取相邻的两幅视频图像,计算肤色隶属度图像I1和I2,计算I1和I2之间的差分图像的绝对值图像,即绝对差分图像D,将该绝对差分图像作为肤色运动积分图M的初始化。
在步骤S402中,每次新获取一幅视频图像。
在步骤S403中,计算视频图像中的肤色隶属图像。
在步骤S404中,计算它与前一帧之间的肤色隶属度图的绝对差分图像D。
在步骤S405中,通过公式M=(1-α)M+αD对M做更新,其中α为学习率;这种方法是基于“越是靠前的图像帧,权重越小”这样一种假设。
在步骤S406中,根据阈值Td计算运动积分图像的二值化图像B。即,每一帧计算完积分图像M之后,对其进行阈值化得到mask图像B;其中的像素点为1代表该点存在肤色点的往返运动,为0则相反。在本实施方式中,阈值Td是预定义的实数值(取值在0到255之间),比如在实验中取值40。
在步骤S407中,对二值化图像做形态学处理得到图像BB。即,对得到的mask图像进行形态学操作,改善mask图像的质量
在步骤S408中,对图像BB进行联通域分析,得到若干个联通区域。在本实施方式中,即,对其进行连通区域搜索,得到其中所有的联通区域,过滤掉面积比较小的联通区域,最终留下若干个候选联通区域。
在步骤S409中,判断联通区域中是否有符合条件者可以作为感兴趣区域。若无符合条件者,则返回步骤S402。若有符合条件者,则执行步骤S410.
在步骤S410中,按一定规则从所有联通区域中选取感兴趣区域。比如可以选取面积最大的候选区域或者对应的积分图像平均亮度最大的候选区域作为手势感兴趣区域,记为ROI。发明专利的一个实现系统中采用面积最大的候选区域作为手势检测感兴趣区域。
在图5(a)中,从联通区域中确定出手势的感兴趣区域,感兴趣区域的高度不会大于宽度,因为考虑胳膊晃动所造成的影响。
在没有裸露手臂影响的情况下,由于“挥手”动作大体上是左右运动,因此ROI区域的宽度大部分情况都是大于其高度的;当用户由于挽起袖子或者穿着短袖的时候,由于“挥手”运动中裸露手臂部分的影响,感兴趣区域的高度可能大大超出人手的高度,因此需要将感兴趣框的下部边界往上面调整一下。本发明中规定ROI的高度不大于其宽度,一旦大于宽度,则对其上下边界做适度调整,一般是上部边界稍微上移,下部边界上移直至ROI的高度不再大于其宽度。另外,考虑到用户手部可能有小范围的运动,因此需要对上下边界修正过的ROI区域做适度的拓展,得到最终的感兴趣区域ROI.拓展的程度越大,增加的运算量就越大。
图5(b)是,使用肤色运动积分图来确定手势感兴趣区域的实例示意图:
(1)源源不断地获取图像序列,(若运动积分图像初始化完成)每获取一幅视频图像It+1,顺序执行如下(2)~(7)中的操作;(2)计算出该视频图像的肤色隶属度图像,(3)在该图像与前一帧It之间,计算肤色隶属度图像的绝对差分图像Dt+1,(4)通过公式Mt+1=(1-α)Mt+αDt+1来计算t+1时刻的肤色运动积分图像Mt+1,(5)对肤色运动积分图像进行二值化,得到mask图像,(6)对mask图像进行联通域分析,得到手势感兴趣区域,(7)判断是否连续几帧都稳定地检测到某个感兴趣区域,若果是则转入手势检测模块,否则转入(1)继续采集视频做运动检测。
(三)肤色窗口滤波
通过以上“挥手”动作检测,可以初步确定用户手势所在的区域,这么做一方面大大降低了后续的数据处理量(后续检测只在感兴趣区域内进行,而不在整幅图像中进行),另外也很大程度上避免了摄像头整幅画面中存在的动态复杂背景对后续检测的影响。但是对于感兴趣区域内仍然存在的背景,还需要进行有效的识别和区分,以便准确地定位出手部目标。为此,本发明系统在检测感兴趣区域ROI内进行多尺度滑动窗口检测,该检测方法分为基于肤色的滤波阶段和基于随机森林的分类阶段。
为了实现基于肤色的窗口滤波,首先需要线下训练肤色滤波器。具体做法如下:
1.将所有预定义的手势图像作为正样本,对其进行尺寸标准化;
2.在背景图像的随机位置选取随机大小的子图像,将其尺寸做标准化形成负样本;
3.对所有正负样本都计算肤色隶属度图像;然后在样本的随机位置选取一定尺寸的矩形块,如图6(f)所示,并在隶属度图像的相应矩形块内计算像素的亮度均值;所有特征形成一个特征向量,然后使用Ada-Boost方法训练,得到若干个比较有区分性的特征,以及相应的Ada-Boost分类器,即为本系统中的肤色滤波器。
在线检测时,肤色滤波阶段示意图如图6所示。
首先,如图计算感兴趣区域ROI(6(a))的肤色隶属度图像(6(c)),对多尺度滑动窗口所产生的任意窗口图像(6(b)显示了ROI中的一些滑动窗口,包括不同尺度),从窗口图像(6(d))所对应的肤色隶属度图像(6(e))中,提取所有与滤波器相关的局部均值特征(6(f))作为描述,输入Ada-Boost分类器做背景-手势分类。为了提高效率,可以计算隶属度图像的积分图像S,这样任何由点p1(左上角),p2(右上角),p3(左下角),p4(右下角)所确定的矩形区域Q的均值可以通过[S(p1)+S(p4)-S(p2)-S(p3)]/area(Q)来确定,其中area(Q)代表区域Q的面积。经过肤色滤波,大部分的非肤色背景窗口会被过滤掉,剩余被分类为正类的窗口将会被传递到随机森林分类阶段,接受更精确的背景-手势分类和具体的手势形状的识别。
在基于肤色的窗口滤波过程中,窗口图像仅仅局限在感兴趣区域之内,通过积分图像计算局部均值,提高计算效率。不仅如此,肤色滤波可以有效地降低用于随机森林训练的负样本集合的复杂性,也降低检测所可能遭遇到的负样本的复杂性,进而大大提高检测的准确性。
(四)采用随机森林方法对手势进行精确定位和分类
在通过肤色滤波的窗口中,仍有部分非目标窗口图像,包括:肤色模型不能区分的背景,类肤色背景,以及包含有肤色的非目标,如人脸、脖子、胳膊等等。为此,需要设计其它的描述方式做进一步的分类。考虑到光照的影响,在该步骤中,我们采用了对于光照变化具有鲁棒性的点对特征来作为手部特征的描述,并采用高效率的随机森林分类法来实现精确判别和分类,分类不仅在所有的预定义手势和背景之间做区分,而且在不同的手势之间做区分。
有效的点对特征是通过学习获得的:
所有初始的点对通过随机选取获得,经过在样本集合上对随机森林的训练,对分类结果帮助大的点对被保留下来在检测时候使用,其余被舍弃。
初始点对特征的具体设计:在单位图像中(坐标范围为[0,1]×[0,1]),随机选取若干对像素点提取点对坐标(都为浮点坐标);对于任何一个尺寸为V×H(高度×宽度)的待描述样本(数字图像)I,通过表达式qi,j:(x,y)=(round(xH),round(yV))来获得pi,j点在数字图像中的坐标点qi,j,根据点对序列来生成一个K维的描述向量x=(x1,x2,…,xK),其中当qi,l点像素值大于ql,2点像素值的时候,xl取值为1,否则取值为0.x即是基于点对序列的特征描述。这样,对于任意一个参与训练的样本,可以被描述为XA=(xA,b),b{0,1,...,L},其中xA代表对样本A的点对描述向量。b=0,代表图像为背景样本,b=i<L代表图像为第i个手势样本。基于这种描述,使用随机森林学习方法学习判别模型,最终得到T1,T2,...,TN共N棵树,如图7所示。不同树所使用的特征维度可能有重叠的部分,每棵树所使用的特征都是总体特征中的一部分。总共被随机树分类器所采用的特征可能是整个点对特征集合的一部分,没有被用到的点对一般是区分能力比较差的。在检测的时候,只提取被随机森林用到的点对特征。
在对窗口图像进行决策的时候,对窗口图像提取特征x,然后使用随机森林来分类,每棵树都会根据自己的分类结果对一个类别标签做出投票,对任意一个标签,将所有随机树的投票进行累积,得到该标签的总得分;从中选出得分最高的类别标签,用来表示当前图像的目标类。即令其中
T1(x;k)代表第i棵随机树对第k个标签的投票权重,k0=arg{maxk{Ck;k=1,...,L}}即为最终的分类结果。k0=0代表被分类为背景,否则k0=i>0带表被分类为第i个手势。
基于点对描述和随机森林分类的方法,全部的特征提取操作和绝大部分的分类操作都是基于整数运算的,因此适合在嵌入式平台上运行,并且基于点对的描述鲁棒性高,对环境光照不敏感,从而可以实现稳定的手部特征描述和准确的手势分类。
(五)对滑动窗口分类结果做后处理
经过随机树分类阶段,将被分类为同一手势类别的所有图像窗口进行聚类,形成若干个窗口簇,并过滤掉其中置信度低的簇;对每一类都做类似的聚类处理,可以得到关于所有预定义手势的窗口簇{(G1,C1),...,(Gw,Cw)},其中Gi代表第i个簇中的窗口集合,Ci代表相应的手势类别。如果窗口簇的数目不止一个,则选取置信度最高者作为最终的检测结果,对该簇计算代表窗口,代表窗口一般选为窗口簇的均值窗口,作为手势出现的准确位置,手势形状的类别即为该簇中所记录的手势类别。
本发明除了应用于智能电视机平台,还可应用于其他具有处理能力的智能终端设备,如:(1)在智能手机中,通过手机内置的摄像头,在手机终端安装手势检测软件,实现通过手势对手机界面的操控;(2)在空调中,通过摄像头,并在空调中安装嵌入式模块,实现通过手势对空调的开关、风向、温度等指令的手势输入操作;总之,对于具有嵌入式处理能力的设备,在运行本算法后,基于普通的摄像头,即可实现通过手势的人机操作功能;(3)普通PC电脑,通过摄像头,用户可以用手势来操作电脑软件,例如可以定义若干个手形来实现上翻页、下翻页,图片放大缩小等指令。
经实验证明,本系统的有益效果如下:
(1)本系统在嵌入式平台上也具备实时性。由于“挥手”检测确定手势感兴趣区域,大大减少了滑动窗口的数量,在窗口分类过程中,肤色滤波、点对描述,所涉及到的浮点操作比较少,因此实时性比较好。在700MHz的电视上运行,不考虑视频采集时间,平均每秒钟可处理50帧以上。
(2)本系统对于背景干扰具有好的鲁棒性。通过“挥手”检测,有效抑制了对无意识手势的检测,同时降低了滑动窗口分类中所遭遇的背景样本的复杂性,这些使得系统的稳定性得到提升;如图5所示,是“挥手”动作的检测结果,据此,大部分的背景区域可以被排除在外。
(3)本系统具有高的识别精度。由于“挥手”检测所形成的手势感兴趣区域,缩小了滑动窗口的范围;更进一步,基于肤色的窗口检测,可以过滤掉大部分非肤色窗口。所有这些,都大大降低了待分类图像中,负类模式的复杂性,从而提高了分类精度。如图8所示,是在感兴趣区域内将检测到的窗口进行聚类分析后的结果。
(4)低成本和人性化:本系统除了普通摄像头不需要其他传感设备,成本低;用户无需穿戴特殊装置,徒手操作,更加便利、自然、舒适。
以上所述仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或流程变换,或直接或间接运用在其它相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (8)
1.一种手势检测方法,其特征在于,包括如下步骤:
检测一种预定义的运动方式,用于确定检测感兴趣区域;
在所述感兴趣区域内对预定义手势进行多尺度滑动窗口检测;
从每个窗口图像的肤色隶属度图像中提取局部均值特征;
用Ada-Boost分类器对所述局部均值特征来做手势-背景的分类,若被分类为手势,则相应窗口作为候选目标窗口;
对所述候选目标窗口,基于窗口图像的灰度图像提取点对特征;
使用随机森林分类器对所述点对特征做分类,得到相应于各类手势的目标窗口;
对所述各类手势的目标窗口进行聚类处理;
输出成功检测到的手势类别及其所在的准确位置;
通过字典法来实现所述肤色隶属度图像的快速计算;
字典法来计算所述肤色隶属度图像的方法如下:在CbCr二维空间中,将包括椭圆在内的一个较大矩形邻域U进行网格剖分,形成若干个网格单元;计算隶属度函数f(x,y)在每个网格单元上的积分,并除以网格单元的面积,来做归一化,该归一化值作为网格单元上的肤色隶属度均值;将所有网格单元上的肤色隶属度均值提前计算并做存储形成字典;对于一幅彩色图像中的任意一个像素点,如果其CbCr分量不在区域U当中,则其肤色隶属度为0,否则,计算它所在的网格单元,从字典中获取其上的肤色隶属度均值,作为该点的肤色隶属度值。
2.如权利要求1所述的手势检测方法,其特征在于,所述预定运动方式为往返性挥手运动。
3.如权利要求2所述的手势检测方法,其特征在于,所述挥手动作的检测是通过肤色隶属度图像的绝对差分图像的积分图来来实现的。
4.如权利要求2所述的手势检测方法,其特征在于,通过肤色运动积分图像来检测挥手行为,其中,通过更新率来计算肤色运动积分图像;
通过更新率来计算肤色运动积分图像,其步骤包括:
对当前帧视频,先使用字典法计算肤色隶属度图;
与上一帧的肤色隶属度图像做差分,得到绝对差分图;
所述差分图结合上一帧状态的积分图像,使用更新率,计算当前帧状态的肤色运动积分图像。
5.如权利要求1所述的手势检测方法,其特征在于,所述多尺度滑动窗口检测的步骤,包括:
基于所述字典法计算感兴趣区域的肤色隶属度图像;
基于肤色的进行窗口滤波;
基于点对特征和随机森林分类器进行决策阶段。
6.如权利要求5所述的手势检测方法,其特征在于,所述窗口滤波的执行步骤,包括:
基于窗口图像的肤色隶属度图像提取局部均值特征;
使用预先训练的AdaBoost分类器对局部均值特征做分类,从而实现基于肤色的窗口过滤,最后形成一系列候选目标窗口。
7.如权利要求1所述的手势检测方法,其特征在于,所述对各类手势的目标窗口进行聚类处理的步骤,还包括:
对聚类后形成的窗口簇进行置信度分析;
置信度小于阈值者被过滤;
置信度大于等于阈值的窗口簇的代表窗口用于确定所述手势的位置。
8.一种手势检测系统,其特征在于,包括:
运动检测模块,通过肤色运动积分图像来检测一种规律性的挥手行为,根据所述挥手行为的发生区域,确定感兴趣区域;
肤色滤波模块,计算所述感兴趣区域的肤色隶属度图像,使用多尺度滑动窗口的方法,从每个窗口图像对应的隶属度图像中提取若干局部均值特征,使用Ada-Boost分类器对局部均值特征做分类,以此排除部分背景窗口;
决策模块,提取点对特征,使用预先训练得到的随机森林分类器做手势-背景以及手势-手势分类得到各个手势所对应的目标图像窗口;以及
输出模块,对各类手势的目标窗口进行聚类处理,输出成功检测到的手势类别及其所在的准确位置;
通过字典法来实现所述肤色隶属度图像的快速计算;
字典法来计算所述肤色隶属度图像的方法如下:在CbCr二维空间中,将包括椭圆在内的一个较大矩形邻域U进行网格剖分,形成若干个网格单元;计算隶属度函数f(x,y)在每个网格单元上的积分,并除以网格单元的面积,来做归一化,该归一化值作为网格单元上的肤色隶属度均值;将所有网格单元上的肤色隶属度均值提前计算并做存储形成字典;对于一幅彩色图像中的任意一个像素点,如果其CbCr分量不在区域U当中,则其肤色隶属度为0,否则,计算它所在的网格单元,从字典中获取其上的肤色隶属度均值,作为该点的肤色隶属度值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210290338.6A CN102831404B (zh) | 2012-08-15 | 2012-08-15 | 手势检测方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210290338.6A CN102831404B (zh) | 2012-08-15 | 2012-08-15 | 手势检测方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102831404A CN102831404A (zh) | 2012-12-19 |
CN102831404B true CN102831404B (zh) | 2016-01-13 |
Family
ID=47334532
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210290338.6A Active CN102831404B (zh) | 2012-08-15 | 2012-08-15 | 手势检测方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102831404B (zh) |
Families Citing this family (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103353935B (zh) * | 2013-07-19 | 2016-06-08 | 电子科技大学 | 一种用于智能家居系统的3d动态手势识别方法 |
CN103530607B (zh) * | 2013-09-30 | 2016-11-09 | 深圳市中智科创机器人有限公司 | 一种人手检测与识别的方法与装置 |
CN103530616B (zh) * | 2013-10-21 | 2017-02-01 | Tcl通讯(宁波)有限公司 | 一种移动终端的手势识别方法和装置 |
US10013630B1 (en) * | 2014-09-26 | 2018-07-03 | A9.Com, Inc. | Detection and recognition of objects lacking textures |
CN104850233B (zh) * | 2015-05-27 | 2016-04-06 | 济南大学 | 一种图像处理方法 |
US20180152622A1 (en) * | 2015-12-01 | 2018-05-31 | Huizhou Tcl Mobile Communication Co., Ltd | Mobile terminal-based photographing method and mobile terminal |
CN106022211B (zh) * | 2016-05-04 | 2019-06-28 | 北京航空航天大学 | 一种利用手势控制多媒体设备的方法 |
CN106022307B (zh) * | 2016-06-08 | 2019-09-27 | 中国科学院自动化研究所 | 基于船只旋转矩形空间的遥感图像船只检测方法 |
CN106250852A (zh) * | 2016-08-01 | 2016-12-21 | 乐视控股(北京)有限公司 | 虚拟现实终端及手型识别方法和装置 |
KR102507252B1 (ko) * | 2016-09-23 | 2023-03-07 | 애플 인크. | 워치 극장 모드 |
WO2018082498A1 (en) * | 2016-11-01 | 2018-05-11 | The Hong Kong University Of Science And Technology | Mid-air finger pointing detection for device interaction |
CN106845513B (zh) * | 2016-12-05 | 2019-10-15 | 华中师范大学 | 基于条件随机森林的人手检测器及方法 |
CN107122583A (zh) * | 2017-03-10 | 2017-09-01 | 深圳大学 | 一种中医证素的辨证方法及装置 |
CN107330354B (zh) * | 2017-03-20 | 2020-12-08 | 长沙理工大学 | 一种自然手势识别方法 |
DK179555B1 (en) | 2017-05-16 | 2019-02-13 | Apple Inc. | USER INTERFACE FOR A FLASHLIGHT MODE ON AN ELECTRONIC DEVICE |
CN107493495B (zh) * | 2017-08-14 | 2019-12-13 | 深圳市国华识别科技开发有限公司 | 交互位置确定方法、系统、存储介质和智能终端 |
CN107526440A (zh) * | 2017-08-28 | 2017-12-29 | 四川长虹电器股份有限公司 | 基于决策树分类的手势识别的智能电器控制方法及系统 |
CN108229324B (zh) * | 2017-11-30 | 2021-01-26 | 北京市商汤科技开发有限公司 | 手势追踪方法和装置、电子设备、计算机存储介质 |
CN108509853B (zh) * | 2018-03-05 | 2021-11-05 | 西南民族大学 | 一种基于摄像头视觉信息的手势识别方法 |
CN108846442A (zh) * | 2018-06-21 | 2018-11-20 | 吉旗物联科技(上海)有限公司 | 一种基于决策树的打电话手势视觉检测算法 |
CN110825217B (zh) * | 2018-08-13 | 2023-07-11 | 珠海格力电器股份有限公司 | 家电控制方法及装置 |
CN110908566A (zh) * | 2018-09-18 | 2020-03-24 | 珠海格力电器股份有限公司 | 信息处理方法及装置 |
CN109558826B (zh) * | 2018-11-23 | 2021-04-20 | 武汉灏存科技有限公司 | 基于模糊聚类的手势识别方法、系统、设备及存储介质 |
CN110390275B (zh) * | 2019-07-04 | 2023-05-26 | 淮阴工学院 | 一种基于迁移学习的手势分类方法 |
CN111881733B (zh) * | 2020-06-17 | 2023-07-21 | 艾普工华科技(武汉)有限公司 | 一种工人作业工步规范视觉识别判定与指导方法和系统 |
CN112148128B (zh) * | 2020-10-16 | 2022-11-25 | 哈尔滨工业大学 | 一种实时手势识别方法、装置及人机交互系统 |
CN112351325B (zh) * | 2020-11-06 | 2023-07-25 | 惠州视维新技术有限公司 | 基于手势的显示终端控制方法、终端和可读存储介质 |
CN112272191B (zh) * | 2020-11-16 | 2022-07-12 | Oppo广东移动通信有限公司 | 数据转移方法及相关装置 |
CN113989611B (zh) * | 2021-12-20 | 2022-06-28 | 北京优幕科技有限责任公司 | 任务切换方法及装置 |
-
2012
- 2012-08-15 CN CN201210290338.6A patent/CN102831404B/zh active Active
Non-Patent Citations (3)
Title |
---|
《一种面向实时交互的变形手势跟踪方法》;王西颖等;《Journal of Software》;20071031;第18卷(第10期);2423-2433 * |
《基于视觉的实时手势跟踪与识别及其在人机交互中的应用》;王辉;《CNKI信息科技辑》;20080731;正文第2.2、2.4、2.6、3.1-3.2、3.6、3.9章,图2.5、3.1、3.4、4.2 * |
《基于随机森林的人脸关键点精确定位方法》;王丽婷等;《清华大学学报(自然科学版)》;20091231;第49卷(第4期);见正文第543页摘要、右侧第2段,第544页第1.2节,第545页第1.3节 * |
Also Published As
Publication number | Publication date |
---|---|
CN102831404A (zh) | 2012-12-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102831404B (zh) | 手势检测方法及系统 | |
CN110070033B (zh) | 一种电力领域危险工作区域内安全帽佩戴状态检测方法 | |
Khan et al. | Hand gesture recognition: a literature review | |
Zhang et al. | Pedestrian detection method based on Faster R-CNN | |
CN102081918B (zh) | 一种视频图像显示控制方法及视频图像显示器 | |
CN104268583B (zh) | 基于颜色区域特征的行人重识别方法及系统 | |
CN102200834B (zh) | 面向电视控制的指尖鼠标交互方法 | |
CN102402289B (zh) | 一种基于机器视觉的手势鼠标识别方法 | |
CN107168527A (zh) | 基于区域卷积神经网络的第一视角手势识别与交互方法 | |
CN103226835B (zh) | 基于在线初始化梯度增强回归树的目标跟踪方法及系统 | |
CN109446922B (zh) | 一种实时鲁棒的人脸检测方法 | |
CN101344816A (zh) | 基于视线跟踪和手势识别的人机交互方法及装置 | |
CN103530892A (zh) | 一种基于Kinect传感器的双手跟踪方法与装置 | |
CN108459785A (zh) | 一种视频多尺度可视化方法与交互方法 | |
CN113269089B (zh) | 基于深度学习的实时手势识别方法及系统 | |
CN102902986A (zh) | 自动性别识别系统及方法 | |
CN108846359A (zh) | 一种基于皮肤颜色区域分割和机器学习算法相融合的手势识别方法及其应用 | |
CN104361313A (zh) | 一种基于多核学习异构特征融合的手势识别方法 | |
CN104281839A (zh) | 一种人体姿势识别方法和装置 | |
CN109800676A (zh) | 基于深度信息的手势识别方法及系统 | |
CN109558855B (zh) | 一种基于手掌轮廓特征与模版匹配法相结合的空间手势识别方法 | |
CN102194108A (zh) | 一种聚类线性鉴别分析特征选择的笑脸表情识别方法 | |
Stephan et al. | Gesture Recognition for Human-Computer Interaction (HCI). | |
CN105069745A (zh) | 基于普通图像传感器及增强现实技术的带表情变脸系统及方法 | |
Vishwakarma et al. | Simple and intelligent system to recognize the expression of speech-disabled person |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |