用MATLAB确定图像中某一字母位置_第1页
用MATLAB确定图像中某一字母位置_第2页
用MATLAB确定图像中某一字母位置_第3页
用MATLAB确定图像中某一字母位置_第4页
用MATLAB确定图像中某一字母位置_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、用MATLAB确定图像中字母的区域姓名:张坤峰学号:13721495目录1 绪论31.1引言31.2背景及意义31.3字符识别原理概述31.4主要工作42图像预处理52.1输入待处理的原始图像:52.2图像的灰度化:52.3进行开操作得到背景图像:62.4对图像进行增强处理:62.5取得最佳阈值,图像二值化:73字母的定位83.1设计算法83.2图像的变换公式83.3主程序93.4 结果及分析94总结101 绪论1.1引言视觉信息是人的主要感觉来源,人类认识外在世界的信息很多是通过视觉提供的。人类是通过眼睛与大脑来获取、处理和理解视觉信息的。视觉不仅指对光信号的感受,它包括了对视觉信息的获取、

2、传输、处理、存储与理解的全过程。·语言和文字是人类文明的标志,也是人们进行交流和沟通的主要媒介。随着计算机、信息技术的高速发展,使用计算机处理和识别文字信息也就成为了一个非常重要的研究领域。计算机文字识别,又称之为光电字符识别(Optical Character Recognition,OCR),就是利用一定的光电设备将印刷或手写在纸(或其它介质)上的字符输入到计算机中并对其进行自动辨识。字符识别技术是模式识别的一个重要分支,它涉及模式识别、图像处理、数字信号处理、自然语言理解、人工智能、模糊数学、信息论、计算机等学科,是一门综合性技术。1.2背景及意义计算机视觉研究的主要是通过计算

3、机分析景物的二维图像,从中获得三维世界的结构和属性等信息。目前,计算机视觉己在遥感图像分析、文字识别、医学图像处理等领域取得了广泛应用。 尽管人们对字符识别的研究已从事了很长时间,并已取得了很多成果,但到目前为止,机器的识别本领还无法与人的认知能力相比,这仍是一个有难度的开放问题,因此它们对于模式识别等学科和理论来说,仍有较强的研究价值和意义。同时,字符识别的研究,对于进一步提高复杂环境条件下的文字识别的准确率,解决视频图像的文字检测和识别,手写体等各种文字的识别,以及对各种图像识别技术和应用问题,都具有重要的借鉴和启发作用。1.3字符识别原理概述字符识别实质上就是由计算机自动识别各种字符,生

4、成计算机可识别的内部编码。本文内容是字母识别。目前,字母识别中有两个主要研究方向,一是新的识别算法的研究,使得一些复杂的或运算量大的算法能够得以实现。二是集成方法的研究,字符集成识别是综合集成方法论与字符识别技术的结合。它一方面寻求新的特征提取和识别方法,另一方面着眼于系统的体系结构。由于采用多种识别方法,多种字符特征,并针对具体问题有效地将多个识别器组合管理起来,特征之间具有多样化的关系,最终的识别效果通常会优于每一个成员分类器。一个基本的字符识别系统可以用下面的框图来概括,主要由计算机视觉系统和模式识别系统两大部分组成,其中计算机视觉系统包括图像的采集模块、图像的预处理模块和图像分割模块,

5、模式识别系统包括特征提取模块和识别模块,如图11所示:图像的采集是指借助光学数字影像设备(光学扫描仪,数码相机,数码摄像机)将需要识别的字符图像转换成数字图像输入到计算机系统。图像预处理是把原始图像转化为较为理想的灰度图像,去除图像中的噪声畸变等现象,增强图像中有用的信息,以便于识别。预处理是字符识别的第一步,占有十分重要的地位,预处理的好坏将直接影响识别方法的难易及识别结果的好坏。预处理做得好,使反映字符本质特征的部分突显出来,识别率高且识别速度快。反之,就会使识别变得困难,甚至造成误识。图像分割模块是将图像中的目标从背景中分割出来,这一步也至关重要。特征提取是将待识别图像中有代表性的特征提

6、取出来,并对提取的大量特征进行简化和分类,以便于识别。字符特征一般分为两大类:结构特征和统计特征。最后所提取的特征交给分类器模块进行比较计算,给出鉴别结果。字符识别的后处理是指根据字符所处的上下文或者其它约束条件,对识别结果的校正或检验。在本文中我们的工作内容到图像的分割模块。1.4主要工作字符识别具有广阔的前景,仍有许多技术难点需要解决。本文研究了字母块图像预处理、特征提取、字母分割的过程,主要有以下几个方面的工作:(1) 预处理阶段本文的研究对象是字母的识别,其背景单一但难以区分,但字母数量有限,且是印刷体,形状规则。根据以上特点,本文首先将图像进行灰度化,将图像转换为只包含亮度信息的灰度

7、图像,以达到改善画质和增强对比度的目的;其次对图像进行了增强操作,突出图像中感兴趣的区域。图像增强实质上消除或减弱噪声,改善图像质量,使图像变清晰的过程。在预处理阶段,本文还研究了图像的平滑去噪,抑制或减弱了噪声影响,达到改善画质的目的。最后的处理阶段是图像的边缘检测,根据图像边缘灰度有跳跃变化的特性,检测出图像边缘,将感兴趣区域与背景图像分离。(2)字母块图像定位与分割在进行了上述预处理操作之后,字母块图像已经从背景中分离出来,但是要实现字母的识别还需将字母分割出来。字母的位置确定之后,结合字母的特点采用自适应阈值方法将字母分割出来,以待识别。2图像预处理2.1输入待处理的原始图像:clea

8、r ;close all;%Step1 获取图像 装入待处理彩色图像并显示原始图像Scolor = imread('text.jpg');%imread函数读取图像文件图2.1原始图像2.2图像的灰度化:彩色图像包含着大量的颜色信息,不但在存储上开销很大,而且在处理上也会降低系统的执行速度,因此在对图像进行识别等处理中经常将彩色图像转变为灰度图像,以加快处理速度。由彩色转换为灰度的过程叫做灰度化处理。选择的标准是经过灰度变换后,像素的动态范围增加,图像的对比度扩展,使图像变得更加清晰、细腻、容易识别。%将彩色图像转换为黑白并显示Sgray = rgb2gray(Scolor);

9、%rgb2gray转换成灰度图figure,imshow(Sgray),title('原始黑白图像');图2.2原始黑白图像2.3进行开操作得到背景图像:s=strel('disk',13);%strei函数Bgray=imopen(Sgray,s);%打开sgray s图像figure,imshow(Bgray);title('背景图像');%输出背景图像图2.3背景图像2.4对图像进行增强处理:Egray=imsubtract(Sgray,Bgray);%两幅图相减figure,imshow(Egray);title('增强黑白图像&

10、#39;);%输出黑白图像图2.4黑白图像2.5取得最佳阈值,图像二值化:二值图像是指整幅图像画面内仅黑、白二值的图像。在实际的车牌处理系统中,进行图像二值变换的关键是要确定合适的阀值,使得字符与背景能够分割开来,二值变换的结果图像必须要具备良好的保形性,不丢掉有用的形状信息,不会产生额外的空缺等等。车牌识别系统要求处理的速度高、成本低、信息量大,采用二值图像进行处理,能大大地提高处理效率。阈值处理的操作过程是先由用户指定或通过算法生成一个阈值,如果图像中某中像素的灰度值小于该阈值,则将该像素的灰度值设置为0或255,否则灰度值设置为255或0。fmax1=double(max(max(Egr

11、ay);%egray的最大值并输出双精度型fmin1=double(min(min(Egray);%egray的最小值并输出双精度型level=(fmax1-(fmax1-fmin1)/3)/255;%获得最佳阈值bw22=im2bw(Egray,level);%转换图像为二进制图像bw2=double(bw22);figure,imshow(bw2);title('图像二值化');%得到二值图像图2.5二值图像3字母的定位3.1设计算法此次,我们希望在图像text.jpg中定位字母“a”,那么我们首先将包含字母“a”的图像与text.jpg图像进行相关运算,也就是首先将字母a

12、和图像text.jpg进行傅立叶变换,然后利用快速卷积的方法,计算字母a和图像text.jpg的卷积,提取卷积运算的峰值,然后选择一个适当阈值,只显示像素超过阈值的,从而得到白色亮点,这即是在图像text.jpg中对字母a”的定位结果。3.2图像的变换公式(1) fft2fft2函数用于数字图像的二维傅立叶变换,如: i=imread('e:wtext.jpg'); j=fft2(i);(2) ifft2ifft2函数用于数字图像的二维傅立叶反变换,如: i=imread('e:wtext.jpg'); j=fft2(i); k=ifft2(j);(3) 利用f

13、ft2计算二维卷积利用fft2函数可以计算二维卷积,如: a=8,1,6;3,5,7;4,9,2; b=1,1,1;1,1,1;1,1,1; a(8,8)=0; b(8,8)=0; c=ifft2(fft2(a).*fft2(b); c=c(1:5,1:5);利用conv2(二维卷积函数)校验, 如: a=8,1,6;3,5,7;4,9,2; b=1,1,1;1,1,1;1,1,1; c=conv2(a,b);3.3主程序程序如下:I=imread('text.jpg');%读入图像text.jpga=I(28:62,16:48);%从图像中抽取字母a的图像subplot(2,

14、2,1),imshow(I);subplot(2,2,2),imshow(a);C=real(ifft2(fft2(I).*fft2(rot90(a,2),242,346);subplot(2,2,3),imshow(C,);thresh=11500000;%找到C中的那个最大值,选择一个小于该数的数值作为阈值subplot(2,2,4),imshow(C>thresh);%显示像素超过阈值的3.4 结果及分析将所用图片text.jpg放入MATLAB的work文件夹中,打开MATLAB新建M_file,将程序输进去,保存运行。运行结果如下图所示。图 运行结果右下角的图像中3个亮点就是原图中字母a的位置。4总结本文研究的是字母在图像中的定位,包括图像的采集、预处理以及定位字母的过程。在目前对图像处理方面的研究基础上,进行了更深一步的研究和改进。本文从字母块图像的采集和处理出发,涉及了数字图像处理、模式识别等理论与应用方面的研究,主要做了以下几点工作:1本文通过阅读大量文献,对字符识别的研究背景和国内外研究现状都有了深刻的了解,对于字母图像从采集到预处理再到字母的识别的过程进行了详细深入的研究。涉及到最佳方法的选择、

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论