




已阅读5页,还剩9页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数字图像处理期末课程报告 题 目: 车牌识别的matlab实现 题目类型: 软件型 学 院 信息工程与自动化学院 专 业: 计算机科学与技术 年 级: xxxx 学 号: xxxxxxx 学生姓名: xxx 指导教师: xx 日 期: 2012-6-8 目录摘要:2关键词:2实验工具:2车辆牌照识别流程:2实验内容及步骤31.图像预处理:32.车牌定位车牌起始位置和终止位置53.图片二值化54.列方向像素点灰度值累计65.字符分割:76.建立字符模板数据库87.归一化训练9结果分析:13摘要:本次课程设计的目的是通过对基于matlab的字符识别的研究,以汽车牌照识别的设计为实例,详细介绍字符识别的相关原理。整个汽车牌照识别的过程分为预处理、边缘提取、车牌定位、字符分割、字符识别五大模块,用matlab软件编程来实现每一个部分,最后识别出汽车牌照。在研究的同时对其中出现的问题进行了具体分析,处理。寻找出对于具体的汽车牌照识别过程的最好的方法。关键词:matlab字符识别车牌识别神经网络图像处理实验工具:matlab 7.8(r2009a)。车辆牌照识别流程:基于 matlab图像处理的汽车牌照识别,主要包括车牌定位、字符车牌分割、和车牌字符识别三个关键环节。流程图如下:原始图像图像预处理车牌定位字符分割字符数据库字符识别其中,(1) 原始图像:由数码相机或其它扫描装置拍摄到的图像;(本实验图片由数码相机获得)(2) 图像预处理:对动态采集到的图像进行灰度处理、边缘检测、腐蚀、膨胀、滤波、等处理排除图像干扰;(3) 车牌定位:计算边缘图像的投影面积,寻找峰谷点,大致确定车牌位置,再计算此连通域内的宽高比,剔除不在域值范围内的连通域,最后得到的便为车牌区域;(4) 字符分割:利用投影检测的字符定位分割方法得到单个的字符;(5) 字符数据库:构造训练样本数据库,为第6步的字符识别建立字符模板数据库;(6) 字符识别:通过基于模板匹配的ocr算法或基于人工神经网络的ocr算法,通过特征对比或训练识别出相关的字符,得到最后的汽车牌照,包括英文字母和数字。实验内容及步骤1. 图像预处理:预处理源代码: i=imread(h:tukucar1.jpg);%读取图像 figure(); subplot(3,2,1),imshow(i), title(原始图像); i1=rgb2gray(i);%转化为灰度图像subplot(3,2,2),imshow(i1),title(灰度图像); i2=edge(i1,robert,0.09,both);%采用robert算子进行边缘检测subplot(3,2,3),imshow(i2),title(边缘检测后图像); se=1;1;1; %线型结构元素 i3=imerode(i2,se); %腐蚀图像subplot(3,2,4),imshow(i3),title(腐蚀后边缘图像); se=strel(rectangle,25,25); %矩形结构元素i4=imclose(i3,se);%图像聚类、填充图像subplot(3,2,5),imshow(i4),title(填充后图像); i5=bwareaopen(i4,2000);%去除聚团灰度值小于2000的部分subplot(3,2,6),imshow(i5),title(形态滤波后图像);预处理结果截图:行列方向像素值累计值: 源代码:y,x,z=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 end end temp maxy=max(y1); figure(); subplot(3,2,1),plot(0:y-1,y1),title(行方向像素点灰度值累计和),xlabel(行值),ylabel(像素);运行截图:2. 车牌定位车牌起始位置和终止位置py1=maxy; while (y1(py1,1)=45)&(py11) py1=py1-1; end py2=maxy; while (y1(py2,1)=45)&(py2y) py2=py2+1; end iy=i(py1:py2,:,:); 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(3,2,2),plot(0:x-1,x1),title(列方向像素点灰度值累计和),xlabel(列值),ylabel(像数);3. 图片二值化代码:if isrgb(dw) i1 = rgb2gray(dw); %将rgb图像转化为灰度图像else i1=i; endg_max=double(max(max(i1);g_min=double(min(min(i1);t=round(g_max-(g_max-g_min)/3); % t 为二值化的阈值m,n=size(i1);% d:二值图像%h=graythresh(i1);i1=im2bw(i1,t/256);subplot(3,2,4);imshow(i1),title(二值化车牌图像);运行截图:滤波二值化图像:i2=bwareaopen(i1,20);subplot(3,2,5);imshow(i2),title(形态学滤波后的二值化图像);过滤出目标车牌区域:y1,x1,z1=size(i2);i3=double(i2);tt=1;%去除图像顶端和底端的不感兴趣区域%y1=zeros(y1,1); for i=1:y1 for j=1:x1 if(i3(i,j,1)=1) y1(i,1)= y1(i,1)+1 ; end end endpy1=1;py0=1;while (y1(py0,1)20)&(py0=20)&(py1y1) py1=py1+1; endi2=i2(py0:py1,:,:);subplot(3,2,6);imshow(i2),title(目标车牌区域);运行截图:4. 列方向像素点灰度值累计代码:x1=zeros(1,x1);for j=1:x1 for i=1:y1 if(i3(i,j,1)=1) x1(1,j)= x1(1,j)+1; end end endfigure(5);plot(0:x1-1,x1),title(列方向像素点灰度值累计和),xlabel(列值),ylabel(累计像素量);运行截图:5. 字符分割:px0=1;px1=1;figure();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;end运行结果:6. 建立字符模板数据库1) 将下列图片存到相应的图片库中,待之后检测比对时用。(注:每个字符图像要单独存放为.jpg文件。) 2) 新建一个自定义函数pretreatment.m 文件,对这些图片进行统一处理:function inpt = pretreatment(i)if isrgb(i) i1 = rgb2gray(i);else i1=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:n for i=1:m inpt(1,m*(j-1)+i)=i1(i,j); endend7. 归一化训练代码:i0=pretreatment(imread(h:tuku0.jpg);i1=pretreatment(imread(h:tuku1.jpg);i2=pretreatment(imread(h:tuku2.jpg);i3=pretreatment(imread(h:tuku3.jpg);i4=pretreatment(imread(h:tuku4.jpg);i5=pretreatment(imread(h:tuku5.jpg);i6=pretreatment(imread(h:tuku6.jpg);i7=pretreatment(imread(h:tuku7.jpg);i8=pretreatment(imread(h:tuku8.jpg);i9=pretreatment(imread(h:tuku9.jpg);i10=pretreatment(imread(h:tukua.jpg);i11=pretreatment(imread(h:tukub.jpg);i12=pretreatment(imread(h:tukuc.jpg);i13=pretreatment(imread(h:tukud.jpg);i14=pretreatment(imread(h:tukug.jpg);i15=pretreatment(imread(h:tukuk.jpg);i16=pretreatment(imread(h:tukul.jpg);i17=pretreatment(imread(h:tukum.jpg);p=i0,i1,i2,i3,i4,i5,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.goal=0.0000000001;net=init(net);net,tr=train(net,p,t);%训练样本测试字符代码:pin0=pretreatment(pin0);pin1=pretreatment(pin1);pin2=pretreatment(pin2);pin3=pretreatment(pin3);pin4=pretreatment(pin4);pin5=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; elseif (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=str; case 5 str5=str; case 6 str6=str; otherwise str7=str; 第一次识别结果 endend第二次训练第二次识别结果第三次训练 第三次识别结果第四次训练第四次识别结果结果分析:车辆牌照识别,对于交通管理、治安处罚等工作的智能化起着十分重要的作用。它可广泛应用于交通流量检测,交通控制于诱导,机场,港口,小区的车辆管理,不停车自动收费,闯红灯等违章车辆监控以及车辆安全防盗等领域,具有广阔的应用前景。由于牌照是机动车辆管理的唯一标识符号,因此,车辆牌照识别系统的研究在机动车管理方面具有十分重要的实际意义。本设计有以下几条优点:(1) 充分利用matlab中已有的函数库,使整个程序设计简单易行;(2) 使用了matlab的自定义函数功能,使程序设计更简洁但也发现了更多的缺点:(1)
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年宠物美容师高级面试题
- 2025年药物滥用公共卫生安全教育题及答案
- 2025年人际关系心理学考试试题及答案解析
- 2025年宠物动物营养学初级考试重点题
- 2025年建筑工程师执业资格考试试题及答案解析
- 2025年家政服务管理师职业资格考试试题及答案解析
- 2025年安全生产培训题库及模拟测试
- 2025年电子竞技行业入门初级面试预测题解析
- 2025年养老机构等级评定预测题
- 2025年公共关系执行师专业知识考试试题及答案解析
- 养老护理员基础照护试题(含参考答案)
- 教师职业技能提升培训教程
- 2025年安徽省宿州市辅警协警笔试笔试测试卷(含答案)
- 2025年医院财务科招聘考试题目(附答案)
- 高血压病例汇报
- 六年级上册语文1-8单元习作范文
- 第10课 公共场所言行文明 第1课时(课件)2025-2026学年道德与法治三年级上册统编版
- 2025年污水操作考试题库及答案
- 2025年江西九江辅警考试题目及答案
- 2025至2030中国AI工业质检行业市场发展现状及布局案例与发展趋势分析与未来投资战略咨询研究报告
- 物业管理员职业技能大赛线上试题及答案
评论
0/150
提交评论