毕业设计]基于matlab的汽车牌照识别程序

上传人:ss****gk 文档编号:233084919 上传时间:2022-01-01 格式:DOCX 页数:12 大小:87.76KB
返回 下载 相关 举报
毕业设计]基于matlab的汽车牌照识别程序_第1页
第1页 / 共12页
毕业设计]基于matlab的汽车牌照识别程序_第2页
第2页 / 共12页
毕业设计]基于matlab的汽车牌照识别程序_第3页
第3页 / 共12页
毕业设计]基于matlab的汽车牌照识别程序_第4页
第4页 / 共12页
毕业设计]基于matlab的汽车牌照识别程序_第5页
第5页 / 共12页
点击查看更多>>
资源描述

《毕业设计]基于matlab的汽车牌照识别程序》由会员分享,可在线阅读,更多相关《毕业设计]基于matlab的汽车牌照识别程序(12页珍藏版)》请在金锄头文库上搜索。

1、基于matlab的汽车牌照识别程序摘要:本次作业的任务是设计一个基于matlab的汽车牌照识别程序,能够实现车牌图像预处 理,车牌定位,字符分割,然后通过神经网络对车牌进行字符识别,最终从一幅图像中提取 车牌中的字母和数字,给出文本形式的车牌号码。关键词:车牌识别,matlab,神经网络1引言随着我国交通运输的小断发展,智能交通系统(Intelligent Traffic System,简称ITS)的 推广变的越来越重要,而作为ITS的一个重要组成部分,车辆牌照识别系统(vehicle license plate recognition system,简称LPR)对于交通管理、治安处罚等工作的

2、智能化起着十分重要 的作用。它可广泛应用于交通流量检测,交通控制于诱导,机场,港口,小区的车辆管理, 不停车自动收费,闯红灯等违章车辆监控以及车辆安全防盗等领域,具有广阔的应用前景。 由于牌照是机动车辆管理的唯一标识符号,因此,车辆牌照识别系统的研究在机动车管理方 面具有十分重要的实际意义。2车辆牌照识别系统工作原理车辆牌照识别系统的基本工作原理为:将摄像头拍摄到的包含车辆牌照的图像通过视频 卡输入到计算机中进行预处理,再由检索模块对牌照进行搜索、检测、定位,并分割出包含 牌照字符的矩形区域,然后对牌照字符进行二值化并将其分割为单个字符,然后输入JPEG 或BMP格式的数字,输出则为车牌号码的

3、数字。3车辆牌照识别系统组成(1)图像预处理:对汽车图像进行图像转换、图像增强和边缘检测等。(2)车牌定位:从预处理后的汽车图像中分割出车牌图像。即在一幅车辆图像中找到车牌 所在的位置。(3)字符分割:对车牌图像进行几何校正、去噪、二值化以及字符分割以从车牌图像中分 离出组成车牌号码的单个字符图像(4)字符识别:对分割出来的字符进行预处理(二值化、归一化),然后分析提取,对分割出的字符图像进行识别给出文本形式的车牌号码。4汽车牌照识别系统的matlab实现4.1图像预处理与车牌定位输入的彩色图像包含大量颜色信息,会占用较多的存储空间,且处理时也会降低系统 的执行速度,因此对图像进行识别等处理时

4、,常将彩色图像转换为灰度图像,以加快处理 速度。对图像进行灰度化处理、边缘提取、再利用形态学方法对车牌进行定位。具体步骤 如下:首先对图像进行灰度转换,二值化处理然后采用4X1的结构元素对图像进行腐蚀,去 除图像的噪声。采用25X25的结构元素,对图像进行闭合应算使车牌所在的区域形成连通。 在进行形态学滤波去除其它区域。I=imread(DSC01344.jpg);% 读取图像figure(); subplot(3,2,l),imshow(I), title(原始图像);Il =rgb2gray;转化为灰度图像 subplot(3,2,2),imshow(Il ),title( 灰度图像);灰

5、度图像斜N79&8I2=edge(11 ,robert,0.09,both);% 采用 robert 算子进行边缘检测subplot。,2,3),imshow(I2),title(边缘检测后图像);边缘检测后图像se=l;l;l;%线型结构元素13=imerode(I2, se);%腐蚀图像subplot(3,2,4),imshow(I3),titleC 腐蚀后边缘图像腐蚀后边缘图像se=strel(rectangle ,25,25);矩形结构元素I4=imclose(I3,se);%图像聚类、填充图像 subplot(3,2,5),imshow(I4),title(* 填充后图像);填充后图

6、像I5=bwareaopen(I4,2000);%去除聚团灰度值小于2000的部分subplot(3,2,6),imshow(I5),title(形态滤波后图像);形态滤波后图像y,x,z=size(I5);I6=double(I5);Yl=zeros(y,l);for i=l:yfor j=l:xif(I6(i,j,l)=l)Yl(i,l)= Yl(i,l)+1;temp MaxY =max(Y 1); figure();subplot。,2,1),plot(0:y-l,Yl),title(行方向像素点灰度值累计和label(行值),ylabel(像素);行方向像素点灰度值累计和400200

7、400600行值%求的车牌的行起始位置和终止位置%PYl=MaxY;while (Y1 (PY1,1 )=50)&(PY1 1)PY1=PY1-1;endPY2=MaxY;while (Y1 (PY2,1 )=50)&(PY2y)PY2=PY2+1;endIY=I(PY1:PY2,:,:);Xl=zeros(l,x);for j=l:xfor i=PYl:PY2if(I6(i,j,l)=l)Xl(l,j)=Xl(l,j)+l;endend end subplot。,2,2),plot(0:x-l,XI),title(列方向像素点灰度值累计和),xlabel(列值),ylabel(像数);列方向

8、像素点灰度值累计和0200400600800列值%求的车牌的列起始位置和终止位置%PX1=1;while (Xl(l,PXl)3)&(PXlx)PX1=PX1+1;endPX2=x;while (X1 (1 ,PX2)PX 1)PX2=PX2-1;endPX1=PX1-1;PX2=PX2+1;%分割出车牌图像dw=I(PYl :PY2,PX1:PX2,:);subplot。,2,3),imshow(dw),title(,定位剪切后的彩色车牌图像)定位剪切后的彩色车牌图像楠M帖期4.2车牌字符分割确定车牌位置后下一步的任务就是进行字符切分分离出车牌号码的全部字符图像。ifisrgb(I)11=

9、rgb2gray(I);%将168图像转化为灰度图像else 11=1; endg_max=double(max(max(11);g_min=double(min(min(11);T=round(g_max-(g_max-g_min)/3); % T 为二值化的阈值m,n=size(Il);% d:二值图像%h=graythresh(11);Il=im2bw(Il,T/256);subplot(3,2,4);imshow(Il),title(二值化车牌图像);二值化车牌图像豳I2=bwareaopen(11,20);subplot(3,2,5);imshow( 12),title(形态学滤波后

10、的二值化图像);中值滤波后的二值化图像如,师Iyl,xl,zl=size(I2);I3=double(I2);TT=1;%去除图像顶端和底端的不感兴趣区域%Yl=zeros(yl,l);for i=l:ylforj=l:xlif(I3(i,j,l)=l)Yl(i,l)=Yl(i,l)+l ;endendendPyl=l;PyO=l;while (Y1 (PyO, 1 )20)&(Py0=20)&(Pylyl)Pyl=Pyl+l;endI2=I2(PyO:Pyl,:,:);subplot(3,2,6);imshow(I2),title(* 目标车牌区域);目标车牌区域%分割字符按行积累量%Xl=

11、zeros(l,xl);for j=l:xlfbr i=l:ylif(I3(i,j,l)=l)Xl(l,j)=Xl(l,j)+l;endendendfigure(5);plot(0:xl-l,Xl),title(冽方向像素点灰度值累计和),xlabel(冽值*),ylabelC累计像素量)列方向像素点灰度值累计和601111150 -IPxO=l;Pxl=l;% 分割字符 %for i=l:7while (X1 (1 ,PxO)3)&(PxO=3)&(Pxlxl)ll(Pxl-PxO) 10)Pxl=Pxl+l;endZ=I2(:,PxO:Pxl,:);switch strcat(Z,num2

12、str(i)case ZlPIN0=Z;case Z2PIN1=Z;case Z3PIN2=Z;case Z4PIN3=Z;case Z5PIN4=Z;case Z6PIN5=Z;otherwisePIN6=Z;endfigure(3);subplot(l,7,i);imshow(Z);脉0昭n邪ssPxO=Pxl;End4.3车牌字符识别字符识别方法主要有基于模板匹配算法和基于人工神经网络算法。基于模板匹配算法 是首先将分割后的字符二值化,并将其尺寸缩放为字符数据库中模板的大小,然后与所有模 板进行匹配,最后选取最佳匹配作为结果。建立数字库对该方法在车牌识别过程中很重要, 数字库准确才能保证

13、检测出的数据正确。基于人工神经元网络的算法有两种,一种是先对 特征提取待识别字符,然后用所获得的特征训练神经网络分配器;另一种是直接将待处理 图像输入网络由网络自动实现特征提取直至识别结果。在本程序中用基于人工神经元网络 识别车牌字符。在车牌字符识别部分,字符集中包含约50个汉字,26个大写英文字母及10个 阿拉伯数字。总的字符样本并不太多。4.3.1构造训练样本如下图所示的数字和字母,ri 7 v . * i Bl将样本进行归一化为50X20大小,再将图像按列转换成一个1000X1的行向量,将上述 18个图像的样本排列在一起构成1000X18的矩阵样本,尽可能多的采集汽车图像提取车牌, 部分

14、切分出车牌字符,构造出更多1000X18的矩形样本,用构造好的样本库对神经网络进行 训练。function inpt = pretreatment(I)%YUCHULI Summary of this function goes here% Detailed explanation goes hereifisrgb(I)Il = rgb2gray(I);else11=1;endIl=imresize(Il,50 20);% 将图片统一划为 50*20大小Il=im2bw(Il,0.9);m,n=size(Il);inpt=zeros(l,m*n);%将图像按列转换成一个行向量for j=l:nfor i=l:minpt(l,m*(j-l)+i)=Il(i,j);endend4.3.2构造输入样

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 其它办公文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号