The invention discloses a real-time tracking method based on multi finger KINECT step 1: hand segmentation; step two: pixel classification based on fingertip detection; step three: get the 3D position of fingertip; step four: 3D fingertip trajectory tracking. The multi finger real-time tracking method provided by the invention can track finger quickly and accurately in real time, and the system has high stability, high user experience and fast speed of reflection. The KINECT system has the advantages of high stability, high user experience and high speed.
【技术实现步骤摘要】
基于KINECT的多手指实时跟踪方法
本专利技术涉及基于KINECT的多手指实时跟踪方法,属于生物特征计算机识别
技术介绍
在虚拟现实和人机交互系统中,实时、准确并且稳定的多手指跟踪能给用户带来友好的交互体验。基于其丰富的应用前景,三维多手指跟踪得到了研究者的广泛关注,其算法主要分为四个步骤:手部区域的分割、指尖的检测、指尖三维位置的获取、指尖三维位置及其轨迹的跟踪。其中,手部区域的分割是很重要的一个步骤,因为它直接决定了指尖检测算法的准确性。但是该方法的缺点是易受灯光等外部环境的影响,在光照条件不好的情况下容易失败。为此,一些研究者利用红外相机来得到可靠的手分割区域,然而红外相机价格昂贵。还有一些研究者通过给出一些限制条件,如固定的背景、固定的光照等来得到较好的分割区域,但此方法限制了手指跟踪的应用场合。指尖的检测算法主要分三类:基于轮廓、基于形状、基于模板。基于轮廓方法的缺点是它要求手部区域的轮廓比较准确,否则就会出现错误;基于模板匹配的方法也有此缺点,而且速度比较慢。至于基于形状的方法,要确定一个合适的open操作窗口大小是比较困难的。随着微软公司KINECT设备的推出,利用这一廉价的硬件设备,能够实时捕获场景的彩色和深度信息。一些研究者尝试利用KINECT进行多手指跟踪的研究,但都是在KINECT给出的深度图的基础上设计更加鲁棒的二维指尖检测算法,并没有在得到二维指尖点之后,继续利用KINECT给出的深度值来跟踪指尖点的三维坐标和轨迹。本软件实现的算法利用KINECT的深度图来分割手部区域,并且根据KINECT的数据特点,提出了一个改进的 ...
【技术保护点】
一种基于KINECT的多手指实时跟踪方法,其特征在于:包括步骤如下:步骤一:手部区域分割;步骤二:基于像素分类的指尖检测;步骤三:获取指尖的三维位置;步骤四:三维指尖轨迹跟踪。
【技术特征摘要】
1.一种基于KINECT的多手指实时跟踪方法,其特征在于:包括步骤如下:步骤一:手部区域分割;步骤二:基于像素分类的指尖检测;步骤三:获取指尖的三维位置;步骤四:三维指尖轨迹跟踪。2.根据权利要求1所述的基于KINECT的多手指实时跟踪方法,其特征在于:所述手部区域分割包括如下步骤:1a:利用NITE库来跟踪手的中心点位置,再根据中心点深度坐标,提取深度手部区域:其中,Zhand表示跟踪到的手的中心点的深度值,Z(x,y)表示像素点(x,y)处的深度值,thresh表示手的最大深度范围;handmask(x,y)表示手部区域的辨别函数;1b:将步骤1a中的像素点,范围缩小到一个包括手部区域的包围盒内;令包围盒内的手部区域handmask(x,y)=255,包围盒外的区域handmask(x,y)=0;其中,W(Z)表示以手的中心点为中心的包围盒,Z为相应坐标的深度值包围盒大小与手距离KINECT的关系如下:Width(W(Z))=Heigth(W(Z))=2*min{max{80-0.2*(Z-640),60},80}其中,Width(W(Z))和Heigth(W(Z))分别代表包围盒的水平宽度与垂直高度的数值。3.根据权利要求1所述的基于KINECT的多手指实时跟踪方法,其特征在于:所述基于像素分类的指尖检测,包括如下步骤:2a:将KINECT深度值离散化为六段:[501mm,600mm]、[601mm,700mm]、[710mm,800mm]、[801mm,900mm]、[901mm,1000mm]、[1001mm,1100mm];设每一段的gap1与gap2取值分别为gap1i与gap2i;利用KINECT提供的手指轮廓获得指尖位置,以指尖为圆心画半径为20px的圆,交点距离为手指宽度Fli,对应六段区域Fli分别取10px、10px、12px、13px、14px、15px,令delta=3px,则可求出两圆半径:gap1i=FLi/2-deltagap2i=FLi/2+delta2b:根据2a的结果对二值图像进行基于像素的分类:a.若像素点p为圆心,gap1为半径的圆区域中手区域所占比例的大小不大于该圆面积的一半,判定像素点p在手部区域外;b.若像素点p为圆心,gap1为半径的圆区域中手区域所占比例的大小大于该圆面积的一半,判定像素点p在手部区域内;c.若像素点p为圆心,满足b的前提下,以gap2为半径的圆与手区域有四个交点,判定像素点p在手指区域;d.若像素点p为圆心,满足b的前提下,gap2为半径的圆与手区域有两个交点,且交点间距离小于对应的手指的宽度Fli,判定像素点p在指尖区域。4.根据权利要求1所述的基于KINECT的多手指实时跟踪方法,其特征在于:所述获取指尖的...
【专利技术属性】
技术研发人员:卢光宏,童晶,尹薇娜,顾晨婷,
申请(专利权)人:河海大学常州校区,
类型:发明
国别省市:江苏,32
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。