本发明涉及图像处理领域,尤其是一种基于选择性搜索算法的车标检测识别方法及系统。
背景技术:
综上所述,目前的车标检测算法存在以下缺陷或不足:
1)大多仅针对小型车辆进行车标检测,无法适用于所有车型,适用性不广。
2)在光照、倾斜、复杂车标栅格背景等条件的影响下,目前的算法难以进行车标精确检测,鲁棒性较弱。
技术实现要素:
为解决上述技术问题,本发明的目的在于:提供一种适用性广、鲁棒性强和检测速度快的基于选择性搜索算法的车标检测识别方法。
本发明的另一目的在于:提供一种适用性广、鲁棒性强和检测速度快的基于选择性搜索算法的车标检测识别系统。
本发明所采取的技术方案是:
一种基于选择性搜索算法的车标检测识别方法,包括以下步骤:
对原始车辆图像进行车牌定位,获取车牌位置;
根据车牌位置、车牌与车标空间位置关系和车窗边缘信息在原始车辆图像中对车标进行粗定位,得到车标粗定位图像;
基于车辆中轴线在车标粗定位图像中选取车标候选区;
采用选择性搜索算法对车标候选区进行目标定位,得到定位目标集,所述选择性搜索算法综合根据颜色相似度、纹理相似度、大小相似度和吻合度相似度来进行区域合并;
采用线性约束编码算法训练车标判断分类器来对定位目标集进行车标的判别,得到车标的位置;
采用线性约束编码算法训练多类车标识别分类器来对车标进行具体的类型识别,得到车标识别结果。
进一步,所述根据车牌位置、车牌与车标空间位置关系和车窗边缘信息在原始车辆图像中对车标进行粗定位,得到车标粗定位图像这一步骤,其包括:
根据车牌粗定位上边界位置确定车标粗定位下边界位置,所述车标粗定位下边界的坐标Ydown的表达式为:Ydown=yup,其中,yup为车牌粗定位上边界的坐标;
根据原始车辆图像的垂直投影对车窗进行粗定位,并根据车窗边缘粗定位信息确定车标粗定位上边界位置,所述车标粗定位上边界的坐标Yup的表达式为:
其中,h(x)为原始车辆图像边缘的垂直投影,max2h(x)表示从边缘的垂直投影h(x)中由上至下选择两个最大值h(x1)和h(x2)对应的横坐标x1和x2,H为原始车辆图像的高,b为经验阈值;
根据车标粗定位下边界的坐标Ydown和车标粗定位上边界的坐标Yup得出车标粗定位图像。
进一步,所述基于车辆中轴线在车标粗定位图像中选取车标候选区这一步骤,其包括:
在车标粗定位图像中确定车辆中轴线;
根据车辆中轴线选择设定宽度和设定高度的区域作为第一车标候选区域。
进一步,所述采用选择性搜索算法对车标候选区进行目标定位,得到定位目标集这一步骤,其包括:
S1、在第一车标候选区域内采用选择性搜索算法进行目标检测,若未检测到任何目标,则执行步骤S2,反之,则直接跳至步骤S3;
S2、以设定的横向扩增宽度对第一车标候选区域进行横向扩增,形成第二车标候选区域,然后在第二车标候选区域内采用选择性搜索算法进行车标目标检测,若仍未能检测到任何目标,则舍弃第一车标候选区域并以新的横向扩增宽度扩增第二车标候选区域,直到第二标候选区域检测到目标后执行步骤S3;反之,则执行步骤S3;
S3、判断检测到的目标是单个字符还是字符串车标或符号型车标,若是字符串车标或符号型车标,则结束选择性搜索算法,若是单个字符,则以该字符高度的1.5倍作为候选区的高作为第三车标候选区域的高,继续在第三车标候选区域内采用选择性搜索算法进行目标检测。
采用基于图论的图像分割算法从车标候选区中获取初始分割区域;
计算初始分割区域中相邻区域间的综合相似度,所述相邻区域间的综合相似度计算公式为:
其中,s(ri,rj)、scolor(ri,rj)、stexture(ri,rj)、ssize(ri,rj)和fill(ri,rj)分别为区域ri与区域rj间的综合相似度、颜色相似度、纹理相似度、大小相似度和吻合度相似度,a1、a2、a3和a4分别为颜色相似度权重系数、纹理相似度权重系数、大小相似度权重系数和吻合度相似度权重系数,a1、a2、a3和a4的取值范围均为(0,1),和分别为区域ri和区域rj对应的3×25维颜色空间向量,和分别为区域ri和区域rj对应的8×3×10维纹理向量,n为颜色空间向量或纹理向量的元素总数,size(ri)、size(rj)、size(im)和size(BBij)分别区域ri的大小、区域rj的大小、所有区域合并完成后得到的整幅图像的大小和区域ri与区域rj合并后的区域外界矩形的大小;
以综合相似度最大为合并原则,根据计算的相邻区域间的综合相似度合并初始分割区域,得到定位目标集。
进一步,所述采用线性约束编码算法训练车标判断分类器来对定位目标集进行车标的判别,得到车标的位置这一步骤,其包括:
将样本集的样本划分为正样本和负样本,其中,正样本包括单个字符样本、样本集中的小型车样本和样本集中的大型车标样本,负样本为样本集中大小随机选取的且与车标重合度小于20%的样本;
以正样本作为训练样本,采用线性约束编码分类器进行迭代训练直至收敛,最终训练出车标判断分类器,其中,迭代训练过程在每次完成训练后会将车标判断分类器中错分为负样本的样本加入训练样本中形成新训练样本集,然后再以新训练样本集重新进行训练;
根据训练出的车标判断分类器对定位目标集进行车标的判别,得到车标的位置。
进一步,所述采用线性约束编码算法训练多类车标识别分类器来对车标进行具体的类型识别,得到车标识别结果这一步骤,其包括:
以单个字符作为车标,将人工标注的车标和字符串车标的单个字符放入线性约束编码分类器进行迭代训练,并将分类错误的车标作为难例再次放入线性约束编码分类器进行训练直至收敛,得到多类车标识别分类器;
根据多类车标识别分类器对车标进行具体的类型识别:若当前多类车标识别分类器的车标识别结果为非单个字符的车标,则以当前多类车标识别分类器的车标识别结果作为该车的车标类型;若当前多类车标识别分类器的车标识别结果为单个字符,则根据该单个字符重新选择第三车标候选区域,然后再次进行车标定位,并将定位得到的字符进行组合形成字符串,最终以该字符串的车标类型作为车标识别结果。
本发明所采取的另一技术方案是:
一种基于选择性搜索算法的车标检测识别系统,包括:
车牌定位模块,用于对原始车辆图像进行车牌定位,获取车牌位置;
车标粗定位模块,用于根据车牌位置、车牌与车标空间位置关系和车窗边缘信息在原始车辆图像中对车标进行粗定位,得到车标粗定位图像;
车标候选区选取模块,用于基于车辆中轴线在车标粗定位图像中选取车标候选区;
目标定位模块,用于采用选择性搜索算法对车标候选区进行目标定位,得到定位目标集,所述选择性搜索算法综合根据颜色相似度、纹理相似度、大小相似度和吻合度相似度来进行区域合并;
车标判别模块,用于采用线性约束编码算法训练车标判断分类器来对定位目标集进行车标的判别,得到车标的位置;
车标类型识别模块,用于采用线性约束编码算法训练多类车标识别分类器来对车标进行具体的类型识别,得到车标识别结果。
进一步,所述车标粗定位模块包括:
车标粗定位下边界位置确定单元,用于根据车牌粗定位上边界位置确定车标粗定位下边界位置,所述车标粗定位下边界的坐标Ydown的表达式为:Ydown=yup,其中,yup为车牌粗定位上边界的坐标;
车标粗定位上边界位置确定单元,用于根据原始车辆图像的垂直投影对车窗进行粗定位,并根据车窗边缘粗定位信息确定车标粗定位上边界位置,所述车标粗定位上边界的坐标Yup的表达式为:
车标粗定位图像获取单元,用于根据车标粗定位下边界的坐标Ydown和车标粗定位上边界的坐标Yup得出车标粗定位图像。
进一步,所述目标定位模块包括:
图像分割单元,用于采用基于图论的图像分割算法从车标候选区中获取初始分割区域;
相似度计算单元,用于计算初始分割区域中相邻区域间的综合相似度,所述相邻区域间的综合相似度计算公式为:
区域合并单元,用于以综合相似度最大为合并原则,根据计算的相邻区域间的综合相似度合并初始分割区域,得到定位目标集。
附图说明
图1为本发明一种基于选择性搜索算法的车标检测识别方法的整体流程图;
图2为大型车辆车标的4种车标类型示意图;
图3为本发明车标粗定位过程示意图;
图4为本发明车标候选区划定过程示意图;
图5为本发明采用选择性搜索算法对车标候选区进行目标定位的流程图;
图6为车标判断分类器的训练过程示意图;
图7为本发明多类车标识别分类器的训练过程示意图;
图8为本发明车标识别过程的流程图。
具体实施方式
参照图1,一种基于选择性搜索算法的车标检测识别方法,包括以下步骤:
进一步作为优选的实施方式,所述根据车牌位置、车牌与车标空间位置关系和车窗边缘信息在原始车辆图像中对车标进行粗定位,得到车标粗定位图像这一步骤,其包括:
进一步作为优选的实施方式,所述基于车辆中轴线在车标粗定位图像中选取车标候选区这一步骤,其包括:
进一步作为优选的实施方式,所述采用选择性搜索算法对车标候选区进行目标定位,得到定位目标集这一步骤,其包括:
进一步作为优选的实施方式,所述采用线性约束编码算法训练车标判断分类器来对定位目标集进行车标的判别,得到车标的位置这一步骤,其包括:
进一步作为优选的实施方式,所述采用线性约束编码算法训练多类车标识别分类器来对车标进行具体的类型识别,得到车标识别结果这一步骤,其包括:
参照图1,一种基于选择性搜索算法的车标检测识别系统,包括:
进一步作为优选的实施方式,所述车标粗定位模块包括:
进一步作为优选的实施方式,所述目标定位模块包括:
下面结合说明书附图和具体实施例对本发明作进一步详细说明。
实施例一
车辆的类型可大致分为大型车辆和小型车辆,小型车辆的车标通常为符号型车标,但大型车辆车标根据车标纹理可以分为三类:字符型车标、符号型车标和混合型车标,如图2所示,其中,图2(a)为字符型车标,图2(b)为符号型车标,图2(c)和图2(d)为混合型车标。两类车辆车标的空间位置关系和纹理特征皆有差异,这些因素增加了车标检测的难度。
针对现有车标检测识别方法适用性不广、鲁棒性不强和检测速度慢的问题,本发明提出了一种全新的基于选择性搜索算法的车标检测识别方法,该方法适用于所有车型进行车标检测。为了保证车标定位的实时性和车标定位在复杂车标背景下定位的有效性,本发明首先利用车牌与车标的空间结构关系和车窗的边缘信息对车标进行粗定位。而为了减轻计算量,本发明利用车辆中轴线来进行车标候选区的获取,同时利用了选择性搜索算法进行目标定位并通过线性编码算法对目标进行筛选,最后通过非极大值抑制(即收敛)的方式获取车标位置及车标识别结果。
如图1所示,本发明一种基于选择性搜索算法的车标检测识别整体方法的具体过程如下:
(一)对原始车辆图像进行车牌定位,获取车牌位置。
获取原始车辆图像后,可采用现有的车牌定位方法来获得车牌位置。
(二)根据车牌位置、车牌与车标空间位置关系和车窗边缘信息在原始车辆图像中对车标进行粗定位,得到车标粗定位图像。
车标与车牌、车窗有着极为重要的空间位置关系:车标位于车牌上方、车标位于车窗下方。在无法确定车牌位置信息精确度的情况下,本发明利用车牌粗定位的位置信息和车窗的边缘特征来获取车标粗定位位置。
(1)利用车牌粗定位上边界位置确定车标粗定位下边界位置。
Ydown=yup(1)
其中,Ydown表示车标粗定位下边界的坐标,yup表示车牌粗定位上边界的坐标。
(2)通过车窗的边缘特征信息确定车标粗定位上边界位置。
车窗具有明显的边缘和空间位置特征:车窗边界边缘复杂但内部边缘相对平滑;车窗位于车脸的最上方。因此,可利用车辆的垂直投影对车窗进行粗定位:
x1,x2=max2h(x)
s.t.|x1-x2|∈[H/4,H/2],x1∈(0,H/3],|h(x1)-h(x2)|≤b(2)
上式中,h(x)表示车辆边缘图像的垂直投影,max2h(x)表示从边缘垂直投影中由上至下选择最大两个值的横坐标x1和x2,H表示原始车辆图像的高,b为经验阈值。
而车标粗定位上边界的坐标Yup为:
Yup=x2-(x2-x1)/2(3)
(3)根据公式(1)、(2)、(3)可得到车标粗定位图像,如图3所示。其中,图3(a)为原始车辆图像,图3(b)为基于车牌位置的车标粗定位图像,图3(c)为最终的车标粗定位图像。
(三)基于车辆中轴线在车标粗定位图像中选取车标候选区。
(四)采用选择性搜索算法对车标候选区进行目标定位,得到定位目标集。
本发明选择性搜索算法明通过颜色、纹理、大小、吻合度四个方面进行相邻区域间相似度的计算。
(1)颜色相似度。
归一化后获取图像每个颜色通道的25个区间的直方图,即每个分割区域得到3*25维颜色空间向量则区域之间相似度scolor(ri,rj)计算公式如下:
区域合并过程中需对新的区域再次计算直方图,可通过公式(5)的简化算法进行计算:
size(ri)表示区域ri的大小,size(rj)表示区域rj的大小,Ci和Cj表示区域ri和rj的颜色向量,Ct为新的区域的颜色向量。
(2)纹理相似度。
为减少计算量,本发明采用了HOG特征替代SIFT特征来对区域纹理进行描述。本发明通过8个区间的梯度直方图统计梯度特征,并在区域每个颜色通道内获取10个空间,即每个区域获得8*3*10维向量则区域间纹理相似度stexture(ri,rj)计算公式如下:
(3)大小相似度。
当相邻两区域间颜色相似度、纹理相似度相同时,应保证面积较小的区域先合并,即大小相似度越大越合并,因此本发明定义了大小相似度ssize(ri,rj):
上式中,size(im)表示所有区域合并完成后得到的整幅图像的大小。
(4)吻合度相似度。
为降低计算量,本发明令存在相交或包含关系的区域先合并,定义了吻合度相似度fill(ri,rj):
其中,size(BBij)表示区域ri与区域rj合并后的区域外界矩形的大小。
将以上四种相似度以加权求和的方式进行组合,可以得到相邻区域间的综合相似度:
s(ri,rj)=a1scolor+a2stexture+a3ssize+a4fill(9)
通过公式(4)-(9)对初始分割区域进行合并,这样不仅能够适应不同的尺度,而且保证了目标的分割准确度。
(五)车标的判别和车标类型的识别。
选择性搜索算法只能定位出目标区域,但无法确定所定位区域是否为车标区域,因此本发明还需要利用线性约束编码算法(ScSPM)训练车标判断分类器对定位目标集进行车标的判别以及训练车标识别分类器对车标进行具体的类型识别。
线性约束编码算法(ScSPM)是一种较为成熟的分类器训练算法,该算法首先采用SIFT(即尺度不变特征变换)去提取目标图像的特征,然后利用预先生成的词典和线性编码对目标图像特征进行编码,从而建立起一个合理的图像语义表达模型来对每幅图像进行表达,接着利用空间金字塔匹配的方法得到图像的最终表达向量,最后把每幅图像的最终表达向量放入支持向量机(SVM)进行训练和识别,利用该算法可以有效地训练车标判别分类器和车标识别分类器。
其中,车标判断分类器的训练过程如图6所示:将样本集中的大型车标和小型车标作为正样本,同时由于字符串车标中各个字符易分散定位,故加入单个字符作为正样本,负样本则用大小随机选取的、与车标重合度小于20%的样本,接着,以正样本作为训练样本,以负样本作为测试样本,利用线性约束编码算法训练车标判断分类器。车标判断分类器采用迭代训练的方式,在每次完成训练后,将车标判断分类器中错分为负样本的样本(即难例)加入训练样本中,再次利用线性约束编码算法进行训练,直至收敛。本发明通过以上过程,训练得到车标判断分类器,然后即可根据该车标判断分类器进行车标的判别。当检测得到同一车辆含有多个车标时,本发明可利用车标判断分类器对各个车标进行打分,进而根据得分来获取目标车标定位结果。
而对于部分字符串车标,由于字符串间间隙较大,无法完整定位字符串,仅能定位得到字符串中的单个字符,因此无法准确识别车标类型。针对这一问题,本发明利用线性约束编码算法训练了多类车标识别分类器,如图7所示。
从图7可知,多类车标识别分类器训练时将单个字符作为车标进行训练,字符相对较少因此并不会影响分类器的识别效果。本发明将人工标注的车标和字符串车标的单个字符放入线性约束编码分类器进行迭代训练,并将分类错误的车标作为难例再次放入线性约束编码分类器进行训练,直至收敛。由于线性约束编码分类器本身的特性,基本上迭代训练3次即可收敛。而本发明具体的车标识别过程则如图8所示,当多类车标识别分类器的车标识别结果为某类非单个字符的车标时,即可根据该识别结果确定该车的车标类型;当多类车标识别分类器的车标识别结果为单个字符时,则需要再根据该字符选择第三车标候选区域3,再次进行车标定位,并将定位得到的字符进行组合形成字符串,从而获得最终的车标识别结果。
本发明提出了一种新型的基于选择性搜索的车标检测识别方法与系统,具有以下优点:;
1)适用于各类车型,不受车型限制,大型或小型车辆皆可进行定位。
2)利用车标纹理、颜色、大小和吻合度特性进行选择性搜索,可以更准确地定位到车标位置。
3)利用线性约束编码算法的优良特征来训练车标判别分类器和车标识别分类器,涵盖市面上绝大多数车标类型,能够更准确和有效地定位和识别车辆车标。
4)根据车辆的空间位置信息和车辆中轴线进行车标候选区的选取,极大减少了选择性搜索算法的耗时,检测速度更快,满足了车标定位实时性的需求。
6)计算复杂度远远低于现有的车标检测识别技术,是一种高速且有效的车标精确定位与识别方案。
以上是对本发明的较佳实施进行了具体说明,但本发明并不限于所述实施例,熟悉本领域的技术人员在不违背本发明精神的前提下还可做作出种种的等同变形或替换,这些等同的变形或替换均包含在本申请权利要求所限定的范围内。