基于bp神经网络的数字识别的Matlab实现

基于bp神经网络的数字识别的Matlab实现

ID:36372929

大小:457.00 KB

页数:20页

时间:2019-05-09

基于bp神经网络的数字识别的Matlab实现_第1页
基于bp神经网络的数字识别的Matlab实现_第2页
基于bp神经网络的数字识别的Matlab实现_第3页
基于bp神经网络的数字识别的Matlab实现_第4页
基于bp神经网络的数字识别的Matlab实现_第5页
资源描述:

《基于bp神经网络的数字识别的Matlab实现》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、基于BP神经网络的数字识别主要内容1.课题研究背景2图像预处理3模式识别4识别效果5总结1.课题研究背景近年来,人工神经网络技术取得了巨大的发展,它所具有的优势:固有的并行结构和并行处理、知识的分布存储、容错性、自适应性、模式识别能力,为手写体数字识别开辟了新的途径。数字识别作为模式识别的一个重要分支,在邮政、税务、交通、金融等行业的实践活动中有着及其广泛的应用。数字识别作为模式识别领域的一个重要问题,也有着重要的理论价值。一方面,阿拉伯数字是世界各国通用的符号,因此,数字是一个重要枢纽。在符号识别领域,数字识别为这一领域提

2、供了一个算法研究的平台。另一方面,数字的识别方法很容易推广到其它一些相关问题,特别是对英文字母的识别,但到目前为止机器的识别本领还无法与人的认知能力相比,这仍是一个有难度的开放问题。1.1.数字识别的发展现状模式识别(PatternRecognition)是对表征事物或现象的各种形式的(数值的、文字的和逻辑关系的)信息进行处理和分析,以对事物或现象进行描述、辨认、分类和解释的过程。它是信息科学和人工智能的重要组成部分。而数字识别作为模式识别的一个分支。在日常生活和科研中具有十分重要的作用。数字识别的算法一般是采用以知识、神经

3、网络、人工智能为基础的模板匹配法、轮廓多边形相关、傅立叶系数法等方法来进行识别的。以上方法识别效率高,但是实现较为复杂。2.图像预处理(1)彩色图像的灰度化,图像输入后一般都是256色彩色图像,灰度化后灰度图像的RGB值是相等的,灰度值为255的像素为白色,灰度值为0的像素为黑色。(2)灰度图像的二值化,彩色图像灰度化后每像素只有一个值,即灰度值,二值化就是根据一定标准将图像分成黑白二色。(3)梯度锐化,梯度锐化同时对噪声也起一定的去除作用,采取Roberts算子对图像锐化,可以让模糊的边缘变清楚,同时选用合适阈值可以减弱和

4、消除细小的噪声。(4)去离散噪声,扫描整个图像,当发现一个黑色像素就考察和它直接或间接相连的黑色像素有多少,如果大于一定值(具体数值视情况定),就可以认为它非离散点,否则就认为他是离散点,将其从图像中去掉。(5)归一化调整,先得到原来字符的高度,并与系统要求的高度比较,得出高度变换系数,然后根据这个系数得到变换后应有的宽度,得出高度、宽度后,把新图像里的点按照插值的方法映射到原图像。图像输入图像锐化归一化灰度转化二值化去除噪声图1图像处理流程3.模式识别3.1.特征提取经过预处理,把原来大小不同、分布不规律的各字符变成大小一

5、样、排列整齐的字符。下面要从预处理完的字符中提取最能体现这一个字符的特征向量,将提取出的训练样本中的特征向量代入BP网络中就可以对BP网络进行训练。提取出待识别的样本中特征向量代入训练好的BP网络中就可以进行识别。在这里采取逐像素特征提取法,方法是对图像进行逐行逐列扫描,当遇到黑色像素时,取其特征值为1,当遇到白色像素时,取其特征值为0。这样扫描结束后就形成一个维数与图像中像素点的个数相同的特征向量矩阵。3.2.BP神经网络采用BP算法的多层感知器是至今为止应用最广泛的神经网络,在多层感知器的应用中,一般习惯将单隐层感知器称

6、为三层感知器,所谓三层包括了输入层、隐层和输出层。3.2.1.BP算法的多层感知器图2三层BP网3.2.1.BP算法的多层感知器反向传播(Backpropagation)算法:从后向前(反向)逐层“传播”输出层的误差,以间接算出隐层误差。分两个阶段:正向过程:从输入层经隐层逐层正向计算各单元的输出。反向过程:由输出层误差逐层反向计算隐层各单元的误差,并用此误差修正当前层的权值。正向过程正向过程:BP算法梯度下降(gradientdecent)法准则函数:sumsquarederror,SSE权值修正:梯度下降法BP算法Cas

7、e1:输出层权值修正对于sigmoid函数:局部 梯度扩展delta学习规则BP算法Case2:隐层权值修正后层的全部单元都受nj的影响iwjinjajniδjwjiδiBP算法局部梯度的反向传播3.2.2.BP算法过程初始值选择前向计算,求出所有神经元的输出对输出层计算δ反向计算:从后向前计算各隐层δ计算并保存各权值修正量:修正权值:判断是否收敛,如果收敛则结束,不收敛则转至Step2BP算法3.2.2.BP算法过程图3BP学习算法的流程图3.3BP神经网络设计与训练(1)BP神经网络的设计方法按照BP神经网络设计方法选用

8、两层BP网络。采用newff函数来建立BP网络。其输入节点数为16×16=256,隐层传输函数为Sigmoid函数。假设用一个输出节点表示10个数字,则输出层传输函数为pureline,隐层节点数为,取25。(2)神经网络仿真程序设计构造训练样本集,并构成训练所需的输入向量p和目标向量t.

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。