您的位置:首页 > 其它

图像五值化与基于三值图像的车牌识别(1)

2011-01-01 23:14 423 查看
庆祝2011年新年

张忠义

海口愚佬会教育科技有限公司 全文下载 www.yulaohui.com/color5_2/

摘 要: 图像五值化是通过公式Y =(R+G)/2,将RGB空间映射到YB空间,再将YB空间简化成黑、蓝、灰、黄、白五种值的图像简化方法。针对中国车牌,通过黑、蓝合并,白、黄合并,图像可进一步简化成三值。基于三值图像的车牌识别包括基于三值图像的字符识别和基于三值图像按分割反推的车牌定位。三值图像保留的中间灰色可根据识别的车牌底色视同字符识别所需的车牌底色或字符色,从而能弥补受光照不均匀或车牌“脏”影响按阈值选取进行图像二值化可能导致的图像信息缺失,有利于提高字符识别的正确率。基于三值图像按分割反推的车牌定位是指在确保图像遍历高效的前提下,通过基于三值图像的投影如果可以进行字符分割则得到一个候选车牌定位。其好处是可以先按照第三方关于车牌的规定检测字符间距,排除伪车牌,做到车牌定位不误,还可以使车牌定位不再依赖车牌特征,可以不再理会图像中对车牌特征所谓的干扰,做到车牌定位不漏。

1 问题

目前普遍的观点认为车牌识别分为车牌定位、字符分割和字符识别三步。车牌定位是车牌识别中最为关键的一步,它决定着字符分割和字符识别的效果,是影响整个车牌识别率的主要因素。

1.1 车牌定位的主要问题

车牌定位一般是根据车牌特征,如纹理、角点、边缘、颜色等。根据单一车牌特征进行车牌定位的主要问题是图像背景复杂或图像受光照不均匀影响容易发生定位遗漏。根据多车牌特征融合进行车牌定位与减少定位遗漏并无必然联系,且会增加定位时间。

另一方面,根据车牌特征定位只能是一个大致的范围,候选区域左右边界不能完全确定。这是因为,边界是背景与前景或前景与背景的过渡,当图像受到较大干扰或前景与背景较“接近”时,边界就容易变“模糊”。此种情况下,在边界进行二值化和投影就容易出错。车牌中汉字和数字、英文字符结构不同。有些汉字是可以分割的,比如“琼”就可以被分割成“王”和“京”。当候选区域左右边界的不确定性与车牌中首字符可分割同时出现时,就有可能造成车牌首字符分割错误,比如把“琼”分割成“京”,导致车牌首字符不能正确识别,即“琼”有可能最终被识别成“京”。

1.2 字符分割的主要问题

车牌定位选定候选区域后,一般的做法是:

一、对候选区域进行二值化;

二、通过纵向投影和横向投影将二值化的候选区域分割成若干个单个的字符区域;

三、对单个字符区域逐个进行字符识别;

四、若字符识别符合预设的可信度要求,则候选区域为确定车牌,推出车牌识别结果,否则,轮换下一个候选区域继续进行上述步骤。

这里的问题是,一般而言,图像二值化的困难在于阈值选取。阈值属于图像处理领域内的经典难题,事实上,没有一个方法可以得到一个通用的阈值,也没有一个方法可以评估得到的阈值对于要处理的图像是否适当。另一方面,所谓“二值化”就是根据选定阈值将候选区域分类为“黑”或“白”。随着车牌识别应用场合越来越广泛,应用环境越来越复杂,获得的受光照不均匀或车牌“脏”影响的图像也越来越多。候选区域受光照不均匀或车牌“脏”影响的像素点往往表现为“灰”,其灰度值与选定阈值相差不大,有可能不被正确分类到“黑”或“白”中,从而影响投影计算,导致字符分割或无法分割或分割错误。也就是说,投影与分割建立在候选区域二值化基础上,不能正确处理“灰”像素,这一处理方法自身是有缺陷的。

还有,根据投影进行字符分割,其分割是不严格的。图像中“广告用电话号码”等伪车牌有可能被当成车牌号识别。事实上,中国车牌必须满足公安部有关车牌的国家标准,字符之间的间距应符合相关规定。由于车牌定位得到的候选区域其左右边界的不确定性,即候选区域的宽度不一定是车牌宽度,所以,既不能根据候选区域的宽度按照公安部规定计算字符间距的方式来分割候选区域,反过来,既然无法得到一个确定的车牌宽度也就不能根据车牌宽度对投影得到的分割结果进行验证。没有分割字符的间距验证,车牌识别只是字符串识别,图像中“广告用电话号码”等伪车牌也就自然不能被杜绝。

1.3 字符识别的主要问题

图像二值化的根本问题是不能反映图像的中间状态,即中间“灰”。中间“灰”是客观存在的。车牌图像在感光成像时,除了车牌底色和字符色外,一定存在位于字符边缘的由车牌底色向字符色过渡的中间色。由于阈值选取原因,中间色可能被过多保留,表现为字符笔划变粗,中间色也可能被过多丢弃,表现为笔划变细。受光照不均匀或车牌“脏”影响的“灰”像素也有可能由于阈值选取原因被过多保留,呈现为干扰。笔划变粗、笔划变细或图像被干扰,对字符识别都是不利的。

图像二值化完全可以理解为将图像的所有像素点分类为车牌底色和字符色。这种简单的分类方法是明显不适合中间“灰”或图像的“灰”像素。字符Q,字符D,字符B等角上像素往往呈现为中间“灰”。中间“灰”或图像的“灰”像素应作为中间状态保留,这样才不会造成图像信息损害,不会影响字符识别。

字符识别的关键不在于选用神经网络方法,还是模板匹配方法,关键是应控制二值化对图像的损害。如果二值化对图像的损害太大,不管用什么方法都不可能得到良好的字符识别效果。

2 解决上述问题的方法

车牌识别技术产生于20世纪90年代,尽管经过20年的发展,车牌识别仍然只能针对成像条件较好的图像进行,对受光照不均匀或车牌“脏”影响的图像,其识别率仍低。尤其是近年来图像高清化趋势越来越明显,图像中车牌受到的干扰越来越多,原有针对车牌定位、字符分割和字符识别的算法越来越不适应这一变化。原有算法概括一句话就是一个比一个好。随着图像越来越复杂,新的算法总能找到图像的差异所在,总能在原有基础上做到一些改进。问题是算法在不断改进,而车牌识别率却没有得到大的提高。

这是因为,算法的基础是颜色、灰度、二值化。图像越来越复杂,是说中间“灰”或图像“灰”像素越来越多。就此要找到一个恰当的阈值,使这些中间“灰”或图像“灰”像素都分类正确是不容易的。相反可能会更多地被分类错。一旦中间“灰”或图像“灰”像素被分类错就呈现为干扰。原有算法没有关注这些最基本的问题,而是想方设法去解决这些基本问题的表现形式:干扰。结果是算法的鲁棒性越来越差。

因此,对上述问题的解决需要从最基本的颜色、灰度、二值化着手,重新建立直接基于彩色图像的算法体系,使算法能在图像无损的基础上,针对性更强,确定性更高。

2.1 直接基于彩色图像

原有算法主要是在图像灰度化和二值化基础上,通过车牌特征和投影进行车牌定位和字符分割。尽管在直接基于彩色模式的车牌识别方法上进行了很多努力,但是,迄今为止基于彩色模式进行车牌识别的各种方法都没有针对彩色模式的计算复杂性找到有效的解决办法。所谓彩色模式,不论是通过红色、绿色、蓝色三原色表示,还是通过其他方式表示,都是三维空间。因此,如果不能降维,其计算复杂性就不能降低。客观上,车牌识别往往需要在一个较短的时间内完成。因此,由于耗时基于彩色模式的车牌识别都只是停留在理论上,或者说,一直没有可以进入工程意义上的实用的成果出现。

图像五值化是通过公式Y=(R+G)/2,将RGB空间映射到YB空间,再将YB空间简化成黑、蓝、灰、黄、白五种值的图像简化方法。图像五值化首先将图像由RGB三维降成YB二维,进而将YB二维简化成五个离散值,极大地降低了直接基于彩色图像进行车牌识别的计算复杂性。经五值化简化后,尽管图像的色彩值只有五种,但其色彩属性被最大限度地保留下来,黑、蓝、灰、黄、白仍能完整表达中国车牌识别所需的色彩信息。就中国车牌识别而言,图像五值化简化对原图像是无损的。

针对中国车牌,蓝牌的白字可以视为是黄色,黄牌的黑字也可以视为蓝色,通过黑、蓝合并,白、黄合并,图像可进一步简化成三值。蓝底黄字可以表示蓝牌和黑牌,黄底蓝字可以表示黄牌和白牌。因此,就中国车牌识别而言,将图像简化成三值不仅具有合理性,同样对图像的色彩属性也是无损的。

无论是五值图像,还是三值图像,都完整保留了图像的中间“灰”,回避了图像二值化对中间“灰”可能出现的分类错误。只要在算法中增加一点“技巧”,保留的中间“灰”就可根据识别的车牌底色动态地视同字符识别所需的车牌底色或字符色,从而能弥补受光照不均匀或车牌“脏”影响按阈值选取进行图像二值化可能导致的图像信息缺失,有利于提高字符识别的正确率。

2.2 将投影与分割建立在三值图像基础上

对于投影与分割,克服二值化缺陷的关键同样是要考虑呈现为干扰的受光照不均匀或车牌“脏”影响的像素点“灰”化。解决办法仍然是要保留中间“灰”或图像“灰”像素,将投影与分割建立在图像三值化基础上。图像二值化后,原有中间“灰”或图像“灰”像素,如果被错误分类,就可能或表现为“损害”,或表现为“干扰”。“损害”是图像信息缺失,不利于字符分割,也不利于字符识别。“干扰”是图像中不必要的信息过多,同样不利于字符分割,也不利于字符识别。将中间“灰”或图像“灰”像素保留为中间状态,区别于“黑”或“白”,就可以为程序判断提供依据,使程序可以根据已通过判断得到的车牌底色,对于中间状态或保留,或丢弃。

2.3 通过分割反推进行车牌定位

对于解决车牌遗漏和车牌定位候选区域左右边界的不确定性,就是要先进行字符分割,再按分割反推进行车牌定位。所谓分割反推是指在确保图像遍历高效的前提下,通过图像遍历如果可以进行字符分割则得到一个候选车牌定位。

按分割反推进行车牌定位的好处是:不仅可以先按照公安部的规定检测字符间距,排除伪车牌,做到车牌定位不误;还可以使车牌定位不再依赖车牌特征,可以不再理会图像中对车牌特征所谓的干扰,做到车牌定位不漏。

2.4 算法复杂性控制

直接基于彩色图像并通过图像遍历按分割反推进行车牌定位,在图像已经被简化成三值后,关键是必须有效控制图像遍历的计算复杂性。否则,算法会因为处理器负荷过重而不具有实用性。

与二值图像不同,三值图像具有中间“灰”。显然,定位只需要针对蓝色和黄色,三值图像中的中间“灰”是不需要定位的。因此,可以跳开大量的中间“灰”,使基于三值图像的算法复杂性能得到有效控制。具体的控制方法是:

(1) 在图像行上可通过定位候选点标记,跳开非定位候选点,实现图像的横向加速;

(2) 在图像列上可通过大小跨机制,改变图像行的执行顺序,快速到达车牌所在的图像行,实现图像的纵向加速;

(3) 结合回溯与隔行查找,放弃部分图像行的定位。

因此,综合图像横向、纵向两个方向的二维加速,图像遍历的高效是可以保证的。

3 目的

基于三值图像的车牌识别从字符分割开始,按分割反推进行车牌定位。传统的车牌识别是从车牌定位开始。基于字符分割并按分割反推进行车牌定位有别于传统车牌定位,目的是为了减少影响车牌识别结果正确的因素,将确保车牌识别结果正确的前提单一到图像三值化质量上,克服传统车牌识别在车牌定位、字符分割、字符识别各环节上的识别率瓶颈。

基于三值图像的车牌识别过程是:

图像三值化→字符分割→分割反推→字符识别

传统的车牌识别过程是:

图像灰度化→特征定位→二值化→形态学处理→字符分割→字符识别

基于三值图像的车牌识别仅仅依赖图像三值化质量,相对于传统车牌识别的图像二值化,其质量更能得到保证。传统的车牌识别依赖图像灰度化、车牌特征提取、图像二值化阈值选取、形态学处理,每个环节都可能是影响最终车牌识别效果的识别率瓶颈。

字符分割在基于三值图像的车牌识别过程中是先计算字符间距,然后对定位候选点进行字符分割符合性检测,字符分割可验证;字符分割在传统车牌识别过程中是在图像二值化基础上投影得到,是不严格且不可验证的,容易出现字符分割错误。图像二值化实质上是把三值图像的中间状态强行分类到背景或前景中,导致背景膨胀或前景膨胀。膨胀会影响分割,因此,传统二值化后有可能需要进行形态学处理。实际上,这是两难的。如果不进行形态学处理,由于背景或前景有可能是膨胀的,因此分割的正确性无法保证。而进行形态学处理,其处理结果未必恰当。

车牌定位在基于三值图像的车牌识别过程中是基于字符分割并按分割反推,采用图像遍历方式,车牌定位既不会遗漏,也不会错误。而车牌定位在传统车牌识别过程中是根据各种各样的车牌特征,甚至是融合的车牌特征,在车牌特征受到较大干扰的情况下,车牌定位既可能遗漏,也可能错误。

在基于三值图像的车牌识别过程中可以将中间“灰”或图像的“灰”像素根据识别的车牌底色动态地视同字符识别所需的车牌底色或字符色。而在传统的车牌识别过程中字符识别只能根据二值图像进行,字符识别结果的正确性受图像二值化阈值问题制约。

即在传统车牌识别过程中,各环节算法所依赖的前提是不完全确定的,必须架构在对错误一定程度容忍的基础上,否则,该环节就成为识别率瓶颈。不确定性和错误容忍会最终累积到车牌识别结果,因此造成车牌识别结果在理论上一定会处于一定的误差范围。

4 图像五值化

4.1 图像五值化简化方法

图像五值化简化方法是通过公式:黄色 =(红色+绿色)/ 2 ,依此将红色、绿色、蓝色三原色构成的色彩空间映射到由黄色、蓝色两种颜色构成的色彩空间,映射后的色彩值有黑色、蓝色、灰色、黄色和白色五种。

具体的简化过程:

(1) 建立公式:黄色 =(红色+绿色)/ 2 ;

(2) 建立公式:灰度 =(黄色+蓝色)/ 2 ;

(3) 将黄色和蓝色都大于187的视同白色;

(4) 将黄色和蓝色都小于153的视同黑色;

(5) 去除白色和黑色剩下的中间色中,若黄色<0.9×蓝色,则继续进行蓝色细分,若蓝色<0.9×黄色,则继续进行黄色细分,否则,则继续进行灰色细分;

(6) 蓝色细分:若黄色<0.8×蓝色,视同蓝色,否则,若灰度<187,视同蓝色,反之视同灰色;

(7) 黄色细分:若蓝色<0.8×黄色,视同黄色,否则,若灰度>153,视同黄色,反之视同灰色;

(8) 灰色细分:若灰度<153,视同黑色,若灰度>187,视同白色,否则,视同灰色。



待续。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: