关于计算机视觉的手势识别综述蒋指挥(江苏科技大学江苏镇江213022)摘要:计算机技术的高速发展也产生了许多新领域,在此对以计算机视觉为基础的手势检测识别技术展开综述。主要阐述该技术的发展历程、实现方法、研究现状以及其存在的不足之处和发展方向。结果表明简单的可穿戴设备的手势识别和深度视觉传感器的手势识别和多方法交叉融合的手势识别是未来该领域的发展方向。关键词:计算机视觉;手势识别;人机交互Asurveyofgesturerecognitionincomputervision//JiangZhiHuiAbstract;Withtherapiddevelopmentofcomputertechnology,alotofnewfieldshavebeendeveloped.Inthispaper,thetechnologyofgesturedetectionandrecognitionbasedoncomputervisionisreviewed.Thispaperdescribesthedevelopmentofthetechnology,therealizationmethod,theresearchstatusanditsshortcomingsanddevelopmentdirection.Theresultsshowthatthesimplewearabledeviceforhandgesturerecognitionanddepthvisionsensorforhandgesturerecognitionandmultimethodcrossfusionforgesturerecognitionisthefuturedirectionofthedevelopmentofthefield.Keywords:Computervision;gesturerecognition;human-computerinteraction计算机在我们的生活中越来越不可或缺,我们同时也对计算机提出了更高的要求,计算机视觉的手势识别正是对计算机应用拓展的重要途径,例如现在的VR技术,就是应用了手势识别才实现的。ABIResearch公司高级分析师约书亚·弗拉德(JoshuaFlood)指出:“免提操作或手势识别很快将成为高端旗舰智能手机、媒体平板电脑和智能眼镜区别于其他同类产品的一个关键因素。三星电子最新推出银河S4已经将这项技术用于其手机中,并以其全新的用户体验获得用户交口称赞。此外,在一系列新型智能眼镜产品即将发布之时,不难想象这类技术将被采用。”其实手势识别技术涵盖了许多领域,比如物理学、生物学等,实现手势识别的方式有很多种从一开始的二维手型识别、二维手势识别到后来的三维手势识别,正是计算机视觉技术的发展使得手势识别的实现方式更加多样。但目前的技术仍然很繁琐,冗杂的可穿戴设备就直接影响了使用者的舒适感,其还有很大的发展空间。1、手势识别的发展历程及其实现方法说起手势识别技术从简单粗略到复杂精细大致可以分为三个等级:二维手型识别、二维手势识别、三维手势识别。在具体讨论手势识别之前,我们有必要先知道二维和三维的差别。二维只是一个平面空间,我们可以用(X坐标,Y坐标)组成的坐标信息来表示一个物体在二维空间中的坐标位置,就像是一幅画出现在一面墙上的位置。三维则在此基础上增加了“深度”(Z坐标)的信息,这是二维所不包含的。这里的“深度”并不是咱们现实生活中所说的那个深度,这个“深度”表达的是“纵深”,理解为相对于眼睛的“远度”也许更加贴切。就像是鱼缸中的金鱼,它可以在你面前上下左右的游动,也可能离你更远或者更近。前两种手势识别技术,完全是基于二维层面的,它们只需要不含深度信息的二维信息作为输入即可。就像平时拍照所得的相片就包含了二维信息一样,我们只需要使用单个摄像头捕捉到的二维图像作为输入,然后通过计算机视觉技术对输入的二维图像进行分析,获取信息,从而实现手势识别。而第三种手势识别技术,是基于三维层面的。三维手势识别与二维手势识别的最根本区别就在于,三维手势识别需要的输入是包含有深度的信息,这就使得三维手势识别在硬件和软件两方面都比二维手势识别要复杂得多。1.1、二维手型识别二维手型识别,也可称为静态二维手势识别,识别的是手势中最简单的一类。这种技术在获取二维信息输入之后,可以识别几个静态的手势,比如握拳或者五指张开。其代表公司是一年前被Google收购的Flutter。在使用了他家的软件之后,用户可以用几个手型来控制播放器。用户将手掌举起来放到摄像头前,视频就开始播放了;再把手掌放到摄像头前,视频又暂停了。“静态”是这种二维手势识别技术的重要特征,这种技术只能识别手势的“状态”,而不能感知手势的“持续变化”。举个例子来说,如果将这种技术用在猜拳上的话,它可以识别出石头、剪刀和布的手势状态。但是对除此之外的手势,它就一无所知了。所以这种技术说到底是一种模式匹配技术,通过计算机视觉算法分析图像,和预设的图像模式进行比对,从而理解这种手势的含义。而这种识别方法的缺点就非常明显了,他的拓展性差、控制感很弱,人机交互的体验非常繁杂,而且他所能实现的功能非常有限,完全达不到人们的使用要求。1.2、二维手势识别二维手势识别,比起二维手型识别来说稍难一些,但仍然基本不含深度信息,停留在二维的层面上。这种技术不仅可以识别手型,还可以识别一些简单的二维手势动作,比如对着摄像头挥挥手。其代表公司是来自以色列的PointGrab,Eyesight和ExtremeReality。二维手势识别拥有了动态的特征,可以追踪手势的运动,进而识别将手势和手部运动结合在一起的复杂动作。这样一来,我们就把手势识别的范围真正拓展到二维平面了。我们不仅可以通过手势来控制计算机播放/暂停,我们还可以实现前进/后退/向上翻页/向下滚动这些需求二维坐标变更信息的复杂操作了。这种技术在硬件要求上和二维手形识别并没有区别,但他实现的功能更加丰富,使用体验也更好,目前也已经集成到电视中,但大多以噱头为主,还不能作为电视控制的常用方法。1.3、三维手势识别实现三维手势识别的方法就有许多种了,在此简单介绍两种:(1)结构光(StructureLight)结构光的代表应用产品就是PrimeSense公司为大名鼎鼎的微软家XBOX360所做的Kinect一代了。这种技术的基本原理是,加载一个激光投射器,在激光投射器外面放一个刻有特定图样的光栅,激光通过光栅进行投射成像时会发生折射,从而使得激光最终在物体表面上的落点产生位移。当物体距离激光投射器比较近的时候,折射而产生的位移就较小;当物体距离较远时,折射而产生的位移也就会相应的变大。这时使用一个摄像头来检测采集投射到物体表面上的图样,通过图样的位移变化,就能用算法计算出物体的位置和深度信息,进而复原整个三维空间。(2)2光飞时间(TimeofFlight)光飞时间是SoftKinetic公司所采用的技术,该公司为业界巨鳄Intel提供带手势识别功能的三维摄像头。同时,这一硬件技术也是微软新一代Kinect所使用的。这种技术的基本原理是加载一个发光元件,发光元件发出的光子在碰到物体表面后会反射回来。使用一个特别的CMOS传感器来捕捉这些由发光元件发出、又从物体表面反射回来的光子,就能得到光子的飞行时间。根据光子飞行时间进而可以推算出光子飞行的距离,也就得到了物体的深度信息。2、其他一些手势识别研究思想2.1、隐马尔科夫方法[1]隐马尔可夫模型(hiddenmarkovmodel,HMM)早期主要用于语音识别领域,近年来在手势识别方向发展非常迅速。目前,HMM虽然在语音识别领域取得了巨大的成功,但是在手势识别中的表现却并不令人十分满意,这主要是由于传统的HMM方法需要为每种手势分别建立HMM模型,计算量巨大,影响了系统的实时性能.因此,如何在模型复杂性和系统实时性之间寻求平衡,以适应手势识别的实际应用,将是研究者值得深入探讨的问题.2.2、神经网络神经网络具有高度的并行性、自适应性及一定的学习能力等特点,一些学者将这一方法应用于手势识别领域.Murthy等使用BP网络,实现了数十种手势的分类识别.但传统的BP网络存在一些固有的缺点,如容易限于局部极小、收敛速度慢、不能有效利用以往的学习经验等.针对这些问题,许多改进算法不断被提出来.Li等提出自适应确定隐含层神经元数目的算法,将Chebyshev前馈神经网络推广到动态手势学习和识别;Tusor等将模糊理论和人工神经网络结合,建立了模糊神经网络的拓扑结构,用模糊特征值去描述和区分不同的手的姿势.神经网络模型种类繁多,针对不同的应用求,可衍生出不同的形式,但其识别准确建立在大容量的训练样本基础之上.虽然一些改进的网络训练迭代规则可以提高训练速度,但仍不能完全避免冗长的学习训练过程,因此,该方法不太适应需要对用户手势进行在线学习的情况.3、手势识别发展中的问题在手势检测识别研究的早期阶段,往往需要通过使用者佩戴收集手势数据的手套对系统进行输入,如已经产品化的CyberGlove,能够对人手22个关节角度进行高精度的测量,哈尔滨工业大学的吴江琴、高文等人就利用该产品研发了基于神经网络和隐马尔科夫模型(ANN/HMM)结合方法的中文手语识别技术。但利用数据手套作为输入设备会给使用者带来不舒适感如出汗等,且设备价格昂贵,难以推广。其后,又有研究者以在手部粘贴高亮标签使计算机易于识别作为改进方法,如美国中弗罗里达大学的DavisJ和ShahM通过在五个指尖处粘贴高亮标记并利用有限状态机(FSM)建立手势动态模型进行识别。目前实现自然手势检测识别的难点主要有以下三个方面[2]:(1)因使用场合的不同和光照环境等的变化及人手本身因光滑而产生的大量阴影,会对手势区域与背景的分离造成巨大干扰,而能够准确和合理地分离手势与背景是提高识别效率和准确率的一个重要前提。(2)人手由多个部分组成,其中手指往往包含丰富的信息,而手掌和手腕包含的信息则大多为冗余信息,故如何将有用的信息与冗余的信息分离也是提高手势识别能力的关键。(3)人手是弹性物体,同样的使用者要重复做出完全相同的手势是不可能的,不同的使用者在做同样的手势时也会体现出一些差异,如何降低甚至消除这个因素的影响对整个识别的准确率也有一定影响。4、手势识别的发展趋势4.1、新硬件的研究此前的研究大多利用普通摄像头所提供的颜色与运动信息,随着具有新功能的硬件如深度摄像头的出现,许多研究者也开始使用新的硬件去进行手势识别的尝试。如微软公司开发的Kinect,除了能够摄取RGB颜色信息外,还能利用红外线提供深度信息。这就为手势的检测提供了极大的便利,因为红外深度信息与背景的区分度远大于颜色信息与运动信息,使得手势检测的大部分工作能够由硬件直接完成。即使说深度摄像头的出现带来了手势识别的一次革新并不为过,如何进一步利用诸如深度摄像头等新硬件是目前研究的热点。4.2、普适性与准确率的更高要求对手势识别准确率影响的突出因素有光照、背景复杂度和手势运动快慢等因素。过往的研究为了保证准确率一般对具体的应用环境加上一定的限制如只能使用单手或保证背景完全静止等。实际需求则亟待普适且准确率更高的识别技术的出现:无论用于白天或黑夜,不受背景和使用者肤色、衣着等影响的高准确率的手势识别。5、结语手势识别的发展趋势是不可被阻拦的,多种方法的提出互为补充,让不成熟的方法逐渐投入使用。但我认为以后最主流的方法还是由计算机视觉技术带来的,因为当今这方面的研究已经逐步成熟,多种方法的融合使用将是以后发展的趋势。毕竟这是服务人们的,各个领域的知识都是不可缺少的,只有够全面才能保证使用感受。参考文献:[1]张国亮,王展妮,王田《应用计算机视觉的动态手势识别综述》华侨大学学报第六卷第35期2014年11月[2]关然徐向民罗雅愉苗捷裘索《基于计算机视觉的手势检测识别技术》计算机应用与软件第30卷第1期2013年1月