自由手写体数字识别系统的设计与实现

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

自由手写体数字识别系统的设计与实现

摘要:本文论述并设计实现了一个脱机自由手写体数字识别系统。文中首先对待识别数字的预处理进行了介绍,包括二值化、平滑滤波、规范化、细化等图像处理方法;其次,探讨了如何提取数字字符的结构特征和笔划特征,并详细地描述了知识库的构造方法;最后采用了以知识库为基础的模板匹配识别方法,并以MATLAB作为编程工具实现了具有友好的图形用户界面的自由手写体数字识别系统。实验结果表明,本方法具有较高的识别率,并具有较好的抗噪性能。

关键词:手写体数字;预处理;模式识别;特征提取

Abstrct: This paper describes and designs a free handwritten number recognition system. Firstly, the pretreatment of the character to be recognized is introduced, including binarization, smoothing, normalization and thinning. Next, how to extract the structural features of the numbers is discussed, and we describe the constructing method of repository. Finally, we use the method of template matching, based on repository, to recognize the digital number. Matlab is used as a program tool to realize this free handwritten digital recognition system with friendly graphical user interface. The experimental results show that the rate of the recognition system is high, and the proposed method is robust to noise.

Keywords: handwritten number; pretreatment;pattern recognition; feature extraction

1 引言

OCR(Optical Character Recognition)即光学字符识别技术,是通过扫描仪把印刷体或手写体文稿扫描成图像,然后识别成相应的计算机可直接处理的字符。OCR是模式识别的一个分支,按字体分类主要分为印刷体识别和手写体识别两大类。对于印刷体识别又可以分成单一字体单一字号和多种字体多种字号几类。而手写体识别又可分为受限手写体和不受限手写体两类;按识别方式可分为在线识别和脱机识别两类。

字符识别处理的信息可分为两大类:一类是文字信息,处理的主要是用各国家、各民族的文字(如:汉字,英文等)书写或印刷的文本信息,目前在印刷体和联机手写方面技术已趋向成熟,并推出了很多应用系统;另一类是数据信息,主要是由阿拉伯数字及少量特殊符号组成的各种编号和统计数据,如:邮政编码、统计报表、财务报表、银行票据等等,处理这类信息的核心技术是手写数字识别。因此,手写数字的识别研究有着重大的现实意义,一旦研究成功并投入应用,将产生巨大的社会和经济效益。

在整个OCR领域中,最为困难的就是脱机自由手写字符的识别。到目前为止,尽管人们在脱机手写英文、汉字识别的研究中已取得很多可喜成就,但距离实用还有一定距离。而在

手写数字识别这个方向上,经过多年研究,研究工作者已经开始把它向各种实际应用推广,为手写数据的高速自动输入提供了一种解决方案。

本文首先介绍了自由手写体数字识别的基本原理,包括数字图像预处理、特征提取和模式识别的基本原理和方法;其次介绍了;最后通过基于MATLAB的实验结果,对本系统的性能进行了分析。

2 手写体数字识别的基本原理

本系统主要由手写体数字识别的训练过程和识别过程组成,训练过程和识别过程均包括预处理、特征提取和模式识别三部分。系统构成如图2.1所示。

图2.1 系统流程图

下面分别介绍各部分工作的基本原理。

2.1 预处理

预处理主要由二值化,平滑去噪,规范化,细化等组成。

本文采用了基于阈值的二值化算法,通过最大类间方差法即OTSU方法,统计图像的灰度直方图选取全局阈值,然后进行二值化处理。

其次,在二值化后利用均值滤波的方法消除孤立点、线的噪声,这样图中就只剩下手写体数字。在滤波中本文采用的是3*3大小的模板。

平滑去噪后,对图像进行规范化处理。找出图像中数字的边界,然后提取出数字把它居中放置在正方形方框中,再对此正方形图像进行线性插值缩放,使它变为统一规格大小的图像,本文中归一化图像的大小是36*36。

在提取特征之前,要对手写体数字进行细化。本文是采用的基于数学

形态学的细化算法。细化可用两步腐蚀来实现:第一步是正常的腐蚀,但它是有条件的,也就是说,那些被标为可除去的像素点并不立即消去;在第二步中,只将那些消除后并不破坏连通性的点消除,否则保留。以上每一步都是一个3*3邻域运算。细化是将一个曲线性数字细化为一条单像素

宽的线,从而图形化地显示出其拓扑性质。

数字图像预处理前后效果比较如下图所示。图2.2为数字“5”的原始图像,图2.3为对图2.2预处理后的结果图。类似地,图2.4为数字“6”的原始图像,图2.5为对图2.4预处理后的结果图。

图2.2 原始图像

图2.3 预处理后图像

图2.4 原始图像

图2.5 预处理后图像

2.2 特征提取

特征提取的目的是从原始数据中抽取出用于区分不同类型的本质特征。无论是识别过程还是学习过程,都要对研究对象固有的、本质的重要特征或属性进行量测并将结果数值化,形成特征矢量。

通常能描述对象的元素很多,为了节约资源,节省计算机存储空间、处理时间、特征提取的费用,有时更是为了可行性,在保证满足分类识别正确率要求的条件下,按某种准则尽量选用对正确分类识别作用较大的特征,使得用较少的特征就能完成分类识别任务。这项工作表现为减少特征矢量的维数或符号字符数。在本系统中采用对待识别数字图像进行行列扫

相关文档
最新文档