掌桥专利:专业的专利平台
掌桥专利
首页

一种票据的要素识别方法、装置及存储介质

文献发布时间:2023-06-19 11:32:36


一种票据的要素识别方法、装置及存储介质

技术领域

本说明书实施例涉及人工智能技术领域,特别涉及一种票据的要素识别方法、装置及存储介质。

背景技术

随着互联网的发展,电子化办公成为一种趋势。企业业务人员办理业务过程中涉及票据的传输、管理时,往往将纸质票据转为票据图像进行传输或管理。当需要利用票据的相关要素时,往往是通过人工阅读的方式去提取票据真的相关要素,而人工阅读提取票据要素的方式存在效率低下的问题。为推进科技赋能业务,业务核心数据智能自动化入库,通常将采用OCR文本识别技术实现对票据的要素自动识别以替代手工录入。

以支票为例,目前,境内支票要素识别的通用解决方案为:版式固定的支票:输入图像→目标碎片域切割→待识别要素定位→手写与印刷类别要素分类→要素识别。版式不固定的支票:输入图像→目标碎片域定位→待识别要素定位→手写与印刷类别要素分类→要素识别

然而版式固定的支票识别方案,模型可扩展性较差,如当新增磁码识别、二维码检测等新需求时,需要再新增模型、新增GPU资源、修改服务脚本,甚至修改历史方案重新拟定解决方案。版式不固定的支票识别方案,将手写与印刷体要素分类进行识别,虽然能提高印刷体要素识别准确率。但对模型训练样本量、GPU资源和服务时间提出了新的挑战。

由于境外支票业务日交易量相对较少,让业务提供足够的真实数据作为训练样本是不现实的。而且,境外支票存在版式复杂多样、要素表示规则与境内支票差异较大、以及币种不单一等现实问题,使得境内支票要素识别的解决方案已不再适用境外支票场景。

发明内容

本说明书实施例的目的是提供一种票据的要素方法、装置及存储介质,以解决现有技术中训练数据要求多的问题,提高票据的要素识别准确率。

为解决上述问题,本说明书实施例提供一种票据的要素识别方法,所述方法包括:对预设数量的票据图像进行分析,获得所述票据图像中目标要素的特征信息;将所述票据图像中的目标要素去除,得到目标要素去除的票据图像;根据所述目标要素的特征信息在目标要素去除的票据图像中填入模拟的目标要素,生成样本图像集;所述样本图像集中的样本图像包括填入模拟的目标要素的票据图像和目标要素在票据图像中的位置标签;使用目标检测算法对所述样本图像集中的样本图像进行训练,得到目标要素位置检测模型;利用所述目标要素位置检测模型对待识别票据图像进行检测,获取所述待识别票据图像中目标要素的位置坐标;根据所述位置坐标对所述待识别票据图像中目标要素进行识别,将所述目标要素转换为结构化信息输出。

为解决上述问题,本说明书实施例还提供一种票据的要素识别装置,所述装置包括:分析模块,用于对预设数量的票据图像进行分析,获得所述票据图像中目标要素的特征信息;去除模块,用于将所述票据图像中的目标要素去除,得到目标要素去除的票据图像;填充模块,用于根据所述目标要素的特征信息在目标要素去除的票据图像中填入模拟的目标要素,生成样本图像集;所述样本图像集中的样本图像包括填入模拟的目标要素的票据图像和目标要素在票据图像中的位置标签;训练模块,用于使用目标检测算法对所述样本图像集中的样本图像进行训练,得到目标要素位置检测模型;检测模块,用于利用所述目标要素位置检测模型对待识别票据图像进行检测,获取所述待识别票据图像中目标要素的位置坐标;识别模块,用于根据所述位置坐标对所述待识别票据图像中目标要素进行识别,将所述目标要素转换为结构化信息输出。

为解决上述问题,本说明书实施例还提供一种电子设备,包括:存储器,用于存储计算机程序;处理器,用于执行所述计算机程序以实现:对预设数量的票据图像进行分析,获得所述票据图像中目标要素的特征信息;将所述票据图像中的目标要素去除,得到目标要素去除的票据图像;根据所述目标要素的特征信息在目标要素去除的票据图像中填入模拟的目标要素,生成样本图像集;所述样本图像集中的样本图像包括填入模拟的目标要素的票据图像和目标要素在票据图像中的位置标签;使用目标检测算法对所述样本图像集中的样本图像进行训练,得到目标要素位置检测模型;利用所述目标要素位置检测模型对待识别票据图像进行检测,获取所述待识别票据图像中目标要素的位置坐标;根据所述位置坐标对所述待识别票据图像中目标要素进行识别,将所述目标要素转换为结构化信息输出。

为解决上述问题,本说明书实施例还提供一种计算机可读存储介质,其上存储有计算机指令,所述指令被执行时实现:对预设数量的票据图像进行分析,获得所述票据图像中目标要素的特征信息;将所述票据图像中的目标要素去除,得到目标要素去除的票据图像;根据所述目标要素的特征信息在目标要素去除的票据图像中填入模拟的目标要素,生成样本图像集;所述样本图像集中的样本图像包括填入模拟的目标要素的票据图像和目标要素在票据图像中的位置标签;使用目标检测算法对所述样本图像集中的样本图像进行训练,得到目标要素位置检测模型;利用所述目标要素位置检测模型对待识别票据图像进行检测,获取所述待识别票据图像中目标要素的位置坐标;根据所述位置坐标对所述待识别票据图像中目标要素进行识别,将所述目标要素转换为结构化信息输出。

由以上本说明书实施例提供的技术方案可见,本说明书实施例中,可以对预设数量的票据图像进行分析,获得所述票据图像中目标要素的特征信息;将所述票据图像中的目标要素去除,得到目标要素去除的票据图像;根据所述目标要素的特征信息在目标要素去除的票据图像中填入模拟的目标要素,生成样本图像集;所述样本图像集中的样本图像包括填入模拟的目标要素的票据图像和目标要素在票据图像中的位置标签;使用目标检测算法对所述样本图像集中的样本图像进行训练,得到目标要素位置检测模型;利用所述目标要素位置检测模型对待识别票据图像进行检测,获取所述待识别票据图像中目标要素的位置坐标;根据所述位置坐标对所述待识别票据图像中目标要素进行识别,将所述目标要素转换为结构化信息输出。本说明书实施例提供的方法,通过数据增强的整合方法对样本数据进行扩充,解决现有技术中需要存在的真实训练数据要求多的问题,提高票据的要素识别准确率。

附图说明

为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本说明书一个场景示例的示意图;

图2为本说明书一个场景示例中模型训练数据增强步骤的流程图;

图3为本说明书一个场景示例中服务封装步骤的流程图;

图4为本说明书实施例提供一种票据的要素识别方法的流程图;

图5a为本说明书手写体支票图像;

图5b为本说明书印刷体支票图像;

图6为本说明书实施例目标要素的示意图;

图7为本说明书实施例目标要素的特定示例图;

图8a为本说明书实施例对票据图像中的目标要素去除的效果示意图;

图8b为本说明书实施例对票据图像中的目标要素去除的效果示意图;

图9为本说明书一个场景示例的示意图;

图10为本说明书实施例手写体目标要素的碎片图像;

图11为本说明书实施例印刷体体目标要素的碎片图像;

图12为本说明书实施例背景噪声的示例图;

图13为本说明书实施例增强组合算法实现的程序流程图;

图14为本说明书实施例样本图像的示意图;

图15为本说明书实施例一种电子设备的功能结构示意图;

图16为本说明书实施例一种任务调度装置的功能结构示意图。

具体实施方式

下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本说明书保护的范围。

纸质票据是一种显示样式相对固定,数据项明确的纸质文件,如增值税发票、营业执照、金融票据、证照、支票等。一般而言,同类票据具有相同的显示样式和数据项,且同一数据项的位置在不同票据中基本相同,在信息化系统中,纸质票据的输出大多是通过套打或打印模板实现。由于管理制度和机构之间信息化系统不兼容等原因,纸质票据作为业务凭证和数据传输的载体,在机构内部和机构之间广为使用。但是,由于纸质票据是面向人工阅读,缺少票据的数据项等结构化信息,导致大量纸质票据内的数据提取的工作必须依赖于人工。由于人工效率低下,无法快速处理大量的票据,对于纸质票据的接收方而言,如何通过图像识别技术将票据进行快速结构化、避免重复数据录入已经成为机构信息化的关键。

纸质票据的识别与传统文档识别的主要差别是不仅需要识别纸质票据上的文本,还需要识别出票据的各个数据项值,即票据的要素,从而将纸质票据进行结构化。现有的票据识别方法大多是针对特定的票据类型,通过经验或机器学习等方式预先建立本类型的票据模板,票据模板包括票据的标准图像大小及各数据项在标准图像中的相对位置,然后将票据模板应用于新的票据图像,识别出图像中的各数据项位置对应的文本。这些方法通常需要采用大量的训练样本进行模型训练,在某些场景中,如针对对境外支票的要素识别的场景,由于境外支票业务日交易量相对较少,让业务提供足够的真实数据作为训练数据是不现实的,而且境外支票存在版式复杂多样、要素表示规则与境内支票差异较大、以及币种不单一等现实问题,使得境内支票要素识别的解决方案已不再适用境外支票场景。

考虑到如果能够使用少量的票据图像作为训练数据,接着对票据进行版式分析,掌握金额、币种等识别要素的字体样式、字体大小、待识别目标周围的字符干扰噪声及目标文本可能出现的位置区域;然后开展数据增强,生成足量原始图片和待识别区域碎片;接着开展检测模型和识别模型训练;最后封装模型发布服务,则有望解决现有技术中需要存在的真实训练数据要求多的问题,提高票据的要素识别准确率。基于此,本说明书实施例提供一种票据的要素方法、装置及存储介质。

请参阅图1,介绍本说明书一个场景示例。图1为所述场景示例中票据的要素识别方法的流程图。包括:真实数据准备步骤1、模型训练数据增强步骤2、模型训练步骤3和服务封装步骤4。

在本场景示例中,以对境外支票的要素识别为例进行说明。

所述真实数据准备步骤1包括准备预设数量的真实的境外支票图像。

所述模型训练数据增强步骤2包括对境外支票进行版式分析,掌握金额、币种等识别要素的字体样式、字体大小、待识别目标周围的字符干扰噪声及目标文本可能出现的位置区域;然后开展数据增强,去除票据图像中的目标要素,然后基于对境外支票进行版式分析在去除票据图像中的目标要素中填入模拟的目标要素,以生成足量的票据图像作为训练样本。

具体的,如图2所示,所述模型训练数据增强步骤2可以包括真实数据分析步骤21、背景噪声分析22、数据增强组合方法设计23、生成数据量评估步骤24。所述真实数据分析步骤21用于对境外支票进行版式分析,掌握金额、币种等识别要素的字体样式、字体大小、目标文本可能出现的位置区域;所述背景噪声分析22用于分析目标要素的字符干扰噪声,例如金额有很多符号如“$”、“USD”、“S$”、“※”、“*”以及边界线“_”等作为背景噪声挨着目标要素。字符噪声直接影响识别模型准确率,因此有必要向业务获取并掌握可能出现的背景噪声并在数据增强时引入;所述数据增强组合方法设计23用于基于对境外支票进行版式分析在去除票据图像中的目标要素中填入模拟的目标要素,以生成足量的票据图像作为训练样本。所述生成数据量评估步骤24用于对生成的训练样本的数量进行评估,以便于提高模型训练的准确性。

所述模型训练步骤3包括训练目标要素位置检测模型和目标要素识别模型。所述目标要素位置检测模型用于检测境外支票中目标要素的位置,所述目标要素识别模基于境外支票中目标要素的位置对目标要素进行识别。

所述服务封装步骤4包括将训练好的目标要素位置检测模型和目标要素识别模型进行封装并发布,以便于对待识别的票据图像中的目标要素进行识别。具体的,如图3所示,所述服务封装步骤4可以包括以下步骤。

步骤41:服务接收下游传入的图像。

步骤42:将图像送入目标要素位置检测模型,进行目标要素位置检测。

步骤43:判断步骤42检测结果的输出,如果返回为空则表明目标要素位置检测失败。

步骤44:当步骤43返回为空时,则编程报文返回1给调用方,报文内容至少包含状态retrun_code和信息return_msg,报文信息须说明检测模型检测失败。

步骤45:当步骤43返回不为空时,说明目标要素位置检测成功,然后对目标要素位置下的信息进行像素扩充。

步骤46:将步骤45扩充后得到的图像送入目标要素识别模型开展目标要素识别。

步骤47:判断目标要素识别模型返回是否为空,如果为空则进入相应处理分支。

步骤48:当目标要素识别模型返回为空,则修改返回信息内容,标注说明目标要素识别模型识别失败。

步骤49:若目标要素识别模型识别成功,则按照与下游调用方之间约定的报文格式构造识别要素结构化信息。

步骤410:报文返回3。

以新加坡支票金额右识别为验证案例。业务提供了大约1000张真实图片,其中手写体金额约700张,印刷体金额约300张。本方案使用了手写体和印刷体的样本量分别为500张和100张,其余图片均用于测试,方案需要的真实业务数据量同比减少80%。服务封装后端到端测试的整体准确率接近94%,满足业务使用要求。

本场景示例提供的方法,克服了目前境内支票识别方案存在的真实训练数据要求多、GPU资源使用率多、方案可扩展性差的缺陷,本方法可以先各自准备好少量的票据图像,如500张手写体票据图像和100张印刷体票据图像;接着对场景支票进行版式分析,掌握金额、币种等识别要素的字体样式、字体大小、待识别目标周围的字符干扰噪声及目标文本可能出现的位置区域;然后开展数据增强,生成足量原始图片和待识别区域碎片;接着开展检测模型和识别模型训练;最后封装模型发布服务。实测证明方案识别率高、通用性好,可扩展性强、GPU资源占用率少,加强了检测模型的鲁棒性,尤其提高了质量较差的业务影像的目标检测成功率。在准备训练模型数据方面,采用数据生成的方法生成待标注图片,其中目标要素识别模型训练样本一部分为数据自动生成,一部分来自目标要素检测模型定位输出经适当扩充的碎片。此外,还将手写体和印刷体要素混合作为数据生成模型的训练样本,并混合后开展识别模型训练,封装为一个识别模型,提高模型的整体识别准确率。

请参阅图4。本说明书实施例提供一种票据的要素识别方法。在本说明书实施例中,执行所述票据的要素识别方法的主体可以是具有逻辑运算功能的电子设备,所述电子设备可以是服务器。所述服务器可以是具有一定运算处理能力的电子设备。其可以具有网络通信单元、处理器和存储器等。当然,所述服务器并不限于上述具有一定实体的电子设备,其还可以为运行于上述电子设备中的软体。所述服务器还可以为分布式服务器,可以是具有多个处理器、存储器、网络通信模块等协同运作的系统。或者,服务器还可以为若干服务器形成的服务器集群。所述方法可以包括以下步骤。

S410:对预设数量的票据图像进行分析,获得所述票据图像中目标要素的特征信息。

在一些实施例中,以所述票据为境外支票为例。例如可以准备约500张手写体支票图像和100张印刷体支票图像。其中,所述手写体支票中的金额、币种等要素为手写的字体,如图5a所示;所述印刷体支票中的金额、币种等要素为印刷的字体,如Hack-Regular、huawenzhongsong、msyh、simsun、SURSONG、WeiRuanYaHei-1等字体,如图5b所示。

在一些实施例中,所述目标要素可以为票据中待识别的要素,所述目标要素具体可以为币种、磁码、日期等要素。如图6所示,境外支票主要待识别要素为金额右,此外也涉及金额左、币种、磁码等要素的识别。所述目标要素的特征信息包括字体样式、字体大小、字体颜色、文本位置、字迹深浅等,如图7所示。对预设数量的票据图像进行分析可以包括对字体样式、字体大小、字体颜色、文本位置、字迹深浅等的分析,以获取目标要素的特征信息。获取了上述目标要素的特征信息,可以在后续步骤中基于这些特征信息模拟生成目标要素,以便于生成足量的训练样本对模型进行训练,从而提高目标要素识别的准确性。

S420:将所述票据图像中的目标要素去除,得到目标要素去除的票据图像。

在一些实施例中,将至少一个票据图像中的目标要素去除,得到目标要素去除的票据图像。当然,为提高目标要素识别的准确性,可以选取多个票据类型不同的图像中的目标要素去除,得到多个目标要素去除的票据图像。

在一些实施例中,所述将所述票据图像中的目标要素去除,得到目标要素去除的票据图像包括:获取目标要素在所述票据图像的目标区域;对所述目标区域进行任意擦除,或复制所述票据图像其他背景区域更换目标区域,得到目标要素去除的票据图像。具体的,可以基于S410中获得的目标要素的特征信息确定目标要素在所述票据图像的位置,进而获取目标要素在票据图像的目标区域,如币种、磁码等在票据图像的目标区域,再对目标区域的目标要素进行去除处理,如选择任意擦除目标物、或复制图片其它背景区域更换目标区域,效果如图8a和图8b所示。通过上述对票据图像中的目标要素去除,可以提高去除效率,获取足量的目标要素去除的票据图像。

在一个具体的场景示例中,如图9所示。将所述票据图像中的目标要素去除,得到目标要素去除的票据图像可以通过步骤230和步骤231实现。

具体的,步骤230:模板图准备。首先获取一张完整的真实业务影像如图5a和图5b所示。需要强调的是,为保证方案的泛化性,需要尽可能提供业务场景中不同样式的票据图像。

步骤231:目标要素去除。针对需要识别的目标要素如币种、要素、磁码,进行去除处理,如选择任意擦除目标物、或复制图片其它背景区域更换目标区域。

S430:根据所述目标要素的特征信息在目标要素去除的票据图像中填入模拟的目标要素,生成样本图像集;所述样本图像集中的样本图像包括填入模拟的目标要素的票据图像和目标要素在票据图像中的位置标签。

通过根据所述目标要素的特征信息在目标要素去除的票据图像中填入模拟的目标要素,可以得到多个样本图像形成的样本图像集。所述样本图像包括填入模拟的目标要素的票据图像和目标要素在票据图像中的位置标签。

所述根据所述目标要素的特征信息在目标要素去除的票据图像中填入模拟的目标要素可以通过多种方式实现。例如通过文本图像写字的方式,即在目标要素去除的票据图像的相应位置进行写字,从而完成模拟的目标要素的填充,这种方式适用于印刷体支票。还可以通过文本碎片粘贴的方式,即在目标要素去除的票据图像的相应位置粘贴文本碎片图像,这些文本碎片图像中包括基于所述目标要素的特征信息模拟生成的目标要素,文本碎片图像的尺寸大小与票据图像中目标要素所在的区域相适应,这种方式适用于印刷体支票和手写体支票。

在一些实施例中,通过文本图像写字的方式实现根据所述目标要素的特征信息在目标要素去除的票据图像中填入模拟的目标要素,生成样本图像集包括:根据所述目标要素的特征信息确定模拟参数;所述模拟参数表示模拟的目标要素的生成参数;根据所述模拟参数在目标要素去除的票据图像中填入模拟的目标要素,生成样本图像集。通过上述方式,能够生成足量不同样式的印刷体训练数据,有利于提高后续训练得到的模型的准确性和泛化性。

具体的,所述模拟参数可以为字体样式、字体颜色、字体大小、文本位置等参数。其中,所述字体样式可以包括Hack-Regular、huawenzhongsong、msyh、simsun、SURSONG、WeiRuanYaHei-1等。对于所述字体颜色,印刷体支票一般都是黑色或灰黑色,而手写体支票的颜色则更广如橘黄色、蓝色等。考虑文本图像写字的方式一般都是针对印刷体而言,所以图像写字的颜色选择黑色或灰黑色。对于所述字体大小,仅考虑印刷体支票,字体大小size可以设置在13-25之间。对于文本位置,设计的写字文本所在原图中的位置会影响模型的鲁棒性,特别是针对某些目标要素套打覆盖在了背景噪声或超出了特定区域。基于此,针对不同的目标要素,需要设计不同的写字位置偏移量。如磁码和金额左则应重点关注在宽度width的偏移量大小,而金额右和币种则对高度height的偏移量要求较为严格,真实票据图像中这两个目标要素频繁套打在了区域内的边界框或实线上了。

在一些实施例中,通过文本碎片粘贴的方式实现根据所述目标要素的特征信息在目标要素去除的票据图像中填入模拟的目标要素,生成样本图像集包括:根据所述目标要素的特征信息生成多个碎片图像;所述碎片图像包括模拟的目标要素;所述碎片图像的尺寸大小与票据图像中目标要素所在的区域相适应;将所述碎片图像粘贴至目标要素去除的票据图像中的预设区域,生成样本图像集。通过文本碎片粘贴的方式,既能生成足量的印刷体训练数据,还能生成足量的手写体训练数据,从而使得后续训练得到的模型具有通用性好,可扩展性强的特点。

在一些实施例中,由于文本碎片粘贴的方式得到的图像在粘贴的边界处会有明显的颜色抖变,因此需要进行修补,从而使得得到的图像更加接近于真实的票据图像,提高样本图片的质量。因此,所述方法还可以包括:采用平均颜色的方式来修补所述碎片图像和目标要素去除的票据图像的粘贴边界。

在一些实施例中,所述碎片图像可以根据所述目标要素的特征信息生成多个碎片图像,具体为使用WGAN算法根据所述目标要素的特征信息生成多个碎片图像;所述图像包括的模拟的目标要素为手写体目标要素。具体的,针对手写体目标要素采用WGAN算法生成,以一个例子进行说明,其中部分参数包括:训练样本量:600(500张手写体碎片和100张印刷体碎片混合);生成图像尺寸(width,height)=(288,72);迭代次数2万;模型训练每间隔1000次生成一轮图片,数量512。由于模型生成的图片无标签,因此需要手工从生成的图片中挑选出能标注的图片。生成的碎片图像如图10所示。通过使用WGAN算法根据所述目标要素的特征信息生成多个碎片图像,能够实现手写体票据的目标要素的生成,从而得到包含手写体目标要素的票据图像,为后续模型的训练提供数据。

在一些实施例中,还可以通过文本图像写字的方式实现根据所述目标要素的特征信息生成多个碎片图像,与上述通过文本图像写字的方式实现根据所述目标要素的特征信息在目标要素去除的票据图像中填入模拟的目标要素,生成样本图像集的方式类似,所述根据所述目标要素的特征信息生成多个碎片图像包括:根据所述目标要素的特征信息确定模拟参数;所述模拟参数表示模拟的目标要素的生成参数;根据所述模拟参数在预设尺寸的图像模板中填入模拟的目标要素,得到多个碎片图像;所述图像包括的模拟的目标要素为印刷体目标要素。考虑到生成的碎片图像可以作为训练样本,因此要确保碎片图像上的写字不能超出图像边界,否则和标签的不匹配影响模型的训练过程从而直接导致模型准确率下降。为解决这一问题,可以先准备尺寸足够大的任一模板,然后确认固定好待写的文本及字体等信息,接着调用Image.textsize()函数获取待写文本的尺寸。最后基于该文本尺寸及设置的位置偏移量重建一张碎片图即可生成一张可直接用于训练识别模型的碎片图。生成的碎片图像如图11所示。

进一步的,考虑到目标要素挨着字符噪声,且字符噪声的种类、数量均需要与实际场景情况相吻合。比如噪声星号“*”一般以数量1-3个出现在待识别金额的左边、右边或两端。因此,在构造写字文本时需要重点考虑字符噪声的多样性,保证识别模型的泛化性。

在一些实施例中,所述方法还可以包括:对预设数量的票据图像进行分析,获得靠近目标要素位置的背景噪声;相应的,根据所述目标要素的特征信息在目标要素去除的票据图像中填入模拟的目标要素,以及在靠近模拟的目标要素位置引入所述背景噪声,生成样本图像集。具体的,目标要素周围出现的可能背景噪声,例如金额有很多符号如“$”、“USD”、“S$”、“※”、“*”以及边界线“_”等作为背景噪声挨着待识别金额如图12所示。字符噪声直接影响目标要素识别的准确率。在样本图像中将靠近目标的背景字符噪声视为目标一同训练,可提高模型的检测成功率。同时,对识别模型而言将字符噪声视为空白背景过滤只需在训练模型阶段时准备足够量、足够全的背景噪声样本即可,按流程下来可提高目标要素的识别成功率。

在一些实施例中,所述方法还可以包括:对填入模拟的目标要素的票据图像进行效果增强处理;所述效果增强处理包括像素缺失、字迹减淡模糊、实线局部干扰、椒盐噪声等处理中的至少一种。具体的,填入模拟的目标要素的票据图像可能存在像素缺失、字迹减淡模糊、实线局部干扰、椒盐噪声等影响,考虑到服务封装中的模型处理逻辑是目标要素识别模型的输入来自目标要素检测模型的输出,因此目标要素检测模型的对于目标要素的位置的检测成功率直接影响目标要素识别模型对于目标要素识别的准确率。通过对填入模拟的目标要素的票据图像再进行效果增强,加强了目标要素检测模型的鲁棒性,尤其提高了质量较差的业务影像的目标要素位置的检测成功率。在一个场景示例中,用到的效果增强方法可以包括:像素缺失:如黑色体的要素文本部分轨迹被其它背景颜色覆盖,或被白色填充。实线局部干扰:在目标要素区域内随机位置进行画线,线的颜色一般以黑色为主、线的长度、粗细和方向以业务图像进行模拟设计。椒盐噪声:添加椒盐噪声,本场景设置的噪声比例为0.04和0.03。字迹减淡模糊:选择高斯模糊,本场景设置的模糊强度radius为[0.3,0.4,0.5,0.6]。

在一个具体的场景示例中,如图9所示,根据所述目标要素的特征信息在目标要素去除的票据图像中填入模拟的目标要素,生成样本图像集可以通过步骤232、步骤231、步骤233和步骤234实现。

具体的,在步骤232中,可以通过文本图像写字的方式和文本碎片粘贴的方式实现根据所述目标要素的特征信息在目标要素去除的票据图像中填入模拟的目标要素,同时还可以在填入模拟的目标要素后,对生成的图像进行背景噪声引入。

在步骤233中,对于步骤232生成的图像,可以进行效果增强后处理,以减少像素缺失、字迹减淡模糊、实线局部干扰、椒盐噪声等的影响。

在步骤234中,可以通过设计增强组合算法实现上述步骤的过程。具体的,如图13所示,将编程实现步骤232-步骤233提到的数据增强功能可以包括以下步骤。

步骤234-0:python图像处理库导入。

在本场景示例中,数据增强基础库基于PIL库,主要涉及Image、ImageDraw、ImageFont等模块。

步骤234-1:目标要素去除的原图读入。

所述目标要素去除的原图为目标要素去除的票据图像。如果是单张图片,则直接送入Image.open()函数获取图像数据,如果是多张图片,即图像列表则需要算法随机抽取某张图片送入Image.open()函数。这里算法可以自主实现也可以借助random模块构造。

步骤234-2:是否碎片粘贴。

图像处理动作分支,根据步骤234-1传入命令参数确认。即确认通过文本碎片粘贴的方式还是通过文字图像写字的方式在目标要素去除的票据图像中填入模拟的目标要素。

步骤234-3:碎片列表。

在选择碎片粘贴的方式将在目标要素去除的票据图像中填入模拟的目标要素的情况下,需要粘贴在原图目标区域的碎片图像形成列表list。

步骤234-4:算法随机抽取。

同步骤234-1一样,实现某张碎片图像的抽取,可根据业务场景中影像类别的比重设置抽取特定碎片的概率。

步骤234-5:图像合成。

借助Image.paste()函数将碎片和原图进行粘贴合成,其中粘贴位置从预先设置的区域中选择。

步骤234-6:边界修补。

由于合成的图片在边界处会有明显的颜色抖变,因此需要进行修补,本方案采用碎片平均颜色进行边界修补。

步骤234-7:参数初始化。

在不选择碎片粘贴的方式将在目标要素去除的票据图像中填入模拟的目标要素的情况下,则需要自行实现文本图像写字。首先需要参数初始化,比如字体样式、字体位置、字体大小等根据实际情况进行范围取值,然后离散化为列表类型。

步骤234-8:算法参数随机组合。

步骤234-7对每一个参数形成的列表,需编程实现随机抽取,形成参数组合。

步骤234-9:函数加载。

将步骤234-8形成的参数组合送入ImageFont.truetype()、ImageDraw.Draw()、ImageDraw.text()等函数。

步骤234-10:函数执行。

文本图像写字实现。

步骤234-11:效果增强。

编程自主实现像素缺失、画干扰线等函数,并随机调用某一种效果增强函数实现效果增强。

步骤234-12:图像保存。

样本图像集生成,所述样本图像集中的样本图像包括填入模拟的目标要素的票据图像和目标要素在票据图像中的位置标签。其中,生成的样本图像如图14所示。

其中,样本图像集生成过程中,还可以包括样本图像集中样本图像数量的评估步骤,一般地,数据量和模型准确率成正比,即数据量越多模型准确率相对更高,表1为本方案在境外支票场景下确定的数据量与模型准确率之间的关系。

表1

S440:使用目标检测算法对所述样本图像集中的样本图像进行训练,得到目标要素位置检测模型,以便于基于所述目标要素位置检测模型对待识别票据图像中目标要素进行识别。

目标检测(Object Detection),也叫目标提取,是一种基于目标几何和统计特征的图像分割。本说明书实施例中,可以采用centernet、fsaf等算法来对所述样本图像集中的样本图像进行训练,从而找出样本图像与目标要素的位置的对应关系,得到目标要素位置检测模型。

在得到目标要素位置检测模型,可以将待识别票据图像输入至所述目标要素位置检测模型中,基于模型的输出结果得到所述待识别票据图像中目标要素的位置坐标,进而根据所述位置坐标对所述待识别票据图像中目标要素进行识别。

在一些实施例中,所述基于所述目标要素位置检测模型对待识别票据图像中目标要素进行识别包括:利用所述目标要素位置检测模型对待识别票据图像进行检测,获取所述待识别票据图像中目标要素的位置坐标;根据所述位置坐标对所述待识别票据图像中目标要素进行识别,将所述目标要素转换为结构化信息输出。

具体的,可以将待识别票据图像输入所述目标要素位置检测模型中,将所述目标要素位置检测模型的输出作为待识别票据图像中目标要素的定位结果,得到所述待识别票据图像中目标要素的位置坐标。在得到待识别票据图像中目标要素的位置坐标后,可以对该位置坐标区域内的图像进行识别,将识别结果作为对待识别票据图像中目标要素的识别结果。上述对于待识别票据图像中目标要素的识别利用了目标要素位置检测模型对于对于待识别票据图像中目标要素的定位结果,可以准确确定目标要素在待识别票据图像中的位置,进而能够提高最终的识别结果。

在一些实施例中,可以通过预设的目标要素识别模型中进行识别。所述根据所述位置坐标对所述待识别票据图像中目标要素进行识别,将所述目标要素转换为结构化信息输出包括:获取所述待识别票据图像中所述位置坐标下的目标图像;对所述目标图像进行像素扩充;将扩充后的目标图像输入至预设的目标要素识别模型中,获得所述待识别票据图像中目标要素的识别结果;将所述识别结果转换为结构化信息输出。具体的,可以获取所述待识别票据图像中所述位置坐标下的目标图像,该目标图像包括了目标要素,通过对目标图像进行像素扩充,能够使得目标图像更加清晰,提高目标要素识别模型的识别准确性。

在一些实施例中,所述目标要素识别模型根据以下方式训练得到:将所述样本图像集中的样本图像输入所述目标要素位置检测模型中,得到样本图像中目标要素的位置坐标;对所述位置坐标下的图像进行文字标注,以及对根据所述目标要素的特征信息生成的碎片图像进行文字标注;将经过文字标注的所述位置坐标下的图像和所述碎片图像作为训练数据对视觉注意力模型进行训练,得到所述目标要素识别模型。具体的,所述目标要素识别模型的训练样本的数据量如表1所示,训练数据的来源包括上述碎片图像和基于目标要素位置检测模型输出的样本图像中目标要素的位置坐标得到的所述位置坐标下的图像,对这些图像进行文字标注,从而生成训练数据,再使用训练数据对视觉注意力识别模型(CNN+LSTM+Attention)进行训练,从而找出训练数据中图像的像素与文字的关联关系,得到目标要素识别模型。进一步的,还可以对所述位置坐标下的图像和所述碎片图像进行像素扩充,将像素扩充后的所述位置坐标下的图像和所述碎片图像作为训练数据,以提高目标要素识别模型的识别准确性。上述训练方式,训练数据中既包含了手写体训练数据,还包括了印刷体训练数据,既包括了碎片图像还包括目标要素位置检测模型输出得到的图像,使得训练数据具有多样性,进一步提高了目标要素识别模型的可扩展性和通用性,在训练过程中也能降低GPU资源占用了。

在一些实施例中,为进一步提高目标要素识别模型的训练效率,可以使所述经过文字标注的所述位置坐标下的图像和所述碎片图像作为训练数据的比例为4:1,使得训练后得到的目标要素识别模型的泛化性。

本说明书实施例提供的方法,可以对预设数量的票据图像进行分析,获得所述票据图像中目标要素的特征信息;将所述票据图像中的目标要素去除,得到目标要素去除的票据图像;根据所述目标要素的特征信息在目标要素去除的票据图像中填入模拟的目标要素,生成样本图像集;所述样本图像集中的样本图像包括填入模拟的目标要素的票据图像和目标要素在票据图像中的位置标签;使用目标检测算法对所述样本图像集中的样本图像进行训练,得到目标要素位置检测模型;利用所述目标要素位置检测模型对待识别票据图像进行检测,获取所述待识别票据图像中目标要素的位置坐标;根据所述位置坐标对所述待识别票据图像中目标要素进行识别,将所述目标要素转换为结构化信息输出。本说明书实施例提供的方法,通过数据增强的整合方法对样本数据进行扩充,解决现有技术中需要存在的真实训练数据要求多的问题,提高票据的要素识别准确率。

图15为本说明书实施例一种电子设备的功能结构示意图,所述电子设备可以包括存储器和处理器。

在一些实施例中,所述存储器可用于存储所述计算机程序和/或模块,所述处理器通过运行或执行存储在所述存储器内的计算机程序和/或模块,以及调用存储在存储器内的数据,实现票据的要素识别方法的各种功能。所述存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据用户终端的使用所创建的数据。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘、智能存储卡(Smart Media Card,SMC)、安全数字(Secure Digital,SD)卡、闪存卡(Flash Card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。

所述处理器可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(APPlication Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。所述处理器可以执行所述计算机指令实现以下步骤:对预设数量的票据图像进行分析,获得所述票据图像中目标要素的特征信息;将所述票据图像中的目标要素去除,得到目标要素去除的票据图像;根据所述目标要素的特征信息在目标要素去除的票据图像中填入模拟的目标要素,生成样本图像集;所述样本图像集中的样本图像包括填入模拟的目标要素的票据图像和目标要素在票据图像中的位置标签;使用目标检测算法对所述样本图像集中的样本图像进行训练,得到目标要素位置检测模型,以便于基于所述目标要素位置检测模型对待识别票据图像中目标要素进行识别。

在本说明书实施例中,该电子设备具体实现的功能和效果,可以与其它实施例对照解释,在此不再赘述。

图16为本说明书实施例一种票据的要素识别装置的功能结构示意图,该装置具体可以包括以下的结构模块。

分析模块1610,用于对预设数量的票据图像进行分析,获得所述票据图像中目标要素的特征信息;

去除模块1620,用于将所述票据图像中的目标要素去除,得到目标要素去除的票据图像;

填充模块1630,用于根据所述目标要素的特征信息在目标要素去除的票据图像中填入模拟的目标要素,生成样本图像集;所述样本图像集中的样本图像包括填入模拟的目标要素的票据图像和目标要素在票据图像中的位置标签;

识别模块1640,用于使用目标检测算法对所述样本图像集中的样本图像进行训练,得到目标要素位置检测模型,以便于基于所述目标要素位置检测模型对待识别票据图像中目标要素进行识别。

本说明书实施例还提供了一种任务调度方法的计算机可读存储介质,所述计算机可读存储介质存储有计算机程序指令,在所述计算机程序指令被执行时实现:对预设数量的票据图像进行分析,获得所述票据图像中目标要素的特征信息;将所述票据图像中的目标要素去除,得到目标要素去除的票据图像;根据所述目标要素的特征信息在目标要素去除的票据图像中填入模拟的目标要素,生成样本图像集;所述样本图像集中的样本图像包括填入模拟的目标要素的票据图像和目标要素在票据图像中的位置标签;使用目标检测算法对所述样本图像集中的样本图像进行训练,得到目标要素位置检测模型,以便于基于所述目标要素位置检测模型对待识别票据图像中目标要素进行识别。

在本说明书实施例中,上述存储介质包括但不限于随机存取存储器(RandomAccess Memory,RAM)、只读存储器(Read-Only Memory,ROM)、缓存(Cache)、硬盘(HardDisk Drive,HDD)或者存储卡(Memory Card)。所述存储器可用于存储所述计算机程序和/或模块,所述存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序等;存储数据区可存储根据用户终端的使用所创建的数据等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器。在本说明书实施例中,该计算机可读存储介质存储的程序指令具体实现的功能和效果,可以与其它实施方式对照解释,在此不再赘述。

需要说明的是,本说明书实施例提供的票据的要素识别方法、装置及存储介质,可以应用于人工智能技术领域。当然,也可以应用于金融领域,或者除金融领域之外的任意领域,本说明书实施例对所述票据的要素识别方法、装置及存储介质的应用领域不做限定。

需要说明的是,本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同或相似的部分互相参见即可,每个实施例重点说明的都是与其它实施例的不同之处。尤其,对于装置实施例和设备实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

本领域技术人员在阅读本说明书文件之后,可以无需创造性劳动想到将本说明书列举的部分或全部实施例进行任意组合,这些组合也在本说明书公开和保护的范围内。

在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device,PLD)(例如现场可编程门阵列(Field Programmable GateArray,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(AlteraHardware DescriptionLanguage)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(RubyHardware Description Language)等,目前最普遍使用的是VHDL(Very-High-SpeedIntegrated Circuit Hardware Description Language)与Verilog2。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。

上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。

通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本说明书可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本说明书的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本说明书各个实施例或者实施例的某些部分所述的方法。

本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

本说明书可用于众多通用或专用的计算机系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。

本说明书可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。

虽然通过实施例描绘了本说明书,本领域普通技术人员知道,本说明书有许多变形和变化而不脱离本说明书的精神,希望所附的权利要求包括这些变形和变化而不脱离本说明书的精神。

相关技术
  • 一种票据的要素识别方法、装置及存储介质
  • 票据要素提取方法、装置、电子设备及可读存储介质
技术分类

06120112965101