车牌识别系统
云南车牌识别系统技术讲解
2018.12.27
车牌定位是车牌识别系统的基础,其定位的准确与否直接影响到车牌的字符分割和识别效果,是云南车牌识别系统技术的重点。车牌定位,即运用数字图像处理、模式识别、人工智能等技术对采集到的汽车图像进行处理,从而准确地获得图像中的车牌区域,其输入是原始的汽车图像,输出是车牌图像。在现实车牌识别系统中,由于光照不均匀、背景的复杂性等原因,造成准确定位出车牌的难度较大。
目前,根据车牌的特征,常见的车牌定位方法有基于车牌颜色特征信息的定位法、基于车牌区域频谱特征的定位法、基于分类器的车牌定位法、基于车牌边缘特征的车牌定位法等,这些方法各有所长。值得注意的是,车牌定位算法的分类并不是唯一的,区别算法类别的标准并不十分明确。车牌定位算法的方法多种多样、各有所长,但存在着计算量大或者定位准确率不高等问题。
车牌定位是车牌识别的关键步骤,为了能在复杂背景和不均匀光照条件下快速准确定位车牌位置,基于改进Isotropic Sobel边缘检测算子的车牌定位算法,由此来解决其存在的问题,该算法通过改进Isotropic Sobel边缘检测算子,实现了车牌图像在水平、垂直以及对角线方向上的纹理特征提取,然后采用Otsu算法阈值化,再对阈值化后的二值图像做数学形态学运算得到车牌的候选区域,后利用车牌特征去除伪车牌。
① 算法流程图:
② 对输入的彩色图像进行灰度化处理:
彩色图像包含更多的信息,但是直接对彩色图像进行处理的话,系统的执行速度将会降低,储存空间也会变大。彩色图像的灰度化是图像处理的一种基本的方法,在模式识别领域得到广泛的运用,合理的灰度化将对图像信息的提取和后续处理有很大的帮助,能够节省储存空间,加快处理速度。
边缘检测的方法是考察图像的像素在某个领域内灰度的变化情况,标识数字图像中亮度变化明显的点。图像的边缘检测能够大幅度地减少数据量,并且剔除不相关的信息,保存图像重要的结构属性。在实际的图像分割中,往往只用到一阶和二阶导数进行边缘检测,虽然,在原理上,可以用更高阶的导数,但是,因为噪声的影响,在纯粹二阶导数操作中就会出现对噪声敏感的现象,三阶以上的导数信息往往失去了应用价值。此外,二阶导数还可以说明灰度突变的类型,在有些情况下,如灰度变化均匀的图像,只利用一阶导数可能找不到边界,此时二阶导数就能提供很有用的信息。为了减少二阶导数对噪声敏感,解决的办法是先对图像进行平滑滤波,消除部分噪声,再进行边缘检测。
③ Sobel边缘检测算子
Sobel算子是根据邻域像素与当前像素的距离有不同的权值,强调中心像素的对边邻域像素对其的影响,而消弱4个对角近邻像素的作用。图像中每一个像素点都用这两个核做卷积,一个卷积核对图像垂直边缘响应大,而另一个则对水平边缘响应大,取两个卷积之中的大值作为该像素点的输出值。这样使得Sobel算子对噪声有抑制作用,因此不会出现很多孤立的边缘像素点,不过Sobel算子对边缘的定位不是很精确,图像的边界宽度往往不止一个像素,不适合对边缘定位准确性要求很高的应用。与Prewitt相似,Sobel算子也是通过像素平均来实现的,也有一定的抗噪能力。值得注意的是它们都不是各向同性的,所以它们检测出来的边缘并不是完全连通的,会有一定程度的断开。
Sobel边缘检测还有另外一种形式,称为Isotropic Sobel算子,该算子具有各向同性的特征,利用加权平均算子,权值反比于邻点与中心点的距离,当沿着不同方向检测边缘时梯度幅度一致, 因此它的位置加权系数更准确,在检测不同方向上的边缘时梯度的幅度一致,但速度较一般Sobel算子要慢一些。 用于边缘检测的算子很多,常用的还有Laplacian边缘检测算子、Canny边缘检测算子等。
④ 对边缘检测后的灰度图进行二值化处理
车牌图像经过边缘检测之后,车牌上的字符及边缘信息会突出出来,同时,其他非字符和非车牌边框的边缘纹理特征也突出了出来,为了减少噪声的影响,需要对车牌图像进行二值化处理,二值化是对图像进行阈值化的一种类型。根据阈值的选取情况,二值化的方法可分为全局阈值法、动态阈值法和局部阈值法,我们用大类间方差法(也称Otsu算法)进行阈值化,来剔除一些梯度值较小的像素,减少需要查找的车牌范围,二值化处理后车牌图像的像素值为0或者255。
⑤ 对车牌图像进行图像形态学操作
由于成像系统、传输介质、记录设备等的不完善,以及天气情况的变化等,车牌图像往往受到多种噪声的污染。在经过二值化处理的车牌图像上,会出现一些与要研究的对象(即车牌区域)不相关的孤立点或者像素块,扰乱图像的研究对象,影响对车牌区域的提取、分割等操作。于是要构造一种有效抑制噪声的滤波器来有效的去除目标和背景中的噪声,同时,能够很好地保护车牌区域的形状、大小及特定的车牌纹理特征。 图像滤波,即在尽量保留图像细节特征的条件下对目标图像的噪声进行抑制,是图像处理中消除噪声的不可或缺的操作,其处理的结果的好坏将直接影响到对后续图像进行处理和分析的有效性和可靠性。常用的滤波操作方法有很多种,如中值滤波、形态学滤波、高斯滤波、双边滤波等。我们在这里介绍一下中值滤波和本文所研究系统采用的形态学滤波。
车牌识别系统也是基于形态学操作的重要性质,对经过二值化后的车牌图像首先进行闭运算操作,使得车牌的字符区域连接起来,然后对车牌图像进行开运算操作,来消除车牌上的噪声,得到明亮的车牌区域从候选区域中去除伪车牌并定位出车牌区域 通过对车牌图像的数学形态学运算,图像中剩下少部分的连通区域,即为车牌的候选区域,这些区域包括车牌区域和伪车牌区域,为此,需要从图像中去除伪车牌并定位出车牌。
首先,经过对白色连通区域的轮廓进行处理得到矩形边界框,再根据我国车牌长宽比的特征,即44:14,考虑到在车牌定位过程中,由于对车牌的数学形态学操作会减少车牌信息以及拍摄所得到的车牌图像中车牌的倾斜等原因,取长宽阈值为2.0-6.0,这样就剔除了长宽比不符合条件的候选区域。 然后,由于对车牌图像的数学形态学操作会减少车牌信息,所以定位出的车牌区域会有可能小于车牌的实际区域,这时,我们就需要对定位出的车牌区域进行放大,在这里,我们对车牌区域进行放大的比例是120%,即对已经定位出的车牌候选区域的边界进行扩大。车牌由七个字符组成,在对候选区域对应的灰度化图像进行边缘检测二值化之后,正常情况下,车牌水平投影区域内每行的边缘点数要大于14,根据经验值,我们取15。
在车牌水平投影区域内会出现较大的波峰,该波峰认为是车牌的上下边界,根据实验结果,要求波峰的始点和终点之差大于20小于120,从而得到车牌的上下边界。后,根据二值化车牌图像中车牌的纹理特征信息,即在车牌区域范围内会出现明显的梯度变化特征,来确定车牌区域,终定位出车牌。在二值化图像中,255代表车牌图像中的边缘信息,0代表非边缘信息。为了更加精确的定位出车牌和剔除伪车牌,需要对定位出的车牌区域进行筛选,有两个筛选条件,一个是在二值化图像中灰度值为255和灰度值为0的像素比大于0.25,另一个是二值化图像中灰度的跳变次数范围是[5,30]。
云南车牌识别系统技术通过对车牌图像的灰度处理、边缘检测、二值化、图像形态学操作定位出车牌的候选区域,接着利用车牌的特征,如长宽比、像素比等,从候选区域中定位出车牌。