本发明涉及图像处理
技术领域:
,具体涉及一种蓝色车牌分割与矫正方法。
背景技术:
:车牌识别系统是智能交通系统的关键组成部分,其具有广泛的应用场景,如汽车防盗、交通流量控制、停车场收费管理、闯红灯电子警察、公路收费站等。车牌识别系统大体步骤可分为车牌粗定位、精确车牌定位、车牌矫正、车牌字符识别。车牌识别系统中每个步骤联系密切,其中车牌精确定位和车牌矫正的好坏,对车牌字符识别的准确率有很大的影响。郑楷鹏、郑翠环等提出了基于色差的车牌快速定位算法,利用蓝色车牌rgb颜色通道的b通道灰度值大的特点,通过b通道减去r通道得到蓝色色差,从而突出蓝色区域像素值,抑制非蓝色区域像素值,再进行阈值分割得到精确车牌,但是在复杂条件下,比如明暗度不同、车牌有污渍、黑夜场景等,方法会失效。而车牌需要矫正的情况主要分为三种,即水平方向倾斜、垂直方向倾斜和水平垂直方向混合倾斜。我国科研人员针对三种情况提出很多矫正方法,主要可分为两种方法:1)基于传统hough变换的方法;2)基于radon变换的方法。基于传统hough变换的方法依赖于车牌边框进行确定倾斜角度,对字符与边框粘粘和无车牌边框的情况无法完成矫正。基于radon变换的方法同样有着计算量大、速度较慢、无法适应一些复杂条件的缺陷。这些方法都很难在复杂条件下完成车牌精确定位和车牌实时矫正的任务。技术实现要素:本发明的目的在于提供一种蓝色车牌分割与矫正方法,该方法能够在复杂条件下快速准确地进行车牌矫正,提高车牌识别率。为实现上述目的,本发明的技术方案是:一种蓝色车牌分割与矫正方法,包括以下步骤:步骤s1:对于车牌粗定位图像,采用其rgb通道的r通道图和hsv颜色空间的v通道图构造组合图像,进而得到突出车牌蓝色区域的蓝色区域二值图,然后将其与突出车牌白色字符区域的白色区域二值图融合,得到双区域融合二值图,从而分割出完整车牌区域;步骤s2:对双区域融合二值图进行边缘检测,在此基础上得到车牌区域外接轮廓二值图,然后对车牌区域外接轮廓二值图进行概率霍夫变换,拟合出轮廓线段,并进一步定位出车牌角点;步骤s3:得到车牌角点后,对原车牌图像进行透视变换矫正,得到矫正后的车牌图像。进一步地,步骤s1中,构造组合图像,进而得到蓝色区域二值图,然后将其与白色区域二值图融合,得到双区域融合二值图的方法为:将车牌粗定位图像通过rgb通道分离得到r、g、b通道图,再将车牌粗定位图像转换到hsv颜色空间,通过通道分离得到h、s、v通道图,使用明度分量v通道图和红分量r通道图构造突出车牌蓝色区域与背景差异的组合图像,其方法如下:ib=max(0,v-r)(1)其中,ib为组合图像中像素点的取值,v为转换到hsv的图像中像素点的v通道值,r为rgb图像中像素点的r通道值;对组合图像进行二值化,得到蓝色区域二值图;对于车体是蓝色的车牌图像,进一步采用大连通区域筛选法去除车体蓝色背景,得到去除车体蓝色背景的蓝色区域二值图;对转换到hsv颜色空间的图像使用公式(3)进行阈值分割得到白色区域二值图,以用车牌白色字符区域修补蓝色区域:其中,i′w为白色区域二值图中像素点的取值,h、s、v分别为转换到hsv的图像中像素点的h、s、v通道值,hmin、hmax分别为设定的h通道最小、大阈值,smin、smax分别为设定的s通道最小、大阈值,vmin、vmax分别为设定的v通道最小、大阈值;得到白色区域二值图后,进一步采用用大连通区域筛选法去除车体白色背景,得到去除车体白色背景的白色区域二值图;采用最后得到的白色区域二值图与蓝色区域二值图按公式(4)进行融合,得到双区域融合二值图:其中,if为双区域融合二值图中像素点的取值,i″b为去除车体蓝色背景的蓝色区域二值图中像素点的取值,i″w为去除车体白色背景的白色区域二值图中像素点的取值,即将双区域融合二值图中相加后灰度值大于255的像素点的取值设为255,其余情况直接相加;双区域融合二值图中最大区域就是车牌区域,采用非极大值抑制的方法只保留图中最大区域,从而得到完整车牌区域。进一步地,采用大连通区域筛选法去除车体蓝色背景的方法如下:步骤s11:找到蓝色区域二值图中所有连通区域的外轮廓;步骤s12:找到每个外轮廓对应的最小外接矩形;步骤s13:计算每个外接矩形的宽度和高度;步骤s14:按公式(2),判断每个连通区域的外接矩形的宽度和高度是否符合条件,符合即为车牌连通区域,保留图像原值,不符合即为背景连通区域,去除图像原值;其中,ir为连通区域中像素点的原值,ibg为设定的背景连通区域的取值,ibg=0,w、h分别为蓝色区域二值图的宽度、高度,wrect、hrect分别为外接矩形的宽度、高度,k为设定的阈值。进一步地,步骤s2中,定位车牌角点,包括以下步骤:步骤s21:对双区域融合二值图采用形态学闭操作去除车牌区域内存在的黑色孔洞,同时使边缘更加平滑;步骤s22:对闭操作后的双区域融合二值图采用canny算子进行边缘检测,并对边缘检测后的边缘图像采用非极大值抑制的方法得到最大的轮廓二值图,即为车牌区域外接轮廓二值图;步骤s23:对车牌区域外接轮廓二值图进行概率霍夫变换,拟合出轮廓线段;步骤s24:检测出轮廓线段后,通过迭代找最角落点的方法找到左上、右上、左下、右下四个最值点,从而定位出车牌的四个角点。进一步地,步骤s22中,对车牌区域外接轮廓二值图进行概率霍夫变换,拟合出轮廓线段,包括以下步骤:步骤s231:随机获取车牌区域外接轮廓二值图上的多个前景点,通过一个前景点的所有直线用公式(5)表示:ρ=cosθx+sinθy(5)其中,(x,y)为前景点的直角坐标,ρ为因变量,表示原点到直线的距离,θ为自变量,表示原点到直线的垂线与横轴的夹角,从而变换到了霍夫空间,且霍夫空间中的一个点(ρ,θ),表示直角坐标系中的一条直线;然后在霍夫空间画出该函数的曲线,该曲线就表示直角坐标中经过前景点(x,y)的所有直线;步骤s232:当霍夫空间里面有交点且经过该交点的曲线的个数达到设定的最小投票数threshold,则表明在直角坐标系中,至少有threshold个点属于同一条直线;通过该交点求出直角坐标系中的直线l;步骤s233:搜索车牌区域外接轮廓二值图上前景点,将位于直线l上且两点之间距离小于设定的最大断口长度maxlinegap的点连成线段,然后将线段上的点全部删除,并且记录所述线段起始点和终止点,线段长度要满足设定的最小长度minlinelength;步骤s234:重复步骤s231-s233,直至图像上不存在前景点。进一步地,步骤s3中,对原车牌图像进行透视变换矫正的方法为:对透视变换通用公式进行转换,得到如下透视变换公式(7):其中,(x',y')为变换后真实目标点的坐标,(u,v)为原车牌图像中要变换的点,a11、a12、a13、a21、a22、a23、a31、a32、a33为透视变换矩阵中的元素;以车牌的四个角点作为四个源点,以左上角源点与相邻两源点的距离分别作为目标矩形的长和宽,以左上角源点为左上角目标点,在水平方向作出所述目标矩形,目标矩形的四个角点即为与四个源点对应的四个目标点;基于得到的四组对应点,计算透视变换矩阵,然后再以计算得到的透视变换矩阵对原车牌图像进行透视变换,即得到矫正后的车牌图像。相较于现有技术,本发明的有益效果是:提出了一种鲁棒而高效的蓝色车牌精确分割和快速矫正方法,该方法基于跨颜色空间通道组合和区域融合实现蓝色车牌精确分割,并结合概率霍夫变换和透视变换实现基于精确分割结果的车牌快速矫正。本发明矫正速度快,实时性强,能对不同倾斜场景车牌进行快速矫正。此外,本发明算法在明暗不均、车牌有污渍、车牌变形等复杂条件下也能进行车牌的快速矫正,具有较强的鲁棒性。附图说明图1是本发明实施例的实现流程图。图2是本发明实施例中蓝色区域二值图获得过程各阶段图像的对比图。图3是本发明实施例中双区域融合二值图获得过程各阶段图像的对比图。图4是本发明实施例中双区域融合方法与单区域方法分割完整车牌效果的对比图。图5是本发明实施例中车牌角点定位过程各阶段图像的对比图。图6是本发明实施例中采用不同方法对车牌进行矫正的结果对比图。具体实施方式下面结合附图及具体实施例对本发明作进一步的详细说明。本发明的蓝色车牌分割与矫正方法,如图1所示,包括以下步骤:步骤s1:对于车牌粗定位图像,采用其rgb通道的r通道图和hsv颜色空间的v通道图构造组合图像,进而得到突出车牌蓝色区域的蓝色区域二值图,然后将其与突出车牌白色字符区域的白色区域二值图融合,得到双区域融合二值图,从而分割出完整车牌区域。具体方法为:将车牌粗定位图像通过rgb通道分离得到r、g、b通道图,再将车牌粗定位图像转换到hsv颜色空间,通过通道分离得到h、s、v通道图。如图2所示,v通道图和r通道图中,车牌蓝色区域灰度值差异较大,其他区域灰度值差异很小。因此,使用明度分量v通道图和红分量r通道图构造突出车牌蓝色区域与背景差异的组合图像,其方法如下:ib=max(0,v-r)(1)其中,ib为组合图像中像素点的取值,v为转换到hsv的图像中像素点的v通道值,r为rgb图像中像素点的r通道值。从图2(d)可以看到,两个通道相减后,车牌的背景灰度值很低,车牌的蓝色区域与背景差异变大了。采用otsu算法对组合图像进行二值化,得到如图2(e)所示的蓝色区域二值图。对于车体是蓝色的车牌图像,进一步采用大连通区域筛选法去除车体蓝色背景,得到去除车体蓝色背景的蓝色区域二值图,具体方法如下:步骤s11:找到蓝色区域二值图中所有连通区域的外轮廓。步骤s12:找到每个外轮廓对应的最小外接矩形。步骤s13:计算每个外接矩形的宽度和高度。步骤s14:按公式(2),判断每个连通区域的外接矩形的宽度和高度是否符合条件,符合即为车牌连通区域,保留图像原值,不符合即为背景连通区域,去除图像原值。其中,ir为连通区域中像素点的原值,ibg为设定的背景连通区域的取值,ibg=0,w、h分别为蓝色区域二值图的宽度、高度,wrect、hrect分别为外接矩形的宽度、高度,k为设定的阈值。本发明中k取0.9,k取值原因是:背景连通区域是车的颜色造成,车的颜色往往是纯色,所以背景连通区域的最小外接矩形的宽度和高度所占比例会很大。但是有些车牌的字符与车牌的边框有粘连的情况,仅提取蓝色区域无法解决字符与车牌边缘粘连的问题,v-r组合图像与大连通筛选法提取的蓝色区域并不是车牌的完整区域,会发生缺角现象,如图3(b)所示。如果在图3(b)中,增加字符区域,将得到更加完整的车牌区域。因此,根据蓝色车牌白色字符的特点,对转换到hsv颜色空间的图像使用公式(3)进行阈值分割得到白色区域二值图,以用车牌白色字符区域修补蓝色区域:其中,i′w为白色区域二值图中像素点的取值,h、s、v分别为转换到hsv的图像中像素点的h、s、v通道值,hmin、hmax分别为设定的h通道最小、大阈值,smin、smax分别为设定的s通道最小、大阈值,vmin、vmax分别为设定的v通道最小、大阈值。本实施例中,各最小、大阈值取值如下:hmin=25,hmax=180,smin=0,smax=125,vmin=150,vmax=255。这是本发明通过大量实验首次提出的,其他取值有些无法分割出字符区域,有些虽然可以分割出字符区域,但是带有干扰区域。车牌白色字符区域分割示例如图3(c)所示。得到白色区域二值图后,进一步采用用大连通区域筛选法去除车体白色背景,得到去除车体白色背景的白色区域二值图。采用最后得到的白色区域二值图与蓝色区域二值图按公式(4)进行融合,得到双区域融合二值图:其中,if为双区域融合二值图中像素点的取值,i″b为去除车体蓝色背景的蓝色区域二值图中像素点的取值,i″w为去除车体白色背景的白色区域二值图中像素点的取值,即将双区域融合二值图中相加后灰度值大于255的像素点的取值设为255,其余情况直接相加。因为双区域融合二值图都已去除背景,双区域融合二值图中最大区域就是车牌区域,所以采用非极大值抑制的方法只保留图中最大区域,从而得到完整车牌区域,双区域融合结果如图3(d)所示。双区域融合方法与其他单区域方法(b-r、v-r)对比如图4所示,双区域融合方法分割完整车牌区域明显优于单区域分割完整车牌方法。步骤s2:对双区域融合二值图进行边缘检测,在此基础上得到车牌区域外接轮廓二值图,然后对车牌区域外接轮廓二值图进行概率霍夫变换,拟合出轮廓线段,并进一步定位出车牌角点。具体包括以下步骤:步骤s21:对双区域融合二值图采用形态学闭操作去除车牌区域内存在的一些黑色孔洞,同时使边缘更加平滑。步骤s22:对闭操作后的双区域融合二值图采用canny算子进行边缘检测。canny算法是一个最常用的边缘检测算法,其速度和检测效果都不错。边缘检测结果如图5中(a)系列子图所示。然后对边缘检测后的边缘图像采用非极大值抑制的方法得到最大的轮廓二值图,即为车牌区域外接轮廓二值图。步骤s23:对车牌区域外接轮廓二值图进行概率霍夫变换,拟合出轮廓线段。概率霍夫变换是对传统霍夫变换的改进,在速度上有很大的提升,同时能检测到线段端点。具体包括以下步骤:步骤s231:随机获取车牌区域外接轮廓二值图上的多个前景点,通过一个前景点的所有直线用公式(5)表示:ρ=cosθx+sinθy(5)其中,(x,y)为前景点的直角坐标,ρ为因变量,表示原点到直线的距离,θ为自变量,表示原点到直线的垂线与横轴的夹角,从而变换到了霍夫空间,且霍夫空间中的一个点(ρ,θ),表示直角坐标系中的一条直线;然后在霍夫空间画出该函数的曲线,该曲线就表示直角坐标中经过前景点(x,y)的所有直线。步骤s232:当霍夫空间里面有交点且经过该交点的曲线的个数达到设定的最小投票数threshold,则表明在直角坐标系中,至少有threshold个点属于同一条直线;通过该交点求出直角坐标系中的直线l。步骤s233:搜索车牌区域外接轮廓二值图上前景点,将位于直线l上且两点之间距离小于设定的最大断口长度maxlinegap的点连成线段,然后将线段上的点全部删除,并且记录该线段起始点和终止点,线段长度要满足设定的最小长度minlinelength。步骤s234:重复步骤s231-s233,直至图像中没有前景点。最小长度minlinelength设置为50,最大断口长度maxlinegap设置为70。根据宽度为250px的图像以及车牌大小的特点,经过实验证明设定的这些阈值可以很好的检测出包含角点的线段,平均检测出来的条数12条,平均检测时间0.003s。概率霍夫变换检测结果如图5中(b)系列子图所示,实验表明,该方法很好地检测出了轮廓线段。步骤s24:检测出轮廓线段后,这些线段本身包含端点信息,数量不多,所以通过迭代找最角落点的方法找到左上、右上、左下、右下四个最值点,从而定位出车牌的四个角点。最终定位出来的角点映射到原图中如图5中(c)系列子图所示,较准确地定位出了车牌的四个角点,同时图示表明,该角点定位方法能很好地适应大尺度倾斜角度。步骤s3:得到车牌角点后,对原车牌图像进行透视变换矫正,得到矫正后的车牌图像。具体方法为:透视变换(perspectivetransformation)是将图片投影到一个新的视平面(viewingplane),也称作投影映射(projectivemapping),通用公式为公式(6):原车牌图像中要变换的点为(u,v),目标点为(x,y,z),为透视变换矩阵。因为这是一个从二维空间到三维空间的转换,但是车牌图像在二维空间,故除以z,(x′,y′,z′)=(x÷z,y÷z,z÷z),以(x,y,z)表示图像上的点,即对透视变换通用公式进行转换,得到如下透视变换公式(7):(x',y')为变换后的真实目标点。为了求得透视变换矩阵,除去a33有8个未知数,因此需要8个方程进行求解,所以需要找到四组对应点,即4个源点和4个目标点。以车牌的四个角点作为四个源点,按如下方法计算矫正后的四个目标点位置:以左上角源点与相邻两源点的距离分别作为目标矩形的长和宽,以左上角源点为左上角目标点,在水平方向作出所述目标矩形,目标矩形的四个角点即为与四个源点对应的四个目标点。基于得到的四组对应点,计算透视变换矩阵,然后再以计算得到的透视变换矩阵对原车牌图像进行透视变换,即得到矫正后的车牌图像。为了验证本文算法相比于传统算法具有优势,以40张图片为测试集,采用三种不同方法进行车牌矫正,结果对比如下表1所示:表1不同方法车牌矫正结果对比表测试图片数量方法平均时间正确率40张基于传统hough变换5.122s77.5%40张基于radon变换0.320s85.0%40张本方法0.023s95.0%第一种方法基于传统霍夫变换,该算法第一步为图像预处理:读取图像,转换为灰度图像,去除离散噪声点;第二步利用边缘检测,对图像中的水平线进行强化处理;第三步基于hough变换检测车牌图像的边框,获取倾斜角度;第四步根据倾斜角度,对车牌图像进行倾斜校正。第二种方法基于radon变换,除第三步为计算图像的radon变换,获取倾斜角度,其余步骤与第一种方法相同。为保证公平,都在灰度图下实现矫正。三种算法灰度图下矫正部分对比结果如图6所示,在倾斜角度大的粗车牌样本上,本发明矫正精确度更高,鲁棒性更好。对比实验结果表明,本发明优于其余两种方法,在时间上有较大幅度提升,可以达到实时矫正的要求。以上是本发明的较佳实施例,凡依本发明技术方案所作的改变,所产生的功能作用未超出本发明技术方案的范围时,均属于本发明的保护范围。当前第1页12