改进的BP神经网络算法在车牌识别中的应用

2014-09-18 08:39:02王剑雄王玉兰
河北建筑工程学院学报 2014年3期
关键词:隐层车牌字符

王剑雄 王玉兰

(河北建筑工程学院,河北 张家口 075000)

0 引 言

目前,一些发达国家已经将车牌识别技术应用在停车收费系统和交通监控系统的实际系统中,在全天候的条件下识别精度超过95%;国内车牌识别技术发展较慢,虽然取得了一些成果,但仍停留在实验验证阶段,目前的实验室识别精度为90%,而在全天候条件下识别精度低于85%,远远低于实际应用的要求.目前,车牌识别主要有以下几种识别方法:模板匹配法、特征统计匹配法和神经网络识别法.模板匹配法对规整字符的识别率比较高,但在字符变形等情况下,识别能力有限;特征统计匹配法在实际应用中,当字符出现缺失、模糊时,识别效果不理想;神经网络识别能有效识别解析度较高的车牌,具有强大的分类能力、容错性和鲁棒性,汽车牌照中的字符识别很多都是采用神经网络来实现,其中BP神经网络是应用最为广泛的网络算法[1].

由于BP神经网络算法自身存在一些不足,如收敛速度慢、局部最优、难以确定隐含层节点数和训练过程中常发生振荡等.针对以上情况,本文在动量因子的选取、学习速率的改进和网络权值的修改等方面做了一定的改进,有效避免网络可能陷入局部最小值,并且能自适应调整学习速率,加快收敛速度,防止振荡现象发生.

1 车牌识别的流程

车牌识别系统主要包括视频输入、图像的预处理、车牌粗定位、车牌精确定位、字符分割、字符识别等几个部分.由于在自然的环境下采集到车辆的图像质量并不是很好,所以必须先对图像进行去噪、边界增强等一系列的图像预处理.在车牌定位过程中,可能对车牌角度进行一定的旋转,使得它的位置平行于X轴,最后对它的位置与大小进行归一化处理.定位出车牌的位置后,就要对车牌进行字符分割了,把车牌区域中的所有字符分割出来,然后对分割出来字符进行识别,最后把识别出的字符交给决策和管理算法.本文主要阐述如何改进BP算法,以便更好地识别字符.

2 改进的BP网络实现车牌识别

2.1 BP神经网络算法模型

BP网络模型处理信息的基本原理是:输入信号Xi通过中间节点(隐层点)作用于输出节点,经过非线形变换,产生输出信号Yk,网络训练的每个样本包括输入向量X和期望输出量t,网络输出值Y与期望输出值t之间的偏差,通过调整输入节点与隐层节点的权值Wij和隐层节点与输出节点之间的权值Tjk以及阈值,使误差沿梯度方向下降,经过反复学习训练,确定与最小误差相对应的网络参数(权值和阈值),训练即告停止[2].BP网络结构如图1所示:

图1 BP网络结构

BP网络模型包括其输入输出模型、作用函数模型、误差计算模型和自学习模型.隐层节点输出模型如公式(1),输出节点输出模型如公式(2)

Oj=f(∑Wij×Xi-qj)

(1)

Yk=f(∑Tjk×Oj-qk)

(2)

其中f-非线形作用函数;q-神经单元阈值.

作用函数是反映下层输入对上层节点刺激脉冲强度的函数又称刺激函数,一般取值(0,1),作用函数模型公式如(3)

f(x)=1/(1+e-x)

(3)

误差计算模型是反映神经网络期望输出与计算输出之间误差大小的函数,如公式(4):

Ep=1/2×∑(tpi-Opi)2

(4)

tpi节点的期望输出值;Opi节点计算输出值.

神经网络的学习过程,即连接下层节点和上层节点之间的权重矩阵Wij的设定和误差修正过程,学习模型如公式(5)

△Wij(n+1)=h×Фi×Oj+a×△Wij(n)

(5)

h-学习因子;Фi-输出节点i的计算误差;Oj-输出节点j的计算输出;a-动量因子.

2.2 BP网络模型的缺陷分析及优化策略

(1)学习因子h优化公式如(6),采用变步长法根据输出误差大小自动调整学习因子,来减少迭代次数和加快收敛速度,a为调整步长,在0~1之间取值.

h=h+a×(Ep(n)-Ep(n-1))/Ep(n)

(6)

(2)隐层节点数的多少对网络性能的影响较大,当隐层节点数太多时,会导致网络学习时间过长,甚至不能收敛;而当隐节点数过小时,网络的容错能力差.利用逐步回归分析法并进行参数的显著性检验来动态删除一些线形相关的隐节点,当由该节点出发指向下一层节点的所有权值和阈值均落于某个区域中(通常取±0.1、±0.05等区间),则该节点可删除.最佳隐节点数L可参考公式(7):

L=(m+n)1/2+c

(7)

m-输入节点数;n-输出节点数;c-介于1~10的常数.

(3)利用多元回归分析法对神经网络的输入参数和输出参数进行处理,删除相关性强的输入和输出参数,来减少输入和输出节点数.本文字符归一化成32×16大小,输出只有10个数字,26个字符,34个汉字,故输入层节点个数为512,输出层结点个数是70.

(4)算法优化.由于BP算法采用的是剃度下降法,因而易陷于局部最小并且训练时间较长.用基于生物免疫机制既能全局搜索又能避免未成熟收敛的免疫遗传算法IGA取代传统BP算法来克服此缺点[3].

在该神经网络算法投运前,从道路拍摄到大量车牌数据,包括正常运行的、不正常运行的,作为其训练内容,以一定的输入和期望的输出通过BP算法去不断修改网络的权值.在投运后,也可根据现场的特定情况进行现场学习,以扩充ANN内存知识量.

2.3 BP神经网络的进一步调整

由于BP神经网络算法自身存在一些不足,如收敛速度慢、局部最优、难以确定隐含层节点数和训练过程中常发生振荡等.因此本文采用动量因子和自适应学习速率对其进行改进.在梯度下降算法的基础上引入动量因子a(0

w(k+1)=w(k)+n((1-a)D(k)+aD(k-1))

(8)

其中,D(k)表示负梯度.

这样,在对网络权值修改过程中,不仅考虑误差在梯度上的作用,还考虑对误差曲面上变化趋势的影响,有效避免网络可能陷入局部最小值的情况,在BP神经网络训练过程中,自适应调整学习速率,加快收敛速度,防止振荡现象发生[4].

3 实验结果分析与比较

本文所研究的车牌识别系统是基于道路监控画面,对公路收费站现场拍摄的图像进行收集,首先将图像经过预处理、车牌定位、字符分割后,然后对获得字符归一化成32×16大小.输入时每个像素点都是特征点,输出时共有26个字符、10个数字和34个汉字,所以输入层节点个数为512,输出层采用编码的方式,需要结点个数是7.将这些数据分成两组:一组作为训练样本集,作为标准模板,另一组作为测试样本集.应用VC++6.0和Matlab7.0软件进行开发,具体系统功能如图2所示.在图2中,左边是一副典型的车牌图,它是经过了预处理和车牌定位后的图像;右边是一个对车牌进行识别和管理的一个系统.它识别车牌后,通过联网搜索该车以及车主的所有信息,以供决策者提供足够的资源,从而快速、准确地对该车辆做出决策.

图2 车辆牌照的识别与管理系统功能

为了检验本文车牌识别实时性,对传统BP网络和本文算法收敛速度进行比较,结论是本文车牌识别算法收敛速度明显加快,且振荡很小.说明本文对传统BP神经网络采用附加动量因子、自适应调节学习速率进行改进,提高了识别速度,满足了现代智能交通管理实时性的特点.

为了检验本文车牌识别的准确性,采用模板匹配算法、传统BP神经网络算法、支持向量机和本文算法作为对比模型,采用车牌识别的正确率作为评价准则,几种算法的识别成功率如表1所示.从表1可知,本文算法识别准确率要高于传统BP神经网络算法、模板匹配算法和支持向量机.对比结果表明,采用本文车牌识别算法能够有效地识别车牌字符,而且学习与识别的速度较快.

表1 四种算法识别成功率的比较

4 结束语

车牌自动识别技术是现代智能交通系统中的一项非常重要的技术,成为近几年来研究的热点[5].本文对BP神经网络在车牌识别应用存在一些不足进行了分析,并对其进行了改进.重点论述了BP神经网络的构造与改进,最后通过仿真对其正确性、可靠性和及时性进行验证.仿真结果表明,改进后的BP神经网络车牌识别算法进一步提高了车牌识别正确率,加快了识别速度,实现对过往车辆进行实时监控,系统的性能良好,在现代智能交通系统有着广泛的应用前景.

参 考 文 献

[1]Danian Zheng,Yannan Zhao,Jiaxin Wang.An efficient method of license plate location[J].Pattern Recognition Letters,2005,26(26):2431~2438

[2]S.Z.Wang,H.M.Lee..Detection and recognition of license plate characters with different appearances[C].Proc.Confi.Intell.Transp.Syst.2003,979~984

[3]Danlan Zheng,Yannan Zhao,Jiaxin Wang.An efficient method of license plate location[J].Pattern Recognition Letters.2005(26):2431~2438

[4]Vahid Abolghasemi,Alireze Ahmadyfard.An Edge-based Color-aided method for license plate detection[J].Image Vision computing,2008,23(10)

[5]Sergios Theodoridis,Konstantinos Koutroumbas.Pattern Recognition[M].Beijing:China Machine Press,2003

猜你喜欢
隐层车牌字符
寻找更强的字符映射管理器
字符代表几
一种USB接口字符液晶控制器设计
电子制作(2019年19期)2019-11-23 08:41:50
数字图像处理技术在车牌识别系统中的应用
电子制作(2019年12期)2019-07-16 08:45:16
基于RDPSO结构优化的三隐层BP神经网络水质预测模型及应用
人民珠江(2019年4期)2019-04-20 02:32:00
消失的殖民村庄和神秘字符
第一张车牌
基于MATLAB 的车牌识别系统研究
电子制作(2017年22期)2017-02-02 07:10:11
基于近似结构风险的ELM隐层节点数优化
计算机工程(2014年9期)2014-06-06 10:46:47
最优隐层BP神经网络的滚动轴承故障诊断