1、毕业设计(论文)任务书题目基于神经网络的数字识别系统的设计系名信息工程系专业自动化年级2009级学生姓名学号6009206039指导教师职称讲师2012年12月15日一、原始依据(包括设计或论文的工作基础、研究条件、应用环境、工作目的等。)工作基础了解C的基本概念和语法,熟练使用VISUALC软件。研究条件依据BP神经网络的基本原理完成算法实现。应用环境基于BP神经网络的图像文件中的数字识别。工作目的熟练掌握VISUALC应用程序的开发。了解人工智能的基本概念以及神经网络的基本原理。熟练掌握VISUALC中的图片处理的基本方法。二、参考文献1人工智能原理及其应用,王万森,电子工业出版社,200
2、72VC深入详解,孙鑫,电子工业出版社,20063人工神经网络原理,马锐,机械工业出版社,20104VISUALC数字图像处理典型案例详解,沈晶,机械工业出版社,20125APPLICATIONOFIMAGEPROCESSINGTOTHECHARACTERIZATIONOFNANOSTRUCTURES,MANUELFMCOSTA,REVIEWSONADVANCEDMATERIALSSCIENCE,2004三、设计(研究)内容和要求(包括设计或研究内容、主要指标与技术参数,并根据课题性质对学生提出具体要求。)1、掌握C的基本概念和语法。2、了解神经网络的基本原理。3、完成VISUALC中对于图像
3、的预处理。4、完成基于样本的神经网络的训练以及图像中文字的识别,并对其性能进行统计和总结。指导教师(签字)年月日审题小组组长(签字)年月日天津大学仁爱学院本科生毕业设计(论文)开题报告课题名称基于神经网络的数字识别系统的设计系名称信息工程系专业名称自动化学生姓名指导教师一、课题来源及意义多层感知器神经网络BPBACKPROPAGATION网络是1986年由RUMELHART和MCCLELLAND为首的科学家提出,是一种按误差逆传播算法训练的多层前馈网络,是目前应用最广泛的神经网络模型之一。BP网络能学习和存贮大量的输入输出模式映射关系,而无需事前揭示描述这种映射关系的数学方程。它的学习规则是使
4、用最速下降法,通过反向传播不断调整网络的权值和阈值,使网络的误差平方和最小。由于人工神经网络等新技术的引进,从上世纪70年代以来,光学字符识别技术逐渐走向成熟。进入九十年代以来,人工神经网络技术发展十分迅速,它具有模拟人类部分形象思维的能力,是一种模仿人脑学习、记忆、推理等认知功能的新方法。特别是它的信息并行分布式处理能力和自学习功能等显著优点,更是激起了人们对它的极大的兴趣。为模式识别开辟了新的途径,成了模拟人工智能的一种重要方法。近年来,字符识别技术在维持国民经济迅速发展的多个领域中占据着非常重要的地位。目前,小规模光学字符识别系统应用广泛,有着巨大地商业前景,如邮政编码识别、汽车招牌识别
5、、产品编码识别等。因此,对于研究基于神经网络的文字识别系统有重要的意义。二、研究目标1熟练掌握VISUALC应用程序的开发2了解人工智能的基本概念以及神经网络的基本原理。3熟练掌握VISUALC中的图片处理的基本方法。三、研究内容系统识别框架图基于BP网络的文字识别系统分为两个阶段,学习阶段与识别阶段。两个阶段都要对样本字母进行预处理、特征提取,学习阶段还要进行确定稳定的权值,识别阶段还要经过分类在输出识别结果。数字图像在采集过程中,受到像素质量、扫描性能的影响,数字图像会带有形变和噪声,这些变化都会影响识别效果。因此要进行预处理,目的是消除原始图像中的噪声,将原来的图像转化为清晰地二值化图像
6、,便于微观结构特征的提取。预处理过程包括去噪、二值化、归一化和细化。特征提取是使用计算机提取图像信息,来决定每个图像的点是否属于一个图像特征。在字符识别当中,特征的选择是一个关键的问题。字符的特征可以分为两大特征结构特征和统计特征。特征提取的原则是所选用的特征能够很好地反映字符本身的特点。训练模式是用样本字符进行识别,将识别效果与样本进行比对,判断是否存在误差。多次训练,直至误差满足在一定范围内即可。学习阶段完成进入识别阶段,识别阶段同样进行预处理与特征提取两个环节,与学习阶段不同的是它还要进行分类才能输出结果。四、研究方法与手段完成VISUALC中对于图像的预处理及基于样本的神经网络的训练以
7、及图像中文字的识别,并对其性能进行统计和总结。对于图像的预处理、基于样本的神经网络的训练以及图像中文字的识别通过VISUALC软件编程实现。样本字符特征提取预处理训练模式输出结果分类特征提取预处理待识别字符学习阶段识别阶段五、进度安排1、2012121020130305查找资料,通过书籍和视频学习C的基本概念和语法,初步练习使用VISUALC软件。了解BP神经网络的基本原理及人工智能的基本概念。完成开题报告。2、2013030620130329掌握VISUALC中的图片处理的基本方法。3、2013033020130420编写程序,完成VISUALC中对于图像的预处理。4、20130421201
8、30525完成基于样本的神经网络的训练以及图像中文字的识别,并对其性能进行统计和总结。5、2013052620130610撰写论文,准备答辩。六、主要参考文献1王万森人工智能原理及其应用M电子工业出版社,20072孙鑫VC深入详解M电子工业出版社,20063马锐人工神经网络原理M机械工业出版社,20104沈晶VISUALC数字图像处理典型案例详解M机械工业出版社,20125曾志军,孙国强基于改进的BP网络数字字符识别J上课理工大学学报,2008,32151536周鸣争人工神经网络在自动控制系统中的应用J安徽机电学院学报,2000,02571757张世辉,孔令富汉字识别及现状分析J燕山大学学报,
9、2003,04380858李连胜基于神经网络的手写数字识别技术研究D中南大学,20089赵蓉基于神经网络的联机手写识别系统研究与实现D西安电子科技大学,201110赵辉,叶子青VISUALC系统开发实例精粹M人民邮电出版社11黄襄念,程萍著文字识别原理与策略M第一版西南交通大学出版社,200212韩力群人工神经网络理论、设计及应用M第二版化学工业出版社,200713韩力群人工神经网络教程M北京邮电大学出版社,200614APPLICATIONOFIMAGEPROCESSINGTOTHECHARACTERIZATIONOFNANOSTRUCTURES,MANUELFMCOSTA,REVIEWSO
10、NADVANCEDMATERIALSSCIENCE15BARTLETTPLADABOOSTISCONSISTENTMDEPARTMENTOFSTATICSANDCOMPUTERSCIENCEOFCALIFORNIA选题是否合适是否课题能否实现能不能指导教师(签字)年月日选题是否合适是否课题能否实现能不能审题小组组长(签字)年月日毕业设计(论文)说明书题目基于神经网络的数字识别系统的设计系名信息工程系专业自动化年级2009级姓名指导教师2013年6月6日摘要目前,小规模光学字符识别系统应用广泛,有着巨大的应用前景,如邮政编码识别、汽车招牌识别、产品编码识别等。本课题综合分析了国内外文字识别技术的
11、发展现状,利用BP神经网络设计并实现一种高效可靠的字符识别系统。本设计主要完成了如何利用BP神经网络去识别图片上的字符。在识别之前要对图像进行一系列的预处理,主要包含灰度化、二值化、锐化、噪声去除、字符分割、字符归一化、字符骨架提取等。经过预处理的图片适合后续的训练及识别。预处理后对图片上的字符进行特征提取,特征提取的方法很多,这里选择效果较好的十三特征提取法来进行特征提取。最后采用BP神经网络来对待检测的图片上的数字进行识别。关键词字符识别BP网络人工神经网络预处理特征提取ABSTRACTCURRENTLY,SMALLSCALEOPTICALCHARACTERRECOGNITIONSYSTE
12、MISWIDELYUSED,ANDITHASGREATPROSPECTSINAPPLICATION,SUCHASZIPCODERECOGNITION,AUTOSIGNATUREIDENTIFICATION,PRODUCTCODERECOGNITION,ANDSOONTHISPAPPERANALYZESTHEDEVELOPMENTSTATUSOFRECOGNITIONTECHNOLOGYATHOMEANDABROADCOMPREHENSIVELY,BYUSINGBPNEURALNETWORKCANWEDESIGNANDIMPLEMENTANEFFICIENTANDRELIABLECHARACTE
13、RRECOGNITIONSYSTEMTHISDESIGNCANREALIZETHERECOGNITIONOFCHARACTERSONTHEPICTUREBYUSINGBPNEURALNETWORKBEFOREIDENTIFICATION,THEREAREASERIESOFIMAGEPRETREATMENTWHICHAREGRAYING,BINARIZATION,SHARPENING,NOISEREMOVAL,CHARACTERSEGMENTATION,CHARACTERNORMALIZATIONANDCHARACTERSKELETONEXTRACTIONIMAGESWHICHAREPRETRE
14、ATEDWILLBEMORESUITABLEFORTHELATERTRAININGANDRECOGNITIONAFTERPRETREATMENT,FEATUREEXTRACTIONISPERFORMEDTHEREAREALOTOFWAYSOFFEATUREEXTRACTION,THEEXTRACTIONMETHODOFTHIRTEENFEATURESWHICHHASBETTEREVALUATIONWASCHOSENHEREFINALLY,ITUSESBPNEURALNETWORKTOIDENTIFYTHENUMBERSONTHEPICTURESWHICHARETOBETESTEDKEYWORD
15、SCHARACTERRECOGNITIONPRETREATMENTBPNEURALNETWORKARTIFICIALNEURALNETWORK;FEATUREEXTRACTION目录第一章绪论111文字识别的简介112文字识别方法及研究现状113课题研究内容2第二章人工神经网络321人工神经网络322DELTA学习规则623BP网络7第三章图像的预处理1331256色位图灰度化1332灰度图像二值化1433图像的梯度锐化1534去除离散的杂点噪声1535整体倾斜度调整1636字符分割1737标准归一化1938紧缩的紧缩重排2039特征提取20第四章基于人工神经网络的数字识别2241系统框架22
16、42基于神经网络的数字识别的基本过程2243程序的运行27第五章总结与展望2951总结2952后续工作及展望29参考文献外文资料中文译文致谢天津大学仁爱学院2013届本科生毕业设计(论文)1第一章绪论11文字识别的简介利用计算机自动识别字符的技术,是模式识别应用的一个重要领域。人们在生产和生活中,要处理大量的文本。为了减轻人们的劳动负担,提高处理的效率,50年代开始探讨一般文字识别方法,并研制出了光学字符识别器。60年代出现了采用磁性墨水和特殊字体的实用机器。60年代后期,出现了多种字体和手写体文字识别机器,它的识别精度和机器性能都基本上能满足人们日常生活的要求。70年代主要研究文字识别的基本
17、理论和研制高性能的文字识别机,并着重于汉字识别的研究。文字识别一般包括文字信息的采集、信息的分析预处理、信息的分类判别等几个部分。信息采集将纸面上的文字灰度变换成电信号,输入到计算机中去。信息采集由文字识别机中的送纸机构和光电变换装置来实现,有飞点扫描、摄像机、光敏元件和激光扫描等光电变换装置。信息分析和处理对变换后的电信号消除各种由于印刷质量、纸质(均匀性、污点等)或书写工具等因素所造成的噪音和干扰,进行大小、偏转、浓淡、粗细等各种正规化处理。信息的分类判别对去掉噪声并正规化后的文字信息进行分类判别,以输出识别结果。12字识别方法及研究现状121文字识别方法文字识别方法文字识别方法基本上分为
18、统计、逻辑判断和句法三大类。常用的方法有模板匹配法和几何特征抽取法。模板匹配法将输入的文字与给定的各类别标准文字进行相关匹配,计算输入文字与各模板之间的相似性程度,取相似度最大的类别作为识别的结果。这种方法的缺点是当被识别类别数目增加时,标准文字模板数量也随之增加。这一方面会增加机器的存储容量,另一方面也会降低识别的正确率,所以这种方式适用于识别固定字型的印刷体文字。这种方法的优点是用整个文字进行相似度计算,所以对于文字缺损、边缘噪声等具有较强的适应能力。几何特征抽取法抽取文字的一些几何特征,如文字的端点、分叉点、凹凸部分或水平、垂直、倾斜等各方向的线段、闭合环路等,根据这些特征的位置及相互关
19、系进行逻辑组合判断,获得识别结果。这种识别方式由于利用了结构的天津大学仁爱学院2013届本科生毕业设计(论文)2信息,因此也适用于手写体文字那样变型较大的字符。122文字识别发展现状文字识别可应用于许多领域,如阅读、文献资料的检索、信件的分拣、稿件的校对、银行支票的处理、商品发票的统计汇总、商品编码的识别等。它可以方便用户快速录入信息,提高各行各业的工作效率。随着我国信息化建设的全面开展,文字识别技术诞生20余年来,经历从实验室技术到产品的转变,目前已经步入行业应用开发的成熟阶段。相比发达国家的广泛应用情况,在国内,文字识别技术在各领域的应用还有着广阔的前景。随着国家信息化建设的发展,文字识别
20、技术拥有了一个全新的行业应用局面。313课题研究内容本课题研究内容如下1BP神经网络是人工神经网络的其中一种,它利用实际输出与期望输出之差对网络的各层连接权由后向前前逐层进行校正。通过学习BP网络的算法,对BP网络进行反复训练,确定稳定的权值与阈值,进而应用到文字识别系统中去。2对待识别图片进行一系列预处理。预处理的过程主要包括图像的灰度化、二值化、图像的调整、离散噪点的去处、字符的切分、图像的缩放、字符的细化、字符的平滑等。3识别过程分为三个阶段预处理阶段,BP网络的训练阶段,字符识别阶段。设计程序分别完成三个阶段,利用BP神经网络识别图片中的数字信息。天津大学仁爱学院2013届本科生毕业设
21、计(论文)3第二章人工神经网络21人工神经网络人工神经网络(ARTIFICIALNEURALNETWORK,ANN)也称为神经网络(NEURALNETWORKS,NN),即从生物学神经系统的信号传递而抽象发展成的一门学科。在神经网络中,最基本的单元就是神经元。211人工神经元神经元由三部分组成树突、细胞体和轴突。树突是树状神经纤维接受网络,它将电信号传递给细胞体,细胞体对这些输入信号进行整合并且进行阈值处理。轴突是单根长纤维,它把细胞体的输入信号导向其他的神经元。神经元的排列拓扑结构和突触的连接强度确立了神经网络的功能。形象的说,神经网络是由大量处理单元广泛连接而成的网络,是对人脑的抽象、简化
22、和模拟,反映人脑的基本特性。它能够通过学习过程从外部环境中获取知识,并且它的内部很多神经元可以用来存储已经学到的知识。人工神经元模型是生物神经元的抽象。图21为一种典型的人工神经元模型。图21人工神经元模型人工神经元相当于一个多输入单输出的非线性阈值器件。这里的NXXX,2,1表示的为它的N个输入;NWWW,2,1表示与它相连的N个突触的连接强度,其值成为权值;IXIW称为激活值,表示这个人工神经元的输入总和,对应于生物神经细胞的膜电位;O表示这个人工神经元的输出;表示这个人工神经元的阈值。如果输入信号的加权和超过,则人工神经元被激活。这样,人工神经元的输出可描述为IXIWFO式(21)天津大
23、学仁爱学院2013届本科生毕业设计(论文)4式中,F是表示神经元输入输出关系的函数,称为激活函数或输出函数。设XTWNET是权与输入的矢量积(标量),相当于生物神经元由外加刺激引起的莫内点位的变化。这样激活函数可以写成NETF。这里为了表达简单没有写出阈值。通常我们假设神经元有N1个突触相连接,实际输入变量为1,2,1NXXX。那么可设1NX,NW,这样就加入了阈值这个量。阈值一般不是一个常数,它是随着神经元的兴奋程度而变化的。因细胞在每次放电之后都需要一定的时间恢复,也就是说神经元的兴奋存在不应期,即相邻二次兴奋之间需要的时间间隔(大约为0520MS),在此期间阈值会升高,即绝对不应期内的阈
24、值会上升为无穷大。激活函数有许多类型,其中比较常用的可以归结为三种形式阈值型、S型和线性型。本文采用S型激活函数。单极型S型(SIGMOID响应特性)激活函数的输出特性比较软,其输出状态的取值范围为0,1。7特的输入输出关系由下图表示,式(22)是它的表达式。图22单极型的S型激活函数1,011NETFENETFX式(22)综上所述,神经元具有以下特点1、神经元是一多输入、单输出的元件2、它具有非线性的输入、输出特征3、它具有可塑性,起诉性变化的部分主要是权值IW的变化,这相当于生物神经元的凸出部分的变化。4、神经元的输出响应是各个输入值的综合作用的结果。天津大学仁爱学院2013届本科生毕业设
25、计(论文)55、输入分为兴奋型(正值)和抑制型(负值)两种。212神经元网络的学习过程模仿人的学习过程,人们提出了多种神经元网络的学习方式,其中主要有三种有导师学习、无导师学习和强化学习。按学习方式进行神经元网络模型分类时,可以分为相应的三种,即有导师学习网络、无导师学习网络和强化学习网络。有导师型的学习或者说有监督型的学习是在有指导和考察的情况下进行的,如果学完了没有达到要求,那么就要再继续学习。无导师型的学习或者说无监督性的学习是靠学习者或者说神经系统本身自行完成的。这种学习没人监督,学到什么程度全靠大脑中的神经元网络的学习能力,最后也能把这种知识掌握到一定的程度。学习是一个相对持久的变化
26、过程,往往也是一个推理的过程。例如通过经验也可以学习,学习是神经元网络最重要的能力。12本设计采用的学习过程为有导师学习过程,其模型大致如下。神经网络误差分析X输入O实际输出希望输出误差信号图23有导师学习网络213神经元网络的学习规则神经元网络的最大特点就是它有学习的能力,在学习过程中,主要是网络的连接权的值产生了相应的变化,学习到的内容也是记忆在连接权之中。下面介绍连接权适量W(或者分量)是怎样在学习过程中被校正的。令JIW为第I个神经元的第J个输入连接权,这个输入可以是外来的输入信号,也可以来自其他神经元的输出。这里,主要讨论单个神经元或单层网络的有监督学习以及简单的无监督学习。对于不同
27、的学习规则,神经元的激活函数是不同的。阈值也可以包括在连接权矩阵里。学习信号R是IW和X的函数,有时也包括教师信号ID,所以有天津大学仁爱学院2013届本科生毕业设计(论文)6,IDXIWRR式(23)权矢量WI的变化是由学习步骤按时间T,T1一步一步进行计算的。在时刻T连接权的变化量为,TXTIDTXTIWCRIW,其中C是一个正数,成为学习常数,决定学习的速率。从T时刻到下一个时刻T1,连接权可按下式计算,1TXTIDTXTIWCRTIWTIW式(24)离散学习步骤可写成KKIKKIKIKIXDXWCRWW,1式(25)其中C是一个正常数,成为学习常数,决定学习的速率。22DELTA学习规
28、则仅对连续激活函数,并只对有监督学习模型有效。学习信号为XWFXWFDRTITII式(26)XWFTI是激活函数NETF对XWNETTI的导数。13这个学习规则可以从IO与ID最小方差得出。方差221IIODE式(27)221XWFDETII式(28)误差梯度矢量XXWFODETIII式(29)梯度矢量分量JTIIIIJXWFODWE,2,1NJ式(210)由于最小误差要求权变换是负梯度方向,所以取ECIW式(211)式中C正常数。XNETFODCWIIII式(212)天津大学仁爱学院2013届本科生毕业设计(论文)7XWNETTII式(213)JIIIIJXNETFODCW,2,1NJ式(2
29、14)X1X2X3XNW1W2W3W4FNETOIDI_DIOIRCXWI连续激活函数图24DELTA学习过程23BP网络神经网络有很多种,本设计采用使用最广泛的BP网络。对多层网络的训练方法即误差逆传播算法(ERRORBACKPROPAGATIONTRAINING)。主要意思是从后向前计算,所以把这种算法进行误差校正的多层前馈网络称为BP网络。231误差逆传播校正方法误差逆传播校正方法是利用实际输出与期望输出的差值对网络的各层连接权由后向前逐层的进行校正的一种计算方法。下面分析一个三层网络模型的误差逆传播学习规则的原理。这个网络的输入层有N个神经元,输出层有Q个神经元,中间层有P个神经元。由
30、于中间层与输入、输出端没有直接的联系,所以也常把中间层成为隐含层。首先把网络的变量设置如下输入层至中间层的连接权IJW中间层至输出层的连接权JTV中间层各单元的阈值J输出层各单元的阈值T天津大学仁爱学院2013届本科生毕业设计(论文)8其中NI,2,1;PJ,2,1;QT,2,1;MK,2,1这里激活函数采用S型函数XEXF11式(215)这里之所以选择S型函数作为BP网络神经元的激活函数,是因为它是连续可微分的,而且更接近生物神经元的信号输出形式。激活函数的导数为1XFXFXF式(216)这里的学习规则实际上是一种DELTA学习规则,应使JTV的调整量JTV与JTKVE的负值成正比例变化,所
31、以中间层至输出层连接权的调整量应为JTVJTKVE式(217)通过推到,可得JTVKJBKTCKTCK1式(218)为了进一步简化,设KTD为KE对输出层输入KTL的负偏导,则KTD1KTCKTCKTKTLKTCKTCKEKTLKE式(219)所以KJBKTDJTV式(220)10,QT,2,1,PJ,2,1,MK,2,1。同理,输入层至中间层连接权的调整仍按梯度下降法的原则进行。与JTV类似,连接权IJW的调节量为KIKJIJKIJAEWEW式(221)其中,10,2,1,2,1PJNI同样也可求出阈值的调整量,利用对于连接权的调整公式KJKTJTBDV,取输出层的输入KJB1带入上式,则输
32、出层阈值的调整量为KTTD,2,1QT式(222)天津大学仁爱学院2013届本科生毕业设计(论文)9同理根据KIKJIJAEW,取中间层的输入1KIA,则中间层的阈值的调整量为KJEJ,2,1PJ式(223)以上的推到仅是针对某一组学习模式进行的,其误差也是某一组的误差。对于全部的输入模式,我们有网络的全局误差E2/1121MKQTKTCKTYMKKEE式(224)从以上推倒可以看出,各个连接权的调整量是分别于各个学习模式对的误差函数KE成正比例变化的,这种方法称为标准误差逆传播算法。BP网络的学习规则实现的是学习模式集合上平方和误差KE(或E)的梯度下降,而不是特定某个分量的绝对误差KJ的梯
33、度下降。因此,每次校正完后,网络输出端的误差对于某些神经元来说也有可能增加,但在进行多次反复计算后,其误差还是应该变小的。232BP网络的学习规则与计算方法图25多层前馈网络结构示意图这是一种三层的BP网络,一般来讲,BP网是一种具有三层或三层以上的多层神经元网络,它的左、右各层之间各个神经元之间实现全连接,即左层的每一个神经元与右层的每个神经元都有连接,而同层内的各神经元无相互连接。BP网络按有教师学习方式进行训练,当一对学习模式提供给网络后,其神经元的激活值将从输入层经各中间层(隐层)向输出层传播,在输出层的各个神经元输出对应于输入模式的网络响应。然后,在减少希望输出与实际输出误差的原则,
34、天津大学仁爱学院2013届本科生毕业设计(论文)10从输出层经各中间层、最后回到输入层逐层修正连接权。由于这种修正过程是从输出到输入逐层进行的,所以称它为“误差逆传播算法”。由于BP网络有处于中间位置的隐含层,并有相应的学习规则可循,可训练这种网络,使其具有对非线性模式的识别能力。特别是它的数学意义明确、步骤分明的学习算法,更使它具有广泛的应用前景。BP网络的学习过程主要由四部分组成(1)输入模式顺传播(输入模式由输入层经中间层向输出层传播计算),(2)输出误差逆传播(输出的误差由输出层经中间层传向输入层),(3)循环记忆训练(模式顺传播与误差逆传播的计算经过反复交替循环进行),(4)学习结果
35、判别(判定全局误差是否趋向极小值)。233BP网络学习整体步骤(1)初始化,给各连接权IJW、JTV及阈值J、T赋予1,1之间的随机值。(2)随机选取一个模式对量为KNAKAKAKA,2,1,KQYKYKYKY,2,1提供给网络。(3)用输入模式KNAKAKAKA,2,1,连接权IJW和阈值J计算中间层各神经元的输入JS(激活值),然后用JS通过激活函数计算中间层各单元的输出JBJBJSF式(225)式中JIANIIJWJS1式(226)(4)用中间层的输出JB、连接权JTV和阈值T计算输出层个单元的输入TL(激活值),然后用TL通过激活函数计算输出层各单元的响应TCTCTLF式(227)式中
36、TLTJBPJJTV1,2,1QT式(228)(5)用希望输出模式KQYKYKYKY,2,1,网络实际输出TC计算输出层个单元天津大学仁爱学院2013届本科生毕业设计(论文)11的校正误差KTDKTD1TCTCTCKTY11KJBKJBQTJTVKTD式(229)(6)用JTV,KTD,JB计算中间层的校正误差KJEKJE11KJBKJBQTJTVKTD,2,1PJ式(230)7用JTV,KTD,JB和T计算下一次的中间层和输出层之间的新连接权JBKTDNJTVNJTV1式(230)KTDNTNT1式(231)式中N学习次数。(8)由KJE,KIA,IJW和J计算下一次的输入层和中间层之间的新
37、连接权KIAKJENIJWNIJW1式(232)KJENJNJ1式(233)(9)随机选取下一个学习模式对提供给网络,返回到第(3)步,直至全部M个模式对训练完。(10)重新从M个学习模式对中随机选取一个模式对,返回到第(3)步,直至网络全局误差函数E小于预先设定的限定值(网络收敛),或学习回数大于预先设定的数值(网络无法收敛)。(11)学习结束在以上学习步骤中(3)(6)为输入学习模式的“顺传播过程”,(7)(8)为网络误差的“逆传播过程”,(9)和(10)则完成训练和收敛过程。BP网络学习过程框图如下图所示。天津大学仁爱学院2013届本科生毕业设计(论文)12开始连接权及阈值初始化学习模式
38、对提供给网络计算中间层各单元的输入、输出计算输出层各单元的输入、输出计算输出层各单元的校正误差计算中间层各单元的校正误差调整中间层至输出层之间的连接权及输出层各单元的输出阈值调整输入层至中间层之间的连接权及输出层各单元的输出阈值更新学习输入模式更新学习次数全部模式训练完误差N学习结束NNYY图26BP网络学习过程图天津大学仁爱学院2013届本科生毕业设计(论文)13第三章图像的预处理系统的程序实现分为图像预处理和神经网络识别两大模块。本章主要介绍图像预处理过程。在图像预处理过程中,采用了许多图像处理技术,最后把每个数字的特征提取出来。这些技术包括图像数据提取,图像的灰度化、二值化、图像的调整、
39、离散噪点的去处、字符的切分、图像的缩放、字符的细化、字符的平滑等。图31初始读入的256色位图31256色位图灰度化灰度图像就是图像的每一个像素R,G,B分量的值是相等的。彩色图像R,G,B的值是不相同的,所有显示出红绿蓝的各种颜色。灰度图像没有颜色的差异,只有亮度的不同。灰度值大的像素点比较亮(最大为255,白色),灰度值小的像素点比较暗(像素值最小为0,黑色)。灰度化有各种不同的算法,比较直接的一种就是给像素的RGB值各自一个加权系数,然后求和,同时还要对调色板表项进行相应的处理。最后得到的结果一定要归一到0255之内,因为这是每个字节所表示图像数据的极限。根据人眼对红绿蓝三色的敏感程度,
40、可以使用以下比例式进行转换1105030BGRGRAY式(31)经过灰度处理后的256色位图如图32所示。图32经过灰度处理的文件天津大学仁爱学院2013届本科生毕业设计(论文)1432灰度图像二值化进行灰度处理后,图像的每个像素均只有一个值,即像素的灰度值。灰度值的大小决定了像素的明暗程度。为了更加便利的进行图像处理,还需要做二值化处理。二值化就是把图像中的像素根据一定的标准划分为两种颜色。15本设计中划分为黑色和白色。二值化的方法很多,这里采用给定阈值的算法。因为考虑到所要处理的图像大多是从印刷物上扫描得来的,底色多为白色,所以将这个阈值固定为220。二值化实现的流程图如下。确定像素点的灰
41、度值开始灰度值是否大于220输出白色点输出黑色点结束进行图像扫描YN图33二值化流程图图34二值化后的图片天津大学仁爱学院2013届本科生毕业设计(论文)1533图像的梯度锐化由于需要处理的图像大多是由印刷物上扫描而来的,所以很多情况下字体模糊,给识别带来一定程度的困难。所以进行锐化处理,使模糊的图像变得清晰,同时可以对噪声起一定的去除作用。图像锐化的方法很多,这里采用的方法属于微分法。采用ROBERTS梯度算子对图像进行锐化。定义如下设原始图像上的点为,YXF,定义,YXF在,YX处的梯度矢量为|1,|,1,|,JIFJIFJIFIIFJIFG式(32)设一个判定阈值为,变化后的图像,YXG
42、定义为,YXFYXFGYXG,YXFGYXFG式(33)通过公式可以看出梯度锐化可以让模糊的边缘变得清楚,同时选择合适的阈值还可以减弱和消除一些细小噪声。梯度锐化具备一定的去噪声能力,但同时会对字符的边缘有所损伤。图35梯度锐化后的图像34去除离散的杂点噪声图像可能在扫描过程中夹带了噪声,去除噪声是图像处理中的常用方法。通常去除噪声用滤波的方法,比如中值滤波,均值滤波。17但这些算法不适合处理字符这样目标狭长的图像,因为在滤波的过程中很可能会去除掉字符本身的像素。这里采用的是去除杂点的方法进行去噪。具体算法如下先扫描整个图像,当发现一个黑色点的时候,就考察和该黑色点间接或直接相连的黑色点的个数
43、有多少,如果大于一定的值,那就说明该点不是离散点,否则就是离散点,应把它去掉。在考察相连的黑色点的时候用的是递归的方法。具体流程如下图所示。天津大学仁爱学院2013届本科生毕业设计(论文)16初始化判断当前像素点邻近的八点像素值是否为220开始将此像素点变为白色此像素点不变结束判断当前像素点是否为白色点NYNY图36去处离散噪声流程图图37去除离散杂点噪声后的图像35整体倾斜度调整因为读进来的图像有可能存在倾斜,所以必须进行调整,使得字符大致处于同一水平位置,这样既便于字符的分割,也可以提高字符识别的准确率。调整的算法主要是根据图像左右两边的黑色像素的平均高度来确定。一般来说,由众多的字符组成
44、的图像,它的左右两边的字符像素的高度应该是处于水平位置附近天津大学仁爱学院2013届本科生毕业设计(论文)17的,如果两边字符像素的平均位置存在比较大的起落,那就说明图像存在倾斜,需要进行调整。具体来说,首先要分别计算机图像左半边和右半边的平均高度,然后求斜率,根据斜率重新组织图像,里面包含了一个从新图像到旧图像的像素映射。如果新图像的像素映射到旧图像中时超出了旧图像的范围,则把新图像中的该像素设置为白色。图38经过倾斜度调整后的图像36字符分割系统读进来的图像一般会包含多个数字,识别的时候只能根据每个字符的特征进行判断,因此要进行字符分割。这一步的目的是要把图像中的字符独立分割出来。具体过程
45、如下第一步,先自下向上对图像进行逐个扫描,直至遇到第一个黑色像素点,记录下来,然后再由上向下对图像进行逐行扫描,直至找到第一个黑色像素,这样就找到图像大致的高度范围。第二步,在这个高度范围之内,自左向右逐列进行扫描,遇到第一个黑色像素点时认为是字符分割的起始位置,然后继续扫描,直至遇到第一列中没有黑色像素,则认为这个字符分割结束,然后继续扫描。按照上述的方法一直扫描直至图像的最右端。这样就得到了每个字符的比较精确地范围。第三步,在已知的每个字符比较精确地宽度范围内,按照第一步的方法,分别进行自上而下和自下而上的逐行扫描来获取每个字符精确的高度范围。为了清楚的看到图像分割的结果,在这里用函数DR
46、AWFRAM在每个分割完毕的字符周围画上边框,这个边框只会起到标识图像的作用,并不会对位图本身的内容造成改变。此过程的流程图如下图所示。天津大学仁爱学院2013届本科生毕业设计(论文)18开始初始化是否为图像的最高点记录最高点、最低点行变量加1记录图像的左、右点是否为图像的最右点是否为图像的最后一行将分割出来的矩形放入数组将每个矩形画出来结束YNYNYN图39字符分割流程图图310经过字符分割后并画上边框的图像天津大学仁爱学院2013届本科生毕业设计(论文)1937标准归一化因为由扫描获得的图像中字符大小存在较大的差异,然而相对来说,统一尺寸的字符识别的标准性更强,准确率也更高。标准化图像就是
47、把原来各不相同的字符统一到同一尺寸,本设计统一到同一高度,然后根据高度来调整字符宽度。具体步骤如下先得到原来字符的高度,跟系统要求的高度做比较,得出要变换的系数,然后根据得到的系数求得变换后应有的宽度。在得到宽度之后,把新图像里面的点按照差值的方法映射到原图像中。图像标准归一化的高度和宽度可以通过对话框由使用者自行输入,但是为了以后特征提取处理方便,进行BP网络训练的时候缩短训练时间,标准化的高度和宽度不宜设置过大。这里归一化宽度设为8,高度设为16。归一化信息输入对话框的执行效果如图311所示。图311输入归一化尺寸信息时的对话框归一化流程图如下图所示。初始化开始计算图像的高度和宽度根据规定
48、的标准高宽计算缩放因子计算新图像的像素点映射到原图像的坐标计算新图像像素点的灰度值结束图312归一化流程图天津大学仁爱学院2013届本科生毕业设计(论文)20图313归一化执行效果图38紧缩的紧缩重排经过标准归一化处理后的各个字符在图像中位置不确定,进行特征提取时比较麻烦,所以要把归一化后的字符进行紧缩重排,以形成新的位图句柄,为下一步特征提取的操作做准备。具体流程如下图所示。开始是否到最后一行初始化确定上下左右位置将图像移到相应位置行变量加1结束YN图314紧缩重排流程图图像紧缩重排后的效果如图315所示。图315紧缩重排后的效果39特征提取经过上面一系列的变换,原来大小不同,分布不规律的各个字符变成了大小相同,排列整齐的字符。下面就要从被分割归一化处理完毕的字符中,提取最能天津大学仁爱学院2013届本科生毕业设计(论文)21体现这个字符特点的特征向量。将提取出的训练样本中的特征向量带入BP网络之中,就可以对网络进行训练,提取出待识别的样本中的特征向量带入到训练好的BP网络中,就可以对字符进行识别。特征向量的提取方法多种多样,这里采用13点特征提取法。所谓13点特征提取法,即从每个字符中提取13个特征点。首先把字符平均分成八份,统计每一份内黑色像素点的个数作