基于神经网络的车牌识别技术研究

2016-10-26 00:53顾刚尚思捷丁尧
现代计算机 2016年23期
关键词:字符识别车牌字符

顾刚,尚思捷,丁尧

(1.中博信息技术研究院有限公司,南京210000;2.南京大学金陵学院,南京210089)

基于神经网络的车牌识别技术研究

顾刚1,尚思捷2,丁尧2

(1.中博信息技术研究院有限公司,南京210000;2.南京大学金陵学院,南京210089)

车辆号牌识别作为人工智能的一个具体应用,正越来越向着成熟化、产品化方向发展,如何兼顾号牌智能识别的准确性和实时性,是该领域的一个研究热点。在对车辆号牌图像识别技术和人工智能研究的基础上,提出一种改良的Otus算法,可以较快地识别车辆号牌中的字符信息,准确性和实时性较好,为该技术的产品化奠定一定的技术基础。

号牌识别;BP模型;Otus算法;MATLAB仿真

0 引言

车牌识别(Licence Plate Recognition,简称LPR)技术是图像处理、机器视觉、模式识别等技术的综合运用,其主要目标是对已获取的汽车抓拍图像进行分析,从中获得车辆的号牌信息,进而在需要进行车辆管理的环境中有所应用。对于一个合格的车牌识别系统的要求,是能快速且准确的从一幅图像中自主定位到车牌图像的位置,并对车牌图像的信息进行单个字符的切分,最后完成字符的正确识别[1]。其基本流程如图1所示。

图1 基于图像的车牌识别流程

车牌定位系统和车牌字符识别系统是车牌识别系统中两个重要的子系统,车牌定位是车牌字符识别的首要步骤,其准确性影响后面的字符切分与识别操作。常用的车牌定位方法主要包括基于边缘的定位方法、基于形态学的定位方法、基于纹理特征的定位方法以及基于颜色划分的定位方法[2]。在定位成功后,需要对定位后的区域进行字符切分与识别,切分就是利用某种方法获得车牌中每个字符间的间隔,再根据这个间隔将车牌区域进行切分。

从当前来看,虽然关于车牌识别的算法研究相对较多,但由于诸多不确定的因素,特别是环境光和背景的复杂程度,都会影响车牌识别算法的精度,而过多地强调车牌识别的精准度,就需要大量的数值计算。总的来说,影响车牌识别技术精度的原因大概有几个方面:复杂环境光下的识别、图像质量的不确定性,车牌中的字符不统一性、车牌底色不唯一,车牌离地距离的不一致性以及在准确性与实时性的协调兼顾上的问题。

近年来,由于计算机仿生技术的兴起,部分研究人员将人工神经网络技术引入车牌识别领域,使车牌识别能够模仿人类储存信息以及对于信息进行比较、分析的功能,以此来解决因信息不完整而无法识别的问题。与一般的识别方法相比较,基于人工神经网络的识别技术,可以避开纷繁复杂的数学建模的工作,同时进行信息的存储和分析,由此加快系统的运算速率。本课题采用基于前馈型神经网络的模式识别技术作为识别方法,对比传统的车牌识别技术,开展相关研究,最终实现在保证实时性的基础上提高识别率的目标。

1 基于小波变换的车牌边缘定位技术

车牌定位是车牌识别的首要步骤,其定位方法涉及车牌的纹理、几何形状以及图像灰度等信息,常用的方法主要包括基于边缘的定位方法、基于形态学的定位方法、基于纹理特征的定位方法以及基于颜色划分的定位方法[3]。图像预处理、车牌检测和车牌识别是车牌定位的三个主要步骤,具体如图2所示。本课题围绕基于边缘的检测方法进行相关定位技术研究。

图2 车牌定位过程

精确定位车牌边缘和抑制噪声是边缘检测的主要目的,思路如下:首先凸显出图像中的车牌边缘,然后定义边缘强度,最后设置阈值来获取边缘点的集合。Roberts算子、Sobel算子、Prewitt算子、Laplacian算子和Canny算子是几种常见的传统边缘检测算子,其作用便是凸显出图像的局部边缘[4]。但传统的边缘检测存在一些不足,特别是在噪点会通过检测算子扩散,从而影响检测的准确性。考虑到上述原因,加上环境光影响的因素,本课题将小波变换引入边缘检测,把对车辆抓拍的图像信息分解为图像基本信息的低频分量和细节信息的高频分量,由于车牌区域靠近汽车前栅,边缘点较密集,故图像的高频区域应为车牌区域。图3为经过图像预处理后车辆的采集图像,为一幅720×288的灰度图。取车牌中间区域X=213处的数据线S(k),k∈(1,768),对其采用HAAR小波5层分解,其数据分析如图4所示。

图3 预处理后的车辆灰度图

图4 HAAR小波五层分解结果

从图4可以看出,相对密集的高频纹理区域是车牌区域,其他区域则是一个低频区。前三层分解中,车牌区域信号特征明显且易分离,第四层和第五层干扰严重且区别不明显,因此选择两层分解的小波细节信号进行车牌定位。图5为经过小波分解得到的图像,可以看出,汽车前栅的干扰信息被包含在了水平分量中,对角线分量在除去干扰信息的同时,也除去了一些车牌信息,而垂直分量表现相对较好。因此,本课题对车辆抓拍图像进行小波分解,使用其垂直分量进行边缘识别,具体如图6所示,车牌位置纹理相对清晰,车辆前栅干扰较小,噪点干扰较小,且只需要对高频图像进行检索就可以完成定位,运行时间大大减缩。

图5 车牌图像小波分解图

图6 小波分解的垂直分量提取边缘

小波变换识别车牌的边缘信息并不连续,通过形态学处理后,让它成为一个连续的整体,以便于后期定位。首先对水平相邻的边缘采用闭运算使其变成连通区域,随后在其垂直边缘做两次开运算[5]。其结果如图7所示,车牌区域与非车牌区域有着显著的区别。

图7 经过开闭运算后的结果

由于我国车辆拍照为制式拍照,尺寸为440mm× 140mm,比例为400/140≈3.14,结合图片尺寸,区域筛选的条件为:长度在150~50之间,高度在50~20之间。通常在水平方向上采用一阶差分运算来突出频繁变化的区域,车牌表面字符与车牌的背景灰度对比值差异明显,水平方向灰度变化相对频繁是其两个主要原因。差分思想如式1所示。

其中i=1,2,3,…,m为图像行,j=1,2,3,…,n为图像列。

将差分后的图像g(i,j)的灰度值沿水平方向做累加投影得到为方便车牌精确定位,对水平方向采用均值法进行平滑,思想如式2所示。

图8 平滑后的水平累加差分投影图

如图8所示,由于车牌上下边框水平且在边缘提取时已被除去,故而在检测上下边缘时只需从上下分别检测到首个不为0的点,其两点之间即是车牌的上下边界,效果如图9所示。

垂直方向也采用相似的处理方法,在对水平定位后得车牌信息进行垂直处理,得到如图10所示结果。

经过水平定位和垂直定位,对车牌进行准确划分,为接下来的的字符切分做好基础。

图9 水平定位后的车牌信息

图10 经过垂直定位后的车牌信息

2 车牌字符切分

二值化、图像矫正和字符切分是车牌的字符切分流程的三个主要步骤。二值化是把图像中各点灰度值设为0或255,这样得到的信息将表现为黑白色彩但仍可以反映其整体特征和局部特征[6]。本课题采用一种改良型Otsu算法,其思想如图11所示。

图11 改良Otsu二维算法示意图

将二维直方图按照图11方式进行分块,仅计算与对角线平行的f=g+N和f=g-N两条线段之间的点,其他的点视为值为0的点,当N取一定值时,就可以将所有概率不为0的点都包含进来。令二值化阈值为(s,t),利用经过该点且和对角线相互垂直的直线l进行分割,其直线方程为l=s+t-g,l左侧的点对应背景信息C0,l右侧的点为目标信息C1。该分类方法仅同s+t相关,故可把s+t看做一个整体,将二维阈值变为一维阈值进行计算,因此需要进行2L次循环,每次循环需要N2+2N(L-N)个点做累加运算,当L=256,N=40时,将全部非零点都包括,总累加次数与传统二维Otsu算法相比仍减少很多。经过该算法二值化的结果如图12所示。

图12 改良后Otsu算法结果

在实际工作时,车辆的前行方向与图像抓拍设备不总是在同一直线上,因此抓拍到的车牌信息可能会存在一定的倾斜与扭曲,因此需要对图像进一步矫正,主要分为找出倾斜角度和对其坐标变换。

图13 二值化后车牌及其投影

图13为经过二值化后的投影图,采用线性拟合的方法计算出车牌上下边图像值为1的点的集合直线,计算其与X轴的夹角,得出车牌的倾斜角度α。若α= 0,则不需要进行旋转矫正,否则进行旋转。设旋转前坐标为(x,y),旋转后的坐标(x',y'),两者关系如式3所示,通过旋转矫正后的车牌信息如图14所示。

图14 旋矫正后的车牌信息

从图14可以看出,经过矫正后的车牌信息已经基本满足字符切分的需要。通常我们使用垂直投影法对车牌表面字符进行切分,由于该字符区域相对集中,同时字符之间存在空白间隙,因此在垂直方向的投影就会有几个相对密集的投影峰值群,此时对这几个密集的投影峰值群进行切分,便能得到车牌单个字符。车牌垂直投影如图15所示。依据垂直投影切分后得到的图像如图16所示。

图15 车牌字符投影结果

图16 车牌字符切分后效果

3 基于反向传播模型的神经网络字符识别

反向传播(Back-Propagation,BP)模型是一种多层前馈型神经网络模式,其神经元的传递函数是S型函数,特点是能够实现由输入到输出的任意非线性映射,且其输出的是0~1区间的连续量[7]。该模型主要用于数值逼近、模式识别等方面。考虑到该算法可靠性,本课题引入有动量的梯度下降法来对BP模型进行改良,其思路如式4所示。

其中D(k)为k时刻的负梯度,η为学习率,α为动量因子,取值范围[0,1],当α=0,权值修正仅与此时负梯度相关,当α=1,权值修正仅与前一个负梯度相关。根据不同类型的问题,η和α取值范围也各不相同,通常学习率η的取值范围为(0.1,0.3),当问题复杂时,选用较大的值。动量因子α与收敛的速度相关,取值范围一般为(0.9,1)。

由于车牌中包括汉字、英文、数字三种字符,因此本课题使用四个BP网络来进行识别和分类。每个BP网络均采用三层结构,其中输入层节点数要匹配图像预处理后的输出特征维数,隐层节点数与输入/输出层节点数和问题复杂度等因素有关,输出层节点数取决于输出标准,即输出信息编码[8]。

在对数字识别的网络中,共有0~9共十个对象,可以参照8421码来对其编码,因此数字字符识别输出层的神经元数目为4。英文字符识别共有A~Z共26个对象,全部为大写字母,因此需要5位二进制数对其编码,即从00000~11001分别代表A~Z,因此英文字符识别输出层的神经元数目为5。汉字字符依据《中华人民共和国机动车号牌》的有关规定,汉字字符多于32个且少于64个,故汉字字符识别输出层的神经元数目为6。车牌字符共分为汉字、英文和数字三种类型,因此识别输出层的神经元数目为2。基于上述分析,我们对其进行网络训练,在训练过程中,根据初始权值不同,可能会出现网络无法收敛的情况,这种情况下,需要更新权值,直到网络收敛为止。

4 基于BP模型的号牌实验

为验证模型的改良效果,本课题通过MATLAB对其进行仿真,根据需求设计了车牌定位模块location. m,号牌字符切分模块segmentation.m和号牌字符识别模块ocr.m。主体思想如下程序所示:

[bw,grounding]=location(image);

%从汽车抓拍图像中识别出车牌图像

seg=segmentation(bw);

%对识别出的车牌图像各字符切分

load net.mat;

%导入训练好的改进BP网络

number=ocr(bw,seg,net);

%根据切分的字符识别出具体车牌号

为检测模型效果,本课题选取了266张监控抓拍图像进行测试,测试对象全部为民用车牌,图像包括过曝光(A)、过倾斜(B)、字符缺损(C)、网格前栅干扰(D)等不确定因素,如图17所示。

图17 部分典型图像采集信息及检测结果

图18 识别错误和无法识别的图像采集信息

从图17可以看出,本模型具有较好的普适性,可以对采集到的大部分图像信息进行较好的识别,但仍存在一些不足,如图18所示,在18a中,由于汽车前栅为垂直状,加之图像信息较模糊,从而无法较好地识别。18b中,将字母D识别成字母O,说明在英文字符识别层采用的模板不能够较好地区分O和D,需要改变权值来达到较好的识别效果。266次测验结果如表1所示。从表1可以看出,车牌定位和车牌识别的准确率都在98%以上,综合正确率达到97.37%。

表1 

5 结语

本课题就车牌识别中的部分算法进行相关研究工作,将投影法和小波变换结合,通过两次定位,可以精准的定位车牌位置,利用改进的Otsu算法,在保证二值化效果的基础上缩短计算时间,通过一维线性拟合来计算车牌倾斜角度方法简单效果好,最后利用BP神经网络模型对字符进行识别,取得一定的优化效果。下一步拟就本课题所研究的算法与监控相机相连接,改进该算法,使得算法可以产品化。同时就一幅抓拍图像中的多个车牌识别开展相关研究工作。

[1]白璐.基于图像处理的车牌识别系统的研究[D].长安大学,2010.

[2]张银苹,葛广英.基干HALCON的车牌识别研究[J].现代电子技术,2014.16:92-95.

[3]徐勤燕.复杂背景中基于纹理和颜色的车牌定位研究[D].东华大学,2013.

[4]李军成.利用1~2阶分数阶微分掩模的边缘检测[J].计算机工程与应用,2014.21:14-18.

[5]张吉斌.基于图像处理及支持向量机的车牌识别技术研究[D].兰州交通大学,2013.

[6]金雨,李红莉.基于LabVIEW和USB摄像头的图像采集与处理[J].现代电子技术,2015.20:67-70.

[7]柴燕茹,马岩.浅谈BP人工神经网络[J].学理论,2008.22:39-40.

[8]李武林,郝玉洁.BP网络隐节点数与计算复杂度的关系[J].成都信息工程学院学报,2006.1:70-73.

Research on License Plate Recognition Technology Based on Artificial Neural Network

GU Gang1,SANG Si-jie2,DING Yao2
(1.ZhongBo Information Technology Reseach Institute Co.Ltd,Nanjing 210000;2.Nanjing University,Jinling College,Nanjing 210089)

The vehicle license plate recognition as a specific application of artificial intelligence,is becoming more and more mature,toward the direction of the development of the product,how to balance the accuracy of license plate recognition and intelligent real-time,is a hotspot in this field.This subject is based on the vehicle license plate image recognition technology and artificial intelligence research,proposes an improved Otus algorithm,the character information recognition of vehicle license plate can faster the accuracy and good real-time performance,and laid a foundation for the technology of products.

License Plate Recognition;BP Model;Otus;Simulation

1007-1423(2016)23-0075-06DOI:10.3969/j.issn.1007-1423.2016.23.018

顾刚(1975-),男,江苏南京人,硕士,工程师,研究方向为图像处理

2016-05-26

2016-08-10

丁尧(1981-),男,江苏南京人,硕士,高级工程师,研究方向为机器视觉尚思捷(1994-),男,江苏淮安人,本科在读,机电工程专业

猜你喜欢
字符识别车牌字符
车牌颜色里的秘密
论高级用字阶段汉字系统选择字符的几个原则
字符代表几
一种USB接口字符液晶控制器设计
图片轻松变身ASCⅡ艺术画
数字图像处理技术在车牌识别系统中的应用
第一张车牌
融合字符及字符排列特征的铭牌识别方法
一种基于OpenCV的车牌识别方法
基于MATLAB的图片中字符的分割与识别