APP下载

采用二次定位的车牌图像定位算法研究

2013-08-13吕少胜

电视技术 2013年15期
关键词:边框车牌校正

张 晶,吕少胜

(1.石家庄学院电气信息工程系,河北 石家庄 050035;2.河北省电力勘测设计研究院,河北 石家庄 050031)

责任编辑:任健男

车牌自动识别技术是智能交通系统中重要的组成部分,广泛应用在收费站、停车场和机动车违章查询等场合。一幅车牌图像的识别主要有三个步骤:车牌定位、字符分割、字符识别。其中能够准确、快速定位车牌是车牌自动识别的关键。定位的好坏将直接影响到车牌字符的识别率。

至今为止,众多学者对车牌定位方法进行了广泛的研究,并且提出了多种有效的定位方法。这些方法有:基于彩色信息的定位方法[1],基于小波分析的车牌定位方法[2],基于神经网络的定位方法[3],基于灰度检测的方法[4]。本文针对以上方法中出现的不足,提出了一种基于二次定位的车牌图像定位方法,并在二次定位中插入车牌图像的倾斜校正,进一步提高了定位的准确性,能有效去除车牌边框,为后续的车牌字符识别打下良好的基础。

1 车牌图像初定位

1.1 灰度化

由于从摄像头获取的车辆图像为彩色图像,如果直接对彩色图像进行处理,运算量很大,导致速度降低。所以首先根据式(1)将彩色图像变为灰度图像,其中R,G,B分别代表红色分量、绿色分量、蓝色分量,灰度图像如图1所示。

图1 灰度图像

1.2 边缘检测

采用Sobel算子对车辆灰度图像进行边缘检测。与Prewitt算子相比,Sobel算子对于像素位置的影响做了加权,可以降低边缘模糊程度,因此效果更好,如图2所示。Sobel算子是滤波算子的形式,用于提取边缘,可以利用快速卷积函数,对噪声有很好的抑制作用。其运算过程依据式(2)进行

图2 边缘检测图像

1.3 直线检测

直线的解析式为

式中:ρ为直线到原点的距离;θ限定了直线的斜率。

对直线的Hough变换的过程为:依次遍历图像中的像素,对每个像素都要判断是否满足特定的条件。如果满足,对经过该像素的所有直线区域的计数器加1;否则继续判断下一像素。最后判断计数器是否大于所设定的阈值,如果大于就认为该直线存在,反之不存在。实验证明,θ取值范围在(-5,5)时效果最好,如图3所示。这样可将图像中有用信息保存下来,尽量过滤掉无用信息,同时也大大减少了运算量,提高了运算速度。

图3 Hough变换图像

1.4 确定车牌所在区域的行与列

由于车牌通常由7个字符组成,在水平方向上车牌区域的任意一行上的像素值从0到255或从255到0的跳变次数应该大于某个值。车牌所在区域跳变次数最少为7×2=14次。考虑到图像会受到某些干扰及其他影响因素,经实验得出跳变阈值为25比较合适。由于车牌区域满足以上阈值条件的行在垂直方向上具有连续性,加上车牌区域具有一定宽度的特征,据此对图4进行过滤,就能得到车牌所在的行,如图5所示。对图5进行中值滤波,以去除孤立噪声点。然后将图像垂直信息保存到一个数组中。如果数组中累计像素长度小于8(其中保证累计像素长度始终小于图像的宽度),则将所对应列的像素值置零,这样可以消除进气格栅等单线条的影响。经过该处理后,如果除了车牌区域还存在其他无用信息,再利用车牌的宽高比特征,就能得到车牌所在的列,如图6所示。

图4 满足阈值的行

1.5 确定车牌所在区域的坐标

经过前面的过程,如果图像中存在像素值为255的点,则其所对应的区域即为车牌区域。搜索图像中的非零像素点,找出其上下左右4个坐标点,并提取该区域。考虑到在初定位后要利用车牌边框进行倾斜校正,所以在搜索车牌区域时分别向上下扩展20个像素,以便保留车牌边框的信息,并进行Hough变换,为下面进行倾斜校正做准备。

若无法找出非零像素点,则需要重新开始对车牌图像的预处理。首先对灰度图像进行灰度拉伸或灰度均衡处理,再进行后续步骤。如果经过灰度拉升和灰度均衡仍然无法找到车牌区域,则说明车辆图像受到的干扰过于严重,将无法准确定位车牌。图7为一次定位的算法流程图。图8为一次定位后的车牌。

2 倾斜校正

从图8中可以看出车牌存在一定的倾斜角度,如果不进行校正,必然会对字符分割与识别产生影响。本文采用下列方法找到车牌图像的倾斜角度。

1)假设图像的宽度为Imgsize.cx,确定一个固定值L(L=Imgsize.cx/3),从图像中第A列开始从下往上进行列扫描,找到第一个不为0的点,将其行数i赋给m;再从第A+L列开始从下往上扫描,找到第一个不为0的点,将行数i赋给n,由式(4)便可得到倾斜角g

2)由于倾斜角一般在-5°~+5°之间,在建立的AG[n]数组中的每个元素分别代表步骤3)中-5°~+5°角度的个数;

3)在图像中从第0列开始到第Imgsize.cx×2/3列为止,依次重复步骤1)。每重复一次便可得到一个g,若得到的g在-5°~ +5°范围之内,则将对应的AG[g+5]加1,若超出-5°~+5°这个范围,则认为属于干扰点,应舍去;

4)最后,从AG[n]中找出最大的值,便得到车牌图像的倾斜角。

该方法无须检测图像中的直线,即可有效地去除某些孤立点对倾斜角度检测的干扰,而且算法简单,运算量小,极大地提高了运算速度。本文选择双线性插值法进行图像旋转,且保存经倾斜校正后的图像,便于二次定位。倾斜校正后的图像如图9所示。

图9 倾斜校正图像

3 投影法进行二次定位

由图9可以看出车牌所在区域水平、垂直边缘变化比较频繁,利用该特征对图9的二值化图像进行水平投影会使车牌区域突出,从而顺利找到车牌字符的水平位置。由图10可以看出,车牌字符位置对应于投影图中的波峰,而车牌边框和字符之间的区域投影值几乎为0,对应于图10中的波谷。所以,考虑到车牌区域一般处于整幅图像的下部,所以只需要从下到上搜索图10中2个较大突变投影值的行号,去掉行号上下部分就去掉了车牌上下边框。同理在垂直投影图11中第一个较大的波峰即是车牌区域,出现7次这样的波峰就找到了车牌的垂直位置,得到车牌的宽度。经过此步骤处理后,可有效地去除车牌图像的左右边框,从而得到最终定位图像,如图12所示。

4 实验结果及分析

为了验证本文算法的可靠性,采用Visual C++6.0作为编程环境,在 CPU 1.61 GHz,RAM 1.0 Gbyte 的环境下,对大小为480×360的车牌图像进行测试。

4.1 不同拍摄条件下定位结果对比

对200幅不同倾斜角度、200幅不同路面背景和200幅不同光照条件下拍摄的车辆图像(共600幅)进行测试,结果如表1所示。在测试中,无法识别的车牌是由于受到倾斜角度过大、车牌受到污染、光照过亮或过暗等因素的影响。

表1 IDCT修剪算法的比特率和编码时间测试结果

4.2 不同定位方法的定位效果对比

利用本文提出的定位算法与单一的投影定位法、模板匹配定位法分别对同样的车牌图像样本进行测试,结果如表2所示。从测试结果可以看出,本文提出的算法在定位准确率和定位速度上都能较好地符合实际应用所提出的要求,为后续的车牌字符识别打下了良好基础。

表2 本文算法与其他方法的实验效果对比

5 总结

本文采用对车牌图像进行二次定位方法,很好地满足了车牌图像定位的实时性和有效性的要求。该方法首先对车牌图像进行预处理,其中包括灰度化、Hough变换、边缘检测;再根据车牌区域存在的特征进行一次定位;而后由车牌边框信息来确定倾斜角度对车牌图像进行倾斜校正;最后对校正后的车牌图像采用投影法进行二次定位,从而获得准确的车牌字符区域。采用该方法得到的车牌图像不包含车牌边框等无关信息,为后续的车牌字符识别带来很大方便,具有较高的实用价值和广泛的应用前景。为使该算法具有更强的自适应性,日后将对倾斜角度过大、光照条件不均匀等问题做深入研究。

[1]李强,汪洋,李伟博,等.基于蓝色车牌背景的车牌精确定位实现方法[J].电视技术,2011,35(15):4-6.

[2]凌六一,段红,黄友锐.基于小波去噪的车牌定位系统[J].铁路计算机应用,2006,15(9):41-43.

[3]钱华,芮延年.基于人工智能的汽车牌照自动识别技术的研究[J].机电产品开发与创新,2005,18(5):43-45.

[4]张慧.一种蓝底白字车牌定位方法[J].信息与电脑,2011(9):105-106.

猜你喜欢

边框车牌校正
劉光第《南旋記》校正
数字图像处理技术在车牌识别系统中的应用
基于MR衰减校正出现的PET/MR常见伪影类型
用Lightroom添加宝丽来边框
给照片制作专业级的边框
在Lightroom中校正镜头与透视畸变
机内校正
第一张车牌
基于MATLAB 的车牌识别系统研究
外出玩