您好,欢迎访问三七文档
燕山大学课程设计说明书题目:手写数字识别的实现学院(系):电气工程学院年级专业:08-自动化仪表学号:080103020179学生姓名:付成超指导教师:林洪彬程淑红教师职称:讲师讲师2010年12月24日燕山大学课程设计(论文)任务书院(系):电气工程学院基层教学单位:自动化仪表系学号080103020179学生姓名付成超专业(班级)自动化仪表设计题目手写数字识别实现设计技术参数通过由数字构成的图像,自动实现几个不同数字的识别,设计识别方法,有较高的识别率设计要求设计图像中不同数字的识别方法,可以先从两个数字的识别开始,尽量实现多个不同数字的识别。设计中应该有自己的思想、设计体会工作量1.分析图像特征,查阅相关资料,根据图像的特征提出解决问题的思路。2.查阅相关资料,学会MATLAB的编程方法3.根据解决思路,编辑程序,根据调试结果,修改相应思路,找出最佳解决方案工作计划周一分析图像,查阅各种资料,提出可行的解决方案。周二熟悉MATLAB软件,学会软件的简单编程方法。周三根据可行的方法,编写程序,调试并修改方案。周四根据调试结果,选取最佳方案并完成设计论文。周五进一步完善设计论文,准备论文答辩。参考资料[]MICHAELSIPSER著,张立昂等译,《计算理论导引》,机械工业出版社,2000。[2]王晓龙,关毅等编,《计算机自然语言处理》,清华大学出版社,2005。[3]R.C.Gonzales等著,阮秋崎等译,《数字图像处理》,电子工业出版社,2002。[4]王文杰等编,《人工智能原理》,人民邮电出版社,2003。指导教师签字基层教学单位主任签字2010年12月24日燕山大学课程设计评审意见表指导教师评语:工作态度认真较认真不认真理论分析正确完善较为合理一般较差方法设计完善合理一般较差成绩:指导教师:年月日答辩小组评语:原理清晰基本掌握了解不清楚设计结论正确基本正确不正确成绩:评阅人:年月日课程设计总成绩:答辩小组成员签字:赵彦涛、吴飞、林洪斌、程淑红2010年12月24日-1-燕山大学课程设计说明书第1页共8页数字图像中手写数字识别的实现摘要:数字图像处理(DigitalImageProcessing)又称为计算机图像处理,它是指将图像信号转换成数字信号并利用计算机对其进行处理的过程。图像中手写阿拉伯数字的识别和其他模式的识别所采用的方法是多种多样的。本文论述了图像中手写阿拉伯数字的识别过程,并对手写数字识别的三种方法(基于规则的方法、基于统计的方法和基于神经网络的方法)进行了简要介绍和分析,并通过实例重点对基于规则的方法进行了描述。最后是对这些方法的简要评价。关键字:二值化投影矩阵目标定位matlab-2-燕山大学课程设计说明书第2页共8页目录1、手写数字图像识别简介.........................................................................32、正文:手写数字图像识别的主要流程.................................................3第一步........................................................................................3第二步............................................................................................4第三步............................................................................................5第四步............................................................................................53、程序..........................................................................................................54、体会...........................................................................................................85、参考文献-3-燕山大学课程设计说明书第3页共8页1.手写数字图像识别简介手写阿拉伯数字识别是图像内容识别中较为简单的一个应用领域,原因有被识别的模式数较少(只有0到9,10个阿拉伯数字)、阿拉伯数字笔画少并且简单等。手写阿拉伯数字的识别采用的方法相对于人脸识别、汉字识别等应用领域来说可以采用更为灵活的方法,例如基于规则的方法、基于有限状态自动机的方法、基于统计的方法和基于神经网络的方法等。本文的开始部分先对手写阿拉伯数字识别的整个处理流程进行论述,而这个流程也可以用于图像中其他模式的识别。当然这个处理流程也不是唯一的,可以根据不同的模式识别应用场景进行与之不同的预处理流程。2.正文:手写数字图像识别的主要流程在本文中,对图像进行设计中,对图像进行了以下四步处理。第一步:对源图像进行黑白二值化处理,如图1。-4-燕山大学课程设计说明书第4页共8页图1:0数字的二值化(左)和1的二值化处理(右)第二步:将图像在水平方向上和竖直方向上进行投影,这样通过投影图形就可以区分1和0的特征。如下图1和2:图1:0图像的投影图2:1图像的投影-5-燕山大学课程设计说明书第5页共8页第三步:用投影计算出区域的横纵坐标,将其分为九份。定位出数字所在图像中的位置,提取该部分进行分析。图1:1所在区域(左)和0所在的区域(右)第四步:数字0和1的特征比较与识别在0和一的比较中发现,在分成的九个区域的中间区域,0中间区域灰度为0,1中间区域灰度为1。3.程序i=imread('12.bmp');I=rgb2gray(i);%%%%彩色图像转化为灰度图像fmax2=double(max(max(I)));fmin2=double(min(min(I)));L2=(fmax2-(fmax2-fmin2)/3)/255;A=im2bw(I,L2);-6-燕山大学课程设计说明书第6页共8页forx=1:256fory=1:256if(A(x,y)==0)T(x,y)=1;elseT(x,y)=0;endendend%%%二值化T1=T.';i1=sum(T);i2=sum(T1);%%%投影forx=1:256if(i1(x)==0&&i1(x+1)0)a1=x,break;endendforx=a1:256if(i1(x)1&&i1(x+1)==0)a4=x+1,break;endend-7-燕山大学课程设计说明书第7页共8页fory=1:256if(i2(y)==0&&i2(y+1)0)b1=y,break;endendfory=b1:256if(i2(y)1&&i2(y+1)==0)b4=y+1,break;endend%%%分别取坐标a2=a1+(a4-a1)/3;a3=a4-(a4-a1)/3;b2=b1+(b4-b1)/3;b3=b4-(b4-b1)/3;%%%分成九分forx=1:256fory=1:256if(xb2&&xb3&&ya2&&ya3&&T(x,y)==1)w=1,break;elsew=0;end-8-燕山大学课程设计说明书第8页共8页endend4.体会通过上面的分析,我们可以看出,基于规则的方法,相对较为简单,比如手写阿拉伯数字识别等识别对象较少的情况,有比较少的时间复杂度和比较高的识别正确率,这种方法的关键在于规则的定义对模式是否有较高的区分度。样本库的规模越大,样本的分布越接近于实际情况,数字识别的正确率越高。这次的课程设计,虽然只是研究手写数字的识别,我们一个组的人相互相互讨论,交换意见和建议,并且包括了基础知识的积累、理论的成型、MATLAB语言编写和程序的使用、理论过程的MATLAB程序实现,和期间程序的不断编写和调试,可以说让我们对于MATLAB的数字图像处理整个过程都有了一个很完整和客观的认识。在课设中我学习到了团队的作用,只有不断的学习,不断的去思考,不断的去寻求答案,不断的去实践,你才会真的掌握一种技术。感谢老师这几天的指导,感谢这几天和我一起完成课设的同学们。我将会铭记这次宝贵的经验和这几天所有得到的快乐。
本文标题:手写数字识别的实现
链接地址:https://www.777doc.com/doc-7250778 .html