车牌识别在车位引导系统的应用
时间:2015-02-09 阅读:1585
车牌识别技术以计算机技术、图像处理技术、模糊识别为基础,建立车辆的特征模型,识别车辆特征,如号牌、车型、颜色等,其是基于图像分割和图像识别理论,对含有车辆号牌的图像进行分析处理,从而确定牌照在图像中的位置,并进一步提取和识别出文本字符。采用动态连接库,嵌入到开发的应用程序,使用C++编程,运用多线程编写技术,即创建一个自动识别线程,并且设置了一个识别标志,保证系统在进行定位识别的时候不会出现第二个识别线程。车牌识别一般可以分为车牌定位、字符分割和字符识别3个主要步骤。
1、车牌定位
为了定位,必须对车牌进行预处理来消除车身颜色不同以及环境因素给车牌定位造成的不良影响。
1)灰度处理:系统采集的车牌原始图像是24位RGB图,为了便于后续快速图像处理,有必要先将图像转为灰度图像,主要采用zui大值法、平均值法和加权平均值法。
2)灰度图二值化:为了进一步提高图像的对比度,需要对灰度图进行二值化处理,二值化的关键在于阈值的确定,可采用Otsu算法进行灰度图二值化。
3)边缘检测:采用Canny边缘检测法,其是一种比较新的边缘检测算子,具有很好的边缘检测性能,得到了越来越广泛的应用。该边缘检测法利用高斯函数的一阶微分,它能在噪声抑制和边缘检测之间取得较好的平衡。
4)中值滤波:中值滤波可以在消除噪声的同时保持图像的细节。中值滤波的主要工作步骤如下:
首先,将模板中心与图像中某个像素位置重合,然后,读取模板下各对应像素的灰度值,将这些灰度值从小到大排成一列,并找出这些值中排在中间的一个,zui后,将这个中间值赋给对应模板中心位置的像素。
5)线扫描实现车牌定位:经过上述处理后,车牌图像中只有颗粒状的点和长短不一的曲线了,若在一个车牌长度内垂直长度超过阀值的曲线大于10条,则认为是在车牌区域之内,反之则认为在车牌以外的区域,通过对图像进行线扫描,找出满足条件的区域作为车牌候选区域。
2、字符分割
为了准确地识别牌照上的汉字、英文字母和数字,必须把单个字符从牌照中提取分离出来。用的字符切分方法有投影法板匹配法、区域生长法、聚类分析法等。本文采用模板匹配与垂直投影结合的方法分割字符,具体步骤如下:
1)统计车牌图像每列中白色像素的个数;
2)根据白色像素的个数对车牌图像的所有列进行分类,若白色像素个数为零,则该列属于背景列;否则该列属于字符列。
3)记下所有背景区域和字符区域的起始列和结束列,连续的字符列形成一个字符区域,连续的背景列形成一个背景区域。
4)计算车牌图像中所有的背景区域宽度和字符区域宽度。
5)判断第二个字符的区域的起始列以左的字符区域,离第二个字符的区域zui近的字符区域是否己被标记。如果己被标记,则该字符区域被确定为车牌*个字符的区域;否则证明该字符区域在垂直投影法下分割错误。
6)用确定*个字符的区域和第二个字符的区域的方法对剩余字符区进行分割,确定车牌字符的区域。
3、字符识别
常用的字符识别方法可以大致分为模板匹配法、结构模式识别、统计模式识别以及支持向量机等,本文采用较为简单的模板匹配法,中国大陆的车牌中使用的字符59个汉字、24个大写英文字母和10个阿拉伯数字三种类型共93个,且都是印刷体,结构固定、笔画规范。模板匹配是图像识别中有代表性的方法之一,将以待识别的图像提取的若干特征与模板对应的特征量进行比较,计算模板和特征量之间的距离,根据zui小距离判定所属类。对于分割出来的二值字母和数字字符图像,先归一化为15×15像素,然后对其进行细化,zui后建立匹配模板,提取特征向量,进行匹配识别。