车牌识别程序及说明.doc

  1. 1、本文档共13页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
车牌识别程序及说明

数字图像处理综合实验报告 车牌识别技术(LPR) 1.图像灰度化及滤波 I=imread(yuan.bmp); figure; subplot(2,2,1); imshow(I); title(原图); I1=rgb2gray(I);%图象灰度化 subplot(2,2,2); imshow(I1); title(灰度化图); m2=medfilt2(I1,[5,5]); subplot(2,2,3); imshow(m2); title(中值滤波); w2=wiener2(I1,[5,5]);%维纳滤波 subplot(2,2,4); imshow(w2); title(维纳滤波); 2.图像二值化 fmax1=double(max(max(I1))); fmin1=double(min(min(I1))); level=(fmax1-(fmax1-fmin1)/3)/255; bw2=im2bw(I1,level); bw22=double(bw2); figure,imshow(bw22),title(图像二值化); 3.边缘检测及开运算闭运算 lubo=edge(bw22,log); figure; subplot(2,2,1); imshow(bw2);title(Log算子边缘检测);%图象边缘检测 bg1=imclose(lubo,strel(rectangle,[1,33])); subplot(2,2,2),imshow(bg1);title(图像闭运算[1,33]); bg3=imopen(bg1,strel(rectangle,[1,33])); subplot(2,2,3),imshow(bg3);title(图像开运算[1,33]); bg2=imopen(bg3,strel(rectangle,[12,1])); subplot(2,2,4),imshow(bg2);title(图像开[15,1]); 4. 图像标记 [L,num] = bwlabel(bg2,8);%标注二进制图像中已连接的部分 %Feastats = imfeature(L,basic);%计算图像区域的特征尺寸 %Area=[Feastats.Area];%区域面积 %BoundingBox=[Feastats.BoundingBox];%[x y width height]车牌的框架大小 %RGB = label2rgb(L, spring, k, shuffle); %标志图像向RGB图像转换 figure,imshow(L);title(图像标记);%输出框架的彩色图像 5. 形态滤波 I5=bwareaopen(L,1000);%去除聚团灰度值小于2000的部分 figure,imshow(I5),title(形态滤波后图像); 6. 形态滤波车牌定位及字符分割 [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(像素); PY1=MaxY; while ((Y1(PY1,1)=50)(PY11)) PY1=PY1-1; end PY2=MaxY; while ((Y1(PY2,1)=50)(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 end end subplot(3,2,2),plot(0:x-1,X1),title(列方向像素点灰度值累计和),xlabel(列值),ylabel(像数); PX1=1; while ((X1(1,PX1)3)(PX1x)) PX1=PX1+1; end

文档评论(0)

peain + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档