有效的车牌定位方法
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
车牌定位的一个有效方法
Danian Zheng *, Yannan Zhao, Jiaxin Wang
国家重点实验室智能技术与系统、计算机科学与技术系、
清华大学、北京100084、中国
摘要
车牌定位是机动车牌照自动识别运输系统的一个重要阶段。
本文提供了一个实时和强劲车牌定位方法。
车牌区域包含丰富的边缘和纹理信息。
我们先用图像增强和Sobel算子提取出图象的垂直边缘, 然后用一个有效算法除去图像的大部分背景和噪声边缘, 最后在剩余边缘图像中利用一个矩形窗口搜索车牌区域并从原始图像中将车牌切割出来。
实验结果表明,我们的方法有很强的鲁棒性和很高的效率。
_ 2005 Elsevier B.V. All rights reserved。
关键词:图像增强; 边缘检测; 长曲线和随机噪声的去除; 车牌定位和分割
1.引言
车牌识别成为当今许多自动交通管理系统如公路交通管理, 公路自动缴费和桥梁或停车场出入管制的关键技术。
车牌定位是这项技术中非常必要和重要的一个阶段,它已引起了相当大的关注。
研究人员已经找到许多不同的方法定位车牌。
Rodolfo 和Stefano(2000)制定了一种基于矢量量化(VQ)的方法。
矢量图像是基于一种特定的编码机制的四叉树,它可以提供给系统关于图像区域所包含内容的一些线索,这些信息有助于定位的实现。
Park et al. (1999)使用神经网络定位车牌。
神经网络可作为过滤分析图像的小窗口,判断每个窗口是否包含车牌,其输入为HIS值。
一个后处理器将这些过滤图像合并起来并在图像中定位跳跃的车牌区域。
除去神经网络,其他过滤方法也被研究过。
例如,有些作者用线敏感过滤器提取车牌区域。
可以确定车牌区域由很高密度的薄暗线或曲线。
因此,车牌的定位是一个在图像中寻找包含由一个累积函数计算能得到的最大线过滤值的矩形区域的操作(Luis et al. 1999)。
车牌字符可以直接通过对输入图像的扫描和寻找到图像中彼此不相连的部分来识别。
如果发现有一些字符存在于一条直线上,那么他们所组成的部分
* Corresponding author。
Tel。
: +86 10 62775613; fax: +86 10
62795871。
E-mail address: zdn02@mails。
tsinghua。
edu。
cn (D。
Zheng)。
0167-8655/$ - see front matter _ 2005 Elsevier B。
V。
All rights reserved。
doi:10。
1016/j。
patrec。
2005。
04。
014
可能就是车牌区域(Lim et al. 1998)。
模糊逻辑已被Zimicet al. (1997)应用于车牌定位问题。
作者制定了一些很直观的规则来描述
车牌, 并定义一些模糊的设定“明”和“暗”及“明暗变化”的成员函数得到水平和垂直的车牌位置。
但这种方法对车牌的颜色和亮度
很敏感并需要大量的处理时间。
Zhu et al. (2002) 和Wei et al. (2001)研究了利用颜色特征定位车牌,但这些方法在不同环境中并
不足够稳健。
车辆图片的边缘特征是很重要的, 基于车牌自身的特征,边缘密度可以被用来成功的定位车牌。
Ming et al. (1996)研制了一种通过消除图像边缘密度最高和最低的部分来简化整个图像
的方法。
但车牌的一些特征会在此方法中丢失。
本文进一步研究车牌定位的课题。
矩形的车牌区域包含丰富的边缘和纹理信息,所以我们从图像边缘角度进行研究,但又不同于Ming et al. (1996)。
我们首先加强原始图像来突出车牌区域,用Sobel算子提取
车牌的垂直边缘, 然后删除边缘图像的背景曲线和噪声, 最后用一
个滑动的长方形的窗口在剩余图像部分中搜索车牌并将其从原始车
辆图像中分割出来。
文章的第2部分为车牌定位方法的描述,它包含
四个部分:图像增强、垂直边缘提取、背景曲线和噪音的消除、车牌
的搜索和分割。
第三部分是关于三套车牌图像的实验。
第4部分进行讨论并作出结论。
2.拟定的车牌定位方法
本次使用的所有车辆图像均为256灰度级,大小为384×288 像素。
示例图Fig.1。
车牌轿车有许多字符组成 (如拉丁字母、阿拉伯数字等), 所以车牌
Fig.1:384·288 像素and 256灰度级的示例图
区域蕴含丰富的边缘信息. 但有时车辆图像的背景也有很复杂的边
缘信息. 有两个事实需要引起我们重视: 一是牌照周围的背景区域大都包含一些水平边缘; 另一个是在背景中的边缘主要是长曲线和随
机噪音, 然而在车牌区域中的边缘都聚集在一起,产生强烈的纹理特征. 只要能提取汽车图像中的垂直边缘(虽然会丢失一些水平边缘信息,但这小小的损失也是值得的),大部分的背景边缘就被消除了,牌照区域也就从整个边缘图像中清晰地分离了出来。
因此,我们拟依照以下四步利用车牌的垂直边缘对其定位。
2.1. 图像增强
车牌区域中的梯度远比强烈日光下的汽车影子形成的汽车轮廓小得多。
阴天和暗夜中捕获的车辆图像往往也在车牌区域产生很小的梯度. 如果我们能从这些车辆图像中提取边缘信息,就会发现车牌区域中往往会有一些垂直边缘. 所以我们必须首先增强汽车图像.
车辆图像中需要被增强的区域有很低的差额. 这里我们使用I i,j 来表示图像中像素点P i,j的亮度值(竖直:0≤i<288;水平:0≤j<384=,并使用I i,j′来表示增强图像的亮度。
我们使I i,j和I i,j′适合公式1。
W i,j是以像素P i,j为中心的一个窗口。
Iw i,j和σw i,j是窗口W i,j的中值亮度和标准偏差。
I0和σ0分别是期待的中值和标准偏差。
为了更好地描绘局部信息,窗口大小应小于预计的车牌大小. 本文中我们选择了48×36的矩形作为窗口W i,j,从而8×8的窗口可以覆盖整个384×288的车辆图像. 让I0等于Iw i,j,σ0成为独立于像素点P i,j的恒定值,现在我们需要知道每个像素点的Iw i,j和σw i,j值。
计算出所有的值是不可取的,我们可以用双线性内插算法得到它们。
我们首先将汽车图像均匀地分成8×8块; 然后计算出各块顶部
.
Fig.2利用双线性内插法计算矩形ABCD中σw
的值
i,j
I=36m,j=48n处的Iw i,j和σw i,j值。
最后利用双线性内插算法(公式(2),(3))计算36m≤i<36(m + 1),48n≤j<48(n+1),C x=(j-48n)/48,C y =(I-36m)/36处每一个Iw i,j和σw i,j的值(图Fig.2)。
如果σw i,j趋近于0,(比如只有一个暗区域或只有一个亮区域),公式(1)就会得出一个很大的值。
我们就不需要对此区域进行增强。
如果σw i,j足够大(例如σw i,j≥ 60),也不需要进行增强。
因此实际上增强公式(1)就进化成公式(4)。
f(σw i,j)是有公式(5)决定的一个增强系数(如Fig.3所示)。
车牌区域中大部分需要增强的σw i,j都在20左右。
所以我们使函数f在σw i,j=0或σw i,j≥60时等于1,而在σw i,j=20时等于3(如20×3=60)。
Fig.3增强系数f(σw i,j)
增强的车辆图像如Fig.4所示。
我们可以看到车牌区域已经被增强。
如果车牌区域的照明较好且整个图像比较平衡,这个处理过程就不会改变牌照的对比度(f(σw i,j)=1 ,if σw i,j≥60)。
2.2 垂直边缘的提取
我们选择垂直Sobel算子来提取垂直边缘(如Fig. 5),因为它的操作简便且只需要耗费我们一点运算时间. 倾斜的汽车图像利用Sobel
增强后图像I′
算子得到垂直梯度形象.计算图像的绝对平均价值并将它乘以系数作为一个阀值 (例如4grad) ,或计算梯度直方图,寻找在某一个百分比(如75%)的梯度分布作为一个阀值.利用这个阀值并在水平方向的梯度图像中使用nonmaximum suppression我们就能得到如Fig.6所示的垂直Sobel边缘图像.
Fig.5 垂直Sobel算子 Fig.6 垂直边缘图像
2.3. 背景曲线和噪音的消除.
从Fig.6中我们可以看到, 在垂直边缘图像中车牌边缘周边有许
多长背景曲线和短随机噪声边缘。
这些背景和噪声边缘彗会影响我们对车牌的定位。
我们提出一个简单的方法来消除它们.
这种算法只需要我们对边缘图象作三次扫描.第一次扫描将纪录距离顶点(或左边界点)长度. 第二次扫描将记录距离底部(或右边界点)的长度. 最后一次扫描将把两种长度相加表示实际边界长度; 如果边界点有非常长(背景曲线)或非常短(噪声)的实际边长,那么此点将从图像中去除. 下面描述算法之前,我们需要介绍一些符号的用法: E表示边缘图像 (如像素点P i,j是边缘点,E=1,否则E=0) M和N同E有相同的大小;T long同估计的车牌高度有关系,T short比大部分车牌边界长度要短,是两倍的阀值长度。
1.初始化M和N为0;
2.for each row i from top-to-bottom do
for each column j from left-to-right do
if (E i,j==1)
if (E i-1,j-1+ E i-1,j + E i-1,j+1 + E i,j-1>0)
M i,j = max{M i_1,j_1,M i_1,j,M i_1,j+1,M i,j_1} + 1;
else
M i,j = max{M i_2,j_1,M i_2,j,M i_2,j+1,M i_1,j_2,M i_1,j+2,M i,j_2} + 1;
end
end
end
end
3. for each row i from bottom-to-top do
for each column j from right-to-left do
if (E i,j==1)
if (E i+1,j_1+E i+1,j+E i+1,j+1+E i,j+1>0)
N i,j = max{N i+1,j_1,N i+1,j,N i+1,j+1,N i,j+1} + 1;
else
N i,j = max{N i+2,j_1,N i+2,j,N i+2,j+1,N i+1,j_2,N i+1,j+2,N i,j+2} + 1;
end
end
end
end
4. for each row i from top-to-bottom do
for each column j from left-to-right do
if (E i,j= =1)
if (M i,j + N i,j > T long ‖M i,j + N i,j < T short)
E i,j = 0;
end
end
end
在上述算法中,我们通过观察相关临界点积累边界长度(CNP)。
Fig.7显示阴影网格中的CNP。
Fig.7像素点P i,j的CNP;a图为由左至右由上至下的扫描图;
b图为由右至左由下至上的扫描图。
Fig.6 去除背景和噪声之后的边缘图像(Tlong = 28, Tshort = 5).
结果如Fig.8显示,大部分背景噪声和边缘已被去除, 且车牌边缘几乎完全修复.
2.4 车牌搜索与分割
在非车牌区域大部分被去除之后,车牌定位就变得容易得多. 我们可以从左到右从上到下的变换一个大小大于的车牌(例如80×32)的矩形窗口。
计算窗口中边界点的总数。
如果总数超过窗口区域的某一百分比,那么窗口中可能包含车牌。
为了加快车牌的搜索进度,我们使窗口根据坐标Xstep 和 Ystep(例如Xstep = 8,Ystep = 8)转变,而不是像素。
以下的四步讲述怎样进行车牌定位。
1.将384×284的边缘图像平均切割成许多8×8的小块,计算每个
小块中的像素点个数,并形成一个48×36的图块B;
2.用一个(80/8)×(32/8)=10 ×4的矩阵W(每个元素都等于1)来
表示窗口。
将图像B用窗口W表示并形成B′。
3.如果B i,j′大于阀值T plate且B i,j′是局部最大值,就将P8i,8j位置作
为车牌候选区域。
4.搜索所有候选区域,整理它们的B′值并把它们从原始车辆图
片中分离出来。
Fig. 9.a是图像B的48×36 的转换图;b是图像Fig.1中定位的车牌
车牌中心部分的反应比其它地区大得多,所以通常只有一个候选区域能被选中。
从Fig.1中分离出来的车牌如图Fig.9所示。
剩下的工作是车牌的畸形校整,字符分割和字符识别,但并不在本文中讨论。
3. 实验结果
在这一部分中,我们将本文推荐的方法与其他方法如:“line sensitive filters“ (Luis et al.,1999),“row-wise and column-wise DFTs”(Parisiet al., 1998), and“edge image improvement”(Ming et al., 1996).
The “vector quantization”(Rodolfo and Stefano, 2000)
主要用作图像编码;色彩特征 (Wei et al., 2001;Zhu et al., 2002)在恶劣天气,特殊灯光及车牌很脏的条件并不足够有效;“模糊逻辑”在假设车牌大部分为白底黑字符的情况下后很好的效果,但大部分中国车牌是蓝底白字。
因此这三种方法在我们的比较试验中都不适用。
“线敏感过滤”方法由三部分组成:二段抽样图像,进行线敏感过滤,寻找包含最大反映的矩形区域;row-wise and column-wise DFTs 方法包括四步:使用水平傅立叶级数分解预期的谐波,平均谐波的频域空间,利用能量最大化在包含车牌的图像中寻找水平线,在候选线条中用同样的方法使用垂直傅立叶找车牌的竖直位置。
“边缘图像增强”方法包含五步:利用Sobel边缘算子提取边缘图像,计算图像的
水平the medium range of the edge density level;去除水平线中的最高和最低部分以简化整个图像,最后寻找候选的车牌区域。
本次试验使用了三组中国车辆的图片。
第一组有163幅图,都是由学校大门处捕获的图片。
第二组有218幅图,它们是在公路附近在强烈的太阳光下捕捉到的。
第三组有784幅图,它们都包含复杂的背景如树木,停放的自行车等等,并且拍摄时间由早到晚都有。
我们利用这三组图片测试以上的四种方法,表1显示了试验的结果。
对于每一个图像,我们找到1-3个车牌候选区域,第一次,第二次和第三次命中车牌的数目分别列在表1中。
从表中我们可以看到,推荐算法要远远好过其他三种方法。
大部分的车牌都作为第一候选区被找到,定位率接近100%(第三组中两次失误相对很小)。
对这三组图片的高定位率反映了我们的车牌定位方法有很好的鲁棒性和很高的效率。
反观其他三种方法,大部分无法定位的图片都包含一些特殊的物体(污渍,天线,保险杠)或复杂的背景(树木,自行车),以及是在强烈日光或阴暗灯光下捕捉的。
这四种方法在奔腾-4 2.4GHZ 256MB条件下的运行时间如表2所示。
本文所荐的方法是四种方法中最慢的。
推荐算法的四步的的平均运算时间表3所示。
大部分时间都消耗在第一步图像增强上。
对于一个384×288的图像的总共处理事件时47.9ms,它符合实时处理的需求。
表(1)
三组中四个方法定位率的比较
方法第一候选第二候选第三候选未检测到车牌定位率(%)线敏感过滤 88 47 21 7 95.7
125 40 34 19 91.3
305 176 167 136 82.3 Row-wise 79 45 33 6 96.3 And column 98 87 21 12 94.5
-wise DFTs 316 172 155 141 82.0
边缘图像 129 23 7 4 97.5
增强 182 22 4 10 95.4
472 156 84 71 90.9
推荐算法 161 2 0 0 100
218 0 0 0 100
755 24 3 2 99.7
表(2):四种方法运算时间的比较(单位:ms)
线敏感过滤Row-wiseandcolumn-wiseDFTs 边缘图像增强推荐算法
19.6 21.5 16.4 47.9
表(3):推荐方法四步的运算时间(单位:ms)
图像增强垂直边缘提取背景及噪声消除车牌搜索及分割总用时26 6.8 5.7 9.4 47.9
4.结论
推荐的车牌定位方法利用了车牌区域丰富的边缘信息。
在2.1章中我们增强了原始车辆图像的局部区域,另外一种选择是增强梯度图像来强化车牌区域的纹理。
在2.2章中,为避免车牌周围的冲突元素,只有竖直边缘被加强。
如果竖直边缘,左对角线边缘和右对角线边缘都被提取出来,虽然耗费更多的运算时间,却能达到更好的边界曲线的连续性。
如Gig.8中所示的剩余的短边界仍可以被去除,但这并不是必要的。
这种方法也有许多缺点,在2.1章中,I和@的值是由双线性内插法计算得到的而并不是像素点p的准确值,“整体图像”算法可以解决这一问题,但也需要更多的运算时间。
本文中的一些数字是相对于车牌大小的估计值而言的。
所以如果所有图像中的所有车牌都有同样的大小,这种方法将很适用。
试验已证实了本文的车牌定位方法的明显效果。
此方法中的一些构想也可应用到其他领域,如:商标,信封,明信片,账单等的内容提取,复杂背景下的物体分割等等。
参考文献:
Lim, B.L., Yeo, W.Z., Tan, K.Y., Teo, C.Y., 1998. A novel DSP based real-time character classification and recognition algorithm for car plate detection and recognition. In:Fourth Internat. Conf. on Signal Process., vol. 2, pp. 1269–1272.
Luis, S., Jose, M., Enrique, R., Narucuso, G., 1999. Automatic car plate detection and recognition through intelligent vision engineering. In: Proc. IEEE 33rd Internat. Carnahan Conf. on Security Tech., pp. 71–76.
Ming, G.H., Harvey, A.L., Danelutti, P., 1996. Car number plate detection with edge image improvement. In: Fourth Internat. Symp. on Signal Process. and its Applications, vol. 2, pp. 597–600.
Parisi, R., Claudio, E.D., Lucarelli, G., Orlandi, G., 1998. Car plate recognition by neural networks and image processing. In: Proc. IEEE
Internat. Symp. on Circuits and Systems, vol. 3, pp. 195–198. Park, S.H., Kim, K.I., Jung, K., Kim, H.J., 1999. Locating car license plate using neural networks. Electron. Lett. 35 (17), 1475–1477. Rodolfo, Z., Stefano, R., 2000. Vector quantization for license plate location and image coding. IEEE Trans. Industrial Electron. 47 (1), 159–167.
Wei, W.,Wang, M.J., Huang, Z.X., 2001. An automatic method of location for number-plate using color features. In: Proc. Internat. Conf. on Image Process., vol. 1, pp. 782–785.
Zimic, N., Ficzko, J., Mraz, M., Virant, J., 1997. The fuzzy logic approach to car number plate locating problem. In: Proc. Intelligent
Information Systems, pp. 227–230.
Zhu, W.G., Hou, G.J., Jia, X., 2002. A study of locating vehicle license plate based on color feature and mathematical morphology. In: 6th Internat. Conf. on Signal Process., vol. 1, pp. 748–751.2438 D. Zheng et al. / Pattern Recognition Letters 26 (2005) 2431–2438。