基于matlab的车牌处理,基于MATLAB的车牌图像预处理系统的实现

%车牌识别

%%%

clc

clear

I=imread('%%%图像所在位置');%%%位置自己定

subplot(2,3,1);

imshow(I);

title('原始图像')

%%%提取原始图像行、列、维数

[y,x,z]=size(I);

myI=double(I);

%%%Y方向统计分析

Blue_y=zeros(y,1);

for i=1:y

for j=1:x

if(((myI(i,j,1)<=241)&&(myI(i,j,1)>=15))&&...

((myI(i,j,2)<=170)&&(myI(i,j,2)>=90))&&...

((myI(i,j,3)<=240)&&(myI(i,j,3)>=210)))%%%蓝色RGB的灰度范围%%%灰度范围值选取自己定,需要使用pixval函数选取RGB值

Blue_y(i,1)=Blue_y(i,1)+1;

end

end

end

[temp MaxY]=max(Blue_y);%%%Y方向车牌区域确定

PY1=MaxY;

while((Blue_y(PY1,1)>=5)&&(PY1>1))

PY1=PY1-1;

end

PY2=MaxY;

while((Blue_y(PY2,1)>=5)&&(PY2

PY2=PY2+1;

end

IY=I(PY1:PY2,:,:);

subplot(2,3,2);

plot(Blue_y);

grid;

title('Y方向统计')

subplot(2,3,4);

imshow(IY);

title('Y方向车牌区域确定')

%%%X方向统计分析       %%%重复上面的思路

Blue_x=zeros(1,x);%%%进一步确定X方向的车牌区域

for j=1:x

for i=PY1:PY2

if(((myI(i,j,1)<=241)&&(myI(i,j,1)>=15))&&...

((myI(i,j,2)<=170)&&(myI(i,j,2)>=90))&&...

((myI(i,j,3)<=240)&&(myI(i,j,3)>=210)))

Blue_x(1,j)=Blue_x(1,j)+1;

end

end

end

%%%[temp MaxX]=max(Blue_x);%%%X方向车牌区域确定

PX1=1;

while((Blue_x(1,PX1)<3)&&(PX1

PX1=PX1+1;

end

PX2=x;

while((Blue_x(1,PX2)<3)&&(PX2>PX1))

PX2=PX2-1;

end

subplot(2,3,3);

plot(Blue_x);

grid;

title('X方向统计')

IX=I(:,PX1:PX2,:);

subplot(2,3,5);

imshow(IX);

title('X方向车牌区域确定')

%%%对车牌区域的修正

PX1=PX1-2;

PX2=PX2+2;

Plate=I(PY1:PY2,PX1-2:PX2,:);

subplot(2,3,6);

imshow(Plate);

title('车牌显示')

%%%%%上面的算法自己是可以进行改进的。

有问题可以参考(《精通MATLAB》.葛哲学.电子工业出版社)。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值