车牌识别系统.doc

上传人:laozhun 文档编号:2391870 上传时间:2023-02-17 格式:DOC 页数:19 大小:360KB
返回 下载 相关 举报
车牌识别系统.doc_第1页
第1页 / 共19页
车牌识别系统.doc_第2页
第2页 / 共19页
车牌识别系统.doc_第3页
第3页 / 共19页
车牌识别系统.doc_第4页
第4页 / 共19页
车牌识别系统.doc_第5页
第5页 / 共19页
点击查看更多>>
资源描述

《车牌识别系统.doc》由会员分享,可在线阅读,更多相关《车牌识别系统.doc(19页珍藏版)》请在三一办公上搜索。

1、基于MATLAB GUI的车牌识别系统的设计摘要:近几年,车牌识别系统作为智能交通的一个重要方向越来越受到重视。车牌识别系统可以应用于停车场管理系统、高速公路超速管理系统、城市十字路口的“电子警察”、小区车辆管理系统等各个领域,对国家交通的安全发展有很大的作用。虽然目前已有一些车牌识别系统相关产品出现,但是对其算法的研究发展从没有停止,仍有许多学者在做着进一步的研究改进。本文首先对车牌识别系统的现状和已有的技术进行了深入的研究,在研究的基础上开发出一个基于MATLAB GUI的车牌识别系统。汽车牌照识别系统是交通管理领域和数字图像处理领域里的热点问题。本文介绍了MATLAB在汽车牌照图像处理识

2、别系统中的应用,并利用MATLAB实现对车牌身份标识的车牌进行图像采集和智能识别。该系统通过调用MATLAB函数,综合使用多种方法提高系统的有效识别能力。关键词:车牌识别;MATLAB GUI;图像处理1绪论1.1 研究的背景车牌识别系统作为数字摄像、计算机信息管理、图像分割和图形识别技术在智能交通领域的应用,是智能交通管理系统中重要的组成部分。车牌识别技术可应用于道路交通监控、交通事故现场勘察、交通违章自动记录、高速公路超速管理系统、小区智能化管理等方面,为智能交通管理提供了高效、实用的手段。目前世界各国都在进行适用于本国汽车牌照的自动识别研究,美、日、韩等国已有相关系统(基于传感器)问世。

3、引进这些系统费用比较高、而且由于各国车牌和实际的交通环境不同,引进的系统往往无法满足我国城市的需求,而国内市场上虽然已有产品投入使用,但是在后续处理时很大程度上仍然需要人工识别,所以对车牌识别技术的研究依然是目前高科技领域的热门课题之一。车牌识别系统的成功设计、开发和应用具有相当大的社会效益、经济效益和学术意义。基于图像处理的车牌识别系统一般包括以下五个部分:在实际应用中,车牌识别系统必须快速、准确、鲁棒地识别出车牌。因此,在车牌识别过程中,车辆的检测、图像的采集、车牌的识别等都是重要的环节,其中关键的技术有:1)车辆牌照区域定位技术,即给出图像中车牌所在位置。2)车辆牌照字符切分技术,即对定

4、位后的车牌区域中的字符进行切分和归一化处理,其中车牌的二值化和倾斜校正对于字符的切分和识别都是非常重要的。3)车辆牌照字符识别技术,即将切分后的字符识别出来。车牌识别是一个很复杂的图像处理和模式识别问题,研究时存在很多难点,主要在于:1)获取的车牌图像质量不高。车牌图像往往含有大量复杂的背景信息,遮盖了有用信息。很多时候受到照明条件、天气条件、及运动失真的影响,会出现图像模糊、清晰度不高、目标区域过小、色彩失真等现象,影响了车牌的定位。2)车牌悬挂位置不唯一。在汽车的各个位置都可能出现车牌,而且不能保证车牌的水平悬挂,甚至有的车牌出现了扭曲。3)牌照多样性。其他国家的汽车牌照格式,如尺寸大小,

5、牌照上字符的排列等,通常只有一种。而我国则根据不同车型、用途,规定了多种牌照格式,例如分为军车、警车、普通车等。4)我国标准车牌照是由汉字、英文字母和阿拉伯数字组成的,汉字的识别与字母和数字的识别有很大的不同,增加了识别的难度。5)国外许多国家汽车牌照的底色和字符颜色通常只有对比度较强的两种颜色,例如韩国,其车牌底色为红色,车牌上的字符为白色;而我国汽车牌照仅底色就有蓝、黄、白、黑等多种颜色,字符颜色也有黑、红、白等若干种颜色。6)由于环境、道路或人为因素造成汽车牌照污染严重,这种情况下国外发达国家不允许上路,而在我国仍可上路行驶。使得车牌的对比度降低,特征不是很明显,即使在定位准确的情况下,

6、字符的识别也会受到很大影响。目前在国内存在多种牌照格式,且存在以上种种困难和特殊性,加大了我国车牌自动识别的难度,使得中国车辆牌照识别远远难于国外的车辆牌照识别。因而如何提高识别率和识别处理的实时性及实用性成了一个紧要的任务。1.2车牌识别系统现状1.2.1国内外车辆牌照识别技术现状目前,国内外有大量关于车牌识别方面的研究报道。国外在这方面的研究工作开展较早。在上世纪70年代,英国就在实验室中完成了“实时车牌检测系统”的广域检测和开发。同时代,诞生了面向被盗车辆的第一个实时自动车牌监测系统。发展到今日,国外对车牌检测的研究已经取得了一些令人瞩目的成就,提出了一种车牌识别系统,在车牌定位以后,利

7、用马尔科夫场对车牌特征进行提取和二值化,对样本的识别达到了较高的识别率。利用图像中的颜色分量,对车辆牌照进行定位识别,其中提到了三种方法:以Hough变换为基础的边缘检测定位识别;以灰度值变换为基础的识别算法;以HLS彩色模式为基础的车牌识别系统,识别率分别为81.25%、85%、91.25%。日本对车牌图像的获取也做了大量的研究,并为系统产业化做了大量工作。开发的系统应用于公路收费站,全天识别率达到了90%以上,即使在天气不好的情况下也达到了70%。国外对车牌识别的研究起步早,总体来讲其技术已比较领先,同时由于他们车牌种类单一,规范程度较高,易于定位识别,目前,已经实现了产品化,并在实际的交

8、通系统中得到了广泛的应用。由于中国车牌的格式与国外有较大差异,所以国外关于识别率的报道只具有参考价值,其在中国的应用效果可能没有在其国内的应用效果好,但其识别系统中采用的很多算法具有很好的借鉴意义。从车牌识别系统进入中国以来,国内有大量的学者在从事这方面的研究,提出了很多新颖快速的算法。中国科学院自动化所的刘智勇等开发的系统在一个样本量为3180的样本集中,车牌定位准确率为99.42%,切分准确率为94.52%,这套系统后来应用于汉王公司的车牌识别系统,取得了不错的效果。南京大学的熊军等提出了基于字符纹理特征的定位算法,准确率达95%。华中科技大学的陈振学等学者提出了一种新的车牌图像字符分割与

9、识别算法,使用一维循环清零法,通过对垂直投影图进行一次扫描,有效的清除了杂点和间隔符,正确分割率达到了96.8%。浙江大学的张引、潘云鹤等提出了彩色边缘算子ColorPrewitt和彩色边缘检测与区域生长相结合的牌照定位算法Color LP,算法简单,且全面作用在颜色空间的三个分量上,检测出的牌照区域易于与背景剥离。但是计算量和存储量都比较大,难以满足实时性的要求。此外,当车辆区域的颜色和附近颜色相近时,定位失误率会增加。国内还有许多学者都在进行这方面的研究,并且取得了大量的研究成果。1.2.2车牌识别技术的应用情况车辆牌照自动识别技术是智能交通系统的一个重要组成部分,它在交通管理、监控中有着

10、广泛的应用。车辆牌照识别系统技术能够从一幅车辆图像中准确定位出车牌图像,经过字符切分和识别后实现车辆牌照的自动识别,从而为以上应用提供信息和基础功能。目前车牌识别系统主要应用于以下领域:1)停车场管理系统。利用车牌识别技术对出入车辆的号牌进行识别和匹配,与停车卡结合实现自动计时、计费的车辆收费管理系统。2)高速公路超速自动化管理系统。以车牌自动识别技术为基础,与其他高科技手段结合,对高速公路交通流状况进行自动监测、自动布控,从而降低交通事故的复发生率,确保交通顺畅。3)公路布控。采用车牌识别技术实现对重点车辆的自动识别,快速报警,既可以有效查找被盗车辆,同时又为公安、检察机关提供了对犯罪嫌疑人

11、的交通工具进行远程跟踪与监查的技术手段。4)城市十字交通路口的“电子警察”。可以对违章车辆进行责任追究,也可以辅助进行交通流量统计,交通监测和疏导。5)小区车辆管理系统。社区保安系统将出入社区的车辆通过车牌识别技术进行记录,将结果与内部车辆列表对比可以实现防盗监管。目前,市场上已出现了一些可应用的汽车牌照自动识别系统。如CPRS-1型汽车牌照识别系统是在国家“863”计划课题与国防图像目标识别课题相结合的研究基础上研制成功的,实现了识别汽车牌照中的数字、字母和汉字以及汽车牌照的底色(白、黑、蓝、黄四种)的功能,可以全天候工作。另一种型号GWPR9902T的牌照识别器系统产品,采用新型的数字图像

12、处理和识别技术,基于嵌入式工控机DSP和专用硬件电路,利用定向反射和自然光相结合的识别原理,实时地完成复杂情况下的汽车牌照的定位、分割以及识别。此类产品都已应用于高速公路的收费监控系统。总体上说,虽然汽车牌照识别系统在国内还未形成一个成熟的产业,但是随着我国国民经济的迅速发展,机动车辆规模及流量大幅度增加,高速公路和城市交通管理现代化水平的提高势在必行,迫切需要高科技的智能交通系统来充实和加强交通管理水平。车牌识别技术在智能交通系统中占有重要位置,车牌识别技术的推广普及,必将对加强高速公路、城市道路管理,减少交通事故、车辆被盗案件的发生,保障社会稳定等方面产生重大而深远的影响。1.2.3车牌识

13、别技术的发展趋势车牌识别技术作为智能交通系统中的关键技术,在各国学者的共同努力下,已经得到了长足的发展,并且已经得到了不同程度的实际应用,但目前还存在着种种不足。对于未来车牌识别产品的技术发展趋势,汉王科技智能交通部总经理乔炬认为。首先,由于市场需求不同,对识别产品的需求也有差异,因此就要求研发针对不同细分市场的车牌识别产品。其次,随着算法的不断改进,基于视频触发技术的车牌识别产品将得到大范围的应用,但是视频触发技术取代外触发装置尚需时日。第三,现在的车牌识别系统设备过多,系统集成难度大,系统稳定性差,系统维护是一个让人头疼的问题。随着技术不断进步,以往多个设备实现的功能可能由一个设备实现。目

14、前,车牌识别技术和产品性能进入实用阶段的时间还不是很长,随着人工智能以及自动识别技术的进步,未来的技术发展空间还会非常大。例如,核心算法继续发展,识别率和识别速度进一步改善,图像处理中对模糊图像预处理能力增强,画质改善技术的提高等等。2系统总体设计2.1车牌识别系统总体设计一个完整的车辆牌照识别系统是一个复杂的系统,应该包括图像采集、图像预处理、车牌定位、字符切分、字符识别以及图像编码、数码传输与更新等步骤,基本可以分为硬件部分和软件部分,硬件部分主要完成车辆图像的摄取采集,软件部分主要完成对采集到的车辆图像进行车辆牌照定位、车牌字符切分与车牌字符识别等工作,这部分工作最为复杂,最后对识别结果

15、进行数据传送和存储,将处理后的识别信息交给管理系统进行管理。整个系统的核心是软件部分的工作,能否通过牌照对车辆进行有效管理,很大程度上取决于软件部分识别车牌的准确性。一个车牌识别系统的基本结构如图2所示:图2车辆牌照识别系统结构图2.2系统硬件设计一个车牌识别系统的基本硬件配置由摄像机、主控机、采集卡和照明装置组成。例如在停车场管理系统中,系统硬件主要包括车辆传感探测器、高性能工控计算机、高分辨率CCD摄像机、高放大倍数镜头、CCD自动亮度控制器和视频采集卡等。首先是探测车辆的接近、通过和停留等。常用的有光探测器、微波雷达通过型探测器、测速雷达探测器、声探测器、红外探测器、电磁感应探测器和压敏

16、探测器等。我国停车场应用较多的是红外探测器和电磁感应环探测器。设置在停车场入口和出口的两对红外发射和接收设备进行车辆检测。利用编码调制信号,增强抗干扰的能力,具有较强的可靠性。前端工控机利用红外线探测到车辆经过的信号时,控制图像采集卡抓拍图像,并对抓拍的汽车图像进行牌照识别,同时控制摄像机光圈的大小,以适应外界环境不同的光照条件。然后将识别出的牌照信息储存到服务器中,当车辆离开时,同样的进行牌照识别,将其与前面输入的牌照信息进行对比,计算出停车时间,然后计费。本课题主要侧重算法的研究,主要工作是设计软件,对已摄取到的车辆照片实现车牌识别。2.3系统软件设计 硬件设备采集到图片后首先要考虑图像的

17、存储格式。目前比较常用的图像格式有*.BMP、*.JPG、*.GIF、*.PCX等,本课题采集到的图片是*.JPG的格式。软件系统的编写大多采用VC或者MATLAB语言,本课题选用了MATLAB语言。MATLAB具有以下优点:1)MATLAB编程效率高,使用方便。MATLAB以矩阵作为基本语言要素大大提高了数值计算的编程效率。MATLAB本身拥有丰富的函数库,并具有结构化的流程控制语句和运算符,用户在使用过程中能够方便自如地应用。其图像处理工具箱更是大大扩展了MATLAB解决图像处理问题的能力,其他还有诸如用于神经网络和小波的工具箱等,对于算法的分析都有着很大的帮助。2)MATLAB扩充能力强

18、,交互性好,移植性和开放性较好。MATLAB的库函数同用户文件在形式上是一样的,用户可以根据自己的需求方便地建立与扩充新的库函数,扩充其功能。MATLAB可在Windows系列、UNIX、Linux、VMS 6.1、PowerMac平台上使用,且所有的核心文件和工具箱文件都是公开的,用户可以修改源文件构成新的工具箱,从而可以扩充很多新的功能,利于算法的研究和改进。3)较强的图形控制和处理功能,自带的API使得用户可以方便地在MATLAB与C、C+等其他程序设计语言之间建立数据通信。本文设计的系统采用MATLAB搭建车辆牌照识别系统,具有非常明显的优势: 1)使用MATLAB的图形用户界面技术(

19、GUI)编写牌照识别系统面板,可以达到与牌照定位切分程序及字符识别程序的无缝连接。2)使用专业工具箱,使得研究人员不必过于关心程序的细节问题,可以将主要的精力放在算法的研究、设计方面,极大地减少了工作量,为算法的研究改进提供了先决条件。整个软件系统是一个具有车牌识别功能的图像分析和处理软件。首先将采集到的汽车图像进行灰度化、灰度拉伸和滤波处理,以降低噪点、增加车牌部分的对比度。然后,通过对预处理后的图像进行小波变换分解提取图像边缘,并进行形态学处理,这时,车牌的轮廓已经非常清晰,并且可以和非车牌区域明显区分开来了,接着,根据车牌的特点进行车牌初步定位,对车牌区域和伪车牌区域进行筛选后,采用投影

20、法进行车牌二次定位,提取出车牌图像。将提取出的车牌图像进行二值化处理,根据投影图的特点查找倾斜的角度,采用坐标变换的方法进行车牌倾斜校正,并利用其垂直投影图中字符显示出的峰群的特点进行字符切分。整个系统的设计主要采用了M语言,最后搭建了一个测试平台,将上述三个部分进行了系统化,对系统的性能进行了测试和分析。3车牌定位3.1 图像预处理车牌定位是车牌识别系统完成图像采集后对图像进行处理的第一步,它的好坏直接关系到整个系统识别率的高低,并且对识别速度有很大的影响。车牌不能准确定位意味着后面的识别过程都是无效的。车牌定位是指车牌部分的图像从整个图像中切分出来的过程,一般包括图像预处理、车牌搜索、车牌

21、定位三个部分。如下图3所示:图3车牌定位的过程3.1.1图像灰度化灰度图是指只包含亮度信息,不包含色彩信息的图像,例如平时看到的亮度连续变化的黑白照片就是一幅灰度图。灰度化处理就是将一幅彩色图像转化为灰度图像的过程。彩色图像分为R、G、B三个分量,分别显示出红、绿、蓝等各种颜色,灰度化就是使彩色的R、G、B分量相等的过程。灰度值大的像素点比较亮(像素值最大为255,为白色),反之比较暗(像素值最小为0,是黑色)。图像灰度化的算法主要有以下3种:1)最大值法:使转化后R、G、B的值等于转化前3个值中最大的一个,即:R=G=B=max(R,G,B) (3.1)这种方法转换的灰度图亮度很高。2)平均

22、值法:使转化后R、G、B的值为转化前R、G、B的平均值R=G=B=(R+G+B)/3 (3.2)这种方法产生的灰度图像比较柔和。3)加权平均值法:按照一定的权值,对R、G、B的值加权平均,即: (3.3)其中,、分别为R、G、B的权值。、 取不同的值,将形成不同的灰度图像。由于人眼对绿色最为敏感,红色次之,对蓝色的敏感性最低,因此使将得到较易识别的灰度图像。一般情况下,当=0.299,=0.587,=0.114时,得到的灰度图像效果最好。本课题使用加权平均值法处理车辆图像,得到的灰度图效果如图4所示:图4(a)原始汽车图像 (b)灰度图3.1.2灰度拉伸对车辆图像进行灰度化处理之后,车牌部分和

23、非车牌部分图像的对比度并不是很高,此时如果直接进行边缘提取,由于车牌界限较为模糊,难以提取出车牌边缘,因而难以准确定位车牌。为了增强牌照部位图像和其他部位图像的对比度,使其明暗鲜明,有利于提高识别率,需要将车辆图像进行灰度拉伸。所谓灰度拉伸,是指根据灰度直方图的分布有选择地对灰度区间进行分段拉伸以增强对比度。如图5所示。它将输入图像中某点(x ,y)的灰度f (x ,y),通过映射函数T,映射成输出图像中的灰度g (x, y),即: g(x,y)=Tf(x,y) (式3.4)图5灰度变换的对比曲线假定原图像f (x, y)的灰度范围为s1,s2希望变换后图像f (x ,y)的灰度范围扩展至t1

24、,t2,可采用下述线性变换来实现。g(x,y)=(t2-t1)/(s2-s1)f(x,y)+ t1 (式3.5)图6(a)灰度图 (b)灰度变换后的图像车辆图像进行灰度拉伸前后的效果对比如图6所示,从图中可以看出,灰度拉伸后,对比度明显增强,车牌区域更加明显。3.1.3图像平滑车牌图像往往存在一些孤立的噪点。在汽车牌照图像处理初期,若不能有效抑制或者去除这些噪点,将影响车牌定位的准确性或者造成无法定位。通常采用图像平滑的方法去除噪点。图像平滑包括空域滤波和频域滤波。其中空域滤波中采用平滑滤波器的中值滤波去除噪点的效果最好。中值滤波的主要原理是:首先确定一个以某个像素为中心点的邻域,一般为方形邻

25、域;然后将邻域中的各个像素的灰度值进行排序,取其中间值作为中心点像素灰度的新值,这里的邻域通常被称为窗口;当窗口在图像中上下左右进行移动后,利用中值滤波算法可以很好地对图像进行平滑处理。在二维形式下,一般取某种形式的二维窗口,将窗口内的像素排序,生成单调二维数据序列。二维中值滤波,其中表示取窗口中值。在实际应用中,窗口的尺寸一般先选3再选5,逐渐增大,直到滤波效果满意为止。本文选择的窗口尺寸为3。滤波效果如图7所示。图7(a)灰度图(b)中值滤波后的图像3.2图像预处理的matlab程序输入的彩色图像包含大量颜色信息,会占用较多的存储空间,且处理时也会降低系统的执行速度,因此对图像进行识别等处

26、理时,常将彩色图像转换为灰度图像,以加快处理速度。对图像进行灰度化处理、提取背景图像、增强处理、图像二值化的主要MATLAB语句如下所示: Cgray=rgb2gray(car);%rgb2gray转换成灰度图像s=strel(disk,25);%strei函数Bgray=imopen(Cgray,s);%打开Cgray图像figure,imshow(Bgray);title(背景图像);%输出背景图像Egray=imsubtract(Cgray,Bgray);%两幅图相减figure,imshow(Egray);title(增强黑白图像);%输出增强图像max1=double(max(max

27、(Egray);%Egray的最大值并输精度型fmin1=double(min(min(Egray);%eEgray的最小值并输精度型level=(fmax1-(fmax1-fmin1)/3)/255;%获得最佳阈值bw22=im2bw(Egray,level);%将图像转换为二进制图像然后采用Canny算子进行边缘检测,再用imopen和imclose对所得二值图像作开、闭操作进行滤波。3.3车牌的定位首先采用imclearborder函数对提取后的车牌边缘进行连通处理,删除和图像边界相连的细小的对象,使得相邻的区域可以连成一个整体。然后进行数学形态学的腐蚀和膨胀运算,从而使车牌区域的垂直边

28、缘连接成一个整体,同时和周围的干扰区域分离,成为一个独立的区域。水平结构元素可以是形如11的滑动窗口,结构元素的大小取决于车牌图像的大小,一般取所有车牌图像大小的统计均值。相应的代码如下:a1=imclearborder(a1,8);%8连通st=ones(1,14);%选取的结构元素bg1=imclose(a1,st);%闭运算bg3=imopen(bg1,st);%开运算bg2=imopen(bg3,1 1 1 1 1 1 1);首先进行闭运算,使得水平相邻的边缘连接成为连通区域,由于车牌长度比较长,所以选取的结构元素为1 1 1 1 1 1 1 1 1 1 1 1 1 1。然后再进一步在

29、垂直边缘上进行两次开运算,两次结构元素的选取是由实验的结果得到的。在采用这两个结构元素进行开运算后使得车牌区域与其它背景区域分开,成为独立的连通域。处理后的图像如图8所示。从图中可以看出。车牌区域已经非常明显,和其他区域有明显的区别。图8开闭运算后的图像由于前面开闭运算中有可能将部分车牌腐蚀掉,造成定位错误或者车牌缺失,所以先进行车牌的初步提取,去除伪车牌,然后结合车牌的纹理特征进行准确提取。提取候选区域的步骤是:首先对经过开闭运算处理的图像进行区域提取,并计算区域特征参数,然后根据车牌的先验知识对区域特征参数进行比较,提取车牌区域。本课题选择使用车牌的宽高范围和比例关系对车牌进行初步定位。对

30、车牌的区域提取可以利用regionprops函数,对图像每个区域进行标记,然后计算每个区域图像特征参数:区域中心位置、最小包含矩形,面积。最后计算出包含所标记区域的最小矩形的宽和高。提取车牌区域特征的代码为:L,num=bwlabel(bg2,8);%区域标记Feastats=regionprops(L,all);%区域特征提取Area=Feastats.Area;BoundingBox=Feastats.BoundingBox;RGB=label2rgb(L,spring,k,shuffle);width=BoundingBox(l-1)*4+3);%计算包含标记区域的最小区域的宽heigh

31、t=BoundingBox(l-1)*4+4);%计算包含标记区域的最小区域的高图9车牌区域标记2007年实施的车牌标准规定,车前车牌长440mm,宽140mm。其比例为440/140 3.15。根据图像像素的大小,这里选取筛选条件为宽在50到150之间,高在20到50之间,同时宽高比例应大于0.45,就可以比较准确的得到车牌的大致位置。初步提取的车牌图像如图10所示。图10定位后的车牌4车牌字符切分4.1车牌字符切分综述在车辆牌照准确定位后,本章主要是对车辆牌照识别中的字符切分算法进行研究,依次研究了二值化、倾斜校正和字符切分三个算法。车牌字符切分的流程框图如图11所示。图11车牌字符切分流

32、程4.2车牌二值化图像中对象物的形状特征的主要信息,常常可以从二值图像中得到。二值图像与灰度图像相比,信息量大大减少,因而处理二值图像的速度快,成本低,实用价值高。因此,在车牌字符切分前,首先对图像进行二值化处理。4.3图像二值化的基本原理图像的二值化处理就是将图像上的点的灰度值置为0或255,这样处理后整个图像呈现明显的黑白效果,即将256个亮度等级的灰度图经过合适的阈值选取,而获得的二值化图像仍然可以反映图像整体和局部特征。二值化处理后的图像,其集合性质只与像素值为0或255的点的位置有关,不再涉及像素的其他级值,处理过程简单,且数据的处理和压缩量小。为了得到理想的二值图像,一般采用封闭、

33、连通的边界定义不交叠的区域。所有灰度大于或等于阀值的像素被判定为属于特定物体,其灰度值为255,否则,灰度值为0,表示背景或者其他的物体区域。如果某图像在内部有均匀一致的灰度值,并且处在一个具有其他等级灰度值的均匀背景下,利用阀值法就能得到较好的切分效果。如果物体同背景的差别难以用不同的灰度值表现(比如纹理不同),可以把这些差别特征转换为灰度的差别,然后利用阀值法来切分该图像。动态调节阀值来实现图像的二值化可动态地观察其切分图像的具体结果。下面是对部分图像进行二值化的结果。图12 对图像进行二值化4.4倾斜校正虽然标准的车牌字符应为水平依次排列,但是由于放置不当或车身前进方向与图像采集设备不在

34、同一条直线上等原因,会造成图像中的车牌倾斜、扭曲。因为一个倾斜的数字或字母的识别和一个很正的数字或字母的识别是有很大差别的,所以车牌定位之后要进行倾斜校正。一般情况下,倾斜校正有两步,第一步是找出倾斜的角度;第二部是进行坐标变换,得到校正后的图像。4.3.1倾斜角度的计算目前常用的计算倾斜角度的方法有两种,一种是Hough变换来找出倾斜的角度,一种是利用投影的方法来找出倾斜的角度。另外还有Radon变换方法等,这里主要介绍前面两种方法。1)Hough变换Hough变换(Hough Transform,HT)作为一种预处理算法,是由Paul Hough在1962年提出的一种检测和定位直线或者解析

35、曲线的方法,目前是直线检测的重要工具。这种方法针对有噪声图像有很好的稳定性和鲁棒性,可以并行实现。Hough变换提取直线法是一种变换域直线提取法,它把直线上的点的坐标变换成过点的直线的系数域,利用了共线和直线相交的关系,使直线的提取问题转化为计数问题。 日常所需要校正的车牌大致分为两类:一类是车牌整体旋转一个角度,形成原因一般是挂放的不规范;另一类是歪斜车牌,形成的原因主要是图像采集时的透视误差造成的。采用Hough变换的方法找出需要倾斜的角度,需要从图像中找出两条直线做为基准线,一条是水平直线,另一条是垂直方向的直线。找到之后,以此边界线为参照物结合Hough变换检测的直线的参数即可找到倾斜

36、的角度。利用Hough变换查找倾斜角度的流程图如图13所示,旋转的角度和方式与车牌倾斜原因有关。其中水平偏移校正的依据是。图13利用Hough变换查找倾斜角度利用Hough变换查找牌照倾斜角度的方法,最重要的是找到基准线,并且做为基准线的这条直线应该满足水平直线和垂直直线的要求。Hough变换基准线的选择,通常是图像中最长的一条直线。在有车牌边框的图像中,车牌边框往往成为了基准线,但是倾斜的车牌其边框通常也是倾斜的。本课题在车牌定位算法中,车牌边框已经去除,所以基准线往往从字母或者数字中查找,并不能保证其水平性和垂直性。4.4字符切分国内汽车牌照种类很多,格式不一,为研究方便以常见的蓝色车牌为

37、例来说明。2007年颁布的车牌规范规定车牌总长440mm,牌照中的7个字符的实际总长为409mm左右,宽140mm,每个字符45mm宽,90mm高,字符间距为10mm,其中第二个字符与第三个字符的间距较为特殊,为15.5mm,最后一个字符与第一个字符距边界25mm。这样,如果平均分配每个字符在牌照中占据的宽度,那么每个字符宽度为:width/7(width为车牌图像的宽度)。但是,实际上,第二个第三个字符之间存在一个黑点,牌照左右两边与图像边缘也都有一定的宽度,所以每个字符的宽度应该小于width/7。考虑所有的情况,一般情况下最小的宽度width/9。因此,字符的宽度可以从width/9到w

38、idth/7之间渐进的变化得到。经过车牌字符图像的二值化和倾斜校正,得到的是一个只包含牌照字符的水平条形区域,为了进行字符识别,需要将牌照字符从图像中分割出来。这里常用投影法,既简单又快捷。投影法切分车牌字符的思想是根据车牌字符的特点,将车牌图像进行垂直方向的投影,因为字符区域的黑色像素点比较多,比较集中,同时每个车牌字符之间有一定的空隙间隔隔开。这样投影下来得到的投影图应该有多个相对集中的投影峰值群,只要根据峰值群的特点进行分割,就可以得到车牌的字符。对图像的垂直方向进行投影,得到的投影图如图14所示。图14字符投影图从图14的投影图可以看出,图中有七个比较集中的投影峰值群,且每个峰值之间都

39、有一定的间隔。根据这一特点,从左往右依次定位出每个字符的起始和结束位置,并且进行切割。然后对切割出来的每个字符图像进行水平投影。根据水平投影像素累加值进行水平切割,从而得到精确切割后的字符。车牌字符切分的具体算法为:1)对车牌图像进行垂直投影,计算出字符的宽度后,确定字符的中间位置,并计算相邻两个字符之间的间距,即中间距离的差值。取其最大值定为第二个字符和第三个字符之间的距离。以此为分界线,分别向前、后两个方向进行切分,从而定位出每个字符的左右边界,并保存在数组里。由于MATLAB的数组可以存放不同大小的数据,为字符边界信息的存储提供了极大的便利。2)对每个切分出的字符进行水平投影,确定字符的

40、具体的上下边界,保存到数组里。3)由于用于最后识别的字库中字符模板为24 48像素,所以这里对切分出来的字符进行归一化处理,统一为24 48像素。4)将归一化后的字符的信息保存在数组里,做为参数输入字符识别模块与模板比较进行字符识别。切分后的字符效果如图15所示:图15字符切分后的效果图最后介绍一下确定字符宽度和中心距离的算法:首先对垂直投影进行峰谷分析,根据预先设定的阈值查找并记录每一个字符的上升点,及每一个字符的下降点。计算前一个下降点到后一个上升点之间的距离就是两个字符之间的谷宽度。然后计算相邻两个字符的上升点的差值,减去它们之间的谷宽度,就可以得到每一个字符的宽度。用字符上升点的位置加

41、上字符的宽度的一半,就可以得到字符的中间位置。该算法操作起来比较方便,并且可以和字符左右边界的确定同时进行。5车牌字符识别5.1适用于(OCR)的算法目前用于车牌字符识别(OCR)中的算法主要有:基于模板匹配的OCR算法以及基于人工神经网络的OCR算法。基于模板匹配的OCR的基本过程是:首先对待识别字符进行二值化并将其尺寸大小缩放为字符数据库中模板的大小,然后与所有的模板进行匹配,最后选最佳匹配作为结果。用人工神经网络OCR进行字符识别主要有两种方法:一种方法是先对待识别字符进行特征提取,然后用所获得的特征来训练神经网络分类器。识别效果与字符特征的提取有关,而字符特征提取往往比较耗时。因此,字

42、符特征的提取就成为研究的关键。另一种方法则充分利用神经网络的特点,直接把待处理图像输入网络,由网络自动实现特征提取直至识别。模板匹配的主要特点是实现简单,当字符较规整时对字符图像的缺损、污迹干扰适应力强且识别率相当高,是车牌字符识别的主要方法5-8。在字符识别之前必须把模板库设置好。汽车牌照的字符一般有7个,大部分车牌第一位是汉字,通常代表车辆所属省份,或是军种、警别等有特定含义的字符简称;紧接其后的为字母与数字。车牌字符识别与一般文字识别在于它的字符数有限,09十个阿拉伯数字,26个大写英文字母AZ以及相关的车牌用汉字:京、沪、苏、台、港、澳、甲、乙、丙、使、领、学、试、境、消、边、警等,以

43、及新式军牌中的汉字南、兰、广、北、沈、济、空、海等;车牌颜色:蓝、白、黑、黄等。所以建立字符模板库也极为方便。5.2模板设计分析字符分割得到的图像以及其他车牌图像中字符的特点,将模板设定大小、背景、字符边缘色等等。一幅jpg或者bmp格式的图片,其中包含了许许多多的像素点,各像素点的值也不一样,模板库中的字符应该是已知的,是预先设置好的,是不可更改的,而不是在实验过程中来得到。用画图工具一步一步逼近实现模板设置。实验结果显示,这种方法简单易行。字符识别中模板匹配方法是实现离散输入模式分类的有效途径之一,其实质是度量输入与样本之间的某种相似性,取相似性最大者为输入模式所属类别,它根据字符的直观形

44、象抽取特征,用相关匹配原理进行识别,即将输入字符与标准字符在一个分类器中进行匹配。基于MATLAB实现字符的识别,其中有两个很重要的函数可以直接调用:corr2函数和max函数。Corr2函数直接用来计算图像矩阵A与B的相关系数r。A与B的大小及数据类型必须相同,得到的结果r是双精度标量。其调用方法:r=corr2(A,B),字符识别只需调用此函数,即将分割出来的字符与设置好的模板一一进行相关运算,然后寻找出它们中的最大相关值。max函数就是用来选择几个数值的大小值。其调用方式:b,c=max(a(:),其中b返回的是比较后得到的最大值,c是最大值所对应的元素位置。同时编写一个识别函数resu

45、lt.m用来返回识别结果。M1、M2、M3、M4、M5、M6、M7为标准模板对应的二维数组。函数在开始运行时,从主函数里得到待识别的字符,字符与模板进行相关运算,同时找出相关运算后的最大值及对应的函数位置。然后对最大位置进行判别,返回所对应的字符给主程序。并在MATLAB运行窗口显示出来。编写result.m函数大大简化了计算量,每个字符在识别的时候直接调用此函数,避免了重新编程浪费的时间及空间。MATLAB的运行窗口显示出的车牌号码为:苏,M,7,A,5,8,9,准确识别了车牌。4结语基于MATLAB图像处理的汽车牌照识别系统很大程度得利于MATLAB软件,MATLAB功能强大,它包括数值计算和符号计算,并且计算结果和编程都为可视化。本文介绍了一种基于MATLAB处理的汽车牌照图像识别系统。通过实验表明该系统可以实现汽车牌照的识别,并且准确率高,具有较好的应用前景。

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

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号