APP下载

基于数学形态学的车牌定位方法

2014-08-28陈佳刘立

科技与创新 2014年12期

陈佳+刘立

摘 要:为了准确定位车牌的位置,提出了基于数学形态学的车牌定位方法。该方法首先将彩色图像灰度化,并利用Sobel算子进行图像边缘提取,然后运用数学形态学的腐蚀和闭运算对二值图像进行处理,可以得到几个车牌候选区,接着再利用行扫描去除伪车牌区域,实现车牌的粗定位。最后,利用Hough变换精确定位车牌的位置。实验表明,这一方法能够准确地实现车牌的定位。

关键词:车牌定位;数学形态学;行扫描;Hough变换

中图分类号:TP751 文献标识码:A 文章编号:2095-6835(2014)12-0113-03

车牌识别技术在智能交通系统ITS(Intelligent Traffic System)中占有非常重要的地位。它包括图像预处理、车牌定位、字符分割、字符识别四个步骤。其中,车牌定位是关键步骤。后期车牌识别能否顺利进行和车牌识别的准确度能否得到保证,都与车牌定位有非常紧密的关系。

近年来,国内外学者针对车牌定位做了许多探索:Chien-Chou Lin等人利用彩色边缘信息来细化灰度图像中提取边缘点,并通过计算统计边缘点数量来定位车牌;Mei Yu等人提出了垂直边缘匹配的韩国车牌定位法。这些基于边缘的车牌定位算法,计算简单、定位准确率高,但是,受车牌倾斜或褪色等一些外部因素干扰时,车牌定位效果并不理想。李刚等人利用数学形态学并结合车牌自身的几何特性进行分析,能准确定位出车牌的区域。但在复杂的背景下,仍然很难做到精确定位。陆建华等人尝试利用数学形态学结合行扫描的方法定位车牌,但效果并不理想。随后,刘雄飞等人提出了将行扫描和小波变换相结合的方式,取得了非常好的定位效果,进一步提高了定位的准确率。这些基于行扫描的车牌定位算法对阈值的选取要求比较高,并且要结合其他方法才能很好的定位车牌。近年来,Hough变换在车牌定位方面也被广泛推广。文献[6]中提出的Hough变换多线检测算法,文献[7]中提出的改进Hough变换定位算法都取得了很好的车牌定位效果,而文献[8]则提出了将Hough变换与数学形态学相结合的定位法。这些基于Hough变换的车牌定位方法对车牌边缘的清晰、完整度要求比较高。与此同时,它们也有较高的时间计算复杂度。

本文提出的基于数学形态学的车牌定位方法,综合了上述所提各类定位方法的优点。该方法首先对车牌进行粗定位,然后再对车牌实施精确定位,具有实时性强、精准度高等优点。

1 算法流程介绍

本文提出的基于数学形态学的车牌定位方法,具体包括以下三个步骤:①车牌图像预处理。将彩色图像灰度化,并利用Sobel算子对图像进行边缘提取。②车牌粗定位。利用数学形态学的方法,对预处理后的图像进行处理,可以得到几个车牌候选区,再利用行扫描的方法滤除干扰区域,去除伪车牌,实现车牌的粗定位。③车牌精确定位。对行扫描之后得到的车牌合理区域进行中值滤波和Canny算子边缘,这样做可以去除噪声,并得到清晰的图像轮廓。最后,再对处理后的图像进行Hough变换,得到明显的矩形边框,找到车牌上下左右的边界,实现车牌的精确定位。

由于采用了先粗后精的定位方法,因此针对性更强,同时还提高了定位精度。具体的车牌定位算法流程如图1所示。

2 车牌定位算法

2.1 图像预处理——边缘检测

边缘检测对突出图像轮廓非常有效。利用它处理图像,一

方面,可以得到并保留想要研究对象完整的边界区域结构;另一方面,在很大程度上减少了处理数据量的工作。有字符和背景边缘突显得非常明显的车牌区域有利于进行边缘检测,因此,可对已经获取到的灰度化图像进行边缘检测。常用的梯度边缘检测算子有Roberts算子、Prewitt算子、Canny算子和Sobel算子等。考虑到Sobel算子对垂直边缘和水平边缘的响应最大,并且能够有效地抑制噪声,因此,这里采用Sobel算子对汽车图像进行边缘检测,突出图像边缘,为后续车牌定位做准备。经过Sobel算子边缘检测后的效果如图2所示。

2.2 车牌区域粗定位

2.2.1 数学形态学

数学形态学的基本思想是采用一定形态的结构元素把图像中与之对应的形状区域提取出来,只保留与结构元素相似的图像几何特征,从而完成对图像的分析和处理。膨胀和腐蚀是形态学操作中最基本、最主要的形态学算子,开运算、闭运算都是由它们相互组合而成的。巧妙利用这些算子处理图像,可以得到我们想要的结果。

设A为图像集合,B为结构元素,A和B是整数空间z中的集合。B对A的腐蚀定义为:

闭运算为先膨胀后腐蚀。B对A的闭运算定义为:

膨胀具有缩小或填充图像中孔洞的作用,它也可以连接断开的物体,形成联通区域。腐蚀具有细化或收缩物体的作用,它还可以滤除小于结构元素的物体。开运算具有平滑物体轮廓、消除细的突出物等作用。闭运算具有消除小的孔洞、弥合狭窄的间断等作用。

经边缘检测初步处理后,去除了部分与目标对象无关的信息,成功地保留并提取了汽车图像的有效边缘。但是,仍然存在车牌上方的车灯、车标、进气栏和车牌下方的车前横杆等一些区域产生的横向边缘干扰。当然,这其中所产生的一些顽固、杂乱的噪声也必将影响后续车牌的定位。通过选取形如[1;1;1]的垂直结构元素进行式(1)的腐蚀操作,有效地去除了部分噪声和图像背景中的一些横向边缘线。接着选取了形如[25;25]的矩形结构元素对经腐蚀处理后的图像进行式(3)的闭运算。在这里,还可以利用bwareaopen函数进行一些小处理,删除一些非车牌区域的小对象。经过上述处理后,基本上已经去除了一些不必要的干扰,只剩下了几个干净且明显的车牌候选区。具体效果如图3所示。

2.2.2 行扫描

采用行扫描的方式对车牌区域进行定位,主要是利用了车牌的连续特性。二值汽车图像车牌区域水平方向灰度跳变频繁,且跳变间距也控制在一定的范围内。因此,它的跳变次数是一定的,也必将在某个小范围内波动。我们可以通过设定灰度跳变阈值T,与二值汽车图像某一行的灰度跳变次数进行比较。如果后者大于前者,那么,把该行标记为可疑线段;如果有分布较为密集的可疑线段聚集在该行附近,且积聚有一定的高度,那么,这个区域就可以被标记为车牌候选区。结合先验知识,对二值汽车图像f(x,y)在垂直方向上从下至上进行逐行扫描,并且在水平方向上从左至右扫描每一行的每个像素点,记相邻两个像素黑白之间变化为一次灰度跳变。统计累加跳变次数,则第k行的跳变次数可以表示为:

经过上述处理后得到的这几个车牌候选区有真实的车牌,当然也存在伪车牌。为了排除一些伪车牌的干扰,更准确地得到真正的车牌区域,这里通过行扫描处理来统计每行的灰度跳变次数,并定位出合理的车牌区域。车牌中的7个字符分布集中且排列规则,在通常情况下,每个字符会出现两次跳变,但不排除会出现有多于两次跳变的情况。考虑到字符有可能出现模糊、部分损坏、倾斜等问题,同时,也考虑到车牌的两个边框,因此,这里将跳变阈值T设置为20,得到了很好的效果。采用行扫描法后,得到的车牌合理区域定位如图4所示。

2.3 车牌区域精确定位——Hough变换

Hough变换是一种被广泛运用于检测直线的经典算法。它主要体现的是点与线分别在两种不同的空间域所呈现的对偶关系。其核心思想是把图像空间中属于某种图形(这里以直线为例)的点的集合映射到参数空间中的一个点。这个点也是由多条线相交汇聚而成,其实它对应的就是图像空间中我们要寻找的某条直线。图5形象地展现了直线 在参数空间所呈现的状态。

经过粗定位处理后,车牌区域已基本被提取出来,但是,车牌上下左右具体的边界仍没能确定下来。因此,为了确定车牌上下左右的边界,更精确地定位车牌,这里采用了Hough变换方法来对车牌进行精确定位。在采用Hough变换对车牌定位之前,考虑到Hough变换对检测区域边缘清晰度、完整度的要求比较高,因此,对经行扫描之后得到的准确车牌合理区域再进行中值滤波处理和Canny算子提取边缘。采用中值滤波处理能平滑噪声,去除一些杂质的干扰,保留有用的边缘信息。进行阈值设定为[0.04;0.10]的Canny算子提取边缘,能更好、更清晰地把图像中较细的边缘检测出来。最后,使用Hough变换做线检测和链接,找出车牌上下左右的边界,实现车牌的精确定位。通过反复实验发现,峰值检测设置在≥6的情况下,能更好、更精确地检测出车牌上下左右的边界。图6分别给出了A和B两组图像的Hough变换峰值检测结果,图7给出了最终的车牌定位图。

3 实验结果和分析

为了验证本文提出的车牌定位算法的效果,对不同类型、不同背景情况下采集到的300幅图像进行定位实验。输入图片尺寸为600×480像素的车牌图像,在配置为主频1.46 GHZ,RAM 1 GB的计算机上用MATLAB7.0运行该算法,并统计测试结果,发现能准确定位296张图像,定位率为98.6%,平均每幅图片的定位时间为1.18 s。定位结果如表1所示。

经过测试发现,按照上述算法经过先粗后精的前后二次定位后均可比较准确地定位出车牌区域。分析4张定位不成功的图像可知,是因为车牌边缘受到磨损或遭受到较大的污染,致使在车牌精确定位阶段采用Hough变换对车牌准确定位时不能很好、完全地检测出车牌的4条边缘线,所以,造成定位的失败。

同时,将本文算法得到定位的结果与参考文献[4][8]得到的定位结果作比较,对比其定位时间和定位准确率,得到的结果如表2所示。

由表2可知,本文算法无论在定位时间和定位准确率上都比文献[8]的算法要优,虽然比文献[4]中提出的定位时间要长,但是,定位准确率远远在其之上。通过对比、分析,再

一次验证了本算法的精确度和高效性。

4 总结

本文提出了一种基于数学形体学的车牌定位方法,该方法采用先粗后精的定位方式,先对车牌图像进行形态学和行扫描运算,确定车牌的合理区域,实现粗定位。在此基础上,再进行Hough变换,确定车牌上下左右的边界,实现车牌的精确定位。该方法最大的优点就是数学形态学结合行扫描进行粗定位,缩小了Hough变换的运算范围,提高了车牌定位的速度和精度。实验表明,用该方法定位车牌效果明显且高效。

参考文献

[1]Chien-Chou Lin,Wen-Huei Huang.Locating License Plate Based on Edge Features of Intensity and Saturation Subimages[G]//Second International Conference on Innovative Computing.Information and Control.ICICIC,2007.

[2]Mei Yu,Yong Deak Kim.An approach to Korean license plate recognition based on vertical edge matching[J].In Proceedings of IEEE International Conference on Systems,Man and Cybernetics,2000(4):2975-2980.

[3]李刚,曾锐利,林凌,等.基于数学形态学的车牌定位算法[J].仪器仪表学报,2007,28(7):1323-1327.

[4]陆建华.基于数学形态学和行扫描行的车牌定位算法[J].计算机时代,2009(11):51-52.

[5]刘雄飞,龙巧云,李根,等.基于行扫描和小波变换的车牌定位算法[J].计算机应用与软件,2013,30(5):279-282.

[6]林俊,杨峰,林凯.Hough变换与先验知识在车牌定位中的新应用[J].计算机与数学工程,2009,37(8):138-140.

[7]苏义鑫,罗佳佳.基于边缘检测和Hough变换的车牌定位技术[J].仪表技术,2008(4):40-44.

[8]李莹,李守荣,孙震.基于数学形态学和Hough变换的车牌定位算法[J].微机型与应用,2011,30(19):38-40.

〔编辑:白洁〕

经过上述处理后得到的这几个车牌候选区有真实的车牌,当然也存在伪车牌。为了排除一些伪车牌的干扰,更准确地得到真正的车牌区域,这里通过行扫描处理来统计每行的灰度跳变次数,并定位出合理的车牌区域。车牌中的7个字符分布集中且排列规则,在通常情况下,每个字符会出现两次跳变,但不排除会出现有多于两次跳变的情况。考虑到字符有可能出现模糊、部分损坏、倾斜等问题,同时,也考虑到车牌的两个边框,因此,这里将跳变阈值T设置为20,得到了很好的效果。采用行扫描法后,得到的车牌合理区域定位如图4所示。

2.3 车牌区域精确定位——Hough变换

Hough变换是一种被广泛运用于检测直线的经典算法。它主要体现的是点与线分别在两种不同的空间域所呈现的对偶关系。其核心思想是把图像空间中属于某种图形(这里以直线为例)的点的集合映射到参数空间中的一个点。这个点也是由多条线相交汇聚而成,其实它对应的就是图像空间中我们要寻找的某条直线。图5形象地展现了直线 在参数空间所呈现的状态。

经过粗定位处理后,车牌区域已基本被提取出来,但是,车牌上下左右具体的边界仍没能确定下来。因此,为了确定车牌上下左右的边界,更精确地定位车牌,这里采用了Hough变换方法来对车牌进行精确定位。在采用Hough变换对车牌定位之前,考虑到Hough变换对检测区域边缘清晰度、完整度的要求比较高,因此,对经行扫描之后得到的准确车牌合理区域再进行中值滤波处理和Canny算子提取边缘。采用中值滤波处理能平滑噪声,去除一些杂质的干扰,保留有用的边缘信息。进行阈值设定为[0.04;0.10]的Canny算子提取边缘,能更好、更清晰地把图像中较细的边缘检测出来。最后,使用Hough变换做线检测和链接,找出车牌上下左右的边界,实现车牌的精确定位。通过反复实验发现,峰值检测设置在≥6的情况下,能更好、更精确地检测出车牌上下左右的边界。图6分别给出了A和B两组图像的Hough变换峰值检测结果,图7给出了最终的车牌定位图。

3 实验结果和分析

为了验证本文提出的车牌定位算法的效果,对不同类型、不同背景情况下采集到的300幅图像进行定位实验。输入图片尺寸为600×480像素的车牌图像,在配置为主频1.46 GHZ,RAM 1 GB的计算机上用MATLAB7.0运行该算法,并统计测试结果,发现能准确定位296张图像,定位率为98.6%,平均每幅图片的定位时间为1.18 s。定位结果如表1所示。

经过测试发现,按照上述算法经过先粗后精的前后二次定位后均可比较准确地定位出车牌区域。分析4张定位不成功的图像可知,是因为车牌边缘受到磨损或遭受到较大的污染,致使在车牌精确定位阶段采用Hough变换对车牌准确定位时不能很好、完全地检测出车牌的4条边缘线,所以,造成定位的失败。

同时,将本文算法得到定位的结果与参考文献[4][8]得到的定位结果作比较,对比其定位时间和定位准确率,得到的结果如表2所示。

由表2可知,本文算法无论在定位时间和定位准确率上都比文献[8]的算法要优,虽然比文献[4]中提出的定位时间要长,但是,定位准确率远远在其之上。通过对比、分析,再

一次验证了本算法的精确度和高效性。

4 总结

本文提出了一种基于数学形体学的车牌定位方法,该方法采用先粗后精的定位方式,先对车牌图像进行形态学和行扫描运算,确定车牌的合理区域,实现粗定位。在此基础上,再进行Hough变换,确定车牌上下左右的边界,实现车牌的精确定位。该方法最大的优点就是数学形态学结合行扫描进行粗定位,缩小了Hough变换的运算范围,提高了车牌定位的速度和精度。实验表明,用该方法定位车牌效果明显且高效。

参考文献

[1]Chien-Chou Lin,Wen-Huei Huang.Locating License Plate Based on Edge Features of Intensity and Saturation Subimages[G]//Second International Conference on Innovative Computing.Information and Control.ICICIC,2007.

[2]Mei Yu,Yong Deak Kim.An approach to Korean license plate recognition based on vertical edge matching[J].In Proceedings of IEEE International Conference on Systems,Man and Cybernetics,2000(4):2975-2980.

[3]李刚,曾锐利,林凌,等.基于数学形态学的车牌定位算法[J].仪器仪表学报,2007,28(7):1323-1327.

[4]陆建华.基于数学形态学和行扫描行的车牌定位算法[J].计算机时代,2009(11):51-52.

[5]刘雄飞,龙巧云,李根,等.基于行扫描和小波变换的车牌定位算法[J].计算机应用与软件,2013,30(5):279-282.

[6]林俊,杨峰,林凯.Hough变换与先验知识在车牌定位中的新应用[J].计算机与数学工程,2009,37(8):138-140.

[7]苏义鑫,罗佳佳.基于边缘检测和Hough变换的车牌定位技术[J].仪表技术,2008(4):40-44.

[8]李莹,李守荣,孙震.基于数学形态学和Hough变换的车牌定位算法[J].微机型与应用,2011,30(19):38-40.

〔编辑:白洁〕

经过上述处理后得到的这几个车牌候选区有真实的车牌,当然也存在伪车牌。为了排除一些伪车牌的干扰,更准确地得到真正的车牌区域,这里通过行扫描处理来统计每行的灰度跳变次数,并定位出合理的车牌区域。车牌中的7个字符分布集中且排列规则,在通常情况下,每个字符会出现两次跳变,但不排除会出现有多于两次跳变的情况。考虑到字符有可能出现模糊、部分损坏、倾斜等问题,同时,也考虑到车牌的两个边框,因此,这里将跳变阈值T设置为20,得到了很好的效果。采用行扫描法后,得到的车牌合理区域定位如图4所示。

2.3 车牌区域精确定位——Hough变换

Hough变换是一种被广泛运用于检测直线的经典算法。它主要体现的是点与线分别在两种不同的空间域所呈现的对偶关系。其核心思想是把图像空间中属于某种图形(这里以直线为例)的点的集合映射到参数空间中的一个点。这个点也是由多条线相交汇聚而成,其实它对应的就是图像空间中我们要寻找的某条直线。图5形象地展现了直线 在参数空间所呈现的状态。

经过粗定位处理后,车牌区域已基本被提取出来,但是,车牌上下左右具体的边界仍没能确定下来。因此,为了确定车牌上下左右的边界,更精确地定位车牌,这里采用了Hough变换方法来对车牌进行精确定位。在采用Hough变换对车牌定位之前,考虑到Hough变换对检测区域边缘清晰度、完整度的要求比较高,因此,对经行扫描之后得到的准确车牌合理区域再进行中值滤波处理和Canny算子提取边缘。采用中值滤波处理能平滑噪声,去除一些杂质的干扰,保留有用的边缘信息。进行阈值设定为[0.04;0.10]的Canny算子提取边缘,能更好、更清晰地把图像中较细的边缘检测出来。最后,使用Hough变换做线检测和链接,找出车牌上下左右的边界,实现车牌的精确定位。通过反复实验发现,峰值检测设置在≥6的情况下,能更好、更精确地检测出车牌上下左右的边界。图6分别给出了A和B两组图像的Hough变换峰值检测结果,图7给出了最终的车牌定位图。

3 实验结果和分析

为了验证本文提出的车牌定位算法的效果,对不同类型、不同背景情况下采集到的300幅图像进行定位实验。输入图片尺寸为600×480像素的车牌图像,在配置为主频1.46 GHZ,RAM 1 GB的计算机上用MATLAB7.0运行该算法,并统计测试结果,发现能准确定位296张图像,定位率为98.6%,平均每幅图片的定位时间为1.18 s。定位结果如表1所示。

经过测试发现,按照上述算法经过先粗后精的前后二次定位后均可比较准确地定位出车牌区域。分析4张定位不成功的图像可知,是因为车牌边缘受到磨损或遭受到较大的污染,致使在车牌精确定位阶段采用Hough变换对车牌准确定位时不能很好、完全地检测出车牌的4条边缘线,所以,造成定位的失败。

同时,将本文算法得到定位的结果与参考文献[4][8]得到的定位结果作比较,对比其定位时间和定位准确率,得到的结果如表2所示。

由表2可知,本文算法无论在定位时间和定位准确率上都比文献[8]的算法要优,虽然比文献[4]中提出的定位时间要长,但是,定位准确率远远在其之上。通过对比、分析,再

一次验证了本算法的精确度和高效性。

4 总结

本文提出了一种基于数学形体学的车牌定位方法,该方法采用先粗后精的定位方式,先对车牌图像进行形态学和行扫描运算,确定车牌的合理区域,实现粗定位。在此基础上,再进行Hough变换,确定车牌上下左右的边界,实现车牌的精确定位。该方法最大的优点就是数学形态学结合行扫描进行粗定位,缩小了Hough变换的运算范围,提高了车牌定位的速度和精度。实验表明,用该方法定位车牌效果明显且高效。

参考文献

[1]Chien-Chou Lin,Wen-Huei Huang.Locating License Plate Based on Edge Features of Intensity and Saturation Subimages[G]//Second International Conference on Innovative Computing.Information and Control.ICICIC,2007.

[2]Mei Yu,Yong Deak Kim.An approach to Korean license plate recognition based on vertical edge matching[J].In Proceedings of IEEE International Conference on Systems,Man and Cybernetics,2000(4):2975-2980.

[3]李刚,曾锐利,林凌,等.基于数学形态学的车牌定位算法[J].仪器仪表学报,2007,28(7):1323-1327.

[4]陆建华.基于数学形态学和行扫描行的车牌定位算法[J].计算机时代,2009(11):51-52.

[5]刘雄飞,龙巧云,李根,等.基于行扫描和小波变换的车牌定位算法[J].计算机应用与软件,2013,30(5):279-282.

[6]林俊,杨峰,林凯.Hough变换与先验知识在车牌定位中的新应用[J].计算机与数学工程,2009,37(8):138-140.

[7]苏义鑫,罗佳佳.基于边缘检测和Hough变换的车牌定位技术[J].仪表技术,2008(4):40-44.

[8]李莹,李守荣,孙震.基于数学形态学和Hough变换的车牌定位算法[J].微机型与应用,2011,30(19):38-40.

〔编辑:白洁〕