MATLAB_图形学_形态学课程_5个车牌扣出车牌照片

版权声明:转载请声明原文链接地址,谢谢! https://blog.csdn.net/weixin_42859280/article/details/89448894

所有下载:https://download.csdn.net/download/weixin_42859280/11135532
照片1:
在这里插入图片描述
代码:

clear,clc,close all;
f=imread('c1.jpg');imshow(f)
g=rgb2gray(f);figure,imshow(g);
gth=imtophat(g,strel('disk',18));
figure,imshow(gth)

bw=im2bw(gth,0.6);figure,imshow(bw);
bwedge=edge(bw);
figure,imshow(bwedge);

bwerode=imerode(bwedge,strel('line',5,90));
figure,imshow(bwerode);
bwdilate=imdilate(bwerode,strel('disk',22));
figure,imshow(bwdilate);
bwao=bwareaopen(bwdilate,20000);
figure,imshow(bwao);
[r,c]=find(bwao);
rr=f(min(r):max(r),min(c):max(c),:);
figure,imshow(rr)

结果:
在这里插入图片描述
照片2:
在这里插入图片描述
代码:

clear,clc,close all;
f=imread('c2.jpg');
imshow(f)
g=rgb2gray(f);figure,imshow(g);
gth=imtophat(g,strel('disk',12));
figure,imshow(gth)
bw=im2bw(gth,0.2);figure,imshow(bw);
bwedge=edge(bw);
figure,imshow(bwedge);
bwerode=imerode(bwedge,strel('line',5,90));
figure,imshow(bwerode);
bwdilate=imdilate(bwerode,strel('disk',25));
figure,imshow(bwdilate);
bwao=bwareaopen(bwdilate,20000);
figure,imshow(bwao);
[r,c]=find(bwao);
rr=f(min(r):max(r),min(c):max(c),:);
figure,imshow(rr)

结果:
在这里插入图片描述
照片3:
在这里插入图片描述
代码:

clear,clc,close all;
f=imread('c3.jpg');imshow(f)
g=rgb2gray(f);figure,imshow(g);
gth=imtophat(g,strel('disk',12));
figure,imshow(gth)
bw=im2bw(gth,0.4);figure,imshow(bw);
bwedge=edge(bw);
figure,imshow(bwedge);

bwerode=imerode(bwedge,strel('line',5,90));
figure,imshow(bwerode);
bwdilate=imdilate(bwerode,strel('disk',20));
figure,imshow(bwdilate);
bwao=bwareaopen(bwdilate,10000);
figure,imshow(bwao);

[r,c]=find(bwao);
rr=f(min(r):max(r),min(c):max(c),:);
figure,imshow(rr)

结果:
在这里插入图片描述
照片4:
在这里插入图片描述
代码:

clear,clc,close all;
f=imread('c4.jpg');
g=rgb2gray(f);figure,imshow(g);
gth=imtophat(g,strel('disk',6));
figure,imshow(gth);

bw=im2bw(gth,0.3);figure,imshow(bw);
bwao=bwareaopen(bw,20);
figure,imshow(cat(2,bw,bwao));

bwedge=edge(bwao);
figure,imshow(bwedge);

bwao=bwareaopen(bwedge,20);
figure,imshow(cat(2,bwedge,bwao));

bwerode=imerode(bwao,strel('line',5,90));
figure,imshow(bwerode);

bwdilate=imdilate(bwerode,strel('disk',25));
figure,imshow(bwdilate);

bwao=bwareaopen(bwdilate,20000);
figure,imshow(bwao);

[r,c]=find(bwao);
rr=f(min(r):max(r),min(c):max(c),:);
figure,imshow(rr)

结果:
在这里插入图片描述
照片5:
在这里插入图片描述
代码:

clear,clc,close all;
f=imread('c5.jpg');imshow(f)
g=rgb2gray(f);figure,imshow(g);
gth=imbothat(g,strel('disk',18));
figure,imshow(gth)

% gg=g-gth;
% figure,imshow(gg);


bw=im2bw(gth,0.4);
figure,imshow(bw);

bwedge=edge(bw);
figure,imshow(bwedge);

bwerode=imerode(bwedge,strel('line',5,90));
figure,imshow(bwerode);
bwdilate=imdilate(bwerode,strel('disk',30));
figure,imshow(bwdilate);

bwao=bwareaopen(bwdilate,20000);
figure,imshow(bwao);
bwao1=bwareaopen(bwao,40000);
figure,imshow(bwao1);
bwao2=bwao-bwao1;
figure,imshow(bwao2);
[r,c]=find(bwao2);
rr=f(min(r):max(r),min(c):max(c),:);
figure,imshow(rr)

结果:
在这里插入图片描述
OK。就是不断调试腐蚀大小。没有一下就可以得到自己想要的结果的代码。因为不同照片的因素都不太一样。所以需要不断调试。

猜你喜欢

转载自blog.csdn.net/weixin_42859280/article/details/89448894