一种车牌图像倾斜校正方法与流程

文档序号:11729804阅读:740来源:国知局
一种车牌图像倾斜校正方法与流程

本发明涉及数字图像处理技术领域,具体为一种车牌图像倾斜校正方法。



背景技术:

近年来,随着车辆的不断增加,车牌号作为汽车唯一的“id”,如何实现汽车车牌号的自动识别逐渐成为人们的研究热点。车牌识别技术也被广泛应用在交通管理、公共安全等。如高速公路、国道、省道、城市道路及城市出入口监控;交通流量检测等;车辆安全防盗、查堵指定车辆;肇事车辆、被盗车辆、犯罪车辆的辨识和拦截等。

车牌识别技术主要分为车牌定位、字符分割、字符识别三大模块。由于采集图片的摄像头拍摄角度与车辆位置的不同,可能会导致拍摄出的车牌存在倾斜,而存在倾斜的车牌直接影响字符分割与字符识别的准确率。如何有效的校正倾斜车牌图片,就成了提高车牌识别准确率的必不可少的步骤。车牌倾斜分为水平倾斜、垂直倾斜和混合倾斜三种,如何有效的实现这三种倾斜情况的校正,是成功校正倾斜车牌的主要问题。

现有车牌识别技术提出的车牌倾斜校正方法大部分只对车牌进行水平方向的倾斜校正,或者在校正之前不会对车牌是否倾斜进行判定。而实际应用情况中,存在车牌倾斜的车牌只是占拍摄图像总数的小部分,通过在校正之前判定车牌是否倾斜可以大大提高校正的总体速率。已有的车牌校正方法包括:

1)专利一种基于最小二乘的车牌校正方法(申请号:201410598697.7),该方法:通过多次形态学运算获取边缘连通区域,在去除异常的边缘连通区域后,基于最小二乘原理获取车牌的最佳倾斜角度。但此种方法未对存在垂直倾斜的车牌进行处理,且该方法并未对车牌是否倾斜进行判定。

2)pan等人提出将图像分块求取方向场,通过方向角度直方图求取车牌的水平方向倾斜角度。垂直倾斜角度根据上下两部分投影固有特性求取,然而对于过度倾斜,干扰因素多的车牌该方法会失效,且该方法并未对车牌是否倾斜进行判定。详见文献:panr,max,wangl.“anefficientmethodforskewcorrectionoflicenseplate[c]”educationtechnologyandcomputerscience,internationalworkshoponieee,pp.90-93,2010。



技术实现要素:

本发明提供了一种车牌图像倾斜校正方法,旨在解决由于采集车牌图片的摄像头拍摄角度与车辆位置的不同而导致拍摄车牌图像倾斜的问题,以此提高车牌图像字符分割、识别准确率。

本发明的技术方案包括如下步骤:

(1)根据定位好的车牌图像进行预处理;

(2)根据指定区域内每行第一跳变点的坐标位置确定车牌是否水平倾斜;

(3)根据倾斜判定结果对倾斜图片求取水平方向的倾斜角度,并基于插值法实现车牌的水平旋转校正;

(4)去除水平校正后车牌图片的上下左右边框;

(5)根据车牌单个字符或整个字符宽度与车牌高度的固定比值先验知识判定车牌是否垂直倾斜;

(6)根据水平校正结果求取垂直方向倾斜角度,并基于插值法实现车牌的垂直旋转校正。

作为优选,所述对定位车牌图像进行预处理,包括:对彩色图像进行灰度化;对灰度化进行二值化。

作为优选,所述根据指定区域内每行第一跳变点的坐标位置确定车牌是否水平倾斜的步骤包括对预处理后得到的二值化车牌图片分为上中下三个等高区域,标记指定字符区域内每行的第一个跳变点作为样本点,其中指定字符区域为从第一个字符的大致中间位置到车牌的最右端;计算上下两个区域所有样本点的宽度位置均值;根据这两个区域的宽度位置均值判断是否倾斜。

作为优选,根据这两个区域的宽度位置均值进行判定进一步包括:为了去除铆钉干扰信息影响,一般取铆钉位置之后的位置为判定是否倾斜的位置。

作为优选,所述根据倾斜判定结果对倾斜图片求取水平方向的倾斜角度,并基于插值法实现车牌的水平旋转校正具体包括:

对于二值化车牌图片进行背景色统一,统一车牌为黑底白字;

对背景色统一后的车牌进行水平投影,记录低于指定阈值th1的波谷,去除相邻之间波谷区域低于阈值th2的干扰区域;

标出每个未被排除的相邻波谷之间区域的每列的第一个和最后一个黑白跳变点,只留下每个区域跳变点中高度值最高的三个点与高度值最低的三个点;

将标记样本点的图片分为上下两个部分,分别用hough变换来检测上下两个部分的直线的倾斜角度;

当上下两部分的倾斜角度绝对值差小于3时则判定角度求取成功,取上下两部分倾斜角度的均值为输出的倾斜角度,反之,则用radon变换求取车牌的倾斜角度;基于双线性插值法实现车牌指定角度的旋转校正。

作为优选,去除车牌的上下左右边框具体包括:

对二值化图片投影,记录第一个波谷与第二个波谷之间的距离,若其宽度值低于阈值th,则去除第二个波谷之外的区域,以此去除左右边框;

将水平校正二值化后的车牌分别从中间行向图像上下两部分扫描,记录每行的黑白跳变次数,向上扫描当某行的跳变次数小于5时则去除该行之上的图像部分,向下扫描当某行的跳变次数小于5时则去除该行之下的图像部分;

提供一种如上所述的方法,所述根据车牌字符与字符高度比的先验知识判定车牌是否存在垂直倾斜具体包括:对去除边框后的二值化图片投影;

从左至右找到每个字符的大致位置及字符宽度;

记录低于指定阈值th1的波谷,去除相邻之间波谷区域即字符区域低于阈值th2的干扰区域,并记录符合要求的字符区域数;

若字符区域数大于4取所有字符宽度值中的中间值作为字符的宽度值w,反之则有可能是垂直倾斜角度过大,导致字符区域重叠,这时取第一个波谷到最后一个波谷的宽度值作为整个车牌区域的宽度值,根据车牌区域宽度值与字符区域宽度值固定比值,确定字符宽度值;

正常车牌的字符高度值与字符宽度值的比值为2,因此此处将h/w<2则判断车牌存在垂直倾斜。

作为优选,当判断车牌图像存在垂直倾斜,所述根据去边框车牌图片求取垂直方向倾斜角度,并基于插值法实现车牌的垂直旋转校正具体包括:采用radon变换求取车牌的垂直倾斜角度;采用插值法实现车牌的垂直旋转校正。

本发明的有益效果在于:

本发明提供的车牌图像倾斜校正方法和装置,与现有的技术相比,通过在校正之前对车牌图像进行倾斜判定,可以减少非倾斜图像的倾斜校正,提高车牌识别效率,同时,采用上下两部分区域的线性估计求取倾斜角度,可以减少干扰信息对正确求取车牌倾斜角度的影响,提高车牌倾斜校正的准确率。且本算法对于有无边框的车牌都适用。

附图说明

图1为本发明实施例中一种车牌倾斜校正方法流程图;

图2为本发明实施例中一种车牌水平倾斜判定方法流程图;

图3为本发明实施例中一种水平倾斜校正方法流程图;

图4为本发明实施例中的垂直倾斜判定的流程图;

具体实施方式

以下结合附图详细描述本发明的实施例。

本实施例所述方法的详细步骤如下:

如图1为本发明实施例提供的一种车牌倾斜校正方法流程图:

s101、根据定位好的车牌图像进行预处理;

具体来说,采用加权平均值法对彩色图像进行灰度化,对灰度化车牌图片采用otsu(局部最大内间阈值法)进行二值化。

s102、根据指定区域内每行第一跳变点的坐标位置确定车牌是否水平倾斜;

s103、根据倾斜判定结果对倾斜图片求取水平方向的倾斜角度,并基于插值法实现车牌的水平旋转校正;

s104、去除水平校正后车牌图片的上下左右边框;

s105、根据车牌字符宽高固定比值先验知识判定车牌是否垂直倾斜;

s106、根据水平校正结果求取垂直方向倾斜角度,并基于插值法实现车牌的垂直旋转校正。

具体的,如图2为本发明实施例提供的一种车牌水平倾斜判定方法流程图:

s201、划分二值图像为上中下三个等高区域,具体来说这三个区域的高度皆为车牌高度的1/3;

根据无倾斜车牌的边框及字符的最高最低点必然在同一直线上导致字符区域内每行的第一个跳变点必在第一个字符宽度区域内;

根据存在倾斜的车牌因存在倾斜而导致车牌字符区域内某些行的第一个跳变点不在第一个字符宽度区域内而是因角度的不同存在相应的字符区域内;

s202、标记上下两个区域每行的第一个黑白跳变点记录其所在位置;

具体来说,假设每个跳变的位置为(xi,yi),其中xi为第i行宽度位置,yi为第i行高度位置;

s203、统计上下两个区域标记点的宽度位置均值;

具体来说,上下两个区域标记点宽度位置均,定义为:

其中up_w为上部分区域每行跳变点宽度位置均值,down_w为下部分区域每行跳变点宽度位置均值,其中h为车牌高度,xi为第i行宽度位置;

s204、通过均值判定是否存在水平倾斜;

具体来说,可以根据公式(2)计算得到判定结果;

其中resul_level为水平倾斜判定结果,当其值为1时则判定存在倾斜,值为0时则判定车牌不存在水平倾斜,w_th为指定阈值。

需要说明的是,根据无倾斜第一跳变点位置及铆钉跳变点位置皆在第二个字符内,而车牌高度一般为字符宽度的两倍,因此设定阈值w_th在[h,1.5*h]之间,根据具体实验经验值设定w_th的值。

需要说明的是,s202所标记的车牌二值化图每行第一跳变样本点示意图如图3所示。

具体的,如图4为本发明实施例提供的一种车牌水平倾斜校正方法流程图:

s301、对于二值化车牌图片进行背景色统一,统一车牌为黑底白字,并对二值化图像进行垂直投影;

s302、从左向右扫描第i列投影值ci,若ci小于阈值th1且又为波谷位置,则记录该点位置left_i,以此规则在遍历找到其相邻波谷点,记录该点位置right_i,若right_i-left_i>0.25*h则判断该区域为候选区域,标记该区域中由上往下每列的第一跳变点中的最高三个点,同理由下往上扫描标记每列的跳变点中的最高三个点,以此列推找到所有符合要求的候选区域并标记符合要求样本点;

具体来说,阈值th1的值定义为:

th1=1/9*h(3)

具体来说,阈值th2的值定义为:

其中max_p为投影值中的最大值,average_p为投影值均值;

s303、将标记样本点的图片分为上下两个部分,分别用hough变换来检测上下两个部分的直线的倾斜角度;

具体来说,hough变换原理,采用极坐标(ρ,θ)作为变换空间,其极坐标方程如下:

ρ=xcosθ+ysinθ

其中ρ为原点到这条直线的距离,θ为发现与x轴的夹角;

落在直线上的每一样本点对应极坐标一条曲线。θ的范围取到(-20°,20°),ρ的范围取到(-d,d),d为图像对角线长度。

落在(ρ0,θ0)所对应的直线上的样本点最多,则θ0为水平倾斜角度。

s304、判定图像上下两部分线性估计角度的绝对差值是否小于3;

s305、取上下两部分倾斜角度的均值为输出的倾斜角度,反之,则用radon变换求取车牌的倾斜角度;

s306、基于线性插值法进行水平旋转校正。

进行水平校正后的车牌图像,进一步地,去除车牌的上下左右边框;

具体来说,首先去除上下边框,将水平校正二值化后的车牌分别从中间行向图像上下两部分扫描,记录每行的黑白跳变次数,向上扫描当某行的跳变次数小于5时则去除该行之上的图像部分,向下扫描当某行的跳变次数小于5时则去除该行之下的图像部分;

进一步地,去除车牌左右边框,对二值化图片投影,记录第一个波谷与第二个波谷之间的距离,若其宽度值低于阈值th1且其右边邻近的第一个字符宽度大于车牌高度的一半,则去除第二个波谷之外的区域,以此去除左右边框;

如图4为本发明实施例提供的一种车牌倾斜校正方法流程图:

s501、对去除边框后的二值化图片投影,从左至右找到每个字符的大致位置及字符宽度;

s502、排除字符宽度小于阈值th的字符宽度值;

s503、取所有字符宽度值中的中间值作为字符的宽度值width,其表达式如下:

w=median(w1,…wi)(4)

其中wi代表第i个字符宽度;

若i小于5则有可能是垂直倾斜角度过大,导致字符区域重叠,这时取第一个波谷到最后一个波谷的宽度值作为整个车牌区域的宽度值,根据车牌区域宽度值与字符区域宽度值固定比值,具体来说字符宽度值表达式如下:

其中width为整个字符区域宽度;

s504、正常车牌的字符高度值与字符宽度值的比值为2,因此此处将h/w<2则判断车牌存在垂直倾斜;

进一步地,当判断车牌图像存在垂直倾斜,所述根据去边框车牌图片求取垂直方向倾斜角度,并基于插值法实现车牌的垂直旋转校正具体包括:

采用radon变换求取车牌的垂直倾斜角度;

具体来说,radon变换原理,在某一角度θ,对每个y′沿着平行于x′轴进行线积分。积分公式如下:

其中

对车牌进行-90度到+90度的radon变换;

具有最大投影值的角度为倾斜角度。

采用插值法实现车牌的垂直旋转校正。

以上仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1