1.本发明涉及车牌检测和识别领域,尤其涉及一种端到端的高效精确车牌检测和识别方法。
背景技术:
2.现有的车牌检测与识别方法分为多阶段的车牌检测识别方法与单阶段的车牌检测识别方法。目前多数车牌检测与识别方法采用多阶段的方法,其主要缺点是分离检测与识别两个任务,对整个方法的准确性与时间效率有很大影响。单阶段方法基于神经网络,通过统一的网络模型完成车牌检测与识别,此方法使用更少的参数将检测与识别任务联系起来,具有更好的精度与效率,但普遍难度较大。
3.多阶段方法包含车牌检测算法用于定位图像中的车牌区域,车牌分割算法来用于对车牌字符进行分割,车牌识别算法用于对完成分割的字符进行字符识别。主要分为基于传统方法和基于深度学习的方法。
4.传统的车牌检测与识别算法因其特征提取方式的局限性,不能提取足够丰富的特征信息,因而在准确率上受到限制且泛化性能较差。而现有的基于深度学习的车牌检测与识别算法在准确度上取得了一定的优势,但复杂的结构会降低网络的效率。
5.目前已有少量的研究工作开始尝试使用单阶段车牌检测与识别。与多阶段的算法相比,单阶段的算法能更好的利用车牌检测与车牌识别高度相关的特点,同时减少模型的参数,使算法更快更有效。但现有的基于深度学习的端到端的车牌检测与识别算法仍然受限于网络深度造成的时间长、效率低等问题。
技术实现要素:
6.本发明提供一种端到端的高效精确车牌检测和识别方法,以克服现有的车牌检测与识别效率低等技术问题。
7.为了实现上述目的,本发明的技术方案是:
8.一种端到端的高效精确车牌检测和识别方法,其特征在于,包括以下步骤:
9.步骤1、采集车牌图像,并输入到车牌检测模块;
10.步骤2、车牌检测模块通过卷积神经网络提取车牌图像中浅层特征和车牌边框特征,构成车牌边框特征图;
11.步骤3、车牌边框特征图通过全连接层回归出车牌边界坐标;
12.步骤4、车牌识别模块共享车牌检测模块提取的浅层特征,并通过卷积操作得到车牌图像的字符特征,形成两组字符联合特征图;
13.步骤5、两组字符联合特征图和车牌边框特征图通过感兴趣区域池化操作后被拼接,得到字符关键区域特征;
14.步骤6、字符关键区域特征通过分类器识别后获得识别后车牌号码。
15.进一步的,车牌检测模块共有7个卷积层,第一卷积层输入为车牌图像并卷积输出
第一车牌边框特征图,并传输给第二卷积层,第二卷积层卷积第一车牌边框特征图并输出第二车牌边框特征,并传输给第三卷积层,第三卷积层卷积第二车牌边框特征图并输出第三车牌边框特征,并传输给第四卷积层,第四卷积层卷积第三车牌边框特征图并输出第四车牌边框特征,并传输给第五卷积层,第五卷积层卷积第四车牌边框特征图并输出第五车牌边框特征,并传输给第六卷积层,第六卷积层卷积第五车牌边框特征图并输出第六车牌边框特征,并传输给第七卷积层,第七卷积层卷积第六车牌边框特征图并输出第七车牌边框特征。
16.进一步的,所述步骤2还包括:卷积神经网络中第七卷积层输出的第七车牌边框特征为字符特征的注意参数,用于辅助车牌识别模块定位字符特征。
17.进一步的,车牌识别模块包括第一识别卷积层和第二识别卷积层,车牌识别模块共享车牌检测模块提取的浅层特征,利用第一识别卷积层和第二识别卷积层提取车牌图像的字符特征,形成第一字符特征图和第二字符特征图。
18.进一步的,车牌检测模块中卷积神经网络的第一卷积层中的第一车牌边框特征图被选择作为车牌识别模块中第一识别卷积层的输入信息,卷积形成第一字符特征图;车牌检测模块中卷积神经网络的第三卷积层中的第三车牌边框特征图被选择作为车牌识别模块中第二识别卷积层的输入信息,卷积形成第二字符特征图;第二车牌边框特征图与第一字符特征图进行拼接形成第一字符组合特征图;第四车牌边框特征图与第二字符特征图进行拼接形成第二字符组合特征图;第一组合特征图通过卷积降维操作进行还原得到第一字符联合特征图,第二组合特征图通过卷积降维操作进行还原得到第二字符联合特征图。
19.进一步的,所述步骤5具体为:
20.步骤5.1、第一字符联合特征图、第二字符联合特征图和第六层车牌边框特征图分别通过感兴趣区域池化操作得到三个大小相同的字符关键区域特征;
21.步骤5.2、三个大小相同的字符关键区域特征拼接后得到字符关键区域特征。
22.进一步的,所述步骤6具体为:
[0023][0024]
loss
dec
(pb,gb)=∑n∑
m∈{cx,cy,w,h}
smooth
l1
(pb
m-gbm)
ꢀꢀ
(2)
[0025][0026]
其中,loss(pb,pn,gb,gn)为整体损失模型即识别后车牌号码,包括车牌检测模块损失模型lossd
ec
(pb,gb)和车牌识别模块损失模型loss
reg
(pn,gn),n为卷积神经网络batch size大小,m为车牌边框坐标,cx为车牌边框中心点x坐标,cy为车牌边框中心点y坐标,w为车牌边框的宽度,h为车牌边框的高度,smooth
l1
为损失函数,pb为字符关键区域特征中的车牌边界坐标,gb为真实车牌边界坐标,pn为识别到的车牌号码,gn为真实车牌号码,m为车牌号码的长度,i表示第i个车牌字符,j为卷积神经网络中一个车牌字符的第j类,每个车牌字符共c个类别。
[0027]
有益效果:
[0028]
1、端到端的高效精确车牌检测和识别方法中输入的信息包含车牌的图像,可在一
次向前的传递中定位车牌的位置区域并识别其中的车牌号码;
[0029]
2、能够高效的检测与识别车牌,集成检测与识别两个子任务,避免将检测与识别分割为两个单独的阶段从而节省执行时间。
[0030]
3、应用卷积神经网络提取的不同级别的特征,网络共享浅层的特征同时用于检测与识别任务,避免重复提取特征从而提高时间效率。
[0031]
4、强调车牌检测与车牌识别之间的相关性,联合车牌边界坐标与字符关键区域特征模型使车牌字符识别更加准确。同时,识别后车牌联合优化车牌检测与识别两个任务,进一步提升检测和识别性能。
[0032]
5、整体模型轻量灵活高效,能够快速准确的完成车牌检测和识别。
附图说明
[0033]
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0034]
图1为本发明端到端的高效精确车牌检测和识别方法流程图;
[0035]
图2为本发明端到端的高效精确车牌检测网络架构图。
具体实施方式
[0036]
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0037]
本实施例提供了一种端到端的高效精确车牌检测和识别方法,如图1-2,包括以下步骤:
[0038]
步骤1、采集车牌图像,并输入到车牌检测模块;
[0039]
步骤2、车牌检测模块通过卷积神经网络提取车牌图像中浅层特征和车牌边框特征,构成车牌边框特征图,所述浅层特征为图像的基本特征,如颜色、纹理和边缘等;
[0040]
步骤3、车牌边框特征图通过全连接层回归出车牌边界坐标;
[0041]
步骤4、车牌识别模块共享车牌检测模块提取的浅层特征,并通过卷积操作得到车牌图像的字符特征,形成两组字符联合特征图;
[0042]
步骤5、两组字符联合特征图和车牌边框特征图通过感兴趣区域池化操作后被拼接,得到字符关键区域特征;
[0043]
步骤6、字符关键区域特征通过m个分类器识别后获得识别后长度为m的车牌号码。
[0044]
具体的,车牌检测模块中七个卷积层被用来提取车牌边框特征,用三个全连接层组成的回归模块回归出车牌边界坐标模型;七个卷积层中,每个卷积层由五个部分组成:卷积操作、批标准化(batch normalization,bn)、relu激活、最大池化(max pool ing)和dropout;最后一个卷积层输出的特征图被输入到后续的三个全连接层中,用于回归出车牌区域的坐标(即边框)。
[0045]
车牌检测模块共有7个卷积层,第一卷积层输入为车牌图像并卷积输出第一车牌边框特征图(即第一卷积层的输出结果),并传输给第二卷积层,第二卷积层卷积第一车牌边框特征图并输出第二车牌边框特征(即第二卷积层的输出结果),并传输给第三卷积层,第三卷积层卷积第二车牌边框特征图并输出第三车牌边框特征(即第三卷积层的输出结果),并传输给第四卷积层,第四卷积层卷积第三车牌边框特征图并输出第四车牌边框特征(即第四卷积层的输出结果),并传输给第五卷积层,第五卷积层卷积第四车牌边框特征图并输出第五车牌边框特征(即第五卷积层的输出结果),并传输给第六卷积层,第六卷积层卷积第五车牌边框特征图并输出第六车牌边框特征(即第六卷积层的输出结果),并传输给第七卷积层,第七卷积层卷积第六车牌边框特征图并输出第七车牌边框特征(即第七卷积层的输出结果)。
[0046]
在具体实施例中,所述步骤2还包括:
[0047]
卷积神经网络中第七卷积层输出的第七车牌边框特征为字符特征的注意参数(注意力),用于辅助车牌识别模块定位字符特征。
[0048]
在具体实施例中,车牌识别模块包括第一识别卷积层和第二识别卷积层,车牌识别模块共享车牌检测模块提取的浅层特征,利用第一识别卷积层和第二识别卷积层提取车牌图像的字符特征,形成第一字符特征图和第二字符特征图。
[0049]
在具体实施例中,车牌检测模块中卷积神经网络的第一卷积层中的第一车牌边框特征图被选择作为车牌识别模块中第一识别卷积层的输入信息,卷积形成第一字符特征图;车牌检测模块中卷积神经网络的第三卷积层中的第三车牌边框特征图被选择作为车牌识别模块中第二识别卷积层的输入信息,卷积形成第二字符特征图;第二车牌边框特征图与第一字符特征图进行拼接形成第一字符组合特征图;第四车牌边框特征图与第二字符特征图进行拼接形成第二字符组合特征图;第一组合特征图通过卷积降维操作进行还原得到第一字符联合特征图,第二组合特征图通过卷积降维操作进行还原得到第二字符联合特征图
[0050]
在具体实施例中,所述步骤5具体为:
[0051]
步骤5.1、第一字符联合特征图、第二字符联合特征图和第六层车牌边框特征图分别通过感兴趣区域池化操作得到三个大小相同的字符关键区域特征;
[0052]
步骤5.2、三个大小相同的字符关键区域特征拼接后得到字符关键区域特征。
[0053]
在具体实施例中,所述步骤6具体为:
[0054][0055]
loss
dec
(pb,gb)=∑n∑
m∈{cx,cy,w,h}
smooth
l1
(pb
m-gbm)
ꢀꢀ
(2)
[0056][0057]
其中,loss(pb,pn,gb,gn)为整体损失模型即识别后车牌号码,包括车牌检测模块损失模型loss
dec
(pb,gb)和车牌识别模块损失模型loss
reg
(pn,gn),n为卷积神经网络batch size大小,m为车牌边框坐标,cx为车牌边框中心点x坐标,cy为车牌边框中心点y坐标,w为车牌边框的宽度,h为车牌边框的高度,smooth
l1
为损失函数,pb为字符关键区域特征中的车
牌边界坐标,gb为真实车牌边界坐标,pn为识别到的车牌号码,gn为真实车牌号码,m为车牌号码的长度,i表示第i个车牌字符,j为卷积神经网络中一个车牌字符的第j类,每个车牌字符共c个类别。
[0058]
在具体实施例中,车牌识别模块选择第一字符联合特征图、第二字符联合特征图和第六层车牌边框特征图分别做roi池化,然后组合池化后的特征图,将组合后的特征图送入七个并列的分类器,即图2中分类器1-7,最终输出识别后车牌模型,即预测的车牌号码;输入roi池化的三个特征图的提取和选择成为车牌识别模块的注意力。
[0059]
图2中conv-d1、conv-d2、conv-d3、conv-d4、conv-d5、conv-d6和conv-d7分别为车牌检测模块的7个卷积层,conv-r1、conv-r2为车牌识别模块的第一识别卷积层和第二识别卷积层,conv-r3、conv-r4为卷积降维操作,分别输出第一字符联合特征图、第二字符联合特征图。
[0060]
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
技术特征:
1.一种端到端的高效精确车牌检测和识别方法,其特征在于,包括以下步骤:步骤1、采集车牌图像,并输入到车牌检测模块;步骤2、车牌检测模块通过卷积神经网络提取车牌图像中浅层特征和车牌边框特征,构成车牌边框特征图;步骤3、车牌边框特征图通过全连接层回归出车牌边界坐标;步骤4、车牌识别模块共享车牌检测模块提取的浅层特征,并通过卷积操作得到车牌图像的字符特征,形成两组字符联合特征图;步骤5、两组字符联合特征图和车牌边框特征图通过感兴趣区域池化操作后被拼接,得到字符关键区域特征;步骤6、字符关键区域特征通过分类器识别后获得识别后车牌号码。2.如权利要求1所述的一种端到端的高效精确车牌检测和识别方法,其特征在于:车牌检测模块共有7个卷积层,第一卷积层输入为车牌图像并卷积输出第一车牌边框特征图,并传输给第二卷积层,第二卷积层卷积第一车牌边框特征图并输出第二车牌边框特征,并传输给第三卷积层,第三卷积层卷积第二车牌边框特征图并输出第三车牌边框特征,并传输给第四卷积层,第四卷积层卷积第三车牌边框特征图并输出第四车牌边框特征,并传输给第五卷积层,第五卷积层卷积第四车牌边框特征图并输出第五车牌边框特征,并传输给第六卷积层,第六卷积层卷积第五车牌边框特征图并输出第六车牌边框特征,并传输给第七卷积层,第七卷积层卷积第六车牌边框特征图并输出第七车牌边框特征。3.如权利要求2所述的一种端到端的高效精确车牌检测和识别方法,其特征在于,所述步骤2还包括:卷积神经网络中第七卷积层输出的第七车牌边框特征为字符特征的注意参数,用于辅助车牌识别模块定位字符特征。4.如权利要求3所述的一种端到端的高效精确车牌检测和识别方法,其特征在于:车牌识别模块包括第一识别卷积层和第二识别卷积层,车牌识别模块共享车牌检测模块提取的浅层特征,利用第一识别卷积层和第二识别卷积层提取车牌图像的字符特征,形成第一字符特征图和第二字符特征图。5.如权利要求4所述的一种端到端的高效精确车牌检测和识别方法,其特征在于:车牌检测模块中卷积神经网络的第一卷积层中的第一车牌边框特征图被选择作为车牌识别模块中第一识别卷积层的输入信息,卷积形成第一字符特征图;车牌检测模块中卷积神经网络的第三卷积层中的第三车牌边框特征图被选择作为车牌识别模块中第二识别卷积层的输入信息,卷积形成第二字符特征图;第二车牌边框特征图与第一字符特征图进行拼接形成第一字符组合特征图;第四车牌边框特征图与第二字符特征图进行拼接形成第二字符组合特征图;第一组合特征图通过卷积降维操作进行还原得到第一字符联合特征图,第二组合特征图通过卷积降维操作进行还原得到第二字符联合特征图。6.如权利要求5所述的一种端到端的高效精确车牌检测和识别方法,其特征在于,所述步骤5具体为:步骤5.1、第一字符联合特征图、第二字符联合特征图和第六层车牌边框特征图分别通过感兴趣区域池化操作得到三个大小相同的字符关键区域特征;步骤5.2、三个大小相同的字符关键区域特征拼接后得到字符关键区域特征。7.如权利要求6所述的一种端到端的高效精确车牌检测和识别方法,其特征在于,所述
步骤6具体为:loss
dec
(pb,gb)=∑n∑m∈{cx,cy,w,h}smooth
l1
(pb
m-gb
m
) (2)其中,loss(pb,pn,gb,gn)为整体损失模型即识别后车牌号码,包括车牌检测模块损失模型loss
dec
(pb,gb)和车牌识别模块损失模型loss
reg
(pn,gn),n为卷积神经网络batch size大小,m为车牌边框坐标,cx为车牌边框中心点x坐标,cy为车牌边框中心点y坐标,w为车牌边框的宽度,h为车牌边框的高度,smooth
l1
为损失函数,pb为字符关键区域特征中的车牌边界坐标,gb为真实车牌边界坐标,pn为识别到的车牌号码,gn为真实车牌号码,m为车牌号码的长度,i表示第i个车牌字符,j为卷积神经网络中一个车牌字符的第j类,每个车牌字符共c个类别。
技术总结
本发明公开了一种端到端的高效精确车牌检测和识别方法,其包括采集车牌图像,车牌检测模块通过卷积神经网络提取车牌图像中浅层特征和车牌边框特征,构成车牌边框特征图;车牌边框特征图通过全连接层回归出车牌边界坐标;车牌识别模块共享车牌检测模块提取的浅层特征,得到车牌图像的字符特征,形成字符联合特征图组;字符联合特征图组和车牌边框特征图通过感兴趣区域池化操作后被拼接,得到字符关键区域特征;字符关键区域特征通分类器识别后获得识别后车牌号码。端到端车牌检测和识别方法中输入的信息包含车牌的图像,可在一次向前的传递中定位车牌的位置区域并识别其中的车牌号码,整体模型轻量灵活高效,能够快速准确的完成车牌检测和识别。的完成车牌检测和识别。的完成车牌检测和识别。
技术研发人员:周新 程谣 姜俐伶
受保护的技术使用者:大连海事大学
技术研发日:2021.12.13
技术公布日:2022/3/8