CN111512315B - 文档元数据的按块提取 - Google Patents
文档元数据的按块提取 Download PDFInfo
- Publication number
- CN111512315B CN111512315B CN201880077093.4A CN201880077093A CN111512315B CN 111512315 B CN111512315 B CN 111512315B CN 201880077093 A CN201880077093 A CN 201880077093A CN 111512315 B CN111512315 B CN 111512315B
- Authority
- CN
- China
- Prior art keywords
- micro
- block
- blocks
- document
- document image
- 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
- 238000000605 extraction Methods 0.000 title description 8
- 238000000034 method Methods 0.000 claims abstract description 124
- 230000008569 process Effects 0.000 claims abstract description 74
- 238000004458 analytical method Methods 0.000 claims abstract description 28
- 238000004590 computer program Methods 0.000 claims abstract description 16
- 238000012545 processing Methods 0.000 claims description 70
- 238000003860 storage Methods 0.000 claims description 31
- 230000008859 change Effects 0.000 claims description 10
- 238000004891 communication Methods 0.000 claims description 6
- 239000006185 dispersion Substances 0.000 claims description 3
- 238000007689 inspection Methods 0.000 claims description 2
- 230000008929 regeneration Effects 0.000 claims 1
- 238000011069 regeneration method Methods 0.000 claims 1
- 230000006870 function Effects 0.000 description 27
- 230000008901 benefit Effects 0.000 description 15
- 230000000007 visual effect Effects 0.000 description 13
- 238000003058 natural language processing Methods 0.000 description 12
- 238000010586 diagram Methods 0.000 description 11
- 239000000284 extract Substances 0.000 description 8
- 238000007726 management method Methods 0.000 description 6
- 230000008520 organization Effects 0.000 description 6
- 230000001149 cognitive effect Effects 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000006243 chemical reaction Methods 0.000 description 3
- 210000001072 colon Anatomy 0.000 description 3
- 238000011143 downstream manufacturing Methods 0.000 description 3
- 238000012549 training Methods 0.000 description 3
- 238000003491 array Methods 0.000 description 2
- 230000036772 blood pressure Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000007621 cluster analysis Methods 0.000 description 2
- 238000013075 data extraction Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000011156 evaluation Methods 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012015 optical character recognition Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000002360 preparation method Methods 0.000 description 2
- 230000001902 propagating effect Effects 0.000 description 2
- 230000002441 reversible effect Effects 0.000 description 2
- 239000013589 supplement Substances 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 241000255969 Pieris brassicae Species 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000009172 bursting Effects 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 229910052802 copper Inorganic materials 0.000 description 1
- 239000010949 copper Substances 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 238000013439 planning Methods 0.000 description 1
- 238000004321 preservation Methods 0.000 description 1
- 239000000047 product Substances 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000000135 prohibitive effect Effects 0.000 description 1
- 238000004064 recycling Methods 0.000 description 1
- 230000002829 reductive effect Effects 0.000 description 1
- 238000012958 reprocessing Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000012384 transportation and delivery Methods 0.000 description 1
- 238000011179 visual inspection Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/35—Clustering; Classification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/36—Creation of semantic tools, e.g. ontology or thesauri
- G06F16/367—Ontology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/93—Document management systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/103—Formatting, i.e. changing of presentation of documents
- G06F40/109—Font handling; Temporal or kinetic typography
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/103—Formatting, i.e. changing of presentation of documents
- G06F40/117—Tagging; Marking up; Designating a block; Setting of attributes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/163—Handling of whitespace
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/40—Document-oriented image-based pattern recognition
- G06V30/41—Analysis of document content
- G06V30/412—Layout analysis of documents structured with printed lines or input boxes, e.g. business forms or tables
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/40—Document-oriented image-based pattern recognition
- G06V30/41—Analysis of document content
- G06V30/413—Classification of content, e.g. text, photographs or tables
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/40—Document-oriented image-based pattern recognition
- G06V30/41—Analysis of document content
- G06V30/414—Extracting the geometrical structure, e.g. layout tree; Block segmentation, e.g. bounding boxes for graphics or text
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/151—Transformation
- G06F40/154—Tree transformation for tree-structured or markup documents, e.g. XSLT, XSL-FO or stylesheets
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Health & Medical Sciences (AREA)
- Multimedia (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Computer Graphics (AREA)
- Geometry (AREA)
- Business, Economics & Management (AREA)
- General Business, Economics & Management (AREA)
- Life Sciences & Earth Sciences (AREA)
- Animal Behavior & Ethology (AREA)
- Character Input (AREA)
- Character Discrimination (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Document Processing Apparatus (AREA)
- Image Analysis (AREA)
- Processing Or Creating Images (AREA)
Abstract
提出了方法、计算机程序产品和***。所述方法包括,例如:获取文档图像,其中所述文档图像包括多个对象;识别所述文档图像内的多个宏块;在所述多个宏块的宏块内执行微块处理,其中所述微块处理包括检查宏块内的微块的内容以提取键‑值对,所述检查内容包括执行微块的本体分析,其中所述微块处理包括将置信水平与所提取的键‑值对相关联;以及基于在所述多个宏块中的宏块内执行的微块处理来输出元数据。
Description
技术领域
本公开涉及文档处理技术,并且更具体地涉及用于从文档图像认知地数字化数据的方法、计算机程序产品和***。
背景技术
在传统的文档处理中,在准备时,逐页扫描纸上墨写文档作为相应的可视图像。扫描纸张的结果文档文件通常是页面的一系列可视图像。页面的每个可视图像不具有可访问的内容,并且现有文档处理应用可以将某些可视图像图案数字化为数字化数据,该数字化数据可以通过使用对应的计算机程序应用来访问和操作。这种可视图像的数据数字化处理通常被称为提取或数据提取。鉴于传统纸件形式和扫描文档图像中所表示的信息量,提取这种文档图像可能极大地影响工业以及社会的许多领域中的一般生产率。
发明内容
通过在一个方面提供一种方法,克服了现有技术的缺点,并且提供了附加的优点。该方法包括,例如:获取文档图像,其中所述文档图像包括多个对象;识别所述文档图像内的多个宏块;在所述多个宏块的宏块内执行微块处理,其中所述微块处理包括检查宏块内的微块的内容以提取键-值对,所述检查内容包括执行微块的本体分析,其中所述微块处理包括将置信水平与所提取的键-值对相关联;以及基于在所述多个宏块中的宏块内执行的微块处理来输出元数据。
通过在一个方面提供一种计算机程序产品,克服了现有技术的缺点,并且提供了附加的优点,该计算机程序产品包括计算机可读存储介质,该计算机可读存储介质可由一个或多个处理器电路读取并且存储指令以供一个或多个处理器执行以用于执行一种方法,该方法包括例如:获取文档图像,其中所述文档图像包括多个对象;识别所述文档图像内的多个宏块;在所述多个宏块的宏块内执行微块处理,其中所述微块处理包括检查宏块内的微块的内容以提取键-值对,所述检查内容包括执行微块的本体分析,其中所述微块处理包括将置信水平与所提取的键-值对相关联;以及基于在所述多个宏块中的宏块内执行的微块处理来输出元数据。
通过在一个方面提供一种***,克服了现有技术的缺点,并且提供了附加的优点,该***包括:存储器;与存储器通信的一个或多个处理器;以及可由一个或多个处理器经由存储器执行以执行方法的程序指令,该方法包括例如:获取文档图像,其中所述文档图像包括多个对象;识别所述文档图像内的多个宏块;在所述多个宏块的宏块内执行微块处理,其中所述微块处理包括检查宏块内的微块的内容以提取键-值对,所述检查内容包括执行微块的本体分析,其中所述微块处理包括将置信水平与所提取的键-值对相关联;以及基于在所述多个宏块中的宏块内执行的微块处理来输出元数据。
通过在一个方面提供一种方法,克服了现有技术的缺点,并且提供了附加的优点。该方法包括,例如:获取文档图像,其中所述文档图像包括多个对象;识别所述文档图像内的宏块,其中所述宏块包括所述多个对象中的对象;检查所述文档图像的所述宏块的区域内的微块的内容以提取一个或多个键-值对,其中所述检查包括在所述微块的所述区域内检查未对齐微块的内容,并且其中在所述微块的所述区域内检查未对齐微块的内容包括应用本体分析;将置信水平与所述一个或多个键-值对中的键-值对相关联;以及输出所述一个或多个键-值对。
通过在一个方面提供一种计算机程序产品,克服了现有技术的缺点,并且提供了附加的优点,该计算机程序产品包括计算机可读存储介质,该计算机可读存储介质可由一个或多个处理器电路读取并且存储指令以供一个或多个处理器执行以用于执行一种方法,该方法包括例如:获取文档图像,其中所述文档图像包括多个对象;识别所述文档图像内的宏块,其中所述宏块包括所述多个对象中的对象;检查所述文档图像的所述宏块的区域内的微块的内容以提取一个或多个键-值对,其中所述检查包括在所述微块的所述区域内检查未对齐微块的内容,并且其中在所述微块的所述区域内检查未对齐微块的内容包括应用本体分析;将置信水平与所述一个或多个键-值对中的键-值对相关联;以及输出所述一个或多个键-值对。
通过在一个方面提供一种***,克服了现有技术的缺点,并且提供了附加的优点,该***包括:存储器;与存储器通信的一个或多个处理器;以及可由一个或多个处理器经由存储器执行以执行方法的程序指令,该方法包括例如:获取文档图像,其中所述文档图像包括多个对象;识别所述文档图像内的宏块,其中所述宏块包括所述多个对象中的对象;检查所述文档图像的所述宏块的区域内的微块的内容以提取一个或多个键-值对,其中所述检查包括在所述微块的所述区域内检查未对齐微块的内容,并且其中在所述微块的所述区域内检查未对齐微块的内容包括应用本体分析;将置信水平与所述一个或多个键-值对中的键-值对相关联;以及输出所述一个或多个键-值对
通过在一个方面提供一种方法,克服了现有技术的缺点,并且提供了附加的优点。该方法包括,例如:获取文档图像,其中所述文档图像包括多个对象;处理所述文档图像以识别基线样式参数值,所述基线样式参数值指定基线字体高度;针对所述文档图像的文本行中的每个单词,识别相对样式参数,所述相对样式参数是参考所述基线样式参数值来定义的,其中,所述相对样式参数将所述文本行中的文本的单词的字体高度指定为所述基线样式参数值的百分比值;以及提供相对样式参数作为输出元数据以用于输出。
通过在一个方面提供一种计算机程序产品,克服了现有技术的缺点,并且提供了附加的优点,该计算机程序产品包括计算机可读存储介质,该计算机可读存储介质可由一个或多个处理器电路读取并且存储指令以供一个或多个处理器执行以执行用于从文档图像提取数据的方法,该方法包括例如:获取文档图像,其中所述文档图像包括多个对象;处理所述文档图像以识别基线样式参数值,所述基线样式参数值指定基线字体高度;针对所述文档图像的文本行的每个单词识别相对样式参数,所述相对样式参数是参考所述基线样式参数值定义的,其中,所述相对样式参数将所述文本行的文本的单词的字体高度指定为所述基线样式参数值的值的百分比;以及提供相对样式参数作为输出元数据以用于输出。
通过在一个方面提供一种***,克服了现有技术的缺点,并且提供了附加的优点,该***包括:存储器;与存储器通信的一个或多个处理器;以及可由一个或多个处理器经由存储器执行以执行方法的程序指令,该方法包括例如:获取文档图像,其中所述文档图像包括多个对象;处理所述文档图像以识别基线样式参数值,所述基线样式参数值指定基线字体高度;针对所述文档图像的文本行中的每个单词,识别相对样式参数,所述相对样式参数是参考所述基线样式参数值定义的,其中,所述相对样式参数将所述文本行的文本的单词的字体高度指定为所述基线样式参数值的百分比;以及提供相对样式参数作为输出元数据以用于输出。
通过本文阐述的技术实现了附加特征。包括但不限于计算机程序产品和***的其它实施例和方面在这里被详细描述,并且被认为是所要求保护的发明的一部分。
附图说明
本发明的一个或多个方面作为示例在说明书开头处的权利要求中被特别指出并清楚地要求保护。从下面结合附图的详细描述中,本发明的前述和其它目的、特征和优点将变得显而易见,其中:
图1描绘了根据本文阐述的一个或多个实施例的用于认知地数字化文档图像的***;
图2描绘了根据本文阐述的一个或多个实施例的由认知文档数字化引擎执行的操作的流程图;
图3描绘了根据本文阐述的一个或多个实施例的如由认知文档数字化引擎执行的多层块识别的详细操作;
图4描绘了根据本文阐述的一个或多个实施例的示例性文档图像,其中对该文档图像应用了可调整的块识别参数以识别宏块;
图5描述了宏块处理的详细操作,其中宏块被识别并经受用于识别其中的宏块的处理;
图6描绘了根据本文阐述的一个或多个实施例的示例性文档图像,其中对该文档图像应用了可调整的块识别参数以识别宏块;
图7描绘了根据本文阐述的一个或多个实施例的示例性文档图像,其中对该文档图像应用了可调整的块识别参数以识别宏块;
图8描绘了根据本文阐述的一个或多个实施例的示例性文档图像,其中对该文档图像应用了可调整的块识别参数以识别宏块;
图9描绘了根据本文阐述的一个或多个实施例的由文档数字化引擎输出的输出元数据;
图10描绘了根据本文阐述的一个或多个实施例的由文档数字化引擎输出的输出元数据;
图11表示根据本发明一实施例的云计算节点;
图12表示根据本发明一实施例的云计算环境,以及;
图13表示根据本发明一实施例的抽象模型层。
具体实施方式
图1描绘了根据本文阐述的一个或多个实施例的用于认知地数字化文档图像的***100。
由于各种各样的自定义格式、单独的样式、不同的对齐、以及非文本内容,从文档图像中提取计算数据通常是不成功的。因此,文档图像中所表示的大量信息不能像全数字化文档那样被访问。没有数字化的文档图像具有有限的用途,例如视觉观察和存档目的。在替代方案中,考虑到将受益于数字化的文档的数量,手动数字化这样的文档图像所需的时间和成本将是过高的。
为了使用文档中表示的数据进行计算的方便性,数字文档通常是优选的。当扫描纸上笔写文档时,文档是页面的一系列视觉图像,但在计算上不适于用作数字数据。因此,已经开发了许多文档数字化应用,以便从文档图像中准确地提取计算数据。在现有的文档处理应用中,文档的多种自定义格式和组织在处理文档的可视图像和从文档中提取计算数据方面提出了挑战。本文的实施例在人类读者理解由文档中的视觉标记传达的含义时实现文档图像的认知数字化过程,并且提高从文档图像提取数据的效率和准确性。本文的实施例通过不是仅依赖于对象的对齐或对象之间的语义关系而是采用基于对齐的处理和基于语义的处理的组合的方法来从文档提取元数据。
***100包括文档数字化引擎120。文档数字化引擎120经由用户设备110从用户101接收文档图像181。文档图像181是针对特定信息创建的文档的视觉图像,其不是计算数据。例如,纸质文档的扫描图像不具有任何数字化数据,因此扫描图像中的文本可能不被搜索或作为数据输入被读入另一应用。文档图像181具有可以作为计算数据提取的许多对象。在本说明书中,术语"对象"是指文档图像中可识别的单个实体,术语"微块"是指从文档中的相应对象识别的候选数据的最小单元,用于根据微块机器逻辑界定规则进行各种分析以便找到对象之间的关系。文档数字化引擎120表示具有多个微块特征(包括每个微块的内容、位置、样式)的每个微块。
文档数字化引擎120基于多层共线性分析从文档图像181自动提取数据,使得从文档图像181中的文本和数字的图像提取的信息可以是可由其他程序和应用使用的计算数据。耦合到文档数字化引擎120的关系数据库150存储与从文档图像181提取的数据对应的多个键-值对(KVP)155。文档数字化引擎120将键-值对与相应的置信水平相关联。术语"键-值对"是指具有键和值的主数据表示单元,其中该键描述或标识该值。KVP可以分层地组织成更大的数据结构,如在关系数据库表中经常看到的。
文档数字化引擎120可以确定文档图像181中的对象的元数据140。定义数字化计算数据的元数据140可以包括例如特征元数据145(例如内容、位置和样式)、可以包括相关联的置信水平的键-值对元数据146以及指定文档的区域相对于较大区域的样式的相对样式元数据148。输出元数据可被组织以指定指示文档图像181的对象之间的分层关系的分类。文档数字化引擎120可以以适当的标记(例如JSON或XML)输出元数据,并且在一个实施例中可以以表示文档内容的机器可读样式表来输出元数据。文档数字化引擎120可以将元数据输出到一个或多个进程接口149。文档数字化引擎120可以使用一个或多个外部工具170,诸如用于确定元数据的光学字符识别(OCR)。
在本说明书中,术语"共线性"是指文档数字化引擎120认为有意义用于基于两个或更多个微块将宏块识别为共线的、文档图像181中的可识别对象之间的几何对齐;术语"微块"是指从文档图像181识别的单独对象;且术语"宏块"是指用以形成有意义的数据单元的两个或更多微块的群组,例如表中的键-值对(KVP)和列或行。宏块可界定包围两个或更多微块的空间区域。
利用传统的文档图像处理,在用于提取可用数据的无数自定义格式的文档中正确地发现共线性是一个正在进行的过程。文档数字化引擎120利用具有共线性和语义的多层方法,以便实现比常规文档图像处理应用更全面的文档图像181的识别,并且作为结果从文档图像181提取可用数据。
文档数字化引擎120基于多个可调整的共线性参数分析微块之间的共线性,以便从被确定为在文档图像181中对齐的多个微块提取计算数据。内聚数据的示例可以包括如文档中的表格中的各个键-值对和多组KVP。可调整的共线性参数的例子可以包括但不限于字体高度和样式改变、对齐和标点。键-值对是包括两个微块的宏块,因为键是微块并且值是另一微块,其中两个微块基于文档数字化引擎120的共线性分析而彼此对齐。
文档数字化引擎120还利用存储在语义数据库130中的各种语义信息以便从文档图像181提取数据。语义数据库130中的信息的一些示例可以包括但不限于一个或多个文档类别131、一个或多个键别名135和键本体数据137。在图2、3和4中描述了文档数字化引擎120的详细操作。
在语义数据库130中,一个或多个文档类别131中的每一个对应于每个文档类别中的任何文档要包括的一个或多个类别键133。例如,当文档是购买***类时,相应的类别键可以包括但不限于名称、交易日期、项目列表、金额等。
在语义数据库130中,一个或多个键别名135包括用于多个键的别名,其可以代替键出现在文档图像181中。由于对应于类别的所有类别键将出现在一个文档中,因此经常为一个或多个类别键133查找一个或多个键别名135。例如,类别键可以指定"账号(AccountNumber)"类别键,但是文档图像181可以具有"Acct.#"文本、而不是"帐号"的文本的键。一个或多个键别名135列出可互换的名称,诸如"账号"和"Acct.#",以便适应各种自定义文档的分析和数据提取。
语义数据库130的关键本体数据137定义了对文档图像181所表示的知识领域建模的一组约束和含义。键本体数据137包括可以存在于文档图像181中的多个键。多个键中的键138与各种特性相关联,这些特性包括键138的属性、键138所属的一个或多个集合、以及一个或多个集合中的相同集合的成员之间的关系。此外,文档数字化引擎120可以推断两个语义关联的文本块是共线的。例如,键138可具有指定键138的值的适当数据类型的数据类型139属性,诸如客户姓(CustomerLastName)键的文本串、出生日期(DateOfBirth)键的八位数字。在相同的示例中,如果文本串具有诸如"Johnson"的共同姓名值,则文档数字化引擎120可以确定客户姓键和文本串"Johnson"作为KVP,即使文本串与键在邻近范围内未对齐。在相同的示例中,文档数字化引擎120用文本串"Johnson"运行分类器(外部工具170之一),以便确定文本串"Johnson"是姓名的数据类型。又例如,键138可以是一个或多个类别键133之一,并且与键本体数据137中定义的其他类别键具有关系,例如***文档类别包括客户号(CustomerNumber)类别键和金额类别键。
图2描绘了根据本文阐述的一个或多个实施例的由图1的文档数字化引擎120执行的操作的流程图。
在框210中,文档数字化引擎120接收文档图像并处理文档图像。接收到的文档图像在一页中可以具有多于一个的独特视觉图案。文档数字化引擎120将这样的模式识别为文档中的相应片段。在本说明书中,术语"对象"是指文档图像中的图像对象,术语"微块"是指根据微块机器逻辑界定规则从相应图像对象中识别的不可分割单元块,用于共线性分析。则文档数字化引擎120继续进行框220。
在框220中,文档数字化引擎120使用宏块分类器,诸如表格分类器、字密度分类器(文本密度高于阈值的区域可以被识别为宏块)、地址分类器、段落分类器,来将宏块分类器应用于文档图像181的各个片段。如果文档数字化引擎120没有发现文档中的对象的宏块,则文档数字化引擎120继续进行框230。如果文档数字化引擎120发现文档中的一个或多个对象宏块,则文档数字化引擎120继续进行框240。
在框230中,文档数字化引擎120分析文档图像181中的微块,并基于微块的扩展共线性分析来识别宏块。在图3和相应的描述中描述了框230的详细操作。则文档数字化引擎120继续进行框250。
在框240中,文档数字化引擎120分别分析被识别为框220中的宏块分类或框230中的共线性分析的结果的宏块。在图5和相应的描述中描述了框240的详细操作。则文档数字化引擎120继续进行框250。
在框250中,文档数字化引擎120将具有计算数据的数字化文档图像的结果返回给用户。文档数字化引擎120可选地接收来自用户的关于结果的反馈199。文档数字化引擎120根据反馈更新从框230生成的键-值对和/或从框240生成的表格,然后终止处理在框210中接收的文档图像181。在框250中,文档数字化引擎120可以将元数据输出到例如进程接口149。
文档数字化引擎120可以执行框230以及框240,这取决于文档图像181中的片段,以便支持具有各种组织的对象集群和表格的混合的各种格式的自定义文档。文档数字化引擎120可以根据文档图像181中存在的对象按需迭代框230和/或框240。
图3描绘了根据本文阐述的一个或多个实施例的如由图1的文档数字化引擎120执行的图2的框230、多层块识别的详细操作。
在框310中,文档数字化引擎120从相应的对象识别接收的文档中的微块。对象可以是文本串、数字、符号或图片图像。文档数字化引擎120在准备共线性分析时以绝对距离和/或相对接近度测量对象之间的水平和垂直空间。则文档数字化引擎120继续进行框320。
在框320中,文档数字化引擎120通过基于微块的可调整的共线性参数分析两个或更多个邻近的微块的各自位置来识别与在框310中识别的每个微块相对应的宏块。文档数字化引擎120可以基于根据可调整的共线性参数共线的两个或更多个微块来识别宏块。文档数字化引擎120在识别用于所接收的文档中的所有微块的相应宏块时前进至框330。
在一个实施例中,当两个或更多个微块以绝对距离中或在相对位置在特定距离范围内时,文档数字化引擎120可以基于可调整的共线性参数确定两个或更多个微块是共线的,而不用精确对齐。可调整的共线性参数包括:字体;段落对齐;标点符号;以及本体匹配。可调整的共线性参数指示文档数字化引擎120可以以共线关系关联两个微块,即使这两个微块具有不同的字体和不同的大小/样式、在相应的微块中具有不同的段落对齐、和/或被标点符号分开。此外,文档数字化引擎120可以基于键本体数据将两个微块确定为宏块,其中例如指定了特定键名和键名的数据类型。图4及其对应的说明中提供了可调整的共线性参数的例子和详细说明。
在框330中,文档数字化引擎120确定所接收的文档的类别以及是否已经识别出在文档的类别中所需的所有类别键。如果文档数字化引擎120确定任何类别键尚未被识别,则文档数字化引擎120继续进行框340。如果文档数字化引擎120确定所有类别键已被识别,则文档数字化引擎120继续进行框350。
在框340中,文档数字化引擎120检查在框310中识别的所有微块,以找到与每个缺失的类别键相对应的相应别名。对于代替缺失的类别键而找到的每个别名,文档数字化引擎120识别包括具有该别名的微块的宏块,如在框320中的。则文档数字化引擎120继续进行框350。
在框350中,文档数字化引擎120从在框320和框340中识别的宏块识别所有键-值对(KVP)。每一宏块的一个微块可对应于KVP中的一个键,且同一宏块的另一微块可对应于同一KVP中的一个值。文档数字化引擎120将置信水平分配给每个识别的KVP。文档数字化引擎120基于各种因素,诸如接近度水平、相应关键名称和数据类型的本体匹配,来启发式地确定KVP的置信水平。对于经常出现在正式和交易文档中的键和值,KVP的置信水平可能高于非正式和个人文档中的自定义键和值。然后,文档数字化引擎120继续进行图2的框250。
图4描绘了根据本文阐述的一个或多个实施例的示例性文档图像,其中向所述文档图像应用了可调整的块标识参数以便标识宏块。
文档400包括各种配置的两个微块。第一微块具有文本串"姓名(name)",第二微块具有文本串"Kevin"。第一微块中的"姓名"文本可以被提取为键,第二微块中的"Kevin"文本可以被提取为文档数字化引擎120从中识别宏块的姓名键的值、或者键-值对(KVP),姓名="Kevin"。
配置410描绘了在两个相邻的微块中的不同的字体大小,其中"姓名"微块具有比"Kevin"微块的字体小的字体。对于现有的文档处理应用,包括大小变化的字体差异将阻止两个微块被识别为宏块(KVP),否则其将形成KVP。文档数字化引擎120能够通过使用关于字体大小的可调整的共线性参数,将具有不同字体大小的两个微块识别为一个宏块(KVP)。
配置415描绘了两个垂直相邻的微块中的不同文本样式,其中"姓名"微块为黑体,而"Kevin"微块在下一行中具有法向面。对于现有的文档处理应用,包括字样改变的文本样式差异,例如,当正常文本加粗、斜体和加下划线时,将防止两个微块被识别为宏块(KVP),否则将形成KVP。文档数字化引擎120能够通过使用关于文本样式的可调整的共线性参数来将具有不同文本样式的两个微块识别为一个宏块(KVP)。
配置420描绘了两个相邻微块中的不同段落对齐,其中"姓名"微块向左对齐,而"Kevin"微块在右端对齐。对于现有的文档处理应用,如上所示的段落对齐差异将阻止两个微块被识别为宏块(KVP),否则其将形成KVP。文档数字化引擎120能够使用关于段落对齐的可调整的共线性参数,将具有不同段落对齐的两个微块识别为一个宏块(KVP)。
配置425描绘了两个垂直相邻微块中的不同段落对齐,其中"姓名"微块向左对齐,而"Kevin"微块在下一行的右端对齐。对于现有的文档处理应用,如上所示的段落对齐差异将阻止相应行中的两个微块被识别为宏块(KVP),否则其将形成KVP。文档数字化引擎120能够利用关于段落对齐的可调整的共线性参数,将具有不同段落对齐的各行中的两个微块识别为一个宏块(KVP)。
配置430表示由标点符号分开的两个相邻的微块,其中":",冒号被置于"姓名"微块和"Kevin"微块之间。对于现有的文档处理应用,如上所示的分隔标点符号可以防止两个微块被识别为宏块(KVP),否则其将形成KVP。文档数字化引擎120通过使用关于标点符号分隔的可调整的共线性参数,能够将由标点符号分隔的两个微块识别为一个宏块(KVP)。
配置435表示由标点符号分开的两个垂直相邻的微块,其中":",冒号被置于"姓名"微块和下一行中的"Kevin"微块之间。对于现有的文档处理应用,如上所示的分隔标点符号可以防止相应行中的两个微块被识别为宏块(KVP),否则其将形成KVP。通过使用关于标点符号间距的可调整的共线性参数,文档数字化引擎120能够将由标点符号分隔的相应行中的两个微块识别为一个宏块(KVP)。
配置440描述了由宽间距分开的两个相邻的微块,其中"Name"微块和"Kevin"微块之间的宽间距通常防止两个微块被现有文档处理应用识别为宏块(KVP)。文档数字化引擎120能够通过语义分析两个微块的文本并且通过基于键本体数据匹配键和值来识别由这种宽间距分隔的两个微块作为一个宏块(KVP),因为"Kevin"具有用于"姓名"键的值的适当数据类型。
配置445描绘了由宽间距分开的两个垂直相邻的微块,其中下一行中的"姓名"微块和"Kevin"微块之间的宽间距通常防止两个微块在现有文档处理应用中被识别为宏块(KVP)。文档数字化引擎120能够识别由这种宽间距分隔的相应行中的两个宏块作为一个宏块(KVP),这是通过语义分析两个宏块的文本并且通过基于键本体数据匹配键和值来实现的,因为"Kevin"具有用于"姓名"键的值的适当数据类型。
在某些实施例中,文档数字化引擎120可以具有预定义的间距类别集合,其可以包括例如紧密间距、单倍间距(正常间距)、1.5倍间距、2倍间距和宽间距,其中每个间距类别指示由相应的间距类别分开的两个宏块之间的共线性的不同可能性。间距类别的集合对于每个宏块内的微块可以是不同的。
文档数字化引擎120可以进一步基于诸如连词、析取和指示语义关系的相关符号标记的语义指示的存在来应用语义插值。例如,"与"和"或"两者表示一行的延续,如符号"&"、"+"。在列表中,作为行标的标记,大多使用"-"或"星号"等符号。文档数字化引擎120可以考虑语义插值以从间距类别进行宏块识别。
更进一步地,文档数字化引擎120还可以考虑相对样式以用于宏块识别。语义插值和相对样式通常具有小于根据绝对和相对测量的间距的相应权重。文档数字化引擎120可以基于文档的类别为某些元素分配相应的权重。例如,在某一距离范围内的两个块之间的样式和字体的改变对于诸如交易文档、***和政府表单等表单文档而言可能比诸如演示幻灯片等非正式文档更重。
图5描绘了用于元数据的宏块提取的方法。文档数字化引擎120将由元数据提供的计算数据输出到一个或多个进程接口,例如用于更新语义数据库130,使得分类报告改进了文档数字化引擎120在下次文档数字化引擎处理类似于文档图像的文档图像时的处理,以便输入到搜索引擎、应用到表单、用于语音使能应用。
在框2110中,文档数字化引擎120识别宏块,例如图6中所示的宏块1604D,其包括一个或多个诸如微块1602A-1602K的微块。在一个实施例中,如本文阐述的宏块1604D(图6)的识别包括分析每一微块的可调整的共线参数。如参考框320(图3)所述,可调整的共线参数可以包括字体;段落对齐;标点符号;以及本体匹配。在一个实施例中,文档数字化引擎120使用另一方法,例如应用诸如表格、文本密度、地址或段落分类器之类的分类器,来识别(在图2的框220中)宏块1604D(图6)。文档数字化引擎120可以迭代框2110,直到识别出文档图像的所有宏块。在识别出专用宏块(例如,表格)的情况下,可以进行专用宏块处理。在所有情况下,可以进行如框2110中所述的一般宏块处理。
在框2120中,文档数字化引擎120使用识别的宏块、例如宏块1604D来找到键-值对(KVP)。所识别的KVP可以补充例如在识别宏块1604D的过程期间识别的任何先前识别的KVP。在一个实施例中,使用识别的宏块1604D来找到KVP包括文档数字化引擎120迭代地应用不同的微块界定机器逻辑规则,使得相对于宏块内的相同内容识别不同的微块集合。在宏块内的微块被识别的情况下,在一个实施例中,在一个微块内找到"键"时,文档数字化引擎120在宏块内的每个剩余微块中搜索对应于该键的值。
在框2130中,文档数字化引擎120评估可以包括相关联的置信水平的识别的KVP。为了执行框2130,在一个实施例中,文档数字化引擎120将置信水平分配给每个识别的KVP。文档数字化引擎120基于各种因素,诸如接近度水平、相应关键名称和数据类型的本体匹配,来启发式地确定KVP的置信水平。对于经常出现在正式和交易文档中的键和值,KVP的置信水平可能高于非正式和个人文档中的自定义键和值。在一个实施例中,文档数字化引擎120作为用于向KVP分配置信水平的因素而应用于KVP是否先前已经被确定为属于共同宏块。因此,文档数字化引擎120可以根据是在将键-值对识别为属于共同宏块之前(例如,在图3的框320处)还是在宏块被识别出共同包括被比较的微块之后(例如,在框2130处)执行评估,来向被评估为KVP的相同的两个微块分配更高的置信水平。参考图6-8进一步描述一个实施例中的框2120和2130中的处理。
基于在框2130中分配的置信水平,经受评估的一个或多个KVP可被丢弃或作为标题(没有值的有效键)对待。在一个实施例中,文档数字化引擎120应用启发式地被设置在0-70%之间的低软匹配和100%处的高精度匹配。一旦提取了值,分隔符的缺失或再处理就形成了该排序的主要部分。
在框2140中,文档数字化引擎120以元数据的形式提供计算数据以供用户编辑。在框2150中,文档数字化引擎120将元数据输出到例如进程接口149。进一步参考图6到8描述框2140和2150处的处理的各方面。
图6描绘了具有由文档数字化引擎120识别的宏块1604D的说明性文档图像1600。例如,文档数字化引擎120可以初始地识别微块1602A-1602K并且应用基于共线性的块识别处理(框320中的图3)以确定宏块1604D是包括微块1602A的宏块。在另一实施例中,宏块1604D可例如使用所应用的分类器,例如表格分类器、字密度分类器(其中文本密度高于阈值的区域可被识别为宏块)、地址分类器、段落分类器,在没有微块1602A到1602K的先前辨识的情况下被辨识为宏块。本文的实施例认识到,对象的对齐可指示"属于",并且因此指示作为可用于搜索例如键-值对的存在的所标识的区域的宏块。文档数字化引擎120可以用直线边界描绘每个识别的微块和宏块。图7描绘了根据第二微块机器逻辑界定规则的应用而被替换地分割的文档图像1600,并且图9描绘了由文档数字化引擎120基于文档图像1600的处理而输出的元数据所提供的计算数据。
如本文所阐述的,文档数字化引擎120可以针对文档的每个微块通过分析每个微块的可调整的共线参数来识别宏块。如参考框320(图3)所述,可调整的共线参数可以包括字体;段落对齐;标点符号;以及本体匹配。参考图6,文档数字化引擎120可以基于对齐和本体,而不管字体大小差异,将宏块1604A识别为包括微块1602B和1602C。参考图6,文档数字化引擎120可以基于对齐将宏块1604B识别为包括微块1602D和1602E。参考图6,文档数字化引擎120可以基于对齐和本体,而不管字体大小差异,将宏块1604C识别为包括微块1602F和微块1602G。文档数字化引擎120可以基于微块1602A、1602B、1602D、1602F、1602H和1602K之间的左侧对齐将宏块1604D识别为包括微块1602A、1602B、1602D、1602F、1602H和1602K,并且因此基于微块1602K的右侧边界和宏块1604D的直线配置来建立包括微块1602A、1602B、1602D、1602F、1602H和1602K以及微块1602A-1602K的剩余微块的宏块1604D。因此,在完成宏块1604D的识别后,宏块1604D被确定以包括微块1602A到1602K。为了从微块1602A到1602K确定宏块1604D,可应用第一微块界定机器逻辑规则。例如,根据第一微块机器逻辑规则,出于微块界定的目的,可忽略文本片段之间的2倍间距。因此,如图6所示,微块1602H-1602J分别被标识为各个单个微块。
在如图6中所示定义的宏块1604D的情况下,文档数字化引擎120可以识别宏块1604D内的键-值对。在已通过分析每一微块的可调整共线参数的分析而识别了宏块1604D的情况下,利用所识别的宏块1604D的对键-值对的识别可补充针对宏块1604D的识别而执行的键-值对的先前识别。在一个实施例中,利用宏块1604D识别的键-值对的识别是初始键-值对识别。
为了识别如图6中所示定义的宏块1604D的键-值对,文档数字化引擎120识别宏块1604D内的宏块。在一个实施例中,文档数字化引擎120可以使用如图6所示的微块1602A-1602K来使用第一微块界定规则(其中2倍间距被忽略并且不导致微块之间的界定)以搜索并识别键-值对。
在一个实施例中,参考图7,文档数字化引擎120可以应用各种微块界定机器逻辑规则来识别微块,并且在一个实施例中,可以为了扩展键-值对(KVP)的搜索的目的,迭代地改变微块机器逻辑界定规则来识别宏块1604D内的微块。
为了识别如图7所示的微块,文档数字化引擎120基于第二机器逻辑规则微块界定规则识别微块1603A-1603N,其中,为了描绘微块,观察(而不是忽略)微块之间的2倍间距;即两个文本片段之间的2倍间距导致识别两个微块而不是单个微块。第二机器逻辑规则导致识别附加的微块,并因此导致识别键-值对的附加基础。在如图7中所阐述地识别宏块1604D的情况下,文档数字化引擎120可以使用新识别的微块1603A-1603N来识别键-值对。对于位于微块1603A-1603N中的微块中的每个键,文档数字化引擎120可以搜索并识别微块1603A-1603N中的另一个微块中的相应值。在所描述的示例中,文档数字化引擎120基于微块1603A-1603N的内容来识别键-值对。通过识别附加的微块1603H-1603M(在文本中识别的六个微块,其中使用第一机器逻辑微块界定规则识别三个微块),文档数字化引擎120可以执行附加的搜索,但是基于附加的搜索被限制到宏块1604D的文档图像区域,附加的搜索被节省并且具有低延迟。
在一个实施例中,识别较少微块1602A-1602K的第一微块界定机器逻辑规则应用于建立宏块1604D和键-值对,而识别宏块1604D(一旦建立)内的另外新定义的微块1603H-1603M(图7)的第二机器逻辑微块界定机器逻辑规则应用于识别键-值对。因此,在一个实施例中,使用相对粗略定义的微块识别的本体论关系可以产生感兴趣区域(宏块)的识别,然后可以对该感兴趣区域进行进一步分析(该进一步分析可以包括识别其中相对精细定义的微块以提取KVP)。
对于使用微块1602A-1602K和微块1603A-1603N识别的键-值对,在一个实施例中,文档数字化引擎120继续使用宏块1604D识别键-值对,例如,通过使用进一步改变的微块界定机器逻辑规则识别宏块1604D内新定义的微块,并且基于新定义的微块识别宏块1604D内新定义的键-值对。根据一个进一步改变的微块界定规则,例如,在一个实施例中,文档数字化引擎120观察而不是忽略单个空间作为微块之间的元素界定。根据一个进一步改变的微块界定规则,例如,在一个实施例中,文档数字化引擎120观察而不是忽略连字符"-"作为微块之间的标点元素界定。根据一个进一步改变的微块界定规则,例如,在一个实施例中,文档数字化引擎120观察不同的线呈现作为微块之间的元素界定。
在建立宏块时或之前以及在建立宏块之后应用识别键-值对的过程提供了优点。参考图8,文档图像1700可以包括微块1702A、微块1702B和微块1702C。在初始处理期间(例如,根据图3的框320),分析微块1702A和微块1702B之间的经调整的共线参数可能例如基于与所识别的键-值对相关联的置信水平低于阈值而无法触发键-值对的输出。在初始处理期间,分析微块1702B和微块1702C之间的调整后的共线参数可能例如基于与识别出的键-值对相关联的置信水平低于阈值而无法触发识别出的键-值对的输出。然而,在初始处理期间,分析微块1702A和微块1702C之间的调整后的共线参数可以例如基于与识别出的键-值对相关联的置信水平高于阈值(例如,基于键"地址"本体地匹配使用语义数据库130的键本体数据137确定的地址字段的内容)而成功地触发识别出的键-值对的输出。
基于定义键-值对的微块1702A和微块1702C的内容,可以建立宏块1704A(其通过应用的机器逻辑可以被限制为直线形状),使得基于微块1702A和微块1702C之间的本体关系,微块1702B被包括在宏块1704A内。在所描述的示例中,文档数字化引擎120可以被配置为使得微块1702B的内容与微块1702A(或微块1702C)的内容一起被检查多次以用于识别键-值对,例如(a)在宏块1704A建立之前的第一次和(b)在微块1704A建立之后的第二次,其将微块1702B建立为被包括在包括微块1702A、微块1702B和微块1702C的宏块1704A内。在一个实施例中,文档数字化引擎120可以基于对应的微块已经被确定为具有共同宏块的新信息(导致附加的应用的权重)向从第二次检查得到的候选键-值对分配更高(可能超过阈值)的置信水平。因此,可以看出,基于建立包括第一和第二微块以及潜在的附加微块的宏块,在未对齐的第一和第二微块(例如微块1702A和1702C)的内容之间的KVP的识别可以帮助附加KVP的输出。
图9中描绘了用于用户基于图6和7的宏块1604D的处理进行编辑的示例性元数据140。用于基于如图9所示的宏块1604D的处理的用户编辑的示例性元数据140可以被呈现在用户界面中以供在用户设备110的显示器上显示。图9中用于用户编辑的元数据包括每个所标识的置信水平的基于文本的表示、以及与置信水平相关联的用户控件(是/否(Y/N)),其允许管理员用户接受或拒绝键-值对以供输出。
使用用户设备110的用户可以接受或拒绝使用控制描述的每个候选KVP(Y/N)。文档数字化引擎120因此提供输出元数据的自导向,而不需要多个训练集,即使在经受处理的接收文档是在语义数据库130中没有相应文档类别131的新文档的情况下。本文的实施例认识到,尽管文档数字化引擎121处理文档图像的能力可被期望用本文阐述的训练来改进,但有用的元数据不应基于训练来预测,而是应提供有用的元数据,即使在文档是类别的第一文档的情况下。如图9的元数据140所见,用户可以使用用户界面使用控件来接受或拒绝找到的KVP(是/否(Y/N))。与图9中描绘的元数据相关联的用户界面功能可以包括这样的功能,由此如果管理员用户发现提取的百分比低,则他们点击指南并且转到文档表示,并且利用由文档数字化引擎120提供的置信水平对KVP确定进行附加校正。
在框2150中,基于所提供的用于用户编辑的元数据并且基于用户的选择,文档数字化引擎120可以输出元数据140,例如,在图9中示出的(所有识别的KVP被接受),其中可能基于用户选择,呈现给用户的元数据中的一些被丢弃。将理解,文档数字化引擎120可以被配置为基于所有置信水平高于阈值而直接继续输出放置元数据、例如到进程接口149,对于语义数据库130中的可靠且训练的文档类别131,这可能更可能。
为了提供图9中所示的元数据140,文档数字化引擎121基于识别的宏块(例如,包括两个或更多个微块)、识别的微块和识别的KVP对分类进行反向工程。图9中描绘的将KVP组织到元数据中是宏块到微块关系的反向工程。考虑到文档图像181的单页可以包括零到M个宏块,并且每个宏块可以包括零到N个微块,来自每个宏块的候选KVP在层次配置中被集成在一起。因此,在所描述的示例中,文档数字化引擎120可以识别文档页面的零到M个宏块,并且可以为每个微块分配标题,例如标题"支付详情:"用于如图9所示的代表性元数据140。
参考图9的输出元数据140,文档数字化引擎120可以输出元数据,该元数据被组织以指定指示文档图像181的对象之间的层级关系的分类法。例如,在如图9所示的输出元数据中,输出元数据可以以这样的形式呈现,其中所提取的各个KVP与用于发现它们的宏块的指定符相关联。在标题"支付详情:”之下,图9中所示的分类可包括各种KVP的指示符。如图9的示例中所示,文档数字化引擎120可以呈现在其相关联的宏块1604D的指定符标题(标题"支付细节:")之下子标题的KVP。
如示例9所示,可以以基于文档图像1600(图6和7)的内容的顺序呈现元数据140的KVP。然而,根据另一实施例,文档数字化引擎120可以根据不由文档图像1600的对象的顺序确定的顺序呈现多个KVP。例如,文档数字化引擎120可以根据基于与KVP相关联的置信水平的顺序来呈现例如在相关联的微块指定符之下组织的KVP。在一个实施例中,文档数字化引擎120可以根据基于KVP的主题分类的顺序,例如根据主题分类层级,呈现例如在相关联的微块指定符之下组织的KVP。文档数字化引擎120可以采用(外部工具170的)自然语言处理(NLP)主题分类或NLP理解处理,以确定由输出元数据指定的分类的属性。例如,在一些使用情况下,例如,将根据主题"人口统计"分类的KVP优先于当经受基于主题的NLP处理时尚未返回任何分类的KVP是有用的。可替换地,可以以基于用于发现KVP的方法的顺序来呈现KVP。在一个实施例中,在使用利用第二微块描述机器逻辑规则识别的微块发现KVP之前,可以提供利用第一微块描述机器逻辑规则识别的微块发现的KVP(导致识别较少的微块)。在一个实施例中,经由框320(图3)中的处理找到的KVP可在经由框2120(图5)中的处理找到的KVP之前呈现。在一个实施例中,以推断与值关联的键的方式发现的KVP可以在KVP以下呈现,其中,根据语义数据库130的文档类别131明确定义KVP。被组织来指定指示文档图像181的对象之间的分层关系的分类的输出元数据提供了许多优点,例如,下游进程的处理容易,下游进程变得较不依赖于用于处理元数据的基于规则的机器逻辑。
文档数字化引擎120可以采用(外部工具170的)自然语言处理(NLP)主题分类或NLP理解处理,以确定与识别的候选关键词对应的识别的微块的值。例如,如果使微块的文本经受NLP主题分类返回主题或理解匹配键或键的别名,则可以提供键-对识别。如果通过使第一微块经受NLP主题分类而返回的主题与通过使第二微块经受NLP主题分类而返回的主题相匹配,则还可以提供键-对识别。在使微块的文本经受NLP主题分类导致主题多样化的情况下,文档数字化引擎120可以将一般"附言"键应用于微块。
参考图9的元数据,输出元数据可以包括不具有一致配置或格式的潜在KVP的元数据。本文的实施例提供了为了将潜在的KVP(例如没有标点分隔符(如冒号":")的KVP、具有带有推断的键的值的KVP)正确地提取到正式分类法中。这里的实施例提供了与语义数据库130的本体数据有关的宏块和微块处理,以识别候选键和值。
本文的实施例处理包括非结构化文档的文档,以便以结构化格式,例如JSON或XML,向消费者呈现计算数据。本文的实施例致力于以可消费方式提取文本并保存样式信息。本文的实施例提供元数据,该元数据不仅指定样式信息(例如,字体大小),而且提供相对样式信息,诸如文档图像的区域中的字体相对于文档图像的较大份额的高度(大小)。相对样式信息可以由本文阐述的相对样式参数值来提供。文本可以是粗体的,或者可以具有字体高度(大小)或样式的变化。对于人类读者,当适当地完成时,这些样式上的改变可以传达强调的范围;从使用斜体的精细比较到传递标题或某些不包括在句法或语义内容中的其它形式的信息的较大字体。本文的实施例认识到,样式是要保持的关键但具有挑战性的要素。本文阐述的实施例在元数据中提供相对样式信息,以便仿效人类认知模式分类,其中模式倾向于按照相对术语而非绝对术语来分类。利用作为机器可读计算元数据提供的相对样式信息,相对样式信息有助于宽范围的处理。
这里的实施例认识到,虽然PDF文档的较新版本包括可以后备一些样式信息的支持XML配置,但是可用的样式信息是有限的。例如,根据用于处理PDF文档的可用技术,每个对象可以被分类为具有其自己的字体、字体大小和颜色空间。这里的实施例认识到,组织具有大量的PDF文档,许多没有后备元数据。
这里的实施例从文档图像提取样式信息,以便从所述文档图像提供"相对样式信息"。
在一个实施例中,文档数字化引擎120被配置为处理具有文本的文档图像,以便提供除字体类型和大小以及字体颜色之外的信息。因此,对于Helvetica24 pt.中的文本片段,文档数字化引擎120可以提供输出:24pt.Helvetica。此外,文档数字化引擎120可以提取和输出相对样式信息。相对样式信息可以包括例如文本片段具有比其相邻文本片段高10%或高50%或低20%的字体(字符)高度(大小)的数据。文档数字化引擎120可以提供关于字体的附加的或替代的特征信息,例如可以将字体分类为诸如"商业字体"或"娱乐字体"的分类。
配置文档数字化引擎120以输出包括相对样式信息的元数据改进了文本转换,例如,对于输出元数据被输出到表单再生器或另一进程接口的情况。文档数字化引擎120可以被配置为用于将文本从非配置化文档转换为用于在例如PC环境或移动设备的电子设备上显示的格式。在一个实施例中,文档数字化引擎120可以基于具有与处理后的文档的相对样式相对应的相对样式信息的处理后的文档,输出格式化为样式表(例如,层叠样式表(CSS))的元数据。除了执行源到目标的逐行转换之外或代替执行源到目标的逐行转换,其中样式信息以相同的方式指定,文档数字化引擎120可输出具有相对样式信息的CSS。
在一个实施例中,为了处理文档以输出具有相对样式信息的CSS,文档数字化引擎120可以执行更大的区域、例如整个文档分析。通过执行更大面积的文档分析,文档数字化引擎120可以确定文档的基线样式参数值(或基线样式参数值集合),诸如基线字体高度(大小)参数和/或基线空白大小参数,并且基于所确定的一个或多个基线样式参数值,文档数字化引擎120可以提供样式表以继承和改变这些样式。如果原始内容具有比其相邻部分高10%的部分(例如,文本行中的单词),则可以在CSS中表示提供相对样式参数值的该相对高度信息。例如,在样式块中使用“字体高度:80%;”将创建引用父元素的字体高度(大小)但低20%的样式。
所描述的处理提供了逐个概念的转换。无论意图是否执行从源到目标的变换,相对样式信息的提取都允许为任何下游处理保留样式信息中存在的非语义和非句法强调。
为了提供定义相对样式参数值的相对字体高度数据,文档数字化引擎120可以初始地确定由文档的区域中的文档的基线字体高度提供的基线样式参数值,该区域大于单词,例如是文档的整页。为了确定字体高度基线样式参数,文档数字化引擎120可以构建遍及文档的单词字体高度的直方图,并且可以基于直方图的中心离散、例如字体高度值的平均值或中值,来确定基线样式参数值。在逐个文本行的基础上,文档数字化引擎120可以为每个单词分配相对字体高度相对样式参数值,例如作为相关基线样式参数值的百分比。在一些实施例中,可以基于宏块特定数据(而不是全页数据)或者宏块和全局页数据的组合来确定基线样式参数值。在一些实施例中,可以执行K均值聚类分析以确定字体高度基线样式参数值。
作为输出元数据140的一部分提供的相对样式信息可以包括关于文档的空白空间(没有文本或其它对象的区域)的相对样式信息。为了提供定义相对样式参数值的对象的空白空间相对样式信息,文档数字化引擎120可以初始地确定大于线段的文档的区域(例如文档的整页)中的文档的空白空间基线样式参数值。为了确定空白空间基线样式参数值,文档数字化引擎120可以构建遍及文档的空白空间大小的直方图,并且可以基于直方图的中心离散,例如空白空间大小的平均值或中值,来确定基线样式参数值的基线值。在逐个文本行的基础上,文档数字化引擎120可以为行的每个空白分配空白相对样式参数值,该相对样式参数值被表示为空白基线样式参数值的百分比。因此,2倍间距空白对于正常文档可能等于101的值(基线的101%),但是对于具有高密度文本的文档则等于150%,或者对于具有高稀疏文本的文档则等于50%。在一些实施例中,可以基于宏块特定数据或者宏块和全局页数据的组合来确定基线样式参数值。在一些实施方式中,可以执行K均值聚类分析以确定空白基线式样参数值。
为了提供"商业字体"或"娱乐字体"的分类,文档数字化引擎120可以检查将字体与相应的"商业字体"或"娱乐字体"分类交叉引用的查找表。诸如Baskerville或Times NewRoman的字体可以被分类为"商业字体",而诸如Arial的字体可以被分类为娱乐字体。
提供相对样式信息可以增强具有基于由文档数字化引擎120输出的接收的元数据的功能的下游过程的功能。例如,表单再生器的开发可以基于具有相对字体高度(大小)、空白或字体类型分类的输出元数据来自动化或简化,以定义相对样式参数值。例如,在表单再生器机器逻辑中,可以检查和确定指示到大字体高度的突然改变的相对字体高度数据,以表示一般高亮区而不是要求字体高度的再现的特定高亮区。例如,在表单再生器输出中,字体高度的突然增加可以替代地或者还用颜色的变化(例如从黑色到指示高亮的红色)来表示。在表单再生器移动内容以适应特定大小的显示器上的显示的情况下,可以检查在空白区基线样式参数值的上下文中的空白区相对样式信息(例如,空白区相对样式参数值),以验证调整将不会在改变所提供的整体影响中产生不可接受的改变。提供字体类型分类("商务"和"娱乐")避免了例如从外部资源访问遗漏字体的需要。相对样式信息降低了用于处理输出元数据的机器逻辑的复杂性。
图10描绘了根据本文阐述的一个或多个实施例的对应于文档图像181的示例性文档元数据140。
文档数字化引擎120处理文档图像181并生成文档元数据140。在本发明的某些实施例中,文档数字化引擎120以JavaScript对象符号(JSON)格式生成文档元数据140,如图10的示例性文档元数据140所示。文档图像181被分层地组织为包括一行或多行的一个或多个块。每一行具有一个或多个字。每个块、行和字可以被认为是文档图像181内的相应对象,其属性分别在文档元数据140中描述。
行L401指示该列表描述了由"BlockList(块列表)"表示的块。行L402和L403表示块的起始点的(x,y)坐标。行L403表示没有注释附加到该块。行L403指示所述块具有某一宽度。行L406指示块具有由"LineList(行列表)"表示的行。
行L407指示行"LineList"具有由"WordList(单词列表)"表示的单词。行L408指示该单词具有值"XYZ公司",行L409和L410分别表示字的高度和密度。将高度指定为具有值204,以指示单词的高度是基线样式参数值的204%。一行的附加词可以用附加百分比值来表示,以达到具有不同高度的程度。在图6和7的说明性示例中,对于单词"ANZ"、"BANK(银行)"和"Winnellie(温妮利亚)"可以给出值204或204%,而对于单词"BANK(银行)"可以给出值99(99%)。行L411和L412表示字的起始点的(x,y)坐标。行L413指示如在特定自定义字体大小组中的字的字体高度(大小),用于字体高度(大小)数据的进一步表征。行L414指示该单词将由"word_0"名称标识。行L415指示所述字具有八(8)个字符,且行L426指示所述字具有某一宽度。测量可以以像素为单位,或者根据任何其他自定义单位。
行L417至421结束了在L406中引入的行"LineList"。L417中的线的宽度、行L418和L419中的线的起始点的(x,y)坐标、行L420中的线的高度以及标识行L421中的线的名称"line_0"。
对象的上下文由每个对象如何一起出现在某一列表中来表示。可以基于各种坐标和诸如高度和宽度的大小元素来确定对象的相对定位和大小。文档元数据140被用作语义标准化引擎160的输入,特别是为了评估候选键是已知键的别名的可能性的置信度得分。
行L511到L521描述了说明性的KVP元数据。行L512指示候选键是由"block_16"名称标识的块的成员。可以在文档元数据中为上下文、位置和样式指定"Block_16"。行L513指示候选键的值是"573093486"。行L514和L515表示L513的值的起始点的(x,y)坐标。行L516和L517表示候选键的起始点的(x,y)坐标。行L518表示候选键具有文本"Accnt No(账号)"。行L519指示文档数字化引擎120基于上下文、相对定位和文档元数据中表示的样式、文本排序、语义匹配、以及向量空间建模和文本分类,确定键类别"CustomerAccountNumber(客户账号)"是对应于候选键"Accnt No(账号)"的键类别的可能性为82.35%。输出元数据140可指定指示如结合图9和10所阐述的对象之间的组织和分层配置的分类。
文档数字化引擎120可以将元数据输出到多个进程接口。例如,输出元数据可以被用于(a)自动地适应文档数字化引擎120的处理,(b)加速信息管理,(c)加速聊天框,和/或(d)增强表单生成。
关于(a)文档数字化引擎120可以基于输出元数据,例如使用如本文阐述的输出元数据的相对样式信息,调整由文档数字化引擎120运行的一个或多个过程。在一个实施例中,文档数字化引擎120可以基于空白基线样式参数值和/或空白相对样式参数值(例如,根据一个实施例,可以在逐个文本行的基础上确定)自动调整微块界定机器逻辑规则。例如,在具有大空白空间的相对稀疏的页面的情况下,微块界定规则可以被选择性地启用和激活,其较少包括并且在特定区域上识别较少的微块(例如,利用5个空白空间触发的描绘)。在具有较小空白空间的密集页面的情况下,可以选择性地启用和激活微块界定规则,其更包括并且识别特定区域上的更多微块,例如其中微块界定是利用2倍间距(双倍间距)空白空间触发的。
进一步关于(a),文档数字化引擎120可以使用输出元数据来更新语义数据库130,例如图9和10中所示。例如,参考图9和10的元数据,文档数字化引擎120可以例如经由NLP处理识别出文档图像1600的"Account name(账户名称)"是键"account number(账号)"的预期别名。通过输出用于更新语义数据库130的元数据,可以更新关键本体数据137以包括作为"account number"的正式别名的"account name"。
关于(b),文档数字化引擎120可以输出元数据140以加速信息管理服务。将如图9和10所示的元数据140输入到搜索引擎中意味着将以高精度识别索引字段。不是将"BSB015896Account2856-98739 Swift代码ANZBAU3M"视为单个值(与某一其它索引相关联),而是搜索引擎可将此视为index(索引)=BSB、value(值)=015896、datatype(数据类型)=Integer(整数)index(索引)=Account number(账号)、value(值)=285698739、datatype(数据类型)=Integer(整数)等。在一个实施例中,文档数字化引擎120可以被提供作为用于执行搜索的搜索引擎的搜索引擎接口。被配置为搜索引擎接口的文档数字化引擎120可以接收由诸如可以由PDF文档提供的非配置化文档提供的搜索引擎请求。文档数字化引擎120可以将从这样的文档的处理中得到的元数据输出到搜索引擎以返回有用的搜索结果。
关于(c),文档数字化引擎120可以被提供为聊天界面并且可以被配置为访问非配置化文档,诸如与文档图像1600对应的文档,以便响应聊天环境中呈现的问题。对于回答问题"What is the BSB for ABZ Bank Winnellie?(ANZ银行温妮利尔的BSB是什么),文档数字化引擎120可以访问和处理对应于文档图像1600的文档,使用高精确度而没有噪声地识别全扫描的语义实体。基于文档数字化引擎120的处理,问题变成以下之一:"对于<值>的<键>是什么?或者<键>的<值>是什么?以及通过基本查询代数:什么是<值:ANZ BankWinnellie>的<键:BSB>,答案是<015896>。
关于(d),文档数字化引擎120可以被用作表单再生工具。文档数字化引擎120可以将元数据输出到重新生成与文档图像181对应的文档的信息的表单再生器。接收元数据140的表单再生器可以将该数据再生为适合于移动或网页或一些其他可用性范例的表单。例如,表单再生器的开发可以基于具有诸如指定字体高度(大小)、空白或字体类型分类的相对样式参数等相对样式参数的输出元数据来自动化或简化。例如,配置表单再生器应用机器逻辑可以执行检查相对字体高度相对样式信息,并且基于该检查可以确定从小高度字体到大高度字体的突然改变表示一般高亮而不是要求字体高度的再现的特定高亮。例如,在由表单再生器提供的输出中,字体高度的突然增加可以替代地或者还用颜色的变化(例如从黑色到指示高亮的红色)来表示。在表单再生器移动内容以适应特定大小的显示器上的显示的情况下,可以检查在空白基线样式参数值的上下文中的空白相对样式信息,以验证调整将不会在由改变提供的总体图形影响中产生不可接受的改变。提供字体类型分类("商务"和"娱乐")避免了例如从外部资源访问遗漏字体的需要。相对样式信息降低了用于处理输出元数据的机器逻辑的复杂性。
本文中的某些实施例可以提供各种技术计算优点,包括解决计算机网络领域中出现的问题的计算优点。为了使用文档中表示的数据进行计算的方便性,数字文档通常是优选的。当扫描输入纸上笔写文档时,文档是页面的一系列视觉图像,但在计算上不适于用作数字数据。因此,已经开发了许多文档数字化应用,以便从文档图像中准确地提取计算数据。在现有的文档处理应用中,文档的多种自定义格式和组织在处理文档的可视图像和从文档中提取计算数据方面提出了挑战。本文的实施例在人类读者理解由文档中的视觉标记传达的含义时实现文档图像的认知数字化过程,并且提高从文档图像提取数据的效率和准确性。本文的实施例提供了使用元数据对过程的控制,所述元数据是通过对可以由非配置化文档提供的文档进行处理而导出的。本文的实施例通过不是仅依赖于对象的对齐或对象之间的语义关系而是采用基于对齐的处理和基于语义的处理的组合的方法来从文档提取元数据。
图11-13描绘了根据本文阐述的一个或多个方面的计算的各个方面,包括计算机***和云计算。
首先应当理解,尽管本公开包括关于云计算的详细描述,但是本文中记载的教导的实现不限于云计算环境。相反,本文的实施例能够结合现在已知或以后开发的任何其它类型的计算环境来实现。。
云计算是一种服务交付模式,用于对共享的可配置计算资源池进行方便、按需的网络访问。可配置计算资源是能够以最小的管理成本或与服务提供者进行最少的交互就能快速部署和释放的资源,例如可以是网络、网络带宽、服务器、处理、内存、存储、应用、虚拟机和服务。这种云模式可以包括至少五个特征、至少三个服务模型和至少四个部署模型。
特征包括:
按需自助式服务:云的消费者在无需与服务提供者进行人为交互的情况下能够单方面自动地按需部署诸如服务器时间和网络存储等的计算能力。
广泛的网络接入:计算能力可以通过标准机制在网络上获取,这种标准机制促进了通过不同种类的瘦客户机平台或厚客户机平台(例如移动电话、膝上型电脑、个人数字助理PDA)对云的使用。
资源池:提供者的计算资源被归入资源池并通过多租户(multi-tenant)模式服务于多重消费者,其中按需将不同的实体资源和虚拟资源动态地分配和再分配。一般情况下,消费者不能控制或甚至并不知晓所提供的资源的确切位置,但可以在较高抽象程度上指定位置(例如国家、州或数据中心),因此具有位置无关性。
迅速弹性:可以迅速、有弹性地(有时是自动地)部署计算能力,以实现快速扩展,并且能迅速释放来快速缩小。在消费者看来,用于部署的可用计算能力往往显得是无限的,并能在任意时候都可以获取任意数量的计算能力。
可测量的服务:云***通过利用适于服务类型(例如存储、处理、带宽和活跃用户帐号)的某种抽象程度的计量能力,自动地控制和优化资源效用。可以监测、控制和报告资源使用情况,为服务提供者和消费者双方提供透明度。
服务模型如下:
软件即服务(SaaS):向消费者提供的能力是使用提供者在云基础架构上运行的应用。可以通过诸如网络浏览器的瘦客户机接口(例如基于网络的电子邮件)从各种客户机设备访问应用。除了有限的特定于用户的应用配置设置外,消费者既不管理也不控制包括网络、服务器、操作***、存储、乃至单个应用能力等的底层云基础架构。
平台即服务(PaaS):向消费者提供的能力是在云基础架构上部署消费者创建或获得的应用,这些应用利用提供者支持的程序设计语言和工具创建。消费者既不管理也不控制包括网络、服务器、操作***或存储的底层云基础架构,但对其部署的应用具有控制权,对应用托管环境配置可能也具有控制权。
基础架构即服务(IaaS):向消费者提供的能力是消费者能够在其中部署并运行包括操作***和应用的任意软件的处理、存储、网络和其他基础计算资源。消费者既不管理也不控制底层的云基础架构,但是对操作***、存储和其部署的应用具有控制权,对选择的网络组件(例如主机防火墙)可能具有有限的控制权。
部署模型如下:
私有云:云基础架构单独为某个组织运行。云基础架构可以由该组织或第三方管理并且可以存在于该组织内部或外部。
共同体云:云基础架构被若干组织共享并支持有共同利害关系(例如任务使命、安全要求、政策和合规考虑)的特定共同体。共同体云可以由共同体内的多个组织或第三方管理并且可以存在于该共同体内部或外部。
公共云:云基础架构向公众或大型产业群提供并由出售云服务的组织拥有。
混合云:云基础架构由两个或更多部署模型的云(私有云、共同体云或公共云)组成,这些云依然是独特的实体,但是通过使数据和应用能够移植的标准化技术或私有技术(例如用于云之间的负载平衡的云突发流量分担技术)绑定在一起。
云计算环境是面向服务的,特点集中在无状态性、低耦合性、模块性和语意的互操作性。云计算的核心是包括互连节点网络的基础架构。
现在参考图11,描绘了计算节点的示例的示意图。计算节点10仅是适于用作云计算节点的一个示例,并且不旨在对本文描述的本发明的实施例的使用范围或功能提出任何限制。无论如何,计算节点10能够被实现和/或执行上文阐述的任何功能。计算节点10可以被实现为云计算环境中的云计算节点,或者可以被实现为除云计算环境之外的计算环境中的计算节点。
计算节点10具有计算机***12,其可与众多其它通用或专用计算***环境或配置一起操作。众所周知,适于与计算机***12一起操作的计算***、环境和/或配置的例子包括但不限于:个人计算机***、服务器计算机***、瘦客户机、厚客户机、手持或膝上设备、基于微处理器的***、机顶盒、可编程消费电子产品、网络个人电脑、小型计算机***﹑大型计算机***和包括上述任意***的分布式云计算技术环境,等等。
计算机***12可以在由计算机***执行的计算机***可执行指令(诸如程序进程)的一般语境下描述。通常,程序模块可以包括执行特定的任务或者实现特定的抽象数据类型的例程、程序、目标程序、组件、逻辑、数据配置等。计算机***12可以在通过通信网络链接的远程处理设备执行任务的分布式云计算环境中实施。在分布式云计算环境中,程序进程可以位于包括存储设备的本地或远程计算***存储介质上。
如图11所示,计算节点10中的计算机***12以通用计算设备的形式示出。计算机***12的组件可以包括但不限于一个或多个处理器16、***存储器28和将包括***存储器28的各种***组件耦合到处理器16的总线18。在一个实施例中,计算节点10是非云计算环境的计算节点。在一个实施例中,计算节点10是如本文结合图12-13所阐述的云计算环境的计算节点。
总线18表示几类总线配置中的一种或多种,包括存储器总线或者存储器控制器,***总线,图形加速端口,处理器或者使用多种总线配置中的任意总线配置的局域总线。举例来说,这些体系配置包括但不限于工业标准体系配置(ISA)总线,微通道体系配置(MAC)总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及***组件互连(PCI)总线。
计算机***12典型地包括多种计算机***可读介质。这些介质可以是能够被计算机***12访问的任意可获得的介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
***存储器28可以包括易失性存储器形式的计算机***可读介质,例如随机存取存储器(RAM)30和/或高速缓存存储器32。计算机***12可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机***存储介质。仅作为举例,存储***34可以用于读写不可移动的、非易失性磁介质(图未显示,通常称为“硬盘驱动器”)。尽管图中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序进程,这些程序进程被配置以执行本发明各实施例的功能。
作为示例而非限制,具有一组(至少一个)程序进程42的一个或多个程序40以及操作***、一个或多个应用程序、其它程序进程和程序数据可被存储在存储器28中。包括程序进程42的一个或多个程序40通常可以执行这里阐述的功能。在一个实施例中,文档数字化引擎120可以包括一个或多个计算节点10并且可以包括用于执行参考如在本文中阐述的各种方法描述的功能的一个或多个程序40,诸如结合图2、3和5的流程图描述的方法。在一个实施例中,图1中用不同参考数字引用的各个组件可以各自是基于计算节点的设备,并且各自可以包括一个或多个计算节点10,并且可以包括用于执行本文中参照各个组件描述的功能的一个或多个程序40。
计算机***12还可以与一个或多个外部设备14通信,诸如键盘、指示设备、显示器24等;一个或多个设备,其使得用户能够与计算机***12交互;和/或使计算机***12能够与一个或多个其它计算设备通信的任何设备(例如,网卡、调制解调器等)。这种通信可以经由输入/输出(I/O)接口22发生。此外,计算机***12可以经由网络适配器20与一个或多个网络通信,所述网络诸如局域网(LAN)、通用广域网(WAN)和/或公共网络(例如,因特网)。如所描述的,网络适配器20经由总线18与计算机***12的其他组件通信。应当理解,尽管未示出,但是其他硬件和/或软件组件可以与计算机***12结合使用。实例包括但不限于:除了具有外部设备14和可以被配置为提供用户接口功能的显示器24之外或者作为其替代,在一个实施例中,计算节点10可以包括连接到总线18的显示器25。在一个实施例中,显示器25可以被配置为触摸屏显示器,并且可以被配置为提供用户接口功能,例如,可以促进虚拟键盘功能和总数据的输入。在一个实施例中,计算机***12还可以包括连接到总线18的一个或多个传感器设备27。一个或多个传感器装置27可以替代地通过I/O接口22连接。在一个实施例中,一个或多个传感器设备27可以包括全球定位传感器(GPS)设备,并且可以被配置为提供计算节点10的位置。在一个实施例中,一个或多个传感器装置27可以替代地或另外地包括例如相机、陀螺仪、温度传感器、湿度传感器、脉搏传感器、血压(BP)传感器或音频输入装置中的一个或多个。计算机***12可以包括一个或多个网络适配器20。在图12中,计算节点10被描述为在云计算环境中实现,并且因此在图12的上下文中被称为云计算节点。
现在参考图12,其中显示了示例性的云计算环境50。如图所示,云计算环境50包括云计算消费者使用的本地计算设备可以与其相通信的一个或者多个云计算节点10,本地计算设备例如可以是个人数字助理(PDA)或移动电话54A,台式电脑54B、笔记本电脑54C和/或汽车计算机***54N。云计算节点10之间可以相互通信。可以在包括但不限于如上所述的私有云、共同体云、公共云或混合云或者它们的组合的一个或者多个网络中将云计算节点10进行物理或虚拟分组(图中未显示)。这样,云的消费者无需在本地计算设备上维护资源就能请求云计算环境50提供的基础架构即服务(IaaS)、平台即服务(PaaS)和/或软件即服务(SaaS)。应当理解,图11显示的各类计算设备54A-N仅仅是示意性的,云计算节点10以及云计算环境50可以与任意类型网络上和/或网络可寻址连接的任意类型的计算设备(例如使用网络浏览器)通信。
现在参考图13,其中显示了云计算环境50(图12)提供的一组功能抽象层。首先应当理解,图3所示的组件、层以及功能都仅仅是示意性的,本发明的实施例不限于此。如图13所示,提供下列层和对应功能:
硬件和软件层60包括硬件和软件组件。硬件组件的例子包括:主机61;基于RISC(精简指令集计算机)体系配置的服务器62;服务器63;刀片服务器64;存储设备65;网络和网络组件66。软件组件的例子包括:网络应用服务器软件67以及数据库软件68。
虚拟层70提供一个抽象层,该层可以提供下列虚拟实体的例子:虚拟服务器71、虚拟存储72、虚拟网络73(包括虚拟私有网络)、虚拟应用和操作***74,以及虚拟客户端75。
在一个示例中,管理层80可以提供下述功能:资源供应功能81:提供用于在云计算环境中执行任务的计算资源和其它资源的动态获取;计量和定价功能82:在云计算环境内对资源的使用进行成本跟踪,并为此提供帐单和***。在一个例子中,该资源可以包括应用软件许可。安全功能:为云的消费者和任务提供身份认证,为数据和其它资源提供保护。用户门户功能83:为消费者和***管理员提供对云计算环境的访问。服务水平管理功能84:提供云计算资源的分配和管理,以满足必需的服务水平。服务水平协议(SLA)计划和履行功能85:为根据SLA预测的对云计算资源未来需求提供预先安排和供应。
工作负载层90提供云计算环境可能实现的功能的示例。在该层中,可提供的工作负载或功能的示例包括:地图绘制与导航91;软件开发及生命周期管理92;虚拟教室的教学提供93;数据分析处理94;交易处理95;以及用于如本文阐述处理文档图像的处理组件96。处理组件96可以利用图11中描述的一个或多个程序40来实现。
本发明可以是***、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本发明的各个方面的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起配置、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本发明操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化自定义电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本发明的各个方面。
这里参照根据本发明实施例的方法、装置(***)和计算机程序产品的流程图和/或框图描述了本发明的各个方面。应当理解,流程图和/或框图的每个框以及流程图和/或框图中各框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个框中规定的功能/动作。
附图中的流程图和框图显示了根据本发明的多个实施例的***、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包括一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个框、以及框图和/或流程图中的框的组合,可以用执行规定的功能或动作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
本文所用的术语仅用于描述特定实施方案的目的,而不是旨在限制。如本文所用,单数形式"一"、"一个"和"该"旨在也包括复数形式,除非上下文另有明确指示。还应理解,术语"包括"(以及任何形式的包括,例如"包括"和"含有")、"具有"(以及任何形式的具有,例如"具有"和"具有")、"包括"(以及任何形式的包括,例如"包括"和"包括")和"含有"(以及任何形式的含有,例如"含有"和"含有")是开放式的连接动词。因此,"包括"、"具有"、"包括"或"含有"一个或多个步骤或元件的方法或装置拥有那些一个或多个步骤或元件,但不限于仅拥有那些一个或多个步骤或元件。同样,"包括"、"具有"、"包括"或"含有"一个或多个特征的方法的步骤或装置的元件拥有那些一个或多个特征,但不限于仅拥有那些一个或多个特征。术语"基于"在这里的形式包括元素部分基于的关系以及元素完全基于的关系。描述为具有一定数量的元件的方法、产品和***可以用少于或多于一定数量的元件来实施。此外,以某种方式配置的设备或配置至少以该方式配置,但是也可以以未列出的方式配置。
以下权利要求中的所有装置或步骤加功能元件的相应配置、材料、动作和等同物,如果有的话,旨在包括用于与具体要求保护的其它要求保护的元件结合执行功能的任何配置、材料或动作。本文所阐述的描述是出于说明和描述的目的而呈现的,而不是旨在是穷举的或限于所公开的形式。在不背离本公开的范围和精神的情况下,许多修改和变化对于本领域普通技术人员将是显而易见的。选择和描述实施例是为了最好地解释本文阐述的一个或多个方面的原理和实际应用,并且使本领域的其他普通技术人员能够理解如本文描述的用于具有适合于预期的特定用途的各种修改的各种实施例的一个或多个方面。
Claims (20)
1.一种文档图像的输出的方法,包括:
获取文档图像,其中所述文档图像包括多个对象;
识别所述文档图像内的多个宏块;
在所述多个宏块的宏块内执行微块处理,其中所述微块处理包括检查宏块内的微块的内容以提取键-值对,所述检查内容包括执行微块的本体分析,其中所述微块处理包括将置信水平与所提取的键-值对相关联;以及
基于在所述多个宏块中的宏块内执行微块处理来输出元数据;检查宏块的区域内的微块的内容包括使用不同的机器逻辑微块界定规则迭代地执行检查,使得对于第一迭代,识别宏块的区域内的第一组微块,且对于第二迭代,识别宏块的区域内的第二组微块,其中第一组微块的微块计数不同于第二组微块的微块计数。
2.根据权利要求1所述的方法,其中,输出元数据包括将元数据输出到进程接口。
3.如权利要求1所述的方法,其中,所述方法包括处理所述文档图像以识别基线样式参数值,所述基线样式参数值指定基线字体高度;针对所述文档图像的文本行中的每个单词,识别相对样式参数,所述相对样式参数是参考所述基线样式参数值定义的,其中,所述相对样式参数将所述文本行的文本的单词的字体高度指定为所述基线样式参数值的百分比;并且其中输出元数据包括提供相对样式参数作为输出元数据以用于输出。
4.如权利要求1所述的方法,其中,所述元数据呈现包括宏块的指示以及在每个宏块的标志符内被标识并被子头化的所标识的键-值对的分层结构。
5.根据权利要求1所述的方法,其中所述输出包括丢弃键-值对,使得具有低于阈值的置信水平的键-值对不经受输出。
6.根据权利要求1所述的方法,其中所述检查内容包括执行未对齐微块的本体分析,以及基于所述本体分析确定未对齐微块共线。
7.如权利要求1所述的方法,其中,所述方法包括确定用于所述文档图像的大于微块的区域的空白空间样式参数值,以及基于所述空白空间样式参数值应用机器逻辑微块界定规则。
8.一种文档图像的输出的方法,包括:
获取文档图像,其中所述文档图像包括多个对象;
识别所述文档图像内的宏块,其中所述宏块包括所述多个对象中的对象;
在所述文档图像的所述宏块的区域内检查微块的内容以提取一个或多个键-值对,其中所述检查包括在所述微块的所述区域内检查未对齐微块的内容,并且其中在所述微块的所述区域内检查未对齐微块的内容包括应用本体分析;
将置信水平与所述一个或多个键-值对中的键-值对相关联;以及
输出所述一个或多个键-值对;
检查宏块的区域内的未对齐微块的内容包括使用不同的机器逻辑微块界定规则迭代地执行所述检查,使得对于第一迭代,识别宏块的区域内的第一组微块,且对于第二迭代,识别宏块的区域内的第二组微块,其中第一组微块的微块计数不同于第二组微块的微块计数。
9.根据权利要求8所述的方法,其中所述检查包括分析所述宏块的所述区域内的第一微块及第二微块两者的相应语义内容,查明所述第一微块的第一语义内容与键名相关联,从对应于所述键名的键本体数据发现所述第二微块的第二语义内容具有对应于所述键名的数据类型。
10.根据权利要求8所述的方法,其中在所述识别宏块之前开始所述检查未对齐微块的内容,且其中基于所述检查未对齐微块的内容来执行所述识别所述文档图像内的宏块。
11.如权利要求8所述的方法,其中,所述方法包括处理所述文档图像以识别基线样式参数值,所述基线样式参数值指定基线字体高度;针对所述文档图像的文本行中的每个单词,识别相对样式参数,所述相对样式参数是参考所述基线样式参数值定义的,其中,所述相对样式参数将所述文本行的文本的单词的字体高度指定为所述基线样式参数值的百分比;并且其中该方法包括提供相对样式参数作为输出元数据以用于输出。
12.根据权利要求8所述的方法,其中所述检查未对齐微块的内容包括在第一迭代和第二迭代中执行所述检查,其中所述第一迭代导致识别所述宏块,且其中所述第二迭代在所述识别所述宏块之后执行。
13.如权利要求8所述的方法,其中检查未对齐微块的内容包括在第一迭代和第二迭代中执行所述检查,其中所述第一迭代导致识别所述宏块,并且其中所述第二迭代在识别所述宏块之后执行,其中在第一迭代中执行所述检查包括应用第一机器逻辑微块界定规则以识别所述宏块的所述区域内的相对较少的微块,其中在第二迭代规则中执行所述检查包括应用第二机器逻辑微块界定规则以识别所述宏块的所述区域内的相对更多的微块,其中所述输出包括将所述一个或多个键-值对作为元数据输出到进程接口,所述进程接口从包括用于文档处理的进程接口、用于搜索引擎搜索的进程接口和用于表单再生的进程接口的组中选择。
14.一种文档图像的输出的方法,包括:
获取文档图像,其中所述文档图像包括多个对象;
处理所述文档图像以识别基线样式参数值,所述基线样式参数值指定基线字体高度;
针对所述文档图像的文本行中的每个单词,识别相对样式参数,所述相对样式参数是参考所述基线样式参数值来定义的,其中,所述相对样式参数将所述文本行中的文本的单词的字体高度指定为所述基线样式参数值的百分比值;以及
提供所述相对样式参数作为输出元数据用于输出,
其中所述输出元数据被输出到进程接口,所述进程接口是表单再生器,其被配置为检查将所述文本行的文本的单词的字体高度指定为所述基线样式参数值的百分比的相对样式参数,并且基于指示高度的改变的相对样式参数,改变由所述表单再生器输出的输出文档中的所述单词的除字体高度之外的属性,
其中所述方法还包括:
识别所述文档图像内的多个宏块;
在所述多个宏块的宏块内执行微块处理,其中所述微块处理包括检查宏块内的微块的内容,检查宏块内的微块的内容包括使用不同的机器逻辑微块界定规则迭代地执行检查,使得对于第一迭代,识别宏块的区域内的第一组微块,且对于第二迭代,识别宏块的区域内的第二组微块,其中第一组微块的微块计数不同于第二组微块的微块计数。
15.根据权利要求14所述的方法,其中,所述方法包括通过提供所述文档的大于所述文本行的区域中的字体高度值的直方图来确定所述基线样式参数值,并且基于所述直方图的中心离散来选择所述基线样式参数值。
16.一种计算机程序产品,包括:
计算机可读存储介质,其
可由一个或多个处理电路读取并且存储用于由一个或多个处理器执行以执行一种方法的指令,所述方法包括:
获取文档图像,其中所述文档图像包括多个对象;
识别所述文档图像内的多个宏块;
在所述多个宏块的宏块内执行微块处理,其中所述微块处理包括检查宏块内的微块的内容以提取键-值对,所述检查内容包括执行微块的本体分析,其中所述微块处理包括将置信水平与所提取的键-值对相关联;以及
基于在所述多个宏块中的宏块内执行的微块处理来输出元数据;所述检查宏块的区域内的微块的内容包括使用不同的机器逻辑微块界定规则迭代地执行检查,使得对于第一迭代,识别宏块的区域内的第一组微块,而且对于第二迭代,识别宏块的区域内的第二组微块,其中第二组微块的微块计数不同于第二组微块的微块计数。
17.根据权利要求16所述的计算机程序产品,其中所述输出包括丢弃键-值对,使得具有低于阈值的置信水平的键-值对不经受输出。
18.根据权利要求16所述的计算机程序产品,其中所述检查内容包括执行未对齐微块的本体分析,以及基于所述本体分析确定未对齐微块共线。
19.根据权利要求16所述的计算机程序产品,其中,所述方法包括确定所述文档图像的大于微块的区域的空白空间基线样式参数值,以及基于所述空白空间基线样式参数值应用机器逻辑微块界定规则。
20.一种文档图像的输出的***,包括:
存储器;
与存储器通信的至少一个处理器;以及
程序指令,所述程序指令可由一个或多个处理器经由所述存储器执行以执行包括以下步骤的方法:
获取文档图像,其中所述文档图像包括多个对象;
识别所述文档图像内的多个宏块;
在所述多个宏块的宏块内执行微块处理,其中所述微块处理包括检查宏块内的微块的内容以提取键-值对,所述检查内容包括执行微块的本体分析,其中所述微块处理包括将置信水平与所提取的键-值对相关联;以及
基于在所述多个宏块中的宏块内执行微块处理来输出元数据;所述检查宏块的区域内的微块的内容包括使用不同的机器逻辑微块界定规则迭代地执行检查,使得对于第一迭代,识别宏块的区域内的第一组微块,而且对于第二迭代,识别宏块的区域内的第二组微块,其中第二组微块的微块计数不同于第二组微块的微块计数。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/828,813 US10452904B2 (en) | 2017-12-01 | 2017-12-01 | Blockwise extraction of document metadata |
US15/828,813 | 2017-12-01 | ||
PCT/IB2018/059250 WO2019106507A1 (en) | 2017-12-01 | 2018-11-23 | Blockwise extraction of document metadata |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111512315A CN111512315A (zh) | 2020-08-07 |
CN111512315B true CN111512315B (zh) | 2024-06-18 |
Family
ID=66659299
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201880077093.4A Active CN111512315B (zh) | 2017-12-01 | 2018-11-23 | 文档元数据的按块提取 |
Country Status (6)
Country | Link |
---|---|
US (2) | US10452904B2 (zh) |
JP (1) | JP7289047B2 (zh) |
CN (1) | CN111512315B (zh) |
DE (1) | DE112018005616T5 (zh) |
GB (1) | GB2583290B (zh) |
WO (1) | WO2019106507A1 (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018063251A1 (en) * | 2016-09-29 | 2018-04-05 | Cummins Inc. | Systems and methods for accommodating loss of battery charge history |
US10452904B2 (en) * | 2017-12-01 | 2019-10-22 | International Business Machines Corporation | Blockwise extraction of document metadata |
US10878234B1 (en) * | 2018-11-20 | 2020-12-29 | Amazon Technologies, Inc. | Automated form understanding via layout agnostic identification of keys and corresponding values |
US20200409982A1 (en) * | 2019-06-25 | 2020-12-31 | i2k Connect, LLC. | Method And System For Hierarchical Classification Of Documents Using Class Scoring |
US11308492B2 (en) * | 2019-07-03 | 2022-04-19 | Sap Se | Anomaly and fraud detection with fake event detection using pixel intensity testing |
US11704333B2 (en) * | 2019-09-11 | 2023-07-18 | Schlumberger Technology Corporation | Form text extraction of key/value pairs |
CN112364604A (zh) * | 2020-10-26 | 2021-02-12 | 南京工程学院 | 一种xml文档的数字化方法和*** |
US20220156490A1 (en) * | 2020-11-16 | 2022-05-19 | Kyocera Document Solutions Inc. | Method and system for extracting information from a document image |
CN112949450B (zh) * | 2021-02-25 | 2024-01-23 | 北京百度网讯科技有限公司 | 票据处理方法、装置、电子设备和存储介质 |
JP2022137608A (ja) * | 2021-03-09 | 2022-09-22 | キヤノン株式会社 | 情報処理装置、情報処理方法およびプログラム |
CN112906686A (zh) * | 2021-03-11 | 2021-06-04 | 北京小米移动软件有限公司 | 文字识别方法、装置、电子设备及存储介质 |
US11922328B1 (en) * | 2023-04-10 | 2024-03-05 | Snowflake Inc. | Generating machine-learning model for document extraction |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102740127A (zh) * | 2011-03-29 | 2012-10-17 | 索尼公司 | 方法、装置和*** |
Family Cites Families (30)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2584973B2 (ja) * | 1986-04-21 | 1997-02-26 | 株式会社リコー | 文字認識装置における認識結果出力方法 |
US7035463B1 (en) | 1999-03-01 | 2006-04-25 | Matsushita Electric Industrial Co., Ltd. | Document image processor, method for extracting document title, and method for imparting document tag information |
US6910182B2 (en) | 2000-01-31 | 2005-06-21 | Xmlcities, Inc. | Method and apparatus for generating structured documents for various presentations and the uses thereof |
US7305129B2 (en) * | 2003-01-29 | 2007-12-04 | Microsoft Corporation | Methods and apparatus for populating electronic forms from scanned documents |
US8825682B2 (en) * | 2006-07-31 | 2014-09-02 | Ricoh Co., Ltd. | Architecture for mixed media reality retrieval of locations and registration of images |
WO2007070010A1 (en) | 2005-12-16 | 2007-06-21 | Agency For Science, Technology And Research | Improvements in electronic document analysis |
WO2007117334A2 (en) | 2006-01-03 | 2007-10-18 | Kyos Systems Inc. | Document analysis system for integration of paper records into a searchable electronic database |
KR100664421B1 (ko) * | 2006-01-10 | 2007-01-03 | 주식회사 인지소프트 | 구비된 카메라를 이용한 명함 인식을 위한 휴대용 단말기및 명함 인식 방법 |
JP4904235B2 (ja) * | 2007-09-20 | 2012-03-28 | キヤノン株式会社 | 画像処理装置、画像処理方法、そのプログラムおよび記憶媒体 |
CN101329731A (zh) | 2008-06-06 | 2008-12-24 | 南开大学 | 图像中数学公式的自动识别方法 |
US8126837B2 (en) * | 2008-09-23 | 2012-02-28 | Stollman Jeff | Methods and apparatus related to document processing based on a document type |
US8504511B2 (en) * | 2009-08-05 | 2013-08-06 | Fujifilm Medical Systems Usa, Inc. | System and method for providing localization of radiological information utilizing radiological domain ontology |
JP2011150466A (ja) * | 2010-01-20 | 2011-08-04 | Fujitsu Ltd | 文字列認識装置、文字列認識プログラムおよび文字列認識方法 |
US20130205202A1 (en) | 2010-10-26 | 2013-08-08 | Jun Xiao | Transformation of a Document into Interactive Media Content |
US8484245B2 (en) * | 2011-02-08 | 2013-07-09 | Xerox Corporation | Large scale unsupervised hierarchical document categorization using ontological guidance |
JP5653817B2 (ja) * | 2011-03-29 | 2015-01-14 | 日立オムロンターミナルソリューションズ株式会社 | 帳票認識装置、帳票認識方法およびそのためのプログラム |
US9372924B2 (en) * | 2012-06-12 | 2016-06-21 | International Business Machines Corporation | Ontology driven dictionary generation and ambiguity resolution for natural language processing |
US9471550B2 (en) * | 2012-10-16 | 2016-10-18 | Linkedin Corporation | Method and apparatus for document conversion with font metrics adjustment for format compatibility |
US9251413B2 (en) | 2013-06-14 | 2016-02-02 | Lexmark International Technology, SA | Methods for automatic structured extraction of data in OCR documents having tabular data |
US20160371238A1 (en) | 2013-07-09 | 2016-12-22 | Blueprint Sofware Systems Inc, | Computing device and method for converting unstructured data to structured data |
CN103678260A (zh) | 2013-12-25 | 2014-03-26 | 南通大学 | 一种便携式电子名片簿及处理方法 |
US9374501B2 (en) | 2014-03-04 | 2016-06-21 | Xerox Corporation | Methods and devices for form-independent registration of filled-out content |
US20150324459A1 (en) * | 2014-05-09 | 2015-11-12 | Chegg, Inc. | Method and apparatus to build a common classification system across multiple content entities |
WO2015196469A1 (en) | 2014-06-27 | 2015-12-30 | Google Inc. | Automated creative extension selection for content performance optimization |
US10223344B2 (en) * | 2015-01-26 | 2019-03-05 | Adobe Inc. | Recognition and population of form fields in an electronic document |
JP6435934B2 (ja) * | 2015-03-13 | 2018-12-12 | オムロン株式会社 | 文書画像処理用のプログラムおよびこのプログラムを用いた画像処理装置ならびに文字認識装置 |
US20170098192A1 (en) | 2015-10-02 | 2017-04-06 | Adobe Systems Incorporated | Content aware contract importation |
US10489439B2 (en) | 2016-04-14 | 2019-11-26 | Xerox Corporation | System and method for entity extraction from semi-structured text documents |
US10452904B2 (en) * | 2017-12-01 | 2019-10-22 | International Business Machines Corporation | Blockwise extraction of document metadata |
US10592738B2 (en) * | 2017-12-01 | 2020-03-17 | International Business Machines Corporation | Cognitive document image digitalization |
-
2017
- 2017-12-01 US US15/828,813 patent/US10452904B2/en active Active
-
2018
- 2018-11-23 GB GB2009894.3A patent/GB2583290B/en active Active
- 2018-11-23 JP JP2020524442A patent/JP7289047B2/ja active Active
- 2018-11-23 WO PCT/IB2018/059250 patent/WO2019106507A1/en active Application Filing
- 2018-11-23 DE DE112018005616.3T patent/DE112018005616T5/de active Pending
- 2018-11-23 CN CN201880077093.4A patent/CN111512315B/zh active Active
-
2019
- 2019-09-30 US US16/587,802 patent/US10977486B2/en active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102740127A (zh) * | 2011-03-29 | 2012-10-17 | 索尼公司 | 方法、装置和*** |
Also Published As
Publication number | Publication date |
---|---|
GB202009894D0 (en) | 2020-08-12 |
WO2019106507A1 (en) | 2019-06-06 |
DE112018005616T5 (de) | 2020-07-09 |
US10452904B2 (en) | 2019-10-22 |
US10977486B2 (en) | 2021-04-13 |
JP7289047B2 (ja) | 2023-06-09 |
JP2021504781A (ja) | 2021-02-15 |
GB2583290A (en) | 2020-10-21 |
US20200026913A1 (en) | 2020-01-23 |
CN111512315A (zh) | 2020-08-07 |
GB2583290B (en) | 2022-03-16 |
US20190171875A1 (en) | 2019-06-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111512315B (zh) | 文档元数据的按块提取 | |
CN111406262B (zh) | 认知文档图像数字化 | |
US20210248420A1 (en) | Automated generation of structured training data from unstructured documents | |
CN110088749B (zh) | 自动本体生成的方法、***和介质 | |
US10740380B2 (en) | Incremental discovery of salient topics during customer interaction | |
US9411790B2 (en) | Systems, methods, and media for generating structured documents | |
US10303689B2 (en) | Answering natural language table queries through semantic table representation | |
CN111263943B (zh) | 文档数字化中的语义规范化 | |
CN114424257A (zh) | 使用机器学习对表格数据进行自动描绘和提取 | |
JP2020149686A (ja) | 画像処理方法、装置、サーバ及び記憶媒体 | |
US11645452B2 (en) | Performance characteristics of cartridge artifacts over text pattern constructs | |
US10360302B2 (en) | Visual comparison of documents using latent semantic differences | |
CN115210705A (zh) | 具有无效值或等效值的关系表的向量嵌入模型 | |
WO2023093259A1 (en) | Iteratively updating a document structure to resolve disconnected text in element blocks | |
US20220309276A1 (en) | Automatically classifying heterogenous documents using machine learning techniques | |
CN110083817B (zh) | 一种命名排歧方法、装置、计算机可读存储介质 | |
CN107220249A (zh) | 基于分类的全文搜索 | |
US20240152494A1 (en) | Optimizing metadata enrichment of data assets | |
US20230419710A1 (en) | Information extraction from documents containing handwritten text | |
US20240233223A1 (en) | Image table generation | |
US20240152698A1 (en) | Data-driven named entity type disambiguation | |
US20240177511A1 (en) | Generating synthetic training data including document images with key-value pairs | |
JP2024084393A (ja) | 情報処理装置、情報処理装置の制御方法、及びプログラム |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |