节点文献
基于Kinect的三维手势识别算法研究
Research on 3D Gesture Recognition Based on Kinect
【作者】 赵锋;
【导师】 周晓;
【作者基本信息】 浙江工业大学 , 控制科学与工程, 2015, 硕士
【摘要】 得益于人机交互理论和科学技术的不断发展,人机交互技术得到了广泛应用。基于体感摄像头的人机交互相关应用研究也成为当前的一个研究热点。本文在充分查阅、分析现有文献之后,提出一种基于微软公司Kinect体感摄像设备的三维手势识别算法。该算法首先根据捕获到的深度图像分割出粗略的手部区域,利用肤色模型提取出手轮廓,并根据手部轮廓进一步分割出精确的手部区域。接着通过距离变换和手指细化的方法分别得到手掌掌心坐标和手指指尖候选点坐标。然后根据各指尖候选点到掌心的欧式距离得到最终的指尖点个数及其二维坐标。在此基础上,将各指尖点二维坐标分别映射到深度图中,通过中值滤波的方法获取各指尖点深度坐标。为进一步提高检测结果的准确性和稳定性,引入卡尔曼滤波器对各指尖点进行跟踪与预测,将各指尖的预测坐标与检测坐标进行匹配,并通过建立连续帧序列加快匹配过程。最后,针对三维手势识别算法应用测试,介绍并实现了常见的手势事件,并通过创建计算器和积木拖动两个应用以验证本文提出算法在人机交互应用中的可行性与自然性。实验结果表明,本文提出算法在实时性和稳定性方面表现良好,具有较高的手势识别准确率及较自然的人机交互体验。
【Abstract】 Benefit from the development of human-machine interaction theory and technology, human-machine interaction technology based on computer vision is widely used. Recently, application researches based on somatosensory camera became hot topics.In this paper, we introduce a 3D gesture recognition algorithm based on Kinect,which is made by Microsoft company. Our method segment a rough hand area from depth matrix captured by Kinect firstly. Furthermore, we use skin color detection model to get hand contour, and segment a more accurate region for user’s hand. Distance transformation and fingers thinning algorithm will follow on to get centre coordinate of palm and short list of fingertips coordinates respectively. Then, get the total number of fingertips and their 2D fingertips coordinates according to compare the distance between each fingertip and the centre coordinate of palm with our preset threshold. On this basis, we map these 2D fingertips coordinates into depth matrix and use median filtering algorithm to get depth value for each fingertip, which is also called as Z coordinate value. To improve the precision and stability of our gesture recognition algorithm, Kalman Filter is also adopted in this paper. It is used to dynamically track and predict for all of the 3D fingertips coordinates, and match the short list of fingertips coordinates with their prediction coordinates. A vector which contains a consecutive sequence of frames is used to speed up the matching process.In the last part of this paper, we define some gesture events. Then we create two scenes, calculator application scene and block drag scene to validate the feasibility and smoothly of this method we use in this paper. With good performance in gesture recognition accuracy and the smoothly of human-machine interaction, the experimental results show that our method can achieve the expected aim of real-timing and stability.
【Key words】 3D gesture recognition; Kinect; skin color detection; Kalman filter; human-machine interaction;