




已阅读5页,还剩37页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
任务书一、原始依据(包括设计或论文的工作基础、研究条件、应用环境、工作目的等。)工作基础:了解MATLAB2012的基本使用以及.m文件的编写方法;研究条件:MATLAB2012以及概率神经网络的基本思想;应用环境:基于人工智能的手写体图片的信息识别;工作目的:熟练使用MATLAB2012神经网络工具箱;熟练掌握概率神经网络的基本思想以及基于MATLAB的应用;熟练掌握手写体数字图片的存储、特征提取方法以及基于神经网络的特征识别;二、参考文献1任丹,陈学峰.手写数字识别的原理及应用J.计算机时代.2007(03).2龚才春,刘荣兴.基于整体特征的快速手写体数字字符识别J.计算机工程与应用.2004(19).3李涛.BP神经网络在字符识别中的设计改进J.达县师范高等专科学校学报.2004(02).4陆锋,伊卫星,袁晓辉.神经网络模式识别对金融票据中数字特征的识别方法研究J.苏州大学学报(工科版).2003(04).5张丽,杨静宇,娄震.基于置信度的手写体数字识别多分类器动态组合J.计算机工程.2003(16).三、设计(研究)内容和要求(包括设计或研究内容、主要指标与技术参数,并根据课题性质对学生提出具体要求。)1、熟练掌握概率神经网络的基本思想以及基于MATLAB的应用;2、熟练掌握手写体数字图片的存储、特征提取方法以及基于神经网络的特征识别;3、对识别效果能够做出定量分析;指导教师(签字)年月日审题小组组长(签字)年月日摘要数字识别是模式识别领域中重要研究方向之一,具有广阔的应用前景。人们在对概率神经网络基本原理研究的基础上,提出了利用概率神经网络方法来实现手写数字识别的方案。通过MATLAB仿真实验表明,基于概率神经网络的数字识别系统取得了良好效果。人工神经网络识别方法是近年该研究领域的一种新方法,该方法具有一些传统技术所没有的优点:良好的容错能力、分类能力强、并行处理和自学习能力,并且是离线训练和在线识别的。这些优点使它在手写体字符的识别中能对大量数据进行快速实时处理,并达到良好的识别效果。由于手写体数字识别难于建立精确的数学模型,所以本文采用概率神经网络对这一问题进行处理。神经网络模式识别的一个关键步骤是预处理和特征提取,对于手写体数字识别,本文采用了一种基于结构特征和统计特征的提取方法,并用程序实现了这一特征提取过程。通过测试,本识别系统对于较规范的手写体数字的识别达到了很好的识别效果。关键词:概率神经网络;特征提取;噪声处理;PNN算法;ABSTRACTDigitalrecognitionisoneoftheimportantresearchdirectionsinthefieldofpatternrecognition,andhasbroadapplicationprospects.Onthebasisofstudyingthebasicprincipleofprobabilisticneuralnetwork,themethodofprobabilisticneuralnetworkisproposedtorealizetherecognitionofhandwrittennumerals.MATLABsimulationexperimentsshowthatthedigitalrecognitionsystembasedonprobabilisticneuralnetworkhasachievedgoodresults.Artificialneuralnetworkrecognitionmethodisanewmethodoftheresearchfieldinrecentyears,themethodhassomeofthetraditionaltechnicaladvantages:goodfault-tolerantability,strongclassificationability,parallelprocessingandself-learningability,andistrainedoff-lineandon-lineidentification.Theseadvantagesmakeitintherecognitionofhandwrittencharacterscanbealotofdataforfastreal-timeprocessing,andtoachieveagoodrecognitionresults.Becausethehandwrittennumeralrecognitionisdifficulttoestablishaccuratemathematicalmodel,thispaperusesBPneuralnetworktodealwiththisproblem.Thekeystepsofneuralnetworkpatternrecognitionisthepreprocessingandfeatureextraction,forhandwrittennumeralrecognition,theonebasedonstructurefeatureandstatisticalfeatureextractionmethodandprogramrealizedthefeatureextractionprocess.Throughthetest,therecognitionsystemachievesaverygoodrecognitioneffectfortherecognitionofthehandwrittennumeralrecognition.Keywords:Probabilisticneuralnetwork;featureextraction;Noiseprocessing;PNNalgorithm0目录第一章绪论.11.1系统概述.11.2本论文所做的工作.41.3本章小结.4第二章神经网络的基本知识.52.1神经网络概述.52.2概率神经网络.5第三章手写体数字识别.133.1手写体数字识别的常规预处理方法.133.2图像预处理.143.3特征提取.17第四章神经网络在数字识别中的应用.224.1神经网络建模.224.2手写体数字识别的实现.254.3Matlab程序设计.27第五章总结与展望.315.1总结.315.2展望.31参考文献.32外文资料中文译文致谢0第一章绪论1.1研究背景及实际意义1.1.1人工神经网络产生的背景自古以来,关于人类智能本源的奥秘,一直吸引着无数哲学家和自然科学家的研究热情。生物学家,神经学家经过长期不断的努力,通过对人脑的观察和认识,认为人脑的只能活动离不开脑的物质基础。包括它的实体结构和其中所发生的各种化学,生物,电学反应,并由此建造了神经元网络理论和神经系统结构理论。而神经元理论又是此后神经传导理论和大脑功能学说的基础。在这些理论基础上,科学家们认为,可以从仿制人脑系统的结构和功能出发,研究人类智能活动和认识现象。另一方面,19世纪以前,无论是以欧氏几何和积分为代表的经典数学,还是以牛顿为代表的经典物理学,从总体上说,这些经典科学都属于线性科学。然而,客观世界是如此纷繁复杂,非线性情况随处可见,人脑神经系统更是如此。复杂性和非线性是联系在一起的,因此,对非线性科学的研究也是我们认识复杂系统的关键。为了更好地认识客观世界,我们必须对非线性科学进行研究。人工神经网络作为一种非线性的,与大脑相似的网络模型,就这样应运而生了。所以,人工神经网络的创立不是偶然的,而是20世纪初科学技术充分发展的产物。1.1.2手写体数字识别研究的发展及研究现状模式识别是六十年代初迅速发展起来的一门学科。由于它研究的是如何用机器来实现人(及某些动物)对事物的学习、识别和判断能力,因而受到了很多科技领域研究人员的注意,成为人工智能研究的一个重要方面。一个模式识别系统的基本职能是对系统所要处理的模式归属于哪一类做出判别,从该系统的模式输入到系统做出判别之间,主要包括信息检测、预处理、特征提取和分类几大环节。字符识别是模式识别领域中的一个非常活跃的分支。一方面是由于问题本身的难度使之成为一个极具挑战性的课题;另一方面,是因为字符识别不是一项孤立的应用技术,其中包含的模式识别领域中其他分支都会遇到的一些基本和共性的问题。从50年代开始,许多的研究者就在这一研究领域开展了广泛的探索并为模式识别的发展产生了积极的影响。字符识别,从采用的输入设备来分,可分为脱机识别(又称为光学字符识别OpticalCharacterRecognition,OCR)和联机识别,脱机字符又分为印刷体和手写字符识别,从对书写者要求来分,手写字符又分为限制性和非限制性的手1写字符识别。在联机手写字符识别中,计算机能够通过与计算机相连的手写输入设备获得输入字符笔划的顺序、笔划的方向以及字符的形状,所以相对OCR来说它更容易识别一些。但联机字符识别有一个重要的不足就是要求输入者必须在指定的设备上书写,然而人们在生活中大部分的书写情况是不满足这一要求的,比如人们填写各种表格资料,开具支票等。如果需要计算机去认识这些已经成为文字的东西,就需要OCR技术。比起联机字符识别来,OCR不要求书写者在特定输入设备上书写,它可以与平常一样书写,所以OCR的应用更为广泛。OCR所使用的输入设备可以是任何一种图像采集设备,如扫描仪、数字相机等。通过使用这类采集设备,OCR系统将书写者已经写好的文字作为图像输入到计算机中,然后由计算机去识别。由于OCR的输入只是简单的一副图像,它就不能像联机输入那样比较容易的从物理上获得字符笔划的顺序信息,因此OCR是一个更具挑战性的问题。脱机字符识别(OCR)分为印刷体OCR和手写OCR。印刷体字符比手写体字符少了随机性,它的识别相对容易些,难点已经不在识别环节,而在于字符的分割上。印刷体识别的错误绝大多数都是错误的分割引起的。对于手写体OCR,无论是联机还是脱机识别,手写体的识别都要经历由限制性手写体识别到非限制性手写体识别两个阶段。本文将以手写体数字为代表,讨论非限制性手写体字符的识别。脱机字符识别的研究最早始于上个世纪六十年代,是为了应付汉英翻译的需要。八十年代后的研究重心转移到脱机手写字符的识别上。对于小类别数的字符集如数字、字母的识别,已经可以做到对书写不加任何的限制。非限制性手写OCR的研究始终以阿拉伯数字为主导。这事因为,第一,十个阿拉伯数字是全世界的一套通用字符。第二,在数字的许多应用场合,如报表、账单、支票等,手写体还难以被印刷体所替代,而且对识别的可靠性要求极高。三,由于类别数少,所以模式识别中的许多方法研究均可以以数字识别作为实验背景。对脱机手写体字符的研究,人们由简单集成笔画密度、笔画方向和背景特征方法过渡到特征匹配方法,进而过渡到结合神经网络方法,随着对识别可靠性要求的提高,九十年代以后,多分类器集成方法成为了一个研究重点。1.1.3神经网络在手写体数字识别中的应用目前,随着计算机的迅速发展,性能价格比的不断提高,模式识别技术已经从理论探讨为主发展到大量的实际应用,人们将更多的注意力开始转向那些用于语音、图像、机器人以及人工智能等的模式识别实际问题。解决这些问题的关键是需要进行复杂而庞大的实时数据处理,而现有计算机的存贮容量及计2算复杂性的局限,使得真正实时化的应用受阻。这种面向实时应用的模式识别问题促使人们开始将并行处理的神经网络应用到模式识别,而神经网络模式识别技术又将模式识别实时应用推进了一大步,手写体数字识别就是这种应用的一个很重要的领域。手写体数字识别是一项极具研究价值的课题,随着神经网络和模糊逻辑技术的发展,人们对这一问题的研究又采用了许多新的方法和手段,也使得这一古老的课题焕发出新的生命力。目前国际上有相当多的学者在研究这一课题,它包括了模式识别领域中所有典型的问题:数据的采集、处理及选择、输入样本表达的选择、模式识别分类器的选择以及用样本集对识别器的有指导的训练。人工神经网络为手写体数字识别提供了新的手段。正是神经网络所具有的这种自组织自学习能力、推广能力、非线性和运算高度并行的能力使得模式识别成为目前神经网络最为成功的应用领域。二十多年来,人们在数字识别领域做了大量的研究工作,所提出的各种方法在印刷体和手写印刷体数字识别方面已经取得了较好的成绩,识别率稳定在96%左右。但是自由手写体数字的识别工作目前并不成熟,仍旧是文字识别中最有挑战性的课题之一。字符识别长期以来都是采用传统的识别方法,对印刷体字符的识别率一般只是稳定在96左右,不能进一步提高;而对手写体字符的识别,其研究还处于探索阶段,其识别率还相当低,因此,为了提高识别率,就必须寻求新的方法和途径。进入九十年代以来,人工神经网络(ANN)技术发展十分迅速,它具有模拟人类部分形象思维的能力,是一种模仿人脑学习、记忆、推理等认知功能的新方法。特别是它的信息并行分布式处理能力和自学习功能等显著优点,更是激起了人们对它的极大的兴趣。人工神经网络是由一些类似人脑神经元的简单处理单元相互连接而成的复杂网络。已涌现出许多不同类型的ANN及相应的学习算法,其中BP(或EBP-ErrorBackPropagation)网络及学习算法得到了广泛关注和研究,并在数字识别方面取得了许多有意义的应用成果。1.1.4手写体数字识别的意义手写数字识别作为模式识别的一个重要分支,在邮政、税务、交通、金融等行业的实践活动中有着及其广泛的应用。这几年来我国开始大力推广的“三金”工程在很大程度上要依赖数据信息的输入,如果能通过手写数字识别技术实现信息的自动录入,无疑会促进这一事业的发展。因此,手写数字的识别研究有着重大的现实意义,一旦研究成功并投入应用,将产生巨大的社会和经济效益。3手写数字识别作为模式识别领域的一个重要问题,也有着重要的理论价值。一方面,阿拉伯数字是世界各国通用的符号,因此,手写体数字是一个重要枢纽。在符号识别领域,数字识别为这一领域提供了一个算法研究的平台。另一方面,手写数字的识别方法很容易推广到其它一些相关问题,特别是对英文字母的识别,但到目前为止机器的识别本领还无法与人的认知能力相比,这仍是一个有难度的开放问题。1.2本论文所做的工作在基于概率神经网络的前提下,运用Matlab对经典的神经网络进行仿真,发现在数字识别的问题上存在一些问题和不足。传统结构的神经网络,只用正样本空间学习训练,其识别的准确率低,而且在仿真时多半数字的识别准确率低于所能接受的最小值,更有甚者某些数字的识别率是0%,因此基于传统神经网络的这种缺陷展开调查和研究得出识别率更高的神经网络算法。在采集特征向量时,既采取正样本空间的特征向量,同时采取负样本库样本的特征向量。对神经网络训练学习时用两种特征训练,最后在仿真识别后得出的正确率与传统结构的神经网络相比较发现,改进的神经网络结构算法正确率明显高于传统结构的正确率。本毕业设计主要解决以图像形式存在的手写体数字识别的问题。整体分为三个部分,第一部分是图像预处理,第二部分是对手写体数字的结构特征的提取,第三部分是设计神经网络并对前面得到的样本数据进行学习和训练。1.3本章小结本章主要介绍人工神经网络的发展历程及发展状况,以此引出本论文将要涉及到的概率神经网络的研究。在讨论概率神经网络的过程中引导出神经网络字符识别的应用,延续字符识别发展进程及现状。在试验中得出传统结构的神经网络对字符识别的正确率较低,而概率神经网络对字符的识别准确率较高。4第二章神经网络的基本知识2.1神经网络概述人工神经网络(ArtificialNeuralNetworks,简写为ANNs)也简称为神经网络(NNs)或称作连接模型(ConnectionModel),它是一种模范动物神经网络行为特征,进行分布式并行信息处理的算法数学模型。这种网络依靠系统的复杂程度,通过调整内部大量节点之间相互连接的关系,从而达到处理信息的目的。神经元网络是机器学习学科中的一个重要部分,用来classification或者regression。思维学普遍认为,人类大脑的思维分为抽象(逻辑)思维、形象(直观)思维和灵感(顿悟)思维三种基本方式。逻辑性的思维是指根据逻辑规则进行推理的过程;它先将信息化成概念,并用符号表示,然后,根据符号运算按串行模式进行逻辑推理;这一过程可以写成串行的指令,让计算机执行。然而,直观性的思维是将分布式存储的信息综合起来,结果是忽然间产生想法或解决问题的办法。这种思维方式的根本之点在于以下两点:1.信息是通过神经元上的兴奋模式分布存储在网络上;2.信息处理是通过神经元之间同时相互作用的动态过程来完成的。人工神经网络就是模拟人思维的第二种方式。这是一个非线性动力学系统,其特色在于信息的分布式存储和并行协同处理。虽然单个神经元的结构极其简单,功能有限,但大量神经元构成的网络系统所能实现的行为却是极其丰富多彩的。2.2概率神经网络2.2.1概率神经网络概述概率神经网络是以指数函数替代神经网络中常用的S形激活函数,进而构造出能够计算非线性判别边界的概率神经网络(PNN),该判定边界接近于贝叶斯最佳判定面。还讨论了拥有类似性质的其他激活函数。所提出的这种4层神经网络能够把任何输入模式映射到多个类别。如果能取得新数据的话,可以使用新数据实时地修改判定边界,并可以使用完全并行运行的人工“神经元”付诸实现。还为估计类别的出现概率和可靠性,以及做判别作好准备。对于反5向传播增加的适应时间占总计算时间的重大部分的问题,这种方法显示出非常快速的优点。PNN范式比反向传播快200,000倍。(一)正向传播:设神经网络的输入层有n个节点,隐层有q个节点,输出层有m个节点,输入层与隐层之间的权值为,隐层与输出层之间的权值为kiv。jkw隐层的传递函数为(x),输出层的传递函数为(x),则隐层节点的输出1f2f(将阈值写入求和项中):k=1,2,,q式(2-niikkvfz0_11)输出层节点的输出为:j=1.2.,m式(2-2)qkkjizwfy0_2)(至此神经网络就完成了n维空间向量对m维空间的近似映射。(二)反向传播:(1)定义误差函数:输入P个学习样本,用来表示,第Ppx,21个样本输入到网络后得到输出(j=1,2,m)。采用平方型误差函数,于是pjy得到第p个样本的误差:E式(2-3)mjpjpjpEt1_1_)(2式中,为期望输出。pjt对于P个样本,全局误差为:式(2-mjpjpjpEytE1_1_)(24)(2)输出层权值的变化:采用累计误差BP算法调整,使全局误差E变小,即:jkw式(2-pjkppjkJKjkwE1_1_)()(5)式中,为学习率。6定义误差信号为:式(2-jjpjpyjSyES6)其中第一项:式(2-mjpjjmjpjjjjpytytyE1_1_2)()(27)第二项:式(2-)(2jjSfY8)输出层各神经元的权值调整公式为:式(2-mjkjpjjpjkzSfytw1_2)()(9)(3)隐层权值的变化:式(2-pkippkikikivEvEv1_1_)()(10)定义误差信号为:式(2-kxpkpzkSzES11)其中,第一项:式(2-kjmjpjjmjpjjkpzytytzE1_1_2)()(212)依链定理有:7式(2-jkkjjkjwSfzSyz)(213)第二项:式(2-)(1kkSfz14)从而得到隐层各神经元的权值调整公式为:式(2-ikmjjpjjpkixSfwsfytv)()(1_1215)神经网络常用来依据向实例学习进行模式分类。不同的神经网格范式(paradigm)使用不同的学习规则,但都以某种方式,根据一组训练样本确定模式的统计量,然后根据这些统计量进行新模式分类。通用方法如反向传播,使用探试法获得基础的类别统计量。探试法通常包含对系统参数的许多小的改进,逐渐提高系统的性能。除了训练需要长的计算时间外,还表明,反向传播增加的适应近似法对错误的最小值很敏感。为了改进这种方法,找到了基于己确立的统计原理的分类方法。可以表明,尽管最终得到的网络在结构上类似于反向传播,且其主要区别在于以统计方法推导的激活函数替代S形激活函数,但这个网络具有的特点是:在某些易满足的条件下,以PNN实现的判别边界渐进地逼近贝叶斯最佳判定面。为了了解PNN范式的基础,通常从贝叶斯判定策略以及概率密度函数的非参数估计的讨论开始。之后可以表明,这种统计方法如何映射到前馈神经网络结构,网络结构是以许多简单处理器(神经元)代表的,所有处理器都是并行运行。人工神经网络首先要以一定的学习准则进行学习,然后才能工作。现以人工神经网络对手写“A”、“B”两个字母的识别为例进行说明,规定当“A”输入网络时,应该输出“1”,而当输入为“B”时,输出为“0”。所以网络学习的准则应该是:如果网络做出错误的判决,则通过网络的学习,应使得网络减少下次犯同样错误的可能性。首先,给网络的各连接权值赋予(0,1)区间内的随机值,将“A”所对应的图像模式输入给网络,网络将输入模式加权求和、与门限比较、再进行非线性运算,得到网络的输出。在此情况下,网络输出为“1”和“0”的概率各为50%,也就是说是完全随机的。这8时如果输出为“1”(结果正确),则使连接权值增大,以便使网络再次遇到“A”模式输入时,仍然能做出正确的判断。如果输出为“0”(即为结果错误),则把网络连接权值朝着减小综合输入加权值的方向调整,其目的在于使网络下次再遇到“A”模式输入时,减小犯同样错误的可能性。如此操作调整,当给网络轮番输入若干个手写字母“A”、“B”后,经过网络按以上学习方法进行若干次学习后,网络判断的正确率将大大提高。这说明网络对这两个模式的学习已经获得了成功,它已将这两个模式分布地记忆在网络的各个连接权值上。当网络再次遇到其中任何一个模式时,能够做出迅速、准确的判断和识别。一般说来,网络中所含的神经元个数越多,则它能记忆、识别的模式也就越多。神经网络学习过程图如图2-1所示。9开始连接权及阈值初始化连接权及阈值初始化学习模式提供给网络学习模式提供给网络计算中间层各单元的输入、输出计算中间层各单元的输入、输出计算输出层各单元的输入、输出计算输出层各单元的输入、输出计算中间层各单元的矫正误差计算中间层各单元的矫正误差计算输出层各单元的矫正误差计算输出层各单元的矫正误差调整中间层及输出层之间的连接权及输出层各单元的输出阈值调整中间层及输出层之间的连接权及输出层各单元的输出阈值调整中间层及输出层之间的连接权及输出层各单元的输出阈值调整中间层及输出层之间的连接权及输出层各单元的输出阈值更新学习输入模式更新学习输入模式全部模式训练完全部模式训练完更新学习次数更新学习次数误差N误差N学习结束学习结束YYNNNNYY图2-1神经网络学习过程图2.2.2神经网络在模式识别问题上的优势神经网络是对人脑若干特性的抽象和模拟,是一种基于连接学说构造的智能仿生模型。以人类神经网络为模拟基础的人工神经网络在模拟推理和自动学10习等方面向前发展了一大步,使人工智能更接近人脑的自组织和并行处理功能,它在模式识别、聚类分析和专家系统等多方面显示出了巨大的优势。神经网络可以看成是从输入空间到输出空间的一个非线性映射,它通过调整权重和阈值来学习或发现变量间的关系,实现对事物的分类。人工神经网络具有的特点使其在模式识别上具有优势。神经网络具有分布式存储信息的特点。它存储信息的方式与传统的计算机的思维方式是不同的,一个信息不是存在一个地方,而是分布在不同的位置。网络的某一部分也不只存储一个信息,它的信息是分布式存储的。神经网络是用大量神经元之间的连接及对各连接权值的分布来表示特定的信息。因此,这种分布式存储方式即使当局部网络受损时,仍具有能够恢复原来信息的优点。神经网络对信息的处理及推理的过程具有并行的特点。每个神经元都可以根据接收到的信息作独立的运算和处理,然后将结果传输出去,这体现了一种并行处理。神经网络对于一个特定的输入模式,通过前向计算产生一个输出模式,各个输出节点代表的逻辑概念被同时计算出来。在输出模式中,通过输出节点的比较和本身信号的强弱而得到特定的解,同时排出其余的解,这体现了神经网络并行推理的特点。神经网络对信息的处理具有自组织、自学习的能力。神经网络中各神经元之间的连接强度用权值大小来表示,这种权值可以事先定出,也可以为适应周围环境而不断地变化,这种过程称为神经元的学习过程。神经网络所具有的自学习过程模拟了人的形象思维方法,这是与传统符号逻辑完全不同的一种非逻辑的方法。在神经网络研究的历史进程中,它在模式识别方面的应用一直是最活跃和最成功的领域。神经网络与它在模式识别中的应用是息息相关,密不可分的。2.2.3概率神经网络的特点Specht根据Bayes分类规则与Parzen窗的概率密度函数,提出PNN的层次模型,包括:输入层、模式层、求和层、竞争层。概率神经网络的结构以及各层的输入输出关系量如下图所示,共由四层组成,当进行并行处理时,能有效地进行上式的计算。输入层:神经元个数是特征向量维数。样本层:神经元个数是训练样本的个数。求和层:神经元个数是类别个数。竞争层:神经元个数是类别个数。输入层的传递函数是线性的,仅仅将输入样本完全不变的传递给模式层的各11节点。模式层与输入层之间通过连接权wij相连,进行加权求和,即=x*,通jzjw过一个非线性算子运算后,传递给求和层。这里的非线性算子采用g()=exp(j-1)/,模式层神经元数与输入样本矢量个数相同。求和层只是简单地将有jz2对应样本中同一类的模式层传来的输入(属于某类的概率)进行累加,即(x)=Afg()及得到输入样本属于该类的最大可能性。第四层是决策层,它接收从求j和层输出的各类概率密函数,概率密度最大的那个神经元输出为1,即所对应的那一类即为待识别的样本模式类别,其他神经元的输出全为0。概率神经网络其训练过程简单,收敛速度快,PNN需要调节的参数少,隐含层数和隐含层神经元个数都不需要确定,比较容易使用,同时PNN总是收敛于Bayes优化解,稳定性高,并且样本的追加能力强,且可以容忍个别错误的样本。2.2.4概率神经网络的Matlab神经网络工具箱函数在设计概率神经网络时,首先要构建一个简单的网络结构,初始化网络,计算误差,确定传递函数,训练学习规则和网络,归一化训练参数以及训练样本。在Matlab7.0.1的PNN神经网络工具箱中包含了进行PNN分析和设计的许多函数,具体如下:(1)newpnn(P,T,SPREAD)该函数可以快速创建一个概率神经网络。该函数使得输入层的神经元数目和样本矢量的维数相等。其中,P为Q组输入向量组成的R*Q维矩阵,表示输入向量;T为Q组分类向量组成的S*Q维矩阵,表示期望输出向量(目标值),SPREAD是径向基函数的扩展系数,默认为1.0,如果SPREAD值接近于0,则创建的概率神经网络可以作为最邻域分类器,随着SPREAD的增大,需要更多地考虑该网络附近的设计问题,所以在网络设计中,需要用不同的SPREAD值进行尝试,以确定一个最优值。(2)radbas()高斯径向基传递函数。该函数可由它的网络输入得到神经元的输出。在PNN中,就是使用高斯型激活函数,得到模式层的输出,传入求和层。(3)dist(W,P)欧式距离加权函数。该函数对输入进行加权得到加权后的输入,在PNN的模式层中,计算输入特征向量与训练集中各个模式的匹配关系,一起送入传递函数,及此处的高斯型激活函数,得到模式层的输出。其中W为S*R维的权值矩阵,P为Q组输入(列)向量的R*Q维矩阵。(4)train(net,P,T)神经网络的训练函数。其中的参数P、T表示的意义同(1)。(5)sim(net,P)神经网络仿真函数。其中参数同(1)。如果对神经网络的输入和输出的数据进行一定的预处理,可以加速训练,提高工作效率。Matlab神经网络工具箱提供了多种数据预处理的方法,但在PNN12网络训练中主要用到归一化处理,对于输入矩阵P和输出矩阵T进行归一化处理的语句为Pn,minp,maxp,Tn,mint,maxt=premnmx(P,T),训练时使用归一化后的数据,即:net=train(net,Pn,Tn),训练结束后还应对网络的输出an=sim(net,Pn)做如下处理:a=postmnmx(an,mint,maxt),在用训练好的网络对新数据进行预测时,也做相应处理。2.2.5PNN的设计及实例应用概率神经网络主要用于分类和模式识别领域,其中分类方面应用最为广泛,它的优势在于用线性学习算法来完成非线性学习算法所做的工作,同时保证非线性算法的高精度等特性。在模式分类中,Bayes分类规则是具有最小“期望风险”的优化决策规则,可以处理大量样本的分类问题,一般情况下,应用于Bayes分类规则中的概率密度函数是未知的,但是大量的模式样本是已知的,用它们来训练网络。13第三章手写体数字识别3.1手写体数字识别的常规预处理方法神经网络为手写体数字识别提供了一个强有力的手段。目前,在神经网络模式识别中根据对输人样本的表达方式的选择有下面两大类:一类是直接将数字图像经数值化处理之后得到的像素点原始样本作为神经网络的输入;另一类则是对这种原始像素点构成的原始输人样本再作进一步的预处理或变换。虽然,在某些情况下,人们采用第一类样本表达获得了较好的识别结果,但这种输人方式,通常使得网络分类器结构的复杂程度大大增加,所以,对原始样本进行预处理,己成为神经网络模式识别成功的一个很重要的方面。对于手写体数字的预处理,人们己作了许多工作,但归根结底有下面几步:首先是将手写体数字转化为mn像素点矩阵形式,再经二值化处理,可以得到原始的输入表达方式。接下来,对一原始样本表达进行一些常规变换,包括平滑、规格化和细化。最后则是对样本进行各种的变换得到不同的特征以构成输入样本。相当于传统模式识别中特征提取与选择,论文中称这一过程为特征变换。特征变换的方法有许多,主要是获得数字主体特征,如数字宽度、长度及各笔划的长短、粗细和边缘轮廓特征。常规处理之后再进行特征变换的预处理方法,目前广泛用于手写体数字识别中。数字的类别虽然只有十种,笔划又简单,其识别问题表面上是一个较简单的分类问题。但实际上,虽然各种新的识别算法不断的推出。其识别率和误识率仍距实用有相当距离。手写体数字变形多、规律复杂。具体地说有两个:一是09十个数字中,其中的一些数字字形相差不大,使得准确区分某些数字相当困难;二是数字虽然只有十种,但同一数字写法千差万别。14图3-1各种手写体3.2图像预处理3.2.1图像预处理概述预处理是字符识别重要的一环,它把原始的图像转换成识别器所能接受的二进制形式。要识别手写体数字首先要对其字符图像进行预处理。预处理的主要目的是去除字符图像中的噪声、压缩冗余信息,得到规范化的点阵,为识别做好准备。这就要求预处理在消除图像中与识别无关的因素时尽量保持原图像的字符特征。手写体数字图像预处理的过程,就一般情况而言,主要经过如图3-2所示的几个步骤。不同的识别方法对预处理的项目和要求有所不同。如结构识别方法,对字符规范化可以从简,甚至不需要。有的识别方法对细化要求很高,有的则不需要细化。本章中将分别对平滑去噪、二值化、归一化和细化分小节讨论。其中用到的Matlab神经网络工具箱函数:getfeature,m:得到图形,提取64*64二值图像的特征向量;Feature:长度为14的特征向量;bmp:图像中的数字部分;flag:标志位,表示数字部分的宽高比。图3-2图像预处理基本流程15图像预处理流程图如图3-3所示。开始开始图像输入图像输入灰度转换灰度转换二值化二值化梯度锐化梯度锐化去离散噪声去离散噪声倾斜度调整倾斜度调整图像分割图像分割归一化调整归一化调整紧缩重拍紧缩重拍特征提取特征提取结束结束图3-3图像预处理流程图3.1.2图像的平滑去噪平滑去噪就是除去孤立的噪声点、填充前景区域中的孤立白点、删除字符边缘线上的小凸起并填充凹陷,以利于后续算法的进行。图像平滑去噪是数字图像处理中的重要环节和步骤。噪声会给以后的工作16带来很多不便。因此,在处理图像的时候就要尽量去除图像中夹带的噪声。去噪效果的好坏直接影响到后续的图像处理工作,如字符切分、特征提取等。目前比较经典的图像去噪算法主要有以下三种:1均值滤波算法均值滤波算法也称线性滤波,主要思想为邻域平均法,即用几个像素灰度的平均值来代替每个像素的灰度。有效抑制加性噪声,但容易引起图像模糊,可以对其进行改进,主要避开对景物边缘的平滑处理。2中值滤波中值滤波是基于排序统计理论的一种能有效抑制噪声的非线性平滑滤波信号处理技术。中值滤波的特点即是首先确定一个以某个像素为中心点的邻域,一般为方形邻域,也可以为圆形、十字形等等,然后将邻域中各像素的灰度值排序,取其中间值作为中心像素灰度的新值,这里领域被称为窗口,当窗口移动时,利用中值滤波可以对图像进行平滑处理。其算法简单,时间复杂度低,但其对点、线和尖顶多的图像不宜采用中值滤波。很容易自适应化。本实验中采取的是中值滤波,其中用到的Matlab神经网络工具箱函数:中值滤波tmpt=medfilt2(tmpn(:,:,i),3,3);3维纳滤波维纳滤波是使原始图像和其恢复图像之间的均方误差最小的复原方法,是一种自适应滤波器,根据局部方差来调整滤波器效果。对于去除高斯噪声效果明显。手写体数字由于其随机性大,断笔,连笔、飞白状况时常发生,为了减少灰度图像的一些不该出现的黑白噪声,可以采用图像的平滑去噪技术。进行图像平滑处理的是一种空域滤波器,空域滤波器一般可分为线性滤波和非线性滤波两类。线性滤波器的设计常基于对傅立叶变换的分析,如均值滤波器;非线性滤波器则一般直接对邻域进行操作,如中值滤波器。由于需要识别的图像大多是通过扫描而来,所以在很多的情况下字体模糊,对识别造成了一定的困难,所以我们需要对图像进行锐化处理使模糊的图像变得清晰起来。本系统采用的是中值滤波的方法,用MATLAB的函数medfilt2()对图像进行平滑去噪。3.1.3图像的二值化处理图像的二值化就是把图像中的像素根据一定的标准划分成两种颜色。在这个系统中就是根据像素的灰度值处理成黑白两种颜色。对数字字符图像二值化后要能真实的再现原数字,其基本要求为:笔画中不出现空白点,二值化的笔画17基本保持原来文字的结构特征。图像二值化的关键在于阈值的选择。图像的二值化有很多成熟的算法,有整体阈值二值化法、局部阈值二值化法、动态阈值二值化法等。二值化法的基本公式是:式(3-Tjifjig),(10),(1)g(i,j)为二值后(i,j)点的值,f(i,j)为灰度图像在(i,j)点的灰度值,T为阈值。阈值的选择是图像二值化的关键。根据T的选择方式不同可以分为:整体阈值二值化法、局部阈值二值化法、动态阈值二值化法等。当T为常数时我们称为整体阈值法,整体阈值法要对于不同的样本图像要根据实际情况来设定阈值。因为所采集的样本大部分底色都是白色,所以要将阈值定的大一些。整体阈值法有很多缺点,不能根据每个字符来选择最佳阈值,整体阈值一旦给定就不能更改了。但是这种方法是最简单的,而且速度也是最快的。当数字图像清晰,轮廓明显,干扰很小时,这是一种非常有效的二值化方法。还有一种由灰度值直方图确定整体阈值的方法。这种方法根据图像和背景的灰度值自动确定整体阈值。局部阈值法是用与坐标相关的一组阈值来对图像各部分分别进行分割,适用于光照条件不均匀的情况。采用整体阈值法对图像进行二值化,效果不太理想时,局部阈值选择法有可能得到较为满意的二值化结果。但其实现速度较慢,且不能保证字符笔划的连通。动态阈值法的阈值选择不仅取决于像素点的位置和灰度值,而且还与该像素点的坐标位置有关。由于充分考虑了每个像素点邻域的特征,因此能够很好地突出背景和目标的边界,这种方法可以处理低质量甚至单峰直方图图像。对数字图像而言,其笔画和背景的区分是比较明显的,而且,动态阈值法计算时间长,因此,在数字识别中很少采用。3.3特征提取特征提取是整个字符识别系统的关键,识别算法是根据选取特征的种类来进行选择的。所选取的特征是否稳定,是否代表一类字符的特点,是系统识别率高低的关键。对于手写体数字,根据抽取特征的方法一般将其分为三类:逐像素特征提取法、结构特征提取法和统计特征提取法。逐像素特征提取法最为简单,就是对预处理后的图像进行逐行逐列的扫描。18当遇到黑色像素时取其特征值为1,遇到白色像素时取其特征值为0,这样当扫描结束以后就形成了一个维数与图像中像素点的个数相同的特征向量矩阵。这种特征提取方法的特点是算法简单,运算速度快,可以使神经网络很快的收敛,训练效果好,缺点是适应性不强。但可以通过加大训练样本数目的方法来增强其适应性。采用结构特征提取对字符进行结构分析从而达到识别的目的,是一种非常直观的方法,其思想与人认字的原理有点相象,但又有所不同。其基本思想是字符可以逐级分解成部件、笔划乃至笔段,识别时可以自底向上,由像素得到笔段,由笔段结合成笔划,由笔划构成部件,由部件组成字符,逐级分析字符图象的结构,根据各元素的属性、数量及其相互关系,便可以判定待识字符。目前研究较成熟,效果比较好的是基于笔划和基于笔段分析的手写体字符识别。对不同的字符手写样本,尽管人书写风格千变万化,然而,笔划与笔划之间的位置关系、以笔划为基元的字符的整体拓扑结构是不变的,人认字就是抓住了这些本质不变的特征,因此能适应不同的书写风格的文字。所以,基于笔划来自动识别字符一直是手写体字符识别研究的一类主要研究方法。从统计模式识别的观点来看,字符识别实际上是一个模式分类问题,人对自然物体的识别,是建立在对该物体进行学习、特征分析的基础上的,计算机模式识别的过程与人的识别过程有着相似的地方。实际上就是一种通过学习或者其它方法,形成一个记忆知识库,进行模式识别时,清晰地表达出一种从物体到记忆知识库的映像,从而得到识别结果。特征提取细节在第四章继续介绍特征提取流程图如图3-4所示。19开始开始初始化初始化将图像分成八分,分别计算每份中像素的个数将图像分成八分,分别计算每份中像素的个数统计穿过水平线和垂直线的数字像素统计穿过水平线和垂直线的数字像素统计字符整体像素统计字符整体像素结束结束图3-4特征提取流程图实验中用到的Matlab神经网络工具箱函数:提取特征向量t=getFeature(tmpt);将处理后的数字图象采用逐像素特征提取的方法,对图像进行逐行逐列扫描,当遇到黑色像素时取特征值为1,遇到白色像素时取其特征值为0,即扫描结束后形成1个维数与图像中像素点的个数相同的特征向量矩阵。以数字“3”为例,得到的特征值如图3-5所示。图3-5由预处理图像的到特征值3.1.5归一化和细化我们在进行数字图像识别的时候,只关心图像中心的数字部分,而不关心其周边的空白部分,所以我们对图像进行归一化。在数字图像处理中有一些比较成熟的缩放图像的算法,例如MATLAB使用imresize函数来改变图像的大小,调用格式为A=imresize(A,rate);其中,A20表示改变大小后图像的数组,rate表示变化率,例如将原来的图像缩小为原来的一半,即rate=0.5。本文采用的方法是:将图像逐行扫描,找到出现黑色像素的最小行mapmin和最大行mapmax,同理找到统一的边界截取出新的图像。把各不相同的字符统一到同一高度,然后根据高度来调整字符的宽度。具体算法如下:先得到原来字符的高度,并与系统要求高度作比较,得到要变换的系数,然后根据得到的系数计算每一个原始像素点归一化后在新图像中的位置,最后计算新图像中每个像素点的值,方法是求出原始像素点及周围三个点的像素值的平均值,最后用函数floor.m取整,调用格式为B=floor(A),B取小于或者等于A的整数。因为手写的图像中数字大小存在较大的差异,而本系统进行识别的要求是图像64*64像素,这就要把原来各不相同的字符统一到64*64像素。将提取后的图像高度和宽度中的最大值与标准大小进行比较,得到要变换的比率。把原图像按照变换的比率产生归一化后的图像.实验中用到的归一化Matlab神经网络工具箱函数:归一化mapminmax。细化就是将二值化字符点阵逐层剥去轮廓上的点,变成笔画宽度只有一个像素宽度的字符骨架图形。之所以需要细化处理,是因为二值化点阵图形中,对识别有价值的文字特征信息主要集中在字符骨架上,细化后的字符骨架既保留了原字符的绝大部分的特征,又利于特征提取。细化后骨架的存储量比原来的二值化字符点阵要少得多,降低了处理工作量。在使用MATLAB函数imresize()进行细化时,要先将原图像进行反色处理,等细化完后在反色回归原色,这样的细化效果较好。手写体数字细化的基本要求如下:第一、保持原有字符笔画的连续性,不能由于细化造成笔画断裂。第二、要细化为单线,即笔画宽度为一个像素。第三、细化后的骨架应尽量是原来笔画的中心线。实现概率神经网络手写体算法的流程如图3-6所示。21学习阶段学习阶段样本字母样本字母预处理预处理特征提取特征提取训练模式训练模式神经网络的学校计算神经网络的学校计算识别阶段识别阶段手写体数字识别手写体数字识别图像预处理图像预处理特征提取特征提取分类分类程序设计程序设计结果分析结果分析图3-6实现概率神经网络第四章概率神经网络在数字识别中的应用4.1神经网络建模4.1.1特征提取算法神经网络数字识别流程如图4-1所示。22开始开始样本训练样本训练字符特征输入字符特征输入识别并
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 网红主播带货培训课件
- 2025年儿科疾病常见治疗方案考核试卷答案及解析
- 初步设计-和建筑方案设计(3篇)
- 月子水果养生知识培训课件
- 房屋建筑的方案设计(3篇)
- 土方工程项目劳务承包合同范本
- 2025年学历类自考专业(建筑工程)混凝土及砌体结构-结构力学(二)参考题库含答案解析(5套)
- 网咖前台安全知识培训课件
- 2025年学历类自考专业(建筑工程)建筑材料-计算机基础与程序设计参考题库含答案解析(5套)
- 超市建筑照片调色方案设计(3篇)
- 供应链金融业务管理办法
- 岩土工程勘察服务投标方案(技术方案)
- 单向板肋梁楼盖设计计算书
- 吉林大学 人工智能原理 下
- 医院护理培训课件:《急诊氧气治疗专家共识》
- 身份证地区对应码表
- 洗车场专项施工方案
- YY/T 1766.3-2023X射线计算机体层摄影设备图像质量评价方法第3部分:双能量成像与能谱应用性能评价
- 中药饮片采购配送服务投标方案
- 人教版七年级上册语文第一单元测试题(含答案)
- 艺术概论PPT完整全套教学课件
评论
0/150
提交评论