一种改进的基于模板匹配的污损车牌识别方法

2019-07-01 02:35李强张娟
智能计算机与应用 2019年3期
关键词:车牌识别

李强 张娟

摘 要:本文提出了一种改进的模板匹配的污损车牌识别方法,该识别方法对于污损车牌和模糊车牌识别效果较好。研究时充分利用车牌定位和字符分割过程中得到的信息对车牌识别过程进行反馈。利用改进的模板匹配方法进行字符的匹配识别,通过将字符的差异值累加进行扩大,以便于比较字符之间的差异值,通过对比差异值的大小来判断字符识别结果。通过改进的模板匹配方法来识别车牌字符,提高了污损车牌识别的准确性,实验结果表明本方法具有很强的环境适应性和鲁棒性。

关键词: 模板匹配;车牌识别;污损车牌;车牌字符;模糊车牌;字符匹配识别

文章编号: 2095-2163(2019)03-0113-05 中图分类号: TP391.41 文献标志码: A

0 引 言

车牌识别系统广泛应用于交通管理、收费站、城市交叉口、港口和机场、机动车检测、停车场管理等不同的场所,并成为图像处理和模式识别技术研究领域中的热点问题。车牌自动识别系统[1-4]主要包括车牌定位、车牌分割、车牌字符识别三部分。

其中,仅就车牌字符识别而言,目前基于神经网络、字符笔画特征和模糊识别等方法能够有效地识别解析度较高和图像较为清晰的车牌。但是对于较低解析度和较为模糊或者有污损的车牌,上述方法的可行性却仍然欠佳。时下,根据车牌特征信息分析的车牌识别方法也已陆续问世,如文献[5]中,充分利用车牌定位和字符分割过程中得到的信息对车牌识别过程进行反馈,将二值化、车牌定位和字符分割紧密结合,注重车牌与车辆背景图像分离特征,以连通域分析为字符分割特点,提高正确率。文献[6]采用径向基神经网络(RBFNN)识别车牌,RBFNN的算法采用混合结构优化算法,在识别中使用非全字符输入和多层识别器。混合结构优化算法简化了RBFNN的结构,提高了RBFNN的泛化能力;非全字符简化了RBFNN的输入,提高了车牌识别的速度;多层识别器保证了非全字符输入的识别率。将RBFNN的混合结构算法和非全字符输入、多层识别器相结合,在保证识别率的基础上,提高了识别速度。文献[6]中的仿真试验表明:相对于全字符输入的车牌识别,该方法在时间复杂度上的表现非常优秀;相对于K-means算法的RBFNN车牌识别,其方法在泛化能力上有一定的优势。

本文针对污损车牌的识别提出了一种改进的模板识别方法,该方法将每个字符单独分割出来,且均分成很多小部分,每個单独字符的每一小部分与模板中对应的每一小部分进行比对,对比出差异值,接下来再将许多小部分的差异值进行累加,处理后得到污损车牌字符与模板字符之间的差车牌的字符,并具有良好的鲁棒性,最终取出对比得到的差异值最小的字符作为识别结果。综上可得该方法的设计流程如图1所示。该方法能有效识别出污损车牌。

1 车牌定位

当人们从远处观察车辆时,判别牌照区域的主要依据是车牌的颜色、亮度和车牌字符的边缘形成的纹理。所以,充分利用这些信息就成了定位车牌的关键。牌照区域有别于其他区域的地方就在于牌照上有字符,结合国内车牌的特征,国内的汽车牌照内容由数字、字母和汉字组成。首位字符是汉字部分,其次是24个英文字符中的一个(字母O和I除外),后面五位是数字和字母的组合。根据中国车牌字符的特征制作模板,使用模板匹配的方法来识别字符的识别率较高。图象的灰度水平投影具有较好的连续性,不会有大的起伏,体现在纹理信息上就是其垂直边缘的间距呈现出相应规律。本文的车牌定位方法就是基于车牌字符位置和投影的规律性这两方面相结合而展开研究的,从而更有效地排除干扰区域,更快速、准确地实现车牌的定位。

在车牌定位时先通过粗定位[7]—水平定位和垂直定位来找出车牌的大概区域。首先通过水平投影确定车牌的上下边界。虽然车牌区域内水平方向有着较大的灰度变化,但由于字符在竖直方向上的灰度有着较好的连续性,在车牌范围内的水平灰度投影不会发生很大的起伏,而在车牌之外的上下区域由于车身或背景的关系投影值会明显不同。然后使用类似的方法,通过垂直投影确定车牌的左右边界。由此找出的矩形区域被认定为车牌区域。

在图像中,本文将初步定位出污损的车牌区域,再对污损的车牌图像进行处理。研究中给出了拍摄车牌的原图,如图2所示。

在含污损车牌的图像中将污损车牌区域提取出来,提取出来的污损车牌图像如图3所示。

2 车牌图像预处理

完整的车牌识别过程主要有4个步骤:图像预处理、车牌定位、车牌分割、车牌识别[8]。这里,拟对此做出如下研究论述。

2.1 图像预处理

由于实际车辆在行驶过程中拍摄的车牌不一定都是清晰的。又由于路况和周遭环境的差异,例如:强光照射、遮挡、污染、模糊等,污损的情况也很多,会给摄像机的抓拍增加难度,进而影响后续的字符分割和识别处理,如此一来,图像的预处理就显得尤为重要[9]。在预处理中,先将图像灰度化,灰度化后的效果图如图4所示,再采用高斯滤波,消除高斯噪声,对图像进行平滑处理。对此研发设计可阐释分析如下。

2.1.1 高斯滤波

高斯滤波是一种线性平滑滤波,适用于消除高斯噪声,广泛应用于图像处理的减噪过程。总地来说,高斯滤波就是对整幅图像进行加权平均的过程,每一个像素点的值,都由其本身和邻域内的其他像素值经过加权平均后得到。高斯滤波的具体操作是:用一个模板(或称卷积、掩模)扫描图像中的每一个像素,用模板确定的邻域内像素的加权平均灰度值去替代模板中心像素点的值。高斯滤波后的效果如图5所示。

将高斯平滑滤波器应用于去模糊图像上,和均值滤波器差不多,但其与均值滤波器存在差异之处的地方就是核不同。均值滤波器的核每一个值都是相等,而高斯平滑滤波器的核内的数却呈现出高斯分布。对于二维高斯分布,研究中多会用到的数学公式可表示为:

2.1.2 边缘检测

图像边缘检测[10]大幅度地减少了数据量,同时剔除了不相关的信息,保留了图像重要的结构属性。用于边缘检测的方法可分为2类,即:基于查找的方法和基于零穿越的方法。其中,基于查找的方法通过寻找图像一阶导数中的最大和最小值来检测边界,通常是将边界定位在梯度最大的方向。基于零穿越的方法通过寻找图像二阶导数零穿越来寻找边界,多数情况下就是Laplacian过零点或者非线性差分表示的过零点。

Sobel边缘检测算法比较简单,实际应用效率比Canny边缘检测效率要高,但是边缘检测的准确性却会逊色于Canny检测。因而在对效率要求较高,但是对细纹理无明确要求的场合,Sobel边缘即为首选。

Laplacian算子是n维欧几里德空间中的一个二阶微分算子,定义为梯度grad的散度div。Laplacian 算子对噪声比较敏感,而且图像一般均先经过平滑处理,研究可知平滑处理也需借助模板的作用,所以,通常的分割算法都是把Laplacian 算子和平滑算子结合起来生成一个新的模板。

在本文中需要得到更为准确的边缘检测结果,考虑到是污损车牌,故而要特别关注纹理,而且也要对噪声有一定的抗干扰性,所以文中边缘检测采用了Canny边缘检测方法。Canny边缘检测算法具有低错误率、高定位性、最小响应的特性。本次研究中边缘检测后的效果图如图6所示。

2.2 车牌分割

车牌分割的好坏将直接关系着车牌识别效果。通过前述步骤进行车牌定位和图像预处理后,下面就是二值化的字符分割环节。常见的字符分割方法有模板匹配、聚类分析[11]、投影分割等3种方法,在执行分割之前先找到有效区域,并截取有效区域作为分割区域。在检测有效区域时采用行列扫描的方法,先通过统计跳变次数找到上下边界,再通过从左和从右逐列地扫描,认为白色边界最多的是起始列,通过这种方法找到左、右边界,检测到的有效区域如图7所示。

在检测到有效区域后,再接着就是截取检测到的有效区域,研究截取的有效区域即如图8所示。

分割字符时采用垂直投影的方法,分割时要注意的是第二和第三个字符之间的间隔会比其他字符略大。研究中对截取的有效区域进行分割后的结果则如图9所示。

将分割后的效果图中的7个字符依次单独分割出来,并统一进行标准化,分割后的结果如图10所示。

3 车牌识别

3.1 传统的车牌识别方法

目前,车牌识别的技术相对来说已趋于成熟,车牌识别的方法也较为多样。一般情况下,利用传统的模板匹配方法来进行车牌识别,其识别率会很高。在图11中,传统的车牌识别方法就是将从车牌中取得的第一个字符(见图11(a))和模板库中的字符(见图11(b)、(c))进行比对,而后输出比对结果中差异值最小的字符,可将其判定为识别结果。

3.2 改进的模板匹配方法

车牌字符识别是确认车牌上的汉字、数字、字母等信息的过程。字符识别时,先是对字符进行特征提取,建立字符特征库,再通过与字符特征库中的字符加以比较来进行字符识别。车牌识别中,比较常用的有模板匹配和基于神经网络法。本文对于污损车牌的识别[12]采用的是改进的模板匹配的方法。不同于传统的模板匹配方法,在改进的模板匹配方法中,并非如同传统的匹配方法只是将待识别的字符与模板进行简单、直接匹配,而是先将待识别字符与模板进行处理,待处理之后再逐一进行比对,对比求出差异值之后取比对的差异值最小的结果送至输出,并认定其为最终结果。研究中选用了从拍摄到的一辆污损车牌的牌照[13]中提取到的字符。鉴于车牌受到污损,所以在识别车牌时不能再用之前简单的模板匹配的方法。

本文中采用了一种改进的模板匹配的方法来对字符进行比对识别。这里拟用单个字符的比對来详述识别方法。图12是污损车牌的单个字符和模板库中的单个字符进行比对。

在对字符进行识别时,将污损的单个车牌字符提取出来,将其均分成100等份,同时也将模板中字符也细分成一百等份,此后将在污损字符每个小网格内统计其白色像素个数与每个模板字符对应位置的小网格进行比较,得到其差异值,再将这100个网格内的差异值进行叠加,至此将选择其中差异值最小的一个作为识别结果,将其输出。

假设有一阈值0X时,计数器U便加1,直至遍历完整个小网格内的所有像素点。得到这一个小网格内的非0像素值的总和U,令a1=UV,则其它剩余的小网格依次为a2,a3...,a100用此方法得到的单个污损车牌字符的累加和计为M。研究推得其数学公式为:

而模板字符用此方法得到的累加和记为N,则污损字符与模板字符的差异值记为L,具体公式如下:

因车牌牌照中的7个字符,在固定的位置有固定的字符。将污损字符与模板字符进行比对时,如果污损字符在首位,则将污损字符与汉字模板进行比对;如果污损字符在第二位,则将污损字符与车牌中的24个英文字符中的一个(字母O和I除外)进行比对;如果污损字符是后五位,因为后面五位是数字和字母的组合,则将污损字符与数字和字母的模板进行匹配。在结束比对后,车牌字符的7个位置都取其中对应L值最小的一个模板字符作为此方法的识别结果并输出。至此,研究得到的识别输出结果如图13所示。

4 结束语

由于模板匹配[14]识别率高的特征,本文中也采用模板匹配的方法来识别污损车牌,充分利用车牌字符的局部与整体信息,由于车牌字符局部的差异性并不明显,因此利用车牌字符每一小部分的差异性进行叠加,将局部的差异性转换成整体的差异性进行输出。本文即基于以上分析提出了一种利用改进的模板匹配的方法来识别污损[15]的车牌字符。该方法将污损的字符均分成许多小部分,在每一小部分和模板对应的每一小部分之间通过对比计算出差异值的大小,再将得到的每一小部分的差异值进行累加得到字符与模板的综合差异值。接下来将每一个模板都与污损字符比对后均得到一个差异值,选择其中一个与污损字符差异值最小的模板字符进行输出,并认定其为最终识别结果。实验结果表明,该方法能有效检测并识别含污损字符的车牌,对污损车牌具有很高的识别率。但也要指出,该方法对污损区域较大或者识别率较低的图像还未达到很好的效果。因此,在本文算法程序的基础上,下一步应重点针对污损区域较大或者图像识别率不是太高的情况来进行深入研究,期待对污损车牌的识别能够得到更好的效果。

参考文献

[1]冯国进, 顾国华, 郑瑞红. 基于自适应投影方法的快速车牌定位[J]. 红外与激光工程, 2003,32(3):285-287,308.

[2] 秦钟, 徐建闽, 史胜利,等. 基于字符角点信息的车牌定位方法[J]. 华南理工大学学报 (自然科学版), 2006, 34(4):19-23.

[3] 朱卫健, 夏良正.  一种实用快速的车牌字符分割方法[J]. 南京理工大学学报(自然科学版), 2005,29(s1):26-28.

[4] 汪涛, 卢朝阳.  一种新的汽车牌照字符切分算法[J]. 西安电子科技大学学报(自然科学版), 2005,32(6):931-934,957.

[5] 骆雪超, 刘桂雄, 冯云庆,等. 一种基于车牌特征信息的车牌识别方法[J]. 华南理工大学学报 (自然科学版), 2003, 31(4):70-73.

[6] 赵志刚, 缪凯, 吕慧显. 基于RBFNN和非全字符输入的车牌识别方法[J]. 光电子·激光, 2007, 18(12):1457-1461.

[7] 刘尚旺, 段德全, 崔艳萌,等. 二次定位车牌分割及识别方法[J]. 河南师范大学学报(自然科学版),2016,44(4):151-156.

[8] 张三友, 姜代红. 基于OPENCV的智能车牌识别系统[J]. 软件导刊, 2016, 15(5):87-89.

[9] 刘智. 径向基神经网络算法在车牌字符识别中的应用[J]. 华侨大学学报(自然科学版), 2017, 38(1):113-116.

[10]GADDAM L, RANE S H, BASPURE J K, et al. License plate recognition[J]. International Journal of Computer Science & Mobile Computing, 2014, 3(9):492-495.

[11]吳益红, 许钢, 江娟娟,等. 一种用于工件识别的LBP-HOG特征融合方法[J]. 南阳师范学院学报, 2016, 15(9):33-38.

[12]延俊义. 用字符局部相似度误差过滤的方法识别污损车牌[J]. 科技创新导报, 2011(25):113.

[13]刘焱, 董军宇, 马莎,等. 基于纹理合成算法在恢复污损牌照中的应用[J]. 计算机技术与发展, 2008, 18(12):186-188.

[14]高聪, 王福龙. 基于模板匹配和局部HOG特征的车牌识别算法[J]. 计算机系统应用, 2017,26(1):122-128.

[15]程雅琼, 蔡亮, 张忠林. 恶劣天气下车牌识别系统及MATLAB GUI实现[J]. 自动化与仪器仪表, 2017(2):53-55.

[16]BULAN O, KOZITSKY V, RAMESH P, et al. Segmentation- and annotation-free license plate recognition with deep localization and failure identification[J]. IEEE Transactions on Intelligent Transportation Systems, 2017, 18(9):2351-2363.

猜你喜欢
车牌识别
车牌识别的专利技术综述
一种车牌字符分割算法的技术研究
基于支持向量机的车牌字符识别方法
车牌识别系统设计与实现
基于车牌识别的机器视觉课程研究
一种改进的BP神经网络车牌识别算法的研究
基于MATLAB GUI的车牌自动识别系统设计
基于车牌识别的机混车道视频测速算法
半开放式智慧校园安防系统