杨昌熙 张著洪
摘 要:针对环境噪声严重影响车牌的识别问题,基于字符特征向量和粒子群优化设计一种车牌识别算法。借助垂直投影法、自适应阈值方案、方向梯度直方图法等,对车牌字符进行分割和提取字符的特征向量。依据字符特征向量样本和支持向量机建立字符识别准确率模型,并基于粒子群优化算法建立求解该模型的车牌识别算法。比较性的数值实验显示,该算法能有效提升车牌识别的准确率,且字符特征向量对车牌识别有极大影响。
关键词:车牌识别;方向梯度直方图;支持向量机;粒子群优化算法
中图分类号:TN391
文献标识码: A
随着我国经济水平的不断提高,机动车拥有量的增长速度较快,道路交通拥挤现象日益突显,给交通管理带来了极大挑战。车牌识别作为交通管理的重要组成,被广泛应用于停车场、ETC、交通违章等场景,为道路交通的管理发挥着重要作用[1-2]。它涉及图像预处理、车牌提取、字符分割和字符识别[3]。车牌提取方法通常包括边缘检测[4]、颜色空间法[5]、人工神经网络[6]等,其通过提取车牌颜色与边缘信息,降低噪声对车牌信息提取的影响,但车牌边缘信息模糊、附近纹理丰富及车身颜色干扰,导致定位车牌所在区域的难度加大,且高精度锁定车牌位置的研究有待深入开展。车牌字符识别方法主要包括模板匹配法[7]、支持向量机[2]、神经网络[8]等。前者[7]是将待识别车牌与模板进行匹配,但匹配效果易受光照强度的影响,而后二者是利用训练样本和标签对分类模型进行训练,但分类效果受参数设置的影响较为明显。近来,智能优化算法与支持向量机(SVM)结合,并用于车牌识别的研究已得到足够重视;一些学者[2, 9-10]利用字符的灰度值作为样本,将粒子群优化(PSO)、混沌粒子群优化、人工蜂群优化等分别与SVM结合,获得求解SVM的最佳参数设置的车牌识别算法,提高车牌识别的准确率,但尚未考虑字符特征对字符识别效果的影响。
尽管车牌识别已有较多研究,但识别效果极大依赖于分类模型与模型参数的选择以及光照强度等因素,高效且有效的车牌识别算法仍较为匮乏。为此,本文通过利用自适应阈值方案、方向梯度直方图法(HOG)[11]及SVM建立字符识别准确率模型,进而利用PSO优化模型的参数,获得基于PSO的车牌识别方法PSOBLPR (PSO-Based License Plate Recognition Approach)。实验表明,该算法能有效提升车牌识别的准确率。
1 车牌字符的特征向量
车牌提取是车牌识别的基础性环节,其需从车辆图像中确定车牌所在区域,且通常利用Sobel算子[4]提取图像的纹理特征并作形态学处理,进而利用图像在HSV色彩空间中的色调(H)、饱和度(S)、明度(V)、蓝色像素的灰度取值范围及图像二值化[5],确定车牌所在区域,并据此对车牌字符进行分割。文献[7]首先对车牌区域的倾斜矫正,进而利用给定的阈值将此区域二值化,然后利用垂直投影法进行字符分割。可是,该方法利用静态阈值对车牌区域二值化,尚未考虑光照强度对字符分割的影响,从而导致字符分割的准确率下降。在此,设计如下自适应阈值方案并以此代替该方法中静态阈值方案
σ=160t<0.4s,1800.4s<t<0.5s,2000.5s<t<0.6s,220t>0.6s(1)
其中,t表示车牌图像中灰度值大于125的像素点总数,s表示车牌区域的像素总数。
通常,车牌包含7个字符,假定每字符的大小为p×p。在此,利用HOG获取字符的方向梯度特征向量。具体而言,将字符按大小为q×q划分为n0子块;对子块j,以其中心为坐标原点,将其等分为m个对称区域(即m个通道,m称为通道数),然后计算通道k的方向梯度值。由此,字符的子块j中通道k对应一个梯度值αjk,1≤j≤n0,1≤k≤m,进而字符对应的特征
向量为T=(α11,…,αn01,…,α1m,…,αn0m)。
2 字符识别准确率模型与算法
2.1 识别准确率模型
经典的SVM模型[12]作为一种线性可分的二分类器,通过构建超平面f(x)=wTx+b,可使两类样本到该平面的距离d=w-1最大化,于是有,
min12w2s.t.yi(wTxi+b)≥1,1≤i≤n(2)
其中,xi是给定规模为n的样本中第i个样例(维数与以上特征向量的维数相同),w是权值向量,yi是xi的标签, 取值1或-1。引入非负松弛变量ξi和惩罚因子C,可获得解决非线性可分的SVM模型:
minw22+C∑ni=1ζi,
s.t.yi(wTxi+b)≥1-ζi,ζi≥0,i=1,2,…,n(3)
在給定的C和δ下,求解模型(3)的w等价于求解该模型的如下对偶问题。
maxL(α)=∑ni=1αi-12∑ni,j=1αiαjyiyjexpxi-xj22δ2s.t.∑ni,j=1αiyi=0,0≤αi≤C,i=1,2,…,n (4)
进而,利用SMO求解此模型,可得到最优权值向量w=∑ni=1α*iyixi。
经由第1节及以上模型的描述获知,当利用字符的特征向量和SVM对字符进行分类时,字符的通道数m,惩罚因子C及模型(4) 的核函数因子δ直接影响字符识别的效果。于是,在给定的特征向量训练集P和测试集Q下,建立如下字符识别准确率模型:
maxg(m,C,δ)=r(m,C,δ)Q(5)
其中,r(m,C,δ)是以上SVM在给定的m、C及δ下,利用SMO和P得到的分类器作用于Q得到的识别准确率。
2.2 PSOBLPR的算法描述
由于通道数m取值为整数,在此将其视为连续变量,进而利用PSO求解上述模型(5)中的三个参数值,得到车牌识别算法PSOBLPR,其描述如下:
步1 字符识别:
步1.1 设定变量的取值范围:m∈[1,36],C,δ∈[10-3,10];
步1.2 输入字符图像训练集P及测试集Q;
步1.3 T← 1; 随机生成N个粒子:Xi=(mi,Ci,δi),1≤i≤N;
步1.4 对每个粒子Xi, 计算适应度;
步1.4.1 通过取整mi并借助第1节,获得P、Q对应的特征向量样本S和T;
步1.4.2 利用Ci、δi和样本S训练SVM,得到的字符识别模型Mi作用于测试集T,并由此获得的识别准确率作为粒子Xi的适应度F(Xi);
步1.5 将此N个粒子中适应度最高的粒子更新全局最优粒子gb;Xi更新局部最优粒子pbi, 1≤i≤N;
步1.6 对每个粒子Xi,执行粒子更新,
x′ij←xij+v′ij,1≤j≤3,v′ij←vij+c1r1j(pbij-xij)+c2r2j(gbj-xij)(6)
其中c1和c2为学习率,r1j和r2j为0~1之间的随机数;
步1.7 T←T+ 1;若T<Gmax,则返回步1.4;否则, 输出gb, 即最优粒子(m*,C*,δ*);
步2 车牌识别:
步2.1 输入车牌图像Mk, k=1,2,…;
步2.1 计算Mk中7个字符的特征向量;
步2.3 利用m*、C*、δ*及SVM执行车牌匹配;
步2.4 输出车牌号。
3 数值实验分析
本文在Windows7(CPU/i3 4170 3.70 GHz,RAM/ 4GB)/ Visual Studio 2013/ OpenCV 3.4.1环境下展开实验。参与PSOBLPR比较的算法包括SVM[13]、BP[14]及KNN[15]。另外,为检测果蝇优化是否能有效处理车牌识别问题,在此将一种果蝇优化算法[16]取代以上算法的粒子进化过程,获得的算法(FOABLPR)也参与比较。选取5890张车牌字符图片作为字符训练集和756张字符图片作为字符测试集,以及借助760张车辆图片检测各算法的车牌识别效果。各算法的最大迭代数为100,其参数设置如下表1所示。
3.1 数值实验结果与分析
在参数设置下,各算法解决车牌识别问题之后,获得的字符训练集和测试集的识别率及车牌识别率如表1所示。
由表1可知,PSOBLPR及FOABLPR获得m、C、SymboldA@
的最优参数值集合分别是{4,1.37, 1.5}及{20,1.14,0.41}。它们在此参数值及其它参数设置下,得到的字符识别效果和车牌识别准确率均高且非常相近,由此表明,果蝇优化与粒子群优化应用于车牌识别得到的识别效果具有高度相似性;相对而言,PSOBLPR对字符和车牌的识别有微弱的优势。其次,比较于未进行参数优化的KNN、BP和SVM,此两种算法明显比BP和SVM获得的效果好,且车牌识别准确率至少比KNN高1.5%。尽管BP和SVM作用于训练集和测试集均能得到较高的识别准确率,但应用于车牌识别得到的识别准确率却较低,原因在于车牌识别源自多个字符识别的组合。值得指出,KNN作为k近邻分类算法比较于SVM和BP,无论是作用于字符集还是车牌集合,均能获得较高的准确识别率,因此该算法应用于车牌识别也是一种可选算法,但KNN的计算量大且受到训练样本的影响较大。
4 总结
车牌识别是一种既传统又有挑战性的工程和学术性问题,如何对噪声污染较重的车牌进行精准识别,对车辆管理具有重要的现实意义。为此,本文通过设计自适应阈值方案并借助相关的图像预处理方法,提取字符的特征向量,进而依据SVM获得字符识别准确率模型,并利用粒子群优化获得该模型的解。比较性的实验结果显示,粒子群优化和果蝇优化算法在车牌识别方面具有较好的应用潜力;BP和未进行参数优化的SVM的车牌识别准确率较低;比较于BP和SVM,KNN虽然能获得较高的准确识别率,但其计算量大,且其车牌的识别能力受训练样本的影响较大。
参考文献:
[1]CHAO G. License plate recognition using MSER and HOG based on ELM[C]//Proc. of 2014 IEEE International Conference on Service Operations and Logistics, and Informatics, 2014, 217- 221.
[2]劉雪阳. 基于ABC-SVM算法的车牌识别系统设计[J]. 电子测量技术, 2018, 41(24): 94-98.
[3]朱克佳, 郝庆华, 李世勇,等. 车牌识别综述[J]. 现代信息科技, 2018, 2(05): 4-6.
[4]王文章. 基于边缘点检测的车牌定位技术的研究[D]. 上海:上海师范大学, 2016.
[5]田原嫄, 郭海涛, 刘思阳. 基于HSV色彩空间同态滤波的行进中车牌定位研究[J]. 拖拉机与农用运输车, 2016, 43(01):24-26.
[6]岳兆新,曾黄麟. 一种改进的基于边缘特征提取BP网络车牌定位的新方法[J].计算机应用与软件, 2011, 28(12): 86-87.
[7]瞿国庆, 李汪佩. 渣土车车牌字符智能识别研究[J]. 电子测量与仪器学报, 2016, 30(12):1853 -1860.
[8]柴偉佳, 王连明. 一种基于混合神经网络的车牌字符识别方法[J]. 东北师大学报(自然科学版), 2018, 50(01): 63-67.
[9]何婕. SVM及其在车牌字符识别中的运用[D]. 成都:四川大学, 2005.
[10]马杰, 蔡延光. 基于改进SVM方法的车牌识别研究[J]. 现代计算机(专业版), 2012(14): 23-27.
[11]高聪, 王福龙. 局部HOG和分层LBP特征融合的车牌字符识别[J].计算机系统应用, 2017, 26(04): 116-123.
[12]郑奇. 支持向量机SMO算法的改进研究[D]. 济南:山东师范大学, 2017.
[13]殷羽, 郑宏, 高婷婷,等. 基于联合HOG特征的车牌识别算法[J].计算机工程与设计, 2015, 36(02): 476-481.
[14]鲁扬. 基于BP神经网络的车牌识别算法研究[D]. 大庆:东北石油大学, 2018.
[15]陈晨. 智能交通系统中车牌识别的关键技术研究[D]. 南京:南京理工大学, 2014.
[16]李少波, 赵辉, 张成龙,等. 果蝇优化算法研究综述[J]. 科学技术与工程, 2018, 18(01): 163-171.
(责任编辑:于慧梅)
Study on License Plate Recognition Approach Based on Particle Swarm Optimization
YANG Changxi, ZHU Hongzhang*
(College of Big Data and Information Engineering, Guizhou University, Guiyang 550025, China)
Abstract:
This work, based on particle swarm optimization designs a license plate recognition algorithm. License plates’ character segmentation and feature extraction are executed in terms of the methods of vertical projection, adaptive threshold, directional gradient histogram and so forth. A character recognition accuracy model is developed by means of a character feature vector sample and support vector machine, solved by a novel license plate recognition algorithm. Numerically comparative experiments show that the approach can effectively enhance the accuracy of license plate recognition while license plate recognition’ effect depends greatly on character features.
Key words:
license plate recognition; directional gradient histogram; support vector machine; particle swarm optimization