指示手势的手指尖定位方法转让专利

申请号 : CN200910198196.9

文献号 : CN101719015B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 管业鹏于蕴杰

申请人 : 上海大学

摘要 :

本发明涉及一种指示手势的手指尖定位方法。它是根据指示手势行为中的指示手势的手部特征,自动确定指示手势的手指尖位置。采用背景差分法,提取指示手势对象,运用肤色分割方法,提取指示手势的手部区域,根据指示手势的手指尖位于指示手势的手部边沿轮廓且距离指示手势的手指区域重心最远处,自动确定手指尖点。从而快速有效地定位指示手势的手指尖点位置,满足指示手势人机交互中的特征提取要求。

权利要求 :

1.一种指示手势的手指尖定位方法,其特征在于根据指示手势行为中的指示手势的手部特征,自动确定指示手势的手指尖点位置,具体步骤如下:

1)启动指示手势图像采集系统:采集视频图像;

2)获取背景图像

连续采集不包含指示手势目标的场景图像,当某设定时间间隔内两图像差小于某个设定阈值时,则将该时间间隔内的某一幅图像作为背景图像,否则重新采集,直到满足设定的时间间隔内的两图像差小于某个设定阈值;

3)指示手势对象的分割

由摄像机采集的当前帧图像与步骤2)获取的背景图像相减,分割出指示手势对象区域;

4)提取手部区域;

5)确定指示手势的手部区域;

6)确定指示手势的手指尖位置;

所述步骤4)提取手部区域的具体操作步骤如下:

(1)彩色空间转换,计算色彩值Cr,Cb:由RGB彩色空间的红R、绿G、蓝B三分量,计算YCbCr色彩空间的色彩值Cr,Cb:Cr=0.5×R-0.4187×G-0.0813×BCb=-0.1687×R-0.3313×G+0.5×B(2)肤色区域提取:分别确定色彩值Cr,Cb以及Cr/Cb的阈值T1,T2,T3,T4,T5,将满足下式的所有像素组成的区域,确定为肤色区域SS=(Cr≥T1∩Cr≤T2)∩(Cb≥T3∩Cb≤T4)∩(Cr/Cb≥T5)其中,∩为“逻辑与”操作符;

(3)提取可能的指示手势对象的肤色区域:将同时满足步骤3)与步骤(2)的图像区域,作为可能的指示手势对象的肤色区域;

(4)提取手部区域:对步骤(3)的二值图像进行连通区域搜索,计算连通区域高Sl与宽Sw的比值,以及连通区域中的孔洞数H和连通区域大小W,将满足下式的所有像素组成的区域视为非手部区域,从步骤(3)的二值图像区域中剔除;

F=(Sl/Sw≥T6∩Sl/Sw≤T7)∩(H>1)∩W<T8其中,T6,T7,T8为阈值;

所述步骤5)确定指示手势的手部区域的具体操作步骤如下:分别计算经步骤(4)所得的二值图像连通区域的底部象素i,j的纵坐标By:By=max(j)和横坐标Bx:Bx=i,j=By,将包含具有最小By值及与之对应的Bx所组成的连通区域,确定为指示手势的手部区域;

所述步骤6)确定指示手势的手指尖位置的方法是:计算指示手势的手部区域重心Cx,Cy,以及指示手势的手部区域轮廓线上各点的像素坐标i,j到重心Cx,Cy的距离D,将距离D具有最大值的像素坐标i,j,确定为指示手势的手指尖位置Px,Py。

说明书 :

指示手势的手指尖定位方法

技术领域

[0001] 本发明涉及一种指示手势的手指尖定位方法,用于视频数字图像分析与理解。属于智能信息处理技术领域。

背景技术

[0002] 随着计算机技术的迅猛发展,研究符合人类自然交流习惯的新颖人机交互技术异常活跃,且人机交互技术已从以计算机为中心逐步转移到以人为中心,而多媒体用户界面则大大丰富了计算机信息的表现形式,使用户可以交替或同时利用多个感觉通道。然而,多媒体用户界面的人机交互形式,仍迫使用户使用常规的输入设备(如键盘、鼠标器和触摸屏等)进行输入,成为当今人机交互的瓶颈。虚拟现实作为一种新型人机交互形式,可实现和谐的、以人为中心的人机界面。在虚拟现实中,若以人手直接作为计算机输入设备,则可充分利用人类的日常技能,且不需特别训练或学习,人机间的通信将不再需要中间媒介。在以人手作为自然交互的工具领域中,指示手势(pointing gesture)容易解释。指示手势是人们日常生活中用手指对空间感兴趣目标的反映,是人类语系发展和个体发生学的重要先驱,可揭示人类社会智力,是一种理想的自然人机交互模式。
[0003] 为实现基于指示手势的人机交互,目前采用基于数据头盔、数据手套和身体标记等,这类方法为侵入式,用户需专门训练,操作不便;为克服上述不足,采用基于非接触传感器(如摄像机),获取指示手势的对象特征,确定指势空间目标,实现人机交互,其中,指势空间目标,由指示手势的手指尖与人眼视线的连线同目标所在平面的交点确定。
[0004] 在获取指示手势的手指尖位置时,一般有如下方法:一是佩戴无线传感手套或佩戴特殊颜色的手套,算法需要配备专门的仪器设备,操作不便;二是要求背景简单,指示手势对象单一,该方法难以适应复杂变化场景。

发明内容

[0005] 本发明的目的在于针对现有指示手势的手指尖提取方法,存在需要借助接触性外界设备(如手套)或要求背景简单,指示手势对象单一等问题,提供一种改进的指示手势的手指尖定位方法。它是根据指示手势行为中的指示手势手的特征快速定位指势手指尖,从而提高人机交互的灵活性和简便性。
[0006] 为达到上述目的,本发明的构思是:采用背景差分法,提取指示手势对象,运用肤色分割方法,提取指示手势的手部区域,根据指示手势的手指尖位于指示手势的手部边沿轮廓且距离指示手势的手指区域重心最远处,自动确定手指尖点,从而快速有效地定位指示手势的手指尖点位置。
[0007] 根据上述发明构思,本发明采用下述技术方案:
[0008] 一种指示手势的手指尖定位方法。它是根据指示手势行为中的指示手势的手部特征,自动确定指示手势的手指尖位置,具体步骤如下:
[0009] 1)启动指示手势图像采集系统:采集视频图像;
[0010] 2)获取背景图像
[0011] 连续采集不包含指示手势目标的场景图像,当某设定时间间隔内两图像差小于某个设定阈值时,则将该时间间隔内的某一幅图像作为背景图像,否则重新采集,直到满足设定的时间间隔内的两图像差小于某个设定阈值;
[0012] 3)指示手势对象的分割
[0013] 由摄像机采集的当前帧图像与步骤2)获取的背景图像相减,分割出指示手势对象区域;
[0014] 4)提取手部区域;
[0015] 5)确定指示手势的手部区域;
[0016] 6)确定指示手势的手指尖位置。
[0017] 上述步骤4)的具体操作步骤如下:
[0018] (1)彩色空间转换,计算色彩值Cr,Cb:由RGB彩色空间的红R、绿G、蓝B三分量,计算YCbCr色彩空间的色彩值Cr,Cb:
[0019] Cr=0.5×R-0.4187×G-0.0813×B
[0020] Cb=-0.1687×R-0.3313×G+0.5×B
[0021] (2)肤色区域提取:分别确定色彩值Cr,Cb以及Cr/Cb的阈值T1,T2,T3,T4,T5,将满足下式的所有像素组成的区域,确定为肤色区域S
[0022] S=(Cr≥T1∩Cr≤T2)∩(Cb≥T3∩Cb≤T4)∩(Cr/Cb≥T5)
[0023] 其中,∩为“逻辑与”操作符;
[0024] (3)提取可能的指示手势对象的肤色区域:将同时满足步骤3)与步骤(2)的图像区域,作为可能的指示手势对象的肤色区域;
[0025] (4)提取手部区域:对步骤(3)的二值图像进行连通区域搜索,计算连通区域高S1与宽Sw的比值,以及连通区域中的孔洞数H和连通区域大小W,将满足下式的所有像素组成的区域视为非手部区域,从步骤(3)的二值图像区域中剔除;
[0026] F=(Sl/Sw≥T6∩Sl/Sw≤T7)∩(H>1)∩W<T8
[0027] 其中,T6,T7,T8为阈值。
[0028] 上述步骤5)确定指示手势的手部区域的方法是:分别计算经步骤(4)所得的二值图像连通区域的底部象素i,j的纵坐标By:By=max(j)和横坐标Bx:Bx=i(j=By),将包含具有最小By值及与之对应的Bx所组成的连通区域,确定为指示手势的手部区域;
[0029] 上述步骤6)确定指示手势的手指尖位置的方法是:计算指示手势的手部区域重心Cx,Cy,以及指示手势的手部区域轮廓线上各点的像素坐标i,j到重心Cx,Cy的距离D,将距离D具有最大值的像素坐标i,j,确定为指示手势的手指尖位置Px,Py,Px:Px=i(D=max(D)),Py:Py=j(D=max(D))。
[0030] 本发明的原理如下:
[0031] 在本发明的技术方案中,根据背景差分法能提供较完全的特征数据,基于场景中任何可察觉的目标运动都会体现在场景图像序列的变化中,利用当前图像与背景图像之间的差分,从视频图像中检测指示手势对象。
[0032] 设时间间隔Δt内,分别获得tn-1与tn两时刻的两帧图像f(tn-1,x,y),f(tn,x,y),将两幅图像逐象素求差值,得差分图像Diff(x,y):
[0033] DiffR(x,y)=|fR(tn,x,y)-fR(tn-1,x,y)|
[0034] DiffG(x,y)=|fG(tn,x,y)-fG(tn-1,x,y)|
[0035] DiffB(x,y)=|fB(tn,x,y)-fB(tn-1,x,y)|
[0036] 其中,DiffR,DiffG,DiffB分别对应差分图像红、绿、蓝三分量,|f|为f的绝对值。若时间间隔Δt内的两序列图像f(tn-1,x,y),f(tn,x,y)的差值DiffR(x,y)≤T|DiffG(x,y)≤T|DiffB(x,y)≤T,其中,T为阈值,|为“逻辑或”运算符,表明Δt时间间隔内没有变化物体,从而可将tn~tn-1之间某一时刻的图像,作为背景图像。
[0037] 利用所得背景图像,根据当前获取的当前帧图像,采用背景差分法,分割出指示手势对象区域。
[0038] 同时,尽管肤色因人而异,且千差万别,但在YCrCb的色彩空间中,人类肤色呈现良好的聚类特性,且对姿态变化不敏感,可克服旋转、表情等变化影响,具有强的鲁棒性。在YCbCr模型中,Y分量表示颜色的亮度信息,Cr和Cb分量分别表示红色和蓝色的色度。从RGB空间转换到YCbCr空间的转换公式如下:
[0039]
[0040] 在YCbCr空间中,肤色在Cb、Cr以及Cr/Cb的分布上,处在一个稳定的范围内,即,在当前获取的图像中,将满足(Cr≥T1∩Cr≤T2)∩(Cb≥T3∩Cb≤T4)∩(Cr/Cb≥T5)条件的像素,作为当前图像的肤色区域,其中,∩为“逻辑与”操作符。为克服当前图像中类肤色信息(如木地板、木柜等)的影响,将同时满足该肤色条件所提取的肤色区域和上述采用背景差分法分割出的指示手势对象区域,作为指示手势对象区域。
[0041] 为提取指示手势的手指区域,需从获取的指示手势对象区域中,排除也同时满足上述两条件的人脸区域,由于人眼、眉毛、嘴唇等色彩特征区别于人脸肤色,因此,在提取的人脸区域中将存在孔洞,且人脸肤色区域的高、宽的比值,分布在一个稳定的范围内,据此剔除人脸对指示手势手指区域提取的影响。
[0042] 根据指示手势的行为特征,由于指示手势的手指区域较非指示手势的手指区域在图像中偏上,因此,将包含手指区域的底部纵向象素坐标值最小的连通区域确定为指示手势的手部区域。由于指示手势的食指区域在大小上较前臂区域小,因此,手指尖一定位于离手指区域重心最远处,从而实现指示手势手指尖的定位。
[0043] 本发明与现有技术相比较,具有如下显而易见的突出实质性特点和显著优点:本发明根据指示手势行为中的指示手势的手部特征,以及人类肤色虽然因人而异,但在YCrCb的色彩空间中呈现良好的聚类特性,结合背景差分方法,提取指示手势对象的手部区域,以及指示手势的手指尖位于指示手势的手部边沿轮廓且距离指示手势的手指区域重心最远处,定位指尖点,运算简便、灵活,容易实现,解决了在提取指示手势的手指尖时,需要借助接触性外界设备(如手套)或背景要求简单、指示手势对象单一,以及对动态场景变化敏感、噪声干扰大、运算复杂的不足;提高了指示手势手指尖提取的鲁棒性,可适应复杂背景条件下指示手势手指尖的自动定位。本发明的方法简便、灵活、易实现。

附图说明

[0044] 图1是本发明方法的操作程序框图。
[0045] 图2是本发明一个实施例的原始背景图像。
[0046] 图3是本发明一个实施例的当前指示手势图像。
[0047] 图4是本发明一个实施例的基于背景差分分割出的指示手势对象二值图像。
[0048] 图5是本发明一个实施例的基于YCbCr色彩空间分割出的肤色二值图像。
[0049] 图6是本发明一个实施例的可能指示手势对象的肤色区域
[0050] 图7提取的手部区域二值图像。
[0051] 图8指示手势手部区域二值图像。

具体实施方式

[0052] 本发明的一个具体实施例是:操作程序如图1所示。本例的原始背景图像如图2所示,当前指示手势图像如图3,根据指示手势行为中的指示手势的手部特征,对图3所示的彩色图像,进行指示手势的手指尖定位。具体步骤如下:
[0053] 1)启动指示手势图像采集系统:采集视频图像;
[0054] 2)获取背景图像
[0055] 连续采集不包含指示手势目标的场景图像,当某设定时间间隔内两图像差小于某个设定阈值时,则将该时间间隔内的某一幅图像作为背景图像,否则重新采集,直到满足设定的时间间隔内的两图像差小于某个设定阈值;
[0056] 3)指示手势对象的分割
[0057] 由当前指示手势图像(图3)与原始背景图像(图2)相减,分割出指示手势对象区域,如图4所示;
[0058] 4)提取手部区域
[0059] 具体操作步骤如下:
[0060] (1)彩色空间转换,计算色彩值Cr,Cb:由RGB彩色空间的红R、绿G、蓝B三分量,计算YCbCr色彩空间的色彩值Cr,Cb:
[0061] Cr=0.5×R-0.4187×G-0.0813×B
[0062] Cb=-0.1687×R-0.3313×G+0.5×B
[0063] (2)肤色区域提取:分别确定色彩值Cr,Cb以及Cr/Cb的阈值范围,将满足下式的所有像素组成的区域,确定为肤色区域S,如图5所示;
[0064] S=(Cr≥87∩Cr≤133)∩(Cb≥78∩Cb≤127)∩(Cr/Cb≥1.05)
[0065] 其中,∩为“逻辑与”操作符。
[0066] (3)提取可能的指示手势对象的肤色区域:将同时满足步骤3)与步骤(2)的二值图像,作为可能的指示手势对象的肤色区域,如图6所示;
[0067] (4)提取手部区域:对图6所示二值图像,进行连通区域搜索,计算连通区域高Sl与宽Sw的比值,以及连通区域中的孔洞数H和连通区域大小W,将满足下式的所有像素组成的区域视为非手部区域,从图6所示的二值图像区域中剔除,获得手部区域,如图7所示;
[0068] F=(Sl/Sw≥0.75∩Sl/Sw≤2.5)∩(H>1)∩W<300
[0069] 5)确定指示手势的手部区域:计算图7所示的二值图像连通区域的底部象素i,j的纵坐标By:By=max(j)和横坐标Bx:Bx=i(j=By),将包含具有最小By值及与之对应的Bx所组成的连通区域,确定为指示手势的手部区域,如图8所示;
[0070] 6)确定指示手势的手指尖位置:计算指示手势的手部区域重心(Cx,Cy),以及指示手势的手部区域轮廓线上各点的像素坐标i,j到重心(Cx,Cy)的距离D,将距离D具有最大值的像素坐标i,j,确定为指示手势的手指尖位置(Px,Py),Px:Px=i(D=max(D)),Py:Py=j(D=max(D))),如图8中十字叉所示。