一种车牌定位方法与流程

文档序号:12597330阅读:241来源:国知局
一种车牌定位方法与流程

本发明涉及图像处理技术,特别涉及一种车牌定位方法。



背景技术:

随着经济蓬勃发展,推动了交通运输业的大发展,导致机动车辆大幅增加。然而,对机动车辆的智能监管是目前面临的问题之一。机动车辆牌照自动定位技术则是智能交通监管系统的核心问题。该技术在解决交通系统的诸多问题,如车辆收费和管理、车流量检测、违章车辆监控、停车场收费管理以及套牌、假牌车辆辨识等具体问题中存在着广泛的应用,具有巨大的经济价值。随着计算机性能的提高和图像处理技术的发展,车牌定位识别系统已日趋成熟。

目前主流的车牌定位方法主要分为:基于形态学的车牌定位算法与基于机器学习的车牌定位算法。基于形态学的车牌定位算法是根据数字字母的形状来确定车牌位置,虽然具有简单,计算时间短的优点,但其缺点是需要针对不同的场景调整阙值,适应能力和准确率较低;而基于机器学习的车牌定位虽然准确率高,但其需要对大量的样本进行特征分析、计算时间较长并不符合目前实时识别车牌的要求。

因此,需要提供一种能够快速准确识别车牌位置的方法,从而节省计算时间,提高适应能力和准确率。



技术实现要素:

本发明的主要目的在于克服现有技术的缺陷,提供一种快速准确的车牌定位方法。

为达成上述目的,本发明提供了一种车牌定位方法,该方法包括以下步骤:

S10:撷取含有车牌的图像;

S20:通过分别提取该图像中符合车牌颜色的指定颜色特征、水平边缘特征和竖直边缘特征以得到一张包含车牌候选区域的二值图;

S30:对所述车牌候选区域进行膨胀,并通过计算所述车牌候选区域中各连通域的面积,确定面积最大的连通域为车牌区域,所述连通域为由多个连续且像素值为1的像素组成的区域。

优选地,步骤S20包括:

S21:提取该图像中符合车牌颜色的指定颜色特征以得到一张包含指定颜色特征区域的二值图像;

S22:提取该图像中水平边缘特征和竖直边缘特征以得到一张包含边缘特征区域的二值图像;

S23:将上述包含指定颜色特征区域的二值图像和包含边缘特征区域的二值图像进行逻辑与运算,以得到所述包含车牌候选区域的二值图。

优选地,步骤S21包括:将所述含有车牌的图像由RGB格式图像转换到HSV格式图像,提取该图像中符合车牌颜色的指定颜色特征;步骤S22包括:将所述包含车牌的图像转换为灰度图像,利用Sobel算子提取所述水平边缘特征和竖直边缘特征。

优选地,步骤S22还包括对所述边缘特征区域进行膨胀的步骤。

优选地,对所述边缘特征区域进行膨胀的步骤包括:设定长度为P个像素、宽度为Q个像素的矩形,P和Q均为大于等于3的正整数;对所述包含边缘特征区域的二值图像中每一个像素值为1的像素,将以其为中心的该矩形范围内的所有像素的像素值替换为1。

优选地,步骤S30中对所述车牌候选区域进行膨胀包括矩形像素组膨胀和/或形态学膨胀,其中所述矩形像素组膨胀包括:设定长度为M个像素、宽度为N个像素的矩形,M和N均为大于等于3的正整数;对所述包含车牌候选区域的二值图中每一个像素值为1的像素,将以其为中心的该矩形范围内的所有像素的像素值替换为1。

优选地,步骤S30中计算所述车牌候选区域中各连通域的面积的步骤包括:

S31:沿水平方向逐行扫描所述车牌候选区域;

S32:为每一行中像素值为1的像素及其相邻像素值为1的像素标记连通域编号;

S33:计算各所述连通域中像素值为1的像素的个数以得到各所述连通域的面积。

优选地,步骤S32包括:

S321:对于像素值为1的当前像素判断其是否已被标记为属于第1个-第i个中任一个连通域,若是则进行步骤S323,若否则将其标记为属于第i+1个连通域并使得第i+1个连通域中像素值为1的像素个数加1;对于像素值为0的当前像素进行步骤S323;其中i为已标记的连通域的编号最大值;

S322:扫描该当前像素的8个相邻像素,若有K个相邻像素的像素值为1且没有被标记为属于第1个-第i+1个中任一个连通域,将该K个相邻像素标记为属于第i+1个连通域并使得第i+1个连通域中像素值为1的像素个数递增K,其中K为小于等于8的正整数;

S323:选取当前行的下一个像素作为当前像素;

重复上述步骤S321-S323直至该行所有像素扫描完毕。

优选地,所述车牌定位方法还包括:将所述车牌区域的坐标映射至所述含有车牌的图像中,以获得车牌图像。

相较于现有技术,本发明采用一种基于颜色和连通域的车牌定位方法,即充分利用了车牌背景和车身颜色不同的特点,同时又结合了车牌外框和车牌字符纹理,可以在具有复杂背景的全景图中准确定位车牌。同时,相比于现有的机器学习车牌定位法和基于形态学车牌定位法,本发明的车牌定位方法更简单,节省了计算时间,提高了适应性和准确性。

附图说明

图1所示为本发明一实施例的车牌定位方法的流程图;

图2所示为包含指定颜色特征区域的二值图像;

图3所示为包含车牌的灰度图像;

图4所示为包含车牌候选区域的二值图;

图5所示为车牌候选区域进行膨胀后的二值图像;

图6所示为标记车牌候选区域中各像素所属连通域的流程图。

具体实施方式

为使本发明的内容更加清楚易懂,以下结合说明书附图,对本发明的内容作进一步说明。当然本发明并不局限于该具体实施例,本领域内的技术人员所熟知的一般替换也涵盖在本发明的保护范围内。

如图1所示,本发明的车牌定位方法包括以下步骤:

S10:撷取含有车牌的图像。

本步骤中,通过彩色相机摄像头拍摄图像,得到含有车牌的图像。

S20:通过分别提取该图像中符合车牌颜色的指定颜色特征、水平边缘特征和竖直边缘特征以得到一张包含车牌候选区域的二值图。

本步骤中,通过提取含有车牌的图像中符合车牌颜色的指定颜色特征,从而得到一张包含指定颜色特征区域的二值图像;通过提取含有车牌的图像中水平边缘特征和竖直边缘特征,从而得到一张包含边缘特征区域的二值图像;将上述包含指定颜色特征区域的二值图像和包含边缘特征区域的二值图像进行逻辑与运算,最终得到包含车牌候选区域的二值图。

其中,通过提取含有车牌的图像中符合车牌颜色的指定颜色特征,从而得到一张包含指定颜色特征区域的二值图像的步骤具体通过以下方法实现。

首先,将含有车牌的图像由RGB格式图像转换为HSV格式图像。HSV色彩空间比RGB色彩空间更具有直观性,其中H代表色调,取值范围0~360°;S代表饱和度,取值范围0~1;V代表亮度,取值范围0~1。R、G、B分别是三基色格式中的红、蓝、绿分量值。可以通过多种方式实现RGB格式图像至HSV格式图像的转换,在本发明中采用分段定义法:

V=max(R,G,B)

其中,如果H<0,H=H+360°。

转换完成后,获取HSV格式图像中每一个像素点的色度信息、饱和度信息与亮度信息,由此获得HSV色彩空间Img_hsv,色彩空间Img_hsv中的元素即为每个像素上的色度信息、饱和度信息与亮度信息。然后,提取指定颜色特征的区域。指定颜色可以选择以下颜色中的至少一种:蓝色、黄色、白色。在本实施例中,选择蓝色作为指定色,即在色彩空间Img_hsv中选取一个蓝色子空间Img_blue。其中,蓝色子空间Img_blue中的元素满足(H≥0.5)&(H≤0.75)&(S≥0.25)&(V≥0.125),“&”为逻辑与的关系。提取出蓝色特征后,将蓝色像素的像素值设为1,其它颜色像素的像素值设为0,从而得到一张包含蓝色特征区域的二值图像,如图2所示。虽然本实施例中将RGB格式图像转换为HSV格式图像,也可以将RGB格式图像转换为其他格式图像(如HSL等)以进一步提取指定颜色特征。

接下来,将说明步骤S22中提取含有车牌的图像中水平边缘特征和竖直边缘特征,从而得到一张包含边缘特征区域的二值图像的具体实现方法。

由于车牌区域相比于车身区域具有较丰富的边缘特征,因此对含有车牌的图像做边缘特征提取能够有效减少车身区域对车牌区域提取的影响。

如图3所示,首先将RGB格式的含有车牌图像转换成灰度图Img_grey,然后利用Sobel算子对灰度图像的每一个像素点做卷积,获得车牌图像边缘特征值。其中,为了获得车牌图像中车牌边框以及车牌内部字符水平信息,对车牌图像做水平边缘特征提取:

Img_sobel_x=Img_grey*sobel_x

为了获得车牌图像中车牌边框以及车牌内部字符垂直信息,对车牌图像做竖直边缘特征提取:

Img_sobel_y=Img_grey*sobel_y

其中sobel_x和sobel_y分别为水平Sobel算子和竖直Sobel算子,在本实施例中它们分别为:

经过Sobel算子卷积后获得两个一维数组Img_sobel_x和Img_sobel_y,分别记录了图像的水平边缘点和垂直边缘点,从而可以得到一张包含水平和竖直边缘特征区域的二值图像。之后,对边缘特征区域进行膨胀。本实施例中,利用矩形像素组填充的方法进行膨胀。具体地,设定长度为P个像素、宽度为Q个像素的矩形(P和Q均为大于等于3的正整数),然后对图像中每一个像素值为1的像素,将以其为中心的该矩形范围内的所有像素的像素值替换为1,由此可使得边缘信息变得更为丰满。

将包含指定颜色特征区域的二值图像和包含边缘特征区域的二值图像进行逻辑与运算,可以得到如图4所示的包含车牌候选区域的二值图。由于车牌候选区域既包含水平和垂直边缘信息,又要同时满足指定颜色信息,这样基本上可以舍弃大量无用的疑似区域。

S30:对车牌候选区域进行膨胀,并通过计算车牌候选区域中各连通域的面积,确定面积最大的连通域为车牌区域。

本步骤中,连通域指的是由多个连续且像素值为1的像素组成的区域。对车牌候选区域的膨胀可通过矩形像素组填充膨胀和/或形态学膨胀来完成。矩形像素组填充膨胀的方法和上述边缘特征区域的膨胀方法相同,在此不作赘述。形态学膨胀的次数可根据实际需求设定。图5所示为经膨胀后的车牌候选区域,可以发现各车牌候选区域内部的空隙被填满了。通过本步骤的膨胀处理(类似于加粗处理),可以使车牌候选区域更加近似车牌形状的封闭图形。这一步的目的主要是为了将各个车牌候选域变成封闭区域以方便下一步寻找连通域。

接下来将说明如何计算车牌候选区域中各连通域的面积。

在计算车牌候选区域中各连通域的面积时需沿水平方向逐行扫描车牌候选区域;为每一行中像素值为1的像素及其相邻像素值为1的像素标记连通域编号;以及计算各连通域中像素值为1的像素的个数以得到各连通域的面积。

对像素标记连通域编号的具体实施方法如图6所示:

扫描车牌候选区域膨胀后的二值图,从第一个像素开始,顺序为从左到右从上到下。连通域的编号也是从1开始标记。

当对某一行像素进行扫描时,判断当前像素Pi的像素值(S601);若为1则进一步判断其是否已经被标记为属于已有编号的连通域(S602);若其没有被标记过,那么将像素Pi标记为属于新的连通域编号(即已标记的连通域编号的最大值+1),并将该新编号的连通域中像素值为1的像素个数加1(S603);继续扫描当前像素Pi的8个相邻像素(S604);如果有相邻像素(如K个,1≤K≤8)的像素值为1且没有被标记为属于已有编号的任意一个连通域(S605),将该相邻像素标记为属于与像素Pi相同的连通域并使得该连通域中像素值为1的像素个数递增K(S606),若没有这样的相邻像素那么继续扫描该行的下一个像素(S607)。如果像素Pi已经被标记过,那么继续扫描该行的下一个像素(S607);如果当前像素Pi的像素值为0,那么继续扫描该行的下一个像素(S607)。

重复进行上述步骤直到该行的所有像素扫描完毕,逐行扫描,当全部像素扫描完毕后,可以得到多个连通域,选取其中像素值为1的像素个数最多的连通域,即面积最大的连通域,作为车牌区域。

较佳地,还可以将车牌区域的坐标映射至最初撷取的含有车牌的图像中,从而获得车牌图像。以获得车牌图像步骤S442:根据所述车牌区域坐标,通过映射获得原图中车牌图像。再根据所获得的车牌区域坐标,通过映射获得原图中车牌图像。

综上所述,相较于现有技术,本发明采用一种基于颜色和连通域的车牌定位方法,即充分利用了车牌背景和车身颜色不同的特点,同时又结合了车牌外框和车牌字符纹理,可以在具有复杂背景的全景图中准确定位车牌。同时,相比于现有的机器学习车牌定位法和基于形态学车牌定位法,本发明的车牌定位方法更简单,节省了计算时间,提高了适应性和准确性。

虽然本发明已以较佳实施例揭示如上,然所述诸多实施例仅为了便于说明而举例而已,并非用以限定本发明,本领域的技术人员在不脱离本发明精神和范围的前提下可作若干的更动与润饰,本发明所主张的保护范围应以权利要求书所述为准。

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