论文部分内容阅读
随着计算机技术不断的发展,出现了越来越多的人机交互方式。由于手势的直观性、自然性等特点,所以手势识别也成为了一种重要的人机交互方式(HCI)。但手势自身具有的多样性,以及在时空上的差异性等特点,使手势识别成为一个极富挑战性的多学科交叉的研究课题。如何能够快速而准确的识别出手势所表达的意义,成为了人们研究的重点。本文以兼顾实时性和提高手势的识别率为研究目标,设计实现一个基于计算机视觉的静态手势识别系统,完成对预定义的6种静态手势的识别。论文首先讨论了几种常见的图像预处理方法,以用来去除图像的噪声和增强图像的质量,并分别对梯度直方图(HOG特征)和支持向量机(SVM)进行了相关的介绍。由于手势的多样性以及图像背景的复杂性,本文选择单一特征最为强大的HOG特征。与其他特征相比,HOG特征对于手势图像的光线变化和小幅度旋转方面有较强的鲁棒性。将HOG特征与SVM结合起来,作为手势的识别算法。实验结果表明,HOG结合SVM的方法对手势识别有较好的分类效果。在对手势图像分类训练时,常用的HOG特征维数较高,包含大量的冗余信息,使得特征的提取算法较为复杂。为了克服这一不足,提出一种改进算法,引入了主成分析法(PCA)对HOG特征进行降维处理,形成PCA-HOG特征,并与LBP特征相融合形成新的PCA-HOG+LBP融合手势特征。该融合特征既有手势边缘梯度信息,又有纹理特征信息,能有效弥补单一HOG特征的不足,提高手势在遮挡情况下的识别率。最后用Jochen Triesch手势库中的手势图像对本文的识别算法进行验证。结果表明,基于PCA-HOG+LBP特征的识别算法在提高手势识别率的同时也能更好的保证实时性。最后,基于Microsoft Visual Studio 2010和Open CV环境搭建了手势识别的原型系统,设计并实现了一个小型手势识别系统。论述了该系统流程,关键模块的实现代码等内容,通过摄像头采集手势图并自制手势库完成测试,实验结果表明证明改进后的算法在本系统是具有可行性的。