字符识别毕业设计
更新时间:2024-02-03 20:46:01 阅读量: 教育文库 文档下载
- 光学字符识别推荐度:
- 相关推荐
武汉科技大学本科毕业设计(论文)
摘 要
为了对车牌字符的识别,本文将BP神经网络应用于汽车车牌的自动识别,在车牌图像进行预处理后的基础上,重点讨论了用BP神经网络方法对车牌照字符的识别。 首先将训练样本做图像预处理,对车牌上的字符进行分割,得到单个字符。对大小不一的字符做归一化后,对字符进行特征提取,把长为15,宽为25的归一化后的图像中的字符信息提取出来,图像中白点置为0,图像中的黑点置为1,这样就得到了15×25的特征向量,这个特征向量记录的就是字符的特征。把这个特征向量送到BP网络中进行训练,得到了训练好的权值,把他保存到“win.dat”和“whi.dat”中。然后打开要识别的图片(即车牌),对图像进行预处理后就可以识别了。识别率也在90%以上,表明该方法的有效性。
关键字:车牌识别;LPR;字符识别;特征提取; BP神经网络;
第I页
武汉科技大学本科毕业设计(论文)
Abstract
For the discernment to the number plate character, this text applies BP neural network to the automatic discernment of the automobile number plate, on the basis that the number plate picture goes on in advance treated , is it use BP neural network method to car discernment , license plate of character to discuss especially. Will train samples to do the pretreatment of the picture at first, character in number plate cut apart, get the individual character. After making normalization to the character not of uniform size, drew the characteristic to the character 15, wide to draw out for character information of 25 picture behind the normalization, picture white point it puts to be 0, black point of picture is it as 1 , receive 15* 25 characteristic vector quantity like this to put, what the vector quantity of this characteristic is written down is the characteristic of the character . Send the characteristic vector quantity BP network train, get good right value of training, keep him in win.dat and whi.dat. Open picture (namely number plate) discerned to want, go on to picture in advance treated to can discern. The discerning rate is above 90% too; show the validity of this method.
Key word:The number plate discerning;The character discerning;
LPR;The characteristic is drawn;BP neural network;
第II页
武汉科技大学本科毕业设计(论文)
目 录
摘要 .......................................................................................................................... Ⅰ ABSTRACT .................................................................................................................. Ⅱ 第一章 概述.......................................................................................................... 1
1.1 基本概念 ............................................................................................... 1 1.2 字符识别简介 ....................................................................................... 2 1.2.1字符识别发展概况 .................................................................... 2 1.2.2字符识别系统用到的方法 ........................................................ 3
1.2.3字符识别原理 ............................................................................ 4 1.3 国内外研究现状和发展趋势 ............................................................... 5 1.4 基于神经网络的字符识别系统 ........................................................... 6
1.4.1 系统简介 ................................................................................... 6 1.4.2 系统的基本技术要求 ............................................................... 7 1.4.3系统的软硬件平台 .................................................................... 7
第二章 字符识别系统中的关键技术 ................................................................. 8
2.1 特征提取 ..................................................................................... 8 2.1.1 基本概念 ................................................................................... 8 2.1.2 区域内部的数字特征 ............................................................ 10 2.1.3 基于边界的形状特征 ............................................................ 13 2.2 神经网络 ............................................................................................. 18
2.2.1 人工神经元 ........................................................................... 18 2.2.2 人工神经网络构成 ............................................................... 22 2.2.3 人工神经网络的学习规则 ................................................... 23 2.2.4 BP神经网络 .......................................................................... 24 第三章 系统的实现 ........................................................................................... 31
3.1 系统流程图 ......................................................................................... 31 3.2 程序实现 ............................................................................................. 31 3.3 程序的总体框架 ................................................................................. 36 第四章 系统使用说明、测试及注意事项 ....................................................... 37
第III页
武汉科技大学本科毕业设计(论文)
4.1 系统使用说明 ..................................................................................... 37 4.2 系统测试 ............................................................................................. 39 4.2.1 数字识别 ............................................................................... 39 4.2.2 字母识别 ............................................................................... 40 4.2.3 汉字识别 ............................................................................... 40 4.2.4 车牌识别 ............................................................................... 41 4.3 注意事项 ............................................................................................. 41 第五章 结论和展望 ........................................................................................... 42 致谢.......................................................................................................................... 43 参考文献 ................................................................................................................. 44 外文原文与译文 ..................................................................................................... 46
? 外文原文 .................................................................................................. 46 ? 译文........................................................................................................... 57
第IV页
武汉科技大学本科毕业设计(论文)
第一章 概 述
1.1 基本概念
随着21世纪经济全球化和信息时代的到来,计算机技术、通信技术和计算
机网络技术迅猛发展,自动化的信息处理能力和水平不断提高,并在人们社会活动和生活的各个领域得到广泛应用。高速度、高效率的生活节奏,使汽车普及成为必然趋势,交通管理自动化越来越成为亟待解决的问题。在这种情况下,作为信息来源的自动检测、图像识别技术越来越受到人们的重视。目前指纹识别、视网膜识别技术已经到了实用阶段;声音识别技术发展也相当快,而对汽车牌照等相关信息的自动采集和管理对于交通车辆管理、园区车辆管理、停车场管理、交警稽查等方面有着十分重要的意义,成为信息处理技术的一项重要研究课题。
车辆牌照识别(License Plate Recognition, LPR)技术作为交通管理自动化的重要手段,其任务是分析、处理汽车监控图像,自动识别汽车牌号,并进行相关智能化数据库管理。LPR系统可以广泛应用于高速公路电子收费站、出入控制、公路流量监控、失窃车辆查询、停车场车辆管理、公路稽查、监测黑牌机动车、监控违章车辆的电子警察等需要车牌认证的重要场合,尤其在高速公路收费系统中,实现不停车收费技术可提高公路系统的运行效率,LPR系统更具有不可替代的作用,因而对LPR车牌识别技术的研究和应用系统开发具有重要的现实意义。
LPR系统中的两个关键子系统是车牌定位系统和车牌字符分割识别系统。 关于车牌识别技术及定位系统研究,国内外学者已经作了大量工作,但实际效果并不理想,对辅助光源要求高,很难有效解决复杂背景下多车牌识别的技术难题,如:车牌图像的倾斜、车牌表面污秽或磨损、光线干扰等都会影响定位的准确性。传统车牌识别一般仅支持单一车辆,背景比较简单。而当今许多实际应用场合,如在繁忙交通路口临时对欠税费报废挂失等车辆的稽查,则监视区域比较复杂,现有识别方法无法直接应用,一般同时出现多辆汽车,背景有广告牌、树木、建筑物、斑马线以及各种背景文字等。
车牌定位与识别方法,总体来说是图像处理技术与车牌本身特点的有机结
第1页
武汉科技大学本科毕业设计(论文)
合,当然也包括小波分析、神经网络、数学形态学、模糊理论等数学知识的有效运用。一个车牌定位与识别系统基本包括:图像预处理、车牌搜索、车牌定位、车牌校正、车牌字符分割和字符识别结果的输出。本系统主要是在对汽车图像进行细致分析,从而研究车牌定位与识别的算法问题。
1.2 字符识别简介
1.2.1 字符识别发展概况
字符识别发展可分为三个阶段:第一个阶段为初级阶段,在这一阶段中,技术上是应用一维图像的处理方法完成二维图像的识别任务。这样萌芽了一个基本思想—抽取特征向量的构造和它的相关函数。现在此法仍不失为一种重要的匹配方法。第二个阶段为基础理论研究阶段。提出了表示边界的链码法,用于结构分析的细化思想,以及一些离散图形上的拓扑性研究,形成了不仅能抽取局部特征, 而且能抽取大范围的凹凸区域、连通性、孔等特征的算法,完成了作为基础理论核心的“特征抽取理论”,及所谓的K-L展开法工作。第三个阶段为发展阶段。这一阶段的研究工作是技术和实际相结合,针对实际系统的要求和设备可能提供的条件,提出了更为复杂的技术。但就多种方法分类来说为二大方法:相关法和构造解析法。在这两类方法的基础上,已研究出了不同类各具特色的实用系统。字符识别系统根据输入设备的不同有如下分类[19],如图1.1所示:
字符识别
磁识别 光学识别 机械识别
在线识别 脱机识别
单个字符识别 连笔字符识别
印刷体字符识别 手写体字符识别
图1.1 字符识别分
类
第2页
武汉科技大学本科毕业设计(论文)
目前开展比较多,并进入实用阶段的是光学字符识别系统 (OCR系统)。日本虽说起步不是最早,但因投入了大量的人力和物力,目前处于世界领先地位。七五年日本拥有650台光学字符识别机,进入了实用阶段。到一九七八年,能阅读英文字母、数字、片假名和平假名等118 种OCRT0300上市。之后,其研究方向转向了汉字识别。
我国是从七十年代开始字符研究的。一九七八年,中科院自动化研究所等合作研制出了“倍函自动化分检机”,可识别0~9个数字;一九八七年清华大学研制的汉字识别系统通过了技术鉴定,可识别国家二级汉字库6000多字,识别率可达99%,速度为1字/4秒;一九八七年十二月,西安交大人工智能和机器人研究所研制的汉字识别系统也通过了技术鉴定,同样可识别汉字6000多,识别速度可达1字/1秒,识别率达98%以上,处于国内领先地位。这都为字符识别的实际应用提供了广阔的前景。
1.2.2 字符识别系统用到的方法
字符识别系统用到的方法很多。下面以表格的形式,其用到的方法作一简单的介绍和比较。
主要理论支柱 模式描述方法 表1.1 几种识别方法的比较 统计决策 句法结构 模糊判决 概率论 数理统计 形式语言 自动机技术 符号串、树、图 模糊数学 逻辑推理 演绎逻辑 布尔代数 字符串表示的事实 神经网络 神经生理学 以不同活跃度表示的输入结点集 特征向量 模糊集合 模式类判定 是一种语言。是一个非线是一种集合运是一个聚合类。用用一个文法是一种布尔演性动态系统。算。用隶属度将条件概率分布P(X| 表示一类,m算。从事实出发通过对样本模糊集合划分wi)表示,m类就有m类就有m个文运用一系列规的学习建立为若干子集,m个分布,然后判定法,然后判定则,推理得到不起记忆,然后类就有m个子未知模式属于哪一未知模式遵同结果,m类就将未知模式集,然后根据择个分布。 循哪一个文有m个结果。 判决为其最近原则分类。 法。 接近的记忆。 几何分类:线性分类、非线性分类 统计分类:Bayes决自动机技术 隶属度函数的模糊设计CYK 剖析算设计:法二元对比排法 第3页
主要方法 产生式推理 语义网推理 BP模型 HOP模型 武汉科技大学本科毕业设计(论文)
策 无教师的分类:聚类分析 Early算法 转移图法 序法 推理法 模糊集运算规则 模糊矩阵 优点:识别方便,可从简单优点:比较成熟,能考虑干扰、噪声等影响,识别模式基元能力强。 主要优缺点 缺点:对结构复杂的模式抽取特征困难。不能反映模式的结构特征,难以描述模式的性质,难以从整体考虑识别问题。 的基元开始,由繁至简。能反映模式的结构特性,能描述模式的性质,对图像的畸变的抗干扰能力较强。 缺点:当存在干扰及噪声时,抽取基元困难,且易失误。 优点:由于用隶属度函数作为样品与模板间相似度的度量,故往往能反映它们整体的与主要的特性,从而允许样品有相当的干扰与畸变。 缺点:准确合理的隶属度往往难以建立,故限制了它的应用。 优点:已建立了关于知识表示及组织,目标搜索及匹配的完整体系。对需同过众多规则的推理达到目标确认的问题,有很好的效果。 缺点:当样品有缺损,背景不清晰,规则不明确甚至有歧义时,效果不好。 优点:可处理一些环境信息十分复杂,背景知识不清楚,推理规则不明确的问题。允许样品有较大的缺损和畸变。 缺点:模型在不断丰富与完善中,目前能识别的程式类还不够多。 框架推理 高阶网 本系统中主要用到的是基于神经网络的字符识别方法。
1.2.3 字符识别原理
近年来,字符识别逐渐成为模式识别领域内的一个重要分支。和其他模式识别的应用一样,字符识别的基本思想也是匹配判别。抽取代表未知字符模式本质的表达形式 (如各种特征) 和预先存储在机器中的标准字符模式表达形式的集合 (称为字典) 逐一匹配,用一定的准则进行判别,在机器存储的标准字符模式表达形式的集合中,找出最接近输入字符模式的表达形式,该表达形式对应的字就是识别结果。字符识别的原理框图如图1.2。
第4页
武汉科技大学本科毕业设计(论文)
字符图像 预 处 理 模式表达
识别部分
学习部分
教师 图1.2 字符识别的原理框图
判 别 字 典 学 习 字符识别的原理如上图所示。文字经光电扫描,模数转换为带灰度值的数字信号送至预处理环节。预处理的内容和要求取决于识别方法,一般包括行字切分,二值化,规范化等。经过预处理,字符模式成为规范化的二值数字点阵信息。对该二值化汉字点阵,抽取一定的表达形式后,与存储在字典中已知的标准字符表达形式匹配判别,就可识别出输入的未知字符。图1.3中点划线以下是识别系统的学习部分。学习是根据多个未知字样抽取出模式表达形式,自动构造或修改充实字典,不断提高系统识别率。字符的模式表达形式和相应的字典形式有多种,每种形式又可以选择不同的特征,每种特征又有不同的抽取方法。这些就使得判别方法和准则以及所用的数学工具不同,形成了种类繁多,形式各异的字符识别方法。
1.3 国内外研究现状和发展趋势
车牌识别技术自1988年以来,人们就对它进行了广泛的研究,目前国内外已经有众多的算法,一些实用的LPR技术也开始用于车流监控、出入控制、电子收费、移动稽查等场合。然而,无论是LPR算法还是LPR产品几乎都存在一定的局限性,都需要适应新的要求而不断完善,如现有系统几乎都无法有效解决复杂背景下的多车牌图像分割定位与有效识别的技术障碍,另外也很难适应全天候复杂环境及高速度的要求。
车牌字符识别实际上是依附在车牌上的印刷体文字的识别,能否正确识别不仅是文字识别技术的问题,还是考虑其载体——车牌区域的影响。车牌字符识别
第5页
武汉科技大学本科毕业设计(论文)
技术是文字识别技术与车牌图像自身因素协调兼顾的综合性技术。由于摄像机的性能、车牌的整洁度、光照条件、拍摄时的倾斜角度及车辆运动等因素的影响使牌照中的字符可能出现比较严重的模糊、歪斜、缺损或污迹干扰,这些都给字符识别带来了难度。尽管如此,我国依然有大量的学者从事车牌字符识别研究,文献给出了基于神经网络的车牌识别方法,对于解析度较高和图像比较清晰的车牌,这些方法能有效识别车牌中的字符,但对于较低解析度和较为模糊的车牌无能为力,因为这些方法只有在车牌中的每个字符被独立分割出来的前提下才能完成识别工作。而独立分割车牌取得字符,对较低解析度和较为模糊的车牌来说是非常困难的。车牌字符识别的研究在技术上已经取得了一定突破,然而离复杂多变的实际应用要求还有一定差距,许多新方法仅停留在理论和文章上或者限定在比较狭窄的约束范围内,并不能以产品的形式大范围投入使用。因而车牌字符识别的实用化研究仍然有很长的路要走。
目前的车牌识别方法主要是针对车辆自动缓停收费、停车场管理等场合,所监视的区域一般只有单一车辆,背景也比较简单。而如今的许多实际应用场合,监视区域比较复杂,现有的方法无法直接应用。比如在移动交警稽查、高速公路的监视与监控、城市交通要道的监视与监控,所监控的区域一般会同时出现多辆汽车,背景也比较复杂,有广告牌、树木、建筑物、斑马线以及各种背景文字等。所以本课题针对这种情况创新性的提出了一种复杂背景下多车牌定位分割与识别方法,并考虑了彩色分割与ColorLP算法,这也是当前车牌图像识别的发展趋势。
当然,车牌识别系统的具体应用发展也很迅猛,从原来的停车静止拍摄场景应用,如收费站、停车场等,发展到移动公路车辆稽查、违章自动报警、超载闯红灯等实时监控场合应用,增加神经网络自适应识别学习训练功能,对于系统响应的速度、网络化、智能化、识别成功率等实用化要求也越来越高。随着上述核心技术的研究发展,应用领域和功能等也获得大幅提高。
1.4 基于神经网络的字符识别系统
1.4.1 系统简介
该系统是为了辨认识别图像中的字符而设计的,它通过对图片的一系列处
第6页
武汉科技大学本科毕业设计(论文)
理,最后识别得出图片中显示的字符。 系统即可以单独使用,也可以把它作为一个识别系统的软件核心应用到车牌识别系统中去。
1.4.2 系统的基本技术要求
下面是系统具体要达到的基本技术要求 1.输入图片中可以含有多个字符; 2.字符的识别准确率大于90%;
3.每张图片的处理时间(识别时间)不能大于1S; 4.对图片噪声具有较强的适应性; 5.系统要能长时间无故障的运行; 6.系统的操作要求简单;
1.4.3 系统的软硬件平台
(1).系统的软件平台
因为系统运行的过程当中,主要进行的都是图象处理,在这个过程当中要进行大量的数据处理,所以处理器和内存要求比较高,CUP要求主频在600HZ及其以上,内存在128MB及其 以上。
(2).系统的软件平台
系统可以运行于Windows 98, Windows2000, Windows XP或者Windows 2003操作系统下。程序调试时,需要使用Microsoft Visual C++ 6.0(SP6)。
第7页
武汉科技大学本科毕业设计(论文)
第二章 字符识别系统中的关键技术
2.1 特征提取
图像处理的高级阶段是数字图像分析(也对以称为图像理解),主要使用计算机系统,从图像中提取有用的数据或信息,生成非图像的描述或表示,如数值、符号等,即抽取图像特征,从而识别视觉图像。为了能让计算机系统认识图像,人们首先必须寻找出算法,分析图像的特征,然后将其特征用数学的办法表示出来并教会计算机也能读懂这些特征。这样,计算机才能具有认识或者识别图像的本领,称图像模式识别,也叫图像识别。要使计算机具有识别的本领,首先要得到图像的各种特征,即特征提取。
图像特征是指图像的原始特性或属性。每一幅图像都有其本身的特征,其中有些是视觉直接感受到的自然特征,如亮度、边缘的轮廓、纹理或色彩等;有些是需要通过变换或测量才能得到的人为特征,如谱、直方图等。
图像特征提取的结果给出了某一具体的图像中与其他图像相区别的特征。例如,描述物体表面灰度变化的纹理特征,描述物体外形的形状特征等。
2.1.1 特征提取基本概念
图像识别是根据一定的图像特征进行的,显然这些特征的选择很重要,它强烈地影响到图像识别分类器的设计、性能及其识别结果的准确性。特征选择错误,分类就个能分得准确,甚至无法分类。因此,特征选择是图像识别中的一个关键问题。由于实际问题中常常不容易找到那些最重要的特征,或者某些图像特征还会随着环境的变化而发生变化,这就使得特征的选择和提取复杂化。
特征选择和提取的基本任务是如何从众多特征中找出那些最有效的特征。在样本数量不是很多的情况下,用很多特征进行分类器设计,从计算复杂程度和分类器性能来看都是不适宜的。因此研究如何把高维特征宁间压缩到低维特征空间以便有效地识别图像成为一个重要的课题,例如手写体文字识别的特征选择的研究已将近半个世纪,但依然是一个研究的难点和热点。
为了进行识别,需要把图像从测量空间变换到维数大大减少的特征空间,被
第8页
武汉科技大学本科毕业设计(论文)
识别的图像在这个特征空中就是由一个特征向量来表示。为了方便起见,对几个经常用道的有关名词作一些说明。
1. 特征形成
根据待识别的图像,通过计算机产生一维原始特征,称之为特征形成。 2. 特征提取
原始特征的数量很大,或者说图像本身处于一个高维空间中,通过映射(或变换)的方法可以用低维空间来表示样本,这个过程叫做特征提取。映射后的特征是原始特征某种组合。所谓特征提取在广义上说是一种变换。
3. 特征提取
从一组特征中挑选出一些最有效的特征以达到降低特征空间维数的目的,这个过程叫做特征选择。
目前几乎没有解析的方法能够知道特征的选择,很多情况下,凭直觉的引导可以列出一些可能的特征表,然后用特征排序的方法计算不同特征的识别效率。利用其结果对表进行删减,从而选出若干最好的特征。
良好的特征应具备以下4个特点:
(1) 可区别性。对属于不同类的图像来说,他们的特征应具备明显的差异。 (2) 可靠性。对于不同类型的图像,特征值应该比较接近。例如,杂志封面的文字图像的分割中,颜色是一个不好的特征。因为,封面文字的颜色可以是各种色彩,尽管它们都属于文字图像。
(3) 独立性好。所选择的特征之间彼此不相关。例如细胞的曲径和细胞的面积高度相关,因为面积大致与直径的平方成正比。这两个特征基本上反映的是相同的属性,即细胞的大小。但是,有时相关性很高的特征组合起来可以减少噪声干扰,它们一般不作为单独的特征使用。
(4) 数量少。图像识别系统的复杂程度随着系统维数(特征的个数)迅速增长。尤为重要的是用来训练分类器和测试结果的图像样本随特征数量呈指数关系增长。而且,增加带噪声的特征或与现存特征相关性高的特征实际上会使识别系统的性能下降。
实际应用中特征提取过程往往包括:先测试一组自觉上合理的特征,然后减少成数目合适的满意集。通常符合上述要求的理想特征是很少甚至没有的。
第9页
武汉科技大学本科毕业设计(论文)
对计算机图像识别系统而言,物体的形状是一个赖以识别的重要特征。一个图像形状和结构特征有两种形式,一种是数字特征主要包括几何属性(如长短、面积、距离和凹凸特性等),统计属性(如黑色像素点在垂直方向的投影)和拓扑属性(如连通、欧拉数);另一种是由字符串和图等所表示的句法语言。它可以刻画某一图像不同部分之间的相互关系(如文字识别中的笔划关系),也可以描述不同目标间的关系。
由于感兴趣的是图像的形状和结构特征,所以其灰度信息往往可以忽略,只要能将它与其他目标或背景区分开来即可。常用的一种技术是二值化图像,即将感兴趣的部分(区域或边界)标以最大灰度级,把背景(也包括其他任何不感兴趣的部分)标以最小灰度级,通常为零。二值化图像在形状和结构分析中占有很重要的地位,本节讨论的算法如没有特别说明都是基于二值化图像的。
2.1.2 区域内部的数字特征
1. 矩
给定二维连续函数f(x,y),下式定义了其pq阶矩:
(2.1)
矩在文字识别中作为有效统计特征而被广泛运用,它之所以能被用来表征一幅二维图像是基于下面的帕普利斯(Papoulis)惟一性定理:如果f(x,y)是分段连续的,只在xy平面的有限部分中有非零值,则所有各阶矩皆存在,并且矩序列{Mpq}此才惟一地被f(x,y)所确定,反之{Mpq}也唯一地确正f(x,y)。
对一幅二值图像{ f(x,y):i,j=0,1,2?N-1}来说,上述条件无疑可被满足。因此,可定义其pq阶矩为:
Mpq=∑∑f(i,j)ipjq (2.2)
不同p、q值下可以得到不同的图像矩Mpq。,常用的区域矩特征有以下几个: (1) 质心
(2) 中心矩
(3) Hu矩组
(2.4)
(2.3)
第10页
武汉科技大学本科毕业设计(论文)
Hu矩组是{mpq}个矩的函数,它满足平移、旋转不变性,因而可被广泛地应用于区域形状识别中。
M1=m20+m02
M2=(m20-m02)2+4m112 M3=(m30-3m12)2+(3m21+ m03)2 M4=(m30+m12)2+(m21+ m03)2
M5=( m30-m12)( m30+m12) (m30+m12)2-3(m21+ m03)2 +( 3m12-m03) (m21+ m03) 3(m30+m12)2-(m21+ m03)2
M6=(m20-m02) (m30+m12) 2 -(m21+ m03)2 +4m11 (m30+m12)(m21+ m03) M7=(3m12-m30)( m30+m12) (m30+m12) 2 -3(m21+ m03)2 + (3m21-m30)( m21+m30) (m03+m12) 2 -3(m12+ m03)2
如果上述的7个Hu矩中的mpq用 (4) 面积
区域的面积定义为区域中的像素点数:
来代替,则得到的
矩还可以满足尺度不变性。特别地,M7满足镜像对称不变性。
(2.5)
其中 max为一位图像的最大灰度级。 (5) 扁度
扁度定义为区域的长短轴之比:
(2.6)
根据帕普利斯的定理,将要无穷多的mpq序列才能确定f(x,y)。在实际应用中,这是不可能实现的,通常取前几阶矩即可,但是这会带来误差。 2. 投影
投影的示意图如图2-1所示。图像的数为{f (x,y)}。S为投影方向,t为与
第11页
武汉科技大学本科毕业设计(论文)
其垂直的方向,t与x轴夹角为?,则{f (x,y)}沿着S的投影定义为:
(2.7)
当?固定时,p(t, ?)为t的函数,亦即一个一维波形。不断地从0~2∏变换?,可得到在不同方向上{f (x,y)}的投影。
S y (x,y) t ?
? ? x
图2.1 坐标投影(t,s)与原坐标系(x,y)间的对应关系
由投影定理,对满足一定条件的{f (x,y)}, 如果知道全部方向上的{p(t,
?)},就可以唯一地恢复{f (x,y)},然而统矩方法一样,获得所有方向上的投影
在实际应用中是行不通的。通常取若干个特定方向上的投影作为以{f (x,y)}形状特征度量,特别地,在x轴和y轴上的投影定义为:
(2.8) (2.9)
应用投影定理,可以把二维图像的问题转变为一维的曲线波形的问题。 3.欧拉数
图像的欧拉数是图像的一中拓扑性质度量,它表明了图的连通性。欧拉数定义为一个图中或一个区域中的孔数H和连接部分数C的差:E=C-H。
对数字降像而言,如果图像的背景用0标记,目标物体用1记,则欧拉数可用下式计算:
n(1)表明图像中像素点均数目,
(2.10) 表示二位图像中具有垂直相邻两个 1
表示4个
标记的状态记数,n(1 1) 表示具有水平相邻1标记的状态记数,
第12页
武汉科技大学本科毕业设计(论文)
1标记相邻的状态记数。
4.几何特征 (1) 面积和周长
面积S和周长L是描述区域大小的基本特征。计算图像中某个区域的面积以及该区域的周长,根据它们的比值可以分析或提取该区域所代表的图像形状特征。
粗略地说,图像中的区域面积S就是图像中相同标记的像素数目。由于连续图像采用离散的像素点描述时,产生了误差。例如一个包含50个像素的对角线比一个50个像素的水平直线要长。因此,在计算血积的过程中对每一个不同像素模式加上不同的权值,以减少误差。
区域的周长二用区域中相邻边缘点间的距离之和来表示,同样存在误差补偿的问题。
(2) 圆形度R
圆形度用来表示目标物体形状接近圆形的程度,其计算公式为:
(2.11)
式中S为区域的面积,L为周长,R的取值范围为0〈R≤1,R越人,则区域越接近圆形。以连续的圆形,正方形和正三角形为例,它们的圆形度R分别为:圆形R=1,正方形R=0.79,正三角形R=0.60。
(3) 凹凸特性
凹凸特性时区域的基本特性之一。区域的凹凸性可以通过以下方法进行判别:区域内任意两像素间的连线穿过区域外的像素,则此区域为凹形。相反,区域内任意两像素间的连线不穿过区域外的像素,则称为凸形。在粘连字符的切分和文字识别等领域,经常利用宇符轮廓的凹凸特性分析其特征,
2.1.3 基于边界的形状特征
1.傅立叶描绘子
对于边界来说,最重要的是组成边界的点的位置信息。灰度信息完全可以忽略。因此可以将边界看成是直角坐标下的点集构成的曲线y=f (x,y),其中x是横坐标,y是纵坐标。可利用傅立叶变换描述y=f (x,y),这一方法称为傅立叶描绘
第13页
武汉科技大学本科毕业设计(论文)
子。
(1) Zahn描绘子
若以y=f (x,y)直接进行傅立叶交换,则变换的结果将与具体的x和y坐标值有关,不能满足平移和旋转的不变性要求。为了解决这个问题,引入封闭曲线本身的内禀参量构造曲线方程,再做傅立叶交换。
由于边界通常是封闭曲线。设r是顺时针方向的封闭曲线。引入曲线本身的内禀参量即曲线弧长l构造曲线方程,它的参数表达式为
z(l)=(x(l),y(l)) (2.12) 式中0≤l≤L,L是曲线全长。曲线的初始点为l=0,?(l)是曲线弧长为l的点的切线方向。定义:
φ(l)= ?(l)-?(0) (2.13)
则φ(l)的变化规律可以描述封闭曲线的形状,很明显它是平移和旋转不变的。由于φ(l)不是一个周期函数,为将其变换为周期函数引入另一个变量则t?[0,2Π]。可定义为:
φ*(t)= φ(tL/2Π)+t t?[0,2Π] (2.14) 则φ*(t)是[0,2Π]的周期函数,而且它对封闭曲线r的平移、旋转和尺度都是不变的。构造r->φ*(t)间的对应关系是一对一的,即介尺度变化下是相似的,如果反演φ*(t)->r,则可得出一组相似的封闭曲线。
由于φ*(t)是周期函数,因此可用它的傅立叶系数来描述它,在[0,2Π]上展成傅立叶级数为:
其中:
(2.16)
(2.17) (2.18)
其中n=1,2,?。
(2.15)
第14页
武汉科技大学本科毕业设计(论文)
φ0 V1 Vm=V0
V2 △lm Vm-1 φ1 V3 φ2
图2.2 数字图像下的多边形边界
数了图像中,封闭曲线r通常是由折线构成的多边形或可用多边形来近似。设多边形顶为v0,v1, ?, vm-1, 边vi-1vi的长度为△li(I=1,2,?,m),如图2.2所示。其中△lm是边界vm-1 v0之长。在每边vi-1vi上,φ(l)为常数,设φi-1, 定义
则:
(2.19)
,
(2.20)
(2.21)
其中n=1,2,?。这样,区域边界r就可用序列{a0,a1,b1,a2,b2,?}进行描述可刻画。
(2) Person—Fu傅立叶描绘子
上面求an和bn时,已经指出对数了图像而言,φ(l)是分段连续的,即在(vk-1,vk)边上是常数,而在端点上是不连续的,存在跳变。这会导致傅立叶变换中产生高
第15页
武汉科技大学本科毕业设计(论文)
频分量,因而在用Zahn描述时,常要较多的傅立叶级数,以保证信息不会有大的丢失。
Person和Fu将r与下面的复参量对应:u(l)=x(l)+iy(l)。其中l仍然是弧长,x(l)和y(l)分别是曲线上点的横坐标及纵坐标。相应的傅立叶变换为:
(2.22)
(2.23)
其中
,vk是多边形第k个顶点的复数坐标。
经过同Zahn方法类似的归一化处理,{an}对广的平移、旋转和尺度变换具有不变性。适当地取{an}的前几项就可在信息损失较小的前提下描述边界r。
(a) 边界的8种走向和对应的方向码 (b) 边界产生的方向链码
图 2.3
2..链码
对于离散的数字图像,区域的边界轮廓可理解为相邻边界像素点之问的单元连线逐段相连而成。考虑数字图像像素点(x,y)的一个8邻域,显然在该点处的边界只能在以下几个方向:正东、东北、正北、西北、正面、西南、正南和东南,如图2.3(a)所示。对于每一种方向赋以一种码表示,如上面 8个方向分别对应于 0、1、2、3、4、5、6和 7,这些码称为方向码。
假设从某一个起点开始,将边界的走向按上面的编码方式记录下来,可形成如下的序列a1 a2 a3?an。a1~ an取值为0~7,这一序列称为链码的方向链。再加上一些标识码,即可构成链码。从图2-3(b)可知,偶数链码段为垂自或水平方向的代码段,奇数链码段为对角线段。对图2-3(b)所示的一个图像区域,若以S点为出发点,按逆时针的方向进行,所构成的边界链码应为556570700122333。
第16页
武汉科技大学本科毕业设计(论文)
当然,也可以按顺时针方向进行,所构成的边界链码完全不同逆时针方向行进的情况。因此,边界链码具有行进的方向性,在具体应用时必须加以注意。 有了链码的方向链后,再加上一些标识码,即可构成链码。常用的标识码有两种:
(1) 加上特殊专用的链码结束标志。如采用“!”作为结束标志,则图2-3(b)的链码应为556570700122333!。
(2) 标上起始点的坐标。如图图2-3(b)的链码为556570700122333xyz,xyz为起始点S的坐标,用3位8进制数表示。
从链码可以得出边界的许多形状特征: (1) 链的长度
(2.24)
其中。表示方向链中偶数码的数目,此表示奇数码的个数。奇数的用人的权重修正后,边界的长度检测时可以弥补图像离散化的误差。
(2) 边界所表示区域的宽度和高度
设方向链为{a1 a2 a3?an},定义ai在x轴上的分量为aix,在y轴上的分量为aiy则:
ai=0时,aix=1,aiy=0 ai=1时,aix=1,aiy=1 ai=2时,aix=0,aiy=1 ai=3时,aix=-1,aiy=1 ai=4时,aix=-1,aiy=0 ai=5时,aix=-1,aiy=-1 ai=6时,aix=0,aiy=-1 ai=7时,aix=1,aiy=-1 设x0和y0是起始点的坐标,则:
(2.25) (2.26)
(3) 链码所包围的区域面积:
(2.27)
第17页
武汉科技大学本科毕业设计(论文)
(2.28)
(4) 假如两个像素点可由方向链联接{a1 a2 a3?an},则这两点的距离为:
(2.29)
上述的区域特征用链码来计算,计算比较简单。但是在描述形状时,信息并不完全,这些数值特征与具体的形状之间并不—一对应。因此,不能只用这些数值进行形状识别,必须与其他特征信息相结合使用,作为补充信息,却能大大提高系统的识别性能。
2.2 神经网络
2.2.1 人工神经元
生物神经网络(BNN)信息传递过程为多输入单输出(MISO)系统,信号为脉冲,当脉冲到达突触前膜时,前膜释放化学物质,结果在突触后产生突触后电位,其大小与脉冲密度有关(时间总合效应),并且各通道都对电位产生影响(空间总合效应)。ANN等效模拟电压近似BNN脉冲密度,仅有空间累加无时间累加(可认为时间累加己隐含于等效模拟电压之中)。
1.神经元模型
神经元是人工神经网络的基本处理单元,它一般是一个多输入/多输出的非线性元件。神经元输出除受输入信号的影响之外,同时也受到神经元内部其他因素的影响,所以在人工神经元的建模中,常常还加有一个额外输入信号,称为偏差(Bats), 有时也称为阀值或门限值。见图2.4。
图2.4 基本神经元模型
第18页
武汉科技大学本科毕业设计(论文)
上图a=f(wp)是不加偏差的输入输出关系,其中w是权重,p是输入;a=f(wp+b)是带偏差的输入输出关系,w、p意义同上,b是偏差,f是所谓的作用函数。 经过抽象,可得到数学表达式如下:
(2.30)
(2.31)
ωi: 数值(Weigthts); θ:阀值(Threshold);
б(s):作用函数(Activated Transfer Function)。
作用函数的基本作用是:
(1) 控制输人对输出的激活作用; (2) 对输入、输出进行函数转换;
(3) 将可能无限域的输入变换成指定的有限范围内的输出。 2.几种常用的作用函数
包括阀值型(硬限制型)、线性型、S型函数(Sigmoid)、辐射基函数等。 下面各图形中的 n(W*P十b)是输入,a是输出。
(1).阀值型(硬限制型) 有两种形式,第一种是:
(2.32)
当输入大于0时,输出为1;输入小于0时,输出为0。见图2.5。
图2.5 阈值型作用函数一
第19页
武汉科技大学本科毕业设计(论文)
第二种是:
(2.33)
也就是当输入大于0时,输出为1;反之为-1。见图2.6。
图2.6 阈值型作用函数二
(2).线性型
也有两种情况,全线性型和正线性型,如下: ① 全线性
A=f (W*P+b)=W*p+b (2.34)
此时输出与输入成正比关系。见图2.7。
图2.7 全线性作用函数
②.正性型
(2.35)
当输入大于0时,输出与输入成正比关系;反之,输出恒为0;见图2.8。
第20页
武汉科技大学本科毕业设计(论文)
图2.8 正线性作用函数
(3).S型函数(Sigmoid)
也有两种可能的函数类型。
① 对数正切
y=1/(e-n+1) (2.36) 输出与输入成对数正切关系,见图2.9。
图2.9 S型函数(对数正切)
② 双曲正切
y=tanh(n) (2.37) 输入与输出成双曲正切关系,见图2.10。
图2.10 S型函数(双曲正切) (4).辐射基函数
① 高斯函数
函数的形状见图2.11。
图2.11 辐射基函数(高斯函数)
② 三角波函数
第21页
武汉科技大学本科毕业设计(论文)
函数的形状见图2.12。
图 2.12 辐射基函数(三角波函数)
2.2.2 人工神经网络构成
人工神经网络有很多构成形式,比如基本型、前向型、回归型以及互联型等,下面我们列出一些前两种神经网络构成形式。
1.基本模型
人工神经网络的基本模型如图2.13所示。
图2.13 人工神经网络基本模型
图中,输入经过神经元之间的连接值和作用函数,得到输出,再与目标值相比较,根据其差值信息,反馈回来进行神经元之间连接值的调整。
2. 前向网络
结构如图2.14 所示。
第22页
武汉科技大学本科毕业设计(论文)
图2.14 前向网络结构
其中,x1,x2,?,xn是输入,y1,y2,?,yn是输出。
前向网络的特点如下:
(1) 神经元分层排列,可又多层;。 (2) 层间无连接; (3) 方向由入到出.
感知网络(Perceptron即为此),应用最为广泛。
2.2.3 人工神经网络的学习规则
ANN中的核心问题就是如何决定网络连接的加权系数(Weight)。这一小节介绍M些常用的学习规则。
1.Hebb学习规则
1949年,D.O.Hebb基于生理学和心理学的研究,对生物神经细胞如何进行学习的问题,剔除了一个直觉得假说:“当两个神经元都处于兴奋状态时,连接这两个神经元的权值将得到加强”,公式表示如下:
(2.38)
上式中,△Wij是连接权值的变化,Vi、Vj是两个神经元的活化水平,α是学习系数。
2.δ学习规则
也称为误差校正规则或者剃度方法,著名的BP方法即为其中一种。
第23页
武汉科技大学本科毕业设计(论文)
(2.39) (2.40)
上式中,△Wij为权值的改变,α为学习系数,Vi是当前神经元的兴奋度,δ是实际输出与期望输出的偏差。
2.2.4 BP神经网络
BP网络是应用中经常碰到的,这一节将详细介绍一下BP网络。 1.BP网络模型
BP神经网络模型见图2.15
图2.15 BP神经网络结构
可以看出,BP网络一般情况下有一个输入层,一个隐藏层(有时是两个或更多),一个输出层。
2.输入输出关系 I->H(输入层到隐藏层)
(2.41)
(2.42)
H->O(隐藏层导输出层)
(2.43)
其中,输人层神经元个数为 n,隐含层神经元个数为n1,输出层神经元个数为S2。
3.网络学习训练
前面已经说过,神经网络的关键问题之一是权值的确定。下面,讨论一下
第24页
武汉科技大学本科毕业设计(论文)
BP网络中的权值确定方法。
我们假定输入q组本p1,p2,?,pq,piRn, 期望输出为T1,T2,?,Tq,这里TRs2, 网络的实际输出为a21,a22,?,a2q,a2 Rs2。
评价的准则是误差最小,所以网络训练的实质转化为一个优化问题。这里考虑用梯度法(Gradient)来找出误差与加权系数的关系,以得到加权系数改变的规律。
定义误差函数为:
我们利用剃度下降法求权值的变化及误差的反向传播。 (1).输出层的权值变化
从第i个输入到第k个输出的权值改变有:
(2.45)
同理可得:
(2.46)
(2).隐含层权值变化
(2.47)
其中,
同理可得,
。
第25页
(2.44)
武汉科技大学本科毕业设计(论文)
(3).解释
输出层误差 ej(j=1-S2) 隐含层误差 ei(i=1-n2),
这里,可以认为ei是由ej加权组合形成的,由于作用函数的存在,ej的等效作用为δji=ejf ‘()。
4.BP网络的设计问题
在进行BP网络的设计时,一般应从网络的层数,每层中的神经元个数和激活函数、初始值以及学习速率等几个方面来进行考虑。下面讨论各自的选取原则。
(1).网络的层数
理论上已经证明:具有偏差和至少一个S型隐含层加上一个线性输入层的网络,能够逼近任何有理函数。增加层数可以进一步的降低误差,提高精度,但同时也使网络复杂化。另外不能用仅具有非线性激活函数的单层网络来解决问题。因为能用单层网络完美解决的问题,用自适应线性网络也一定能解决,而且自适应线性网络的运算速度还要快。而对于只能用非线性函数解决的问题,单层精度又不够高,也只有增加层才能达到期望的结果。
(2). 隐含层神经元数
网络训练精度的提高,可以通过采用一个隐含层,而增加其神经元数的方法来获得,这在结构实现上,要比增加更多的隐含层要简单得多。
为了对隐含层神经元数在网络设计时所起的作用有一个比较深入的理解,下面先给出一个有代表性的实例,然后从中得出几点结论。
例:用两层BP网络实现“异或”功能。 网络要实现如下的输人l输出功能:
对于一个二元输入网络来说,神经元数即为分割线数。所以隐含层神经元数应≥2。通过改变隐含层的节点数做试验,当sl=2,3,4,5,6以及为20、25和30时对网络进行设计。选择误差目标为err_goal=0.02,并通过对网络训
第26页
武汉科技大学本科毕业设计(论文)
练时所需的循环次数和训练时间的情况来观察网络求解效果。整个网络的训练结果如表2-1所示。
表2-1 当 Sl =2,3,4,5,6,20,25,30时的训练结果
我们评价一个网络设计的好坏,首先是它的精度,再一个就是训练时间。从表2-l中可以看出下面几种情况:
① 神经元数太少,网络不能很好的学习,需要训练的次数也多,训练精度也不高;
② 一般而言,网络隐含层神经元的个数S1越多,功能越大,但当神经元数太多,会产生其他的问题
③ 当S1=3,4,5时,其输出精度都相仿,而S1=3是的训练次数最多。 一般的讲,网络sl的选择原则是:在能够解决问题的前提下,再加上一个到两个神经元以加快误差的下降速度即可。
(3).初始权值的选取
一般取初始权值在(-1,1)之间的随机数。
另外,威得罗等人在分析了两层网络是如何对一个函数进行训练后,提出一种选定初始权值的策略:选择权值的量级为r为输入个数。
(4).学习速率
学习速率决定每一次循环训练中所产生的权值变化量。大的学习速率可能导致系统的不稳定;但小的学习速率导致较长的训练时间,可能收敛很慢,不过能保证网络的误差值不跳出误差表面的低谷而最终趋于误差最小值。所以一般情况下倾向于选取较小的学习速率以保证系统的稳定性。学习速率的选取范围是0.01~0.8。
对于较复杂的网络,在误差曲面的不同部位可能需要不同的学习速率。为
,其中S1为第一层神经元数,
第27页
武汉科技大学本科毕业设计(论文)
了减少寻找学习速率的训练次数以及训练时间,比较合适的方法是采用变化的自适应学习速率,使网络的训练在不同的阶段设置不同大小的学习速率。
(5).期望误差的选取
在设计网络的训练过程中,期望误差值也应当通过对比训练后确定一个合适的值,这个所谓的“合适”,是相对于所需要的隐含层的节点数来确定的。一般情况下,作为对比,可以同时对两个不同期望误差值的网络进行训练,最后通过综合因素的考虑来确定采用其中一个网络。
5. BP网络的限制与不足 (1).需要较长的训练时间
这主要是由于学习速率太小所造成的。可采用变化的学习速率或自适应的学习速率来加以改进。
(2).完全不能训练
这主要表现在网络的麻痹上。通常为了避免这种情况的产生,一是选取较小的初始权值,二是采用较小的学习速率。
(3).局部最小值
采用多层网络或较多的神经元,有可能得到更好的结果。 6. B P算法力改进
BP算法改进的主要目标是为了加快训练速度,避免陷入局部极小值和改善其他能力。本节只讨论前两种性能的改进方法的有关内容。
(1).带动量因子算法
该方法是在反向传播法的基础上在每一个权值的变化上加上一项正比于前次权之变化的值,并根据反向传播法来产生新的权值变化。带有附加动量因子的权值调节公式为:
(2.48) (2.49)
其中k为训练次数,mc为动量因子,一般取0.95左右。
附加动量法的实质是将最后一次权值变化的影响,通过一个动量团于来传递。以此方式,当增加动量项后,促使权值的调节向着误差曲面底部的平均方向变化,当网络权值进入误差曲面底部的平坦区时,δ将变得很小,于是,
第28页
武汉科技大学本科毕业设计(论文)
(2.50)
从而防止了△Wij(k)=0的出现,有助于使网络从误差曲面的局部极小值中跳出。
(2).自适应学习速率
对于一个特定的问题,要选择适当的学习速率并不是一件容易的事情。对训练开始初期功效很好的学习速率,不见得对后来的训练合适。为了解决这一问题,人们自然会想到在训练过程中自动调整学习速率。下面给出一个自适应学习速率的调整公式:
(2.51)
其中?为学习速率,初始学习速率?(0)的选取范围可以有很大的随意性。 (3).改变学习速率方法
学习速率的局部调整法基于如下的几个直观的推断: ·目标函数中的每一个网络可调参数有独工的学习速率; ·每一步迭代中,每个学习速率参数都能改变;
·在连续几次迭代中,若目标函数对某个权导数的符号相同,则这个权的学习速率要增加;
·在连续几次迭代中,若目标函数对某个权导数的符号相反,则这个权的学习速率要减小。 ① δ-δ规则;
设αij(k)为Wij(k)的学习速率,则
(2.52)
式中,γ是一个正实数,成为学习速率调整步长。
上式的学习规则虽然和上述推断一致,但在应用时还存在一些潜在的问题。 例如,若在连续两次迭代中,目标函数对某个权的导数具有相同的符号,
第29页
武汉科技大学本科毕业设计(论文)
但他们的权值很小,则对应于那个权值的学习速率的正调整也很小。另一方面,若在两次连续的迭代中,目标函数对某个权的导数具有相反的符号和很大的值,则对应于那个权学习速率的负调整也很大。在这两种情况下,就难于选择合适的步长参数γ。
上述问题可以用δ-bar-δ方法来克服。 ② δ-bar-δ方法
令Wij(k)为第 k次迭代i神经元到j神经元连接权,令αij(k)为这次迭代对应于该权的学习速率,学习速率可按如下调整规则来确定:
(2.53)
(2.54)
(2.55)
式中,ξ是一个正实数,参数a、b和ξ由使用者确定,典型值为: 10-4≤a≤0.1,0.1≤b≤5,0.1≤ξ≤0.7。 (4).作用函数后缩法
(2.56) (2.57)
实验证明,采用此方法,收敛时问平均可减少30%~50%。
第30页
武汉科技大学本科毕业设计(论文)
第三章 系统的实现
3.1 系统流程图
利用神经网络进行字符识别的过程主要包括网络的训练、数据的读取、字符的判定、结果的输出。神经网络字符识别的具体流程图如3.1所示
特征提取 样本训练 字符特征输入 识别并给出结果 图3.1 神经网络字符识别流程图
3.2 程序实现
系统是对车牌图像进行了图像灰度化、二值化、图像的调整、离散噪音点的去除、字符的切分、图像的缩放、字符的细化、字符的平滑、图像的求梯度等图像预处理之后的图像中的字符进行二次处理。系统对字符进行特征提取,对提取的结果再利用神经网络进行字符识别。 1.特征提取
图像经过一系列的预处理之后,原来大小不同、分布不规则的各个字符变成了一个个大小相同、排列整齐的字符。下面接要从被分割归一处理完毕的字符中,提取最能体现这个字符特点的特征向量。将提取出训练样本中的特征向量代入BP网络之中就可以对网络进行训练,提取出待识别的样本中的特征向量代入到训练好的BP网络中,就可以对字符进行识别。
特征向量的提取方法多种多样,有逐像素特征提取法、骨架特征提取法、垂直方向数据统计特征提取法、13点特征提取法、弧度梯度特征提取法等很多方法。
本系统选择的是逐像素特征提取法。
逐像素特征提取法是一中最简单的特征提取法,对图像进行逐行逐列的扫描当遇到黑色像素时取其特征值为1,遇到白色像素时取其特征值为0,这样当扫描结束以后就形成了一维数与图像中像素点的个数相同的特征向量矩阵。
这种特征提取方法的特点是算法简单、运算速度快、可以是BP网络很快的
第31页
武汉科技大学本科毕业设计(论文)
收敛、训练效果好,缺点是适应性不强。但可以通过加大训练样本数目的方法来增强其适应性。
2.BP神经网络
经图像预处理过程和特征提取之后,可以将最终得到的字符特征送入BP网络中进行训练及识别了。这里,假设设定的字符标准归一化的宽度为8,高度为16,那么对于每个字符就有128维的特征。设计BP网络的关键之处在于高效的特征提取方法、大量有代表性的训练样本、高效稳定速收敛学习算法。
(1).BP学习算法可以归纳如下:
第1步,设置变量和参数,其中包括训练样本、权值矩阵、学习速率。 第2步,初始化,给各个权值矩阵一个较小的随机非零向量。 第3步,输入随机样本。
第4步,对输入样本,前向计算BP网络每层神经元的输入信号和输出信号。 第5步,由实际输出和期望输出求得误差。判断是否满足要求,若满足要求转第8步;不满足要求转第6步。
第6步,判断是否已经到了最大迭代次数。若到,转第8步,否则反向计算每层神经元的局部梯度。
第7步,根据局部梯度修正各个矩阵的权值。
第8步,判断是否学习完所有的样本,“是”则结束,否则转第3步。 (2).BP学习中需要注意的几点:
①权值的初始化。权值的初始值应该选择均匀分布的小数经验值。初始值过大或者过小都会影响学习速度。为了避免权值的调整是同向的,应该将初始值设为随机数。
②初始权值不要太大。否则可能会处于误差平面较平坦的区域,从而导致算法无法收敛,训练失败。
③神经元的激励函数是S型函数。所以如果函数的渐进值是0,1的话,期望输出只能是小于1大于0的数,而不能是1或者0。否则可能会导致算法无法收敛。在程序中建议读者用0.1来代表0,0.9来代表1。
(3).BP网络应用过程 如图3.2所示。
第32页
武汉科技大学本科毕业设计(论文)
训练样本图片 特征提取 BP网络 图像预处理 识别 识别结果:鄂A1314
待识别数据 图3.2 BP网络应用流程 (4). BP网络3个层的神经元数目的确定
BP网络应用的第一步就是要用已知训练样本来训练BP网络。这里,BP网络的输入层的结点个数,为图像预处理后所输出的特征的维数。例如,采用了8×16归一化,特征提取采用的是逐像素特征提取法,也即直接利用每个点的像素值来作为特征,这样,对于每一个输入样本,就有8×16=128个特征。所以就可以确定,输入层的结点数为128。
对于隐层的结点数,没有什么硬性规定,一般来说,隐层神经元的数目越多,那么BP网络也就越精确,训练时间也越长。但要注意,隐层神经元不易选取太多,否则会造成识别率的急剧下降,也会降低网络的抗噪声能力。在本程序中,笔者推荐使用10个隐层神经元。读者可以自行测试一下;当将隐层神经元个数改为30个时,训练时间和识别率的变化。
对于输入层的结点数的确定,这决定于我们如何设定标准输出。也就是说如何对目标期望输出进行编码。在本程序中,笔者采用了8421码来对 0、l、2、3、4、5、6、7、8、9来进行编码。对于输出“0”,采用(0,0,0,0,0,0)这样的目标输出向量来表示,对于输出“l”,采用(0,0,0,0,0,I)这样的输出向量来表示,同理,对于输出“9”,采用(0,0,1,0,0,l)这样的输出向量来表示,对于输出“Z”,采用(1,0,0,1,1,0)这样的输出向量来表示。对于“京津沪冀鲁豫鄂苏皖晋湘桂闽川浙甘宁陕吉辽台”输出是“台”,则采用(1,1,1,0,0,l)这样的输出向量来表示。这样一来,就可以确定输出层的神经元数目为6,也即为输出向量的维数。
其实通过后续编程实践可以发现,当采用(0,0,0,0,0,0)这样的目标输出向量的时候,BP网络无法收敛。那是因为采用的激活函数(传输函数)的输出永远不可能达到0或1,而只能是接近。所以,在这里要纠正一下目标输出
第33页
武汉科技大学本科毕业设计(论文)
向量。对其重新编码后,最终确定编码方案如下:
0的编码:0.1,0.1,0.1,0.1,0.1,0.1 1的编码:0.1,0.1,0.1,0.1,0.1,0.9 2的编码:0.1,0.1,0.1,0.1,0.9,0.1 3的编码:0.1,0.1,0.1,0.1,0.9,0.9 4的编码:0.1,0.1,0.1,0.9,0.1,0.1 ?????????
9的编码:0.1,0.1,0.9,0.1,0.1,0.9 A的编码:0.1,0.1,0.9,0.1,0.9,0.1 ?????????
Z的编码:0.9,0.1,0.1,0.9,0.9,0.1 “京”的编码:0.9,0.1,0.1,0.9,0.9,0.9 ?????????
“台”的编码:0.9,0.9,0.9,0.1,0.1,0.9
double out[][6]={
0.1,0.1,0.1,0.1,0.1,0.1, ???????????????//0
0.1,0.1,0.1,0.1,0.1,0.9, ???????????????//1 0.1,0.1,0.1,0.1,0.9,0.1, ???????????????//2 0.1,0.1,0.1,0.1,0.9,0.9, ???????????????//3 0.1,0.1,0.1,0.9,0.1,0.1, ???????????????//4 0.1,0.1,0.1,0.9,0.1,0.9, ???????????????//5 0.1,0.1,0.1,0.9,0.9,0.1, ???????????????//6 0.1,0.1,0.1,0.9,0.9,0.9, ???????????????//7 0.1,0.1,0.9,0.1,0.1,0.1, ???????????????//8 0.1,0.1,0.9,0.1,0.1,0.9, ???????????????//9 0.1,0.1,0.9,0.1,0.9,0.1, ???????????????//A 0.1,0.1,0.9,0.1,0.9,0.9, ???????????????//B 0.1,0.1,0.9,0.9,0.1,0.1, ???????????????//C 0.1,0.1,0.9,0.9,0.1,0.9, ???????????????//D 0.1,0.1,0.9,0.9,0.9,0.1, ???????????????//E 0.1,0.1,0.9,0.9,0.9,0.9, ???????????????//F 0.1,0.9,0.1,0.1,0.1,0.1, ???????????????//G 0.1,0.9,0.1,0.1,0.1,0.9, ???????????????// H 0.1,0.9,0.1,0.1,0.9,0.1, ???????????????//I 0.1,0.9,0.1,0.1,0.9,0.9, ???????????????//J 0.1,0.9,0.1,0.9,0.1,0.1, ???????????????//K 0.1,0.9,0.1,0.9,0.1,0.9, ???????????????//L
第34页
武汉科技大学本科毕业设计(论文)
0.1,0.9,0.1,0.9,0.9,0.1, ???????????????//M 0.1,0.9,0.1,0.9,0.9,0.9, ???????????????//N 0.1,0.9,0.9,0.1,0.1,0.1, ???????????????//O 0.1,0.9,0.9,0.1,0.1,0.9, ???????????????//P 0.1,0.9,0.9,0.1,0.9,0.1, ???????????????//Q 0.1,0.9,0.9,0.1,0.9,0.9, ???????????????//R 0.1,0.9,0.9,0.9,0.1,0.1, ???????????????//S 0.1,0.9,0.9,0.9,0.1,0.9, ???????????????//T 0.1,0.9,0.9,0.9,0.9,0.1, ???????????????//U 0.1,0.9,0.9,0.9,0.9,0.9, ???????????????//V 0.9,0.1,0.1,0.1,0.1,0.1, ???????????????//W 0.9,0.1,0.1,0.1,0.1,0.9, ???????????????//X 0.9,0.1,0.1,0.1,0.9,0.1, ???????????????//Y 0.9,0.1,0.1,0.1,0.9,0.9, ???????????????//Z 0.9,0.1,0.1,0.9,0.1,0.1, ???????????????//京 0.9,0.1,0.1,0.9,0.1,0.9, ???????????????//津 0.9,0.1,0.1,0.9,0.9,0.1, ???????????????//沪 0.9,0.1,0.1,0.9,0.9,0.9, ???????????????//冀 0.9,0.1,0.9,0.1,0.1,0.1, ???????????????//鲁 0.9,0.1,0.9,0.1,0.1,0.9, ???????????????//豫 0.9,0.1,0.9,0.1,0.9,0.1, ???????????????//鄂 0.9,0.1,0.9,0.1,0.9,0.9, ???????????????//苏 0.9,0.1,0.9,0.9,0.1,0.1, ???????????????//皖 0.9,0.1,0.9,0.9,0.1,0.9, ???????????????//晋 0.9,0.1,0.9,0.9,0.9,0.1, ???????????????//湘 0.9,0.1,0.9,0.9,0.9,0.9, ???????????????//桂 0.9,0.9,0.1,0.1,0.1,0.1, ???????????????//闽 0.9,0.9,0.1,0.1,0.1,0.9, ???????????????//川 0.9,0.9,0.1,0.1,0.9,0.1, ???????????????//浙 0.9,0.9,0.1,0.1,0.9,0.9, ???????????????//甘 0.9,0.9,0.1,0.9,0.1,0.1, ???????????????//宁 0.9,0.9,0.1,0.9,0.1,0.9, ???????????????//陕 0.9,0.9,0.1,0.9,0.9,0.1, ???????????????//吉 0.9,0.9,0.1,0.9,0.9,0.9, ???????????????//辽 0.9,0.9,0.9,0.1,0.1,0.1, ???????????????//台
};
此数组即为目标输出向量。
(5).使用BP网络来进行字符识别的流程
首先,利用大量的训练样本来训练网络,以得到文件形式保存的权值。训练样本为精心选择的可以很好的反应样本可分性的已知数据。在程序中采用训练样本图片的格式。将训练样本图片进行特征提取后,就可以送入BP网络进行训练。
其次,训练完BP网络后,就可以用它对待识别数据进行识别了。识别有先
第35页
武汉科技大学本科毕业设计(论文)
要经过图像预处理、特征提取,最后送入BP网络识别,直接得到结果。在训练之前,程序要求输入训练参数,如训练误差、步长等。
3.3 程序的总体框架
现在,来贯穿一便程序完整的流程,以给读者一个完整清晰的认识,假设训练样本图片为pcture1,待识别的图片为pcture2。
1.样本训练
(1).对图片pcture1进行特征提取,得特征向量data_in[][]。 (2).把特征向量data_in[][]送入BP网络进行训练,保存输入层与隐层之间的权值到win.dat中,保存隐层与输出层之间的权值到whi.dat中。
(3).显示训练结果,如训练成功转字符识别,不成功则继续训练。
注释: (1)由code()函数实现,(2)、(3)由BpTrain()函数实现。
2.字符识别
(1) 对图片pcture2进行特征提取,得特征向量data_in[][]。
(2) 读取win.dat和whi.dat中的信息分别到*input_weights和hidden_weights之中。
(3)将data_in[][]送入BP网络的输入层*input_unites。
(4) 将*input_unites和*input_weights送入BP网络中进行前向输入激活, 得到*hidden_unites,再将*hidden_unites和*hidden_weights送入BP网络中进行前向输入激活得*output_unites。其实*output_unites存放的是out[][6]相关内容,即待识别样本的输出结果。
(5) 对*output_unites进行识别,如果output_unites[i]大于0.5,则判断其值为1;如果output_unites[i]小于0.5,则判断其值为0;再对其求加权值。如output_unites[]={0.1,0.1,0.9,0.1,0.1,0.9},则待识别字符为“9”。即25×0+24×0+23×1+22×0+21×0+20×1=9。
注释: (1) 由code()函数实现,(2)~(5)由CodeRecognize()函数实现 。
第36页
武汉科技大学本科毕业设计(论文)
第四章 系统使用说明、测试及注意事项
4.1 系统使用说明
第1步.执行程序生成主界面
图4.1程序主界面
第2步.打开样本图片
图4.2 测试样本
第37页
武汉科技大学本科毕业设计(论文)
第3步.对图片进行预处理
图4.3 图片预处理后的得到的样本
第4步.按“T”按钮或按“神经网络识别”按钮下的“训练网络”来训练样本
图4.4 训练失败的结果
第38页
武汉科技大学本科毕业设计(论文)
图4.5 训练成功的结果
第5步.打开待识别的图片 第6步.对图片进行预处理
第7步.按“R”按钮或按“神经网络识别”按钮下的“进行字符识别”来识别图像中的字符。
4.2 系统测试结果
4.2.1 数字识别
第39页
武汉科技大学本科毕业设计(论文)
4.2.2字母识别
4.2.3 汉字识别
第40页
武汉科技大学本科毕业设计(论文)
4.2.4 车牌识别
4.3 注意事项
(1).该程序设计时考虑了字符的很多变化情况,具有良好的适应性,但识别率对于倾斜字符或者不同字体的字符来说就不是很高了,甚至出现无法识别的情况。此时读者可以通过加大训练样本的数目来解决。将训练样本数目增大到150个,并考虑各种倾斜角度的以及其他几种常用字体,那么该BP网络将会有更加普遍的适应性和更高的识别率。
(2).考虑程序设计的方便,该程序中设计BP网络的目标输出的时候,假定了目标输出为“0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ京津沪冀鲁豫鄂苏皖晋湘桂闽川浙甘宁陕吉辽台”的循环。所以读者在自行设计训练样本的时候一定要注意,不要使用“鄂AX1314”这样的的训练样本,这样会导致无法训练成功。一定要遵守由“0”到“台”的顺序来设计训练样本。对于待识别的图片当然就没有这种要求。
(3).识别时不要再改动归一化信息。否则无法识别。归一化信息应该在训练之前设定,而且仅仅设定一次,特征提取才能进行,识别才能进行。
(4).待识别的图片要与训练好的权值(win.dat和whi.dat)位于同一目录中。
第41页
武汉科技大学本科毕业设计(论文)
第五章 结论和展望
本论文介绍了一种字符识别算法,充分利用了字符编码自身的特点,完成了对车牌字符的识别任务。
论文中针对字符识别的需要,提出了字符特征提取算法和BP神经网络算法,实践证明,在较好的环境下,字母、数字的识别率达到98%,汉字的识别率达到例如90%,总体识别率达到了94%。即使在较差的环境条件下,识别率也在90%以上。本系统即可以单独使用,也可以把它作为一个识别系统的软件核心应用到车牌识别系统中去。
本系统对训练样本的依赖性很大,对于倾斜字符或者不同字体的字符来说识别率就不是很高了,而且训练样本必须是“0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ”的循环,这使得系统的适应性变得很差。如果能克服这些问题,将大大提高此程序的适应能力。
第42页
武汉科技大学本科毕业设计(论文)
致 谢
本论文的顺利完成,首先要感谢我的导师李顺新老师,感谢他对我的毕业设计的精心安排与全面细心的指导,感谢他对我的毕业论文的耐心的审查,李老师严谨的治学态度和工作作风,为我的毕业设计营造了很好的研究气氛,对我产生了深远的影响。
感谢学院为我们毕业设计提供了硬件设施和软件设施,为我们顺利完成毕业设计打下的基础。
感谢与我同组的成员在程序设计过程中对我的帮助。
最后,感谢在我做毕业设计和写论文过程中给我提供过帮助的人。
第43页
武汉科技大学本科毕业设计(论文)
参考文献
[1] 车牌识别技术.《数字图像模式识别技术及工程实践》.人民邮电出版社; [2] 周波. 《汽车牌照识别的初步研究》.成都理工大学学位论文.2002.6; [3] 赵雪春等.《基于彩色分割的车牌自动识别技术》. 上海交通大学学报.1998.10第32卷第10期;
[4] 刘海林等.《ROI技术在车牌识别系统中图像存储方面的应用研究》. 物探化探计算技术.2002.11;
[5] 柴治,陶青川,余艳梅,何小海. 《一种快速实用的车牌字符识别方法》.四川大学学报(自然科学版) 2002年6月第39卷第3期:
[6] YangJie LiXu GuoWei. 《A Recognition of Vehicle plate with Mathematical Morphology and Neural Networks》.Journal of Wu Han University of Technology;
[7] 是湘全,何苑凌,蔡孟波. 《遗传算法在车牌定位中的应用》. 公路交通科技.2002.4;
[8] 韩桢祥,文福栓 .《模拟进化优化方法及其应用》. 计算机科学,1995; [9] 郭捷 施鹏飞.《基于颜色和纹理分析的车牌定位方法》. 中国图像图形学报.2002.5;
[10] 叶晨洲,杨 杰,宣国荣.《车辆牌照字符识别》.上海交通大学学报.2000.5第34卷第5期;
[11] 陈黎黄心汉王敏李炜.《基于聚类分析的车牌字符分割方法》. 计算机工程与应用.2002.6;
[12] 魏武,张起森,王明俊.《一种基于模板匹配的车牌识别方法》.中国公路学报.2001.1第14卷第一期;
[13] 刘效静等.《汽车牌照自动识别技术研究》.南京航空航天大学学报,1998;
[14] 曹迪铭,宣国荣.《神经网络在车辆牌照字符识别中的应用》. 微型电脑应用.2000年第16卷第6期;
[15] 徐建闽,贺敬凯.《车型与车牌自动识别技术分析》.交通与计算机.
第44页
武汉科技大学本科毕业设计(论文)
2002年第2期 第20卷;
[16] 黎明,杨小芹,刘高航.《基于多个前向神经网络和遗传算法的边界检测法》.南昌航空工业学院学报,2000(4);
[17] 黎明,严超华.《基于前向神经网络和Hopfield反馈神经网络的边界检测法》.中国图像图形学报,1999(8);
[18] 张大鹏.《模式识别与图像处理并行计算机系统设计》.哈尔滨工业大学出版社,1998;
[19] 边肇祺等.《模式识别》.北京:清华大学出版社,1988; [20] 黄凤岗,宋克欧等.《模式识别》.哈尔滨工程大学出版社,1998; [21] 张汉江,曹焱,黄升华,李孟军.《模糊ART神经网络在运动目标识别中的应用》.模糊系统与数学,1998(4);
[22] 佘玉梅,熊汉.《模糊模式识别方法研究》.云南民族学院学报(自然科学版),1998(1);
[23] 朱风云,曹晓光.《机动车车牌自动识别系统与VMLA定位算法》. 中国图象图形学报;
[24] 张引,潘云鹤.《彩色汽车图象牌定位新方法》.中国图象图形学报; [25] 《Visual C++数字图象模式识别技术及过程实践》.人民邮电出版社; [26] 《Visual C++数字图象实用工程案例》.人民邮电出版社; [27] 《Visual C++数字图象实用工程案例》.人民邮电出版社;
[28] 《Visual C++/Matlab 图像处理与识别实用案例精选》.人民邮电出版社;
[29] 《Visual C++数字图象实用工程案例》.人民邮电出版社;
[30] Martin T.hagan (美)Howard B.Demuth Mark Beale. 《Neural Metwork Design》.机械工业出版社;
[31] Martin T.hagan (美)Howard B.Demuth Mark Beale. 《神经网络设计》 机械工业出版社;
第45页
武汉科技大学本科毕业设计(论文)
外文原文与译文
? 外文原文
Neural Network Introduction
1.Objectives
As you read these words you are using a complex biological neural network. You have a highly interconnected set of some 1011 neurons to facilitate your reading, breathing, motion and thinking. Each of your biological neurons,a rich assembly of tissue and chemistry, has the complexity, if not the speed, of a microprocessor. Some of your neural structure was with you at birth. Other parts have been established by experience.
Scientists have only just begun to understand how biological neural networks operate. It is generally understood that all biological neural functions, including memory, are stored in the neurons and in the connections between them. Learning is viewed as the establishment of new connections between neurons or the modification of existing connections. This leads to the following question: Although we have only a rudimentary understanding of biological neural networks, is it possible to construct a small set of simple artificial “neurons” and perhaps train them to serve a useful function? The answer is “yes.”This book, then, is about artificial neural networks.
The neurons that we consider here are not biological. They are extremely simple abstractions of biological neurons, realized as elements in a program or perhaps as circuits made of silicon. Networks of these artificial neurons do not have a fraction of the power of the human brain, but they can be trained to perform useful functions. This book is about such neurons, the networks that contain them and their training.
第46页
正在阅读:
字符识别毕业设计02-03
基于Matlab系统辨识工具箱的参数辨识05-18
带控制点工艺流程图的绘制08-19
钢结构计算题集(学生)06-04
《增广贤文》全文详解11页09-02
建筑垃圾对环境的影响及防治对策04-24
志书编审工作进展情况汇报01-28
匡威品牌与广告分析05-26
岩土工程勘察考试重点05-09
- exercise2
- 铅锌矿详查地质设计 - 图文
- 厨余垃圾、餐厨垃圾堆肥系统设计方案
- 陈明珠开题报告
- 化工原理精选例题
- 政府形象宣传册营销案例
- 小学一至三年级语文阅读专项练习题
- 2014.民诉 期末考试 复习题
- 巅峰智业 - 做好顶层设计对建设城市的重要意义
- (三起)冀教版三年级英语上册Unit4 Lesson24练习题及答案
- 2017年实心轮胎现状及发展趋势分析(目录)
- 基于GIS的农用地定级技术研究定稿
- 2017-2022年中国医疗保健市场调查与市场前景预测报告(目录) - 图文
- 作业
- OFDM技术仿真(MATLAB代码) - 图文
- Android工程师笔试题及答案
- 生命密码联合密码
- 空间地上权若干法律问题探究
- 江苏学业水平测试《机械基础》模拟试题
- 选课走班实施方案
- 毕业设计
- 字符
- 识别
- 常见农药剂型和特点
- 铜仁市小学名录2018版951家
- 有源滤波实际效益分析
- 宏观经济学课后习题及答案
- (信息约稿37)部分基层党委党组议事规则“不规范”问题应当重视
- 2017中级会计实务考试真题及答案解析考生回忆版第一批
- 员工安全行为规范管理制度4
- 小学美术教材教法要点
- Tutorial 3 Matlab M文件编辑调试器的使用
- 企业内部控制与制度设计期末试卷
- 进口设备资产评估报告
- SAE标准中文版 - 美国汽车工程师协会标准中文版目录
- 茂 名 市 人 民 医 院
- 二年级道德与法治期末模拟试卷
- 球团
- 魏集小学幼儿园中班上学期考试试卷
- 广东省城市供水用水合同示范文本
- 《秘书考试练习(四级)》
- 晋升中学高级教师个人工作总结
- 制冷系统匹配