您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 造纸印刷 > 基于几何结构特征的印刷体数字识别方法
基于几何结构特征的印刷体数字识别车生兵金帅李小立(1.中南林业科技大学计算机与信息工程学院,湖南长沙410004)摘要:通过分析印刷体数字的几何结构特征,提出了一种基于几何结构特征的印刷体数字识别算法。读取单个二值化数字图像后,确定该数字图像的字体边界,然后根据其结构抽取出数字中能够唯一标识该数字的特征,并对所得到的数字特征值进行分析,以确保每一个提取的数字特征都较之其他数字不相同。然后基于这些特征对10个数字进行分类识别。通过实验仿真,说明该算法是有效可行的。关键词特征提取;唯一性;特征值验证RecognitionofPrintedFiguresBasedonGeometricStructureJinShuai,LiXiaoliCollegeofcomputerscienceCentralSouthUniversityofForestry&TechnologyHunanChangsha410004,ChinaAbstractAfeatureextractionmethodbasedonthegeometricpropertiesofprintednumeralswasdescrided.Afterreadingasinglebinarynumericalimage,determinetheboundaryofcharacteronthisnumericalimage.Thenaccordingtothestructure,thefeaturesthatcanuniquelyidentifythenumberscouldbeextractedfromtheprintednumerals,andverifytheobtainedfeaturevaluesofnumberstoensurethateachextractedfeaturevalueofnumberwasdifferentfromthatofothers.Iftheresultsshowedthatalltheextractedfeaturevaluesofnumberswerenotthesame,itprovedthatthefeatureextractionmethodwasfeasible.KeywordsFeatureextraction;Uniqueness;Verificationoffeaturevalues0引言随着计算机光学字符识别(OCR)技术的快步发展,人们与数字媒体的关系愈来愈密切,也越来越离不开数字化带来的方便和快捷。印刷体数字识别是字符识别的一个分支,在很多方面都有应用,如汽车车牌自动识别、支票、超市收银和有关印刷体编号等等。这些方面都与人们息息相关,所以识别的效率至关重要。单以识别率而言,特征抽取可说是OCR的核心,用什么特征、怎么抽取,直接影响识别的好坏。而特征可说是识别的筹码,简易的区分可分为两类:一为基于统计的特征,如数字区域内的黑/白点数比,当数字区分成好几个区域时,这一个个区域黑/白点数比之联合,就成了空间的一个数值向量,在比对时,基本的数学理论就足以应付了;而另一类特征为结构的特征,如数字影像细线化后,取得数字的笔划端点、几何轮廓及结构,在识别过程中有效结合这些几何和结构特征,可以得到可靠性较高的识别结果[1]。分析印刷体数字的各种识别算法[2~5],本文推出一种基于几何结构特征的印刷体数字识别方法。该方法利用数字本身的几何结构,提取出能够唯一标识自己本身的特征,作为自身的识别编码。基于这些特征,就能对10个数字进行分类识别。1特征描述根据印刷体数字的几何结构特征,本文提取数字的4个特征分别为:(1).二值化后的数字上1/3处水平扫描时0、1变换的次数;(2).二值化后的数字下1/3处水平扫描时0、1变换的次数;(3).以二值化后的数字横向1/2处为分界线,对下半部分水平扫描时0、1变换的最大次数;(4).二值化后的数字垂直扫描时0、1变换的最大次数。下面以数字“0”为例对4个数字特征进行说明,如图1所示。箭头方向表示数字的扫描方向。在特征提取过程前,定义变换次数统计变量count,初始为0。定义标记flag1、flag2,初始值为1,即为白色点。flag1表示记录的前一个像素值;flag2表示扫描到的当前像素值。定义最大变换次数变量max,初始值为0。在统计每个特征值前,都要将变量count、flag1、flag2和max复位为初始值。图1数字的四个特征示例1.1特征一观察数字的几何结构,在数字体的上1/3处进行水平扫描,扫描方向如图1中(1)所示。然后开始统计扫描时0、1变化的次数。先对变量count、flag1、flag2进行复位操作。然后,在数字体横向上1/3位置进行水平扫描,将所得到的值赋给flag2。判断flag1和flag2的值是否相等。若相等,不做任何处理;否则执行操作flag1=flag2,count=count+1。然后继续扫描,直至该行都已扫描完,返回0、1变换次数。以数字“2”和“7”为例,如图2所示。根据图2所示,则数字“2”和“7”特征一的值为2。图2特征一示例1.2特征二统计在数字体的下1/3处进行水平扫描时0、1变化的次数,扫描方向如图1中(2)所示。首先对变量进行复位操作。然后,在数字体横向下1/3位置进行水平扫描。当该行所在列都已扫描完,返回0、1变换次数。以数字“3”为例,如图3所示。根据图3所示,则数字“3”特征二的值为2。图3特征二示例1.3特征三以数字横向1/2处为界限,对数字下半部分的每一行进行水平扫描,扫描方向如图1中(3)所示。然后开始统计数字下半部分所有行0、1变换的最大次数。对每一行扫描前需对变量count、flag1和flag2进行复位,接着才开始扫描,将所得到的值赋给flag2。判断flag1、flag2的值是否相等。若相等,不做任何处理;否则执行赋值操作flag1=flag2,count=count+1。然后继续扫描,直至该行都已扫描完,取max和count中较大的一个作为新max。当下半部分所有行扫描完时,返回最大的0、1变换次数。以数字“6”为例,如图4所示。根据图4所示,则数字“6”特征三的值为4。图4特征三示例1.4特征四对二值化后的数字体进行垂直扫描,扫描方向如图1中(4)所示。然后开始统计数字体所有列0、1变换的最大次数。对每一列扫描前需对变量count、flag1和flag2进行复位,然后才开始扫描并统计这一列的0、1变换次数,取max和count中较大的一个作为新max。当所有列扫描完时,max即为所求的0、1变换的最大次数。以数字“9”为例,如图5所示。根据图5所示,则数字“9”特征四的值为6。图5特征四示例2.特征提取本文以二代身份证下方18位数字的字体OCR-B10为例,首先对数字图像进行分割二值化等预处理[6~8]。特征值提取整体流程如图6所示。定义存储数字体特征值数组C4×10,C(i,j)为数字体j的特征i的值。输出所有数字特征特征提取验证数字特征的唯一性确定数字字体边界导入二值化数字体逐个读取数字数字都已提取数字特征YN图6特征值提取流程提取特征前需要确定数字体在图像中的上下左右轮廓,用于各行或列扫描时的上下限值,以减少大量无效的扫描,提高该方法提取特征过程的效率[7,8]。下面以确定上边界为例进行说明。定义上边界位置变量为row1。从二值化图像的最顶端开始扫描,判断所得到的值是否为0。若是则记为row1;否则判断该行所在列是否扫描完。扫描完则进入下一行扫描;否则继续该行扫描,直到遇到数值0。确定上边界流程如图7所示。行扫描进行水平扫描row1即为上边界;退出扫描记录该行行号row1进入下一行扫描所得值是否为0该行所在列扫描完图7确定上边界流程定义下、左、右边界变量分别为row2、col1、col2。确定下、左、右边界扫描流程类似图7,这里就不再详述。通过边界扫描,数字0-9确定的边界如图8所示。图8数字边界确定在确定数字体在图像中的边界后,以此边界为扫描的起始界限,第1章节介绍的原理为依据,对数字体进行特征提取。验证提取的每个数字特征值是否能唯一标识它本身。如果验证通过说明特征提取成功。文中对不同大小的OCR-B10字体(20-72号)进行了特征提取,得到的特征数组C如表1所示。由于字体大小原因,有些特征值会出现多种结果。但0-9数字还是能区分开,并不影响识别过程。因此,得到的每个数字的特征值是唯一的。表10-9的特征值数字特征0123456789水平扫描上1/3处0、1变换次数3,4312222243下1/3处0、1变换次数3121,21,41323,42下半部分0、1变换最大次数4124424242,3,4垂直扫描0、1变换最大次数4256,7,846646,7,863.数字识别对于一张数字图像,首先必须进行旋转、分割、去噪和二值化等预处理,处理完以后,得到待识别的单个数字。按照提取第2章节的算法进行特征提取。下面开始进行数字的分类识别。首先,可以通过特征一将数字分为3类:A={2,3,4,5,6,7},B={0,1,8,9}。针对A类,通过特征三可以进一步划分为C={3,4,6},D={2,5,7}。通过特征四将C类划分为E={3,6},{4},其中E类可以通过特征二区分开。通过特征四将D类划分为{7},F={2,5},其中F类可以通过特征二区分开。针对B类,通过特征三可以进一步划分为{0},{1},G={8,9},其中G类可以通过特征二区分开。识别流程如图9所示。图9数字识别4.算法比较表2是文献[2]、文献[3]和本文的特征提取算法的对比情况。表2各算法对比情况文献[2]文献[3]本文特征描述上横线、下横线、左竖线、右竖线、上过线数、右过线数、上1/3高度处的过线数高宽比特征、上横线长度、下横线长度、闭合圈数见第1章节描述提取字体宋体宋体OCR-B10特征个数744概括使用的特征值较多特征值较少,在识别过程中要对字体进行大小归一化处理特征值较少,识别过程简单本文只采用了4个特征就能将每个数字区分开来。特征少的情况下,识别过程也相对较简单,且本算法不需要对分割出来的字符大小进行归一化处理。与同类型的算法相比,本文提出的印刷体数字识别算法更简单,识别速度快,识别率高。4结论从实验可以得知,按照第1章节所描述的特征进行特征提取,提取出来的每一个数字的特征值相对于其他数字都是唯一的。通过对各种印刷体数字识别算法进行比较,本文的算法所需特征值少,算法识别率高。但在字体出现多处缺失、数字中有外来线条等较大干扰的条件下,识别率比较低,这是本算法将来需要进一步改进的地方。5AcknowledgmentThispaperissupportedbyChineseNSF60373000,HunanNSF07JJ3124,HunanScienceandTechnologyProject2009GK3096,HUNANgraduatestudentinnovationfoundation,HunanProvincialeducationdepartmentfoundation06d042,HunanProvincialpublicsecuritydepartmentfoundation[2008]14,CSUFTsciencefoundation061018B,06Y003,07007A,2008sx14,2009sx20.参考文献:[1]荆涛,王仲.光学字符识别技术与展望[J].计算机工程,2003,02.[2]严国莉,黄山等.印刷体数字快速识别算法在身份证编号数字识别中的应用[J].计算机工程,2003,01.[3]倪桂博,梁晓尊.基于结构形状的印刷体数字识别方法[J].软件导刊,Vol.9No.5,2010.[4]钟锐,黄华.一种用VB实现的印刷体数字识别方法[J].计算机工程,2003,vol29,7.[5]SalehAliK,Al-Omari.DigitalRecognitionusingNeuralNetwork[J].
本文标题:基于几何结构特征的印刷体数字识别方法
链接地址:https://www.777doc.com/doc-2535716 .html