版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、毕 业 论 文基于MATLAB的字符识别研究汽车牌照识别程序的设计摘要:本次课程设计的目的是通过对基于MATLAB的字符识别的研究,以汽车牌照识别的设计为实例,详细介绍字符识别的相关原理。整个汽车牌照识别的过程分为预处理、边缘提取、车牌定位、字符分割、字符识别五大模块,用MATLAB软件编程来实现每一个局部,最后识别出汽车牌照。在研究的同时对其中出现的问题进行了具体分析,处理。寻找出对于具体的汽车牌照识别过程的最好的方法。关键词:MATLAB字符识别车牌识别神经网络图像处理引言在MATLAB的字符识别研究中,汽车牌照的识别是最经典的样例,因为车辆牌照识别系统License Plate Reco
2、gnition System,简称LPRS是建设智能交通系统不可或缺的局部。基于 MATLAB 图像处理的汽车牌照识别系统是通过引入数字摄像技术和计算机信息管理技术,采用先进的图像处理 模式识别和人工智能技术,通过对图像的采集和处理,获得更多的信息,从而到达更高的智能化管理程度。车牌识别系统整个处理过程分为预处理、边缘提取、车牌定位、字符分割、字符识别五大模块,用 MATLAB软件编程来实现每一个局部处理工程,最后识别出汽车牌照。MATLAB及其图像处理工具概述MATLAB 是 MATrix LABoratory 矩阵实验室的缩写,是 Math Works 公司开发的一种功能强 效率高 简单易
3、学的数学软件。MATLAB 的图像处理工具箱,功能十分强大,支持的图像文件格式丰富,如 *.BMP、*.JPG、 *.JPEG、 *.GIF、 *.TIF 、*.TIFF、 *.PNG 、*.PCX、 *.XWD、 *.HDF、*.ICO 、*.CUR 等。MATLAB 7.X 提供了20 多类的图像处理函数,几乎涵盖了图像处理的所有技术方法,是学习和研究图像处理的人员难得的珍贵资料和加工工具箱。这些函数按其功能可分为:图像显示、 图像文件 I/O、图像算术运算、几何变换、图像登记、像素值与统计 图像分析、图像增强、线性滤波、线性二元滤波设计、图像去模糊、图像变换、邻域与块处理、灰度与二值图像
4、的形态学运算、基于边缘的处理、色彩映射表操作 色彩空间变换 图像类型与类型转换。MATLAB 还着重在图形用户界面GUI的制作上作了很大的改善,对这方面有特殊要求的用户也可以得到满足。本文将给出 MATLAB 的图像处理工具箱中的图像处理函数实现图像处理与分析的应用技术实例。基于 MATLAB图像处理的汽车牌照识别系统系统组成基于 MATLAB图像处理的汽车牌照识别系统主要包括车牌定位 字符车牌分割和车牌字符识别三个关键环节其识别流程图如图 1所示。原始图像图像预处理车牌定位字符分割字符数据库字符识别图1 识别流程图其中,原始图像:由数码相机或其它扫描装置拍摄到的图像;图像预处理:对动态采集到
5、的图像进行滤波、边界增强等处理以克服图像干扰;车牌定位:计算边缘图像的投影面积,寻找峰谷点,大致确定车牌位置,再计算此连通域内的宽高比,剔除不在域值范围内的连通域,最后得到的便为车牌区域;字符分割:利用投影检测的字符定位分割方法得到单个的字符;字符数据库:为第6步的字符识别建立字符模板数据库;字符识别:通过基于模板匹配的OCR算法或基于人工神经网络的OCR算法,通过特征比照或训练识别出相关的字符,得到最后的汽车牌照,包括英文字母和数字。图像预处理图像在形成 传输或变换过程中,受多种因素的影响,如:光学系统失真、系统噪声、曝光缺乏或过量、相对运动等,往往会与原始景物之间或图像与原始图像之间产生了
6、某种差异,这种差异称为降质或退化。因此在图像处理之前必须进行预处理,包括去除噪音、边界增强、增加亮度等等。输入的彩色图像包含大量颜色信息,会占用较多的存储空间,且处理时也会降低系统的执行速度,因此对图像进行识别等处理时,常将彩色图像转换为灰度图像,以加快处理速度。对图像进行灰度化处理、边缘提取、再利用形态学方法对车牌进行定位。具体步骤如下:首先对图像进行灰度转换,二值化处理然后采用4X1的结构元素对图像进行腐蚀,去除图像的噪声。采用25X25的结构元素,对图像进行闭合应算使车牌所在的区域形成连通。再进行形态学滤波去除其它区域。I=imread(CAR/0.jpg);%读取图片I1=rgb2gr
7、ay(I); %转化为灰度图像I2=edge(I1,robert,0.09,both); %采用robert算子进行边缘检测se=1;1;1; %线型结构元素 I3=imerode(I2,se); %腐蚀图像se=strel(rectangle,25,25); %矩形结构元素I4=imclose(I3,se); %图像聚类、填充图像I5=bwareaopen(I4,2000); %去除聚团灰度值小于2000的局部通过比照原始图片,我们可以发现形态滤波后的图像已经很接近正确的车牌位置了,因此后期处理将通过这张图来找出车牌位置。车牌定位观察经过预处理后得到的图像发现车牌位置有明显的矩形有明显的矩形
8、图样,通过对矩形区域的定位即可获得具体的车牌位置。车牌的行起始和终止位置确实定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();subplot(1,3,1);plot(0:y-1,Y1),title(行像素灰度值累计),xlabel(行值),ylabel(像素和); temp, MaxY=max(Y1);PY1=MaxY;while (Y1(PY1,1)=80)&(PY11)PY1=PY1-7;en
9、dPY2=MaxY;while (Y1(PY2,1)=80)&(PY2y)PY2=PY2+7;end车牌的列起始位置和终止位置确实定%绘制列曲线图X1=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,3,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=
10、PX2-7;end最后拼合获取的车牌在图像的行列位置DW=I(PY1:PY2,PX1:PX2,:);subplot(1,3,3);imshow(DW),title(车牌定位后图像);字符分割在汽车牌照自动识别过程中,字符分割有承前启后的作用。它在前期牌照定位的根底上进行字符的分割,然后再利用分割的结果进行字符识别。% 车牌图像转为灰度if isrgb(I)I1 = rgb2gray(I);elseI1 = I;end% 二值化车牌图像I1 = im2bw(I1,graythresh(I1);%二值化图像I2 = bwareaopen(I1,16);%去除小于16像素的区块figure();su
11、bplot(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();for i=1:7while (X1(1,Px0)3)&(Px0=3)&(Px1x)|(Px1-P
12、x0)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;end分割成七块后的车牌图像建立字符模板数据库模板库的合理建造是字符识别准确的关键之一,所以在字符识别之前必须把模板库设置好。汽车牌照的字符一般有 7 个,大局部车牌第一位
13、是汉字,通常代表车辆所属省份,或是军种 警别等有特定含义的字符简称;紧接其后的为字母与数字。车牌字符识别与一般文字识别在于它的字符数有限, 十个阿拉伯数字09, 26 个大写英文字母 AZ 以及相关的车牌用汉字:京、沪、苏、台、港、澳、甲、乙、丙、使、领、学、试、境、消、边、警等,以及新式军牌中的汉字南、兰、广、北、沈、济、空、海等;车牌颜色:蓝、白、黑、黄等。所以建立字符模板库也极为方便。通过前面实验获取的几幅不同的车牌图片截取到的图片加上使用PhotoShop制作的局部图片如下: 建立模板数据库时必须对这些图片进行统一处理,因为对前面处理分割后的车牌图像的测量得知单个字符的最正确宽高比是1
14、:2,所以将这些图片归一化为5025大小;因为之后的字符识别考虑使用神经网络算法进行字符识别,所以再将上面归一化后的模板图像的样本排列在一起构成125018的矩阵样本,程序设计如下:function inpt = Pretreatment(I)% 训练样本前期处理if isrgb(I) I1 = rgb2gray(I);elseI1=I;endI1=imresize(I1,50 25);%将图片统一划为50*25大小I1=im2bw(I1,0.9);m,n=size(I1);inpt=zeros(1,m*n);% 将图像按列转换成一个行向量for j=1:nfor i=1:m inpt(1,m
15、*(j-1)+i)=I1(i,j);endend这是一个自定义函数的Pretreatment.m 文件,可以解决频繁写重复代码的问题,前面的图像预处理及车牌定位的代码可以写进文件中,通过代码DW = Location(I); 取得车牌定位后的图像;同时字符分割的代码亦可写进StringSplit.m 文件中,可以通过代码PIN0,PIN1,PIN2,PIN3,PIN4,PIN5,PIN6=StringSplit(DW); 取得的字符分割后的图像。字符识别字符的识别目前用于车牌字符识别(OCR)中的算法主要有基于模板匹配的OCR算法以及基于人工神经网络的OCR算法。基于模板匹配的OCR的根本过程
16、是:首先对待识别字符进行二值化并将其尺寸大小缩放为字符数据库中模板的大小,然后与所有的模板进行匹配,最后选最正确匹配作为结果。用人工神经网络进行字符识别主要有两种方法:一种方法是先对待识别字符进行特征提取,然后用所获得的特征来训练神经网络分类器。识别效果与字符特征的提取有关,而字符特征提取往往比拟耗时。因此,字符特征的提取就成为研究的关键。另一种方法那么充分利用神经网络的特点,直接把待处理图像输入网络,由网络自动实现特征提取直至识别。本文主要研究基于人工神经网络的方法来识别车牌字符。设计代码如下:close all;clear all;% 归一化训练样本I0=pretreatment(imre
17、ad(BP/0.jpg);I1=pretreatment(imread(BP/1.jpg);I2=pretreatment(imread(BP/2.jpg);I3=pretreatment(imread(BP/3.jpg);I4=pretreatment(imread(BP/4.jpg);I5=pretreatment(imread(BP/5.jpg);I6=pretreatment(imread(BP/6.jpg);I7=pretreatment(imread(BP/7.jpg);I8=pretreatment(imread(BP/8.jpg);I9=pretreatment(imread(
18、BP/9.jpg);I10=pretreatment(imread(BP/A.jpg);I11=pretreatment(imread(BP/B.jpg);I12=pretreatment(imread(BP/C.jpg);I13=pretreatment(imread(BP/D.jpg);I14=pretreatment(imread(BP/G.jpg);I15=pretreatment(imread(BP/K.jpg);I16=pretreatment(imread(BP/L.jpg);I17=pretreatment(imread(BP/M.jpg);P=I0,I1,I2,I3,I4,I
19、5,I6,I7,I8,I9,I10,I11,I12,I13,I14,I15,I16,I17;T=eye(18,18); %输出样本% bp神经网络参数设置net=newff(minmax(P),1250,32,18,logsig,logsig,logsig,trainrp);net.inputWeights1,1.initFcn =randnr;net.layerWeights2,1.initFcn =randnr;net.trainparam.epochs=5000;net.trainparam.show=50;%net.trainparam.lr=0.003;net.trainparam.
20、goal=0.0000000001;net=init(net);net,tr=train(net,P,T);%训练样本% 测试I=imread(CAR/0.jpg);DW=Location(I);%车牌定位PIN0,PIN1,PIN2,PIN3,PIN4,PIN5,PIN6=StringSplit(DW);%字符分割及处理% 测试字符,得到识别数值PIN0=pretreatment(PIN0);PIN1=pretreatment(PIN1);PIN2=pretreatment(PIN2);PIN3=pretreatment(PIN3);PIN4=pretreatment(PIN4);PIN5=
21、pretreatment(PIN5);PIN6=pretreatment(PIN6);P0=PIN0,PIN1,PIN2,PIN3,PIN4,PIN5,PIN6;for i=2:7 T0= sim(net ,P0(:,i); T1 = compet (T0) ; d = find(T1 = 1) - 1; if (d=10) str=A; elseif (d=11) str=B; elseif (d=12) str=C; elseif (d=13) str=D; elseif (d=14) str=G; elseif (d=15) str=K; elseif (d=16) str=L; els
22、eif (d=17) str=M; elseif (d=0) str=0; elseif (d=1) str=1; elseif (d=2) str=2; elseif (d=3) str=3; elseif (d=4) str=4; elseif (d=5) str=5; elseif (d=6) str=6; elseif (d=7) str=7; elseif (d=8) str=8; elseif (d=9) str=9; else str=num2str(d); end switch i case 2 str2=str; case 3 str3=str; case 4 str4=st
23、r; case 5 str5=str; case 6 str6=str; otherwise str7=str; endend% 识别出的结果以标题形式显示在图上S=strcat(粤,str2,str3,str4,str5,str6,str7); figure();imshow(DW),title(S);第一次训练后识别出的车牌号码:发现第二个字符识别错误,在进行第二次识别:可以看出完成了准确识别车牌的目的。总结在汽车车牌识别的整个过程中,查找了很多资料,综合了各方面的信息。车牌实现的每一步都有许多的方法,各种方法都有其优劣,但是对于具体的图像处理,并不是每一种理论在实践中都可以实现,即使实现了也很难说哪一种方法最适宜,还得在具体的实验中比拟选择。第二点在程序调试的过程中要耐心的检查每一个错误。测试结果说明,本设计有以下几条优点:充分利用MATLAB中已有的函数库,使整个程序设计简单易行;使用了MATLAB的自定义函数功能,使程序设计更简洁。但也发现了更多的缺点:程序的局限性:只能针对图像中
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年天府新区航空旅游职业学院单招职业技能考试题库带答案详解(考试直接用)
- 2026年宁波幼儿师范高等专科学校单招职业适应性考试题库参考答案详解
- 2026年天津海运职业学院单招职业适应性考试题库及答案详解(网校专用)
- 农村土地承包经营权流转管理实施办法
- 2026年宁夏财经职业技术学院单招综合素质考试题库及答案详解(基础+提升)
- 2026年塔城职业技术学院单招职业倾向性测试题库附答案详解(典型题)
- 2026年天府新区信息职业学院单招职业倾向性测试题库含答案详解(b卷)
- 2026年天津海运职业学院单招职业技能测试题库附参考答案详解(预热题)
- 2026年天津交通职业学院单招职业倾向性测试题库附参考答案详解(模拟题)
- 2026年宁德职业技术学院单招职业适应性考试题库附答案详解(培优)
- 甲状旁腺护理查房课件
- DB35-T 2142-2023 在用货车油箱柴油采样规程
- 固定式真空绝热压力容器定期检验
- GB 18279-2023医疗保健产品灭菌环氧乙烷医疗器械灭菌过程的开发、确认和常规控制要求
- 新能源汽车概论(中职新能源汽车专业)PPT完整全套教学课件
- 天津高考英语词汇3500
- 知木林乡知木林村传统村落环境保护项目环评报告
- 铁路建设项目甲供甲控物资设备目录
- 平衡皮肤生态环境2对于肌肤护理起到课件
- 茶与茶文化-红茶课件
- 《汽车电路识图》课程标准
评论
0/150
提交评论