凭证图像识别方法及装置与流程

文档序号:11143290阅读:614来源:国知局
凭证图像识别方法及装置与制造工艺

本发明涉及图像自动识别领域,尤其涉及一种对各种凭证进行光学字符识别后对凭证的内容进行识别的方法以及实现这种方法的装置。



背景技术:

人们在日常的消费过程中,往往产生大量的凭证,如乘坐飞机,将会有登机牌或者航程单,乘坐火车或汽车会有火车票或者汽车票,到餐馆吃饭可以获得餐饮发票等,这些凭证都是财务报销的依据,因此,如人们在差旅过程中产生这些凭证,在差旅结束后需要将这些凭证交给财务部门,由财务部门核实并且予以报销。

由于凭证种类众多,且每一张凭证均包含大量的数据,以火车票为例,凭证上包括乘车日期、乘客姓名、车次号、乘车日期与时间、座号、乘客身份证号码、金额等,报销时往往需要将这些信息录入到报销系统中。如果人工地将这些信息录入系统,工作量将非常巨大。此外,在人数众多的企业,差旅报销的凭证数量巨大,如每一张凭证均人工录入,将严重影响财务部门的工作量。

为此,人们开发出基于光学字符识别(OCR,optical character recognition)的凭证图像识别系统,即通过光学字符识别技术将凭证上的字符识别出来,将识别出来的字符自动填写到报销系统相应的栏目上,从而避免人工输入凭证信息。使用这种系统时,需要通过拍摄装置将凭证拍照,然后使用报销系统对拍摄的凭证图像进行光学字符识别,从而获取相应的信息。

目前普遍的基于光学字符识别的报销系统都只能识别出凭证上的文字和符号,而不能分析原始凭证的版面结构,也不能理解凭证上的内容。在对凭证做光学字符识别后,需要设计模板对凭证进行版面分析,以理解识别出的字符的具体含义。传统的做法是设计一个固定模板对凭证信息进行框选,用户拍摄凭证时将固定目标对准凭证图像。然而固定模板“套不准”的情况经常发生,不仅影响识别率,也影响了用户体验。此外,固定模板仅适用于结构固定、元素位置相对不变的凭证,而实际应用时即使同类凭证的版面结构也并不是一成不变的,如火车票的版面也经常发生变化。正因如此,现有的凭证图像识别系统无法高效、准确的识别凭证图像,影响财务报销的效率。



技术实现要素:

本发明的主要目的是提供一种能够对不同类型、不同版面的凭证图像进行高效识别的凭证图像识别方法。

本发明的另一目的是提供一种能够高效地对识别不同类型凭证的凭证识别装置。

为了实现上述的主要目的,本发明提供的凭证识别方法包括读取凭证图像,对所读取的凭证图像进行光学字符识别;并且,提取凭证图像的特征信息,根据特征信息判断凭证图像是否与固定结构的模板匹配,如是,则提取凭证图像中的特征元素的数据;如判断凭证图像不与任一固定结构的模板匹配,则进一步判断凭证图像是否为特定分类的凭证,如是,将凭证图像与该分类的弹性模板匹配,并识别凭证图像中的特征元素,提取特征元素的数据;如判断凭证图像不是特定分类的凭证,则将凭证图像的特征信息遍历所有模板,并查找到最匹配的模板后识别凭证图像中的特征元素,提取凭证图像中的特征元素的数据。

由上述方案可见,提取凭证图像的特征信息后,首先判断图像凭证是否与固定结构的模板匹配,如匹配则直接按照固定结构的模板提取特征元素的数据,如果不是与固定结构的模板匹配,则通过分类器判断凭证是否为特定分类的凭证,并且通过匹配弹性模板的方式识别出各个特征元素,从而获取各个特征元素的数据。

这样,在识别凭证图像时,并不会只能对固定结构的模板进行识别,并且一旦判断不与固定结构的模板匹配时,也不会直接遍历所有模板,而是识别出凭证的分类后,通过匹配弹性模板的方式查找出凭证的分类,并且根据弹性模板分析出凭证上各个特征元素,再提取特征元素的数据,从而避免花费较长时间遍历所有模板,凭证图像识别的时间大大缩短。

一个优选的方案是,每一弹性模板包括所属特定分类中至少一个特征元素。由于弹性模板是特定分类的凭证,因此凭证图像应该包含有所属分类的凭证的特征元素,因此识别凭证图像时,分析出凭证图像中所属分类的凭证的特征元素,可以提高凭证图像的识别效率。

进一步的方案是,特征信息至少包括静态文本、特殊符号、分隔符、条码或二维码、空白区域中的一个。

由此可见,通过识别凭证图像中诸如静态文本、特殊符号、分隔符、条码或二维码、空白区域的特征来辨别凭证图像的分类,可以快速确定凭证的类型,从而快速获取凭证图像中的特征元素的数据。

更进一步的方案是,判断凭证图像是否为特定分类的凭证包括:搜索凭证图像中的静态文本后,搜索凭证图像中的特征元素的字段,并搜索已查找的特征元素的邻近字段,根据静态文本、特征元素的字段确定凭证图像的分类。

由此可见,依据静态文本、确定的特征元素字段、邻近字段的方式确定凭证图像的分类,一方面可以确保对凭证图像识别的准确性,另一方面可以提高凭证图像识别的效率。

更进一步的方案是,搜索特征元素的字段后,对所搜索的特征元素的字段进行假设可信度校验。

可见,在搜索特征元素的字段后,使用假设树规则对搜索的特征元素字段进行假设可信度的校验,可以大大提高对凭证图像识别的准确性。

为了实现上述的另一目的,本发明还提供的凭证识别装置包括光学字符识别模块,读取凭证图像,对所读取的凭证图像进行光学字符识别;还包括固定结构模板判断模块,提取凭证图像的特征信息,根据特征信息判断凭证图像是否与固定结构的模板匹配,如是,则提取凭证图像中的特征元素的数据;还包括分类判断模块,如判断凭证图像不与任一固定结构的模板匹配,则进一步判断凭证图像是否为特定分类的凭证,如是,将凭证图像与该分类的弹性模板匹配,并识别凭证图像中的特征元素,提取特征元素的数据;还包括遍历模块,如判断凭证图像不是特定分类的凭证,则将凭证图像的特征信息遍历所有模板,并查找到最匹配的模板后识别凭证图像中的特征元素,提取凭证图像中的特征元素的数据。

由上述方案可见,凭证识别装置获取凭证图像后,提取凭证图像的特征信息,并且判断图像凭证是否与固定结构的模板匹配,如匹配则按照固定结构的模板来提取特征元素的数据,如果不是固定结构的模板匹配,则通过分类器判断凭证图像是否为特定分类的凭证图像,并且通过匹配弹性模板的方式识别出凭证图像中的各个特征元素,从而获取各个特征元素的数据。

这样,一旦凭证图像没有与任一个固定结构的模板匹配时,无需马上遍历所有模板,大大节省凭证图像的识别时间,提高凭证图像的识别效率。

附图说明

图1是本发明凭证图像识别方法实施例的流程图。

图2是应用本发明凭证图像识别方法实施例识别的一种凭证的图示。

图3是应用本发明凭证图像识别方法实施例识别的另一种凭证的图示。

图4是本发明凭证图像识别方法实施例中判断凭证图像分类的流程图。

图5是本发明凭证图像识别装置实施例的结构框图。

以下结合附图及实施例对本发明作进一步说明。

具体实施方式

本发明的凭证图像识别方法是对拍照、扫描等方式获得的凭证的图像进行识别的方法,并且是基于光学字符识别技术对凭证的图像进行识别。本发明的凭证图像识别装置是运行在计算机设备上并且用于实现上述图像识别方法的装置。

执行凭证图像的识别,首先获取凭证图像,凭证图像是计算机可读的电子图像,如通过拍照方式获得的图像或者通过扫描方式获得的图像。获得凭证图像后,才能对凭证图像进行识别。对凭证图像进行识别的过程如图1所示。

首先,执行步骤S1,读取凭证图像,并且对凭证图像进行预处理。读取凭证图像可以是将拍照或者扫描获得的凭证图像进行读取,在读取凭证图像的电子信息后,对凭证图像进行预处理,例如,对获取的数据进行解压缩,并且调节凭证图像的分辨率、亮度、版面大小、像素的灰度等,为光学字符识别做准备。

接着,执行步骤S2,对凭证图像进行光学字符识别,即OCR识别,并且在执行光学字符识别后,提取凭证图像的特征信息,例如获取凭证图像中的静态文本、特殊符号、分隔符、条码或二维码、空白区域等。由于不同的凭证图像的特征信息不完全相同,通过这些特征信息可以判断凭证图像具体是什么凭证图像,因此,提取凭证图像的特征信息是判断凭证图像分类的依据。

然后,执行步骤S3,根据提取出的特征信息,判断凭证图像是否与固定结构的模板相匹配。因此,在财务报销系统内首先存储有多个固定结构的模板,例如,普通的火车票模板、火车票模板、汽车票模板、餐饮发票模板、住宿发票模板等,由于每一种固定结构模板的凭证图像均具有自己特定的特征信息,因此,通过诸如静态文本、特殊符号、分隔符、条码或二维码、空白区域等的特征信息可以分辨出凭证图像是否与某一固定结构的模板匹配。

如判断凭证图像与某一固定结构模板匹配,则执行步骤S7,识别出凭证图像中各个特征元素,并且提取凭证图像中的特征元素。特征元素是凭证图像中包含的用于财务报销的信息,例如金额、时间、姓名、开票方名称等,由于固定结构的模板上,特征元素往往位于固定的位置上,因此,一旦确定凭证图像与固定结构的模板匹配,则可以根据固定结构模板上各个特征元素的位置,提取出特征元素的数据,如凭证上的金额数据、时间数据等。提取特征元素的数据后,可以将特征元素的数据自动录入到财务报销系统。

如果步骤S3中,判断凭证图像没有与任一固定结构的模板匹配,则执行步骤S4,判断凭证图像是否为特定分类的凭证图像,如是特定分类的凭证,则执行步骤S6,将凭证图像与特定分类的弹性模板相匹配。由于同一种类型的凭证,其版面结构也不是一成不变的,如图2与图3所示,两张火车票的版面并非完全相同,如图2所示的火车票,时间位于车次的上方,而图3所示的火车票中,时间位于车次的下方。因此,图2所示的火车票与图3所示的火车票中,往往至少有一张无法与固定结构的模板相匹配,也就是通过步骤S3无法识别这种火车票。

然而,如果一旦无法识别凭证图像,即将凭证图像遍历所有模板从而确定凭证图像的分类,将大大增加凭证图像的识别时间,不利于提高凭证图像的识别效率。因此,本发明设置凭证分类器,通过弹性模板的方式快速确定没有与固定结构模板匹配的凭证图像的分类。下面以火车票为例介绍如何通过分类器确定凭证图像匹配的弹性模板。

例如,火车票的版面上的特征元素包括静态文本(Static Text)、座号(Sit Number)、车号(Train Number)、出发日期(Departure Date)、金额(Currency Group)、乘客姓名(Passenger Name)、身份证号(Passenger ID Number)、起点(Initial Station)和终点(Terminal Station)等,因此,需要搜索定位每个特征元素,搜索规则包括串匹配、字典、表达式、位置关系、串长等等。

参见图4,判断凭证图像是否为特定分类的凭证时,首先执行步骤S11,识别凭证图像上的静态文本。由于火车票上的静态文本是位置和内容均固定不变的字符串,因此首先定位其位置,作为下一步搜索的标志位。例如,火车票的静态文本为“限乘当日当次车”,在实际匹配时,可以将经常识别错误的汉字也纳入到模式串。设A为火车票的光学字符识别文本,P为模式串,则P=“限乘当日当次车|艰乘当日当次车|限乘当曰当次车|艰乘当曰当次车”,串的模式匹配算法如下:

1:n=A.length

2:m=P.length

3:for s=0to n–m

4:if Similarity(A[s+1...s+m],P[1...m])≥T

5:return T.Position

其中Similarity(A[s+1...s+m],P[1...m])=A[s+1...s+m]中匹配的字符数/m,T为阈值。

在识别出静态文本后,执行步骤S12,根据表达式规则搜索出火车票上的特征元素的字段。火车票上诸如座号(Sit Number)、车号(Train Number)、出发日期(Departure Date)、金额(Currency)的内容虽不是一成不变的,但有着固定的格式,因此可以为此定义表达式规则。例如,用[]表示可能的字符集,{}表示长度,"|"表示“或”,"*"表示任意字符,表达式规则定义如下:

Sit Number.Regular Expression="[0-9]{1-2}([车])(([0-9]{2}([A-Z]|*){1})|[0-9]{3})[号]";

Train Number.Regular Expression="[A-Z]{1}[0-9]{2-4}([次]|*)";

Departure Date.Regular Expression="[2][0][0-9]{2}[年]([0]|[1])[0-9]{1}[月][0-3]{1}[0-9]{1}[日]";

Currency.Expression="[¥][0-9]{1-4}(([.]|*){0-1})[0-9]{1-2}[元]"。

实际应用时,限制太过严格的表达式规则常常失效,例如,“¥”符号识别失败导致Currency.Expression无法匹配。因此除了表达式规则之外,还需要根据元素之间的相对位置关系,设置备用规则,如步骤S13,根据相对位置规则搜索邻近的特征元素字段。

例如,在步骤S12搜索出一部分特征元素后,可以根据相对位置关系进一步搜索并且定位诸如乘客姓名(Passenger Name)、身份证号(Passenger ID Number)、起点(Initial Station)和终点(Terminal Station)等特征元素。优选的,使用凭证的物理单位(Document Unit,DU)作为单位坐标,并定义1DU为1/300inch。这样做的好处在于使得位置规则不依赖于图像分辨率,即一组规则可适用于不同分辨率的票据图像。以起点、终点为例,对比图2的火车票以及图3的火车票可以看出,虽然在图2所示的火车票中,起点、终点的字段位于出发日期的下方,而图3所示的火车票中,起点、终点的字段位于出发日期的上方,但起点、终点的字段与车号字段的相对位置是固定不变的,均是位于车号两边,因此可以以车号字段为参考元素定位起点、终点的字段。

以起点为例,按上式定义起点与车号的相对位置关系规则如下:

if not(Railway Ticket.Train Number.Rect.Is Empty)then{

Left Of:Railway Ticket.Train Number,0*DU;

Right Of:Railway Ticket.Train Number.Left,-900*DU;

Below:Railway Ticket.Train Number.Top,-50*DU;

Above:Railway Ticket.Train Number.Bottom,-50*DU;}

在搜索出邻近特征元素的字段后,还需要对搜索出的特征元素的字段进行校验,包括对串长置信度的计算,即执行步骤S14,即利用相对位置关系确定了特征元素的搜索区域后,根据串长的先验知识进一步约束特征元素属性,以评估搜索串的可信度,并作为下一步假设评价的基础。由于串长不一定为一个定值,因此可以用模糊区间计算其置信度。设串长为L,定义模糊区间[f1,f2,f3,f4]上L的置信度如下:

由于对于任一特征元素都有可能形成多个可能的假设,因此需要计算假设的可信度来评价假设的质量。因此,执行步骤14后,还需要执行步骤S15,计算假设的可信度。例如,对于串匹配和表达式规则,可以用匹配的相似度作为可信度;对于位置关系规则,可以用串长的置信度作为评价指标。因此,定义假设的可信度如下:

其中HR为假设的可信度,A为待匹配的识别文本,P为模式串或表达式,L为串长,RT为规则类型。

在为每个元素建立了各自的规则,则需要建立一套固定的顺序,将所有特征元素逐一搜索处理,因此,可以根据规则的约束关系将搜索的优先级定义为:串匹配>表达式>相对位置关系。因此,执行步骤16,构建假设树的搜索层级。例如,以静态文本为根节点,依次向下枚举出所有假设,并用结点存储每个假设的可信度,由此生成一个树状结构,称为假设树。注意到每一层的最大可信度只是当前最优的假设,并不一定代表全局最优,因此在假设树中选取一条从树根到叶子的最大路径作为搜索结果,即

其中HT为假设树,HR为假设的可信度,i为假设树层级,n为树高。

自此,可以判断凭证图像是否为特定分类的凭证,并且将凭证图像与弹性模板相匹配,即执行完毕S6。然后,执行步骤S7,根据识别出的特征元素的字段,提取各个特征元素的数据,并且自动录入到报销系统中。

如步骤S4中,无法识别凭证图像为任一分类的凭证图像,则执行步骤S5,遍历所有模板,并且查找出与凭证图像最匹配的一种凭证,然后执行步骤S7,在识别特征元素后提取各个特征元素的数据。

参见图5,凭证图像识别装置设有光学字符识别模块11、固定结构模板判断模块12、分类判断模块13、遍历模块14以及可信度校验模块15。光学字符识别模块11用于对所读取的凭证图像进行光学字符识别,识别出凭证图像的字符。

固定结构模板判断模块12在识别出字符后,判断凭证图像是否属于固定结构的模板,如根据凭证图像的特征信息,如静态文本、特殊符号、分隔符、条码或二维码、空白区域等,辨别出凭证图像是否与某一固定结构的模板相匹配,如判断与某一固定结构的模板相匹配,则提取凭证图像的特征元素的数据。

如判断凭证图像不与任一固定结构的模板相匹配,则分类判断模块13调用分类器,判断凭证图像是否为特定分类的凭证。因此,本发明的方案是设计一个分类器,通过分类器对所获取的凭证图像进行分类,例如,根据凭证图像的特征信息,判断凭证图像的分类,并且将凭证图像匹配至弹性模板,根据弹性模板识别出各个特征元素的字段,从而提取出特征元素的数据。

通过分类判断模块13对凭证图像进行识别时,可以通过可信度校验模块15对分类判断模块13初步识别出来的图像进行可信度校验,包括进行串长的置信度校验、计算假设的可信度等,从而提高凭证图像识别的准确性。

如无法将凭证图像确定为某一分类的凭证图像,则遍历模块14将凭证图像遍历所有模板,查找出与凭证图像最接近的模板,并且根据该模板确定各个特征元素的字段的位置,进而提取出各个特征元素的数据。

可见,通过本发明的方案可以快速识别凭证图像是否与固定结构的模板相匹配,并且在判断凭证图像不与固定结构的模板匹配后,并不是直接遍历所有模板,而是通过分类器判断凭证图像是为某一分类的凭证图像,并且通过弹性模板来查找出各个特征元素的字段,并且提取出特征元素的数据,从而大大加快了凭证图像的识别效率。即使用户没有将凭证放置正确导致凭证图像套不准的情况,仍能够快速识别凭证图像,提高凭证图像识别的准确性。

当然,上述的方案只是本发明优选的实施方案,实际应用是还可以有更多的变化,例如,可以根据不同类型的凭证确定凭证图像的特征元素,特征元素可以包括入住酒店名称、就餐餐馆的名称、发票抬头等,这些改变都不影响本发明的实施,也应该包括在本发明的保护范围内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1