当前位置:   article > 正文

基于MATLAB车牌图像识别的设计与实现

基于matlab车牌图像识别的设计与实现

  1. 课题介绍

车牌图像识别系统是现代智能交通管理的重要组成部分之一。车牌识别系统使车辆管理更智能化,数字化,有效提升了交通管理的方便性和有效性。

车牌识别系统主要包括了图像采集、图像预处理、车牌定位、字符分割、字符识别等五大核心部分。本文主要介绍图像预处理、车牌定位、字符分割三个模块的实现方法。其中图像预处理模块是将图像灰度化和用Roberts算子进行边缘检测。车牌定位和分割采用的是利用数学形态法来确定车牌位置,再利用车牌彩色信息的彩色分割法来完成车牌部位分割。字符的分割采用的方法是以二值化后的车牌部分进行垂直投影,然后在对垂直投影进行扫描,从而完成字符的分割。最后使用MATLAB软件环境进行字符分割的仿真实验,结果表明该方法具有良好的性能。

  1. 车牌图像识别研究的背景

现代社会已进入信息时代,随着计算机技术、通信技术和计算机网络技术的发展,自动化信息处理能力和水平不断提高,作为现代社会主要交通工具之一的汽车在人们的生产生活的各个领域得到大量使用,对他的信息进行自动采集和管理具有十分重要的意义,成为信息处理技术的一项重要研究课题。

此外,智能交通系统,简称ITS(Intelligent Traffic System)已成为现代社会道路交通发展趋势。只能交通系统,是在当代科学技术高速发展的背景下产生的。其目标在于将现金的计算机处理技术、数据通信技术、自动控制技术等综合应用于地面交通管理体系,从而建立起一种高效、准确、实时的交通管理系统。公路交通基础建设的不断发展和车辆管理体制的不断完善,为以视觉监控为基础的智能交通系统的实际应用打下了良好基础。

在智能交通系统中,车牌图像自动识别系统是一个非常重要的发展方向。车牌自动识别系统简称ALPRS或LPRS,该系统可以对车辆进行自动登记、验证、监视、报警。系统应用场合包括:高速公路,桥梁,隧道等收费管理系统。城市交通车辆管理,智能小区、智能停车场管理,车牌验证,车流统计等。同时,汽车牌照自动识别的基本方法还可以应用到其他检测和识别领域,所以车牌自动识别问题已成为现代交通工程领域中研究的重点和热点问题之一。

车牌识别系统是一项科技含量很高的多种技术结合的产品,主要有计算机视觉、数字图像处理、数字视频处理、模式识别等技术组成。也是智能交通系统的核心技术,产生于60年代。在80年代,由于城市交通问题日益严重,美国和欧洲许多国家投入了大量的人力和物力,建立了自动化高速公路网,安装了摄像、雷达探测系统和光纤网络,建立智能交通系统。在美国、欧洲、日本等发达国家的带动下,世界各国也开始建立智能交通系统。由于公路车流量日益增大、道路交通日益拥挤,车辆管理相对越来越困难,因此各个发达国家和发展中国家都在积极建设适应未来交通运输需求的智能交通系统

三、车牌识别系统设计原理概述

一个完整的车牌图像识别系统要完成图像采集到字符识别输出,总体分为硬件部分和软件部分。硬件部分包括系统的触发,图像的采集,图像的传输;软件部分包括图像预处理,车牌在图像中的位置提取,字符分割,字符识别几个部分,一个车牌识别系统的结构如图2-1所示。


v2-da6aaacd80a4d19c9e9267b8195499eb_b.jpg

图2-1 车牌图像识别系统原理基本框图

原始图像:由停车场固定彩色摄像机、数码相机或其他扫描装置拍摄到的图像。

图像预处理:对动态采集到的图像进行滤波,边界增强等处理以克服图像处理。

车牌在图像中的位置提取:通过运算得到图像的边缘,再计算边缘图像的投影面积,寻找谷峰点以大概确定车牌的位置,再计算连通域的宽高比,剔除不在阈值范围内的连通域,最后便得到了车牌区域。

字符分割:利用投影检测的字符定位分割方法得到单个的字符。

字符识别:利用模板匹配的方法与数据库中的字符进行匹配从而确认出字符。

输出结果:得到最后的汽车牌照,包括汉字、字母和数字。

3.1 车牌在图像中的位置提取

自然环境下,由于汽车图像背景复杂、光照不均匀等原因,如何在自然背景中准确地确定牌照区域是整个识别过程的关键。一般采用的方案是首先对采集到的视频图像进行大范围相关搜索,找到符合汽车牌照特征的若干区域作为候选区,然后对这些侯选区域做进一步分析、评判,最后选定一个最佳的区域作为牌照区域,并将其从图像中分割出来。通过以上步骤,牌照一般能够被定位。

3.2 字符分割

在完成牌照区域的定位后,还需要将牌照区域分割成单个字符,然后进行字符识别,最后输出结果。字符分割一般采用垂直投影法。垂直投影法的原理是由于字符在垂直方向上的投影必然在字符间或字符内的间隙处取得局部最小值的附近,并且这个位置应满足牌照的字符书写格式、字符、尺寸限制和一些其他条件。所以利用垂直投影法对复杂环境下的汽车图像的字符分割有较好的效果。

3.3 字符识别

字符识别方法目前主要得算法有以下几种:

第一种模板匹配字符识别算法,具体描述如下:

模板匹配字符识别算法的实现方法是计算输入模式与样本之间的相似性,取相似性最大的样本为输入模式所属类别。该方法识别速度快,但是对噪点比较敏感。在实际应用中,为了提高正确率往往需要使用大的模 板或多个模板进行匹配,处理时间则随着模板的增大以及模板个数的增加而增加。

第二种统计特征匹配法,具体描述如下:

统计特征匹配法的要点是先提取待识别模式的一组统计特征,然后按照一定的准则所确定的决策函数进行分类判决。实际应用中,当字符出现字符模糊、笔画融合,断裂、部分缺失时,此方法效果不理想,鲁棒性较差。

第三种神经网络字符识别算法,具体又可以细分为两种,描述如下:

主要有两种方法:一种方法是先对待识别字符进 行特征提取,然后用所获得的特征来训练神经网络分类器。其中,字符特征的提取是研究的关键,特征参数过多会增加训练时间,过少会引起判断上的歧义。另一种方法是充分利用神经网络的特点,直接把待处理图像输入网络,由网络自动实现特征提取直至识别。这种网络互连较多,待处理信息量大,抗干扰性能好,识别率高。但是产生的网络结构比较复杂,输入模式维数的增加可能导致网络规模庞大。

第四种支持向量机模式识别算法,具体描述如下:

支持向量机(Support Vector Machine, SVM)是Vapnik及其研究小组针对二类别的分类问题提出的一种分类技术,其基本思想是在样本空间或特征空间,构造出最优平面使超平面与不同类样本集之间的距离最大,从而达到最大的泛化能力。主要有两种方法应用于字符识别:一种是先对待识别字符进行特征提取,然后用所获得的特征来训练 SVM 分类器。另一种是直接将每个字符的整幅图像作为一个样本输入,不需要进行特征提取,节省了识别时间。

实际应用中,车牌图像识别系统的识别率与牌照质量和拍摄质量密切相关。牌照质量会受到各种因素的影响,如生锈、污损、油漆剥落、字体褪色、牌照被遮挡、牌照倾斜、高亮反光、多牌照、假牌照等等;实际拍摄过程也会受到环境亮度、拍摄亮度、车辆速度等等因素的影响。这些影响因素不同程度上降低了牌照识别的识别率,也正是牌照识别系统的困难和挑战所在。为了提高识别率,除了不断的完善识别算法,还应该想办法克服各种光照条件,使采集到的图像最利于识别。

四、系统实现

1 图像灰度化

汽车图像样本目前大都是通过摄像机、数码相机等设备拍摄获取的,因而预处理前的图像都是彩色图像。真彩色图像又称RGB图像,它是利用R、G、B分量表示一个像素的颜色,R、G、B分别代表红、绿、蓝3种不同的颜色,通过三基色可以合成出任意颜色。而每个分量有255种值可取,这样一个像素点可以有,1600多万(255×255×255)的颜色的变化范围。而灰度图像是R、G、B三个分量相同的一种特殊的彩色图像,每一个像素点的变化范围为255种,所以在数字图像处理种一般先将各种格式的图像转变成灰度图像以使后续的图像的计算量变得少一些。灰度图像的描述与彩色图像一样仍然反映了整幅图像的整体和局部的色度和亮度等级的分布和特征。所以,对一个尺寸为m×n的彩色图像来说,存储为一个m×n×3的多维数组。

彩色图像包含着大量的颜色信息,不但在存储上开销很大,而且在处理上也会降低系统的执行速度。由于图像的每个像素都具有三个不同的颜色分量,存在许多与识别无关的信息,不便于进一步的识别工作,因此在对图像进行识别等处理中,经常将彩色图像转变为灰度图像,以加快处理速度。

数字图像分为彩色图像和灰度图像。在RGB模型中,如果R=G=B,则颜色表示一种灰度颜色,由此方法得到的值叫做灰度值。由彩色转换为灰度的过程叫做灰度化处理。灰度图像就是只有强度信息而没有颜色信息的图像,存储灰度图像只需要一个数据矩阵,矩阵每个元素表示对应位置像素的灰度值。彩色图像的像素色为RGB(R, G, B ),灰度图像的像素色为RGB ( r, r, r ), R, G, B可由彩色图像的颜色分解获得.而R, G, B的取值范围是0-255,所以灰度的级别只有256级。图像灰度化的算法主要有以下三种(等号为赋值操作):

(a)最大值法:使转换后的R、G、B值等于转换前3个值中最大的那个:

R = G = B = MAX(R, G, B) (3-1)

这种方法转换的灰度图亮度很高。

(b)平均值法:使转换后的R、G、B值等于转换前3个值的平均值:

R = G = B = (R + G + B)/ 3 (3-2)

这种方法产生的灰度图像比较柔和。

(c)加权平均值法:按照一定的权值对R、G、B的值加权平均:

R = G = B = (mR+ nG+ kB)/ 3 (3-3)

其中m、n、k分别为R、G、B的权值,m、n、k取不同的值就得到不同的灰度图像。由于人眼对绿色最为敏感,红色次之,蓝色最不敏感,因此使n > m > k将得到较易识别的灰度图像,一般情况下,当m = 0.229,n = 0.588,k = 0.144时得到的灰度图效果最好。MATLAB中的灰度转换公式运用的就是这个公式,所以直接使用im2gray函数对图像进行灰度化处理。

2 图像的边缘检测

边缘是指图像局部亮度变化显著的部分,是图像风、纹理特征提取和形状特征提取等图像分析的重要基础。所以在此我们要对图像进行边缘检测。图像增强处理对图像牌照的可辨认度的改善和简化后续的牌照字符定位和分割的难度都是很有必要的。增强图像对比度度的方法有:灰度线性变换、图像平滑处理等。

(1)灰度校正

由于牌照图像在拍摄时受到种种条件的限制和干扰,图像的灰度值往往与实际景物不完全匹配,这将直接影响到图像的后续处理。如果造成这种影响的原因主要是由于被摄物体的远近不同,使得图像中央区域和边缘区域的灰度失衡,或是由于摄像头在扫描时各点的灵敏度有较大的差异而产生图像灰度失真,或是由于曝光不足而使得图像的灰度变化范围很窄。这时就可以采用灰度校正的方法来处理,增强灰度的变化范围、丰富灰度层次,以达到增强图像的对比度和分辨率。我们发现车辆牌照图像的灰度取值范围大多局限在r =(50,200)之间,而且总体上灰度偏低,图像较暗。根据图像处理系统的条件,最好将灰度范围展开到s =(0,255)之间,为此我们对灰度值作如下的变换:

s = Tr) r=[r min,,r max] (3-4)

使得S?[Smin, Smax],其中,T为线性变换,得到的结果如图3-1所示。

v2-5ff78ccfb5a2bd3e715f7e22eb33cc1f_b.jpg

图3-1 灰度线性变换

v2-7d7625e8d8e2c08e96bcc38ece18aa56_b.jpg

(2)平滑处理

对于受噪声干扰严重的图像,由于噪声点多在频域中映射为高频分量,因此可以在通过低通滤波器来滤除噪声,但实际中为了简化算法也可以直接在空域中用求邻域平均值的方法莱削弱噪声的影响,这种方法称为图像平滑处理。例如,某一像素点的邻域S 有两种表示方法:8邻域和4邻域分别对应的邻域平均值为

v2-876b3d947d7e46d433a297a12b867ad1_b.png

其中,M 为邻域中除中心像素点f(i, j)之外包括的其它像素总数,对于4邻域M=4,8 邻域M=8。然而,邻域平均值的平滑处理会使得图像灰度急剧变化的地方,尤其是物体边缘区域和字符轮廓等部分产生模糊作用。为了克服这种平均化引起的图像模糊现象,我们给中心点像素值与其邻域平均值的差值设置一固定的阈值,只有大于该阈值的点才能替换为邻域平均值,而差值不大于阈值时,仍保留原来的值,从而减少由于平均化引起的图像模糊。

图像中车辆牌照是具有比较显著特征的一块图像区域,这此特征表现在:近似水平的矩形区域;其中字符串都是按水平方向排列的;在整体图像中的位置较为固定。正是由于牌照图像的这些特点,再经过适当的图像变换,它在整幅中可以明显地呈现出其边缘。边缘提取是较经典的算法,此处边缘的提取采用的是Roberts算子。结果如图3-4所示。

v2-99c6ce9efa3e800042365a8ef7213132_b.jpg

图3-2 车牌图像的原图

v2-3cef5723dd9395ee2245091c03f089c9_b.jpg

图3-3给出了对车牌图像的灰度图及对应的灰度直方图,该直方图表示了灰度图中各像素值出现的概率,通过该直方图,可以看出当前的灰度图是否满足灰度均衡化的标准,如果不满足则进一步进行该操作,使得灰度直方图能呈现一个比较均匀的分布,但是在本课题的研究中,还没有使用到该直方图,不过可以为以后系统的扩展做准备。

v2-46faca7ae7738cd4512da37810fecd82_b.jpg

图3-4 robert算子边缘检测得到的图像

3 车牌定位和分割

系统的摄像头拍摄的图片是整个机动车的图片,而只有车牌部分是对系统有用的。所以我们要对照片进行车牌定位和分割。车牌的定位和分割是从经过图像预处理后的灰度图像中确定牌照位置,并将车牌部分从整个图像中分割出来,从而进行字符识别。车牌图像的灰度图的车牌部分是一个水平度很高的长方形图样,在原图中比较集中,且灰度值和周围图样有明显差异,因此很容易用边缘检测来对图像进行分割。车牌定位和分割的准确度直接关系到最后的字符识别的质量。下面是进行车牌定位操作框图,如图3-5所示。


v2-c0d3a046759cbfe2d2b7b978af310b07_b.jpg

图3-5 车牌定位框图

3.1 车牌定位

机动车图像经过灰度化和边缘检测的处理后,边缘得到了加强,牌照区域已经非常明显。本文采用的是用数学形态学来进行图像处理和模式识别。数学形态学用具有一定形态的机构元素去量度和提取图像中的对应形状以达到对图像分析和识别的目的,能有效的去除噪声,保留图像原有信息的同时提取的边缘比较平滑,提取的图像骨架也比较连续,断点少。现在我们将经过预处理的图像进行图像腐蚀以及去除杂质,就可以得到相对准确的车牌位置。处理得到的结果如图3-8所示。

v2-b7ec1f3820abe2f8a535f9478483b06d_b.jpg



v2-88db0d22b7ef12313bb0bb37d9d697f1_b.jpg



v2-cc4d74ef21d750077ad3143eb7eda6ff_b.jpg


3.2 车牌位置提取

车牌位置提取是车牌自动识别系统中的重要步骤,这一模块的正确性受到很多因素的影响,最大问题是二值化不彻底使投影图像中字符间的波谷不够分明;其次,车牌污损、反光、光照不均等原因使车牌图像交差,存在大量噪声;再次,车牌边框和铆钉也会造成分割不正确;还有车牌的前两个字符和后面五个字符之间的间隔符(小圆点)对字符识别有影响;车牌旋转对水平分割有较大影响。本文车牌部分的分割采用的是利用车牌彩色信息的彩色分割法。使用统计彩色像素点的方法分割出车牌区域,确定车牌底色蓝色RGB对应的灰度范围,然后统计在行方向的颜色范围内的像素点数量,确定车牌在行方向的区域。然后,在分割出的行区域内,统计列方向蓝色像素点的数量,最终确定完整的车牌区域。如图3-9所示。


v2-a897338ace57ffb62517180209c55179_b.jpg


3.3 对定位后的彩色车牌进行进一步的处理

定位后车牌图像是彩色的,会占用较大的存储空间,加重计算机负担。且车辆图片不可避免存在噪声,所以要对图像进行灰度化,二值化以及滤波处理。图像的二值化处理就是将图像上的点的灰度置为两个数值,通常为0或255,使整个图像呈现出明显的黑白效果。也就是将256个亮度等级的灰度图像通过适当的门限值选取而获得仍然可以反映图像整体和局部特征的二值化图像。对图像的二值化处理有利于进一步处理图像,使图像变得简单,而且数据量较小,能突显出感兴趣的目标轮廓。滤波则是为了除去图像噪声,由于成像系统,传输介质和记录设备的不完善,数字图像在其形成、传输记录过程中往往受到噪声的污染,另外在图像处理的某些环节当输入的对象不如预期时结果中也会引入噪声。对于数字图像信号,噪声表现为或大或小的极值,这些极值通过加减作用与图像像素的真是灰度值上,在图像上造成亮暗点干扰,极大的降低了图像的质量。滤波方法有多种,本文采取的滤波方法为均值滤波。均值滤波是典型的线性滤波算法,旨在图像上对目标像素给一个模板,该模板包括了其周围的临近像素。再用模板中的全体像素的平均值来代替原来像素值。处理结果如图3-10所示。

v2-28c8e66cefc5f29bab11130ce9856ab9_b.jpg

4 字符分割与归一化


v2-c0cbf56deab46081da3ccad38971e358_b.jpg


4.1 字符分割

在汽车牌照自动识别过程中,字符分割有承前启后的作用。它在前期牌照定位的基础上进行字符的分割,然后再利用分割的结果进行字符识别。将得到的车牌区域图像进行二值化处理后,对图像进行垂直投影,投影图上有明显的类似于峰谷的波形起伏变化, 通过对投影图上的波形从左向右进行扫描,根据谷和峰的特征就可以判断出每个字符的位置;计算垂直峰,检测合理的字符高宽比。在字符切割时,往往由于阈值取得不好,导致字符切割不准确,针对这种情况,可以对切割出的字符宽度进行统计分析,用以指导切割,对因错误切割过宽的字符进行分裂处理。分割后得到的结果如图3-12所示。

4.2 字符归一化

由于数码相机拍摄的汽车图像大小不一样, 所以得到的牌照上的字符大小就不一样,为了便于字符的识别,需要对字符进行归一化处理。归一化处理的目的就是使车牌字符同标准模块里面的字符特征一样。而大小归一是指在长度和宽度方向上分别乘以一个比例因子,使其等于标准模块的字符大小,本文采用的大小归一的方法是分别从水平投影和垂直投影两个方向上对字符像素的大小进行归一化处理。


v2-ef2cdb691f1168e157128940be5e3431_b.jpg


5 字符识别

字符的识别目前用于车牌字符识别(OCR)中的算法主要有基于模板匹配的OCR算法以及基于人工神经网络的OCR算法。基于模板匹配的OCR的基本过程是:首先对待识别字符进行二值化并将其尺寸大小缩放为字符数据库中模板的大小,然后与所有的模板进行匹配,最后选最佳匹配作为结果。模板匹配的主要特点是实现简单,当字符较规整时对字符图像的缺损、污迹干扰适应力强且识别率相当高。综合模板匹配的这些优点我们将其用为车牌字符识别的主要方法。

模板匹配是图像识别方法中最具代表性的基本方法之一,它是将从待识别的图像或图像区域f(i, j)中提取的若干特征量与模板T(i, j)相应的特征量逐个进行比较,计算它们之间规格化的互相关量,其中互相关量最大的一个就表示期间相似程度最高,可将图像归于相应的类。也可以计算图像与模板特征量之间的距离,用最小距离法判定所属类。然而,通常情况下用于匹配的图像各自的成像条件存在差异,产生较大的噪声干扰,或图像经预处理和规格化处理后,使得图像的灰度或像素点的位置发生改变。在实际设计模板的时候,是根据各区域形状固有的特点,突出各类似区域之间的差别,并将容易由处理过程引起的噪声和位移等因素都考虑进去,按照一些基于图像不变特性所设计的特征量来构建模板,就可以避免上述问题。下图给出了字符识别过程的框图。

v2-03dfedbdfa1f7c4eea1bb5778ed9e803_b.jpg

图3-12 字符识别框图


此处采用相减的方法来求得字符与模板中哪一个字符最相似,然后找到相似度最大的输出。汽车牌照的字符一般有七个,大部分车牌第一位是汉字,通常代表车辆所属省份,或是军种、警别等有特定含义的字符简称;紧接其后的为字母与数字。车牌字符识别与一般文字识别在于它的字符数有限,汉字共约50多个,大写英文字母26个,数字10个。所以建立字符模板库也极为方便。为了实验方便,结合本次设计所选汽车牌照的特点,只建立了4个数字26个字母与10个数字的模板。其他模板设计的方法与此相同。

首先取字符模板,接着依次取待识别字符与模板进行匹配,将其与模板字符相减,得到的0越多那么就越匹配。把每一幅相减后的图的0值个数保存,即为识别出来的结果。如图3-13所示。


v2-9897c2c5757857be572e2029a2f9144b_b.jpg

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家小花儿/article/detail/129544
推荐阅读
相关标签
  

闽ICP备14008679号