基于改进深度信息的手势分割与定位
2017-04-17林海波王圣彬
林海波,王圣彬,张 毅
(国家信息无障碍研发中心(重庆邮电大学),重庆 400065)
(*通信作者电子邮箱1357503397@qq.com)
基于改进深度信息的手势分割与定位
林海波,王圣彬*,张 毅
(国家信息无障碍研发中心(重庆邮电大学),重庆 400065)
(*通信作者电子邮箱1357503397@qq.com)
针对基于Kinect深度信息分割的手势往往包含手腕易造成后续手势误识别的问题,提出一种改进深度信息的手势分割与定位算法。首先,基于深度信息阈值限定在实验空间中检测出手势二值图;然后,根据普通手势特征,提出基于手势端点检测和可变阈值算法分割出准确手势。为得到稳定的分割效果,对分割手势进行形态学处理,最后选取基于手势重心坐标和最大内切圆圆心坐标的联合手势定位法定位手势。实验结果表明,该手势分割方法比已有分割方法更准确可靠,联合手势定位比Kinect软件开发工具包骨骼数据定位和手势重心定位稳定,无奇异点。
深度信息;手势分割;手势定位;可变阈值;最大内切圆
Chongqing400065,China)
0 引言
随着计算机技术的发展,基于机器视觉的手势识别作为一种很有前途的人机交互技术,一直是一个值得研究的课题[1]。在手势识别中,手势分割与定位为手势轨迹提取和手势识别奠定了基础。基于深度信息的肤色分割较新[2],首先获取Kinect深度信息,运用深度阈值分割手势[3-4],但肤色检测遍历每帧整幅图像,消耗时间长,实时性差,不同肤色人群差异、光照环境变化以及类肤色物体都对手势检测造成小部分手腕的干扰[5-6]。文献[7-9]等融合深度信息和彩色图像分割出手势,但不能避免光照影响,降低了手势分割的鲁棒性。文献[10-11]再次深度分割手势与手腕,对两部分距离变换运算求各自的距离灰度图像中心点,连接两中心点取垂直平分线,此方法较准确地将手势和手腕分开,但计算量大。
因此,本文提出一种改进深度信息的手势分割与定位算法,融合深度信息与可变阈值算法分割出准确手势,消除类肤色以及光照环境变化的干扰,并在黑暗环境下得到良好的手势检测结果,鲁棒性好,减少了计算量;并联合手势重心坐标和最大内切圆圆心坐标准确定位出手势位置,提高了轮椅控制的稳定安全性。
1 改进深度信息的手势分割算法
1.1 基于深度信息阈值限定的手势检测
在手势识别中,准确检测手势是关键。本文规定手势正对Kinect摄像头,并将其马达限定在向上约10°角度。根据华南理工大学麦健桦[3]的深度阈值手势分割法,将深度信息获取范围限定在距离Kinect摄像头d1和d2之间,但不能满足轮椅精确安全的控制。为了更稳定精确,进一步缩小(d2-d1)的值,本文设定d1=250 mm,d2=450 mm,最大限度消除实验空间之外复杂环境的干扰,当类似深度有干扰物体时,对深度图像进行直方图分析,计算区分手势与干扰物体的阈值,通过该阈值对深度图像进行处理得到手势图像,获得较优分割效果,手势实验空间设定如图1所示,坐标系{V}为手势空间基坐标系。
根据已有的基于深度阈值手势检测的文献[3-4,12],RGB图、深度灰度图(将深度值在d1和d2之间的像素点线性化到灰度区间[1,254],小于d1和大于d2的令灰度值为0和255)和手势二值图(对深度灰度图二值化,手势灰度值为255,其余为0)容易获得,结果如图2所示。用矩阵G(i,j)表示图2(b)深度灰度图对应位置的像素灰度值,二值矩阵H1表示图2(c)手势二值图,目标手势的值为1,否则为0。G和H1均为m×n矩阵,m和n是图像的像素高和像素宽。
图1 手势实验空间设定
图2 三种手势图像
1.2 基于可变阈值的手势分割
如图2(c)所示,基于深度信息阈值限定检测的手势不准确,有手腕区域,干扰后面的手势轨迹提取和手势识别,而文献[10-11]通过距离变换计算手势与手腕两部分,计算量大。通过研究普通手势特征,本文提出比文献[10-11]更为简便稳定的基于可变阈值算法分割出准确手势,计算量较小。
在手势实验空间中,研究了普通手势特性,手指基本上向上或左右倾斜向上。图2(c)手势二值图中很快找到最高点M和最低点N,如图3所示,其中a是MN线段的任意垂线,P是交点,设:
MP=λMN
(1)
式(1)中,若能找到恰当的可变阈值参数λ,就能将手势和手腕准确分开。
图3 准确手势分割
图3中点M和N的获取易受孤立点、孔洞等噪声干扰,分割图像边界不够光滑,导致准确获取点M和N存在偏差,因此采用形态学处理方法消除干扰,即在手势二值图中提取连通区域,统计出各连通区域大小,通过阈值门限去除较小的孤立点,采用形态学中的闭运算消除手势图像内部的孔洞,得到准确手势二值图,记作矩阵H2。
(2)
(3)
2 改进的联合手势定位算法
2.1 手势重心定位算法
手势定位是控制轮椅安全稳定的基础,对实验空间中手势实时准确定位,实际是对手势轨迹的提取[13],手势轨迹是动态手势的重要特征。在实验空间中,建立基坐标系{V},设手势重心坐标为(xg,yg,zg),zg为手势深度平均灰度值,手势定位公式为:
(4)
其中:G(i,j)H3(i,j)表示两同型矩阵相同位置元素相乘;xg,yg单位为像素;zg的值在区间[0,255]内,表示灰度值。SH3表示手势大小,单位为像素数,(xg,yg,zg)即为手势定位坐标点。
2.2 最大内切圆定位算法
基于手势形状特征,采用最大内切圆法定位手势。设手势像素点集为T,手势边缘像素点集为E,E⊂T。点t∈T是手势内的像素点,点e∈E是手势边缘像素点,对任意ti∈T,有:
(5)
其中:xti,yti和xej,yej表示点ti和ej的横纵坐标,故di表示点ti到手势边缘的最小距离。对所有di,为了尽量减少浮点运算和冗余计算,结合手掌特征,定义掌心坐标及手掌半径为:
(6)
取得R的ti为最大内切圆圆心,相应的xti和yti为圆心坐标。式(5)和(6)用画内切圆确定半径R,计算流程如图4。
图4中定义了一个初始半径,这是容许的最小半径,若以此半径不能画圆,则表示此目标找不到足够宽大的部分,所以不是目标手势。图5直观地展示了最大内切圆法获取手势圆心和半径的原理,在目标手势内,以点A为圆心画的圆最大,故点A是最大内切圆圆心,该圆半径是手势半径。
图4 最大内切圆法定位流程
图5 最大内切圆法示意图
图6是实际采用最大内切圆法获取的手势圆心和半径。其中,四个候选目标被标记成不同颜色,A和B目标满足面积的条件,经过内部点消除处理,而C和D目标面积较小,分辨率较低,无法识别,为节省开支,不再对它们作后续处理。由于目标B以初始半径不能画圆而无法定位,所以也不是手势。目标A满足全部条件,通过本文方法处理后,定位到手势,并找到手势半径。
图6 最大内切圆法实验结果
2.3 联合手势重心和最大内切圆圆心定位算法
Nikhil等[14]采用放射线法比较准确地定位手势,但放射线法并不简便,会产生大量冗余数据,于是本文首先采用手势重心定位手势。重心定位法对图形边缘平滑度要求不高,在手势二值化过程中速度较快,在定位中易出现奇异点。由于可变阈值分割是基于一定实验空间条件下分割手势的,若手势异常运动会超出实验空间,出现手臂干扰,手势重心定位准确度降低。而最大内切圆定位法是基于手势形状特征并采用定点运算定位手势,在实验环境中实时计算运动手势最大内切圆圆心的轨迹运动,避免了手腕的干扰,扩大了算法的应用范围;但最大内切圆定位法只获取了圆心二维坐标,缺少手势区域的平均深度灰度值zg,即竖坐标。为了弥补两种定位法的不足,本文联合手势重心和最大内切圆圆心的定位算法,将重心与圆心的二维坐标中点作为手势定位的二维位置,zg作为手势竖坐标,从而得到联合定位结果,提高了手势定位准确度,同时获取手掌半径R,为后续手势轨迹提取、手势跟踪与识别也起着非常重要的作用。联合手势定位流程如图7所示。
图7 联合手势定位流程
3 实验比较与分析
3.1 手势分割实验
为验证本文算法的有效性,通过实验进行研究。MicrosoftKinect(XBOX360)深度摄像头是在软件KinectforWindowsSoftwareDevelopmentKit-v1.7及Kinect驱动软件下进行视觉信息采集,使用MicrosoftVisualStudio2010开发环境及Matlab2012a软件在CPU为3.30GHz、内存容量为3.19GB计算机上进行编译与仿真。在手势分割中,由于手势在Kinect视景范围内目标小,选取Kinect高分辨率的深度数据格式为深度图像高480像素,宽640像素。考虑到Kinect性能最优,设定实验空间d1=250 mm,d2=450 mm,实验结果如图8所示。
图8 不同条件下手势分割对比
3.2 手势定位实验
在Kinect自身坐标系下,Kinect能够提供人体骨骼数据格式[13](包括手势的人体主要20个骨骼点三维坐标),这是微软通过特殊算法对整个人体在视觉场景中的深度信息估算得到的。因此,可以直接读取手势骨骼点获取手势轨迹信息,骨骼数据和深度数据帧频率都为30Hz,手势在Kinect场景内做螺旋运动,骨骼数据定位到手势轨迹点;但在出现手势与身体自遮挡时易跳变[15],如图9中点gm,而且骨骼数据定位轨迹易重叠,如图10(a)所示。
图9 异常手势动作轨迹
图10 手势定位效果对比
手势重心定位轨迹有奇异点干扰,如图10(b)所示,因此本文提出联合手势重心和最大内切圆圆心的定位算法,选取手势重心和最大内切圆圆心的中点作为手势捕捉,对于可能出现异常手势动作轨迹,可采用球面阈值限定算法处理,将1 s分成3个时间片计算平均轨迹点,取异常手势球面限定阈值τr=100,得到手势初始轨迹和处理后的轨迹效果,如图10(c)所示,使手势更稳定且降低了轨迹冗余度。图10中x、y轴单位pixel表示像素,z轴(grey value)表示灰度值,由图10(a)、图10(b)和图10(c)对比效果,骨骼数据手势定位易跳变、重叠,手势重心定位存在异常轨迹点,本文算法的手势定位效果更稳定,对异常手势轨迹点有一定的抵制能力。
4 结语
本文提出了一种改进深度信息的手势分割与定位算法,通过引入可变阈值去除手腕对手势进行分割并形态学处理,使得手势分割效果更准确;针对手势定位的不稳定问题,提出联合手势重心坐标和最大内切圆圆心坐标的手势定位法准确可靠地定位出手势,并采用球面阈值限定法处理异常手势动作轨迹,为后续高精度手势轨迹提取、手势跟踪与识别提供了有力保证,实验结果证明了该改进算法的可行性与有效性。然而本文只在Matlab上仿真手势轨迹点,实用性不足,因此下一步的研究目标是把手势定位轨迹应用到智能轮椅平台上。
)
[1]LIUX,FUJIMURAK.Handgesturerecognitionusingdepthdata[C]//ProceedingsoftheSixthIEEEInternationalConferenceonAutomaticFaceandGestureRecognition.Piscataway,NJ:IEEE, 2004: 529-534.
[2] 罗元,何超,王艳,等.基于深度预分割结合Camshift跟踪算法的动态手势识别方法[J].半导体光电,2015,36(1):155-159.(LUOY,HEC,WANGY,etal.Anoveldynamichandgesturerecognitionmethodbasedondepthpre-segmentationcombiningwithCamshifttrackingalgorithm[J].SemiconductorOptoelectronics, 2015, 36(1): 155-159.)
[3] 麦健桦.基于自然手势的机器人控制[D].广州:华南理工大学,2013:12-14.(MAIJH.Roboticcontrolbasedonnaturalgesture[D].Guangzhou:SouthChinaUniversityofTechnology, 2013: 12-14.)
[4] 李振.基于手势识别的远程控制机械手的设计[D].武汉:武汉理工大学,2014:22-29.(LIZ.Designofremotecontrolofmanipulatorbasedongesturerecognition[D].Wuhan:WuhanUniversityofTechnology, 2014: 22-29.)
[5]YANGWJ,WANGCM.Depthinformationandmotioncontextfeaturebaseddynamichandgesturedetectionandrecognition[J].JournalofInformationandComputationalScience, 2015, 12(10): 3775-3782.
[6]LEET,HOLLERERT.HandyAR:markerlessinspectionofaugmentedrealityobjectsusingfingertiptracking[C]//Proceedingsofthe2007IEEEInternationalSymposiumonWearableComputers.Washington,DC:IEEEComputerSociety, 2007: 83-90.
[7]RENZ,YUANJ,MENGJ,etal.Robustpart-basedhandgesturerecognitionusingKinectsensor[J].IEEETransactionsonMultimedia, 2013, 15(5): 1110-1120.
[8]ELSAADANYOS,ABDELWAHABMM.Real-time2DHoG-2DPCAalgorithmforhandgesturerecognition[C]//ICIAP2013:Proceedingsofthe17thInternationalConferenceonImageAnalysisandProcessing,LNCS8157.Berlin:Springer, 2013: 601-610.
[9]YAOY,ZHANGF,FUY.Real-timehandgesturerecognitionusingRGB-Dsensor[M]//ComputerVisionandMachineLearningwithRGB-DSensors.NewYork:SpringerInternationalPublishing, 2014: 289-313.
[10]QINS,ZHUX,YANGY,etal.Real-timehandgesturerecognitionfromdepthimagesusingconvexshapedecompositionmethod[J].JournalofSignalProcessingSystems, 2014, 74(1): 47-58.
[11]QINS,ZHUX,YUH,etal.Real-timemarkerlesshandgesturerecognitionwithdepthcamera[M]//AdvancesinMultimediaInformationProcessing—PCM2012.Berlin:Springer, 2012: 186-197.
[12] 陈子毫.基于深度信息的手势检测与跟踪[D].广州:华南理工大学,2012:20-29.(CHENZH.Gesturedetectionandtrackingbasedondepthinformation[D].Guangzhou:SouthChinaUniversityofTechnology, 2012: 20-29.)
[13]SUAREZJ,MURPHYRR.Handgesturerecognitionwithdepthimages:Areview[C]// 2012IEEERO-MAN:Proceedingsofthe21stIEEEInternationalSymposiumonRobotandHumanInteractiveCommunication.Piscataway,NJ:IEEE, 2012: 411-417.
[14] NIKHIL S, MOHAN S, RAMYA B, et al.Design and development of a DSP processor based reconfigurable hand gesture recognition system for real time applications [C]// Proceedings of the 2010 International Conference on Signal and Image Processing.Piscataway, NJ: IEEE, 2010: 39-44.
[15] 张世辉,张煜婕,孔令富.一种基于深度图像的自遮挡检测方法[J].小型微型计算机系统,2010,31(5):964-968.(ZHANG S H, ZHANG Y J, KONG L F.Self-occlusion detection approach based on depth image [J].Journal of Chinese Computer Systems, 2010, 31(5): 964-968.)
This work is supported by the Scientific and Technological Research Project Funds of Chongqing Municipal Education Commission (KJ130512).
LIN Haibo, born in 1965, M.S., professor.His research interests include intelligent system and robot.
WANG Shengbin, born in 1989, M.S.candidate.His research interests include pattern recognition.
ZHANG Yi, born in 1966, Ph.D., professor.His research interests include mobile robot navigation, multi-mode human-machine interaction.
Gesture segmentation and positioning based on improved depth information
LIN Haibo, WANG Shengbin*, ZHANG Yi
(NationalEngineeringResearchandDevelopmentCenterforInformationAccessibility(ChongqingUniversityofPostsandTelecommunications),
Aiming at the problem that segmented gesture by Kinect depth information usually contains wrist data, which easily causes subsequent false gesture recognition, a gesture segmentation and positioning algorithm based on improved depth information was proposed.Firstly, the gesture binary image was detected based on depth information threshold limit in experimental space.Secondly, according to characteristics of common gestures, accurate gesture was segmented by gesture endpoint detection and variable threshold algorithm.In order to obtain stable segmentation results, morphological processing of segmented gesture was conducted.Lastly, the gesture positioning algorithm was proposed based on the method of combining gesture gravity center coordinates and maximum inscribed circle center coordinates.The experimental results show that the proposed gesture segmentation method has better accuracy and stability than the existing algorithm.The combined gesture positioning is more stable than gesture gravity center positioning and skeletal data positioning of Kinect Software Development Kit (SDK) and it has no singular points.
depth information; gesture segmentation; gesture positioning; variable threshold; maximum inscribed circle
2016-08-20;
2016-09-06。 基金项目:重庆市教委科学技术研究项目(KJ130512)。
林海波(1965—),男,重庆人,教授,硕士,主要研究方向:智能系统与机器人; 王圣彬(1989—),男,江苏徐州人,硕士研究生,主要研究方向:模式识别; 张毅(1966—),男,重庆人,教授,博士,主要研究方向:机器人导航、多模人机交互。
1001-9081(2017)01-0251-04
10.11772/j.issn.1001-9081.2017.01.0251
TP391.413
A