基于模板匹配的车牌汉字识别方法及判别函数
2011-06-01谷秋頔白艳萍
谷秋頔,白艳萍
(中北大学理学院,山西太原 030051)
车牌自动识别系统在交通管理中占有重要的地位,可以用于自动收费系统、停车场管理等。现在较为常用的车牌字符识别方法有:神经网络[1-4]、模板匹配[5]、特征匹配[6-7]和支持向量机[8]。
中国汽车牌照中的汉字字符由于特殊性和复杂性在识别过程中容易出错。文中针对汉字字符识别提出了一个以图像处理为基础,运用数学逻辑运算,以Matlab[9]为操作平台的方法,通过运用合适的判别函数提高车牌汉字的识别率。
以往是将汉字进行水平或竖直方向的投影,得出投影图像。再根据投影图中的波谷和波峰判断汉字的间断点和较长的直线,而波峰和波谷的判定较为复杂。因此提出在待识别字符与模板进行逻辑运算后,直接运用数学函数作为判别函数的判定识别结果,简化了识别过程,并提高了识别率。
1 背景知识及原理简介
数字图像处理指用计算机处理数字图像。数字图像由有限的元素组成,每一个元素都有一个特定的位置和幅值,这些元素称为图像元素、画面元素或像素[10]。因此每一幅数字图像都可以定义为一个矩阵。
1.1 匹配方法原理
将一幅图像进行灰度二值化后,白色部分像素值为1,黑色部分像素值为0。因此将两幅图像进行逻辑‘与’运算结果为:白&&白=白,白&&黑=黑,黑&&白=黑,黑&&黑=黑。
以‘京’字为例,下图分别表示了待识别字符‘京’与3个不同标准字符模板进行逻辑‘与’运算后的结果。
图3 与模板‘冀’匹配
图中(a)表示字符‘京’、‘津’和‘冀’的标准模板,(b)表示待识别的字符‘京’,(c)表示待识别字符与该模板运算后的结果。从图中可以看出,待识别字符与相应的模板进行运算后得到的结果较为清晰,而与其他模板进行运算后得到的结果则更加模糊。
1.2 判别函数原理
每一个标准字符模板都有一个固定的二值矩阵元素和sum(Ai),每一个待识别字符也有一个二值矩阵的元素和sum(B),将待识别字符与标准字符模板进行匹配后得到一个新的图像,这个匹配结果的二值矩阵元素和为sum(Ci)。
由图1、图2和图3可以看出,当待识别字符与不适合的模板进行匹配后,白色像素少于与相应的模板匹配,因此文中提出采用求取sum(Ci)最大值作为一个判别函数。同时可以看出,待识别字符与相应模板进行匹配得到的结果变化最小,因此提出以求取sum(Ai)、sum(Ci)和sum(B)标准差的最小值作为另一个判别函数。
2 判别函数表达式及识别过程
2.1 判别函数
Ck=max(sum(Ci)),i,k=1,2,3,…,31 (1)
式(1)表示找出元素和sum(Ci)最大值对应的二值矩阵 Ck,k=1,2,3,…,31,则与二值矩阵 Ck,k=1,2,3,…,31 对应的二值矩阵 Ak,k=1,2,3,…,31 所代表的模板即为识别结果。
式(2)表示求出sum(B),sum(Ai)和 sum(Ci)标准差最小值对应的二值矩阵 Cj,j=1,2,3,…,31,则与二值矩阵 Cj,j=1,2,3,…,31 对应的二值矩阵 Aj,j=1,2,3,…,31所代表的模板即为识别结果。
2.2 识别步骤
(1)首先将标准车牌汉字字符模板存储在计算机中,标准模板如图4所示。
图4 标准模板
(2)将这些模板进行灰度化和二值化,得到相应二值矩阵 Ai,i=1,2,3,…,31。
(3)将待识别的车牌汉字字符进行灰度化和二值化,得到相应的二值矩阵B。
(4)将二值矩阵 B 分别与二值矩阵 Ai,i=1,2,3,…,31进行逻辑‘与’运算,得到新的二值矩阵Ci,i=1,2,3,…,31。
(5)最后根据预先设定好的判别函数得出最终的识别结果。
3 识别结果对比与分析
3.1 两种判别函数识别结果对比
表1 识别结果对比
通过表1可以看出,对同一识别过程,两种不同的判别函数会产生较大的差别,判别函数(2)的总识别率远高于判别函数(1)。
3.2 结果对比
表2 结果对比
通过表2可以看出,与文献[6]相比,文中的两个判别函数在不同汉字字符的识别上显示出了各自的优势,判别函数(1)在笔画较为复杂的字符识别上具有优势,判别函数(2)识别结果较为稳定。尤其是‘津’和‘青’两个字符的识别率,文中的两个判别函数都高于文献[6]。
3.3 两个判别函数联合使用
因为两个判别函数各有优势,所以提出将两个判别函数结合使用。通过对两判别函数识别结果的对比发现,判别函数(1)对于部分字符识别率较高,而这部分字符的二值矩阵元素和sum(B)集中在(550,600)之间,因此通过编写相应的程序:当sum(B)在此区间内时,调用判别函数(1),否则调用判别函数(2)。实验结果如表3所示。
表3 合用函数与文献[6]对比
结果显示,合用函数与判别函数(2)具有相同稳定性的同时,在一些字符识别率上有所提高,例如‘青’和‘黑’,且大部分字符识别率高于文献[6]。
4 结束语
通过实验发现,对于同一识别方法,选取合适的判别函数对最终的识别结果有一定的影响。每个函数都有其自身的优缺点,因此,将不同的函数进行结合使用,可以兼顾二者的优点,从而达到更好地识别效果。
[1]苏厚胜.车牌识别系统的设计与实现[J].可编程控制器与工厂自动化,2006(3):103-107.
[2]吴成东,刘文涵,傅小菲,等.基于粗网格神经网络的车牌字符识别方法[J].沈阳建筑大学学报:自然科学版,2007,23(4):693 -697.
[3]杨大力,刘舒.基于神经网络的车牌汉字识别方法[J].中国人民公安大学学报:自然科学版,2009(3):56-58.
[4]赵先军.基于神经网络的车牌识别技术研究[D].西安:西安电子科技大学,2005.
[5]吴炜,杨晓敏,刘大宇,等.一种基于模糊模板匹配的车牌汉字识别方法[J].微型机与应用,2005(11):57-59.
[6]王磊.基于投影特征匹配的车牌汉字识别方法研究[D].哈尔滨:东北林业大学,2008.
[7]姜瑾,张桂林,许慧慧.基于投影特征曲线匹配的车牌字符识别算法[J].计算机与数字工程,2007,38(6):20 -22.
[8]黄凡.车牌字符识别技术的研究与实现[D].重庆:重庆大学,2008.
[9]杨杰.数字图像处理及Matlab实现[M].北京:电子工业出版社,2010.
[10]GONZALEZ R C,WOODS R E.Digital image processing[M].Second Edition.Beijing:Publishing House of Electronics Industry,2007.
[11]张向东,马月涛,杨奇泽.一种基于灰度图像的车牌快速定位算法[J].电子科技,2007,20(5):76-78,82.