机器视觉学习笔记(1)--车牌字符分割

延续车牌定位的篇章,讲解如何进行简单的车牌字符分割,要想更好地进行这一工作,需先了解车牌字符相关信息,获取更多的先验知识。

相关信息如下:

1)车牌字符宽度45mm,高度90mm,宽高比0.5;

2)第1个字符是汉字:代表该车户口所在省的简称,第2个字符是英文:代表该车所在地的地市一级代码,后五位为5个字符。

3)车牌有铆钉固定。

测试图片为车牌定位输出的结果图像。


    
图1:测试图像

车牌字符分割算法如下:

  1)灰度化

根据Gray = R*0.299 + G*0.587 + B*0.114进行灰度化。


     图2:灰度化

2)阈值化

   最大类间方差法是由日本学者大津于1979年提出的,是一种自适应的阈值确定的方法,又叫大津法,简称Otsu。它是按图像的灰度特性,将图像分成背景和目标两部分。背景和目标之间的类间方差越大,说明构成图像的两部分的差别越大,当部分目标错分为背景或部分背景错分为目标都会导致两部分差别变小。因此,使类间方差最大的分割意味着错分概率最小。

但Otsu是针对全局图像的,不能适应光照不匀情况,可进行局部阈值化处理,根据将图像7等分,分别进行Otsu阈值化。


     图3:阈值化

   3)去除铆钉等干扰像素

   从图中可看出,铆钉所在行的黑白切换率要小于字符行的黑白切换率,根据这一特性进行去除干扰像素。


     图4:去除铆钉

   4)存储字符区域

查找各轮廓的外包矩阵,用字符长高比约束,高度约束去除非字符的外包矩阵,将外包矩阵根据x坐标从左到右排列。

 5)查找第二个字符

率先查找第二个字符的原因是:1、第一个字符为汉字,有可能不是整体一,存在区域分离,例如“浙”字;2、第二字符的宽度相对其他字符标准。

查找各字符外包矩阵中心,当中心坐标位于车牌宽度1/7和2/7之间,则为第二字符。


     
图5:查找第二个字符

 6)定位汉字   

以第二字符的宽度width,高度为height为准,汉字在其左边,向左1.15width包含汉字。


   图6:汉字

 7)定位5个字符

根据外包矩阵存储的排列顺序,第二字符之后即为其他字符的外包矩阵,以外包矩阵中心为基础,以第二字符长宽为标准重新定义外包矩阵。


     图7:5个字符

可能大家会奇怪为什么不直接定位5个字符,直接用先验的距离关系,那是因为存在透视和倾斜变形,会导致位置不准,当然可以用先验知识查找和验证,以上仅为字符分割的基础思想。

欢迎转载机器视觉助手的文章,我们也希望能够让更多的对机器视觉感兴趣的人看到我们的文章,不过在转载之前请获得我们的授权或严格按照要求进行转载。


你可能感兴趣的:(机器视觉学习笔记(1)--车牌字符分割)