APP下载

基于多结构特征的纸币字符识别算法

2015-12-02滕国伟邹雪妹

电视技术 2015年12期
关键词:字符识别字符轮廓

鲁 超,滕国伟,邹雪妹,安 平

(上海大学 通信与信息工程学院,上海 200444)

人民币作为我国的法定货币,冠字号码具有一票一号的特征,研究基于冠字号码的自动识别技术,对于加强人民币的监督管理有着很重要的意义。目前,冠字号字符识别方法主要有:模板匹配法、基于字符结构特征的方法和基于神经网络的方法[1]。模板匹配法[2]是模式识别中最常用的基本识别算法,很多学者对模板匹配法进行了改进,如文献[3]利用图像中各点周围8邻域点的像素值,对该点像素值特征加权改造,从而使图像中有字符笔画的点具备不同的权重,然后再进行匹配识别,在一定程度上提高了检测准确率;文献[4]针对模板匹配过程需要对图像所有点计算方差计算量大且耗时的缺点,提出一种区域模板匹配算法,即把单字符图像划分为若干区域,每一个区域为一个网格,以区域内黑色像素的个数为特征,对每个区域的数字特征进行提取得到字符特征向量,然后计算与模板特征向量距离对字符进行识别。基于结构特征也是常用的方法之一,例如文献[5]提出一种基于结构特征的字符识别算法,通过选用三种相互融合、补偿的结构特征——穿越线交点、航程、区域密度来描述字符,此外,比较常用的结构特征[6]还有重心、轮廓、直方图等。用于字符识别的神经网络[7-8]方法是根据人的经验来提取字符的特征,用特征来训练神经网络分类器,再利用神经网络分类器来识别字符。

上述算法对整洁干净的人民币冠字号字符具有较高的识别率,但对严重污染磨损的人民币冠字号字符识别率却很低。现实中人民币在流通过程会有不同程度的磨损污染,这些算法很难满足实际应用要求。

1 基于模板匹配和多结构特征的纸币字符识别算法

模板匹配与多结构特征识别字符算法流程分为定位分割、分类识别和验证纠错3个阶段,其中在分割部分提出了比通用的垂直投影法鲁棒性更强的基于字符轮廓的字符分割方法;在最关键的识别部分首先对经过多尺度缩放后的待检字符区利用模板匹配扫描确定3个候选字符,然后利用鲁棒性更强的区域密度特征矢量对候选字符进行最终筛选判定。

1.1 定位分割

1)字符区域初选

如图1a是目前市面上销售的点钞机所拍摄到的50万像素的整幅人民币正面图像及本文使用x、y坐标轴正方向,号码位于纸币正面的左下方,位置固定,通过人民币图像区域和背景图像区域的灰度差确定纸币的边界。然后,根据号码在纸币中的位置关系分割包含人民币号码的图像子域,如图1b所示。

图1 字符区域初选

2)基于轮廓分割字符

准确定位出字符区域并对其进行单字符分割是识别号码前关键的一步。最常用的方法是垂直投影法,这种方法易受二值化后噪声的影响,尤其是对污染磨损的纸币字符的分割,容易定位偏上或偏下,为克服这一方法的缺点,本文提出了一种鲁棒性更强的基于字符轮廓的字符分割算法,具体步骤如下:

(1)对字符区自适应二值化。其中阈值本身是一个变量,自适应阈值T(x,y)在每个像素点都不同,计算像素点周围的b×b区域的像素值加权平均,然后减去一个常数c来得到自适应阈值,位于(xi,yi)处阈值计算如下

对图像进行二值化,即

效果如图2b所示对不同的严重污染磨损的字符都实现了较好的二值化提取。

(2)从二值化图像中提取明亮区域的外轮廓并初步排除较小噪声。根据像素值跳变对二值化图像明亮区域提取外轮廓,同时设定阈值,阈值为单个数字字符1轮廓像素点数目的1/2,当轮廓像素点数目小于阈值则排除该轮廓,最终筛选出的轮廓图像如图2c所示,然后,遍历各轮廓像素点的坐标确定各轮廓的外接矩形如图2d所示,各矩形用左上顶点坐标(x,y),高h、宽w表示。

(3)根据冠字号字符之间的位置关系进一步排除较大噪声进而分割出最终的单字符区。如图2c所示的划痕和混入的背景图案不能通过步骤(2)设定阈值简单的排除掉,利用冠字号字符的相邻字符在水平方向上字符间隔相同和在垂直方向上位于同一水平的特点:(a)在y轴方向上统计各外接矩形水平中分线y坐标{y0,y1,…,yj,…,yn}及各矩形高度{h0,h1,…,hj,…,hn},计算出水平中分线坐标的中位数ymid及高度均值have,遍历比较各矩形高度hj及水平中分线坐标yj,若不满足{|yj-ymid|<have/2}时则排除该外接矩形;(b)在水平方向上统计各外接矩形垂直中分线x坐标{x0,x1,…,xj,…,xn},按x坐标递增顺序排序,然后依次计算出相邻x坐标间隔{d1,d2,…,dj,…,dn};(c)去夹杂,从间隔中找到中位数dmid,若满足{xj+1-xj-1<3/2×dmid,xj-xj-1<dmid,xj+1-xj<dmid}时则排除该外接矩形;(d)填补,纸币字符与划痕连在一起或者字符磨损严重经过以上处理都可能被排除掉,因此,在这需要进行填补,若满足{xj-xj-1>9/5×dmid}则填补一个矩形,填补矩形宽为相邻两外接矩形宽的均值wave=(wj+wj+1)/2,高为相邻两外接矩形高的均值have=(hj+hj+1)/2,左上顶点坐标 x=(xj+xj+1-wave)/2,坐标y为相邻两外接矩形左上角顶点y坐标的均值y=(yj+yj+1)/2,经过以上处理获得筛选后的字符区如图2e所示。

(4)按规则尺寸归一化并获取最终待检区。这里采用一种与通常所指的归一化不同的方法,处理如下:(a)在y轴方向上找到各个外接矩形水平中分线y坐标{y0,y1,…,yj,…,y10},求得均值yave,所有外接矩形尺寸调整则都以直线y=yave为水平中位线向上下方向延伸;(b)在x轴方向上找到各外接矩形的垂直中分线xj坐标,每个外接矩形分别以自己的垂直中分线x=xj向左右方向延伸;(c)各外接矩形以(xj,yave)为中心尺寸调整为预先人为统计的最大字符的尺寸,最终获得待检字符区,如图2f所示。

图2 字符分割过程

1.2 分类识别

根据各字符轮廓数目将字符分类并对待检字符区进行改进的模板匹配扫描,确定最匹配字符及对应最佳匹配区和2个候选字符及2个对应最佳匹配区。

1)基于轮廓数目的分类

根据待检字符的内外轮廓数目总和将字符进行分类识别,字符轮廓数目可分为:3轮廓、2轮廓和1轮廓。3轮廓:B,8;2轮廓:A,D,P,Q,R,0,4,6,9;1轮廓:C,E,F,G,H,I,J,K,L,M,N,S,T,U,V,W,X,Y,Z,1,2,3,5,7。每一类中的字符只需要与自己所属字符类中的字符模板进行匹配识别与验证。步骤如下:

(1)对单个待检字符区进行自适应二值化处理获得二值化图像;

(2)筛除噪声轮廓,仅提取字符区二值化图像中所有明亮区域的外轮廓,计算所有轮廓上像素点个数,找到轮廓序列像素点数目最多的那个轮廓为字符轮廓;

(3)对(2)中筛选出的字符提取内部轮廓,按内、外轮廓数目之和将待检字符归类。

2)将分割的单个字符进行多级缩放获得n张不同尺寸的待扫描图像。

模板匹配法对字符尺寸要求较高,模板图像的尺寸固定,待扫描图像中字符的尺寸与模板尺寸越接近则匹配度越高就越能被正确识别,对分割出的单字符区按新定义的规则进行多次缩放,使得在放大与缩小过程产生的多个待检字符区中会有一个待检字符区中的字符尺寸能够极限接近模板尺寸,同时,缩放能对变形的字符进行校正,从而更好地解决纸币褶皱变形造成的错误识别问题。

规则:字符宽高比为1∶2,为了同时达到等比例调整字符尺寸和纠正变形字符2个目的,缩放既有按宽高步长1∶2等比例缩放,又要有非等比例缩放。针对50万像素的点钞机算法为例,使用的字符模板尺寸为12×22,通过1.1节定位分割出的单字符区尺寸为14×26,一方面,对字符宽和高分别以1个像素和2个像素为步长进行等比例缩放,得到13×24、14×26、15×28三张待扫描图像,另一方面进行非等比例缩放得到图像尺寸13×25、14×25、14×27、15×27,最终,将14×26的单字符区图像按上述规则进行尺寸调整获得7张图像{Pi,i=0,1,2,…,6},尺寸依次为:13×24、13×25、14×25、14×26、14×27、15×27、15×28。

3)进行模板匹配扫描获得3个候选字符

单个待检字符区图像通过尺寸调整获得n张待扫描图像{Pi,i=0,1,2,…,n-1},依次用待检字符所属分类中的模板对n张待扫描图像{Pi,i=0,1,2,…,n-1}进行遍历扫描,计算出对应每个模板的最佳匹配值及相应匹配区域,筛选出匹配度最接近的3个字符作为候选字符,具体步骤如下:

(1)利用单个模板对单张待扫描图像进行模板扫描计算并比较出最小方差。设图像PT为待检字符所属分类中的一个模板,尺寸为M×N,待扫描图像Pk(0≤k≤n-1),尺寸为Lk×Wk(Lk>M,Wk>N),匹配过程是将模板PT在待扫描图像Pk上滑动,计算PT与其覆盖下的待扫描图像Pk的子图像Pkx,y的方差Dk(x,y)

其中,(x,y)为模板左上角顶点在待扫描图像中的坐标,其中0≤x≤Lk-M、0≤y≤Wk-N,方差越小说明模板与相应图像越接近,对图像Pk完成模板扫描,总共获得(Lk-M+1)×(Wk-N+1)个方差值,比较计算出最小方差Dk并保存获得该最小方差的模板位置坐标(x,y)。

(2)依次用(1)中的模板图像PT按照步骤(1)所讲过程完成对n张待扫描图像{Pi,i=0,1,2,…,n-1}的扫描计算,对应n个待扫描图像得到n个方差{Di,i=0,1,2,…,n-1}及与n个方差值对应的坐标,从n个方差比较获得最小方差值DT和与该最小方差值对应的坐标,以该坐标为左上顶点在相应的待扫描图像上切割出尺寸为M×N的图像即为与模板PT对应的匹配区域。

(3)经过过程(1)、(2)可以得到单个模板PT对应的最小方差DT和匹配区域,依次用待扫描图像所属分类中所有模板按照(1)、(2)步骤完成模板扫描计算,例如,若待检字符区被归为2轮廓分类中,对应着2轮廓分类中的字符:A,D,P,Q,R,0,4,6,9共有9个模板,计算过后,对应着9个模板就有9个最小方差和与方差对应的9个匹配区域。

(4)将(3)得到的所有模板的最小方差按递增顺序排列,提取获得其中3个最小的方差和与之对应的3个匹配区域,最小方差对应的那个模板字符就是候选字符,3个最小方差对应着3个候选字符。

1.3 验证纠错

1)提取区域密度特征矢量过程

(1)排除噪声的影响,对匹配区域去噪:模板扫描过程使用的是灰度图像,提取的匹配区域也是灰度图像,如图3a所示,尺寸为M×N,对匹配区域自适应二值化处理,二值图像中亮点像素值为255,暗点像素值为0,如图3b所示;统计各个孤立亮点区域的像素点总数,以样本中数字字符1的像素点总数的一半为阈值,将所有亮点总数小于阈值的孤立亮点区域像素值重新赋值为0,去噪效果如图3c所示。

图3 去噪过程效果图

(2)统计密度特征矢量:根据字符结构特征,将去噪处理后的字符图像划分为等间隔对称的n块区域。以本文实验过程为例,分割提取的匹配区域图像的尺寸为12×22,将匹配区域对称的划分为以下9块:1区为0≤x≤3∩0≤y≤6;2区为4≤x≤7∩0≤y≤6;3 区为8≤x≤11∩0≤y≤6;4 区 为0≤x≤3∩7≤y≤13;5 区 为 4≤x≤7∩7≤y≤13;6 区 为 8≤x≤11∩7≤y≤13;7 区为0≤x≤3∩14≤y≤21;8 区为4≤x≤7∩14≤y≤21;9区为8≤x≤11∩14≤y≤21;依次统计1~9区各区亮点总数,1区中亮点总数对应特征向量中元素d0,2区亮点总数对应特征向量中元素d1,直到9区,组成9维特征向量 d={d0,d1,d2,d3,d4,d5,d6,d7,d8}。

2)验证规则

(1)设对最匹配字符的匹配区域提取的区域密度特征矢量为d={d0,d1,d2,...,dn-1},对应该最匹配字符的标准区域密度特征矢量为di={di0,di1,di2,...,di(n-1)},统计特征向量所有位置满足条件|dij-dj|≥delta的元素总数nd,其中0≤j≤n-1,delta为允许的矢量中单个元素与标准矢量元素之间的最大误差,设N为特征向量中允许超出误差范围的元素的最大个数,当nd≤N,则认为最匹配字符就是待扫描图像中字符,为最终识别结果,若nd>N,则提取下一个候选字符匹配区域的区域密度矢量,按同样的方法与该候选字符的标准区域密度特征矢量进行比较验证,直到满足nd≤N,则认为候选字符为最终识别结果,每个候选字符的验证所参考的标准区域密度矢量都与候选字符对应。

(2)若经过(1)验证,3个候选字符都不满足匹配条件,则令N=N+1,继续进行(1)的验证,若依然没有满足要求的候选字符,则认为纸币过度磨损无法识别,在该字符位置输出空格,实验结果统计中认为识别错误。

2 算法测试与性能分析

本文使用两种实验样本:1)从点钞机公司制造的高速纸币清分机扫描得到的大量50万像素纸币图像中随机抽取200张未经区分的一般纸币图像;2)从大量样本中挑选出的严重污染磨损、褶皱变形的53张50万像素纸币图像。

利用标准的模板匹配法和本文算法分别对样本1)和2)进行识别,标准模板匹配法流程为首先进行垂直投影分割,然后对分割的字符尺寸归一化,最后进行模板匹配识别,两种字符识别算法对两个样本识别效果如表1和表2所示。

表1 两种字符识别算法对样本1识别效果

表2 两种字符识别算法对样本2识别效果

可以看出,本文算法对样本1和样本2识别率都高于标准模板匹配法,尤其是针对样本2严重污染磨损的字符识别率更是远远高于标准模板匹配法的识别率,具有非常强的鲁棒性,而时间只是略高于后者。

3 结论

本文提出了一种将模板匹配与多种字符结构特征相结合的人民币冠字号字符识别算法,其特点在于:1)在分割部分提出了比通用的垂直投影法分割率更高、鲁棒性更强的基于字符轮廓特征和字符间位置关系的分割方法;2)对待检字符区进行多级不等比例尺寸调整获得多个待检字符区,有效的解决了字符褶皱变形造成的误检问题;3)具备纠错功能,在最关键的识别部分不是直接判定最匹配的模板为最终识别结果,而是利用改进模板匹配法获得多个候选字符,然后利用鲁棒性更强的区域密度特征矢量依次对候选字符进行最终筛选判定。实验结果表明,本文算法能较好地解决现有人民币冠字号字符识别算法对严重污染磨损的人民币冠字号字符识别率低的难题。

[1] GUO J,ZHAO Y,CAI A.A reliable method for paper currency recognition based on LBP[C]//Proc.IEEE International Confer⁃ence on Network Infrastructure and Digital Content.[S.l.]:IEEE Press,2010:359-363.

[2] DI Z M L.Recognition algorithm of car license plate characters based on modified template match[J].Foreign Electronic Mea⁃surement Technology,2010(1):18.

[3]陈国彬,张广泉.一种基于特征加权模板匹配方法在纸币字符识别中的应用[J].微电子学与计算机,2013,30(3):115-117.

[4] 朱颢东,李红婵.基于特征加权模糊模板匹配的字符识别[J].兰州理工大学学报,2013(1):68-71.

[5] 王焱,刘洋,宋百春.人民币纸币号码识别算法研究[J].计算机工程与科学,2013,35(8):103-108.

[6] ZHU X,REN M.A recognition method of RMB numbers based on character features[C]//Proc.2nd International Conference on Information, Electronics and Computer.[S.l.]:Atlantis Press,2014:51-54.

[7]ZHAO T,ZHAO J,ZHENG R,et al.Study on RMB number rec⁃ognition based on genetic algorithm artificial neural network[C]//Proc.3rd International Congress on Image and Signal Processing(CISP).[S.l.]:IEEE Press,2010,4:1951-1955.

[8] LIU L,YE Y,XIE Y,et al.A novel approach for character fea⁃ture extraction and recognition based on RBF neural network[J].Opto-Electronic Engineering,2010(11):149-154.

猜你喜欢

字符识别字符轮廓
OPENCV轮廓识别研究与实践
基于实时轮廓误差估算的数控系统轮廓控制
字符代表几
一种USB接口字符液晶控制器设计
图片轻松变身ASCⅡ艺术画
HBM电子称与西门子S7-200系列PLC自由口通讯
一种改进深度学习网络结构的英文字符识别
高速公路主动发光轮廓标应用方案设计探讨
仪表字符识别中的图像处理算法研究
基于CUDA和深度置信网络的手写字符识别