[摘要]神经网络是一种崭新的非算法的信息处理方法,即人工神经元网络。本文首先系统地论述了神经网络理论发展的历史和现状,在此基础上,针对其主要应用方向,给出一个车牌识别系统的具体实现方法和理论基础。
[关键词]神经网络 智能 字符识别
一、展趋向及前沿问题
展望21世纪初,笔者认为神经网络理论的主要前沿领域包括:
1.对智能和机器关系问题的认识将进一步增长。神经网络是由大量处理单元组成的非线性、自适应、自组织系统,它是现代神经科学研究成果的基础上提出的,试图模拟神经网络加工、记忆信息的方式,设计一种新的机器,使之具有人脑风格的信息处理能力。智能理论所面对的课题来自“环境—问题—目的”,有极大的诱惑力与压力,它的发展方向就将是,把基于联结主义的神经网络理论、基于符号主义的人工智能专家系统理论和基于进化论的人工生命这三大研究领域,在共同追求的总目标下,自发而有机的结合起来。在这里我们只想重复一下我们的信念并推测:在21世纪初,智能的机器实现问题的研究将有新的进展和突破。
2.神经计算和进化计算将有重大的发展。人类的思维方式正在转变:从线性思维转到非线性思维。神经元、神经网络都有非线性、非局域性、非定常性、非凸性和混沌等特性,我们在计算智能的层次上研究非线性动力系统、混沌神经网络以及对神经网络的数理研究。进一步研究自适应性子波、非线性神经场的兴奋模式、神经集团的宏观力学等。因为,非线性问题的研究是神经网络理论发展的一个最大动力,也是它面临的最大挑战。此外,神经网络与各种控制方法有机结合具有很大发展前景,建模算法和控制系统的稳定性等研究仍为热点问题,而容忍控制、可塑性研究可能成为新的热点问题。开展进化并行算法的稳定性分析及误差估计方面的研究将会促进进化计算的发展。把学习性并行算法与计算复杂性联系起来,必须分析这些网络模型的计算复杂性以及正确性,从而确定计算是否经济合理,关注神经信息处理和脑能量两个方面以及它们的综合分析研究的最新动态,吸收当代脑构象等各种新技术和新方法。
二、基于神经网络的车牌识别系统
1.字符识别概念。字符识别是模式识别领域的一项传统的课题,这是因为字符识别不是一个孤立的问题,而是模式识别领域中大多数课题都会遇到的基本问题,并且在不同的课题中,由于具体的条件不同,解决的方法也不尽相同,因而字符识别的研究仍具有理论和实践意义。这里讨论的是用神经网络识别数字的问题。
人工神经网络模式识别方法是近些年提出的新方法,为字符识别研究提供了一种新手段,它具有一些传统技术所没有的优点:良好的容错能力、分类能力强、并行处理能力和自学习能力。因而,采用神经网络识别方式是一种很好的选择。
2.神经网络字符识别系统。网络的字符识别系统是神经网络模式识别系统的一种,原理是一致的。一般神经网络字符识别系统由预处理、特征提取和神经网络分类器组成。预处理就是将原始数据中的无用信息删除、平滑、二值化和进行幅度归一化等。神经网络字符识别系统中的特征提取部分不一定存在,这样就分为两大类:(1)有特征提取部分的:这一类系统实际上是传统方法与神经网络方法技术的结合,这种方法可以充分利用人的经验来获取模式特征以及神经网络分类能力来识别字符。特征提取必须能反应整个字符的特征。但它的抗干扰能力不如第二类。(2)无特征提取部分的:省去特征抽取,整个字符直接作为神经网络的输入(有人称此种方式是使用字符网格特征)。这种方式下,系统的神经网络结构的复杂度大大增加了,输入模式维数的增加导致了网络规模的庞大。此外,神经网络结构需要完全自己消除模式变形的影响。但是网络的抗干扰性能好,识别率高。
构造神经网络分类器,首先要选择适当的网络结构:神经网络分类器的输入就是数字字符的特征向量;神经网络分类器的输出节点应该是字符数。10个数字输出层就有个10个神经元,每个神经元代表一个数字;隐层数要选好,每层神经元数要合适,目前有很多采用一层隐层的网络结构。然后要选择适当的学习算法,这样才会有很好的识别效果。在学习阶段应该用大量的样本进行训练学习,通过样本的大量学习对神经网络的各层网络的连接权值进行修正,使其对样本有正确的识别结果,这就像人记数字一样,网络中的神经元就像是人脑细胞,权值的改变就像是人脑细胞的相互作用的改变,神经网络在学习样本时的网络权值调整就相当于人记住各个数字的形象,网络权值就是网络记住的内容,网络学习阶段就像人由不认识数字到认识数字反复学习过程是一样的。
BP神经网络
我们采用BP神经网络来进行车辆字符的识别。BP网络是采用Widrow-Hoff学习算法和非线性可微转移函数的多层网络。一个典型的BP网络采用的是梯度下降算法,也就是Widrow-Hoff算法所规定的。backpropagation就是指的为非线性多层网络计算梯度的方法。
其算法描述如下:
A.初始化网络及学习参数,如设置网络初始权矩阵、学习因子等。
B.提供训练模式,训练网络,直到满足学习要求。
C.前向传播过程:对给定训练模式输入,计算网络的输出模式,并与期望模式比较,若有误差,则执行D;否则,返回B.
D.向传播过程:a.同一层单元的误差;b.正权值和阈值;c.回B
3.车牌数字识别。我采用Matlab来模拟用神经网络进行车牌照数字识别这一过程。作为对比,一种采用提取特征部分的方法,一组采用无特征部分提取的方法。
提取特征法采用投影-变换系数法进行特征提取。设N为图形尺寸,g(x)和g(y)分别是图形在X轴和Y轴上的投影,对它们进行Fourier变换得到K个变换系数,从K个变换系数gk(k=0,1,2,…,K-1)中选出M个有代表性的特征,使它满足类间距离要大、类内距离要小,这里选出16个作为有代表性的特征作为网络输入。
由于神经网络对图形的旋转、平移敏感,车牌照数字的获取中不可避免的存在这一类问题,所以即使是采用无特征部分提取的时候,也要对图形进行处理,这里对图形矩阵进行二维fft变换,分别得到矩阵的幅值和相值,通过实验可知网络对变换矩阵的相值收敛性好,因此这里取矩阵的相值作为网络输入。
我取了0-9共十个数字作为待识别数,每个数字取6个样本进行训练,共有60个训练样本,另取10个样本作为识别样本。神经网络采用三层结构,提取特征法有16个输入,隐含层取24个神经元,输出为十个,无特征提取法有16×16个输入,隐含层取24个神经元,输出也为10个,取最大输出端对应的数字作为识别结果,如果所有输出端的结果都小于0.5,则认为系统无法识别。
可知,两种不同方法的收敛速度,采用无特征提取法要快的多,但是由于其网络规模要比特整体取法大,每一次训练所耗时间要长,所以总的训练时间两者相差不多。根据结果来看,采用无特征提取得到字符识别率为84.3%,采用有特征提取得到的字符识别率为92.9%,后者明显高于前者。如要进提高识别率,可以考虑改良特征值的提取,采集更多的样本进行训练及改善网络结构。
4.实验结论。由实验可知,采用神经网络识别车牌号字符是切实可行的,由于时间关系,目前只是用Matlab进行了简单的试验,下一步的工作是如何降低网络规模,似的字符识别达到系统可忍受的程度,以便用到高速公路车辆管理收费系统中去。
参考文献
[1][美]斯华龄.电脑人脑化:神经网络—第六代计算机(普及本)[M].北京:北京大学出版社,1992.
[2]焦李成.神经网络系统理论[M].西安:西安电子科技出版社,1990.