ETC系统中的车牌识别技术研究
2018-08-07汪毅
汪毅
摘 要:车牌识别技术,识别过程包括车牌定位、字符分割和字符识别3个部分。本文首先根据车牌的水平和垂直投影,找出一个长方形区域,定位出车牌的真实位置;然后将字符二值化为可识别的黑白图像,采用字符间距对车牌号进行字符分割并归一化;最后识别字符,将取出的字符与事先建立的字符模板库做差,为0就表示两者之间完成了匹配。把每一个相减为0的字符保存,也即为所求的车牌。
关键词:车牌识别技术 字符分割 字符识别 字符模式匹配
中图分类号:TP391 文献标识码:A 文章编号:1672-3791(2018)02(a)-0029-03
1 设计原理
车牌定位识别系统的目的是获得整个图像区域内的车牌,并能够准确识别出车牌。它能从静态图片或者动态视频中识别出车牌号码来,它是通过对不同颜色区域进行字符划分来识别的。它的硬件部分包括了线圈触发装置、抓拍设备、中央处理机等;而软件部分则包括了车牌区域定位算法、牌照字符分割算法以及光学字符识别算法等。当车辆通过车道检测线圈时,触发车辆检测元件,系统获知有车辆通过,激活图像采集单元开始工作,抓拍到车辆通过时的图像。车牌识别单元开始分析图像,定位出整张图像中的牌照部分,划分出车牌的单个字符,依次识别出车牌号后再重组输出。
2 设计步骤
2.1 车牌定位
在车牌的实际使用中,拍摄有汽车图像的图片背景较复杂,并且光照也不平衡,在这样的环境图像中如何识别出车牌区域来是整个识别过程的关键。在图像的采集过程中需要进行大范围的搜索,选定若干候选区域,逐一对这些区域进行识别,最后将车牌区域定位出来,并将其从整张图像范围中分割出来。
2.2 车牌字符分割
将车牌区域定位出来以后,把连续的车牌区域划分成单一的字符形式,并依次识别这些字符。我们通常采用对字符区域进行垂直投影的方式进行分割。这种方法是利用多个字符之间做垂直方向上的投影,取每个字符夹缝中的最小值,将得出的范围进行判断,看是否满足车牌规范的字符尺寸、字符格式等条件。
2.3 车牌字符识别
一般来说,对字符定位识别的方法有两大类:一类是利用神经网络算法来进行识别;另一类是建立模板库,利用模板匹配的方法来进行识别。基于人工神经网络的算法又可以分为两种方法:一种方法是特征提取出待处理的字符,然后使用这些特征对神经网络进行训练,另一种方法是直接利用互联网资源辅助我们来识别字符,通过网络将所筛选出的特征值输入,最后输出识别的结果。车牌的识别率与牌照的当前状况和摄像装置所拍摄图像的清晰程度有关。牌照的当前状况有很多,如车牌生锈、污迹沾染车牌、车牌油漆部分脱落、字符字体模糊、故意遮挡车牌、车牌歪斜等状况;而在具体的使用过程中,环境亮度、摄像装置的好坏、车速等因素也会给拍摄带来影响。这样的各种因素都将影响车牌的识别率,这也是我们要克服的困难。为了提高识别率,虽然现在识别算法不断进步,但也还需要克服自然的光照条件,这样有利于识别收集到的图像。
3 详细设计步骤
3.1 图像信息的采集与转换
通过对我国现行的车牌调查研究,可以发现我国的车牌背景颜色和字符颜色的搭配有不同的形式,一般有5种:分别为蓝底白字、黄底黑字、白底红字、黑底白字和白底黑字。我们要识别字符,需要将字符从背景图像中分离出来。以最常见的蓝底白字牌照为例,在蓝色通道的映衬下,牌照字符在该区域不能很好地区分开来。因为蓝色(255,0,0)和白(255,255,255)在蓝色信道没有太大的区别,而在G、R通道中或是灰度图中就不会出现这样的情况。因此,在识别的时候需要将彩色图像先转换为灰度图,原始彩色车牌图像如图1、图2所示。
3.2 边缘提取
一个图像的边缘部分边界两端的亮度各不相同,使用边缘信息可以帮助我们提取目标物体的形状特征。我们做图像边缘检测的主要目的是增强图像对比度,主要工作是使车牌显示的更加清晰可见,以便快速选择出车牌区域,然后准确地分割出车牌字符。对图像对比度进行增强主要有两种方法:一种是当灰度值不准确时,对灰度值的校正处理;另一种是当图像的边缘较粗糙时,对图像做平滑处理。
3.2.1 灰度校正
摄像头在对车牌部分拍摄时会受到周围光线的影响,这会造成图像的灰度值与实际不符;而摄像头所处的位置偏差也可能使得车辆的灰度图不完整。前面得到的这些错误图像信息都会给后续的操作带来影响,为了减弱这些不利因素,我们采用灰度校正的方法对其进行弥补,当灰度值不够时,可增大灰度的层次感,这样可以增強图像的对比度;当灰度范围太小时,可扩大灰度值的覆盖范围,可达到提高图像分辨率的作用。
3.2.2 平滑处理
由于图像存在着噪声,并且噪声多是高频分量。因此,我们采用低通滤波的方式将噪声干扰滤除掉,可采用在参考点附近求领域平均值的方法来减少噪声的干扰,我们通常称这种方法为图像的平滑处理。噪声往往与图像中的信号形影不离,如果平滑操作使用不当,会造成图像边缘的轮廓模糊化的结果。为了克服这个弊端,可以设定一个阈值,当某点的像素值大于阈值,将该点表示为邻域平均值;而当像素值小于或等于阈值时,保留原来的值不变,减少细节模糊带来的影响。车牌有很多特征,主要特征是:从图像处理的角度来看,车牌区域显示为一个近乎水平的矩形框,车牌号也是沿着横轴依次排列的,并且它们之间的间距都一样。根据这样的特点,将牌照进行相应的图像变换,可以清楚地反映出图像边缘,可以采用Roberts算子边缘提取法来提取边缘,如图3所示。
3.3 车牌的定位和分割
车牌识别的关键是找到车牌的定位位置并将字符逐个分割出来,首先在前面获取的灰度图中搜索到车牌的实际位置,从背景区域中分离出车牌图像,然后将车牌的字符进行读取识别。识别之前首先要将字符串分割成单个字符。在原始图像中的车牌图像是一个非常特别的子区域,形状与矩形相似,并且由于车牌是牢牢固定住的,它的位置相对稳定,这给识别也带来了方便。又因为车牌颜色和车身颜色一般情况下是不同的,因此,它与周围的环境变量具有不同的灰度值,边缘部分与外界之间会发生灰度值的突变,可以方便地通过边缘检测定位。
3.4 牌照区域的定位
经过上述的处理后,车牌区域已经大致明晰起来。同时通过膨胀操作,将车牌的边缘加粗,使边缘线光滑。本文采用数学形态学的方法来解决问题,它的主要功能是对图像的形状以及结构进行分析或处理。数学形态学可以保留图像的形态特征值,将干扰的对象去除。在本例中主要采用膨胀和闭合操作相结合的方式,最终目的是去除图像中不相干的对象。
3.5 牌照区域的剪切和进一步处理
对车牌的分割算法现在已经发展的较为成熟,本例是采用彩色图像分割法。在我们预先知道车牌颜色的情况下,例如蓝底车牌,我们就找出蓝色所对应的RGB色度范围,通过行列扫描的方法找出像素点为蓝色的区域,最后经过定位剪切后得出我们所需要的车牌区域。
在经过车牌图像剪切后,图像中还存在着噪声干扰,要从图像中准确地提取出目标对象来,最简单的方法是设置阈值,我们假设阈值表示为T,它可将图像数据划分为两个部分:像素点小于T的部分或像素点大于T的部分,这也就是对图像的二值化过程。使用均值滤波法对图像进行处理,具体方法是找到目标像素点以及临近的像素点区域来创建一个模板,将原先的像素值用模板区域的平均值来代替。
3.6 字符的分割与归一化
3.6.1 字符分割
字符分割在整个识别过程中起着承上启下的作用。方法是:先定位车牌的位置,然后分割车牌,最后识别分割后的结果。真实的车牌字符间距还是比较大的,并且两个字符之间不存在着重叠或是相接的情况。我们直接对前面剪切出的车牌二值图像中的字符串进行逐一检查,如果字符的长度小于某一个阈值时,它是单个字符;当字符长度大于这个阈值时,它是两个相连的字符,需要将这两个字符分割开来。
3.6.2 字符归一化
将字符分割完之后逐一进行处理,最后还要将车牌还原,这就需要做归一化操作,待处理完后交与后续步骤完成。
3.7 字符的识别
车牌的字符识别算法无外乎有两种方法:模板匹配算法和人工神经网络算法。模板匹配算法的工作流程是:先将车牌字符二值化,后将这些字符与模板库中存储的信息进行匹配,最后输出识别结果。因为模板库内的字符通常是A~Z,数字是0~9,汉字也仅仅是省、直辖市的简称或是军、警牌,所建的模板库容量并不是很大,所以,这种方法使用起来还是比较简单的。并且当字符图像存在缺损或有污迹干扰时,还能保持很高的识别率,正是由于模板匹配法的优势如此明显,现在已成为车牌识别的主流方法。
模板匹配算法是最具代表性的一个图像识别方法,该方法是从待识别的图像f(i,j)中提取特征值与相应模板库T(i,j)的特征值做比较,计算它们之间的相似程度。其中,两个图像相似程度就表示它们之间的关系比较紧密,属于同一个类。然而,一般情况下,用于各个图像的匹配条件也各不相同,并且噪声干扰也较大,图像如果在进行预处理或是歸一化处理时出现读取错误,也会造成图像的位置偏差或像素的灰度值偏离真实值的情况。在设计模板时,我们要能够认识到图像区域的每一个特征,并能够认识到彼此之间的差异,选取特征值的时候尽量选择不变的量进行分析,这样就可以提高模板的匹配程度。
我们使用减法操作在这里求得车牌字符与模板库中存储的字符之间的相似程度,将识别出来最相似的结果输出。车牌字符只有7个,字符排列有其固定的规律。通常第一个字符是汉字,汉字也有其规律,一般为省、直辖市的简称,再加上军牌或警牌。汉字之后是字母,字母之后是数字。我们可以以字符排列的规律为基准建立字符模板库,车牌里所用到也就40余个汉字,26个基本的大写英文字母,10个十进制基本数字,模板建立起来比较方便。实现的方法是在预先建立好模板库的基础上,将车牌字符与模板库进行匹配。将获取的车牌字符与模板库中的字符做减法,如果得到0就表示两者之间完成了匹配。把每一个相减为0的字符保存,也即为所求的车牌。
参考文献
[1] 郁梅,郁伯康,郑义.基于视觉的车辆牌照检测[J].计算机应用研究,1999(5):65-67.
[2] 叶晨洲,廖金周.一种基于纹理的牌照图像二值化方法[J].微型电脑应用,1999(6):28-29.
[3] 朱学芳,石青云,程民德.一种自适应细化方法[J].模式识别与人工智能,1997(2):140-146.
[4] 袁志伟,潘晓露,陈艾,等.车辆牌照定位的算法研究[J].昆明理工大学学报:自然科学版,2001,26(2):56-60.
[5] 刘阳,伊铁源,葛震,等.数字图像处理应用于车辆牌照的识别的研究[J].辽宁大学学报:自然科学版,2004,31(1):65-68.
[6] 许志影,李晋平.MATLAB及其在图像处理中的应用[J].计算机与现代化,2003(4):64-65.
[7] 梁玮,罗剑锋,贾云得,等.一种复杂背景下的多车牌图像分割与识别方法[J].北京理工大学学报,2003,23(1):91-94.