基于matlab手写体数字识别系统研究.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文档。上传文档
查看更多
基于matlab手写体数字识别系统研究

基于matlab手写体数字识别系统研究   摘要:随着科学技术的发展,机器学习成为一大学科热门领域,是一门专门研究计算机怎样模拟或实现人类的学习行为的交叉学科。文章在matlab软件的基础上,利用BP神经网络算法完成手写体数字的识别。   关键词:机器学习;手写体数字识别;BP神经网络   机器学习是一门多领域交叉学科,专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织己有的知识结构,使之不断改善自身的性能。实现机器学习的方法多种多样,常见到的主要有神经网络算法、CNN卷积神经网络算法、RNN循环神经网络算法、EM算法、贝叶斯算法、聚类算法、回归算法、SVM等。本文将利用BP神经网络算法来完成手写体数字的识别[1]。   1总体方案   1.1题目分析   手写体数字识别的实现相对于其他元素的识别,具有许多优势。主要表现在以下几个方面:(1)涉及的识别元素数目少,仅有0?9共10个元素;(2)训练集合背景多为纸张,受到的环境干扰小;(3)识别元素笔画简单,便于识别;(4)训练集合便于采集。   在此基础上,之所以选取BP神经网络作为工具来实现手写体数字识别,其优势主要体现在:(1)BP神经网络算法具有很强的非线性拟合能力,可以影射任何的非线性复杂关系;(2)学习规则简单,便于计算机实现[2]。   1.2总体方案设计   本次?验是识别手写体数字,大体上可以分为两个阶段来实行,分别是训练神经网络和利用神经网络进行识别(预测)。要进行本次试验,首先要下载一个手写体数字素材库,将随机选取素材库中的一部分素材作为训练样本,提取训练样本的特征并以此对神经网络进行训练,这一阶段过后,会得到一个训练成型的神经网路模型。然后利用总样本除去训练样本所剩下的预测样本进行准确度的检验,观察预测的输出是否符合客观实际,多大程度上符合客观实际。   如果得到的最终结果具有比较大的准确度,那么本次试验即成功完成。   通过查阅资料,搜集到了总共5000张每个数字500张的手写体数字图片作为本次实验的素材,随机选取4500张图片作为训练样本,剩下的500张图片作为检验样本[3]。   2算法基本原理   本算法以BP神经网络模型为基础,通过构建图像读取模块、特征提取模块、标签构造模块、训练集/测试集划分模块、神经网络构建以及训练模块、神经网络测试模块和正确率计算模块几个主要模块来实现手写体数字识别这一基本功能,接下来分模块对其原理进行叙述[4]。   2.1图像读取模块   图像读取模块的功能是对搜集到的素材进行数字化的处理,读取到计算机中的模块。其中我们采取了imread函数将5000张手写体数字图片输入计算机。由于计算机的图像存储规则,最终会得到1X5000=5000个图像矩阵,每个图像矩阵都具有其保存的对应图像的绝大部分信息。这些图像矩阵都保存在Cell型变量中,作为后文应用的基础素材。2.2特征提取块特征提取模块即对获得的数字图像进行特征提取。大致的思路如下。首先将将得到的黑白灰度图像在一个合理阈值的范围内转化为二值图像。其次对上一阶段中获得的5000张数字图像(数字矩阵)每一张图像都进行分块处理,再将每一个小的分块看成是一个具体的单位,统计其中有黑色像素存在的小的像素点的个数,并与总像素点的个数做除法得到存在黑色像素的占比大小,将这个占比大小作为每个具体分块单位的特征数据,计入特征矩阵。   在本模块中除了进行特征提取,还对图片的大小进行了统一化的裁切处理,方便后面的应用[5]。   2.3标签构造模块   标签构造模块的目的就是构造出每个具有特征的数字图像所对应的真实值,即标签。这一点是至关重要的,也是进行新图像识别(分类)的基础。在后面的处理中,无论如何变幻原图像,必须保持其与所对应标签的一致性。只有将一组特征(处理后的数据)与最后的标签对应起来,才能保证神经网络训练的有效性。构造标签矩阵的方法较为多样,在这里就不做赘述。   2.4训练集/测试集划分模块   这一模块的主要功能就是划分出训练集与测试集。在这里必须本着随机性均匀性的原则对总的数据集进行划分,这样才能保证最终结果的可靠性。在划分训练集与测试集的同时,需要把标签矩阵的对应元素也同样本数据(特征)一一对应地一并划分,将二者同时作为神经网络训练的输入进行训练。通过这一阶段,我们划分获得了4500个数字图像/对应标签作为训练集,500个数字图像/对应标签作为测试集。   2.5神经网络的构建及训练模块   这个模块的主要功能就是对神经网络进行构建与训练。在这一阶段笔者采用Matlab神经网络工具箱中的相关函数对输入其中的4500组数据链接神经网络进行反复训练,最终得到一个成型的神经网络模型用于后文的预测处理。  

文档评论(0)

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

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

1亿VIP精品文档

相关文档