著录项信息
专利名称 | 手部姿态与空间位置的感知方法 |
申请号 | CN201110100532.9 | 申请日期 | 2011-04-21 |
法律状态 | 暂无 | 申报国家 | 中国 |
公开/公告日 | 2011-08-17 | 公开/公告号 | CN102156859A |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | G06F3/01 | IPC分类号 | G;0;6;F;3;/;0;1查看分类表>
|
申请人 | 刘津甦;党建勋 | 申请人地址 | 广东省深圳市南山区粤海街道麻岭社区麻雀岭工业区M8栋鑫腾达大厦509
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 深圳巧牛科技有限公司 | 当前权利人 | 深圳巧牛科技有限公司 |
发明人 | 刘津甦;党建勋 |
代理机构 | 暂无 | 代理人 | 暂无 |
摘要
本发明提出了一种利用红外光源、基于可变数多摄像头的手势识别人机交互技术。本方法不需要用户佩戴任何辅助器具,且具有适用环境范围广、运动感知能力全面、造价低廉、计算复杂度低等突出特点。本发明使用虚拟现实的方法对手部姿态与位置进行建模,并生成模板数据库。在实际使用时,将去除背景的多摄像头输入图像与模板数据库中的条目进行对比,以对比差值最小的数据库条目作为手部姿态初步识别结果。为了使识别结果更稳定,本发明使用平滑滤波方法对初步识别结果进行修正,给用户提供更平稳的识别数据。除此之外,本发明还能够对一段连续时间手部动作的序列进行识别,为人机交互提供更丰富的选择。
手部姿态与空间位置的感知方法\n技术领域\n[0001] 本发明大体上涉及改进的手部姿态与位置的感知方法。更具体地,本发明指示基于多摄像头系统、利用红外光照进行手部姿态与位置的感知的方法,用于提供改进的人机交互技术。\n背景技术\n[0002] 多年来,随着多媒体技术的普及与发展,人们在对新型人机交互技术进行着不懈的探索。使用肢体、手势等直观的方式完成计算机的操纵,成为一个技术热点。人的手部是一种复杂的执行机制,其灵活度高、表现力丰富且可以完成精细的操作,但这些特性也使其姿态的识别与跟踪成为计算机研究中的重大挑战。\n[0003] 对手部运动的识 别,可以通过多种方法 实现。来自微软公司的US20100199228A1(公开日:2010年8月5日)提供了利用深度摄像头捕获并分析用户的身体姿态,并将其解释为计算机命令的方案。来自Nintendo公司的US20080291160A1(公开日:2008年11月27日)提供了利用红外传感器和加速度传感器捕获用户手部位置的方案。\n此外,现有技术中还有利用数据手套来辅助对手部姿态的识别的方案。这些方案实现了对手部运动的识别,但也存在着各种不足。缺点之一是价格昂贵。\n[0004] 来自松下电器产业株式会社的CN1276572A提供了使用摄像头对手部进行拍照,然后对图像进行归一化分析,并将归一化得到的图像进行空间投影,并将所得的投影坐标与预先存储的图像的投影坐标进行比较。该方法比较直观,但需要经过复杂的数学计算过程,且无法对手的空间位置进行识别与跟踪。\n[0005] 此外,在手部运动感知领域,还存在着几大技术挑战:首先,如何从获取的图像中有效的提取出手部的区域。一些技术方案通过识别人的皮肤颜色进行分割处理,但受到环境光照条件的影响很大,而且对于不同人种的肤色需特别处理。另一些方案,在手上佩戴一些具有颜色的标识,或彩色手套,但同样也受到一定的环境光照影响,且降低了使用设备的舒适程度与方便程度。其次,图像中的手部图像存在严重的自遮挡现象,即是说,在一副图像中,手指、手掌之间可能互相遮盖,使得计算机难以凭借图像中的信息判断出手指的具体姿态。\n发明内容\n[0006] 本发明综合考虑了现有技术中存在的多方面问题,并以较低成本、较低计算复杂度和较低的系统的复杂度为代价,实现了对手部姿态与位置的有效识别。\n[0007] 本发明具有以下几个重要的特点:\n[0008] (a)可适用于多种复杂环境。使用该设备,无需特定的光照环境,无需对使用者及使用环境做过多的约束,也无需在使用者的身体上佩戴任何标志与传感器。也就是说,无论白天、夜晚;室外、室内;使用者的肤色;设备处于静态还是移动中,设备都不用进行改造或特别的设置,即可使用。\n[0009] (b)可以全面的感知手部的运动。其既包括手在任意瞬时的位置与姿态,也包括手部以及手指的运动。\n[0010] (c)不使用复杂、造价昂贵或对生产工艺要求过高的设备。比如:高速摄像头、深度摄像头、复杂传感器。\n[0011] (d)无需进行图像归一化处理、图像空间投影等复杂计算过程。\n[0012] 根据本发明的一种用于多摄像头系统的手部姿态与位置的感知方法,所述多摄像头系统包括数据库,以及处于不同位置的第一摄像头与第二摄像头,所述数据库中有多个数据条目,每个数据条目包括一手部姿态与空间位置信息、与所述第一摄像头相对应的第一手部图像模板,以及与所述第二摄像头相对应的第二手部图像模板;\n[0013] 所述手部姿态与位置的感知方法包括:\n[0014] (1)利用第一摄像头捕获第一幅图像;利用第二摄像头捕获第二幅图像;\n[0015] (2)处理所述第一摄像头所捕获的第一图像,提取出第一手部区域的图像;处理所述第二摄像头所捕获的第二图像,提取出第二手部区域的图像;\n[0016] (3)对于所述数据库中的每一条数据条目,将第一手部区域的图像,与所述第一手部图像模板相比较,得到第一差值,将第二手部区域的图像,与所述第二手部图像模板相比较,得到第二差值,累加第一差值与第二差值,得到对应于所述数据库中的每一条数据条目的综合差值;\n[0017] (4)选取综合差值最小的一条数据条目的手部姿态与空间位置信息,作为手部姿态与空间位置测量结果;\n[0018] 基于所述手部姿态与空间位置测量结果,在屏幕上绘制虚拟手图标或光标。\n附图说明\n[0019] 当连同附图阅读时,通过参考后面对示出性的实施例的详细描述,将最佳地理解本发明以及优选的使用模式和其进一步的目的和优点,其中附图包括:\n[0020] 图1绘制了根据本发明的用于手部姿态与位置感知的多摄像头系统的整体结构图;\n[0021] 图2展示了根据本发明的多摄像头系统的控制电路的框图;\n[0022] 图3展示了根据本发明所使用的手部模型的示意图;\n[0023] 图4示出了根据本发明的实施例的数据库条目的生成方法;\n[0024] 图5展示了根据本发明的手部姿态与位置识别方法的流程图;\n[0025] 图6展示了根据本发明的实施例的手部图像提取的示意图;\n[0026] 图7展示了根据本发明的实施例的手部图像匹配过程的示意图;\n[0027] 图8展示了根据本发明的实施例的识别静态手势的示意图。\n具体实施方式\n[0028] 图1是绘制了根据本发明的用于手部姿态与位置感知的多摄像头系统的整体结构图。如图1所示,根据本发明的手部姿态/位置感知系统包含:计算机主机101、多摄像头系统的控制电路102、多个摄像头103、使用者手部104、运行于计算机主机101的应用程序105、应用程序105中的被操作对象106与虚拟手光标107,该多摄像头系统还包括在图\n1中未示出的用于照明使用者手部104的红外照明光源以及放置于每个摄像头前的红外滤光片。\n[0029] 图1中的多个摄像头103包括处于不同空间位置的多个摄像头,用于从不同角度拍摄使用者手部104的图像。多个摄像头103具有红外感光能力。可以使用多个红外发光二极管作为系统的照明光源。为了获得稳定的照明效果,增加在图像中提取手部区域的成功率,可设立两类光源。一类为使用红外二极管直接照明,其照明的特点为光强集中,使得被照壳物体的边缘清晰可辨,但可能产生明显的阴影;另一类为在红外二极管上罩有散射材料,使其成为散射光源,其可将一个区域的照明亮度整体提高,但会造成一定的模糊。配合使用两种光源,可以达到较佳的照明效果。\n[0030] 红外滤光片,覆于摄像头的镜头外侧,将可见光过滤,保证射入多个摄像头103的光线为红外光源的反射光线。使用滤光片后,多个摄像头103捕获的图像为灰度图像,且不受到外界光源环境的影响。\n[0031] 图2展示了根据本发明的多摄像头系统的控制电路102的框图。\n[0032] 图2展示了一个控制电路102的范例实现。包括存储器管理器201、内部存储器\n202、只读存储器203、电源管理模块204、协处理器205、微处理器206、输入输出控制器207、摄像头控制器208与209、USB控制器210。微处理器206是整个控制电路的核心,可采用RISC类嵌入式处理器。协处理器205专职处理图像处理相关的任务,具有大规模并行处理能力,可采用DSP(数字信号处理器)或者其他嵌入式向量处理器,也可以采用定制开发的ASIC(应用专用集成电路)或FPGA(现场可编程逻辑阵列)。微处理器206与协处理器205之间用中断方式、GPIO(通用输入输出管脚)方式、或者双端口存储器方式进行通讯。微处理器和协处理器通过存储器管理器201访问存储设备,通过输入输出控制器207访问外接设备。\n[0033] 存储器管理器201连接了内部存储器202和只读存储器203。内部存储器202承载了控制电路102在运行中的运算数据。由于只读存储器203是非易失性存储设备,可以用来储存控制电路102的启动程序和系统程序。\n[0034] 输入输出控制器207是处理器和外部设备的桥梁。处理器通过输入输出控制器\n207与外部设备进行通讯。在这个范例实现中,输入输出控制器207主要连接了两类设备,摄像头控制器208/209和USB(通用串行总线)控制器210。其中,USB控制器210将控制电路102与计算机主机101(可以是PC(个人计算机),也可以是其他嵌入式系统、电子设备或者游戏平台)连接,传达计算机主机101给控制电路102的命令,并且将手势识别的数据发回给计算机主机101。在多种实施例中,控制电路102和计算机主机之间的链接也可以通过其他方式连接,例如有线、无线网络连接等。摄像头控制器208/209的数量可变。根据具体应用环境中对手势识别的精度需求不同,可以部署一个到多个摄像头控制器208/209。\n摄像头的数量越多,能够获得的识别精度越高。摄像头控制器208/209连接外部摄像头,将捕捉到的视频图像通过输入输出控制207器传达给微处理器206和协处理器205。\n[0035] 在控制电路102的工作过程中,摄像头控制器208/209为控制电路102提供了手势识别的原始数据,微处理器206和协处理器205对原始数据进行处理,最终处理结果通过USB控制器210传递给计算机主机101。值得注意的是,协处理器205是可选的部件,它的存在目的是加速图像处理相关的算法,提高手势识别的速度和精度。如果微处理器206的计算能力已经能够达成应用环境的识别效率的需求,那么完全可以去掉协处理器205,以节省成本。而对于某些应用环境,我们还可以将手势识别的算法计算过程转移到主机101上,这样的话整个控制电路102可以进行更进一步的裁剪。剪裁后的控制电路用于接收摄像头控制器208/209传进来的原始数据,将其整合并传输到主机101。\n[0036] 用户使用依据本发明的手部姿态与位置感知系统时,用户的手部104处于红外照明光源提供的红外光环境中。从摄像头103的视角来看,用户的手部104处于视野的前景,较明亮。因此,从摄像头103捕获的灰度图像中,可容易地通过一些已知的图像处理算法将手部区域分割出来。例如可以用J.Sauvola and M.Pietikainen,“Adaptive document image binarization,”Pattern Recognition 33(2),pp.225-236,\n2000.论文中提到的自适应阈值的图像“二值化”方法将手的区域分割出来,或者采用T.Horprasert,D.Harwood,and L.S.Davis,“AStatistical Approach forReal-Time Robust Background Subtraction and Shadow Detection,”Proc.IEEE Int’l Conf.Computer Vision’99FRAME-RATE Workshop,1999.论文中提到的基于统计的方法将摄像头视野内的前景和背景分离。在一个实施例中,还可以根据经验设定亮度阈值,将图像中亮度低于阈值的区域识别为背景区域,从而实现手部图像区域的分割。\n[0037] 将从多摄像头103得到的一组分割后的手部图像,与手部姿态数据库中的预先存储的模板进行对比,以确定当前的手部姿态。下面结合图3、4说明创建手部姿态数据库的方法。\n[0038] 图3示出了根据本发明而采用的虚拟手部模型。模型中的关节具有1个或2个自由度,自由度指表述关节运动的独立参数。远端指间关节304、近端指间关节305、拇指指间关节301、拇指掌指关节302都只具有1个自由度;拇指腕掌关节303、掌指关节306都具有\n2个自由度。所以整个手部模型共有20个关节自由度。再加上表述手部空间位置的3个自由度(即手部的空间坐标)与表述手部朝向的3个自由度(即手部的俯仰角、横摆角与扭转角),本方法中采用的手部模型的姿态共涉及26个自由度。其可以由一个26维向量表示。\n[0039] 在使用根据本发明的实施例而感知手部姿态或位置之前,首先构建存储手部姿态信息以及与该手部姿态信息相对应的手部图像模板的数据库。为构建数据库,测量要在真实的系统应用场景中放置的多个摄像头各自的位置与姿态。然后,使用虚拟现实图形渲染工具,构建虚拟场景403,并将虚拟摄像头402(如图4所示)按照真实的系统应用场景中的位置放置于虚拟现实场景403中。并使用虚拟现实图形渲染工具,对在虚拟现实场景中的不同位置与姿态的虚拟手部404与红外光源进行模拟,生成虚拟光源401下的虚拟手部\n404在各虚拟摄像头视角观测得到的灰度图像(411,412)。\n[0040] 所生成的虚拟手部,符合在图3中所示出的手部模型。根据具体应用需求,所属领域技术人员可以对图3中的手部模型的一些自由度进行增加或删减,以改变手部姿态数据库的规模,来满足具体工程复杂度和手部感知精度的要求。\n[0041] 所生成的数据库包括多个条目。每个条目中(图4中的数据库条目405),存储了条目序号406,一个手部姿态与位置的自由度信息(空间位置与朝向、以及各手指关节的角度)407,以及通过虚拟现实工具渲染得到的多个虚拟摄像头的每个所拍摄到的对应手部的灰度图像(408,409)。在一个实施例中,虚拟手部模型具有26个自由度,在一个数据库条目\n405中,用一个26维向量表示。在每个条目中,还存储有同该26维向量相对应的多个手部灰度图像,其中该多个手部灰度图像的一个对应于多个虚拟摄像头中的一个,如表1所示。\n[0042] 表1数据库条目表\n[0043] \n[0044] 在选取所需的手部姿态时,可以按预定的姿态精确度生成对应于在虚拟场景403中所有可能的手部姿态与空间位置的数据库条目;也可以按照应用的特定需求,而仅生成应用所关心的对应于特定手部姿态与空间位置的数据库条目,以避免数据库规模过于庞大。\n[0045] 为表述清楚的目的,在下文中介绍本发明的手部姿态与位置识别方法中,将数据库条目中的手部灰度图像也称为手部图像模板。\n[0046] 图5展示了根据本发明的手部姿态与位置识别方法的流程图。本发明的实施例的手部姿态与位置识别方法包括:\n[0047] (1)利用第一摄像头捕获第一幅图像;利用第二摄像头捕获第二幅图像501。在图\n6中的附图标记601指示所捕获的第一幅图像和第二幅图像,其包括背景图像602和作为前景图像的手部区域图像603。\n[0048] (2)处理所述第一摄像头所捕获的第一图像,提取出第一手部区域的图像;处理所述第二摄像头所捕获的第二图像,提取出第二手部区域的图像502。可采用现有技术中已知的多种方法,将灰度图像中的前景与背景相分离,以提取出手部区域的图像。所提取出的第一手部区域的图像和第二手部区域的图像,如图6中提取后的手部图像604中的6041与\n6042所示。\n[0049] (3)对于数据库中的一条数据条目,将提取出的第一手部区域的图像6041,与该数据条目中存储的第一手部图像模板7031相比较,得到第一差值,将第二手部区域的图像\n6042,与第二手部图像模板7032相比较,得到第二差值,累加第一差值与第二差值,得到对应于所述数据库中的该条数据条目的综合差值。在进一步的实施例中还可通过带权值的累加或者其他方式,来得到综合差值。\n[0050] 图7中的手部图像模板7033与7034对应于数据库中的另一条数据条目,对于该数据条目,计算第一手部区域的图像6041与手部图像模板7033的差值以及第二手部区域的图像6042与手部图像模板7044的差值。计算第一手部区域的图像6041与手部图像模板7033的差值,而不是计算第一手部区域的图像6041与手部图像模板7034的差值,是因为第一手部区域的图像6041与手部图像模板7033均与第一摄像头相对应。\n[0051] 对数据库中的每一条数据条目,计算所提取出的第一手部区域的图像和第二手部区域的图像与数据库条目中存储的第一手部图像模板和第二手部图像模板的综合差值。\n[0052] 计算图像差值可以对两幅灰度图片按照像素做差,并对所有的差值进行绝对值求和,这种方法最简单直观,但是对图像距离的衡量效果不稳定。在一个实施例中,采用更复杂的图像差值算法,比如HUTTENLOCHER,D.P.,KLANDERMAN,G.A.,AND RUCKLIDGE,W.J.1993.Comparing images using the Hausdorff distance.IEEETrans.Pattern Anal.Mach.Intell.15,9,850-863.文中提到的算法。\n[0053] (4)选取综合差值最小的一条数据条目的手部姿态与位置信息,作为手部姿态与位置测量结果503。例如,图7中,与手部图像模板7031、7032相关联的数据条目,具有与第一手部图像6041和第二手部图像6042最小的综合差值,则将该数据条目中存储的手部姿态与位置信息,作为该次手部姿态与位置测量的结果。而图7中,手部图像模板7033、7034,与第一手部图像6041和第二手部图像6042的综合差值较大。\n[0054] 基于所述手部姿态与位置测量结果,在屏幕上绘制虚拟手图标或光标,并通过手势类型,确定应用软件需要执行的操作505。完成对当前手势的识别后,可以通过重复上述过程而开始下一次的手部姿态与位置识别506。\n[0055] 经过上述过程得到的手部姿态与位置测量结果可能会出现一定程度的不稳定现象。原因主要来自于使用者无意识或无法控制的微小晃动,以及测量系统的系统误差。使用者的手部可能处于不稳运动状态,因而在连续时间段上,多个摄像头103将捕捉到多个手部图像。基于对在连续时间段上的多个手部姿态与位置测量结果,还可以在本发明的实施例中使用平滑算法,将手部姿态与位置的观测值进行修正,从而得到较平稳的手部姿态与位置504。可以采用的平滑算法包括但不限于卡尔曼滤波方法或者M.Arulampalam,S.Maskell,N.Gordon,and T.Clapp.A Tutorial on Particle Filters for Online Nonlinear/Non-Gaussian Bayesian Tracking.IEEE Trans.on Signal Processing,\n50(2):174-189,February 2002.中提到的粒子滤波法。\n[0056] 本发明的手部姿态与位置识别方法,不限于使用两个摄像头。在进一步实施例中,可采用一个、两个、三个以及多个摄像头,每个摄像头具有不同的空间位置和视角。\n[0057] 在本发明的进一步实施例中,还对静态手势和动态手势进行识别。\n[0058] 静态手势是指,通过伸出指定的手指,并保持一定的手指姿态,来表达使用者的操作意图的手势。然后,通过用户手部的移动距离与旋转角度,确定用户的完整操作。图8中展示了根据本发明的实施例的识别手部运动的示意图,其中使用者正使用本发明,进行三维辅助设计。使用者将手部803置于设备附近,并伸直五指,表示欲进行旋转操作。计算机中绘制的虚拟手光标806,提示了用户当前手部803的姿态与被操作三维物体804的相对位置。之后,使用者将手部旋转了一定的角度801,响应于对手部前后姿态与位置的识别,应用软件在屏幕中所绘制的物体也进行了同步的倾斜802。\n[0059] 动态手势指,使用者通过手部的运动模式,以表达使用者当前的操作意图的手势。比如用户使用指尖绘出三角形轨迹,或者将五指展开再蜷紧以表示一次抓握的操作。系统对用户短时间内的静态手势进行记录,并且将每一种运动模式形式化成一个过滤器(一个运动模式对应一个过滤器)。运动模式过滤器对静态手势记录进行筛选。如果某一时间,用户的静态手势记录通过了某一运动模式的过滤器,系统则认为用户完成了某一手部运动。过滤器的构造可以使用多种方法,比如,Hidden Markov Model(Lawrence R.Rabiner(February 1989).″Atutorial on Hidden Markov Models and selected applications in speech recognition ″ .Proceedings of the IEEE \n77(2):257-286)以及Conditional Random Field(Lafferty,J.,McCallum,A.,Pereira,F.(2001).″Conditional random fields:Probabilistic models for segmenting and labeling sequence data″ .Proc.18th International Conf.on Machine Learning.Morgan Kaufmann.pp.282-289)等。\n[0060] 已经为了示出和描述的目的而展现了对本发明的描述,并且不旨在以所公开的形式穷尽或限制本发明。对所属领域技术人员,许多调整和变化是显而易见的。
法律信息
- 2021-09-28
专利权的转移
登记生效日: 2021.09.16
专利权人由深圳莱米乐智能科技有限公司变更为深圳巧牛科技有限公司
地址由518000 广东省深圳市龙华区观湖街道润城社区大和路99号B1018变更为518000 广东省深圳市南山区粤海街道麻岭社区麻雀岭工业区M8栋鑫腾达大厦509
- 2021-02-02
专利权的转移
登记生效日: 2021.01.20
专利权人由天津锋时互动科技有限公司变更为深圳莱米乐智能科技有限公司
地址由300384 天津市南开区华苑产业园区物华道8号凯发大厦B-516变更为518000 广东省深圳市龙华区观湖街道润城社区大和路99号B1018
- 2013-09-18
专利权的转移
登记生效日: 2013.08.26
专利权人由刘津甦变更为天津锋时互动科技有限公司
地址由300171 天津市河东区八纬路长城公寓11号楼3门302变更为300384 天津市南开区华苑产业园区物华道8号凯发大厦B-516
专利权人由党建勋变更为空
- 2012-10-03
- 2011-09-28
实质审查的生效
IPC(主分类): G06K 9/00
专利申请号: 201110100532.9
申请日: 2011.04.21
- 2011-08-17
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| |
2001-03-28
|
2000-09-21
| | |
2
| |
2000-12-13
|
2000-06-08
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |