




已阅读5页,还剩5页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数字图像处理课程设计报告手写阿拉伯数字的识别1、课程设计目的1)、 提高分析问题、解决问题的能力,进一步巩固数字图像处理系统中的基本原理与方法。2)、 掌握文献检索的方法与技巧。3)、 熟悉掌握一门计算机语言,可以进行数字图像的应用处理的开发设计。2、方法综述 字符识别处理的信息可分为两大类:一类是文字信息,处理的主要是用各国家、各民族的文字(如:汉字,英文等)书写或印刷的文本信息,目前在印刷体和联机手写方面技术已趋向成熟,并推出了很多应用系统;另一类是数据信息,主要是由阿拉伯数字及少量特殊符号组成的各种编号和统计数据,如:邮政编码、统计报表、财务报表、银行票据等等,处理这类信息的核心技术是手写数字识别。本次实验是对手写的阿拉伯数字进行识别,主要步骤包括预处理模块(其中用到图像分割方法),特征提取和利用人工神经网络(具体运用bp神经网络方法)进行数字的识别。2.1图像分割:图像分割就是把图像分成若干个特定的、具有独特性质的区域并提出感兴趣目标的技术和过程。它是由图像处理到图像分析的关键步骤。现有的图像分割方法主要分以下几类:基于阈值的分割方法、基于区域的分割方法、基于边缘的分割方法以及基于特定理论的分割方法等。2.1.1基于阈值的分割方法 灰度阈值分割1法是一种最常用的并行区域技术,它是图像分割中应用数量最多的一类。阈值分割方法实际上是输入图像f到输出图像g的如下变换: 其中,t为阈值,对于物体的图像元素g(i,j)=l,对于背景的图像元素g(i,j)=0。 由此可见,阈值分割算法的关键是确定阈值,如果能确定一个合适的阈值就可准确地将图像分割开来。阈值确定后,将阈值与像素点的灰度值比较和像素分割可对各像素并行地进行,分割的结果直接给出图像区域。阈值分割的优点是计算简单、运算效率较高、速度快。在重视运算效率的应用场合(如用于硬件实现),它得到了广泛应用。人们发展了各种各样的阈值处理技术,包括全局阈值、自适应阈值、最佳阈值等等。2.1.2基于边缘的分割方法图像分割的一种重要途径是通过边缘检测,即检测灰度级或者结构具有突变的地方,表明一个区域的终结,也是另一个区域开始的地方。这种不连续性称为边缘。不同的图像灰度不同,边界处一般有明显的边缘,利用此特征可以分割图像。图像中边缘处像素的灰度值不连续,这种不连续性可通过求导数来检测到。对于阶跃状边缘,其位置对应一阶导数的极值点,对应二阶导数的过零点(零交叉点)。因此常用微分算子进行边缘检测。常用的一阶微分算子有roberts算子、prewitt算子和sobel算子,二阶微分算子有laplace算子和kirsh算子等。在实际中各种微分算子常用小区域模板来表示,微分运算是利用模板和图像卷积来实现。这些算子对噪声敏感,只适合于噪声较小不太复杂的图像。由于边缘和噪声都是灰度不连续点,在频域均为高频分量,直接采用微分运算难以克服噪声的影响。因此用微分算子检测边缘前要对图像进行平滑滤波。2.1.3基于小波变换的分割方法小波变换是近年来得到了广泛应用的数学工具,它在时域和频域都具有良好的局部化性质,而且小波变换具有多尺度特性,能够在不同尺度上对信号进行分析,因此在图像处理和分析等许多方面得到应用。基于小波变换的阈值图像分割方法的基本思想是首先由二进小波变换将图像的直方图分解为不同层次的小波系数,然后依据给定的分割准则和小波系数选择阈值门限,最后利用阈值标出图像分割的区域。整个分割过程是从粗到细,有尺度变化来控制,即起始分割由粗略的l2(r)子空间上投影的直方图来实现,如果分割不理想,则利用直方图在精细的子空间上的小波系数逐步细化图像分割。分割算法的计算馈与图像尺寸大小呈线性变化。2.2特征提取特征提取是计算机视觉和图像处理中的一个概念。它指的是使用计算机提取图像信息,决定每个图像的点是否属于一个图像特征。特征提取的结果是把图像上的点分为不同的子集,这些子集往往属于孤立的点、连续的曲线或者连续的区域。2.2.1结构特征提取方法采用结构特征提取对字符进行结构分析从而达到识别的目的,是一种非常直观的方法,其思想与人认字的原理有点相象,但又有所不同。其基本思想是:字符可以逐级分解成部件、笔划乃至笔段,识别时可以自底向上,由象素得到笔段,由笔段结合成笔划,由笔划构成部件,由部件组成字符,逐级分析字符图象的结构,根据各元素的属性、数量及其相互关系,便可以判定待识字符。目前研究较成熟,效果比较好的是基于笔划和基于笔段分析的手写体字符识别。2.2.2统计特征提取方法 从统计模式识别的观点来看,字符识别实际上是一个模式分类问题,人对自然物体的识别,是建立在对该物体进行学习、特征分析的基础上的,计算机模式识别的过程与人的识别过程有着相识的地方。实际上就是一种通过学习或者其它方法,形成一个一记忆知识库,进行模式识别时,清晰地表达出一种从物体到记忆知识库的映像,从而得到识别结果。人在进行物体识别时,是利用大脑中通过学习形成的记忆库,对识别的物体进行一种黑箱式的映像,从记忆库中找出相匹配的类别。计算机要把人类识别物体时的这种黑箱式的映像表达出来,一般是由两个步骤来完成的:第一步,以适当的特征来描述物体,即由xi、f(xi)的映像;第二步,计算机执行某种运算完成由f(xi)*c(x)二x的映像。2.2.3纹理特征提取方法纹理特征和颜色特征类似,它也是一种整体性的特征近些年来,对纹理分析方法的各种理论或方法在纹理特征提取中的应用已经基本成形,和把纹理特征提取方法归纳为类,即结构方法、信号处理方法、几何方法、模型方法和统计方法这种分类方法被大多学者采纳灰度共生矩阵()是被广泛应用的纹理提取算法,是分析图像的基础,它运用统计学中的概率来反映图像灰度有关方向和间隔等整体信息2.3.识别的方法 本次实验采用人工神经网络的方法进行识别,人工神经网络(artificia neural network)至今还没有一个比较科学和权威的定义。有一种定义是:“人工神经网络是生理学上的真实人脑神经网络的结构和功能,以及若干基本特征的某种理论抽象,简化和模拟而构成的一种信息处理系统。”从系统观点看,人工神经网络是由大量神经元通过极其丰富和完善的联接而成的,模拟大脑的基本特性的自适应非线性动态系统。神经元之间的连接方式不同,神经网络的结构形态也就不同。具体的生理学上的定义本文不再展开赘述。2.3.1 bp神经网络神经网络的应用已经渗透到各个领域中,包括金融、股票预测,自动控制,机器人,模式识别,计算机视觉和图像处理,信号处理等等,其中软件模拟的bp网络是应用最多、最成功的网络。本次课程设计是基于bp神经网络对手写阿拉伯数字进行识别,故下文介绍关于bp神经网络的概念。 bp(back propagation)网络又叫误差反向传播网络,是由美国加利福尼亚大学的pdp小组提出的一种神经网络算法,实现了minsky和papert认为不能实现的多层网络的设想。bp算法的基本思想是,学习过程由信号的正向传播与误差的反向传播两个过程组成。正向传播时,输入样本从输入层传入,经各隐藏层逐层处理后,传向输出层。若输出层的实际输出与期望的输出(教师信号)不符,则转入误差的反向传播阶段。误差反传是将输出误差以某种形式通过隐藏层向输入层反传,并将误差分摊给各层的所有单元,从而获得各层单元的误差信号,此误差信号即作为修正各单元权值的依据。这种信号正向传播与误差反向传播的各层权值调整过程,是周而复始地进行的。权值不断调整的过程,也就是网络的学习训练过程。此过程一直进行到网络输出的误差减少到可接受到的程度,或进行到预先设定的学习次数为准。 2.3.2bp网络的优缺点 bp网络的算法是最著名的多层前向网络训练算法,尽管存在收敛速度慢,局部极值等缺点,但可通过各种改进措施来提高它的收敛速度,克服局部极值现象。而bp网络算法的优点也是显而易见的,它具有简单,易行,计算量小,并行性强等特点,目前仍是许多数字识别的优选算法。3、实验结果与分析 3.1系统的流程图 基于bp神经网络的手写体数字识别系统大致可以分为输入、预处理、特征提取、bp神经网络识别4个部分。输入包括数字样本集扫描输入和待识别数字输入,先用数字样本集扫描输入图像经预处理后特征提取的特征向量来训练神经网络,再用训练好的神经网络来识别待识别数字。预处理部分包括二值化、分割,再对预处理后二值点阵图像进行特征提取。最后将所提取的特征量输入训练好的神经网络进行识别,输出识别结果。基于bp神经网络的手写体数字识别系统的结构及流程如图2所示。 开始读入需要识别数字的图像将图像转化为灰度图像将灰度图像转化为二值图像图像分割预处理模块特征提取进行数字的识别图2:手写阿拉伯数字识别系统的流程图3.2预处理模块由于扫描输入的图像一般为rgb格式,预处理首先需要将其转化为二值化的图像,即只包含“0”、“1”的矩阵形式。先将原始图像转化为灰度图像, 通过函数rgb2gray来实现,再通过函数im2bw转化为二值图像,然后对二值化后的图像进行分割处理,本实验采用基于字符连通域的分割。由于对数字的书写有一定要求,两个字符之间不能出现连笔的情况,因此可以对二值图像各个分离部分进行标注来分割字符,用函数bwlabel来实现。用函数regionprops来度量图像区域属性, 包括属性boundingbox( 表示各标注区域的最小矩形) 和centroid(表示各区域的质心)。通过对各个区域标注及各个区域起点坐标和区域范围(包括宽度和高度)的确定来截取字符, 所用函数为imcrop,最后调用函数imresize对图像进行归一化处理。通过归一化以消除各数字在位置和大小上的差异,从而提高识别的准确率。归一化处理后的字符便可进行特征向量提取。部分程序代码如下所示:function img = edu_imgpreprocess(i)igray = rgb2gray(i);ibw = im2bw(igray,graythresh(igray);%将图像转化为二值图像function bw2 = edu_imgcrop(bw)% 对图像进行裁剪(crop the image to the edge)bw2=imcrop(bw,x1,y1,(x2-x1),(y2-y1); x1=1;y1=1;x2=x2temp;y2=y2temp;图1:原始的图像 图2:进行预处理之后的过程和图像3.3特征提取:通过粗网格方法来提取特征,粗网格特征是一组注重字符图像整体的分布特征,此种特征对噪声具有极强的抑制能力。首先对分割后的字符归一化为7050的点阵,然后将此矩阵等分为75的网格,接着依次统计每一个网格内黑像素点(即“1”)的个数,得到一个以数字表示的75维的网格特征,将75维特征矩阵转变为一维特征,最后对其进行归一化操作。特征提取的是预处理之后图像上的像素点,然后送入到预设和训练好的bp神经网络进行识别。如图3所示,黑色的小点为所定义的7*5的网格特征,图中较明显的黑色点为所提取的特征、图3:对4进行特征提取相关代码:function lett = edu_imgresize(bw2)% this function will take the cropped binary image and change it to 5 x 7% character representation in single vector. bw_7050=imresize(bw2,70,50);%重新定义尺寸%粗网格的特征提取方法for cnt=1:7 for cnt2=1:5 atemp=sum(bw_7050(cnt*10-9:cnt*10),(cnt2*10-9:cnt2*10); lett(cnt-1)*5+cnt2)=sum(atemp); endend lett=(100-lett)/100);%特征向量的归一化lett=lett图4:实验中对7进行特征提取所得到的图像3.4数字的识别本实验采用bp网络的方法进行数字的识别,bp网络的基本结构如图5所示,网络由不同层次的节点集合组成,每一层节点的输出送到下一层节点。这些输出值由于连接权不同而被放大、衰减或抑制。除了输入层外,每一节点的输入为前一节点输出值的加权和。每一节点的激励输出值由节点输入、激励函数及闭值决定。图5:bp网络模型bp网络的学习算法使用梯度搜索技术,以期望网络的实际输出与期望输出的均方差最小。网络的学习是一种在误差反向转播的同时修正的过程。学习过程应包括两个阶段:前向计算阶段和反向调整阶段。在具体的实验过程中采用三层bp神经网络来实现。通过实验测试设定隐含层神经元数目为10,所以只需分类10个数字,设定输出层神经元数目为10。隐含层神经元的传递函数采用s型对数函数logsig, 输出层神经元传递函数也采用s 型对数函数logsig,此神经网络的训练函数采用trainlm,性能函数采用sse,训练步数最长设为5000,性能目标设为0.01。通过训练好的神经网络能对需要识别的数字进行识别。具体的代码如下所示:function net = edu_createnn(p,t)%创建神经网络alphabet = p;targets = t;r,q = size(alphabet);s2,q = size(targets);s1 = 10;s2=10;net = newff(minmax(alphabet),s1 s2,logsig logsig,trainlm);net.lw2,1 = net.lw2,1*0.01;net.b2 = net.b2*0.01;net.performfcn = sse; net.trainparam.goal = 0.01; net.trainparam.show = 20; net.trainparam.epochs = 5000; net.trainparam.mc = 0.95; p = alphabet;t = targets;net,tr = train(net,p,t); 图6:gui界面及实验结果3.5实验分析在本次课程实验中我对0到9这10个手写的数字进行识别,在实验过程中,发现该系统没办法达到百分之百的准确率,进行多次程序的调试这个问题仍然没办法得到改进。例如该系统有时会将8识别为1,将7识别为3,或者将7识别为2,但是对于4,5,6这三个数,识别的准确率能达到百分之百。存在错误的原因可能是在特征提取时一些手写的数字在7*5这个模版中体现的不够独一性,可以提高特征提取的维数,比如改成16*16模版进行提取,这样可能可以提高识别的准确率。还有一个原因可能是网络结构过于简单,本次实验采用了传统的bp网络对样本进行了分类,要适应各种变体是比较困难和不稳定的。在实际的应用中,可以采用多种方法改进bp网络的分类性能。比如说,对bp算法进行改进,组建多级bp网络,构建集成型神经网络,将支持向量机和bp网络结合等。实验中通过0-9这10个数字进行比对的具体准确率,如下表所示:数字样本个数识别个数错识个数准确率11010990%21010880%3101099%4101010100%5101010100%6101010100%71010880%81010990%91010990%0101010100%5、课程设计总结与体会 通过本次的课程设计使得我对手写阿拉伯数字识别系统的设计和运行有了深入的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025西医内科学考试题及答案
- 2024年高级营销师推销技巧知识试题(附含答案)
- 2025电工证考试题库及模拟考试答案低压电工考试题库高压电工考试题库
- 摩托安全知识培训
- 江西省上饶市2024-2025学年八年级下学期期末语文试题(解析版)
- 无损检测技术试题及答案
- 2025汽车买卖合同有效形式与范本
- 2025汽车销售合同范本 汽车销售合同
- 2025劳动合同范例
- 2025年福建省茶叶种植基地预约生产购销合同
- 2025年贵州贵阳市水务环境集团有限公司招聘27人笔试参考题库附带答案详解(10套)
- 2025届中国南方航空“明珠优才管培生”全球招聘30人笔试参考题库附带答案详解(10套)
- 2025新疆吐鲁番市法检系统面向社会招聘聘用制书记员23人考前自测高频考点模拟试题参考答案详解
- 《阿房宫赋》课件 统编版高中语文必修下册
- 2025年纪律作风测试题及答案
- 新《治安管理处罚法》培训考试题库附答案
- 银行联网核查管理办法
- 2025江苏苏州昆山国创投资集团有限公司第一期招聘17人笔试参考题库附带答案详解版
- 展会相关业务管理办法
- 安全生产网格化管理工作实施方案
- 电机维护检修培训课件
评论
0/150
提交评论