柴伟佳,王连明
(东北师范大学物理学院,吉林 长春 130024)
随着交通运输产业的迅猛发展,对智能交通系统的研究提出了更高的要求,而车牌识别正是智能交通系统的重要组成部分,其关键是车牌字符识别子系统.
我国目前的车牌由汉字、阿拉伯数字和英文大写字母组合构成,因为其中的汉字结构复杂,因此我国车牌较国外有更高的识别难度.在实际应用中,采集到的字符样本往往存在不同程度的噪声污染,或者是变形和部分缺失,因此要求识别系统具有较强的容噪能力.目前针对车牌字符识别最常用的方法是模板匹配法和神经网络法.叶晨洲等人[1]采用基于模板匹配技术的多识别器融合方法,对汉字、数字和字母的识别率可达96%;马俊莉等人[2]提出一种基于改进模板匹配的车牌字符识别方法,平均识别率达97%;吴进军[3]采用支持向量机方法,对车牌字符的整体识别率可达98%.模板匹配法最大的不足是对相似字符的区分能力较差,当样本维数较大时效率很低.并且利用模板匹配法通常需要对样本进行特征提取,这一过程往往难以分析和操作.随着计算机及相关技术的发展,人工神经网络开始广泛应用于车牌的识别问题.我国目前针对车牌字符识别一般采用的是BP神经网络.周科伟[4]采用改进的BP算法,对汉字、数字和字母的识别率分别为86%,98%和96%;孟涛[5]采用3个BP神经网络并联,将其结果组合输出的方法,识别率高达98%;呙润华等人[6]将BP神经网络与模板匹配法相结合,识别率为97%.但这些方法针对的识别对象都是从实际车牌中获取的字符,样本数量有限,且不能体现实际应用中出现的所有可能情况.
联想记忆是生物系统的一个重要功能,可以使人类由事物的部分信息联想到该事物的完整模式,因此将联想记忆网络应用于车牌字符识别中,可有效辨认模糊、形变或不完整的字符样本.[7]本文基于联想记忆网络的这种特性,同时将其与BP神经网络具有高容错性和不存在伪状态的优势相结合,提出了一种混合神经网络,实验证明该网络性能优于单纯的联想记忆网络和BP神经网络.
图1 联想记忆+BP混合神经网络结构
最典型的联想记忆网络是Hopfield网络.本文设计的混合神经网络是将Hopfield网络的输出作为BP神经网络的输入,将BP神经网络的输出作为最终识别结果.该混合网络的具体结构如图1所示.
Hopfield联想记忆网络是一种单层反馈神经网络.它是一种动态网络,网络的工作过程为状态的演化过程,它按照“能量”减小的方式演化,最终达到稳定状态,这些稳定的状态叫做网络的吸引子.[8]在本文中这些吸引子就是需要记忆的模式,由于每个吸引子都存在一定的吸引域,处在吸引域内的状态最终都可以演化为对应的吸引子,因此联想记忆网络有较强的容错能力,可实际应用于对畸变字符的识别.
设计一个联想记忆网络需要2个过程:在记忆阶段,通过输入标准样本数据,调整权值,使网络达到稳定;在联想阶段,输入待识别样本,系统经过演化,最终收敛于某个吸引子.完成联想记忆的关键在于采用有效的学习算法设计网络权值,常用的算法有外积法、伪逆法、NDRAM(Nonlinear Dynamic Recurrent Associative Memory)算法及LSSM(Linear Systems in a Saturated Mode)算法.由于外积法要求样本相互正交,且容量小,不适用于大量样本的记忆,故本文实验中将采用另外3种算法.
伪逆法:利用伪逆法时权值计算公式为
W=ΣΣI,
(1)
其中Σ表示由全部记忆模式组成的矩阵,ΣI表示Σ的伪逆矩阵.由于伪逆法生成的权值是投影到记忆模式形成的线性子空间上,所以也被称为投影法.[9]
NDRAM算法:该算法采用非线性的S型函数作为作用函数,表达式为
(2)
式中δ表示传递参数,通常取δ=0.1.NDRAM算法的权值更新方式是在Hebb学习律的基础上叠加一个反Hebb学习律,计算公式为
(3)
其中:x[0]表示神经元的初始状态,即需要记忆的模式;x[p]代表通过作用函数的p次迭代后的神经元状态;η表示学习速率,通常取η=0.01.[10]
LSSM算法:该算法的权值和阈值的设计流程如下[11]:
(1) 输入K个N维的记忆模式x={x1,x2,…,xk}及参数τ(通常取τ=10).
(2) 由记忆模式生成一个线性子空间A,A={x1-xk,x2-xk,…,xk-1-xk}.
(3) 对A做奇异值分解,A=USVT,U={u1,u2,…,un-1,un},计算A的秩m=rank(A).
(5) 计算Tτ=T+-τT-,Iτ=XK-TτxK,其中Tτ可视为权值,Iτ可视为阈值.
BP神经网络是一种按误差反向传播算法训练的多级前馈神经网络,由输入层、隐含层、输出层构成.由于它能学习和存储大量的输入-输出模式映射关系,因此在模式识别领域有相当广泛的应用.
图2 全部标准样本图
采用了31个省、自治区和直辖市以及5个特殊领域共计36个汉字车牌字符作为标准样本,此外还包括数字0~9及除“I”和“O”以外的全部英文大写字母,基本涵盖了车牌中所有可能出现的字符.这70个标准样本样如图2所示.
每个标准样本为二值图像,用“0”代表黑色、“1”代表白色.图像尺寸大小为32像素×16像素,将每个标准样本转化为一列向量,可得到一个512×70的原始图像矩阵,该矩阵将分别用于联想记忆网络和BP神经网络的训练学习.
图3 混合网络的运行流程
以往的车牌字符识别实验,针对的识别对象一般都是实拍的车牌,很难囊括全部汉字及英文数字字符,并且前期经过了一定预处理,因此无法量化、真实地体现识别算法的性能.本文则是基于实验室条件下,通过对标准样本进行加噪、旋转、切割,全面量化地模拟了实际情况中样本的污损情况.为了考察本文提出的混合网络的识别能力,将对5种算法组合情况进行实验,即伪逆法+BP算法,NDRAM算法+BP算法,LSSM算法+BP算法,单独BP算法及单独LSSM算法.在识别过程中,选取图2中偶数位置上的35个样本进行实验,用平均错误率来表征各网络的识别水平.平均错误率定义为
(4)
其中:errorrate为35个样本的平均识别错误率;errors为当前噪声条件下网络未能正确识别的总次数;sum为当前噪声条件下网络进行识别实验的总次数.
在回忆阶段采用的待识别对象为加入不同程度的椒盐噪声的字符样本.该实验主要模拟实际应用中由于污渍、磨损、光照不均等情况对车牌识别系统的干扰.为去除随机性的影响,对每个待识别样本进行10次实验,因此(4)式中sum取值为350.记录每种算法在噪声密度0~1区间的平均错误率,最终得到如图4所示的错误率曲线.
由图4可以看出,基于LSSM+BP算法的混合网络的性能是最佳的,在噪声密度不大于0.7时对样本可达100%正确识别.其性能不仅远优于其他混合网络和单独的BP神经网络,相对于单独的LSSM网络也有了进一步提升.
主要研究5种网络对不同旋转角度下的车牌字符样本的识别情况.与加入随机噪声不同,由于每次实验输出的结果是确定的,所以对每个样本只需进行一次识别实验,即(4)式中sum值取为35.对35个标准样本进行1°~18°的旋转,记录每种网络在样本旋转不同角度时的平均识别错误率,得到实验结果见图5.由图5可以看出,基于LSSM+BP算法的混合网络在样本旋转角度不大于7°时错误率依然是最低的.由于在实际应用中,进行最终的字符识别之前通常会对车牌进行倾斜校正[12],因此小角度旋转的样本的识别率才是关注重点.从这个角度来说,基于LSSM+BP算法的混合网络的性能仍然是最佳的.
图4 不同噪声密度下几种算法的错误率比较 图5 旋转不同角度时几种算法的错误率比较
图6 切割掉不同尺寸时几种算法的错误率比较
针对5种算法对不完整的车牌字符的识别率问题,对35个样本进行1~20行的横向切割,割除掉的部分补0后送入网络进行识别.错误率计算方法与旋转的车牌字符识别完全相同.实验得到的错误率曲线如图6所示.
由图6可以看出,基于LSSM+BP算法的混合网络在水平切割尺寸小于9像素时均可输出正确结果,远优于另外2种混合网络和单独的BP神经网络.
综合上述实验可以得到:基于联想记忆+BP算法的混合网络性能优于单独的联想记忆网络和单独的BP神经网络;在3种混合网络中,尤以基于LSSM+BP算法的混合网络是最优的.在联想记忆网络识别错误的结果中,一种是误判成其他标准模式,另一种则是进入伪状态.这是由于Hopfield联想记忆网络是一种动态网络,存在较多的伪吸引子,所以输出的结果会呈现诸多不确定状态,而BP神经网络的输出结果只能是70个标准样本中的一个,不存在伪状态.因此,将联想记忆算法和BP算法结合起来,可利用BP算法的容错能力,将联想记忆网络输出的接近标准样本的伪状态“纠正”回标准模式,进一步提高网络识别率.为了直观展示该混合网络的优越性,图7给出了基于LSSM+BP算法的混合网络的部分输出结果.
图7 LSSM+BP混合网络的部分输出结果
本文提出了一种基于联想记忆算法与BP算法相结合的混合神经网络,并将该网络用于对加噪、旋转和切割3种情况下的车牌字符样本的识别.该方法充分利用了联想记忆网络对形变、模糊和不完整样本的识别能力以及BP神经网络的纠错能力.通过大量对比实验,证明混合网络在使用LSSM+BP算法时性能最佳,可纠正LSSM网络输出的部分伪状态,进一步降低误识率.由于目前单一神经网络很难满足对复杂条件下样本的高识别率的要求,本文提出的混合神经网络的方法为车牌识别等模式识别领域的研究和方法的改进提供了一种新的思路.在后续的研究中,将进一步探讨该方法在现实交通环境中对车牌字符的识别效果,并对网络的算法进行改进,以便应对更加复杂的实际环境.
[参考文献]
[1]叶晨洲,杨杰,宣国荣.车辆牌照字符识别[J].上海交通大学学报,2000,34(5):672-675.
[2]马俊莉,莫玉龙,王明祥.一种基于改进模板匹配的车牌字符识别方法[J].小型微型计算机系统,2003,24(9):1670-1672.
[3]吴进军.车牌识别技术的研究[D].杭州:浙江大学,2006.
[4]周科伟.Matlab环境下基于神经网络的车牌识别[D].西安:西安电子科技大学,2009.
[5]孟涛.车牌识别关键技术的实现和研究[D].武汉:华中科技大学,2006.
[6]呙润华,苏婷婷,马晓伟.BP神经网络联合模板匹配的车牌识别系统[J].清华大学学报(自然科学版),2013,53(9):1221-1226.
[7]张德丰.MATLAB神经网络编程[M].北京:化学工业出版社,2011:194-199.
[8]陈明.MATLAB神经网络原理与实例精解[M].北京:清华大学出版社,2015:282-284.
[9]PERSONNAZ L,GUYON I,DREFUS G.Collective computational properties of neural networks:new learning mechanisms[J].Physical Review A,1986,34(5):4217-4228.
[10]CHARTIER S,PROULX R.NDRAM:nonlinear dynamic recurrent associative memory for learningbipolar and nonbipolar correlated patterns[J].Neural Networks,IEEE Transactions on,2005,16(6):1393-1400.
[11]LI J H,MICHEL A N,POROD W.Analysis and synthesis of a class of neural networks:linear systems operating on a closed hypercube[J].Circuits and Systems,IEEE Transactions on,1989,36(11):1405-1422.
[12]文祝青,罗威,杜华英.基于BP神经网络的车牌号码识别[J].现代计算机,2015,12(35):64-68.