APP下载

基于Matlab 的车牌识别系统仿真研究

2020-09-24张连俊

科技视界 2020年26期
关键词:字符识别车牌字符

张连俊 张 诚

0 引言

随着经济和社会的发展,汽车数量的迅速增加使得城市交通问题日益严重。车辆管理系统逐渐从人工管理转变为自动化和智能化管理。车辆管理系统智能化的核心部分就是车牌信息的自动识别。本文提出了一种基于Matlab 的车牌识别的方案,并进行了仿真。

1 图像预处理及车牌定位

由于复杂天气、光照强度等因素,自然环境下拍摄的车牌图像质量或多或少都会发生变化,图像的质量将直接影响后续车牌定位和识别,需对读入的车牌图像进行预处理,尽可能消除噪声提高图像质量。图像预处理主要包括图像灰度化、图像增强、平滑处理等操作,并转换为便于车牌定位的二值化图像。本文重点研究的车牌为蓝底类,针对黄底车牌、白底车牌,需要调整车牌定位算法并反转图像,在二值化后,可以转化为白底黑字,再经过反转变为黑底白字处理。

车牌定位部分,综合考虑了常见的几种车牌定位方法的优缺点,而选择了基于灰度图像纹理特征的车牌定位方法。对灰度图像进行行列扫描工作,找出图像的每一行所包含的车牌线段,把这些线段的起始坐标以及长度记录下来,若有连续行都有不少于一个的牌照线段,且这些行数大于某一确定阈值,就认为在行方向上找到了关于此牌照的一个候选区域,也就确定了行方向的起始行以及高度。同理,进行列方向的扫描。最终确定完整车牌区域,步骤如图1 所示。

图1 车牌定位步骤图

2 字符分割

在进行字符分割之前,先在精确定位后的牌照区域上进行进一步的图像处理工作,例如倾斜校正、均值滤波、膨胀腐蚀等。通过这一系列处理,使得最终在字符分割前的图像更加清晰,更加利于字符的分割与识别。采用的校正方法是基于Radon 变换的倾斜校正。

采用基于先验知识约束的垂直投影的车牌字符分割方法。首先对将牌照图像进行灰度化、二值化图像、开闭运算等预处理工作,然后从左到右对车牌图像进行像素扫描,计算列方向像素值总和,确定较小的像素和阈值,找到字左端,然后根据字符与车牌的高与宽的比例关系找到汉字的右端,继续重复此操作,找到所有剩余字符的左右位置,然后逐一分割字符。

3 字符识别

采用了两种比较典型的字符识别方法,分别是基于模板匹配的字符识别方法和基于BP 神经网络的字符识别方法。首先将需要识别的字符标准化为模板库中模板的大小,然后将要识别的字符与字符模板库中所有模板进行比较,生成一个像素差距函数,接着去寻找这个差距函数的最小值,也就是通过计算比较输入字符与模板库中模板之间的相似程度,差距函数最小值即相似度最高的所对应的字符模板就是所要识别的字符,最后输出匹配结果。

图2 BP 神经网络的应用过程图

模板库的创建是基于模板匹配的字符识别方法达到有效识别率的关键,在字符进行识别前必须把模板库创建好。BP 神经网络,通常指的是基于误差逆向传播训练(也即BP 算法)的多层反馈神经网络,设计BP 神经网络最重要的部分是要有大量训练样本,以及一个高效、快速收敛的学习方法。它的实现过程的大致框图如图2 所示。

图3 网络训练曲线状态图

将车牌图像划分为训练样本和测试样本,将训练样本输入到BP 网络进行训练,初始化BP 网络后,正向传播计算误差,确定是否满足设定条件。若不满足,则需要调整权值及阈值,重复进行上述操作,最终将识别结果输出。共使用了50 张车牌照片,这些照片全部为自行拍摄,保证训练的真实性和实际性。在这50 张照片中,其中20 张作为训练照片,即共训练字符210张字符图像,它们包括数字、字母以及汉字。

在收集好训练字符后,开始BP 网络初始化和BP 网络训练,程序通过函数封装,返回训练后的网络net,在训练图中,可以查看到训练曲线及训练状态图,如图3 所示。

4 结束语

仿真表明本文的综合识别率在93.3%以上,其中字符识别率达95.6%,初步达到预期要求,提出的方法对简单的车牌识别定位是完全有效的。但还需进一步研究提高,对存在污损、灰暗的车牌如何进行有效的定位识别时,可以使用神经网络对车牌定位区域进行训练,提升定位的效率和准确率;并用卷积神经网络代替传统的BP 神经网络提高识别率。

猜你喜欢

字符识别车牌字符
字符代表几
一种USB接口字符液晶控制器设计
数字图像处理技术在车牌识别系统中的应用
消失的殖民村庄和神秘字符
一种改进深度学习网络结构的英文字符识别
基于MATLAB 的车牌识别系统研究
仪表字符识别中的图像处理算法研究
基于CUDA和深度置信网络的手写字符识别
机加工件点阵字符识别研究
“他的车牌是……”