高效准确的车牌识别方法与流程

文档序号:11216932阅读:2193来源:国知局
高效准确的车牌识别方法与流程

本发明涉及智能交通技术领域,尤其涉及一种高效准确的车牌识别方法。



背景技术:

随着视频监控技术和深度学习技术的发展,智能交通系统成为未来交通系统的发展方向,可以缓解日益加剧的城市交通拥堵顽疾,减少交通违章和恶性交通事故现象,也为各类交通事故以及人身财产安全的事后处理提供有力的证据。而在这个过程中,车牌号码作为机动车特有的身份表征,起到了至关重要的作用,故车牌识别系统是智能交通系统的重要组成部分之一。

目前车牌识别的传统方法主要包括两个步骤,即字符分割和字符识别。对于字符分割,是指在车牌图片中,准确获取字符区域,为下一步的字符识别做准备。能否准确地分割字符区域,将直接影响车牌识别效果的好坏,是整个车牌识别算法的基础。对于字符识别,是指用模式识别的方法对字符分割获得的每个字符区域进行识别,获得最终的车牌字符信息,是整个车牌识别算法的关键。下面分别从字符分割和字符识别两个方面介绍相关的研究工作。

在针对字符分割的研究中,目前常用的方法主要有基于投影的方法和基于连通域的方法。在专利《一种基于积分特征通道与灰度投影的车牌识别系统》中,采用基于投影的方法,根据车牌的灰度投影曲线图和波峰波谷的情况对字符进行分割。在专利《一种车牌识别方法》中,采用基于连通域的方法,对车牌图片进行二值化操作之后进行连通域标记,然后根据连通域分析得到字符区域。上述方法都是针对车牌较为清晰、光照均匀等简单场景,如停车场、收费站等。如果直接应用在交通监控等场景,光照不均匀、车牌污损、背景复杂等环境因素将会严重影响字符分割算法的效果,会导致基于投影的方法中所得到的灰度曲线波峰波谷不明显或有多余的波峰波谷,会导致基于连通域的方法中的二值化图像发生黏连,直接导致无法正确分割字符,进而导致字符识别出错。可见,现有方法对环境因素过于敏感,鲁棒性较差,无法用于交通监控等复杂场景中。

在针对字符识别的研究中,目前常用的传统方法主要有基于模板匹配的方法和基于特征分类器的方法。在专利《一种车牌识别方法》中,采用基于模板匹配的方法,建立字符模板库与待识别字符进行匹配,寻找最相似的字符。在专利《一种基于混合特征与灰度投影的车牌识别方法》中,人工设计了联合hog特征,使用预先训练好的svm进行分类。基于模板匹配的方法对环境因素过于敏感,车牌的污损和光照变化会直接影响模板匹配的效果,而且该算法需要与模板库中的每一个字符进行匹配,再选取最相似的一个,算法效率较低。而人工设计特征的方法中设计过程过于繁琐,针对不同的使用场景需要设计不同的特征,算法鲁棒性较差,而且复杂特征的计算代价高,算法效率较低。

随着深度学习技术的成熟,车牌识别技术开始与深度学习算法相结合。在《一种基于深度卷积神经网络的车牌识别方法》专利中,使用深度自编码器对字符进行识别。在《一种基于卷积神经网络的中文车牌识别方法》专利中,使用卷积神经网络对字符进行识别。使用深度学习的方法进行字符识别,可以一定程度上提升车牌识别算法的鲁棒性和准确性。然而上述的传统方法和基于深度学习的方法,都仍存在较大的技术瓶颈。首先,字符识别算法的效果直接受字符分割算法效果的影响,由上述分析可知,目前的字符分割效果应用于复杂场景时并不理想。其次,对于车牌的每一个字符都需要调用字符识别算法,这大大降低了车牌识别算法的效率。



技术实现要素:

本发明的目的是提供一种高效准确的车牌识别方法,大大提高了车牌识别的鲁棒性和效率。

本发明的目的是通过以下技术方案实现的:

一种高效准确的车牌识别方法,包括:

对输入的车牌图片进行车牌紧致化处理,获得紧致的车牌图片;

使用预先训练好的全卷积神经网络模型进行车牌整体识别,获得紧致的车牌图片中每一个像素点字符类别的预测结果,形成标签得分矩阵;

对标签得分矩阵进行分析,获得最终的车牌字符串信息。

所述对输入的车牌图片进行车牌紧致化处理,获得紧致的车牌图片包括:

对输入的车牌图片进行灰度化处理,再计算x方向和y方向的梯度图,并相应的进行x方向和y方向的投影,获得投影曲线;

结合投影曲线与预先设置的阈值来计算感兴趣区域的边界,将四周小于阈值的部分剔除,实现对车牌图片中背景部分的裁剪,并将裁剪后车牌图片的大小调整至与车牌长宽比相近的固定尺寸,最终获得紧致的车牌图片。

利用标定好的车牌识别数据训练全卷积神经网络模型,其包括:

收集各个省份的车牌图片并进行车牌紧致化处理后作为样本,然后为每个样本制作相应的标签矩阵,标签矩阵中的每个元素表示了对应像素点的字符类别;再使用深度学习框架,建立全卷积神经网络模型;

以样本和相应的标签矩阵组成数据对,通过反向传播算法以及梯度下降策略,使得损失函数最小化,最终得到训练好的全卷积神经网络模型。

所述使用预先训练好的全卷积神经网络模型进行车牌整体识别,获得紧致的车牌图片中每一个像素点字符类别的预测结果,形成标签得分矩阵包括:

将紧致的车牌图片输入训练好的全卷积神经网络模型的输入层,然后全卷积神经网络模型进行前向传播,最终得到一个m×n×c的标签得分矩阵;其中,m与n为车牌图片尺寸,c为标签类别数目;

标签得分矩阵中每一个元素代表了对应像素点所属不同字符类别的得分。

所述对标签得分矩阵进行分析,获得最终的车牌字符串信息包括:

将标签得分矩阵中,每一像素点得分最高的字符类别作为相应像素点的字符类别标签,得到标签矩阵l,再将标签矩阵l分成s个对应字符标签的二值图;

对每一二值图进行字符类别块分析,获得一系列的字符图像块的标记,过滤掉大小与宽度小于设定值,以及不符合字符几何特征的字符图像块之后,获得字符图像块序列;

记录下每一个字符图像块的平均横坐标以及对应的字符类别,将字符类别按照平均横坐标从小到大进行排列,从而初步获得字符串序列;

若字符串序列的长度为预定值,即满足车牌的字符数量,则将字符串序列按字符图像块平均横坐标从小到大排列,从而获得最终的车牌字符串信息。

该方法还包括:

若所得到字符串序列长度不等于预定值,则获取每一个字符图像块的宽度,再按宽度从大到小的顺序依次对字符图像块进行字符精细化分析,分析结果采用联合投票策略进行判断,直至字符总数等于预定值或者所有的字符图像块均进行了字符精细化分析。

字符精细化分析包括如下三种方法:

第一种方法:预先统计车牌图片中每一字符的平宽度,根据字符图像块的宽度和字符类别,确定相应字符类别的平均宽度,从而确定字符图像块中的字符数num1;

第二种方法:对紧致的车牌图片进行阈值化处理获得阈值图,根据字符图像块的边界,在阈值图中截取感兴趣区域;对感兴趣区域进行轮廓查找的操作,并过滤掉大小与宽度小于预设值以及不符合字符几何特征的轮廓之后,获得相应的轮廓数,并将其作为字符图像块的字符数num2;

第三种方法:对第二种方法中的感兴趣区域进行竖直方向的投影获得投影曲线,然后针对不同类型的字符,使用不同阶次的多项式函数进行拟合,再统计波峰的数目,并将其作为字符图像块的字符数num3。

根据字符精细化分析得到的三个字符数,采用联合投票策略,来最终确定图像块中的字符数:若字符数num1~num3中某个数值占多数,则认为字符个数为相应数值;若字符数num1~num3各不相同,则考察字符数num2和num3,与字符数num1之间的距离,取距离最小的数值作为字最终的字符个数;若最终的字符个数不等于预定值,则继续处理下一宽度大小的字符图像块,直到所处理的字符图像块包含的字符总数等于预定值或者所有的字符图像块均进行了字符精细化分析。

由上述本发明提供的技术方案可以看出,无需进行字符分割,避免了现有方法在分割字符时鲁棒性差的问题;其次,本发明使用全卷积神经网络进行车牌识别,只需进行一次识别过程,算法效率高,且在识别过程中结合了车牌完整的上下文信息,大大提高了识别的准确度和鲁棒性;最后,本发明在进行标签矩阵分析时,针对不同的车牌和不同的字符进行差异化处理,进一步提高了算法的鲁棒性和适用性。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他附图。

图1为本发明实施例提供的一种高效准确的车牌识别方法的流程图;

图2为本发明实施例提供的车牌紧致化处理的流程图;

图3为本发明实施例提供的分析标签得分矩阵的流程图;

图4为本发明实施例提供的两种字符精细化分析方法的流程图。

具体实施方式

下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明的保护范围。

为了解决现有车牌识别算法鲁棒性差、效率较低的问题,使得车牌识别算法可应用于复杂交通监控场景,本发明实施例提供了一种高效准确的车牌识别方法,该方法不需要进行字符分割,使得算法鲁棒性更强,适合于在复杂场景中使用。同时,使用全卷积神经网络,针对单个车牌只进行一次识别过程,无需进行字符分割处理,解决了现有方法在进行字符分割时对环境干扰过于敏感的问题,以及字符识别算法反复调用导致的效率低下问题,大大提高了算法的鲁棒性和效率。进一步,为了提高算法对复杂场景的适应性,在进行标签矩阵分析时使用多种方法和联合投票策略,使得车牌识别算法在光照不均、背景噪声过多、运动模糊等环境干扰下仍能准确高效地运行,可以在复杂场景下使用。

如图1所示,为本发明实施例提供的一种高效准确的车牌识别方法的流程图,主要过程如下:首先,对输入的车牌图片进行车牌紧致化处理,获得紧致的车牌图片;然后,使用预先训练好的全卷积神经网络模型进行车牌整体识别,获得紧致的车牌图片中每一个像素点字符类别的预测结果,形成标签得分矩阵;对标签得分矩阵进行分析,获得最终的车牌字符串信息。

为了便于理解,下面针对上述各个步骤做详细的介绍。

一、车牌紧致化处理。

车牌紧致化处理的流程如图2所示,首先对输入的车牌图片进行灰度化处理,再计算x方向和y方向的梯度图,并相应的进行x方向和y方向的投影,获得投影曲线;然后,结合投影曲线与预先设置的阈值来计算感兴趣区域的边界,将四周小于阈值的部分剔除,实现对车牌图片中背景部分的裁剪,并将裁剪后车牌图片的大小调整至与车牌长宽比相近的固定尺寸,最终获得紧致的车牌图片。

示例性的,可以将裁剪后的车牌图片调整至50×160的大小。

二、全卷积神经网络模型训练与像素级车牌识别。

1、建立与训练全卷积神经网络模型。

本发明实施例中,可以利用标定好的车牌识别数据,预先训练全卷积神经网络模型,相关过程如下:收集各个省份的车牌图片并进行车牌紧致化处理后作为样本,然后为每个样本制作相应的标签矩阵,标签矩阵中的每个元素表示了对应像素点的字符类别;再使用深度学习框架,建立全卷积神经网络模型;以样本和相应的标签矩阵组成数据对,通过反向传播算法以及梯度下降策略,使得损失函数最小化,最终得到训练好的全卷积神经网络模型。

示例性的,制作样本时的字符类别总共有65类,车牌汉字字符主要包括22个省、5个自治区和4个直辖市的简称,总共31类;数字字符为0-9的10类;字母字符为a-z(不包含i和o)的24类。

2、像素级车牌识别。

本发明实施例中,使用训练好的全卷积神经网络模型,对紧致的车牌图像进行字符序列的整体识别,获得像素级的字符类别标签,形成标签得分矩阵。具体的如下:将紧致的车牌图片输入训练好的全卷积神经网络模型的输入层,然后全卷积神经网络模型进行前向传播,最终得到一个m×n×c的标签得分矩阵;其中,m与n为车牌图片尺寸,c为标签类别数目。标签得分矩阵中每一个元素代表了对应像素点所属不同字符类别的得分。

三、标签得分矩阵分析。

分析过程如图3所示,首先,将标签得分矩阵中,每一像素点得分最高的字符类别作为相应像素点的字符类别标签,得到标签矩阵l,再将标签矩阵l分成s个对应字符标签的二值图;第i个二值图记为li,如果某个像素点属于第i字符标签,则值为1,不是则值为0,表示为l(x,y)=i,则li(x,y)=1,否则li(x,y)=0。示例性的,因为有65个字符类别,故选取s为65。

对每一个二值图进行字符类别块分析,获得一系列的字符图像块的标记,过滤掉大小与宽度小于设定值,以及不符合字符几何特征的字符图像块之后,获得字符图像块序列;

记录下每一个字符图像块的平均横坐标以及对应的字符类别,将字符类别按照平均横坐标从小到大进行排列,从而初步获得字符串序列;

若字符串序列的长度为预定值,即满足车牌的字符数量,则将字符串序列按字符图像块平均横坐标从小到大排列,从而获得最终的车牌字符串信息。

若所得到字符串序列长度不等于预定值,则获取每一个字符图像块的宽度,再按宽度从大到小的顺序依次对字符图像块进行字符精细化分析,分析结果采用联合投票策略进行判断,直至字符总数等于预定值或者所有的字符图像块均进行了字符精细化分析。

示例性的,根据国内车牌规范中的字符个数,所述预定值为七;但如果车牌类型(如双行车牌、国外车牌)的字符数不是七,则预定值适应性改为其他数值。图3中为了便于讲解,预定值取为七。

本发明实施例中,字符精细化分析包括如下三种方法:

第一种方法,即基于统计宽度的方法,其过程如下:预先统计车牌图片中每一字符的平宽度,根据字符图像块的宽度和字符类别,确定相应字符类别的平均宽度,从而确定字符图像块中的字符数num1;

第二种方法,即基于轮廓查找的方法,其过程如下:对紧致的车牌图片进行阈值化处理获得阈值图,根据字符图像块的边界,在阈值图中截取感兴趣区域;对感兴趣区域进行轮廓查找的操作,并过滤掉大小与宽度小于预设值以及不符合字符几何特征的轮廓之后,获得相应的轮廓数,并将其作为字符图像块的字符数num2;

第三种方法,即基于投影分析的方法,其过程如下:对第二种方法中的感兴趣区域进行竖直方向的投影获得投影曲线,然后针对不同类型的字符,使用不同阶次的多项式函数进行拟合,再统计波峰的数目,并将其作为字符图像块的字符数num3。示例性的,对字符“6”使用十阶的多项式函数进行拟合。

基于轮廓查找的方法与基于投影分析的方法的实施流程如图4所示,图4中的阈值图以及对阈值图进行后续处理所涉及的相关图片虽然有一定的模糊,但是图4主要是针对“基于轮廓查找的方法与基于投影分析的方法”的流程进行介绍,所包含的模糊图片仅用于示意并非构成限制,当然也不会影响本发明的完整性。

本发明实施例中,根据字符精细化分析得到的三个字符数,采用联合投票策略,来最终确定图像块中的字符数:若字符数num1~num3中某个数值占多数,则认为字符个数为相应数值;若字符数num1~num3各不相同,则考察字符数num2和num3,与字符数num1之间的距离,取距离最小的数值作为字最终的字符个数;若最终的字符个数不等于预定值,则继续处理下一宽度大小的字符图像块。

如图3所示,第一次做精细化分析与精细化分析时是针对宽度最大的字符图像块(即字符区域),如最终获得的字符个数不为七,则继续处理宽度第二大的字符图像块,直到所处理的字符图像块所包含的字符总数等于七或者所有的字符图像块均进行了字符精细化分析。

本领域技术人员可以理解,本文所涉及的阈值、设定值、预设值及预定值均可根据实际情况或者经验来确定。

本发明实施例上述方案,无需进行字符分割,避免了现有方法在分割字符时鲁棒性差的问题;其次,本发明使用全卷积神经网络进行车牌识别,只需进行一次识别过程,算法效率高,且在识别过程中结合了车牌完整的上下文信息,大大提高了识别的准确度和鲁棒性;最后,本发明在进行标签矩阵分析时,针对不同的车牌和不同的字符进行差异化处理,进一步提高了算法的鲁棒性和适用性。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例可以通过软件实现,也可以借助软件加必要的通用硬件平台的方式来实现。基于这样的理解,上述实施例的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是cd-rom,u盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。

以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明披露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。

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