毕业设计论文模板.docx
- 文档编号:10075028
- 上传时间:2023-02-08
- 格式:DOCX
- 页数:34
- 大小:255.37KB
毕业设计论文模板.docx
《毕业设计论文模板.docx》由会员分享,可在线阅读,更多相关《毕业设计论文模板.docx(34页珍藏版)》请在冰豆网上搜索。
毕业设计论文模板
Companynumber:
【WTUT-WT88Y-W8BBGB-BWYTT-19998】
毕业设计论文模板
摘要
本文主要论述并设计实现了一个数字识别系统。
系统首先对图像进行预处理,提取数字特征,然后运用特定的识别算法,实现数字图像的自动识别。
整个系统包括图像输入、图像预处理、特征提取与数字识别四个部分。
本系统中使用的数字图像从电脑本地文件中读入。
图像预处理包括彩色图像灰度化、灰度图像二值化、图像裁剪。
数字识别使用基于数字形态的算法实现。
首先,在对图像进行图像预处理之后,提取数字的横线特征、竖线特征、水平过线数、垂直过线数四个方面的特性。
然后,利用上述数字的四个方面特性构造编码。
最后,把数字编码依次比较,获得识别结果。
实验表明该算法速度快,精度高,抗干扰性强。
关键词:
数字识别;数字形态;预处理;二值化;过线数
ABSTRACT
Thispaperdescribesanddesignsprintingdigitalrecognitionsystem.Firstly,thesystempre-processesdigitalimage,andextractsdigitalcharacteristic.Secondly,thesystemadoptsspecificrecognitionalgorithm,torealizedigitalrecognitionautomatically.Sothewholesystemisdividedintofourparts,imageinputionmodule,andimagepre-processingmodule,characteristicextractionmoduleanddigitalrecognitionsystemisusedindigitalimagefromlocalfilesintothecomputer.Imagepreprocessionincludingprocessiongrayimagesandcolorimages,processionbinarycolorimagesandgrayimages,imagecrop.
Digitalrecognitionbasedondigitalformofthe,aftertheimagepreprocessing,extractfigureshorizontal,verticalfeatures,thelevel,verticalthrough-line-numbers.Second,digitalidentification,theuseofdigitalstructureofthefouraspectsofthecharacteristicsofdigital,thedigitalcodesequenceobtainedbycomparingtherecognitionexperimentsshowthatthedigitalimagecanberecongnizedquikclyandaccuratelybythissystem,andshowthatthesystemhasstronganti-jammingability.
KeyWords:
figurerecognition;digitalform;pre-processing;binaryoperation;through-line-numbers
摘要
ABSTRACT
第1章绪论
需求分析
国内外现状
系统简介
系统总流程
第2章软件工具——MATLAB
MATLAB概述
MATLABGUI集成开发环境介绍
GUI设计实现
第3章MATLAB图像基础
数字图像处理方法
图像读写与显示
图像对象属性的获取与设置
图像预处理
第4章数字识别
数字识别原理
数字识别
程序流程图
第5章程序设计与实验结果
GUI程序设计
试验结果
总结与展望
结束语…………………………………………………………...…………..20
参考文献21
致谢22
附录源程序代码23
第1章绪论
需求分析
人类社会己开始进入信息时代,信息产业的发展将对国家的发达和民族的兴旺产生重大的影响。
因此,世界各国对信息产业的发展都给予了极大的关注和重视。
人类社会的不断进步带来了信息空间的增长和积累,而计算机的出现为现代化信息处理提供了有效的手段。
但是,在信息技术高速发展的同时,一个难题也摆在我们面前,那就是计算机数据处理中网络传输的高速度与数据输入的低速度之间的矛盾。
目前,人类的许多信息是记录在纸上的文字图像,将这些信息输入计算机是非常繁琐而低效率的工作,这在一定的程度上减缓了社会信息化的进程。
因而,作为信息化基础的数据输入成了计算机应用中的瓶颈问题。
并且人们接受信息最频繁的是视觉通道,在日常学习和生活中,所处理的信息有75%—85%是视觉信息,其中数字信息占愈来愈重要地位。
比如对各种期刊文献的查找;对各种统计报表的汇总、计算、分析;对各种函件票证的分拣、传送、验核等。
要实现对这些数字信息处理过程的机械化、自动化,其先决条件就是利用计算机对这些数字信息进行识别。
总的来说,数字识别不仅能够促进信息产业的发展,而且也着重要的理论价值:
(1)阿拉伯数字是唯一的被世界各国通用的符号,对数字识别的研究基本上与文化背景无关,这样就为各国,各地区的研究工作者提供了一个施展才智的大舞台。
在这一领域大家可以探讨,比较各种研究方法。
(2)由于数字识别的类别数较小,有助于做深入分析及验证一些新的理论。
这方面最明显的例子就是人工神经网络(ANN)----相当一部分的ANN模型和算法都以手写数字识别作为具体的实验平台,验证理论有效性,评价各种方法优缺点。
(3)尽管人们对数字的识别已从事了很长时间的研究,并已取得了很多成果,但到目前为止机器的识别本领还无法与人的认知能力相比,这仍是一个有难度的开放问题(Openproblem)。
(4)数字识别方法很容易推广到其它一些相关问题枣一个直接的应用是对英文这样的拼音文字的识别。
事实上,很多学者就是把数字和英文字母的识别放在一块儿研究的。
(5)数字识别涉及模式识别、图像处理、数字信号处理、自然语言理解、人工智能、模糊数学、信息论、计算机、中文信息处理等学科,是一门综合性技术。
这些研究对人工智能技术的发展都具有重要意义。
国内外现状
数字识别在学科上属于模式识别和人工智能的范畴。
在过去的四十年中,人们想出了很多办法获取字符的关键特征。
这些手段分两大类:
全局分析和结构分析。
对前者,我们可以使用模板匹配、象素密度、矩、特征点、数学变换等技术。
这类的特征常常和统计分类方法一起使用。
对后者,多半需要从字符的轮廓或骨架上提取字符形状的基本特征,包括:
圈、端点、节点、弧、突起、凹陷、笔画等等。
与这些结构特征配合使用的往往是句法的分类方法。
一般来说,使用统计特征的分类易于训练,且在给定的训练集上能得到较高的识别率;而使用结构特征的方法能描述字符的结构,在识别过程中能有效地结合几何和结构的知识,因此能得到可靠性较高的识别结果。
多年的研究实践表明,对于完全没有限制的数字,几乎可以肯定:
没有一种简单的方案能达到很高的识别率和识别精度。
因此,最近这方面的努力向着更为成熟、复杂、综合的方向发展。
另一方面,研究工作者努力把新的知识,如神经网络、图像形态学等,运用到预处理,特征提取当中。
当今的研究成果主要体现在以下方面:
文献提出了一种新的手写数字识别方法,通过将一幅规范化手写数字图像做任意旋转和简单排列,形成纹理图像,将手写数字识别问题转换为纹理识别问题。
然后提取纹理图像在不同方法的主频中心作为特征向量,用最小距离分类器进行分类。
实验表明,该方法不仅具有高的识别率和低的特征维数,而且具有旋转、伸缩和平移不变性。
文献[2]提出一种Hopfield神经网络和小波变换的数字识别方法。
它是一种依靠反馈值来不断调整节点之间的连接权值而构建的一种网络模型。
该数字识别的算法正确率高,但数字的拒识率也较高。
因此,可以将小波与神经网络结合起来,进行手写数字识别,利用了小波变换能很好的获得数字特征,解决了神经网络识别中经常出现的输入特征复杂的缺点。
该方法具有较高的识别率,为解决实际生活中的数字识别提供了一条有效的途径。
文献[3]提出一种基于计算提取数字图像选择性骨骼面积特征的数字识别方法,其特征在于提取数字图像的骨架后,利用数字在数字图像中不同位置区域黑白面积不同的特性,提取从数字图像的四角和中心位置五个区域的面积作为数字特征,而后根据该数字特征进行数字一识别。
该方法可靠性高,识别速度快,且易操作,适用于进行实时数字识别。
本设计提出一种基于数字形态的识别方法,试验表明,该算法速度快,精度高,抗干扰性强。
系统简介
该系统是为了辨认识别图像中的数字而设计的,它通过对图片的一系列处理,最后识别得出图片中显示的数字。
系统既可以单独使用,也可以把它作为一个识别系统的软件核心应用到车牌识别等系统中去。
1.3.1系统基本技术要求
下面是系统具体要达到的基本技术要求
(1)数字的识别准确率大于97%;
(2)可以识别包含多个数字的图片;
(3)系统要能长时间无故障运行;
(4)系统操作简单。
1.3.2系统中用到的关键技术
在本系统中用到了好多图像处理中的相关技术:
比如灰度化、二值化、图像多余内容的裁剪、图像分割等,最后还使用数字形态学理论对提取到的数字信息进行分析判断。
系统总流程
数字识别系统的实现过程中,分解成两个模块,即图像预处理模块和数字识别模块。
其中图像像预处理块在对图像进行了一系列变换后把最后提取到的数字字符提交给数字识别模块,然后进行识别并给出结果。
本系统总的流程结构如图所示。
图系统总流程
其中图像预处理的流程如图所示。
图图像预处理流程
数字识别的具体流程如图所示。
图数字识别流程
第2章软件工具——MATLAB
MATLAB概述
MATLAB是MatrixLaboratory的缩写,是由美国MathWorks公司推出的计算机软件,经过多年的逐步发展与不断完善,现已成为国际公认的最优秀的科学计算与数学应用软件之一,是近几年来在国内外广泛流行的一种可视化科学计算软件。
它集数值分析,矩阵运算,信号处理和图形显示于一体,构成了一个方便的,界面友好的用户环境,而且还具有可扩展性特征。
MathWorks公司针对不同领域的应用,推出了信号处理,控制系统,神经网络,图像处理,小波分析,鲁棒控制,非线性系统控制设计,系统辨识,优化设计,统计分析,财政金融,样条,通信等30多个具有专门功能的工具箱,这些工具箱是由该领域内的学术水平较高的专家编写的,无需用户自己编写所用的专业基础程序,可直接对工具箱进行运用。
同时,工具箱内的函数源程序也是开放性的,多为M文件,用户可以查看这些文件的代码并进行更改,MALAB支持用户对其函数进行二次开发,用户的应用程序也可以作为新的函数添加到相应的工具箱中。
MATLAB中的数字图像是以矩阵形式表示的,这意味着MATLAB强大的矩阵运算能力用于图像处理非常有利,矩阵运算的语法对MATLAB中的数字图像同样适用。
本文对MATLAB图像处理工具箱进行探索及应用,实验证明该软件功能强大,语言简洁易学,人机界面友好,工具箱具有丰富的技术支持并集成了该领域专家的智慧,应用简单而效果良好。
MATLABGUI集成开发环境介绍[4]
图形用户界面(GraphicalUserInterface,GUI)是提供人机交互的工具和方法。
GUI是由窗口、光标、按键、菜单、文字说明等对象(Objects)构成的一个用户界面。
用户通过一定的方法(如鼠标或键盘)选择、激活这些图形对象,使计算机产生某种动作或变化,比如实现计算、绘图等。
最常见的激活方法是用鼠标控制屏幕上的鼠标指针的运动。
按下鼠标按钮,标志着对象的选择或其他动作。
一个设计优秀的GUI能够非常直观地让用户知道如何操作MATLAB界面,并且了解设计者的开发意图。
在这里对GUI设计方法和原则做一些介绍。
另外,在MATLABdemo里面有很多经典实例,请读者自己研究。
2.2.1GUIDE简介
MATLAB图形用户界面开发环境(GraphicalUserInterfaceDevelopmentEnvironment,GUIDE)提供了一系列创建用户图形界面的工具。
这些工具极大地简化了GUI设计和生成的过程。
可以用GUIDE完成下面的任务。
(1)输出GUI。
使用GUIDE输出编辑器,通过单击和拖拉组件可以很容易地创建GUI。
(2)GUI编程。
GUIDE自动生成一个控制GUI如何操作的M文件。
该M文件初始化GUI界面并包含一个GUI回调事件的框架。
使用M文件编辑器,可以向回调事件中添加代码,运行相关函数。
GUIDE实际上是一套MATLAB工具集,它主要由七部分组成:
版面设计器、属性编辑器、菜单编辑器、调整工具、对象浏览器、Tab顺序编辑器、M文件编辑器。
在命令窗口中直接键入guide,启动GUIDE,打开版面设计工具,如图所示。
图版面设计器
2.2.2GUI文件
GUIDE把GUI设计的内容保存在两个文件中,它们在第一次保存或运行时生成。
一个是FIG文件,扩展名为.fig,它包含对GUI和GUI组件的完整描述;另外一个是M文件,扩展名为.m,它包含控制GUI的代码和组件的回调事件代码。
这两个文件与GUI现实和编程任务相对应。
在版面设计器中创建GUI时,内容保存在FIG文件中;对GUI编程时,内容保存在M文件中。
设计好GUI以后,可以用M文件编辑器编辑M文件。
通常情形下在版面设计器工具栏上单击
图标就可以打开M文件编辑器。
图所示的编辑器显示了BlankGUI(Default)模板的M文件的内容。
图2.2M文件编辑器
GUI的M文件主要用于完成以下任务:
(1)初始化GUI界面;
(2)包含GUI显示屏幕前执行的任务代码,例如创建数据或者图形;
(3)包含用户每次单击组件执行的回调函数。
在M文件编辑器中单击
图标可以查看GUI组件所对应的回调函数。
该操作显示回调函数的列表。
在列表中单击所选择的回调函数,则M文件编辑器自动定位到此回调函数所对应的代码段,在代码段里用户可以根据自己的需求来编辑代码,以完成期望的功能。
GUI设计实现
2.3.1添加组件
在GUIDE的版面设计区添加组件的方法很简单,通过鼠标从组件面板里拖拉即可实现。
完成组件的添加后,就可以使用GUIDE的特性工具调整组件的位置和Tab次序编辑器调整Tab次序,以达到最优化配置。
删除组件时,只要选中组件,使用Delete键或在右键弹出菜单中单击Clear选项即可。
在版面设计区里也可以使用一般的复制与粘贴的方式进行相同组件的添加。
2.3.2设置属性
没有编辑属性前,一般组件的属性值都是默认值。
通过属性编辑器可以更改当前组件的属性值。
在菜单编辑器里可以更改菜单的一些属性值。
当然改变了组件的一些属性时,可能会影响到界面的版式和效果,这里还要回到组件的布局中行行优化。
在版面设计器的工具栏上单击
图标、双击组件或选择View菜单下PropertyInspector选项即可打开属性编辑器,如图所示。
如果当前选择的对象是一个组件或菜单项,则打开次对象所有的属性。
图属性编辑器
2.3.3回调函数
回调函数就是组件或者菜单被单击所发生事件的代码,从广义上讲,还包括图形对象的创建、删除、按键等一系列操作所引发的事件。
回调函数函数名由控件属性中Tag属性决定,所以,我们可以通过在属性编辑其中设置Tag属性来改变我们编写函数名称,增强程序可读性。
第3章MATLAB图像基础
数字图像处理方法[5]
数字图像处理方法大致可分为两大类,即:
空域法和变换域法。
(1)空域法
这种方法是把图像看作是平面中各个像素组成的集合,然后直接对这个二维函数进行相应的处理。
空域处理法主要有下面两大类:
邻域处理法
其中包括:
梯度运算、拉普拉斯算子运算、平滑算子运算和卷积运算等。
点处理法
包括:
灰度处理(greyporecssing),面积、周长、体积、重心运算等等。
(2)变换域法
数字图像处理的变换域处理方法是首先对图像进行正交变换,得到变换域系数阵列,然后再施行各种处理,处理后再反变换到空间域,得到处理结果。
这类处理包括:
滤波、数据压缩、特征提取等处理。
图像读写与显示
3.2.1文件打开
uigetfile()%获得图像文件名和路径
[filename,pathname,filterindex]=uigetfile(‘*.*’)
当打开文件成功时,filename返回文件名,pathname返回文件存储路径,filterindex返回值为1,否则为0。
3.2.2查询图像文件
在MATLAB中,使用函数imfinfo能够获取图像处理工具箱支持的任何格式图像文件的信息。
函数调用格式为:
info=imfinfo(filename,fmt)
info=imfinfo(filename)
参数fmt对应于图像处理工具箱中所有支持的图像文件格式,不再说明。
3.2.3读取图像文件
在MATLAB中,函数imread用来读取图像文件,函数调用格式为:
I=imread(filename)
3.2.4图像显示
在MATLAB中,函数imshow用来显示一幅图像,当用户调用imshow函数时,该函数将自动设置图像窗口、坐标轴和图像属性。
imshow函数调用格式为:
imshow(I)
imshow(BW)%显示二值图像
图像对象属性的获取与设置
所有对象都有属性来定义它们的特性,正是通过设定这些属性来修正图形显示的方式。
对象属性可以包括诸如对象的位置、颜色、类型、父对象和子对象等内容。
每一个不同对象都有与它相关的属性,改变这些属性并不影响类型的其他对象。
对象属性包括属性名和与它们相关联的值。
属性名是字符串,它们通常按混合的方式显示,每个词的开头字母大写,比如:
LineStyle。
但是,MATLAB7识别一个属性是不分大小写的。
3.3.1get函数
在MATLAB7中,使用get函数可以得到对象的属性及其属性值,通常的调用格式为:
get(handle,’PropertyName’)。
关于它的详细使用方法,用户可以参见有关get函数的帮助信息。
3.3.2set函数
在MATLAB7中,使用set函数可以设置对象的属性值,其常用的调用格式如下:
set(H,’PropertyName’,PropertyValue)命令可以设置PropertyName的属性为PropertyValue。
set(H,a)命令中,a为结构性变量,字段名为图形对象的属性名,字段值为映像的属性值。
set(H,’PropertyName1’,PropertyValue1,…
’PropertyName2’,PropertyValue2,…)命令用于同时设置多个属性的值。
图像预处理
3.4.1彩色图像灰度化
灰度图是指只含亮度信息,不含色彩信息的图象,就象我们平时看到的黑白照片:
亮度由暗到明,变化是连续的。
通常划分成0到255共256个级别,其中0最暗(全黑),255最亮(全白)。
由于在图像处理中,大部分的处理方法都需要事先把彩色图转换成灰度图才能进行相关的处理、识别。
在RGB模型中,如果R=G=B时,则彩色表示一种灰度颜色,其中R=G=B的值叫灰度值,因此,灰度图像每个像素只需一个字节存放灰度值(又称强度值、亮度值),灰度范围为0—255。
一般有以下四种方法对彩色图像进行灰度化:
(1)分量法
将彩色图像中的三分量的亮度作为三个灰度图像的灰度值,可根据应用需要选取一种灰度图像。
f1(i,j)=R(i,j)f2(i,j)=G(i,j)f3(i,j)=B(i,j)
其中fk(i,j)(k=1,2,3)为转换后的灰度图像在(i,j)处的灰度值。
(2)最大值法
将彩色图像中的三分量亮度的最大值作为灰度图的灰度值。
f(i,j)=max(R(i,j),G(i,j),B(i,j))
(3)平均值法
将彩色图像中的三分量亮度求平均得到一个灰度图。
f(i,j)=(R(i,j)+G(i,j)+B(i,j))/3
(4)加权平均法
根据重要性及其它指标,将三个分量以不同的权值进行加权平均。
由于人眼对绿色的敏感最高,对蓝色敏感最低,因此,按下式对RGB三分量进行加权平均能得到较合理的灰度图像。
f(i,j)=(i,j)+0.59G(i,j)+(i,j))
3.4.2灰度图像二值化
二值图像(即每个像素只有两个灰度值,只用一位二进制码来描述)是一种常用的灰度图像特征的描述方式,可以规定用“1”表示白(暗),“0”表示黑(亮),这样一幅二值图像就可用一个由“0,1”码构成的二维数组来表示。
在数字图像处理中,二值图像占有非常重要的地位,特别是在实用的图像处理中,以二值图像处理实现而构成的系统是很多的,要进行二值图像的处理与分析,首先要把灰度图像二值化,得到二值化图像,这样有利于对图像做进一步处理时。
二值图像在中应用非常广泛,由于二值图像只有两个灰度级,因此使得二值图像既具有存储空间小,处理速度快的特点,又可以方便对图像进行布尔等。
更重要的是,在二值图像的基础上,还可以进一步对,获得该图像的一些或者其他更多特征。
在进行了灰度化处理之后,图像中的每个象素只有一个值,那就是像素的灰度值。
它的大小决定了像素的亮暗程度。
为了更加便利的开展下面的图像处理操作,还需要对已经得到的灰度图像做一个二值化处理。
图像的二值化处理就是二值化处理是将数字图像转化为由0,1表示的二值像素矩阵形式,最简单也是最原始的作法是将整个数字所在区域用m*n网格划分,然后将图像中数字通过的网格内填1,不通过的网格内填0,这样就将整个数字变为一个由0和1两个值构成的矩阵。
即将256个亮度等级的灰度图像通过适当的阈值选取而获得仍然可以反映图像整体和局部特征的二值化图像。
和灰度化相似的,图像的二值化也有很多成熟的算法。
它可以采用自适应阈值法,也可以采用给定阈值法。
系统中采用的是给定阈值的方法。
因为考虑到所要进行处理的图像大多是从印刷出版物上扫描得来的底色大多为白色所以我们将这个阈值固定为220,读者也可以根据实际的情况来自己进行阈值的设定。
第4章数字识别
数字识别原理[6]
基于数字结构,我们抽取了数字的4种特征:
横线特征,竖线特征,水平方向过线数,垂直方向过线数。
4.1.1横线特征
根据数字的结构特征,数字中有可能存在横线。
于是,在水平方向上,定义比例:
HoriR=nHBlackNum/nWidth
其中:
nWidth为图像的宽度,用像素点个数来度量,nHBlackNum为水平方向上黑像素点连续出现的个数。
若<=HoriR<=1,则认为该数字中这些连续出现的黑像素点构成了一条横线。
由于数字中的横线是有一定的宽度的,因此在水平扫描线顺序扫描时,相邻的几条横线,将其视为同一条横线。
根据横
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 毕业设计 论文 模板