基于小波变换的复杂背景中的车牌提取方法

文档序号:6555150阅读:317来源:国知局
专利名称:基于小波变换的复杂背景中的车牌提取方法
技术领域
本发明属于电子信息处理技术领域,特别涉及车牌识别技术中的复杂背景中的车牌提取方法。
背景技术
智能交通系统是目前世界交通运输领域的前沿研究课题,发达国家提出并执行了一系列研究计划,其核心是针对日益严重的交通需求和环境保护压力,采用信息技术、通信技术、计算机技术、控制技术等对传统交通运输系统进行深入的改造,以提高系统资源的使用效率、系统安全性,减少资源的消耗和环境污染,在此方面我国也不例外。智能交通系统中的车牌识别技术主要实现对行驶车辆牌照进行自动识别,从而完成自动收费,无人停车管理,重要路口的交通管制以及违章车辆的追踪等等功能,以此来节省了人力、资金,同时提高交通管理的效率。如今,随着计算机性能的提高和图像处理技术的发展,车牌识别系统已经日趋成熟。详见文献Da-Shan Gao,Jie Zhou,Car license plates detection from complexscene,Signal Processing Proceedings,5th International Conference,21-25 Aug.2000和文献Shyang-Lih Chang,Li-Shien Chen,YunChung Chung,Sei-Wan Chen,Automatic license platerecognition,Intelligent Transportation Systems,IEEE Transactions on,March 2004所述。
在车牌识别系统中,车牌提取是一项关键的技术,其目的就是从一幅复杂背景的数字图像中分割出车牌图像,要求具有较高的识别率和较强的环境适应性。但是由于车牌背景的复杂性与车牌特征的多样性,迄今为止,仍没有一个完全通用的智能化车牌定位方法。大多数定位方法局限于某个侧面问题的解决,如牌照的倾斜、光照的干扰、噪声的影响等,离实际应用尚有比较大的距离。因此,如何把现有的研究成果结合起来,同时考虑到现有设备的工作能力,使我们的车牌识别系统具有良好的性能和识别速度是我们当前研究的方向。详见文献Zhi-Bin Huang,Yan-Feng Guo,Classifier fusion-based vehicle license plate detectionalgorithm,Machine Learning and Cybernetics,2003 International Conference on,2-5 Nov.2003和文献Yoshimori,S.Mitsukura,Y.Fukumi,M.Akamatsu,N.Khosal,R.License plate detection system in rainydays,Computational Intelligence in Robotics and Automation.,16-20 July 2003。
而基于小波分析的车牌提取方法,有可能解决这个问题,因为车牌区域在整幅图像中的高频信息明显且集中,同时小波分析可以有效的提取并且突出这些高频信息从而准确的提取出车牌图像来。
其中,所谓的小波变换指的是基于一些称为小波的小型波,具有变化的频率和有限的持续时间。复杂背景则指在含有车牌图像的图像中,只有很小一部分是车牌区域,其他部分为背景。而复杂是指背景含有各种各样的图像和纹理特征,有些特征甚至和车牌区域相类似。最后车牌指的是每辆车牌安装的用于标识车辆身份的号码,制作标准化,一般悬挂于车辆的前端或者后部。
现在通常使用的车牌提取的方法有①基于车牌的彩色特征进行车牌提取方法。它是通过提取车牌的不同于其他区域的特殊彩色特征来区别车牌区域和背景区域,从而提取出车牌。优点是充分利用了图像的彩色信息;缺点是速度较慢,对于那些色彩非常丰富的图像可能失效。详见文献Zhu Wei-gang;Hou Guo-jiang;Jia Xing;A study of locating vehicle license plate based on colorfeature and mathematical morphology.Signal Processing,26-30 Aug.2002。
②应用Hough变换进行车牌提取的方法。它是通过提取车牌边框的直线从而搜索到车牌位置的。其缺点是速度较慢,而且定位不准确,出现干扰区域多。详见文献K.M.Kim,B.J.Lee,K.Lyou.The automatic coefficient and Hough transform.Journal of Control,Automatic and System Engineering.3(5)511-519,1997.
③基于形态学算子的车牌提取方法。它是通过使用膨胀、腐蚀等操作对车牌的边缘特征进行增强,进而提取出车牌。其缺点是对那些边缘特征相对丰富的区域会找出相当多的干扰区域,从而影响车牌提取的效果。详见文献M.Shridhar,J.W.Miller.Recognition of license plate image,In Processings of International Conference on DocumentAnalysis and Recognition,17-20,1999.
车牌提取时上述三种方法都具备一个共同的特点这些方法都是针对一个特定的环境,且提取出的高频信息有限。一旦环境变化,其提取准确率就会发生较大的波动,使整个车牌识别系统的性能下降。因此缺乏对各种环境的适应性,方法鲁棒性不好。此处我们所说的环境指的是车牌原始图像采集的环境,不同的环境,比如说天气、时刻、车辆所处背景和车辆自身运动情况等等,采集的图像在分辨率和纹理特征等方面往往出现相当大的区别。高频信息指的是图像的局部细节特征,车牌区域的局部细节特征相对于其他区域更明显一些。

发明内容
本发明的任务是提供一种基于小波变换的复杂背景中的车牌提取方法,采用本发明的方法,可以大大地提高车牌提取方法的通用性,所述的复杂背景包括晴天、雨天、雾天,车牌水平、车牌倾斜,车辆静止、车辆运动,白天、夜晚等等情况。
为了方便描述本发明地内容,首先在此作一个术语定义1.车牌每辆车中安装的用于标识车辆身份的号码牌,号码牌中包含有7个字符,有统一的制作标准,一般悬挂于车辆的前端或者后部,但对不同用途的车辆的车牌的标准可能是不一样的。
2.灰度图像图像中只包含了亮度信息而没有任何颜色信息的图像。
3.灰度转换一种把彩色图像转化为灰度图像的手段,利用公式f(i,j)=0.114*I(i,j,1)+0.587*I(i,j,2)+0.299*I(i,j,3)可以把一幅灰度图像转换为灰度图像,其中i表示图像的行位置,j表示图像的列位置,f(i,j)表示转换后的灰度图像中第i行第j列的象素的灰度值,I(i,j,1),I(i,j,2)和I(i,j,3)分别表示彩色图像中第i行第j列的象素的R,G,B分量的值。
4.灰度图拉伸对那些灰度分布比较集中的图像,进行函数变换使其灰度均匀分布于0~255这一范围之内,以此来增加图像对比度,此函数变换式为f(x)=tanh(cσx),]]>其中x代表输入的灰度值,f(x)代表变换后的灰度值,tanh为双正切函数。σ表示灰度图像的均方差,c表示一个常数,此处取为2.4。
5.垂直梯度为了突出原图像的垂直细节信息,提取边缘,用每一行的后一个象素灰度值减去前一个象素的灰度值,得到垂直梯度值。计算公式为gV(i,j)=|f(i,j+1)-f(i,j)|,其中i表示图像的行位置,j表示图像的列位置,f(i,j)表示第i行第j列的象素的灰度值,f(i,j+1)表示第i行第j+1列的象素的灰度值,gV(i,j)表示相应的垂直梯度值。
6.梯度水平投影一种把二维空间中的图像灰度梯度值通过一个函数变换后转换到一维空间中的方法,该函数变换为TH(i)=Σj=1ngV(i,j),]]>其中gV(i,j)表示第i行第j列的垂直梯度值,TH(i)为第i行的投影值。
7.高斯滤波器一种有名的平滑滤波器,通过一个滤波函数变换对曲线进行滤波处理,可以使曲线更平滑,滤波函数为TH′(i)=1k{TH(i)+Σj=1w[TH(i-j)h(j,σ)+TH(i+j)h(j,σ)]}.]]>其中TH′(i)是滤波后的梯度水平投影值,i的变化范围是从1到n,n代表图像的高度;w表示了平滑区域的宽度大小,此处取8;h(j,σ)=exp(-j22σ2)]]>是高斯函数,k=2Σj=1wh(j,σ)+1,]]>σ表示灰度图像的均方差;TH(i)表示第i个梯度水平投影值,TH(i-j)表示第(i-j)个的梯度水平投影值TH(i+j)表示第(i+j)个梯度水平投影值。
8.波峰曲线上的值的一种特征;在该处的曲线值比紧邻的前一个曲线值和紧邻的后一个曲线值都大。
9.波谷曲线上的值的一种特征;在该处的曲线值比紧邻的前一个曲线值和紧邻的后一个曲线值都小。
10.波峰积分值一种计算坐标轴表示法中曲线覆盖下的区域的面积的数学手段;此处专指两个波谷间的面积。
11.梯度水平投影曲线扫描一种搜寻曲线上波峰值或波峰积分值较大的方法,具体方法为,从曲线的起点寻找波峰,找到波峰后计算该波峰积分值,同时记录下大的波峰值的位置和波峰积分值较大的波峰的位置,如此搜寻直到曲线的终点。
12.车牌候选区域一些在一幅图像中具有某些特征的区域,这些特征是,首先,它一个是具有一定尺寸大小的长方形或平行四边形,该长方形或平行四边形不能太大以至于占据了整个车辆图像,也不能太小以至于肉眼不可见,通常情况下是一个长440mm左右高140mm左右的长方形或平行四边形区域;其次,长方形内的区域必须有字符;最后,该长方形位于一个车辆图像中的中下部。
13.车牌粗定位运算一种粗略估算车牌位置的简单运算,运算法则为根据提供的曲线的较大的波峰值或较大的波峰积分值的位置来搜索和此波峰紧邻的左右两个波谷位置,左边波谷的坐标值对应的是车牌在一个车辆图像中的上边界的位置,此处用top_boundary来表示车牌的上边界位置,右边波谷的坐标值对应的是车牌在一个车辆图像中的下边界的位置,此处用bot_boundary来表示车牌的下边界位置。车牌的上下边界确定后,车牌的粗略位置就可以确定了。由于此处是车牌粗定位运算,所以可能会出现多个车牌候选区域的情况。
14.快速小波变换(Mallat)是一种实现离散小波变换(DWT)的高效计算,该变换找到了相邻尺度DWT系数间的实用的关系。具体的变换原理见附图1。
15.归一化把分布于不同范围内的函数值通过一个数学运算规化到一个指定范围的数学运算,该数学运算为n(i,j)=f(i,j)-min(f)max(f)*255,]]>其中f(i,j)表示原来的函数值,n(i,j)表示归一化后的函数值,min(f)表示原函数f中的最小函数值,max(f)表示愿函数f中的最大函数值,255表示把原来的函数值归一化到0到255之间,255可以换成其它的数值。
16.梯度对应相加运算一种把相同位置的梯度值进行相加的数学运算,此处专指把小波分析结果中的三个高频分量LH、HL和HH的垂直梯度进行相加的运算;计算式为Dif_I(i,j)=|LH(i,j+1)-LH(i,j)|+|HL(i,j+1)-HL(i,j)|+|HH(i,j+1)-HH(i,j)|,其中LH(i,j)表示LH子图的第i行第j列的归一化灰度值,LH(i,j+1)表示LH子图的第i行第j+1列的归一化灰度值,HL(i,j)表示HL子图的第i行第j列的归一化灰度值,HL(i,j+1)表示HL子图的第i行第j+1列的归一化灰度值,HH(i,j)表示HH子图的第i行第j列的归一化灰度值,HH(i,j+1)表示HH子图的第i行第j+1列的归一化灰度值,Dif_I(i,j)表示第i行第j列的小波子图差分总和。
17.车牌精确切割此处专指利用提供的车牌位置l_top,l_bot,l_left和l_right进行精确切割的运算。此运算法则为,首先,定义一个全一矩阵mask,矩阵mask的总列数为(l_right-l_left),矩阵的总行数为(l_bot-l_top).;其次把矩阵mask和车牌候选区域进行点乘运算;再次,定一个全零矩阵la,其总列数为(l_right-l_left),其总行数为(l_bot-l_top).;最后把点乘运算的结果中非零的值赋给矩阵la,最终便得到一个准确的车牌区域la。
18.灰度翻转对灰度图进行的变换,用255减去每一个灰度值就可以了,黑转化为白,白转化为黑。
19.车牌颜色归一化是指把不同背景和字符颜色的车牌通过一个数学运算均变为黑底白字的车牌图像,其数学原理是,首先,统计车牌区域内的白色像素数和黑色象素数;其次比较黑色象素数和白色像素数;再次,如果白色象素数为多数,则进行灰度翻转,如果黑色象素数为多数则不做任何处理。
20.亮度增强一种图像处理手段,用于提高一幅图像中的黑白对比度,其数学原理为R′(i,j)=R(i,j)if R(i,j)>thresR(i,j)×0.4if R(i,j)≤thres,]]>其中R(i,j)表示车牌图像第i行第j列的灰度值,R′(i,j)表示变换后的第i行第j列的车牌的灰度值,thres是阀值,一般取车牌图像灰度值较大的20%个象素中的最小灰度值。
按照本发明的一种基于小波变换的复杂背景中的车牌提取方法,它包含下列步骤步骤1.将摄像装置安装于公路路口或者停车场的适当位置,在车辆进入摄像范围内后进行图像采集,得到含有车牌图像的原始图像;步骤2.对步骤1中所得到的原始图像进行灰度转换,得到一幅包含车牌的灰度图像。
具体方法为采用公式f(i,j)=0.114*I(i,j,1)+0.587*I(i,j,2)+0.299*I(i,j,3)进行转换,其中i表示图像的行位置,j表示图像的列位置,f(i,j)表示转换后的灰度图像中第i行第j列的象素的灰度值,*是乘法运算符号,I(i,j,1),I(i,j,2)和I(i,j,3)分别表示彩色图像中第i行第j列的象素的R,G,B分量的值;
步骤3.对步骤2中所得到的灰度图像进行灰度图拉伸,具体方法为采用公式f(x)=tanh(cσx)]]>进行拉伸,其中x代表输入的灰度值,f(x)代表变换后的灰度值,tanh为双正切函数;σ表示灰度图像的均方差,c表示一个常数,此处取为2.4;灰度拉伸后得到一个灰度值均匀分布于0~255之间的灰度图像;步骤4.对步骤3中所得到的灰度图像进行垂直梯度计算,得到一个包含有车牌的车辆灰度图像的垂直灰度梯度图;具体方法为采用公式gV(i,j)=|f(i,j+1)-f(i,j)|进行垂直梯度计算,其中i表示图像的行位置,j表示图像的列位置,f(i,j)表示第i行第j列的象素的灰度值,f(i,j+1)表示第i行第j+1列的象素的灰度值,gV(i,j)表示第i行第j列的的垂直梯度值;步骤5.对步骤4中所得到的垂直灰度梯度图进行梯度水平投影,得到一个粗糙的梯度水平投影曲线;梯度水平投影的计算公式为TH(i)=Σj=1ngV(i,j),]]>其中gV(i,j)表示第i行第j列的垂直梯度值,TH(i)为第i行的投影值;步骤6.对步骤5中所得到的粗糙的梯度水平投影曲线进行高斯滤波,得到一个平滑的梯度水平投影曲线。滤波方法为采用公式TH′(i)=1k{TH(i)+Σj=1w[TH(i-j)h(j,σ)+TH(i+j)h(j,σ)]}]]>进行滤波。其中TH′(i)是滤波后的梯度水平投影值,i的变化范围是从1到n,n代表图像的高度;w表示了平滑区域的宽度大小,此处取8;h(j,σ)=exp(-j22σ2)]]>是高斯函数,k=2Σj=1wh(j,σ)+1,]]>σ表示灰度图像的均方差;TH(i)表示第i个梯度水平投影值,TH(i-j)表示第(i-j)个的梯度水平投影值TH(i+j)表示第(i+j)个梯度水平投影值;步骤7.对步骤6中所得到的平滑的梯度水平投影曲线进行梯度水平投影曲线扫描,得到较大的波峰值或波峰积分值较大的波峰在平滑的梯度水平投影曲线中的位置坐标;具体方法为从曲线的起点寻找波峰,找到波峰后计算该波峰积分值,同时记录下大的波峰值的位置和波峰积分值较大的波峰的位置坐标,如此搜寻直到曲线的终点;步骤8.利用步骤7中所得到的波峰位置坐标进行车牌粗定位运算,得到一个或多个车牌候选区域在包含有车牌的车辆图像中的位置坐标。具体方法为根据步骤7提供的曲线的较大的波峰值或波峰积分值较大的波峰的位置坐标来搜索和此述的波峰紧邻的左右两个波谷的位置坐标,左边波谷的位置坐标对应的是车牌在包含有车牌的车辆图像中的上边界的位置坐标,此处用top_boundary来表示车牌的上边界位置坐标,右边波谷的坐标对应的是车牌在包含有车牌的车辆图像中的下边界的位置坐标,此处用bot_boundary来表示车牌的下边界位置坐标;步骤9.利用步骤8中所得到的位置信息进行车牌粗切割处理,得到一个或多个车牌候选区域。具体方法为,首先,定义元素均为零的矩阵mask,mask的行数和列数分别与包含有车牌的车辆灰度图像矩阵的行数和列数一致;其次,把矩阵mask中位于第top_boundary行和bot_boundary行间的所有的列的元素全部置为1,其中top_boundary表示车牌在包含有车牌的车辆灰度图像中的上边界的坐标值,bot_boundary表示车牌在车辆图像中的下边界的坐标值;然后,把矩阵mask和车辆灰度图像矩阵中的具有相同坐标值的元素相乘,相乘后,车辆灰度图像矩阵中非车牌候选区域内的元素均为零,车牌候选区域内的元素值保持不变;最后,定义元素均为零的矩阵I_cut,矩阵I_cut的行数为bot_boundary-top_boundary,列数和车辆灰度图像矩阵的列数相等,把矩阵mask和车辆灰度图像矩阵相乘的结果矩阵中的非零元素赋给I_cut,矩阵I_cut就表示车牌候选区域;步骤10.对步骤9中所得到的车牌候选区域进行小波分析,得到四个车牌候选区域的子图像LL、LH、HL和HH。具体方法为,采用haar小波,利用Mallat快速小波分解算法对候选车牌区域进行小波分解,其中,Mallat快速小波分解流程图见附图1;步骤11.对步骤10中所得到的后三个车牌候选区域的子图像LH、HL和HH进行垂直梯度计算,得到三个垂直梯度图像;步骤12.对步骤11中所得到的三个垂直梯度图像的灰度值进行归一化,具体方法为采用公式n(i,j)=f(i,j)-min(f)max(f)*255]]>进行归一化,其中f(i,j)表示原来的函数值,n(i,j)表示归一化后的函数值,min(f)表示原函数f中的最小函数值,max(f)表示愿函数f中的最大函数值,255表示把原来的函数值归一化到0到255之间,255可以换成其它的数值,归一化处理后得到三个归一化的垂直梯度图像;步骤13.对步骤12中所得到的三个归一化的垂直梯度图像进行梯度对应相加运算,得到车牌的小波图像差分总和。具体方法为采用公式Dif_I(i,j)=|LH(i,j+1)-LH(i,j)|+|HL(i,j+1)-HL(i,j)|+|HH(i,j+1)-HH(i,j)|进行梯度对应相加运算,其中LH(i,j)表示LH子图的第i行第j列的归一化灰度值,LH(i,j+1)表示LH子图的第i行第j+1列的归一化灰度值,HL(i,j)表示HL子图的第i行第j列的归一化灰度值,HL(i,j+1)表示HL子图的第i行第j+1列的归一化灰度值,HH(i,j)表示HH子图的第i行第j列的归一化灰度值,HH(i,j+1)表示HH子图的第i行第j+1列的归一化灰度值,Dif_I(i,j)表示第i行第j列的车牌的小波子图差分总和;步骤14.利用步骤13中车牌候选区域的小波图像差分总和,进行车牌精确定位,得到车牌在车辆图像中的精确位置,即车牌的四个边界在车辆图像矩阵中的坐标值。具体方法为,从左往右,从上到下的寻找小波图像差分总和矩阵中元素值较大且这些较大的元素值形成一个较大的连通区域的区域,如果该连通区域的面积在一定值范围内,则认为所述的连通区域就是车牌,记录下该连通区域的上下左右四个边界的坐标值,这四个边界的坐标值就是车牌的四个边界在车辆灰度图像矩阵中的坐标值,并记为top,bot,left和right,其中top表示车牌的上边界在车辆灰度图像矩阵中的横坐标值,bot表示车牌的下边界在车辆灰度图像矩阵中的横坐标值,left表示车牌的左边界在车辆灰度图像矩阵中的纵坐标值,right表示车牌的右边界在车辆灰度图像矩阵中的纵坐标值;步骤15.利用步骤14中所得到的车牌精确位置进行车牌精确切割,得到准确的包含有可识别号码的车牌图像。具体方法为,首先,定义元素均为一的矩阵A1,矩阵A1的总列数为(right-left),矩阵A1的总行数为(bot-top).;其次把矩阵A1和车牌候选区域矩阵中的具有相同坐标值的元素对应相乘;然后,定义一个元素均为零的矩阵A0,其总列数为(right-left),其总行数为(bot-top).;最后把矩阵A1和车牌候选区域矩阵相乘结果矩阵中的非零元素值赋给矩阵A0中,得到一个准确的包含有可识别号码的车牌图像矩阵A0;步骤16.对步骤15中所得到的准确的车牌图像进行车牌颜色归一化处理,得到一个包含有可识别号码的具有黑色背景和白色号码的车牌图像;具体方法为,首先,统计车牌区域内的白色像素数和黑色象素数;其次比较黑色象素数和白色像素数;然后,如果白色象素数为多数,则进行灰度翻转,如果黑色象素数为多数则不做任何处理;步骤17.对步骤16中所得到的归一化车牌区域进行亮度增强,得到一个亮度增强了的包含有可识别号码的车牌图像。具体方法利用公式R(i,j)′=R(i,j)if R(i,j)>thresR(i,j)×0.4if R(i,j)≤thres]]>进行增强,其中R(i,j)表示车牌图像第i行第j列的灰度值,R′(i,j)表示变换后的第i行第j列的车牌的灰度值,thres是阀值,一般取车牌图像灰度值较大的20%个象素中的最小灰度值。
通过以上步骤,我们就从原始含有车牌的图像中提取出了增强后的车牌图像。
需要说明的是1.步骤2中如果采集到的包含有车牌的原始车辆图像是灰度图像,则不再做灰度转换处理。
2.步骤3中进行灰度拉伸的目的是为了增强包含有车牌的车辆灰度图像的对比度。
3.步骤4中的垂直梯度计算是因为车牌区域内的象素值变化快且集中,而且更明显的集中在垂直梯度方面。
4.步骤5中的梯度水平投影是因为车牌区域一定位于具有相当高的梯度密度值的小区域内,所以我们首先进行水平投影定位车牌的水平候选区域。
5.步骤7中搜索波峰的时候并不是所有满足波峰条件的波峰均采纳,只把那些值大于一定值且波峰所覆盖的面积满足一定值范围时才认为是波峰,波峰所大于的一定值和波峰所覆盖的面积所满足的一定值范围均为实验所得的经验值。
6.步骤8中车牌粗定位运算中,在搜索与满足条件的波峰紧邻的左右两个波谷时只把那些满足一定值范围的波谷认为是真波谷,由于曲线上的小起伏从而导致了假波峰的存在,真波谷所满足的一定值范围是通过实验得到的经验值。此外,粗定位运算中所得到的是车牌在包含有车牌的车辆图像中粗略位置,由于该步骤中是车牌的粗定位运算,故而有可能出现多个车牌候选区域的位置坐标。
7.步骤10中进行小波分析的结果中,LL表示小波分解结果中的低频子图像,它是原输入车牌候选区域的一个近似,其尺寸大小为原输入车牌候选区域的四分之一,LH表示小波分解结果中的在垂直方向的高频子图像,它突出了车牌候选区域中在垂直方向的高频信息,比如说车牌候选区域中的的水平直线,其大小为原输入车牌候选区域的四分之一,HL表示小波分解结果中的在水平方向的高频子图,它突出了车牌候选区域中在水平方向上的高平信息,比如说车牌候选区域中的垂直直线,其大小为原输入车牌候选区域的四分之一,HH表示小波分解结果中在对角线方向上的高频子图像,它突出了原输入车牌候选区域中在对角线方向上的高频信息,如车牌候选区域中的斜线,其大小为原输入车牌候选区域的四分之一。
8.步骤14中车牌精确位置处理中,只有在小波图像差分总和矩阵中元素值较大且这些较大的元素值能形成一个满足一定面积范围的连通区域的区域才认为是车牌区域,此处的一定面积范围是通过实验得到的经验值,如果矩阵中某些元素的值较大但并没有行成连通区域则它不是车牌,如果某些较大的值形成的连通区域小于一定面积范围则不是车牌,因为车牌在一辆车中的面积是具有一定大小的,尽管在拍摄车辆图像时由于摄像装置的倾斜角度,距离远近的变化和路面的高低不平而造成了车牌面积的变化,但其变化总是在一定范围内,不会太小,也不会太大,利用这个信息,就可以排除那些元素值较大但没有形成连通区域的点为车牌的可能性,同时也排除了那些元素值较大且形成了连通区域但其连通区域的面积小于或大于一定面积范围的区域为车牌的可能性,只有找到那些元素值较大且它们形成的连通区域的面积在一定值范围内的区域才是车牌区域,如果最终也没有找到满足一定面积范围的区域,则认为所拍摄的车辆图像中不含有车牌,经过这一步处理,同时把那些在粗定位处理中认为是车牌但事实上并不是车牌的区域去除掉,从而得到真正车牌的四个边界在车辆图像中的坐标值。
9.步骤17中,进行亮度增强的目的是使后续的车牌号码的分割和识别较为容易。
本发明通过小波分析提取车牌区域内的高频信息,准确的进行车牌提取;它是采用粗定位和精确定位相结合,在精确定位中采用小波分析的办法,并在精确定位后进行亮度和颜色的归一化处理,最终得到了一个具有统一背景和号码颜色的包含有可识别号码的车牌。采用本发明的车牌提取方法,不仅可以尽量多的提取车牌区域的高频信息,从而准确定位车牌,使方法的环境适应度大大提高;而且结合粗定位和精定位的方法也提高了方法的计算速度,满足了实时性的需要。
本发明的创新之处在于1.利用小波分析对候选区域进行高频信息(LH,HL,HH)提取,并且通过竖直差分总和Dif_I突出这些高频信息,然后通过扫描这些高频信息构成的特殊矩阵就可以找出准确的车牌图像。
2.提出了车牌粗定位和精确定位相结合的方法,以便提高方法的速度,满足车牌识别系统实时性的需要。首先利用原图像的垂直梯度图的水平投影粗略提取出少数几个车牌候选区域,然后再对这些候选区域应用小波分析方法提取出车牌图像的细节特征(即高频特征),并且突出这一特征,进而利用所得的高频特征二值图像进行车牌的精确定位。
3.由于最后的车牌位置是通过高频特征二值图像决定的,且这些高频信息与原始图像最多差一个象素,因此提取的准确度相当高,便于后续处理。


图1是快速小波变换分解的流程图;其中f(i,j)表示原始的输入图像,此处专指车牌候选区域,hψ(-n)表示低通滤波器,此处采用的haar小波,故hψ(-n)的具体参数设置为
,即hψ(-n)包含两个参数,第一个参数和第二个参数均为0.5;h(-n)表示高通滤波器,具体参数设置为[-0.5,0.5],即h(-n)包含两个参数,第一个参数为-0.5,第二个参数为0.5; 表示对经过滤波后的图像在图像数据矩阵的列方向上进行隔一抽样,即在列方向上每隔一个数据取一个数据; 表示对经过滤波后的图像矩阵在图像数据矩阵的行方向上进行隔二抽样,即在行方向上每隔一个数据取一个数据;LL表示经过小波分解后的低频方向上的图像,它是对原输入图像f(i,j)一个近似,其尺寸大小为原输入图像的四分之一;LH表示经过小波分解后的垂直方向上的高频图像,它突出了原输入图像在垂直方向的高频信息,而保留了水平方向上的缓变信息;HL表示经过小波分解后的水平方向上的高频图像,它突出了原输入图像在水平方向上的高频信息,而保留了垂直方向上的缓变信息;HH表示经过小波分解后的对角线方向上的高频图像,它突出了原图像中对角线方向上的高频信息。
图2是含有车牌的原始图像示意图;其中标注1表示车辆的挡风玻璃,标注2表示车辆的引擎盖,标注3表示安装车灯,悬挂车牌和和保险杆的区域,标注4表示车牌,标注5表示轮子,在标注4所表示的车牌中,大写字母A,B,C,D,E,F和G分别代表车牌的第一个,第二个,第三个,第四个,第五个,第六个和第七个号码,其中第二个号码和第三个号码的间距要稍大些。
图3是垂直梯度滤波后的水平投影曲线;其中纵坐标上的数值表示水平投影曲线的值,横坐标上的数值表示水平投影曲线的坐标值。
图4是最终得到的车牌图像示意图;其中,A,B,C,D,E,F和G分别表示车牌的第一个,第二个,第三个,第四个,第五个,第六个和第七个号码。
图5是本发明方法的流程图。
具体实施例方式
;采用本发明的方法,首先在高速公路的入口处,收费站和其他任何合适位置采用摄像装置自动拍摄车辆的原始图像;其次把拍摄到的车辆原始图像做为原数据输入到采用本发明的方法用Matlab语言编写的软件中进行处理;最终得到一幅包含有可识别号码的车牌图像。实验共采用353张实地拍摄的彩色车辆图像做为原数据,粗定位出348张,定位准确率为98.58%,精确定位出346张,定位准确率为98.02%,定位一幅包含有可识别号码的车牌图像仅需50ms。
综上所述,利用本发明的方法可以快速准确的从所提供的车辆原始图像中定位出包含有可识别号码的车牌图像。
权利要求
1.一种基于小波变换的复杂背景中的车牌提取方法,它包含下列步骤步骤1.将摄像装置安装于公路路口或者停车场的适当位置,在车辆进入摄像范围内后进行图像采集,得到含有车牌图像的原始图像;步骤2.对步骤1中所得到的原始图像进行灰度转换,得到一幅包含车牌的灰度图像;具体方法为采用公式f(i,j)=0.114*I(i,j,1)+0.587*I(i,j,2)+0.299*I(i,j,3)进行转换,其中i表示图像的行位置,j表示图像的列位置,f(i,j)表示转换后的灰度图像中第i行第j列的象素的灰度值,*是乘法运算符号,I(i,j,1),I(i,j,2)和I(i,j,3)分别表示彩色图像中第i行第j列的象素的R,G,B分量的值;步骤3.对步骤2中所得到的灰度图像进行灰度图拉伸,具体方法为采用公式f(x)=tanh(cσx)]]>进行拉伸,其中x代表输入的灰度值,f(x)代表变换后的灰度值,tanh为双正切函数;σ表示灰度图像的均方差,c表示一个常数,此处取为2.4;灰度拉伸后得到一个灰度值均匀分布于0~255之间的灰度图像;步骤4.对步骤3中所得到的灰度图像进行垂直梯度计算,得到一个包含有车牌的车辆灰度图像的垂直灰度梯度图;具体方法为采用公式gV(i,j)=|f(i,j+1)-f(i,j)|进行垂直梯度计算,其中i表示图像的行位置,j表示图像的列位置,f(i,j)表示第i行第j列的象素的灰度值,f(i,j+1)表示第i行第j+1列的象素的灰度值,gV(i,j)表示第i行第j列的的垂直梯度值;步骤5.对步骤4中所得到的垂直灰度梯度图进行梯度水平投影,得到一个粗糙的梯度水平投影曲线;梯度水平投影的计算公式为TH(i)=Σj=1ngV(i,j),]]>其中gV(i,j)表示第i行第j列的垂直梯度值,TH(i)为第i行的投影值;步骤6.对步骤5中所得到的粗糙的梯度水平投影曲线进行高斯滤波,得到一个平滑的梯度水平投影曲线;滤波方法为采用公式TH′(i)=1k{TH(i)+Σj=1w[TH(i-j)h(j,σ)+TH(i+j)h(j,σ)]}]]>进行滤波;其中TH′(i)是滤波后的梯度水平投影值,i的变化范围是从1到n,n代表图像的高度;w表示了平滑区域的宽度大小,此处取8;h(j,σ)=exp(-j22σ2)]]>是高斯函数,k=2Σj=1w(j,σ)+1,]]>σ表示灰度图像的均方差;TH(i)表示第i个梯度水平投影值,TH(i-j)表示第(i-j)个的梯度水平投影值TH(i+j)表示第(i+j)个梯度水平投影值;步骤7.对步骤6中所得到的平滑的梯度水平投影曲线进行梯度水平投影曲线扫描,得到较大的波峰值或波峰积分值较大的波峰在平滑的梯度水平投影曲线中的位置坐标;具体方法为从曲线的起点寻找波峰,找到波峰后计算该波峰积分值,同时记录下大的波峰值的位置和波峰积分值较大的波峰的位置坐标,如此搜寻直到曲线的终点;步骤8.利用步骤7中所得到的波峰位置坐标进行车牌粗定位运算,得到一个或多个车牌候选区域在包含有车牌的车辆图像中的位置坐标;具体方法为根据步骤7提供的曲线的较大的波峰值或波峰积分值较大的波峰的位置坐标来搜索和此述的波峰紧邻的左右两个波谷的位置坐标,左边波谷的位置坐标对应的是车牌在包含有车牌的车辆图像中的上边界的位置坐标,此处用top_boundary来表示车牌的上边界位置坐标,右边波谷的坐标对应的是车牌在包含有车牌的车辆图像中的下边界的位置坐标,此处用bot_boundary来表示车牌的下边界位置坐标;步骤9.利用步骤8中所得到的位置信息进行车牌粗切割处理,得到一个或多个车牌候选区域;具体方法为,首先,定义元素均为零的矩阵mask,mask的行数和列数分别与包含有车牌的车辆灰度图像矩阵的行数和列数一致;其次,把矩阵mask中位于第top_boundary行和bot_boundary行间的所有的列的元素全部置为1,其中top_boundary表示车牌在包含有车牌的车辆灰度图像中的上边界的坐标值,bot_boundary表示车牌在车辆图像中的下边界的坐标值;然后,把矩阵mask和车辆灰度图像矩阵中的具有相同坐标值的元素相乘,相乘后,车辆灰度图像矩阵中非车牌候选区域内的元素均为零,车牌候选区域内的元素值保持不变;最后,定义元素均为零的矩阵I_cut,矩阵I_cut的行数为bot_boundary-top_boundary,列数和车辆灰度图像矩阵的列数相等,把矩阵mask和车辆灰度图像矩阵相乘的结果矩阵中的非零元素赋给I_cut,矩阵I_cut就表示车牌候选区域;步骤10.对步骤9中所得到的车牌候选区域进行小波分析,得到四个车牌候选区域的子图像LL、LH、HL和HH;具体方法为,采用haar小波,利用Mallat快速小波分解算法对候选车牌区域进行小波分解,其中,Mallat快速小波分解流程图见附图1;步骤11.对步骤10中所得到的后三个车牌候选区域的子图像LH、HL和HH进行垂直梯度计算,得到三个垂直梯度图像;步骤12.对步骤11中所得到的三个垂直梯度图像的灰度值进行归一化,具体方法为采用公式n(i,j)=f(i,j)-min(f)max(f)*255]]>进行归一化,其中f(i,j)表示原来的函数值,n(i,j)表示归一化后的函数值,min(f)表示原函数f中的最小函数值,max(f)表示愿函数f中的最大函数值,255表示把原来的函数值归一化到0到255之间,255可以换成其它的数值,归一化处理后得到三个归一化的垂直梯度图像;步骤13.对步骤12中所得到的三个归一化的垂直梯度图像进行梯度对应相加运算,得到车牌的小波图像差分总和;具体方法为采用公式Dif_I(i,j)=|LH(i,j+1)-LH(i,j)|+|HL(i,j+1)-HL(i,j)|+|HH(i,j+1)-HH(i,j)|进行梯度对应相加运算,其中LH(i,j)表示LH子图的第i行第j列的归一化灰度值,LH(i,j+1)表示LH子图的第i行第j+1列的归一化灰度值,HL(i,j)表示HL子图的第i行第j列的归一化灰度值,HL(i,j+1)表示HL子图的第i行第j+1列的归一化灰度值,HH(i,j)表示HH子图的第i行第j列的归一化灰度值,HH(i,j+1)表示HH子图的第i行第j+1列的归一化灰度值,Dif_I(i,j)表示第i行第j列的车牌的小波子图差分总和;步骤14.利用步骤13中车牌候选区域的小波图像差分总和,进行车牌精确定位,得到车牌在车辆图像中的精确位置,即车牌的四个边界在车辆图像矩阵中的坐标值;具体方法为,从左往右,从上到下的寻找小波图像差分总和矩阵中元素值较大且这些较大的元素值形成一个较大的连通区域的区域,如果该连通区域的面积在一定值范围内,则认为所述的连通区域就是车牌,记录下该连通区域的上下左右四个边界的坐标值,这四个边界的坐标值就是车牌的四个边界在车辆灰度图像矩阵中的坐标值,并记为top,bot,left和right,其中top表示车牌的上边界在车辆灰度图像矩阵中的横坐标值,bot表示车牌的下边界在车辆灰度图像矩阵中的横坐标值,left表示车牌的左边界在车辆灰度图像矩阵中的纵坐标值,right表示车牌的右边界在车辆灰度图像矩阵中的纵坐标值;步骤15.利用步骤14中所得到的车牌精确位置进行车牌精确切割,得到准确的包含有可识别号码的车牌图像;具体方法为,首先,定义元素均为一的矩阵A1,矩阵A1的总列数为(right-left),矩阵A1的总行数为(bot-top).;其次把矩阵A1和车牌候选区域矩阵中的具有相同坐标值的元素对应相乘;然后,定义一个元素均为零的矩阵A0,其总列数为(right-left),其总行数为(bot-top).;最后把矩阵A1和车牌候选区域矩阵相乘结果矩阵中的非零元素值赋给矩阵A0中,得到一个准确的包含有可识别号码的车牌图像矩阵A0;步骤16.对步骤15中所得到的准确的车牌图像进行车牌颜色归一化处理,得到一个包含有可识别号码的具有黑色背景和白色号码的车牌图像;具体方法为,首先,统计车牌区域内的白色像素数和黑色象素数;其次比较黑色象素数和白色像素数;然后,如果白色象素数为多数,则进行灰度翻转,如果黑色象素数为多数则不做任何处理;步骤17.对步骤16中所得到的归一化车牌区域进行亮度增强,得到一个亮度增强了的包含有可识别号码的车牌图像;具体方法利用公式R′(i,j)=R(i,j)ifR(i,j)>thresR(i,j)×0.4ifR(i,j)≤thres]]>进行增强,其中R(i,j)表示车牌图像第i行第j列的灰度值,R′(i,j)表示变换后的第i行第j列的车牌的灰度值,thres是阀值,一般取车牌图像灰度值较大的20%个象素中的最小灰度值;通过以上步骤,我们就从原始含有车牌的图像中提取出了增强后的车牌图像。
全文摘要
本发明提供一种基于小波变换的复杂背景中的车牌提取方法,它是采用粗定位和精确定位相结合,在精确定位中采用小波分析的办法提取车牌区域内的高频信息,并在精确定位后进行亮度和颜色的归一化处理,最终得到了一个具有统一背景和号码颜色的包含有可识别号码的车牌。采用本发明的车牌提取方法,不仅可以尽量多的提取车牌区域的高频信息,从而准确定位车牌,使方法的环境适应度大大提高;而且结合粗定位和精定位的方法也提高了方法的计算速度,满足了实时性的需要。
文档编号G06T7/00GK101064011SQ20061002079
公开日2007年10月31日 申请日期2006年4月26日 优先权日2006年4月26日
发明者解梅, 刘大良 申请人:电子科技大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1