论文部分内容阅读
人工智能作为当前研究的热门在当前社会以及未来的很长一段时间里会得到大量的应用,这从当前的各种智能家居以及各种智能单品的热销与追捧中不难看出。而人工智能当中的一个较大的分支便是手势识别。目前,动态手势识别的识别过程主要包括动态手势分割、手势特征提取和手势模式识别。所面临的主要问题是识别的速度和准确度。为了能够非常快速的进行手势分割和手势特征提取,本文借助FPGA平台高速高效特性来加速我们的动态手势识别前端的处理,而后端的模式识别由于FPGA相对不太擅长复杂度较高的算法,所以这部分使用PC上位机来实现。FPGA与PC间的特征值传递采用串口的传输方式来实现。基于以上背景和当前面临的问题,本文提出了一个基于FPGA的动态手势识别系统,并为该系统搭建了一个原型。动态手势分割和手势特征提取由FPGA完成,手势的模式识别由PC上位机完成。FPGA平台上的动态手势分割和特征提取主要通过肤色检测和边缘检测来提取手指指尖的位置。在肤色检测环节,环境光照的非均匀不稳定特性对检测的效果影响非常大,因此本文在当前固定阈值肤色检测算法的基础上进行改进,提出了像素级包络阈值自适应肤色模型来改善肤色检测的鲁棒性。为了提高系统的处理速度和吞吐量,本文设计了并行双流水线的视频流处理架构来实现我们的算法。在FPGA平台提取出位置特征值后,通过串口将特征模式发送到PC端的上位机进行模式识别。而PC端的上位机采用麻省理工大学开发的开源机器学习库GRT(Gesture Recognition Toolkit)来实现。之所以采用这个开源库,是因为GRT具有扩展性强、方便易用、最重要的是学习算法库完备等优点。这对于快速的原型开发非常重要。系统目前暂定的待识别手势数为十个随机挑选的大写字母的手写手势,评价方案采用召回率、准确率、精确率和混淆矩阵来评估系统的识别可靠性。经过最终的样本库识别测试,发现系统的识别准确度和实时性都能够满足本文预期的要求,完成了既定的任务。