基于手势识别的幻灯片控制系统的设计与实现指导老师:张淑军学生姓名:王西庚1基于手势识别的幻灯片控制系统的设计与实现•课题研究背景•主要研究内容•系统总体结构•系统的设计与实现•系统测试•总结21.课题研究背景•人机交互在当今计算机技术迅猛发展的今天逐渐成为人们日常生活中的重要部分•手势识别是一种简单、直观的新的交互方式,被越来越多的采用•基于手势识别的幻灯片控制系统,可以使我们了解和掌握手势识别的原理,并进行了简单的实际应用的设计32.主要研究内容•了解手势识别研究的原理和方法•掌握OpenCV开源库的使用•熟悉Hu矩特征的基本概念•了解支持向量机(SVM)的分类原理和LibSVM的使用方法•在现有类库基础上实现一个基于手势识别的幻灯片控制系统43.系统总体结构•根据系统设计的总体思想,其结构为:5系统总体结构手势识别幻灯片控制手图像的采集及预处理手图像特征的提取手图像的模型训练加载模型进行预测匹配加载模型进行预测匹配调用函数进行翻页控制接口通过手势控制PPT翻页4.系统的设计与实现•手图像的预处理•手图像几何特征的提取•SVM模型训练和LibSVM的应用•手势识别的流程•接口部分的设计与实现64.1手图像的预处理•手图像的准确获取:本系统中采用灰度投影法确定手的准确区域•手图像的灰度化:本系统中首先将图像由RGB色彩空间转化到YCbCr空间,再利用其Cb或Cr通道进行二值化分割•采用最大类间方差(Ostu)法进行图像的二值化74.2手图像几何特征的提取•能够描述图像特征的矩:Hu矩、小波矩、Zernike矩,本系统中使用Hu矩•Hu矩及其计算:通过对Hu矩的计算,得到了手势图像处理的结果,并作为SVM训练的样本84.3SVM训练模型和LibSVM的应用•最优化理论•SVM——支持向量机•LibSVM的应用:包括“svmtrain”和“svmpredict”,其中前者用于SVM样本训练,最后生成模型文件;后者根据模型文件,加上给定的输入,输出预测样本对应的类别94.4手势识别的流程•基于以上技术,手势识别的流程为:摄像头获取手势,并在窗口画一个矩形框对图像进行二值化处理,保存在hand2窗口计算二值化图像的Hu矩,保存在一个全局变量中建立手势库提取图像的Hu矩特征训练SVM模型加载SVM模型到程序中并根据模型进行匹对手势识别的流程复制子区域的数据保存在hand1窗口对图像进行预处理104.5接口的设计与实现•幻灯片控制——调用相应的控制函数,控制其翻页操作•接口的设计:根据加载的SVM模型对手势图像处理的结果进行判别,并根据判别结果在手势变换时调用不同的幻灯片控制函数,控制文件的翻页•OpenCV窗口的前端显示115.系统测试•对系统进行功能测试,其效果:右图是系统运行时的主菜单界面12下图是系统运行时的手势识别窗口,左图是对右图二值化处理后的结果13•对系统进行性能测试:(1)交互延迟:从系统捕捉到图像到幻灯片执行相应操作所耗费的时间。经过测试,其平均值为57.3ms(2)轮廓提取时间:系统对每一帧图像从开始捕捉到计算其Hu矩值的耗时。经过测试,其平均值为40.7ms次数12345678910延迟(ms)53625856705149595560次数12345678910时间(ms)3945423846414036423814(3)摄像头采集图像的帧速:系统运行时摄像头每秒采集多少帧的图像。经过测试,平均帧速为32.2fps次数12345678910一帧耗时/ms28343229352931342833帧速35.729.431.234.528.634.532.329.435.730.315总结•本课题利用目前比较成熟的OpenCV的相关函数,进行了基于Hu矩和SVM的手势识别的研究,并利用已有的幻灯片控制函数进行了简单的虚实交互•通过对系统进行功能和性能测试,基本实现了本课题的预期研究目标16谢谢!系统效果演示17