论文部分内容阅读
近年来,随着机动车数量的飞速增长,交通拥堵、车辆肇事等交通问题越来越多,智能交通系统的需求越来越迫切。车牌自动识别系统因为功能全面,实用性突出,因此成为智能交通系统中的佼佼者。车牌识别算法在不断发展,但其仍有局限性,特别是在识别率和识别速率都尚待进一步优化。因国内汽车类型和规格十分复杂,车牌种类及颜色亦多种多样,位数也未进行完全统一。所以,对于算法智能化需求更高。同时,由于我国车牌字符还包括了汉字,这给车牌识别带来了更高的挑战。车牌自动识别算法包含多种,其中比较具有代表性的包括车牌号码自动定位算法、车牌号码字符识别算法、车牌号码字符分割算法。本论文主要研究利用软件处理图像的相关理论和技术,对涵盖车牌资料的图像展开规范化处理。本论文对车牌识别技术的算法进行了如下的研究:1.车牌定位算法。车牌定位算法多种多样,比较主要有基于边缘检测的方法、基于小波分析定位等。在对车牌进行定位之前需要先对车辆图像进行预处理,通过将车牌图片进行灰度化,通过阈值将其转化为二值图,使车牌信息能够凸显出来。通过比较中值滤波与均值滤波图像处理PSNR值可知均值滤波图像效果更佳。最后使用roberts算子将车牌位置定位出来为下一步字符分割打下基础。2.车牌字符分割算法。比较具有代表性的包括基于垂直投影的方法、聚类方法等。在做分割之前,由于使用垂直投影的方法,需要先对倾斜的车牌部分展开调整,将车牌水平矫正。之后去除车牌边框,特征图只剩下字母数字和汉字。最后通过垂直投影方法对字符展开规范化的分割,获取到单个字母、数字或汉字。3.车牌字符识别算法。其中比较具有典型意义的包括模板匹配法、支持向量机法等,本文对对其展开深入的分析,对两种识别算法进行对比,支持向量机的字符识别方法在识别率以及识别时间上更具优势。通过选取不同核函数,我们对比效率以及识别率,最后选取SVM的RBF核函数:C=100,σ~2=1。本文探讨的算法在python进行了实现,python目前应用非常广泛,opencv也对其开放接口。Python代码中将其分为车牌定位模块、字符分割模块以及识别模块。通过main函数作为入口,输入多种场合获得的图像,并依次调用三个模块,训练以及使用svm模型来获取检测结果,得到的结果表明检测正确率高,检测可以达到实时的效果。