MATLAB课程设计.docx

上传人:b****8 文档编号:11250535 上传时间:2023-02-26 格式:DOCX 页数:28 大小:282.71KB
下载 相关 举报
MATLAB课程设计.docx_第1页
第1页 / 共28页
MATLAB课程设计.docx_第2页
第2页 / 共28页
MATLAB课程设计.docx_第3页
第3页 / 共28页
MATLAB课程设计.docx_第4页
第4页 / 共28页
MATLAB课程设计.docx_第5页
第5页 / 共28页
点击查看更多>>
下载资源
资源描述

MATLAB课程设计.docx

《MATLAB课程设计.docx》由会员分享,可在线阅读,更多相关《MATLAB课程设计.docx(28页珍藏版)》请在冰豆网上搜索。

MATLAB课程设计.docx

MATLAB课程设计

 

MATLAB课程设计

 

设计题目:

____车牌识别系统的设计______

班级:

_________电信11-2___________________

学号:

________11034030234___________________

姓名:

____丘海健______________

指导老师:

______崔得龙老师_______________

设计时间:

____2014-4-7---2014-4-11_______________

车牌识别系统的设计

摘要:

汽车牌照自动识别系统是制约道路交通智能化的重要因素,包括车牌定位、字符分割和字符识别三个主要部分。

本文首先确定车辆牌照在原始图像中的水平位置和垂直位置,从而定位车辆牌照,然后采用局部投影进行字符分割。

在字符识别部分,提出了在无特征提取情况下基于支持向量机的车牌字符识别方法。

实验结果表明,本文提出的方法具有良好的识别性能。

随着公路逐渐普及,我国的公路交通事业发展迅速,所以人工管理方式已经不能满着实际的需要,微电子、通信和计算机技术在交通领域的应用极大地提高了交通管理效率。

汽车牌照的自动识别技术已经得到了广泛应用。

关键字:

车辆牌照、定位、字符分割、识别、MATLAB

 

目录

1.概述……………………………………………2

2.课程设计任务及要求…………………………2

2.1设计任务……………………………………2

2.2设计要求……………………………………2

3.系统设计……………………………………….3

3.1结构框图……………………………………3

3.2系统工作原理………………………………3

4.详细设计步骤…………………………………4

5.结论……………………………………………13

6.收获、体会和建议…………………………….13

7.参考文献……………………………………….14

附录…………………………………………….14

 

1.概述

车牌定位系统的目的在于正确获取整个图像中车牌的区域,并识别出车牌号。

通过设计实现车牌识别系统,能够提高学生分析问题和解决问题的能力,还能培养一定的科研能力。

2.课程设计任务及要求

2.1设计任务

车牌定位系统的目的在于正确获取整个图像中车牌的区域,并识别出车牌号。

通过设计实现车牌识别系统,能够提高学生分析问题和解决问题的能力,还能培养一定的科研能力。

2.2设计要求

1.牌照识别系统应包括车辆检测、图像采集、牌照识别等几

部分。

2.当车辆检测部分检测到车辆到达时,触发图像采集单元,采

集当前的视频图像。

3.牌照识别单元对图像进行处理,定位出牌照位置,再将牌

照中的字符分割出来进行识别,然后组成牌照号码输出。

3.系统设计

3.1结构框图

图1牌照识别系统原理图

3.2系统工作原理

由于车辆牌照是机动车唯一的管理标识符号,在交通管理中具有不可替代的作用,因此车辆牌照识别系统应具有很高的识别正确率,对环境光照条件、拍摄位置和车辆行驶速度等因素的影响应有较大的容阈,并且要求满足实时性要求。

该系统是计算机图像处理与字符识别技术在智能化交通管理系统中的应用,它主要由图像的采集和预处理、牌照区域的定位和提取、牌照字符的分割和识别等几个部分组成,如图1所示。

其基本工作过程如下:

(1)当行驶的车辆经过时,触发埋设在固定位置的传感器,系统被唤醒处于工作状态;一旦连接摄像头光快门的光电传感器被触发,设置在车辆前方、后方和侧面的相机同时拍摄下车辆图像;

(2)由摄像机或CCD摄像头拍摄的含有车辆牌照的图像通视频卡输入计算机进行预处理,图像预处理包括图像转换、图像增强、滤波和水平较正等;

(3)由检索模块进行牌照搜索与检测,定位并分割出包含牌照字符号码的矩形区域;

(4)对牌照字符进行二值化并分割出单个字符,经归一化后输入字符识别系统进行识别。

4.详细设计步骤

4.1提出总体设计方案。

车辆牌照识别整个系统主要是由车牌定位和字符识别两部分组成,其中车牌定位又可以分为图像预处理及边缘提取模块和牌照的定位及分割模块;字符识别可以分为字符分割与特征提取和单个字符识别两个模块。

为了用于牌照的分割和牌照字符的识别,原始图象应具有适当的亮度,较大的对比度和清晰可辩的牌照图象。

但由于该系统的摄像部分工作于开放的户外环境,加之车辆牌照的整洁度、自然光照条件、拍摄时摄像机与牌照的矩离和角度以及车辆行驶速度等因素的影响,牌照图象可能出现模糊、歪斜和缺损等严重缺陷,因此需要对原始图象进行识别前的预处理。

牌照的定位和分割是牌照识别系统的关键技术之一,其主要目的是在经图象预处理后的原始灰度图象中确定牌照的具体位置,并将包含牌照字符的一块子图象从整个图象中分割出来,供字符识别子系统识别之用,分割的准确与否直接关系到整个牌照字符识别系统的识别率。

由于拍摄时的光照条件、牌照的整洁程度的影响,和摄像机的焦距调整、镜头的光学畸变所产生的噪声都会不同程度地造成牌照字符的边界模糊、细节不清、笔划断开或粗细不均,加上牌照上的污斑等缺陷,致使字符提取困难,进而影响字符识别的准确性。

因此,需要对字符在识别之前再进行一次针对性的处理。

车牌识别的最终目的就是对车牌上的文字进行识别。

主要应用的为模板匹配方法。

因为系统运行的过程中,主要进行的都是图像处理,在这个过程中要进行大量的数据处理,所以处理器和内存要求比较高,CPU要求主频在600HZ及以上,内存在128MB及以上。

系统可以运行于Windows98、Windows2000或者WindowsXP操作系统下,程序调试时使用matlab。

4.2预处理及边缘提取

图2预处理及边缘提取流程图

4.2.1图象的采集与转换

考虑到现有牌照的字符与背景的颜色搭配一般有蓝底白字、黄底黑字、白底红字、绿底白字和黑底白字等几种,利用不同的色彩通道就可以将区域与背景明显地区分出来,例如,对蓝底白字这种最常见的牌照,采用蓝色B通道时牌照区域为一亮的矩形,而牌照字符在区域中并不呈现。

因为蓝色(255,0,0)与白色(255,255,255)在B通道中并无区分,而在G、R通道或是灰度图象中并无此便利。

同理对白底黑字的牌照可用R通道,绿底白字的牌照可以用G通道就可以明显呈现出牌照区域的位置,便于后续处理。

原图、灰度图及其直方图见图2与图3。

对于将彩色图象转换成灰度图象时,图象灰度值可由下面的公式计算:

G=0.110B+0.588G+0.302R

(1)

G=

(2)

图3原图

图4灰图

4.2.2边缘提取

边缘是指图像局部亮度变化显著的部分,是图像风、纹理特征提取和形状特征提取等图像分析的重要基础。

所以在此我们要对图像进行边缘检测。

图象增强处理对图象牌照的可辩认度的改善和简化后续的牌照字符定位和分割的难度都是很有必要的。

增强图象对比度度的方法有:

灰度线性变换、图象平滑处理等。

(1)灰度校正:

由于牌照图象在拍摄时受到种种条件的限制和干扰,图象的灰度值往往与实际景物不完全匹配,这将直接影响到图象的后续处理。

如果造成这种影响的原因主要是由于被摄物体的远近不同,使得图象中央区域和边缘区域的灰度失衡,或是由于摄像头在扫描时各点的灵敏度有较大的差异而产生图象灰度失真,或是由于曝光不足而使得图像的灰度变化范围很窄。

这时就可以采用灰度校正的方法来处理,增强灰度的变化范围、丰富灰度层次,以达到增强图象的对比度和分辨率。

我们发现车辆牌照图象的灰度取值范围大多局限在r=(50,200)之间,而且总体上灰度偏低,图象较暗。

根据图象处理系统的条件,最好将灰度范围展开到s=(0,255)之间,为此我们对灰度值作如下的变换:

s=T(r)r=[rmin,,rmax]

 

使得S∈[Smin,Smax],其中,T为线性变换,

(3)

若r(50,200)、s(0,255)

则:

(4)

(2)平滑处理:

对于受噪声干扰严重的图象,由于噪声点多在频域中映射为高频分量,因此可以在通过低通滤波器来滤除噪声,但实际中为了简化算法也可以直接在空域中用求邻域平均值的方法莱削弱噪声的影响,这种方法称为图象平滑处理。

4

3

2

5

i,j

1

6

7

8

2

3

i,j

1

4

例如,某一象素点的邻域S有两种表示方法:

8邻域和4邻域分别对应的邻域平均值为

(5)

其中,M为邻域中除中心象素点f(i,j)之外包括的其它象素总数,对于4邻域M=4,8邻域M=8。

然而,邻域平均值的平滑处理会使得图象灰度急剧变化的地方,尤其是物体边缘区域和字符轮廓等部分产生模糊作用。

为了克服这种平均化引起的图象模糊现象,我们给中心点象素值与其邻域平均值的差值设置一固定的阈值,只有大于该阈值的点才能替换为邻域平均值,而差值不大于阈值时,仍保留原来的值,从而减少由于平均化引起的图象模糊。

图像中车辆牌照是具有比较显著特征的一块图象区域,这此特征表现在:

近似水平的矩形区域;其中字符串都是按水平方向排列的;在整体图象中的位置较为固定。

正是由于牌照图象的这些特点,再经过适当的图象变换,它在整幅中可以明显地呈现出其边缘。

边缘提取是较经典的算法,此处边缘的提取采用的是Roberts算子。

图6robert算子边缘检测

由上图可以归纳起来以下方面:

原始图像清晰度比较高,从而简化了预处理,结合MATLAB实验过程,得出不是每一种图像处理之初都适合滤波和边界增强。

本次汽车车牌的识别,为了保存更多的有用信息。

4.3牌照的定位和分割

牌照的定位和分割是牌照识别系统的关键技术之一,其主要目的是在经图象预处理后的原始灰度图象中确定牌照的具体位置,并将包含牌照字符的一块子图象从整个图象中分割出来,供字符识别子系统识别之用,分割的准确与否直接关系到整个牌照字符识别系统的识别率。

由于牌照图象在原始图象中是很有特征的一个子区域,确切说是水平度较高的横向近似的长方形,它在原始图象中的相对位置比较集中,而且其灰度值与周边区域有明显的不同,因而在其边缘形成了灰度突变的边界,这样就便于通过边缘检测来对图象进行分割。

图7牌照定位于分割流程图

4.3.1牌照区域的定位

牌照图象经过了以上的处理后,牌照区域已经十分明显,而且其边缘得到了勾勒和加强。

此时可进一步确定牌照在整幅图象中的准确位置。

这里选用的是数学形态学的方法,其基本思想是用具有一定形态的机构元素去量度和提取图像中的对应形状以达到对图像分析和识别的目的。

数学形态学的应用可以简化图像数据,保持它们基本的形态特征,并除去不相干的结构。

在本程序中用到了膨胀和闭合这两个基本运算,最后还用了bwareaopen来去除对象中不相干的小对象。

图8腐蚀后图像

图9平滑图像的轮廓

图10从对象中移除小对象后图像

4.3.2牌照区域的分割

对车牌的分割可以有很多种方法,本程序是利用车牌的彩色信息的彩色分割方法。

根据车牌底色等有关的先验知识,采用彩色像素点统计的方法分割出合理的车牌区域,确定车牌底色蓝色RGB对应的各自灰度范围,然后行方向统计在此颜色范围内的像素点数量,设定合理的阈值,确定车牌在行方向的合理区域。

然后,在分割出的行区域内,统计列方向蓝色像素点的数量,最终确定完整的车牌区域。

图11行方向区域和最终定位出来的车牌

4.3.3车牌进一步处理

经过上述方法分割出来的车牌图像中存在目标物体、背景还有噪声,要想从图像中直接提取出目标物体,最常用的方法就是设定一个阈值T,用T将图像的数据分成两部分:

大于T的像素群和小于T的像素群,即对图像二值化。

均值滤波是典型的线性滤波算法,它是指在图像上对目标像素给一个模板,该模板包括了其周围的临近像素。

再用模板中的全体像素的平均值来代替原来像素值。

图12裁剪出来的车牌的进一步处理过程图

4.4字符的分割与归一化

图13字符分割与归一化流程图

4.4.1字符分割

在汽车牌照自动识别过程中,字符分割有承前启后的作用。

它在前期牌照定位的基础上进行字符的分割,然后再利用分割的结果进行字符识别。

字符识别的算法很多,因为车牌字符间间隔较大,不会出现字符粘连情况,所以此处采用的方法为寻找连续有文字的块,若长度大于某阈值,则认为该块有两个字符组成,需要分割。

图14分割出来的七个字符图像

4.4.2字符归一化

一般分割出来的字符要进行进一步的处理,以满足下一步字符识别的需要。

但是对于车牌的识别,并不需要太多的处理就已经可以达到正确识别的目的。

在此只进行了归一化处理,然后进行后期处理。

图15归一化处理后的七个字符图像

4.5字符的识别

字符的识别目前用于车牌字符识别(OCR)中的算法主要有基于模板匹配的OCR算法以及基于人工神经网络的OCR算法。

基于模板匹配的OCR的基本过程是:

首先对待识别字符进行二值化并将其尺寸大小缩放为字符数据库中模板的大小,然后与所有的模板进行匹配,最后选最佳匹配作为结果。

模板匹配的主要特点是实现简单,当字符较规整时对字符图像的缺损、污迹干扰适应力强且识别率相当高。

综合模板匹配的这些优点我们将其用为车牌字符识别的主要方法。

模板匹配是图象识别方法中最具代表性的基本方法之一,它是将从待识别的图象或图象区域f(i,j)中提取的若干特征量与模板T(i,j)相应的特征量逐个进行比较,计算它们之间规格化的互相关量,其中互相关量最大的一个就表示期间相似程度最高,可将图象归于相应的类。

也可以计算图象与模板特征量之间的距离,用最小距离法判定所属类。

然而,通常情况下用于匹配的图象各自的成像条件存在差异,产生较大的噪声干扰,或图象经预处理和规格化处理后,使得图象的灰度或像素点的位置发生改变。

在实际设计模板的时候,是根据各区域形状固有的特点,突出各类似区域之间的差别,并将容易由处理过程引起的噪声和位移等因素都考虑进去,按照一些基于图象不变特性所设计的特征量来构建模板,就可以避免上述问题。

图16字符识别流程图

此处采用相减的方法来求得字符与模板中哪一个字符最相似,然后找到相似度最大的输出。

汽车牌照的字符一般有七个,大部分车牌第一位是汉字,通常代表车辆所属省份,紧接其后的为字母与数字。

车牌字符识别与一般文字识别在于它的字符数有限,汉字共约50多个,大写英文字母26个,数字10个。

为了实验方便,结合本次设计所选汽车牌照的特点,只建立了4个数字26个字母与10个数字的模板。

其他模板设计的方法与此相同。

首先取字符模板,接着依次取待识别字符与模板进行匹配,将其与模板字符相减,得到的0越多那么就越匹配。

把每一幅相减后的图的0值个数保存,即为识别出来的结果。

图17识别结果

5.结论分析

通过以上的方法,我对多幅图像进行了检测比较,我发现对于光照条件不理想的图象,可先进行一次图象增强处理,使得图象灰度动态范围扩展和对比度增强,再进行定位和分割,这样可以提高分割的正确率。

而采用了色彩通道的牌照区域分割算法充分利用了牌照图象的色彩信息,简化了算法的实现,加快了图象的处理速度,具有较高的检出正确率,而且整个过程用MATLAB语言编程实现,无时间滞后感,可以满足实时检出的要求。

但是在设计的过程中发现,使用另一幅图像后,识别效果始终没有那么理想。

需要做一定的设置后才能识别出相应的字符。

在车牌字符分割的预处理中,用到了对分割出的字符车牌进行均值滤波,膨胀或腐蚀的处理。

这在对于有杂点的车牌是很有用的,因为这样可以把字符与字符之间的杂色点去除,只有白色的字符和黑色的背景存在,这样有利于的字符分割进行。

字符识别过程使用的是模板匹配的方法,利用两幅图片相减的方法,找到相减后值最小的,即为相似程度最大的。

模板的制作很重要,必须要用精确的模板,否则就不能正确的识别。

对于识别错误情况的分析可知,主要原因:

一是牌照自身的污渍等影响了图象的质量;二是牌照字符的分割失败导致的识别错误;再就是部分字符的形状相似性,比如,B和8;A和4等字符识别结果可能发生混淆的情况。

总之,尽管目前牌照字符的识别率还不理想,但是只要在分割出的字符的大小、位置的归一化,以及尝试提取分类识别能力更好的特征值和设计分类器等环节上再完善,进一步提高识别率是完全可行的。

6.收获、体会和建议

本次课程设计主要解决了以下几个问题:

1.在背景的图象中如何定位分割牌照区域;2.对分割下来的牌照字符如何提取具有分类能力的特征;3.如何设计识别器。

在车辆牌照字符识别系统的研究领域,近几年出现了许多切实可行的识别技术和方法,从这些新技术和方法中可以看到两个明显的趋势:

一是单一的预处理和识别技术都无法达到理想的结果,多种方法的有机结合才能使系统有效识别能力提高。

在本系统的设计时,也汲取了以上一些算法的思想,结合实际,反复比较,综合分析;二是在有效性和实用的原则下,结合神经网络和人工智能的新技术的应用是研究的一个方向。

根据车牌特点,一般采用的车牌定位算法有:

1.边缘检测定位算法;2.利用哈夫变换进行车牌定位;3.色彩分割提取车牌等。

这里我采用的是边缘检测的方法实现定位的。

字符分割的方法也有多种:

1.基于聚类分析的字符分割;2.投影分割的方法;3.基于模板匹配的字符分割等。

最常用的是投影分割,主要是针对在车牌定位,图像预处理后比较规则的车牌图像。

优点是程序逻辑设计简单,循环执行功能单一,便于设计和操作,程序执行时间短。

字符识别的基本方法通常又三类:

1.结构特征分析方法;2.模板匹配法;3.神经网络法。

此处采用的是模板匹配的方法,即是将要识别的字符与事先构造好的模板进行比对,根据与模板的相似度的大小来确定最终的识别结果。

但是系统本身还存在许多不足,距离具体实用的要求仍有很大差距,但我却在这次课程设计中学到了很多知识。

7.参考文献

[1]冈萨雷斯.数字图像处理(第二版).电子工业出版社,2007.8

[2]刘卫国等.MATLAB基础与应用教程.人民邮电出版社,2009.8

附录:

程序源代码:

(基于matlab的程序代码)

function[d]=main(jpg)

closeall

clc%清空命令窗口的所有输入和输出,类似于清屏

I=imread('C:

\Users\Administrator\Desktop\MATLAB课程设计\121.jpg');

figure

(1),imshow(I);title('原图');

I1=rgb2gray(I);%调用格式:

I=rgb2gray(RGB);将真彩色RGB图像转换成灰度图像。

figure

(2),subplot(1,2,1),imshow(I1);title('灰度图');

figure

(2),subplot(1,2,2),imhist(I1);title('灰度图直方图');

I2=edge(I1,'robert',0.08,'both');%边缘检测

figure(3),imshow(I2);title('robert算子边缘检测')

se=[1;1;1];

I3=imerode(I2,se);%imerode函数实现图像腐蚀。

用法为:

Imerode(X,SE).其中X是待处理的图像,SE是结构元素对象

figure(4),imshow(I3);title('腐蚀后图像');

se=strel('rectangle',[40,40]);%构造结构元素。

所谓结构元素,可以看做是一张小图像,它通常用于图像的形态学运算(如膨胀、腐蚀、开运算、闭运算)。

I4=imclose(I3,se);

figure(5),imshow(I4);title('平滑图像的轮廓');

I5=bwareaopen(I4,2000);%删除小面积对象;删除二值图像I4中面积小于2000的对象

figure(6),imshow(I5);title('从对象中移除小对象');

[y,x,z]=size(I5);%获取矩阵的行数和列数

myI=double(I5);

%begin横向扫描

tic

Blue_y=zeros(y,1);

fori=1:

y

forj=1:

x

if(myI(i,j,1)==1)

%如果myI(i,j,1)即myI图像中坐标为(i,j)的点为蓝色

%则Blue_y的相应行的元素white_y(i,1)值加1

Blue_y(i,1)=Blue_y(i,1)+1;%蓝色像素点统计

end

end

end

[tempMaxY]=max(Blue_y);%temp为向量white_y的元素中的最大值,MaxY为该值的索引(在向量中的位置)

PY1=MaxY;

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

PY1=PY1-1;

end

PY2=MaxY;

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

PY2=PY2+1;

end

IY=I(PY1:

PY2,:

:

);

%IY为原始图像I中截取的纵坐标在PY1:

PY2之间的部分

%end横向扫描

%begin纵向扫描

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

forj=1:

x

fori=PY1:

PY2

if(myI(i,j,1)==1)

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

end

end

end

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

%end纵向扫描

PX1=PX1-2;%对车牌区域的校正

PX2=PX2+2;

dw=I(PY1:

PY2,:

:

);

t=toc;

figure(7),subplot(1,2,1),imshow(IY),title('行方向合理区域');

figure(7),subplot(1,2,2),imshow(dw),title('定位剪切后的彩色车牌图像')

imwrite(dw,'dw.jpg');

[filename,filepath]=uigetfile('dw.jpg','输入一个定位裁剪后的车牌图像');

jpg=strcat(filepath,filename);

a=imread('dw.jpg');

b=rgb2gray(a);

imwrite(b,'1.车牌灰度图像.jpg');

figure(8);subplot(3,2,1),imshow(b),title('1.车牌灰度图像')

g_max=double(max(max(b)));

g_min=double(min(min(b)));

T=round(g_max-(g_max-g_min)/3);%T为二值化的阈值

[m,n]=size(b);

d=(double(b)>=T);%d:

二值图像

imwrite(d,'2.车牌二值图像.jpg');

figure(8);subplot(3,2,2),imshow(d),title('2.车牌二值图像')

figure(8),subplot(3,2,3),i

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 经济学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1