CN104680127A - 手势识别方法及系统 - Google Patents

手势识别方法及系统 Download PDF

Info

Publication number
CN104680127A
CN104680127A CN201410795071.5A CN201410795071A CN104680127A CN 104680127 A CN104680127 A CN 104680127A CN 201410795071 A CN201410795071 A CN 201410795071A CN 104680127 A CN104680127 A CN 104680127A
Authority
CN
China
Prior art keywords
gesture
image
point
vector
profile
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
Application number
CN201410795071.5A
Other languages
English (en)
Inventor
李保印
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wingtech Communication Co Ltd
Original Assignee
Wingtech Communication Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Wingtech Communication Co Ltd filed Critical Wingtech Communication Co Ltd
Priority to CN201410795071.5A priority Critical patent/CN104680127A/zh
Publication of CN104680127A publication Critical patent/CN104680127A/zh
Pending legal-status Critical Current

Links

Abstract

本发明揭示了一种手势识别方法及系统,所述方法包括如下步骤:步骤S1、手势检测步骤,实时检测视频流中的手势,标记检测到手势的区域为感兴趣区域;步骤S2、手势分割步骤,利用肤色分割对感兴趣区域进行处理,接着进行边缘检测和轮廓提取,得到手形轮廓的点序列;步骤S3、手势识别步骤,先提取手形轮廓的傅里叶描述子,然后利用PCA分析将其映射到特征空间的一个新向量,比较新向量与训练得到手势聚类中心的距离,以此判定该向量代表哪种手势。本发明提出的手势识别方法及系统,可提高手势识别的精确度及效率;能有效避免背景色的干扰。

Description

手势识别方法及系统
技术领域
本发明属于手势识别技术领域,涉及一种手势识别方法,尤其涉及一种基于主元分析和K均值聚类的手势识别方法;同时,本发明还涉及一种基于主元分析和K均值聚类的手势识别系统。
背景技术
手势作为一种自然、直观的人机交互手段,在过去二十多年里一直是人机交互技术的一个研究热点,基于计算机的手势识别技术已几近成熟。这两年来智能移动终端设备特别是Android设备数量迅猛增长,很多人也在研究除了触控以外其它的交互方式,例如语音识别技术,现在已日趋成熟,手势等肢体语言的交互形式将是另一个发展趋势。近来陆续出现了一些使用肢体语言交互的应用,如眨眼拍照的相机应用、笑容触发的相机应用、摇头来控制的阅读器应用。相比之下更直观的手势交互应用必将成为热门。
然而基于视觉的手势识别在数据采集时容易受到背景干扰,往往要求背景颜色和手的颜色有较好的区分度,特别是在智能移动平台这种背景多变且较为复杂的情况下,这种背景干扰会更加严重。另外识别算法的复杂度在智能移动平台尤为重要,这是因为必须考虑实时性要求。
此外,由于当前移动平台硬件条件的限制,不能采用过于复杂的识别算法,否则就不能满足实时性的要求。手势匹配算法仍然是当前手势识别过程中最大的一个难题。
发明内容
本发明所要解决的技术问题是:提供一种手势识别方法,可提高手势识别的精确度及效率。
此外,本发明还提供一种手势识别系统,可提高手势识别的精确度及效率。
为解决上述技术问题,本发明采用如下技术方案:
一种手势识别方法,所述方法包括如下步骤:
步骤S1、手势检测步骤,实时检测视频流中的手势,标记检测到手势的区域为感兴趣区域;
步骤S2、手势分割步骤,利用肤色分割对感兴趣区域进行处理,接着进行边缘检测和轮 廓提取,得到手形轮廓的点序列;
步骤S3、手势识别步骤,先提取手形轮廓的傅里叶描述子,然后利用PCA分析将其映射到特征空间的一个新向量,比较新向量与训练得到手势聚类中心的距离,以此判定该向量代表哪种手势。
作为本发明的一种优选方案,所述步骤S1手势检测步骤具体包括:
步骤S11、创建训练分类器所需训练样本:
训练样本包括正样本和负样本,其中正例样本是指目标手势样本,负样本指其它不包含目标手势的任意图片,所有的样本图片都被归一化为同样大小的尺寸;
步骤S12、LBP特征提取;具体包括:
-步骤S121、首先将检测窗口划分为m×n的小区域cell;
-步骤S122、对于每个cell中的一个像素,将相邻的若干个像素的灰度值与其进行比较,若周围像素值大于中心像素值,则该像素点的位置被标记为1,否则为0;这样,3*3邻域内的8个点经比较可产生8位二进制数,即得到该窗口中心像素点的LBP值;
-步骤S123、然后计算每个cell的直方图,即每个数字出现的频率,然后对该直方图进行归一化处理;
-步骤S124、最后将得到的每个cell的统计直方图进行连接成为一个特征向量,也就是整幅图的LBP纹理特征向量;
步骤S13、用训练样本来训练分类器:
为了使分类检测准确率较好,需要大量的手势训练样本,然后每个样本又提取出了LBP特征,得到训练数据;
步骤S14、利用训练好的分类器进行目标检测:
得到的特征手势分类器用来对输入的图像进行检测,也就是在图像中检测是否存在这个目标手势;检测过程如下:用一个扫描子窗口在待检测的图像中不断的移位滑动,子窗口每到一个位置,就会计算出该区域的特征,然后用训练好的分类器对该特征进行筛选,判定该区域是否为目标手势。
作为本发明的一种优选方案,所述步骤S2手势分割步骤中,把手势从视频背景中分离出来;利用手势检测技术中检测到的手势区域,将此区域设置为感兴趣区域ROI;采用的手势分割算法大致分为三个步骤:肤色分割,边缘检测和轮廓提取;所述手势分割步骤具体包括:
步骤S21、肤色分割步骤;
在YCbCr颜色空间中实现肤色分割;
YCbCr颜色空间由RGB颜色空间线性变化得到:
Y Cr Cb = 0.299 0.587 0.114 - 0.1687 - 0.3313 0.5 0.5 - 0.4187 - 0.0183 R G B - - - ( 1 )
将由YCbCr经过非线性色彩变换得到的色彩空间记为Y′Cr′Cb′,则转换公式如下:
Cb &prime; = [ Cb ( Y ) - Cb ( Y ) &OverBar; ] &CenterDot; W Cb W Cb ( Y ) + Cb ( Y ) &OverBar; if Y < Kl or Y > Kh Cb ( Y ) - - - ( 2 )
Cr &prime; = [ Cr ( Y ) - Cr ( Y ) &OverBar; ] &CenterDot; W Cr W Cr ( Y ) + Cr ( Y ) &OverBar; if Y < Kl or Y > Kh Cr ( Y ) - - - ( 3 )
其中,(1)Wcb(Y)和Wcr(Y)表示肤色区域的宽度,其表达式为:
W Cb ( Y ) = WL Cb + ( Y - Y min ) &CenterDot; ( W Cb - WL Cb ) K l - K min , if Y < K l WH Cb + ( Y max - Y ) &CenterDot; ( W Cb - WH Cb ) K max - K h , if Y > K h - - - ( 4 )
W Cr ( Y ) = WL Cr + ( Y - Y min ) &CenterDot; ( W Cr - WL Cr ) K l - K min , if Y < K l WH Cr + ( Y max - Y ) &CenterDot; ( W Cr - WH Cr ) K max - K h , if Y > K h - - - ( 5 )
(2)表示肤色区域的中轴线,其表达式为:
Cb ( Y ) &OverBar; = 108 + ( K l - Y ) &CenterDot; ( 118 - 108 ) K l - Y min , if Y < K l 108 + ( Y - K h ) &CenterDot; ( 118 - 108 ) Y max - K h , if Y > K h - - - ( 6 )
Cr ( Y ) &OverBar; = 154 + ( K l - Y ) &CenterDot; ( 154 - 144 ) K l - Y min , if Y < K l 154 + ( Y - K h ) &CenterDot; ( 154 - 132 ) Y max - K h , if Y > K h - - - ( 7 )
且有:Kl=125,Kh=188,表示非线性分段色彩变换的分段值;Ymin=16,Ymax=235表示肤色聚类区域中Y分量的最小最大值;WCb=46.79,WLCb=23,WHCb=14和WCr=38.76,WLCr=20,WHCr=10为实验得到的常数;
经过这样的非线性分段色彩变换,得到肤色聚类在YCbCr空间中的分布集中在一个椭圆中;用一个椭圆来近似表示这个肤色区域,得到如下公式:
( x - eCx ) 2 a 2 + ( y - eCy ) 2 b 2 = 1 - - - ( 8 )
其中, x y = cos &theta; sin &theta; - sin &theta; cos &theta; Cb &prime; - Cx Cr &prime; - Cy , Cx=109.38,Cy=152.02,eCx=1.6,eCy=2.41,θ=2.56(弧度),a=25.39,b=14.03;
将肤色点与非肤色点进行分离,对图像进行二值化;在椭圆内的点设置为255,不在椭圆内的点设置为0;在实际处理中令
t = ( x - eCx ) 2 a 2 + ( y - eCy ) 2 b 2 , s = e - t - - - ( 9 )
若s<e-1,则认为是肤色点,否则不是;
在YCbCr空间实行肤色分割后,黑色区域表示被过滤掉的肤色背景区域,白色区域表示肤色区域;由于椒盐噪声以及其他近肤色背景的存在,肤色提取后的手势出现了不少噪声,这些噪声会对后面轮廓的提取造成很大的干扰,所以必须尽量减少,使用形态学滤波处理来减少噪声;
形态学处理是一种针对图像集合的处理过程;二值图像形态学运算过程就是在图像中移动结构元素,将结构元素与其下面的重叠部分的图像进行交、并等集合运算;形态学处理的基本运算有腐蚀、膨胀、开运算、闭运算、击中与击不中和骨架抽取;设A为图像矩阵,B为结构元素矩阵,进行数学形态学运算时,实际上就是用B对A进行操作;
用图像B对图像A进行膨胀的定义为:
A &CirclePlus; B = { z | ( B ^ ) z &cap; A = &phi; } - - - ( 10 )
用图像B对图像A进行腐蚀的定义为:
A&Theta;B = { z | ( B ) z &SubsetEqual; A } - - - ( 11 )
用图像B对图像A进行开运算的定义为:
用图像B对图像A进行闭运算的定义为:
A &CenterDot; B = ( A &CirclePlus; B ) &Theta;B - - ( 13 )
腐蚀用来消除连通域的边界点,使边界向内收缩;将粘连在一起的不同目标物分离;滤掉小的颗粒噪声;膨胀用于将与目标区域的背景点合并到该目标物中,使目标物边界向外部扩张;将断裂开的目标物合并为一个整体;填补图像上物体中的细小空洞;考虑到肤色分割后,非肤色区域有椒盐噪声和近肤色背景的噪声,先进行腐蚀运算,除去黑色背景中的白点,然后进行膨胀运算,将肤色区域的空洞缩小,将噪声对轮廓提取的影响减小;
步骤S22、边缘检测步骤;
进行边缘检测是为了更好的提取手势轮廓;边缘检测是利用图像一阶导数的极值或二阶导数的过零点信息来提取边缘;具体的说,在图像中变化缓慢的区域,其相邻像素的灰度值变化小,从而梯度幅值也较小;而在图像的边缘区域,相邻像素的灰度变化大,因而梯度幅值也较大,所以边缘的位置可以用一阶导数的幅值来确定;同理,二阶导数的符号用来判断一个像素是在边缘暗的一边还是亮的一边,过零点的位置就是边缘位置;
采用Canny算子进行边缘检测,这是因为Canny边缘检测算子凭借其精确性,目前已得到广泛应用;Canny边缘检测的算法步骤如下:
(1)高斯平滑去噪;
(2)用Sobel算子计算梯度;
(3)确定梯度方向;
将计算出的梯度方向归为图像中可以跟踪的方向。对于图像中的一点p,只有四个方向与其周围的像素相连:水平0°,正对角45°,垂直90°和负对角135°;所以,将梯度方向按照它与上述四个方向的接近程度划归到离它最近的那个方向上;
因此,任何落入黄色第一区域(0-22.5°,157.5-180°)的边缘被置为0°;任何落入绿色第二区域(22.5-67.5°)的被置为45°;任何落入蓝色第三区域(67.5-112.5°)的被置为90°;最后,落入红色第四区域(112.5-157.5°)的被置为135°;
(4)非极大值抑制;
如果点(x,y)的梯度值比其相邻两点中任何一个的梯度值要小,则(x,y)不是边缘点;
(5)双阈值分割; 
取高低两个阈值TH和TL,如果某点p的梯度大于TH,则p肯定是边缘点;如果p点的梯度小于TL,则p肯定不是边缘点;如果p点的梯度在TL与TH之间,则判断其周围8个像素中是否有一个梯度大于TH,如果是则p是边缘点;否则,p就不是边缘点;
步骤S23、轮廓提取步骤;
Canny边缘检测算法根据像素间的差异检测出轮廓边界的像素,但是它并没有将轮廓作为一个整体;下一步是要将这些边缘像素组装成轮廓,轮廓提取就是获得手部的外部轮廓特征,它是构成手势形状的边界或外形线;
采用边缘跟踪算法提取图像轮廓,先找到目标物体轮廓上的像素点,然后从这些像素点按照某些特征去跟踪找出目标物体上的其它像素点;
边缘跟踪是在像素的八邻域内搜索来实现的:与图像中的任意一点相邻的8个像素点,称为该像素的8邻域点;假设点P(x,y)是轮廓上的一个点,则下一个轮廓点一定在点P(x,y)的八邻域内,通过这样的方法就可以将轮廓上的点串起来;
在Canny边缘提取后的图像为二值图像,背景点像素值为0,边缘点的像素值为1,设:
Sn为第n个轮廓点,n的初始值为0;d为八邻域像素点的位置编码,表示搜索的起始位置,提取轮廓定坐标的八邻域搜索算法步骤为:
(1)扫描图像的上每个像素点,扫描顺序为从上到下,从左到右。如果点P(x,y)≠0,则将P点设为轮廓跟踪的起点S0,将P点的坐标(x,y)存入轮廓点序列表;取d=5开始搜索八邻域内的下一个轮廓点;
(2)按照八邻域编码的顺序依次检查当前轮廓点得八邻域像素点,当遇到一个非0像素点时,将其设为新的轮廓点Sn,并记下它在八邻域中的位置编码d;
(3)如果新的轮廓点又回到了起始点,即Sn=S0,则搜索结束;否则将Sn坐标存入轮廓点序列表,并将Sn设为当前轮廓点,令d=(d+3)%8+1,返回执行第(2)步。
作为本发明的一种优选方案,所述步骤S3手势识别步骤采用基于K均值聚类算法的手势识别;
使用基于样本学习的方法进行静态手势的识别;先对六种目标手势的特征进行主成分析, 然后将分析后得到的特征向量进行K均值聚类,得到六种手势的聚类中心,这些聚类中心看做是六种手势的“模板”;将待识别的手势投影到特征空间,计算特征向量与各个聚类中心的距离,最终判定待识别的手势属于距离最小的那个目标手势;这是一个准确、高效的的手势识别算法,非常适合在移动终端这种运算速度有限的设备上使用;
在手势识别中,精确、有效的特征向量描述手形起着至关重要的作用;关于特征描述算子的选择,考虑以下原则:
(1)特征描述子需要具有旋转、平移和尺度不变性;
(2)特征描述子应该较容易获取,计算量要较小;
(3)特征描述子应该对相似的物体有着相似的描述。
傅里叶描述子符合以上三个原则,选用傅里叶算子来描述手势轮廓特征;
对于一个XY平面内的K点数字边界;假设该边界上点的坐标序列为{(xk,yk):k=0,1,…,K-1},这些坐标可以用下列形式表示:x(k)=xk和y(k)=yk,称此坐标序列为s(k)=[x(k),y(k)],k=0,1,2,…,K-1。将每对坐标对看成一个复数:
s(k)=x(k)+jy(k)     (14)
对k=0,1,2,…,K-1;这样表示的优点是将轮廓表示从二维简化到一维;
离散序列s(k)的傅里叶变换为:
z ( u ) = 1 n &Sigma; k = 0 n - 1 s ( k ) exp ( - j 2 &pi;ku n ) , ( u = 0,1 , . . . , n - 1 ) - - - ( 15 )
复系数z(u)是点序列s(k)在频域中的表示。这些系数的反向傅里叶变换存在于s(k);即:
s ( k ) = &Sigma; u = 0 K - 1 z ( u ) exp ( j 2 &pi;ku K ) , ( k = 0,1 , . . . , K - 1 ) - - - ( 16 )
根据傅里叶变换的性质z(u)=z*(n-u),其中z*是z的共轭复数,如果消去 到n-K-1范围内的高频,然后进行反向傅里叶变换,得到的曲线与原曲线近似,但原曲线中突变的部分变得平滑;由于傅里叶的高频系数能很好的解释细节,低频分量决定整体形状,因此用较少的系数就可以达到区分不同轮廓形状的目的;
根据傅里叶变换的性质,对物体轮廓点的起始位置平移a,将轮廓放大r倍,旋转角度,整体位移(x0,y0)后,新的轮廓的傅里叶变换表达式为:
其中,u=0,1,…,n-1,x′(k)+iy′(k)=x(k+a)+iy(k+a)
由式(17)可以看出,用傅里叶系数描述的轮廓,其系数幅值||z(u)||,u=1,2,…,n-1具有旋转和平移不变性,z(0)不具有平移不变性,并且与轮廓起点位置无关。平移物体仅改变其z(0)分量F(x0+iy0)的值;如果每一个系数(除z(0)外)都除||z(1)||,则||z(u)||/||z(1)||是不随尺度变化的;因而d(u)=||z(u)||/||(z(1))||具有尺度、平移和旋转不变性,并且与轮廓曲线的起点选择无关,这就是最终用于表示轮廓的傅里叶描述子,即:
u=1,2,…,n-1,||·||表示取膜     (18)
设提取的轮廓点序列为S(n)={s1,s2,…,sN},分别计算坐标序列x和y的傅里叶系数:
a m = 1 N - 1 &Sigma; n = 1 N - 1 S x ( n ) exp ( - i 2 &pi;mn N - 1 ) - - - ( 19 )
b m = 1 N - 1 &Sigma; n = 1 N - 1 S y ( n ) exp ( - i 2 &pi;mn N - 1 ) - - - ( 20 )
则轮廓S(n)的傅里叶描述子为:
V ( m ) = { v 1 , v 2 , . . . , v m } , v m = a m 2 + b m 2 - - - ( 21 )
按照式(18)归一化傅里叶描述子,得到:
V &prime; ( m ) = { 1 , v 2 &prime; , . . . , v m &prime; } , v m &prime; = | | v m | | | | v 1 | | - - - ( 22 )
取V′(m)的前20个系数,即m=20,这20个系数已经足以表示手的轮廓了。尽管在上一章提取的轮廓不够平滑,但是这只影响傅里叶描述子的高频分量,对于表示轮廓主要性状的低频分量影响不大;
当变量之间存在一定的相关关系时,通过原始变量的线性组合,构成较少的不相关的新 变量代替原始变量,而每个新变量都含有尽量多的原始变量的信息,这种处理问题的方法就叫主元分析,也叫主成分分析PCA,新变量叫原始变量的主成分;主元分析的目的是寻找任意统计分布的数据集合主要分量的子集;相应的基向量组满足正交性且由其定义的子空间最优地考虑数据的相关性,从而将原始数据集合变换到主分量空间,使单一数据样本的互相关性降低到最低点;
主元分析是最常用且非常有效的特征提取方法,它是以离散K-L变换为基础的数据压缩技术。假设将某幅N*N图像f(x,y)在某个传输通道上传输了M次,则会受到各种因素的随机干扰,接收到的图像集合为:
{f1(x,y),f2(x,y),…,fM(x,y)},x,y=0,1,2,…,N-1     (A) 
将M次传送的图像集合写成M个N2维向量(X1,X2,…,XM),生成向量的方法可以采用行堆叠或列堆叠的方法,对第i次获得的图像fi(x,y),可用N2维向量表示为:
X i = f i ( 0,0 ) f i ( 0,1 ) . . . f i ( 0 , N - 1 ) f i ( 1,0 ) f i ( 1,1 ) . . . f i ( 1 , N - 1 ) . . . f i ( N - 1,0 ) f i ( N - 1,1 ) . . . f i ( N - 1 , N - 1 ) - - - ( B )
若存在一个合适的正交变换A,使得变换后的图像Y=AX满足如下两个条件:
(1)图像Y具有M个分量,且M<<N2
(2)图像Y经反变换A-1Y恢复出的向量X和原始向量X具有最小的均方误差。
此时称正交变换A为K-L变换,也就是说经过一个变换,不仅删除了N2-M个分量, 而且仍能很好地恢复出源图像,即由变换结果Y重新恢复的图像。对应式(B),X向量的协方差矩阵定义为:Cx=E{(X-mx)(X-mx)T},其中E为期望值,T为矩阵的转置,mx=E{X}。在离散情况下,由于M是有限值,其平均值向量mx和X的协方差矩阵Cx可近似表示为:
m x &ap; 1 M &Sigma; i = 1 M X i C x = 1 M &Sigma; i = 1 M X i ( X - m x ) ( X - m x ) T &ap; 1 M &Sigma; i = 1 M X i X i T - m x m x T - - - ( C )
设ei和λi是协方差矩阵Cx对应的特征向量和特征值,其中,i=0,1,2,…,N2。将特征值按照降序排列,即则K-L变换核矩阵A的行用Cx的特征值构成:
A = e 11 e 12 . . . e 1 N 2 e 21 e 22 . . . e 2 N 2 . . . . . . . . . . . . e N 2 1 e N 2 2 . . . e N 2 N 2 - - - ( D )
其中,eij表示第i个特征向量的第j个分量,A是N2*N2的方阵。
由此可得离散K-L变换式为
Y=A(X-mx)     (E)
其中,X-mx是原始图像向量X减去平均值向量mx,称为中心化图像向量。
采用批处理的方法提取每个样本的手势轮廓傅里叶描述子,将得到的归一化傅里叶描述子向量的前三维;
数据准备好之后,接下来介绍主元分析的实现步骤:
计算样本向量Vi(m)的协方差矩阵,Vi(m)为第i个轮廓的傅里叶描述子;设为Vi(m)的均值向量,即其中i=1,2,…,L;则Vi(m)的协方差矩阵表达式为:
C = 1 N &Sigma; i = 1 L ( V i - V &OverBar; ) ( V i - V &OverBar; ) T - - - ( 23 )
计算协方差矩阵C的特征值λk和特征向量ek,然后将特征值λk按从大至小排序;由于 协方差矩阵已经归一化,所以算出的特征值绝大部分是小于1的,这些特征值对应的特征向量就被压缩,因为它们对反映不同的形状的手形轮廓贡献不大;在试验中取特征值大于1特征向量,这样的特征向量只有4个,记为A=(e1,e2,e3,e4);
(3)最后,将原样本向量降成4维新向量,为:
Pi(m)=Vi(m)A,i=1,2,…,L     (24) 
原样本向量Vi(m)是20维,经过K-L变换后变成了4维,成功的去除了相关性,减少了冗余信息;这4维向量包含了手形轮廓最主要的信息;
K均值聚类算法是动态聚类法的一种,它的特点在于聚类过程中通过不断迭代来完成,且迭代中通常容许样本从一个聚合类转移到另一个聚合类中;
K均值聚类算法的实现步骤如下
(1)选择6个初始聚类中心,计算式(E)中6种手势各自的Pi(m)向量的均值向量,分别为m1(1),m2(1),m3(1),m4(1),m5(1),m6(1)将这6个均值向量分别作为各自的聚类中心;
(2)计算所有样本与各聚类中心的距离
d=(X,mi(k))=||X-mi(k)||,i=1,2,…,6     (25) 
按照最小距离原则将样本X进行聚类,即 
若d=(X,mj(k))=min(X,mi(k)),i=1,2,…,6,则X∈wj
(3)重新计算聚类中心:
m i ( k + 1 ) = 1 N &Sigma; X &Element; w i X , i = 1,2 , . . . , 6 - - - ( 26 )
其中,Ni为当前wi类中样本的数目。
(4)若存在任意i∈{1,2,…,6},有mi(k+1)≠mi(k),则k=k+1,转到第(2)步;若存在任意i∈{1,2,…,6},有mi(k+1)=mi(k),则聚类结束。
一种手势识别系统,所述系统包括:
手势检测模块,用以实时检测视频流中的手势,标记检测到手势的区域为感兴趣区域;然后将感兴趣区域送入手势分割模块;
手势分割模块,用以利用肤色分割对感兴趣区域进行处理,接着进行边缘检测和轮廓提取,得到手形轮廓的点序列;
手势识别模块,用以先提取手形轮廓的傅里叶描述子,然后利用PCA分析将其映射到特征空间的一个新向量,比较新向量与训练得到手势聚类中心的距离,判定该向量代表哪种手势。
本发明的有益效果在于:本发明提出的手势识别方法及系统,可提高手势识别的精确度及效率;能有效避免背景色的干扰。
在手势检测方面,本发明提出了基于LBP特征的Viola-Jones检测算法,具有与Haar-like特征相当的检测效果。另外由于LBP是整数特征,其训练速度要比Haar-like特征快若干倍,并且计算量小,适合在移动设备上使用。
在手势识别方面,本发明通过肤色分割、边缘检测和轮廓提取三个步骤得到了较好的手势分割效果。在识别算法方面,本发明选取基于主元分析和K均值聚类的方法,该算法简单高效,有利于提高手势识别的精确度和效率。
附图说明
图1为本发明中基于LBP特征的手势检测模块的组成示意图。
图2为本发明方法中Sobel算子模板示意图。
图3为本发明方法中确定梯度方向时梯度方向示意图。
图4a为本发明方法中八邻域搜索位置坐标示意图。
图4b为本发明方法中八邻域搜索位置编码的示意图。
图5为本发明方法中动态聚类过程的流程图。
图6为本发明手势识别方法的流程图。
具体实施方式
下面结合附图详细说明本发明的优选实施例。
实施例一
本发明提出基于LBP特征的手势检测方法,在检测到手势的前提下,对检测到的感兴趣区域进行处理,分割出手势轮廓。手势分割分为肤色分割、边缘检测和轮廓提取三个步骤。接着对提取到的手势轮廓进行识别,由于当前移动平台硬件条件的限制,不能采用过于复杂 的识别算法,否则就不能满足实时性的要求。手势匹配算法仍然是当前手势识别过程中最大的一个难题。本发明采用基于主元分析和K均值聚类的识别算法,利用主元分析将特征数据降维,然后利用K-均值聚类算法进行分类。
本发明手势识别方法具体包括如下步骤:
【步骤S1】手势检测步骤(通过手势检测模块实现),实时检测视频流中的手势,标记检测到手势的区域为感兴趣区域;
【步骤S2】手势分割步骤(通过手势分隔模块实现),利用肤色分割对感兴趣区域进行处理,接着进行边缘检测和轮廓提取,得到手形轮廓的点序列;
【步骤S3】手势识别步骤(通过手势识别模块实现),先提取手形轮廓的傅里叶描述子,然后利用PCA分析将其映射到特征空间的一个新向量,比较新向量与训练得到手势聚类中心的距离,以此判定该向量代表哪种手势。
以下分别对各个步骤进行介绍。
【步骤S1、手势检测步骤】
基于LBP特征的手势检测系统框架如图1所示。按照此框架,将手势检测分为以下几个步骤:
(1)训练分类器所需训练样本的创建:
训练样本包括正样本和负样本,其中正例样本是指目标手势样本,负样本指其它不包含目标手势的任意图片(如背景等),所有的样本图片都被归一化为同样大小的尺寸。
(2)LBP特征提取: 
1.首先将检测窗口划分为16×16的小区域(cell);
2.对于每个cell中的一个像素,将相邻的8个像素的灰度值与其进行比较,若周围像素值大于中心像素值,则该像素点的位置被标记为1,否则为0。这样,3*3邻域内的8个点经比较可产生8位二进制数(也可以采用各种改进的LBP特征提取方式),即得到该窗口中心像素点的LBP值;
3.然后计算每个cell的直方图,即每个数字(假定是十进制数LBP值)出现的频率,然后对该直方图进行归一化处理;
4.最后将得到的每个cell的统计直方图进行连接成为一个特征向量,也就是整幅图的LBP纹理特征向量。
(3)用训练样本来训练分类器:
为了使分类检测准确率较好,需要大量的手势训练样本,然后每个样本又提取出了LBP 特征,这样就得到了训练数据。
(4)利用训练好的分类器进行目标检测:
得到了特征手势分类器就可以用来对输入的图像进行检测了,也就是在图像中检测是否存在这个目标手势。一般的检测过程是这样的:用一个扫描子窗口在待检测的图像中不断的移位滑动,子窗口每到一个位置,就会计算出该区域的特征,然后用我们训练好的分类器对该特征进行筛选,判定该区域是否为目标手势。
数据准备
本发明选用新西兰Massey大学Barczak等建立的一个ASL彩色静态手势库,这个手势库目前包含了5个实验者的手势,2425张图片,对具体的一个手势又包含光线条件的变化和少量的抖动,这是一个非常适合用作训练样本的手势数据库。Massey手势库中包含了同一个手势在五种光照下的图片,这五种光照包括上、下、左、右四个方向和均匀的光照,采用这些正样本进行训练将增强检测器对光线的适应能力,提高检测识别率。
为了提高本手势检测系统实用性,必须能够适应手势在一定范围内的旋转,虽然Massey手势库已经做了手势的抖动,但是还不能满足实际应用中需求,不可能让使用者保持竖直的手势进行检测。所以需要对Massey库中的手势进行旋转扩展,本发明对Massey手势库做这样扩展:同一个手势做5、10、15、-15、-10和-5六种角度的旋转。经过扩展后,我们得到每种手势350张样本图像作为正样本。
负样本图像也叫做背景样本,负样本可以是任意图像,但是这些图像中不能包含目标手势。这些图像可以是不同的尺寸,但是图像尺寸应该比训练窗口的尺寸大,因为这些图像将被用于抠取负样本,并将负样本缩小到训练窗口大小。本发明采用从网上随机下载的700张图片作为训练用负样本。
【步骤S2手势分割步骤】
手势分割就是把手势从视频背景中分离出来,精确的分割是特征提取和手势匹配的前提,直接关系到后续能否准确识别。为了减少计算量,本发明不是对完整的一帧图像进行处理,而是利用手势检测技术中检测到的手势区域,将此区域设置为感兴趣区域,即ROI(Region Of Interest)。采用的手势分割算法大致分为三个步骤:肤色分割,边缘检测和轮廓提取。
步骤S21、肤色分割步骤;
基于肤色的手势分割方法是最常用的、效果较好的方法。YCbCr颜色空间又称为YUV空间,是视频图像和数字图像中常用的色彩空间,主要用于数字电视系统中。Y代表亮度,Cb、Cr分别为蓝色分量和红色分量。不同种族、不同年龄、不同性别的人的肤色看起来存在差异, 但这个差异主要体现在亮度上,当去除亮度后,肤色就有很高的聚类性。而YCbCr空间具有将色度与亮度分离的特点,在YCbCr色彩空间中肤色的聚类特性比较好,而且是二维独立分布,能较好地限制肤色分布区域。故本发明在YCbCr颜色空间中实现肤色分割。
YCbCr颜色空间可由RGB颜色空间线性变化得到:
Y Cr Cb = 0.299 0.587 0.114 - 0.1687 - 0.3313 0.5 0.5 - 0.4187 - 0.0183 R G B - - - ( 1 )
将由YCbCr经过非线性色彩变换得到的色彩空间记为Y′Cr′Cb′,则转换公式如下:
Cb &prime; = [ Cb ( Y ) - Cb ( Y ) &OverBar; ] &CenterDot; W Cb W Cb ( Y ) + Cb ( Y ) &OverBar; if Y < Kl or Y > Kh Cb ( Y ) - - - ( 2 )
Cr &prime; = [ Cr ( Y ) - Cr ( Y ) &OverBar; ] &CenterDot; W Cr W Cr ( Y ) + Cr ( Y ) &OverBar; if Y < Kl or Y > Kh Cr ( Y ) - - - ( 3 )
其中,
(1)Wcb(Y)和Wcr(Y)表示肤色区域的宽度,其表达式为:
W Cb ( Y ) = WL Cb + ( Y - Y min ) &CenterDot; ( W Cb - WL Cb ) K l - K min , if Y < K l WH Cb + ( Y max - Y ) &CenterDot; ( W Cb - WH Cb ) K max - K h , if Y > K h - - - ( 4 )
W Cr ( Y ) = WL Cr + ( Y - Y min ) &CenterDot; ( W Cr - WL Cr ) K l - K min , if Y < K l WH Cr + ( Y max - Y ) &CenterDot; ( W Cr - WH Cr ) K max - K h , if Y > K h - - - ( 5 )
(2)表示肤色区域的中轴线,其表达式为:
Cb ( Y ) &OverBar; = 108 + ( K l - Y ) &CenterDot; ( 118 - 108 ) K l - Y min , if Y < K l 108 + ( Y - K h ) &CenterDot; ( 118 - 108 ) Y max - K h , if Y > K h - - - ( 6 )
Cr ( Y ) &OverBar; = 154 + ( K l - Y ) &CenterDot; ( 154 - 144 ) K l - Y min , if Y < K l 154 + ( Y - K h ) &CenterDot; ( 154 - 132 ) Y max - K h , if Y > K h - - - ( 7 )
且有:Kl=125,Kh=188,表示非线性分段色彩变换的分段值;Ymin=16,Ymax=235表示肤色聚类区域中Y分量的最小最大值;WCb=46.79,WLCb=23,WHCb=14和WCr=38.76,WLCr=20,WHCr=10为实验得到的常数。
经过这样的非线性分段色彩变换,我们得到肤色聚类在YCbCr空间中的分布集中在一个椭圆中。按照传统的方法,我们将用一个椭圆来近似表示这个肤色区域,可得到如下公式:
( x - eCx ) 2 a 2 + ( y - eCy ) 2 b 2 = 1 - - - ( 8 )
其中, x y = cos &theta; sin &theta; - sin &theta; cos &theta; Cb &prime; - Cx Cr &prime; - Cy , Cx=109.38,Cy=152.02,eCx=1.6,eCy=2.41,θ=2.56(弧度),a=25.39,b=14.03。
这样我们可以将肤色点与非肤色点进行分离,对图像进行二值化。在椭圆内的点设置为255,不在椭圆内的点设置为0。在实际处理中令
t = ( x - eCx ) 2 a 2 + ( y - eCy ) 2 b 2 , s = e - t - - - ( 9 )
若s<e-1,则认为是肤色点,否则不是。
在YCbCr空间实行肤色分割后,黑色区域表示被过滤掉的肤色背景区域,白色区域表示肤色区域。由于椒盐噪声以及其他近肤色背景的存在,肤色提取后的手势出现了不少噪声,这些噪声会对后面轮廓的提取造成很大的干扰,所以必须尽量减少,本发明使用形态学滤波处理来减少噪声。
形态学处理是一种针对图像集合的处理过程。二值图像形态学运算过程就是在图像中移动结构元素,将结构元素与其下面的重叠部分的图像进行交、并等集合运算。形态学处理的基本运算有腐蚀、膨胀、开运算、闭运算、击中与击不中和骨架抽取等。设A为图像矩阵,B为结构元素矩阵,进行数学形态学运算时,实际上就是用B对A进行操作。
用图像B对图像A进行膨胀的定义为:
A &CirclePlus; B = { z | ( B ^ ) z &cap; A = &phi; } - - - ( 10 )
用图像B对图像A进行腐蚀的定义为:
A&Theta;B = { z | ( B ) z &SubsetEqual; A } - - - ( 11 )
用图像B对图像A进行开运算的定义为:
用图像B对图像A进行闭运算的定义为:
A &CenterDot; B = ( A &CirclePlus; B ) &Theta;B - - ( 13 )
腐蚀可以用来消除连通域的边界点,使边界向内收缩;可以将粘连在一起的不同目标物分离;可以滤掉小的颗粒噪声。膨胀可以将与目标区域的背景点合并到该目标物中,使目标物边界向外部扩张;可以将断裂开的目标物合并为一个整体;可以填补图像上物体中的细小空洞。考虑到肤色分割后,非肤色区域有椒盐噪声和近肤色背景的噪声,先进行腐蚀运算,除去黑色背景中的白点,然后进行膨胀运算,将肤色区域的空洞缩小,这样就可以将噪声对轮廓提取的影响减小。
步骤S22、边缘检测步骤;
进行边缘检测是为了更好的提取手势轮廓。边缘检测一般是利用图像一阶导数的极值或二阶导数的过零点信息来提取边缘。具体的说,在图像中变化缓慢的区域,其相邻像素的灰度值变化小,从而梯度幅值也较小;而在图像的边缘区域,相邻像素的灰度变化大,因而梯度幅值也较大,所以边缘的位置可以用一阶导数的幅值来确定。同理,二阶导数的符号可以用来判断一个像素是在边缘暗的一边还是亮的一边,过零点的位置就是边缘位置。
本发明采用Canny算子进行边缘检测,这是因为Canny边缘检测算子凭借其精确性,目前已得到广泛应用。Canny边缘检测的算法步骤如下:
(1)高斯平滑去噪;
(2)用Sobel算子计算梯度;
(3)确定梯度方向;
将计算出的梯度方向归为图像中可以跟踪的方向。对于图像中的一点p,只有四个方向与其周围的像素相连:0°(水平),45°(正对角),90°(垂直)和135°(负对角)。所以,将梯度方向按照它与上述四个方向的接近程度划归到离它最近的那个方向上。如图3所 示。
因此,任何落入黄色区域(0-22.5°,157.5-180°)的边缘被置为0°;任何落入绿色区域(22.5-67.5°)的被置为45°;任何落入蓝色区域(67.5-112.5°)的被置为90°;最后,落入红色区域(112.5-157.5°)的被置为135°。
(4)非极大值抑制 
如果点(x,y)的梯度值比其相邻两点中任何一个的梯度值要小,则(x,y)不是边缘点。
(5)双阈值分割 
取高低两个阈值TH和TL,如果某点p的梯度大于TH,则p肯定是边缘点;如果p点的梯度小于TL,则p肯定不是边缘点;如果p点的梯度在TL与TH之间,则判断其周围8个像素中是否有一个梯度大于TH,如果是则p是边缘点;否则,p就不是边缘点。
步骤S23、轮廓提取步骤;
Canny边缘检测算法可以根据像素间的差异检测出轮廓边界的像素,但是它并没有将轮廓作为一个整体。下一步是要将这些边缘像素组装成轮廓,轮廓提取就是获得手部的外部轮廓特征,它是构成手势形状的边界或外形线。
本发明采用常用的边缘跟踪算法提取图像轮廓,它的基本思想是:先找到目标物体轮廓上的像素点,然后从这些像素点按照某些特征去跟踪找出目标物体上的其它像素点。
边缘跟踪是在像素的八邻域内搜索来实现的:与图像中的任意一点相邻的8个像素点,称为该像素的8邻域点。假设点P(x,y)是轮廓上的一个点,则下一个轮廓点一定在点P(x,y)的八邻域内,通过这样的方法就可以将轮廓上的点串起来。图4a和图4b分别表示P(x,y)的八邻域坐标和位置编码。
在Canny边缘提取后的图像为二值图像,背景点像素值为0,边缘点的像素值为1,设Sn为第n个轮廓点,n的初始值为0;d为八邻域像素点的位置编码,表示搜索的起始位置,提取轮廓定坐标的八邻域搜索算法步骤为:
(1)扫描图像的上每个像素点,扫描顺序为从上到下,从左到右。如果点P(x,y)≠0,则将P点设为轮廓跟踪的起点S0,将P点的坐标(x,y)存入轮廓点序列表。取d=5开始搜索八邻域内的下一个轮廓点。
(2)按照八邻域编码的顺序依次检查当前轮廓点得八邻域像素点,当遇到一个非0像素 点时,将其设为新的轮廓点Sn,并记下它在八邻域中的位置编码d。
(3)如果新的轮廓点又回到了起始点,即Sn=S0,则搜索结束。否则将Sn坐标存入轮廓点序列表,并将Sn设为当前轮廓点,令d=(d+3)%8+1,返回执行第(2)步。
【步骤S3、基于K均值聚类算法的手势识别】
本发明使用基于样本学习的方法进行静态手势的识别。先对六种目标手势的特征进行主成分析,然后将分析后得到的特征向量进行K均值聚类,得到六种手势的聚类中心,这些聚类中心可以看做是六种手势的“模板”。将待识别的手势投影到特征空间,计算特征向量与各个聚类中心的距离,最终判定待识别的手势属于距离最小的那个目标手势。这是一个准确、高效的的手势识别算法,非常适合在移动终端这种运算速度有限的设备上使用。
在手势识别中,精确、有效的特征向量描述手形起着至关重要的作用。关于特征描述算子的选择,本发明考虑以下原则:
(1)特征描述子需要具有旋转、平移和尺度不变性;
(2)特征描述子应该较容易获取,计算量要较小;
(3)特征描述子应该对相似的物体有着相似的描述。
傅里叶描述子符合以上三个原则,本发明选用傅里叶算子来描述手势轮廓特征。
对于一个XY平面内的K点数字边界。假设该边界上点的坐标序列为{(xk,yk):k=0,1,…,K-1},这些坐标可以用下列形式表示:x(k)=xk和y(k)=yk,称此坐标序列为s(k)=[x(k),y(k)],k=0,1,2,…,K-1。将每对坐标对看成一个复数:
s(k)=x(k)+jy(k)     (14)
对k=0,1,2,…,K-1。这样表示的优点是将轮廓表示从二维简化到一维。
离散序列s(k)的傅里叶变换为:
z ( u ) = 1 n &Sigma; k = 0 n - 1 s ( k ) exp ( - j 2 &pi;ku n ) , ( u = 0,1 , . . . , n - 1 ) - - - ( 15 )
复系数z(u)是点序列s(k)在频域中的表示。这些系数的反向傅里叶变换存在于s(k)。即:
s ( k ) = &Sigma; u = 0 K - 1 z ( u ) exp ( j 2 &pi;ku K ) , ( k = 0,1 , . . . , K - 1 ) - - - ( 16 )
根据傅里叶变换的性质z(u)=z*(n-u),其中z*是z的共轭复数,如果消去 到n-K-1范围内的高频,然后进行反向傅里叶变换,得到的曲线与原曲线近似,但原曲线中突变的部分变得平滑。由于傅里叶的高频系数能很好的解释细节,低频分量决定整体形状,因此用较少的系数就可以达到区分不同轮廓形状的目的。
根据傅里叶变换的性质,对物体轮廓点的起始位置平移a,将轮廓放大r倍,旋转角度,整体位移(x0,y0)后,新的轮廓的傅里叶变换表达式为:
其中,u=0,1,…,n-1,x′(k)+iy′(k)=x(k+a)+iy(k+a)
由式(17)可以看出,用傅里叶系数描述的轮廓,其系数幅值||z(u)||,u=1,2,…,n-1具有旋转和平移不变性,z(0)不具有平移不变性,并且与轮廓起点位置无关。平移物体仅改变其z(0)分量F(x0+iy0)的值。如果每一个系数(除z(0)外)都除||z(1)||,则||z(u)||/||z(1)||是不随尺度变化的。因而d(u)=||z(u)||/||(z(1))||具有尺度、平移和旋转不变性,并且与轮廓曲线的起点选择无关,这就是最终用于表示轮廓的傅里叶描述子,即:
u=1,2,…,n-1,||·||表示取膜     (18)
设提取的轮廓点序列为S(n)={s1,s2,…,sN},分别计算坐标序列x和y的傅里叶系数:
a m = 1 N - 1 &Sigma; n = 1 N - 1 S x ( n ) exp ( - i 2 &pi;mn N - 1 ) - - - ( 19 )
b m = 1 N - 1 &Sigma; n = 1 N - 1 S y ( n ) exp ( - i 2 &pi;mn N - 1 ) - - - ( 20 )
则轮廓S(n)的傅里叶描述子为:
V ( m ) = { v 1 , v 2 , . . . , v m } , v m = a m 2 + b m 2 - - - ( 21 )
按照式(18)归一化傅里叶描述子,得到:
V &prime; ( m ) = { 1 , v 2 &prime; , . . . , v m &prime; } , v m &prime; = | | v m | | | | v 1 | | - - - ( 22 )
本发明取V′(m)的前20个系数,即m=20,这20个系数已经足以表示手的轮廓了。尽管在上一章提取的轮廓不够平滑,但是这只影响傅里叶描述子的高频分量,对于表示轮廓主要性状的低频分量影响不大。
当变量之间存在一定的相关关系时,可以通过原始变量的线性组合,构成较少的不相关的新变量代替原始变量,而每个新变量都含有尽量多的原始变量的信息,这种处理问题的方法就叫主元分析,也叫主成分分析(PCA),新变量叫原始变量的主成分。主元分析的目的是寻找任意统计分布的数据集合主要分量的子集。相应的基向量组满足正交性且由其定义的子空间最优地考虑数据的相关性,从而将原始数据集合变换到主分量空间,使单一数据样本的互相关性降低到最低点。
主元分析是最常用且非常有效的特征提取方法,它是以离散K-L变换为基础的数据压缩技术。假设将某幅N*N图像f(x,y)在某个传输通道上传输了M次,则会受到各种因素的随机干扰,接收到的图像集合为:
{f1(x,y),f2(x,y),…,fM(x,y)},x,y=0,1,2,…,N-1     (A) 
将M次传送的图像集合写成M个N2维向量(X1,X2,…,XM),生成向量的方法可以采用行堆叠或列堆叠的方法,对第i次获得的图像fi(x,y),可用N2维向量表示为:
X i = f i ( 0,0 ) f i ( 0,1 ) . . . f i ( 0 , N - 1 ) f i ( 1,0 ) f i ( 1,1 ) . . . f i ( 1 , N - 1 ) . . . f i ( N - 1,0 ) f i ( N - 1,1 ) . . . f i ( N - 1 , N - 1 ) - - - ( B )
若存在一个合适的正交变换A,使得变换后的图像Y=AX满足如下两个条件:
(3)图像Y具有M个分量,且M<<N2
(4)图像Y经反变换A-1Y恢复出的向量X和原始向量X具有最小的均方误差。
此时称正交变换A为K-L变换,也就是说经过一个变换,不仅删除了N2-M个分量,而且仍能很好地恢复出源图像,即由变换结果Y重新恢复的图像。对应式(B),X向量的协方差矩阵定义为:Cx=E{(X-mx)(X-mx)T},其中E为期望值,T为矩阵的转置,mx=E{X}。在离散情况下,由于M是有限值,其平均值向量mx和X的协方差矩阵Cx可近似表示为:
m x &ap; 1 M &Sigma; i = 1 M X i C x = 1 M &Sigma; i = 1 M X i ( X - m x ) ( X - m x ) T &ap; 1 M &Sigma; i = 1 M X i X i T - m x m x T - - - ( C )
设ei和λi是协方差矩阵Cx对应的特征向量和特征值,其中,i=0,1,2,…,N2。将特征值按照降序排列,即则K-L变换核矩阵A的行用Cx的特征值构成:
A = e 11 e 12 . . . e 1 N 2 e 21 e 22 . . . e 2 N 2 . . . . . . . . . . . . e N 2 1 e N 2 2 . . . e N 2 N 2 - - - ( D )
其中,eij表示第i个特征向量的第j个分量,A是N2*N2的方阵。
由此可得离散K-L变换式为
Y=A(X-mx)     (E)
其中,X-mx是原始图像向量X减去平均值向量mx,称为中心化图像向量。
本发明采用训练样本库中5个个体的手势和测试样本库中5个个体的手势,共10个人的手势样本,每个人每种手势各取10张图片,这样每个手势就有10*10=100个样本,6种手势总计600个样本(当然也可以是其他数量)。对于如此多的样本,本发明采用批处理的方法提取每个样本的手势轮廓傅里叶描述子,具体过程这里不作详述。将得到的600个归一化傅里叶描述子向量的前三维。
数据准备好之后,接下来介绍主元分析的实现步骤:
(1)计算样本向量Vi(m)的协方差矩阵,Vi(m)为第i个轮廓的傅里叶描述子。设为Vi(m)的均值向量,即其中i=1,2,…,600。则Vi(m)的协方差矩阵表达式为:
C = 1 N &Sigma; i = 1 600 ( V i - V &OverBar; ) ( V i - V &OverBar; ) T - - - ( 23 )
(2)计算协方差矩阵C的特征值λk和特征向量ek,然后将特征值λk按从大至小排序。由于协方差矩阵已经归一化了,所以算出的特征值绝大部分是小于1的,这些特征值对应的特征向量就可以被压缩了,因为它们对反映不同的形状的手形轮廓贡献不大。本发明在试验中取特征值大于1特征向量,这样的特征向量只有4个,记为A=(e1,e2,e3,e4)。
(3)最后,将原样本向量降成4维新向量,为:
Pi(m)=Vi(m)A,i=1,2,…,600     (24) 
可以看到,原样本向量Vi(m)是20维,经过K-L变换后变成了4维,成功的去除了相关性,减少了冗余信息。这4维向量包含了手形轮廓最主要的信息。
K均值聚类算法是动态聚类法的一种,它的特点在于聚类过程中通过不断迭代来完成, 且迭代中通常容许样本从一个聚合类转移到另一个聚合类中。动态聚类过程如图5所示:
在本发明中K均值聚类算法的实现步骤如下
(1)选择6个初始聚类中心,计算式(E)中6种手势各自的Pi(m)向量的均值向量,分别为m1(1),m2(1),m3(1),m4(1),m5(1),m6(1)将这6个均值向量分别作为各自的聚类中心;
(2)计算所有样本与各聚类中心的距离
d=(X,mi(k))=||X-mi(k)||,i=1,2,…,6     (25) 
按照最小距离原则将样本X进行聚类,即 
若d=(X,mj(k))=min(X,mi(k)),i=1,2,…,6,则X∈wj
(3)重新计算聚类中心:
m i ( k + 1 ) = 1 N &Sigma; X &Element; w i X , i = 1,2 , . . . , 6 - - - ( 26 )
其中,Ni为当前wi类中样本的数目。
(4)若存在任意i∈{1,2,…,6},有mi(k+1)≠mi(k),则k=k+1,转到第(2)步;若存在任意i∈{1,2,…,6},有mi(k+1)=mi(k),则聚类结束。
本发明手势识别系统主要分为三个模块,手势检测模块、手势分割模块和手势识别模块,图6显示了本系统软件设计的流程图。
手势检测模块用以实时检测视频流中的手势,标记检测到手势的区域为感兴趣区域;然后将感兴趣区域送入手势分割模块。手势分割模块利用肤色分割对感兴趣区域进行处理,接着进行边缘检测和轮廓提取,得到手形轮廓的点序列。手势识别模块先提取手形轮廓的傅里叶描述子,然后利用PCA分析将其映射到特征空间的一个新向量,比较新向量与训练得到手势聚类中心的距离,判定该向量代表哪种手势。各模块的具体实现方式可参考以上对方法中对应各个步骤的描述。
综上所述,本发明提出的手势识别方法及系统,可提高手势识别的精确度及效率;能有效避免背景色的干扰。
在手势检测方面,本发明提出了基于LBP特征的Viola-Jones检测算法,具有与 Haar-like特征相当的检测效果。另外由于LBP是整数特征,其训练速度要比Haar-like特征快若干倍,并且计算量小,适合在移动设备上使用。
在手势识别方面,本发明通过肤色分割、边缘检测和轮廓提取三个步骤得到了较好的手势分割效果。在识别算法方面,本发明选取基于主元分析和K均值聚类的方法,该算法简单高效,有利于提高手势识别的精确度和效率。
这里本发明的描述和应用是说明性的,并非想将本发明的范围限制在上述实施例中。这里所披露的实施例的变形和改变是可能的,对于那些本领域的普通技术人员来说实施例的替换和等效的各种部件是公知的。本领域技术人员应该清楚的是,在不脱离本发明的精神或本质特征的情况下,本发明可以以其它形式、结构、布置、比例,以及用其它组件、材料和部件来实现。在不脱离本发明范围和精神的情况下,可以对这里所披露的实施例进行其它变形和改变。

Claims (5)

1.一种手势识别方法,其特征在于,所述方法包括如下步骤:
步骤S1、手势检测步骤,实时检测视频流中的手势,标记检测到手势的区域为感兴趣区域;
步骤S2、手势分割步骤,利用肤色分割对感兴趣区域进行处理,接着进行边缘检测和轮廓提取,得到手形轮廓的点序列;
步骤S3、手势识别步骤,先提取手形轮廓的傅里叶描述子,然后利用PCA分析将其映射到特征空间的一个新向量,比较新向量与训练得到手势聚类中心的距离,以此判定该向量代表哪种手势。
2.根据权利要求1所述的手势识别方法,其特征在于:
所述步骤S1手势检测步骤具体包括:
步骤S11、创建训练分类器所需训练样本:
训练样本包括正样本和负样本,其中正例样本是指目标手势样本,负样本指其它不包含目标手势的任意图片,所有的样本图片都被归一化为同样大小的尺寸;
步骤S12、LBP特征提取;具体包括:
-步骤S121、首先将检测窗口划分为m×n的小区域cell;
-步骤S122、对于每个cell中的一个像素,将相邻的若干个像素的灰度值与其进行比较,若周围像素值大于中心像素值,则该像素点的位置被标记为1,否则为0;这样,3*3邻域内的8个点经比较可产生8位二进制数,即得到该窗口中心像素点的LBP值;
-步骤S123、然后计算每个cell的直方图,即每个数字出现的频率,然后对该直方图进行归一化处理;
-步骤S124、最后将得到的每个cell的统计直方图进行连接成为一个特征向量,也就是整幅图的LBP纹理特征向量;
步骤S13、用训练样本来训练分类器:
为了使分类检测准确率较好,需要大量的手势训练样本,然后每个样本又提取出了LBP特征,得到训练数据;
步骤S14、利用训练好的分类器进行目标检测:
得到的特征手势分类器用来对输入的图像进行检测,也就是在图像中检测是否存在这个目标手势;检测过程如下:用一个扫描子窗口在待检测的图像中不断的移位滑动,子窗口每到一个位置,就会计算出该区域的特征,然后用训练好的分类器对该特征进行筛选,判定该区域是否为目标手势。
3.根据权利要求1所述的手势识别方法,其特征在于:
所述步骤S2手势分割步骤中,把手势从视频背景中分离出来;利用手势检测技术中检测到的手势区域,将此区域设置为感兴趣区域ROI;采用的手势分割算法大致分为三个步骤:肤色分割,边缘检测和轮廓提取;所述手势分割步骤具体包括:
步骤S21、肤色分割步骤;
在YCbCr颜色空间中实现肤色分割;
YCbCr颜色空间由RGB颜色空间线性变化得到:
Y Cr Cb = 0.299 0.587 0.114 - 0.1687 - 0.3313 0.5 0.5 - 0.4187 - 0.0183 R G B - - - ( 1 )
将由YCbCr经过非线性色彩变换得到的色彩空间记为Y′Cr′Cb′,则转换公式如下:
Cb &prime; = [ Cb ( Y ) - Cb ( Y ) &OverBar; ] &CenterDot; W Cb W Cb ( Y ) + Cb ( Y ) &OverBar; if Y < Kl or Y > Kh Cb ( Y ) - - - ( 2 )
Cr &prime; = [ Cr ( Y ) - Cr ( Y ) &OverBar; ] &CenterDot; W Cr W Cr ( Y ) + Cr ( Y ) &OverBar; if Y < Kl or Y > Kh Cr ( Y ) - - - ( 3 )
其中,(1)Wcb(Y)和Wcr(Y)表示肤色区域的宽度,其表达式为:
W Cb ( Y ) = WL Cb + ( Y - Y min ) &CenterDot; ( W Cb - WL Cb ) K l - K min , if Y < K l WH Cb + ( Y max - Y ) &CenterDot; ( W Cb - WH Cb ) K max - K h , if Y > K h - - - ( 4 )
W Cr ( Y ) = WL Cr + ( Y - Y min ) &CenterDot; ( W Cr - WL Cr ) K l - K min , if Y < K l WH Cr + ( Y max - Y ) &CenterDot; ( W Cr - WH Cr ) K max - K h , if Y > K h - - - ( 5 )
(2)表示肤色区域的中轴线,其表达式为:
Cb ( Y ) &OverBar; = 108 + ( K l - Y ) &CenterDot; ( 118 - 108 ) K l - Y min , if Y < K l 108 + ( Y - K h ) &CenterDot; ( 118 - 108 ) Y max - K h , if Y > K h - - - ( 6 )
Cr ( Y ) &OverBar; = 154 + ( K l - Y ) &CenterDot; ( 154 - 144 ) K l - Y min , if Y < K l 154 + ( Y - K h ) &CenterDot; ( 154 - 132 ) Y max - K h , if Y > K h - - - ( 7 )
且有:Kl=125,Kh=188,表示非线性分段色彩变换的分段值;Ymin=16,Ymax=235表示肤色聚类区域中Y分量的最小最大值;WCb=46.79,WLCb=23,WHCb=14和WCr=38.76,WLCr=20,WHCr=10为实验得到的常数;
经过这样的非线性分段色彩变换,得到肤色聚类在YCbCr空间中的分布集中在一个椭圆中;用一个椭圆来近似表示这个肤色区域,得到如下公式:
( x - eCx ) 2 a 2 + ( y - eCy ) 2 b 2 = 1 - - - ( 8 )
其中, x y = cos &theta; sin &theta; - sin &theta; cos &theta; Cb &prime; - Cx Cr &prime; - Cy , Cx=109.38,Cy=152.02,eCx=1.6,eCy=2.41,θ=2.56(弧度),a=25.39,b=14.03;
将肤色点与非肤色点进行分离,对图像进行二值化;在椭圆内的点设置为255,不在椭圆内的点设置为0;在实际处理中令
t = ( x - eCx ) 2 a 2 + ( y - eCy ) 2 b 2 , s = e - t - - - ( 9 )
若s<e-1,则认为是肤色点,否则不是;
在YCbCr空间实行肤色分割后,黑色区域表示被过滤掉的肤色背景区域,白色区域表示肤色区域;由于椒盐噪声以及其他近肤色背景的存在,肤色提取后的手势出现了不少噪声,这些噪声会对后面轮廓的提取造成很大的干扰,所以必须尽量减少,使用形态学滤波处理来减少噪声;
形态学处理是一种针对图像集合的处理过程;二值图像形态学运算过程就是在图像中移动结构元素,将结构元素与其下面的重叠部分的图像进行交、并等集合运算;形态学处理的基本运算有腐蚀、膨胀、开运算、闭运算、击中与击不中和骨架抽取;设A为图像矩阵,B为结构元素矩阵,进行数学形态学运算时,实际上就是用B对A进行操作;
用图像B对图像A进行膨胀的定义为:
A &CirclePlus; B = { z | ( B ^ ) z &cap; A &NotEqual; &phi; } - - - ( 10 )
用图像B对图像A进行腐蚀的定义为:
A&Theta;B = { z | ( B ) z &SubsetEqual; A } - - - ( 11 )
用图像B对图像A进行开运算的定义为:
用图像B对图像A进行闭运算的定义为:
A &CenterDot; B = ( A &CirclePlus; B ) &Theta;B - - - ( 13 )
腐蚀用来消除连通域的边界点,使边界向内收缩;将粘连在一起的不同目标物分离;滤掉小的颗粒噪声;膨胀用于将与目标区域的背景点合并到该目标物中,使目标物边界向外部扩张;将断裂开的目标物合并为一个整体;填补图像上物体中的细小空洞;考虑到肤色分割后,非肤色区域有椒盐噪声和近肤色背景的噪声,先进行腐蚀运算,除去黑色背景中的白点,然后进行膨胀运算,将肤色区域的空洞缩小,将噪声对轮廓提取的影响减小;
步骤S22、边缘检测步骤;
进行边缘检测是为了更好的提取手势轮廓;边缘检测是利用图像一阶导数的极值或二阶导数的过零点信息来提取边缘;具体的说,在图像中变化缓慢的区域,其相邻像素的灰度值变化小,从而梯度幅值也较小;而在图像的边缘区域,相邻像素的灰度变化大,因而梯度幅值也较大,所以边缘的位置可以用一阶导数的幅值来确定;同理,二阶导数的符号用来判断一个像素是在边缘暗的一边还是亮的一边,过零点的位置就是边缘位置;
采用Canny算子进行边缘检测,这是因为Canny边缘检测算子凭借其精确性,目前已得到广泛应用;Canny边缘检测的算法步骤如下:
(1)高斯平滑去噪;
(2)用Sobel算子计算梯度;
(3)确定梯度方向;
将计算出的梯度方向归为图像中可以跟踪的方向;对于图像中的一点p,只有四个方向与其周围的像素相连:水平0°,正对角45°,垂直90°和负对角135°;所以,将梯度方向按照它与上述四个方向的接近程度划归到离它最近的那个方向上;
任何落入第一区域(0-22.5°,157.5-180°)的边缘被置为0°;任何落入第二区域(22.5-67.5°)的被置为45°;任何落入第三区域(67.5-112.5°)的被置为90°;最后,落入第四区域(112.5-157.5°)的被置为135°;
(4)非极大值抑制;
如果点(x,y)的梯度值比其相邻两点中任何一个的梯度值要小,则(x,y)不是边缘点;
(5)双阈值分割;
取高低两个阈值TH和TL,如果某点p的梯度大于TH,则p肯定是边缘点;如果p点的梯度小于TL,则p肯定不是边缘点;如果p点的梯度在TL与TH之间,则判断其周围8个像素中是否有一个梯度大于TH,如果是则p是边缘点;否则,p就不是边缘点;
步骤S23、轮廓提取步骤;
Canny边缘检测算法根据像素间的差异检测出轮廓边界的像素,但是它并没有将轮廓作为一个整体;下一步是要将这些边缘像素组装成轮廓,轮廓提取就是获得手部的外部轮廓特征,它是构成手势形状的边界或外形线;
采用边缘跟踪算法提取图像轮廓,先找到目标物体轮廓上的像素点,然后从这些像素点按照某些特征去跟踪找出目标物体上的其它像素点;
边缘跟踪是在像素的八邻域内搜索来实现的:与图像中的任意一点相邻的8个像素点,称为该像素的8邻域点;假设点P(x,y)是轮廓上的一个点,则下一个轮廓点一定在点P(x,y)的八邻域内,通过这样的方法就可以将轮廓上的点串起来;
在Canny边缘提取后的图像为二值图像,背景点像素值为0,边缘点的像素值为1,设:
Sn为第n个轮廓点,n的初始值为0;d为八邻域像素点的位置编码,表示搜索的起始位置,提取轮廓定坐标的八邻域搜索算法步骤为:
(1)扫描图像的上每个像素点,扫描顺序为从上到下,从左到右;如果点P(x,y)≠0,则将P点设为轮廓跟踪的起点S0,将P点的坐标(x,y)存入轮廓点序列表;取d=5开始搜索八邻域内的下一个轮廓点;
(2)按照八邻域编码的顺序依次检查当前轮廓点得八邻域像素点,当遇到一个非0像素点时,将其设为新的轮廓点Sn,并记下它在八邻域中的位置编码d;
(3)如果新的轮廓点又回到了起始点,即Sn=S0,则搜索结束;否则将Sn坐标存入轮廓点序列表,并将Sn设为当前轮廓点,令d=(d+3)%8+1,返回执行第(2)步。
4.根据权利要求1所述的手势识别方法,其特征在于:
所述步骤S3手势识别步骤采用基于K均值聚类算法的手势识别;
使用基于样本学习的方法进行静态手势的识别;先对六种目标手势的特征进行主成分析,然后将分析后得到的特征向量进行K均值聚类,得到六种手势的聚类中心,这些聚类中心看做是六种手势的“模板”;将待识别的手势投影到特征空间,计算特征向量与各个聚类中心的距离,最终判定待识别的手势属于距离最小的那个目标手势;这是一个准确、高效的的手势识别算法,非常适合在移动终端这种运算速度有限的设备上使用;
在手势识别中,精确、有效的特征向量描述手形起着至关重要的作用;关于特征描述算子的选择,考虑以下原则:
(1)特征描述子需要具有旋转、平移和尺度不变性;
(2)特征描述子应该较容易获取,计算量要较小;
(3)特征描述子应该对相似的物体有着相似的描述;
傅里叶描述子符合以上三个原则,选用傅里叶算子来描述手势轮廓特征;
对于一个XY平面内的K点数字边界;假设该边界上点的坐标序列为{(xk,yk):k=0,1,…,K-1},这些坐标可以用下列形式表示:x(k)=xk和y(k)=yk,称此坐标序列为s(k)=[x(k),y(k)],k=0,1,2,…,K-1;将每对坐标对看成一个复数:s(k)=x(k)+jy(k)   (14)
对k=0,1,2,…,K-1;这样表示的优点是将轮廓表示从二维简化到一维;
离散序列s(k)的傅里叶变换为:
z ( u ) = 1 n &Sigma; k = 0 n - 1 s ( k ) exp ( - j 2 &pi;ku n ) , ( u = 0,1 , . . . , n - 1 ) - - - ( 15 )
复系数z(u)是点序列s(k)在频域中的表示;这些系数的反向傅里叶变换存在于s(k);即:
s ( k ) = &Sigma; u = 0 K - 1 Z ( u ) exp ( j 2 &pi;ku K ) , k ( k = 0,1 , . . . , K - 1 ) - - - ( 16 )
根据傅里叶变换的性质z(u)=z*(n-u),其中z*是z的共轭复数,如果消去到n-K-1范围内的高频,然后进行反向傅里叶变换,得到的曲线与原曲线近似,但原曲线中突变的部分变得平滑;由于傅里叶的高频系数能很好的解释细节,低频分量决定整体形状,因此用较少的系数就可以达到区分不同轮廓形状的目的;
根据傅里叶变换的性质,对物体轮廓点的起始位置平移a,将轮廓放大r倍,旋转角度,整体位移(x0,y0)后,新的轮廓的傅里叶变换表达式为:
其中,u=0,1,…,n-1,x′(k)+iy′(k)=x(k+a)+iy(k+a)
由式(17)可以看出,用傅里叶系数描述的轮廓,其系数幅值||z(u)||,u=1,2,…,n-1具有旋转和平移不变性,z(0)不具有平移不变性,并且与轮廓起点位置无关;平移物体仅改变其z(0)分量F(x0+iy0)的值;如果每一个系数(除z(0)外)都除||z(1)||,则||z(u)||/||z(1)||是不随尺度变化的;因而d(u)=||z(u)||/||(z(1))||具有尺度、平移和旋转不变性,并且与轮廓曲线的起点选择无关,这就是最终用于表示轮廓的傅里叶描述子,即:
u=1,2,…,n-1,||·||表示取膜  (18)
设提取的轮廓点序列为S(n)={s1,s2,…,sN},分别计算坐标序列x和y的傅里叶系数:
a m = 1 N - 1 &Sigma; n = 1 N - 1 S x ( n ) exp ( - i 2 &pi;mn N - 1 ) - - - ( 19 )
b m = 1 N - 1 &Sigma; n = 1 N - 1 S y ( n ) exp ( - i 2 &pi;mn N - 1 ) - - - ( 20 )
则轮廓S(n)的傅里叶描述子为:
V ( m ) = { v 1 , v 2 , . . . , v m } , v m = a m 2 + b m 2 - - - ( 21 )
按照式(18)归一化傅里叶描述子,得到:
V &prime; ( m ) = { 1 , v 2 &prime; , . . . , v m &prime; } , v m &prime; = | | v m | | | | v 1 | | - - - ( 22 )
取V′(m)的前20个系数,即m=20,这20个系数已经足以表示手的轮廓了;尽管在上一章提取的轮廓不够平滑,但是这只影响傅里叶描述子的高频分量,对于表示轮廓主要性状的低频分量影响不大;
当变量之间存在一定的相关关系时,通过原始变量的线性组合,构成较少的不相关的新变量代替原始变量,而每个新变量都含有尽量多的原始变量的信息,这种处理问题的方法就叫主元分析,也叫主成分分析PCA,新变量叫原始变量的主成分;主元分析的目的是寻找任意统计分布的数据集合主要分量的子集;相应的基向量组满足正交性且由其定义的子空间最优地考虑数据的相关性,从而将原始数据集合变换到主分量空间,使单一数据样本的互相关性降低到最低点;
主元分析是最常用且非常有效的特征提取方法,它是以离散K-L变换为基础的数据压缩技术;假设将某幅N*N图像f(x,y)在某个传输通道上传输了M次,则会受到各种因素的随机干扰,接收到的图像集合为:
{f1(x,y),f2(x,y),…,fM(x,y)},x,y=0,1,2,…,N-1  (A)
将M次传送的图像集合写成M个N2维向量(X1,X2,…,XM),生成向量的方法可以采用行堆叠或列堆叠的方法,对第i次获得的图像fi(x,y),可用N2维向量表示为:
X i = f i ( 0,0 ) f i ( 0,1 ) . . . f i ( 0 , N - 1 ) f i ( 1,0 ) f i ( 1,1 ) . . . f i ( 1 , N - 1 ) . . . f i ( N - 1,0 ) f i ( N - 1,1 ) . . . f i ( N - 1 , N - 1 ) - - - ( B )
若存在一个合适的正交变换A,使得变换后的图像Y=AX满足如下两个条件:
(1)图像Y具有M个分量,且M<<N2
(2)图像Y经反变换A-1Y恢复出的向量X和原始向量X具有最小的均方误差;
此时称正交变换A为K-L变换,也就是说经过一个变换,不仅删除了N2-M个分量,而且仍能很好地恢复出源图像,即由变换结果Y重新恢复的图像;对应式(B),X向量的协方差矩阵定义为:Cx=E{(X-mx)(X-mx)T},其中E为期望值,T为矩阵的转置,mx=E{X};在离散情况下,由于M是有限值,其平均值向量mx和X的协方差矩阵Cx可近似表示为:
m x &ap; 1 M &Sigma; i = 1 M X i C x = 1 M &Sigma; i = 1 M X i ( X - m x ) ( X - m x ) T &ap; 1 M &Sigma; i = 1 M X i X i T - m x m x T - - - ( C )
设ei和λi是协方差矩阵Cx对应的特征向量和特征值,其中,i=0,1,2,…,N2;将特征值按照降序排列,即则K-L变换核矩阵A的行用Cx的特征值构成:
A = e 11 e 12 . . . e 1 N 2 e 21 e 22 . . . e 2 N 2 . . . . . . . . . . . . e N 2 1 e N 2 2 . . . e N 2 N 2 - - - ( D )
其中,eij表示第i个特征向量的第j个分量,A是N2*N2的方阵;
由此可得离散K-L变换式为
Y=A(X-mx)  (E)
其中,X-mx是原始图像向量X减去平均值向量mx,称为中心化图像向量;
采用批处理的方法提取每个样本的手势轮廓傅里叶描述子,将得到的归一化傅里叶描述子向量的前三维;
数据准备好之后,接下来介绍主元分析的实现步骤:
计算样本向量Vi(m)的协方差矩阵,Vi(m)为第i个轮廓的傅里叶描述子;设为Vi(m)的均值向量,即其中i=1,2,···,L;则Vi(m)的协方差矩阵表达式为:
C = 1 N &Sigma; i = 1 L ( V i - V &OverBar; ) ( V i - V &OverBar; ) T - - - ( 23 )
计算协方差矩阵C的特征值λk和特征向量ek,然后将特征值λk按从大至小排序;由于协方差矩阵已经归一化,所以算出的特征值绝大部分是小于1的,这些特征值对应的特征向量就被压缩,因为它们对反映不同的形状的手形轮廓贡献不大;在试验中取特征值大于1特征向量,这样的特征向量只有4个,记为A=(e1,e2,e3,e4);
(3)最后,将原样本向量降成4维新向量,为:
Pi(m)=Vi(m)A,i=1,2,…,L  (24)
原样本向量Vi(m)是20维,经过K-L变换后变成了4维,成功的去除了相关性,减少了冗余信息;这4维向量包含了手形轮廓最主要的信息;
K均值聚类算法是动态聚类法的一种,它的特点在于聚类过程中通过不断迭代来完成,且迭代中通常容许样本从一个聚合类转移到另一个聚合类中;
K均值聚类算法的实现步骤如下
(1)选择6个初始聚类中心,计算式(E)中6种手势各自的Pi(m)向量的均值向量,分别为m1(1),m2(1),m3(1),m4(1),m5(1),m6(1)将这6个均值向量分别作为各自的聚类中心;
(2)计算所有样本与各聚类中心的距离
d=(X,mi(k))=||X-mi(k)||,i=1,2,…,6  (25)
按照最小距离原则将样本X进行聚类,即
若d=(X,mj(k))=min(X,mi(k)),i=1,2,…,6,则X∈wj
(3)重新计算聚类中心:
m i ( k + 1 ) = 1 N &Sigma; X &Element; w i X , i = 1,2 , . . . , 6 - - - ( 26 )
其中,Ni为当前wi类中样本的数目;
(4)若存在任意i∈{1,2,…,6},有mi(k+1)≠mi(k),则k=k+1,转到第(2)步;若存在任意i∈{1,2,…,6},有mi(k+1)=mi(k),则聚类结束。
5.一种手势识别系统,其特征在于,所述系统包括:
手势检测模块,用以实时检测视频流中的手势,标记检测到手势的区域为感兴趣区域;然后将感兴趣区域送入手势分割模块;
手势分割模块,用以利用肤色分割对感兴趣区域进行处理,接着进行边缘检测和轮廓提取,得到手形轮廓的点序列;
手势识别模块,用以先提取手形轮廓的傅里叶描述子,然后利用PCA分析将其映射到特征空间的一个新向量,比较新向量与训练得到手势聚类中心的距离,判定该向量代表哪种手势。
CN201410795071.5A 2014-12-18 2014-12-18 手势识别方法及系统 Pending CN104680127A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410795071.5A CN104680127A (zh) 2014-12-18 2014-12-18 手势识别方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410795071.5A CN104680127A (zh) 2014-12-18 2014-12-18 手势识别方法及系统

Publications (1)

Publication Number Publication Date
CN104680127A true CN104680127A (zh) 2015-06-03

Family

ID=53315145

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410795071.5A Pending CN104680127A (zh) 2014-12-18 2014-12-18 手势识别方法及系统

Country Status (1)

Country Link
CN (1) CN104680127A (zh)

Cited By (51)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104978574A (zh) * 2015-07-10 2015-10-14 鲲鹏通讯(昆山)有限公司 一种基于杂乱背景中的手势跟踪方法
CN105205835A (zh) * 2015-09-02 2015-12-30 湖南工业大学 一种基于傅立叶描述子的彩色移动目标的识别与跟踪方法
CN105469113A (zh) * 2015-11-19 2016-04-06 广州新节奏智能科技有限公司 一种二维视频流中的人体骨骼点追踪方法及系统
CN105528078A (zh) * 2015-12-15 2016-04-27 小米科技有限责任公司 控制电子设备的方法及装置
CN105912739A (zh) * 2016-07-14 2016-08-31 湖南琴海数码股份有限公司 一种相似图片检索系统及其方法
CN105956525A (zh) * 2016-04-22 2016-09-21 中国人民解放军总装备部军械技术研究所 一种用于增强现实辅助维修的静态手势识别方法及系统
CN105975906A (zh) * 2016-04-27 2016-09-28 济南大学 一种基于面积特征的pca静态手势识别方法
CN106022343A (zh) * 2016-05-19 2016-10-12 东华大学 一种基于傅里叶描述子和bp神经网络的服装款式识别方法
WO2017041552A1 (zh) * 2015-09-11 2017-03-16 深圳Tcl新技术有限公司 纹理特征提取方法及装置
WO2017049817A1 (zh) * 2015-09-24 2017-03-30 北京零零无限科技有限公司 一种手势操控无人机的方法和装置
CN106650554A (zh) * 2015-10-30 2017-05-10 成都理想境界科技有限公司 静态手势识别方法
CN106845455A (zh) * 2017-03-01 2017-06-13 中国科学院上海高等研究院 基于肤色检测的图像处理方法、系统及服务器
CN106909884A (zh) * 2017-01-17 2017-06-30 北京航空航天大学 一种基于分层结构和可变形部分模型的手部区域检测方法和装置
CN106980371A (zh) * 2017-03-24 2017-07-25 电子科技大学 一种基于临近异构分布式结构的移动增强现实交互方法
CN107025442A (zh) * 2017-03-31 2017-08-08 北京大学深圳研究生院 一种基于颜色和深度信息的多模态融合手势识别方法
CN107067009A (zh) * 2017-01-13 2017-08-18 重庆三峡学院 一种实时杆号识别方法
CN107220645A (zh) * 2017-05-24 2017-09-29 河北省计量监督检测研究院 基于动态图像处理的水表识别方法
CN107248407A (zh) * 2017-06-30 2017-10-13 武汉理工大学 一种手势音乐演奏器
CN107330354A (zh) * 2017-03-20 2017-11-07 长沙理工大学 一种自然手势识别方法
CN107728775A (zh) * 2016-08-10 2018-02-23 富士通株式会社 动作识别方法及其装置
CN107767361A (zh) * 2017-08-28 2018-03-06 江苏理工学院 一种金刚砂线颗粒计数方法、存储设备及终端设备
CN107818785A (zh) * 2017-09-26 2018-03-20 平安普惠企业管理有限公司 一种从多媒体文件中提取信息的方法及终端设备
CN107813310A (zh) * 2017-11-22 2018-03-20 浙江优迈德智能装备有限公司 一种基于双目视觉多手势机器人控制方法
CN107909099A (zh) * 2017-11-10 2018-04-13 佛山科学技术学院 一种基于热核的三维模型识别与检索方法
CN107992867A (zh) * 2016-10-26 2018-05-04 深圳超多维科技有限公司 用于手势指点翻译的方法、装置及电子设备
CN108011712A (zh) * 2017-11-13 2018-05-08 佛山科学技术学院 一种移动医疗系统隐私数据通信方法
CN108345867A (zh) * 2018-03-09 2018-07-31 南京邮电大学 面向智能家居场景的手势识别方法
CN108416839A (zh) * 2018-03-08 2018-08-17 云南电网有限责任公司电力科学研究院 一种多幅x射线旋转图像轮廓线三维重建方法及其系统
CN108491820A (zh) * 2018-04-02 2018-09-04 京东方科技集团股份有限公司 图像中肢体表示信息的识别方法、装置及设备、存储介质
CN108564020A (zh) * 2018-04-08 2018-09-21 陕西科技大学 基于全景3d图像的微手势识别方法
CN108629312A (zh) * 2018-05-04 2018-10-09 兰州理工大学 一种动态手势跟踪方法及系统
CN108985191A (zh) * 2018-06-28 2018-12-11 广东技术师范学院 一种基于移动设备手势识别的轮廓提取方法
CN109034012A (zh) * 2018-07-09 2018-12-18 四川大学 基于动态图像和视频子序列的第一人称视角手势识别方法
CN109271844A (zh) * 2018-07-29 2019-01-25 国网上海市电力公司 基于OpenCV的电气柜电气符号识别方法
CN109389612A (zh) * 2018-08-31 2019-02-26 南京理工大学 一种城轨列车受电弓滑板边缘检测方法
CN109446961A (zh) * 2018-10-19 2019-03-08 北京达佳互联信息技术有限公司 姿势检测方法、装置、设备及存储介质
CN109558855A (zh) * 2018-12-06 2019-04-02 哈尔滨拓博科技有限公司 一种基于手掌轮廓特征与模版匹配法相结合的空间手势识别方法
CN109658523A (zh) * 2018-12-10 2019-04-19 西安小明出行新能源科技有限公司 利用ar增强现实应用实现车辆各功能使用说明的方法
CN109726646A (zh) * 2018-12-14 2019-05-07 中国联合网络通信集团有限公司 一种手势识别方法和系统、显示方法和系统
CN109766822A (zh) * 2019-01-07 2019-05-17 山东大学 基于神经网络的手势识别方法及系统
CN110032270A (zh) * 2018-01-12 2019-07-19 中国科学院沈阳自动化研究所 一种基于手势识别的人机交互方法
CN110060253A (zh) * 2019-05-06 2019-07-26 西安交通大学 基于Gabor多特征提取和优选的复合轨枕孔隙缺陷识别方法
CN110070557A (zh) * 2019-04-07 2019-07-30 西北工业大学 一种基于边缘特征检测的目标识别与定位方法
CN110147764A (zh) * 2019-05-17 2019-08-20 天津科技大学 一种基于机器学习的静态手势识别方法
CN110287894A (zh) * 2019-06-27 2019-09-27 深圳市优象计算技术有限公司 一种针对超广角视频的手势识别方法及系统
CN109410181B (zh) * 2018-09-30 2020-08-28 神州数码医疗科技股份有限公司 一种心脏图像分割方法及装置
CN111666902A (zh) * 2020-06-10 2020-09-15 重庆紫光华山智安科技有限公司 行人特征提取模型的训练方法、行人识别方法及相关装置
CN113468986A (zh) * 2021-06-16 2021-10-01 武汉理工大学 一种基于手势识别的空调控制方法及系统
CN115981482A (zh) * 2023-03-17 2023-04-18 深圳市魔样科技有限公司 面向智能戒指的手势视觉交互方法及系统
CN116152253A (zh) * 2023-04-20 2023-05-23 四川大学华西医院 心脏磁共振mapping量化方法、系统和存储介质
CN116912950A (zh) * 2023-09-12 2023-10-20 湖北星纪魅族科技有限公司 一种识别方法、头戴设备和存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100150442A1 (en) * 2008-12-11 2010-06-17 Samsung Digital Imaging Co., Ltd. Method and apparatus for skin color correction and digital photographing apparatus using both
CN102324025A (zh) * 2011-09-06 2012-01-18 北京航空航天大学 基于高斯肤色模型和特征分析的人脸检测与跟踪方法
CN102324019A (zh) * 2011-08-12 2012-01-18 浙江大学 一种视频序列中自动提取手势候选区域的方法及系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100150442A1 (en) * 2008-12-11 2010-06-17 Samsung Digital Imaging Co., Ltd. Method and apparatus for skin color correction and digital photographing apparatus using both
CN102324019A (zh) * 2011-08-12 2012-01-18 浙江大学 一种视频序列中自动提取手势候选区域的方法及系统
CN102324025A (zh) * 2011-09-06 2012-01-18 北京航空航天大学 基于高斯肤色模型和特征分析的人脸检测与跟踪方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
王赞超: "基于Android平台的视觉手势识别研究", 《中国优秀硕士学位论文全文数据库 信息科技辑》 *

Cited By (67)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104978574A (zh) * 2015-07-10 2015-10-14 鲲鹏通讯(昆山)有限公司 一种基于杂乱背景中的手势跟踪方法
CN105205835A (zh) * 2015-09-02 2015-12-30 湖南工业大学 一种基于傅立叶描述子的彩色移动目标的识别与跟踪方法
WO2017041552A1 (zh) * 2015-09-11 2017-03-16 深圳Tcl新技术有限公司 纹理特征提取方法及装置
US10261507B2 (en) 2015-09-24 2019-04-16 Beijing Zero Zero Infinity Technology Co., Ltd Method and device for controlling unmanned aerial vehicle with gesture
WO2017049817A1 (zh) * 2015-09-24 2017-03-30 北京零零无限科技有限公司 一种手势操控无人机的方法和装置
CN106650554A (zh) * 2015-10-30 2017-05-10 成都理想境界科技有限公司 静态手势识别方法
CN105469113A (zh) * 2015-11-19 2016-04-06 广州新节奏智能科技有限公司 一种二维视频流中的人体骨骼点追踪方法及系统
CN105469113B (zh) * 2015-11-19 2019-03-22 广州新节奏智能科技股份有限公司 一种二维视频流中的人体骨骼点追踪方法及系统
CN105528078B (zh) * 2015-12-15 2019-03-22 小米科技有限责任公司 控制电子设备的方法及装置
CN105528078A (zh) * 2015-12-15 2016-04-27 小米科技有限责任公司 控制电子设备的方法及装置
CN105956525A (zh) * 2016-04-22 2016-09-21 中国人民解放军总装备部军械技术研究所 一种用于增强现实辅助维修的静态手势识别方法及系统
CN105975906A (zh) * 2016-04-27 2016-09-28 济南大学 一种基于面积特征的pca静态手势识别方法
CN106022343A (zh) * 2016-05-19 2016-10-12 东华大学 一种基于傅里叶描述子和bp神经网络的服装款式识别方法
CN105912739B (zh) * 2016-07-14 2019-03-26 湖南琴海数码股份有限公司 一种相似图片检索系统及其方法
CN105912739A (zh) * 2016-07-14 2016-08-31 湖南琴海数码股份有限公司 一种相似图片检索系统及其方法
CN107728775A (zh) * 2016-08-10 2018-02-23 富士通株式会社 动作识别方法及其装置
CN107992867A (zh) * 2016-10-26 2018-05-04 深圳超多维科技有限公司 用于手势指点翻译的方法、装置及电子设备
CN107067009A (zh) * 2017-01-13 2017-08-18 重庆三峡学院 一种实时杆号识别方法
CN106909884A (zh) * 2017-01-17 2017-06-30 北京航空航天大学 一种基于分层结构和可变形部分模型的手部区域检测方法和装置
CN106845455A (zh) * 2017-03-01 2017-06-13 中国科学院上海高等研究院 基于肤色检测的图像处理方法、系统及服务器
CN107330354A (zh) * 2017-03-20 2017-11-07 长沙理工大学 一种自然手势识别方法
CN107330354B (zh) * 2017-03-20 2020-12-08 长沙理工大学 一种自然手势识别方法
CN106980371B (zh) * 2017-03-24 2019-11-05 电子科技大学 一种基于临近异构分布式结构的移动增强现实交互方法
CN106980371A (zh) * 2017-03-24 2017-07-25 电子科技大学 一种基于临近异构分布式结构的移动增强现实交互方法
CN107025442A (zh) * 2017-03-31 2017-08-08 北京大学深圳研究生院 一种基于颜色和深度信息的多模态融合手势识别方法
CN107025442B (zh) * 2017-03-31 2020-05-01 北京大学深圳研究生院 一种基于颜色和深度信息的多模态融合手势识别方法
CN107220645A (zh) * 2017-05-24 2017-09-29 河北省计量监督检测研究院 基于动态图像处理的水表识别方法
CN107248407A (zh) * 2017-06-30 2017-10-13 武汉理工大学 一种手势音乐演奏器
CN107767361A (zh) * 2017-08-28 2018-03-06 江苏理工学院 一种金刚砂线颗粒计数方法、存储设备及终端设备
CN107818785A (zh) * 2017-09-26 2018-03-20 平安普惠企业管理有限公司 一种从多媒体文件中提取信息的方法及终端设备
CN107909099A (zh) * 2017-11-10 2018-04-13 佛山科学技术学院 一种基于热核的三维模型识别与检索方法
CN108011712A (zh) * 2017-11-13 2018-05-08 佛山科学技术学院 一种移动医疗系统隐私数据通信方法
CN107813310A (zh) * 2017-11-22 2018-03-20 浙江优迈德智能装备有限公司 一种基于双目视觉多手势机器人控制方法
CN110032270B (zh) * 2018-01-12 2020-05-08 中国科学院沈阳自动化研究所 一种基于手势识别的人机交互方法
CN110032270A (zh) * 2018-01-12 2019-07-19 中国科学院沈阳自动化研究所 一种基于手势识别的人机交互方法
CN108416839B (zh) * 2018-03-08 2022-04-08 云南电网有限责任公司电力科学研究院 一种多幅x射线旋转图像轮廓线三维重建方法及其系统
CN108416839A (zh) * 2018-03-08 2018-08-17 云南电网有限责任公司电力科学研究院 一种多幅x射线旋转图像轮廓线三维重建方法及其系统
CN108345867A (zh) * 2018-03-09 2018-07-31 南京邮电大学 面向智能家居场景的手势识别方法
US11354925B2 (en) 2018-04-02 2022-06-07 Beijing Boe Optoelectronics Technology Co., Ltd. Method, apparatus and device for identifying body representation information in image, and computer readable storage medium
CN108491820B (zh) * 2018-04-02 2022-04-12 京东方科技集团股份有限公司 图像中肢体表示信息的识别方法、装置及设备、存储介质
CN108491820A (zh) * 2018-04-02 2018-09-04 京东方科技集团股份有限公司 图像中肢体表示信息的识别方法、装置及设备、存储介质
CN108564020A (zh) * 2018-04-08 2018-09-21 陕西科技大学 基于全景3d图像的微手势识别方法
CN108564020B (zh) * 2018-04-08 2021-07-13 陕西科技大学 基于全景3d图像的微手势识别方法
CN108629312A (zh) * 2018-05-04 2018-10-09 兰州理工大学 一种动态手势跟踪方法及系统
CN108985191A (zh) * 2018-06-28 2018-12-11 广东技术师范学院 一种基于移动设备手势识别的轮廓提取方法
CN109034012A (zh) * 2018-07-09 2018-12-18 四川大学 基于动态图像和视频子序列的第一人称视角手势识别方法
CN109271844A (zh) * 2018-07-29 2019-01-25 国网上海市电力公司 基于OpenCV的电气柜电气符号识别方法
CN109389612A (zh) * 2018-08-31 2019-02-26 南京理工大学 一种城轨列车受电弓滑板边缘检测方法
CN109410181B (zh) * 2018-09-30 2020-08-28 神州数码医疗科技股份有限公司 一种心脏图像分割方法及装置
CN109446961A (zh) * 2018-10-19 2019-03-08 北京达佳互联信息技术有限公司 姿势检测方法、装置、设备及存储介质
US11138422B2 (en) 2018-10-19 2021-10-05 Beijing Dajia Internet Information Technology Co., Ltd. Posture detection method, apparatus and device, and storage medium
CN109558855A (zh) * 2018-12-06 2019-04-02 哈尔滨拓博科技有限公司 一种基于手掌轮廓特征与模版匹配法相结合的空间手势识别方法
CN109658523B (zh) * 2018-12-10 2023-05-09 田海玉 利用ar增强现实应用实现车辆各功能使用说明的方法
CN109658523A (zh) * 2018-12-10 2019-04-19 西安小明出行新能源科技有限公司 利用ar增强现实应用实现车辆各功能使用说明的方法
CN109726646A (zh) * 2018-12-14 2019-05-07 中国联合网络通信集团有限公司 一种手势识别方法和系统、显示方法和系统
CN109766822A (zh) * 2019-01-07 2019-05-17 山东大学 基于神经网络的手势识别方法及系统
CN110070557A (zh) * 2019-04-07 2019-07-30 西北工业大学 一种基于边缘特征检测的目标识别与定位方法
CN110060253A (zh) * 2019-05-06 2019-07-26 西安交通大学 基于Gabor多特征提取和优选的复合轨枕孔隙缺陷识别方法
CN110147764A (zh) * 2019-05-17 2019-08-20 天津科技大学 一种基于机器学习的静态手势识别方法
CN110287894A (zh) * 2019-06-27 2019-09-27 深圳市优象计算技术有限公司 一种针对超广角视频的手势识别方法及系统
CN111666902B (zh) * 2020-06-10 2022-11-01 重庆紫光华山智安科技有限公司 行人特征提取模型的训练方法、行人识别方法及相关装置
CN111666902A (zh) * 2020-06-10 2020-09-15 重庆紫光华山智安科技有限公司 行人特征提取模型的训练方法、行人识别方法及相关装置
CN113468986A (zh) * 2021-06-16 2021-10-01 武汉理工大学 一种基于手势识别的空调控制方法及系统
CN115981482A (zh) * 2023-03-17 2023-04-18 深圳市魔样科技有限公司 面向智能戒指的手势视觉交互方法及系统
CN116152253A (zh) * 2023-04-20 2023-05-23 四川大学华西医院 心脏磁共振mapping量化方法、系统和存储介质
CN116152253B (zh) * 2023-04-20 2023-06-16 四川大学华西医院 心脏磁共振mapping量化方法、系统和存储介质
CN116912950A (zh) * 2023-09-12 2023-10-20 湖北星纪魅族科技有限公司 一种识别方法、头戴设备和存储介质

Similar Documents

Publication Publication Date Title
CN104680127A (zh) 手势识别方法及系统
Zhang et al. Airport detection and aircraft recognition based on two-layer saliency model in high spatial resolution remote-sensing images
Pan et al. A robust system to detect and localize texts in natural scene images
Gu et al. Recognition using regions
Yi et al. Feature representations for scene text character recognition: A comparative study
CN103049763B (zh) 一种基于上下文约束的目标识别方法
Shah et al. Leaf classification using marginalized shape context and shape+ texture dual-path deep convolutional neural network
CN107480620B (zh) 基于异构特征融合的遥感图像自动目标识别方法
CN104751187A (zh) 抄表图像自动识别方法
CN105574063A (zh) 基于视觉显著性的图像检索方法
Wang et al. Fan shape model for object detection
Zawbaa et al. An automatic flower classification approach using machine learning algorithms
Fiel et al. Automated identification of tree species from images of the bark, leaves or needles
Turki et al. Text detection based on MSER and CNN features
Kobchaisawat et al. Thai text localization in natural scene images using convolutional neural network
Chen et al. Robust text line segmentation for historical manuscript images using color and texture
CN102136074A (zh) 一种基于mmi的木材图像纹理分析与识别方法
Tokarczyk et al. Beyond hand-crafted features in remote sensing
CN109902692A (zh) 一种基于局部区域深度特征编码的图像分类方法
Hewitt et al. Shape-only features for plant leaf identification
Rotem et al. Combining region and edge cues for image segmentation in a probabilistic gaussian mixture framework
Ghandour et al. Building shadow detection based on multi-thresholding segmentation
Kaufhold et al. Recognition and segmentation of scene content using region-based classification
Hurtik et al. Automatic license plate recognition in difficult conditions—Technical report
Işikdoğan et al. Automatic recognition of Turkish fingerspelling

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20150603