票据识别方法、系统、计算机设备与计算机可读存储介质与流程

文档序号:22934039发布日期:2020-11-13 18:16阅读:218来源:国知局
票据识别方法、系统、计算机设备与计算机可读存储介质与流程

本发明实施例涉及发票识别领域,尤其涉及一种票据识别方法、系统、计算机设备与计算机可读存储介质。



背景技术:

伴随着企业经营管理规模的扩大与业务的拓展,财务部门需要审核整理票据的工作量也是与日俱增,每月都要面对大量的纸质票据,并将这些纸质票据中的内容转化为可存储的结构化信息。以及在医疗行业中,有大量的处方签需要进行识别转化成可存储的文字信息。

目前而言,多数中小企业对于票据的处理主要依赖于人工手动进行票据信息的录入,处方签也需要通过人工录入,该方式不仅效率低、周期长,而且在高强度重复工作压力下难免精神懈怠导致工作错误。对于技术高度发达的今天,显然这种模式已经不能满足人们对效率和智能化的追求。针对上述问题,可以通过光学字符识别(ocr)技术,借助光学设备,使用票据识别技术,实现票信息结构化自动录入。

现有产品中,百度开发的iocr自定义模板文字识别系统能够实现只需上传一张模板图片,即可自助制作识别模型,建立图片中文字的key-value对应关系,实现对相同版式图片的结构化识别功能。但该产品对于票据中:1、参考固定字段(key)与待识别区域(value)打印错位;2、识别区域中含有多行文字内容的情况,导致识别效果较差。



技术实现要素:

有鉴于此,本发明实施例的目的是提供一种票据识别方法、系统、计算机设备与计算机可读存储介质,提高了多行识别的精确度。

为实现上述目的,本发明实施例提供了一种票据识别方法,包括:

获取模板票据图片,所述模板票据图片包括框选的第一参考字段区域以及第二参考字段区域;

将所述模板票据图片输入至文字识别模型,以识别出所述第一参考字段区域中的文本,并通过检测模型输出所述第一参考字段区域的第一位置信息与所述第二参考字段区域的第二位置信息;

接收待处理票据图片,并将所述待处理票据图片输入至所述文字识别模型,识别出与所述文本匹配的目标文本,并通过所述检测模型框选标记所述目标文本的第一识别区域与第一目标位置信息;

根据所述第一位置信息与所述第一目标位置信息建立变换矩阵;

通过所述变换矩阵计算所述第二位置信息,得到所述待处理票据图片中第二识别区域的第二目标位置信息;

根据所述第一位置信息与所述第二位置信息的重叠度值,调整所述第二目标位置信息,得到待识别区域,并通过所述文字识别模型识别所述待识别区域中的文本,得到识别结果。

进一步地,所述获取模板票据图片,所述模板票据图片包括框选的第一参考字段区域以及第二参考字段区域包括:

选取标准图片格式的票据图片作为模板票据图片;

框选出文字条的字段内容作为第一参考字段区域以及所述文字条对应的数据内容作为第二参考字段区域。

进一步地,所述通过检测模型输出所述第一参考字段区域的第一位置信息与所述第二参考字段区域的第二位置信息包括:

通过所述检测模型对所述第一参考字段区域与所述第二参考字段区域进行边框识别,得到第一参考字段区域的第一边框顶点与所述第二参考字段区域对应的第二边框顶点;

将所述模板票据图片的任意顶点作为坐标原点建立坐标系,得到所述第一边框顶点的第一边框坐标与所述第二边框顶点的第二边框坐标,其中,所述第一位置信息包括多个第一边框坐标,所述第二位置信息包括多个第二边框坐标。

进一步地,所述通过所述检测模型框选标记所述目标文本的第一识别区域与第一目标位置信息包括:

通过所述检测模型对所述第一识别区域进行框选,得到多个第三边框顶点;

以所述待处理票据图片的任意顶点作为坐标原点建立坐标系,得到所述第三边框顶点的第三边框坐标,其中,所述第一目标位置信息包括多个第三边框坐标。

进一步地,所述根据所述第一位置信息与所述第一目标位置信息建立变换矩阵包括:

获取所述第一位置信息的第一边框坐标与所述第一目标位置信息的第三边框坐标;

将所述第一边框坐标进行变换得到所述第三边框坐标;

根据所述第一边框坐标与所述第三边框坐标之间的变换关系建立所述变换矩阵。

进一步地,所述根据所述第一位置信息与所述第二位置信息的重叠度值,调整所述第二目标位置信息,得到待识别区域包括:

获取所述第一位置信息与所述第二位置信息的重叠度值;

计算所述第一目标位置信息与所述第二目标位置信息的目标重叠度值;

调整所述第二目标位置信息,以使所述目标重叠度值等于所述重叠度值,得到待识别区域。

进一步地,所述方法还包括:

将所述识别结果上传至区块链进行存储。

为实现上述目的,本发明实施例还提供了一种票据识别系统,包括:

获取模块,用于获取模板票据图片,所述模板票据图片包括框选的第一参考字段区域以及第二参考字段区域;

识别模块,用于将所述模板票据图片输入至文字识别模型,以识别出所述第一参考字段区域中的文本,并通过检测模型输出所述第一参考字段区域的第一位置信息与所述第二参考字段区域的第二位置信息;

检测模块,用于接收待处理票据图片,并将所述待处理票据图片输入至所述文字识别模型,识别出与所述文本匹配的目标文本,并通过所述检测模型框选标记所述目标文本的第一识别区域与第一目标位置信息;

构建模块,用于根据所述第一位置信息与所述第一目标位置信息建立变换矩阵;

计算模块,用于通过所述变换矩阵计算所述第二位置信息,得到所述待处理票据图片中第二识别区域的第二目标位置信息;

调整识别模块,用于根据所述第一位置信息与所述第二位置信息的重叠度值,调整所述第二目标位置信息,得到待识别区域,并通过所述文字识别模型识别所述待识别区域中的文本,得到识别结果。

为实现上述目的,本发明实施例还提供了一种计算机设备,所述计算机设备包括存储器、处理器,所述存储器上存储有可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现上所述的票据识别方法的步骤。

为实现上述目的,本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序可被至少一个处理器所执行,以使所述至少一个处理器执行如上所述的票据识别方法的步骤。

本发明实施例提供的票据识别方法、系统、计算机设备与计算机可读存储介质,通过模板票据图片的第一参考字段区域中的文本对待处理票据图片中文本的进行匹配,并通过识别模型将目标文本对应的第一目标位置区域进行框选,再建立第一参考字段区域对应的第一位置信息与目标文本的第一目标位置信息之间的变换矩阵,最后通过变换矩阵获取第二目标位置信息;且对待处理票据的第二目标位置信息通过第一位置信息与第二位置信息的iou值进行调整,可解决待识别信息区域中含有多行文字的情况,填补了现有技术中无法识别多行文字技术的空白。

附图说明

图1为本发明票据识别方法实施例一的流程图。

图2为本发明实施例一中步骤s100的流程图。

图3为本发明实施例一中步骤s102的流程图。

图4为本发明实施例一中步骤s104的流程图。

图5为本发明实施例一中步骤s106的流程图。

图6为本发明实施例一中步骤s110的流程图。

图7为本发明票据识别系统实施例二的程序模块示意图。

图8为本发明计算机设备实施例三的硬件结构示意图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

实施例一

参阅图1,示出了本发明实施例一之票据识别方法的步骤流程图。可以理解,本方法实施例中的流程图不用于对执行步骤的顺序进行限定。下面以计算机设备2为执行主体进行示例性描述。具体如下。

步骤s100,获取模板票据图片,所述模板票据图片包括框选的第一参考字段区域以及第二参考字段区域。

具体地,从多个标准票据图片中,选取图片清晰、打印标准、背景干扰少、摆放端正的票据图片对应的票据,作为模板票据。可通过人工框选出模板票据的文字条的字段内容,作为参考字段(key),即第一参考字段区域。相应的,文字条后的财报数据内容进行框选,作为第二参考字段区域。以单位定期存款开户证实书的票据为例,文字条包括客户号、存款日期、开户银行、户名等信息,需要说明的是,参考字段的内容在同类型的票据版式中是不变的。

示例性地,参阅图2,所述步骤s100包括:

步骤s100a,选取标准图片格式的票据图片作为模板票据图片。

具体地,接收多个票据图片,将票据图片中的图片清晰、打印标准、背景干扰少、摆放端正的票据图片,作为模板票据图片。

步骤s100b,框选出文字条的字段内容作为第一参考字段区域以及所述文字条对应的数据内容作为第二参考字段区域。

具体地,对文字条区域进行框选,作为第一参考字段区域,而框选的文字条对应的填写的数据内容,即财报数据的区域,作为第二参考字段区域。文字条框选有多个,数据内容的字段个数保证在5个以上(推荐8-10个),并尽量分布在整张票据图片中;单个文字条的字段内容不可跨行,推荐字数在4个左右;文字条的字段内容是唯一的;框选的文字条的字段内容尽量不要包含各种符号、图案。

步骤s102,将所述模板票据图片输入至文字识别模型,以识别出所述第一参考字段区域中的文本,并通过检测模型输出所述第一参考字段区域的第一位置信息与所述第二参考字段区域的第二位置信息。

具体地,文字识别模型将第一参考字段区域的文本识别出来,并通过检测模型将第一参考字段区域的框选标记识别出第一参考字段区域的第一位置信息,根据第二参考字段区域的框选标记第二参考字段区域的第二位置信息,检测模型可以为bbox算法。第一位置信息可以包括第一参考字段区域中的边框坐标,即文字条在图片中的位置,包括有多个区域顶点坐标。第二位置信息是文字条对应的字段信息(value)的第二参考字段区域,可根据边框回归(bbox)进行识别框选,可通过高亮或者颜色、下划线等进行区域标记。第二位置信息是第二参考字段区域在模板票据中的坐标位置信息。文字识别模型根据样本票据图片进行训练得到,可识别出每张样本票据图片的文字条的字段内容,并输出与样本票据图片的文本匹配的样本文本。

示例性地,参阅图3,所述步骤s102包括:

步骤s102a,通过所述检测模型对所述第一参考字段区域与所述第二参考字段区域进行边框识别,得到第一参考字段区域的第一边框顶点与所述第二参考字段区域对应的第二边框顶点。

具体地,通过检测模型识别出第一参考字段区域与第二参考字段区域的边框标记,得到每个第一参考字段区域对应的多个第一边框顶点,以及每个第二参考字段区域对应的多个第二边框顶点,一般为4个。

步骤s102b,将所述模板票据图片的任意顶点作为坐标原点建立坐标系,得到所述第一边框顶点的第一边框坐标与所述第二边框顶点的第二边框坐标,其中,所述第一位置信息包括多个第一边框坐标,所述第二位置信息包括多个第二边框坐标。

具体地,选取模板票据图片的任意一个顶点作为坐标原点建立坐标系,将第一边框顶点与第二边框顶点映射在该坐标系里,得到第一边框坐标与第二边框坐标。

步骤s104,接收待处理票据图片,并将所述待处理票据图片输入至所述文字识别模型,识别出与所述文本匹配的目标文本,并通过所述检测模型框选标记所述目标文本的第一识别区域与第一目标位置信息。

具体地,待处理票据是模板票据的同类版式的财务票据,可以通过拍照上传,或者扫描进行上传,以进行获取。将待处理票据图片输入至文字识别模型中,输出与第一参考字段区域的文本匹配的目标文本,再框选标记目标文本的位置信息,并通过检测模型对第一识别区域进行框选。由于待处理票据与模板票据是同一版式,识别更加简便快捷。第一目标位置信息是待处理票据图片中文字条对应的位置区域,包括文字条在票据图片的坐标位置,本实施例中指的是目标信息对应的区域的坐标位置,由多个顶点坐标组成。

示例性地,参阅图4,所述步骤s104包括:

步骤s104a,通过所述检测模型对所述第一识别区域进行框选,得到多个第三边框顶点。

具体地,框选标记目标文本的位置信息,并通过检测模型对第一识别区域进行框选,得到第一识别区域对应的多个第三边框顶点。

步骤s104b,以所述待处理票据图片的任意顶点作为坐标原点建立坐标系,得到所述第三边框顶点的第三边框坐标,其中,所述第一目标位置信息包括多个第三边框坐标。

具体地,将待处理票据图片的任意顶点作为坐标原点建立坐标系,得到第三边框顶点的第三边框坐标,该坐标系可以与模板票据图片建立的坐标系一致,以更好的建立变换矩阵。第三边框坐标的个数与第一边框坐标的坐标个数一致,一般为4个。

步骤s106,根据所述第一位置信息与所述第一目标位置信息建立变换矩阵。

具体地,当识别到待处理图票据上的文字条中的字段内容与模板票据上的文字条中的字段内容一致时,建立两者的变换矩阵,也可以说是仿射矩阵,以建立模板票据图片与待处理票据图片之间的联系。仿射变换是一种二维坐标到二维坐标之间的线性变换,它保持了二维图形的“平直性”(直线经过变换之后依然是直线)和“平行性”(二维图形之间的相对位置关系保持不变,平行线依然是平行线,且直线上点的位置顺序不变)。任意的仿射变换都能表示为乘以一个矩阵(线性变换),再加上一个向量(平移)的形式。若待处理票据的图片拍照时处于倾斜状态,但字迹清晰,可通过变换矩阵对该图片进行正放矫正处理。即,根据模板对应的字段信息,与待识别位置信息进行对比,再通过变换矩阵进行进一步校正,以将待处理票据图片进行正放显示,便于票据识别。

示例性地,参阅图5,所述步骤s106包括:

步骤s106a,获取所述第一位置信息的第一边框坐标与所述第一目标位置信息的第三边框坐标。

具体地,根据上述坐标系的建立,获取第一位置信息中的多个第一边框坐标与第一目标位置信息中的多个第三边框坐标。

步骤s106b,将所述第一边框坐标进行变换得到所述第三边框坐标。

具体地,将每个第一边框坐标与每个第三边框坐标一一对应,建立第一坐标矩阵与第二坐标矩阵,将第一坐标矩阵经历旋转、平移、缩放、转置等变换操作后,得到第二坐标矩阵。

步骤s106c,根据所述第一边框坐标与所述第三边框坐标之间的变换关系建立所述变换矩阵。

具体地,根据变换的步骤,建立仿射矩阵,可以理解为,第一坐标矩阵通过线性或者非线性变换得到第二坐标矩阵,根据线性或者非线性变换建立仿射矩阵。

步骤s108,通过所述变换矩阵计算所述第二位置信息,得到所述待处理票据图片中第二识别区域的第二目标位置信息。

具体地,第二参考字段区域与第二识别区域属于同一区域,大小有不同。根据文字条之间的仿射变换,由第二位置信息可推断出第二目标位置信息。即对第二位置信息进行仿射变换,得到第二目标位置信息。

步骤s110,根据所述第一位置信息与所述第二位置信息的重叠度值,调整所述第二目标位置信息,得到待识别区域,并通过所述文字识别模型识别所述待识别区域中的文本,得到识别结果。

具体地,对模板票据图片中的第一参考字段区域与第二参考字段区域的iou(intersectionoverunion,重叠度)值,来调整待处理票据图片的第一目标位置区域与第二目标位置区域之间的iou值,进而调整第二目标位置信息,裁剪出待识别区域。计算iou的公式为:iou=重合区域/预测区域+实际区域,可以看到iou是一个比值,即交并比。在分子中,计算预测框和ground-truth之间的重叠区域;分母是并集区域,或者更简单地说,是预测框和ground-truth所包含的总区域。重叠区域和并集区域的比值,就是iou。可以理解为,首先算出模板票据图片的第一位置信息与第二位置信息的iou值,再计算出第一目标位置信息与第二目标位置信息的目标iou值,最后根据两者的iou值,调整第二目标位置信息,使得目标iou值靠近iou值。最后通过文字识别模块,对待识别区域进行内容识别,得到识别结果。

示例性地,通过文字识别模型对待识别区域的内容进行识别时,可通过正则表达式对特定数据进行调整再输出。例如:对票据中“纯数字”、“小写金额”、“大写金额”、“日期”这四个特定字段进行标准化输出。通过正则表达式进行调整,例如:票据中识别出日期为2020年4月22日,标准化输出为:2020-04-22。

示例性地,参阅图6,所述步骤s110包括:

步骤s110a,获取所述第一位置信息与所述第二位置信息的重叠度值。

具体地,获取每个第一参考字段区域的第一边框坐标,每个第二参考字段区域的第二边框坐标,根据第一参考字段区域与第二边框坐标进行iou值的计算。

步骤s110b,计算所述第一目标位置信息与所述第二目标位置信息的目标重叠度值。

具体地,获取第一目标位置信息中的第三边框坐标与第二目标位置信息的第四边框坐标,根据重叠度值的计算公式,计算第三边框坐标与第四边框坐标的目标重叠度值。

步骤s110c,调整所述第二目标位置信息,以使所述目标重叠度值等于所述重叠度值,得到待识别区域。

具体地,根据模板票据图片的iou值,对第二目标位置信息进行调整,以更加精确的框选出待识别区域。例如:iou值之差大于某个预设阈值,即调整结束,对待识别区域进行截取。

示例性地,所述方法还包括:

将所述识别结果上传至区块链进行存储。

具体地,将识别结果上传至区块链可保证其安全性和对用户的公正透明性。用户设备可以从区块链中下载得该摘要信息,以便查证财报数据是否被篡改。本示例所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。

实施例二

请继续参阅图7,示出了本发明票据识别系统实施例二的程序模块示意图。在本实施例中,票据识别系统20可以包括或被分割成一个或多个程序模块,一个或者多个程序模块被存储于存储介质中,并由一个或多个处理器所执行,以完成本发明,并可实现上述票据识别方法。本发明实施例所称的程序模块是指能够完成特定功能的一系列计算机程序指令段,比程序本身更适合于描述票据识别系统20在存储介质中的执行过程。以下描述将具体介绍本实施例各程序模块的功能:

获取模块200,用于获取模板票据图片,所述模板票据图片包括框选的第一参考字段区域以及第二参考字段区域。

具体地,从多个标准票据图片中,选取图片清晰、打印标准、背景干扰少、摆放端正的票据图片对应的票据,作为模板票据。可通过人工框选出模板票据的文字条的字段内容,作为参考字段(key),即第一参考字段区域。相应的,文字条后的财报数据内容进行框选,作为第二参考字段区域。以单位定期存款开户证实书的票据为例,文字条包括客户号、存款日期、开户银行、户名等信息,需要说明的是,参考字段的内容在同类型的票据版式中是不变的。

示例性地,所述获取模块200还用于:

选取标准图片格式的票据图片作为模板票据图片。

具体地,接收多个票据图片,将票据图片中的图片清晰、打印标准、背景干扰少、摆放端正的票据图片,作为模板票据图片。

框选出文字条的字段内容作为第一参考字段区域以及所述文字条对应的数据内容作为第二参考字段区域。

具体地,对文字条区域进行框选,作为第一参考字段区域,而框选的文字条对应的填写的数据内容,即财报数据的区域,作为第二参考字段区域。文字条框选有多个,数据内容的字段个数保证在5个以上(推荐8-10个),并尽量分布在整张票据图片中;单个文字条的字段内容不可跨行,推荐字数在4个左右;文字条的字段内容是唯一的;框选的文字条的字段内容尽量不要包含各种符号、图案。

识别模块202,用于将所述模板票据图片输入至文字识别模型,以识别出所述第一参考字段区域中的文本,并通过检测模型输出所述第一参考字段区域的第一位置信息与所述第二参考字段区域的第二位置信息。

具体地,文字识别模型将第一参考字段区域的文本识别出来,并通过检测模型将第一参考字段区域的框选标记识别出第一参考字段区域的第一位置信息,根据第二参考字段区域的框选标记第二参考字段区域的第二位置信息,检测模型可以为bbox算法。第一位置信息可以包括第一参考字段区域中的边框坐标,即文字条在图片中的位置,包括有多个区域顶点坐标。第二位置信息是文字条对应的字段信息(value)的第二参考字段区域,可根据边框回归(bbox)进行识别框选,可通过高亮或者颜色、下划线等进行区域标记。第二位置信息是第二参考字段区域在模板票据中的坐标位置信息。文字识别模型根据样本票据图片进行训练得到,可识别出每张样本票据图片的文字条的字段内容,并输出与样本票据图片的文本匹配的样本文本。

示例性地,所述识别模块202还用于:

通过所述检测模型对所述第一参考字段区域与所述第二参考字段区域进行边框识别,得到第一参考字段区域的第一边框顶点与所述第二参考字段区域对应的第二边框顶点。

具体地,通过检测模型识别出第一参考字段区域与第二参考字段区域的边框标记,得到每个第一参考字段区域对应的多个第一边框顶点,以及每个第二参考字段区域对应的多个第二边框顶点,一般为4个。

将所述模板票据图片的任意顶点作为坐标原点建立坐标系,得到所述第一边框顶点的第一边框坐标与所述第二边框顶点的第二边框坐标,其中,所述第一位置信息包括多个第一边框坐标,所述第二位置信息包括多个第二边框坐标。

具体地,选取模板票据图片的任意一个顶点作为坐标原点建立坐标系,将第一边框顶点与第二边框顶点映射在该坐标系里,得到第一边框坐标与第二边框坐标。

检测模块204,用于接收待处理票据图片,并将所述待处理票据图片输入至所述文字识别模型,识别出与所述文本匹配的目标文本,并通过所述检测模型框选标记所述目标文本的第一识别区域与第一目标位置信息。

具体地,待处理票据是模板票据的同类版式的财务票据,可以通过拍照上传,或者扫描进行上传,以进行获取。将待处理票据图片输入至文字识别模型中,输出与第一参考字段区域的文本匹配的目标文本,再框选标记目标文本的位置信息,并通过检测模型对第一识别区域进行框选。由于待处理票据与模板票据是同一版式,识别更加简便快捷。第一目标位置信息是待处理票据图片中文字条对应的位置区域,包括文字条在票据图片的坐标位置,本实施例中指的是目标信息对应的区域的坐标位置,由多个顶点坐标组成。

示例性地,所述检测模块204还用于:

通过所述检测模型对所述第一识别区域进行框选,得到多个第三边框顶点。

具体地,框选标记目标文本的位置信息,并通过检测模型对第一识别区域进行框选,得到第一识别区域对应的多个第三边框顶点。

以所述待处理票据图片的任意顶点作为坐标原点建立坐标系,得到所述第三边框顶点的第三边框坐标,其中,所述第一目标位置信息包括多个第三边框坐标。

具体地,将待处理票据图片的任意顶点作为坐标原点建立坐标系,得到第三边框顶点的第三边框坐标,该坐标系可以与模板票据图片建立的坐标系一致,以更好的建立变换矩阵。第三边框坐标的个数与第一边框坐标的坐标个数一致,一般为4个。

构建模块206,用于根据所述第一位置信息与所述第一目标位置信息建立变换矩阵。

具体地,当识别到待处理图票据上的文字条中的字段内容与模板票据上的文字条中的字段内容一致时,建立两者的变换矩阵,也可以说是仿射矩阵,以建立模板票据图片与待处理票据图片之间的联系。仿射变换是一种二维坐标到二维坐标之间的线性变换,它保持了二维图形的“平直性”(直线经过变换之后依然是直线)和“平行性”(二维图形之间的相对位置关系保持不变,平行线依然是平行线,且直线上点的位置顺序不变)。任意的仿射变换都能表示为乘以一个矩阵(线性变换),再加上一个向量(平移)的形式。若待处理票据的图片拍照时处于倾斜状态,但字迹清晰,可通过变换矩阵对该图片进行正放矫正处理。即,根据模板对应的字段信息,与待识别位置信息进行对比,再通过变换矩阵进行进一步校正,以将待处理票据图片进行正放显示,便于票据识别。

示例性地,所述构建模块206还用于:

获取所述第一位置信息的第一边框坐标与所述第一目标位置信息的第三边框坐标。

具体地,根据上述坐标系的建立,获取第一位置信息中的多个第一边框坐标与第一目标位置信息中的多个第三边框坐标。

将所述第一边框坐标进行变换得到所述第三边框坐标。

具体地,将每个第一边框坐标与每个第三边框坐标一一对应,建立第一坐标矩阵与第二坐标矩阵,将第一坐标矩阵经历旋转、平移、缩放、转置等变换操作后,得到第二坐标矩阵。

根据所述第一边框坐标与所述第三边框坐标之间的变换关系建立所述变换矩阵。

具体地,根据变换的步骤,建立仿射矩阵,可以理解为,第一坐标矩阵通过线性或者非线性变换得到第二坐标矩阵,根据线性或者非线性变换建立仿射矩阵。

计算模块208,用于通过所述变换矩阵计算所述第二位置信息,得到所述待处理票据图片中第二识别区域的第二目标位置信息。

具体地,第二参考字段区域与第二识别区域属于同一区域,大小有不同。根据文字条之间的仿射变换,由第二位置信息可推断出第二目标位置信息。即对第二位置信息进行仿射变换,得到第二目标位置信息。

调整识别模块210,用于根据所述第一位置信息与所述第二位置信息的重叠度值,调整所述第二目标位置信息,得到待识别区域,并通过所述文字识别模型识别所述待识别区域中的文本,得到识别结果。

具体地,对模板票据图片中的第一参考字段区域与第二参考字段区域的iou(intersectionoverunion,重叠度)值,来调整待处理票据图片的第一目标位置区域与第二目标位置区域之间的iou值,进而调整第二目标位置信息,裁剪出待识别区域。计算iou的公式为:iou=重合区域/预测区域+实际区域,可以看到iou是一个比值,即交并比。在分子中,计算预测框和ground-truth之间的重叠区域;分母是并集区域,或者更简单地说,是预测框和ground-truth所包含的总区域。重叠区域和并集区域的比值,就是iou。可以理解为,首先算出模板票据图片的第一位置信息与第二位置信息的iou值,再计算出第一目标位置信息与第二目标位置信息的目标iou值,最后根据两者的iou值,调整第二目标位置信息,使得目标iou值靠近iou值。最后通过文字识别模块,对待识别区域进行内容识别,得到识别结果。

示例性地,通过文字识别模型对待识别区域的内容进行识别时,可通过正则表达式对特定数据进行调整再输出。例如:对票据中“纯数字”、“小写金额”、“大写金额”、“日期”这四个特定字段进行标准化输出。通过正则表达式进行调整,例如:票据中识别出日期为2020年4月22日,标准化输出为:2020-04-22。

示例性地,所述调整识别模块210还用于:

步骤s110a,获取所述第一位置信息与所述第二位置信息的重叠度值。

具体地,获取每个第一参考字段区域的第一边框坐标,每个第二参考字段区域的第二边框坐标,根据第一参考字段区域与第二边框坐标进行iou值的计算。

计算所述第一目标位置信息与所述第二目标位置信息的目标重叠度值。

具体地,获取第一目标位置信息中的第三边框坐标与第二目标位置信息的第四边框坐标,根据重叠度值的计算公式,计算第三边框坐标与第四边框坐标的目标重叠度值。

调整所述第二目标位置信息,以使所述目标重叠度值等于所述重叠度值,得到待识别区域。

具体地,根据模板票据图片的iou值,对第二目标位置信息进行调整,以更加精确的框选出待识别区域。例如:iou值之差大于某个预设阈值,即调整结束,对待识别区域进行截取。

实施例三

参阅图8,是本发明实施例三之计算机设备的硬件架构示意图。本实施例中,所述计算机设备2是一种能够按照事先设定或者存储的指令,自动进行数值计算和/或信息处理的设备。该计算机设备2可以是机架式服务器、刀片式服务器、塔式服务器或机柜式服务器(包括独立的服务器,或者多个服务器所组成的服务器集群)等。如图8所示,所述计算机设备2至少包括,但不限于,可通过系统总线相互通信连接存储器21、处理器22、网络接口23、以及票据识别系统20。其中:

本实施例中,存储器21至少包括一种类型的计算机可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,sd或dx存储器等)、随机访问存储器(ram)、静态随机访问存储器(sram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、可编程只读存储器(prom)、磁性存储器、磁盘、光盘等。在一些实施例中,存储器21可以是计算机设备2的内部存储单元,例如该计算机设备2的硬盘或内存。在另一些实施例中,存储器21也可以是计算机设备2的外部存储设备,例如该计算机设备2上配备的插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)等。当然,存储器21还可以既包括计算机设备2的内部存储单元也包括其外部存储设备。本实施例中,存储器21通常用于存储安装于计算机设备2的操作系统和各类应用软件,例如实施例二的票据识别系统20的程序代码等。此外,存储器21还可以用于暂时地存储已经输出或者将要输出的各类数据。

处理器22在一些实施例中可以是中央处理器(centralprocessingunit,cpu)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器22通常用于控制计算机设备2的总体操作。本实施例中,处理器22用于运行存储器21中存储的程序代码或者处理数据,例如运行票据识别系统20,以实现实施例一的票据识别方法。

所述网络接口23可包括无线网络接口或有线网络接口,该网络接口23通常用于在所述服务器2与其他电子装置之间建立通信连接。例如,所述网络接口23用于通过网络将所述服务器2与外部终端相连,在所述服务器2与外部终端之间的建立数据传输通道和通信连接等。所述网络可以是企业内部网(intranet)、互联网(internet)、全球移动通讯系统(globalsystemofmobilecommunication,gsm)、宽带码分多址(widebandcodedivisionmultipleaccess,wcdma)、4g网络、5g网络、蓝牙(bluetooth)、wi-fi等无线或有线网络。

需要指出的是,图8仅示出了具有部件20-23的计算机设备2,但是应理解的是,并不要求实施所有示出的部件,可以替代的实施更多或者更少的部件。

在本实施例中,存储于存储器21中的所述票据识别系统20还可以被分割为一个或者多个程序模块,所述一个或者多个程序模块被存储于存储器21中,并由一个或多个处理器(本实施例为处理器22)所执行,以完成本发明。

例如,图7示出了所述实现票据识别系统20实施例二的程序模块示意图,该实施例中,所述票据识别系统20可以被划分为获取模块200、识别模块202、检测模块204、构建模块206、计算模块208以及调整识别模块210。其中,本发明所称的程序模块是指能够完成特定功能的一系列计算机程序指令段,比程序更适合于描述所述票据识别系统20在所述计算机设备2中的执行过程。所述程序模块200-210的具体功能在实施例二中已有详细描述,在此不再赘述。

实施例四

本实施例还提供一种计算机可读存储介质,如闪存、硬盘、多媒体卡、卡型存储器(例如,sd或dx存储器等)、随机访问存储器(ram)、静态随机访问存储器(sram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、可编程只读存储器(prom)、磁性存储器、磁盘、光盘、服务器、app应用商城等等,其上存储有计算机程序,程序被处理器执行时实现相应功能。本实施例的计算机可读存储介质用于存储票据识别系统20,被处理器执行时实现实施例一的票据识别方法。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。

以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

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