对边缘检测后的灰度图进行二值化处理
车牌图像经过边缘检测之后,车牌上的字符及边缘信息会**出来,同时,其他非字符和非车牌边框的边缘纹理特征也**了出来,为了减少噪声的影响,需要对车牌图像进行二值化处理,二值化是对图像进行阈值化的一种类型。根据阈值的选取情况,二值化的方法可分为全局阈值法、动态阈值法和局部阈值法,我们用类间方差法(也称Otsu算法)进行阈值化,来剔除一些梯度值较小的像素,减少需要查找的车牌范围,二值化处理后车牌图像的像素值为0或者255。
车牌字符分割
① 车牌字符分割算法的研究
车牌字符分割就是对已经定位出的车牌区域内的车牌字符进行分割,从而获取车牌上的字符,是车牌字符识别的前提和准备。车牌字符分割的好坏,直接影响到识别效果的好坏。在车牌识别系统中,由于车牌污染、背景复杂、光照不均匀、车牌发生倾斜、边框影响以及间隔符等因素影响,很难找到一种普遍使用的分割方法。
车牌区域定位完成之后,由于提取出来的车牌区域内的车牌图像可能存在倾斜现象,因此,在车牌字符分割之前,需要判断车牌图像是否倾斜。在车牌倾斜的情况下,需要准确的求得车牌的倾斜角度,然后把发生倾斜的车牌校正过来,为接下来的字符分割创造条件,这就是车牌的倾斜校正。常用的倾斜校正算法包括Radon变换、Hough变换。在车牌的倾斜校正完成之后,需要去除车牌的上下、左右边界,然后才能把车牌上的字符一个个的分割出来,得到一个单独的车牌字符图像,为后续的车牌字符识别做好准备,即车牌的字符分割。
在车牌的字符分割中,有许多因素会对车牌的字符分割造成影响,例如图像的噪声、车牌的定位不精确、字符的粘连、汉字的不连通等。本文介绍一种改进的水平投影算法,该算法能够克服这些因素造成的不良影响,并且能够准确的分割出车牌,为后续的精确识别做好准备。为了分割出相互独立的字符,对经过Otsu算法阈值化的灰度图进行分割。
Sobel边缘检测算子
Sobel算子是根据邻域像素与当前像素的距离有不同的权值,强调中心像素的对边邻域像素对其的影响,而消弱4个对角近邻像素的作用。图像中每一个像素点都用这两个核做卷积,一个卷积核对图像垂直边缘响应,而另一个则对水平边缘响应,取两个卷积之中的值作为该像素点的输出值。这样使得Sobel算子对噪声有抑制作用,因此不会出现很多孤立的边缘像素点,不过Sobel算子对边缘的定位不是很精确,图像的边界宽度往往不止一个像素,不适合对边缘定位准确性要求很高的应用。与Prewitt相似,Sobel算子也是通过像素平均来实现的,也有一定的抗噪能力。值得注意的是它们都不是各向同性的,所以它们检测出来的边缘并不是完全连通的,会有一定程度的断开。
Sobel边缘检测还有另外一种形式,称为Isotropic Sobel算子,该算子具有各向同性的特征,利用加权平均算子,权值反比于邻点与中心点的距离,当沿着不同方向检测边缘时梯度幅度一致, 因此它的位置加权系数更准确,在检测不同方向上的边缘时梯度的幅度一致,但速度较一般Sobel算子要慢一些。 用于边缘检测的算子很多,常用的还有Laplacian边缘检测算子、Canny边缘检测算子等。
对输入的彩像进行灰度化处理:
彩像包含更多的信息,但是直接对彩像进行处理的话,系统的执行速度将会降低,储存空间也会变大。彩像的灰度化是图像处理的一种基本的方法,在模式识别领域得到广泛的运用,合理的灰度化将对图像信息的提取和后续处理有很大的帮助,能够节省储存空间,加快处理速度。
边缘检测的方法是考察图像的像素在某个领域内灰度的变化情况,标识数字图像中亮度变化明显的点。图像的边缘检测能够大幅度地减少数据量,并且剔除不相关的信息,保存图像重要的结构属性。在实际的图像分割中,往往只用到一阶和二阶导数进行边缘检测,虽然,在原理上,可以用更高阶的导数,但是,因为噪声的影响,在纯粹二阶导数操作中就会出现对噪声敏感的现象,三阶以上的导数信息往往失去了应用价值。此外,二阶导数还可以说明灰度突变的类型,在有些情况下,如灰度变化均匀的图像,只利用一阶导数可能找不到边界,此时二阶导数就能提供很有用的信息。为了减少二阶导数对噪声敏感,解决的办法是先对图像进行平滑滤波,消除部分噪声,再进行边缘检测。