CN113128496B - 一种从图像中提取结构化数据的方法、装置和设备 - Google Patents
一种从图像中提取结构化数据的方法、装置和设备 Download PDFInfo
- Publication number
- CN113128496B CN113128496B CN201911422164.2A CN201911422164A CN113128496B CN 113128496 B CN113128496 B CN 113128496B CN 201911422164 A CN201911422164 A CN 201911422164A CN 113128496 B CN113128496 B CN 113128496B
- Authority
- CN
- China
- Prior art keywords
- image
- sub
- structured data
- text
- network
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 51
- 238000013075 data extraction Methods 0.000 claims abstract description 127
- 238000012549 training Methods 0.000 claims abstract description 65
- 238000003062 neural network model Methods 0.000 claims abstract description 9
- 239000013598 vector Substances 0.000 claims description 133
- 238000000605 extraction Methods 0.000 claims description 31
- 230000015654 memory Effects 0.000 claims description 25
- 238000012795 verification Methods 0.000 claims description 10
- 238000004364 calculation method Methods 0.000 abstract description 4
- 238000013473 artificial intelligence Methods 0.000 abstract description 3
- 230000004927 fusion Effects 0.000 description 46
- 230000006870 function Effects 0.000 description 31
- 238000010586 diagram Methods 0.000 description 10
- 238000004891 communication Methods 0.000 description 9
- 238000004590 computer program Methods 0.000 description 7
- 238000007781 pre-processing Methods 0.000 description 7
- 238000002372 labelling Methods 0.000 description 6
- 238000013528 artificial neural network Methods 0.000 description 5
- 238000012937 correction Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 238000001514 detection method Methods 0.000 description 4
- 239000000284 extract Substances 0.000 description 3
- 238000007726 management method Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000000306 recurrent effect Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 230000005284 excitation Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/60—Type of objects
- G06V20/62—Text, e.g. of license plates, overlay texts or captions on TV images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2291—User-Defined Types; Storage management thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- Databases & Information Systems (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Multimedia (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Character Discrimination (AREA)
- Image Analysis (AREA)
Abstract
本申请提供了一种从图像中提取结构化数据的方法,涉及人工智能领域,包括:输入图像至结构化数据提取模型,根据结构化数据提取模型获得图像的文字位置信息集合、文字属性信息集合和文字内容信息集合,根据至少一个子图像在图像中的位置、至少一个子图像中的文字的属性和内容,确定图像中的结构化数据。上述结构化数据提取模型为由一个训练数据集训练获得的神经网络模型。如此,实现了端到端的结构化数据提取,避免了通过至少两个模型进行结构化数据提取导致的准确度不高、计算资源消耗大、花费时间长的问题。
Description
技术领域
本申请涉及人工智能技术领域,尤其涉及一种从图像中提取结构化数据的方法、用于执行该方法的装置和计算设备。
背景技术
结构化数据是指通过二维表结构逻辑表达的数据。基于结构化数据可以有效提高检索效率和信息处理效率。随着人工智能和大数据浪潮的来袭,对图像中的结构化数据进行提取成为了一大研究的热点,经提取的结构化数据便于在数据库中保存和使用。目前,结构化数据提取方案广泛地应用于各大企业的资源管理系统、账单系统,医院的医疗信息管理系统,教育一卡通系统等。
结构化数据提取一般包括文字检测、文字识别以及信息抽取三个步骤。传统对图像完成结构化数据提取的过程消耗的计算资源多、时间长。
发明内容
本申请提供了一种从图像中提取结构化数据的方法,解决了传统提取方法消耗计算多、花费时间长的问题。本申请还提供了对应的装置、设备、存储介质以及计算机程序产品。
第一方面,本申请提供了一种从图像中提取结构化数据的方法,该方法应用于结构化数据提取装置。
在具体实现时,结构化数据提取装置将记录了至少一条结构化数据的图像输入至结构化数据提取模型,该结构化数据提取模型具体为由一个训练数据集训练后的神经网络模型,结构化数据提取装置可以根据所述结构化数据提取模型进行信息提取,获得所述图像的文字位置信息集合、文字属性信息集合和文字内容信息集合。
其中,文字位置信息集合包括至少一个子图像在所述图像中的位置,文字属性信息集合包括所述至少一个子图像中的文字的属性,文字内容信息集合包括所述至少一个子图像中的文字的内容,每个子图像为所述图像中包括文字的部分图像。结构化数据提取装置可以根据所述至少一个子图像在所述图像中的位置、所述至少一个子图像中的文字的属性和内容,从而确定所述图像中的结构化数据。
该方法通过利用一个训练数据集训练得到的结构化数据提取模型提取文字位置信息、文字属性信息和文字内容信息,实现了端到端的结构化数据提取,避免了采用两个模型进行结构化数据提取时在后模型很大程度受到在先模型的准确率的影响,进而导致结构化数据提取准确性不高的问题。进一步地,相较于通过至少两个模型进行结构化数据提取,该方法可以减少计算资源消耗,节省提取时间。
在一种可能的实现方式中,所述结构化数据提取模型包括主干网络、至少一个位置识别子网络、至少一个属性识别子网络和至少一个内容识别子网络。在进行结构化数据提取时,将图像输入至主干网络,该主干网络用于对图像进行特征提取,如此可以输出至少一个特征向量。
然后,将至少一个特征向量输入至位置识别子网络,该位置识别子网络用于确定至少一个特征向量对应的子图像在图像中的位置信息,获得文字位置信息集合。将至少一个特征向量输入至属性识别子网络,该属性识别子网络用于确定所述至少一个特征向量对应的子图像中的文字的属性,获得所述文字属性信息集合。将所述至少一个特征向量输入至内容识别子网络,该内容识别子网络用于确定所述至少一个特征向量对应的子图像中的文字的内容,获得所述文字内容信息集合。
在一种可能的实现方式中,考虑到有些图像版面比较复杂,例如印章等图像中可以包括竖排文字或者弧形排列的文字,内容识别子网络可以设置为对单字符进行检测的网络,如此,可以实现对具有复杂版面的图像进行结构化数据提取。
具体地,内容识别子网络以特征向量为输入,以子图像中文字的内容为输出。所述子图像为所述特征向量的值在所述图像中的候选框对应的图像,所述候选框的高度和宽高比例值分别满足预设定的高度值和预设定的宽高比例值。
其中,预设定的高度值和预设定的宽高比例值对应于单字符的高度值和宽高比例值,其可以根据经验值设定。例如,预设定高度值可以设置为1至2(包括端点)厘米中的一个或多个,预设定的宽高比例值可以设置为0.5至2(包括端点)中的一个或多个。对应地,候选框标识的子图像中的文字为单字符。
如此,不仅可以实现对复杂版面图像的结构化数据提取,而且有效减少宽高比的范围,避免采用复杂方法检测多种文字块,提高内容识别效率。
在一种可能的实现方式中,结构化数据提取装置可以先根据所述至少一个子图像中的文字的属性对所述至少一个子图像进行分类,得到一类或多类子图像,然后根据一类子图像中的每个子图像在所述图像中的位置对所述一类子图像中的文字的内容进行组合,根据组合结果和所述一类子图像对应的文字的属性确定所述图像中的所述结构化数据。
在一种可能的实现方式中,当从所述图像中提取出至少两条结构化数据时,结构化数据提取装置还可利用从所述图像中提取的所述至少两条结构化数据之间的关联关系对所述至少两条结构化数据进行相互校验,确定所述至少两条结构化数据的正确性。通过对提取的结构化数据进行校验,可以进一步提高结构化数据的准确性,进而提高该结构化数据的可用性。
第二方面,本申请提供了一种结构化数据提取装置,该装置包括:
输入模块,用于输入所述图像至结构化数据提取模型,所述结构化数据提取模型为由一个训练数据集训练后的神经网络模型,所述图像中记录了至少一条结构化数据;
提取模块,用于根据所述结构化数据提取模型获得所述图像的文字位置信息集合、文字属性信息集合和文字内容信息集合,其中,所述文字位置信息集合包括至少一个子图像在所述图像中的位置,所述文字属性信息集合包括所述至少一个子图像中的文字的属性,所述文字内容信息集合包括所述至少一个子图像中的文字的内容,每个子图像为所述图像中包括文字的部分图像;
确定模块,用于根据所述至少一个子图像在所述图像中的位置、所述至少一个子图像中的文字的属性和内容,确定所述图像中的结构化数据。
在一种可能的实现方式中,所述结构化数据提取模型包括主干网络、至少一个位置识别子网络、至少一个属性识别子网络和至少一个内容识别子网络;
所述提取模块具体用于:
将所述图像输入所述主干网络,所述主干网络用于对所述图像进行特征提取,输出至少一个特征向量;
将所述至少一个特征向量输入至位置识别子网络,所述位置识别子网络用于确定所述至少一个特征向量对应的子图像在图像中的位置信息,获得所述文字位置信息集合;
将所述至少一个特征向量输入至属性识别子网络,所述属性识别子网络用于确定所述至少一个特征向量对应的子图像中的文字的属性,获得所述文字属性信息集合;
将所述至少一个特征向量输入至内容识别子网络,所述内容识别子网络用于确定所述至少一个特征向量对应的子图像中的文字的内容,获得所述文字内容信息集合。
在一种可能的实现方式中,所述内容识别子网络以所述特征向量为输入,以子图像中文字的内容为输出,所述子图像为所述特征向量的值在所述图像中的候选框对应的图像,所述候选框的高度和宽高比例值分别满足预设定的高度值和预设定的宽高比例值,所述候选框标识的子图像中的文字为单字符。
在一种可能的实现方式中,所述确定模块具体用于:
根据所述至少一个子图像中的文字的属性对所述至少一个子图像进行分类,得到一类或多类子图像;
根据一类子图像中的每个子图像在所述图像中的位置对所述一类子图像中的文字的内容进行组合,根据组合结果和所述一类子图像对应的文字的属性确定所述图像中的所述结构化数据。
在一种可能的实现方式中,所述装置还包括:
校验模块,用于当从所述图像中提取出至少两条结构化数据时,利用从所述图像中提取的所述至少两条结构化数据之间的关联关系对所述至少两条结构化数据进行相互校验,确定所述至少两条结构化数据的正确性。
第三方面,本申请提供一种计算机集群,所述计算集群包括至少一台计算机,每台计算机包括处理器和存储器。所述处理器、所述存储器进行相互的通信。所述至少一台计算机的处理器用于执行所述至少一台计算机的存储器中存储的指令,以使得计算机集群执行如第一方面或第一方面的任一种实现方式中的从图像中提取结构化数据的方法。
第四方面,本申请提供一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机集群上运行时,使得计算机集群执行上述第一方面或第一方面的任一种实现方式所述的从图像中提取结构化数据的方法。
第五方面,本申请提供了一种包含指令的计算机程序产品,当其在计算机集群上运行时,使得计算机集群执行上述第一方面或第一方面的任一种实现方式所述的从图像中提取结构化数据的方法。
本申请在上述各方面提供的实现方式的基础上,还可以进行进一步组合以提供更多实现方式。
附图说明
为了更清楚地说明本申请实施例的技术方法,下面将对实施例中所需使用的附图作以简单地介绍。
图1为本申请实施例提供的一种系统架构示意图;
图2为本申请实施例提供的另一种系统架构示意图;
图3为本申请实施例提供的一种结构化数据提取模型的结构示意图;
图4为本申请实施例提供的主干网络输出N个特征向量的示意图;
图5为本申请实施例提供的特征融合子网络的结构示意图;
图6为本申请实施例提供的结构化数据提取模型训练方法的流程图;
图7为本申请实施例提供的一种携带标注信息的训练图像的示意图;
图8为本申请实施例提供的一种从图像中提取结构化数据方法的流程图;
图9为本申请实施例提供的一种从图像中提取结构化数据方法的示意图;
图10为本申请实施例提供的一种结构化数据提取装置的结构示意图;
图11为本申请实施例提供的一种计算机集群的结构示意图。
具体实施方式
下面将结合本申请中的附图,对本申请提供的实施例中的方案进行描述。
本申请实施例中的“W”、“H”、“K”、“L”、“N”等字母之间不具有逻辑或大小上的依赖关系,仅用于举例表述“多个”的概念。
本申请实施例中的文字是指用来记录特定事物、简化图像而成的书写符号,包括但不限于阿拉伯数字、中文汉字、英文、希腊字母、标点符号等。
文字的属性是指文字的类型或定义。例如,文字的内容包括中文汉字或英文的情况下,文字的属性可能为姓名、地址或者性别等。再例如文字的内容包括阿拉伯数字的情况下,文字的属性可能为年龄、出生日期、金额、代码、编号等。
文字的位置是指文字在图像中的位置。其中,图像中包括文字的部分图像可以称为子图像。基于此,文字的位置也可以通过子图像在图像中的位置进行表征。在实际应用时,可以在图像所在平面建立坐标系,并通过坐标标识子图像在图像中的位置。具体地,子图像为矩形时,可以通过矩形对角线两个顶点的坐标(如(x1,y1)、(x2,y2))表征子图像的位置,或者通过矩形中心点的坐标(如(x0,y0))以及矩形任意顶点相对于矩形中心的偏移量(如(dx,dy))表征子图像的位置。
相关结构化数据提取方法采用图像文字提取模型提取文字的位置以及文字的属性,然后再采用文字识别模型对图像文字提取模型基于文字的位置确定的子图像中文字的内容进行识别,导致在后模型很大程度受到在先模型的准确率的影响,进而导致结构化数据提取准确率不高,以及消耗较多的计算资源、花费较多时间的问题,本申请提供了一种端到端的结构化数据提取方法。
具体地,本申请采用由一个训练数据集训练后的神经网络模型作为结构化数据提取模型,利用结构化数据提取模型从图像中提取文字位置信息集合、文字属性信息集合和文字内容信息集合。其中,文字位置信息集合包括至少一个子图像在图像中的位置,文字属性信息集合包括至少一个子图像中的文字的属性,文字内容信息集合包括至少一个子图像中的文字的内容。利用上述至少一个子图像在图像中的位置、至少一个子图像中的文字的属性和内容可以确定图像中的结构化数据。
在具体实现时,结构化数据提取模型可以通过位置识别子网络识别至少一个子图像在图像中的位置,获得文字位置信息,通过属性识别子网络识别至少一个子图像中文字的属性,获得文字属性信息,通过内容识别子网络识别至少一个子图像中文字的内容,获得文字内容信息。至少一个位置识别子网络输出的文字位置信息的集合称作文字位置信息集合,至少一个属性识别子网络输出的文字属性信息的集合称作文字属性信息集合,至少一个内容识别子网络输出的文字内容信息的集合称作文字内容信息集合。
需要说明的是,上述文字位置信息集合、文字属性信息集合和文字内容信息集合中的每一条信息对应于一个子图像,因此,文字位置信息集合、文字属性信息集合和文字内容信息集合中的信息是一一对应的,结构化数据提取模型可以基于文字位置信息集合、文字属性信息集合、文字内容信息集合中信息的对应关系,利用至少一个子图像在图像中的位置,上述子图像中的文字的属性和内容确定图像中的结构化数据。
该方法利用一个训练数据集训练多任务的神经网络模型,用于从图像中提取结构化数据,避免了采用多个训练数据集分别训练不同的模型,并以其中一个模型的输出作为另一个模型的输入,导致在后模型容易受到在先模型准确率的影响,进而导致结构化数据提取准确率不高的问题。而且,该方法仅通过一个结构化数据提取模型即可实现从图像中提取结构化数据,减少了计算资源消耗,节省了结构化数据提取时间。此外,该方法仅基于一个训练数据集进行模型训练,一方面减少了标注成本,另一方面,减少了训练模型的数量,节省了训练时间,提高了训练效率。
为了使得本申请的技术方案更加清楚、易于理解,接下来,结合附图对本申请的应用环境进行介绍。
如图1所示,本申请实施例提供的从图像中提取结构化数据的方法由结构化数据提取装置执行。所述结构化数据提取装置可以运行在云计算集群(包括至少一个云计算设备,例如:服务器等),也可以运行在边缘计算集群(包括至少一个边缘计算设备,例如:服务器、台式电脑等),也可以运行在各种终端计算设备上,例如:智能手机、笔记本电脑、平板电脑、个人台式电脑、智能打印机等。
如图2所示,所述结构化数据提取装置包括多个部分,该装置的各部分可以分别运行在云计算集群、边缘计算集群或终端计算设备这三个环境中,也可以运行在这三个环境中的任意两个中(例如:结构化数据提取装置的一部分运行在云计算集群,另一部分运行在终端计算设备)。云计算集群、边缘计算集群和终端计算设备之间由通信通路连接,可以互相进行通信和数据传输。本申请实施例提供的结构化数据提取方法由运行在三个环境(或三个环境中的任意两个)中的结构化数据提取装置的各部分组合执行。
结构化数据提取装置工作于两个时间状态下,这两个时间状态分别为训练态和推理态。训练态和推理态具有时序上的前后关系,训练态在推理态之前。在训练态,结构化数据提取装置执行对结构化数据提取模型的训练操作,训练完成的结构化数据提取模型用于推理态的推理。在推理态,结构化数据提取装置执行推理操作,完成对待推理的图像中结构化数据的提取。
下面介绍结构化数据提取模型的结构,如图3所示,结构化数据提取模型是一种多任务神经网络,包括:主干网络、至少一个位置识别子网络、至少一个属性识别子网络和至少一个内容识别子网络。
主干网络包括至少一个卷积层,用于对输入图像进行特征向量的提取,所述特征向量包括若干个数值。主干网络可以采用深度神经网络结构,例如:视觉几何组(visualgeometry group,VGG)、残差网络(residual network,resnet)、密度网络(densenet)、移动网络(mobilenet)等。
主干网络中的卷积层包括若干个卷积核,每个卷积核包括若干个参数,其中不同卷积层包括的卷积核个数可以不同,每一个卷积层包括的卷积核个数决定了输入图像(或特征向量)经过与该卷积层的卷积核进行卷积操作后输出的特征向量的通道数。例如:尺度为W*H*L的特征向量(其中,W表示特征向量的宽度,H表示特征向量的高度,L表示特征向量的通道数,W、H和L均为大于0的自然数),经过与卷积层中J个1*1的卷积核进行卷积后,该卷积层输出的特征向量尺度为W*H*J(J为大于0的自然数)。
输入图像经主干网络后可输出一个特征向量,也可以输出多个特征向量。如图4所示,以Resnet作为主干网络为例,Resnet一共有S(S为大于0的自然数)个卷积层,其输出为尺寸不同的N(N为大于0且小于或等于S的自然数)个特征向量。所述N个特征向量由主干网络的第S-N+1层至第S层输出的特征向量自顶向下进行计算得到,具体是:主干网络输出的N个特征向量中的第1个特征向量为主干网络第S层的输出,主干网络输出N个特征向量中的第2个特征向量由主干网络第S-1层输出的前向特征向量经1*1卷积后与前述第1个特征向量经上采样后获得的后向特征向量对应相加得到,同理,第n个特征向量由主干网络第S-n+1层输出的前向特征向量经1*1卷积后与已得到的第n-1个特征向量经上采样后的后向特征向量对应相加得到。
考虑到输入图像可以是不同尺寸的图像,为了使得结构化数据提取模型对不同尺寸图像均有较高的准确度,还可以在主干网络之后增加至少一个特征融合子网络。如图5所示,特帧融合子网络分别与主干网络、内容识别子网络、属性识别子网络和位置识别子网络连接。主干网络输出的特征向量输入至特征融合子网络进行融合,得到融合特征向量,该融合特征向量输入至内容识别子网络、属性识别子网络和位置识别子网络以实现结构化数据提取。
其中,每个特征融合子网络的输入是主干网络输出的N个特征向量中的一个,如图5所示,特征融合子网络可以包括至少一组并联的卷积层和融合器。为了获得较大的感受野,提高识别准确度,进而提高结构化数据提取准确度,特征融合子网络包括的至少一组并联的卷积层中至少包括一个空洞卷积层。
所述至少一个并列的卷积层或空洞卷积层中卷积核的大小可以不同,但数量相同,且每个并列的卷积层输出的特征向量具有相同的尺寸。将所述至少一组并列的卷积层输出的特征向量输入融合器,即可得到融合后的融合特征向量。例如:在特征融合子网络中可并列三个卷积层,每个卷积层分别进行3*3卷积、1*5卷积、2倍3*3空洞卷积,得到的三个特征向量可通过对应相加的方式融合成一个融合特征向量。如此,可以实现对标准的卷积网络进行级联扩充,构造多尺度特征网,从而覆盖不同大小的子图像。
位置识别子网络具体用于对子图像在图像中的位置进行识别。在具体实现时,位置识别子网络可以是边框回归子网络。边框回归子网络的输入是主干网络输出的特征向量(当主干网络连接有特征融合子网络时,则为特征融合子网络输出的融合特征向量)。在边框回归子网络中,输入的特征向量(或者融合特征向量)中每一个特征点(即特征向量或融合特征向量中每一个数值对应的位置)对应于结构化数据提取模型的输入图像上的一个区域,以所述区域的中心点为中心,可以获得不同高度以及不同宽高比的候选框。边框回归子网络利用卷积层和全连接层计算候选框与靠近于输入图像中的已标注的真实框之间的偏移量。
属性识别子网络具体用于对子图像中文字的属性进行识别。在具体实现时,属性识别子网络可以通过分类子网络实现。属性识别子网络的输入也是主干网络输出的特征向量(当主干网络连接有特征融合子网络时,则为特征融合子网络输出的融合特征向量)。在属性识别子网络中,输入的特征向量(或者融合特征向量)中每一个特征点(即特征向量或融合特征向量中每一个数值对应的位置)对应于结构化数据提取模型的输入图像上的一个区域,以所述区域的中心点为中心,有不同宽高比和不同面积比例的候选框。属性识别子网络利用卷积层和全连接层计算每一候选框标识的子图像属于某一属性类别的概率。
内容识别子网络具体用于对子图像中文字的内容进行识别。其中,内容识别子网络可以采用多种文字识别模型实现。例如,可以通过序列到序列(sequence to sequence,seq2seq)的循环神经网络(recurrent neural network,RNN)实现。在有些情况下,为了提高识别效率,减少计算资源消耗,还可以将文字内容识别转换为分类任务,通过用于分类的神经网络(也称为分类子网络)实现上述内容识别子网络。在采用分类子网络实现内容识别子网络时,内容识别子网络利用卷积层和全连接层计算每一候选框标识的子图像属于某一文字的概率。
考虑到有些图像的版面比较复杂,例如印章图像中包括弧形排列的文字,为了提高对复杂版面图像中结构化数据提取的准确率,上述内容识别子网络还可以设置为对单字符进行检测的内容识别子网络。
在具体实现时,内容识别子网络以特征向量为输入,特征向量的值在图像中可以对应至少一个候选框,该候选框所标识的部分图像即为子图像,内容识别子网络以子图像中文字的内容为输出。当候选框的高度和宽高比例值分别满足预设定的高度至和预设定的宽高比例值时,候选框标识的子图像中的文字可以为单字符。对应地,内容识别子网络可以实现对单字符进行检测。如此,可以避免采用复杂的方法检测多种文字块,节约了计算资源,提高了资源利用率。
需要说明的是,预设定的高度值以及预设定的宽高比例值可以基于经验值进行设置。作为一个示例,预设定的高度值可以是区间1到2(包括端点)中的任意值,预设定的宽高比例值可以是区间0.5到2(包括端点)中的任意值。
在一些实现方式中,结构化数据提取模型的输入图像经过主干网络(或者主干网络和特征融合子网络)后,输出的特征向量(或者某一特征融合子网络输出的融合特征向量)尺度为W*H*L。经内容识别子网络执行分类任务后,得到W*H*K1*A个概率值(其中W为融合特征向量的宽,H为融合特征向量的高,K1为内容识别子网络分类的类别数,A为融合特征向量中每一个特征点对应的候选区域的数目,W、H、K和A均为大于0的自然数)。经属性识别子网络执行分类任务后,得到W*H*K2*A个概率值(其中,K2为属性识别子网络分类的类别数)。经位置识别子网络执行边框位置定位任务后,得到W*H*4*A个值(其中4表示每个候选框与真实框对应的4个坐标值偏移量)。
结构化数据提取模型在训练态训练完成后可在推理态输出图像中的文字位置信息、文字属性信息和文字内容信息,所述文字位置信息、文字属性信息、文字内容信息作为结构化数据提取装置其他模块的输入共同完成对图像中结构化数据的提取。
在训练态,训练数据集中包含若干个训练图像,所述训练图像包含至少一条结构化数据,且训练图像是对所述至少一条结构化数据进行标注了的图像;在推理态,需要进行结构化数据提取的图像包含至少一条结构化数据。所述结构化数据包括文字属性信息(即文字的属性)和文字内容信息(即文字的内容)。
在训练态,结构化数据提取模型的训练流程如图6所示,下面结合图6具体描述结构化数据提取模型的训练步骤:
S101,初始化结构化数据提取模型中的参数。
所述参数包括:主干网络中各卷积层的参数、融合特征子网络中各卷积层的参数、内容识别子网络中各卷积层的参数、属性识别子网络中各卷积层的参数、位置识别子网络中各卷积层的参数等。
S102,读取训练数据集中的训练图像。
其中训练数据集包括若干个训练图像,所述训练图像中的某些文字区域被一个带有文字信息和属性信息的框进行标注,由此训练图像中被标注的不仅是文字区域的位置(即文字位置信息)还有文字属性信息和文字内容信息。所述训练数据集可根据结构化数据提取模型的应用场景不同而不同,训练数据集一般由人工构建。
例如:图像结构化数据提取模型用于对护照图像的结构化信息提取时,每张护照中的姓名、性别、护照号、签发日期等固定属性对应的文字信息分别用带有各自文字属性和文字内容的框进行标注,如:文字区域“张”、“三”用带有姓名属性和具体姓名的框进行标注;文字区域“男”用带有性别属性和具体性别的框进行标注。
又例如:图像结构化数据提取模型用于对发票图像的结构化信息提取时,每张发票中的地区、发票代码、发票编号、以及金额等固定属性对应的文字信息分别用带有各自文字属性和文字内容的框进行标注。如图7所示,文字区域“上”、“海”分别用带有区域属性(图7中采用字母“l”表征区域location)和具体区域的框进行标注,文字区域“壹”、“拾”、“元”分别用带有金额属性(图7中采用字符“a”表征金额amount)和具体金额的框进行标注。当然,图7中还采用字符“c”表征发票代码code,采用字符“n”表征发票编号,在此不再一一例举。
其中,每个框可以通过坐标进行标识,具体包括中心点坐标x,y以及在x方向和y方向上的偏移dx、dy。基于此,标注信息可以表示为数组[x,y,dx,dy,壹,amount]、[x,y,dx,dy,上,location]等等。数组中的前4个元素x,y,dx以及dy即为表征文字位置信息,数组中的第5个元素如“壹”、“上”等即表征文字内容信息,数组中的第6个元素如amount、location等级表征文字属性信息。
需要说明的是,在实际应用时,图像中的文字一般可以分为背景文字(本申请称之为“键”,即key)和前景文字(本申请称之为“值”,即value)。通常背景文字主要用于表示前景文字的属性,例如卡证图像中,背景文字“姓名”用于表示前景文字“张三”的属性,因此,内容识别子网络可以仅识别前景文字,而不用识别背景文字。对应地,在进行标注时,可以仅对前景文字进行标注,以此训练仅检测前景文字的模型,如此可以减少标注量以及训练参数,节省计算资源。并且,能够分离前景和背景信息,减少干扰,提高结构化数据提取的准确度。
S103,主干网络对训练图像进行特征提取,产生N个特征向量作为整个主干网络的输出值。
主干网络中各卷积层首先对前一层输出的特征向量(或训练图像)进行卷积操作,再由主干网络(共S层)的第S-N+1层至第S层自顶(第S层)向下(第S-N+1层)逐层进行计算得到第1至第N个特征向量。具体地,主干网络输出的N个特征向量中第1个特征向量为主干网络第S层的输出,主干网络输出的N个特征向量中第2个特征向量由主干网络第S-1层输出的前向特征向量经1*1卷积后与前述第1个特征向量经上采样后获得的后向特征向量对应相加得到,同理,第n个特征向量由主干网络第S-n+1层输出的前向特征向量经1*1卷积后与已得到的第n-1个特征向量经上采样后的后向特征向量对应相加得到。
S104,N个特征融合子网络分别对主干网络输出的N个特征向量进行特征融合计算,每个特征融合子网络输出一个融合特征向量。
S105,对每个特征融合子网络输出的融合特征向量进行候选区域映射。每个融合特征向量包括若干个特征点,每个数值对应输入图像中的一个区域,以输入图像中的所述区域为中心生成不同宽高比例和不同大小比例的多个候选框。
所述候选框的生成方法为:根据预设定的一组高度值G(G=[g1,g2,…,gi],g≥0,i为大于0的自然数)和预设定的一组宽高比例值R(R=[r1,r2,…,rj],r≥0,j为大于0的自然数),两组值进行交叉相乘组合,获得一组宽度值M(M=[g1*r1,g2*r2,…,gi*rj]),M的个数为i*j个,根据获得的所述一组宽度值M和所述M中每一个宽度值对应的高度值,获得一组不同宽高比例和大小比例的候选框,所述候选框的尺寸为A(A=[(g1*r1,g1),(g2*r2,g2),…,(gi*rj,gj)])。每个融合特征向量中的每个特征点对应的候选框数量即为i*j,遍历每个融合特征向量中的每个特征点,获得所有候选框,每个候选框对应训练图像中的一个候选区域,所述候选区域为训练图像中的一个子图像。
可选的,所述候选框的生成方法通过预设定候选框的一组固定的高度值,且预设定一组宽高比例值,其中包含较大的宽高比例值,可以使生成的候选框的宽高比例具有更符合文字区域的特点(存在较多宽高比例较大的区域),提高结构化数据提取模型的准确率。例如:预设定一组高度值为G=[1,1.5,2],预设定一组宽高比例值R=[0.5,1,1.5,2],由此生成了不同宽高比例、不同大小比例的12个候选框,所述12个候选框中符合图像中可能存在的文字区域的形状特点。
需要说明的是,S104至S105为本申请实施例生成候选框的一种可能的实现方式,在其他可能的实现方式中,结构化数据提取模型也可以不包括特征融合子网络,则结构化数据提取网络直接对主干网络输出的特征向量进行候选区域映射,生成不同宽高比例和不同大小比例的多个候选框。
S106,每个内容识别子网络、每个属性识别子网络和每个位置识别子网络对每个融合特征向量对应的候选区域进行预测。
所述内容识别子网络对N个融合特征向量中的每个融合特征向量对应的候选区域进行分类,得到候选区域的文字内容预测结果,通过与带标注的训练图像比较,计算所述文字内容预测结果与真实文字内容标注之间的差异,得到文字内容损失函数值。
所述属性识别子网络对N个融合特征向量中的每个融合特征向量对应的候选区域进行分类,得到候选区域的文字属性预测结果,通过与带标注的训练图像比较,计算所述文字属性预测结果与真实文字属性标注之间的差异,得到文字属性损失函数值。
所述位置识别子网络对N个融合特征向量中的每个特征向量对应的候选区域进行位置的预测,得到文字位置预测结果,计算所述文字位置预测结果与真实文字位置标注之间的差异,得到文字位置损失函数值。
S107,根据所述文字内容损失函数值、所述文字属性损失函数值和所述文字位置损失函数值对结构化数据提取模型中的参数进行更新(即反向激励)。
所述结构化数据提取模型中的参数包括:主干网络中各卷积层的参数、融合特征子网络中各层的参数、内容识别子网络中各层的参数、属性识别子网络中各层的参数、位置识别子网络中各层的参数等。
重复执行步骤S102-S107,结构化数据提取模型中的参数不断更新,直到文字内容损失函数值、文字属性损失函数值和文字位置损失函数值的趋势收敛,且文字内容损失函数值小于预设定的第一阈值,文字属性损失函数值小于预设定的第二阈值,文字位置损失函数值小于预设定的第三阈值,结构化数据提取模型的训练完成。或者,训练数据集中的训练图像已被读取完毕,结构化数据提取模型的训练完成。
在推理态,训练完成的结构化数据提取模型被用于对图像中结构化数据的提取。结构化数据提取的流程如图8所示,下面结合图8具体描述结构化数据提取的步骤:
S201,对图像进行预处理操作。
所述预处理操作例如:图像轮廓提取、旋转矫正、去噪、图像增强等,经过预处理操作后的图像再用于后续操作可提升结构化数据提取的准确率。具体的预处理操作方法可根据结构化数据提取方法的应用场景进行选择(可选择一种预处理操作,也可选择几种预处理操作)。
例如:对于护照扫描图像的结构化信息提取,由于扫描图像常常存在图像内容倾斜、有较多噪点的情况,因此选择预处理操作时,可选择首先进行图像旋转矫正(例如:仿射变换),再对图像进行去噪处理(例如:高斯低通滤波)。
为了便于理解,本申请还提供了具体示例进行说明。如图9所示,印章图像中文字是倾斜的,在进行结构化数据提取时,可以先对该印章图像进行旋转矫正等预处理,得到预处理后的图像。
应理解,在一些实施例中,执行从图像中提取结构化数据的方法也可以不执行S201。
S202,输入预处理后的图像至训练好的结构化数据提取模型,利用结构化数据提取模型对预处理后的图像进行图像的文字内容信息提取、文字位置信息提取和文字属性信息提取,获得文字位置信息集合、文字属性信息集合和文字内容信息集合。
图像中包括至少一条结构化数据。预处理后的图像作为所述结构化数据提取模型的输入,经结构化数据提取模型的推理后,可以输出所述图像的至少一个文字内容信息、至少一个文字位置信息和至少一个文字属性信息。其中,文字内容信息、文字位置信息和文字属性信息一一对应。文字内容信息的集合形成文字内容信息集合,文字位置信息的集合形成文字位置信息集合,文字属性信息的集合形成文字属性信息集合。
所述文字位置信息表示所述至少一个子图像在所述图像中的位置。例如:子图像在所述图像的文字区域的边界为矩形,文字的位置为所述矩形的四条线的四个交点的坐标值,或者矩形的中心点的坐标值以及矩形的一个顶点相对于中心点的偏移量。
所述文字属性信息表示所述至少一个子图像中文字的属性。例如:对护照图像进行结构化数据提取,对结构化数据提取模型进行训练的训练护照图像中标注了属性为姓名、性别、护照号、签发日期这四个属性的文字区域,则训练完成的结构化数据提取模型在进行推理时,输出的文字属性信息包含的文字属性为前述四种类型。
所述文字内容信息表示所述至少一个子图像中文字的内容。例如,子图像中文字的内容可以为“张”或者“三”等等。
如图9所示,预处理后的图像经过所述结构化数据提取模型的推理既获得了图像中各子图像的文字属性信息,又获得了文字位置信息,还获得了文字内容信息,充分提高了对图像进行结构化数据提取的方案的效率,节省了计算资源,且所述结构化数据提取模型保证了提取文字位置信息、文字属性信息和文字内容信息的精度,可进一步地保证结构化数据提取的精度。
S203,根据步骤S202获得的文字属性信息集合中至少一个子图像中文字的属性对至少一个子图像进行分类,得到一类或多类子图像。
具体地,可以将具有相同文字属性信息的子图像划分为一类。例如,在图7中,“上”、“海”的文字属性信息均为区域(location),“壹”、“拾”、“元”的文字属性信息均为金额(amount),因此,可以将“上”、“海”划分为一类,“壹”、“拾”、“元”划分为一类。又例如,在图9中,“X”、“X”、“有”、“限”、“公”、“司”的文字属性信息均为“名称”,因此,可以将“X”、“X”、“有”、“限”、“公”、“司”划分为一类。
S204,根据一类子图像中每个子图像在图像中的位置对一类子图像中的文字的内容进行组合,根据组合结果和所述一类子图像对应的文字的属性确定图像中的结构化数据。
可以理解,结构化数据中文字位置一般是规律的,例如可以是由左到右、由上到下、由右到作或者由下到上的一种或多种,文字排列可以是直线或弧形,基于此,还可以根据上述规律,基于文字位置信息对不同位置的一类子图像中的文字的内容进行组合。例如,在图7中,将“上”“海”按照由左至右的顺序进行组合。又例如,在图9中,将“X”、“X”、“有”、“限”、“公”、“司”按照由左至右的顺序进行组合。
然后将组合后的所述文字信息与所述确定的文字属性信息按照预设格式返回,如按照JS对象简谱(java script object notation,JSON)格式返回,得到结构化数据。当然,在一些可能的实现方式中,也可以将组合后的文字信息和对应的文字属性信息写入表格同一行的相邻两列,存储该结构化数据以便后续使用。
需要说明的是,当结构化数据提取模型中内容识别子网络是基于单字符进行检测时,还能够实现对复杂版式图像的结构化数据提取,如对印章图像中呈弧形排列的单位名称进行提取,或者对一些图像中呈竖状排列的数据进行提取。
上述步骤S203-S204可以重复执行,直到一张图像中所有子图像中的文字的内容息都被组合且组合后的文字内容与对应的文字属性信息构成了结构化数据。
还需要说明的是,S203至S204仅仅是本申请实施例根据至少一个子图像在图像中的位置、至少一个子图像中的文字的属性和内容,确定图像中的结构化数据的一种实现方式,在本申请其他可能的实现方式中,也可以采用其他方式确定结构化数据。例如,可以先基于至少一个子图像在图像中的位置将上述至少一个子图像划分为若干个组,然后基于每组子图像中的文字的属性和内容确定图像中的结构化数据。
S205,发送一张图像中的所有结构化数据给其他计算设备或模块。已提取的一张图像中的所有结构化数据可直接被其他计算设备或模块使用,也可被存储在存储模块中作为将来可被使用的数据信息。
执行上述步骤S201-S205,即完成了对一张图像的结构化数据的提取任务,在需要提取多个图像的结构化数据时,则重复执行步骤S201-S205即可。
在本申请实施例提供的对图像进行结构化数据提取的方案中,一条结构化数据由结构化数据提取模型输出的文字内容信息、文字位置信息和文字属性信息集合即可获得,无需引入一个新的文字识别模型,减少了模型数量,大大提高了结构化数据提取的效率,节约了计算资源,避免了结构化数据提取的精度受多个模型的影响,提高了从图像中提取出结构化数据的精度。
可选的,在对图像的结构化数据提取时还可进行进一步的纠错处理,以进一步提升结构化数据提取的精度。所述纠错处理操作可根据提取的结构化数据之间的相关性进行互相校验。具体地,当从所述图像中提取出至少两条结构化数据时,可以利用从图像中提取的至少两条结构化数据之间的关联关系进行相互校验,确定至少两条结构化数据的正确性。
例如,在对发票单据进行结构化数据提取时,可以根据提取的发票代码中的预设数位以及区域进行校验,例如区域为深圳时,发票代码中的第二位至第五位为4403,则校验通过,这两条结构化数据的准确率较高。
又例如:在对医疗单据进行结构化数据提取时,可校验提取的总金额是否等于各项金额之和,根据该校验结果来判断结构化数据提取的准确性。若总金额等于各项金额之和,则表明这多条结构化数据的准确率较高。
上文中结合图1至图9,详细描述了本申请所提供的从图像中提取结构化数据的方法,下面将结合附图,描述根据本申请所提供的结构化数据提取装置和设备。
参见图10所示的结构化数据提取装置的结构示意图,该装置300包括:
输入模块302,用于输入所述图像至结构化数据提取模型,所述结构化数据提取模型为由一个训练数据集训练后的神经网络模型,所述图像中记录了至少一条结构化数据;
提取模块304,用于根据所述结构化数据提取模型获得所述图像的文字位置信息集合、文字属性信息集合和文字内容信息集合,其中,所述文字位置信息集合包括至少一个子图像在所述图像中的位置,所述文字属性信息集合包括所述至少一个子图像中的文字的属性,所述文字内容信息集合包括所述至少一个子图像中的文字的内容,每个子图像为所述图像中包括文字的部分图像;
确定模块306,用于根据所述至少一个子图像在所述图像中的位置、所述至少一个子图像中的文字的属性和内容,确定所述图像中的结构化数据。
其中,输入模块302和提取模块304的具体实现可以参见图8所示实施例中S202相关内容描述,确定模块306的具体实现可以参见图8所示实施例中S203、S204相关内容描述,在此不再赘述。
在一些可能的实现方式中,所述结构化数据提取模型包括主干网络、至少一个位置识别子网络、至少一个属性识别子网络和至少一个内容识别子网络;
所述提取模块304具体用于:
将所述图像输入所述主干网络,所述主干网络用于对所述图像进行特征提取,输出至少一个特征向量;
将所述至少一个特征向量输入至位置识别子网络,所述位置识别子网络用于确定所述特征向量对应的子图像在图像中的位置信息,获得所述文字位置信息集合;
将所述至少一个特征向量输入至属性识别子网络,所述属性识别子网络用于确定所述特征向量对应的子图像中的文字的属性,获得所述文字属性信息集合;
将所述至少一个特征向量输入至一个内容识别子网络,所述内容识别子网络用于确定所述特征向量对应的子图像中的文字的内容,获得所述文字内容信息集合。
在一些可能的实现方式中,所述内容识别子网络以所述特征向量为输入,以子图像中文字的内容为输出,所述子图像为所述特征向量的值在所述图像中的候选框对应的图像,所述候选框的高度和宽高比例值分别满足预设定的高度值和预设定的宽高比例值,所述候选框标识的子图像中的文字为单字符。
在一些可能的实现方式中,所述确定模块306具体用于:
根据所述至少一个子图像中的文字的属性对所述至少一个子图像进行分类,得到一类或多类子图像;
根据一类子图像中的每个子图像在所述图像中的位置对所述一类子图像中的文字的内容进行组合,根据组合结果和所述一类子图像对应的文字的属性确定所述图像中的所述结构化数据。
在一些可能的实现方式中,所述装置300还包括:
校验模块,用于当从所述图像中提取出至少两条结构化数据时,利用从所述图像中提取的所述至少两条结构化数据之间的关联关系对所述至少两条结构化数据进行相互校验,确定所述至少两条结构化数据的正确性。
根据本申请实施例的结构化数据提取装置300可对应于执行本申请实施例中描述的方法,并且结构化数据提取装置300的各个模块的上述和其它操作和/或功能分别为了实现图8中的各个方法的相应流程,为了简洁,在此不再赘述。
上述结构化数据提取装置300可以通过计算机集群实现。图11提供了一种计算机集群,图11所示的计算机集群以包括一台计算机进行示例说明。如图11所示,计算机集群400具体可以用于实现上述实施例中结构化数据提取装置300的功能。计算机集群400包括总线401、处理器402、通信接口403和存储器404。处理器402、存储器404和通信接口403之间通过总线401通信。总线401可以是外设部件互连标准(peripheral componentinterconnect,PCI)总线或扩展工业标准结构(extended industry standardarchitecture,EISA)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,图11中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。通信接口403用于与外部通信。例如,通信接口403可以用于接收图像,或者输出从图像中提取的结构化数据等。
其中,处理器402可以为中央处理器(central processing unit,CPU)。存储器404可以包括易失性存储器(volatile memory),例如随机存取存储器(random accessmemory,RAM)。存储器404还可以包括非易失性存储器(non-volatile memory),例如只读存储器(read-only memory,ROM),快闪存储器,机械硬盘(hard disk drive,HDD)或固态硬盘(solid state disk,SSD)。
存储器404中存储有可执行代码,处理器402执行该可执行代码以执行前述从图像中提取结构化数据的方法。具体地,在实现结构化数据提取装置300的情况下,且实施例中所描述的各模块为通过软件实现的情况下,执行输入模块302、提取模块304、确定模块306和校验模块功能所需的软件或程序代码存储在存储器404中,处理器用于执行存储器404中的指令,执行应用于结构化数据提取装置300的从图像中提取结构化数据的方法。
具体地,计算机集群400中至少一台计算机的处理器402基于存储器404中的指令执行下述操作:
输入所述图像至结构化数据提取模型,所述结构化数据提取模型为由一个训练数据集训练后的神经网络模型,所述图像中记录了至少一条结构化数据;
根据所述结构化数据提取模型获得所述图像的文字位置信息集合、文字属性信息集合和文字内容信息集合,其中,所述文字位置信息集合包括至少一个子图像在所述图像中的位置,所述文字属性信息集合包括所述至少一个子图像中的文字的属性,所述文字内容信息集合包括所述至少一个子图像中的文字的内容,每个子图像为所述图像中包括文字的部分图像;
根据所述至少一个子图像在所述图像中的位置、所述至少一个子图像中的文字的属性和内容,确定所述图像中的结构化数据。可选地,所述结构化数据提取模型包括主干网络、至少一个位置识别子网络、至少一个属性识别子网络和至少一个内容识别子网络;
所述计算机集群400中的处理器402基于存储器404中的指令具体执行下述操作:
将所述图像输入所述主干网络,所述主干网络用于对所述图像进行特征提取,输出至少一个特征向量;
将所述至少一个特征向量输入至位置识别子网络,所述位置识别子网络用于确定所述特征向量对应的子图像在图像中的位置信息,获得所述文字位置信息集合;
将所述至少一个特征向量输入至属性识别子网络,所述属性识别子网络用于确定所述特征向量对应的子图像中的文字的属性,获得所述文字属性信息集合;
将所述至少一个特征向量输入至一个内容识别子网络,所述内容识别子网络用于确定所述特征向量对应的子图像中的文字的内容,获得所述文字内容信息集合。
可选地,所述内容识别子网络以所述特征向量为输入,以子图像中文字的内容为输出,所述子图像为所述特征向量的值在所述图像中的候选框对应的图像,所述候选框的高度和宽高比例值分别满足预设定的高度值和预设定的宽高比例值,所述候选框标识的子图像中的文字为单字符。可选地,所述计算机集群400中的处理器402基于存储器404中的指令具体执行下述操作:
根据所述至少一个子图像中的文字的属性对所述至少一个子图像进行分类,得到一类或多类子图像;
根据一类子图像中的每个子图像在所述图像中的位置对所述一类子图像中的文字的内容进行组合,根据组合结果和所述一类子图像对应的文字的属性确定所述图像中的所述结构化数据。
可选地,所述计算机集群400中的处理器402还基于存储器404中的指令执行下述操作:
当从所述图像中提取出至少两条结构化数据时,利用从所述图像中提取的所述至少两条结构化数据之间的关联关系对所述至少两条结构化数据进行相互校验,确定所述至少两条结构化数据的正确性。
需要说明的是,图11是以包括一台计算机的计算机集群400实现结构化数据提取装置300的功能进行示例说明的。在本申请其他可能的实现方式中,结构化数据提取装置300的功能也可以是多台计算机组成的计算机集群实现。
在一些可能的实现方式中,计算机集群可以包括一台或多台计算机,每台计算机能够实现结构化数据提取装置300的全部功能。也即,计算机集群中的每台计算机的存储器404存储有实现输入模块302、提取模块304、确定模块306和校验模块功能所需的软件或程序代码。
在另一些可能的实现方式中,计算机集群可以包括多台计算机,多台计算机中的每一台计算机实现结构化数据提取装置300的部分功能,多台计算机能够通过协作实现结构化数据提取装置300的全部功能。在一个示例中,计算机集群中的计算机可以分为如下几组,一组计算机的存储器中存储有实现输入模块302功能所需的软件或程序代码,另一组计算机的存储器中存储有实现提取模块304功能所需的软件或程序代码,还有两组计算机的存储器中分别存储有确定模块306和校验模块功能所需的软件或程序代码,如此,通过多台计算机实现结构化数据提取装置300的全部功能。
需要说明的是,计算机集群中的计算机还可以按照其他方式组合实现结构化数据提取装置300的全部功能。例如可以由一组计算机实现输入模块302、提取模块304的功能,另一组计算机实现确定模块306和校验模块的功能。本申请对此不作限定。
本申请实施例还提供了一种计算机可读存储介质,包括指令,当其在计算机集群上运行时,使得计算机集群执行上述应用于结构化数据提取装置300的从图像中提取结构化数据的方法。
本申请实施例还提供了一种计算机程序产品,所述计算机程序产品被计算机集群执行时,所述计算机集群执行前述从图像中提取结构化数据的方法的任一方法。该计算机程序产品可以为一个软件安装包,在需要使用前述从图像中提取结构化数据的方法的任一方法的情况下,可以下载该计算机程序产品并在计算机集群上执行该计算机程序产品。
另外需说明的是,以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。另外,本申请提供的装置实施例附图中,模块之间的连接关系表示它们之间具有通信连接,具体可以实现为一条或多条通信总线或信号线。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件的方式来实现,当然也可以通过专用硬件包括专用集成电路、专用CPU、专用存储器、专用元器件等来实现。一般情况下,凡由计算机程序完成的功能都可以很容易地用相应的硬件来实现,而且,用来实现同一功能的具体硬件结构也可以是多种多样的,例如模拟电路、数字电路或专用电路等。但是,对本申请而言更多情况下软件程序实现是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在可读取的存储介质中,如计算机的软盘、U盘、移动硬盘、ROM、RAM、磁碟或者光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,训练设备,或者网络设备等)执行本申请各个实施例所述的方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。
所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、训练设备或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、训练设备或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的训练设备、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘(Solid State Disk,SSD))等。
Claims (12)
1.一种从图像中提取结构化数据的方法,其特征在于,包括:
输入图像至结构化数据提取模型,所述结构化数据提取模型为由一个训练数据集训练后的多任务的神经网络模型,所述训练数据集包括标注有文字位置信息、文字属性信息和文字内容信息的训练图像,所述结构化数据提取模型为端到端模型,所述图像中记录了至少一条结构化数据;
根据所述结构化数据提取模型获得所述图像的文字位置信息集合、文字属性信息集合和文字内容信息集合,其中,所述文字位置信息集合包括至少一个子图像在所述图像中的位置,所述文字属性信息集合包括所述至少一个子图像中的文字的属性,所述文字内容信息集合包括所述至少一个子图像中的文字的内容,每个子图像为所述图像中包括文字的部分图像;
根据所述至少一个子图像在所述图像中的位置、所述至少一个子图像中的文字的属性和内容,确定所述图像中的结构化数据。
2.根据权利要求1所述的方法,其特征在于,所述结构化数据提取模型包括主干网络、至少一个位置识别子网络、至少一个属性识别子网络和至少一个内容识别子网络;
所述根据所述结构化数据提取模型获得所述图像中的文字位置信息集合、文字属性信息集合和文字内容信息集合,包括:
将所述图像输入所述主干网络,所述主干网络用于对所述图像进行特征提取,输出至少一个特征向量;
将所述至少一个特征向量输入至位置识别子网络,所述位置识别子网络用于确定所述至少一个特征向量对应的子图像在图像中的位置信息,获得所述文字位置信息集合;
将所述至少一个特征向量输入至属性识别子网络,所述属性识别子网络用于确定所述至少一个特征向量对应的子图像中的文字的属性,获得所述文字属性信息集合;
将所述至少一个特征向量输入至内容识别子网络,所述内容识别子网络用于确定所述至少一个特征向量对应的子图像中的文字的内容,获得所述文字内容信息集合。
3.根据权利要求2所述的方法,其特征在于,所述内容识别子网络以所述特征向量为输入,以子图像中文字的内容为输出,所述子图像为所述特征向量的值在所述图像中的候选框对应的图像,所述候选框的高度和宽高比例值分别满足预设定的高度值和预设定的宽高比例值,所述候选框标识的子图像中的文字为单字符。
4.根据权利要求1至3任一项所述的方法,其特征在于,所述根据所述至少一个子图像在所述图像中的位置、所述至少一个子图像中的文字的属性和内容,确定所述图像中的结构化数据,包括:
根据所述至少一个子图像中的文字的属性对所述至少一个子图像进行分类,得到一类或多类子图像;
根据一类子图像中的每个子图像在所述图像中的位置对所述一类子图像中的文字的内容进行组合,根据组合结果和所述一类子图像对应的文字的属性确定所述图像中的所述结构化数据。
5.根据权利要求4所述的方法,其特征在于,当从所述图像中提取出至少两条结构化数据时,所述方法还包括:
利用从所述图像中提取的所述至少两条结构化数据之间的关联关系对所述至少两条结构化数据进行相互校验,确定所述至少两条结构化数据的正确性。
6.一种结构化数据提取装置,其特征在于,包括:
输入模块,用于输入图像至结构化数据提取模型,所述结构化数据提取模型为由一个训练数据集训练后的多任务的神经网络模型,所述训练数据集包括标注有文字位置信息、文字属性信息和文字内容信息的训练图像,所述结构化数据提取模型为端到端模型,所述图像中记录了至少一条结构化数据;
提取模块,用于根据所述结构化数据提取模型获得所述图像的文字位置信息集合、文字属性信息集合和文字内容信息集合,其中,所述文字位置信息集合包括至少一个子图像在所述图像中的位置,所述文字属性信息集合包括所述至少一个子图像中的文字的属性,所述文字内容信息集合包括所述至少一个子图像中的文字的内容,每个子图像为所述图像中包括文字的部分图像;
确定模块,用于根据所述至少一个子图像在所述图像中的位置、所述至少一个子图像中的文字的属性和内容,确定所述图像中的结构化数据。
7.根据权利要求6所述的装置,其特征在于,所述结构化数据提取模型包括主干网络、至少一个位置识别子网络、至少一个属性识别子网络和至少一个内容识别子网络;
所述提取模块具体用于:
将所述图像输入所述主干网络,所述主干网络用于对所述图像进行特征提取,输出至少一个特征向量;
将所述至少一个特征向量输入至位置识别子网络,所述位置识别子网络用于确定所述至少一个特征向量对应的子图像在图像中的位置信息,获得所述文字位置信息集合;
将所述至少一个特征向量输入至属性识别子网络,所述属性识别子网络用于确定所述至少一个特征向量对应的子图像中的文字的属性,获得所述文字属性信息集合;
将所述至少一个特征向量输入至内容识别子网络,所述内容识别子网络用于确定所述至少一个特征向量对应的子图像中的文字的内容,获得所述文字内容信息集合。
8.根据权利要求7所述的装置,其特征在于,所述内容识别子网络以所述特征向量为输入,以子图像中文字的内容为输出,所述子图像为所述特征向量的值在所述图像中的候选框对应的图像,所述候选框的高度和宽高比例值分别满足预设定的高度值和预设定的宽高比例值,所述候选框标识的子图像中的文字为单字符。
9.根据权利要求6至8任一项所述的装置,其特征在于,所述确定模块具体用于:
根据所述至少一个子图像中的文字的属性对所述至少一个子图像进行分类,得到一类或多类子图像;
根据一类子图像中的每个子图像在所述图像中的位置对所述一类子图像中的文字的内容进行组合,根据组合结果和所述一类子图像对应的文字的属性确定所述图像中的所述结构化数据。
10.根据权利要求9所述的装置,其特征在于,所述装置还包括:
校验模块,用于当从所述图像中提取出至少两条结构化数据时,利用从所述图像中提取的所述至少两条结构化数据之间的关联关系对所述至少两条结构化数据进行相互校验,确定所述至少两条结构化数据的正确性。
11.一种计算机集群,其特征在于,所述计算机集群包括至少一台计算机,每台计算机包括处理器和存储器;
所述至少一台计算机的处理器用于执行所述至少一台计算机的存储器中存储的指令,以使得所述计算机集群执行如权利要求1至5任一项所述的方法。
12.一种计算机可读存储介质,包括指令,当其在计算机集群上运行时,使得计算机集群执行如权利要求1至5中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911422164.2A CN113128496B (zh) | 2019-12-31 | 2019-12-31 | 一种从图像中提取结构化数据的方法、装置和设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911422164.2A CN113128496B (zh) | 2019-12-31 | 2019-12-31 | 一种从图像中提取结构化数据的方法、装置和设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113128496A CN113128496A (zh) | 2021-07-16 |
CN113128496B true CN113128496B (zh) | 2023-12-12 |
Family
ID=76769673
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911422164.2A Active CN113128496B (zh) | 2019-12-31 | 2019-12-31 | 一种从图像中提取结构化数据的方法、装置和设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113128496B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113591772B (zh) * | 2021-08-10 | 2024-01-19 | 上海杉互健康科技有限公司 | 医疗信息结构化识别录入的方法、系统、设备及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003030220A (ja) * | 2001-07-13 | 2003-01-31 | Murata Mach Ltd | 構造化文書生成装置とそのプログラム |
CN109086756A (zh) * | 2018-06-15 | 2018-12-25 | 众安信息技术服务有限公司 | 一种基于深度神经网络的文本检测分析方法、装置及设备 |
CN109308476A (zh) * | 2018-09-06 | 2019-02-05 | 邬国锐 | 票据信息处理方法、系统及计算机可读存储介质 |
CN109492643A (zh) * | 2018-10-11 | 2019-03-19 | 平安科技(深圳)有限公司 | 基于ocr的证件识别方法、装置、计算机设备及存储介质 |
CN109902622A (zh) * | 2019-02-26 | 2019-06-18 | 中国科学院重庆绿色智能技术研究院 | 一种用于登机牌信息验证的文字检测识别方法 |
CN110188755A (zh) * | 2019-05-30 | 2019-08-30 | 北京百度网讯科技有限公司 | 一种图像识别的方法、装置和计算机可读存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8655803B2 (en) * | 2008-12-17 | 2014-02-18 | Xerox Corporation | Method of feature extraction from noisy documents |
-
2019
- 2019-12-31 CN CN201911422164.2A patent/CN113128496B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003030220A (ja) * | 2001-07-13 | 2003-01-31 | Murata Mach Ltd | 構造化文書生成装置とそのプログラム |
CN109086756A (zh) * | 2018-06-15 | 2018-12-25 | 众安信息技术服务有限公司 | 一种基于深度神经网络的文本检测分析方法、装置及设备 |
CN109308476A (zh) * | 2018-09-06 | 2019-02-05 | 邬国锐 | 票据信息处理方法、系统及计算机可读存储介质 |
CN109492643A (zh) * | 2018-10-11 | 2019-03-19 | 平安科技(深圳)有限公司 | 基于ocr的证件识别方法、装置、计算机设备及存储介质 |
CN109902622A (zh) * | 2019-02-26 | 2019-06-18 | 中国科学院重庆绿色智能技术研究院 | 一种用于登机牌信息验证的文字检测识别方法 |
CN110188755A (zh) * | 2019-05-30 | 2019-08-30 | 北京百度网讯科技有限公司 | 一种图像识别的方法、装置和计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113128496A (zh) | 2021-07-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111615702B (zh) | 一种从图像中提取结构化数据的方法、装置和设备 | |
RU2699687C1 (ru) | Обнаружение текстовых полей с использованием нейронных сетей | |
CN111723807B (zh) | 使用端到端深度学习识别机打字符和手写字符 | |
CN110135427B (zh) | 用于识别图像中的字符的方法、装置、设备和介质 | |
CN110866495A (zh) | 票据图像识别方法及装置和设备、训练方法和存储介质 | |
US20190294921A1 (en) | Field identification in an image using artificial intelligence | |
CN110348294A (zh) | Pdf文档中图表的定位方法、装置及计算机设备 | |
CN111488826A (zh) | 一种文本识别方法、装置、电子设备和存储介质 | |
CN112116599B (zh) | 基于弱监督学习的痰涂片结核杆菌语义分割方法及系统 | |
CN112699775A (zh) | 基于深度学习的证件识别方法、装置、设备及存储介质 | |
CN114596566B (zh) | 文本识别方法及相关装置 | |
US11600088B2 (en) | Utilizing machine learning and image filtering techniques to detect and analyze handwritten text | |
CN113128496B (zh) | 一种从图像中提取结构化数据的方法、装置和设备 | |
CN112200216A (zh) | 汉字识别方法、装置、计算机设备和存储介质 | |
Rimas et al. | Optical character recognition for Sinhala language | |
CN115620315A (zh) | 手写文本检测方法、装置、服务器和存储介质 | |
CN113468906B (zh) | 图形码提取模型构建方法、识别方法、装置、设备和介质 | |
CN112785601B (zh) | 一种图像分割方法、系统、介质及电子终端 | |
Ren et al. | A transformer-based decoupled attention network for text recognition in shopping receipt images | |
CN114120305A (zh) | 文本分类模型的训练方法、文本内容的识别方法及装置 | |
CN112801960A (zh) | 图像处理方法及装置、存储介质、电子设备 | |
CN116151202B (zh) | 表格填写方法、装置、电子设备及存储介质 | |
Loong et al. | Image‐based structural analysis for education purposes: A proof‐of‐concept study | |
CN116541549B (zh) | 子图分割方法、装置、电子设备及计算机可读存储介质 | |
CN113435331B (zh) | 图像文字识别方法、系统、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20220209 Address after: 550025 Huawei cloud data center, jiaoxinggong Road, Qianzhong Avenue, Gui'an New District, Guiyang City, Guizhou Province Applicant after: Huawei Cloud Computing Technologies Co.,Ltd. Address before: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen Applicant before: HUAWEI TECHNOLOGIES Co.,Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |