一种基于CNN的双行车牌分割方法及系统与流程

文档序号:17064952发布日期:2019-03-08 22:50阅读:365来源:国知局
一种基于CNN的双行车牌分割方法及系统与流程

本发明属于自动车牌分割与识别技术领域,特别涉及一种基于cnn的双行车牌分割方法及系统,用以解决现有车牌识别方法对双行车牌因字符分割不准确而导致的识别率下降的问题。



背景技术:

车牌分割是指利用图形图像处理技术将车牌字符进行分割的技术,是自动车牌识别系统的一个重要步骤。自动车牌识别系统主要包括三个步骤:车牌定位与分割、车牌字符分割、车牌字符识别。每一步骤的准确率都会直接影响到自动车牌识别系统的识别结果准确性。目前,自动车牌识别系统有着广泛的应用,例如交通安全执法、无人看守停车场以及高速公路自动收费等。由于自动车牌识别系统的重要性,车牌分割技术的准确性也显得非常重要,近年来有越来越多的研究人员在研究相关的车牌分割技术。

车牌字符分割一般可以分为基于投影的方法和基于字符连通性的方法。基于投影的车牌分割方法首先将图片二值化,然后计算垂直投影直方图或者水平投影直方图,最后找到分割线位置并将车牌字符进行分割(请参见文献:ingolesk,gundresb.charactersfeaturebasedindianvehiclelicenseplatedetectionandrecognition[c]//internationalconferenceonintelligentcomputingandcontrol.coimbatore:ieeecomputersocietypress,2018:1-5)。但是,基于投影的方法很容易受到车牌倾斜度、噪声、图片明暗度等因素影响,导致车牌字符分割准确率下降。基于字符连通性的车牌字符分割方法先在车牌区域查找每个字符的连通轮廓再对每个车牌字符进行分割(请参见文献:tatd,leda,lemt.automaticnumberplaterecognitiononelectronictollcollectionsystemsforvietnameseconditions[c]//proceedingsofthe9thinternationalconferenceonubiquitousinformationmanagementandcommunication.newyork:acm,2015:1-5)。但是,该方法容易受到噪声影响而导致字符轮廓的查找错误,并且对于不具备连通性的汉字的分割准确率较低。

基于以上问题,本发明提出了一种基于cnn的双行车牌分割算法,有效地将双行车牌分割为两个单行车牌,提高后续的车牌字符分割和识别的准确率。cnn是卷积神经网络的英文缩写,现在已经被广泛应用于计算机视觉领域中。cnn的输入可以是一张包含3个颜色通道的二维图像,避免了传统机器学习方法中需要人工选择图像特征的局限性。cnn中的权值参数共享网络结构降低了网络模型的复杂度,相比传统的神经网络减少了权值参数的数量。卷积神经网络避免了传统机器学习方法的复杂特征提取和数据重建过程,可以直接从大量的训练数据集中通过全自动的训练和学习获得较好的双行车牌分割结果。本发明所提出的一种基于cnn的双行车牌分割方法专门是为了实现对双行车牌图像的高效分割而设计的,有效地解决现有方法中所存在的难以处理车牌倾斜较大图像和噪声较多图像的问题。

故,针对现有技术的缺陷,实有必要提出一种技术方案以解决现有技术存在的技术问题。



技术实现要素:

本发明的目的在于针对现有双行车牌分割技术的不足,提供了一种基于cnn的双行车牌分割方法及系统,以减少车牌倾斜度和图像噪声等因素对分割结果的影响,有效地提高双行车牌图像的分割准确率。

实现本发明目的的总体技术思路为:本发明分为训练过程和测试过程。首先,定义一个共有13层网络结构的带有若干权值参数的cnn双行车牌分割模型,使用车牌图像训练数据集进行自动的模型训练和学习,得到一个训练好的cnn双行车牌分割模型。然后,将车牌图像测试数据集输入到训练好的cnn双行车牌分割模型中,得到车牌图像的单双行车牌类别、双行车牌图像左边界分割点纵坐标标、双行车牌图像右边界分割点纵坐标等车牌分割结果。

为了解决现有技术存在的技术问题,本发明的技术方案如下:

一种基于cnn的双行车牌分割方法,其特征在于,所述方法包括:

步骤s1、架构一个共有13层网络结构的带有若干权值参数的cnn双行车牌分割模型,并使用车牌图像训练数据集进行自动的模型训练和学习,得到一个训练好的cnn双行车牌分割模型;

步骤s2、将待检测车牌图像输入到训练好的cnn双行车牌分割模型中,得到车牌分割结果,所述车牌分割结果至少包括车牌图像的单双行车牌类别、双行车牌图像左边界分割点纵坐标标、双行车牌图像右边界分割点纵坐标;

其中,所述步骤s1进一步包括以下步骤:

步骤s101、对车牌图像进行归一化处理:给定包含m1张车牌图像的车牌图像训练数据集,将所有车牌图像的分辨率统一缩放至给定的大小w×h×c1,其中w表示车牌图像宽度、h表示车牌图像高度、c1表示特征图数量;

步骤s102、人工标记出车牌图像训练数据集中所有车牌图像的标签,每张车牌图像有3个标签,分别为类别标签(记为y1,其中1表示单行车牌,2表示双行车牌)、左边界分割点纵坐标标签(记为y2,1≤y2≤h)、右边界分割点纵坐标标签(记为y3,1≤y3≤h);其中,双行车牌的左右边界分割点纵坐标标签按上下两行车牌字符的实际位置进行人工标记,单行车牌的左右边界分割点纵坐标标签则标记为0;

步骤s103、人工设置好cnn双行车牌分割模型训练所需要的参数值,包括网络学习率、最大迭代次数、是否使用gpu训练模型、归一化层参数值α和β;

步骤s104、在caffe框架中构造一个基于cnn的网络结构,定义一个带有若干权值参数的cnn双行车牌分割模型;该cnn双行车牌分割模型的网络结构共有13层,从第一层到第十三层分别为:第一卷积层、第一激活层、归一化层、下采样层、第二卷积层、第二激活层、下采样层、dropout层、全连接层、第三激活层、全连接层、第四激活层和softmax层;第四激活层的输出分别为包含2个特征值的四号特征向量(记为f4)、包含h个特征值的五号特征向量(记为f5)、包含h个特征值的六号特征向量(记为f6);

步骤s105、根据步骤s101所述的m1张车牌图像训练数据集、步骤s102所述的所有车牌图像的标签、步骤s103所述的cnn双行车牌分割模型训练所需要的参数值,输入到步骤s104所述的带有若干权值参数的cnn双行车牌分割模型中进行训练,在caffe框架中采用随机梯度下降算法求解出所有权值参数的值,输出一个训练好的cnn双行车牌分割模型;

所述步骤s2进一步包括以下步骤:

步骤s201、输入至少一张待检测车牌图像,并将所有车牌图像的分辨率统一缩放至步骤s101所述的大小w×h×c1;

步骤s202、在caffe框架采用步骤s105所得到的训练好的cnn双行车牌分割模型对车牌图像进行检测;其中,每一张车牌图像经过步骤s105所得到的训练好的cnn双行车牌分割模型的计算之后,能够得到步骤s105所述的第四激活层的输出,分别为包含2个特征值的四号特征向量f4、包含h个特征值的五号特征向量f5、包含h个特征值的六号特征向量f6

步骤s203、使用softmax分类器对每一张车牌图像的类别标签进行识别,得到车牌图像的类别;具体过程如下:

根据步骤s202所得到的包含2个特征值的四号特征向量f4,计算每一张车牌图像的关于四号特征向量f4的softmax损失向量(记为l4),具体计算公式为:

式中,f4,n表示四号特征向量f4的第n个特征值,l4n表示关于四号特征向量f4的softmax损失向量l4的第n(1≤n≤2)个特征值,其含义是该车牌图像的类别被识别为类别n的概率;

然后,从l4中选取概率最大的类别作为最终识别的类别(记为y4),具体计算公式为:

式中,函数argmax表示取得向量最大值元素所在的位置;

步骤s204、使用softmax分类器对车牌图像测试数据集的每一张车牌图像的左边界分割点纵坐标标签和右边界分割点纵坐标标签进行识别,得到车牌图像的左边界分割点纵坐标、右边界分割点纵坐标;具体过程如下:

根据步骤s202所得到的包含h个特征值的五号特征向量f5、包含h个特征值的六号特征向量f6、步骤s203所得到的最终识别的车牌图像的类别y4,计算每一张车牌图像的关于五号特征向量f5和六号特征向量f6的softmax损失向量(分别记为l5、l6),具体计算公式为:

式中,f5,n、f6,n分别表示五号特征向量f5和六号特征向量f6的第n个特征值,l5n、l6n分别表示关于五号特征向量f5和六号特征向量f6的softmax损失向量l5和l6的第n(1≤n≤h)个特征值,其含义是该车牌图像的左、右边界分割点纵坐标被识别为n的概率;

然后,分别从l5、l6中选取概率最大的纵坐标作为最终识别的左、右边界分割点纵坐标(分别记为y5、y6),具体计算公式为:

上述所计算得到的每一张车牌图像的y4、y5、y6的值即为每一张待检测车牌图像的类别、左边界分割点纵坐标、右边界分割点纵坐标。

为了解决现有技术存在的技术问题,本发明还公开了一种基于cnn的双行车牌分割系统,所述系统包括:

一训练好的cnn双行车牌分割模型,用于获取待检测车牌图像并进行图像处理后输出车牌分割结果;其中,所述车牌分割结果至少包括车牌图像的单双行车牌类别、双行车牌图像左边界分割点纵坐标标、双行车牌图像右边界分割点纵坐标;所述cnn双行车牌分割模型共有13层网络结构并设置若干权值参数,从第一层到第十三层分别为:第一卷积层、第一激活层、归一化层、下采样层、第二卷积层、第二激活层、下采样层、dropout层、全连接层、第三激活层、全连接层、第四激活层和softmax层;第四激活层的输出分别为包含2个特征值的四号特征向量(记为f4)、包含h个特征值的五号特征向量(记为f5)、包含h个特征值的六号特征向量(记为f6);

一训练模块,用于使用车牌图像训练数据集对cnn双行车牌分割模型进行自动的模型训练和学习该模型的权值参数达到最优以作为训练好的cnn双行车牌分割模型。

作为优选的技术方案,所述训练模块进一步包括:

归一化单元,用于对车牌图像进行归一化处理;其中,对给定包含m1张车牌图像的车牌图像训练数据集,将所有车牌图像的分辨率统一缩放至给定的大小w×h×c1,其中w表示车牌图像宽度、h表示车牌图像高度、c1表示特征图数量;

标签输入单元,用于人工标记出车牌图像训练数据集中所有车牌图像的标签;其中,每张车牌图像有3个标签,分别为类别标签(记为y1,其中1表示单行车牌,2表示双行车牌)、左边界分割点纵坐标标签(记为y2,1≤y2≤h)、右边界分割点纵坐标标签(记为y3,1≤y3≤h);其中,双行车牌的左右边界分割点纵坐标标签按上下两行车牌字符的实际位置进行人工标记,单行车牌的左右边界分割点纵坐标标签则标记为0;

训练参数设置单元,用于人工设置好cnn双行车牌分割模型训练所需要的参数值,所述参数值至少包括网络学习率、最大迭代次数、是否使用gpu训练模型、归一化层参数值α和β;

权值参数优化单元,根据车牌图像训练数据集、所有车牌图像的标签、模型训练所需要的参数值,对cnn双行车牌分割模型参数进行训练,并在caffe框架中采用随机梯度下降算法求解出所有权值参数的值,以输出一个训练好的cnn双行车牌分割模型。

作为优选的技术方案,所述cnn双行车牌分割模型设置输入单元,所述输入单元用于获取待检测车牌图像。

作为优选的技术方案,所述cnn双行车牌分割模型设置输出单元,所述输出单元用于输出输出车牌分割结果。

作为优选的技术方案,所述第一卷积层的输入为给定的车牌图像训练数据集中的每一张车牌图像(记为a),输出为包含16张特征图的第一层特征图集(记为b1),具体计算公式为:

式中,表示第一层特征图集的第n张(1≤n≤16)特征图b1,n的位于坐标(x,y)的像素值,k1表示大小为3×3和相邻局部接受域中心距离为1的卷积核窗口,(i,j)∈k1表示卷积核窗口k1内的任意局部坐标(i,j),表示第一层特征图集的第n张特征图在车牌图像a的第c张特征图上的位于(i,j)的权值参数,表示车牌图像a的第c张特征图上的位于(x+i,y+j)的像素值,b1,n,c表示第一层特征图集的第n张特征图在车牌图像a的第c张特征图上的偏置权值参数;

所述第一激活层采用relu激活函数,输入为第一层特征图集b1,输出为包含16张特征图的第二层特征图集(记为b2,1≤n≤16),具体计算公式为:

式中,表示第二层特征图集的第n张(1≤n≤16)特征图b2,n的位于(x,y)的像素值,max表示取最大值的函数;

所述归一化层的输入为第二层特征图集b2,输出为包含16张特征图的第三层特征图集(记为b3),对上一层的特征图集结果进行局部区域归一化操作,具体计算公式为:

式中,表示第三层特征图集的第n张(1≤n≤16)特征图b3,n的位于(x,y)的像素值,α和β是步骤s103所给定的参数值,min和max分别表示取最小值和取最大值的函数;

所述下采样层的输入为第三层特征图集b3,输出为包含16张特征图的第四层特征图集(记为b4),具体计算公式为:

式中,表示第四层特征图集的第n张(1≤n≤16)特征图b4,n的位于(x,y)的像素值,k2表示大小为2×2和相邻局部接受域的中心距离为2的下采样核窗口,(i,j)∈k2表示下采样核窗口k2内的任意局部坐标(i,j);

所述第二卷积层的输入为第四层特征图集b4,输出为包含32张特征图的第五层特征图集(记为b5),具体计算公式为:

式中,表示第五层特征图集的第n张(1≤n≤32)特征图b5,n的位于(x,y)的像素值,k1表示大小为3×3和相邻局部接受域中心距离为1的卷积核窗口,(i,j)∈k1表示卷积核窗口k1内的任意局部坐标(i,j),表示第五层特征图集的第n张特征图在第四层特征图集的第c张特征图上的位于(i,j)的权值参数,表示第四层特征图集的第c张特征图上的位于(x+i,y+j)的像素值,b5,n,c表示第五层特征图集的第n张特征图在第四层特征图集的第c张特征图上的偏置权值参数;

所述第二激活层采用relu激活函数,输入为包含32张特征图的第五层特征图集b5,输出为32张第六层特征图集(记为b6,1≤n≤32),具体计算公式为:

式中,表示第六层特征图集的第n张(1≤n≤32)特征图b6,n的位于(x,y)的像素值;

所述下采样层的输入为第六层特征图集b6,输出为包含32张特征图的第七层特征图集(记为b7),具体计算公式为:

式中,表示第七层特征图集的第n张(1≤n≤32)特征图b7,n的位于(x,y)的像素值,k2表示大小为2×2和相邻局部接受域的中心距离为2的下采样核窗口,(i,j)∈k2表示下采样核窗口k2内的任意局部坐标(i,j);

所述第一全连接层的输入为第七层特征图集b7,输出为包含256个特征值的第八层特征向量(记为b8),具体计算公式为:

式中,b8,n表示第八层特征向量的第n个(1≤n≤256)特征值,表示第八层特征向量的第n个特征值在第七层特征图集的第c张特征图上的位于(i,j)的权值参数,表示第七层特征图集的第c张特征图上的位于(i,j)的像素值,b8,n,c表示第八层特征向量的第n个特征值在第七层特征图集的第c张特征图上的偏置权值参数。

所述第三激活层采用relu激活函数,输入为第八层特征向量b8,输出为包含256个特征值的第九层特征向量(记为b9,1≤n≤256),具体计算公式为:

b9,n=max(b8,n,0)

式中,b9,n表示第九层特征向量的第n个(1≤n≤256)特征值;

所述dropout层输入为第九层特征向量b9,对b9执行dropout算法,以比率值0.5进行随机查找向量位置,将这些向量位置上的输出值设置为0,其余的向量位置上的输出值保持与b9相同,输出为包含256个特征值的第十层特征向量(记为b10);

所述第二全连接层设置3个并行的全连接层,输入为第十层特征向量b10,输出分别为包含2个特征值的一号特征向量(记为f1)、包含h个特征值的二号特征向量(记为f2)、包含h个特征值的三号特征向量(记为f3),h为步骤s101所述的车牌图像高度,具体计算公式分别为:

式中,f1,n、f2,n、f3,n分别表示一号、二号、三号特征向量的第n个特征值,w11,n,c、w12,n,c、w13,n,c分别表示一号、二号、三号特征向量的第n个特征值在第十层特征向量的第c个特征值上的权值参数,b10,c表示第十层特征向量的第c个特征值,b11,n,c、b12,n,c、b12,n,c分别表示一号、二号、三号特征向量的第n个特征值在第十层特征向量的第c个特征值上的偏置权值参数;

所述第四激活层采用relu激活函数,输入分别为包含2个特征值的一号特征向量f1、包含h个特征值的二号特征向量f2、包含h个特征值的三号特征向量f3,输出分别为包含2个特征值的四号特征向量f4、包含h个特征值的五号特征向量f5、包含h个特征值的六号特征向量f6,具体计算公式为:

f4,n=max(f1,n,0)

f5,n=max(f2,n,0)

f6,n=max(f3,n,0)

式中,f4,n、f5,n、f6,n分别表示四号、五号、六号特征向量的第n个特征值。

所述softmax层输入分别为包含2个特征值的四号特征向量f4、包含h个特征值的五号特征向量f5、包含h个特征值的六号特征向量f6,首先分别计算每一张车牌图像的关于三个特征向量的softmax损失函数值(分别记为l1、l2、l3),具体计算公式为:

式中,log和exp分别表示自然对数函数和自然指数函数,y1、y2、y3分别为步骤s102中所述的类别标签(其中1表示单行车牌,2表示双行车牌)、左边界分割点纵坐标标签、右边界分割点纵坐标标签;

然后,基于每一张车牌图像的关于三个特征向量的softmax损失函数值l1、l2、l3,计算模型训练损失值(记为loss),具体计算公式为:

式中,m1为步骤s101所述的给定的车牌图像训练数据集所包含的车牌图像数量,l1(i)、l2(i)、l3(i)分别表示车牌图像训练数据集中第i张车牌图像的关于三个特征向量的softmax损失函数值。

与现有技术相比,本发明具有如下有益效果:

本发明采用基于cnn卷积层完成对车牌图像多尺度特征的自动提取,能够更加全面地提取到车牌图像训练数据集的各高维视觉特征。相比较对现有的基于投影的分割方法,本方法直接将一张车牌图像作为输入,不需要现有的基于投影的分割方法中所涉及到的图像二值化、投影直方图统计和阈值计算等预处理操作。训练好的cnn双行车牌分割模型支持对车牌类别和左右边界分割点纵坐标的全自动多标签分类和识别,提高了双行车牌图像的分割效率。

附图说明

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

图1为本发明实施例提供的一种基于cnn的双行车牌分割方法的流程图。

图2为本发明实施例提供的一种基于cnn的双行车牌分割系统的原理框图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

如图1所示,为本发明实施例中,提出的一种基于cnn的双行车牌分割方法,所述方法包括训练及建模和检测两个过程:

步骤s1、训练及建模过程:

架构一个共有13层网络结构的带有若干权值参数的cnn双行车牌分割模型,并使用车牌图像训练数据集进行自动的模型训练和学习,得到一个训练好的cnn双行车牌分割模型;

步骤s2、检测过程:

将待检测车牌图像输入到训练好的cnn双行车牌分割模型中,得到车牌分割结果,所述车牌分割结果至少包括车牌图像的单双行车牌类别、双行车牌图像左边界分割点纵坐标标、双行车牌图像右边界分割点纵坐标;

其中,步骤s1进一步包括:

步骤s101、给定包含m1张车牌图像的车牌图像训练数据集,将所有车牌图像的分辨率统一缩放至给定的大小w×h×c1,其中w表示车牌图像宽度、h表示车牌图像高度、c1表示特征图数量(即颜色通道数量,彩色图像c1=3、灰度图像c1=1)。

步骤s102、人工标记出车牌图像训练数据集中所有车牌图像的标签,每张车牌图像有3个标签,分别为类别标签(记为y1,其中1表示单行车牌,2表示双行车牌)、左边界分割点纵坐标标签(记为y2,1≤y2≤h)、右边界分割点纵坐标标签(记为y3,1≤y3≤h)。其中,双行车牌的左右边界分割点纵坐标标签按上下两行车牌字符的实际位置进行人工标记,单行车牌的左右边界分割点纵坐标标签则标记为0。

步骤s103、人工设置好cnn双行车牌分割模型训练所需要的参数值,包括网络学习率、最大迭代次数、是否使用gpu训练模型、归一化层参数值α和β等。

步骤s104、在caffe框架中构造一个基于cnn的网络结构,定义一个带有若干权值参数的cnn双行车牌分割模型。训练过程即是计算这些权值参数值的过程,训练完成后即可得到一个训练好的cnn双行车牌分割模型。带有若干权值参数的cnn双行车牌分割模型的网络结构共有13层,从第一层到第十三层分别为:第一卷积层、第一激活层、归一化层、下采样层、第二卷积层、第二激活层、下采样层、dropout层、第一全连接层、第三激活层、第二全连接层、第四激活层、softmax层。带有若干权值参数的cnn双行车牌分割模型的每一层网络结构具体构造过程如下:

第一层为第一卷积层。该卷积层的输入为给定的车牌图像训练数据集中的每一张车牌图像(记为a),输出为包含16张特征图的第一层特征图集(记为b1),具体计算公式为:

式中,表示第一层特征图集的第n张(1≤n≤16)特征图b1,n的位于坐标(x,y)的像素值,k1表示大小为3×3和相邻局部接受域中心距离为1的卷积核窗口,(i,j)∈k1表示卷积核窗口k1内的任意局部坐标(i,j),表示第一层特征图集的第n张特征图在车牌图像a的第c张特征图上的位于(i,j)的权值参数,表示车牌图像a的第c张特征图上的位于(x+i,y+j)的像素值,b1,n,c表示第一层特征图集的第n张特征图在车牌图像a的第c张特征图上的偏置权值参数。

第二层为第一激活层。该激活层采用relu激活函数,输入为第一层特征图集b1,输出为包含16张特征图的第二层特征图集(记为b21≤n≤16),具体计算公式为:

式中,表示第二层特征图集的第n张(1≤n≤16)特征图b2,n的位于(x,y)的像素值,max表示取最大值的函数。

第三层为归一化层。该归一化归的输入为第二层特征图集b2,输出为包含16张特征图的第三层特征图集(记为b3),对上一层的特征图集结果进行局部区域归一化操作,具体计算公式为:

式中,表示第三层特征图集的第n张(1≤n≤16)特征图b3,n的位于(x,y)的像素值,α和β是步骤s103所给定的参数值,min和max分别表示取最小值和取最大值的函数(具体请参见文献:krizhevskya,sutskeveri,hintonge.imagenetclassificationwithdeepconvolutionalneuralnetworks[c]//internationalconferenceonneuralinformationprocessingsystems.curranassociatesinc.2012:1097-1105)。

第四层为下采样层。该下采样层的输入为第三层特征图集b3,输出为包含16张特征图的第四层特征图集(记为b4),具体计算公式为:

式中,表示第四层特征图集的第n张(1≤n≤16)特征图b4,n的位于(x,y)的像素值,k2表示大小为2×2和相邻局部接受域的中心距离为2的下采样核窗口,(i,j)∈k2表示下采样核窗口k2内的任意局部坐标(i,j)。由于下采样核窗口k2的相邻局部接受域的中心距离为2,该下采样层起到了降低特征图分辨率的作用。

第五层为第二卷积层。该卷积层的输入为第四层特征图集b4,输出为包含32张特征图的第五层特征图集(记为b5),具体计算公式为:

式中,表示第五层特征图集的第n张(1≤n≤32)特征图b5,n的位于(x,y)的像素值,k1表示大小为3×3和相邻局部接受域中心距离为1的卷积核窗口,(i,j)∈k1表示卷积核窗口k1内的任意局部坐标(i,j),表示第五层特征图集的第n张特征图在第四层特征图集的第c张特征图上的位于(i,j)的权值参数,表示第四层特征图集的第c张特征图上的位于(x+i,y+j)的像素值,b5,n,c表示第五层特征图集的第n张特征图在第四层特征图集的第c张特征图上的偏置权值参数。

第六层为第二激活层。该激活层采用relu激活函数,输入为包含32张特征图的第五层特征图集b5,输出为32张第六层特征图集(记为b6,1≤n≤32),具体计算公式为:

式中,表示第六层特征图集的第n张(1≤n≤32)特征图b6,n的位于(x,y)的像素值。

第七层为下采样层。该下采样层的输入为第六层特征图集b6,输出为包含32张特征图的第七层特征图集(记为b7),具体计算公式为:

式中,表示第七层特征图集的第n张(1≤n≤32)特征图b7,n的位于(x,y)的像素值,k2表示大小为2×2和相邻局部接受域的中心距离为2的下采样核窗口,(i,j)∈k2表示下采样核窗口k2内的任意局部坐标(i,j)。由于下采样核窗口k2的相邻局部接受域的中心距离为2,该下采样层起到了降低特征图分辨率的作用。

第八层为第一全连接层。该全连接层的输入为第七层特征图集b7,输出为包含256个特征值的第八层特征向量(记为b8),具体计算公式为:

式中,b8,n表示第八层特征向量的第n个(1≤n≤256)特征值,表示第八层特征向量的第n个特征值在第七层特征图集的第c张特征图上的位于(i,j)的权值参数,表示第七层特征图集的第c张特征图上的位于(i,j)的像素值,b8,n,c表示第八层特征向量的第n个特征值在第七层特征图集的第c张特征图上的偏置权值参数。

第九层为第三激活层。该激活层采用relu激活函数,输入为第八层特征向量b8,输出为包含256个特征值的第九层特征向量(记为b9,1≤n≤256),具体计算公式为:

b9,n=max(b8,n,0)

式中,b9,n表示第九层特征向量的第n个(1≤n≤256)特征值。

第十层为dropout层。该层输入为第九层特征向量b9,对b9执行dropout算法,以比率值0.5进行随机查找向量位置,将这些向量位置上的输出值设置为0,其余的向量位置上的输出值保持与b9相同,输出为包含256个特征值的第十层特征向量(记为b10)(具体过程请参见文献:hintonge,srivastavan,krizhevskya,etal.improvingneuralnetworksbypreventingco-adaptationoffeaturedetectors[j].computerscience,2012,3(4):212-223)。

第十一层为第二全连接层。该全连接层有3个并行的全连接层,输入为第十层特征向量b10,输出分别为包含2个特征值的一号特征向量(记为f1)、包含h个特征值的二号特征向量(记为f2)、包含h个特征值的三号特征向量(记为f3),h为步骤s101所述的车牌图像高度,具体计算公式分别为:

式中,f1,n、f2,n、f3,n分别表示一号、二号、三号特征向量的第n个特征值,w11,n,c、w12,n,c、w13,n,c分别表示一号、二号、三号特征向量的第n个特征值在第十层特征向量的第c个特征值上的权值参数,b10,c表示第十层特征向量的第c个特征值,b11,n,c、b12,n,c、b12,n,c分别表示一号、二号、三号特征向量的第n个特征值在第十层特征向量的第c个特征值上的偏置权值参数。

第十二层为第四激活层。该激活层采用relu激活函数,输入分别为包含2个特征值的一号特征向量f1、包含h个特征值的二号特征向量f2、包含h个特征值的三号特征向量f3,输出分别为包含2个特征值的四号特征向量f4、包含h个特征值的五号特征向量f5、包含h个特征值的六号特征向量f6,具体计算公式为:

f4,n=max(f1,n,0)

f5,n=max(f2,n,0)

f6,n=max(f3,n,0)

式中,f4,n、f5,n、f6,n分别表示四号、五号、六号特征向量的第n个特征值。

第十三层为softmax层。该层输入分别为包含2个特征值的四号特征向量f4、包含h个特征值的五号特征向量f5、包含h个特征值的六号特征向量f6,首先分别计算每一张车牌图像的关于三个特征向量的softmax损失函数值(分别记为l1、l2、l3),具体计算公式为:

式中,log和exp分别表示自然对数函数和自然指数函数,y1、y2、y3分别为步骤s102中所述的类别标签(其中1表示单行车牌,2表示双行车牌)、左边界分割点纵坐标标签、右边界分割点纵坐标标签。由于单行车牌(即y1=1)的l2和l3的取值恒为0,因此单行车牌实际上不参与l2和l3的计算,只有双行车牌(即y1=2)需要计算l2和l3的值。

然后,基于每一张车牌图像的关于三个特征向量的softmax损失函数值l1、l2、l3,计算模型训练损失值(记为loss),具体计算公式为:

式中,m1为步骤s101所述的给定的车牌图像训练数据集所包含的车牌图像数量,l1(i)、l2(i)、l3(i)分别表示车牌图像训练数据集中第i张车牌图像的关于三个特征向量的softmax损失函数值。

步骤s105、给定步骤s101所述的m1张车牌图像训练数据集、步骤s102所述的所有车牌图像的标签、步骤s103所述的cnn双行车牌分割模型训练所需要的参数值,输入到步骤s104所述的带有若干权值参数的cnn双行车牌分割模型中进行训练,在caffe框架中采用随机梯度下降算法求解出所有权值参数的值,输出一个训练好的cnn双行车牌分割模型(随机梯度下降算法具体请参考文献:niuf,rechtb,rec,etal.hogwild!:alock-freeapproachtoparallelizingstochasticgradientdescent[j].advancesinneuralinformationprocessingsystems,2011,24:693-701)。

其中,步骤s2进一步包括:

步骤s201、给定包含至少一张待检测车牌图像,并将所有车牌图像的分辨率统一缩放至步骤s101所述的大小w×h×c1。

步骤s202、在caffe框架采用步骤s105所得到的训练好的cnn双行车牌分割模型对待检测车牌图像的所有车牌图像进行测试。车牌图像的每一张车牌图像经过步骤s105所得到的训练好的cnn双行车牌分割模型的计算之后,能够得到步骤s105所述的第十二层第四激活层的输出,分别为包含2个特征值的四号特征向量f4、包含h个特征值的五号特征向量f5、包含h个特征值的六号特征向量f6

步骤s203、使用softmax分类器对车牌图像测试数据集的每一张车牌图像的类别标签进行识别,得到车牌图像的类别。本步骤输入为步骤s202所得到的包含2个特征值的四号特征向量f4。首先,计算每一张车牌图像的关于四号特征向量f4的softmax损失向量(记为l4),具体计算公式为:

式中,l4n表示关于四号特征向量f4的softmax损失向量l4的第n(1≤n≤2)个特征值,其含义是该车牌图像的类别被识别为类别n的概率。然后,从l4中选取概率最大的类别作为最终识别的类别(记为y4),具体计算公式为:

式中,函数argmax表示取得向量最大值元素所在的位置。

步骤s204、使用softmax分类器对车牌图像测试数据集的每一张车牌图像的左边界分割点纵坐标标签和右边界分割点纵坐标标签进行识别,得到车牌图像的左边界分割点纵坐标、右边界分割点纵坐标。本步骤输入分别为步骤s202所得到的包含h个特征值的五号特征向量f5、包含h个特征值的六号特征向量f6、步骤s203所得到的最终识别的车牌图像的类别y4。首先,计算每一张车牌图像的关于五号特征向量f5和六号特征向量f6的softmax损失向量(分别记为l5、l6),具体计算公式为:

式中,l5n、l6n分别表示关于五号特征向量f5和六号特征向量f6的softmax损失向量l5和l6的第n(1≤n≤h)个特征值,其含义是该车牌图像的左、右边界分割点纵坐标被识别为n的概率。然后,分别从l5、l6中选取概率最大的纵坐标作为最终识别的左、右边界分割点纵坐标(分别记为y5、y6),具体计算公式为:

至此,所计算得到的车牌图像测试数据集的每一张车牌图像的y4、y5、y6的值即为所求的车牌图像测试数据集的每一张车牌图像的类别、左边界分割点纵坐标、右边界分割点纵坐标。

参见图2,所示为本发明一种基于cnn的双行车牌分割系统的原理框图,所述系统包括:

一训练好的cnn双行车牌分割模型,用于获取待检测车牌图像并进行图像处理后输出车牌分割结果;其中,所述车牌分割结果至少包括车牌图像的单双行车牌类别、双行车牌图像左边界分割点纵坐标标、双行车牌图像右边界分割点纵坐标;所述cnn双行车牌分割模型共有13层网络结构并设置若干权值参数,从第一层到第十三层分别为:第一卷积层、第一激活层、归一化层、下采样层、第二卷积层、第二激活层、下采样层、dropout层、第一全连接层、第三激活层、第二全连接层、第四激活层和softmax层;第四激活层的输出分别为包含2个特征值的四号特征向量(记为f4)、包含h个特征值的五号特征向量(记为f5)、包含h个特征值的六号特征向量(记为f6);

一训练模块,用于使用车牌图像训练数据集对cnn双行车牌分割模型进行自动的模型训练和学习该模型的权值参数达到最优以作为训练好的cnn双行车牌分割模型。

其中,所述训练模块进一步包括:

归一化单元,用于对车牌图像进行归一化处理;其中,对给定包含m1张车牌图像的车牌图像训练数据集,将所有车牌图像的分辨率统一缩放至给定的大小w×h×c1,其中w表示车牌图像宽度、h表示车牌图像高度、c1表示特征图数量;

标签输入单元,用于人工标记出车牌图像训练数据集中所有车牌图像的标签;其中,每张车牌图像有3个标签,分别为类别标签(记为y1,其中1表示单行车牌,2表示双行车牌)、左边界分割点纵坐标标签(记为y2,1≤y2≤h)、右边界分割点纵坐标标签(记为y3,1≤y3≤h);其中,双行车牌的左右边界分割点纵坐标标签按上下两行车牌字符的实际位置进行人工标记,单行车牌的左右边界分割点纵坐标标签则标记为0;

训练参数设置单元,用于人工设置好cnn双行车牌分割模型训练所需要的参数值,所述参数值至少包括网络学习率、最大迭代次数、是否使用gpu训练模型、归一化层参数值α和β;

权值参数优化单元,根据车牌图像训练数据集、所有车牌图像的标签、模型训练所需要的参数值,对cnn双行车牌分割模型参数进行训练,并在caffe框架中采用随机梯度下降算法求解出所有权值参数的值,以输出一个训练好的cnn双行车牌分割模型。

进一步的,所述cnn双行车牌分割模型设置输入单元,所述输入单元用于获取待检测车牌图像。

进一步的,所述cnn双行车牌分割模型设置输出单元,所述输出单元用于输出输出车牌分割结果。

进一步的,作为优选的技术方案,所述第一卷积层的输入为给定的车牌图像训练数据集中的每一张车牌图像(记为a),输出为包含16张特征图的第一层特征图集(记为b1),具体计算公式为:

式中,表示第一层特征图集的第n张(1≤n≤16)特征图b1,n的位于坐标(x,y)的像素值,k1表示大小为3×3和相邻局部接受域中心距离为1的卷积核窗口,(i,j)∈k1表示卷积核窗口k1内的任意局部坐标(i,j),表示第一层特征图集的第n张特征图在车牌图像a的第c张特征图上的位于(i,j)的权值参数,表示车牌图像a的第c张特征图上的位于(x+i,y+j)的像素值,b1,n,c表示第一层特征图集的第n张特征图在车牌图像a的第c张特征图上的偏置权值参数;

所述第一激活层采用relu激活函数,输入为第一层特征图集b1,输出为包含16张特征图的第二层特征图集(记为b2,1≤n≤16),具体计算公式为:

式中,表示第二层特征图集的第n张(1≤n≤16)特征图b2,n的位于(x,y)的像素值,max表示取最大值的函数;

所述归一化层的输入为第二层特征图集b2,输出为包含16张特征图的第三层特征图集(记为b3),对上一层的特征图集结果进行局部区域归一化操作,具体计算公式为:

式中,表示第三层特征图集的第n张(1≤n≤16)特征图b3,n的位于(x,y)的像素值,α和β是步骤s103所给定的参数值,min和max分别表示取最小值和取最大值的函数;

所述下采样层的输入为第三层特征图集b3,输出为包含16张特征图的第四层特征图集(记为b4),具体计算公式为:

式中,表示第四层特征图集的第n张(1≤n≤16)特征图b4,n的位于(x,y)的像素值,k2表示大小为2×2和相邻局部接受域的中心距离为2的下采样核窗口,(i,j)∈k2表示下采样核窗口k2内的任意局部坐标(i,j);

所述第二卷积层的输入为第四层特征图集b4,输出为包含32张特征图的第五层特征图集(记为b5),具体计算公式为:

式中,表示第五层特征图集的第n张(1≤n≤32)特征图b5,n的位于(x,y)的像素值,k1表示大小为3×3和相邻局部接受域中心距离为1的卷积核窗口,(i,j)∈k1表示卷积核窗口k1内的任意局部坐标(i,j),表示第五层特征图集的第n张特征图在第四层特征图集的第c张特征图上的位于(i,j)的权值参数,表示第四层特征图集的第c张特征图上的位于(x+i,y+j)的像素值,b5,n,c表示第五层特征图集的第n张特征图在第四层特征图集的第c张特征图上的偏置权值参数;

所述第二激活层采用relu激活函数,输入为包含32张特征图的第五层特征图集b5,输出为32张第六层特征图集(记为b6,1≤n≤32),具体计算公式为:

式中,表示第六层特征图集的第n张(1≤n≤32)特征图b6,n的位于(x,y)的像素值;

所述下采样层的输入为第六层特征图集b6,输出为包含32张特征图的第七层特征图集(记为b7),具体计算公式为:

式中,表示第七层特征图集的第n张(1≤n≤32)特征图b7,n的位于(x,y)的像素值,k2表示大小为2×2和相邻局部接受域的中心距离为2的下采样核窗口,(i,j)∈k2表示下采样核窗口k2内的任意局部坐标(i,j);

所述第一全连接层的输入为第七层特征图集b7,输出为包含256个特征值的第八层特征向量(记为b8),具体计算公式为:

式中,b8,n表示第八层特征向量的第n个(1≤n≤256)特征值,表示第八层特征向量的第n个特征值在第七层特征图集的第c张特征图上的位于(i,j)的权值参数,表示第七层特征图集的第c张特征图上的位于(i,j)的像素值,b8,n,c表示第八层特征向量的第n个特征值在第七层特征图集的第c张特征图上的偏置权值参数。

所述第三激活层采用relu激活函数,输入为第八层特征向量b8,输出为包含256个特征值的第九层特征向量(记为b9,1≤n≤256),具体计算公式为:

b9,n=max(b8,n,0)

式中,b9,n表示第九层特征向量的第n个(1≤n≤256)特征值;

所述dropout层输入为第九层特征向量b9,对b9执行dropout算法,以比率值0.5进行随机查找向量位置,将这些向量位置上的输出值设置为0,其余的向量位置上的输出值保持与b9相同,输出为包含256个特征值的第十层特征向量(记为b10);

所述第二全连接层设置3个并行的全连接层,输入为第十层特征向量b10,输出分别为包含2个特征值的一号特征向量(记为f1)、包含h个特征值的二号特征向量(记为f2)、包含h个特征值的三号特征向量(记为f3),h为步骤s101所述的车牌图像高度,具体计算公式分别为:

式中,f1,n、f2,n、f3,n分别表示一号、二号、三号特征向量的第n个特征值,w11,n,c、w12,n,c、w13,n,c分别表示一号、二号、三号特征向量的第n个特征值在第十层特征向量的第c个特征值上的权值参数,b10,c表示第十层特征向量的第c个特征值,b11,n,c、b12,n,c、b12,n,c分别表示一号、二号、三号特征向量的第n个特征值在第十层特征向量的第c个特征值上的偏置权值参数;

所述第四激活层采用relu激活函数,输入分别为包含2个特征值的一号特征向量f1、包含h个特征值的二号特征向量f2、包含h个特征值的三号特征向量f3,输出分别为包含2个特征值的四号特征向量f4、包含h个特征值的五号特征向量f5、包含h个特征值的六号特征向量f6,具体计算公式为:

f4,n=max(f1,n,0)

f5,n=max(f2,n,0)

f6,n=max(f3,n,0)

式中,f4,n、f5,n、f6,n分别表示四号、五号、六号特征向量的第n个特征值。

所述softmax层输入分别为包含2个特征值的四号特征向量f4、包含h个特征值的五号特征向量f5、包含h个特征值的六号特征向量f6,首先分别计算每一张车牌图像的关于三个特征向量的softmax损失函数值(分别记为l1、l2、l3),具体计算公式为:

式中,log和exp分别表示自然对数函数和自然指数函数,y1、y2、y3分别为步骤s102中所述的类别标签(其中1表示单行车牌,2表示双行车牌)、左边界分割点纵坐标标签、右边界分割点纵坐标标签;

然后,基于每一张车牌图像的关于三个特征向量的softmax损失函数值l1、l2、l3,计算模型训练损失值(记为loss),具体计算公式为:

式中,m1为步骤s101所述的给定的车牌图像训练数据集所包含的车牌图像数量,l1(i)、l2(i)、l3(i)分别表示车牌图像训练数据集中第i张车牌图像的关于三个特征向量的softmax损失函数值。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,所述的程序可以存储于一计算机可读取存储介质中,所述的存储介质,如rom/ram、磁盘、光盘等。

以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

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