一种基于三维手势的自然交互方法

文档序号:6600182阅读:214来源:国知局
专利名称:一种基于三维手势的自然交互方法
技术领域
本发明涉及计算机视觉和人机交互技术,尤其涉及一种基于三维手势的人机交互方法。
背景技术
传统的二维人机交互技术(基于鼠标/键盘/游戏操纵杆/窗口界面),在其软件工具与交互方式两方面,已经发展的相对成熟与完善。但随着人机交互应用需求的不断升 级,包括用户(游戏中称为玩家)对虚拟场景体验的日益追求,传统的二维人机交互方式的 局限性也体现的越来越明显,主要表现在从信息表示能力上看,不能用一种自然的方法表示复杂的多维关系。在表示多维 关系时,不得不使用多窗口环境来表示应用信息,多窗口的划分使得用户需要更大的认知 努力以建立起一个完整和一致的认知模型。从交互方式上看,对于一些领域内的应用(如虚拟世界漫游等)无法用传统的交 互方式来进行自然、合理的表达。当需要同物体进行三维交互时,只能通过不同输入方式的 组合来实现。这种方法一方面很不自然,且增加了用户的交互难度,同时也加重了交互任务 的整合工作。三维人机交互技术,与前者的局限性相比具有其天生的优点,能够自然地满足三 维交互的需要,主要表现在从信息表示能力上看,能够用一种自然的方法表示复杂的多维关系。在一定的应 用领域内信息的三维表示较为直观,与现实世界中的对象较为接近,人们较容易感知这种 表示并上升为一种理性认识。从交互方式上看,三维人机交互方式模拟现实世界中人与物体的交互方式,并且 让真实的人或物直接与虚拟的三维对象进行交互。这种交互方式对于交互语义的表达是自 然和清晰的,同时虚实融合且能够产生交互的世界,会使得人机交互的体验更具有吸引力。

发明内容
本发明的目的是克服现有技术的不足,提供一种基于三维手势的自然交互方法。本发明的目的是通过以下技术方案来实现的一种基于三维手势的自然交互方 法,包括如下步骤(1)从两个摄像头中输入视频图像,对图像使用在线训练肤色检测算法得到手部 的前景图像。(2)对得到的手部前景图像,使用指尖检测方法检测指尖位置。(3)重建三维指尖位置,并通过三维指尖位置定义三维手势交互语义。本发明的有益效果是本发明基于三维手势的自然交互方法运用计算机视觉技 术,通过前景分割、指尖检测得到手部局部特征,这些局部特征包括指尖位置、手掌轮廓、掌 心位置等。运用立体视觉技术,在三维空间重建指尖位置、掌心位置等手部特征。对三维空间的指尖位置、掌心位置等进行参数化处理,定义一套基于点、线、面的三维交互模型,通过 这套模型,实现三维空间的指尖点击、指尖夹取、手掌翻转、指尖指向等多种三维手势。本发 明只需要两个普通的网络摄像头,即可以满足实时人机交互的需要。


图1是基于三维手势自然交互方法的系统结构框图;图2是手掌轮廓示意图;图3是K向量的计算方法示意图。
具体实施例方式本发明基于三维手势的自然交互方法在虚拟现实或增强现实环境中,通过三维手 势自然地和虚拟物体进行交互。包括如下步骤一、从两个摄像头中输入视频图像,对图像使用在线训练肤色检测算法得到手部 的前景图像。在线检训练肤色检测算法利用人的肤色在YCbCr颜色空间的聚类特性,通过 判定视频图像中特定颜色范围来分割出手部前景图形。在肤色检测过程中,使用了实时学 习当前肤色的在线训练方法来减少光照变化对肤色检测的影响。二、对得到的手部前景图像,使用指尖检测方法检测指尖位置。指尖检测方法融合 了单指尖检测和多指尖检测。在光照变化的情况下也可以准确的找到指尖的位置,具有很 强的稳定性与环境适应性。指尖检测方法步骤如下
1、提取手指前景图像轮廓。2、寻找长度最长的轮廓,该轮廓为手指轮廓区域,这样在前景分割不好的情况下, 依然可以找到指尖点。3、如果轮廓长度小于一个阈值(与手和摄像机的距离有关,设为100),则认为手 指前景分割出错,重新进行前景分割,否则执行下一步。4、对前一步得到的轮廓进行多边形近似处理,这样可以减少一些干扰点。计算轮 廓的缺陷(指轮廓中凹的部分,如图2中所示)数量,如果数量为0,转ν继续处理,否则标 定所有的凸体缺陷位置,得到它们的开始点、结束点和深度点,开始点和结束点是候选指尖 点。接着我们判定起始点、结束点、深度点之间的夹角,如果小于120度,则起始点和结束点 为指尖位置。5、计算每个轮廓点的K向量值,并求出轮廓区域的中心位置。如果是第一次求指 尖点按K向量从大到小顺序,求出前N(设为10)个K向量极值点,并比较每个极值点到中 心位置的距离,距离最大的点即为指尖点,同时记录指尖点的位置。否则求出前N个K向量 极值点后,比较N个极值点和上次记录指尖点的距离,如果小于阈值(设为5),则为指尖点, 否则比较N个极值点到中心位置的距离,距离最大的点为指尖点。最后记录指尖位置。K向量是指对于轮廓上的每一个像素点V,以该点位起始点,按照轮廓顺时针方向离它距离为K的点位vl,按轮廓逆时针方向距离它为K的点为v2,则ν的K向量为
(Vl-V) ( V 2 - V )
剛 F^lx Ilv2-V Ii
图3显示了 K向量的计算方法。三、重建三维指尖位置,并通过三维指尖位置定义三维手势交互语义。1、首先标定摄像机外部参数,从而得到OpenGL的模型视图矩阵。2、利用得到的模型视图矩阵和指尖检测得到的指尖位置,利用计算机视觉中的三维重建算法,重建指尖点在基于标记的世界坐标系中的三维位置。3、根据重建的三维指尖点,来定义三维交互语义,从而实现三维交互。我们通过指 尖位置及手掌轮廓来定义三维交互语义。实现的三维交互语义包括指尖点击、双指夹取、 指尖指向、三维指尖速率参数化、手掌翻转、双手指尖距离控制等。根据这些交互语义,建立 一套基于手部特征的点、线、面三维手势交互模型。4、通过定义的三维手势交互语义,我们可以实现多种三维应用。比如操纵游戏中 的虚拟人物,从而实现自然和谐的人机交互。
权利要求
一种基于三维手势的自然交互方法,其特征在于,包括如下步骤(1)从两个摄像头中输入视频图像,对图像使用在线训练肤色检测算法得到手部的前景图像。(2)对得到的手部前景图像,使用指尖检测方法检测指尖位置。(3)重建三维指尖位置,并通过三维指尖位置定义三维手势交互语义。
2.根据权利要求1所述基于三维手势的自然交互方法,其特征在于,所述步骤(2)具体 如下(A)提取手指前景图像轮廓。(B)寻找长度最长的轮廓,该轮廓为手指轮廓区域,如果轮廓长度小于阈值,则认为手 指前景分割出错,重新进行前景分割。(C)对得到的轮廓进行多边形近似处理,计算轮廓的缺陷数量,如果数量为0,转ν继续 处理,否则标定所有的凸体缺陷位置,得到它们的开始点、结束点和深度点,开始点和结束 点是候选指尖点;接着判定起始点、结束点、深度点之间的夹角,如果小于120度,则起始点 和结束点为指尖位置。(D)计算每个轮廓点的K向量值,并求出轮廓区域的中心位置。如果是第一次求指尖点 按K向量从大到小顺序,求出前N个K向量极值点,并比较每个极值点到中心位置的距离, 距离最大的点即为指尖点,同时记录指尖点的位置。否则求出前N个K向量极值点后,比较 N个极值点和上次记录指尖点的距离,如果小于阈值,则为指尖点,否则比较N个极值点到 中心位置的距离,距离最大的点为指尖点。最后记录指尖位置。K向量是指对于轮廓上的每一个像素点v,以该点位起始点,按照轮廓顺时针方向离 它距离为K的点位vl,按轮廓逆时针方向距离它为K的点为v2,则ν的K向量为<formula>formula see original document page 2</formula>
3.根据权利要求1所述基于三维手势的自然交互方法,其特征在于,所述步骤(3)具体 如下(a)首先标定摄像机外部参数,从而得到OpenGL的模型视图矩阵。(b)利用得到的模型视图矩阵和指尖检测得到的指尖位置,利用计算机视觉中的三维 重建算法,重建指尖点在基于标记的世界坐标系中的三维位置。(c)根据重建的三维指尖点,来定义三维交互语义,从而实现三维交互。(d)通过定义的三维手势交互语义,实现三维应用。
全文摘要
本发明公开了一种基于三维手势的自然交互方法运用计算机视觉技术,通过前景分割、指尖检测得到手部局部特征,这些局部特征包括指尖位置、手掌轮廓、掌心位置等。运用立体视觉技术,在三维空间重建指尖位置、掌心位置等手部特征。对三维空间的指尖位置、掌心位置等进行参数化处理,定义一套基于点、线、面的三维交互模型,通过这套模型,实现三维空间的指尖点击、指尖夹取、手掌翻转、指尖指向等多种三维手势。本发明只需要两个普通的网络摄像头,即可以满足实时人机交互的需要。
文档编号G06K9/00GK101807114SQ20101013952
公开日2010年8月18日 申请日期2010年4月2日 优先权日2010年4月2日
发明者李光霞, 李扬, 潘志庚, 邵兴旦, 郭康德 申请人:浙江大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1