数字图像处理报告.doc_第1页
数字图像处理报告.doc_第2页
数字图像处理报告.doc_第3页
数字图像处理报告.doc_第4页
数字图像处理报告.doc_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

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

文档简介

基于MATLAB的字符识别研究汽车牌照识别程序的设计 姓名:苗盼盼 学号:201014018 院系:信息工程学院 指导老师:许丽 张帆摘要:本次课程设计的目的是通过对基于MATLAB的字符识别的研究,以汽车牌照识别的设计为实例,详细介绍字符识别的相关原理。整个汽车牌照识别的过程分为预处理、边缘提取、车牌定位、字符分割、字符识别五大模块,用MATLAB软件编程来实现每一个部分,最后识别出汽车牌照。关键词:MATLAB字符识别车牌识别神经网络图像处理1、 课程设计目的通过对课程设计任务的完成,能够掌握和熟悉加强对数字图像处理的理解;了解图像分割的基本原理和应用,起到综合运用各种技术和理论知识的作用。2、 背景及基本原理数字图像处理(Digital Image Processing)又称为计算机图像处理,它是指将图像信号转换成数字信号并利用计算机对其进行处理的过程。是通过计算机对图像进行去除噪声、增强、复原、分割、提取特征等处理的方法和技术。图像分割是一种重要的图像技术,在理论研究和实际应用中都得到了人们的广泛重视。图像分割的方法和种类有很多,有些分割运算可直接应用于任何图像,而另一些只能适用于特殊类别的图像。有些算法需要先对图像进行粗分割,因为他们需要从图像中提取出来的信息。许多不同种类的图像或景物都可作为待分割的图像数据,不同类型的图像,已经有相对应的分割方法对其分割,同时,某些分割方法也只是适合于某些特殊类型的图像分割。分割结果的好坏需要根据具体的场合及要求衡量。在本报告中是对车辆牌照中的文字和数字部分进行处理。1. 系统组成基于 MATLAB图像处理的汽车牌照识别系统主要包括车牌定位 字符车牌分割和车牌字符识别三个关键环节其识别流程图如图 1所示。原始图像图像预处理车牌定位字符分割字符数据库字符识别图1 识别流程图其中,(1) 原始图像:由数码相机或其它扫描装置拍摄到的图像;(2) 图像预处理:对动态采集到的图像进行滤波、边界增强等处理以克服图像干扰;(3) 车牌定位:计算边缘图像的投影面积,寻找峰谷点,大致确定车牌位置,再计算此连通域内的宽高比,剔除不在域值范围内的连通域,最后得到的便为车牌区域;(4) 字符分割:利用投影检测的字符定位分割方法得到单个的字符;(5) 字符数据库:为第6步的字符识别建立字符模板数据库;(6) 字符识别:通过基于模板匹配的OCR算法或基于人工神经网络的OCR算法,通过特征对比或训练识别出相关的字符,得到最后的汽车牌照,包括英文字母和数字。2. 图像预处理图像在形成 传输或变换过程中,受多种因素的影响,如:光学系统失真、系统噪声、曝光不足或过量、相对运动等,往往会与原始景物之间或图像与原始图像之间产生了某种差异,这种差异称为降质或退化。因此在图像处理之前必须进行预处理,包括去除噪音、边界增强、增加亮度等等。输入的彩色图像包含大量颜色信息,会占用较多的存储空间,且处理时也会降低系统的执行速度,因此对图像进行识别等处理时,常将彩色图像转换为灰度图像,以加快处理速度。对图像进行灰度化处理、边缘提取、再利用形态学方法对车牌进行定位。具体步骤如下:首先对图像进行灰度转换,二值化处理然后采用4X1的结构元素对图像进行腐蚀,去除图像的噪声。采用25X25的结构元素,对图像进行闭合应算使车牌所在的区域形成连通。再进行形态学滤波去除其它区域。3、 原代码及运行结果I=imread(1.jpg);figure(1)imshow(I);I1=rgb2gray(I);figure(2)imshow(I1);I2=edge(I1,robert,0.09,both);figure(3)imshow(I2);se=1;1;1; %线型结构元素 I3=imerode(I2,se); figure(4)imshow(I3);se=strel(rectangle,25,25); %矩形结构元素I4=imclose(I3,se); figure(5);imshow(I4);I5=bwareaopen(I4,2000);figure(6)imshow(I5);y,x,=size(I5);I6=double(I5);Y1=zeros(y,1);for i=1:y for j=1:x if(I6(i,j,1)=1) Y1(i,1)= Y1(i,1)+1; end endendfigure(6);subplot(1,2,1);plot(0:y-1,Y1),title(行像素灰度值累计),xlabel(行值),ylabel(像素和); temp, MaxY=max(Y1);PY1=MaxY;while (Y1(PY1,1)=80)&(PY11)PY1=PY1-7;endPY2=MaxY;while (Y1(PY2,1)=80)&(PY2y)PY2=PY2+7;endX1=zeros(1,x);for j=1:x for i=PY1:PY2 if(I6(i,j,1)=1) X1(1,j)= X1(1,j)+1; end endendsubplot(1,2,2);plot(0:x-1,X1),title(列像素灰度值累计),xlabel(列值),ylabel(像数和);PX1=1;while (X1(1,PX1)3)&(PX1x)PX1=PX1+7;endPX2=x;while (X1(1,PX2)PX1)PX2=PX2-7;endDW=I(PY1:PY2,PX1:PX2,:);figure(7)imshow(DW),title(车牌定位后图像);if isrgb(I)I1 = rgb2gray(I);elseI1 = I;end% 二值化车牌图像I1 = im2bw(I1,graythresh(I1);%二值化图像I2 = bwareaopen(I1,16);%去除小于16像素的区块figure(8);subplot(1,2,1);imshow(I2),title(二值化车牌图像);y,x=size(I2);I3=double(I2);X1=zeros(1,x);for j=1:xfor i=1:y if(I3(i,j,1)=1) X1(1,j)= X1(1,j)+1; endendendsubplot(1,2,2);plot(0:x-1,X1),title(车牌列像素点累计),xlabel(列值),ylabel(像素和);Px0=1;Px1=1;figure(9);for i=1:7while (X1(1,Px0)3)&(Px0=3)&(Px1x)|(Px1-Px0)10) Px1=Px1+1;endZ=I2(:,Px0:Px1,:);switch strcat(Z,num2str(i) case Z1 PIN0=Z; case Z2 PIN1=Z; case Z3 PIN2=Z; case Z4 PIN3=Z; case Z5 PIN4=Z; case Z6 PIN5=Z; otherwise PIN6=Z;endsubplot(1,7,i);imshow(Z);Px0=Px1;End4、 心得体会 本次实现遇到的问题主要是刚开始查了些资料,但是没能计算出本次实验的参数值

温馨提示

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

评论

0/150

提交评论