一、原始依据(包括设计或论文的工作基础、研究条件、应用环境、工作目的等。
)工作基础:了解C++的基本概念和语法,熟练使用Visual C++6.0软件。
研究条件:BP神经网络的基本原理以及图像处理的基本常识。
应用环境:基于BP神经网络的图片图像文件中的字符识别。
工作目的:掌握基于Visual C++6.0应用程序的开发。
了解人工智能的基本概念并掌握神经网络算法的基本原理。
掌握Visual C++6.0中的图片处理的基本过程。
二、参考文献[1]人工智能原理及其应用,王万森,电子工业,2007.[2]VC++深入详解,鑫,电子工业,2006.[3]人工神经网络原理, 马锐,机械工业,2010.[4]Visual C++数字图像处理典型案例详解,晶,机械工业,2012.[5]Application of Image Processing to the Characterization ofNanostructuresManuel F. M. Costa,Reviews on Advanced Materials Science,2004.三、设计(研究)容和要求(包括设计或研究容、主要指标与技术参数,并根据课题性质对学生提出具体要求。
)1、掌握C++的基本概念和语法。
2、掌握二维神经网络的基本原理。
了解BP神经网络的基本概念。
3、完成Visual C++中对于图像的灰度、二值化等预处理。
4、完成基于样本的神经网络的训练以及图像中数字的识别,并对其性能进行统计和总结,分析其中的不足。
指导教师(签字)年月日审题小组组长(签字)年月日理工大学本科生毕业设计(论文)开题报告摘要人工神经网络是通过对人脑生物神经机理进行简化,抽象和模拟之后建立起来的一种计算模型,属于机器学习的重要研究领域。
本设计主要提出一种用神经网络来识别含有数字字符的方法。
神经网络采用带有动量项和自适应学习率的反向传播算法(BP)进行训练。
在识别之前要对图像进行一系列的预处理,主要包含灰度化、二值化、锐化、噪声去除、字符分割、字符归一化、字符骨架提取等。
经过预处理的图片适合后续的训练及识别。
预处理后对图片上的字符进行特征提取,特征提取的方法很多,这里选择效果较好的十三特征提取法来进行特征提取。
最后采用BP神经网络来对待检测的图片上的数字进行识别。
关键词:反向传播算法;BP网络;人工神经网络;图像处理;特征提取ABSTRACTArtificial neural network is a computational model which is established after the simplification of the biological neural mechanism of human brain and abstract and simulation. It belongs to the important research field of machine learning.In this design, a neural network is proposed to identify the method of containing digital character. The neural network is trained by the back propagation (BP) algorithm with momentum and adaptive learning rate.Before identification, there are a series of image pretreatment which are graying, binarization, sharpening, noise removal, character segmentation, character normalization and character skeleton extraction. Images which are pretreated will be more suitable for the later training and recognition. After pretreatment, feature extraction is performed. There are a lot of ways of feature extraction, the extraction method of thirteen features which has better evaluation was chosen here. Finally, it uses BP neural network to identify the numbers on the pictures which are to be tested.Keywords: BP algorithm; BP Neural Network; ANN; image processing;Feature Extraction.目录第一章绪论 (1)1.1字符识别的简介 (1)1.2文字识别方法及研究现状 (1)1.3课题研究容 (2)第二章人工神经网络 (3)2.1人工神经网络算法 (3)2.2BP网络 (6)第三章图像的预处理 (13)3.1256色位图灰度化 (13)3.2灰度图像二值化 (14)3.3图像的梯度锐化 (15)3.4去除离散的杂点噪声 (15)3.5整体倾斜度调整 (16)3.6字符分割 (17)3.7标准归一化 (19)3.8紧缩的紧缩重排 (20)3.9特征提取 (20)第四章基于人工神经网络的数字识别 (23)4.1系统框架 (23)4.2基于神经网络的数字识别的基本过程 (23)4.3程序的运行 (27)第五章总结与展望 (29)5.1总结 (29)5.2后续工作及展望 (29)参考文献外文资料中文译文致第一章绪论1.1 字符识别的简介字符识别是指电子设备(例如扫描仪或数码相机)检查纸上打印的字符,然后用字符识别方法将形状翻译成计算机文字的过程;即,对文本资料进行扫描,然后对图像文件进行分析处理,获取文字及版面信息的过程。
如何除错或利用辅助信息提高识别正确率,是字符识别中最重要的课题。
早在60、70年代,世界各国就开始有对于字符识别的研究,而研究的初期,多以文字的识别方法研究为主,且识别的文字仅为0至9的数字。
以同样拥有方块文字的日本为例,1960年左右开始研究OCR的基本识别理论,初期以数字为对象,直至1965至1970年之间开始有一些简单的产品,如印刷文字的邮政编码识别系统,识别上的邮政编码,帮助邮局作区域分信的作业;也因此至今邮政编码一直是各国所倡导的地址书写方式。
1.2 字符识别方法及研究现状1.2.1 字符识别方法字符识别方法:字符识别方法基本上分为统计、逻辑判断和句法三大类。
常用的方法有模板匹配法和几何特征抽取法。
① 模板匹配法将输入的字符与给定的各类别标准文字进行相关匹配,计算输入字符与各模板之间的相似性程度,取相似度最大的类别作为识别的结果。
这种方法的缺点是当被识别类别数目增加时,标准字符模板数量也随之增加。
这一方面会增加机器的存储容量,另一方面也会降低识别的正确率,所以这种方式适用于识别固定字型的印刷体字符。
这种方法的优点是用整个字符进行相似度计算,所以对于字符缺损、边缘噪声等具有较强的适应能力。
② 几何特征抽取法抽取字符的一些几何特征,如字符的端点、分叉点、凹凸部分或水平、垂直、倾斜等各方向的线段、闭合环路等,根据这些特征的位置及相互关系进行逻辑组合判断,获得识别结果。
这种识别方式由于利用了结构的信息,因此也适用于手写体文字那样变型较大的字符。
1.2.2 字符识别发展现状字符识别可应用于许多领域,如阅读、文献资料的检索、信件的分拣、稿件的校对、银行支票的处理、商品发票的统计汇总、商品编码的识别等。
它可以方便用户快速录入信息,提高各行各业的工作效率。
进入20世纪90年代以后,随着我国信息化建设的全面开展,以及我国信息自动化和办公自动化的普及,大大推动了字符识别技术的进一步发展,使字符识别技术的识别正确率、识别速度满足了广大用户的要求。
文字识别技术诞生20余年来,经历从实验室技术到产品的转变,目前已经步入行业应用开发的成熟阶段。
相比发达国家的广泛应用情况,在国,文字识别技术在各领域的应用还有着广阔的空间。
随着国家信息化建设的发展,文字识别技术拥有了一个全新的行业应用局面。
各个研究文字识别的软件将会更加深入到信息化建设的各个领域。
1.3 课题研究容本课题研究容如下:1.BP神经网络是人工神经网络的其中一种,它利用实际输出与期望输出之差对网络的各层连接权由后向前前逐层进行校正。
通过学习BP网络的算法,对BP网络进行反复训练,确定稳定的权值与阈值,进而应用到字符识别系统中去。
2.对待识别图片进行一系列预处理。
预处理的过程主要包括对于图像的灰度化、二值化、图像的梯度锐化、离散噪点的去处、图像倾斜度的调整、字符的分割、图像的归一化处理、图像的紧缩重排等。
3.识别过程分为三个阶段:图像预处理阶段,BP网络的训练阶段,字符识别阶段。
设计程序分别完成三个阶段,利用BP神经网络识别正确出图片中的数字信息。
第二章人工神经网络2.1 人工神经网络人工神经网络(Artificial Neural Network,简称ANN),以数学模型模拟神经元活动,是基于模仿大脑神经网络结构和功能而建立的一种信息处理系统。
人工神经网络具有自学习、自组织、自适应以及很强的非线性函数逼近能力,拥有强大的容错性。
它可以实现仿真、预测以及模糊控制等功能。
是处理非线性系统的有力工具。
2.1.1 人工神经网络算法一、设计信息处理单元连接的方式按照信息处理单元的连接方式,神经网络可以分为多种类型。
这里介绍按照结点有无反馈划分的两种典型的网络结构:(1)前馈网络网络可以分为几个层。
各层按信号传输先后顺序依次排列,第i层的神经元只接受第i-1层神经元给出的信号。
各神经元之间没有反馈。
输入层结点与输出层结点称为“可见层”,其他中间层则称为“隐层”。
(2)反馈网络网络分层,某些结点除了接受外加输入以外,还要接受其他结点的反馈,或者是自身的反馈。
当然,除了这种划分方式,还有按照层数划分为单层网络与多层网络,按照输入数据的特点划分为离散网络和连续网络等。
不同的网络在性能和效率上会有很大的差异,一般来说,跨层连接的结点越多,网络越是可靠;层数越多,网络的效率越低;反馈越多,网络的学习能力越强;结点个数越多,网络的记忆能力就越好。