车牌识别定位范文

2024-09-23

车牌识别定位范文(精选7篇)

车牌识别定位 第1篇

车辆图像中的定位问题是整个车牌识别[1]的基础部分,定位的准确直接影响到后续的车牌分割、车牌识别等工作,只有将车牌部分首先定位出来,才能进行后续的工作,所以车牌定位虽然比较基础,但是非常重要的前期工作。部分资料提到可以利用色彩信息对车牌进行定位、分割等,但考虑到图像文件的存储量和处理图像时需要占用大量的系统资源,并且我国车牌颜色种类较多,所以在之前绝大多数车牌识别系统处理的图片均为灰度图像,运算量大大减少。基于此,以前部分系统的摄像部分采用单色CCD摄像头直接得到灰度图像。但是目前随着计算机硬件条件的飞速发展,计算机处理速度和存储量大大增加,可以采用彩色图像对车牌图像进行直接处理。

1 车牌特征

可以从车牌的先验知识得到很多车牌的特征,根据这些特征在对车牌定位,车牌分割,车牌识别,乃至于整个车牌识别系统都有着重大的意义。

(1)车牌高宽比固定,字符水平排列,并且字符大小和字符之间的距离固定。

(2)车牌上有大量类似车牌区域的矩形,还有一些灰度特征类似于文字区域的汽车厂商标志、广告牌、汽车散热进气栅格等。

(3)车牌内字符大小、格式统一,文字与背景间有明显的灰度对比。

(4)不同类型车牌的底色、文字、外框颜色反差很大。

(5)无论哪种车牌,在车牌外轮廓部位都有一圈宽度不大的轮廓线,大部分轮廓线都与字符颜色一致,与背景颜色的亮度差别特别大。

2 车牌定位中常用的几种方法

根据车牌的不同特征,人们提出了不同的定位方法,归纳起来有以下几种:

(1)从图像有关灰度直方图统计特性出发的统计分析方法。车牌区域内的边缘灰度直方图具有两个明显且分离的分布中心。

(2)根据车牌字符区域内字符纹理特征的方法[2],需要找出图像中车牌区域固有的并且与图像其他区域不易混淆的属性,同时该属性需要在各种环境下具有稳定性。

(3)频谱法借助于傅立叶频谱的频率特性来描述周期的或近乎周期的2-D图像模式的方向性,即对图像做行或者列的DFT变换,其频谱图中包括了车牌的位置信息。

(4)根据车牌边框为长方形这一特性,基于直线检测方法[3],可通过Hough变换检测整幅图像的长直线段,然后用一定的约束条件进行搜索、匹配来确定车牌的位置。

(5)基于神经网络车牌定位方法,该方法一般选用BP神经网络,大体步骤是首先准备好一定数量的样本,利用BP算法进行训练,然后循环一定次数或者用一部分样本进行验证达到理想效果之后,训练完毕,得到一个对车牌敏感的神经网络。

(6)基于彩色图像的车牌定位方法,该类方法一般将输入的RGB彩色图像转换换至HSV空间,基于HSV颜色模型,根据车牌底色,利用颜色空间距离及相似度计算,从图像中分割出想要的颜色区域,再采用投影法来找到该颜色区域,进而用于车牌定位。

根据不同的实现方法,现有的定位方法大致可分为以下6类:基于边界的车牌定位、基于区域的车牌定位、基于神经网络的车牌定位、基于小波分析和变换的车牌定位、基于矢量量化的车牌定 位和基于 颜色空间的车牌定位。

3 图像的预处理

传统上由CCD摄像头采集的图像以BMP位图图像格式存储到计算机中,为了便于车牌图像定位、图像分割等后续处理,原始图像应尽量具有适当的亮度,较大的对比度和清晰可辨的车牌图像。但由于车牌识别大多是在户外进行的,存在诸如天气、浓雾、雨雪、光照强度和上拍摄距离、角度的不同等诸多原因,车牌可能出现模糊、歪斜甚至缺损等严重问题,因此需要对原始图像进行必要的预处理。

3.1 图像的灰度化处理

由于之前采集到的都是彩色图像,里面包含丰富的颜色信息,颜色信息在后续的边缘检测和数学形态学运算中,作用都不大,而且占用系统资源,让处理变慢,所以在车牌定位前先将采集到的图像转化为灰度图像。

将彩色图像转换为灰度图像的过程就叫做灰度化处理。灰度图像就是只有强度信息,而没有颜色信息的图像。

灰度化的处理方法有三种,分别为平均值法、最大值法和加权平均值法,而通常选用加权平均值法来处理,其中三个权值分别为0.11、0.59和0.3。

之前采集到的图像是24位真彩色位图,它的每一个像素由RGB三个分量构成,RGB的取值范围是0~255,所以灰度的级别是256级。通常采用下面公式将其转换成为灰度图。

f(x,y)=0.11×B(x,y)+0.59×G(x,y)+0.3×

R(x,y)

其中,f(x,y)为(x,y)位置像素的灰度值,R,G,B分别为(x,y)位置像素的红、绿、蓝颜色对应的彩色信息值。

处理后的图像效果如图1所示。

3.2 灰度拉伸

由于亮度最大值和最小值的比值经常出现对比度不足的弊病,使人眼看到的图像效果很差,分辨不清,为达到使图像增强的目的,可对图像进行灰度变换,以显著改善人的视觉效果。最常用的灰度变换方法有两种,分别是灰度线性变换和分段线性变换。

(1)线性灰度变换

假定原图像f(x,y)的灰度范围是[a,b],希望将图像的灰度范围变换为[c,d],则线性变换可表示为:

g(x,y)=d-cb-a[f(x,y)-a]+c

若图像灰度在0~Mf范围内,其中大部分像素的灰度级分布在区间[a,b],很少部分的灰度级超过了此区间,为改善增强效果,可令:

g(x,y)={c0f(x,y)ad-cb-a[f(x,y)-a]+caf(x,y)bdbf(x,y)Μf

该变换伸长了原来[a,b]区间,而压缩了[0,a]区间和[b,255]区间,实际上是[0,a]区间和[b,255]区间融合成了单个点,然而只要很少的像素点在该区域,所以增强了视觉效果。

有时为了保持f(x,y)灰度低端和高端值不变,可以采用下式所示的形式:

g(x,y)={d-cb-a[f(x,y)-a]+caf(x,y)bf(x,y)

其中,a,b,c,d可根据不同需求来自行设定。

(2)分段线性变换

为了突出感兴趣的目标或灰度区域,抑制那些相对不感兴趣的灰度区间,可以采用分段线性变换来达到此目的。

最常用的三段线性变换法的数学表达式如下:

g(x,y)={caf(x,y)0f(x,y)ad-cb-a[f(x,y)-a]+caf(x,y)bΜg-dΜf-b[f(x,y)-b]+dbf(x,y)Μf

4 基于纹理特性的车牌定位

图像边缘都是灰度不连续的点,或者是灰度值或色彩急剧变化之处,因而可以利用微分运算来进行图像边缘的检测,也就是用各种锐化模板对图像进行卷积运算,可以检测出图像的边缘。由于车辆图像中背景区域的边缘相对较少,而车牌区域含有的边缘信息较丰富,所以针对拍摄车辆图像的这种特点,可以选择采用边缘检测算法将车牌区域与背景区域分离开。下图是几种常见的微分算子的模板和其算子的特点。

由分析可以得出,Sobel算子[4]由于不像普通算子那样用两个像素的差值,而是引入了加权平均因素,对图像中的随机噪声起到了一定的平滑作用,而且它是相隔两行或者两列的差分,故边缘两侧元素得到了增强,边缘显得粗而亮,其对边缘定位的精度相对较高。Sobel算子的缺点是得到的边缘不连续,封闭性不好并且对噪声敏感,其缺点可以运用形态学运算进行弥补。

卷积运算如下:

g1(x,y)=k=-11i=-11S1(k,l)f(x+k,y+l)=[f(x-1,y+1)+2f(x,y+1)+f(x+1,y+1)]-[f(x-1,y-1)+2f(x,y-1)+f(x+1,y-1)]g2(x,y)=k=-11i=-11S2(k,l)f(x+k,y+l)=[f(x-1,y-1)+2f(x-1,y)+f(x-1,y+1)]-[f(x+1,y-1)+2f(x+1,y)+f(x+1,y+1)]g(x,y)=g12(x,y)+g22(x,y)

g1(x,y)>g2(x,y),说明像素点(x,y)处有垂直方向的边缘通过,反之则为有水平方向的边缘通过。

如果像素点(x,y)处的像素值f(x,y)满足下面两个条件组之一时,则判断它为边缘像素点,该点在输出的边缘图像中用“0”表示;否则判断该点为非边缘像素点,在输出的边缘图像中用“1”表示。

条件组一:

g(x,y)>cutoffg1(x,y)>g2(x,y)

g(x,y-1)≤g(x,y) ④g(x,y)≥g(x,y+1)

条件组二:

g(x,y)>cutoffg1(x,y)>g2(x,y)

g(x-1,y)≤g(x,y) ④g(x,y)≥g(x+1,y)

假设图像的行数和列数分别为rowlist,g(x,y)为边缘图像中点(x,y)的值。其中cutoff按下述公式计算,这样就可以将其边缘从原来的灰度图像中提取并表示出来。

cutoff=4×i=1rowj=1listg2(i,j)Ι(row×list)

5 图像形态学处理

由于选用Sobel算子进行边缘提取,经过前期边缘检测凸出车牌边缘的图像中,既有车牌、车牌字符的边缘,也有背景图像的边缘和一些杂乱的噪声边缘,同时车牌本身也存在孔洞、突刺、缺陷噪声和断裂噪声等。如何从所有边缘中将无关的噪声边缘滤除,将合理的边缘保留下来,同时又能消除车牌自身的噪声,基于形态学的形态学图像变换就是实现这个目标的最有效途径之一,形态学处理结果图像如图2所示。

数学形态学[5]的基本运算有4个:腐蚀、膨胀、开启和闭合。

腐蚀是最基本的一种数学形态学运算,SX的腐蚀用集合方式来定义为:

XΘS={x|S+xX}

膨胀是相对于腐蚀的另一种基本的数学形态学运算,SX的膨胀用集合的方式来定义为:

XS={x|S+xx≠∅}

开启是先对图像进行腐蚀,然后膨胀其结果。闭合是对图像先进行膨胀然后腐蚀其结果。对图像X以及结构元素S,用XS表示XS的开运算,用X·S表示XS的闭运算。

开启的运算定义为:XS=(XΘS)⊕S

闭合的运算定义为:X·S=(XS)ΘS

而且开、闭运算具有很多代数性质,如对偶性、扩展和收缩性、单调性、平移不变性、等幂性等等。

6 车牌提取

根据前期经过形态学处理后得到比较明显的矩形白色区域,提出的车牌定位方法是:根据前期进行图形学处理之后的图像进行行方向和列方向的像素点灰度值累计和统计,进行对车牌图像的定位如图3-4所示。具体算法如下:

(1)从下至上、从左至右扫描整幅图像,并且统计每一行白色像素总数,如果超过某一阈值(本文阈值取图像高度的1/20),记录该行坐标。

(2)从下至上、从左至右扫描整幅图像,并且统计每一列白色像素总数,如果超过某一阈值(本文阈值取图像高度的1/20),记录该列坐标。

(3)判断行、列坐标数组,若存在连续行与连续列个数大于设定的阈值,将连续行、列部分数组的首坐标作为提取矩形区域的左、上坐标,数组尾坐标作为矩形区域右、下坐标,将矩形存入矩形链表,继续进行判断,直至结束。

7 结束语

讨论了车辆图像中的车牌定位问题,车牌定位问题是车牌识别的第一步,也是非常重要的一步。首先介绍了车牌的先验知识,如车牌的特征,车牌的颜色特性等,并且介绍了几种常用的车牌定位方法,然后提出了本文中的基于行方向和列方向的像素点灰度值累计和对车牌图像进行定位,最后得出了实验结果。

摘要:车牌定位是车牌识别系统的第一步,也是非常重要的一步,对车辆牌照的特征及几种常用的定位方法进行简要介绍,对车牌图像进行图像预处理之后,用微分算子对图像进行边缘提取,并且针对Sobel算子的缺点用形态学出来进行弥补。根据图像行、列像素点灰度值累加和对车牌图像进行定位,最后给出定位出的车牌图像。

关键词:车牌识别,定位,微分算子,形态学

参考文献

[1]张洪刚,陈光,郭军.图像处理与模式识别[M].北京:北京邮电大学出版社,2006.

[2]付希金.自然背景下车牌识别关键技术研究[D].长春:东北师范大学,2008.

[3]Carron T,Lambert P.Color edge detector using jointly hue,satura-tion and intensity[C]//Proc IEEE International Conference on Im-age Processing.Austin TX USA,1994:977-981.

[4]冈萨雷斯.数字图像处理[M].北京:电子工业出版社,2004.

基于图像的车牌识别 第2篇

汽车牌照自动识别技术是一项利用车辆的动态视频或静态图像进行牌照号码、牌照颜色自动识别的模式识别技术。通过对图像的采集和处理,完成车牌自动识别功能。

本文应用图像处理对车牌定位、字符分割、模板匹配识别等技术对车牌自动识别系统中的关键技术进行分析和解决。

二、车牌定位

在一张完整的车辆图像中,大部分区域都是背景图像,我们可以将背景区域视为无用区域,设法将其去除,即从复杂的背景图像中准确的定位并分割出车牌区域图像,以便节省系统识别时间,这也是车牌定位的目的及意义所在。车牌定位的过程如图1所示。

首先,对图像做预处理,主要包括图像灰度化、图像增强、二值化。然后,利用不同的算子对车牌图像进行边缘提取,通过检测结果的比较,最终采用了Roberts算子,因其主要适用于垂直和水平边缘的提取。最后,采用数学形态学方法对车牌进行了开闭运算,获得了候选车牌区域。并结合区域特征分析获取车牌的具体位置,从而对车牌进行精确的定位和提取。

1、边缘提取

在车辆图像中,车牌区域含有丰富的字符边缘信息,并且边缘图像在背景图像中较为明显,它能反映图像中车牌的主要特征,是车牌图像分割和识别的直接依据。传统的图像边缘检测大多是从图像的高频分量重提取边缘信息,微分运算时图像边缘检测与提取边缘信息的主要手段。Roberts算子用图像对角线方向相邻两像素差代替梯度,其检测水平方向、垂直方向边缘性要好于斜线方向边缘,并且检测定位精度比较高。检测结果如图2所示。

2、形态学变换

利用数学形态学中的开闭运算对图像处理,得到多个车牌可能区域,然后用多区域判别法在图像的多个车牌可能区域中找到车牌的正确位置。此算法中结构元素大小的选取至关重要。结构元素过大,会使非车牌区域的边缘点粘连在一起,可能的车牌区域增多,给随后的多区域判别算法带来困难;结构元素过小,车牌区域无法粘连在一起,可能使真正的车牌区域不包含在可能车牌区域集合中。本算法中用到了开和闭这两个基本运算,最后还用了bwareaopen来去除对象中不相干的小对象。如图3所示。最终的定位结果如图4所示。

三、字符分割

字符分割的意义在于将定位图像中的数字、字母以及汉字分割为独立的图像。由于识别系统只能对单个字符进行识别,因此经定位处理的车牌图像还不能直接用以识别,需要将车牌图像中的每个字符完整的分割成一个个独立的字符图像,这个过程即为车牌字符分割。字符分割的过程如图5所示。

该方法的计算思想是:首先,对车牌区域图像进行水平投影,确定水平分割线,去除车牌上下边框和铆钉部分,再对水平分割后的车牌区域图像进行垂直投影,确定字符的平均宽度,从而进行分割。实验表明,该方法能够有效去除车牌边框、铆钉、噪声等对车牌字符分割的影响,并且能够准确快速地分割出车牌字符。

1、水平投影分析

对水平投影进行峰谷分析,如图6所示。检测出车牌上边框、车牌字符投影、车牌下边框的波形峰上升点、峰下降点、峰宽、谷宽、峰间距离、峰中心位置参数。确定水平分割线的位置,如图7所示。

2、垂直投影分析

对经过水平切分后的车牌区域图像进行垂直投影,对垂直投影进行峰谷分析,如图8所示。计算出车牌左边框、车牌字符投影、车牌右边框的波峰上升点、波峰下降点、峰宽、谷宽、峰间距离、峰中心位置的参数,获取字符的平均宽度。将平均字符宽度作为分割时的宽度值,切分结果如图9所示。

四、字符识别

车牌字符识别是系统的最后一个步骤,也是最为关键的一步,前面对车牌图像所做的处理都是为了完成最终的识别。系统输入的是单个的字符图像,输出的却是文本格式的完整的车牌号码,车牌字符识别的准确率直接反映出车牌识别系统性能的好坏。字符识别的过程如图10所示。

1、模版匹配识别

模板匹配的主要特点是实现简单,当字符较规整时对字符图像的缺损、污迹干扰适应力强且识别率相当高。综合模板匹配的这些优点我们将其用为车牌字符识别的主要方法。

首先取字符模板,接着依次取待识别字符与模板进行匹配,将其与模板字符求相似度,相似度越大那么就越匹配。把每一幅图像的相似值保存,然后找数值最大的,即为识别出来的结果。识别流程图和结果分别如图11和12所示。

五、结束语

本文在数字图像处理的基础上对车牌自动识别系统进行了研究和分析,在图像增强,去噪及车牌定位分割等方面,结合已有的算法提出了一些新的算法,并通过仿真实验验证这些方法的可行性,能够达到实际应用的要求。

摘要:基于图像的车牌识别是图像识别领域的重要研究课题之一。本论文采用MATLAB编程实现该车牌识别系统,综合使用多种方法提高系统的有效识别能力。首先,对图像进行预处理。其次,采用了一种结合字符边缘和形态学的车牌定位算法。接着,根据分割出的车牌区域,采用一种水平和垂直投影相结合的车牌字符分割法,完成单个字符的分割。最后,运用模板匹配的方法实现字符识别。

关键词:MATLAB,图像处理,车牌定位,字符分割,字符识别

参考文献

[1]Jia W.,et al.Region-based license plate detection[J].Jour-nal of Network and Compuer Applications.2007,30(4):1324-1333.

[2]Zheng Ma,Feng Yang.Vehicle license plate detection basedon projection and mathematical morphology.Circuits Signal and Sys-tems,2005:234-238.

[3]朱秀昌,刘峰,胡栋.数字图像处理与图像通信[M].北京:北京邮电大学出版社,2002:85-91.

[4]许录平.数字图像处理[M].北京:科学出版社,2007:14-17.

[5]盛智.基于边缘检测的车牌图像分割技术[J].自动化技术与应用,2004,23(3):24-26.

[6]Otsu N.A Threshold Selection Method from Gray-LevelHistograms[J].IEEE Transactions,Systems,Man and Cybernetics,1979,9(1):62-66.

[7]李波,曾致远,付祥胜.基于数学形态学和边缘特征的车牌定位算法[J].视频技术应用与工程,2005,(7):94-96

[8]沈庭芝,方子文.数字图像处理及模式识别[M].北京:北京理工大学出版社,1998:169-170.

[9]叶晨洲等.车辆牌照字符识别系统[J].计算机系统应用,1999(5):10-13.

车牌识别系统的研究与实现 第3篇

关键词:图像预处理,二值化,分割图片,归一化,识别

1 引言

车辆牌照在交通系统管理中有着重要的作用,从20世纪90年代初,国外的研究人员就已经开始了对车牌识别的相关研究,其中具有代表性的工作有:R.Parisi利用DSP和神经网络技术开发出了一套车牌识别系统,在字符识别中使用了一种非传统的DFT技术,实验证明效果不错。Young Sung Soh开发出一套实时车牌识别系统,据报道该系统的车牌定位正确率可以达到99.2%。

在国内,不少学者也在进行车牌识别方面的研究。在科研实验室方面,西安交通大学的图像处理和识别研究室、清华大学人工智能国家重点实验室、浙江大学的自动化系等在车牌识别方面有各自独立的研究,并取得了一定的成绩。

2 车牌识别的流程

典型的车牌识别系统由图像采集、图像预处理与图像识别3个步骤组成,其中图像采集通过拍摄照片完成,主要靠硬件支撑;图像预处理主要是通过二值化、锐化、降噪等步骤处理图片信息,获得图片的关键部分,即车牌字符;特征是车牌字符特点的表现形式,每个字符都有其自身特征,用于后续的识别。流程如图1所示。

3 图像采集

图像采集是通过相机拍摄获得车牌的照片。对车牌识别系统来说,在图像采集方面实际上存在一些困难。以高速公路为例,由于车辆行驶速度较快,所以拍摄的照片往往会很模糊,这给图像的分析带来了困难。一种比较有效且应用较多的方法是同时拍摄几张图片,对这几张图片提取公有的信息,得到一张新的图片,这样获得的图片相对比较清晰。由于实验条件所限,文中照片均通过相机拍摄,并没有高速公路拍摄的模糊效果,故每个车牌只用一张图片。

4 图像预处理

图像预处理主要包括:灰度化、二值化、梯度锐化、降噪、分割、归一化。图2是实验车牌的原始图片。

4.1 灰度化

拍摄到的图像是彩色的,现在也有一些基于彩色图像的处理方法,但实际效果并不显著,一般来说,在图像处理和识别方面,都要把彩色图像转换为灰度图像,其转换公式如下:

其中表示点的像素值,用一定比率和3个颜色分量乘积相加,得到一个和,就是灰度图像该像素点3个分量的灰度值。图3是灰度化以后的结果。

4.2 二值化

图像的二值化算法有上百种,一般分为限定阈值法和自适应二值化算法,限定阈值的二值化算法存在不足,主要是因为限定阈值后,不能适应各种环境下拍摄的照片,容易受到光照等因素的影响。

采用一种改进的限定阈值二值化算法,即先对图像灰度拉伸,再设定阈值。因为对于前景和背景区别较大的车牌而言,其图像灰度直方图具有明显的双峰特征,进行灰度拉伸后,双峰之间的波谷范围变大,使得在不同光照下的照片得到共同的波谷范围,在这段灰度范围内确定的阈值可以适用于不同的图像。灰度拉伸后,在视觉上体现为增加了背景和前景的对比度。图4是对图3进行灰度拉伸后结果,其前景和背景的对比度明显增强。图5是二值化结果。

4.3 梯度锐化和降噪

图片在有些情况下会字体模糊,这对识别造成了一定的困难,所以有时要对图像进行锐化处理使模糊的图像变得清晰起来,同时可以起到一定去噪作用。这里采用Roberts梯度锐化方法,它属于微分法的一种。

其定义如下:设原始图像上的点为,定义在处的梯度矢量为:

,设一个判定阈值为p,变化后的图像定义为:

事实证明,梯度锐化具备一定的去噪声能力,但同时会对字符的边缘有所损伤,所以在图片中字符较为细小的时候不要使用梯度锐化。由于车牌图像在梯度锐化以后,主要的离散噪声已经出去,剩下的噪声主要是车牌的边框以及边框上的文字,还有车牌上方的铆钉,这些噪声用一般的降噪方法很难全部去掉,考虑到后续步骤要进行图像切割,这些信息可以在切割中去除,故降噪算法用基本的均值滤波,去除离散的噪点。图6是锐化和去噪以后的结果,观察到字体和边缘变细,同时也去掉了部分噪声。

4.4 分割

系统在识别的时候只能根据每个字符的特征来进行判断,所以还要把图像中的字符独立地分割出来。该算法是建立在上述几个步骤处理之后的,需要有较好的二值化和降噪处理结果,具体的算法如下:

第一步:从图像水平方向的中线开始,先自下向上对图像进行逐行扫描,直至找到没有黑色像素点的第一行,记录下来,然后同理从中线由上向下对图像进行逐行扫描。这样就找到图像可能的高度范围。

第二步:根据车牌与字符的比例关系,车牌左侧十分之一的位置处于第一个字符上。从图像左边十分之一处自右向左逐列进行扫描,直至找到没有黑色像素点的第一列,记录下来,从图像右边十分之一处自左向右逐列进行扫描,直至找到没有黑色像素点的第一列,记录下来,这样就得到了整体图像的宽度范围。

第三步:从图像的左侧开始,逐列扫描,找到没有黑色像素点的第一列,这样就分割出左边一个字符,再对其进行步骤一形式的扫描,精确确定第一个字符的高度范围。继续自左向右扫描,找到有黑色像素点的第一列,这是左起第二个字符的起始位置;再用前述相同的方法就能分割出第二个字符;为了排除车牌第二个字符后面圆形分隔符的干扰,剩余的字符从车牌右侧开始扫描,用相同的方法分割。

由于降噪算法可能无法把所有噪声都去掉,所以可以取一个值T,当该行或该列黑色点数小于T时,即认为没有黑色点,这个方法对上述3个步骤均适用。

4.5 归一化

归一化图像就是要把原来各不相同的字符统一到同一尺寸。因为扫描进来的图像中字符大小存在较大的差异,而相对来说,统一尺寸的字符识别的标准性更强,准确率自然也更高。具体算法如下:先得到原来字符的高度和宽度,与系统要求的作比较,得出要变换的系数,然后根据得到的系数按照插值的方法映射到原图像中。图7是切割和归一化以后的结果。

5 识别

传统的图像识别技术包括基于模板的识别、基于BP神经网络识别、多特征匹配等方法。模板匹配和其他相比,其简单和高效的特点尤为显著,文中采用模板匹配的方法,具体算法如下:

将归一化后的样本和库中的模板进行比较,引入概念相似度T,初始值为0。当样本的像素点的灰度值和模板灰度值相同时,T加1;若不同时T减1。公式如下:

样本和库中模板依次比较,获得相似度最大的模板,认为匹配结束。由于实验条件所限,未找到车牌所有的汉字,故只进行了字母和数字的匹配。经过试验,共识别50张车牌,300个字符,正确识别292个,误识8个,识别率97.3%。以下为用例匹配结果,如图8所示。

6 结语

在前人研究的基础上,对车牌识别系统进行了功能的研究和实现。能够对简单环境下的车牌图片识别,并获得显著的效果。同时,也为复杂环境下的车牌进行分析识别的后续研究奠定了基础。

同时在实现方法上,也有一定的突破和创新。第一,在图像预处理的二值化过程中,利用图像灰度拉伸的方法,使得不同光照条件下的图像均能用同一的阈值进行二值化处理,简化了二值化的处理,同时提高了效率和准确度。第二,字符分割的过程中,根据车牌的形状特征,排除了噪声的干扰,准确地分割得到单个字符图片。

该系统实现了车牌图像的预处理,并与模板库进行匹配,获得识别结果,经过试验,对简单环境下的车牌识别率达到97%。

参考文献

[1]IECON’91.1991:R.Mullot,C.Oliver,J.L.Bourdon.Auto-matic extraction methods of container identity number and registration plates of cars.(9):1739-1745.

[2]IEEE Trans On Vehicular Technology:R.Parisi,E.D.Di Clau-dio.Car plate recognition by neural networks and image pro-cessing.1998,44(4):790-799.

[3]European Conference on Security and Detection:D.W.Tindall.Deployment of automatic license plate recognition systems in multinational environments.,1997:42-46.

[4]曾迎生.研究与开发.图像二值化研究及其改进[J].1990,(1).

车牌识别中字符识别的研究 第4篇

进入二十一世纪以来,我国科技和经济不断快速发展,汽车的普及率越来越高,已经成为人们日常生活不可缺少的主要交通工具。随之而来的交通运输问题日益严重,交通拥堵、交通事故等矛盾越发尖锐。

智能交通系统[1](Intelligent Transport System,ITS)的前身是智能车辆道路系统(Intelligent Vehicle highway system, IVHS),其将先进的信息技术、通讯技术、传感技术、控制技术以及计算机技术等有效地集成运用于整个交通运输管理体系,而建立起的一种在大范围内、全方位发挥作用的,实时、准确、高效的综合的运输和管理系统, 从而使交通设施得以充分利用并能够提高交通效率和安全保障,最终使交通运输服务和管理智能化,实现交通运输的集约式发展。

1 车牌识别系统介绍

车牌识别系统[2]主要包含获取车辆图像、车牌图像定位、车牌图像分割和车牌字符识别三个部分。

我国目前标准民用车牌格式[3]是:X1X2·X3X4X5X6X7,其中X1是汉字,X2是大写英文字母,X3X4X5X6X7是大写字母或者数字。例如:黑A·12345或者黑A·BC123等。

2 字符识别系统介绍

2.1 字符特征提取标准

字符识别[4]是整个智能交通系统ITS(Intelligence Transportation System)的最后一步,也是其主要的目的,并且所设计的系统好坏,很大程度上在于识别率的高低。汽车牌照图像经过车牌图像定位,车牌图像分割后,将归一化的单个字符提取出来进行识别。为了提高识别率和识别速度,采用了改进的BP神经网络[5]算法,并且针对中国汽车牌照号码中三种类型的字符形式:汉字、大写英文字母和数字,提出了不同的特征提取方法。

字符识别是整个车牌识别系统的关键步骤,而在许多特征中找到最重要的字符特征并提取出来是字符识别中的难点,因为车牌字符识别系统性能和精确度的高低在很大程度上取决于所选择提取特征的高效性。实验结果表明,任何一种特征都难以完美地适应于任何模式,只能根据图像的实际情况,来决定选取的具体特征。所以分类标准不一,但由诸多学者总结归纳分成以下几条。

(1)可区别性和可靠性。

(2)独立性。

(3)低复杂性。

(4)鲁棒性。

总之特征选择和提取的总体原则[6]是:应尽量减少整个识别系统的错误识别概率和处理时间。但是当两者无法同时满足时,就需要相应地平衡两者的关系,要么提高整个系统的速度,以适应实时需要,但这样会增加错误识别的概率;要么缩小错误识别的概率,以提高识别的精度,但系统会相应地增加运行时间。

2.2 13点特征法

根据阿拉伯数字和大写英文字母笔画比较少,可以提取维数较少的向量进行特征提取[7],针对于阿拉伯数字和大写英文字母采用技术比较成熟而且适应性较好的13点特征提取法[8]进行特征提取,该方法的基本思想是直接利用每个点的像素值作为特征提取的基础,统计提取出13个特征点。

13个特征点的提取分别是:首先把字符等分成大小共8等份,并且统计出每一等份内像素点的个数作为其中的前8个特征;然后将字符等分成1×3和3×1两种情况,分别统计竖直方向上中间两列和水平方向上中间两列的目标像素的个数作为接下来的4个特征,也就是画四条穿过竖直方向和水平方向的直线,统计所画4条直线所穿过的目标像素的个数;第13个特征为统计整个字符中所有目标像素的个数,将得到的这个个数作为一个整体特征,从而一共得到了关于该字符的13个特征。这样,对于每一个输入样本,输入节点个数为13个。13点特征提取法如图1所示。

2.3 改进的13点特征法

后经实验结果分析,13点特征法对于大写字母和阿拉伯数字识别率比较高,但由于汉字的结构复杂,情况多变,不能同大写英文字母和数字一样采用13点特征提取,该方法对于正确识别车牌中汉字所要提取的特征数不够,识别结果的准确率低,所以针对汉字特征提取采用基于13点特征法的改进方法,将汉字等分成共40个网格,分别计算每个网格内的像素总数,将其作为前40个特征值,由于字符全部被归一化为大小,并且根据汉字的结构特征,分别取第1、10、20、25、30、40、50行的像素累加和作为7个特征值,取1、5、10、15、20共5个特征值,最后计算整幅图像的像素总数作为一个特征,共计53个特征。样本中“黑”的二值矩阵如图2所示,根据文中提出的方法所提取的特征如表1所示。

3 实验结果

针对BP神经网络收敛速度慢,并且容易陷入局部最小点而达不到全局最小点的这个缺陷[9],引入了自适应学习速率和动量因子两种方法对BP神经网络进行了改进,从而使网络收敛到了更优点,并且减小震荡的趋势,加快了收敛速度。根据提出的字符特征提取和BP神经网络构造的方法,用Matlab对100幅车牌图像中的汉字、大写英文字母和阿拉伯数字识别进行仿真试验,识别结果如表2所示。

4 结束语

根据仿真实验结果分析,识别错误的主要原因是由于部分车牌模糊不轻,信噪比低,导致字符粘连断裂,引起错误识别。汉字结构比较复杂,在相同信噪比的车牌图像中,虽然改进了特征提取的方法,其识别率有所提高,但整体识别率还是低于字母和数字识别率。

参考文献

[1]Ichiro Masski.A Brief Hisrory of ITS[R].USA:Massachusetts In-stitute of Technology,1999.

[2]张洪刚,陈光,郭军.图像处理与模式识别[M].北京:北京邮电大学出版社,2006.

[3]陈虹.汽车车牌的自动检测与识别[D].苏州大学,2008.

[4]张忻中.汉字识别技术[M].北京:清华大学出版社,1993.

[5]韩力群.人工神经网络教程[M].北京:北京邮电大学出版社,2006.

[6]董剑军,邹明福.车牌字符的一种精判别识别方法[J].计算机工程与应用,2005(2).

[7]冯天瑾.神经网络技术[M].青岛:青岛海洋大学出版社,1994.

[8]王伟.基于BP神经网络车牌字符识别研究[D].山东科技大学,2007.

车牌识别算法与系统的研究 第5篇

关键词:车牌识别,车牌定位,字符分割

1 背景和意义

随着人们生活水平的提高, 机动车辆的数量急剧增加, 为了有效的管理车辆, 缓解交通压力, 减少交通事故, 减轻环境污染, 需要开发一种全方位、全天侯的实时、精确的智能交通系统。而车牌识别技术是智能交通系统中的一种核心关键技术, 车牌识别算法是计算机视觉与模式识别技术在智能交通领域应用的重要研究课题之一, 主要用于交通流量检测、交通控制与诱导、小区车辆管理、闯红灯等违章车辆监控、计算出行时间、车辆安全防盗、查堵指定车辆等等, 深入研究车牌识别算法与系统具有较高的理论价值和实用经济价值。

2 车牌定位算法

TRIZ理论认为, 技术系统一直处于进化之中, 解决矛盾是其进化的推动力。进化速度随技术系统一般矛盾的解决而降低, 使其产生突变的方法是解决阻碍其进化的深层次矛盾。车牌定位中, 根据车牌的不同特征, 可以采用不同的定位方法。车牌定位就是从车辆图像中准确定位分割出车牌区域。如何准确、快速定位车牌区域呢, 要借助车牌形状、颜色、灰度跳变和纹理特征。车牌形状为较规则的矩形, 大小全国标准统一, 在车辆图像中的位置较固定。车牌颜色有四种:蓝底白字、黄底黑字、白底黑字、黑底白字。车牌内外与边缘的颜色各不相同, 即灰度各不相同。车牌内有若干字符, 有较多边缘, 呈规则纹理特征。

车牌定位算法主要根据车牌内白色的点和黑色的点的分布情况来粗定。粗定后, 就可以搜索车牌边缘了。若某行白色点总数与粗定区域平均单行白点总数差不多, 则为车牌行。根据我国汽车车牌标准尺寸, 车牌长44cm宽14cm, 共7 个字符, 字符高90mm宽45cm。以上下边缘差为基准, 计算左右边缘, 为减少误差, 扩展边缘一定值后, 再进行剪切。若车牌存在倾斜问题, 需要对车牌图像进行倾斜校正。车牌的四个铆钉会影响对字符的分割, 需去除上下边框。排除干扰后, 分别从上下左右搜索第一条不全为黑的线, 这四条线组成的区域即为切割出车牌的最小范围。

3 车牌字符分割算法

常用的车牌字符分割算法有投影法、模板匹配法和聚类分析法等。投影法是先分别从上从下扫描第一个白色像素点, 找到上下边界。然后从左向右扫描, 遇白色像素时为字符的起始位置, 无白色像素列时, 为结束位置, 继续扫描, 找到每个字符的宽度。在每个字符精确宽度内, 再上下扫描, 进一步精确高度。模板匹配法是首先设计字符间隔宽度模板和字符宽度模板, 然后移动, 将字符间隔宽度模板内像素值和比上字符宽度模板内像素值和, 与设定的极小值比较确定分割位置。聚类分析法是利用聚类分析理论实现字符分割, 同类字符相关性大, 不同类字符相关性小, 获得规律。

以上方法各有优缺点, 很难让人满意, 本文提出一种改进算法。对车牌图像从左向右统计每列白色像素, 并存到矩阵中。设定阈值, 对车牌从左扫描, 若遇到大于阈值的列时, 即分割的开始, 继续扫描遇到小于阈值的列时分割结束。针对车牌第一个字符是汉字, 汉字存在不连通问题, 将该列减去起始列, 若值大于某一固定的阈值, 则分割结束。若小于某一固定的阈值, 则说明是汉字左边一半, 继续扫描, 直到大于阈值, 表示第一个字符分割结束。车牌后6个字符由字母和数字组成, 从左扫描, 当遇到大于固定阈值的列时, 即分割的起始位置, 继续扫描, 直到小于固定阈值的列时, 分割结束, 其他字符以此类推。

4 车牌字符识别算法

获得车牌号是车牌识别的最终目的。车牌上的汉字、字母和数字等字体有粗有细, 且存在不连续情况。故选择基于神经网络的字符识别, 其具有较好的容错能力和自适应能力。对车牌字符, 先进行预处理, 然后提取特征, 并输入字符的网络特征, 得到权值矩阵, 将车牌号字符分类为:第1 位字符的汉字网络、第2 位字符的字母网络、第3-4 位字符的字母数字网络和第5-7 位字符的数字网络, 最后输出识别结果。

5 车牌识别系统的设计

ARIZ采用循序渐进的方法对问题进行分析, 目的是揭示、列出并解决各种矛盾, 是基于技术系统进化法则的一套完整的分析问题、解决问题的方法, 该算法主要针对问题情境复杂、矛盾及其相关部件不明确的技术系统。它是一个对初始问题进行一系列变形及再定义等非计算性的逻辑过程, 实现对问题的逐步深入分析和转化, 最终解决问题。车牌识别系统要完成从图像采集到字符识别输出, 过程相当复杂, 应用ARIZ的循序渐进的方法可以大大提高效率, 节省时间, 降低研发成本。

车牌识别系统的功能模块主要有登录模块、显示图像模块、车牌定位模块、字符分割模块、字符识别模块、查询模块等。用户通过登录模块, 输入用户名和密码, 进入车牌识别系统。通过打开按钮, 可在系统主界面中读入车牌图像, 单击车牌定位按钮, 可得车牌定位图像, 单击车牌字符分割按钮, 可得车牌分割图像, 单击车牌识别按钮, 可得识别后车牌号, 并将信息存入数据库中。通过单击查询按钮, 可以查询数据库中的识别结果。

参考文献

[1]刘平.TRIZ在农用车牌图像预处理应用中的研究[J].信息与电脑, 2016.

[2]刘同焰.车牌识别系统的相关算法研究与实现[D].广州:华南理工大学, 2012.

车牌视频跟踪识别系统的设计 第6篇

智能交通系统(Intelligent Transportation System,TSI)是目前世界各国竞相研究和开发的热点。它结合了最新的信息捕获、传输、处理、自动控制、模式识别等技术,目标是使用计算机更加有效与科学地管理与监控交通。在智能交通系统中,车牌的跟踪识别占有重要的地位。因为车牌是区分车辆的重要依据,对于管理与调度车辆具有重大意义。

1 车牌的跟踪识别的整体结构

本系统采用DirectShow的滤镜Filter,编译生成一个.ax文件,用regsvr32进行系统注册;利用DirectShow的功能,可以接收视频流,并进行跟踪与识别。整体结构如图1所示,可分为3大部分:

(1)用DirectShow实现视频播放,设计了一个DirectShow Filter,用于从播放的视频流中截取视频帧。

(2)车牌跟踪,用于在视频帧中找到车牌的位置,并截取出来。

(3)文字识别。使用(2)提取的车牌灰度图像,识别出车牌上的文字。

2 车牌的跟踪识别的算法

2.1 中值滤波和边沿检测

在车牌的跟踪识别的算法中,首先采用中值滤波进行图像的降噪,可消除斑点噪声(Speckle Noise)和椒盐噪声(Salt and Pepper Noise),并且能保存边沿的特性。

假设图像长度为N,宽度为M,色深为d,中值滤波的窗口大小为边长r的方形区域。r一般取奇数,中值滤波的整体复杂度为O(NMr2log r)。早期的Huang1981算法[1]将复杂度降低到了O(NM(r+d)),图像处理软件Adobe Photoshop®就是使用这算法;2006年B Weiss提出一个O(NM(log r+d))的算法[2];本系统采用2007年Simon Perreault和Patrick Hebert提出的目前最优O(NMd)改进算法[3]。边沿是图像的一个重要特征,因为边沿常出现于图像中2个区域的接缝处,是车牌跟踪识别的一个必要步骤。由于车牌上的文字含有大量横向边沿,本系统选用横向的Sobel算子作边沿检测,作为一个显著特征进行识别。

2.2 车牌区域的识别

车牌区域识别是为了找到图像中车牌的部分,并进行跟踪与分割,经观察发现,车牌纵向边界丰富,本系统采用搜索垂直边沿法[4],用Sobel算子进行纵向边界检测,对车牌部分进行分割。由于车牌角度与大小基本固定,也选定车牌视频尺寸作为特征之一。

接着用模板匹配法寻找车牌位置。首先定义测度函数C(Criterion),用于计算该区域与一个车牌相似度。假设车牌在视频中的尺寸为高度H,宽度L,采用搜索算法枚举每个像素的位置(x,y),最后找出C最大值时的位置(x,y)。

式中g(i,j)为纵向Sobel算子的输出结果,此算法的复杂度为O(MNHL),其中M和N分别为图像的长度和宽度。为了达到实时性要求,设计一个优化搜索算法,定义一个区域和函数:

为快速计算S值,根据容斥原理变形得到:

可以在O(MN)时间内递推地完成S的计算。

类似地,可对C根据容斥原理变形:

在已知S情况下,任意C值可以在O(1)复杂度内完成。对于每帧图像,通过S计算出C的值,最后获得C最大值的位置。每步计算都可以在O(NM)的复杂度内完成,因此整个算法的复杂度为O(NM)。

2.3 文字识别

车牌文字识别常用方法是提取文字的一定特征,然后使用分类器进行识别。主要包括参数化与非参数化两类方法[5],分类器多选择使用神经网络,如SVM[6,7]、BP和BM算法[10,11]等。

BP神经网络是基于误差反向传播算法的一种人工神经网络,如图2所示,一般由输入层、隐含层和输出层的三层人工神经网络组成。设神经网络的输入层神经元有m个,隐含层的神经元有n个,输出层的神经元有s个,目标矢量为T,x=(x1,x2,⋯,xm)是网络的输入数据矢量,y=(y1,y2,⋯,ys)是网络输出矢量,输入层与隐含层之间的传递函数为f1(x),隐含层与输出层之间的传递函数为f2(x),隐含层只有一层,aj为隐含层节点j的输出。w1ij为输入层节点i到隐含层节点j的权重,隐含层节点j到输出层节点k的权重为w2ij,i=1,2⋯,m;j=1,2⋯,n;k=1,2⋯,s;K.Funahashi从理论上已经证明:具有一个隐含层的神经元网络能够以任意精度表示任何连续函数[5]。它的特点是:各层神经元仅与相邻层神经元之间相互全连接,同层内神经元之间无连接,输出层输出的结果与目标值进行比较,将误差反馈给输入层和隐含层从而对权值和阈值进行调节。

隐含层中第j个神经元的z为:

输出aj为:

输出层第k个神经元的输出yk为:

3 系统实现

3.1 视频截取滤镜的实现

DirectShow提供了一个专门用于视频截取的接口IMediaDet[5],可简单实现视频图像的提取。本系统直接从CTransInPlaceFilter继承子类,设计一种通用DirectShow Filter,处理各种格式的图像。设车牌跟踪部分系统的入口为DoProcess模板函数,当DirectShow Filter得到一帧图像后,将调用此函数进行处理,并在CTransInPlaceFilter::Transform中通过IMediaSample来确定剪辑格式,给出具体类型格式,DoProcess就可统一处理各种格式的RGB图像信息,且由于模板函数在编译中静态生成各种类型对应的处理函数,因此可使用内联进一步提高效率。由于实际车牌识别不需要逐帧处理,可把视频的跟踪与识别部分放在一个新线程中,采用跳帧处理,提取视频帧,达到车牌图像提取。

3.2 临界值选取算法

首先将一个灰度图像转化为一个单色图像即图像二值化。单色图像结构简单,易于处理,占用的内存和处理资源少。并保留了系统需要的最基本的信息。

临界值(Threshold)是简单的图像二值化方法,可表示为:

式中:FT(i,j)为处理后的图像;F(i,j)为原始图像;Z为灰度级别的集合,由于车牌图像只包含底色和文字两个灰度区别较大的部分,因此可定义集合Z为:

式中临界值T常是人工经验选取的,可由光线的变化感应器自动编程选择。文献[6]提出了许多自动选择临界值的方法,本文提出一种新的临界值选取算法,采用最小化分割得到两个区域的均方差之和。由于图像由两种区别较大的灰度组成,因此临界值应使两个区域内部灰度的差尽量小。

假设需要分割的图像区域为V,临界值为T,则分割得到的两个区域为V1={x|x∈V,f(x)

则两个区域的均方差分别为:

求一个T值,使方差之和D=D1+D2最小。

首先计算车牌区域的灰度分布h(x),然后对D进行一些变形以加快计算。

当T'=T+1时,可得递推计算:

因此可从0到d枚举T值,递推计算出D1值。类似地,可从d至0枚举T值,递推出D2的值,D的值也就确定了。最终效果如图4所示。

3.3 字符切割和识别

采用临界值选取算法得到了车牌部分的单色图像。接着需要对车牌上的文字进行分割。

图4看出,车牌文字之间的间隔较大,可以作为明显的分割依据。因此首先计算出每一列黑色像素的个数,然后人工指定一个临界值T用于判断空隙,并滤去过窄的空隙,因为这样的空隙可能是文字中间所产生的,如“川”字。将字符分割以后需要检查车牌包含的字符数量。如果与预先设定值不同,则可以认为是车牌不完整、非车牌部分被错误跟踪,或者是图像质量太低(由于拍摄距离过远等原因)。这时应当停止识别,避免出现错误结果。字符分割结果如图5所示。

本文直接采用将所有像素点作为BP神经网络的输入的方案,训练3个神经网络,分别用于识别数字、字母及表示省份的几个汉字。然后将字符缩放为10×10大小,输入神经网络进行训练,训练样本应尽可能选择有代表性的,可大幅度地提高识别率。

4 结语

一种简易车牌识别算法及其实现 第7篇

车牌识别是智能交通的基础性工作,它采用计算机图像处理技术,对现场采集到的车辆图像信息进行数学处理,从中提取车牌信息从而确认车辆身份。车牌识别技术在智能交通管理、停车场管理、电子收费站、汽车流量观测等方面能起到很好的作用。

2. 算法描述

本文提出的这套车牌识别算法主要由车辆尾部图像预处理、车牌定位、车牌字符分割、车牌字符识别等几部分组成,现对各部分分别简述如下:

(1)车尾图像预处理

车位图像与处理包括:图像灰度化、图像增强、图像二值化等。

(1)图像的灰度化主要是针对彩色图像而言,彩色图像的灰度化有各种不同的算法,一种简单的处理方法就是给原图像每一像素的RGB三原色赋予不同的权值,然后进行加权求和,作为该像素新的灰度值。权值的考虑主要是基于具有相同灰度值的不同原色对视觉亮度的反应不同,通常按照比例公式(2-1)求得新灰度值:

计算而得的这个值g作为三原色合成出来的一个新灰度值,从而形成一幅具有不同灰度等级的新图像。

(2)图像增强部分所做的工作主要是采用直方图对图像进行均衡,突出细节,便于后续处理。为了使图像清晰,可将图像的灰度范围拉开,并且让灰度频率较小的灰度级变大,即让灰度直方图在较大的动态范围内趋于一致[1],具体算法可参考文献[1]。

(3)最后还需要对图像进行二值化,把图像变成只有黑和白两种颜色,降低计算机处理开销。

如何将图像分成两级,关键看阈值的选取,要找到合适的阈值k来区分对象和背景,大于等于阈值k的设置为1,表示前景,即对象图形;而小于阈值的设置为0,表示背景。设原灰度图像为f(x,y),二值化后的图像为g(x,y),二值化过程表示如下:

在二值化中,阈值k的选择是关键。本文采用了一种常用的二值化方法--判别分析法,对车牌的灰度图像进行二值化处理。判别分析法将图像直方图中的灰度值的分布用阈值k分成两组(k为分界点),分离性的尺度采用两组的平均值的方差(组间方差)与各组的方差(组内方差)之比(判别比),求得这个判别比的最大值kmax该值就取为阈值k[2]。

设阈值为k,并把具有k以上灰度值的像素和具有比它小的值的像素分成两组,设为组i(i=1,2)的像素数为ωi,平均灰度值为Mi,方差为σ2,若设全体像素的平均灰度值为MT,则组内方差可用式(2-3)来表示。

而组间方差可用式(2-4)来表示。

进一步地,若全体像素的灰度值的方差为σT2,则因下式

成立,因而判别比为

在式(2-2)中先取较小的k值进行试算,然后逐渐增加k值,经过多次循环后求得最大的判别比后其对应的k值即为阈值k。最后以该阈值对车牌的灰度图像进行二值化,获得纯黑白图像。

(2)车牌定位部分

车牌定位主要工作包括:对上述得到的二值图像进行边缘特征提取,然后对特征图像进行水平扫描和垂直扫描,最终获得车牌图像所在位置,为后续的车牌字符分割做准备。

本文采用一种通过差分提取图像边缘的简易算法[5],此方法通过一个处理函数对二值化的图像提取边缘特征,该处理函数如式(2-7)所示:

F(i,j)为原二值图像,G(i,j)为处理后得到的特征图像。

车牌定位方法多种,如:基于小波与纹理分析的汽车牌照定位方法[3],基于数学形态学的实时车牌图象分割方法等[4],这些算法都比较复杂费时费事。本文采用水平扫描和垂直扫描进行车牌定位的方法,处理方法简单快捷。由于车牌区域存在字符和汉字,并且分布紧凑而有规律,因此车牌区域的灰度变化非常剧烈,这是车牌区域的最主要的特征,在获得的特征图像中这一特征会进一步放大。为此,对提取出来的特征图像进行逐行扫描,每一行的灰度由白到黑或由黑到白都记为一次灰度跳变。令m表示灰度跳变次数,对于任一扫描行,黑白灰度跳变一次则m加一,当本行扫描结束后m的值即为本行灰度跳变次数。每一行跳变次数计算公式如下:

式(2-8)中n为特征图像的列数,g(i)为特征图像的任一扫描行。

我国的车牌区域一般包括7个字符,根据上式可知扫描一个字符至少会出现4次跳变,7个字符至少会出现28次跳变,据此可设定一个跳变阈值T,考虑到实际情况,譬如车牌质量太差或字符断开等原因,特别是车牌有倾斜的情况,设置的阈值T可稍小一点,通常设定T=25左右就比较理想。在扫描过程中如果一段区域内出现了连续的扫描行灰度跳变次数满足大于T的情况,可视此区域为车牌区域。车牌区域上下界可采用式L(t≥T)≥α来约束,L为满足条件的连续扫描行数,t为当前扫描行的灰度跳变次数,α为经验值,这里根据图片的大小取30。在确认扫描已经进入车牌区域后,继续扫描搜寻跳变次数大于T=25的行直至其不满足条件为止。经过上述行扫描后即可确定候选车牌区域的上下边界。

经过上述水平扫描后,我们大致已经确定了车牌的水平区域,将该区域提取出来后会发现车牌两边还有不少区域不属于车牌部分。为此,下面我们再通过垂直积分投影的方式来确定车牌的垂直区域部分。

垂直积分投影的计算公式如(2-9)所示:

根据计算结果我们可以看出车牌字符区域的投影呈现的是等间隔的有值区域,第二和第三个字符间距较大一点,通常是因为其间有一个分隔符的缘故,这个分隔符大约占半个字符的宽度。同时我们还可以看到每个字符区段的长度基本相同,这与车牌上各字符宽度基本相同且等间距排列的情况相似。而两头车牌边缘的投影值宽度要远小于车牌字符投影的宽度,由此我们可以根据其投影的具体像素区间,对车牌的整体宽度进行切割,精确定位出车牌的位置图像。

经上述水平和垂直两个方向切割后的图像区域基本上就是车牌的实际区域了,为下一步的字符分割做好了准备。

(3)车牌字符分割部分

本文采取一种基于垂直积分投影的字符分割方法,根据车牌中字符投影分布特性并结合我国车牌的一些先验知识,分割车牌字符。

在车牌二值化图像中,一般字符部分是白色,其它部分是黑色,这里使用垂直投影法逐个统计每列中所包含的白色像素的数量,在各个字符的间隙处的列白色像素很少,甚至为0,为了保险起见,避免某些噪声干扰,我们可以设定某一个阈值m,白色像素积分值大于等于m就表示字符部分,而小于m的就表示为字符间距,这样就可以准确切割出每一个字符。m值的选取可以通过实验设定。

(4)车牌字符识别部分

我们在这里采用模板匹配算法来进行字符识别。模板匹配算法的前提是先要建立字符模板库,模板库越充分越好。其次将分割后的字符进行归一化,使其尺寸缩放为与模板库中的字符大小一致,然后与所有模板进行匹配。最后选取最佳匹配作为结果。

首先确定字符的外围边框,去掉分割出来的字符的上下左右无用的黑边,使字符外围边框达到最小。再按比例对字符图像进行线性放大(缩小)到指定大小的点阵。假定归一化后的某象素点(m,n),在原图像中的坐标如下式:

式(2-10)中,原图大小为X*Y,而大小归一化后的图像大小为M*N。

模板匹配算法实现简单。当字符图像较清晰,整体字符较规整时,对字符图像的某些缺损、污迹等干扰不敏感,识别率较高。

模板匹配算法类似于模式识别的方法,通过计算待测图片与模板图片的互相关系数,根据互相关系数的大小来判断待测图片与模板图片的相似程度,最终确定待测字符。

互相关系数是根据(2-11)式的平方欧氏距离度量得到的:

通过上述公式算出互相关系数后,根据相似程度我们就可以最终输出车牌号码了。

3. 算法实现

下面,我们采用Matlab语言实现上述算法,并以一张具体的车辆尾部图像来识别其中的车牌号码,验证算法的有效性。在MATLAB实现方面,国内已有很多成功的尝试[6,7]。

根据前述算法,我们第一步对图像进行预处理,先将彩色图像进行灰度化,效果如图1所示。

然后我们再对上述灰度图像进行直方图均衡,突出有用的细节,增强效果。处理结果如图2所示。为了提高计算机的处理速度,减少处理器开销,我们再将上述灰度图像进行二值化,变成纯黑白图像,便于下一步处理,转换结果如图3所示。

经过上述几步就完成了图像的与处理工作做,下面我们再进行车牌定位。首先根据形态学知识,对图像进行边缘提取,效果如图4所示。

然后我们采用水平扫描方式确定车牌的横向水平不分,截取有限部分,放弃无效的干扰部分,最后的截取图像如图5所示。

再在图5的基础上采用垂直扫描技术,对图像进行截取,去掉车牌两头的干扰信息,保留有效部分,截取后的结果如图6所示。

根据边缘检车的结果,可以同步得到二值图的车牌定位图像,如图7所示。根据车牌定位后的二值图,我们就可以进行字符分割了,分割方法是根据车牌二值图的垂直投影积分进行判别的,如图8所示。

车牌被精确分割后如图9所示,分割后的字符先进行归一化处理,结果如图10所示。

将归一化后的图像再跟模板库里的标准字符图像进行比较,最终获得车牌的准确号码,我们将识别结果用红色标注在原车牌图像的上面,如图11所示。

通过上述个步骤就完成了车牌的识别工作。

4.总结

本文在现有的数字图像分析、模式识别的基础上,综合车辆牌照自身的特点,提出了一套简单快速的汽车牌照识别算法,并采用Matlab语言对该算法进行了实现与验证,车牌提取结果比较理想。

参考文献

[1]冈萨雷斯等著.阮秋琦等译,数字图像处理(第二版)[M].北京:电子工业出版社,2007.

[2]田村秀行等著.金喜子乔双等译.计算机图像处理[M].北京:科学出版社,2004.

[3]黄卫等.基于小波与纹理分析的汽车牌照定位[J].中国工程科学,2004,6(3):16-22.

[4]左奇等.一种基于数学形态学的实时车牌图象分割方法[J].中国图像图形学报(A版),2003,8(3):281-285.

[5]张强王正林等编著.精通MATLAB图像处理[M].北京:电子工业出版社,2009.

[6]吕利青.一种改进的汽车牌照字符分割算法及MATLAB实现[J].机械管理开发,2009,24(1).

上一篇:高中历史高效课堂下一篇:高校科研经费的管理