⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 car_dingwei.m

📁 这个是收集的一个用matlab编写的车牌定位的程序
💻 M
字号:
clear;clc;

tic;

filename='E:\5.jpg';
pic1=imread(filename);

pic=rgb2gray(pic1);
[height width]=size(pic);
Bpic=edge(pic,'sobel');

m=1;
a=zeros(1,width);b=zeros(1,width);
 for x=height:-1:1
   tag=0;
   for y=1:width-1
        if Bpic(x,y)~=Bpic(x,y+1)
            tag=tag+1;
         end
   end
  if tag>24
   a(m)=x;m=m+1;
  end
 end
n=1;
for m=1:height-2
    if a(1,m)-a(1,m+1)~=1 && a(1,m+1)-a(1,m+2)==1
        b(1,n)=a(1,m+1);b(1,n+1)=1;
    end
    if m~=1 &&a(1,m)-a(1,m+1)==1 &&a(1,m+1)-a(1,m+2)==1
        b(1,n+1)=b(1,n+1)+1;
    end
    if m==1 && a(1,m)-a(1,m+1)==1 && a(1,m+1)-a(1,m+2)==1
        b(1,n)=a(1,m);b(1,n+1)=2;
    end
    if a(1,m)-a(1,m+1)==1 && a(1,m+1)-a(1,m+2)~=1
        b(1,n+1)=b(1,n+1)+1;n=n+2;
    end
end
flag=0;temp=0;
for n=2:2:height
    if b(1,n)>20 && flag==0
        temp=n;flag=1;
    end
end
u=b(1,temp-1);
d=u-b(1,temp)+1;

frame=round(4*(b(1,temp)));
p=1;
c=zeros(1,width-frame+1);
line=round(0.5*(u+d));max=0;left=0;
for x=1:width-frame
        tag=0;
     for y=0:frame-1
        if Bpic(line,y+x)~=Bpic(line,y+1+x)
            tag=tag+1;
        end
     end 
        c(1,p)=tag;
        if tag>max
            max = tag;
            left=p;
        end
      p=p+1;       
end
right = left+frame;

aa=sum(Bpic(d:u,left:right));
for x=1:round((right-left)*0.5)-1
    if aa(x+1) - aa(x) >=5 && aa(x+1)-aa(x+2)<=5
        left = left+x;
        break;
    end
end



imshow(pic()),figure;
imshow(pic(d:u,left:right,:));

toc;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -