CN108255285A - 一种基于掌间点检测的运动手势检测方法 - Google Patents
一种基于掌间点检测的运动手势检测方法 Download PDFInfo
- Publication number
- CN108255285A CN108255285A CN201611240756.9A CN201611240756A CN108255285A CN 108255285 A CN108255285 A CN 108255285A CN 201611240756 A CN201611240756 A CN 201611240756A CN 108255285 A CN108255285 A CN 108255285A
- Authority
- CN
- China
- Prior art keywords
- gesture
- image
- acceleration
- palm
- motion
- 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
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 24
- 230000001133 acceleration Effects 0.000 claims abstract description 26
- 238000000034 method Methods 0.000 claims abstract description 20
- 230000008859 change Effects 0.000 claims abstract description 18
- 238000001914 filtration Methods 0.000 claims abstract description 16
- 238000005286 illumination Methods 0.000 claims abstract description 9
- 238000007781 pre-processing Methods 0.000 claims abstract description 8
- 238000004364 calculation method Methods 0.000 claims abstract description 4
- 238000003706 image smoothing Methods 0.000 claims description 4
- 230000008569 process Effects 0.000 abstract description 7
- 241001269238 Data Species 0.000 abstract 1
- 230000003993 interaction Effects 0.000 description 17
- 238000005516 engineering process Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 4
- 230000007797 corrosion Effects 0.000 description 3
- 238000005260 corrosion Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 239000003086 colorant Substances 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 230000005484 gravity Effects 0.000 description 2
- 241000282412 Homo Species 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000003628 erosive effect Effects 0.000 description 1
- 238000009499 grossing Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
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
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/107—Static hand or arm
- G06V40/113—Recognition of static hand signs
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Image Analysis (AREA)
Abstract
本发明提出一种基于掌间点检测的运动手势检测方法,包括以下步骤:S1图像预处理,对摄像头捕获的手势图像进行预处理;S2加速度及角度计算,计算图像中像素点的加速度及角度变化;S3光照平衡,使用直方图均衡化对光照变化进行补偿;S4手势轮廓查找,使用连通区域寻找人手轮廓;S5手势过滤,通过指尖点、掌间点的定位实现非手势部分过滤;S6运动手势检测,利用现时刻帧图像数据与背景图像数据或者相邻前几帧图像数据进行求差,获得运动的手势图像。
Description
技术领域
本发明涉及人机交互领域,具体涉及一种基于掌间点检测的运动手势检测方法。
背景技术
为了帮助残疾人/老年人保持与外界的交流、沟通,提高他们的独立生活能力,减轻家庭、社会的负担,世界各地许多科学家们开始探索研究新型的人机交互方式。所谓交互技术包括人与执行机构(如机器人等)的交互和执行机构与环境的交互。前者的意义在于可由人去实现执行机构在未知或非确定环境中难以做到的规划和决策;而后者的意义在于可由机器人去完成人所不能达到的恶劣环境或远距离环境中的作业任务。
传统的人机交互设备主要有键盘、鼠标、手写板、触摸屏、游戏控制器等,这些设备利用使用者的手部运动来实现人机交互的功能。手势交互支持更多更自然的交互方式,提供了以人为中心而不是以设备为中心的交互技术,从而使用户将注意力集中在本来该做的事情以及内容上而不是集中在设备上。
常见的手势交互技术分为基于数据手套传感器的手势交互技术和基于计算机视觉的手势交互技术两种。
基于数据手套传感器的手势交互技术,需要用户佩戴数据手套或者位置传感器等硬件设备,利用传感器采集手指状态及运动轨迹等信息,从而进行运算处理让计算机识别手势动作,实现各种交互控制。此方式优点在于识别精准鲁棒性能好、算法相对简单、运算数据少且快速、可以精准获取手的立体空间动作,完全没有视觉系统的环境光照变化和背景复杂等问题干扰。缺点在于设备穿戴复杂、成本高、用户操作使用不便且手势动作受一定约束限制,因此难以大量投入实际生产使用。
基于计算机视觉的手势交互技术通过机器视觉对摄像头采集到的手势图像序列处理识别,从而和计算机进行交互,这种方法使用摄像头采集手势信息,然后利用肤色模型对人手部分进行分割,从而实现手势检测和识别。该方法的效果取决于肤色模型的准确率,然而人的皮肤颜色不一,难以得到通用、高效的肤色模型;此外,当人的身体或者人手发生抖动时,手势检测率会降低。
发明内容
本发明目的在于克服现有技术的不足,尤其解决现有基于计算机视觉的手势交互技术中,难以对颜色不一的肤色建立通用、高效的肤色模型,难以解决人体区域抖动导致检测率降低的问题。
为解决上述技术问题,本发明提出一种基于掌间点检测的运动手势检测方法,主要步骤包括:
S1图像预处理,对摄像头捕获的手势图像进行预处理;
S2加速度及角度计算,计算图像中像素点的加速度及角度变化;
S3光照平衡,使用直方图均衡化对光照变化进行补偿;
S4手势轮廓查找,使用连通区域寻找人手轮廓;
S5手势过滤,通过指尖点、掌间点的定位实现非手势部分过滤;
S6运动手势检测,利用现时刻帧图像数据与背景图像数据或者相邻前几帧图像数据进行求差,获得运动的手势图像。
进一步地,所述步骤S1图像预处理操作包括:图像灰度化、图像平滑、图像二值化操作;
进一步地,所述步骤S2加速度计算操作中,利用加速度值变化快慢协同图像手势坐标点移动速度判断是否为头部或身体抖动所致,利用加速度值倾斜角度协同图像手势坐标点移动范围判断是否为头部或身体移动所致;
进一步地,所述步骤S5手势过滤操作包括:S51指尖点查找、S52掌间定位以及S53手势过滤操作。
本发明与现有技术相比具有以下的有益效果:
本发明方案采用加速度传感器采集加速度数据和计算倾斜角进行消除头部抖动或移动对人手坐标提取的干扰,采用连通区域寻找手势轮廓,并查找指尖点和掌间点实现非手势区域过滤,最后利用帧间差法实现运动手势的检测,减少了由于身体抖动带来的干扰,提升了手势检测的准确性。
附图说明
图1为本发明一种基于掌间点检测的运动手势检测方法的一个实施例的流程图。
图2为本发明实施例的加速度倾向角示意图。
图3为本发明实施例的四连通区域和八连通区域的原理对照图。
图4为本发明实施例的指尖点集示意图。
图5为本发明实施例的运动手势检测的程序流程图。
具体实施方式
下面结合附图及具体实施例对本发明进行更加详细与完整的说明。可以理解的是,此处所描述的具体实施例仅用于解释本发明,而非对本发明的限定。
参见图1,本发明实施例的基于掌间点检测的运动手势检测方法,主要步骤包括:
S1图像预处理,具体过程包括:S11图像灰度化、S13图像二值化、S12图像平滑。
S11图像灰度化:相机获取的人眼图像是彩色图像,包含的信息量大,图像处理速度较慢。考虑到人机交互对实时性的要求高,对彩色图像进行灰度化处理是必须的。灰度化就是使彩色像素的R、G、B分量值相等的过程,灰度图像中的灰度值等于原彩色图像中的RGB平均值,即
Gray=(R+G+B)/3 (1)
S12图像二值化:用最大类间方差法进行图像二值化,过程为:
设图像共有L个灰度级,灰度值为i的像素点共有ni个,图像共有N个像素点,归一化灰度直方图,令
设定一个阈值t,根据灰度值将像素点分成c0和c1两类。c0的概率ω0、均值μ0:
c1的概率ω1、均值μ1:
其中,由此可知c0和c1的类间方差σ2(t)为:
σ2(t)=ω0(μ-μ0)2+ω1(μ1-μ)2 (6)
于是将t从0到i进行取值,当σ取最大值时t为最佳阈值,即可得到最佳的二值化图像。
S13图像平滑:对二值图像用数学形态学方法进行平滑,减少图像中噪声,过程为:
1)腐蚀的算符为Θ,集合A被集合B腐蚀定义为公式(7):
2)膨胀的算符为集合A被集合B膨胀定义为公式(8):
采用膨胀腐蚀型梯度算子,即用膨胀后的图像减去腐蚀后的图像,即可得到图像中的边缘。由于此时的边缘不是单像素宽连通的,还需要再用区域骨架提取算法对边缘进行细化。
3)设B是图像,S(A)代表A的骨架,B是结构元素,则用公式(9)表示:
其中,K表示将A腐蚀成空集前的迭代次数,即用公式(10)表示为:
Sk(A)称为骨架子集,根据公式(11)可写为:
Sk(A)=(AΘkB)-[(AΘkB)οB] (11)
AΘkB表示连续k次用B对A进行腐蚀。
S2加速度及角度计算,计算图像中像素点的加速度及角度变化;用器件的典型取向作为参考点,其中,x轴和y轴处于水平面内,z轴处于与水平线垂直。参见图2,图2为加速度倾向角示意图。其中θ、ψ、分别为加速度传感器x轴与水平线的夹角,y轴与水平线的夹角,z轴与重力加速度方向的夹角。当加速度传感器处于图2中的(a)所示状态,x,y,z三个方向倾斜角度都为0。
重力矢量在坐标轴上的投影会形成等于加速度传感器方向与坐标轴夹角正弦值的输出加速度,x,y,z三个方向的加速度输出值为Ax,Ay,Az。
倾斜角θ、ψ、分别计算如下:
利用加速度值变化快慢协同图像手势坐标点移动速度可判断是否为头部或身体抖动所致,利用加速度值倾斜角度协同图像手势坐标点移动范围可以判断是否为头部或身体移动所致。
S3光照平衡,使用直方图均衡化对光照变化进行补偿;直方图均衡化使图像的灰度间距拉开或使灰度分布均匀,从而增大反差,使图像细节清晰,达到图像增强的目的。其具体方法是:
首先给出原始图像的所有灰度级Sk(k=0,1,......,L-1);然后统计原始图像各灰度级的像素数nk;利用式(13)计算原始图像的直方图后再用(14)式计算原始图像的积累直方图:
P(Sk)=nk/n,k=0,1,...,L-1 (13)
p(tk)=nk/n (15)
其中,n是图像像素总数。对灰度值tk取整,确定Sk→tk的映射关系后统计新直方图各灰度级的像素数nk;最后利用式(15)计算新的直方图。
S4手势轮廓查找,使用连通区域寻找人手轮廓。一个轮廓一般对应一系列的点,也就是图像中的一条曲线,是通过顺序找出边缘点来跟踪边界的。由于每个区域内的像素值相同,可通过四连通或八连通区域进行轮廓查找。四连通和八连通可标注二进制图像中已连接的部分,语法实现为L=(BW,n)[L,num]。其中BW为输入图像;n可取值为4或8表示连接四连通或八连通区域;num为找到的连通区域数目;L为输出图像矩阵,其元素值为整数,背景被标记为0,第一个连通区域被标记为1,第二个连通区域被标记为2,依此类推。
参见图3,四连通和八连通的原理对照图,图中的0是中心像素点所在的位置就是四连通或八连通区域,即四连通区域指0的上下左右四个点,八连通还包含左上角、右上角、左下角和右下角四个位置,故八连通区域包含了四连通区域。轮廓查找结束后,会得到多个轮廓,通过最大轮廓定义筛选获取唯一的轮廓作为手势轮廓,并用于后续的指尖查找。
S5手势过滤,通过指尖点、掌间点的定位实现非手势部分过滤。轮廓查找后会寻找到部分非手势区域的轮廓,需要通过指尖点、掌间点来区分手势区域和非手势区域。包括S51指尖点查找、S52掌间定位以及S53手势过滤操作,具体描述如下:
S51指尖点查找:从点集的角度来说,指尖在手掌轮廓中是一个凸包,凸包是指一个最小凸多边形,满足一个点集中的所有点在多边形边上或者内部,参见图4,线段围成的多边形就是点集{p0,p1……p12}的凸包,其中p0,p1,……p12均指节点或顶点。这里用凸包查找进行指尖的定位,即识别手势中凸包的个数和位置,即可识别出当前指尖的个数和位置。
S52掌间定位:通过指尖定位进行掌间定位计算,掌间与指尖间的定位起着相互制约的作用。通过计算极小值点得到掌间定位,即通过公式(16)找出指尖点间的各点坐标与其所对应前后坐标点间的相对位置来做出的判断找到基于相邻两个指尖点间的极小值点。
f(x0)≥f(x1)andf(x0)≥f(x2) (16)
其中f(x0)为当前垂直方向像素点坐标值,f(x1)与f(x2)分别为其前驱坐标值与后继坐标值,代码中选择的前驱后继跨度为3个像素点,此意图是为了防止像素点间构成线条的布局影响。
S53手势过滤,通过指尖点和掌间点进行过滤。手势区域必定存在指尖点和掌间点,如轮廓区域没有掌间点和指尖点或者仅有少量掌间点和指尖点,则判断为非手势区域,将过滤该区域的轮廓。
S6运动手势检测,利用现时刻帧图像数据与背景图像数据或者相邻前几帧图像数据进行求差,获得运动的手势图像。参见图5,图5为运动手势检测的程序流程图。
1、判断当前帧差值和上一帧帧差值的变化情况,如果无变化则记录无变化次数的变量Pnc加1,如果有变化则Pnc值保持原值不变;
2、如果当前帧差值和上一帧帧差值无变化则判断Pnc值是否大于4(也即无变化帧数是否连续超过4帧),如果Pnc值大于4(这样是为了能够在固定时间轴上检测运动)则清零Pnc值和Pc值(记录有变化次数的变量),如果Pnc值不大于4则不清零Pnc值和Pc值;本实施例中,如果当前帧差值和上一帧帧差值有变化则判断Pnc值是否大于2且小于5(这样是为了得到稳定变化和消除频繁变化),如果Pnc值满足大于2且小于5的条件则清零Pnc值同时对Pc值进行加1,如果Pnc值不满于大于2且小于5的条件则不清零Pnc值同时也不对Pc值进行加1操作;
3、判断Pc是否大于2,如果成立则此点为手的挥动点。
Claims (4)
1.一种基于掌间点检测的运动手势检测方法,其特征在于,包括以下步骤:
S1图像预处理,对摄像头捕获的手势图像进行预处理;
S2加速度及角度计算,计算图像中像素点的加速度及角度变化;
S3光照平衡,使用直方图均衡化对光照变化进行补偿;
S4手势轮廓查找,使用连通区域寻找人手轮廓;
S5手势过滤,通过指尖点、掌间点的定位实现非手势部分过滤;
S6运动手势检测,利用现时刻帧图像数据与背景图像数据或者相邻前几帧图像数据进行求差,获得运动的手势图像。
2.根据权利要求1所述的一种基于掌间点检测的运动手势检测方法,其特征在于,所述步骤S1图像预处理操作包括:图像灰度化、图像平滑、图像二值化操作。
3.根据权利要求1所述的一种基于掌间点检测的运动手势检测方法,所述步骤S2加速度计算操作中,利用加速度值变化快慢协同图像手势坐标点移动速度判断是否为头部或身体抖动所致,利用加速度值倾斜角度协同图像手势坐标点移动范围判断是否为头部或身体移动所致。
4.根据权利要求1所述的一种基于掌间点检测的运动手势检测方法,其特征在于,所述步骤S5手势过滤操作包括:S51指尖点查找、S52掌间定位以及S53手势过滤操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611240756.9A CN108255285A (zh) | 2016-12-29 | 2016-12-29 | 一种基于掌间点检测的运动手势检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611240756.9A CN108255285A (zh) | 2016-12-29 | 2016-12-29 | 一种基于掌间点检测的运动手势检测方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108255285A true CN108255285A (zh) | 2018-07-06 |
Family
ID=62719534
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611240756.9A Pending CN108255285A (zh) | 2016-12-29 | 2016-12-29 | 一种基于掌间点检测的运动手势检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108255285A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109271931A (zh) * | 2018-09-14 | 2019-01-25 | 辽宁奇辉电子系统工程有限公司 | 一种基于轮廓分析的剑指手势实时识别系统 |
CN109522795A (zh) * | 2018-10-12 | 2019-03-26 | 深圳市乾乾编程科技有限公司 | 一种通过手势进行编程的方法 |
CN111263084A (zh) * | 2018-11-30 | 2020-06-09 | 北京字节跳动网络技术有限公司 | 基于视频的手势抖动检测方法、装置、终端和介质 |
-
2016
- 2016-12-29 CN CN201611240756.9A patent/CN108255285A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109271931A (zh) * | 2018-09-14 | 2019-01-25 | 辽宁奇辉电子系统工程有限公司 | 一种基于轮廓分析的剑指手势实时识别系统 |
CN109522795A (zh) * | 2018-10-12 | 2019-03-26 | 深圳市乾乾编程科技有限公司 | 一种通过手势进行编程的方法 |
CN111263084A (zh) * | 2018-11-30 | 2020-06-09 | 北京字节跳动网络技术有限公司 | 基于视频的手势抖动检测方法、装置、终端和介质 |
CN111263084B (zh) * | 2018-11-30 | 2021-02-05 | 北京字节跳动网络技术有限公司 | 基于视频的手势抖动检测方法、装置、终端和介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Hasan et al. | RETRACTED ARTICLE: Static hand gesture recognition using neural networks | |
CN110221699B (zh) | 一种前置摄像头视频源的眼动行为识别方法 | |
Rautaray et al. | Real time multiple hand gesture recognition system for human computer interaction | |
Yang et al. | Hand gesture recognition: An overview | |
CN102096471B (zh) | 一种基于机器视觉的人机交互方法 | |
Huang et al. | Deepfinger: A cascade convolutional neuron network approach to finger key point detection in egocentric vision with mobile camera | |
CN108268125A (zh) | 一种基于计算机视觉的运动手势检测及跟踪方法 | |
CN106200971A (zh) | 基于手势识别的人机交互系统装置及操作方法 | |
WO2013051681A1 (ja) | 手指形状推定装置、手指形状推定方法、及び手指形状推定プログラム | |
Prakash et al. | Gesture recognition and finger tip detection for human computer interaction | |
Guo | Research of hand positioning and gesture recognition based on binocular vision | |
CN108255285A (zh) | 一种基于掌间点检测的运动手势检测方法 | |
Bei et al. | Sitting posture detection using adaptively fused 3D features | |
Abed et al. | Python-based Raspberry Pi for hand gesture recognition | |
Saikia et al. | Head gesture recognition using optical flow based classification with reinforcement of GMM based background subtraction | |
Sokhib et al. | A combined method of skin-and depth-based hand gesture recognition. | |
Chaudhary et al. | A vision-based method to find fingertips in a closed hand | |
CN108256379A (zh) | 一种基于瞳孔定位的眼睛姿势识别方法 | |
JP2000149025A (ja) | ジェスチャ認識装置及び方法 | |
KR101141686B1 (ko) | 회전각 측정 장치 및 이의 회전각 측정 방법 | |
CN109214295B (zh) | 基于Kinect v2和Leap Motion的数据融合的手势识别方法 | |
Kuang et al. | An effective skeleton extraction method based on Kinect depth image | |
CN108255288A (zh) | 基于加速度补偿和肤色模型的手势检测方法 | |
CN108255287A (zh) | 基于加速度补偿和掌间点检测的手势检测方法 | |
Pradhan et al. | Design of intangible interface for mouseless computer handling using hand gestures |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20180706 |