基于方向运动历史图及竞争机制的手挥运动方向判定方法

文档序号:6371238阅读:226来源:国知局
专利名称:基于方向运动历史图及竞争机制的手挥运动方向判定方法
技术领域
本发明涉及计算机视觉手势识别技术领域,尤其涉及的是一种基于方向运动历史图及竞争机制的手挥运动方向判定方法。
背景技术
手势交互是一种自然、直观的人机交互方式,将手势直接作为计算机的输入,人机间的通讯将不再需要媒介。手势识别是手势交互的技术基础,视觉手势识别由于其简单易行,目前是手势识别技术的主流。视觉手势识别虽然是手势识别的主要发展方向,但是还存在很多问题,比如易受 背景变化、光照变化、运动噪声的影响,手本身也容易发生非刚体变形,手势中有很多冗余不必要的信息等。如何克服手势识别中这些技术困难,使其能充分应用以改变未来人机交互模式,是手势交互技术的关键问题。视觉手势识别一般通过摄像头采集手势视频流数据。目前,视频摄像头分为2D摄像头和3D摄像头。3D摄像头获得的是手势的三维信息,比如微软推出的kinect就可以采集3D手势信息,但是其成本贵不利于普及。因此研发基于廉价的USB 2D摄像头的手势识别技术,具有积极意义但是由于手是非刚体物体,且手势跟踪一般基于肤色进行,导致这种基于跟踪的方法不稳定,易受环境光照、及背景色的干扰,无法形成正确的跟踪轨迹。目前,也出现了利用运动历史图来进行手势运动方向判定的方法。这种方法首先利用帧差法生成手挥运动历史图,然后计算其梯度向量来获取运动方向。这种方法的主要问题是无法克服手挥动时的运动覆盖问题;容易受运动噪声的影响,导致方向判断及其不稳定。通过手上下左右挥动来直接控制菜单或调节某些功能,是手势交互的一种快速广泛的应用模式。此时,正确判定手上下左右运动的方向将是该种手势交互的技术基础。现有的手势运动方向判定主要是基于手势运动跟踪,通过跟踪手势,计算手位移距离从而判定其运动方向的方法。I、方向判定依赖于手势跟踪的效果,而跟踪易受光照变化、人脸肤色及手变形的影响,效果差,不稳定;2、跟踪算法复杂,速度慢,不能快速判定手挥方向。利用运动历史图来进行手势运动方向判定的方法。这种方法首先利用背景差或帧差法生成运动历史图,然后计算其梯度向量来获取运动方向,优点是速度快。I、无法克服手挥动时的运动覆盖问题;2、容易受运动噪声的影响,导致方向判断不准确。

发明内容
本发明所要解决的技术问题是针对现有技术的不足提供一种基于方向运动历史图及竞争机制的手挥运动方向判定方法。本发明的技术方案如下一种基于方向运动历史图及竞争机制的手挥运动方向判定方法,包括以下步骤Al、从视频流中获取当前运动图像,建立肤色概率模型,作为手挥过程中手肤色提取的依据,在HSV颜色空间,统计大量肤色与非肤色信息,建立归一化的H-S肤色直方图,用于后续视频帧图像的肤色分割,肤色提取的阈值概率设定为O. 85,当前帧的肤色概率图
Skin(x,y,t) =;获取当前视频运动图像的三帧差图像,将肤色概率图与帧
差结果相乘后的数据经中值滤波器进行滤波,得到当前的手势区域灰度图iKnO;A2、计算手势区域灰度图炉(XjM)的光流矢量场F(x,y,t)后,首先将其分解成水平 和垂直两个标量场Fx (X,y, t),Fy (X,y, t),然后进行半波整流,进一步分解成四个非负通道并进行高斯平滑和归一化,最终得到四个光流方向图F: (X,少,t), F; (X,少,t), Fy+ (x, y, t), F; (x, y, t),其中巧=Fx+ - F; ,Fy = Fy+ — F;;A3、根据步骤A2中的四个光流方向图,分别计算四个方向运动历史图,
[max(0 -1)-3], otherwise
Hxr~(x,yj) = \ (T’『Ax’y个 ,
[max^O Fx (x,y^t-\)-6\otherwise
Κ ( :f(x,十V,
[max(0,Fy (x,y,totherwiseHr{x,y,t)^l ( T,fy,其中Α4、根据手势运动历史图,获得四个方向运动能量图
「、 fl Hx+(x,y,t)>l 、 il Hx-(x,yj)>lEx+(x,y,t)=\ , ^, E- (x >; i) = J r,
rIO otherwiser[ O otherwise
Ey;{x,y,t) = ^= H f (w’Wi,其中Mx,y,t)为运动能
Γ[ O otherwise τ[ O otherwise
量图,τ为描述运动的时间范围的参数,x,y分别为运动能量图的横纵坐标,t为时刻;
A5、计算每帧图像的运动方向并编码wg& = argtan^~^,其中Sx+ =
size [Ey_ (x, y,t) > 0],若 Sx+_Sx_ = Q, angle = 或=—,具体值根据 Sy+_Sy_ 大于或
小于O进行判断,若valy+-valy_也为0,则判定当前未动,编码为-I ;其它情况时将根据计算得到的angle,将其值根据需要进行划分并编码,进行“上、下、左、右”四个方向判断;将(-50。,50。)编码为 “O”, (50。,140。)编码为 “1”,(140。,230。)为 “2”,(230。,310。)为 “3”,不在这些区间的值,赋值为“-I ”;分析一段手势运动视频,对每帧都进行上述计算并进行方向编码,从而得到运动方向编码序列O (O1, O2,…oN),其中Oi E {-1,0,1,2,3}, i = I…N, N是有效编码序列长度;A6、判定整个运动序列的运动方向;为克服运动噪声,将此运动方向编码序列中的每个编码依次送入竞争器进行竞争投票,最终溢出(获胜)的编码对应的方向就是本次手势挥动对应的运动方向;具体来说首先建立4个小格,并标记0,1,2,3分别对应各个运动方向编码,同时设置票数极值Vmax及票数溢出阈值Vth ;每个进入的方向编码将使其对应的小格加1,而使其它小格减I ;每小格票数一直增长直到Vmax,而任一时刻,其票数达到了 Vth,则就会溢出该小格对应的标号。所述的方法,所述步骤A6中,设置Vth = 6, Vmax = 8。所述的方法,所述步骤Al中,帧差的计算方法为<P0 O,yJ) = min(|(/(x, y,t)- f(x, y, t -1)|, |(/(x, yj) - f(x, y, t +1)|),其中 f (x, y, t)表示当前
帧图像,t表示时间,X,y表示像素位置(下同),符号I I表示取绝对值,函数min表示取最小值;为服噪声和光线变化,可设置一自适应阈值^-OJqmax^^-minOo)],这里的max(<^)和Hiin(A)表示取ΦC1的最大和最小值,则最终计算帧差为
十(4::匕匕-減1嘬后棚肤色概率图Skin(x,y,t)和帧差图炉。(…),
可得手势区域灰度图=其中符号X表示相乘。所述的方法,所述步骤A5中计算每帧图像运动方向并编码,也可以采用比较大小并直接编码的方法来进行,即Oi = code (max (Sx+, Sx_, Sy+, SyJ),其中code (Sx+)为“0”,code (Sx_)为 “1”,code (Sy+)为 “2”,code (Sy+)为 “3”。所述的方法,所述步骤A6中,得到运动方向编码序列后,判定整个序列最终运动方向,可以通过隐马尔科夫模型进行方向推定。本发明具有以下有益效果I、由于采用帧差和肤色联合提取感兴趣区域,将减少背景和人脸肤色的干扰。;2、由于采用四个方向运动历史图和能量图以方向统计的方式来计算整体运动方向,可以有效克服运动覆盖问题。3。由于采用了动作竞争机制确定运动方向,可大大降低动作噪声的影响,提高运动方向判定的准确性和稳定性。


图I为本发明方法流程图;图2是实施例I中竞争投票胜出确定整体运动方向的方法的示意图。
具体实施例方式以下结合具体实施例,对本发明进行详细说明。实施例I参考图1,基于方向运动历史图及竞争机制的手挥运动方向判定方法,包括以下步骤Al、从视频流中获取当前运动图像,建立肤色概率模型,作为手挥过程中手肤色提取的依据,在HSV颜色空间,统计大量肤色与非肤色信息,建立归一化的H-S肤色直方图,用于后续视频帧图像的肤色分割,肤色提取的阈值概率设定为O. 85,当前帧的的肤色概率图Skin{x,y,O = {^^s^,y,0>-0.s5。获取当前视频运动图像的三帧差图像,将肤色概率图与帧
差结果相乘后的数据经中值滤波器进行滤波,得到当前的手势区域灰度图< (>,}^)。帧差的计算方法为
Ψο O,少,O = min(j(/(x, y, t) - f(x, y, t -1)|,|(/(x,少,t) - /(χ,少,,+ i)|),其中 f (χ,y,t)表示当前
帧图像,t表示时间,X,y表示像素位置(下同),符号I I表示取绝对·值,函数min表示取最小值。为服噪声和光线变化,可设置一自适应阈值.dioWl = 0.2 *[max(^0)-min((p0)],这里的max(i3Q)和min(>Q)表示取ΦC1的最大和最小值,则最终计算帧差为
。最后根据肤色概率图Skin(x,y,t)和帧差图化(x,,
可得手势区域灰度图其中符号χ表示相乘。Α2、计算手势区域灰度图ρ(ΧΜ)的光流矢量场F(x,y,t)后,首先将其分解成水平和垂直两个标量场Fx(x,y, t), Fy(x, y, t),然后进行半波整流,进一步分解成四个非负通道并进行高斯平滑和归一化,最终得到四个光流方向图K (X,少,t\F; (x,少, , F; (x, y, , F; (χ, y, ,其中Fx = F; - F; Fy = F/ - F;。A3、根据上面四个光流方向图,分别计算四个方向运动历史图,
Ηχτ + (χ,γ, )=\ (十,
[max(0,\x,y,t -\)~ δ\otherwise
Hr{X,y,t) = \ (,
[max^O,Fxotherwise
Hr{x,y,t) = \ ( 7( Γ,
|max(0,{x^yj ~\)~δ\otherwise
权利要求
1.一种基于方向运动历史图及竞争机制的手挥运动方向判定方法,其特征在于,包括以下步骤 Al、从视频流中获取当前运动图像,建立肤色概率模型,作为手挥过程中手肤色提取的依据,在HSV颜色空间,统计大量肤色与非肤色信息,建立归一化的H-S肤色直方图,用于后续视频帧图像的肤色分割,肤色提取的阈值概率设定为O. 85,当前帧的肤色概率图Skin{x^t) =,0^0.85 ,获取当前视频运动图像的三帧差图像,将肤色概率图与帧差结果相乘后的数据经中值滤波器进行滤波,得到当前的手势区域灰度图炉O,O; A2、计算手势区域灰度图的光流矢量场F(x,y,t)后,首先将其分解成水平和垂直两个标量场Fx (X,y, t),Fy (X,y, t),然后进行半波整流,进一步分解成四个非负通道并进行高斯平滑和归一化,最终得到四个光流方向图&+(x,M),F;(x,_y,0,其中足=K — F: ,Fy = Fy - Fy ; A3、根据步骤A2中的四个光流方向图,分别计算四个方向运动历史图,H;+ (x, y,t)=\ , τ:「(Χ,少’ ^, [max(0,F: (x, yj-\)-δ\otherwiseHr(x,yj)4 ([max^O,Fxotherwisec(w)=i ( T(x’十V, [^max(0,7^ {x^yjotherwise H^{x,y,t) = \ / T,Fy,其中 τ , [max(0,Fy{x,y,t-\)-d\otherwise,”(x,y,t)、Hx~{x,y,t)、/^+(^,0、丹厂(1,>^)为各个方向当前的手势运动历史图(MHI),<;(χ,Μ)为当前的光流方向区域灰度图,τ为描述运动的时间范围的参数,一般可以取间隔帧数,δ为手势运动历史图衰减参数,可以设置为5,^)_为各方向手势区域图二值化阈值,可以视实际效果设置为5-10 ;通过获取四个方向的运动历史图,可以有效克服运动覆盖问题; Α4、根据手势运动历史图,获得四个方向运动能量图 r[ O otherwiseτ[ O otherwiseEy+{x,y,t)=\l Hy^y^-l,Ey;{x,y,t)=^ 丑:1,其中 Ετ (x,y,t)为运动能 [O otherwise[ O otherwise量图,τ为描述运动的时间范围的参数,x,y分别为运动能量图的横纵坐标,t为时刻; A5、计算每帧图像的运动方向并编码cingle = argtan^—,其中Sx+ = + —size[Ex+ (x, y, t) > O], Sx_ = size[Ex_(x, y, t) > O], Sy+ = size[Ey+ (x, y, t) > 0], Sy_ = TT3 TTsize [Ey_ (x, y, t) > 0],若 SX+_SX_ = Q, angle = y或ang/e =—,具体值根据 Sy+_Sy_ 大于或小于O进行判断,若valy+-valy_也为O,则判定当前未动,编码为-I ;其它情况时将根据计算得到的angle,将其值根据需要进行划分并编码,进行“上、下、左、右”四个方向判断;将(-50。,50。)编码为 “O”, (50。,140。)编码为 “1”,(140。,230。)为 “2”,(230。,310。)为 “3”,不在这些区间的值,赋值为“-I ”;分析一段手势运动视频,对每帧都进行上述计算并进行方向编码,从而得到运动方向编码序列O (O1, O2,…oN),其中Oi E {-1,0,1,2,3}, i = I…N, N是有效编码序列长度; A6、判定整个运动序列的运动方向;为克服运动噪声,将此运动方向编码序列中的每个编码依次送入竞争器进行竞争投票,最终溢出(获胜)的编码对应的方向就是本次手势挥动对应的运动方向;具体来说首先建立4个小格,并标记0,1,2,3分别对应各个运动方向编码,同时设置票数极值Vmax及票数溢出阈值Vth ;每个进入的方向编码将使其对应的小格加1,而使其它小格减I ;每小格票数一直增长直到Vmax,而任一时刻,其票数达到了 Vth,则就会溢出该小格对应的标号。
2.根据权利要求I所述的方法,其特征在于,所述步骤A6中,设置Vth= 6,Vfflax = 8。
3.根据权利要求I所述的方法,其特征在于,所述步骤Al中,帧差的计算方法为φ0 (X, y, O = min(|(/(x, y, t) - f{x, y, t -1)|, |(/(x, y, t) — f(x,少夕 +1)|),其中 f (x, y, t)表示当前帧图像,t表示时间,X,y表示像素位置(下同),符号I I表示取绝对值,函数min表示取最小值;为服噪声和光线变化,可设置一自适应阈值= 0.2* [max(^0) - min(^0)],这里的max(<^)和Hiin(^e)表示取ΦC1的最大和最小值,则最终计算帧差为十福·’最后根据肤色概率图Skin (χ, y, t)和帧差图外“少冰可得手势区域灰度图^^^二撕七士小外^^小其中符号χ表示相乘。
4.根据权利要求I所述的方法,其特征在于,所述步骤A5中计算每帧图像运动方向并编码,也可以采用比较大小并直接编码的方法来进行,即Oi = code (max(Sx+, Sx_, Sy+,SyJ),其中 code (Sx+)为 “0”,code (Sx_)为 “I”,code (Sy+)为 “2”,code (Sy+)为 “3”。
5.根据权利要求I所述的方法,其特征在于,所述步骤A6中,得到运动方向编码序列后,判定整个序列最终运动方向,可以通过隐马尔科夫模型进行方向推定。
全文摘要
本发明公开了一种基于方向运动历史图及竞争机制的手挥运动方向判定方法,包括以下步骤A1、从视频流中获取当前运动图像,建立肤色概率模型,得到四个光流方向图;A3、根据步骤A2中的四个光流方向图,分别计算四个方向运动历史图;A4、根据手势运动历史图,获得四个方向运动能量图;A5、计算每帧图像的运动方向并编码;A6、判定整个运动序列的运动方向;由于采用帧差和肤色联合提取感兴趣区域,将减少背景和人脸肤色的干扰。由于采用四个方向运动历史图和能量图以方向统计的方式来计算整体运动方向,可以有效克服运动覆盖问题。由于采用了动作竞争机制确定运动方向,可大大降低动作噪声的影响,提高运动方向判定的准确性和稳定性。
文档编号G06K9/00GK102779268SQ201210190678
公开日2012年11月14日 申请日期2012年6月4日 优先权日2012年2月6日
发明者刘恒, 吕金刚, 吴斌, 张彩红, 梁艳阳 申请人:西南科技大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1