资源简介
主要是基于图像处理的车牌识别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个文件信息
评论
共有 条评论