您好,欢迎访问三七文档
说明书手写体数字识别系统分为:图像数据的采集,图像预处理,特征抽取,分类识别和对识别结果进行统计几部分。首先要将提前写好的数字转换成bmp格式的图片,将其导入,并将图像进行切分,即选中几个数并将其分成一个一个的。然后对图像进行预处理,图像预处理就是将每一个数字进行灰度化处理、二值化处理、边缘检测、膨胀等处理。然后分别对采集到的每一个数字图像进行特征提取,特征提取选用的方法是粗网格特征提取。识别时用的是BP神经网络算法。神经网络的原理是不断的对数据进行学习、训练,随着学习的不断进行,误差会越来越小。完成后把上一步提取出来的特征用神经网络去识别。图1系统整体设计准备一张手写数字的图片,首先要将其转换成MATLAB能识别的格式。在本程序中将图片格式设为bmp格式。进行图像采集的方法有两种,一种是先将数字图像导入到程序中,然后切分图像,得到一个一个的数字图像。这样做主要是为了能够更方便快捷的进行预处理工作。另一种方式则是先把图像做预处理,然后再进行数字的切分,这样做的好处是就省去了对多个图像进行预处理的繁琐过程,本软件的设计采用的是先分割图像再预处理的方法。手写体数字识别的预处理过程主要分为:将每一个数字进行灰度化处理、二值化处理、边缘检测、膨胀等。首先将彩色图像进行灰度化处理,得到灰度图像。在灰度图像中,通常用0表示黑,255表示白,从0到255亮度逐渐增加,但是并没有色彩信息。然后进行二值化处理得到二值化图像,即黑白图像。就是图像图像预处理图像采集特征提取分类识别统计识别率导入图像图像切分灰度化二值化边缘检测粗网格特征BP神经网络膨胀像素只存在0,1两个灰度。接着对图像进行边缘检测,边缘检测的目的是找出图像中亮度发生了巨大变化的点。边缘检测可以减少数据量,去掉一些不相关的信息,加快运算速度,提高运行速率。图像的膨胀的目的是扩大物体的边界,可以将断裂的部分连接起来,即使书写不准确补充完可以识别出来。预处理对于系统的设计非常重要,预处理的好坏直接影响着识别结果。经过预处理后的图像才能进行特征的提取,因此必须提高程序的预处理能力。特征提取是这个系统中最重要的部分之一。特征提取的比较好的话可以有更高的识别率。特征显而易见值得是不同点,也就是说它指的是某一事物和其它事物不同的方面,特征是我们经过一系列特殊手段,例如测量和处理等方法可以得到数据。从特征自身的特点上可以将其分为两大类,一种是它的外形特征,另一种是比较深层的纹理特征,这个特征可以表现表面的灰度变化。统计特征和结构特征是手写数字特征的两个主要类别[3],提取特征能够从这两个方面出发。结构特征指的是我们可以看出来的诸形状,书写笔画等具有比较明显的特点的特征。每个数字的笔画都不尽相同,例如数字1只有一画,但数字4却有两画。即使笔画相同结构也有很大差异。例如2和6的结构就存在着明显的差异。也正因为这些差异的存在才使得特征提取不是那么困难。但是有些数字的结构上存在着相似的地方,这就使得特征提取的时候很有可能提取出相似的特征,给识别带来困难。结构特征要求图像足够清晰,太模糊的话可能导致不能提取到合心意的特征。因此要想提取出比较好的特征首先要有高质量的图像。但是实际生活中,国家、区域、书写习惯、纸张材质都影响着图像的清晰度。这都给提取结构特征带来了许多问题。例如:有些人写字比较乱,有些人写出的数字1和7并没有太大的区别,这对于识别来说也是一个很大的问题。统计特征主要是用抽象的数学思维来建立一个或多个特征,来表述一个数字,实际上,就是通过函数,离散变换等方法在特征和数字模型之间建立映射关系,如:利用密度的估计,矩估计等数学统计方法表征一个数字图像的特征[4]。特征提取是要尽量提取那些在同类图像之间差异较小,在不同类别的图像之间差异较大的图像特征。因为提取的特征不仅要能够很好地描述图像,更重要的是能够很好的区分不同类别的图像。进行特征提取时根据情况的不同而做出调整,它的评价标准也会受到主观想法的影响。特征提取也有一些比较普遍的原则,即特征应该比较容易提取,否则花费大量的时间只会得不偿失。其次选取的特征应尽可能少受噪声的影响。最重要的一点是应试图寻找最具区分能力的特征。在实际生活中,许多设计采用的是提取轮廓特征的方法。提取轮廓特征通过扫描数字的外部轮廓实现特征的提取[5]。还有一些方案采用了笔划密度特征,有一部分研究提取图像特征值的方法是基于统计特征的方法,例如基于傅立叶变换特征的,这种正交变换的方式是一种主要的统计特征[6]。本软件为了便于理解采用的是粗网格特征提取。分类识别是手写体数字识别最关键的部分,经过特征提取后提取来的特征将被送到分类器中并对其进行分类识别。分类识别是指根据特征将模式分配给不同的模式类,识别出模式的类别的过程。分类器可以理解为为了实现分类而建立起的某种计算模型,它以模式特征为输入,输出该模式所属的模式信息。具体的识别方式是,建立并训练人工神经网络,是用人工神经网络来架构分类识别器智能识别数字[7],因为人工神经网络有良好的消除噪声影响的能力,并且具备较高的容错率和较高的识别率。而且人工神经网络的发展迅速,越来越成熟,因此本软件的设计采用BP神经网络来完成识别。识别完成后,为了总结出所设计的软件的完成度,需要对识别的结果进行统计。经过多次的实验,对多个不同的数,不同的人手写出的数分别进行识别,统计出识别率。并且详细得出该软件对何种字体或者哪个数的识别率更高。验证后将其记录成册,从中得出该软件对手写体数字识别的识别率的详细情况。并对其进行详细的分析,从而得出软件的使用价值。然后和其它的识别软件的识别率进行对比,找出优缺点,记录下来。
本文标题:手写体数字识别
链接地址:https://www.777doc.com/doc-1808173 .html