当前位置:网站首页 行业新闻 车牌识别技术里的:字符定位与分割

车牌识别技术里的:字符定位与分割

来源:门禁系统 作者:华一智能 发布日期:04-15


文章标题:车牌识别技术里的:字符定位与分割

文章地址:http://www.sdhyzn.com/index/info/info/id/3694

文章提示:本文约有3300字符,大小约为3.22KB,预计阅读时间9分钟


车牌识别技术是如何实现的,那不难想象,它是通过车牌识别称图像——通过技术识别——变成相应的字符——字符反馈给系统,系统做出独处。我们完成了对监控图像中疑似车牌区域的初步锁定。这一锁定,对于字符位置而言是不精确的。由于这个项目依赖于每个字符的识别而非对车牌的整体识别,所以接下来进行字符定位与切割是必要的。

在字符定位与切割中,我们处理的对象变成每个可能的疑似车牌区域。读者不免会好奇,这样一来在接下来的处理中,如何保证区分车牌与非车牌呢?显然,切割这种方式来说:比较好的判定准则是,从该区域中少获取7个疑似字符的小区域。这样的准则其实并不保险,但目前来看,还算是个相对靠谱的方法。在之前的处理中,我们依次得到了原图像、蓝色掩膜图像、灰度图像、阈值化图像和形态学处理图像。其中前两者是彩色图像,中间的灰度是灰度图像。阈值化以后的图像是二值黑白图像。保存原图结构的相对完整性和处理的简便性来看,阈值化图像作为字符定位的起点。当然这里也存在两种可能的处理手段:一是从阈值化后的图像中提取数组切片,获得疑似车牌阈值化区域;二是从彩色原图中获取数组切片,重新阈值化获得类似区域。为简便起见,这里选择了种方式。

有了阈值化后的疑似车牌区域以后,我们需要做的是,从左到右依次获取七个字符的精确位置。注意到由于阈值化的原因,七字符周围存在白色干扰的问题。因此这里存在一个和车牌定位与切割流程中类似问题:字符是什么?参照于车牌定位的处理方式,我们可以凭借字符的特征定义它:(1)字符总是白色的,外围由黑色环绕;(2)字符之间是有间距的,这间距由黑色填充——虽然可能混进白色干扰,但不会是显著的;(3)字符总是高度大于宽度的;(4)不考虑严重倾斜的情况(上篇中倾斜校正是解决这个问题)时,各个字符的上边界和下边界是大致平齐的:即可以给七字符找到一个近乎相切的平直上界和平直下界;(5)字符有七个(正常情况下),一个接着一个。基于这样的字符特征,我们可以对七字符定位与切割进行以下的处理:与前面固定模式的处理不同,下面的具体处理方式来自作者个人的思考(其实是网上没有找到比较满意的处理方式)——读者在答案揭晓之前,可以尝试自己探索一下解决方案。

一、竖直粗定位与切割首先我们尝试确定这七字符的上下界,这个过程可以称作竖直粗定位。目前我们处理的是二值黑白图像,从数组上看,其值为0或255。因为所谓定位过程,实际上是获取相应特征的位置索引,即该特征的二维定位坐标(x,y),用图像常见的说法是,它在哪一行、哪一列。这个信息的获取是根据0或255的变化体现出来的,那么我们注意到,把这些255换成1,不会对终索引的获取产生任何影响。一旦完成从255到1的替换,这个问题变成了如何在一个只含0或1的数组中,找到特征的位置。显然0代表黑色(一定不是车牌),1代表白色(可能是车牌,也可能是干扰):我们要挖掘0到1以及1到0的变化信息。确定七字符的上下界,实际上是判别图像中哪些行不可能是车牌,由于车牌是水平、竖直方向双连续的。我们只需要在行迭代中找到,从哪一行开始,进入车牌所在行;从哪一行开始,结束车牌所在行。A.纯黑筛选筛选的个依据是纯黑行,如果一行中完全没有白色像素,它不会是车牌区域,我们在行迭代中找出纯黑行的所有索引,可以初步排除这些行作为车牌的可能性。这一筛选的问题在于,非纯黑行可能不是车牌,即使找到所有纯黑行索引,也不能判别车牌是处于哪两个纯黑行之间:更严重的是,万一恰好没有纯黑行,那相当于没有进行筛选。因此这个标准其实只能作为初步筛选,在所有纯黑行中,上端和下端的纯黑行之间包含我们的车牌区域。B.过渡筛选用纯黑的方式筛选太过简单,没有充分利用车牌特征。这引发了我们思考:在二值黑白图像中,车牌和非车牌之间显著的差异是什么?当人眼看到二值图像时,不借助消失的色彩特征仍可以一眼分辨字符所在,究其原因在于:字符有七个,字符之间是留空的。从行特征上看,从左到右,人眼扫视每一个字符的过程中,总会看到由黑到白再由白到黑的过渡。确切地说是,每个字符起点位置由黑-白过渡处指定,终点位置由白-黑过渡处指定;反过来则不然:有黑-白或白-黑过渡的位置不一定是字符的起点或终点。那么对平直情形下的精确车牌区域来说,每行必定有7个这样的字符片段,由于字符总是有起点和终点,这样的过渡将超过7×2=14个。这是一个精确的数值特征,而且如果算上干扰项的话,过渡数目会>14。这样一来,以14处过渡作为划分标准,可以相对精确的确定车牌的上下界(很明显,非车牌区域一般不会具有14处过渡;即使具有,在竖直方向,也不可能有显著的持续,也是说,持续过渡的高度会比较小;但车牌区域的持续过渡高度会很显著)。反映在数组上,是找出每行0-1及1-0的交界数目:具体应该怎么做呢?作者采用的是,一种类似差分的思路(后一项减前一项,由于只有0和1,结果将出现0、1和-1的交替:这里1和-1的意义不同,但只需要统计它们的数目之和,与14进行比较即可)由于大于14的竖直段可能不止一处,对这样的疑似段来说,仍需进行一定的筛选:如果前面车牌的切割是有效的,那么显然,持续高度的竖直段是我们需要的车牌精细化区域。

二、水平逐分割进行竖直粗分割以后,得到了精细化的上下界(其实并不精细,真正的图像不是严格水平平齐的,所以上下界仍是一个妥协的产物):但是为了避免有时一个像素的索引差距导致字符部分缺失,我们还是保留切割前的原始阈值化图像,以便在后面可能存在问题时,进行小规模修补。确定上下界以后,我们看到,各个字符之间出现了黑色过渡(竖直粗分割帮助我们剔除了白色干扰的存在)。此时可大致确定每个字符的水平切割范围,依据的思路和竖直粗分割如出一辙:要注意的是,这时候,我们要进行的是列迭代;首先要区分的不是0和1而是纯黑列和非纯黑列,此后才依据上面差分思路的1和-1的指标性定位字符的起点和终点。由于竖直粗分割只做了竖直方向的分割,这意味着我们可以利用粗分割后精细上下界图像确定水平分割列表,再回头对原图像进行水平逐分割:这样可以更好地保障原始细节的完整。三、竖直再分割由于水平分割实际是用到没有精确上下界的原图像进行分割,那么上一步执行完成后,我们需要对每一个字符单独执行步的操作,名称相应改为竖直再分割行了。四、筛选与重建前面的过程中,我们并没有保证分割后的每个部分都是字符,所以这时候要依据字符的特征来进行筛选:宽高比、显著面积、显著高度、各字符的尺寸大致相近、各字符彼此邻接。由于汉字可能因为阈值化或者本身的上下、左右结构等原因被割裂,所以可能需要利用后六个字符的信息重建汉字字符的位置。此,完成了字符定位与分割的流程。完成了车牌识别技术的字符定位与分割的一部分。


本页关键词:内黄县车牌识别

信息标签: 车牌识别

行业应用动态