收藏 分销(赏)

基于matlab的汽车牌照识别方法研究.doc

上传人:快乐****生活 文档编号:2303417 上传时间:2024-05-27 格式:DOC 页数:48 大小:1.22MB
下载 相关 举报
基于matlab的汽车牌照识别方法研究.doc_第1页
第1页 / 共48页
基于matlab的汽车牌照识别方法研究.doc_第2页
第2页 / 共48页
基于matlab的汽车牌照识别方法研究.doc_第3页
第3页 / 共48页
基于matlab的汽车牌照识别方法研究.doc_第4页
第4页 / 共48页
基于matlab的汽车牌照识别方法研究.doc_第5页
第5页 / 共48页
点击查看更多>>
资源描述

1、 编 号: 审定成绩: 重庆邮电大学毕业设计(论文)设计(论文)题目:基于Matlab的汽车牌照识别方法研究学 院 名 称 :自动化学院学 生 姓 名 :周杰专 业 :电气工程与自动化班 级 :0831001学 号 :2010213043指 导 教 师 :徐洋答辩组 负责人 :填表时间:二0一四 年 五 月重庆邮电大学教务处制重庆邮电大学本科毕业设计(论文)摘 要近几年,车牌识别系统作为智能交通的一个重要方向越来越受到重视。车牌识别系统可应用于停车场管理系统、智能交通管理系统、小区车辆管理系统等各个领域,对交通管理及治安管理有着十分重要的作用。本文针对车牌识别系统的现有技术进行了更加深入的研究

2、。在研究的基础上开发出一个基于MATLAB 的车牌号识别系统。该设计方案只进行Matlab软件的开发,图像采用已经采集的车牌显示清晰的汽车图片,软件包括车牌定位、车牌字符分割及车牌字符识别三个模块。车牌定位模块中使用了基于车牌颜色的的车牌车牌定位算法;车牌字符分割模块中,是采用基于垂直投影法的算法将牌照区域分割为单个字符;车牌字符识别模块中,采用的是基于模板匹配的OCR算法进行识别,同时将字符分为三部分,第一部分为汉字部分,第二部分为车牌的第二个字母,第三部分为其余的字母与数字部分,三部分单独建模识别。根据上述算法搭建了一个测试平台,通过测试平台,对大量照片进行车牌识别,测试系统的性能。测试结

3、果表明,本课题设计的车牌识别系统可有效地实现车牌识别,为今后的产品化奠定了很好的技术基础。【关键词】车牌识别 车牌定位 字符分割 字符识别ABSTRACT In recent years, the license plate recognition system is an important direction of intelligent traffic more and more attention. License plate recognition system can be applied to various parking management system, intellig

4、ent traffic management system, vehicle management system of community and other fields, plays an important role in traffic management and security management.本文针对车牌识别系统的现有技术进行了更加深入的研究。在研究的基础上开发出一个基于MATLAB 的车牌号识别系统。该设计方案只进行Matlab软件的开发,图像采用已经采集的车牌显示清晰的汽车图片,软件包括车牌定位、车牌字符分割及车牌字符识别三个模块。车牌定位模块中使用了基于数学形态学的

5、的车牌车牌定位算法;车牌字符分割模块中,是采用基于采用垂直投影法将牌照区域分割为单个字符;车牌字符识别模块中,采用的是SVM算法进行识别,同时将模型分为三部分,第一部分为汉字部分,第二部分为车牌的第二个字母,第三部分为其余的字母与数字部分,三部分单独建模识别。根据上述算法搭建了一个测试平台,通过测试平台,对大量照片进行车牌识别,测试系统的性能。测试结果表明,本课题设计的车牌识别系统可有效地实现车牌识别,为今后的产品化奠定了很好的技术基础。 In this paper, the existing technology for license plate recognition system ha

6、s been studied deeply. On the basis of the research to develop a license plate recognition system based on MATLAB. The development of the design of Matlab software, the plate is already collected images show clear picture of a car, the software including the license plate location, license plate cha

7、racter segmentation and character recognition of license plate three modules. The license plate location module used in the vehicle license plate location algorithm based on license plate color; license plate character segmentation module, is the use the vertical projection algorithm based on the li

8、cense plate region is divided intoa single character; license plate character recognition module,is used to identify the OCR algorithm based on template matching,the first part is Chinese characters part the second part is the license plate, the second letters of the alphabet, the third part is the

9、letters and numbers of the rest, three separate part modeling identification. According to the above algorithm to build a test platform, the test platform, vehicle license plate recognition of a large number of photos, performance test system. The test results show that, the license plate recognitio

10、n system designed in this thesis can effectively realize the license plate recognition, laid a good technical foundation for future products.【Key words】LPR Vehicle license plate location Character segmentation Character recognition目 录 第一章 绪论1第一节 本课题的研究背景1第二节 本课题的研究目的及意义2第三节 国内外发展状况2第二章 图像处理概述4第一节 图像

11、的读取4第二节 图像的预处理4一、图像的基础4二、数字图像的表示4三、图像的灰度化5四、图像的二值化5第三节 本章小结6第三章 系统方案设计7第一节 车牌识别系统设计方案概述7第二节 系统开发环境选择7第三节 本章小结8第四章 测试结果与分析9第一节 车牌定位9一、图像的灰度化9二、边缘检测11三、灰度图腐蚀12四、图像的平滑处理13五、车牌区域定位15第二节 车牌字符分割16一、字符切割前彩色车牌图像的进一步处理16二、字符分割和归一化处理17第三节 字牌字符识别19第四节 实验结果分析21第五节 本章小结22结 论23致 谢24参考文献25附 录26一、英文原文:26二、英文翻译:30三、

12、源程序33 - IV -第一章 绪论第一节 本课题的研究背景随着社会经济的发展,汽车成为人们出行的重要工具之一,因此汽车的数量正在迅速增长,然而在给出行提供便利的同时,车辆管理上存在的问题日益突出,人工管理的方式已经不能满足实际的需要。而微电子、通信和计算机技术在交通领域的应用极大地提高了交通管理效率,作为信息来源的自动检测、图像识别技术越来越受到人们的重视。近年来计算机的飞速发展和数字图像处理技术的日趋成熟,为传统的交通管理带来了巨大转变,先进的计算机处理技术,不仅可以将人力从繁琐的人工观察,监测中解放出来,而且能够大大提高其精确度,智能交通系统就是在这样的背景与目的下进行开发的。在智能交通

13、系统中,车牌自动识别系统是一个非常重要的发展方向。汽车牌照等相关信息的自动采集和管理对于交通车辆管理、园区车辆管理、停车场管理、交警稽查等方面有着十分重要的意义,成为信息处理技术的一项重要研究课题1。关于车牌识别系统研究,在我国已经有了十几年的发展历程,目前系统的应用还处于起步阶段,大规模投入使用的成熟系统还没有出现,汽车牌照识别系统作为改进交通管理的有效工具,技术水平仍需完善。现目前国内车牌识别的难点有:1)由于车牌图像采集,会受到光照条件、天气条件的影响,会出现图像模糊,对比度低,目标区域过小,色彩失真等影响,并且会伴随复杂的背景图像,这些都会影响车牌定位及识别。2)每次采集时目标所处位置

14、不会一样,采集视角会有很大变化,且由于车牌歪斜,将导致图像出现扭曲,3)牌照的多样性。其他国家的汽车牌照格式,通常只有一种。而我国则根据不同车型、用途,规定了多种牌照格式,例如分为军车、警车、普通车等。我国标准车牌照是由汉字、英文字母和阿拉伯数字组成的,而汉字的识别与字母和数字的识别有很大的不同,增加了识别的难度。4)我国汽车牌照的底色和字符颜色多样,蓝底白字、黄底黑字、黑底白字、红底黑字、绿底白字、黄底黑字多种,5)由于环境、道路或人为因素造成汽车牌照污染严重,使得车牌的对比度降低,特征不是很明显,即使在定位准确的情况下,字符的识别也会受到很大影响。因此现有的识别方法也不能很好的适应多变的环

15、境,所以对车牌识别技术的研究依然是目前高科技领域的热门课题之一。 第二节 本课题的研究目的及意义车牌识别系统的主要任务是分析和处理采集到的复杂背景下的车辆图像,定位分割牌照,最后自动识别汽车牌照上的字符。车牌识别是利用车辆牌照的唯一性来识别车辆,它是以数字图像处理、模式识别、计算机视觉等技术为基础的智能识别系统。在现代化交通发展中车牌识别系统是提升交通系统智能化、现代化的重要因素,车牌识别系统能够从一幅图像中自动提取车辆图像,自动分割牌照图像,对字符进行正确识别,从而降低交通管理工作的复杂度。车牌识别系统将获取的车辆图像进行一系列的处理后,以字符串的形式输出结果2,因此车牌识别系统的便捷性是人

16、工车牌识别所不能比拟的,它拥有着很大的经济价值和发展空间,对车牌识别技术的研究是非常有意义的。在车牌识别系统中最重要的两个技术是车牌定位和车牌字符识别,这两个技术的好坏将直接影响到整个车牌识别系统的实时性和准确性。国内外己有不少学者对车牌定位技术做了大量的研究,但在实际的应用中还没有一个有效可行的方法,如由于车辆抖动造成车牌图像的歪斜、由于污迹和磨损造成车牌字符的模糊、由于光照不均造成车牌图像的模糊等都会或多或少影响到车牌定位的准确度。针对以上实际情况,很多学者开始在鉴于车牌图像本身特征的基础上研究车牌定位技术,并先后提出了一些有效的定位方法,以减小种种主、客观因素对车牌定位准确度的影响。车牌

17、字符识别的实质是对车牌上的汉字、字母和数字进行快速准确的识别并以字符串的形式输出结果,字符识别技术是整个车牌识别系统的关键。车牌识别系统与其它图像识别系统相比较而言要复杂很多,在字符识别中,汉字识别是最难的部分,很多国外较为成熟的车牌识别系统无法进入中国市场的原因就在于无法有效的识别汉字。此外,由于外界环境的影响,系统必须保证能够在任何天气情况下全天不间断的正常工作。到目前为止,在众多的车牌自动识别方法中还没有一个可以达到理想的效果,因此对车牌识别技术的研究意义重大。第三节 国内外发展状况车牌自动识别技术的研究国外起步较早。早在20世纪80年代,便有一些零零散散的图像处理方法用于车牌自动识别技

18、术的某些具体应用。在这个阶段,车牌自动识别技术的研究还没有形成完整的体系,一般采用简单的图像处理方法来处理一些问题,且最终结果需要人工干预。进入20世纪90年代后,国外汽车牌照识别系统的研究开始正式起步,典型的如A.S.Johoson等提出的汽车牌照自动识别系统的图像分割(Image Segment)、特征提取(Feature Extraction)、模板构造(Template Formation)和字符识别(Character Recognition)等四个部分,完成车牌的自动识别。由于我国的车牌格式和外国的有较大差异,所以对于国外的车牌识别系统的技术研究,我们只能作为参考,而不能直接应用。

19、虽然我国的车牌识别需要识别汉字,但是对于英文字母和数字的识别,我们可以借鉴国外的研究技术。国内在90年代也开始了自己的车牌识别系统的研究。目前较成熟的产品有中科院自动化研究所汉王公司的“汉王眼”,香港亚洲视觉科技有限公司的慧光车牌识别系统等等。另外清华大学人工智能国家重点实验室、上海交通大学的计算机科学和工程系、浙江大学自动化系、西安交通大学的图像处理和识别实验室等都做过类似的研究。虽然这些车牌识别系统的识别率大多都较高,能达到95%甚至97%、98%,但是这些车牌识别系统的识别检测结果大多都是在简单受限制的场景下取得的,在实际的交通场合和更加复杂的背景环境的情况下,这些车牌识别系统的识别率一

20、般都较低,在90%左右,甚至更低。从目前一些产品的性能指标看得出,车牌识别系统的识别率和识别速度还有待提高。现代交通的高速发展以及车牌识别系统应用范围的日益拓宽给车牌识别系统提出来更高的要求。因此,研究高速、准确的定位与识别算法是目前的主要任务,而图像处理技术的发展和摄像设备、计算机性能的提高都会促进车牌识别技术的发展,提高车牌识别系统的性能。 第二章 图像处理概述第一节 图像的读取图像是由一系列排列有序的像素组成的。在计算机中常用的存储格式有:BMP、TIFF、EPS、JPEG、GIF、PSD、PDF等格式。本课题采集到的图片是*.JPG的格式,因为*.JPG格式可利用可变的压缩比来控制文件

21、的大小,有损压缩格式,且广泛支持 Internet 标准,是目前广泛使用的图片保存和传输格式,大多数摄像设备都是以*.JPG格式保存图像。在Matlab中,利用图像工具箱的imread函数即:Car_Image_RGB=imread(Image_Name);就可将图像读取出来,而这样读取到的图像是RGB图像,RGB图像分别用红、蓝、绿三个色度值为一组代表每个像素的颜色,因此Car_Image_RGB是一个的数组,m、n表示图像像素的行、列数。第二节 图像的预处理一、图像的基础 图像就是所有具有视觉效果的画面,它包括:纸介质上的、底片或照片上的、电视、投影仪或计算机屏幕上的。图像根据图像记录方式

22、的不同可分为两大类:模拟图像和数字图像。模拟图像可以通过某种物理量(如光、电等)的强弱变化来记录图像亮度信息,例如模拟电视图像;而数字图像则是用计算机存储的数据来记录图像上各点的亮度信息。二、数字图像的表示数字图像,又称数码图像或数位图像,是二维图像用有限数字数值像素的表示3。由数组或矩阵表示,其光照位置和强度都是离散的。数字图像是由模拟图像数字化得到的、以像素为基本元素的、可以用数字计算机或数字电路存储和处理的图像。我们一般将其分为两类,分别为灰度图像与彩色图像。灰度图像 (Gray Scale Image),也称为灰阶图像: 灰度是黑白之间的差距分级量化,图像中每个像素可以由0(黑)到25

23、5(白)的亮度值表示,0-255之间表示不同的灰度级。其级数的大小代表了图像中像素的亮度。彩色图像 (Color Image):每幅彩色图像是由三幅不同颜色的灰度图像组合而成,对应于人类视觉的三基色,即一个为红色,一个为绿色,另一个为蓝色。三、图像的灰度化在运算中由三种颜色所组成的彩色图像使得某些图像处理算法无法展开,因此必须对其进行灰度处理。灰度化就是使彩色的R、G、B分量值相等的过程,由于R、G、B的取值范围是0255,所以灰度的级别只有256级,即灰度图像只能表现256种颜色(灰度)。图像灰度化的处理方法主要有以下三种:1、 最大值法:使R、G、B的值等于三个值中最大的一个,即 (2-1

24、) 最大值法会形成亮度很高的灰度图像。2、平均值法:使 R、G、B的值求出平均值,即 (2-2)平均值法会形成比较柔和的灰度图像。 3、加权平均值法:根据重要性或其他指标给R、G、B赋予不同的权值,并使R、G、B的值加权平均,即 (2-3)其中,分别为R、G、B的权值。,取不同的值,加权平均值法就形成不同的灰度图像。由于人眼对绿色敏感度最高,红色次之,对蓝色最低,因此使将得到比较合理化的图像。实验和理论推导证明,当,时,即当 (2-4)时,能得到最合理的灰度图像。本设计采用的是加权平均值法来得到灰度图像。四、图像的二值化图像二值化是指用灰度变换来研究灰度图像的一种常用方法,即设定某一阈值将灰度

25、图像的像素分成大于阈值的像素群和小于阈值的像素群4。其图像二值化的表达式如下: (2-5)其中为二值图像输出函数,为灰度图像输入函数,T为指定的阈值。图像的二值化处理就是将图像上的点的灰度置为0或255,也就是使整个图像呈现出明显的黑白效果。即将256个亮度等级的灰度图像通过适当的阈值选取而获得仍然可以反映图像整体和局部特征的二值化图像。第三节 本章小结本章主要介绍了本次设计当中所需要用到的一些图像处理的基本知识,对于本次设计而言,彩色图像对于整个系统而言的用处并不大,因此将图像转化成为了灰度图像。在某些时候,灰度信息对于处理的作用并不大,所以在下面的一些步骤时会进行一次二值化。对于灰度图与二

26、值图的处理时本次设计的重要内容。对于灰度图而言,可进行一些灰度增强。同时本章中提到的二值图像中的阈值选取也有很多不同的选取算法,而不同的阈值对于图像的处理至关重要。本章所提的知识为后面章节的内容做了铺垫,由于图像的预处理对于整个设计而言至关重要,在预处理时必须要根据不同类型的图像选取正确的算法。第三章 系统方案设计第一节 车牌识别系统设计方案概述一个完整的车牌号识别系统要完成从图像采集到字符识别输出,过程相当复杂,基本可以分成硬件部分跟软件部分,硬件部分包括系统触发、图像采集,软件部分包括图像预处理、车牌位置提取、字符分割、字符识别四大部分,由于本课题只研究的是软件部分,因此一个车牌识别系统的

27、基本结构如图3.1所示:字符分割车牌定位 图像预处理 理理图像采集 输出结果字符识别 图3.1 车牌识别系统基本结构图整体设计思路: 该系统 拟采用的图像预处理方法:.该方法的优点:. 比其他方法好的地方。图像分割. 识别方法(模板匹配)。第二节 系统开发环境选择车牌号识别系统的软件部分大都采用VC+,VB或者Matlab。(OpenCV库)本课题选用Matlab,主要是因为Matlab具有以下优点5:(1)语言简洁紧凑,使用方便灵活,库函数极其丰富。Matlab程序书写形式自由,利用其丰富的库函数避开繁杂的子程序编程任务,压缩了一切不必要的编程工作。(2) Matlab绘图功能很强大,但在V

28、C+,VB语言里绘图都很不容易,但Matlab里数据的可视化程度非常高,并且具有较强的编辑图形界面的能力。(3)运算符丰富。由于Matlab是用C语言编写的,Matlab提供了和C语言几乎一样多的运算符,灵活使用Matlab的运算符将使程序变得极为简短。(4)Matlab既具有结构化的控制语句(如for循环、while循环、break语句和if语句),又有面向对象编程的特性。(5) Matlab语言简单,入门容易,程序设计不严格,自由度大,例如用户无需对矩阵预定义即可使用(6)Matlab语言简洁紧凑,使用方便灵活,库函数丰富,并且内部集成了很多工具箱,为程序开发提供现成模块。第三节 本章小结

29、 本章主要讲解了车牌识别系统的基本组成结构,共包括四个部分:图像的预处理、车牌定位、车牌字符分割和车牌字符识别。另外还介绍了本次设计采用的研究平台Matlab的一些相比其他软件的优势。这为下面的研究打好了基础。第四章 测试结果与分析第一节 车牌定位车牌图像的采集与预处理一、图像的采集通过道路监控系统中的摄像头对汽车牌照信息进行采集和定位一、图像的灰度化 汽车图像样本目前大都是通过摄像机、数码相机等设备拍摄获取的,因而预处理前的图像都是彩色图像。(转换成灰度图像的原因)在本设计中,对于将彩色图像转换成灰色图像是(图像灰度化的方法有),本文采用的是采用的是加权平均值法。(加权平均值的有点。一句话)

30、其公式为: (4-1)其中,表示灰度图的亮度值,R代表彩色图像红色分量值,G代表彩色图像绿色分量值,B代表彩色图像蓝色分量值。在Matlab中,我们通过调用rgb2gray函数来实现彩色车牌图像的灰度化。而它的原理是以R、G、B为轴建立空间直角坐标系,则RGB图像的每个像素的颜色可以用该三维空间的一个点来表示,而Gray图的每个像素的颜色可以用直线R=G=B上的一个点来表示。于是rgb转gray图的本质就是寻找一个三维空间到一维空间的映射,最容易想到的就是映射,即过rgb空间的一个点向直线R=G=B做垂线。其调用格式为:I1=rgb2gray(I);将真彩色图像转换为灰度图像(RGB并不发生变

31、化)。其中,I1表示转换后灰度图像,I表示RGB图像。其原图和其灰度图见图4.1和图4.2所示。图4.1 原图图4.2 灰度图二、边缘检测在数字图像中,边缘是指图像局部变化最显著的部分,边缘主要是存在于目标与目标,目标与背景之间,是图像局部的不连续性,如灰度的突变、纹理结构的突变、颜色的突变等6。由于用摄像机采集到的机动车图像会受到噪声干扰以及车辆本身的影响,获得的图像质量并不理想。因此,在对汽车牌照进行定位及字符分割识别之前需要先对车辆图像进行边缘检测处理,以提高图像的质量,使其易于后面的分割和识别。通过良好的边缘检测可以大幅度的降低噪声、分离出复杂环境中的车辆图像、保留完好的车牌字符信息,

32、方便后面的车牌精确定位与字符识别。本MATLAB中,利用edge函数来实现边缘检测,即:Car_Image_Bin=edge(Car_Image_Gray,robert,0.15,both);在edge函数中,有sobel算子,prewitt算子,roberts算子,Laplacian of Gaussian算子,zero-cross算子及canny算子。几种算法相比较之下,roberts算法算法简单,计量最小。因此,在本设计中,采用的是roberts算子来进行边缘检测。Roberts算子是一种利用局部差分来寻找边缘的算子。Roberts梯度算子所采用的是对角方向相邻两像素值之差,算子形式如下

33、: (4-2) (4-3) (4-4)Roberts梯度算子对应的卷积模板为: (4-5)用以上两个卷积算子与图像运算后,可求出图像的梯度幅值,然后选择适当的阈值,若 ,则 为边缘点,否则,判断 为非边缘点。由此得到一个二值图像 ,即边缘图像。Roberts算子采用的是用对角线方向上相邻两像素的差近似梯度幅值来检测边缘,它的定位精度高,对于水平和垂直方向的边缘,检测效果较好,而对于有一定倾角的斜边缘,检测效果则不理想,存在着许多的漏检。另外,在含噪声的情况下,Roberts 算子不能有效的抑制噪声,容易产生一些伪边缘。因此,该算子适合于对低噪声且具有陡峭边缘的图像提取边缘。 在matlab中,

34、边缘检测的效果图如图4.3所示:图4.3 roberts算子边缘检测图三、灰度图腐蚀腐蚀是一种消除边界点,使边界向内部收缩的过程。可以用来消除小且无意义的目标物,如果两目标物间有细小的连通,可以选取足够大的结构元素,将细小连通腐蚀掉7。结构元素又是指具有某种确定形状的基本结构元素,例如一定大小的矩形,圆形或者菱形等。设二值图像为F,其连通域设为X,结构元素为S,当一个结构S的原点移到(x,y)处时,我们将其记作元素。此时图像X被结构元素S腐蚀的运算可表示如下: (4-6)其含义是,当结构元素S原点移动到点(x,y)位置,如果S完全含在X中,则在腐蚀后的图像上该点为1,否则为0。腐蚀的运算规则为

35、输出图像的像素值是输入图像领域中的最小值,在一个二值图像中,只要一个像素值为0,则相应的输出像素值为0。在matlab中,通过调用strel函数来创建结构元素se,即:se=strel(rectangle,25,25); %构造结构元素,以长方形构造一个se 在本设计中,通过imerode函数来实现图像的腐蚀,imerode函数需要两个基本输入参数:待处理的输入图像以及结构元素对象。即:I3=imerode(I2,se); %图像的腐蚀其中,I2是待处理的图像,se是结构元素。而结构元素的选择对图像处理结果有很大的影响,结构元素太大,会造成腐蚀过度,造成信息丢失,太小起不了预期的效果,这里使用

36、矩阵的线性结构元素,即se=1;1;1;腐蚀后的效果图如图4.4所示。图4.4 腐蚀效果图四、图像的平滑处理 在得到车牌图像的轮廓后,图像的数字化误差和噪声会直接影响脚点的提取,因此为了抑制噪声改善图像质量进行的处理称为图像平滑或去噪8。常用的平滑处理操作有均值滤波、中值滤波和高斯滤波。在matlab中,通过调用imclose函数对图像执行形态学闭运算,即使用同样的结构元素先对图像进行腐蚀操作后进行膨胀操作。闭运算也能平滑图像的轮廓,但与开运算相反,它一般融合窄的缺口和细长的弯口,去掉小洞,填补轮廓上的缝隙。闭运算的定义为: (4-7)这个公示表明,使用结构元素B对集合A的闭运算就是用B对A进

37、行膨胀,然后用B对结果进行腐蚀。其在matlab中的调用格式为:I4=imclose(I3,se);结构元素se的生成方式为:se=strel(rectangle,25,25),由于车牌是一个矩形,所以se是一个2525的矩形。这样提取到的图像最接近预期效果,平滑处理后的效果图如图4.5所示。图4.5 平滑图像效果图在经过图像平滑处理之后,可能会有多个闭合区域,而对于不是车牌区域的部分必须予以删除。在matlab中,可以通过调用bwareaopen函数来从二进制图像中移除所有少于p像素的连接的组件(对象),产生另一个二进制图像。其在matlab中的调用格式为:I5=bwareaopen(I4,

38、2000);这样,I4中像素小于2000的部分都被删除了。移除小对象之后的效果图如图4.6所示。图4.6 移除小对象后效果图五、车牌区域定位我国的车牌按照字符颜色和底色的搭配不同,可以分为以下4类:蓝底白字、黄底黑字、黑底白字和白底黑字。其中,底色占车牌区域70%左右,故车牌区域颜色特征以底色为主。在本设计中,车牌区域的定位采用的就是基于车牌颜色的彩色定位法9。由于在本设计中,采用的车牌图片是蓝底白字,所以就用蓝色为例来分析一下此方法。统计行方向在此颜色范围内的像素点数量,即该行对蓝色的投影值,把此区域的所有像素行的投影值都统计出来,得到此区域对蓝色的水平投影。水平投影操作是把二维图像的像素分

39、布特征简化为X轴和Y轴的两个一维函数。车牌边缘为白色或者被边框包围,在图像对蓝色的水平投影上表现为波谷。而要设定合理的阈值,也就是取两个波谷的区域为边界,确定车牌在行方向的区域。在分割出的行区域内,用相同的方法统计列方向的底色像素点数量,取图像对蓝色的垂直投影的两个波谷为左右边界,最终确定完整的车牌区域。车体和车牌颜色的明显对比为此算法提供了基础,而此算法的缺陷在于:车牌颜色必须不同于图像整体背景色,否则无法提取出 车牌区域。车牌区域的定位图如图4.7所示。图4.7 车牌区域定位图第二节 车牌字符分割一、字符切割前彩色车牌图像的进一步处理由于定位后的车牌图像是彩色的,会占用较大的存储空间和增加

40、计算机的负担,而且在定位的图片中不可避免的会存在噪声,因此在对车牌字符进行分割前必须对车牌区域图像进行灰度化、二值化、滤波处理和膨胀或腐蚀处理。图像的二值化就是限定一个阈值,如果大于阈值则为1,小于阈值为0,阈值采用全局阈值,全局阈值是指整幅图像都采用相同的阈值T处理,适用于背景和前景有明显对比的图像。在matlab中的调用格式为:T=round(g_max-(g_max-g_min)/3); % T 为二值化的阈值滤波则是为了消除图像的噪声,而本设计采用的是均值滤波。均值滤波是典型的线性滤波算法,它是指在图像上对目标像素给一个模板,该模板包括了其周围的临近像素(以目标象素为中心的周围8个像素

41、,构成一个滤波模板,即去掉目标像素本身),再用模板中的全体像素的平均值来代替原来像素值10。其采用的主要方法为邻域平均法,线性滤波的基本原理是用均值代替原图像中的各个像素值,即对待处理的当前像素点(x,y),选择一个模板,该模板由其近邻的若干像素组成,求模板中所有像素的均值,再把该均值赋予当前像素点(x,y),作为处理后图像在该点上的灰度g(x,y),即 ,m为该模板中包含当前像素在内的像素总个数。膨胀和腐蚀刚好相反,膨胀是将与物体接触的所有背景点合并到该物体中,使边界向外部扩张的过程7。可以用来填补物体中的空洞。其定义是: (4-8)其算法是用33的结构元素扫描图像的每一个元素,用结构元素与

42、其覆盖的二值图像做“或”操作,如果都为0,结果图像的该像素为0,否则为1。根据经验值,车牌图像中字符面积与车牌面积之比在(0.235,0.365)之间,因此计算字符面积与车牌面积比值,如果大于0.365则对图像进行腐蚀,如果小于0.235则对图像进行膨胀。在matlab中,通过调用imdilate函数来实行图像的膨胀操作。其调用格式为: d=imdilate(d,se); %实现膨胀操作其中,d为待处理的图像,se为结构元素,这里的结构元素是一个自己定义的表示结构元素邻域的二进制矩阵。进一步处理后的效果图如图4.8所示。图4.8 车牌图像进一步处理后的效果图二、字符分割和归一化处理1. 字符分

43、割字符分割的任务是把多行或多字符图像中的每个字符从整个图像中分割出来,成为单个字符11。然而对于字符分割的问题往往不被重视,但是字符分割的质量直接决定了识别正确率的高低。我国车牌的主要信息除了边框,就剩下数字、汉子和字母共同组成的7个字符,它们的高、宽和字符间隔在一定的范围内,每个字符宽45mm,字符高90mm,字符间隔宽10mm。根据以上车牌的固有特征,本设计采用垂直投影法对车牌字符进行分割。垂直投影法的原理:对车牌灰度图像进行灰度垂直投影,可知车牌区域的垂直投影可以清晰地看出7个区域,即车牌的7个字符灰度图像的垂直投影12。通过垂直投影图的特征,分割字符就转化为只需要得到每个区域的左右边界

44、即可。垂直投影的具体算法是在车牌字符的垂直投影图上的横向从左侧到右侧依次检测每一个坐标的投影数值,将检测到的投影数值出现第一个不为零时,那么将这个投影数值所属的像素点即看做是第一个投影区域的左边界线。然后继续向右检测,将检测到的投影数值出现第一个为零时,那么将这个投影数值所属的像素点即看做是第一个投影区域的右边界限。根据此算法可以得到其他6个投影区域的左右界限。依据算法经过处理得到的字符投影块数目等于7,同时每个字符投影块都在标准字符宽度的阈值范围内,那么就可进行分割车牌字符;若当检测到的投影块数目小于7,可知车牌的字符有粘连,则需进一步分割投影块,直至投影块数目为7,同时满足字符宽度的阈值范围;如果投影块数目大于7,可知车牌字符有断裂,则需进一步对投影块进行合并处理,直至投影块数目为7,同时满足字符宽度的阈值范围。其算法流程

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 学术论文 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服