• 大小: 2.12MB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2023-09-12
  • 语言: Matlab
  • 标签: 车牌MATLAB  

资源简介

主要是基于图像处理的车牌识别MATLAB程序,里面附有图片。

资源截图

代码片段和文件信息

clc;
close all;
clear;

[fnpnfi]=uigetfile(‘ChePaiKu\*.jpg‘‘选择图片‘);
I=imread([pn fn]);%输入原始图像
figure(1)imshow(I);title(‘原图‘)text(2020‘(a)‘‘fontsize‘20);
I1=rgb2gray(I);
figure(2)subplot(121)imshow(I1[]);title(‘灰度图‘);
figure(2)subplot(122)imhist(I1);title(‘灰度图直方图‘);
%%   车牌图像预处理
I2=edge(I1‘canny‘0.5);
figure(3)imshow(I2[]);title(‘canny算子边缘检测‘)
se=[1;1;1];
I3=imerode(I2se);
figure(4)imshow(I3);title(‘腐蚀后图像‘);
se=strel(‘rectangle‘[2525]);
I4=imclose(I3se);
figure(5)imshow(I4);title(‘闭运算后图像‘);
I5=bwareaopen(I42000);
figure(6)imshow(I5);title(‘从对象中移除小对象‘);

%%   车牌定位
[rowcol]=size(I5);
myI=double(I5);
%   初步定位,确定行的起始位置和终止位置
Row=zeros(row1);
 for i=1:row
    for j=1:col
             if(myI(ij)==1) 
  
                Row(i1)= Row(i1)+1;    
            end  
     end       
 end
 [temp MaxY]=max(Row);     %Y方向车牌区域确定
 PY1=MaxY;
 while ((Row(PY11)>=5)&&(PY1>1))
        PY1=PY1-1;
 end    
 PY2=MaxY;
 while ((Row(PY21)>=5)&&(PY2        PY2=PY2+1;
 end
 IY=I(PY1:PY2::);
 %   车牌初步定位 确定列的起始位置和终止位置
 Col=zeros(1col);%进一步确定x方向的车牌区域
 for j=1:col
     for i=PY1:PY2
            if(myI(ij)==1)
                Col(1j)= Col(1j)+1;               
            end  
     end       
 end
  
 PX1=1;
 while ((Col(1PX1)<3)&&(PX1       PX1=PX1+1;
 end    
 PX2=col;
 while ((Col(1PX2)<3)&&(PX2>PX1))
        PX2=PX2-1;
 end
 PX1=PX1-1;     %对车牌区域的校正
 PX2=PX2+1;
 dw=I(PY1:PY2-8PX1:PX2:);
 t=toc; 
figure(7)subplot(121)imshow(IY)title(‘行方向合理区域‘);
figure(7)subplot(122)imshow(dw)title(‘定位剪切后的彩色车牌图像‘)
%  车牌精确定位  预处理
Iexact=rgb2gray(dw);   
figureimhist(Iexact)title(‘定位后车牌的直方图‘);
c_max=double(max(max(Iexact)));
c_min=double(min(min(Iexact)));
T=round(c_max-(c_max-c_min)/3);    %T为二值化的阈值
Ibw=im2bw(IexactT/256);
figure(8)subplot(121)imshow(Ibw)title(‘粗定位的二值车牌图像‘);
%  车牌精定位  去除边框干扰
[rs]=size(Ibw);
I1=double(Ibw);
X1=zeros(1s);
for i=1:r
    for j=1:s
        if (I1(ij)==1)
            X1(1j)=X1(1j)+1;   
        end
    end
end
[tempMaxX]=max(X1);
%  去除左侧边框干扰
[gh]=size(I1);
left=0;   right=0;    TH=5;
while sum(I1(:left+1))~=0
    left=left+1;
end
if left    I1(:[1:left])=0;   %给图像中1到left宽度间的点赋值为零
    I1=Seg(I1);    %值为0的点被切割
end
%   去除右侧边框干扰
[ef]=size(I1);
d=f;
while sum(I1(:d-1))~=0;
    right=right+1;
    d=d-1;
end
if right    I1(:[(f-right):f])=0;
    I1=Seg(I1);
end
figure(9)imshow(I1)title(‘精确定位后的车牌二值图像‘);
                    
%%  车牌分割
I_bw=I1;
I_final=bwareaopen(I_bw20);
figure(8)subplot(122)imshow(I_final)title(‘形态学滤波后的车牌二值图像‘);
Ifinal=double(I_final);
[widthheight]=size(Ifinal);
X2=zeros(1height);    %产生1行height列全零数组
for j=1:height
    for i=1:width
        if I_final(ij)==1
            X2(1j)=X2(1j)+1;
        end
    end
end
Px0=height;    %字符右侧限
Px1=width;    %字符左侧限
for i=1:6
    while((X2(1Px0)<3)&&(Px0>0))
        Px0=Px

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       1592  2008-10-17 18:58  图像处理车牌识别\车牌识别\程序与图像\cha&num\1.bmp

     文件       1592  2008-10-17 19:03  图像处理车牌识别\车牌识别\程序与图像\cha&num\10.bmp

     文件       1592  2008-10-17 19:03  图像处理车牌识别\车牌识别\程序与图像\cha&num\11.bmp

     文件       1592  2008-11-04 23:19  图像处理车牌识别\车牌识别\程序与图像\cha&num\12.bmp

     文件       1592  2008-11-04 23:22  图像处理车牌识别\车牌识别\程序与图像\cha&num\13.bmp

     文件       1592  2008-10-17 19:04  图像处理车牌识别\车牌识别\程序与图像\cha&num\14.bmp

     文件       1592  2008-10-17 19:05  图像处理车牌识别\车牌识别\程序与图像\cha&num\15.bmp

     文件       1592  2008-10-18 18:19  图像处理车牌识别\车牌识别\程序与图像\cha&num\16.bmp

     文件       1592  2008-10-17 19:06  图像处理车牌识别\车牌识别\程序与图像\cha&num\17.bmp

     文件       1592  2008-10-17 19:06  图像处理车牌识别\车牌识别\程序与图像\cha&num\18.bmp

     文件       1592  2008-10-17 19:07  图像处理车牌识别\车牌识别\程序与图像\cha&num\19.bmp

     文件       1592  2008-10-17 18:59  图像处理车牌识别\车牌识别\程序与图像\cha&num\2.bmp

     文件       1592  2008-10-17 19:07  图像处理车牌识别\车牌识别\程序与图像\cha&num\20.bmp

     文件       1592  2008-10-17 19:07  图像处理车牌识别\车牌识别\程序与图像\cha&num\21.bmp

     文件       1592  2008-10-17 21:05  图像处理车牌识别\车牌识别\程序与图像\cha&num\22.bmp

     文件       1592  2008-10-17 19:09  图像处理车牌识别\车牌识别\程序与图像\cha&num\23.bmp

     文件       1592  2008-10-17 19:08  图像处理车牌识别\车牌识别\程序与图像\cha&num\24.bmp

     文件       1592  2008-10-17 19:09  图像处理车牌识别\车牌识别\程序与图像\cha&num\25.bmp

     文件       1592  2008-10-17 18:56  图像处理车牌识别\车牌识别\程序与图像\cha&num\26.bmp

     文件       1590  2008-10-21 20:21  图像处理车牌识别\车牌识别\程序与图像\cha&num\27.bmp

     文件       1592  2008-10-17 18:55  图像处理车牌识别\车牌识别\程序与图像\cha&num\28.bmp

     文件       1592  2008-10-17 18:55  图像处理车牌识别\车牌识别\程序与图像\cha&num\29.bmp

     文件       1592  2008-10-17 19:00  图像处理车牌识别\车牌识别\程序与图像\cha&num\3.bmp

     文件       1592  2008-10-17 18:55  图像处理车牌识别\车牌识别\程序与图像\cha&num\30.bmp

     文件       1592  2008-10-17 18:54  图像处理车牌识别\车牌识别\程序与图像\cha&num\31.bmp

     文件       1592  2008-10-17 18:53  图像处理车牌识别\车牌识别\程序与图像\cha&num\32.bmp

     文件       1592  2008-10-17 18:53  图像处理车牌识别\车牌识别\程序与图像\cha&num\33.bmp

     文件       1592  2008-10-17 18:52  图像处理车牌识别\车牌识别\程序与图像\cha&num\34.bmp

     文件       1592  2008-10-17 18:49  图像处理车牌识别\车牌识别\程序与图像\cha&num\35.bmp

     文件       1592  2008-10-18 18:26  图像处理车牌识别\车牌识别\程序与图像\cha&num\4.bmp

............此处省略69个文件信息

评论

共有 条评论

相关资源