手写数字特征的提取与分析.docx

上传人:b****7 文档编号:10516919 上传时间:2023-02-17 格式:DOCX 页数:61 大小:381.58KB
下载 相关 举报
手写数字特征的提取与分析.docx_第1页
第1页 / 共61页
手写数字特征的提取与分析.docx_第2页
第2页 / 共61页
手写数字特征的提取与分析.docx_第3页
第3页 / 共61页
手写数字特征的提取与分析.docx_第4页
第4页 / 共61页
手写数字特征的提取与分析.docx_第5页
第5页 / 共61页
点击查看更多>>
下载资源
资源描述

手写数字特征的提取与分析.docx

《手写数字特征的提取与分析.docx》由会员分享,可在线阅读,更多相关《手写数字特征的提取与分析.docx(61页珍藏版)》请在冰豆网上搜索。

手写数字特征的提取与分析.docx

手写数字特征的提取与分析

毕业设计(论文)

题目手写数字特征提取与分析

专业电子信息工程

班级084班

姓名梁杰

指导教师周扬(讲师)

所在学院信息学院

完成时间:

2012年5月

承诺书

我谨此郑重承诺:

本毕业设计(论文)是本人在指导老师指导下独立撰写完成的。

凡涉及他人观点和材料,均依据著作规范作了注释。

如有抄袭或其它违反知识产权的情况,本人愿接受学校处分。

承诺人(签名):

年月日

手写数字特征提取与分析

信息科技学院电子信息工程专业梁杰

摘要:

目前,模式识别领域在日常生活中的应用已经越来越广泛,比如人脸、指纹识别,字符识别,车牌识别。

所以,对数字识别进行学习与研究是非常有必要的。

本课题为数字字符识别模拟演示系统。

主要是利用正态分布下的最小错误率Bayes方法和最

小风险Bayes方法,来实现手写数字从0到9的识别。

该系统首先是实现模拟手写数字;然后利用轮廓特征法将5*5的模板提取出样品的特征,采用模板可以使同一形状、不同大小的样品得到归一化的特征提取,所以有能力对同一形状、不同大小的样品视为同类;最后结合Bayes决策进

行判别。

使用最小错误率Bayes方法,在判别过程中能使错误率达到最小,即使错分类出现的可

能性最小,而最小风险Bayes方法,在判别过程中可以使风险达到最小,减少危害大的错分类情况。

本设计是利用Matlab实现的,实验证明,该系统对于模拟手写的数字基本上能正确识别,但

是对于手写不规范的数字会存在错判的情况,这跟样品库的有限有关。

Matlab实现

关键词:

模式识别;最小错误;最小风险;特征选择;模拟手写;

Handwrittendigitalfeatureextractionand

analysis

LiangJie,Electronicandinformationengineering,CollegeofInformation

ScieneeandTechnology

Abstract:

Atpresent,thefieldofpatternrecognitionineverydaylifehasbeenmoreandmorewidelyused,suchastheface,fingerprintrecognition,characterrecognition,vehiclelicenseplaterecognition.Therefore,thedigitalidentificationoflearningandresearchisverynecessary.

Thetopicforthedigitalcharacterrecognitionsimulationdemosystem.MainlyusingnormaldistributionundertheminimumerrorrateofBayesmethodandBayesmethodtoachievetheminimumrisk,handwrittendigitsfrom0to9oftheidentification.Thesystemfirstistorealizethesimulationofhandwrittennumeral;thenusingcontourfeaturewillbe5*5templatesextractedsamplecharacteristics,usingthetemplateinthesameshape,differentsizesofsamplestobenormalizedfeatureextraction,sotheabilityofthesameshape,differentsizesofsamplesassimilar;finallycombinedwiththeBayesdecisiondiscriminant.MinimumerrorrateusingtheBayesmethod,thediscriminationprocesscanmaketheerrorratereachesaminimum,evenwrongclassificationandthepossibilityoftheminimum,whileminimizingrisksBayesmethodinjudgingprocess,canmaketheriskminimum,harmreductioninfaultclassification.

ThisdesignistheuseofMatlabtoachieve,experimentsshowthat,thesystemforthesimulationofhandwrittendigitalbasicallycorrectidentification,butforhandwritingirregularnumbermayhavemisjudgedcase,thiswiththesamplelibraryassociation.

Keywords:

Patternrecognition;minimumerror;minimumrisk;featureselection;simulatedhandwriting;Matlab

1绪论1

1.1手写数字特征提取与分析的背景与意义1

1.2手写数字特征的识别技术简介1

1.3现有的手写特征提取的有关算法2

1.4手写特征的典型应用2

1.5本文研究的内容3

2模式识别与MATLAB的介绍4

2.1模式识别4

2.1.1模式识别的基本概念4

2.1.2模式识别系统4

2.1.3相关值计算4

2.2MATLAB5

2.2.1Matlab软件的介绍5

2.2.2Matlab的主要优缺点6

2.2.3Matlab图像类型及转换分析7

3手写特征的提取与选择9

3.1特征的种类与筛选9

3.1.1笔划密度特征9

3.1.2傅立叶变换特征9

3.1.3轮廓特征11

3.1.4投影特征12

3.1.5重心及重心矩特征14

3.1.6首个黑点位置特征14

3.1.7粗网格特征15

3.2特征提取方法15

321结构特征提取方法15

322统计特征提取方法16

3.3手写特征模式识别方法17

4BAYES分类器在手写特征中应用19

4.1Bayes分类器19

4.2基于概率的Bayes决策20

4.3基于最小错误率Bayes的手写数字字符分类21

4.3.1样品均值21

4.3.2协方差矩阵22

4.3.3先验概率22

4.3.4协方差矩阵的行列式22

4.3.5协方差矩阵的逆矩阵23

4.3.6判别函数24

4.4基于最小风险的Bayes分类的实现24

4.4.1与最小错误Bayes决策的相同之处24

4.4.2后验概率25

4.4.3损失函数25

5分类实验与信息26

5.1特征提取方法的软件实现26

5.2截图并说明仿真过程26

5.3获得实验结果28

5.4分类结果分析与评价29

6总结30

致谢31

参考文献32

附录34

附录1•编程代码:

34

附录2•仿真部分截图:

39

1.1手写数字特征提取与分析的背景与意义

手写数字特征提取与分析在学科上属于模式识别和人工智能的范畴。

在过去的四十年中,人们想出了很多办法获取手写字符的关键特征。

这些手段分两大类:

全局分析和结构分析。

对前者,

我们可以使用模板匹配、象素密度、矩、特征点、数学变换等技术。

这类的特征常常和统计分类方法一起使用。

对后者,多半需要从字符的轮廓或骨架上提取字符形状的基本特征,包括:

圈、端点、节点、弧、突起、凹陷、笔画[1]等等。

与这些结构特征配合使用的往往是句法的分类方法。

多年的研究实践表明,对于完全没有限制的手写数字,几乎可以肯定:

没有一种简单的方案能达到很高的识别率和识别精度。

因此,最近这方面的努力向着更为成熟、复杂、综合的方向发展。

一方面,研究工作者努力把新的知识运用到预处理,特征提取,分类当中,如:

神经网络、数学形态学等。

作者认为,在手写数字识别的研究中,Bayes和多种方法的综合是值得重视的方

向。

手写数字特征提取与分析研究的理论意义:

1•阿拉伯数字是唯一的被世界各国通用的符号,

对手写数字识别的研究基本上与文化背景无关,这样就为各国,各地区的研究工作者提供了一个施展才智的大舞台。

在这一领域大家可以探讨,比较各种研究方法。

2.由于数字识别的类别数较

小,有助于做深入分析及验证一些新的理论。

3.尽管人们对手写数字的识别已从事了很长时间的

研究,并已取得了很多成果,但到目前为止机器的识别本领还无法与人的认知能力相比,这仍是一个有难度的开放问题。

4.手写数字的识别方法很容易推广到其它一些相关问题棗一个直接的应用是对英文这样的拼音文字的识别。

事实上,很多学者就是把数字和英文字母的识别[2]放在一块

儿研究的。

1.2手写数字特征的识别技术简介

手写数字特征的识别技术简介如图1.1所示,由数据获取、预处理、特征提取、分类决策及

Matlab分类器设计五部分组成。

一般分为上下两部分。

上部分完成未知类别的模式分类;下般部分属于设计分类器的训练过程,利用样品进行训练,确定分类器的具体参数,完成分类器的设计。

[3]

而分类决策在识别的过程中起作用,对待识别样品进行决策分类

 

图1.1模式识别的过程

1.3现有的手写特征提取的有关算法

现有的手写特征提取的算法有多种,最邻近模版匹配法,基于PCA的模版匹配法,基于类

中心的欧式距离法分类法,马氏距离分类法,夹角余弦距离分类法,二值化的夹角余弦距离分类法,二值化的Tanimoto测度分类法,特征空间分类法,二值数据的贝叶斯分类法,最小错误概率

的贝叶斯分类法,最小风险的贝叶斯分类法,正太性分布函数的统计假设检验法,Fisher算法,

LMSE算法,势函数法,基于核的Fisher法,BP神经网络分类法,RBF神级网络分类法,Hopfield神经网络分类法,自组织神经网络分类法,CPN神级网络分类法等等,还有各种现阶段的新型算法。

1.4手写特征的典型应用

手写数字识别有着极为广泛的应用前景,这也正是它受到世界各国的研究工作者重视的一

个主要原因。

下面我们将介绍以手写数字识别技术为基础的典型应用。

1、手写数字识别在大规模数据统计中的应用:

在大规模的数据统计(如:

行业年检、人口普查等)中,需要输入大量的数据,以前完全要手

工输入,则需要耗费大量的人力和物力。

近年来在这类工作中采用OCR技术已成为一种趋势。

因为在这种应用中,数据的录入是集中组织的,所以往往可以通过专门设计表格和对书写

施加限制以便于机器的自动识别。

目前国内的大多数实用系统都要求用户按指定规范在方格内填

写。

另外,这些系统往往采用合适的用户界面对识别结果做全面的检查,最终保证结果正确无误。

可以看出,这是一类相对容易的应用,对识别核心算法的要求比较低,是目前国内很多单位应用开发的热点。

2、手写数字识别在财务、税务、金融领域中的应用:

财务、税务、金融是手写数字识别大有可为的又一领域。

随着我国经济的迅速发展,每天等待处理的财务、税务报表、支票、付款单等越来越多。

如果能把它们用计算机自动处理,无疑可以节约大量的时间、金钱和劳力。

与上面提到的统计报表处理相比,在这个领域的应用难度更大,原因有:

1)对识别的精度要求更高;2)处理的表格往往不止一种,一个系统应能智能地同时处理

若干种表格;3)由于处理贯穿于整个日常工作之中,书写应尽量按一般习惯(如:

不对书写者的写法

做限定,书写时允许写连续的字串,而不是在固定的方格内书写),这样对识别及预处理的核心算

法要求也提高了。

3、手写数字识别在邮件分拣中的应用:

随着人们生活水平的提高,经济活动的发展,通信联系的需求使信函的互换量大幅度增加,我国函件业务量也在不断增长,预计到2000年,一些大城市的中心邮局每天处理量将高达几百

万件,业务量的急剧上升使得邮件的分拣自动化成为大势所趋。

在邮件的自动分拣中,手写数字识别往往与光学条码识别,人工辅助识别等手段相结合,完成邮政编码的阅读⑷。

目前使用量最

大的OVCS分拣机的性能指标:

OCR拒分率30%,OCR分拣差错率1.1%。

1.5本文研究的内容

本次设计拟解决的主要问题是运用Matlab的Bayes工具箱函数在系统实现的过程中面临的核

心技术,也就是图像预处理和数字识别等2个模块的Matlab程序的实现。

本系统研究的基本内容

主要是从Bayes最小错误率和Bayes最小风险仿真程序设计两个主要分类入手,运用Bayes分离

器各种学习算法技术来解决现实生活中经常涉及到的印刷体数字字符0-9的识别问题。

第二章主要写了模式识别的基本概念和Matlab软件的基本介绍,第三章主要写了手写数字的

一些特征和手写数字特征的提取方法,以及本论文选择什么方法对手写数字进行特征的提取与选

择,第四章主要介绍了Bayes分类器,以及2种Bayes分类器决策方案的计算即:

最小错误率Bayes

和最小风险Bayes。

第五章写了Bayes分类器的仿真实验及截图说明。

2模式识别与Matlab的介绍

2.1模式识别

2.1.1模式识别的基本概念

模式识别(PattenRecognition)就是机器识别或机器自动识别,目的在于让机器自动识别事物。

例如手写数字识别,就是将手写的数字分到具体的数字类别中。

模式识别研究的内容是利用计算机对客观物体进行分类,在错误概率最小的条件

下,使识别的结果尽量与客观物体相符合。

让机器判别事物的最基本方法就是计算,原则上讲是对计算机要分析的事物与标准模板的相似程度进行计算。

例如要识别一个

手写数字,就要将它与0到9的模板进行比较,看跟哪个模板最相似或最接近。

2.1.2模式识别系统

一个典型的模式识别系统如图2.1所示,由数据获取、预处理、特征提取、分类决策及分类器设计五部分组成。

一般分为上下两部分。

上部分完成未知类别的模式分类;下般部分属于设计分类器的训练过程,利用样品进行训练,确定分类器的具体参数,完成分类器的设计。

而分类决策在识别的过程中起作用,对待识别样品进行决策分类。

图2.1模式识别的过程

2.1.3相关值计算

1)均值

_1N

N个样品的均值可以表示为:

"―Xj(X1,X2,…,Xn)T[2-1]

Nj#

其中Xi是第i个特征的平均值,$二丄JXjNj二

对同一批样品来说,sij=sji。

S12

S22

[2-4]

值。

将这n2个值排练成以下的n维方阵,称为协方差矩阵:

S1n

S2n

i=1,2,,n。

2.2Matlab

2.2.1Matlab软件的介绍

MATLAB是Mathworks公司于推出的一套高性能的数值计算和可视化软件,其全称是Matrix

Laboratory,亦即矩阵实验室,经过多年的逐步发展与不断完善,现已成为国际公认的最优秀的

科学计算与数学应用软件之一,是近几年来在国内外广泛流行的一种可视化科学计算软件。

它集数值分析、矩阵运算、信号处理和图形显示于一体,构成了一个方便的、界面友好的用户环境,

而且还具有可扩展性特征。

MathWorks公司针对不同领域的应用,推出了信号处理、控制系统、

神经网络、图像处理、小波分析、鲁棒控制、非线性系统控制设计、系统辨识、优化设计、统计分析、财政金融、样条、通信等30多个具有专门功能的工具箱,这些工具箱是由该领域内的学

术水平较高的专家编写的,无需用户自己编写所用的专业基础程序,可直接对工具箱进行运用。

同时。

工具箱内的函数源程序也是开放性的,多为M文件,用户可以查看这些文件的代码并进

行更改,MATLAB支持用户对其函数进行二次开发,用户的应用程序也可以作为新的函数添加到相应的工具箱中[5]]。

222Matlab的主要优缺点

1.Matlab的主要优点

(1)界面友好,编程效率咼

Matlab是一种以矩阵为基本变量单元的可视化程序设计语言,它的语法结构简单,数据类型单一,命令表达方式接近于常用的数学公式。

这使Matlab用户在短时间内就能快速地掌握其主要

内容和基本操作。

Matlab不仅可免去大量的经常反复的基本数学运算,而且它的编译和执行速度都远远超过了采用C和Fortran语言设计的程序。

可以说,Matlab在科学计算与工程应用方面的编

程效率都远远高于其他高级语言⑹。

.

(2)功能强大,可扩展性强

Matlab语言不但提供了科学计算、数据分析与可视化、系统仿真等强大的功能,而且具有可扩展性特征。

Mathworks公司针对不同领域的应用,推出了自动控制、信号处理、图像处理、模糊逻辑、神经网络、小波分析、通信、最优化、数理统计、偏微分方程、财政金融等30多个具有

专门功能的Matlab工具箱。

各种工具箱中的函数可以互相调用,也可以由用户自己更改。

Matlab

支持用户对其函数进行二次开发,用户的应用程序可以作为新的函数添加到相应的工具箱中。

(3)易学易用性

Matlab不需要用户有高深的数学知识和程序设计能力,不需要用户深刻了解算法及编程技巧。

(4)高效性

Matlab语句功能十分强大,一条语句可完成十分复杂的任务。

它大大加快了工程技术人员从

事软件开发的效率。

据Mathworks公司声称,Matlab软件中所包含Matlab源代码相当于70万条c代码。

MATLAB强大

正是Matlab语言的这些优势,我们选择采用这种语言实现图像处理算法,利用

的工具包,使算法易于实现。

2.Matlab的主要缺点

然而MATLAB自身存在的某些缺点限制了它的应用范围。

(1)Matlab是一种解释性语言,所以它的语言执行效率低,这对于实时性要求较高的领域,如

自动控制,信号处理等,其实时效率是较差的。

(2)Matlab程序不能脱离其环境运行,因此它不能被用于开发商用软件。

(3)程序可以被直接看到程序的源代码,因而不利于算法和数据的保密。

223Matlab图像类型及转换分析

Matlab中的一幅图像可能包含一个数据矩阵,也可能包含一个颜色映射表矩阵,它包含4种基

本的图像类型:

索引图像、灰度图像、RGB图像和二值图像。

此外,Matlab还支持由多帧图像组

成的图像序列⑺。

1.索引图像

索引图像包括一个数据矩阵A,一个颜色映射矩阵B。

其中B是一个包含3列和若干行的数据阵列。

B矩阵的每一行分别表示红色、绿色和蓝色的颜色值。

在Matlab中,索引图像是从像素值

到颜色映射表值的直接映射。

像素颜色由数据矩阵A作为索引指向矩阵B进行索引。

例如,值1指

向矩阵B中的第一行,2指向第二行,依此类推。

2.灰度图像

Matlab中,一幅灰度图像是一个数据矩阵I,其中I的数据均代表了在一定范围内的颜色灰度

值。

Matlab把灰度图像存储为一个数据矩阵,该数据矩阵中的元素分别代表了图像中的像素。

矩阵中的元素可以是双精度的浮点数类型、8位或16位无符号的整数类型。

大多数情况下,灰度图

像很少和颜色映射表一起保存。

但是在显示灰度图像时,Matlab仍然在后台使用系统预定义的默

认的灰度颜色映射表[8]。

3.二值图像

与灰度图像相同,二值图像只需要一个数据矩阵,每个像素只取两个灰度值。

二值图像可以采用uint8和double类型存储,工具箱中以二值图像作为返回结果的函数都使用uint8类型。

4.RGB图像

RGB图像,即真彩色图像,在Matlab中存储为nXmX3的数据矩阵。

数组中的元素定义了图像

的颜色保存在像素位置上的红、绿、蓝的强度值的组合来确定。

图像文件格式把

24位的图像,红、绿、蓝分别占8位。

这样可以有约1000万种颜色(即2“=16777216)。

5.图像序列

Matlab的图像处理工具箱中还支持将多帧图像连接成图像序列。

图像序列是一个四维的数

组,图像帧的序号在图像的长、宽、颜色深度之后构成第四维。

比如一个包含了5幅400*300像

素的真彩色图像序列,其大小为400*300*3*5。

3手写特征的提取与选择

3.1特征的种类与筛选

在抽取过程中,针对手写数字的特点,抽取了包括傅立叶系数特征、笔划密度特征、轮廓

特征、投影特征、重心及重心矩特征、粗网格特征和首个黑点位置特征共104维特征。

3.1.1笔划密度特征

笔划密度特征的提取方法是:

以不同方向扫描数字,计算扫描线和笔划相交的次数,形成笔

划密度特征向量•在本文中,我对16X16的样本在水平方向上每隔4行扫描一次,提取了4个特

征值,并在垂直方向上也每隔4行扫描一次,提取4个特征值,最后共形成8个值的特征向量。

从密度特征的提取方法容易看到,笔划密度特征对字形畸变的抗干扰能力较强,但抗噪声能力较

弱•

3.1.2傅立叶变换特征

关于在频域里提取形状特征的问题,一般来说,区域的别界是一条封闭的曲线。

如果在此轮

廓线上取一动点,并且沿曲线逆时针方向移动,则从点的坐标的变换是一个周期函数•通过规范化

以后,这个周期函数可以展开成傅立叶级数。

显然,傅立叶级数中的一系列系数于边界曲线的形

状有关,可以用作形状的描述。

当增加级数的项数使系数取到足够多的阶次时,几乎可以把形状

信息完全提取出来,并且可以通过这些系数重建原来的几何形状

[9]

傅立叶变换是在图像处理中应用广泛的一种二维正交变换,

傅立叶变换后平均值即直流项正

比于图像灰度值的平均值,低频分量则表明了图像中目标边缘的强度和方向。

手写体字符一般能用很多线段构成的封闭轮廓来表示,通过映射所得到的一些离散量能够充分的反映这些封闭轮廓

[10]

的变化。

傅立叶系数能够很好的描述图像边界轮廓,其值与相似字形的平移、旋转、位移和尺寸大小无关。

在字形表征和识别时,这些特征形成明显的数据压缩

图像经数字化处理后,可以用二维的离散信号l(m,)来表示。

对于二维离散信号{Am,n)(m

=0,1……M-l,r-0,1,二,…,N-1)),其离散傅立叶变换定义为:

义为

方阵,即取M=N,这时二维离散傅立叶变换和逆变换式为

在(2-3)和(2-4)两式中,u,v,m,n=0,l,....,N-1,

从物理效果看,傅立叶变换是将图像从空间域变换到频率域,其逆变换是将图像从频率域转换到空间域。

换句话说,傅立叶变换的物理意义是将图像的灰度分布函数变换为频率分布函数,

傅立叶变换可以得出信号在

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 军事

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1