车牌图像定位及识别Word文档下载推荐.docx
- 文档编号:14979989
- 上传时间:2022-10-26
- 格式:DOCX
- 页数:12
- 大小:203.09KB
车牌图像定位及识别Word文档下载推荐.docx
《车牌图像定位及识别Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《车牌图像定位及识别Word文档下载推荐.docx(12页珍藏版)》请在冰豆网上搜索。
五、设计过程
车辆牌照识别整个系统主要是由车牌定位和字符分割识别两局部组成,其中车牌定位又可以分为图像预处理及边缘提取模块和牌照的定位及分割模块;
字符识别可以分为字符分割和单个字符识别两个模块。
(一〕对图像进展图像转换、图像增强和边缘检测等
1.载入车牌图像:
2.将彩图转换为灰度图并绘制直方图:
3.用roberts算子进展边缘检测:
图像中车辆牌照是具有比拟显著特征的一块图象区域,这此特征表现在:
近似水平的矩形区域;
其中字符串都是按水平方向排列的;
在整体图象中的位置较为固定。
正是由于牌照图象的这些特点,再经过适当的图象变换,它在整幅中可以明显地呈现出其边缘。
边缘提取是较经典的算法,此处边缘的提取采用的是Roberts算子。
4.图像实施腐蚀操作:
5.平滑图像:
对于受噪声干扰严重的图象,由于噪声点多在频域中映射为高频分量,因此可以在通过低通滤波器来滤除噪声,但实际中为了简化算法也可以直接在空域中用求邻域平均值的方法来削弱噪声的影响,这种方法称为图象平滑处理。
6.删除二值图像的小对象
(二)车牌定位:
从预处理后的汽车图像中分割出车牌图像。
即在一幅车辆图像中找到车牌所在的位置。
(三)字符分割与识别
1.车牌的进一步处理
对分割出的彩色车牌图像进展灰度转换、二值化、均值滤波、腐蚀膨胀以及字符分割以从车牌图像中别离出组成车牌的单个字符图像,对分割出来的字符进展预处理〔二值化、归一化〕,然后分析提取,对分割出的字符图像进展识别给出文本形式的车牌。
2.字符分割
在汽车牌照自动识别过程中,字符分割有承前启后的作用。
它在前期牌照定位的根底上进展字符的分割,然后再利用分割的结果进展字符识别。
字符识别的算法很多,因为车牌字符间间隔较大,不会出现字符粘连情况,所以此处采用的方法为寻找连续有文字的块,假设长度大于某阈值,那么认为该块有两个字符组成,需要分割。
在此只进展了归一化处理,然后进展后期处理。
六.总结
根据车牌特点,一般采用的车牌定位算法有:
1.边缘检测定位算法;
2.利用哈夫变换进展车牌定位;
3.色彩分割提取车牌等。
这里我采用的是边缘检测的方法实现定位的。
字符分割的方法也有多种:
1.基于聚类分析的字符分割;
2.投影分割的方法;
3.基于模板匹配的字符分割等。
最常用的是投影分割,主要是针对在车牌定位,图像预处理后比拟规那么的车牌图像。
优点是程序逻辑设计简单,循环执行功能单一,便于设计和操作,程序执行时间短。
对现实事物的设计不仅是对前面所学知识的一种检验,而且也是对自己能力的一种提高。
通过这次设计使我明白了自己原来知识还比拟欠缺。
这个设计让我学到了很多东西,涉及到方方面面的知识,在这整个过程中我们查阅了大量的资料,得到了教师和同学的帮助,我在此对他们表示意。
七.源代码:
〔1〕主程序:
I=imread('
car.jpg'
);
figure
(1),imshow(I);
title('
原图'
I1=rgb2gray(I);
figure
(2),subplot(1,2,1),imshow(I1);
灰度图'
figure
(2),subplot(1,2,2),imhist(I1);
灰度直方图'
I2=edge(I1,'
roberts'
0.18,'
both'
figure(3),imshow(I2);
roberts边缘检测图'
se=[1;
1;
1];
I3=imerode(I2,se);
figure(4),imshow(I3);
腐蚀后图'
se=strel('
rectangle'
[25,25]);
I4=imclose(I3,se);
figure(5),imshow(I4);
平滑图像'
I5=bwareaopen(I4,2000);
figure(6),imshow(I5);
去除小对象'
[y,x,z]=size(I5);
myI=double(I5);
tic
Blue_y=zeros(y,1);
fori=1:
y
forj=1:
x
if(myI(i,j,1)==1)
Blue_y(i,1)=Blue_y(i,1)+1;
end
end
[tempMaxY]=max(Blue_y);
PY1=MaxY;
while((Blue_y(PY1,1)>
=5)&
&
(PY1>
1))
PY1=PY1-1;
PY2=MaxY;
while((Blue_y(PY2,1)>
(PY2<
y))
PY2=PY2+1;
IY=I(PY1:
PY2,:
:
Blue_x=zeros(1,x);
forj=1:
fori=PY1:
PY2
Blue_x(1,j)=Blue_x(1,j)+1;
PX1=1;
while((Blue_x(1,PX1)<
3)&
(PX1<
x))
PX1=PX1+1;
PX2=x;
while((Blue_x(1,PX2)<
(PX2>
PX1))
PX2=PX2-1;
PX1=PX1-1;
PX2=PX2+1;
dw=I(PY1:
PY2-8,PX1:
PX2,:
t=toc;
figure(7),subplot(1,2,1),imshow(IY),title('
行方向车牌区域'
figure(7),subplot(1,2,2),imshow(dw),title('
定位后车牌区域'
imwrite(dw,'
dw.jpg'
a=imread('
b=rgb2gray(a);
imwrite(b,'
graylicenceplate.jpg'
figure(8);
subplot(3,2,1),imshow(b),title('
车牌灰度图像'
g_max=double(max(max(b)));
g_min=double(min(min(b)));
T=round(g_max-(g_max-g_min)/3);
[m,n]=size(b);
d=(double(b)>
=T);
imwrite(d,'
binarylicenceplate.jpg'
subplot(3,2,2),imshow(d),title('
beforefilteringbinarylicenceplate'
h=fspecial('
average'
3);
d=im2bw(round(filter2(h,d)));
afteraveragelicenceplate.jpg'
subplot(3,2,3),imshow(d),title('
afteraveragelicenceplate'
se=eye
(2);
[m,n]=size(d);
ifbwarea(d)/m/n>
=0.365
d=imerode(d,se);
elseifbwarea(d)/m/n<
=0.235
d=imdilate(d,se);
expansionorcorrosionthelicenceplate.jpg'
subplot(3,2,4),imshow(d),title('
expansionorcorrosionthelicenceplate'
d=qiege(d);
subplot(3,2,5),imshow(d),title(n);
k1=1;
k2=1;
s=sum(d);
j=1;
whilej~=n
whiles(j)==0
j=j+1;
k1=j;
whiles(j)~=0&
j<
=n-1
k2=j-1;
ifk2-k1>
=round(n/6.5)
[val,num]=min(sum(d(:
[k1+5:
k2-5])));
d(:
k1+num+5)=0;
y1=10;
y2=0.25;
flag=0;
word1=[];
whileflag==0
[m,n]=size(d);
left=1;
wide=0;
whilesum(d(:
wide+1))~=0
wide=wide+1;
ifwide<
y1
[1:
wide])=0;
d=qiege(d);
else
temp=qiege(imcrop(d,[11widem]));
[m,n]=size(temp);
all=sum(sum(temp));
two_thirds=sum(sum(temp([round(m/3):
2*round(m/3)],:
)));
iftwo_thirds/all>
y2
flag=1;
word1=temp;
[word2,d]=getword(d);
[word3,d]=getword(d);
[word4,d]=getword(d);
[word5,d]=getword(d);
[word6,d]=getword(d);
[word7,d]=getword(d);
figure(9);
subplot(2,7,1),imshow(word1),title('
1'
subplot(2,7,2),imshow(word2),title('
2'
subplot(2,7,3),imshow(word3),title('
3'
subplot(2,7,4),imshow(word4),title('
4'
subplot(2,7,5),imshow(word5),title('
5'
subplot(2,7,6),imshow(word6),title('
6'
subplot(2,7,7),imshow(word7),title('
7'
[m,n]=size(word1);
word1=imresize(word1,[4020]);
word2=imresize(word2,[4020]);
word3=i
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 车牌 图像 定位 识别