第三章字符分割先对定位到的车牌图像进行二值化处理,再进行形态学滤波去除噪声和不必要的区域,再通过对图像进行垂直投影分析,从而确定了每个字符的位置,再对每个字符进行切割。
第四章字符识别通过模版匹配法来识别分割字符,通过将分割出来的字符与数字、字母和汉字模版相比较,选出差距最小的模版即为结果。
2 车牌定位
车牌定位一般有以下几种方法:
1。基于数学形态学的方法:
如图2。1所示,先对图像预处理之后,使用roberts算子进行边缘检测,然后使用一个特定的结构元素,通过数学形态学的基本运算:腐蚀、膨胀、开启、闭合来对图像进行处理使得车牌成为一个连通的闭合区域,从而得到可能的车牌区域[5]。
图2。1 车牌定位流程
2。基于纹理特征的方法:
在使用基于纹理特征分析的方法时,我们需要首先对图像进行灰度化处理,之后对图像进行扫描,选定一个合适的阈值,当扫描道德区域中符合车牌纹理特征的值大于所选取的阈值时,则将其作为车牌的一个可能的区域,最后通过所有可能的区域再最终确定一个车牌区域。
3。基于彩色信息的方法:
首先对图像进行色彩空间的分析和计算,接着对图像进行基于彩色信息的色彩分割,分割出来的区域再通过形态学处理来最终确定车牌所在的区域。
本文使用的方法是基于数学形态学的方法。
2。1 灰度化
由摄像机所采集到的图像一般都为彩色图像,对于彩色图像来说,不仅占用的存储空间较大,且处理起来较慢,所以,我们会对图像进行灰度化处理,从而减小存储空间,并且提高处理速度。
彩色图像中的每个像素点的颜色是由R、G、B三个分量的值确定的,且每个分量有255个值可以取。灰度图像则是R、G、B三个分量相同的一种特殊的彩色图像,其中R=G=B的值称为灰度值,所以灰度值为255的像素即为白色,灰度值为0的则为黑色[6]。
对图像进行灰度化一般有以下几种方法:
1。加权平均法:让R、G、B各乘一个加权系数,求和后作为灰度值。常见的公式为:I=0。299*R+0。587*G+0。114*B。
2平均值法:求出每个像素点R、G、B三个分量的平均值,将其赋予这个像素的三个分量[7]。
3最大值法:将每个像素点R、G、B三个分量中最大的值作为灰度值处理。
本文matlab程序中的函数rgb2gray所采用的是加权平均法,灰度化结果如图2。2所示。
对应Matlab程序:
close all;clear all;clc; %清空工作区
I= imread('D:\1。jpg'); %读取路径D:\下名为1。jpg的图像
figure(1),
subplot(1,2,1),imshow(I), title('原始图像');
I1=rgb2gray(I); %对图像I进行灰度化处理
subplot(1,2,2),imshow(I1),title('灰度图像');
图2。2 灰度化
2。2 边缘检测
图像边缘检测是字符分割、字符识别的基础,通过边缘检测可以大幅减少数据量,并且去除了没有用的信息。
边缘是图像的基本特征,指的是图像中亮度变化最为明显的地方,例如灰度值的突变、纹理的突变等等,通过图像的边缘轮廓可以获得图像的主要信息,所以它是图像分割所依赖的重要依据,边缘检测是字符分割和字符识别的基础[8],边缘检测的成功与否直接影响以后的识别效果。
原理:图像的边缘一般有两种,其中一种是屋顶状边缘,此时边缘是灰度值增加或者减少的交界处,另一种是阶跃状边缘,此时边缘是灰度值变化明显的地方。两种边缘都可以通过灰度图来显示图像灰度的变化。