基于颜色特征与模板匹配的车牌识别系统设计与实现
2018-02-01张俊峰尚振宏刘辉
张俊峰+尚振宏+刘辉
摘要:为实现对国内蓝底白字车牌的快速识别,提出一种基于颜色特征与模板匹配的车牌识别系统。通过分析长宽比、白色比例对车牌候选区域进行多次筛选以检测车牌位置,然后对车牌区域进行图像灰度化、倾斜校正、二值化、擦除反色与裁剪后,利用垂直投影分割出字符,最后通过比较字符图像与模板字符的相似度识别出字符。通过对400张不同颜色和背景条件下的车辆图像进行测试,系统处理时间为1.97s,识别正确率达到92%。
關键词:车牌识别;图像处理;字符分割;模板匹配;字符识别
DOIDOI:10.11907/rjdk.171996
中图分类号:TP317.4
文献标识码:A文章编号文章编号:1672-7800(2018)001-0212-04
Abstract:In order to realize the fast recognition of domestic blue and white plate, the license plate recognition method based on the color feature and template matching was proposed. Through the analysis of the aspect ratio, the proportion of white in the license plate candidate area to detect the location of license plate, and then through the image was grayed, tilt was corrected, binarized, erasedand inversed, cropped, the character was segmented by using vertical projection, and finally through the similarity comparison of character image and template characters to identify the character. Through the 400 vehicle images was tested under different color and background, the recognition accuracy is 92%, and the system processing time is 1.97s.
Key Words:license plate detection;image processing;character segmentation; template matching;character recognition
0引言
随着智能交通系统的快速发展和大量车辆进入家庭,车牌识别系统作为智能交通的重要组成部分,在交通监控、公路收费和智能停车场中发挥了重要作用。智能车牌定位及识别技术的发展,对维护交通安全、社会治安,防止交通拥塞,实现交通智能化管理有着重要的现实意义。
以往的车牌识别大都是基于灰度图像处理的识别技术,从车辆图像中定位车牌区域则是车牌识别的关键部分。首先要求正确可靠地检测出车牌区域,为此,研究者们提出了许多方法,如Hough变换、灰度阈值、区域生长、纹理特征分析等。Hough变换对图像噪声比较敏感,在检测车牌边界直线时容易受到车牌变形或噪声等因素影响,具有较大的误检机率;灰度阈值分割、区域生长等方法比直线检测方法稳定,但当图像中包含某些与车牌灰度非常类似的区域时,便不再适用;纹理分析在遇到类似的车牌纹理特征时,也可能造成定位失败。
针对以上不足,本文提出了基于颜色特征的车牌定位方法[1-2],新的定位方法避免了如Hough变换[3]、小波变换[4]以及边缘检测[5]等算法耗时过长的问题,有助于实现车牌的快速定位。
1系统整体设计
车牌识别系统[6]包括4个步骤:车牌定位(包括识别图像中的车牌位置并将其分割)、图像处理、字符分割与字符识别,如图1所示。车牌定位的主要功能是从图像中可能包含车牌的候选区域中定位车牌区域;图像处理的功能是强化车牌关键特征;字符分割的功能是将车牌字符从检测到的车牌区域背景中分离出来;字符识别的功能是用已知字符识别分割得到的字符。
2车牌定位算法
车牌定位是车牌识别算法的第一步[7]。颜色特征在定位和识别系统中起着重要作用,车牌区域的颜色具有显著特征[8]。采用横向扫描和纵向扫描的车牌定位算法。车牌区域的搜索有时会受车辆本身一些广告和商标等图案的干扰,而车牌区域在图像中的位置一般比这些干扰所在的位置低。因此,通过从下至上搜索车牌区域可有效地减少这些干扰。扫描得出的区域可能不止一个,再根据该区域的长宽比例和蓝白色的比例,验证是否为车牌区域。车牌区域定位和分割过程通过颜色范围定义、行列扫描的方式实现。Y方向对应行,X方向对应列,具体过程如下:
(1)Y方向:对每一个像素进行分析,统计满足条件的像素所在行对应的个数。
for i=1:y
for j=1:x
if((myI(i,j,1)<=48)&&((myI(i,j,2)<=100)&&(myI(i,j,2)>=40))&&((myI(i,j,3)<=220)&&(myI(i,j,3)>=80)))
Blue_y(i,1)=Blue_y(i,1)+1;%蓝色像素点统计
end
end
end
找到所有蓝点较多的行,向上追溯,直到车牌候选区域上边界PY1;向下追溯,直到车牌区域下边界PY2,对车牌区域进行修正,得到Y方向的车牌候选区域。endprint
(2)X方向:统计满足条件的像素所在列对应的个数。
for j=1:x
fori=PY1:PY2
if((myI(i,j,1)<=65)&&((myI(i,j,2)<=90)&&(myI(i,j,2)>=30))&&((myI(i,j,3)<=160)&&(myI(i,j,3)>=90)))
Blue_x(1,j)=Blue_x(1,j)+1;%蓝色象素点统计
end
end
end
找到车牌候选区域的左边界PX1和右边界PX2,对候选区域进行修正。
(3)同理提取其余蓝色点较多的区域,标记为车牌候选区域,这些区域包括了车牌区域和非车牌区域。
(4)统计车牌候选区域中的白色像素点。
for i=PY1:PY2
for j=PX1:PX2
if(std([myI(i,j,1)myI(i,j,2)myI(i,j,3)],1,2)<=20)&&(myI(i,j,1)>=85)&&(myI(i,j,1)<=255)
White=White+1; %白色像素点统计
end
end
end
(5)计算车牌候选区域宽度和高度之间的比率,选择具有滿足预定义约束宽高比的候选区域。根据我国小型汽车的车牌特征为蓝底白字白框线,长宽标准为440mm*140mm,考虑到拍摄角度及倾斜等因素,长宽比例范围通常为1.3~3.5,白色比例范围通常为0.12~0.5。
(6)根据长宽比例和白色比例,淘汰其余车牌候选区域,实现对车牌的最终定位。
(7)分割车牌区域。车牌定位和分割结果如图2所示,图2(a)为车辆图像,图2(b)为车牌分割结果。
3车牌图像处理
3.1图像灰度化
道路监控摄像机抓拍的图像一般为RGB真彩图像,在RGB格式中,每个像素有3个颜色分量:红,绿,蓝。车牌图像的每个像素由3个值确定红绿蓝分量。在RGB模型中,当R=G=B为灰度色。灰度图像保持了强度信息而没有颜色信息。采用加权平均值法对RGB进行灰度化,得到灰度图的亮度值。设置合理的权值能较好地突出灰度图亮度。任意一种颜色可表示为:
系数r、g、b分别为红绿蓝权值,这里r=0.299,g=0.587,b=0.114,能获得适合人眼观察的灰度图像,如图3所示。
3.2倾斜校正
在车牌识别过程中,车牌倾斜对车牌字符分割与最终识别结果有着显著影响。由于拍摄角度、车辆状态及道路状况等原因影响,如在抓拍中图像位置不固定,车头或镜头出现晃动及路况较差,都会造成牌照中的字符倾斜,给字符的分割和识别增加难度。因此,需对定位后的车牌进行矫正。采用Radon变换方法进行车牌图像倾斜矫正,原理是将图像朝着各个方向投影,然后分析投影特征,确定车牌倾斜角度。
设函数f(x,y)为某一方向的投影,即其在指定方向上的线积分。设直角坐标系(x,y)旋转后获得新的坐标系(,):
p(,θ)为原函数f(,)的投影,即f(x,y)沿旋转坐标系中轴方向的线积分。
其中,0≤θ≤π。这是函数f(x,y)的Radon变换。找出p(,θ)中的局部最大值,可确定倾斜角度。将倾斜的车牌图像作90-θ度旋转,实现倾斜校正,如图4所示。
3.3图像二值化
二值图像是指整幅图像画面内仅有黑白二值的图像。灰度图像二值化不仅可大幅度减少数据运算量,并能有效突出目标轮廓,以便后续处理。在车牌处理中,二值化处理是将像素点的灰度设置为0或255,使车牌区域呈现黑白效果。对灰度图像设置合理阈值,能够有效保持车牌形状信息。车牌区域二值化过程后,仅保留黑白二值的数值矩阵,每个像素取两个离散数值0或1,0为黑色,1为白色,如图5所示。
f(i,j)为原图像上的像素值,b(i,j)为二值化后图像的像素值,T为阈值。
3.4多余成分去除
经过图像二值化取反后,车牌图像上可能出现一些较为明显的孤立像素点或像素块,会对车牌的识别造成干扰。为了有效地保存目标车牌的形状、大小及特定的几何特征,需要去除车牌图像中的多余成分。首先对二值图像取反,求反变换使图像中感兴趣的细节更容易被注意到,如图6所示。
然后对图像作进一步裁剪,使边框进一步贴近字体,如图7所示。
经过图像处理后的车牌整体区域需要分割成单个字符区域,以便后续识别。投影是有用且紧凑的形状描述符,通过计算水平垂直峰分割所有字符[9]。一个二值目标的水平投影和垂直投影分别为hi(x)和vi(y),可使用以下公式求得:
如图8显示一个垂直投影,利用独立的7个峰提取7个车牌字符,图9为字符分割结果。
车牌字符分割后往往会出现大小不一的情况,可采用基于图像缩放的归一化处理方式将字符图像进行尺寸缩放,以得到大小统一的字符图像,便于后续的字符识别。
5字符识别
5.1字符识别简述
常用的车牌字符识别方法有以下几类:
(1)结构识别。该方法主要由识别和分析两部分构成:识别部分主要包括预处理、基元抽取和特征分析;分析部分包括基元选择与结构推理。
(2)统计识别。该方法的目的在于确定已知样本的所属类别,以数学的决策论为理论基础,建立统计学识别模型。
(3)BP神经网络。该方法以神经网络模型为基础,属于误差后向传播的神经网络,是神经网络中使用最广泛的一类,通过输入层、隐层和输入层三层网络的层间全互联方式运行,具有较高的运行效率和识别准确率。endprint
(4)模板匹配。该方法是数字图像处理中最常用的识别方法之一,通过建立已知模板库,再将其应用到输入模式中,寻找与之为最佳匹配模式的处理步骤,得到相应识别结果,具有很高的运行效率。
5.2基于模板匹配的字符识别
由于车牌字符是以规范的字符为基础的,模板匹配是以字符整体相关性为基础的,并不强求字符整体结构的完整性。因此,模板匹配法具有较强的容错能力,适合有较强干扰的场合。
由于前期字符的有效分割,这里采用简单模版匹配算法[10]。该算法十分简单,对图像噪声敏感性较低,识别率较高。
模板匹配[11-12]是图像识别方法中具有代表性的方法之一,该方法首先根据已知条件建立模板库,将分割出的车牌字符与字符模板库中的字符进行匹配运算,图像与模板之间的匹配程度通过互相关算子确定:
Ri(x,y)为互相关算子,F为待检测图像,Fxy为待检测的图像子图,x、y为子图左上角点在F中的坐标,T为模板,互相关算子最大对应的模板为最佳匹配模板。
字符识别流程如图10所示。
具体过程如下:
(1)建库。建立标准化的字符模板库。如图11所示。
(2)遍历字符模板。
(3)比对。将分割的字符图像与模板库中的字符进行对比,根据蓝底白字号牌的特点,第1位字符是汉字,分别代表各个省份,第2位是A~Z的字母,后5位是数字和字母的混合搭配。为提高比对过程的效率和准确性,分别对第1位、第2位和后5位字符进行识别。
(4)将每个字符图像的匹配结果进行保存。
(5)输出。在识别完成后输出所得的车牌字符结果,如图12所示。
6实验与结果
为验证系统在车牌定位和识别上的准确性,测试了400张不同场景、不同角度和不同照明条件下拍摄的车辆图像,在配置为Windows 10系统Inter(R) Core(TM) i5-4210H、CPU2.9GHz、4GB内存的MatlabR2014a平台上进行实验。图13为夜间拍摄的图像,图14为系统识别结果。
表1给出了系统的性能识别结果。
从表1中可以看出,系统具有较高的识别率和较好的实时性。
7结语
本文提出了一种新的车牌识别方法,车牌定位使用车牌颜色特征,通过分析车牌区域的长宽比、白色比例实现对车牌的准确定位,具有较好的实时性和准确率。车牌自动识别问题多年来获得了广泛研究,但由于传感器、环境和目标的不断变化,车牌识别还具有很多挑战,包括在一个不受控制的环境中,对于多个车牌、各种观测角度,以及存在背景杂波、车牌倾斜、规模变化、照明不均等问题情况下,如何能够准确识别车牌。因此,有必要分析更多情况,以进一步提高现有车牌识别系统的鲁棒性。
参考文献:
[1]AH ASHTARI, MJ NORDIN, M FATHY. Aniranian license plate recognition system based on color features[J].IEEE Transactions on Intelligent Transportation Systems,2014,15(4):1690-1705.
[2]MF ZAKARIA, SA SUANDI. Malaysiancar number plate detection system based on template matching and colour information[J].International Journal on Computer Science and Engineering,2010,2(4):1159-1164.
[3]Y YANAMURA, M GOTO, D NISHIYAMA, et al. Extraction and tracking of the license plate using hough transform and voted block matching[J]. IEEE Intelligent Vehicles Symposium,2003:243-246.
[4]F M KAZEMI, S SAMADI, H R POORREZA, et al. Vehicle recognition based on Fourier, wavelet and curvelet transforms—a comparative study[J].International Journal of Computer Science and Network Security,2007,7:939-940.
[5]HASAN, MAHMUDUL. Real time detection and recognition of license plate in bengali[J].Bourns College of Engineering,2013.
[6]C N E ANAGNOSTOPOULOS, I E ANAGNOSTOPOULOS, I D PSOROULAS, et al. License plate recognition from still images and video sequences: a survey[J]. IEEE Transactions on Intelligent Transportation Systems,2008,9(3):377-391.
[7]F WANG, L MAN, B WANG, et al. Fuzzy-based algorithm for color recognition of license plates[J].Pattern Recognition Letters,2008,29(7):1007-1020.
[8]S NOMURA, K YAMANAKA, O KATAI, et al. A novel adaptive morphological approach for degraded character image segmentation[J].Pattern Recognition,2005,38(11):1961-1975.
[9]PRIYA V LAKSHMI,PERUMAL K.Detecting the car number plate using segmentation[J].International Journal of Engineering and Computer Science,2014(10):8823-8829.
[10]GUPTA PRATIKSHA, G N PUROHIT, RATHORE MANISHA.Number plate extraction using template matching[J].International Journal of Computer Applications,2014,88(3):40-44.
[11]MH DASHTBAN, Z DASHTBAN, H BEVRANI. A novel approach for vehicle license plate localization and recognition[J]. International Journal of Computer Applications.2011,26(11):22-30.
[12]馬永慧.车牌识别系统中车牌定位与字符分割的研究[D].太原:中北大学,2013.
(责任编辑:黄健)endprint