基于BP神经网络手势识别系统.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于BP神经网络手势识别系统

基于BP神经网络手势识别系统   摘 要:给出了采用ADXL335加速度传感器来采集五个手指和手背的加速度三轴信息,并通过ZigBee无线网络传输来提取手势特征量,同时利用BP神经网络算法进行误差分析来实现手势识别的设计方法。最后,通过Matlab验证,结果表明,该系统在测试中识别率较高,系统稳定。 关键字:Zigbee;BP神经网络;手势识别;加速度传感器 中图分类号:TP391 文献标识码:A 文章编号:2095-1302(2013)07-0013-03 0 引 言 随着科技的发展和进步,计算机已经渐渐适应人的需求。人类在利用计算机解决问题时,并没有将主观能动性和计算机的高效性有机地结合起来。研究新型的人机交互工具能够打破这一障碍。当虚拟现实越来越被人熟知时,可以使用手势作为载体进行人机交互。目前,手势输入的种类有基于图像的和基于加速度传感器的。由于图像的手势识别对外部环境的依赖比较大,而加速度传感器识别就不受外部条件的限制,甚至可以依靠单手完成操作[1],因此,基于加速度传感器的方法能有效地识别手势动作,完成人机交互。本文采用ADXL335三轴加速度传感器分别采集五个手指和手背上的加速度信息,实现手势的输入。 1 手势识别方法 手势的执行是一个动态的过程,主要表现在手指弯曲引起的手的形状和手在空间的位置和方位的变化,需要从时间和空间两方面来描述。根据手势的时变特征,可将手势分为静态手势和动态手势[2]。从测量的角度看,静态手势可用某一时刻手的空间特征的测量值来表示,而动态手势是指需要使用随时间变化的空间特征来描述的手势。静态手势可以用各个关节测得的特征值来表示,而动态手势需用一段时间内手的空间特征的一组测量序列值来表示[3]。人的手有多个自由度,运动十分灵活、复杂,而且不同的人,手的大小不同。因此,同样的手势,不同的人作出时手的运动会存在差别;同一个人在不同的时间、地点作出手势也不一样[4]。所以,本文主要针对静态手势的数据手套进行分析研究。 2 手势的识别技术 目前,比较流行的手势识别技术有模板匹配法、特征提取和BP算法等。 模板匹配法:主要是将传感器输入的原始数据与预先存储的模板进行匹配,通过测量两者之间的相似度来完成识别任务[5]。由于需要大量的基础数据作为匹配对象,所以受到噪声、光照、复杂环境影响较大,并且匹配速度慢。但是,模板匹配法简单、易掌握,普及程度高。 特征提取:在特征提取过程中,输入数据中的低层特征被提取出来,经过分析而转化成包含手形语义的高层特征,然后用高层特征进行手形识别[6]。 BP算法:是一种按误差逆传播算法训练的多层前馈网络。BP网络的学习规则是使用最速下降法,通过反向传播来不断调整网络的权值和阈值,使网络的误差平方和最小。 3 BP算法 BP神经网络是一种前向传播的多层网络,网络除了输入节点以外,还有一层或多层隐含节点。其训练方法被称为误差反传播算法,它利用实际输出和期望输出之差对网络的多层连接权由后向前逐层进行校正[7]。BP网络的最大缺点是样本训练的收敛速度慢。为提高网络的收敛速度,同时防止网络的振荡发散,本次选取的BP神经网络是1个3层BP网络结构(含1个隐层),隐单元及输出单元用sigmoid 函数输出,输出共分为10类,即输出神经元个数为10。由于输入矢量为处理后的手部加速度传感器(用18×10的数字矩阵表示) ,因此第一层为240 个神经元,第二层为隐含层。根据经验,其神经元数目一般为输入矢量维数的10 %,为26 个神经元,采用改进的BP算法。 将每个样本对应的矩阵元素值输入神经网络的各个输入单元,并为每个输出单元指定期望输出,计算每个输出单元的实际输出与期望输出的误差以及隐含层误差。计算实际输出与期望输出的误差公式为: 式中,Ek为期望输出,Ok为实际输出, k=0,1,2,…,9。 将误差定义式展开到隐含层的公式为: 网络输入误差是各层权值wjk、vij ,即 : (j=0,1,2,…,m;k=1,2,…,l) ( i=0,1,2,…,n;j=1,2,…,m) 式中的负号表示梯度下降,常数η∈(0,1)代表学习速率。 由于BP神经网络算法的收敛速度慢,优化的目标函数非常复杂,所以需要优化学习速率。三层感知器的BP学习算法权值调整计算公式为: 将每个加速度传感器中每个轴的数据特征向量作为神经网络的输入,所以神经的输入层神经元个数等于特征向量的维数,即9×18=162个输入神经元。输出层神经元个数的确定因为要识别10个数字,因此输出选择为10×1的矩阵,即输出节点数为l0。当0~9输入神经网络后在输出神经元对应的位置上为1,其他的位置为0。输入数字0,第

文档评论(0)

linsspace + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档